fCraft.FunCommands.PossessHandler C# (CSharp) Method

PossessHandler() private static method

private static PossessHandler ( Player player, Command cmd ) : void
player Player
cmd Command
return void
        private static void PossessHandler( Player player, Command cmd )
        {
            string targetName = cmd.Next();
            if ( targetName == null ) {
                CdPossess.PrintUsage( player );
                return;
            }
            Player target = Server.FindPlayerOrPrintMatches( player, targetName, false, true );
            if ( target == null )
                return;
            if ( target.Immortal ) {
                player.Message( "You cannot possess {0}&S, they are immortal", target.ClassyName );
                return;
            }
            if ( target == player ) {
                player.Message( "You cannot possess yourself.&F" );
                return;
            }

            if ( !player.Can( Permission.Possess, target.Info.Rank ) ) {
                player.Message( "You may only possess players ranked {0}&S or lower.",
                player.Info.Rank.GetLimit( Permission.Possess ).ClassyName );
                player.Message( "{0}&S is ranked {1}",
                                target.ClassyName, target.Info.Rank.ClassyName );
                return;
            }

            if ( !player.Possess( target ) ) {
                player.Message( "Already possessing {0}", target.ClassyName );
            }
        }