fCraft.WorldCommands.WorldSetHandler C# (CSharp) Method

WorldSetHandler() static private method

static private WorldSetHandler ( Player player, Command cmd ) : void
player Player
cmd Command
return void
        static void WorldSetHandler( Player player, Command cmd ) {
            string worldName = cmd.Next();
            string varName = cmd.Next();
            string value = cmd.NextAll();
            if( worldName == null || varName == null ) {
                CdWorldSet.PrintUsage( player );
                return;
            }

            World world = WorldManager.FindWorldOrPrintMatches( player, worldName );
            if( world == null ) return;

            switch( varName.ToLower() ) {
                case "hide":
                case "hidden":
                    if( String.IsNullOrEmpty( value ) ) {
                        player.Message( "World {0}&S is current {1}hidden.",
                                        world.ClassyName,
                                        world.IsHidden ? "" : "NOT " );
                    } else if( value.Equals( "on", StringComparison.OrdinalIgnoreCase ) ||
                               value.Equals( "true", StringComparison.OrdinalIgnoreCase ) ||
                               value == "1" ) {
                        if( world.IsHidden ) {
                            player.Message( "World {0}&S is already hidden.", world.ClassyName );
                        } else {
                            player.Message( "World {0}&S is now hidden.", world.ClassyName );
                            world.IsHidden = true;
                            WorldManager.SaveWorldList();
                        }
                    } else if( value.Equals( "off", StringComparison.OrdinalIgnoreCase ) ||
                               value.Equals( "false", StringComparison.OrdinalIgnoreCase ) ||
                               value == "0" ) {
                        if( world.IsHidden ) {
                            player.Message( "World {0}&S is no longer hidden.", world.ClassyName );
                            world.IsHidden = false;
                            WorldManager.SaveWorldList();
                        } else {
                            player.Message( "World {0}&S is not hidden.", world.ClassyName );
                        }
                    } else {
                        CdWorldSet.PrintUsage( player );
                    }
                    break;

                case "backup":
                case "backups":
                    TimeSpan backupInterval;
                    string oldDescription = world.BackupSettingDescription;
                    if( String.IsNullOrEmpty( value ) ) {
                        player.Message( GetBackupSettingsString( world ) );
                        return;

                    } else if( value.Equals( "off", StringComparison.OrdinalIgnoreCase ) || value.StartsWith( "disable", StringComparison.OrdinalIgnoreCase ) ) {
                        // Disable backups on the world
                        if( world.BackupEnabledState == YesNoAuto.No ) {
                            MessageSameBackupSettings( player, world );
                            return;
                        } else {
                            world.BackupEnabledState = YesNoAuto.No;
                        }

                    } else if( value.Equals( "default", StringComparison.OrdinalIgnoreCase ) || value.Equals( "auto", StringComparison.OrdinalIgnoreCase ) ) {
                        // Set world to use default settings
                        if( world.BackupEnabledState == YesNoAuto.Auto ) {
                            MessageSameBackupSettings( player, world );
                            return;
                        } else {
                            world.BackupEnabledState = YesNoAuto.Auto;
                        }

                    } else if( value.TryParseMiniTimespan( out backupInterval ) ) {
                        if( backupInterval == TimeSpan.Zero ) {
                            // Set world's backup interval to 0, which is equivalent to disabled
                            if( world.BackupEnabledState == YesNoAuto.No ) {
                                MessageSameBackupSettings( player, world );
                                return;
                            } else {
                                world.BackupEnabledState = YesNoAuto.No;
                            }
                        } else if( world.BackupEnabledState != YesNoAuto.Yes || world.BackupInterval != backupInterval ) {
                            // Alter world's backup interval
                            world.BackupInterval = backupInterval;
                        } else {
                            MessageSameBackupSettings( player, world );
                            return;
                        }

                    } else {
                        CdWorldSet.PrintUsage( player );
                        return;
                    }
                    player.Message( "Backup setting for world {0}&S changed from \"{1}\" to \"{2}\"",
                                    world.ClassyName, oldDescription, world.BackupSettingDescription );
                    WorldManager.SaveWorldList();
                    break;

                case "description":
                case "greeting":
                    if( String.IsNullOrEmpty( value ) ) {
                        if( world.Greeting == null ) {
                            player.Message( "No greeting message is set for world {0}", world.ClassyName );
                        } else {
                            player.Message( "Greeting message removed for world {0}", world.ClassyName );
                        }
                    } else {
                        world.Greeting = value;
                        player.Message( "Greeting message for world {0}&S set to: &R{1}", world.ClassyName, value );
                    }
                    break;

                default:
                    CdWorldSet.PrintUsage( player );
                    break;
            }
        }

Same methods

WorldCommands::WorldSetHandler ( Player player, CommandReader cmd ) : void
WorldCommands::WorldSetHandler ( [ player, [ cmd ) : void