diff options
| -rwxr-xr-x | azalea-block/azalea-block-macros/src/lib.rs | 52 | ||||
| -rwxr-xr-x | azalea-block/src/generated.rs | 3436 | ||||
| -rwxr-xr-x | codegen/lib/code/blocks.py | 3 | ||||
| -rwxr-xr-x | codegen/lib/code/utils.py | 10 |
4 files changed, 1749 insertions, 1752 deletions
diff --git a/azalea-block/azalea-block-macros/src/lib.rs b/azalea-block/azalea-block-macros/src/lib.rs index 427da03b..2cce630e 100755 --- a/azalea-block/azalea-block-macros/src/lib.rs +++ b/azalea-block/azalea-block-macros/src/lib.rs @@ -39,11 +39,11 @@ struct PropertyDefinitions { properties: Vec<PropertyDefinition>, } -/// `snowy: Snowy(false)` or `axis: properties::Axis::Y` +/// `"snowy": Snowy(false)` or `"axis": properties::Axis::Y` #[derive(Debug)] struct PropertyWithNameAndDefault { // "snowy" / "axis" - name: Ident, + name: String, // Snowy / Axis property_type: Ident, property_value_type: Ident, @@ -54,7 +54,7 @@ struct PropertyWithNameAndDefault { /// ```ignore /// grass_block => BlockBehavior::default(), { -/// snowy: false, +/// "snowy": false, /// }, /// ``` struct BlockDefinition { @@ -64,8 +64,8 @@ struct BlockDefinition { } impl Parse for PropertyWithNameAndDefault { fn parse(input: ParseStream) -> Result<Self> { - // `snowy: Snowy(false)` or `axis: properties::Axis::Y` - let property_name = input.parse()?; + // `"snowy": Snowy(false)` or `"axis": properties::Axis::Y` + let property_name = input.parse::<LitStr>()?.value(); input.parse::<Token![:]>()?; let first_ident = input.call(Ident::parse_any)?; @@ -196,11 +196,11 @@ impl Parse for PropertyDefinitions { impl Parse for BlockDefinition { fn parse(input: ParseStream) -> Result<Self> { - // acacia_button => BlockBehavior::default(), { - // Facing=North, - // Powered=False, - // Face=Wall, - // } + // acacia_button => BlockBehavior::new().strength(0.5, 0.5), { + // "face": Face::Wall, + // "facing": FacingCardinal::North, + // "powered": Powered(false), + // }, let name = input.parse()?; input.parse::<Token![=>]>()?; let behavior = input.parse()?; @@ -416,29 +416,24 @@ pub fn make_block_states(input: TokenStream) -> TokenStream { Some( previous_names .iter() - .filter(|&p| p == &property.name.to_string()) + .filter(|&p| p == &property.name) .count(), ) } else { None }; - // ```ignore - // let mut property_name = property_struct_names_to_names - // .get(&property.property_type.to_string()) - // .unwrap_or_else(|| panic!("Property '{}' is bad", property.property_type)) - // .clone(); - // ``` + let mut property_name = property_struct_names_to_names - .get(&property.name.to_string()) + .get(&property.name) .cloned() - .unwrap_or_else(|| property.name.to_string()); + .unwrap_or_else(|| property.name.clone()); previous_names.push(property_name.clone()); if let Some(index) = index { // property_name.push_str(&format!("_{}", &index.to_string())); write!(property_name, "_{index}").unwrap(); } properties_with_name.push(PropertyWithNameAndDefault { - name: Ident::new(&property_name, proc_macro2::Span::call_site()), + name: property_name, property_type: property.property_type.clone(), property_value_type: property.property_value_type.clone(), is_enum: property.is_enum, @@ -462,12 +457,11 @@ pub fn make_block_states(input: TokenStream) -> TokenStream { .. } in &properties_with_name { - // let property_name_snake = - // Ident::new(&property.to_string(), proc_macro2::Span::call_site()); + let name_ident = Ident::new_raw(name, proc_macro2::Span::call_site()); block_struct_fields.extend(if *is_enum { - quote! { pub #name: properties::#property_value_type, } + quote! { pub #name_ident: properties::#property_value_type, } } else { - quote! { pub #name: #property_value_type, } + quote! { pub #name_ident: #property_value_type, } }); } @@ -525,8 +519,10 @@ pub fn make_block_states(input: TokenStream) -> TokenStream { quote! {#variant} }; + let property_name_ident = + Ident::new_raw(property_name, proc_macro2::Span::call_site()); from_block_to_state_combination_match_inner.extend(quote! { - #property_name: #property_variant, + #property_name_ident: #property_variant, }); // add to properties_to_state_ids @@ -602,8 +598,9 @@ pub fn make_block_states(input: TokenStream) -> TokenStream { quote! {properties::#property_struct_name_ident::from((b / #division) % #property_variants_count)} } }; + let property_name_ident = Ident::new_raw(property_name, proc_macro2::Span::call_site()); from_state_to_block_inner.extend(quote! { - #property_name: #conversion_code, + #property_name_ident: #conversion_code, }); division *= property_variants_count; @@ -635,7 +632,8 @@ pub fn make_block_states(input: TokenStream) -> TokenStream { .. } in properties_with_name { - block_default_fields.extend(quote! { #name: #property_default, }); + let name_ident = Ident::new_raw(&name, proc_macro2::Span::call_site()); + block_default_fields.extend(quote! { #name_ident: #property_default, }); } let block_behavior = &block.behavior; diff --git a/azalea-block/src/generated.rs b/azalea-block/src/generated.rs index 0ce5ad62..76dfb2dc 100755 --- a/azalea-block/src/generated.rs +++ b/azalea-block/src/generated.rs @@ -276,7 +276,7 @@ make_block_states! { Upper, Lower, }, - "kind" => PistonType { + "type" => PistonType { Normal, Sticky, }, @@ -317,7 +317,7 @@ make_block_states! { OuterLeft, OuterRight, }, - "kind" => ChestType { + "type" => ChestType { Single, Left, Right, @@ -859,9 +859,9 @@ make_block_states! { _2, _3, }, - "has_bottle" => HasBottle0(bool), - "has_bottle" => HasBottle1(bool), - "has_bottle" => HasBottle2(bool), + "has_bottle_0" => HasBottle0(bool), + "has_bottle_1" => HasBottle1(bool), + "has_bottle_2" => HasBottle2(bool), "level" => WaterCauldronLevel { _1, _2, @@ -1131,7 +1131,7 @@ make_block_states! { _14, _15, }, - "kind" => Type { + "type" => Type { Top, Bottom, Double, @@ -1943,12 +1943,12 @@ make_block_states! { andesite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, polished_andesite => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, grass_block => BlockBehavior::new().strength(0.6, 0.6), { - snowy: Snowy(false), + "snowy": Snowy(false), }, dirt => BlockBehavior::new().strength(0.5, 0.5), {}, coarse_dirt => BlockBehavior::new().strength(0.5, 0.5), {}, podzol => BlockBehavior::new().strength(0.5, 0.5), { - snowy: Snowy(false), + "snowy": Snowy(false), }, cobblestone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, oak_planks => BlockBehavior::new().strength(2.0, 3.0), {}, @@ -1962,47 +1962,47 @@ make_block_states! { bamboo_planks => BlockBehavior::new().strength(2.0, 3.0), {}, bamboo_mosaic => BlockBehavior::new().strength(2.0, 3.0), {}, oak_sapling => BlockBehavior::new(), { - stage: OakSaplingStage::_0, + "stage": OakSaplingStage::_0, }, spruce_sapling => BlockBehavior::new(), { - stage: SpruceSaplingStage::_0, + "stage": SpruceSaplingStage::_0, }, birch_sapling => BlockBehavior::new(), { - stage: BirchSaplingStage::_0, + "stage": BirchSaplingStage::_0, }, jungle_sapling => BlockBehavior::new(), { - stage: JungleSaplingStage::_0, + "stage": JungleSaplingStage::_0, }, acacia_sapling => BlockBehavior::new(), { - stage: AcaciaSaplingStage::_0, + "stage": AcaciaSaplingStage::_0, }, cherry_sapling => BlockBehavior::new(), { - stage: CherrySaplingStage::_0, + "stage": CherrySaplingStage::_0, }, dark_oak_sapling => BlockBehavior::new(), { - stage: DarkOakSaplingStage::_0, + "stage": DarkOakSaplingStage::_0, }, mangrove_propagule => BlockBehavior::new(), { - age: MangrovePropaguleAge::_0, - hanging: Hanging(false), - stage: MangrovePropaguleStage::_0, - waterlogged: Waterlogged(false), + "age": MangrovePropaguleAge::_0, + "hanging": Hanging(false), + "stage": MangrovePropaguleStage::_0, + "waterlogged": Waterlogged(false), }, bedrock => BlockBehavior::new().strength(-1.0, 3600000.0), {}, water => BlockBehavior::new().strength(100.0, 100.0), { - level: WaterLevel::_0, + "level": WaterLevel::_0, }, lava => BlockBehavior::new().strength(100.0, 100.0), { - level: LavaLevel::_0, + "level": LavaLevel::_0, }, sand => BlockBehavior::new().strength(0.5, 0.5), {}, suspicious_sand => BlockBehavior::new().strength(0.25, 0.25), { - dusted: SuspiciousSandDusted::_0, + "dusted": SuspiciousSandDusted::_0, }, red_sand => BlockBehavior::new().strength(0.5, 0.5), {}, gravel => BlockBehavior::new().strength(0.6, 0.6), {}, suspicious_gravel => BlockBehavior::new().strength(0.25, 0.25), { - dusted: SuspiciousGravelDusted::_0, + "dusted": SuspiciousGravelDusted::_0, }, gold_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {}, deepslate_gold_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {}, @@ -2012,162 +2012,162 @@ make_block_states! { deepslate_coal_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {}, nether_gold_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {}, oak_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, spruce_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, birch_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, jungle_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, acacia_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, cherry_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, dark_oak_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, mangrove_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, mangrove_roots => BlockBehavior::new().strength(0.7, 0.7), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, muddy_mangrove_roots => BlockBehavior::new().strength(0.7, 0.7), { - axis: Axis::Y, + "axis": Axis::Y, }, bamboo_block => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_spruce_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_birch_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_jungle_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_acacia_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_cherry_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_dark_oak_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_oak_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_mangrove_log => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_bamboo_block => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, oak_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, spruce_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, birch_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, jungle_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, acacia_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, cherry_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, dark_oak_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, mangrove_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_oak_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_spruce_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_birch_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_jungle_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_acacia_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_cherry_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_dark_oak_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_mangrove_wood => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, oak_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: OakLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": OakLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, spruce_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: SpruceLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": SpruceLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, birch_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: BirchLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": BirchLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, jungle_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: JungleLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": JungleLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, acacia_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: AcaciaLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": AcaciaLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, cherry_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: CherryLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": CherryLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, dark_oak_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: DarkOakLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": DarkOakLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, mangrove_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: MangroveLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": MangroveLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, azalea_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: AzaleaLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": AzaleaLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, flowering_azalea_leaves => BlockBehavior::new().strength(0.2, 0.2), { - distance: FloweringAzaleaLeavesDistance::_7, - persistent: Persistent(false), - waterlogged: Waterlogged(false), + "distance": FloweringAzaleaLeavesDistance::_7, + "persistent": Persistent(false), + "waterlogged": Waterlogged(false), }, sponge => BlockBehavior::new().strength(0.6, 0.6), {}, wet_sponge => BlockBehavior::new().strength(0.6, 0.6), {}, @@ -2176,110 +2176,110 @@ make_block_states! { deepslate_lapis_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {}, lapis_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {}, dispenser => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - facing: FacingCubic::North, - triggered: Triggered(false), + "facing": FacingCubic::North, + "triggered": Triggered(false), }, sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, chiseled_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, cut_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, note_block => BlockBehavior::new().strength(0.8, 0.8), { - instrument: Sound::Harp, - note: NoteBlockNote::_0, - powered: Powered(false), + "instrument": Sound::Harp, + "note": NoteBlockNote::_0, + "powered": Powered(false), }, white_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, orange_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, magenta_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, light_blue_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, yellow_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, lime_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, pink_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, gray_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, light_gray_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, cyan_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, purple_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, blue_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, brown_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, green_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, red_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, black_bed => BlockBehavior::new().strength(0.2, 0.2), { - facing: FacingCardinal::North, - occupied: Occupied(false), - part: Part::Foot, + "facing": FacingCardinal::North, + "occupied": Occupied(false), + "part": Part::Foot, }, powered_rail => BlockBehavior::new().strength(0.7, 0.7), { - powered: Powered(false), - shape: RailShape::NorthSouth, - waterlogged: Waterlogged(false), + "powered": Powered(false), + "shape": RailShape::NorthSouth, + "waterlogged": Waterlogged(false), }, detector_rail => BlockBehavior::new().strength(0.7, 0.7), { - powered: Powered(false), - shape: RailShape::NorthSouth, - waterlogged: Waterlogged(false), + "powered": Powered(false), + "shape": RailShape::NorthSouth, + "waterlogged": Waterlogged(false), }, sticky_piston => BlockBehavior::new().strength(1.5, 1.5), { - extended: Extended(false), - facing: FacingCubic::North, + "extended": Extended(false), + "facing": FacingCubic::North, }, cobweb => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.0, 4.0), {}, short_grass => BlockBehavior::new(), {}, @@ -2287,16 +2287,16 @@ make_block_states! { dead_bush => BlockBehavior::new(), {}, seagrass => BlockBehavior::new(), {}, tall_seagrass => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, piston => BlockBehavior::new().strength(1.5, 1.5), { - extended: Extended(false), - facing: FacingCubic::North, + "extended": Extended(false), + "facing": FacingCubic::North, }, piston_head => BlockBehavior::new().strength(1.5, 1.5), { - kind: PistonType::Normal, - facing: FacingCubic::North, - short: Short(false), + "type": PistonType::Normal, + "facing": FacingCubic::North, + "short": Short(false), }, white_wool => BlockBehavior::new().strength(0.8, 0.8), {}, orange_wool => BlockBehavior::new().strength(0.8, 0.8), {}, @@ -2315,8 +2315,8 @@ make_block_states! { red_wool => BlockBehavior::new().strength(0.8, 0.8), {}, black_wool => BlockBehavior::new().strength(0.8, 0.8), {}, moving_piston => BlockBehavior::new().destroy_time(-1.0), { - kind: PistonType::Normal, - facing: FacingCubic::North, + "type": PistonType::Normal, + "facing": FacingCubic::North, }, dandelion => BlockBehavior::new(), {}, torchflower => BlockBehavior::new(), {}, @@ -2338,371 +2338,371 @@ make_block_states! { iron_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {}, bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, tnt => BlockBehavior::new(), { - unstable: Unstable(false), + "unstable": Unstable(false), }, bookshelf => BlockBehavior::new().strength(1.5, 1.5), {}, chiseled_bookshelf => BlockBehavior::new().strength(1.5, 1.5), { - facing: FacingCardinal::North, - slot_0_occupied: TrueFalse(false), - slot_1_occupied: TrueFalse(false), - slot_2_occupied: TrueFalse(false), - slot_3_occupied: TrueFalse(false), - slot_4_occupied: TrueFalse(false), - slot_5_occupied: TrueFalse(false), + "facing": FacingCardinal::North, + "slot_0_occupied": TrueFalse(false), + "slot_1_occupied": TrueFalse(false), + "slot_2_occupied": TrueFalse(false), + "slot_3_occupied": TrueFalse(false), + "slot_4_occupied": TrueFalse(false), + "slot_5_occupied": TrueFalse(false), }, mossy_cobblestone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, obsidian => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 1200.0), {}, torch => BlockBehavior::new(), {}, wall_torch => BlockBehavior::new(), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, fire => BlockBehavior::new(), { - age: FireAge::_0, - east: East(false), - north: North(false), - south: South(false), - up: Up(false), - west: West(false), + "age": FireAge::_0, + "east": East(false), + "north": North(false), + "south": South(false), + "up": Up(false), + "west": West(false), }, soul_fire => BlockBehavior::new(), {}, spawner => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), {}, oak_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, chest => BlockBehavior::new().strength(2.5, 2.5), { - kind: ChestType::Single, - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "type": ChestType::Single, + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, redstone_wire => BlockBehavior::new(), { - east: WireEast::None, - north: WireNorth::None, - power: RedstoneWirePower::_0, - south: WireSouth::None, - west: WireWest::None, + "east": WireEast::None, + "north": WireNorth::None, + "power": RedstoneWirePower::_0, + "south": WireSouth::None, + "west": WireWest::None, }, diamond_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {}, deepslate_diamond_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {}, diamond_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {}, crafting_table => BlockBehavior::new().strength(2.5, 2.5), {}, wheat => BlockBehavior::new(), { - age: WheatAge::_0, + "age": WheatAge::_0, }, farmland => BlockBehavior::new().strength(0.6, 0.6), { - moisture: FarmlandMoisture::_0, + "moisture": FarmlandMoisture::_0, }, furnace => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - facing: FacingCardinal::North, - lit: Lit(false), + "facing": FacingCardinal::North, + "lit": Lit(false), }, oak_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: OakSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": OakSignRotation::_0, + "waterlogged": Waterlogged(false), }, spruce_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: SpruceSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": SpruceSignRotation::_0, + "waterlogged": Waterlogged(false), }, birch_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: BirchSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": BirchSignRotation::_0, + "waterlogged": Waterlogged(false), }, acacia_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: AcaciaSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": AcaciaSignRotation::_0, + "waterlogged": Waterlogged(false), }, cherry_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: CherrySignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": CherrySignRotation::_0, + "waterlogged": Waterlogged(false), }, jungle_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: JungleSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": JungleSignRotation::_0, + "waterlogged": Waterlogged(false), }, dark_oak_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: DarkOakSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": DarkOakSignRotation::_0, + "waterlogged": Waterlogged(false), }, mangrove_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: MangroveSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": MangroveSignRotation::_0, + "waterlogged": Waterlogged(false), }, bamboo_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: BambooSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": BambooSignRotation::_0, + "waterlogged": Waterlogged(false), }, oak_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, ladder => BlockBehavior::new().strength(0.4, 0.4), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, rail => BlockBehavior::new().strength(0.7, 0.7), { - shape: Shape::NorthSouth, - waterlogged: Waterlogged(false), + "shape": Shape::NorthSouth, + "waterlogged": Waterlogged(false), }, cobblestone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, oak_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, spruce_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, birch_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, acacia_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, cherry_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, jungle_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, dark_oak_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, mangrove_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, bamboo_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, oak_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: OakHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": OakHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, spruce_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: SpruceHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": SpruceHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, birch_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: BirchHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": BirchHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, acacia_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: AcaciaHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": AcaciaHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, cherry_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: CherryHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": CherryHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, jungle_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: JungleHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": JungleHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, dark_oak_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: DarkOakHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": DarkOakHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, crimson_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: CrimsonHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": CrimsonHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, warped_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: WarpedHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": WarpedHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, mangrove_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: MangroveHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": MangroveHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, bamboo_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - attached: Attached(false), - rotation: BambooHangingSignRotation::_0, - waterlogged: Waterlogged(false), + "attached": Attached(false), + "rotation": BambooHangingSignRotation::_0, + "waterlogged": Waterlogged(false), }, oak_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, spruce_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, birch_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, acacia_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, cherry_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, jungle_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, dark_oak_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, mangrove_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, crimson_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, warped_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, bamboo_wall_hanging_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, lever => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, stone_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, iron_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, oak_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, spruce_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, birch_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, jungle_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, acacia_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, cherry_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, dark_oak_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, mangrove_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, bamboo_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, redstone_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), { - lit: Lit(false), + "lit": Lit(false), }, deepslate_redstone_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), { - lit: Lit(false), + "lit": Lit(false), }, redstone_torch => BlockBehavior::new(), { - lit: Lit(true), + "lit": Lit(true), }, redstone_wall_torch => BlockBehavior::new(), { - facing: FacingCardinal::North, - lit: Lit(true), + "facing": FacingCardinal::North, + "lit": Lit(true), }, stone_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, snow => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.1, 0.1), { - layers: SnowLayers::_1, + "layers": SnowLayers::_1, }, ice => BlockBehavior::new().strength(0.5, 0.5).friction(0.98), {}, snow_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.2, 0.2), {}, cactus => BlockBehavior::new().strength(0.4, 0.4), { - age: CactusAge::_0, + "age": CactusAge::_0, }, clay => BlockBehavior::new().strength(0.6, 0.6), {}, sugar_cane => BlockBehavior::new(), { - age: SugarCaneAge::_0, + "age": SugarCaneAge::_0, }, jukebox => BlockBehavior::new().strength(2.0, 6.0), { - has_record: HasRecord(false), + "has_record": HasRecord(false), }, oak_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, netherrack => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.4, 0.4), {}, soul_sand => BlockBehavior::new().strength(0.5, 0.5), {}, soul_soil => BlockBehavior::new().strength(0.5, 0.5), {}, basalt => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), { - axis: Axis::Y, + "axis": Axis::Y, }, polished_basalt => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), { - axis: Axis::Y, + "axis": Axis::Y, }, soul_torch => BlockBehavior::new(), {}, soul_wall_torch => BlockBehavior::new(), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, glowstone => BlockBehavior::new().strength(0.3, 0.3), {}, nether_portal => BlockBehavior::new().destroy_time(-1.0), { - axis: AxisXZ::X, + "axis": AxisXZ::X, }, carved_pumpkin => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, jack_o_lantern => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, cake => BlockBehavior::new().strength(0.5, 0.5), { - bites: CakeBites::_0, + "bites": CakeBites::_0, }, repeater => BlockBehavior::new(), { - delay: RepeaterDelay::_1, - facing: FacingCardinal::North, - locked: Locked(false), - powered: Powered(false), + "delay": RepeaterDelay::_1, + "facing": FacingCardinal::North, + "locked": Locked(false), + "powered": Powered(false), }, white_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {}, orange_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {}, @@ -2721,67 +2721,67 @@ make_block_states! { red_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {}, black_stained_glass => BlockBehavior::new().strength(0.3, 0.3), {}, oak_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, spruce_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, birch_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, jungle_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, acacia_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, cherry_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, dark_oak_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, mangrove_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, bamboo_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, mossy_stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, @@ -2796,215 +2796,215 @@ make_block_states! { infested_cracked_stone_bricks => BlockBehavior::new().strength(0.75, 0.75), {}, infested_chiseled_stone_bricks => BlockBehavior::new().strength(0.75, 0.75), {}, brown_mushroom_block => BlockBehavior::new().strength(0.2, 0.2), { - down: Down(true), - east: East(true), - north: North(true), - south: South(true), - up: Up(true), - west: West(true), + "down": Down(true), + "east": East(true), + "north": North(true), + "south": South(true), + "up": Up(true), + "west": West(true), }, red_mushroom_block => BlockBehavior::new().strength(0.2, 0.2), { - down: Down(true), - east: East(true), - north: North(true), - south: South(true), - up: Up(true), - west: West(true), + "down": Down(true), + "east": East(true), + "north": North(true), + "south": South(true), + "up": Up(true), + "west": West(true), }, mushroom_stem => BlockBehavior::new().strength(0.2, 0.2), { - down: Down(true), - east: East(true), - north: North(true), - south: South(true), - up: Up(true), - west: West(true), + "down": Down(true), + "east": East(true), + "north": North(true), + "south": South(true), + "up": Up(true), + "west": West(true), }, iron_bars => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, chain => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), { - axis: Axis::Y, - waterlogged: Waterlogged(false), + "axis": Axis::Y, + "waterlogged": Waterlogged(false), }, glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, pumpkin => BlockBehavior::new().strength(1.0, 1.0), {}, melon => BlockBehavior::new().strength(1.0, 1.0), {}, attached_pumpkin_stem => BlockBehavior::new(), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, attached_melon_stem => BlockBehavior::new(), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, pumpkin_stem => BlockBehavior::new(), { - age: PumpkinStemAge::_0, + "age": PumpkinStemAge::_0, }, melon_stem => BlockBehavior::new(), { - age: MelonStemAge::_0, + "age": MelonStemAge::_0, }, vine => BlockBehavior::new().strength(0.2, 0.2), { - east: East(false), - north: North(false), - south: South(false), - up: Up(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "up": Up(false), + "west": West(false), }, glow_lichen => BlockBehavior::new().strength(0.2, 0.2), { - down: Down(false), - east: East(false), - north: North(false), - south: South(false), - up: Up(false), - waterlogged: Waterlogged(false), - west: West(false), + "down": Down(false), + "east": East(false), + "north": North(false), + "south": South(false), + "up": Up(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, oak_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, stone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, mud_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, mycelium => BlockBehavior::new().strength(0.6, 0.6), { - snowy: Snowy(false), + "snowy": Snowy(false), }, lily_pad => BlockBehavior::new(), {}, nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, nether_brick_fence => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, nether_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, nether_wart => BlockBehavior::new(), { - age: NetherWartAge::_0, + "age": NetherWartAge::_0, }, enchanting_table => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), {}, brewing_stand => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), { - has_bottle: HasBottle0(false), - has_bottle: HasBottle1(false), - has_bottle: HasBottle2(false), + "has_bottle_0": HasBottle0(false), + "has_bottle_1": HasBottle1(false), + "has_bottle_2": HasBottle2(false), }, cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), {}, water_cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), { - level: WaterCauldronLevel::_1, + "level": WaterCauldronLevel::_1, }, lava_cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), {}, powder_snow_cauldron => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), { - level: PowderSnowCauldronLevel::_1, + "level": PowderSnowCauldronLevel::_1, }, end_portal => BlockBehavior::new().strength(-1.0, 3600000.0), {}, end_portal_frame => BlockBehavior::new().strength(-1.0, 3600000.0), { - eye: Eye(false), - facing: FacingCardinal::North, + "eye": Eye(false), + "facing": FacingCardinal::North, }, end_stone => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), {}, dragon_egg => BlockBehavior::new().strength(3.0, 9.0), {}, redstone_lamp => BlockBehavior::new().strength(0.3, 0.3), { - lit: Lit(false), + "lit": Lit(false), }, cocoa => BlockBehavior::new().strength(0.2, 3.0), { - age: CocoaAge::_0, - facing: FacingCardinal::North, + "age": CocoaAge::_0, + "facing": FacingCardinal::North, }, sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, emerald_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {}, deepslate_emerald_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(4.5, 3.0), {}, ender_chest => BlockBehavior::new().requires_correct_tool_for_drops().strength(22.5, 600.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, tripwire_hook => BlockBehavior::new(), { - attached: Attached(false), - facing: FacingCardinal::North, - powered: Powered(false), + "attached": Attached(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, tripwire => BlockBehavior::new(), { - attached: Attached(false), - disarmed: Disarmed(false), - east: East(false), - north: North(false), - powered: Powered(false), - south: South(false), - west: West(false), + "attached": Attached(false), + "disarmed": Disarmed(false), + "east": East(false), + "north": North(false), + "powered": Powered(false), + "south": South(false), + "west": West(false), }, emerald_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {}, spruce_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, birch_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, jungle_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, command_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), { - conditional: Conditional(false), - facing: FacingCubic::North, + "conditional": Conditional(false), + "facing": FacingCubic::North, }, beacon => BlockBehavior::new().strength(3.0, 3.0), {}, cobblestone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, mossy_cobblestone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, flower_pot => BlockBehavior::new(), {}, potted_torchflower => BlockBehavior::new(), {}, @@ -3035,166 +3035,166 @@ make_block_states! { potted_dead_bush => BlockBehavior::new(), {}, potted_cactus => BlockBehavior::new(), {}, carrots => BlockBehavior::new(), { - age: CarrotsAge::_0, + "age": CarrotsAge::_0, }, potatoes => BlockBehavior::new(), { - age: PotatoesAge::_0, + "age": PotatoesAge::_0, }, oak_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, spruce_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, birch_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, jungle_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, acacia_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, cherry_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, dark_oak_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, mangrove_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, bamboo_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, skeleton_skull => BlockBehavior::new().strength(1.0, 1.0), { - powered: Powered(false), - rotation: SkeletonSkullRotation::_0, + "powered": Powered(false), + "rotation": SkeletonSkullRotation::_0, }, skeleton_wall_skull => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - powered: Powered(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, wither_skeleton_skull => BlockBehavior::new().strength(1.0, 1.0), { - powered: Powered(false), - rotation: WitherSkeletonSkullRotation::_0, + "powered": Powered(false), + "rotation": WitherSkeletonSkullRotation::_0, }, wither_skeleton_wall_skull => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - powered: Powered(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, zombie_head => BlockBehavior::new().strength(1.0, 1.0), { - powered: Powered(false), - rotation: ZombieHeadRotation::_0, + "powered": Powered(false), + "rotation": ZombieHeadRotation::_0, }, zombie_wall_head => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - powered: Powered(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, player_head => BlockBehavior::new().strength(1.0, 1.0), { - powered: Powered(false), - rotation: PlayerHeadRotation::_0, + "powered": Powered(false), + "rotation": PlayerHeadRotation::_0, }, player_wall_head => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - powered: Powered(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, creeper_head => BlockBehavior::new().strength(1.0, 1.0), { - powered: Powered(false), - rotation: CreeperHeadRotation::_0, + "powered": Powered(false), + "rotation": CreeperHeadRotation::_0, }, creeper_wall_head => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - powered: Powered(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, dragon_head => BlockBehavior::new().strength(1.0, 1.0), { - powered: Powered(false), - rotation: DragonHeadRotation::_0, + "powered": Powered(false), + "rotation": DragonHeadRotation::_0, }, dragon_wall_head => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - powered: Powered(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, piglin_head => BlockBehavior::new().strength(1.0, 1.0), { - powered: Powered(false), - rotation: PiglinHeadRotation::_0, + "powered": Powered(false), + "rotation": PiglinHeadRotation::_0, }, piglin_wall_head => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - powered: Powered(false), + "facing": FacingCardinal::North, + "powered": Powered(false), }, anvil => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, chipped_anvil => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, damaged_anvil => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 1200.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, trapped_chest => BlockBehavior::new().strength(2.5, 2.5), { - kind: ChestType::Single, - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "type": ChestType::Single, + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, light_weighted_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), { - power: LightWeightedPressurePlatePower::_0, + "power": LightWeightedPressurePlatePower::_0, }, heavy_weighted_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), { - power: HeavyWeightedPressurePlatePower::_0, + "power": HeavyWeightedPressurePlatePower::_0, }, comparator => BlockBehavior::new(), { - facing: FacingCardinal::North, - mode: ComparatorType::Compare, - powered: Powered(false), + "facing": FacingCardinal::North, + "mode": ComparatorType::Compare, + "powered": Powered(false), }, daylight_detector => BlockBehavior::new().strength(0.2, 0.2), { - inverted: Inverted(false), - power: DaylightDetectorPower::_0, + "inverted": Inverted(false), + "power": DaylightDetectorPower::_0, }, redstone_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {}, nether_quartz_ore => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), {}, hopper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 4.8), { - enabled: Enabled(true), - facing: Facing::Down, + "enabled": Enabled(true), + "facing": Facing::Down, }, quartz_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, chiseled_quartz_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, quartz_pillar => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), { - axis: Axis::Y, + "axis": Axis::Y, }, quartz_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, activator_rail => BlockBehavior::new().strength(0.7, 0.7), { - powered: Powered(false), - shape: RailShape::NorthSouth, - waterlogged: Waterlogged(false), + "powered": Powered(false), + "shape": RailShape::NorthSouth, + "waterlogged": Waterlogged(false), }, dropper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - facing: FacingCubic::North, - triggered: Triggered(false), + "facing": FacingCubic::North, + "triggered": Triggered(false), }, white_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {}, orange_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {}, @@ -3213,204 +3213,204 @@ make_block_states! { red_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {}, black_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {}, white_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, orange_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, magenta_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, light_blue_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, yellow_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, lime_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, pink_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, gray_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, light_gray_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, cyan_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, purple_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, blue_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, brown_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, green_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, red_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, black_stained_glass_pane => BlockBehavior::new().strength(0.3, 0.3), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, acacia_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, cherry_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, dark_oak_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, mangrove_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, bamboo_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, bamboo_mosaic_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, slime_block => BlockBehavior::new().friction(0.8), {}, barrier => BlockBehavior::new().strength(-1.0, 3600000.8), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, light => BlockBehavior::new().strength(-1.0, 3600000.8), { - level: LightLevel::_15, - waterlogged: Waterlogged(false), + "level": LightLevel::_15, + "waterlogged": Waterlogged(false), }, iron_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, prismarine => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, prismarine_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, dark_prismarine => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, prismarine_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, prismarine_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, dark_prismarine_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, prismarine_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, prismarine_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, dark_prismarine_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, sea_lantern => BlockBehavior::new().strength(0.3, 0.3), {}, hay_block => BlockBehavior::new().strength(0.5, 0.5), { - axis: Axis::Y, + "axis": Axis::Y, }, white_carpet => BlockBehavior::new().strength(0.1, 0.1), {}, orange_carpet => BlockBehavior::new().strength(0.1, 0.1), {}, @@ -3432,548 +3432,548 @@ make_block_states! { coal_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {}, packed_ice => BlockBehavior::new().strength(0.5, 0.5).friction(0.98), {}, sunflower => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, lilac => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, rose_bush => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, peony => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, tall_grass => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, large_fern => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, white_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: WhiteBannerRotation::_0, + "rotation": WhiteBannerRotation::_0, }, orange_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: OrangeBannerRotation::_0, + "rotation": OrangeBannerRotation::_0, }, magenta_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: MagentaBannerRotation::_0, + "rotation": MagentaBannerRotation::_0, }, light_blue_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: LightBlueBannerRotation::_0, + "rotation": LightBlueBannerRotation::_0, }, yellow_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: YellowBannerRotation::_0, + "rotation": YellowBannerRotation::_0, }, lime_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: LimeBannerRotation::_0, + "rotation": LimeBannerRotation::_0, }, pink_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: PinkBannerRotation::_0, + "rotation": PinkBannerRotation::_0, }, gray_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: GrayBannerRotation::_0, + "rotation": GrayBannerRotation::_0, }, light_gray_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: LightGrayBannerRotation::_0, + "rotation": LightGrayBannerRotation::_0, }, cyan_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: CyanBannerRotation::_0, + "rotation": CyanBannerRotation::_0, }, purple_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: PurpleBannerRotation::_0, + "rotation": PurpleBannerRotation::_0, }, blue_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: BlueBannerRotation::_0, + "rotation": BlueBannerRotation::_0, }, brown_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: BrownBannerRotation::_0, + "rotation": BrownBannerRotation::_0, }, green_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: GreenBannerRotation::_0, + "rotation": GreenBannerRotation::_0, }, red_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: RedBannerRotation::_0, + "rotation": RedBannerRotation::_0, }, black_banner => BlockBehavior::new().strength(1.0, 1.0), { - rotation: BlackBannerRotation::_0, + "rotation": BlackBannerRotation::_0, }, white_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, orange_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, magenta_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, light_blue_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, yellow_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, lime_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, pink_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, gray_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, light_gray_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, cyan_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, purple_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, blue_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, brown_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, green_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, red_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, black_wall_banner => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, chiseled_red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, cut_red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, red_sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, oak_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, spruce_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, birch_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, jungle_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, acacia_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, cherry_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, dark_oak_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, mangrove_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, bamboo_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, bamboo_mosaic_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, stone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, smooth_stone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, cut_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, petrified_oak_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, cobblestone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, stone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, mud_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, nether_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, quartz_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, red_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, cut_red_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, purpur_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, smooth_stone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, smooth_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, smooth_quartz => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, smooth_red_sandstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, spruce_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, birch_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, jungle_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, acacia_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, cherry_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, dark_oak_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, mangrove_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, bamboo_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, spruce_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, birch_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, jungle_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, acacia_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, cherry_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, dark_oak_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, mangrove_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, bamboo_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, spruce_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, birch_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, jungle_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, acacia_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, cherry_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, dark_oak_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, mangrove_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, bamboo_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, end_rod => BlockBehavior::new(), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, chorus_plant => BlockBehavior::new().strength(0.4, 0.4), { - down: Down(false), - east: East(false), - north: North(false), - south: South(false), - up: Up(false), - west: West(false), + "down": Down(false), + "east": East(false), + "north": North(false), + "south": South(false), + "up": Up(false), + "west": West(false), }, chorus_flower => BlockBehavior::new().strength(0.4, 0.4), { - age: ChorusFlowerAge::_0, + "age": ChorusFlowerAge::_0, }, purpur_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, purpur_pillar => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - axis: Axis::Y, + "axis": Axis::Y, }, purpur_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, end_stone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), {}, torchflower_crop => BlockBehavior::new(), { - age: TorchflowerCropAge::_0, + "age": TorchflowerCropAge::_0, }, pitcher_crop => BlockBehavior::new(), { - age: _0_1_2_3_4::_0, - half: UpperLower::Lower, + "age": _0_1_2_3_4::_0, + "half": UpperLower::Lower, }, pitcher_plant => BlockBehavior::new(), { - half: Half::Lower, + "half": Half::Lower, }, beetroots => BlockBehavior::new(), { - age: BeetrootsAge::_0, + "age": BeetrootsAge::_0, }, dirt_path => BlockBehavior::new().strength(0.65, 0.65), {}, end_gateway => BlockBehavior::new().strength(-1.0, 3600000.0), {}, repeating_command_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), { - conditional: Conditional(false), - facing: FacingCubic::North, + "conditional": Conditional(false), + "facing": FacingCubic::North, }, chain_command_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), { - conditional: Conditional(false), - facing: FacingCubic::North, + "conditional": Conditional(false), + "facing": FacingCubic::North, }, frosted_ice => BlockBehavior::new().strength(0.5, 0.5).friction(0.98), { - age: FrostedIceAge::_0, + "age": FrostedIceAge::_0, }, magma_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), {}, nether_wart_block => BlockBehavior::new().strength(1.0, 1.0), {}, red_nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, bone_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, structure_void => BlockBehavior::new(), {}, observer => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 3.0), { - facing: FacingCubic::South, - powered: Powered(false), + "facing": FacingCubic::South, + "powered": Powered(false), }, shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, white_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, orange_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, magenta_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, light_blue_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, yellow_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, lime_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, pink_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, gray_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, light_gray_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, cyan_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, purple_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, blue_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, brown_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, green_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, red_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, black_shulker_box => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCubic::Up, + "facing": FacingCubic::Up, }, white_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, orange_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, magenta_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, light_blue_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, yellow_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, lime_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, pink_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, gray_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, light_gray_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, cyan_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, purple_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, blue_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, brown_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, green_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, red_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, black_glazed_terracotta => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.4, 1.4), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, white_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {}, orange_concrete => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.8, 1.8), {}, @@ -4008,16 +4008,16 @@ make_block_states! { red_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {}, black_concrete_powder => BlockBehavior::new().strength(0.5, 0.5), {}, kelp => BlockBehavior::new(), { - age: KelpAge::_0, + "age": KelpAge::_0, }, kelp_plant => BlockBehavior::new(), {}, dried_kelp_block => BlockBehavior::new().strength(0.5, 2.5), {}, turtle_egg => BlockBehavior::new().strength(0.5, 0.5), { - eggs: TurtleEggEggs::_1, - hatch: TurtleEggHatch::_0, + "eggs": TurtleEggEggs::_1, + "hatch": TurtleEggHatch::_0, }, sniffer_egg => BlockBehavior::new().strength(0.5, 0.5), { - hatch: SnifferEggHatch::_0, + "hatch": SnifferEggHatch::_0, }, dead_tube_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, dead_brain_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, @@ -4030,439 +4030,439 @@ make_block_states! { fire_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, horn_coral_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, dead_tube_coral => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_brain_coral => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_bubble_coral => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_fire_coral => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_horn_coral => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, tube_coral => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, brain_coral => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, bubble_coral => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, fire_coral => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, horn_coral => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_tube_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_brain_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_bubble_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_fire_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_horn_coral_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, tube_coral_fan => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, brain_coral_fan => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, bubble_coral_fan => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, fire_coral_fan => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, horn_coral_fan => BlockBehavior::new(), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, dead_tube_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, dead_brain_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, dead_bubble_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, dead_fire_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, dead_horn_coral_wall_fan => BlockBehavior::new().requires_correct_tool_for_drops(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, tube_coral_wall_fan => BlockBehavior::new(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, brain_coral_wall_fan => BlockBehavior::new(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, bubble_coral_wall_fan => BlockBehavior::new(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, fire_coral_wall_fan => BlockBehavior::new(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, horn_coral_wall_fan => BlockBehavior::new(), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(true), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(true), }, sea_pickle => BlockBehavior::new(), { - pickles: SeaPicklePickles::_1, - waterlogged: Waterlogged(true), + "pickles": SeaPicklePickles::_1, + "waterlogged": Waterlogged(true), }, blue_ice => BlockBehavior::new().strength(2.8, 2.8).friction(0.989), {}, conduit => BlockBehavior::new().strength(3.0, 3.0), { - waterlogged: Waterlogged(true), + "waterlogged": Waterlogged(true), }, bamboo_sapling => BlockBehavior::new().strength(1.0, 1.0), {}, bamboo => BlockBehavior::new().strength(1.0, 1.0), { - age: BambooAge::_0, - leaves: Leaves::None, - stage: BambooStage::_0, + "age": BambooAge::_0, + "leaves": Leaves::None, + "stage": BambooStage::_0, }, potted_bamboo => BlockBehavior::new(), {}, void_air => BlockBehavior::new(), {}, cave_air => BlockBehavior::new(), {}, bubble_column => BlockBehavior::new(), { - drag: Drag(true), + "drag": Drag(true), }, polished_granite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, smooth_red_sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, mossy_stone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, polished_diorite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, mossy_cobblestone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, end_stone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, stone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, smooth_sandstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, smooth_quartz_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, granite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, andesite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, red_nether_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, polished_andesite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, diorite_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, polished_granite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, smooth_red_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, mossy_stone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, polished_diorite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, mossy_cobblestone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, end_stone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, smooth_sandstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, smooth_quartz_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, granite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, andesite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, red_nether_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, polished_andesite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, diorite_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, prismarine_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, red_sandstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, mossy_stone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, granite_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, stone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, mud_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 3.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, nether_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, andesite_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, red_nether_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, sandstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, end_stone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 9.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, diorite_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, scaffolding => BlockBehavior::new(), { - bottom: Bottom(false), - distance: ScaffoldingDistance::_7, - waterlogged: Waterlogged(false), + "bottom": Bottom(false), + "distance": ScaffoldingDistance::_7, + "waterlogged": Waterlogged(false), }, loom => BlockBehavior::new().strength(2.5, 2.5), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, barrel => BlockBehavior::new().strength(2.5, 2.5), { - facing: FacingCubic::North, - open: Open(false), + "facing": FacingCubic::North, + "open": Open(false), }, smoker => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - facing: FacingCardinal::North, - lit: Lit(false), + "facing": FacingCardinal::North, + "lit": Lit(false), }, blast_furnace => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - facing: FacingCardinal::North, - lit: Lit(false), + "facing": FacingCardinal::North, + "lit": Lit(false), }, cartography_table => BlockBehavior::new().strength(2.5, 2.5), {}, fletching_table => BlockBehavior::new().strength(2.5, 2.5), {}, grindstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - face: Face::Wall, - facing: FacingCardinal::North, + "face": Face::Wall, + "facing": FacingCardinal::North, }, lectern => BlockBehavior::new().strength(2.5, 2.5), { - facing: FacingCardinal::North, - has_book: HasBook(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "has_book": HasBook(false), + "powered": Powered(false), }, smithing_table => BlockBehavior::new().strength(2.5, 2.5), {}, stonecutter => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - facing: FacingCardinal::North, + "facing": FacingCardinal::North, }, bell => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 5.0), { - attachment: Attachment::Floor, - facing: FacingCardinal::North, - powered: Powered(false), + "attachment": Attachment::Floor, + "facing": FacingCardinal::North, + "powered": Powered(false), }, lantern => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - hanging: Hanging(false), - waterlogged: Waterlogged(false), + "hanging": Hanging(false), + "waterlogged": Waterlogged(false), }, soul_lantern => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), { - hanging: Hanging(false), - waterlogged: Waterlogged(false), + "hanging": Hanging(false), + "waterlogged": Waterlogged(false), }, campfire => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCardinal::North, - lit: Lit(true), - signal_fire: SignalFire(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "lit": Lit(true), + "signal_fire": SignalFire(false), + "waterlogged": Waterlogged(false), }, soul_campfire => BlockBehavior::new().strength(2.0, 2.0), { - facing: FacingCardinal::North, - lit: Lit(true), - signal_fire: SignalFire(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "lit": Lit(true), + "signal_fire": SignalFire(false), + "waterlogged": Waterlogged(false), }, sweet_berry_bush => BlockBehavior::new(), { - age: SweetBerryBushAge::_0, + "age": SweetBerryBushAge::_0, }, warped_stem => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_warped_stem => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, warped_hyphae => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_warped_hyphae => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, warped_nylium => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.4, 0.4), {}, warped_fungus => BlockBehavior::new(), {}, @@ -4470,156 +4470,156 @@ make_block_states! { warped_roots => BlockBehavior::new(), {}, nether_sprouts => BlockBehavior::new(), {}, crimson_stem => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_crimson_stem => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, crimson_hyphae => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, stripped_crimson_hyphae => BlockBehavior::new().strength(2.0, 2.0), { - axis: Axis::Y, + "axis": Axis::Y, }, crimson_nylium => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.4, 0.4), {}, crimson_fungus => BlockBehavior::new(), {}, shroomlight => BlockBehavior::new().strength(1.0, 1.0), {}, weeping_vines => BlockBehavior::new(), { - age: WeepingVinesAge::_0, + "age": WeepingVinesAge::_0, }, weeping_vines_plant => BlockBehavior::new(), {}, twisting_vines => BlockBehavior::new(), { - age: TwistingVinesAge::_0, + "age": TwistingVinesAge::_0, }, twisting_vines_plant => BlockBehavior::new(), {}, crimson_roots => BlockBehavior::new(), {}, crimson_planks => BlockBehavior::new().strength(2.0, 3.0), {}, warped_planks => BlockBehavior::new().strength(2.0, 3.0), {}, crimson_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, warped_slab => BlockBehavior::new().strength(2.0, 3.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, crimson_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, warped_pressure_plate => BlockBehavior::new().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, crimson_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, warped_fence => BlockBehavior::new().strength(2.0, 3.0), { - east: East(false), - north: North(false), - south: South(false), - waterlogged: Waterlogged(false), - west: West(false), + "east": East(false), + "north": North(false), + "south": South(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, crimson_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, warped_trapdoor => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, crimson_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, warped_fence_gate => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - in_wall: InWall(false), - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "in_wall": InWall(false), + "open": Open(false), + "powered": Powered(false), }, crimson_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, warped_stairs => BlockBehavior::new().strength(2.0, 3.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, crimson_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, warped_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, crimson_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, warped_door => BlockBehavior::new().strength(3.0, 3.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, crimson_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: CrimsonSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": CrimsonSignRotation::_0, + "waterlogged": Waterlogged(false), }, warped_sign => BlockBehavior::new().strength(1.0, 1.0), { - rotation: WarpedSignRotation::_0, - waterlogged: Waterlogged(false), + "rotation": WarpedSignRotation::_0, + "waterlogged": Waterlogged(false), }, crimson_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, warped_wall_sign => BlockBehavior::new().strength(1.0, 1.0), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, structure_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), { - mode: Mode::Load, + "mode": Mode::Load, }, jigsaw => BlockBehavior::new().requires_correct_tool_for_drops().strength(-1.0, 3600000.0), { - orientation: Orientation::NorthUp, + "orientation": Orientation::NorthUp, }, composter => BlockBehavior::new().strength(0.6, 0.6), { - level: ComposterLevel::_0, + "level": ComposterLevel::_0, }, target => BlockBehavior::new().strength(0.5, 0.5), { - power: TargetOutputPower::_0, + "power": TargetOutputPower::_0, }, bee_nest => BlockBehavior::new().strength(0.3, 0.3), { - facing: FacingCardinal::North, - honey_level: BeeNestHoneyLevel::_0, + "facing": FacingCardinal::North, + "honey_level": BeeNestHoneyLevel::_0, }, beehive => BlockBehavior::new().strength(0.6, 0.6), { - facing: FacingCardinal::North, - honey_level: BeehiveHoneyLevel::_0, + "facing": FacingCardinal::North, + "honey_level": BeehiveHoneyLevel::_0, }, honey_block => BlockBehavior::new(), {}, honeycomb_block => BlockBehavior::new().strength(0.6, 0.6), {}, @@ -4627,7 +4627,7 @@ make_block_states! { ancient_debris => BlockBehavior::new().requires_correct_tool_for_drops().strength(30.0, 1200.0), {}, crying_obsidian => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 1200.0), {}, respawn_anchor => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 1200.0), { - charges: RespawnAnchorCharge::_0, + "charges": RespawnAnchorCharge::_0, }, potted_crimson_fungus => BlockBehavior::new(), {}, potted_warped_fungus => BlockBehavior::new(), {}, @@ -4636,319 +4636,319 @@ make_block_states! { lodestone => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 3.5), {}, blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, blackstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, blackstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, blackstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, polished_blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, polished_blackstone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, cracked_polished_blackstone_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, chiseled_polished_blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, polished_blackstone_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, polished_blackstone_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, polished_blackstone_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, gilded_blackstone => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, polished_blackstone_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, polished_blackstone_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, polished_blackstone_pressure_plate => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.5, 0.5), { - powered: Powered(false), + "powered": Powered(false), }, polished_blackstone_button => BlockBehavior::new().strength(0.5, 0.5), { - face: Face::Wall, - facing: FacingCardinal::North, - powered: Powered(false), + "face": Face::Wall, + "facing": FacingCardinal::North, + "powered": Powered(false), }, polished_blackstone_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, chiseled_nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, cracked_nether_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(2.0, 6.0), {}, quartz_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.8, 0.8), {}, candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: CandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": CandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, white_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: WhiteCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": WhiteCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, orange_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: OrangeCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": OrangeCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, magenta_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: MagentaCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": MagentaCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, light_blue_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: LightBlueCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": LightBlueCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, yellow_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: YellowCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": YellowCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, lime_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: LimeCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": LimeCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, pink_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: PinkCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": PinkCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, gray_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: GrayCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": GrayCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, light_gray_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: LightGrayCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": LightGrayCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, cyan_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: CyanCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": CyanCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, purple_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: PurpleCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": PurpleCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, blue_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: BlueCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": BlueCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, brown_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: BrownCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": BrownCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, green_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: GreenCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": GreenCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, red_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: RedCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": RedCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, black_candle => BlockBehavior::new().strength(0.1, 0.1), { - candles: BlackCandleCandles::_1, - lit: Lit(false), - waterlogged: Waterlogged(false), + "candles": BlackCandleCandles::_1, + "lit": Lit(false), + "waterlogged": Waterlogged(false), }, candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, white_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, orange_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, magenta_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, light_blue_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, yellow_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, lime_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, pink_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, gray_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, light_gray_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, cyan_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, purple_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, blue_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, brown_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, green_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, red_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, black_candle_cake => BlockBehavior::new().strength(0.5, 0.5), { - lit: Lit(false), + "lit": Lit(false), }, amethyst_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 1.5), {}, budding_amethyst => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 1.5), {}, amethyst_cluster => BlockBehavior::new().strength(1.5, 1.5), { - facing: FacingCubic::Up, - waterlogged: Waterlogged(false), + "facing": FacingCubic::Up, + "waterlogged": Waterlogged(false), }, large_amethyst_bud => BlockBehavior::new().strength(1.5, 1.5), { - facing: FacingCubic::Up, - waterlogged: Waterlogged(false), + "facing": FacingCubic::Up, + "waterlogged": Waterlogged(false), }, medium_amethyst_bud => BlockBehavior::new().strength(1.5, 1.5), { - facing: FacingCubic::Up, - waterlogged: Waterlogged(false), + "facing": FacingCubic::Up, + "waterlogged": Waterlogged(false), }, small_amethyst_bud => BlockBehavior::new().strength(1.5, 1.5), { - facing: FacingCubic::Up, - waterlogged: Waterlogged(false), + "facing": FacingCubic::Up, + "waterlogged": Waterlogged(false), }, tuff => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, tuff_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, tuff_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, tuff_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, polished_tuff => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, polished_tuff_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, polished_tuff_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, polished_tuff_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, chiseled_tuff => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, tuff_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, tuff_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, tuff_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, tuff_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, chiseled_tuff_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 6.0), {}, calcite => BlockBehavior::new().requires_correct_tool_for_drops().strength(0.75, 0.75), {}, tinted_glass => BlockBehavior::new().strength(0.3, 0.3), {}, powder_snow => BlockBehavior::new().strength(0.25, 0.25), {}, sculk_sensor => BlockBehavior::new().strength(1.5, 1.5), { - power: SculkSensorPower::_0, - sculk_sensor_phase: Phase::Inactive, - waterlogged: Waterlogged(false), + "power": SculkSensorPower::_0, + "sculk_sensor_phase": Phase::Inactive, + "waterlogged": Waterlogged(false), }, calibrated_sculk_sensor => BlockBehavior::new().strength(1.5, 1.5), { - facing: FacingCardinal::North, - power: CalibratedSculkSensorPower::_0, - sculk_sensor_phase: Phase::Inactive, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "power": CalibratedSculkSensorPower::_0, + "sculk_sensor_phase": Phase::Inactive, + "waterlogged": Waterlogged(false), }, sculk => BlockBehavior::new().strength(0.2, 0.2), {}, sculk_vein => BlockBehavior::new().strength(0.2, 0.2), { - down: Down(false), - east: East(false), - north: North(false), - south: South(false), - up: Up(false), - waterlogged: Waterlogged(false), - west: West(false), + "down": Down(false), + "east": East(false), + "north": North(false), + "south": South(false), + "up": Up(false), + "waterlogged": Waterlogged(false), + "west": West(false), }, sculk_catalyst => BlockBehavior::new().strength(3.0, 3.0), { - bloom: Bloom(false), + "bloom": Bloom(false), }, sculk_shrieker => BlockBehavior::new().strength(3.0, 3.0), { - can_summon: CanSummon(false), - shrieking: Shrieking(false), - waterlogged: Waterlogged(false), + "can_summon": CanSummon(false), + "shrieking": Shrieking(false), + "waterlogged": Waterlogged(false), }, copper_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, exposed_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, @@ -4969,44 +4969,44 @@ make_block_states! { waxed_exposed_chiseled_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, waxed_chiseled_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, oxidized_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, weathered_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, exposed_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, oxidized_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, weathered_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, exposed_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, waxed_copper_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, waxed_weathered_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, @@ -5017,343 +5017,343 @@ make_block_states! { waxed_exposed_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, waxed_cut_copper => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), {}, waxed_oxidized_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, waxed_weathered_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, waxed_exposed_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, waxed_cut_copper_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, waxed_oxidized_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, waxed_weathered_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, waxed_exposed_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, waxed_cut_copper_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, exposed_copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, oxidized_copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, weathered_copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, waxed_copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, waxed_exposed_copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, waxed_oxidized_copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, waxed_weathered_copper_door => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: Half::Lower, - hinge: Hinge::Left, - open: Open(false), - powered: Powered(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "hinge": Hinge::Left, + "open": Open(false), + "powered": Powered(false), }, copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, exposed_copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, oxidized_copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, weathered_copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, waxed_copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, waxed_exposed_copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, waxed_oxidized_copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, waxed_weathered_copper_trapdoor => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - open: Open(false), - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "open": Open(false), + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, exposed_copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, weathered_copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, oxidized_copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, waxed_copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, waxed_exposed_copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, waxed_weathered_copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, waxed_oxidized_copper_grate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, exposed_copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, weathered_copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, oxidized_copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, waxed_copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, waxed_exposed_copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, waxed_weathered_copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, waxed_oxidized_copper_bulb => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - lit: Lit(false), - powered: Powered(false), + "lit": Lit(false), + "powered": Powered(false), }, lightning_rod => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - facing: FacingCubic::Up, - powered: Powered(false), - waterlogged: Waterlogged(false), + "facing": FacingCubic::Up, + "powered": Powered(false), + "waterlogged": Waterlogged(false), }, pointed_dripstone => BlockBehavior::new().strength(1.5, 3.0), { - thickness: Thickness::Tip, - vertical_direction: TipDirection::Up, - waterlogged: Waterlogged(false), + "thickness": Thickness::Tip, + "vertical_direction": TipDirection::Up, + "waterlogged": Waterlogged(false), }, dripstone_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.5, 1.0), {}, cave_vines => BlockBehavior::new(), { - age: CaveVinesAge::_0, - berries: Berries(false), + "age": CaveVinesAge::_0, + "berries": Berries(false), }, cave_vines_plant => BlockBehavior::new(), { - berries: Berries(false), + "berries": Berries(false), }, spore_blossom => BlockBehavior::new(), {}, azalea => BlockBehavior::new(), {}, flowering_azalea => BlockBehavior::new(), {}, moss_carpet => BlockBehavior::new().strength(0.1, 0.1), {}, pink_petals => BlockBehavior::new(), { - facing: FacingCardinal::North, - flower_amount: PinkPetalsAmount::_1, + "facing": FacingCardinal::North, + "flower_amount": PinkPetalsAmount::_1, }, moss_block => BlockBehavior::new().strength(0.1, 0.1), {}, big_dripleaf => BlockBehavior::new().strength(0.1, 0.1), { - facing: FacingCardinal::North, - tilt: Tilt::None, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "tilt": Tilt::None, + "waterlogged": Waterlogged(false), }, big_dripleaf_stem => BlockBehavior::new().strength(0.1, 0.1), { - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, small_dripleaf => BlockBehavior::new(), { - facing: FacingCardinal::North, - half: Half::Lower, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": Half::Lower, + "waterlogged": Waterlogged(false), }, hanging_roots => BlockBehavior::new(), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, rooted_dirt => BlockBehavior::new().strength(0.5, 0.5), {}, mud => BlockBehavior::new().strength(0.5, 0.5), {}, deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.0, 6.0), { - axis: Axis::Y, + "axis": Axis::Y, }, cobbled_deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {}, cobbled_deepslate_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, cobbled_deepslate_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, cobbled_deepslate_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, polished_deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {}, polished_deepslate_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, polished_deepslate_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, polished_deepslate_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, deepslate_tiles => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {}, deepslate_tile_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, deepslate_tile_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, deepslate_tile_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, deepslate_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {}, deepslate_brick_stairs => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - facing: FacingCardinal::North, - half: TopBottom::Bottom, - shape: StairShape::Straight, - waterlogged: Waterlogged(false), + "facing": FacingCardinal::North, + "half": TopBottom::Bottom, + "shape": StairShape::Straight, + "waterlogged": Waterlogged(false), }, deepslate_brick_slab => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - kind: Type::Bottom, - waterlogged: Waterlogged(false), + "type": Type::Bottom, + "waterlogged": Waterlogged(false), }, deepslate_brick_wall => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), { - east: EastWall::None, - north: NorthWall::None, - south: SouthWall::None, - up: Up(true), - waterlogged: Waterlogged(false), - west: WestWall::None, + "east": EastWall::None, + "north": NorthWall::None, + "south": SouthWall::None, + "up": Up(true), + "waterlogged": Waterlogged(false), + "west": WestWall::None, }, chiseled_deepslate => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {}, cracked_deepslate_bricks => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {}, cracked_deepslate_tiles => BlockBehavior::new().requires_correct_tool_for_drops().strength(3.5, 6.0), {}, infested_deepslate => BlockBehavior::new().strength(1.5, 0.75), { - axis: Falling::Y, + "axis": Falling::Y, }, smooth_basalt => BlockBehavior::new().requires_correct_tool_for_drops().strength(1.25, 4.2), {}, raw_iron_block => BlockBehavior::new().requires_correct_tool_for_drops().strength(5.0, 6.0), {}, @@ -5362,37 +5362,37 @@ make_block_states! { potted_azalea_bush => BlockBehavior::new(), {}, potted_flowering_azalea_bush => BlockBehavior::new(), {}, ochre_froglight => BlockBehavior::new().strength(0.3, 0.3), { - axis: Axis::Y, + "axis": Axis::Y, }, verdant_froglight => BlockBehavior::new().strength(0.3, 0.3), { - axis: Axis::Y, + "axis": Axis::Y, }, pearlescent_froglight => BlockBehavior::new().strength(0.3, 0.3), { - axis: Axis::Y, + "axis": Axis::Y, }, frogspawn => BlockBehavior::new(), {}, reinforced_deepslate => BlockBehavior::new().strength(55.0, 1200.0), {}, decorated_pot => BlockBehavior::new(), { - cracked: Cracked(false), - facing: FacingCardinal::North, - waterlogged: Waterlogged(false), + "cracked": Cracked(false), + "facing": FacingCardinal::North, + "waterlogged": Waterlogged(false), }, crafter => BlockBehavior::new().strength(1.5, 3.5), { - crafting: Crafting(false), - orientation: Orientation::NorthUp, - triggered: Triggered(false), + "crafting": Crafting(false), + "orientation": Orientation::NorthUp, + "triggered": Triggered(false), }, trial_spawner => BlockBehavior::new().requires_correct_tool_for_drops().strength(50.0, 50.0), { - ominous: Ominous(false), - trial_spawner_state: TrialSpawnerState::Inactive, + "ominous": Ominous(false), + "trial_spawner_state": TrialSpawnerState::Inactive, }, vault => BlockBehavior::new(), { - facing: FacingCardinal::North, - ominous: Ominous(false), - vault_state: VaultState::Inactive, + "facing": FacingCardinal::North, + "ominous": Ominous(false), + "vault_state": VaultState::Inactive, }, heavy_core => BlockBehavior::new(), { - waterlogged: Waterlogged(false), + "waterlogged": Waterlogged(false), }, } } diff --git a/codegen/lib/code/blocks.py b/codegen/lib/code/blocks.py index 64347849..05788731 100755 --- a/codegen/lib/code/blocks.py +++ b/codegen/lib/code/blocks.py @@ -125,8 +125,7 @@ def generate_blocks(blocks_burger: dict, blocks_report: dict, pixlyzer_block_dat assert property_default is not None - property_name = clean_property_name(property_name) - this_property_code = f'{property_name}: {property_default_type}' + this_property_code = f'"{property_name}": {property_default_type}' properties_code += f'\n {this_property_code},' # if there's nothing inside the properties, keep it in one line diff --git a/codegen/lib/code/utils.py b/codegen/lib/code/utils.py index f4f9ca82..71b7d7d8 100755 --- a/codegen/lib/code/utils.py +++ b/codegen/lib/code/utils.py @@ -177,12 +177,12 @@ def fmt(): def clean_property_name(property_name): # if the name ends with _<number>, remove that part - ending = property_name.split('_')[-1] - if ending.isdigit(): - property_name = property_name[:-(len(ending) + 1)] + # ending = property_name.split('_')[-1] + # if ending.isdigit(): + # property_name = property_name[:-(len(ending) + 1)] # `type` is a reserved keyword, so we use kind instead ¯\_(ツ)_/¯ - if property_name == 'type': - property_name = 'kind' + # if property_name == 'type': + # property_name = 'kind' return property_name |
