fCraft.ModerationCommands.dc C# (CSharp) Method

dc() static private method

static private dc ( Player player, Command cmd ) : void
player Player
cmd Command
return void
        internal static void dc( Player player, Command cmd )
        {
            string name = cmd.Next();
            if ( name == null ) {
                player.Message( "Please enter a name" );
                return;
            }

            Player target = Server.FindPlayerOrPrintMatches( player, name, false, true );
            if ( target == null )
                return;

            if ( player.Can( Permission.Gtfo, target.Info.Rank ) ) {
                try {
                    target.Kick( player, "Manually disconnected by " + player.Name, LeaveReason.Kick, false, true, false );
                    Server.Players.Message( "{0} &Swas manually disconnected by {1}", target.ClassyName, player.ClassyName );
                } catch ( PlayerOpException ex ) {
                    player.Message( ex.MessageColored );
                    if ( ex.ErrorCode == PlayerOpExceptionCode.ReasonRequired )
                        return;
                }
            } else {
                player.Message( "You can only Disconnect players ranked {0}&S or lower",
                                player.Info.Rank.GetLimit( Permission.Gtfo ).ClassyName );
                player.Message( "{0}&S is ranked {1}", target.ClassyName, target.Info.Rank.ClassyName );
            }
        }