fCraft.FlatMapGenParameters.ApplyTheme C# (CSharp) Method

ApplyTheme() public method

public ApplyTheme ( MapGenTheme theme ) : void
theme MapGenTheme
return void
        public void ApplyTheme( MapGenTheme theme ) {
            // base defaults ("Grass")
            SurfaceThickness = 1;
            SoilThickness = 5;
            BedrockThickness = 1;
            AirBlock = Block.Air;
            SurfaceBlock = Block.Grass;
            ShallowBlock = Block.Dirt;
            DeepBlock = Block.Stone;
            BedrockBlock = Block.Admincrete;

            Preset = theme.ToString();
            switch( theme ) {
                case MapGenTheme.Arctic:
                    DeepBlock = Block.White;
                    SurfaceThickness = 0;
                    SoilThickness = 0;
                    break;
                case MapGenTheme.Desert:
                    DeepBlock = Block.Sand;
                    SurfaceThickness = 0;
                    SoilThickness = 0;
                    break;
                case MapGenTheme.Hell:
                    DeepBlock = Block.Obsidian;
                    SurfaceThickness = 0;
                    SoilThickness = 0;
                    break;
                case MapGenTheme.Swamp:
                    SurfaceBlock = Block.Dirt;
                    break;
            }
            // TODO: actually add trees in "Forest" mode
        }

Usage Example

Example #1
0
        public override MapGeneratorParameters CreateParameters( string presetName ) {
            if( presetName == null ) {
                throw new ArgumentNullException( "presetName" );

            } else if( presetName.Equals( Presets[0], StringComparison.OrdinalIgnoreCase ) ) {
                // "Default"
                return new FlatMapGenParameters {
                    Preset = Presets[0]
                };

            } else if( presetName.Equals( Presets[1], StringComparison.OrdinalIgnoreCase ) ) {
                // "Ocean"
                return new FlatMapGenParameters {
                    SurfaceThickness = 0,
                    SoilThickness = 0,
                    BedrockThickness = 0,
                    DeepBlock = Block.Water,
                    Preset = Presets[1]
                };

            } else {
                MapGenTheme theme;
                if( EnumUtil.TryParse( presetName, out theme, true ) ) {
                    FlatMapGenParameters genParams = new FlatMapGenParameters();
                    genParams.ApplyTheme( theme );
                    return genParams;
                } else {
                    return null;
                }
            }
        }
All Usage Examples Of fCraft.FlatMapGenParameters::ApplyTheme