/* This file is generated. Do not edit manually. */ use crate::BlockState; use crate::biome::Biome; use crate::chunk::DoublePerlinNoiseParameters; use crate::dimension::Dimension; use pumpkin_util::random::RandomDeriver; use pumpkin_util::y_offset::Absolute; use pumpkin_util::y_offset::YOffset; use std::{cell::RefCell, num::NonZeroUsize}; pub struct GenerationSettings { pub aquifers_enabled: bool, pub ore_veins_enabled: bool, pub legacy_random_source: bool, pub sea_level: i32, pub default_fluid: &'static BlockState, pub shape: GenerationShapeConfig, pub surface_rule: MaterialRule, pub default_block: &'static BlockState, } pub struct GenerationShapeConfig { pub min_y: i8, pub height: u16, pub size_horizontal: u8, pub size_vertical: u8, } impl GenerationShapeConfig { #[inline] #[must_use] pub const fn vertical_cell_block_count(&self) -> u8 { self.size_vertical << 2 } #[inline] #[must_use] pub const fn horizontal_cell_block_count(&self) -> u8 { self.size_horizontal << 2 } #[must_use] pub const fn max_y(&self) -> u16 { if self.min_y >= 0 { self.height + self.min_y as u16 } else { (self.height as i32 + self.min_y as i32) as u16 } } #[must_use] pub fn trim_height(&self, bottom_y: i8, top_y: u16) -> Self { let new_min = self.min_y.max(bottom_y); let this_top = if self.min_y >= 0 { self.height + self.min_y as u16 } else { self.height - self.min_y.unsigned_abs() as u16 }; let new_top = this_top.min(top_y); let new_height = if new_min >= 0 { new_top - new_min as u16 } else { new_top + new_min.unsigned_abs() as u16 }; Self { min_y: new_min, height: new_height, size_horizontal: self.size_horizontal, size_vertical: self.size_vertical, } } } pub struct BlockMaterialRule { pub result_state: &'static BlockState, } pub struct SequenceMaterialRule { pub sequence: &'static [MaterialRule], } pub struct ConditionMaterialRule { pub if_true: MaterialCondition, pub then_run: &'static MaterialRule, } pub struct BadLandsMaterialRule; pub enum MaterialRule { Block(BlockMaterialRule), Sequence(SequenceMaterialRule), Condition(ConditionMaterialRule), Badlands(BadLandsMaterialRule), } pub struct BiomeMaterialCondition { pub biome_is: &'static [&'static Biome], } pub struct NoiseThresholdMaterialCondition { pub noise: DoublePerlinNoiseParameters, pub min_threshold: f64, pub max_threshold: f64, } pub struct VerticalGradientMaterialCondition { pub random_lo: u64, pub random_hi: u64, pub true_at_and_below: YOffset, pub false_at_and_above: YOffset, } pub struct AboveYMaterialCondition { pub anchor: YOffset, pub surface_depth_multiplier: i32, pub add_stone_depth: bool, } pub struct WaterMaterialCondition { pub offset: i32, pub surface_depth_multiplier: i32, pub add_stone_depth: bool, } pub struct HoleMaterialCondition; pub struct NotMaterialCondition { pub invert: &'static MaterialCondition, } pub struct SurfaceMaterialCondition; pub struct StoneDepthMaterialCondition { pub offset: i32, pub add_surface_depth: bool, pub secondary_depth_range: i32, pub surface_type: pumpkin_util::math::vertical_surface_type::VerticalSurfaceType, } pub enum MaterialCondition { Biome(BiomeMaterialCondition), NoiseThreshold(NoiseThresholdMaterialCondition), VerticalGradient(VerticalGradientMaterialCondition), YAbove(AboveYMaterialCondition), Water(WaterMaterialCondition), Temperature, Steep, Not(NotMaterialCondition), Hole(HoleMaterialCondition), AbovePreliminarySurface(SurfaceMaterialCondition), StoneDepth(StoneDepthMaterialCondition), } impl GenerationSettings { pub const AMPLIFIED : GenerationSettings = GenerationSettings { aquifers_enabled : true , ore_veins_enabled : true , legacy_random_source : false , sea_level : 63i32 , default_fluid : crate :: Block :: WATER . default_state , shape : GenerationShapeConfig { min_y : - 64i8 , height : 384u16 , size_horizontal : 1u8 , size_vertical : 2u8 } , surface_rule : MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 13544455532117611141u64 , random_hi : 14185350335435586452u64 , true_at_and_below : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 0i8 }) , false_at_and_above : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 5i8 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BEDROCK . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: AbovePreliminarySurface (SurfaceMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 97i16 }) , surface_depth_multiplier : 2i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 62i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 60i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: BADLANDS , & crate :: biome :: Biome :: ERODED_BADLANDS , & crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 256i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: Hole (HoleMaterialCondition) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: AIR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Temperature , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state })] }) }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : 0f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : 0f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.06060606060606061f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: OLD_GROWTH_PINE_TAIGA , & crate :: biome :: Biome :: OLD_GROWTH_SPRUCE_TAIGA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.11515151515151514f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PODZOL . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: ICE_SPIKES] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MUSHROOM_FIELDS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MYCELIUM . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : - 0.5f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : - 0.0625f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 6i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 30i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS , & crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: LUKEWARM_OCEAN , & crate :: biome :: Biome :: DEEP_LUKEWARM_OCEAN] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 10411719568726253007u64 , random_hi : 14964796469053385315u64 , true_at_and_below : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 0i16 }) , false_at_and_above : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 8i16 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DEEPSLATE . default_state }) })] }) , default_block : crate :: Block :: STONE . default_state , } ; pub const CAVES : GenerationSettings = GenerationSettings { aquifers_enabled : false , ore_veins_enabled : false , legacy_random_source : true , sea_level : 32i32 , default_fluid : crate :: Block :: WATER . default_state , shape : GenerationShapeConfig { min_y : - 64i8 , height : 192u16 , size_horizontal : 1u8 , size_vertical : 2u8 } , surface_rule : MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 10285458612719284684u64 , random_hi : 14520959502364845764u64 , true_at_and_below : YOffset :: BelowTop (pumpkin_util :: y_offset :: BelowTop { below_top : 5i8 }) , false_at_and_above : YOffset :: BelowTop (pumpkin_util :: y_offset :: BelowTop { below_top : 0i8 }) , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BEDROCK . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 13544455532117611141u64 , random_hi : 14185350335435586452u64 , true_at_and_below : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 0i8 }) , false_at_and_above : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 5i8 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BEDROCK . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 97i16 }) , surface_depth_multiplier : 2i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 62i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 60i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: BADLANDS , & crate :: biome :: Biome :: ERODED_BADLANDS , & crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 256i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: Hole (HoleMaterialCondition) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: AIR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Temperature , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state })] }) }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : 0f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : 0f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.06060606060606061f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: OLD_GROWTH_PINE_TAIGA , & crate :: biome :: Biome :: OLD_GROWTH_SPRUCE_TAIGA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.11515151515151514f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PODZOL . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: ICE_SPIKES] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MUSHROOM_FIELDS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MYCELIUM . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : - 0.5f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : - 0.0625f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 6i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 30i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS , & crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: LUKEWARM_OCEAN , & crate :: biome :: Biome :: DEEP_LUKEWARM_OCEAN] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 10411719568726253007u64 , random_hi : 14964796469053385315u64 , true_at_and_below : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 0i16 }) , false_at_and_above : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 8i16 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DEEPSLATE . default_state }) })] }) , default_block : crate :: Block :: STONE . default_state , } ; pub const END: GenerationSettings = GenerationSettings { aquifers_enabled: false, ore_veins_enabled: false, legacy_random_source: true, sea_level: 0i32, default_fluid: crate::Block::AIR.default_state, shape: GenerationShapeConfig { min_y: 0i8, height: 128u16, size_horizontal: 2u8, size_vertical: 1u8, }, surface_rule: MaterialRule::Block(BlockMaterialRule { result_state: crate::Block::END_STONE.default_state, }), default_block: crate::Block::END_STONE.default_state, }; pub const FLOATING_ISLANDS : GenerationSettings = GenerationSettings { aquifers_enabled : false , ore_veins_enabled : false , legacy_random_source : true , sea_level : - 64i32 , default_fluid : crate :: Block :: WATER . default_state , shape : GenerationShapeConfig { min_y : 0i8 , height : 256u16 , size_horizontal : 2u8 , size_vertical : 1u8 } , surface_rule : MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 97i16 }) , surface_depth_multiplier : 2i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 62i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 60i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: BADLANDS , & crate :: biome :: Biome :: ERODED_BADLANDS , & crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 256i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: Hole (HoleMaterialCondition) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: AIR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Temperature , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state })] }) }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : 0f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : 0f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.06060606060606061f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: OLD_GROWTH_PINE_TAIGA , & crate :: biome :: Biome :: OLD_GROWTH_SPRUCE_TAIGA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.11515151515151514f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PODZOL . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: ICE_SPIKES] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MUSHROOM_FIELDS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MYCELIUM . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : - 0.5f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : - 0.0625f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 6i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 30i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS , & crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: LUKEWARM_OCEAN , & crate :: biome :: Biome :: DEEP_LUKEWARM_OCEAN] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 10411719568726253007u64 , random_hi : 14964796469053385315u64 , true_at_and_below : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 0i16 }) , false_at_and_above : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 8i16 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DEEPSLATE . default_state }) })] }) , default_block : crate :: Block :: STONE . default_state , } ; pub const LARGE_BIOMES : GenerationSettings = GenerationSettings { aquifers_enabled : true , ore_veins_enabled : true , legacy_random_source : false , sea_level : 63i32 , default_fluid : crate :: Block :: WATER . default_state , shape : GenerationShapeConfig { min_y : - 64i8 , height : 384u16 , size_horizontal : 1u8 , size_vertical : 2u8 } , surface_rule : MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 13544455532117611141u64 , random_hi : 14185350335435586452u64 , true_at_and_below : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 0i8 }) , false_at_and_above : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 5i8 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BEDROCK . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: AbovePreliminarySurface (SurfaceMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 97i16 }) , surface_depth_multiplier : 2i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 62i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 60i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: BADLANDS , & crate :: biome :: Biome :: ERODED_BADLANDS , & crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 256i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: Hole (HoleMaterialCondition) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: AIR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Temperature , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state })] }) }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : 0f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : 0f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.06060606060606061f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: OLD_GROWTH_PINE_TAIGA , & crate :: biome :: Biome :: OLD_GROWTH_SPRUCE_TAIGA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.11515151515151514f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PODZOL . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: ICE_SPIKES] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MUSHROOM_FIELDS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MYCELIUM . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : - 0.5f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : - 0.0625f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 6i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 30i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS , & crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: LUKEWARM_OCEAN , & crate :: biome :: Biome :: DEEP_LUKEWARM_OCEAN] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 10411719568726253007u64 , random_hi : 14964796469053385315u64 , true_at_and_below : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 0i16 }) , false_at_and_above : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 8i16 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DEEPSLATE . default_state }) })] }) , default_block : crate :: Block :: STONE . default_state , } ; pub const NETHER : GenerationSettings = GenerationSettings { aquifers_enabled : false , ore_veins_enabled : false , legacy_random_source : true , sea_level : 32i32 , default_fluid : crate :: Block :: LAVA . default_state , shape : GenerationShapeConfig { min_y : 0i8 , height : 128u16 , size_horizontal : 1u8 , size_vertical : 2u8 } , surface_rule : MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 13544455532117611141u64 , random_hi : 14185350335435586452u64 , true_at_and_below : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 0i8 }) , false_at_and_above : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 5i8 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BEDROCK . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 10285458612719284684u64 , random_hi : 14520959502364845764u64 , true_at_and_below : YOffset :: BelowTop (pumpkin_util :: y_offset :: BelowTop { below_top : 5i8 }) , false_at_and_above : YOffset :: BelowTop (pumpkin_util :: y_offset :: BelowTop { below_top : 0i8 }) , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BEDROCK . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: BelowTop (pumpkin_util :: y_offset :: BelowTop { below_top : 5i8 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: NETHERRACK . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: BASALT_DELTAS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BASALT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PATCH , min_threshold : - 0.012f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 30i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 35i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: NETHER_STATE_SELECTOR , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BASALT . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BLACKSTONE . default_state })] }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SOUL_SAND_VALLEY] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: NETHER_STATE_SELECTOR , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SOUL_SAND . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SOUL_SOIL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PATCH , min_threshold : - 0.012f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 30i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 35i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: NETHER_STATE_SELECTOR , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SOUL_SAND . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SOUL_SOIL . default_state })] }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 32i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: LAVA . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARPED_FOREST] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: NETHERRACK , min_threshold : 0.54f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 31i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: NETHER_WART , min_threshold : 1.17f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WARPED_WART_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WARPED_NYLIUM . default_state })] }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: CRIMSON_FOREST] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: NETHERRACK , min_threshold : 0.54f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 31i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: NETHER_WART , min_threshold : 1.17f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: NETHER_WART_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CRIMSON_NYLIUM . default_state })] }) }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: NETHER_WASTES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SOUL_SAND_LAYER , min_threshold : - 0.012f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: Hole (HoleMaterialCondition) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 30i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 35i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SOUL_SAND . default_state }) }) }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: NETHERRACK . default_state })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 31i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 35i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL_LAYER , min_threshold : - 0.012f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 32i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: Hole (HoleMaterialCondition) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state }) })] }) }) }) }) })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: NETHERRACK . default_state })] }) , default_block : crate :: Block :: NETHERRACK . default_state , } ; pub const OVERWORLD : GenerationSettings = GenerationSettings { aquifers_enabled : true , ore_veins_enabled : true , legacy_random_source : false , sea_level : 63i32 , default_fluid : crate :: Block :: WATER . default_state , shape : GenerationShapeConfig { min_y : - 64i8 , height : 384u16 , size_horizontal : 1u8 , size_vertical : 2u8 } , surface_rule : MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 13544455532117611141u64 , random_hi : 14185350335435586452u64 , true_at_and_below : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 0i8 }) , false_at_and_above : YOffset :: AboveBottom (pumpkin_util :: y_offset :: AboveBottom { above_bottom : 5i8 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: BEDROCK . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: AbovePreliminarySurface (SurfaceMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 97i16 }) , surface_depth_multiplier : 2i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 62i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 60i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE_SWAMP , min_threshold : 0f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: BADLANDS , & crate :: biome :: Biome :: ERODED_BADLANDS , & crate :: biome :: Biome :: WOODED_BADLANDS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 256i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.909f64 , max_threshold : - 0.5454f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.1818f64 , max_threshold : 0.1818f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.5454f64 , max_threshold : 0.909f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: TERRACOTTA . default_state }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: RED_SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: Hole (HoleMaterialCondition) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 63i16 }) , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Not (NotMaterialCondition { invert : & MaterialCondition :: YAbove (AboveYMaterialCondition { anchor : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 74i16 }) , surface_depth_multiplier : 1i32 , add_stone_depth : true , }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ORANGE_TERRACOTTA . default_state }) }) }) , MaterialRule :: Badlands (BadLandsMaterialRule)] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WHITE_TERRACOTTA . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 1i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: AIR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Temperature , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state })] }) }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : 0f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : 0f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.35f64 , max_threshold : 0.6f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.06060606060606061f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: OLD_GROWTH_PINE_TAIGA , & crate :: biome :: Biome :: OLD_GROWTH_SPRUCE_TAIGA] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: COARSE_DIRT . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.11515151515151514f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PODZOL . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: ICE_SPIKES] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MUSHROOM_FIELDS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MYCELIUM . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRASS_BLOCK . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] })] })] }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : - 6i32 , surface_depth_multiplier : - 1i32 , add_stone_depth : true , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_OCEAN , & crate :: biome :: Biome :: DEEP_FROZEN_OCEAN] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Hole (HoleMaterialCondition) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: WATER . default_state }) }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: PACKED_ICE , min_threshold : - 0.5f64 , max_threshold : 0.2f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: PACKED_ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: ICE , min_threshold : - 0.0625f64 , max_threshold : 0.025f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: ICE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SNOWY_SLOPES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Steep , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SNOW_BLOCK . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: GROVE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: POWDER_SNOW , min_threshold : 0.45f64 , max_threshold : 0.58f64 , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Water (WaterMaterialCondition { offset : 0i32 , surface_depth_multiplier : 0i32 , add_stone_depth : false , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: POWDER_SNOW . default_state }) }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_PEAKS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: CALCITE , min_threshold : - 0.0125f64 , max_threshold : 0.0125f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CALCITE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: STONY_SHORE] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: GRAVEL , min_threshold : - 0.05f64 , max_threshold : 0.05f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_HILLS] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DRIPSTONE_CAVES] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state })] }) })] }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_SAVANNA] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.21212121212121213f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WINDSWEPT_GRAVELLY_HILLS] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.24242424242424243f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SURFACE , min_threshold : - 0.12121212121212122f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: MANGROVE_SWAMP] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: MUD . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DIRT . default_state })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: BEACH , & crate :: biome :: Biome :: SNOWY_BEACH] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 6i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: DESERT] , }) , then_run : & MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : true , secondary_depth_range : 30i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Floor , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: FROZEN_PEAKS , & crate :: biome :: Biome :: JAGGED_PEAKS] , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: WARM_OCEAN , & crate :: biome :: Biome :: LUKEWARM_OCEAN , & crate :: biome :: Biome :: DEEP_LUKEWARM_OCEAN] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SANDSTONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SAND . default_state })] }) }) , MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: StoneDepth (StoneDepthMaterialCondition { offset : 0i32 , add_surface_depth : false , secondary_depth_range : 0i32 , surface_type : pumpkin_util :: math :: vertical_surface_type :: VerticalSurfaceType :: Ceiling , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: STONE . default_state }) }) , MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: GRAVEL . default_state })] })] }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: Biome (BiomeMaterialCondition { biome_is : & [& crate :: biome :: Biome :: SULFUR_CAVES] , }) , then_run : & MaterialRule :: Sequence (SequenceMaterialRule { sequence : & [MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : - 0.4000000059604645f64 , max_threshold : - 0.10000000149011612f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0f64 , max_threshold : 0.4000000059604645f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: SULFUR . default_state }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: NoiseThreshold (NoiseThresholdMaterialCondition { noise : DoublePerlinNoiseParameters :: SULFUR_CAVE_GRADIENT , min_threshold : 0.4000000059604645f64 , max_threshold : 179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f64 , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: CINNABAR . default_state }) })] }) }) , MaterialRule :: Condition (ConditionMaterialRule { if_true : MaterialCondition :: VerticalGradient (VerticalGradientMaterialCondition { random_lo : 10411719568726253007u64 , random_hi : 14964796469053385315u64 , true_at_and_below : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 0i16 }) , false_at_and_above : YOffset :: Absolute (pumpkin_util :: y_offset :: Absolute { absolute : 8i16 }) , }) , then_run : & MaterialRule :: Block (BlockMaterialRule { result_state : crate :: Block :: DEEPSLATE . default_state }) })] }) , default_block : crate :: Block :: STONE . default_state , } ; #[must_use] pub fn from_dimension(dimension: &Dimension) -> &'static Self { if dimension == &Dimension::OVERWORLD { &Self::OVERWORLD } else if dimension == &Dimension::THE_NETHER { &Self::NETHER } else { &Self::END } } }