fCraft.ModerationCommands.MuteHandler C# (CSharp) Method

MuteHandler() private static method

private static MuteHandler ( Player player, Command cmd ) : void
player Player
cmd Command
return void
        private static void MuteHandler( Player player, Command cmd )
        {
            string targetName = cmd.Next();
            string timeString = cmd.Next();
            TimeSpan duration;

            // validate command parameters
            if ( String.IsNullOrEmpty( targetName ) || String.IsNullOrEmpty( timeString ) ||
                !timeString.TryParseMiniTimespan( out duration ) || duration <= TimeSpan.Zero ) {
                CdMute.PrintUsage( player );
                return;
            }

            // check if given time exceeds maximum (700 days)
            if ( duration > MaxMuteDuration ) {
                player.Message( "Maximum mute duration is {0}.", MaxMuteDuration.ToMiniString() );
                duration = MaxMuteDuration;
            }

            // find the target
            Player target = Server.FindPlayerOrPrintMatches( player, targetName, false, true );
            if ( target == null )
                return;

            // actually mute
            try {
                target.Info.Mute( player, duration, true, true );
            } catch ( PlayerOpException ex ) {
                player.Message( ex.MessageColored );
            }
        }