From 86592931c6c9ee16555c4a51269acb6584977cf4 Mon Sep 17 00:00:00 2001 From: Tnze Date: Wed, 9 Mar 2022 10:08:44 +0800 Subject: [PATCH] blocks codegen --- level/block/acacia_button.go | 11 ++ level/block/acacia_door.go | 13 +++ level/block/acacia_fence.go | 13 +++ level/block/acacia_fence_gate.go | 12 +++ level/block/acacia_leaves.go | 10 ++ level/block/acacia_log.go | 9 ++ level/block/acacia_planks.go | 8 ++ level/block/acacia_pressure_plate.go | 9 ++ level/block/acacia_sapling.go | 9 ++ level/block/acacia_sign.go | 10 ++ level/block/acacia_slab.go | 10 ++ level/block/acacia_stairs.go | 12 +++ level/block/acacia_trapdoor.go | 13 +++ level/block/acacia_wall_sign.go | 10 ++ level/block/acacia_wood.go | 9 ++ level/block/activator_rail.go | 11 ++ level/block/air.go | 8 ++ level/block/allium.go | 8 ++ level/block/amethyst_block.go | 8 ++ level/block/amethyst_cluster.go | 10 ++ level/block/ancient_debris.go | 8 ++ level/block/andesite.go | 8 ++ level/block/andesite_slab.go | 10 ++ level/block/andesite_stairs.go | 12 +++ level/block/andesite_wall.go | 14 +++ level/block/anvil.go | 9 ++ level/block/attached_melon_stem.go | 9 ++ level/block/attached_pumpkin_stem.go | 9 ++ level/block/azalea.go | 8 ++ level/block/azalea_leaves.go | 10 ++ level/block/azure_bluet.go | 8 ++ level/block/bamboo.go | 11 ++ level/block/bamboo_sapling.go | 8 ++ level/block/barrel.go | 10 ++ level/block/barrier.go | 8 ++ level/block/basalt.go | 9 ++ level/block/beacon.go | 8 ++ level/block/bedrock.go | 8 ++ level/block/bee_nest.go | 10 ++ level/block/beehive.go | 10 ++ level/block/beetroots.go | 9 ++ level/block/bell.go | 11 ++ level/block/big_dripleaf.go | 11 ++ level/block/big_dripleaf_stem.go | 10 ++ level/block/birch_button.go | 11 ++ level/block/birch_door.go | 13 +++ level/block/birch_fence.go | 13 +++ level/block/birch_fence_gate.go | 12 +++ level/block/birch_leaves.go | 10 ++ level/block/birch_log.go | 9 ++ level/block/birch_planks.go | 8 ++ level/block/birch_pressure_plate.go | 9 ++ level/block/birch_sapling.go | 9 ++ level/block/birch_sign.go | 10 ++ level/block/birch_slab.go | 10 ++ level/block/birch_stairs.go | 12 +++ level/block/birch_trapdoor.go | 13 +++ level/block/birch_wall_sign.go | 10 ++ level/block/birch_wood.go | 9 ++ level/block/black_banner.go | 9 ++ level/block/black_bed.go | 11 ++ level/block/black_candle.go | 11 ++ level/block/black_candle_cake.go | 9 ++ level/block/black_carpet.go | 8 ++ level/block/black_concrete.go | 8 ++ level/block/black_concrete_powder.go | 8 ++ level/block/black_glazed_terracotta.go | 9 ++ level/block/black_shulker_box.go | 9 ++ level/block/black_stained_glass.go | 8 ++ level/block/black_stained_glass_pane.go | 13 +++ level/block/black_terracotta.go | 8 ++ level/block/black_wall_banner.go | 9 ++ level/block/black_wool.go | 8 ++ level/block/blackstone.go | 8 ++ level/block/blackstone_slab.go | 10 ++ level/block/blackstone_stairs.go | 12 +++ level/block/blackstone_wall.go | 14 +++ level/block/blast_furnace.go | 10 ++ level/block/block.go | 28 +++++ level/block/block_states_test.go | 40 +++++++ level/block/blue_banner.go | 9 ++ level/block/blue_bed.go | 11 ++ level/block/blue_candle.go | 11 ++ level/block/blue_candle_cake.go | 9 ++ level/block/blue_carpet.go | 8 ++ level/block/blue_concrete.go | 8 ++ level/block/blue_concrete_powder.go | 8 ++ level/block/blue_glazed_terracotta.go | 9 ++ level/block/blue_ice.go | 8 ++ level/block/blue_orchid.go | 8 ++ level/block/blue_shulker_box.go | 9 ++ level/block/blue_stained_glass.go | 8 ++ level/block/blue_stained_glass_pane.go | 13 +++ level/block/blue_terracotta.go | 8 ++ level/block/blue_wall_banner.go | 9 ++ level/block/blue_wool.go | 8 ++ level/block/bone_block.go | 9 ++ level/block/bookshelf.go | 8 ++ level/block/brain_coral.go | 9 ++ level/block/brain_coral_block.go | 8 ++ level/block/brain_coral_fan.go | 9 ++ level/block/brain_coral_wall_fan.go | 10 ++ level/block/brewing_stand.go | 11 ++ level/block/brick_slab.go | 10 ++ level/block/brick_stairs.go | 12 +++ level/block/brick_wall.go | 14 +++ level/block/bricks.go | 8 ++ level/block/brown_banner.go | 9 ++ level/block/brown_bed.go | 11 ++ level/block/brown_candle.go | 11 ++ level/block/brown_candle_cake.go | 9 ++ level/block/brown_carpet.go | 8 ++ level/block/brown_concrete.go | 8 ++ level/block/brown_concrete_powder.go | 8 ++ level/block/brown_glazed_terracotta.go | 9 ++ level/block/brown_mushroom.go | 8 ++ level/block/brown_mushroom_block.go | 14 +++ level/block/brown_shulker_box.go | 9 ++ level/block/brown_stained_glass.go | 8 ++ level/block/brown_stained_glass_pane.go | 13 +++ level/block/brown_terracotta.go | 8 ++ level/block/brown_wall_banner.go | 9 ++ level/block/brown_wool.go | 8 ++ level/block/bubble_column.go | 9 ++ level/block/bubble_coral.go | 9 ++ level/block/bubble_coral_block.go | 8 ++ level/block/bubble_coral_fan.go | 9 ++ level/block/bubble_coral_wall_fan.go | 10 ++ level/block/budding_amethyst.go | 8 ++ level/block/cactus.go | 9 ++ level/block/cake.go | 9 ++ level/block/calcite.go | 8 ++ level/block/campfire.go | 12 +++ level/block/candle.go | 11 ++ level/block/candle_cake.go | 9 ++ level/block/carrots.go | 9 ++ level/block/cartography_table.go | 8 ++ level/block/carved_pumpkin.go | 9 ++ level/block/cauldron.go | 8 ++ level/block/cave_air.go | 8 ++ level/block/cave_vines.go | 10 ++ level/block/cave_vines_plant.go | 9 ++ level/block/chain.go | 10 ++ level/block/chain_command_block.go | 10 ++ level/block/chest.go | 11 ++ level/block/chipped_anvil.go | 9 ++ level/block/chiseled_deepslate.go | 8 ++ level/block/chiseled_nether_bricks.go | 8 ++ level/block/chiseled_polished_blackstone.go | 8 ++ level/block/chiseled_quartz_block.go | 8 ++ level/block/chiseled_red_sandstone.go | 8 ++ level/block/chiseled_sandstone.go | 8 ++ level/block/chiseled_stone_bricks.go | 8 ++ level/block/chorus_flower.go | 9 ++ level/block/chorus_plant.go | 14 +++ level/block/clay.go | 8 ++ level/block/coal_block.go | 8 ++ level/block/coal_ore.go | 8 ++ level/block/coarse_dirt.go | 8 ++ level/block/cobbled_deepslate.go | 8 ++ level/block/cobbled_deepslate_slab.go | 10 ++ level/block/cobbled_deepslate_stairs.go | 12 +++ level/block/cobbled_deepslate_wall.go | 14 +++ level/block/cobblestone.go | 8 ++ level/block/cobblestone_slab.go | 10 ++ level/block/cobblestone_stairs.go | 12 +++ level/block/cobblestone_wall.go | 14 +++ level/block/cobweb.go | 8 ++ level/block/cocoa.go | 10 ++ level/block/command_block.go | 10 ++ level/block/comparator.go | 11 ++ level/block/composter.go | 9 ++ level/block/conduit.go | 9 ++ level/block/copper_block.go | 8 ++ level/block/copper_ore.go | 8 ++ level/block/cornflower.go | 8 ++ level/block/cracked_deepslate_bricks.go | 8 ++ level/block/cracked_deepslate_tiles.go | 8 ++ level/block/cracked_nether_bricks.go | 8 ++ .../cracked_polished_blackstone_bricks.go | 8 ++ level/block/cracked_stone_bricks.go | 8 ++ level/block/crafting_table.go | 8 ++ level/block/creeper_head.go | 9 ++ level/block/creeper_wall_head.go | 9 ++ level/block/crimson_button.go | 11 ++ level/block/crimson_door.go | 13 +++ level/block/crimson_fence.go | 13 +++ level/block/crimson_fence_gate.go | 12 +++ level/block/crimson_fungus.go | 8 ++ level/block/crimson_hyphae.go | 9 ++ level/block/crimson_nylium.go | 8 ++ level/block/crimson_planks.go | 8 ++ level/block/crimson_pressure_plate.go | 9 ++ level/block/crimson_roots.go | 8 ++ level/block/crimson_sign.go | 10 ++ level/block/crimson_slab.go | 10 ++ level/block/crimson_stairs.go | 12 +++ level/block/crimson_stem.go | 9 ++ level/block/crimson_trapdoor.go | 13 +++ level/block/crimson_wall_sign.go | 10 ++ level/block/crying_obsidian.go | 8 ++ level/block/cut_copper.go | 8 ++ level/block/cut_copper_slab.go | 10 ++ level/block/cut_copper_stairs.go | 12 +++ level/block/cut_red_sandstone.go | 8 ++ level/block/cut_red_sandstone_slab.go | 10 ++ level/block/cut_sandstone.go | 8 ++ level/block/cut_sandstone_slab.go | 10 ++ level/block/cyan_banner.go | 9 ++ level/block/cyan_bed.go | 11 ++ level/block/cyan_candle.go | 11 ++ level/block/cyan_candle_cake.go | 9 ++ level/block/cyan_carpet.go | 8 ++ level/block/cyan_concrete.go | 8 ++ level/block/cyan_concrete_powder.go | 8 ++ level/block/cyan_glazed_terracotta.go | 9 ++ level/block/cyan_shulker_box.go | 9 ++ level/block/cyan_stained_glass.go | 8 ++ level/block/cyan_stained_glass_pane.go | 13 +++ level/block/cyan_terracotta.go | 8 ++ level/block/cyan_wall_banner.go | 9 ++ level/block/cyan_wool.go | 8 ++ level/block/damaged_anvil.go | 9 ++ level/block/dandelion.go | 8 ++ level/block/dark_oak_button.go | 11 ++ level/block/dark_oak_door.go | 13 +++ level/block/dark_oak_fence.go | 13 +++ level/block/dark_oak_fence_gate.go | 12 +++ level/block/dark_oak_leaves.go | 10 ++ level/block/dark_oak_log.go | 9 ++ level/block/dark_oak_planks.go | 8 ++ level/block/dark_oak_pressure_plate.go | 9 ++ level/block/dark_oak_sapling.go | 9 ++ level/block/dark_oak_sign.go | 10 ++ level/block/dark_oak_slab.go | 10 ++ level/block/dark_oak_stairs.go | 12 +++ level/block/dark_oak_trapdoor.go | 13 +++ level/block/dark_oak_wall_sign.go | 10 ++ level/block/dark_oak_wood.go | 9 ++ level/block/dark_prismarine.go | 8 ++ level/block/dark_prismarine_slab.go | 10 ++ level/block/dark_prismarine_stairs.go | 12 +++ level/block/daylight_detector.go | 10 ++ level/block/dead_brain_coral.go | 9 ++ level/block/dead_brain_coral_block.go | 8 ++ level/block/dead_brain_coral_fan.go | 9 ++ level/block/dead_brain_coral_wall_fan.go | 10 ++ level/block/dead_bubble_coral.go | 9 ++ level/block/dead_bubble_coral_block.go | 8 ++ level/block/dead_bubble_coral_fan.go | 9 ++ level/block/dead_bubble_coral_wall_fan.go | 10 ++ level/block/dead_bush.go | 8 ++ level/block/dead_fire_coral.go | 9 ++ level/block/dead_fire_coral_block.go | 8 ++ level/block/dead_fire_coral_fan.go | 9 ++ level/block/dead_fire_coral_wall_fan.go | 10 ++ level/block/dead_horn_coral.go | 9 ++ level/block/dead_horn_coral_block.go | 8 ++ level/block/dead_horn_coral_fan.go | 9 ++ level/block/dead_horn_coral_wall_fan.go | 10 ++ level/block/dead_tube_coral.go | 9 ++ level/block/dead_tube_coral_block.go | 8 ++ level/block/dead_tube_coral_fan.go | 9 ++ level/block/dead_tube_coral_wall_fan.go | 10 ++ level/block/deepslate.go | 9 ++ level/block/deepslate_brick_slab.go | 10 ++ level/block/deepslate_brick_stairs.go | 12 +++ level/block/deepslate_brick_wall.go | 14 +++ level/block/deepslate_bricks.go | 8 ++ level/block/deepslate_coal_ore.go | 8 ++ level/block/deepslate_copper_ore.go | 8 ++ level/block/deepslate_diamond_ore.go | 8 ++ level/block/deepslate_emerald_ore.go | 8 ++ level/block/deepslate_gold_ore.go | 8 ++ level/block/deepslate_iron_ore.go | 8 ++ level/block/deepslate_lapis_ore.go | 8 ++ level/block/deepslate_redstone_ore.go | 9 ++ level/block/deepslate_tile_slab.go | 10 ++ level/block/deepslate_tile_stairs.go | 12 +++ level/block/deepslate_tile_wall.go | 14 +++ level/block/deepslate_tiles.go | 8 ++ level/block/detector_rail.go | 11 ++ level/block/diamond_block.go | 8 ++ level/block/diamond_ore.go | 8 ++ level/block/diorite.go | 8 ++ level/block/diorite_slab.go | 10 ++ level/block/diorite_stairs.go | 12 +++ level/block/diorite_wall.go | 14 +++ level/block/dirt.go | 8 ++ level/block/dirt_path.go | 8 ++ level/block/dispenser.go | 10 ++ level/block/dragon_egg.go | 8 ++ level/block/dragon_head.go | 9 ++ level/block/dragon_wall_head.go | 9 ++ level/block/dried_kelp_block.go | 8 ++ level/block/dripstone_block.go | 8 ++ level/block/dropper.go | 10 ++ level/block/emerald_block.go | 8 ++ level/block/emerald_ore.go | 8 ++ level/block/enchanting_table.go | 8 ++ level/block/end_gateway.go | 8 ++ level/block/end_portal.go | 8 ++ level/block/end_portal_frame.go | 10 ++ level/block/end_rod.go | 9 ++ level/block/end_stone.go | 8 ++ level/block/end_stone_brick_slab.go | 10 ++ level/block/end_stone_brick_stairs.go | 12 +++ level/block/end_stone_brick_wall.go | 14 +++ level/block/end_stone_bricks.go | 8 ++ level/block/ender_chest.go | 10 ++ level/block/exposed_copper.go | 8 ++ level/block/exposed_cut_copper.go | 8 ++ level/block/exposed_cut_copper_slab.go | 10 ++ level/block/exposed_cut_copper_stairs.go | 12 +++ level/block/farmland.go | 9 ++ level/block/fern.go | 8 ++ level/block/fire.go | 14 +++ level/block/fire_coral.go | 9 ++ level/block/fire_coral_block.go | 8 ++ level/block/fire_coral_fan.go | 9 ++ level/block/fire_coral_wall_fan.go | 10 ++ level/block/fletching_table.go | 8 ++ level/block/flower_pot.go | 8 ++ level/block/flowering_azalea.go | 8 ++ level/block/flowering_azalea_leaves.go | 10 ++ level/block/frosted_ice.go | 9 ++ level/block/furnace.go | 10 ++ level/block/generator/main.go | 99 ++++++++++++++++++ level/block/gilded_blackstone.go | 8 ++ level/block/glass.go | 8 ++ level/block/glass_pane.go | 13 +++ level/block/glow_lichen.go | 15 +++ level/block/glowstone.go | 8 ++ level/block/gold_block.go | 8 ++ level/block/gold_ore.go | 8 ++ level/block/granite.go | 8 ++ level/block/granite_slab.go | 10 ++ level/block/granite_stairs.go | 12 +++ level/block/granite_wall.go | 14 +++ level/block/grass.go | 8 ++ level/block/grass_block.go | 9 ++ level/block/gravel.go | 8 ++ level/block/gray_banner.go | 9 ++ level/block/gray_bed.go | 11 ++ level/block/gray_candle.go | 11 ++ level/block/gray_candle_cake.go | 9 ++ level/block/gray_carpet.go | 8 ++ level/block/gray_concrete.go | 8 ++ level/block/gray_concrete_powder.go | 8 ++ level/block/gray_glazed_terracotta.go | 9 ++ level/block/gray_shulker_box.go | 9 ++ level/block/gray_stained_glass.go | 8 ++ level/block/gray_stained_glass_pane.go | 13 +++ level/block/gray_terracotta.go | 8 ++ level/block/gray_wall_banner.go | 9 ++ level/block/gray_wool.go | 8 ++ level/block/green_banner.go | 9 ++ level/block/green_bed.go | 11 ++ level/block/green_candle.go | 11 ++ level/block/green_candle_cake.go | 9 ++ level/block/green_carpet.go | 8 ++ level/block/green_concrete.go | 8 ++ level/block/green_concrete_powder.go | 8 ++ level/block/green_glazed_terracotta.go | 9 ++ level/block/green_shulker_box.go | 9 ++ level/block/green_stained_glass.go | 8 ++ level/block/green_stained_glass_pane.go | 13 +++ level/block/green_terracotta.go | 8 ++ level/block/green_wall_banner.go | 9 ++ level/block/green_wool.go | 8 ++ level/block/grindstone.go | 10 ++ level/block/hanging_roots.go | 9 ++ level/block/hay_block.go | 9 ++ level/block/heavy_weighted_pressure_plate.go | 9 ++ level/block/honey_block.go | 8 ++ level/block/honeycomb_block.go | 8 ++ level/block/hopper.go | 10 ++ level/block/horn_coral.go | 9 ++ level/block/horn_coral_block.go | 8 ++ level/block/horn_coral_fan.go | 9 ++ level/block/horn_coral_wall_fan.go | 10 ++ level/block/ice.go | 8 ++ level/block/infested_chiseled_stone_bricks.go | 8 ++ level/block/infested_cobblestone.go | 8 ++ level/block/infested_cracked_stone_bricks.go | 8 ++ level/block/infested_deepslate.go | 9 ++ level/block/infested_mossy_stone_bricks.go | 8 ++ level/block/infested_stone.go | 8 ++ level/block/infested_stone_bricks.go | 8 ++ level/block/iron_bars.go | 13 +++ level/block/iron_block.go | 8 ++ level/block/iron_door.go | 13 +++ level/block/iron_ore.go | 8 ++ level/block/iron_trapdoor.go | 13 +++ level/block/jack_o_lantern.go | 9 ++ level/block/jigsaw.go | 9 ++ level/block/jukebox.go | 9 ++ level/block/jungle_button.go | 11 ++ level/block/jungle_door.go | 13 +++ level/block/jungle_fence.go | 13 +++ level/block/jungle_fence_gate.go | 12 +++ level/block/jungle_leaves.go | 10 ++ level/block/jungle_log.go | 9 ++ level/block/jungle_planks.go | 8 ++ level/block/jungle_pressure_plate.go | 9 ++ level/block/jungle_sapling.go | 9 ++ level/block/jungle_sign.go | 10 ++ level/block/jungle_slab.go | 10 ++ level/block/jungle_stairs.go | 12 +++ level/block/jungle_trapdoor.go | 13 +++ level/block/jungle_wall_sign.go | 10 ++ level/block/jungle_wood.go | 9 ++ level/block/kelp.go | 9 ++ level/block/kelp_plant.go | 8 ++ level/block/ladder.go | 10 ++ level/block/lantern.go | 10 ++ level/block/lapis_block.go | 8 ++ level/block/lapis_ore.go | 8 ++ level/block/large_amethyst_bud.go | 10 ++ level/block/large_fern.go | 9 ++ level/block/lava.go | 9 ++ level/block/lava_cauldron.go | 8 ++ level/block/lectern.go | 11 ++ level/block/lever.go | 11 ++ level/block/light.go | 10 ++ level/block/light_blue_banner.go | 9 ++ level/block/light_blue_bed.go | 11 ++ level/block/light_blue_candle.go | 11 ++ level/block/light_blue_candle_cake.go | 9 ++ level/block/light_blue_carpet.go | 8 ++ level/block/light_blue_concrete.go | 8 ++ level/block/light_blue_concrete_powder.go | 8 ++ level/block/light_blue_glazed_terracotta.go | 9 ++ level/block/light_blue_shulker_box.go | 9 ++ level/block/light_blue_stained_glass.go | 8 ++ level/block/light_blue_stained_glass_pane.go | 13 +++ level/block/light_blue_terracotta.go | 8 ++ level/block/light_blue_wall_banner.go | 9 ++ level/block/light_blue_wool.go | 8 ++ level/block/light_gray_banner.go | 9 ++ level/block/light_gray_bed.go | 11 ++ level/block/light_gray_candle.go | 11 ++ level/block/light_gray_candle_cake.go | 9 ++ level/block/light_gray_carpet.go | 8 ++ level/block/light_gray_concrete.go | 8 ++ level/block/light_gray_concrete_powder.go | 8 ++ level/block/light_gray_glazed_terracotta.go | 9 ++ level/block/light_gray_shulker_box.go | 9 ++ level/block/light_gray_stained_glass.go | 8 ++ level/block/light_gray_stained_glass_pane.go | 13 +++ level/block/light_gray_terracotta.go | 8 ++ level/block/light_gray_wall_banner.go | 9 ++ level/block/light_gray_wool.go | 8 ++ level/block/light_weighted_pressure_plate.go | 9 ++ level/block/lightning_rod.go | 11 ++ level/block/lilac.go | 9 ++ level/block/lily_of_the_valley.go | 8 ++ level/block/lily_pad.go | 8 ++ level/block/lime_banner.go | 9 ++ level/block/lime_bed.go | 11 ++ level/block/lime_candle.go | 11 ++ level/block/lime_candle_cake.go | 9 ++ level/block/lime_carpet.go | 8 ++ level/block/lime_concrete.go | 8 ++ level/block/lime_concrete_powder.go | 8 ++ level/block/lime_glazed_terracotta.go | 9 ++ level/block/lime_shulker_box.go | 9 ++ level/block/lime_stained_glass.go | 8 ++ level/block/lime_stained_glass_pane.go | 13 +++ level/block/lime_terracotta.go | 8 ++ level/block/lime_wall_banner.go | 9 ++ level/block/lime_wool.go | 8 ++ level/block/lodestone.go | 8 ++ level/block/loom.go | 9 ++ level/block/magenta_banner.go | 9 ++ level/block/magenta_bed.go | 11 ++ level/block/magenta_candle.go | 11 ++ level/block/magenta_candle_cake.go | 9 ++ level/block/magenta_carpet.go | 8 ++ level/block/magenta_concrete.go | 8 ++ level/block/magenta_concrete_powder.go | 8 ++ level/block/magenta_glazed_terracotta.go | 9 ++ level/block/magenta_shulker_box.go | 9 ++ level/block/magenta_stained_glass.go | 8 ++ level/block/magenta_stained_glass_pane.go | 13 +++ level/block/magenta_terracotta.go | 8 ++ level/block/magenta_wall_banner.go | 9 ++ level/block/magenta_wool.go | 8 ++ level/block/magma_block.go | 8 ++ level/block/medium_amethyst_bud.go | 10 ++ level/block/melon.go | 8 ++ level/block/melon_stem.go | 9 ++ level/block/moss_block.go | 8 ++ level/block/moss_carpet.go | 8 ++ level/block/mossy_cobblestone.go | 8 ++ level/block/mossy_cobblestone_slab.go | 10 ++ level/block/mossy_cobblestone_stairs.go | 12 +++ level/block/mossy_cobblestone_wall.go | 14 +++ level/block/mossy_stone_brick_slab.go | 10 ++ level/block/mossy_stone_brick_stairs.go | 12 +++ level/block/mossy_stone_brick_wall.go | 14 +++ level/block/mossy_stone_bricks.go | 8 ++ level/block/moving_piston.go | 10 ++ level/block/mushroom_stem.go | 14 +++ level/block/mycelium.go | 9 ++ level/block/nether_brick_fence.go | 13 +++ level/block/nether_brick_slab.go | 10 ++ level/block/nether_brick_stairs.go | 12 +++ level/block/nether_brick_wall.go | 14 +++ level/block/nether_bricks.go | 8 ++ level/block/nether_gold_ore.go | 8 ++ level/block/nether_portal.go | 9 ++ level/block/nether_quartz_ore.go | 8 ++ level/block/nether_sprouts.go | 8 ++ level/block/nether_wart.go | 9 ++ level/block/nether_wart_block.go | 8 ++ level/block/netherite_block.go | 8 ++ level/block/netherrack.go | 8 ++ level/block/note_block.go | 11 ++ level/block/oak_button.go | 11 ++ level/block/oak_door.go | 13 +++ level/block/oak_fence.go | 13 +++ level/block/oak_fence_gate.go | 12 +++ level/block/oak_leaves.go | 10 ++ level/block/oak_log.go | 9 ++ level/block/oak_planks.go | 8 ++ level/block/oak_pressure_plate.go | 9 ++ level/block/oak_sapling.go | 9 ++ level/block/oak_sign.go | 10 ++ level/block/oak_slab.go | 10 ++ level/block/oak_stairs.go | 12 +++ level/block/oak_trapdoor.go | 13 +++ level/block/oak_wall_sign.go | 10 ++ level/block/oak_wood.go | 9 ++ level/block/observer.go | 10 ++ level/block/obsidian.go | 8 ++ level/block/orange_banner.go | 9 ++ level/block/orange_bed.go | 11 ++ level/block/orange_candle.go | 11 ++ level/block/orange_candle_cake.go | 9 ++ level/block/orange_carpet.go | 8 ++ level/block/orange_concrete.go | 8 ++ level/block/orange_concrete_powder.go | 8 ++ level/block/orange_glazed_terracotta.go | 9 ++ level/block/orange_shulker_box.go | 9 ++ level/block/orange_stained_glass.go | 8 ++ level/block/orange_stained_glass_pane.go | 13 +++ level/block/orange_terracotta.go | 8 ++ level/block/orange_tulip.go | 8 ++ level/block/orange_wall_banner.go | 9 ++ level/block/orange_wool.go | 8 ++ level/block/oxeye_daisy.go | 8 ++ level/block/oxidized_copper.go | 8 ++ level/block/oxidized_cut_copper.go | 8 ++ level/block/oxidized_cut_copper_slab.go | 10 ++ level/block/oxidized_cut_copper_stairs.go | 12 +++ level/block/packed_ice.go | 8 ++ level/block/peony.go | 9 ++ level/block/petrified_oak_slab.go | 10 ++ level/block/pink_banner.go | 9 ++ level/block/pink_bed.go | 11 ++ level/block/pink_candle.go | 11 ++ level/block/pink_candle_cake.go | 9 ++ level/block/pink_carpet.go | 8 ++ level/block/pink_concrete.go | 8 ++ level/block/pink_concrete_powder.go | 8 ++ level/block/pink_glazed_terracotta.go | 9 ++ level/block/pink_shulker_box.go | 9 ++ level/block/pink_stained_glass.go | 8 ++ level/block/pink_stained_glass_pane.go | 13 +++ level/block/pink_terracotta.go | 8 ++ level/block/pink_tulip.go | 8 ++ level/block/pink_wall_banner.go | 9 ++ level/block/pink_wool.go | 8 ++ level/block/piston.go | 10 ++ level/block/piston_head.go | 11 ++ level/block/player_head.go | 9 ++ level/block/player_wall_head.go | 9 ++ level/block/podzol.go | 9 ++ level/block/pointed_dripstone.go | 11 ++ level/block/polished_andesite.go | 8 ++ level/block/polished_andesite_slab.go | 10 ++ level/block/polished_andesite_stairs.go | 12 +++ level/block/polished_basalt.go | 9 ++ level/block/polished_blackstone.go | 8 ++ level/block/polished_blackstone_brick_slab.go | 10 ++ .../block/polished_blackstone_brick_stairs.go | 12 +++ level/block/polished_blackstone_brick_wall.go | 14 +++ level/block/polished_blackstone_bricks.go | 8 ++ level/block/polished_blackstone_button.go | 11 ++ .../polished_blackstone_pressure_plate.go | 9 ++ level/block/polished_blackstone_slab.go | 10 ++ level/block/polished_blackstone_stairs.go | 12 +++ level/block/polished_blackstone_wall.go | 14 +++ level/block/polished_deepslate.go | 8 ++ level/block/polished_deepslate_slab.go | 10 ++ level/block/polished_deepslate_stairs.go | 12 +++ level/block/polished_deepslate_wall.go | 14 +++ level/block/polished_diorite.go | 8 ++ level/block/polished_diorite_slab.go | 10 ++ level/block/polished_diorite_stairs.go | 12 +++ level/block/polished_granite.go | 8 ++ level/block/polished_granite_slab.go | 10 ++ level/block/polished_granite_stairs.go | 12 +++ level/block/poppy.go | 8 ++ level/block/potatoes.go | 9 ++ level/block/potted_acacia_sapling.go | 8 ++ level/block/potted_allium.go | 8 ++ level/block/potted_azalea_bush.go | 8 ++ level/block/potted_azure_bluet.go | 8 ++ level/block/potted_bamboo.go | 8 ++ level/block/potted_birch_sapling.go | 8 ++ level/block/potted_blue_orchid.go | 8 ++ level/block/potted_brown_mushroom.go | 8 ++ level/block/potted_cactus.go | 8 ++ level/block/potted_cornflower.go | 8 ++ level/block/potted_crimson_fungus.go | 8 ++ level/block/potted_crimson_roots.go | 8 ++ level/block/potted_dandelion.go | 8 ++ level/block/potted_dark_oak_sapling.go | 8 ++ level/block/potted_dead_bush.go | 8 ++ level/block/potted_fern.go | 8 ++ level/block/potted_flowering_azalea_bush.go | 8 ++ level/block/potted_jungle_sapling.go | 8 ++ level/block/potted_lily_of_the_valley.go | 8 ++ level/block/potted_oak_sapling.go | 8 ++ level/block/potted_orange_tulip.go | 8 ++ level/block/potted_oxeye_daisy.go | 8 ++ level/block/potted_pink_tulip.go | 8 ++ level/block/potted_poppy.go | 8 ++ level/block/potted_red_mushroom.go | 8 ++ level/block/potted_red_tulip.go | 8 ++ level/block/potted_spruce_sapling.go | 8 ++ level/block/potted_warped_fungus.go | 8 ++ level/block/potted_warped_roots.go | 8 ++ level/block/potted_white_tulip.go | 8 ++ level/block/potted_wither_rose.go | 8 ++ level/block/powder_snow.go | 8 ++ level/block/powder_snow_cauldron.go | 9 ++ level/block/powered_rail.go | 11 ++ level/block/prismarine.go | 8 ++ level/block/prismarine_brick_slab.go | 10 ++ level/block/prismarine_brick_stairs.go | 12 +++ level/block/prismarine_bricks.go | 8 ++ level/block/prismarine_slab.go | 10 ++ level/block/prismarine_stairs.go | 12 +++ level/block/prismarine_wall.go | 14 +++ level/block/pumpkin.go | 8 ++ level/block/pumpkin_stem.go | 9 ++ level/block/purple_banner.go | 9 ++ level/block/purple_bed.go | 11 ++ level/block/purple_candle.go | 11 ++ level/block/purple_candle_cake.go | 9 ++ level/block/purple_carpet.go | 8 ++ level/block/purple_concrete.go | 8 ++ level/block/purple_concrete_powder.go | 8 ++ level/block/purple_glazed_terracotta.go | 9 ++ level/block/purple_shulker_box.go | 9 ++ level/block/purple_stained_glass.go | 8 ++ level/block/purple_stained_glass_pane.go | 13 +++ level/block/purple_terracotta.go | 8 ++ level/block/purple_wall_banner.go | 9 ++ level/block/purple_wool.go | 8 ++ level/block/purpur_block.go | 8 ++ level/block/purpur_pillar.go | 9 ++ level/block/purpur_slab.go | 10 ++ level/block/purpur_stairs.go | 12 +++ level/block/quartz_block.go | 8 ++ level/block/quartz_bricks.go | 8 ++ level/block/quartz_pillar.go | 9 ++ level/block/quartz_slab.go | 10 ++ level/block/quartz_stairs.go | 12 +++ level/block/rail.go | 10 ++ level/block/raw_copper_block.go | 8 ++ level/block/raw_gold_block.go | 8 ++ level/block/raw_iron_block.go | 8 ++ level/block/red_banner.go | 9 ++ level/block/red_bed.go | 11 ++ level/block/red_candle.go | 11 ++ level/block/red_candle_cake.go | 9 ++ level/block/red_carpet.go | 8 ++ level/block/red_concrete.go | 8 ++ level/block/red_concrete_powder.go | 8 ++ level/block/red_glazed_terracotta.go | 9 ++ level/block/red_mushroom.go | 8 ++ level/block/red_mushroom_block.go | 14 +++ level/block/red_nether_brick_slab.go | 10 ++ level/block/red_nether_brick_stairs.go | 12 +++ level/block/red_nether_brick_wall.go | 14 +++ level/block/red_nether_bricks.go | 8 ++ level/block/red_sand.go | 8 ++ level/block/red_sandstone.go | 8 ++ level/block/red_sandstone_slab.go | 10 ++ level/block/red_sandstone_stairs.go | 12 +++ level/block/red_sandstone_wall.go | 14 +++ level/block/red_shulker_box.go | 9 ++ level/block/red_stained_glass.go | 8 ++ level/block/red_stained_glass_pane.go | 13 +++ level/block/red_terracotta.go | 8 ++ level/block/red_tulip.go | 8 ++ level/block/red_wall_banner.go | 9 ++ level/block/red_wool.go | 8 ++ level/block/redstone_block.go | 8 ++ level/block/redstone_lamp.go | 9 ++ level/block/redstone_ore.go | 9 ++ level/block/redstone_torch.go | 9 ++ level/block/redstone_wall_torch.go | 10 ++ level/block/redstone_wire.go | 13 +++ level/block/repeater.go | 12 +++ level/block/repeating_command_block.go | 10 ++ level/block/respawn_anchor.go | 9 ++ level/block/rooted_dirt.go | 8 ++ level/block/rose_bush.go | 9 ++ level/block/sand.go | 8 ++ level/block/sandstone.go | 8 ++ level/block/sandstone_slab.go | 10 ++ level/block/sandstone_stairs.go | 12 +++ level/block/sandstone_wall.go | 14 +++ level/block/scaffolding.go | 11 ++ level/block/sculk_sensor.go | 11 ++ level/block/sea_lantern.go | 8 ++ level/block/sea_pickle.go | 10 ++ level/block/seagrass.go | 8 ++ level/block/shroomlight.go | 8 ++ level/block/shulker_box.go | 9 ++ level/block/skeleton_skull.go | 9 ++ level/block/skeleton_wall_skull.go | 9 ++ level/block/slime_block.go | 8 ++ level/block/small_amethyst_bud.go | 10 ++ level/block/small_dripleaf.go | 11 ++ level/block/smithing_table.go | 8 ++ level/block/smoker.go | 10 ++ level/block/smooth_basalt.go | 8 ++ level/block/smooth_quartz.go | 8 ++ level/block/smooth_quartz_slab.go | 10 ++ level/block/smooth_quartz_stairs.go | 12 +++ level/block/smooth_red_sandstone.go | 8 ++ level/block/smooth_red_sandstone_slab.go | 10 ++ level/block/smooth_red_sandstone_stairs.go | 12 +++ level/block/smooth_sandstone.go | 8 ++ level/block/smooth_sandstone_slab.go | 10 ++ level/block/smooth_sandstone_stairs.go | 12 +++ level/block/smooth_stone.go | 8 ++ level/block/smooth_stone_slab.go | 10 ++ level/block/snow.go | 9 ++ level/block/snow_block.go | 8 ++ level/block/soul_campfire.go | 12 +++ level/block/soul_fire.go | 8 ++ level/block/soul_lantern.go | 10 ++ level/block/soul_sand.go | 8 ++ level/block/soul_soil.go | 8 ++ level/block/soul_torch.go | 8 ++ level/block/soul_wall_torch.go | 9 ++ level/block/spawner.go | 8 ++ level/block/sponge.go | 8 ++ level/block/spore_blossom.go | 8 ++ level/block/spruce_button.go | 11 ++ level/block/spruce_door.go | 13 +++ level/block/spruce_fence.go | 13 +++ level/block/spruce_fence_gate.go | 12 +++ level/block/spruce_leaves.go | 10 ++ level/block/spruce_log.go | 9 ++ level/block/spruce_planks.go | 8 ++ level/block/spruce_pressure_plate.go | 9 ++ level/block/spruce_sapling.go | 9 ++ level/block/spruce_sign.go | 10 ++ level/block/spruce_slab.go | 10 ++ level/block/spruce_stairs.go | 12 +++ level/block/spruce_trapdoor.go | 13 +++ level/block/spruce_wall_sign.go | 10 ++ level/block/spruce_wood.go | 9 ++ level/block/sticky_piston.go | 10 ++ level/block/stone.go | 8 ++ level/block/stone_brick_slab.go | 10 ++ level/block/stone_brick_stairs.go | 12 +++ level/block/stone_brick_wall.go | 14 +++ level/block/stone_bricks.go | 8 ++ level/block/stone_button.go | 11 ++ level/block/stone_pressure_plate.go | 9 ++ level/block/stone_slab.go | 10 ++ level/block/stone_stairs.go | 12 +++ level/block/stonecutter.go | 9 ++ level/block/stripped_acacia_log.go | 9 ++ level/block/stripped_acacia_wood.go | 9 ++ level/block/stripped_birch_log.go | 9 ++ level/block/stripped_birch_wood.go | 9 ++ level/block/stripped_crimson_hyphae.go | 9 ++ level/block/stripped_crimson_stem.go | 9 ++ level/block/stripped_dark_oak_log.go | 9 ++ level/block/stripped_dark_oak_wood.go | 9 ++ level/block/stripped_jungle_log.go | 9 ++ level/block/stripped_jungle_wood.go | 9 ++ level/block/stripped_oak_log.go | 9 ++ level/block/stripped_oak_wood.go | 9 ++ level/block/stripped_spruce_log.go | 9 ++ level/block/stripped_spruce_wood.go | 9 ++ level/block/stripped_warped_hyphae.go | 9 ++ level/block/stripped_warped_stem.go | 9 ++ level/block/structure_block.go | 9 ++ level/block/structure_void.go | 8 ++ level/block/sugar_cane.go | 9 ++ level/block/sunflower.go | 9 ++ level/block/sweet_berry_bush.go | 9 ++ level/block/tall_grass.go | 9 ++ level/block/tall_seagrass.go | 9 ++ level/block/target.go | 9 ++ level/block/terracotta.go | 8 ++ level/block/testdata/block_states.nbt | Bin 0 -> 2365168 bytes level/block/tinted_glass.go | 8 ++ level/block/tnt.go | 9 ++ level/block/torch.go | 8 ++ level/block/trapped_chest.go | 11 ++ level/block/tripwire.go | 15 +++ level/block/tripwire_hook.go | 11 ++ level/block/tube_coral.go | 9 ++ level/block/tube_coral_block.go | 8 ++ level/block/tube_coral_fan.go | 9 ++ level/block/tube_coral_wall_fan.go | 10 ++ level/block/tuff.go | 8 ++ level/block/turtle_egg.go | 10 ++ level/block/twisting_vines.go | 9 ++ level/block/twisting_vines_plant.go | 8 ++ level/block/vine.go | 13 +++ level/block/void_air.go | 8 ++ level/block/wall_torch.go | 9 ++ level/block/warped_button.go | 11 ++ level/block/warped_door.go | 13 +++ level/block/warped_fence.go | 13 +++ level/block/warped_fence_gate.go | 12 +++ level/block/warped_fungus.go | 8 ++ level/block/warped_hyphae.go | 9 ++ level/block/warped_nylium.go | 8 ++ level/block/warped_planks.go | 8 ++ level/block/warped_pressure_plate.go | 9 ++ level/block/warped_roots.go | 8 ++ level/block/warped_sign.go | 10 ++ level/block/warped_slab.go | 10 ++ level/block/warped_stairs.go | 12 +++ level/block/warped_stem.go | 9 ++ level/block/warped_trapdoor.go | 13 +++ level/block/warped_wall_sign.go | 10 ++ level/block/warped_wart_block.go | 8 ++ level/block/water.go | 9 ++ level/block/water_cauldron.go | 9 ++ level/block/waxed_copper_block.go | 8 ++ level/block/waxed_cut_copper.go | 8 ++ level/block/waxed_cut_copper_slab.go | 10 ++ level/block/waxed_cut_copper_stairs.go | 12 +++ level/block/waxed_exposed_copper.go | 8 ++ level/block/waxed_exposed_cut_copper.go | 8 ++ level/block/waxed_exposed_cut_copper_slab.go | 10 ++ .../block/waxed_exposed_cut_copper_stairs.go | 12 +++ level/block/waxed_oxidized_copper.go | 8 ++ level/block/waxed_oxidized_cut_copper.go | 8 ++ level/block/waxed_oxidized_cut_copper_slab.go | 10 ++ .../block/waxed_oxidized_cut_copper_stairs.go | 12 +++ level/block/waxed_weathered_copper.go | 8 ++ level/block/waxed_weathered_cut_copper.go | 8 ++ .../block/waxed_weathered_cut_copper_slab.go | 10 ++ .../waxed_weathered_cut_copper_stairs.go | 12 +++ level/block/weathered_copper.go | 8 ++ level/block/weathered_cut_copper.go | 8 ++ level/block/weathered_cut_copper_slab.go | 10 ++ level/block/weathered_cut_copper_stairs.go | 12 +++ level/block/weeping_vines.go | 9 ++ level/block/weeping_vines_plant.go | 8 ++ level/block/wet_sponge.go | 8 ++ level/block/wheat.go | 9 ++ level/block/white_banner.go | 9 ++ level/block/white_bed.go | 11 ++ level/block/white_candle.go | 11 ++ level/block/white_candle_cake.go | 9 ++ level/block/white_carpet.go | 8 ++ level/block/white_concrete.go | 8 ++ level/block/white_concrete_powder.go | 8 ++ level/block/white_glazed_terracotta.go | 9 ++ level/block/white_shulker_box.go | 9 ++ level/block/white_stained_glass.go | 8 ++ level/block/white_stained_glass_pane.go | 13 +++ level/block/white_terracotta.go | 8 ++ level/block/white_tulip.go | 8 ++ level/block/white_wall_banner.go | 9 ++ level/block/white_wool.go | 8 ++ level/block/wither_rose.go | 8 ++ level/block/wither_skeleton_skull.go | 9 ++ level/block/wither_skeleton_wall_skull.go | 9 ++ level/block/yellow_banner.go | 9 ++ level/block/yellow_bed.go | 11 ++ level/block/yellow_candle.go | 11 ++ level/block/yellow_candle_cake.go | 9 ++ level/block/yellow_carpet.go | 8 ++ level/block/yellow_concrete.go | 8 ++ level/block/yellow_concrete_powder.go | 8 ++ level/block/yellow_glazed_terracotta.go | 9 ++ level/block/yellow_shulker_box.go | 9 ++ level/block/yellow_stained_glass.go | 8 ++ level/block/yellow_stained_glass_pane.go | 13 +++ level/block/yellow_terracotta.go | 8 ++ level/block/yellow_wall_banner.go | 9 ++ level/block/yellow_wool.go | 8 ++ level/block/zombie_head.go | 9 ++ level/block/zombie_wall_head.go | 9 ++ 902 files changed, 8657 insertions(+) create mode 100644 level/block/acacia_button.go create mode 100644 level/block/acacia_door.go create mode 100644 level/block/acacia_fence.go create mode 100644 level/block/acacia_fence_gate.go create mode 100644 level/block/acacia_leaves.go create mode 100644 level/block/acacia_log.go create mode 100644 level/block/acacia_planks.go create mode 100644 level/block/acacia_pressure_plate.go create mode 100644 level/block/acacia_sapling.go create mode 100644 level/block/acacia_sign.go create mode 100644 level/block/acacia_slab.go create mode 100644 level/block/acacia_stairs.go create mode 100644 level/block/acacia_trapdoor.go create mode 100644 level/block/acacia_wall_sign.go create mode 100644 level/block/acacia_wood.go create mode 100644 level/block/activator_rail.go create mode 100644 level/block/air.go create mode 100644 level/block/allium.go create mode 100644 level/block/amethyst_block.go create mode 100644 level/block/amethyst_cluster.go create mode 100644 level/block/ancient_debris.go create mode 100644 level/block/andesite.go create mode 100644 level/block/andesite_slab.go create mode 100644 level/block/andesite_stairs.go create mode 100644 level/block/andesite_wall.go create mode 100644 level/block/anvil.go create mode 100644 level/block/attached_melon_stem.go create mode 100644 level/block/attached_pumpkin_stem.go create mode 100644 level/block/azalea.go create mode 100644 level/block/azalea_leaves.go create mode 100644 level/block/azure_bluet.go create mode 100644 level/block/bamboo.go create mode 100644 level/block/bamboo_sapling.go create mode 100644 level/block/barrel.go create mode 100644 level/block/barrier.go create mode 100644 level/block/basalt.go create mode 100644 level/block/beacon.go create mode 100644 level/block/bedrock.go create mode 100644 level/block/bee_nest.go create mode 100644 level/block/beehive.go create mode 100644 level/block/beetroots.go create mode 100644 level/block/bell.go create mode 100644 level/block/big_dripleaf.go create mode 100644 level/block/big_dripleaf_stem.go create mode 100644 level/block/birch_button.go create mode 100644 level/block/birch_door.go create mode 100644 level/block/birch_fence.go create mode 100644 level/block/birch_fence_gate.go create mode 100644 level/block/birch_leaves.go create mode 100644 level/block/birch_log.go create mode 100644 level/block/birch_planks.go create mode 100644 level/block/birch_pressure_plate.go create mode 100644 level/block/birch_sapling.go create mode 100644 level/block/birch_sign.go create mode 100644 level/block/birch_slab.go create mode 100644 level/block/birch_stairs.go create mode 100644 level/block/birch_trapdoor.go create mode 100644 level/block/birch_wall_sign.go create mode 100644 level/block/birch_wood.go create mode 100644 level/block/black_banner.go create mode 100644 level/block/black_bed.go create mode 100644 level/block/black_candle.go create mode 100644 level/block/black_candle_cake.go create mode 100644 level/block/black_carpet.go create mode 100644 level/block/black_concrete.go create mode 100644 level/block/black_concrete_powder.go create mode 100644 level/block/black_glazed_terracotta.go create mode 100644 level/block/black_shulker_box.go create mode 100644 level/block/black_stained_glass.go create mode 100644 level/block/black_stained_glass_pane.go create mode 100644 level/block/black_terracotta.go create mode 100644 level/block/black_wall_banner.go create mode 100644 level/block/black_wool.go create mode 100644 level/block/blackstone.go create mode 100644 level/block/blackstone_slab.go create mode 100644 level/block/blackstone_stairs.go create mode 100644 level/block/blackstone_wall.go create mode 100644 level/block/blast_furnace.go create mode 100644 level/block/block.go create mode 100644 level/block/block_states_test.go create mode 100644 level/block/blue_banner.go create mode 100644 level/block/blue_bed.go create mode 100644 level/block/blue_candle.go create mode 100644 level/block/blue_candle_cake.go create mode 100644 level/block/blue_carpet.go create mode 100644 level/block/blue_concrete.go create mode 100644 level/block/blue_concrete_powder.go create mode 100644 level/block/blue_glazed_terracotta.go create mode 100644 level/block/blue_ice.go create mode 100644 level/block/blue_orchid.go create mode 100644 level/block/blue_shulker_box.go create mode 100644 level/block/blue_stained_glass.go create mode 100644 level/block/blue_stained_glass_pane.go create mode 100644 level/block/blue_terracotta.go create mode 100644 level/block/blue_wall_banner.go create mode 100644 level/block/blue_wool.go create mode 100644 level/block/bone_block.go create mode 100644 level/block/bookshelf.go create mode 100644 level/block/brain_coral.go create mode 100644 level/block/brain_coral_block.go create mode 100644 level/block/brain_coral_fan.go create mode 100644 level/block/brain_coral_wall_fan.go create mode 100644 level/block/brewing_stand.go create mode 100644 level/block/brick_slab.go create mode 100644 level/block/brick_stairs.go create mode 100644 level/block/brick_wall.go create mode 100644 level/block/bricks.go create mode 100644 level/block/brown_banner.go create mode 100644 level/block/brown_bed.go create mode 100644 level/block/brown_candle.go create mode 100644 level/block/brown_candle_cake.go create mode 100644 level/block/brown_carpet.go create mode 100644 level/block/brown_concrete.go create mode 100644 level/block/brown_concrete_powder.go create mode 100644 level/block/brown_glazed_terracotta.go create mode 100644 level/block/brown_mushroom.go create mode 100644 level/block/brown_mushroom_block.go create mode 100644 level/block/brown_shulker_box.go create mode 100644 level/block/brown_stained_glass.go create mode 100644 level/block/brown_stained_glass_pane.go create mode 100644 level/block/brown_terracotta.go create mode 100644 level/block/brown_wall_banner.go create mode 100644 level/block/brown_wool.go create mode 100644 level/block/bubble_column.go create mode 100644 level/block/bubble_coral.go create mode 100644 level/block/bubble_coral_block.go create mode 100644 level/block/bubble_coral_fan.go create mode 100644 level/block/bubble_coral_wall_fan.go create mode 100644 level/block/budding_amethyst.go create mode 100644 level/block/cactus.go create mode 100644 level/block/cake.go create mode 100644 level/block/calcite.go create mode 100644 level/block/campfire.go create mode 100644 level/block/candle.go create mode 100644 level/block/candle_cake.go create mode 100644 level/block/carrots.go create mode 100644 level/block/cartography_table.go create mode 100644 level/block/carved_pumpkin.go create mode 100644 level/block/cauldron.go create mode 100644 level/block/cave_air.go create mode 100644 level/block/cave_vines.go create mode 100644 level/block/cave_vines_plant.go create mode 100644 level/block/chain.go create mode 100644 level/block/chain_command_block.go create mode 100644 level/block/chest.go create mode 100644 level/block/chipped_anvil.go create mode 100644 level/block/chiseled_deepslate.go create mode 100644 level/block/chiseled_nether_bricks.go create mode 100644 level/block/chiseled_polished_blackstone.go create mode 100644 level/block/chiseled_quartz_block.go create mode 100644 level/block/chiseled_red_sandstone.go create mode 100644 level/block/chiseled_sandstone.go create mode 100644 level/block/chiseled_stone_bricks.go create mode 100644 level/block/chorus_flower.go create mode 100644 level/block/chorus_plant.go create mode 100644 level/block/clay.go create mode 100644 level/block/coal_block.go create mode 100644 level/block/coal_ore.go create mode 100644 level/block/coarse_dirt.go create mode 100644 level/block/cobbled_deepslate.go create mode 100644 level/block/cobbled_deepslate_slab.go create mode 100644 level/block/cobbled_deepslate_stairs.go create mode 100644 level/block/cobbled_deepslate_wall.go create mode 100644 level/block/cobblestone.go create mode 100644 level/block/cobblestone_slab.go create mode 100644 level/block/cobblestone_stairs.go create mode 100644 level/block/cobblestone_wall.go create mode 100644 level/block/cobweb.go create mode 100644 level/block/cocoa.go create mode 100644 level/block/command_block.go create mode 100644 level/block/comparator.go create mode 100644 level/block/composter.go create mode 100644 level/block/conduit.go create mode 100644 level/block/copper_block.go create mode 100644 level/block/copper_ore.go create mode 100644 level/block/cornflower.go create mode 100644 level/block/cracked_deepslate_bricks.go create mode 100644 level/block/cracked_deepslate_tiles.go create mode 100644 level/block/cracked_nether_bricks.go create mode 100644 level/block/cracked_polished_blackstone_bricks.go create mode 100644 level/block/cracked_stone_bricks.go create mode 100644 level/block/crafting_table.go create mode 100644 level/block/creeper_head.go create mode 100644 level/block/creeper_wall_head.go create mode 100644 level/block/crimson_button.go create mode 100644 level/block/crimson_door.go create mode 100644 level/block/crimson_fence.go create mode 100644 level/block/crimson_fence_gate.go create mode 100644 level/block/crimson_fungus.go create mode 100644 level/block/crimson_hyphae.go create mode 100644 level/block/crimson_nylium.go create mode 100644 level/block/crimson_planks.go create mode 100644 level/block/crimson_pressure_plate.go create mode 100644 level/block/crimson_roots.go create mode 100644 level/block/crimson_sign.go create mode 100644 level/block/crimson_slab.go create mode 100644 level/block/crimson_stairs.go create mode 100644 level/block/crimson_stem.go create mode 100644 level/block/crimson_trapdoor.go create mode 100644 level/block/crimson_wall_sign.go create mode 100644 level/block/crying_obsidian.go create mode 100644 level/block/cut_copper.go create mode 100644 level/block/cut_copper_slab.go create mode 100644 level/block/cut_copper_stairs.go create mode 100644 level/block/cut_red_sandstone.go create mode 100644 level/block/cut_red_sandstone_slab.go create mode 100644 level/block/cut_sandstone.go create mode 100644 level/block/cut_sandstone_slab.go create mode 100644 level/block/cyan_banner.go create mode 100644 level/block/cyan_bed.go create mode 100644 level/block/cyan_candle.go create mode 100644 level/block/cyan_candle_cake.go create mode 100644 level/block/cyan_carpet.go create mode 100644 level/block/cyan_concrete.go create mode 100644 level/block/cyan_concrete_powder.go create mode 100644 level/block/cyan_glazed_terracotta.go create mode 100644 level/block/cyan_shulker_box.go create mode 100644 level/block/cyan_stained_glass.go create mode 100644 level/block/cyan_stained_glass_pane.go create mode 100644 level/block/cyan_terracotta.go create mode 100644 level/block/cyan_wall_banner.go create mode 100644 level/block/cyan_wool.go create mode 100644 level/block/damaged_anvil.go create mode 100644 level/block/dandelion.go create mode 100644 level/block/dark_oak_button.go create mode 100644 level/block/dark_oak_door.go create mode 100644 level/block/dark_oak_fence.go create mode 100644 level/block/dark_oak_fence_gate.go create mode 100644 level/block/dark_oak_leaves.go create mode 100644 level/block/dark_oak_log.go create mode 100644 level/block/dark_oak_planks.go create mode 100644 level/block/dark_oak_pressure_plate.go create mode 100644 level/block/dark_oak_sapling.go create mode 100644 level/block/dark_oak_sign.go create mode 100644 level/block/dark_oak_slab.go create mode 100644 level/block/dark_oak_stairs.go create mode 100644 level/block/dark_oak_trapdoor.go create mode 100644 level/block/dark_oak_wall_sign.go create mode 100644 level/block/dark_oak_wood.go create mode 100644 level/block/dark_prismarine.go create mode 100644 level/block/dark_prismarine_slab.go create mode 100644 level/block/dark_prismarine_stairs.go create mode 100644 level/block/daylight_detector.go create mode 100644 level/block/dead_brain_coral.go create mode 100644 level/block/dead_brain_coral_block.go create mode 100644 level/block/dead_brain_coral_fan.go create mode 100644 level/block/dead_brain_coral_wall_fan.go create mode 100644 level/block/dead_bubble_coral.go create mode 100644 level/block/dead_bubble_coral_block.go create mode 100644 level/block/dead_bubble_coral_fan.go create mode 100644 level/block/dead_bubble_coral_wall_fan.go create mode 100644 level/block/dead_bush.go create mode 100644 level/block/dead_fire_coral.go create mode 100644 level/block/dead_fire_coral_block.go create mode 100644 level/block/dead_fire_coral_fan.go create mode 100644 level/block/dead_fire_coral_wall_fan.go create mode 100644 level/block/dead_horn_coral.go create mode 100644 level/block/dead_horn_coral_block.go create mode 100644 level/block/dead_horn_coral_fan.go create mode 100644 level/block/dead_horn_coral_wall_fan.go create mode 100644 level/block/dead_tube_coral.go create mode 100644 level/block/dead_tube_coral_block.go create mode 100644 level/block/dead_tube_coral_fan.go create mode 100644 level/block/dead_tube_coral_wall_fan.go create mode 100644 level/block/deepslate.go create mode 100644 level/block/deepslate_brick_slab.go create mode 100644 level/block/deepslate_brick_stairs.go create mode 100644 level/block/deepslate_brick_wall.go create mode 100644 level/block/deepslate_bricks.go create mode 100644 level/block/deepslate_coal_ore.go create mode 100644 level/block/deepslate_copper_ore.go create mode 100644 level/block/deepslate_diamond_ore.go create mode 100644 level/block/deepslate_emerald_ore.go create mode 100644 level/block/deepslate_gold_ore.go create mode 100644 level/block/deepslate_iron_ore.go create mode 100644 level/block/deepslate_lapis_ore.go create mode 100644 level/block/deepslate_redstone_ore.go create mode 100644 level/block/deepslate_tile_slab.go create mode 100644 level/block/deepslate_tile_stairs.go create mode 100644 level/block/deepslate_tile_wall.go create mode 100644 level/block/deepslate_tiles.go create mode 100644 level/block/detector_rail.go create mode 100644 level/block/diamond_block.go create mode 100644 level/block/diamond_ore.go create mode 100644 level/block/diorite.go create mode 100644 level/block/diorite_slab.go create mode 100644 level/block/diorite_stairs.go create mode 100644 level/block/diorite_wall.go create mode 100644 level/block/dirt.go create mode 100644 level/block/dirt_path.go create mode 100644 level/block/dispenser.go create mode 100644 level/block/dragon_egg.go create mode 100644 level/block/dragon_head.go create mode 100644 level/block/dragon_wall_head.go create mode 100644 level/block/dried_kelp_block.go create mode 100644 level/block/dripstone_block.go create mode 100644 level/block/dropper.go create mode 100644 level/block/emerald_block.go create mode 100644 level/block/emerald_ore.go create mode 100644 level/block/enchanting_table.go create mode 100644 level/block/end_gateway.go create mode 100644 level/block/end_portal.go create mode 100644 level/block/end_portal_frame.go create mode 100644 level/block/end_rod.go create mode 100644 level/block/end_stone.go create mode 100644 level/block/end_stone_brick_slab.go create mode 100644 level/block/end_stone_brick_stairs.go create mode 100644 level/block/end_stone_brick_wall.go create mode 100644 level/block/end_stone_bricks.go create mode 100644 level/block/ender_chest.go create mode 100644 level/block/exposed_copper.go create mode 100644 level/block/exposed_cut_copper.go create mode 100644 level/block/exposed_cut_copper_slab.go create mode 100644 level/block/exposed_cut_copper_stairs.go create mode 100644 level/block/farmland.go create mode 100644 level/block/fern.go create mode 100644 level/block/fire.go create mode 100644 level/block/fire_coral.go create mode 100644 level/block/fire_coral_block.go create mode 100644 level/block/fire_coral_fan.go create mode 100644 level/block/fire_coral_wall_fan.go create mode 100644 level/block/fletching_table.go create mode 100644 level/block/flower_pot.go create mode 100644 level/block/flowering_azalea.go create mode 100644 level/block/flowering_azalea_leaves.go create mode 100644 level/block/frosted_ice.go create mode 100644 level/block/furnace.go create mode 100644 level/block/generator/main.go create mode 100644 level/block/gilded_blackstone.go create mode 100644 level/block/glass.go create mode 100644 level/block/glass_pane.go create mode 100644 level/block/glow_lichen.go create mode 100644 level/block/glowstone.go create mode 100644 level/block/gold_block.go create mode 100644 level/block/gold_ore.go create mode 100644 level/block/granite.go create mode 100644 level/block/granite_slab.go create mode 100644 level/block/granite_stairs.go create mode 100644 level/block/granite_wall.go create mode 100644 level/block/grass.go create mode 100644 level/block/grass_block.go create mode 100644 level/block/gravel.go create mode 100644 level/block/gray_banner.go create mode 100644 level/block/gray_bed.go create mode 100644 level/block/gray_candle.go create mode 100644 level/block/gray_candle_cake.go create mode 100644 level/block/gray_carpet.go create mode 100644 level/block/gray_concrete.go create mode 100644 level/block/gray_concrete_powder.go create mode 100644 level/block/gray_glazed_terracotta.go create mode 100644 level/block/gray_shulker_box.go create mode 100644 level/block/gray_stained_glass.go create mode 100644 level/block/gray_stained_glass_pane.go create mode 100644 level/block/gray_terracotta.go create mode 100644 level/block/gray_wall_banner.go create mode 100644 level/block/gray_wool.go create mode 100644 level/block/green_banner.go create mode 100644 level/block/green_bed.go create mode 100644 level/block/green_candle.go create mode 100644 level/block/green_candle_cake.go create mode 100644 level/block/green_carpet.go create mode 100644 level/block/green_concrete.go create mode 100644 level/block/green_concrete_powder.go create mode 100644 level/block/green_glazed_terracotta.go create mode 100644 level/block/green_shulker_box.go create mode 100644 level/block/green_stained_glass.go create mode 100644 level/block/green_stained_glass_pane.go create mode 100644 level/block/green_terracotta.go create mode 100644 level/block/green_wall_banner.go create mode 100644 level/block/green_wool.go create mode 100644 level/block/grindstone.go create mode 100644 level/block/hanging_roots.go create mode 100644 level/block/hay_block.go create mode 100644 level/block/heavy_weighted_pressure_plate.go create mode 100644 level/block/honey_block.go create mode 100644 level/block/honeycomb_block.go create mode 100644 level/block/hopper.go create mode 100644 level/block/horn_coral.go create mode 100644 level/block/horn_coral_block.go create mode 100644 level/block/horn_coral_fan.go create mode 100644 level/block/horn_coral_wall_fan.go create mode 100644 level/block/ice.go create mode 100644 level/block/infested_chiseled_stone_bricks.go create mode 100644 level/block/infested_cobblestone.go create mode 100644 level/block/infested_cracked_stone_bricks.go create mode 100644 level/block/infested_deepslate.go create mode 100644 level/block/infested_mossy_stone_bricks.go create mode 100644 level/block/infested_stone.go create mode 100644 level/block/infested_stone_bricks.go create mode 100644 level/block/iron_bars.go create mode 100644 level/block/iron_block.go create mode 100644 level/block/iron_door.go create mode 100644 level/block/iron_ore.go create mode 100644 level/block/iron_trapdoor.go create mode 100644 level/block/jack_o_lantern.go create mode 100644 level/block/jigsaw.go create mode 100644 level/block/jukebox.go create mode 100644 level/block/jungle_button.go create mode 100644 level/block/jungle_door.go create mode 100644 level/block/jungle_fence.go create mode 100644 level/block/jungle_fence_gate.go create mode 100644 level/block/jungle_leaves.go create mode 100644 level/block/jungle_log.go create mode 100644 level/block/jungle_planks.go create mode 100644 level/block/jungle_pressure_plate.go create mode 100644 level/block/jungle_sapling.go create mode 100644 level/block/jungle_sign.go create mode 100644 level/block/jungle_slab.go create mode 100644 level/block/jungle_stairs.go create mode 100644 level/block/jungle_trapdoor.go create mode 100644 level/block/jungle_wall_sign.go create mode 100644 level/block/jungle_wood.go create mode 100644 level/block/kelp.go create mode 100644 level/block/kelp_plant.go create mode 100644 level/block/ladder.go create mode 100644 level/block/lantern.go create mode 100644 level/block/lapis_block.go create mode 100644 level/block/lapis_ore.go create mode 100644 level/block/large_amethyst_bud.go create mode 100644 level/block/large_fern.go create mode 100644 level/block/lava.go create mode 100644 level/block/lava_cauldron.go create mode 100644 level/block/lectern.go create mode 100644 level/block/lever.go create mode 100644 level/block/light.go create mode 100644 level/block/light_blue_banner.go create mode 100644 level/block/light_blue_bed.go create mode 100644 level/block/light_blue_candle.go create mode 100644 level/block/light_blue_candle_cake.go create mode 100644 level/block/light_blue_carpet.go create mode 100644 level/block/light_blue_concrete.go create mode 100644 level/block/light_blue_concrete_powder.go create mode 100644 level/block/light_blue_glazed_terracotta.go create mode 100644 level/block/light_blue_shulker_box.go create mode 100644 level/block/light_blue_stained_glass.go create mode 100644 level/block/light_blue_stained_glass_pane.go create mode 100644 level/block/light_blue_terracotta.go create mode 100644 level/block/light_blue_wall_banner.go create mode 100644 level/block/light_blue_wool.go create mode 100644 level/block/light_gray_banner.go create mode 100644 level/block/light_gray_bed.go create mode 100644 level/block/light_gray_candle.go create mode 100644 level/block/light_gray_candle_cake.go create mode 100644 level/block/light_gray_carpet.go create mode 100644 level/block/light_gray_concrete.go create mode 100644 level/block/light_gray_concrete_powder.go create mode 100644 level/block/light_gray_glazed_terracotta.go create mode 100644 level/block/light_gray_shulker_box.go create mode 100644 level/block/light_gray_stained_glass.go create mode 100644 level/block/light_gray_stained_glass_pane.go create mode 100644 level/block/light_gray_terracotta.go create mode 100644 level/block/light_gray_wall_banner.go create mode 100644 level/block/light_gray_wool.go create mode 100644 level/block/light_weighted_pressure_plate.go create mode 100644 level/block/lightning_rod.go create mode 100644 level/block/lilac.go create mode 100644 level/block/lily_of_the_valley.go create mode 100644 level/block/lily_pad.go create mode 100644 level/block/lime_banner.go create mode 100644 level/block/lime_bed.go create mode 100644 level/block/lime_candle.go create mode 100644 level/block/lime_candle_cake.go create mode 100644 level/block/lime_carpet.go create mode 100644 level/block/lime_concrete.go create mode 100644 level/block/lime_concrete_powder.go create mode 100644 level/block/lime_glazed_terracotta.go create mode 100644 level/block/lime_shulker_box.go create mode 100644 level/block/lime_stained_glass.go create mode 100644 level/block/lime_stained_glass_pane.go create mode 100644 level/block/lime_terracotta.go create mode 100644 level/block/lime_wall_banner.go create mode 100644 level/block/lime_wool.go create mode 100644 level/block/lodestone.go create mode 100644 level/block/loom.go create mode 100644 level/block/magenta_banner.go create mode 100644 level/block/magenta_bed.go create mode 100644 level/block/magenta_candle.go create mode 100644 level/block/magenta_candle_cake.go create mode 100644 level/block/magenta_carpet.go create mode 100644 level/block/magenta_concrete.go create mode 100644 level/block/magenta_concrete_powder.go create mode 100644 level/block/magenta_glazed_terracotta.go create mode 100644 level/block/magenta_shulker_box.go create mode 100644 level/block/magenta_stained_glass.go create mode 100644 level/block/magenta_stained_glass_pane.go create mode 100644 level/block/magenta_terracotta.go create mode 100644 level/block/magenta_wall_banner.go create mode 100644 level/block/magenta_wool.go create mode 100644 level/block/magma_block.go create mode 100644 level/block/medium_amethyst_bud.go create mode 100644 level/block/melon.go create mode 100644 level/block/melon_stem.go create mode 100644 level/block/moss_block.go create mode 100644 level/block/moss_carpet.go create mode 100644 level/block/mossy_cobblestone.go create mode 100644 level/block/mossy_cobblestone_slab.go create mode 100644 level/block/mossy_cobblestone_stairs.go create mode 100644 level/block/mossy_cobblestone_wall.go create mode 100644 level/block/mossy_stone_brick_slab.go create mode 100644 level/block/mossy_stone_brick_stairs.go create mode 100644 level/block/mossy_stone_brick_wall.go create mode 100644 level/block/mossy_stone_bricks.go create mode 100644 level/block/moving_piston.go create mode 100644 level/block/mushroom_stem.go create mode 100644 level/block/mycelium.go create mode 100644 level/block/nether_brick_fence.go create mode 100644 level/block/nether_brick_slab.go create mode 100644 level/block/nether_brick_stairs.go create mode 100644 level/block/nether_brick_wall.go create mode 100644 level/block/nether_bricks.go create mode 100644 level/block/nether_gold_ore.go create mode 100644 level/block/nether_portal.go create mode 100644 level/block/nether_quartz_ore.go create mode 100644 level/block/nether_sprouts.go create mode 100644 level/block/nether_wart.go create mode 100644 level/block/nether_wart_block.go create mode 100644 level/block/netherite_block.go create mode 100644 level/block/netherrack.go create mode 100644 level/block/note_block.go create mode 100644 level/block/oak_button.go create mode 100644 level/block/oak_door.go create mode 100644 level/block/oak_fence.go create mode 100644 level/block/oak_fence_gate.go create mode 100644 level/block/oak_leaves.go create mode 100644 level/block/oak_log.go create mode 100644 level/block/oak_planks.go create mode 100644 level/block/oak_pressure_plate.go create mode 100644 level/block/oak_sapling.go create mode 100644 level/block/oak_sign.go create mode 100644 level/block/oak_slab.go create mode 100644 level/block/oak_stairs.go create mode 100644 level/block/oak_trapdoor.go create mode 100644 level/block/oak_wall_sign.go create mode 100644 level/block/oak_wood.go create mode 100644 level/block/observer.go create mode 100644 level/block/obsidian.go create mode 100644 level/block/orange_banner.go create mode 100644 level/block/orange_bed.go create mode 100644 level/block/orange_candle.go create mode 100644 level/block/orange_candle_cake.go create mode 100644 level/block/orange_carpet.go create mode 100644 level/block/orange_concrete.go create mode 100644 level/block/orange_concrete_powder.go create mode 100644 level/block/orange_glazed_terracotta.go create mode 100644 level/block/orange_shulker_box.go create mode 100644 level/block/orange_stained_glass.go create mode 100644 level/block/orange_stained_glass_pane.go create mode 100644 level/block/orange_terracotta.go create mode 100644 level/block/orange_tulip.go create mode 100644 level/block/orange_wall_banner.go create mode 100644 level/block/orange_wool.go create mode 100644 level/block/oxeye_daisy.go create mode 100644 level/block/oxidized_copper.go create mode 100644 level/block/oxidized_cut_copper.go create mode 100644 level/block/oxidized_cut_copper_slab.go create mode 100644 level/block/oxidized_cut_copper_stairs.go create mode 100644 level/block/packed_ice.go create mode 100644 level/block/peony.go create mode 100644 level/block/petrified_oak_slab.go create mode 100644 level/block/pink_banner.go create mode 100644 level/block/pink_bed.go create mode 100644 level/block/pink_candle.go create mode 100644 level/block/pink_candle_cake.go create mode 100644 level/block/pink_carpet.go create mode 100644 level/block/pink_concrete.go create mode 100644 level/block/pink_concrete_powder.go create mode 100644 level/block/pink_glazed_terracotta.go create mode 100644 level/block/pink_shulker_box.go create mode 100644 level/block/pink_stained_glass.go create mode 100644 level/block/pink_stained_glass_pane.go create mode 100644 level/block/pink_terracotta.go create mode 100644 level/block/pink_tulip.go create mode 100644 level/block/pink_wall_banner.go create mode 100644 level/block/pink_wool.go create mode 100644 level/block/piston.go create mode 100644 level/block/piston_head.go create mode 100644 level/block/player_head.go create mode 100644 level/block/player_wall_head.go create mode 100644 level/block/podzol.go create mode 100644 level/block/pointed_dripstone.go create mode 100644 level/block/polished_andesite.go create mode 100644 level/block/polished_andesite_slab.go create mode 100644 level/block/polished_andesite_stairs.go create mode 100644 level/block/polished_basalt.go create mode 100644 level/block/polished_blackstone.go create mode 100644 level/block/polished_blackstone_brick_slab.go create mode 100644 level/block/polished_blackstone_brick_stairs.go create mode 100644 level/block/polished_blackstone_brick_wall.go create mode 100644 level/block/polished_blackstone_bricks.go create mode 100644 level/block/polished_blackstone_button.go create mode 100644 level/block/polished_blackstone_pressure_plate.go create mode 100644 level/block/polished_blackstone_slab.go create mode 100644 level/block/polished_blackstone_stairs.go create mode 100644 level/block/polished_blackstone_wall.go create mode 100644 level/block/polished_deepslate.go create mode 100644 level/block/polished_deepslate_slab.go create mode 100644 level/block/polished_deepslate_stairs.go create mode 100644 level/block/polished_deepslate_wall.go create mode 100644 level/block/polished_diorite.go create mode 100644 level/block/polished_diorite_slab.go create mode 100644 level/block/polished_diorite_stairs.go create mode 100644 level/block/polished_granite.go create mode 100644 level/block/polished_granite_slab.go create mode 100644 level/block/polished_granite_stairs.go create mode 100644 level/block/poppy.go create mode 100644 level/block/potatoes.go create mode 100644 level/block/potted_acacia_sapling.go create mode 100644 level/block/potted_allium.go create mode 100644 level/block/potted_azalea_bush.go create mode 100644 level/block/potted_azure_bluet.go create mode 100644 level/block/potted_bamboo.go create mode 100644 level/block/potted_birch_sapling.go create mode 100644 level/block/potted_blue_orchid.go create mode 100644 level/block/potted_brown_mushroom.go create mode 100644 level/block/potted_cactus.go create mode 100644 level/block/potted_cornflower.go create mode 100644 level/block/potted_crimson_fungus.go create mode 100644 level/block/potted_crimson_roots.go create mode 100644 level/block/potted_dandelion.go create mode 100644 level/block/potted_dark_oak_sapling.go create mode 100644 level/block/potted_dead_bush.go create mode 100644 level/block/potted_fern.go create mode 100644 level/block/potted_flowering_azalea_bush.go create mode 100644 level/block/potted_jungle_sapling.go create mode 100644 level/block/potted_lily_of_the_valley.go create mode 100644 level/block/potted_oak_sapling.go create mode 100644 level/block/potted_orange_tulip.go create mode 100644 level/block/potted_oxeye_daisy.go create mode 100644 level/block/potted_pink_tulip.go create mode 100644 level/block/potted_poppy.go create mode 100644 level/block/potted_red_mushroom.go create mode 100644 level/block/potted_red_tulip.go create mode 100644 level/block/potted_spruce_sapling.go create mode 100644 level/block/potted_warped_fungus.go create mode 100644 level/block/potted_warped_roots.go create mode 100644 level/block/potted_white_tulip.go create mode 100644 level/block/potted_wither_rose.go create mode 100644 level/block/powder_snow.go create mode 100644 level/block/powder_snow_cauldron.go create mode 100644 level/block/powered_rail.go create mode 100644 level/block/prismarine.go create mode 100644 level/block/prismarine_brick_slab.go create mode 100644 level/block/prismarine_brick_stairs.go create mode 100644 level/block/prismarine_bricks.go create mode 100644 level/block/prismarine_slab.go create mode 100644 level/block/prismarine_stairs.go create mode 100644 level/block/prismarine_wall.go create mode 100644 level/block/pumpkin.go create mode 100644 level/block/pumpkin_stem.go create mode 100644 level/block/purple_banner.go create mode 100644 level/block/purple_bed.go create mode 100644 level/block/purple_candle.go create mode 100644 level/block/purple_candle_cake.go create mode 100644 level/block/purple_carpet.go create mode 100644 level/block/purple_concrete.go create mode 100644 level/block/purple_concrete_powder.go create mode 100644 level/block/purple_glazed_terracotta.go create mode 100644 level/block/purple_shulker_box.go create mode 100644 level/block/purple_stained_glass.go create mode 100644 level/block/purple_stained_glass_pane.go create mode 100644 level/block/purple_terracotta.go create mode 100644 level/block/purple_wall_banner.go create mode 100644 level/block/purple_wool.go create mode 100644 level/block/purpur_block.go create mode 100644 level/block/purpur_pillar.go create mode 100644 level/block/purpur_slab.go create mode 100644 level/block/purpur_stairs.go create mode 100644 level/block/quartz_block.go create mode 100644 level/block/quartz_bricks.go create mode 100644 level/block/quartz_pillar.go create mode 100644 level/block/quartz_slab.go create mode 100644 level/block/quartz_stairs.go create mode 100644 level/block/rail.go create mode 100644 level/block/raw_copper_block.go create mode 100644 level/block/raw_gold_block.go create mode 100644 level/block/raw_iron_block.go create mode 100644 level/block/red_banner.go create mode 100644 level/block/red_bed.go create mode 100644 level/block/red_candle.go create mode 100644 level/block/red_candle_cake.go create mode 100644 level/block/red_carpet.go create mode 100644 level/block/red_concrete.go create mode 100644 level/block/red_concrete_powder.go create mode 100644 level/block/red_glazed_terracotta.go create mode 100644 level/block/red_mushroom.go create mode 100644 level/block/red_mushroom_block.go create mode 100644 level/block/red_nether_brick_slab.go create mode 100644 level/block/red_nether_brick_stairs.go create mode 100644 level/block/red_nether_brick_wall.go create mode 100644 level/block/red_nether_bricks.go create mode 100644 level/block/red_sand.go create mode 100644 level/block/red_sandstone.go create mode 100644 level/block/red_sandstone_slab.go create mode 100644 level/block/red_sandstone_stairs.go create mode 100644 level/block/red_sandstone_wall.go create mode 100644 level/block/red_shulker_box.go create mode 100644 level/block/red_stained_glass.go create mode 100644 level/block/red_stained_glass_pane.go create mode 100644 level/block/red_terracotta.go create mode 100644 level/block/red_tulip.go create mode 100644 level/block/red_wall_banner.go create mode 100644 level/block/red_wool.go create mode 100644 level/block/redstone_block.go create mode 100644 level/block/redstone_lamp.go create mode 100644 level/block/redstone_ore.go create mode 100644 level/block/redstone_torch.go create mode 100644 level/block/redstone_wall_torch.go create mode 100644 level/block/redstone_wire.go create mode 100644 level/block/repeater.go create mode 100644 level/block/repeating_command_block.go create mode 100644 level/block/respawn_anchor.go create mode 100644 level/block/rooted_dirt.go create mode 100644 level/block/rose_bush.go create mode 100644 level/block/sand.go create mode 100644 level/block/sandstone.go create mode 100644 level/block/sandstone_slab.go create mode 100644 level/block/sandstone_stairs.go create mode 100644 level/block/sandstone_wall.go create mode 100644 level/block/scaffolding.go create mode 100644 level/block/sculk_sensor.go create mode 100644 level/block/sea_lantern.go create mode 100644 level/block/sea_pickle.go create mode 100644 level/block/seagrass.go create mode 100644 level/block/shroomlight.go create mode 100644 level/block/shulker_box.go create mode 100644 level/block/skeleton_skull.go create mode 100644 level/block/skeleton_wall_skull.go create mode 100644 level/block/slime_block.go create mode 100644 level/block/small_amethyst_bud.go create mode 100644 level/block/small_dripleaf.go create mode 100644 level/block/smithing_table.go create mode 100644 level/block/smoker.go create mode 100644 level/block/smooth_basalt.go create mode 100644 level/block/smooth_quartz.go create mode 100644 level/block/smooth_quartz_slab.go create mode 100644 level/block/smooth_quartz_stairs.go create mode 100644 level/block/smooth_red_sandstone.go create mode 100644 level/block/smooth_red_sandstone_slab.go create mode 100644 level/block/smooth_red_sandstone_stairs.go create mode 100644 level/block/smooth_sandstone.go create mode 100644 level/block/smooth_sandstone_slab.go create mode 100644 level/block/smooth_sandstone_stairs.go create mode 100644 level/block/smooth_stone.go create mode 100644 level/block/smooth_stone_slab.go create mode 100644 level/block/snow.go create mode 100644 level/block/snow_block.go create mode 100644 level/block/soul_campfire.go create mode 100644 level/block/soul_fire.go create mode 100644 level/block/soul_lantern.go create mode 100644 level/block/soul_sand.go create mode 100644 level/block/soul_soil.go create mode 100644 level/block/soul_torch.go create mode 100644 level/block/soul_wall_torch.go create mode 100644 level/block/spawner.go create mode 100644 level/block/sponge.go create mode 100644 level/block/spore_blossom.go create mode 100644 level/block/spruce_button.go create mode 100644 level/block/spruce_door.go create mode 100644 level/block/spruce_fence.go create mode 100644 level/block/spruce_fence_gate.go create mode 100644 level/block/spruce_leaves.go create mode 100644 level/block/spruce_log.go create mode 100644 level/block/spruce_planks.go create mode 100644 level/block/spruce_pressure_plate.go create mode 100644 level/block/spruce_sapling.go create mode 100644 level/block/spruce_sign.go create mode 100644 level/block/spruce_slab.go create mode 100644 level/block/spruce_stairs.go create mode 100644 level/block/spruce_trapdoor.go create mode 100644 level/block/spruce_wall_sign.go create mode 100644 level/block/spruce_wood.go create mode 100644 level/block/sticky_piston.go create mode 100644 level/block/stone.go create mode 100644 level/block/stone_brick_slab.go create mode 100644 level/block/stone_brick_stairs.go create mode 100644 level/block/stone_brick_wall.go create mode 100644 level/block/stone_bricks.go create mode 100644 level/block/stone_button.go create mode 100644 level/block/stone_pressure_plate.go create mode 100644 level/block/stone_slab.go create mode 100644 level/block/stone_stairs.go create mode 100644 level/block/stonecutter.go create mode 100644 level/block/stripped_acacia_log.go create mode 100644 level/block/stripped_acacia_wood.go create mode 100644 level/block/stripped_birch_log.go create mode 100644 level/block/stripped_birch_wood.go create mode 100644 level/block/stripped_crimson_hyphae.go create mode 100644 level/block/stripped_crimson_stem.go create mode 100644 level/block/stripped_dark_oak_log.go create mode 100644 level/block/stripped_dark_oak_wood.go create mode 100644 level/block/stripped_jungle_log.go create mode 100644 level/block/stripped_jungle_wood.go create mode 100644 level/block/stripped_oak_log.go create mode 100644 level/block/stripped_oak_wood.go create mode 100644 level/block/stripped_spruce_log.go create mode 100644 level/block/stripped_spruce_wood.go create mode 100644 level/block/stripped_warped_hyphae.go create mode 100644 level/block/stripped_warped_stem.go create mode 100644 level/block/structure_block.go create mode 100644 level/block/structure_void.go create mode 100644 level/block/sugar_cane.go create mode 100644 level/block/sunflower.go create mode 100644 level/block/sweet_berry_bush.go create mode 100644 level/block/tall_grass.go create mode 100644 level/block/tall_seagrass.go create mode 100644 level/block/target.go create mode 100644 level/block/terracotta.go create mode 100644 level/block/testdata/block_states.nbt create mode 100644 level/block/tinted_glass.go create mode 100644 level/block/tnt.go create mode 100644 level/block/torch.go create mode 100644 level/block/trapped_chest.go create mode 100644 level/block/tripwire.go create mode 100644 level/block/tripwire_hook.go create mode 100644 level/block/tube_coral.go create mode 100644 level/block/tube_coral_block.go create mode 100644 level/block/tube_coral_fan.go create mode 100644 level/block/tube_coral_wall_fan.go create mode 100644 level/block/tuff.go create mode 100644 level/block/turtle_egg.go create mode 100644 level/block/twisting_vines.go create mode 100644 level/block/twisting_vines_plant.go create mode 100644 level/block/vine.go create mode 100644 level/block/void_air.go create mode 100644 level/block/wall_torch.go create mode 100644 level/block/warped_button.go create mode 100644 level/block/warped_door.go create mode 100644 level/block/warped_fence.go create mode 100644 level/block/warped_fence_gate.go create mode 100644 level/block/warped_fungus.go create mode 100644 level/block/warped_hyphae.go create mode 100644 level/block/warped_nylium.go create mode 100644 level/block/warped_planks.go create mode 100644 level/block/warped_pressure_plate.go create mode 100644 level/block/warped_roots.go create mode 100644 level/block/warped_sign.go create mode 100644 level/block/warped_slab.go create mode 100644 level/block/warped_stairs.go create mode 100644 level/block/warped_stem.go create mode 100644 level/block/warped_trapdoor.go create mode 100644 level/block/warped_wall_sign.go create mode 100644 level/block/warped_wart_block.go create mode 100644 level/block/water.go create mode 100644 level/block/water_cauldron.go create mode 100644 level/block/waxed_copper_block.go create mode 100644 level/block/waxed_cut_copper.go create mode 100644 level/block/waxed_cut_copper_slab.go create mode 100644 level/block/waxed_cut_copper_stairs.go create mode 100644 level/block/waxed_exposed_copper.go create mode 100644 level/block/waxed_exposed_cut_copper.go create mode 100644 level/block/waxed_exposed_cut_copper_slab.go create mode 100644 level/block/waxed_exposed_cut_copper_stairs.go create mode 100644 level/block/waxed_oxidized_copper.go create mode 100644 level/block/waxed_oxidized_cut_copper.go create mode 100644 level/block/waxed_oxidized_cut_copper_slab.go create mode 100644 level/block/waxed_oxidized_cut_copper_stairs.go create mode 100644 level/block/waxed_weathered_copper.go create mode 100644 level/block/waxed_weathered_cut_copper.go create mode 100644 level/block/waxed_weathered_cut_copper_slab.go create mode 100644 level/block/waxed_weathered_cut_copper_stairs.go create mode 100644 level/block/weathered_copper.go create mode 100644 level/block/weathered_cut_copper.go create mode 100644 level/block/weathered_cut_copper_slab.go create mode 100644 level/block/weathered_cut_copper_stairs.go create mode 100644 level/block/weeping_vines.go create mode 100644 level/block/weeping_vines_plant.go create mode 100644 level/block/wet_sponge.go create mode 100644 level/block/wheat.go create mode 100644 level/block/white_banner.go create mode 100644 level/block/white_bed.go create mode 100644 level/block/white_candle.go create mode 100644 level/block/white_candle_cake.go create mode 100644 level/block/white_carpet.go create mode 100644 level/block/white_concrete.go create mode 100644 level/block/white_concrete_powder.go create mode 100644 level/block/white_glazed_terracotta.go create mode 100644 level/block/white_shulker_box.go create mode 100644 level/block/white_stained_glass.go create mode 100644 level/block/white_stained_glass_pane.go create mode 100644 level/block/white_terracotta.go create mode 100644 level/block/white_tulip.go create mode 100644 level/block/white_wall_banner.go create mode 100644 level/block/white_wool.go create mode 100644 level/block/wither_rose.go create mode 100644 level/block/wither_skeleton_skull.go create mode 100644 level/block/wither_skeleton_wall_skull.go create mode 100644 level/block/yellow_banner.go create mode 100644 level/block/yellow_bed.go create mode 100644 level/block/yellow_candle.go create mode 100644 level/block/yellow_candle_cake.go create mode 100644 level/block/yellow_carpet.go create mode 100644 level/block/yellow_concrete.go create mode 100644 level/block/yellow_concrete_powder.go create mode 100644 level/block/yellow_glazed_terracotta.go create mode 100644 level/block/yellow_shulker_box.go create mode 100644 level/block/yellow_stained_glass.go create mode 100644 level/block/yellow_stained_glass_pane.go create mode 100644 level/block/yellow_terracotta.go create mode 100644 level/block/yellow_wall_banner.go create mode 100644 level/block/yellow_wool.go create mode 100644 level/block/zombie_head.go create mode 100644 level/block/zombie_wall_head.go diff --git a/level/block/acacia_button.go b/level/block/acacia_button.go new file mode 100644 index 0000000..f6c0fbf --- /dev/null +++ b/level/block/acacia_button.go @@ -0,0 +1,11 @@ +package block + +type AcaciaButton struct { + Face string + Facing string + Powered string +} + +func (AcaciaButton) ID() string { + return "minecraft:acacia_button" +} diff --git a/level/block/acacia_door.go b/level/block/acacia_door.go new file mode 100644 index 0000000..3f001ae --- /dev/null +++ b/level/block/acacia_door.go @@ -0,0 +1,13 @@ +package block + +type AcaciaDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (AcaciaDoor) ID() string { + return "minecraft:acacia_door" +} diff --git a/level/block/acacia_fence.go b/level/block/acacia_fence.go new file mode 100644 index 0000000..ce66ea6 --- /dev/null +++ b/level/block/acacia_fence.go @@ -0,0 +1,13 @@ +package block + +type AcaciaFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (AcaciaFence) ID() string { + return "minecraft:acacia_fence" +} diff --git a/level/block/acacia_fence_gate.go b/level/block/acacia_fence_gate.go new file mode 100644 index 0000000..e589e0a --- /dev/null +++ b/level/block/acacia_fence_gate.go @@ -0,0 +1,12 @@ +package block + +type AcaciaFenceGate struct { + Facing string + In_wall string + Open string + Powered string +} + +func (AcaciaFenceGate) ID() string { + return "minecraft:acacia_fence_gate" +} diff --git a/level/block/acacia_leaves.go b/level/block/acacia_leaves.go new file mode 100644 index 0000000..7387673 --- /dev/null +++ b/level/block/acacia_leaves.go @@ -0,0 +1,10 @@ +package block + +type AcaciaLeaves struct { + Distance string + Persistent string +} + +func (AcaciaLeaves) ID() string { + return "minecraft:acacia_leaves" +} diff --git a/level/block/acacia_log.go b/level/block/acacia_log.go new file mode 100644 index 0000000..3e33091 --- /dev/null +++ b/level/block/acacia_log.go @@ -0,0 +1,9 @@ +package block + +type AcaciaLog struct { + Axis string +} + +func (AcaciaLog) ID() string { + return "minecraft:acacia_log" +} diff --git a/level/block/acacia_planks.go b/level/block/acacia_planks.go new file mode 100644 index 0000000..1a98f8f --- /dev/null +++ b/level/block/acacia_planks.go @@ -0,0 +1,8 @@ +package block + +type AcaciaPlanks struct { +} + +func (AcaciaPlanks) ID() string { + return "minecraft:acacia_planks" +} diff --git a/level/block/acacia_pressure_plate.go b/level/block/acacia_pressure_plate.go new file mode 100644 index 0000000..4868342 --- /dev/null +++ b/level/block/acacia_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type AcaciaPressurePlate struct { + Powered string +} + +func (AcaciaPressurePlate) ID() string { + return "minecraft:acacia_pressure_plate" +} diff --git a/level/block/acacia_sapling.go b/level/block/acacia_sapling.go new file mode 100644 index 0000000..d45f88c --- /dev/null +++ b/level/block/acacia_sapling.go @@ -0,0 +1,9 @@ +package block + +type AcaciaSapling struct { + Stage string +} + +func (AcaciaSapling) ID() string { + return "minecraft:acacia_sapling" +} diff --git a/level/block/acacia_sign.go b/level/block/acacia_sign.go new file mode 100644 index 0000000..9c0ccb7 --- /dev/null +++ b/level/block/acacia_sign.go @@ -0,0 +1,10 @@ +package block + +type AcaciaSign struct { + Rotation string + Waterlogged string +} + +func (AcaciaSign) ID() string { + return "minecraft:acacia_sign" +} diff --git a/level/block/acacia_slab.go b/level/block/acacia_slab.go new file mode 100644 index 0000000..8eaa992 --- /dev/null +++ b/level/block/acacia_slab.go @@ -0,0 +1,10 @@ +package block + +type AcaciaSlab struct { + Type string + Waterlogged string +} + +func (AcaciaSlab) ID() string { + return "minecraft:acacia_slab" +} diff --git a/level/block/acacia_stairs.go b/level/block/acacia_stairs.go new file mode 100644 index 0000000..0f6bbfe --- /dev/null +++ b/level/block/acacia_stairs.go @@ -0,0 +1,12 @@ +package block + +type AcaciaStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (AcaciaStairs) ID() string { + return "minecraft:acacia_stairs" +} diff --git a/level/block/acacia_trapdoor.go b/level/block/acacia_trapdoor.go new file mode 100644 index 0000000..82f1ed6 --- /dev/null +++ b/level/block/acacia_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type AcaciaTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (AcaciaTrapdoor) ID() string { + return "minecraft:acacia_trapdoor" +} diff --git a/level/block/acacia_wall_sign.go b/level/block/acacia_wall_sign.go new file mode 100644 index 0000000..c35a131 --- /dev/null +++ b/level/block/acacia_wall_sign.go @@ -0,0 +1,10 @@ +package block + +type AcaciaWallSign struct { + Facing string + Waterlogged string +} + +func (AcaciaWallSign) ID() string { + return "minecraft:acacia_wall_sign" +} diff --git a/level/block/acacia_wood.go b/level/block/acacia_wood.go new file mode 100644 index 0000000..e8bd2fa --- /dev/null +++ b/level/block/acacia_wood.go @@ -0,0 +1,9 @@ +package block + +type AcaciaWood struct { + Axis string +} + +func (AcaciaWood) ID() string { + return "minecraft:acacia_wood" +} diff --git a/level/block/activator_rail.go b/level/block/activator_rail.go new file mode 100644 index 0000000..4c1bbb6 --- /dev/null +++ b/level/block/activator_rail.go @@ -0,0 +1,11 @@ +package block + +type ActivatorRail struct { + Powered string + Shape string + Waterlogged string +} + +func (ActivatorRail) ID() string { + return "minecraft:activator_rail" +} diff --git a/level/block/air.go b/level/block/air.go new file mode 100644 index 0000000..50ea2dc --- /dev/null +++ b/level/block/air.go @@ -0,0 +1,8 @@ +package block + +type Air struct { +} + +func (Air) ID() string { + return "minecraft:air" +} diff --git a/level/block/allium.go b/level/block/allium.go new file mode 100644 index 0000000..d7ae313 --- /dev/null +++ b/level/block/allium.go @@ -0,0 +1,8 @@ +package block + +type Allium struct { +} + +func (Allium) ID() string { + return "minecraft:allium" +} diff --git a/level/block/amethyst_block.go b/level/block/amethyst_block.go new file mode 100644 index 0000000..d909594 --- /dev/null +++ b/level/block/amethyst_block.go @@ -0,0 +1,8 @@ +package block + +type AmethystBlock struct { +} + +func (AmethystBlock) ID() string { + return "minecraft:amethyst_block" +} diff --git a/level/block/amethyst_cluster.go b/level/block/amethyst_cluster.go new file mode 100644 index 0000000..dadc1a5 --- /dev/null +++ b/level/block/amethyst_cluster.go @@ -0,0 +1,10 @@ +package block + +type AmethystCluster struct { + Facing string + Waterlogged string +} + +func (AmethystCluster) ID() string { + return "minecraft:amethyst_cluster" +} diff --git a/level/block/ancient_debris.go b/level/block/ancient_debris.go new file mode 100644 index 0000000..6d463b7 --- /dev/null +++ b/level/block/ancient_debris.go @@ -0,0 +1,8 @@ +package block + +type AncientDebris struct { +} + +func (AncientDebris) ID() string { + return "minecraft:ancient_debris" +} diff --git a/level/block/andesite.go b/level/block/andesite.go new file mode 100644 index 0000000..5fccd53 --- /dev/null +++ b/level/block/andesite.go @@ -0,0 +1,8 @@ +package block + +type Andesite struct { +} + +func (Andesite) ID() string { + return "minecraft:andesite" +} diff --git a/level/block/andesite_slab.go b/level/block/andesite_slab.go new file mode 100644 index 0000000..233e432 --- /dev/null +++ b/level/block/andesite_slab.go @@ -0,0 +1,10 @@ +package block + +type AndesiteSlab struct { + Type string + Waterlogged string +} + +func (AndesiteSlab) ID() string { + return "minecraft:andesite_slab" +} diff --git a/level/block/andesite_stairs.go b/level/block/andesite_stairs.go new file mode 100644 index 0000000..6310478 --- /dev/null +++ b/level/block/andesite_stairs.go @@ -0,0 +1,12 @@ +package block + +type AndesiteStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (AndesiteStairs) ID() string { + return "minecraft:andesite_stairs" +} diff --git a/level/block/andesite_wall.go b/level/block/andesite_wall.go new file mode 100644 index 0000000..48dd2d9 --- /dev/null +++ b/level/block/andesite_wall.go @@ -0,0 +1,14 @@ +package block + +type AndesiteWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (AndesiteWall) ID() string { + return "minecraft:andesite_wall" +} diff --git a/level/block/anvil.go b/level/block/anvil.go new file mode 100644 index 0000000..d45f28b --- /dev/null +++ b/level/block/anvil.go @@ -0,0 +1,9 @@ +package block + +type Anvil struct { + Facing string +} + +func (Anvil) ID() string { + return "minecraft:anvil" +} diff --git a/level/block/attached_melon_stem.go b/level/block/attached_melon_stem.go new file mode 100644 index 0000000..1acfbd9 --- /dev/null +++ b/level/block/attached_melon_stem.go @@ -0,0 +1,9 @@ +package block + +type AttachedMelonStem struct { + Facing string +} + +func (AttachedMelonStem) ID() string { + return "minecraft:attached_melon_stem" +} diff --git a/level/block/attached_pumpkin_stem.go b/level/block/attached_pumpkin_stem.go new file mode 100644 index 0000000..460369d --- /dev/null +++ b/level/block/attached_pumpkin_stem.go @@ -0,0 +1,9 @@ +package block + +type AttachedPumpkinStem struct { + Facing string +} + +func (AttachedPumpkinStem) ID() string { + return "minecraft:attached_pumpkin_stem" +} diff --git a/level/block/azalea.go b/level/block/azalea.go new file mode 100644 index 0000000..8b8005b --- /dev/null +++ b/level/block/azalea.go @@ -0,0 +1,8 @@ +package block + +type Azalea struct { +} + +func (Azalea) ID() string { + return "minecraft:azalea" +} diff --git a/level/block/azalea_leaves.go b/level/block/azalea_leaves.go new file mode 100644 index 0000000..7aac872 --- /dev/null +++ b/level/block/azalea_leaves.go @@ -0,0 +1,10 @@ +package block + +type AzaleaLeaves struct { + Distance string + Persistent string +} + +func (AzaleaLeaves) ID() string { + return "minecraft:azalea_leaves" +} diff --git a/level/block/azure_bluet.go b/level/block/azure_bluet.go new file mode 100644 index 0000000..4b4fd3e --- /dev/null +++ b/level/block/azure_bluet.go @@ -0,0 +1,8 @@ +package block + +type AzureBluet struct { +} + +func (AzureBluet) ID() string { + return "minecraft:azure_bluet" +} diff --git a/level/block/bamboo.go b/level/block/bamboo.go new file mode 100644 index 0000000..f89c582 --- /dev/null +++ b/level/block/bamboo.go @@ -0,0 +1,11 @@ +package block + +type Bamboo struct { + Age string + Leaves string + Stage string +} + +func (Bamboo) ID() string { + return "minecraft:bamboo" +} diff --git a/level/block/bamboo_sapling.go b/level/block/bamboo_sapling.go new file mode 100644 index 0000000..d129cc5 --- /dev/null +++ b/level/block/bamboo_sapling.go @@ -0,0 +1,8 @@ +package block + +type BambooSapling struct { +} + +func (BambooSapling) ID() string { + return "minecraft:bamboo_sapling" +} diff --git a/level/block/barrel.go b/level/block/barrel.go new file mode 100644 index 0000000..d1cae61 --- /dev/null +++ b/level/block/barrel.go @@ -0,0 +1,10 @@ +package block + +type Barrel struct { + Facing string + Open string +} + +func (Barrel) ID() string { + return "minecraft:barrel" +} diff --git a/level/block/barrier.go b/level/block/barrier.go new file mode 100644 index 0000000..bee75c2 --- /dev/null +++ b/level/block/barrier.go @@ -0,0 +1,8 @@ +package block + +type Barrier struct { +} + +func (Barrier) ID() string { + return "minecraft:barrier" +} diff --git a/level/block/basalt.go b/level/block/basalt.go new file mode 100644 index 0000000..7b90109 --- /dev/null +++ b/level/block/basalt.go @@ -0,0 +1,9 @@ +package block + +type Basalt struct { + Axis string +} + +func (Basalt) ID() string { + return "minecraft:basalt" +} diff --git a/level/block/beacon.go b/level/block/beacon.go new file mode 100644 index 0000000..3f2af56 --- /dev/null +++ b/level/block/beacon.go @@ -0,0 +1,8 @@ +package block + +type Beacon struct { +} + +func (Beacon) ID() string { + return "minecraft:beacon" +} diff --git a/level/block/bedrock.go b/level/block/bedrock.go new file mode 100644 index 0000000..c39f29d --- /dev/null +++ b/level/block/bedrock.go @@ -0,0 +1,8 @@ +package block + +type Bedrock struct { +} + +func (Bedrock) ID() string { + return "minecraft:bedrock" +} diff --git a/level/block/bee_nest.go b/level/block/bee_nest.go new file mode 100644 index 0000000..746da66 --- /dev/null +++ b/level/block/bee_nest.go @@ -0,0 +1,10 @@ +package block + +type BeeNest struct { + Facing string + Honey_level string +} + +func (BeeNest) ID() string { + return "minecraft:bee_nest" +} diff --git a/level/block/beehive.go b/level/block/beehive.go new file mode 100644 index 0000000..39a8a79 --- /dev/null +++ b/level/block/beehive.go @@ -0,0 +1,10 @@ +package block + +type Beehive struct { + Facing string + Honey_level string +} + +func (Beehive) ID() string { + return "minecraft:beehive" +} diff --git a/level/block/beetroots.go b/level/block/beetroots.go new file mode 100644 index 0000000..a53875c --- /dev/null +++ b/level/block/beetroots.go @@ -0,0 +1,9 @@ +package block + +type Beetroots struct { + Age string +} + +func (Beetroots) ID() string { + return "minecraft:beetroots" +} diff --git a/level/block/bell.go b/level/block/bell.go new file mode 100644 index 0000000..64a3478 --- /dev/null +++ b/level/block/bell.go @@ -0,0 +1,11 @@ +package block + +type Bell struct { + Attachment string + Facing string + Powered string +} + +func (Bell) ID() string { + return "minecraft:bell" +} diff --git a/level/block/big_dripleaf.go b/level/block/big_dripleaf.go new file mode 100644 index 0000000..efef598 --- /dev/null +++ b/level/block/big_dripleaf.go @@ -0,0 +1,11 @@ +package block + +type BigDripleaf struct { + Facing string + Tilt string + Waterlogged string +} + +func (BigDripleaf) ID() string { + return "minecraft:big_dripleaf" +} diff --git a/level/block/big_dripleaf_stem.go b/level/block/big_dripleaf_stem.go new file mode 100644 index 0000000..f55e4fb --- /dev/null +++ b/level/block/big_dripleaf_stem.go @@ -0,0 +1,10 @@ +package block + +type BigDripleafStem struct { + Facing string + Waterlogged string +} + +func (BigDripleafStem) ID() string { + return "minecraft:big_dripleaf_stem" +} diff --git a/level/block/birch_button.go b/level/block/birch_button.go new file mode 100644 index 0000000..cdfb364 --- /dev/null +++ b/level/block/birch_button.go @@ -0,0 +1,11 @@ +package block + +type BirchButton struct { + Face string + Facing string + Powered string +} + +func (BirchButton) ID() string { + return "minecraft:birch_button" +} diff --git a/level/block/birch_door.go b/level/block/birch_door.go new file mode 100644 index 0000000..d9480f0 --- /dev/null +++ b/level/block/birch_door.go @@ -0,0 +1,13 @@ +package block + +type BirchDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (BirchDoor) ID() string { + return "minecraft:birch_door" +} diff --git a/level/block/birch_fence.go b/level/block/birch_fence.go new file mode 100644 index 0000000..91988e3 --- /dev/null +++ b/level/block/birch_fence.go @@ -0,0 +1,13 @@ +package block + +type BirchFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (BirchFence) ID() string { + return "minecraft:birch_fence" +} diff --git a/level/block/birch_fence_gate.go b/level/block/birch_fence_gate.go new file mode 100644 index 0000000..588ff67 --- /dev/null +++ b/level/block/birch_fence_gate.go @@ -0,0 +1,12 @@ +package block + +type BirchFenceGate struct { + Facing string + In_wall string + Open string + Powered string +} + +func (BirchFenceGate) ID() string { + return "minecraft:birch_fence_gate" +} diff --git a/level/block/birch_leaves.go b/level/block/birch_leaves.go new file mode 100644 index 0000000..64e5f61 --- /dev/null +++ b/level/block/birch_leaves.go @@ -0,0 +1,10 @@ +package block + +type BirchLeaves struct { + Distance string + Persistent string +} + +func (BirchLeaves) ID() string { + return "minecraft:birch_leaves" +} diff --git a/level/block/birch_log.go b/level/block/birch_log.go new file mode 100644 index 0000000..98efc5d --- /dev/null +++ b/level/block/birch_log.go @@ -0,0 +1,9 @@ +package block + +type BirchLog struct { + Axis string +} + +func (BirchLog) ID() string { + return "minecraft:birch_log" +} diff --git a/level/block/birch_planks.go b/level/block/birch_planks.go new file mode 100644 index 0000000..0f43274 --- /dev/null +++ b/level/block/birch_planks.go @@ -0,0 +1,8 @@ +package block + +type BirchPlanks struct { +} + +func (BirchPlanks) ID() string { + return "minecraft:birch_planks" +} diff --git a/level/block/birch_pressure_plate.go b/level/block/birch_pressure_plate.go new file mode 100644 index 0000000..1a58b33 --- /dev/null +++ b/level/block/birch_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type BirchPressurePlate struct { + Powered string +} + +func (BirchPressurePlate) ID() string { + return "minecraft:birch_pressure_plate" +} diff --git a/level/block/birch_sapling.go b/level/block/birch_sapling.go new file mode 100644 index 0000000..297ba9a --- /dev/null +++ b/level/block/birch_sapling.go @@ -0,0 +1,9 @@ +package block + +type BirchSapling struct { + Stage string +} + +func (BirchSapling) ID() string { + return "minecraft:birch_sapling" +} diff --git a/level/block/birch_sign.go b/level/block/birch_sign.go new file mode 100644 index 0000000..7a8be7b --- /dev/null +++ b/level/block/birch_sign.go @@ -0,0 +1,10 @@ +package block + +type BirchSign struct { + Rotation string + Waterlogged string +} + +func (BirchSign) ID() string { + return "minecraft:birch_sign" +} diff --git a/level/block/birch_slab.go b/level/block/birch_slab.go new file mode 100644 index 0000000..61acb28 --- /dev/null +++ b/level/block/birch_slab.go @@ -0,0 +1,10 @@ +package block + +type BirchSlab struct { + Type string + Waterlogged string +} + +func (BirchSlab) ID() string { + return "minecraft:birch_slab" +} diff --git a/level/block/birch_stairs.go b/level/block/birch_stairs.go new file mode 100644 index 0000000..4e151fa --- /dev/null +++ b/level/block/birch_stairs.go @@ -0,0 +1,12 @@ +package block + +type BirchStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (BirchStairs) ID() string { + return "minecraft:birch_stairs" +} diff --git a/level/block/birch_trapdoor.go b/level/block/birch_trapdoor.go new file mode 100644 index 0000000..f08df2c --- /dev/null +++ b/level/block/birch_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type BirchTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (BirchTrapdoor) ID() string { + return "minecraft:birch_trapdoor" +} diff --git a/level/block/birch_wall_sign.go b/level/block/birch_wall_sign.go new file mode 100644 index 0000000..98b1873 --- /dev/null +++ b/level/block/birch_wall_sign.go @@ -0,0 +1,10 @@ +package block + +type BirchWallSign struct { + Facing string + Waterlogged string +} + +func (BirchWallSign) ID() string { + return "minecraft:birch_wall_sign" +} diff --git a/level/block/birch_wood.go b/level/block/birch_wood.go new file mode 100644 index 0000000..fceb7d5 --- /dev/null +++ b/level/block/birch_wood.go @@ -0,0 +1,9 @@ +package block + +type BirchWood struct { + Axis string +} + +func (BirchWood) ID() string { + return "minecraft:birch_wood" +} diff --git a/level/block/black_banner.go b/level/block/black_banner.go new file mode 100644 index 0000000..32f880b --- /dev/null +++ b/level/block/black_banner.go @@ -0,0 +1,9 @@ +package block + +type BlackBanner struct { + Rotation string +} + +func (BlackBanner) ID() string { + return "minecraft:black_banner" +} diff --git a/level/block/black_bed.go b/level/block/black_bed.go new file mode 100644 index 0000000..03d589f --- /dev/null +++ b/level/block/black_bed.go @@ -0,0 +1,11 @@ +package block + +type BlackBed struct { + Facing string + Occupied string + Part string +} + +func (BlackBed) ID() string { + return "minecraft:black_bed" +} diff --git a/level/block/black_candle.go b/level/block/black_candle.go new file mode 100644 index 0000000..e5f3fa7 --- /dev/null +++ b/level/block/black_candle.go @@ -0,0 +1,11 @@ +package block + +type BlackCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (BlackCandle) ID() string { + return "minecraft:black_candle" +} diff --git a/level/block/black_candle_cake.go b/level/block/black_candle_cake.go new file mode 100644 index 0000000..86c781a --- /dev/null +++ b/level/block/black_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type BlackCandleCake struct { + Lit string +} + +func (BlackCandleCake) ID() string { + return "minecraft:black_candle_cake" +} diff --git a/level/block/black_carpet.go b/level/block/black_carpet.go new file mode 100644 index 0000000..e9ac59d --- /dev/null +++ b/level/block/black_carpet.go @@ -0,0 +1,8 @@ +package block + +type BlackCarpet struct { +} + +func (BlackCarpet) ID() string { + return "minecraft:black_carpet" +} diff --git a/level/block/black_concrete.go b/level/block/black_concrete.go new file mode 100644 index 0000000..86a3f5d --- /dev/null +++ b/level/block/black_concrete.go @@ -0,0 +1,8 @@ +package block + +type BlackConcrete struct { +} + +func (BlackConcrete) ID() string { + return "minecraft:black_concrete" +} diff --git a/level/block/black_concrete_powder.go b/level/block/black_concrete_powder.go new file mode 100644 index 0000000..f24ab6e --- /dev/null +++ b/level/block/black_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type BlackConcretePowder struct { +} + +func (BlackConcretePowder) ID() string { + return "minecraft:black_concrete_powder" +} diff --git a/level/block/black_glazed_terracotta.go b/level/block/black_glazed_terracotta.go new file mode 100644 index 0000000..0e6b240 --- /dev/null +++ b/level/block/black_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type BlackGlazedTerracotta struct { + Facing string +} + +func (BlackGlazedTerracotta) ID() string { + return "minecraft:black_glazed_terracotta" +} diff --git a/level/block/black_shulker_box.go b/level/block/black_shulker_box.go new file mode 100644 index 0000000..8923942 --- /dev/null +++ b/level/block/black_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type BlackShulkerBox struct { + Facing string +} + +func (BlackShulkerBox) ID() string { + return "minecraft:black_shulker_box" +} diff --git a/level/block/black_stained_glass.go b/level/block/black_stained_glass.go new file mode 100644 index 0000000..a539399 --- /dev/null +++ b/level/block/black_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type BlackStainedGlass struct { +} + +func (BlackStainedGlass) ID() string { + return "minecraft:black_stained_glass" +} diff --git a/level/block/black_stained_glass_pane.go b/level/block/black_stained_glass_pane.go new file mode 100644 index 0000000..c116586 --- /dev/null +++ b/level/block/black_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type BlackStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (BlackStainedGlassPane) ID() string { + return "minecraft:black_stained_glass_pane" +} diff --git a/level/block/black_terracotta.go b/level/block/black_terracotta.go new file mode 100644 index 0000000..2a1b731 --- /dev/null +++ b/level/block/black_terracotta.go @@ -0,0 +1,8 @@ +package block + +type BlackTerracotta struct { +} + +func (BlackTerracotta) ID() string { + return "minecraft:black_terracotta" +} diff --git a/level/block/black_wall_banner.go b/level/block/black_wall_banner.go new file mode 100644 index 0000000..35de5ab --- /dev/null +++ b/level/block/black_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type BlackWallBanner struct { + Facing string +} + +func (BlackWallBanner) ID() string { + return "minecraft:black_wall_banner" +} diff --git a/level/block/black_wool.go b/level/block/black_wool.go new file mode 100644 index 0000000..511265d --- /dev/null +++ b/level/block/black_wool.go @@ -0,0 +1,8 @@ +package block + +type BlackWool struct { +} + +func (BlackWool) ID() string { + return "minecraft:black_wool" +} diff --git a/level/block/blackstone.go b/level/block/blackstone.go new file mode 100644 index 0000000..6161828 --- /dev/null +++ b/level/block/blackstone.go @@ -0,0 +1,8 @@ +package block + +type Blackstone struct { +} + +func (Blackstone) ID() string { + return "minecraft:blackstone" +} diff --git a/level/block/blackstone_slab.go b/level/block/blackstone_slab.go new file mode 100644 index 0000000..c0a6ffd --- /dev/null +++ b/level/block/blackstone_slab.go @@ -0,0 +1,10 @@ +package block + +type BlackstoneSlab struct { + Type string + Waterlogged string +} + +func (BlackstoneSlab) ID() string { + return "minecraft:blackstone_slab" +} diff --git a/level/block/blackstone_stairs.go b/level/block/blackstone_stairs.go new file mode 100644 index 0000000..b559be8 --- /dev/null +++ b/level/block/blackstone_stairs.go @@ -0,0 +1,12 @@ +package block + +type BlackstoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (BlackstoneStairs) ID() string { + return "minecraft:blackstone_stairs" +} diff --git a/level/block/blackstone_wall.go b/level/block/blackstone_wall.go new file mode 100644 index 0000000..5ca4006 --- /dev/null +++ b/level/block/blackstone_wall.go @@ -0,0 +1,14 @@ +package block + +type BlackstoneWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (BlackstoneWall) ID() string { + return "minecraft:blackstone_wall" +} diff --git a/level/block/blast_furnace.go b/level/block/blast_furnace.go new file mode 100644 index 0000000..edd2041 --- /dev/null +++ b/level/block/blast_furnace.go @@ -0,0 +1,10 @@ +package block + +type BlastFurnace struct { + Facing string + Lit string +} + +func (BlastFurnace) ID() string { + return "minecraft:blast_furnace" +} diff --git a/level/block/block.go b/level/block/block.go new file mode 100644 index 0000000..3c795f3 --- /dev/null +++ b/level/block/block.go @@ -0,0 +1,28 @@ +package block + +type Block interface { + ID() string +} + +var toStateID = make(map[Block]int) +var fromStateID []Block +var fromID = make(map[string]Block) + +func init() { + //regState := func(s Block) { + // if _, ok := toStateID[s]; ok { + // panic(fmt.Errorf("state %#v already exist", s)) + // } + // toStateID[s] = len(fromStateID) + // fromStateID = append(fromStateID, s) + //} + //regBlock := func(b Block) { + // fromID[b.ID()] = b + // b.forEachState(regState) + //} + //regBlock(Air{}) +} + +func NewFromStateID(stateID int) Block { + return fromStateID[stateID] +} diff --git a/level/block/block_states_test.go b/level/block/block_states_test.go new file mode 100644 index 0000000..5b44e8a --- /dev/null +++ b/level/block/block_states_test.go @@ -0,0 +1,40 @@ +package block + +import ( + "os" + "testing" + + "github.com/Tnze/go-mc/nbt" +) + +func TestNewFromStateID(t *testing.T) { + f, err := os.Open("testdata/block_states.nbt") + if err != nil { + t.Fatal(err) + } + defer f.Close() + + var states []struct { + Name string + Properties nbt.RawMessage + } + + _, err = nbt.NewDecoder(f).Decode(&states) + if err != nil { + t.Fatal(err) + } + + for i, v := range states { + state1 := NewFromStateID(i) + if id := "minecraft:" + state1.ID(); id != v.Name { + t.Errorf("StateID [%d] Name not match: %v != %v", i, id, v.Name) + } + state2 := state1 + if err := v.Properties.Unmarshal(&state2); err != nil { + t.Errorf("Decode error: %v", err) + } + if state1 != state2 { + t.Errorf("StateID [%d] Properties not match: %v != %v", i, state1, state2) + } + } +} diff --git a/level/block/blue_banner.go b/level/block/blue_banner.go new file mode 100644 index 0000000..a7afa2e --- /dev/null +++ b/level/block/blue_banner.go @@ -0,0 +1,9 @@ +package block + +type BlueBanner struct { + Rotation string +} + +func (BlueBanner) ID() string { + return "minecraft:blue_banner" +} diff --git a/level/block/blue_bed.go b/level/block/blue_bed.go new file mode 100644 index 0000000..8672cd5 --- /dev/null +++ b/level/block/blue_bed.go @@ -0,0 +1,11 @@ +package block + +type BlueBed struct { + Facing string + Occupied string + Part string +} + +func (BlueBed) ID() string { + return "minecraft:blue_bed" +} diff --git a/level/block/blue_candle.go b/level/block/blue_candle.go new file mode 100644 index 0000000..54c86fc --- /dev/null +++ b/level/block/blue_candle.go @@ -0,0 +1,11 @@ +package block + +type BlueCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (BlueCandle) ID() string { + return "minecraft:blue_candle" +} diff --git a/level/block/blue_candle_cake.go b/level/block/blue_candle_cake.go new file mode 100644 index 0000000..64ddc33 --- /dev/null +++ b/level/block/blue_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type BlueCandleCake struct { + Lit string +} + +func (BlueCandleCake) ID() string { + return "minecraft:blue_candle_cake" +} diff --git a/level/block/blue_carpet.go b/level/block/blue_carpet.go new file mode 100644 index 0000000..81eacad --- /dev/null +++ b/level/block/blue_carpet.go @@ -0,0 +1,8 @@ +package block + +type BlueCarpet struct { +} + +func (BlueCarpet) ID() string { + return "minecraft:blue_carpet" +} diff --git a/level/block/blue_concrete.go b/level/block/blue_concrete.go new file mode 100644 index 0000000..08fb625 --- /dev/null +++ b/level/block/blue_concrete.go @@ -0,0 +1,8 @@ +package block + +type BlueConcrete struct { +} + +func (BlueConcrete) ID() string { + return "minecraft:blue_concrete" +} diff --git a/level/block/blue_concrete_powder.go b/level/block/blue_concrete_powder.go new file mode 100644 index 0000000..1c46daf --- /dev/null +++ b/level/block/blue_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type BlueConcretePowder struct { +} + +func (BlueConcretePowder) ID() string { + return "minecraft:blue_concrete_powder" +} diff --git a/level/block/blue_glazed_terracotta.go b/level/block/blue_glazed_terracotta.go new file mode 100644 index 0000000..b41956c --- /dev/null +++ b/level/block/blue_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type BlueGlazedTerracotta struct { + Facing string +} + +func (BlueGlazedTerracotta) ID() string { + return "minecraft:blue_glazed_terracotta" +} diff --git a/level/block/blue_ice.go b/level/block/blue_ice.go new file mode 100644 index 0000000..2ecd6ec --- /dev/null +++ b/level/block/blue_ice.go @@ -0,0 +1,8 @@ +package block + +type BlueIce struct { +} + +func (BlueIce) ID() string { + return "minecraft:blue_ice" +} diff --git a/level/block/blue_orchid.go b/level/block/blue_orchid.go new file mode 100644 index 0000000..ec90cdb --- /dev/null +++ b/level/block/blue_orchid.go @@ -0,0 +1,8 @@ +package block + +type BlueOrchid struct { +} + +func (BlueOrchid) ID() string { + return "minecraft:blue_orchid" +} diff --git a/level/block/blue_shulker_box.go b/level/block/blue_shulker_box.go new file mode 100644 index 0000000..78f13de --- /dev/null +++ b/level/block/blue_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type BlueShulkerBox struct { + Facing string +} + +func (BlueShulkerBox) ID() string { + return "minecraft:blue_shulker_box" +} diff --git a/level/block/blue_stained_glass.go b/level/block/blue_stained_glass.go new file mode 100644 index 0000000..f38fb67 --- /dev/null +++ b/level/block/blue_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type BlueStainedGlass struct { +} + +func (BlueStainedGlass) ID() string { + return "minecraft:blue_stained_glass" +} diff --git a/level/block/blue_stained_glass_pane.go b/level/block/blue_stained_glass_pane.go new file mode 100644 index 0000000..666574a --- /dev/null +++ b/level/block/blue_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type BlueStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (BlueStainedGlassPane) ID() string { + return "minecraft:blue_stained_glass_pane" +} diff --git a/level/block/blue_terracotta.go b/level/block/blue_terracotta.go new file mode 100644 index 0000000..64e9bb1 --- /dev/null +++ b/level/block/blue_terracotta.go @@ -0,0 +1,8 @@ +package block + +type BlueTerracotta struct { +} + +func (BlueTerracotta) ID() string { + return "minecraft:blue_terracotta" +} diff --git a/level/block/blue_wall_banner.go b/level/block/blue_wall_banner.go new file mode 100644 index 0000000..2b28964 --- /dev/null +++ b/level/block/blue_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type BlueWallBanner struct { + Facing string +} + +func (BlueWallBanner) ID() string { + return "minecraft:blue_wall_banner" +} diff --git a/level/block/blue_wool.go b/level/block/blue_wool.go new file mode 100644 index 0000000..d5826a9 --- /dev/null +++ b/level/block/blue_wool.go @@ -0,0 +1,8 @@ +package block + +type BlueWool struct { +} + +func (BlueWool) ID() string { + return "minecraft:blue_wool" +} diff --git a/level/block/bone_block.go b/level/block/bone_block.go new file mode 100644 index 0000000..0d05781 --- /dev/null +++ b/level/block/bone_block.go @@ -0,0 +1,9 @@ +package block + +type BoneBlock struct { + Axis string +} + +func (BoneBlock) ID() string { + return "minecraft:bone_block" +} diff --git a/level/block/bookshelf.go b/level/block/bookshelf.go new file mode 100644 index 0000000..b903bf0 --- /dev/null +++ b/level/block/bookshelf.go @@ -0,0 +1,8 @@ +package block + +type Bookshelf struct { +} + +func (Bookshelf) ID() string { + return "minecraft:bookshelf" +} diff --git a/level/block/brain_coral.go b/level/block/brain_coral.go new file mode 100644 index 0000000..54c750e --- /dev/null +++ b/level/block/brain_coral.go @@ -0,0 +1,9 @@ +package block + +type BrainCoral struct { + Waterlogged string +} + +func (BrainCoral) ID() string { + return "minecraft:brain_coral" +} diff --git a/level/block/brain_coral_block.go b/level/block/brain_coral_block.go new file mode 100644 index 0000000..e4a5f65 --- /dev/null +++ b/level/block/brain_coral_block.go @@ -0,0 +1,8 @@ +package block + +type BrainCoralBlock struct { +} + +func (BrainCoralBlock) ID() string { + return "minecraft:brain_coral_block" +} diff --git a/level/block/brain_coral_fan.go b/level/block/brain_coral_fan.go new file mode 100644 index 0000000..1de0899 --- /dev/null +++ b/level/block/brain_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type BrainCoralFan struct { + Waterlogged string +} + +func (BrainCoralFan) ID() string { + return "minecraft:brain_coral_fan" +} diff --git a/level/block/brain_coral_wall_fan.go b/level/block/brain_coral_wall_fan.go new file mode 100644 index 0000000..f532f66 --- /dev/null +++ b/level/block/brain_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type BrainCoralWallFan struct { + Facing string + Waterlogged string +} + +func (BrainCoralWallFan) ID() string { + return "minecraft:brain_coral_wall_fan" +} diff --git a/level/block/brewing_stand.go b/level/block/brewing_stand.go new file mode 100644 index 0000000..2649344 --- /dev/null +++ b/level/block/brewing_stand.go @@ -0,0 +1,11 @@ +package block + +type BrewingStand struct { + Has_bottle_0 string + Has_bottle_1 string + Has_bottle_2 string +} + +func (BrewingStand) ID() string { + return "minecraft:brewing_stand" +} diff --git a/level/block/brick_slab.go b/level/block/brick_slab.go new file mode 100644 index 0000000..b991244 --- /dev/null +++ b/level/block/brick_slab.go @@ -0,0 +1,10 @@ +package block + +type BrickSlab struct { + Type string + Waterlogged string +} + +func (BrickSlab) ID() string { + return "minecraft:brick_slab" +} diff --git a/level/block/brick_stairs.go b/level/block/brick_stairs.go new file mode 100644 index 0000000..81bbc53 --- /dev/null +++ b/level/block/brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type BrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (BrickStairs) ID() string { + return "minecraft:brick_stairs" +} diff --git a/level/block/brick_wall.go b/level/block/brick_wall.go new file mode 100644 index 0000000..10d8fa3 --- /dev/null +++ b/level/block/brick_wall.go @@ -0,0 +1,14 @@ +package block + +type BrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (BrickWall) ID() string { + return "minecraft:brick_wall" +} diff --git a/level/block/bricks.go b/level/block/bricks.go new file mode 100644 index 0000000..0a4a687 --- /dev/null +++ b/level/block/bricks.go @@ -0,0 +1,8 @@ +package block + +type Bricks struct { +} + +func (Bricks) ID() string { + return "minecraft:bricks" +} diff --git a/level/block/brown_banner.go b/level/block/brown_banner.go new file mode 100644 index 0000000..1a85978 --- /dev/null +++ b/level/block/brown_banner.go @@ -0,0 +1,9 @@ +package block + +type BrownBanner struct { + Rotation string +} + +func (BrownBanner) ID() string { + return "minecraft:brown_banner" +} diff --git a/level/block/brown_bed.go b/level/block/brown_bed.go new file mode 100644 index 0000000..0d9786f --- /dev/null +++ b/level/block/brown_bed.go @@ -0,0 +1,11 @@ +package block + +type BrownBed struct { + Facing string + Occupied string + Part string +} + +func (BrownBed) ID() string { + return "minecraft:brown_bed" +} diff --git a/level/block/brown_candle.go b/level/block/brown_candle.go new file mode 100644 index 0000000..296d67a --- /dev/null +++ b/level/block/brown_candle.go @@ -0,0 +1,11 @@ +package block + +type BrownCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (BrownCandle) ID() string { + return "minecraft:brown_candle" +} diff --git a/level/block/brown_candle_cake.go b/level/block/brown_candle_cake.go new file mode 100644 index 0000000..6e03781 --- /dev/null +++ b/level/block/brown_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type BrownCandleCake struct { + Lit string +} + +func (BrownCandleCake) ID() string { + return "minecraft:brown_candle_cake" +} diff --git a/level/block/brown_carpet.go b/level/block/brown_carpet.go new file mode 100644 index 0000000..46525ed --- /dev/null +++ b/level/block/brown_carpet.go @@ -0,0 +1,8 @@ +package block + +type BrownCarpet struct { +} + +func (BrownCarpet) ID() string { + return "minecraft:brown_carpet" +} diff --git a/level/block/brown_concrete.go b/level/block/brown_concrete.go new file mode 100644 index 0000000..c955abb --- /dev/null +++ b/level/block/brown_concrete.go @@ -0,0 +1,8 @@ +package block + +type BrownConcrete struct { +} + +func (BrownConcrete) ID() string { + return "minecraft:brown_concrete" +} diff --git a/level/block/brown_concrete_powder.go b/level/block/brown_concrete_powder.go new file mode 100644 index 0000000..7f84095 --- /dev/null +++ b/level/block/brown_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type BrownConcretePowder struct { +} + +func (BrownConcretePowder) ID() string { + return "minecraft:brown_concrete_powder" +} diff --git a/level/block/brown_glazed_terracotta.go b/level/block/brown_glazed_terracotta.go new file mode 100644 index 0000000..256b5ce --- /dev/null +++ b/level/block/brown_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type BrownGlazedTerracotta struct { + Facing string +} + +func (BrownGlazedTerracotta) ID() string { + return "minecraft:brown_glazed_terracotta" +} diff --git a/level/block/brown_mushroom.go b/level/block/brown_mushroom.go new file mode 100644 index 0000000..aee8acb --- /dev/null +++ b/level/block/brown_mushroom.go @@ -0,0 +1,8 @@ +package block + +type BrownMushroom struct { +} + +func (BrownMushroom) ID() string { + return "minecraft:brown_mushroom" +} diff --git a/level/block/brown_mushroom_block.go b/level/block/brown_mushroom_block.go new file mode 100644 index 0000000..1f07b5c --- /dev/null +++ b/level/block/brown_mushroom_block.go @@ -0,0 +1,14 @@ +package block + +type BrownMushroomBlock struct { + Down string + East string + North string + South string + Up string + West string +} + +func (BrownMushroomBlock) ID() string { + return "minecraft:brown_mushroom_block" +} diff --git a/level/block/brown_shulker_box.go b/level/block/brown_shulker_box.go new file mode 100644 index 0000000..9c182d4 --- /dev/null +++ b/level/block/brown_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type BrownShulkerBox struct { + Facing string +} + +func (BrownShulkerBox) ID() string { + return "minecraft:brown_shulker_box" +} diff --git a/level/block/brown_stained_glass.go b/level/block/brown_stained_glass.go new file mode 100644 index 0000000..c65055c --- /dev/null +++ b/level/block/brown_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type BrownStainedGlass struct { +} + +func (BrownStainedGlass) ID() string { + return "minecraft:brown_stained_glass" +} diff --git a/level/block/brown_stained_glass_pane.go b/level/block/brown_stained_glass_pane.go new file mode 100644 index 0000000..94608aa --- /dev/null +++ b/level/block/brown_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type BrownStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (BrownStainedGlassPane) ID() string { + return "minecraft:brown_stained_glass_pane" +} diff --git a/level/block/brown_terracotta.go b/level/block/brown_terracotta.go new file mode 100644 index 0000000..75fefa7 --- /dev/null +++ b/level/block/brown_terracotta.go @@ -0,0 +1,8 @@ +package block + +type BrownTerracotta struct { +} + +func (BrownTerracotta) ID() string { + return "minecraft:brown_terracotta" +} diff --git a/level/block/brown_wall_banner.go b/level/block/brown_wall_banner.go new file mode 100644 index 0000000..bceb088 --- /dev/null +++ b/level/block/brown_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type BrownWallBanner struct { + Facing string +} + +func (BrownWallBanner) ID() string { + return "minecraft:brown_wall_banner" +} diff --git a/level/block/brown_wool.go b/level/block/brown_wool.go new file mode 100644 index 0000000..9f2b410 --- /dev/null +++ b/level/block/brown_wool.go @@ -0,0 +1,8 @@ +package block + +type BrownWool struct { +} + +func (BrownWool) ID() string { + return "minecraft:brown_wool" +} diff --git a/level/block/bubble_column.go b/level/block/bubble_column.go new file mode 100644 index 0000000..6e402d0 --- /dev/null +++ b/level/block/bubble_column.go @@ -0,0 +1,9 @@ +package block + +type BubbleColumn struct { + Drag string +} + +func (BubbleColumn) ID() string { + return "minecraft:bubble_column" +} diff --git a/level/block/bubble_coral.go b/level/block/bubble_coral.go new file mode 100644 index 0000000..2670ed8 --- /dev/null +++ b/level/block/bubble_coral.go @@ -0,0 +1,9 @@ +package block + +type BubbleCoral struct { + Waterlogged string +} + +func (BubbleCoral) ID() string { + return "minecraft:bubble_coral" +} diff --git a/level/block/bubble_coral_block.go b/level/block/bubble_coral_block.go new file mode 100644 index 0000000..7997dc6 --- /dev/null +++ b/level/block/bubble_coral_block.go @@ -0,0 +1,8 @@ +package block + +type BubbleCoralBlock struct { +} + +func (BubbleCoralBlock) ID() string { + return "minecraft:bubble_coral_block" +} diff --git a/level/block/bubble_coral_fan.go b/level/block/bubble_coral_fan.go new file mode 100644 index 0000000..cb1d842 --- /dev/null +++ b/level/block/bubble_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type BubbleCoralFan struct { + Waterlogged string +} + +func (BubbleCoralFan) ID() string { + return "minecraft:bubble_coral_fan" +} diff --git a/level/block/bubble_coral_wall_fan.go b/level/block/bubble_coral_wall_fan.go new file mode 100644 index 0000000..7b84720 --- /dev/null +++ b/level/block/bubble_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type BubbleCoralWallFan struct { + Facing string + Waterlogged string +} + +func (BubbleCoralWallFan) ID() string { + return "minecraft:bubble_coral_wall_fan" +} diff --git a/level/block/budding_amethyst.go b/level/block/budding_amethyst.go new file mode 100644 index 0000000..3f7c08d --- /dev/null +++ b/level/block/budding_amethyst.go @@ -0,0 +1,8 @@ +package block + +type BuddingAmethyst struct { +} + +func (BuddingAmethyst) ID() string { + return "minecraft:budding_amethyst" +} diff --git a/level/block/cactus.go b/level/block/cactus.go new file mode 100644 index 0000000..b483b74 --- /dev/null +++ b/level/block/cactus.go @@ -0,0 +1,9 @@ +package block + +type Cactus struct { + Age string +} + +func (Cactus) ID() string { + return "minecraft:cactus" +} diff --git a/level/block/cake.go b/level/block/cake.go new file mode 100644 index 0000000..f79796d --- /dev/null +++ b/level/block/cake.go @@ -0,0 +1,9 @@ +package block + +type Cake struct { + Bites string +} + +func (Cake) ID() string { + return "minecraft:cake" +} diff --git a/level/block/calcite.go b/level/block/calcite.go new file mode 100644 index 0000000..ff71ec0 --- /dev/null +++ b/level/block/calcite.go @@ -0,0 +1,8 @@ +package block + +type Calcite struct { +} + +func (Calcite) ID() string { + return "minecraft:calcite" +} diff --git a/level/block/campfire.go b/level/block/campfire.go new file mode 100644 index 0000000..4afcc20 --- /dev/null +++ b/level/block/campfire.go @@ -0,0 +1,12 @@ +package block + +type Campfire struct { + Facing string + Lit string + Signal_fire string + Waterlogged string +} + +func (Campfire) ID() string { + return "minecraft:campfire" +} diff --git a/level/block/candle.go b/level/block/candle.go new file mode 100644 index 0000000..c3c6593 --- /dev/null +++ b/level/block/candle.go @@ -0,0 +1,11 @@ +package block + +type Candle struct { + Candles string + Lit string + Waterlogged string +} + +func (Candle) ID() string { + return "minecraft:candle" +} diff --git a/level/block/candle_cake.go b/level/block/candle_cake.go new file mode 100644 index 0000000..09d9fcd --- /dev/null +++ b/level/block/candle_cake.go @@ -0,0 +1,9 @@ +package block + +type CandleCake struct { + Lit string +} + +func (CandleCake) ID() string { + return "minecraft:candle_cake" +} diff --git a/level/block/carrots.go b/level/block/carrots.go new file mode 100644 index 0000000..44a1acf --- /dev/null +++ b/level/block/carrots.go @@ -0,0 +1,9 @@ +package block + +type Carrots struct { + Age string +} + +func (Carrots) ID() string { + return "minecraft:carrots" +} diff --git a/level/block/cartography_table.go b/level/block/cartography_table.go new file mode 100644 index 0000000..1c29e78 --- /dev/null +++ b/level/block/cartography_table.go @@ -0,0 +1,8 @@ +package block + +type CartographyTable struct { +} + +func (CartographyTable) ID() string { + return "minecraft:cartography_table" +} diff --git a/level/block/carved_pumpkin.go b/level/block/carved_pumpkin.go new file mode 100644 index 0000000..cf26122 --- /dev/null +++ b/level/block/carved_pumpkin.go @@ -0,0 +1,9 @@ +package block + +type CarvedPumpkin struct { + Facing string +} + +func (CarvedPumpkin) ID() string { + return "minecraft:carved_pumpkin" +} diff --git a/level/block/cauldron.go b/level/block/cauldron.go new file mode 100644 index 0000000..8a19875 --- /dev/null +++ b/level/block/cauldron.go @@ -0,0 +1,8 @@ +package block + +type Cauldron struct { +} + +func (Cauldron) ID() string { + return "minecraft:cauldron" +} diff --git a/level/block/cave_air.go b/level/block/cave_air.go new file mode 100644 index 0000000..af565a4 --- /dev/null +++ b/level/block/cave_air.go @@ -0,0 +1,8 @@ +package block + +type CaveAir struct { +} + +func (CaveAir) ID() string { + return "minecraft:cave_air" +} diff --git a/level/block/cave_vines.go b/level/block/cave_vines.go new file mode 100644 index 0000000..c9a421c --- /dev/null +++ b/level/block/cave_vines.go @@ -0,0 +1,10 @@ +package block + +type CaveVines struct { + Age string + Berries string +} + +func (CaveVines) ID() string { + return "minecraft:cave_vines" +} diff --git a/level/block/cave_vines_plant.go b/level/block/cave_vines_plant.go new file mode 100644 index 0000000..5bfb973 --- /dev/null +++ b/level/block/cave_vines_plant.go @@ -0,0 +1,9 @@ +package block + +type CaveVinesPlant struct { + Berries string +} + +func (CaveVinesPlant) ID() string { + return "minecraft:cave_vines_plant" +} diff --git a/level/block/chain.go b/level/block/chain.go new file mode 100644 index 0000000..d0d10d4 --- /dev/null +++ b/level/block/chain.go @@ -0,0 +1,10 @@ +package block + +type Chain struct { + Axis string + Waterlogged string +} + +func (Chain) ID() string { + return "minecraft:chain" +} diff --git a/level/block/chain_command_block.go b/level/block/chain_command_block.go new file mode 100644 index 0000000..3f07dca --- /dev/null +++ b/level/block/chain_command_block.go @@ -0,0 +1,10 @@ +package block + +type ChainCommandBlock struct { + Conditional string + Facing string +} + +func (ChainCommandBlock) ID() string { + return "minecraft:chain_command_block" +} diff --git a/level/block/chest.go b/level/block/chest.go new file mode 100644 index 0000000..94fd51d --- /dev/null +++ b/level/block/chest.go @@ -0,0 +1,11 @@ +package block + +type Chest struct { + Facing string + Type string + Waterlogged string +} + +func (Chest) ID() string { + return "minecraft:chest" +} diff --git a/level/block/chipped_anvil.go b/level/block/chipped_anvil.go new file mode 100644 index 0000000..18d288a --- /dev/null +++ b/level/block/chipped_anvil.go @@ -0,0 +1,9 @@ +package block + +type ChippedAnvil struct { + Facing string +} + +func (ChippedAnvil) ID() string { + return "minecraft:chipped_anvil" +} diff --git a/level/block/chiseled_deepslate.go b/level/block/chiseled_deepslate.go new file mode 100644 index 0000000..df72a17 --- /dev/null +++ b/level/block/chiseled_deepslate.go @@ -0,0 +1,8 @@ +package block + +type ChiseledDeepslate struct { +} + +func (ChiseledDeepslate) ID() string { + return "minecraft:chiseled_deepslate" +} diff --git a/level/block/chiseled_nether_bricks.go b/level/block/chiseled_nether_bricks.go new file mode 100644 index 0000000..61771a6 --- /dev/null +++ b/level/block/chiseled_nether_bricks.go @@ -0,0 +1,8 @@ +package block + +type ChiseledNetherBricks struct { +} + +func (ChiseledNetherBricks) ID() string { + return "minecraft:chiseled_nether_bricks" +} diff --git a/level/block/chiseled_polished_blackstone.go b/level/block/chiseled_polished_blackstone.go new file mode 100644 index 0000000..3b43b31 --- /dev/null +++ b/level/block/chiseled_polished_blackstone.go @@ -0,0 +1,8 @@ +package block + +type ChiseledPolishedBlackstone struct { +} + +func (ChiseledPolishedBlackstone) ID() string { + return "minecraft:chiseled_polished_blackstone" +} diff --git a/level/block/chiseled_quartz_block.go b/level/block/chiseled_quartz_block.go new file mode 100644 index 0000000..4ce0e0b --- /dev/null +++ b/level/block/chiseled_quartz_block.go @@ -0,0 +1,8 @@ +package block + +type ChiseledQuartzBlock struct { +} + +func (ChiseledQuartzBlock) ID() string { + return "minecraft:chiseled_quartz_block" +} diff --git a/level/block/chiseled_red_sandstone.go b/level/block/chiseled_red_sandstone.go new file mode 100644 index 0000000..3f83c04 --- /dev/null +++ b/level/block/chiseled_red_sandstone.go @@ -0,0 +1,8 @@ +package block + +type ChiseledRedSandstone struct { +} + +func (ChiseledRedSandstone) ID() string { + return "minecraft:chiseled_red_sandstone" +} diff --git a/level/block/chiseled_sandstone.go b/level/block/chiseled_sandstone.go new file mode 100644 index 0000000..9f0d80b --- /dev/null +++ b/level/block/chiseled_sandstone.go @@ -0,0 +1,8 @@ +package block + +type ChiseledSandstone struct { +} + +func (ChiseledSandstone) ID() string { + return "minecraft:chiseled_sandstone" +} diff --git a/level/block/chiseled_stone_bricks.go b/level/block/chiseled_stone_bricks.go new file mode 100644 index 0000000..d93e0e8 --- /dev/null +++ b/level/block/chiseled_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type ChiseledStoneBricks struct { +} + +func (ChiseledStoneBricks) ID() string { + return "minecraft:chiseled_stone_bricks" +} diff --git a/level/block/chorus_flower.go b/level/block/chorus_flower.go new file mode 100644 index 0000000..98e1b8d --- /dev/null +++ b/level/block/chorus_flower.go @@ -0,0 +1,9 @@ +package block + +type ChorusFlower struct { + Age string +} + +func (ChorusFlower) ID() string { + return "minecraft:chorus_flower" +} diff --git a/level/block/chorus_plant.go b/level/block/chorus_plant.go new file mode 100644 index 0000000..b95b150 --- /dev/null +++ b/level/block/chorus_plant.go @@ -0,0 +1,14 @@ +package block + +type ChorusPlant struct { + Down string + East string + North string + South string + Up string + West string +} + +func (ChorusPlant) ID() string { + return "minecraft:chorus_plant" +} diff --git a/level/block/clay.go b/level/block/clay.go new file mode 100644 index 0000000..2d5ffff --- /dev/null +++ b/level/block/clay.go @@ -0,0 +1,8 @@ +package block + +type Clay struct { +} + +func (Clay) ID() string { + return "minecraft:clay" +} diff --git a/level/block/coal_block.go b/level/block/coal_block.go new file mode 100644 index 0000000..525a68b --- /dev/null +++ b/level/block/coal_block.go @@ -0,0 +1,8 @@ +package block + +type CoalBlock struct { +} + +func (CoalBlock) ID() string { + return "minecraft:coal_block" +} diff --git a/level/block/coal_ore.go b/level/block/coal_ore.go new file mode 100644 index 0000000..3e1176f --- /dev/null +++ b/level/block/coal_ore.go @@ -0,0 +1,8 @@ +package block + +type CoalOre struct { +} + +func (CoalOre) ID() string { + return "minecraft:coal_ore" +} diff --git a/level/block/coarse_dirt.go b/level/block/coarse_dirt.go new file mode 100644 index 0000000..1eaafdd --- /dev/null +++ b/level/block/coarse_dirt.go @@ -0,0 +1,8 @@ +package block + +type CoarseDirt struct { +} + +func (CoarseDirt) ID() string { + return "minecraft:coarse_dirt" +} diff --git a/level/block/cobbled_deepslate.go b/level/block/cobbled_deepslate.go new file mode 100644 index 0000000..d01614f --- /dev/null +++ b/level/block/cobbled_deepslate.go @@ -0,0 +1,8 @@ +package block + +type CobbledDeepslate struct { +} + +func (CobbledDeepslate) ID() string { + return "minecraft:cobbled_deepslate" +} diff --git a/level/block/cobbled_deepslate_slab.go b/level/block/cobbled_deepslate_slab.go new file mode 100644 index 0000000..4d26bf2 --- /dev/null +++ b/level/block/cobbled_deepslate_slab.go @@ -0,0 +1,10 @@ +package block + +type CobbledDeepslateSlab struct { + Type string + Waterlogged string +} + +func (CobbledDeepslateSlab) ID() string { + return "minecraft:cobbled_deepslate_slab" +} diff --git a/level/block/cobbled_deepslate_stairs.go b/level/block/cobbled_deepslate_stairs.go new file mode 100644 index 0000000..3c55508 --- /dev/null +++ b/level/block/cobbled_deepslate_stairs.go @@ -0,0 +1,12 @@ +package block + +type CobbledDeepslateStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (CobbledDeepslateStairs) ID() string { + return "minecraft:cobbled_deepslate_stairs" +} diff --git a/level/block/cobbled_deepslate_wall.go b/level/block/cobbled_deepslate_wall.go new file mode 100644 index 0000000..5e1e914 --- /dev/null +++ b/level/block/cobbled_deepslate_wall.go @@ -0,0 +1,14 @@ +package block + +type CobbledDeepslateWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (CobbledDeepslateWall) ID() string { + return "minecraft:cobbled_deepslate_wall" +} diff --git a/level/block/cobblestone.go b/level/block/cobblestone.go new file mode 100644 index 0000000..b45071d --- /dev/null +++ b/level/block/cobblestone.go @@ -0,0 +1,8 @@ +package block + +type Cobblestone struct { +} + +func (Cobblestone) ID() string { + return "minecraft:cobblestone" +} diff --git a/level/block/cobblestone_slab.go b/level/block/cobblestone_slab.go new file mode 100644 index 0000000..7b20e57 --- /dev/null +++ b/level/block/cobblestone_slab.go @@ -0,0 +1,10 @@ +package block + +type CobblestoneSlab struct { + Type string + Waterlogged string +} + +func (CobblestoneSlab) ID() string { + return "minecraft:cobblestone_slab" +} diff --git a/level/block/cobblestone_stairs.go b/level/block/cobblestone_stairs.go new file mode 100644 index 0000000..453a148 --- /dev/null +++ b/level/block/cobblestone_stairs.go @@ -0,0 +1,12 @@ +package block + +type CobblestoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (CobblestoneStairs) ID() string { + return "minecraft:cobblestone_stairs" +} diff --git a/level/block/cobblestone_wall.go b/level/block/cobblestone_wall.go new file mode 100644 index 0000000..69fbc1f --- /dev/null +++ b/level/block/cobblestone_wall.go @@ -0,0 +1,14 @@ +package block + +type CobblestoneWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (CobblestoneWall) ID() string { + return "minecraft:cobblestone_wall" +} diff --git a/level/block/cobweb.go b/level/block/cobweb.go new file mode 100644 index 0000000..391fb67 --- /dev/null +++ b/level/block/cobweb.go @@ -0,0 +1,8 @@ +package block + +type Cobweb struct { +} + +func (Cobweb) ID() string { + return "minecraft:cobweb" +} diff --git a/level/block/cocoa.go b/level/block/cocoa.go new file mode 100644 index 0000000..bf6ca4c --- /dev/null +++ b/level/block/cocoa.go @@ -0,0 +1,10 @@ +package block + +type Cocoa struct { + Age string + Facing string +} + +func (Cocoa) ID() string { + return "minecraft:cocoa" +} diff --git a/level/block/command_block.go b/level/block/command_block.go new file mode 100644 index 0000000..c8eacb0 --- /dev/null +++ b/level/block/command_block.go @@ -0,0 +1,10 @@ +package block + +type CommandBlock struct { + Conditional string + Facing string +} + +func (CommandBlock) ID() string { + return "minecraft:command_block" +} diff --git a/level/block/comparator.go b/level/block/comparator.go new file mode 100644 index 0000000..e4bd706 --- /dev/null +++ b/level/block/comparator.go @@ -0,0 +1,11 @@ +package block + +type Comparator struct { + Facing string + Mode string + Powered string +} + +func (Comparator) ID() string { + return "minecraft:comparator" +} diff --git a/level/block/composter.go b/level/block/composter.go new file mode 100644 index 0000000..932c163 --- /dev/null +++ b/level/block/composter.go @@ -0,0 +1,9 @@ +package block + +type Composter struct { + Level string +} + +func (Composter) ID() string { + return "minecraft:composter" +} diff --git a/level/block/conduit.go b/level/block/conduit.go new file mode 100644 index 0000000..82f7040 --- /dev/null +++ b/level/block/conduit.go @@ -0,0 +1,9 @@ +package block + +type Conduit struct { + Waterlogged string +} + +func (Conduit) ID() string { + return "minecraft:conduit" +} diff --git a/level/block/copper_block.go b/level/block/copper_block.go new file mode 100644 index 0000000..682b2fd --- /dev/null +++ b/level/block/copper_block.go @@ -0,0 +1,8 @@ +package block + +type CopperBlock struct { +} + +func (CopperBlock) ID() string { + return "minecraft:copper_block" +} diff --git a/level/block/copper_ore.go b/level/block/copper_ore.go new file mode 100644 index 0000000..4cbb403 --- /dev/null +++ b/level/block/copper_ore.go @@ -0,0 +1,8 @@ +package block + +type CopperOre struct { +} + +func (CopperOre) ID() string { + return "minecraft:copper_ore" +} diff --git a/level/block/cornflower.go b/level/block/cornflower.go new file mode 100644 index 0000000..0280666 --- /dev/null +++ b/level/block/cornflower.go @@ -0,0 +1,8 @@ +package block + +type Cornflower struct { +} + +func (Cornflower) ID() string { + return "minecraft:cornflower" +} diff --git a/level/block/cracked_deepslate_bricks.go b/level/block/cracked_deepslate_bricks.go new file mode 100644 index 0000000..6ad474d --- /dev/null +++ b/level/block/cracked_deepslate_bricks.go @@ -0,0 +1,8 @@ +package block + +type CrackedDeepslateBricks struct { +} + +func (CrackedDeepslateBricks) ID() string { + return "minecraft:cracked_deepslate_bricks" +} diff --git a/level/block/cracked_deepslate_tiles.go b/level/block/cracked_deepslate_tiles.go new file mode 100644 index 0000000..45377d2 --- /dev/null +++ b/level/block/cracked_deepslate_tiles.go @@ -0,0 +1,8 @@ +package block + +type CrackedDeepslateTiles struct { +} + +func (CrackedDeepslateTiles) ID() string { + return "minecraft:cracked_deepslate_tiles" +} diff --git a/level/block/cracked_nether_bricks.go b/level/block/cracked_nether_bricks.go new file mode 100644 index 0000000..9574f00 --- /dev/null +++ b/level/block/cracked_nether_bricks.go @@ -0,0 +1,8 @@ +package block + +type CrackedNetherBricks struct { +} + +func (CrackedNetherBricks) ID() string { + return "minecraft:cracked_nether_bricks" +} diff --git a/level/block/cracked_polished_blackstone_bricks.go b/level/block/cracked_polished_blackstone_bricks.go new file mode 100644 index 0000000..6e70371 --- /dev/null +++ b/level/block/cracked_polished_blackstone_bricks.go @@ -0,0 +1,8 @@ +package block + +type CrackedPolishedBlackstoneBricks struct { +} + +func (CrackedPolishedBlackstoneBricks) ID() string { + return "minecraft:cracked_polished_blackstone_bricks" +} diff --git a/level/block/cracked_stone_bricks.go b/level/block/cracked_stone_bricks.go new file mode 100644 index 0000000..3a8c240 --- /dev/null +++ b/level/block/cracked_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type CrackedStoneBricks struct { +} + +func (CrackedStoneBricks) ID() string { + return "minecraft:cracked_stone_bricks" +} diff --git a/level/block/crafting_table.go b/level/block/crafting_table.go new file mode 100644 index 0000000..9fd2a81 --- /dev/null +++ b/level/block/crafting_table.go @@ -0,0 +1,8 @@ +package block + +type CraftingTable struct { +} + +func (CraftingTable) ID() string { + return "minecraft:crafting_table" +} diff --git a/level/block/creeper_head.go b/level/block/creeper_head.go new file mode 100644 index 0000000..839a9f9 --- /dev/null +++ b/level/block/creeper_head.go @@ -0,0 +1,9 @@ +package block + +type CreeperHead struct { + Rotation string +} + +func (CreeperHead) ID() string { + return "minecraft:creeper_head" +} diff --git a/level/block/creeper_wall_head.go b/level/block/creeper_wall_head.go new file mode 100644 index 0000000..7651f57 --- /dev/null +++ b/level/block/creeper_wall_head.go @@ -0,0 +1,9 @@ +package block + +type CreeperWallHead struct { + Facing string +} + +func (CreeperWallHead) ID() string { + return "minecraft:creeper_wall_head" +} diff --git a/level/block/crimson_button.go b/level/block/crimson_button.go new file mode 100644 index 0000000..f1ee6ba --- /dev/null +++ b/level/block/crimson_button.go @@ -0,0 +1,11 @@ +package block + +type CrimsonButton struct { + Face string + Facing string + Powered string +} + +func (CrimsonButton) ID() string { + return "minecraft:crimson_button" +} diff --git a/level/block/crimson_door.go b/level/block/crimson_door.go new file mode 100644 index 0000000..b3a1241 --- /dev/null +++ b/level/block/crimson_door.go @@ -0,0 +1,13 @@ +package block + +type CrimsonDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (CrimsonDoor) ID() string { + return "minecraft:crimson_door" +} diff --git a/level/block/crimson_fence.go b/level/block/crimson_fence.go new file mode 100644 index 0000000..81c3e7b --- /dev/null +++ b/level/block/crimson_fence.go @@ -0,0 +1,13 @@ +package block + +type CrimsonFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (CrimsonFence) ID() string { + return "minecraft:crimson_fence" +} diff --git a/level/block/crimson_fence_gate.go b/level/block/crimson_fence_gate.go new file mode 100644 index 0000000..7c95015 --- /dev/null +++ b/level/block/crimson_fence_gate.go @@ -0,0 +1,12 @@ +package block + +type CrimsonFenceGate struct { + Facing string + In_wall string + Open string + Powered string +} + +func (CrimsonFenceGate) ID() string { + return "minecraft:crimson_fence_gate" +} diff --git a/level/block/crimson_fungus.go b/level/block/crimson_fungus.go new file mode 100644 index 0000000..d1c7cb6 --- /dev/null +++ b/level/block/crimson_fungus.go @@ -0,0 +1,8 @@ +package block + +type CrimsonFungus struct { +} + +func (CrimsonFungus) ID() string { + return "minecraft:crimson_fungus" +} diff --git a/level/block/crimson_hyphae.go b/level/block/crimson_hyphae.go new file mode 100644 index 0000000..e64ee50 --- /dev/null +++ b/level/block/crimson_hyphae.go @@ -0,0 +1,9 @@ +package block + +type CrimsonHyphae struct { + Axis string +} + +func (CrimsonHyphae) ID() string { + return "minecraft:crimson_hyphae" +} diff --git a/level/block/crimson_nylium.go b/level/block/crimson_nylium.go new file mode 100644 index 0000000..d76f6e7 --- /dev/null +++ b/level/block/crimson_nylium.go @@ -0,0 +1,8 @@ +package block + +type CrimsonNylium struct { +} + +func (CrimsonNylium) ID() string { + return "minecraft:crimson_nylium" +} diff --git a/level/block/crimson_planks.go b/level/block/crimson_planks.go new file mode 100644 index 0000000..8598415 --- /dev/null +++ b/level/block/crimson_planks.go @@ -0,0 +1,8 @@ +package block + +type CrimsonPlanks struct { +} + +func (CrimsonPlanks) ID() string { + return "minecraft:crimson_planks" +} diff --git a/level/block/crimson_pressure_plate.go b/level/block/crimson_pressure_plate.go new file mode 100644 index 0000000..fa7ddb8 --- /dev/null +++ b/level/block/crimson_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type CrimsonPressurePlate struct { + Powered string +} + +func (CrimsonPressurePlate) ID() string { + return "minecraft:crimson_pressure_plate" +} diff --git a/level/block/crimson_roots.go b/level/block/crimson_roots.go new file mode 100644 index 0000000..15cc5e4 --- /dev/null +++ b/level/block/crimson_roots.go @@ -0,0 +1,8 @@ +package block + +type CrimsonRoots struct { +} + +func (CrimsonRoots) ID() string { + return "minecraft:crimson_roots" +} diff --git a/level/block/crimson_sign.go b/level/block/crimson_sign.go new file mode 100644 index 0000000..f2d76be --- /dev/null +++ b/level/block/crimson_sign.go @@ -0,0 +1,10 @@ +package block + +type CrimsonSign struct { + Rotation string + Waterlogged string +} + +func (CrimsonSign) ID() string { + return "minecraft:crimson_sign" +} diff --git a/level/block/crimson_slab.go b/level/block/crimson_slab.go new file mode 100644 index 0000000..534731e --- /dev/null +++ b/level/block/crimson_slab.go @@ -0,0 +1,10 @@ +package block + +type CrimsonSlab struct { + Type string + Waterlogged string +} + +func (CrimsonSlab) ID() string { + return "minecraft:crimson_slab" +} diff --git a/level/block/crimson_stairs.go b/level/block/crimson_stairs.go new file mode 100644 index 0000000..a49be8a --- /dev/null +++ b/level/block/crimson_stairs.go @@ -0,0 +1,12 @@ +package block + +type CrimsonStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (CrimsonStairs) ID() string { + return "minecraft:crimson_stairs" +} diff --git a/level/block/crimson_stem.go b/level/block/crimson_stem.go new file mode 100644 index 0000000..751f39f --- /dev/null +++ b/level/block/crimson_stem.go @@ -0,0 +1,9 @@ +package block + +type CrimsonStem struct { + Axis string +} + +func (CrimsonStem) ID() string { + return "minecraft:crimson_stem" +} diff --git a/level/block/crimson_trapdoor.go b/level/block/crimson_trapdoor.go new file mode 100644 index 0000000..d7d3abd --- /dev/null +++ b/level/block/crimson_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type CrimsonTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (CrimsonTrapdoor) ID() string { + return "minecraft:crimson_trapdoor" +} diff --git a/level/block/crimson_wall_sign.go b/level/block/crimson_wall_sign.go new file mode 100644 index 0000000..5814fb3 --- /dev/null +++ b/level/block/crimson_wall_sign.go @@ -0,0 +1,10 @@ +package block + +type CrimsonWallSign struct { + Facing string + Waterlogged string +} + +func (CrimsonWallSign) ID() string { + return "minecraft:crimson_wall_sign" +} diff --git a/level/block/crying_obsidian.go b/level/block/crying_obsidian.go new file mode 100644 index 0000000..04df381 --- /dev/null +++ b/level/block/crying_obsidian.go @@ -0,0 +1,8 @@ +package block + +type CryingObsidian struct { +} + +func (CryingObsidian) ID() string { + return "minecraft:crying_obsidian" +} diff --git a/level/block/cut_copper.go b/level/block/cut_copper.go new file mode 100644 index 0000000..369f17f --- /dev/null +++ b/level/block/cut_copper.go @@ -0,0 +1,8 @@ +package block + +type CutCopper struct { +} + +func (CutCopper) ID() string { + return "minecraft:cut_copper" +} diff --git a/level/block/cut_copper_slab.go b/level/block/cut_copper_slab.go new file mode 100644 index 0000000..470f434 --- /dev/null +++ b/level/block/cut_copper_slab.go @@ -0,0 +1,10 @@ +package block + +type CutCopperSlab struct { + Type string + Waterlogged string +} + +func (CutCopperSlab) ID() string { + return "minecraft:cut_copper_slab" +} diff --git a/level/block/cut_copper_stairs.go b/level/block/cut_copper_stairs.go new file mode 100644 index 0000000..0f88f3e --- /dev/null +++ b/level/block/cut_copper_stairs.go @@ -0,0 +1,12 @@ +package block + +type CutCopperStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (CutCopperStairs) ID() string { + return "minecraft:cut_copper_stairs" +} diff --git a/level/block/cut_red_sandstone.go b/level/block/cut_red_sandstone.go new file mode 100644 index 0000000..4c97521 --- /dev/null +++ b/level/block/cut_red_sandstone.go @@ -0,0 +1,8 @@ +package block + +type CutRedSandstone struct { +} + +func (CutRedSandstone) ID() string { + return "minecraft:cut_red_sandstone" +} diff --git a/level/block/cut_red_sandstone_slab.go b/level/block/cut_red_sandstone_slab.go new file mode 100644 index 0000000..275e3b6 --- /dev/null +++ b/level/block/cut_red_sandstone_slab.go @@ -0,0 +1,10 @@ +package block + +type CutRedSandstoneSlab struct { + Type string + Waterlogged string +} + +func (CutRedSandstoneSlab) ID() string { + return "minecraft:cut_red_sandstone_slab" +} diff --git a/level/block/cut_sandstone.go b/level/block/cut_sandstone.go new file mode 100644 index 0000000..6931109 --- /dev/null +++ b/level/block/cut_sandstone.go @@ -0,0 +1,8 @@ +package block + +type CutSandstone struct { +} + +func (CutSandstone) ID() string { + return "minecraft:cut_sandstone" +} diff --git a/level/block/cut_sandstone_slab.go b/level/block/cut_sandstone_slab.go new file mode 100644 index 0000000..9d89fb8 --- /dev/null +++ b/level/block/cut_sandstone_slab.go @@ -0,0 +1,10 @@ +package block + +type CutSandstoneSlab struct { + Type string + Waterlogged string +} + +func (CutSandstoneSlab) ID() string { + return "minecraft:cut_sandstone_slab" +} diff --git a/level/block/cyan_banner.go b/level/block/cyan_banner.go new file mode 100644 index 0000000..d838437 --- /dev/null +++ b/level/block/cyan_banner.go @@ -0,0 +1,9 @@ +package block + +type CyanBanner struct { + Rotation string +} + +func (CyanBanner) ID() string { + return "minecraft:cyan_banner" +} diff --git a/level/block/cyan_bed.go b/level/block/cyan_bed.go new file mode 100644 index 0000000..3fb92d6 --- /dev/null +++ b/level/block/cyan_bed.go @@ -0,0 +1,11 @@ +package block + +type CyanBed struct { + Facing string + Occupied string + Part string +} + +func (CyanBed) ID() string { + return "minecraft:cyan_bed" +} diff --git a/level/block/cyan_candle.go b/level/block/cyan_candle.go new file mode 100644 index 0000000..e6161a6 --- /dev/null +++ b/level/block/cyan_candle.go @@ -0,0 +1,11 @@ +package block + +type CyanCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (CyanCandle) ID() string { + return "minecraft:cyan_candle" +} diff --git a/level/block/cyan_candle_cake.go b/level/block/cyan_candle_cake.go new file mode 100644 index 0000000..a5e8336 --- /dev/null +++ b/level/block/cyan_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type CyanCandleCake struct { + Lit string +} + +func (CyanCandleCake) ID() string { + return "minecraft:cyan_candle_cake" +} diff --git a/level/block/cyan_carpet.go b/level/block/cyan_carpet.go new file mode 100644 index 0000000..4b0bdc3 --- /dev/null +++ b/level/block/cyan_carpet.go @@ -0,0 +1,8 @@ +package block + +type CyanCarpet struct { +} + +func (CyanCarpet) ID() string { + return "minecraft:cyan_carpet" +} diff --git a/level/block/cyan_concrete.go b/level/block/cyan_concrete.go new file mode 100644 index 0000000..9c5d278 --- /dev/null +++ b/level/block/cyan_concrete.go @@ -0,0 +1,8 @@ +package block + +type CyanConcrete struct { +} + +func (CyanConcrete) ID() string { + return "minecraft:cyan_concrete" +} diff --git a/level/block/cyan_concrete_powder.go b/level/block/cyan_concrete_powder.go new file mode 100644 index 0000000..bb7265f --- /dev/null +++ b/level/block/cyan_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type CyanConcretePowder struct { +} + +func (CyanConcretePowder) ID() string { + return "minecraft:cyan_concrete_powder" +} diff --git a/level/block/cyan_glazed_terracotta.go b/level/block/cyan_glazed_terracotta.go new file mode 100644 index 0000000..7ebe58e --- /dev/null +++ b/level/block/cyan_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type CyanGlazedTerracotta struct { + Facing string +} + +func (CyanGlazedTerracotta) ID() string { + return "minecraft:cyan_glazed_terracotta" +} diff --git a/level/block/cyan_shulker_box.go b/level/block/cyan_shulker_box.go new file mode 100644 index 0000000..4856f06 --- /dev/null +++ b/level/block/cyan_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type CyanShulkerBox struct { + Facing string +} + +func (CyanShulkerBox) ID() string { + return "minecraft:cyan_shulker_box" +} diff --git a/level/block/cyan_stained_glass.go b/level/block/cyan_stained_glass.go new file mode 100644 index 0000000..e46de13 --- /dev/null +++ b/level/block/cyan_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type CyanStainedGlass struct { +} + +func (CyanStainedGlass) ID() string { + return "minecraft:cyan_stained_glass" +} diff --git a/level/block/cyan_stained_glass_pane.go b/level/block/cyan_stained_glass_pane.go new file mode 100644 index 0000000..8c43805 --- /dev/null +++ b/level/block/cyan_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type CyanStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (CyanStainedGlassPane) ID() string { + return "minecraft:cyan_stained_glass_pane" +} diff --git a/level/block/cyan_terracotta.go b/level/block/cyan_terracotta.go new file mode 100644 index 0000000..7adea05 --- /dev/null +++ b/level/block/cyan_terracotta.go @@ -0,0 +1,8 @@ +package block + +type CyanTerracotta struct { +} + +func (CyanTerracotta) ID() string { + return "minecraft:cyan_terracotta" +} diff --git a/level/block/cyan_wall_banner.go b/level/block/cyan_wall_banner.go new file mode 100644 index 0000000..1251135 --- /dev/null +++ b/level/block/cyan_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type CyanWallBanner struct { + Facing string +} + +func (CyanWallBanner) ID() string { + return "minecraft:cyan_wall_banner" +} diff --git a/level/block/cyan_wool.go b/level/block/cyan_wool.go new file mode 100644 index 0000000..03f57ea --- /dev/null +++ b/level/block/cyan_wool.go @@ -0,0 +1,8 @@ +package block + +type CyanWool struct { +} + +func (CyanWool) ID() string { + return "minecraft:cyan_wool" +} diff --git a/level/block/damaged_anvil.go b/level/block/damaged_anvil.go new file mode 100644 index 0000000..90728db --- /dev/null +++ b/level/block/damaged_anvil.go @@ -0,0 +1,9 @@ +package block + +type DamagedAnvil struct { + Facing string +} + +func (DamagedAnvil) ID() string { + return "minecraft:damaged_anvil" +} diff --git a/level/block/dandelion.go b/level/block/dandelion.go new file mode 100644 index 0000000..c5bed31 --- /dev/null +++ b/level/block/dandelion.go @@ -0,0 +1,8 @@ +package block + +type Dandelion struct { +} + +func (Dandelion) ID() string { + return "minecraft:dandelion" +} diff --git a/level/block/dark_oak_button.go b/level/block/dark_oak_button.go new file mode 100644 index 0000000..30ef873 --- /dev/null +++ b/level/block/dark_oak_button.go @@ -0,0 +1,11 @@ +package block + +type DarkOakButton struct { + Face string + Facing string + Powered string +} + +func (DarkOakButton) ID() string { + return "minecraft:dark_oak_button" +} diff --git a/level/block/dark_oak_door.go b/level/block/dark_oak_door.go new file mode 100644 index 0000000..89533da --- /dev/null +++ b/level/block/dark_oak_door.go @@ -0,0 +1,13 @@ +package block + +type DarkOakDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (DarkOakDoor) ID() string { + return "minecraft:dark_oak_door" +} diff --git a/level/block/dark_oak_fence.go b/level/block/dark_oak_fence.go new file mode 100644 index 0000000..bfe141e --- /dev/null +++ b/level/block/dark_oak_fence.go @@ -0,0 +1,13 @@ +package block + +type DarkOakFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (DarkOakFence) ID() string { + return "minecraft:dark_oak_fence" +} diff --git a/level/block/dark_oak_fence_gate.go b/level/block/dark_oak_fence_gate.go new file mode 100644 index 0000000..4a73e9b --- /dev/null +++ b/level/block/dark_oak_fence_gate.go @@ -0,0 +1,12 @@ +package block + +type DarkOakFenceGate struct { + Facing string + In_wall string + Open string + Powered string +} + +func (DarkOakFenceGate) ID() string { + return "minecraft:dark_oak_fence_gate" +} diff --git a/level/block/dark_oak_leaves.go b/level/block/dark_oak_leaves.go new file mode 100644 index 0000000..00cfe38 --- /dev/null +++ b/level/block/dark_oak_leaves.go @@ -0,0 +1,10 @@ +package block + +type DarkOakLeaves struct { + Distance string + Persistent string +} + +func (DarkOakLeaves) ID() string { + return "minecraft:dark_oak_leaves" +} diff --git a/level/block/dark_oak_log.go b/level/block/dark_oak_log.go new file mode 100644 index 0000000..542ba3f --- /dev/null +++ b/level/block/dark_oak_log.go @@ -0,0 +1,9 @@ +package block + +type DarkOakLog struct { + Axis string +} + +func (DarkOakLog) ID() string { + return "minecraft:dark_oak_log" +} diff --git a/level/block/dark_oak_planks.go b/level/block/dark_oak_planks.go new file mode 100644 index 0000000..3817b71 --- /dev/null +++ b/level/block/dark_oak_planks.go @@ -0,0 +1,8 @@ +package block + +type DarkOakPlanks struct { +} + +func (DarkOakPlanks) ID() string { + return "minecraft:dark_oak_planks" +} diff --git a/level/block/dark_oak_pressure_plate.go b/level/block/dark_oak_pressure_plate.go new file mode 100644 index 0000000..4f79f72 --- /dev/null +++ b/level/block/dark_oak_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type DarkOakPressurePlate struct { + Powered string +} + +func (DarkOakPressurePlate) ID() string { + return "minecraft:dark_oak_pressure_plate" +} diff --git a/level/block/dark_oak_sapling.go b/level/block/dark_oak_sapling.go new file mode 100644 index 0000000..ec45a39 --- /dev/null +++ b/level/block/dark_oak_sapling.go @@ -0,0 +1,9 @@ +package block + +type DarkOakSapling struct { + Stage string +} + +func (DarkOakSapling) ID() string { + return "minecraft:dark_oak_sapling" +} diff --git a/level/block/dark_oak_sign.go b/level/block/dark_oak_sign.go new file mode 100644 index 0000000..bd7642f --- /dev/null +++ b/level/block/dark_oak_sign.go @@ -0,0 +1,10 @@ +package block + +type DarkOakSign struct { + Rotation string + Waterlogged string +} + +func (DarkOakSign) ID() string { + return "minecraft:dark_oak_sign" +} diff --git a/level/block/dark_oak_slab.go b/level/block/dark_oak_slab.go new file mode 100644 index 0000000..f31310c --- /dev/null +++ b/level/block/dark_oak_slab.go @@ -0,0 +1,10 @@ +package block + +type DarkOakSlab struct { + Type string + Waterlogged string +} + +func (DarkOakSlab) ID() string { + return "minecraft:dark_oak_slab" +} diff --git a/level/block/dark_oak_stairs.go b/level/block/dark_oak_stairs.go new file mode 100644 index 0000000..3dc7e03 --- /dev/null +++ b/level/block/dark_oak_stairs.go @@ -0,0 +1,12 @@ +package block + +type DarkOakStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (DarkOakStairs) ID() string { + return "minecraft:dark_oak_stairs" +} diff --git a/level/block/dark_oak_trapdoor.go b/level/block/dark_oak_trapdoor.go new file mode 100644 index 0000000..28eb33e --- /dev/null +++ b/level/block/dark_oak_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type DarkOakTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (DarkOakTrapdoor) ID() string { + return "minecraft:dark_oak_trapdoor" +} diff --git a/level/block/dark_oak_wall_sign.go b/level/block/dark_oak_wall_sign.go new file mode 100644 index 0000000..a902799 --- /dev/null +++ b/level/block/dark_oak_wall_sign.go @@ -0,0 +1,10 @@ +package block + +type DarkOakWallSign struct { + Facing string + Waterlogged string +} + +func (DarkOakWallSign) ID() string { + return "minecraft:dark_oak_wall_sign" +} diff --git a/level/block/dark_oak_wood.go b/level/block/dark_oak_wood.go new file mode 100644 index 0000000..be3706f --- /dev/null +++ b/level/block/dark_oak_wood.go @@ -0,0 +1,9 @@ +package block + +type DarkOakWood struct { + Axis string +} + +func (DarkOakWood) ID() string { + return "minecraft:dark_oak_wood" +} diff --git a/level/block/dark_prismarine.go b/level/block/dark_prismarine.go new file mode 100644 index 0000000..3344575 --- /dev/null +++ b/level/block/dark_prismarine.go @@ -0,0 +1,8 @@ +package block + +type DarkPrismarine struct { +} + +func (DarkPrismarine) ID() string { + return "minecraft:dark_prismarine" +} diff --git a/level/block/dark_prismarine_slab.go b/level/block/dark_prismarine_slab.go new file mode 100644 index 0000000..0204491 --- /dev/null +++ b/level/block/dark_prismarine_slab.go @@ -0,0 +1,10 @@ +package block + +type DarkPrismarineSlab struct { + Type string + Waterlogged string +} + +func (DarkPrismarineSlab) ID() string { + return "minecraft:dark_prismarine_slab" +} diff --git a/level/block/dark_prismarine_stairs.go b/level/block/dark_prismarine_stairs.go new file mode 100644 index 0000000..1834216 --- /dev/null +++ b/level/block/dark_prismarine_stairs.go @@ -0,0 +1,12 @@ +package block + +type DarkPrismarineStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (DarkPrismarineStairs) ID() string { + return "minecraft:dark_prismarine_stairs" +} diff --git a/level/block/daylight_detector.go b/level/block/daylight_detector.go new file mode 100644 index 0000000..e480d20 --- /dev/null +++ b/level/block/daylight_detector.go @@ -0,0 +1,10 @@ +package block + +type DaylightDetector struct { + Inverted string + Power string +} + +func (DaylightDetector) ID() string { + return "minecraft:daylight_detector" +} diff --git a/level/block/dead_brain_coral.go b/level/block/dead_brain_coral.go new file mode 100644 index 0000000..3b004ef --- /dev/null +++ b/level/block/dead_brain_coral.go @@ -0,0 +1,9 @@ +package block + +type DeadBrainCoral struct { + Waterlogged string +} + +func (DeadBrainCoral) ID() string { + return "minecraft:dead_brain_coral" +} diff --git a/level/block/dead_brain_coral_block.go b/level/block/dead_brain_coral_block.go new file mode 100644 index 0000000..ac4ea7d --- /dev/null +++ b/level/block/dead_brain_coral_block.go @@ -0,0 +1,8 @@ +package block + +type DeadBrainCoralBlock struct { +} + +func (DeadBrainCoralBlock) ID() string { + return "minecraft:dead_brain_coral_block" +} diff --git a/level/block/dead_brain_coral_fan.go b/level/block/dead_brain_coral_fan.go new file mode 100644 index 0000000..f162583 --- /dev/null +++ b/level/block/dead_brain_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type DeadBrainCoralFan struct { + Waterlogged string +} + +func (DeadBrainCoralFan) ID() string { + return "minecraft:dead_brain_coral_fan" +} diff --git a/level/block/dead_brain_coral_wall_fan.go b/level/block/dead_brain_coral_wall_fan.go new file mode 100644 index 0000000..4cc3577 --- /dev/null +++ b/level/block/dead_brain_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type DeadBrainCoralWallFan struct { + Facing string + Waterlogged string +} + +func (DeadBrainCoralWallFan) ID() string { + return "minecraft:dead_brain_coral_wall_fan" +} diff --git a/level/block/dead_bubble_coral.go b/level/block/dead_bubble_coral.go new file mode 100644 index 0000000..8b20b61 --- /dev/null +++ b/level/block/dead_bubble_coral.go @@ -0,0 +1,9 @@ +package block + +type DeadBubbleCoral struct { + Waterlogged string +} + +func (DeadBubbleCoral) ID() string { + return "minecraft:dead_bubble_coral" +} diff --git a/level/block/dead_bubble_coral_block.go b/level/block/dead_bubble_coral_block.go new file mode 100644 index 0000000..e1af67d --- /dev/null +++ b/level/block/dead_bubble_coral_block.go @@ -0,0 +1,8 @@ +package block + +type DeadBubbleCoralBlock struct { +} + +func (DeadBubbleCoralBlock) ID() string { + return "minecraft:dead_bubble_coral_block" +} diff --git a/level/block/dead_bubble_coral_fan.go b/level/block/dead_bubble_coral_fan.go new file mode 100644 index 0000000..ad232de --- /dev/null +++ b/level/block/dead_bubble_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type DeadBubbleCoralFan struct { + Waterlogged string +} + +func (DeadBubbleCoralFan) ID() string { + return "minecraft:dead_bubble_coral_fan" +} diff --git a/level/block/dead_bubble_coral_wall_fan.go b/level/block/dead_bubble_coral_wall_fan.go new file mode 100644 index 0000000..3d4551a --- /dev/null +++ b/level/block/dead_bubble_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type DeadBubbleCoralWallFan struct { + Facing string + Waterlogged string +} + +func (DeadBubbleCoralWallFan) ID() string { + return "minecraft:dead_bubble_coral_wall_fan" +} diff --git a/level/block/dead_bush.go b/level/block/dead_bush.go new file mode 100644 index 0000000..d4f9ebc --- /dev/null +++ b/level/block/dead_bush.go @@ -0,0 +1,8 @@ +package block + +type DeadBush struct { +} + +func (DeadBush) ID() string { + return "minecraft:dead_bush" +} diff --git a/level/block/dead_fire_coral.go b/level/block/dead_fire_coral.go new file mode 100644 index 0000000..b4ebbdb --- /dev/null +++ b/level/block/dead_fire_coral.go @@ -0,0 +1,9 @@ +package block + +type DeadFireCoral struct { + Waterlogged string +} + +func (DeadFireCoral) ID() string { + return "minecraft:dead_fire_coral" +} diff --git a/level/block/dead_fire_coral_block.go b/level/block/dead_fire_coral_block.go new file mode 100644 index 0000000..efd3845 --- /dev/null +++ b/level/block/dead_fire_coral_block.go @@ -0,0 +1,8 @@ +package block + +type DeadFireCoralBlock struct { +} + +func (DeadFireCoralBlock) ID() string { + return "minecraft:dead_fire_coral_block" +} diff --git a/level/block/dead_fire_coral_fan.go b/level/block/dead_fire_coral_fan.go new file mode 100644 index 0000000..93b5c04 --- /dev/null +++ b/level/block/dead_fire_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type DeadFireCoralFan struct { + Waterlogged string +} + +func (DeadFireCoralFan) ID() string { + return "minecraft:dead_fire_coral_fan" +} diff --git a/level/block/dead_fire_coral_wall_fan.go b/level/block/dead_fire_coral_wall_fan.go new file mode 100644 index 0000000..8537f94 --- /dev/null +++ b/level/block/dead_fire_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type DeadFireCoralWallFan struct { + Facing string + Waterlogged string +} + +func (DeadFireCoralWallFan) ID() string { + return "minecraft:dead_fire_coral_wall_fan" +} diff --git a/level/block/dead_horn_coral.go b/level/block/dead_horn_coral.go new file mode 100644 index 0000000..1f2b08f --- /dev/null +++ b/level/block/dead_horn_coral.go @@ -0,0 +1,9 @@ +package block + +type DeadHornCoral struct { + Waterlogged string +} + +func (DeadHornCoral) ID() string { + return "minecraft:dead_horn_coral" +} diff --git a/level/block/dead_horn_coral_block.go b/level/block/dead_horn_coral_block.go new file mode 100644 index 0000000..d6f7fe1 --- /dev/null +++ b/level/block/dead_horn_coral_block.go @@ -0,0 +1,8 @@ +package block + +type DeadHornCoralBlock struct { +} + +func (DeadHornCoralBlock) ID() string { + return "minecraft:dead_horn_coral_block" +} diff --git a/level/block/dead_horn_coral_fan.go b/level/block/dead_horn_coral_fan.go new file mode 100644 index 0000000..ea21da5 --- /dev/null +++ b/level/block/dead_horn_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type DeadHornCoralFan struct { + Waterlogged string +} + +func (DeadHornCoralFan) ID() string { + return "minecraft:dead_horn_coral_fan" +} diff --git a/level/block/dead_horn_coral_wall_fan.go b/level/block/dead_horn_coral_wall_fan.go new file mode 100644 index 0000000..48df3ca --- /dev/null +++ b/level/block/dead_horn_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type DeadHornCoralWallFan struct { + Facing string + Waterlogged string +} + +func (DeadHornCoralWallFan) ID() string { + return "minecraft:dead_horn_coral_wall_fan" +} diff --git a/level/block/dead_tube_coral.go b/level/block/dead_tube_coral.go new file mode 100644 index 0000000..62eea0e --- /dev/null +++ b/level/block/dead_tube_coral.go @@ -0,0 +1,9 @@ +package block + +type DeadTubeCoral struct { + Waterlogged string +} + +func (DeadTubeCoral) ID() string { + return "minecraft:dead_tube_coral" +} diff --git a/level/block/dead_tube_coral_block.go b/level/block/dead_tube_coral_block.go new file mode 100644 index 0000000..fb069d9 --- /dev/null +++ b/level/block/dead_tube_coral_block.go @@ -0,0 +1,8 @@ +package block + +type DeadTubeCoralBlock struct { +} + +func (DeadTubeCoralBlock) ID() string { + return "minecraft:dead_tube_coral_block" +} diff --git a/level/block/dead_tube_coral_fan.go b/level/block/dead_tube_coral_fan.go new file mode 100644 index 0000000..ac64c05 --- /dev/null +++ b/level/block/dead_tube_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type DeadTubeCoralFan struct { + Waterlogged string +} + +func (DeadTubeCoralFan) ID() string { + return "minecraft:dead_tube_coral_fan" +} diff --git a/level/block/dead_tube_coral_wall_fan.go b/level/block/dead_tube_coral_wall_fan.go new file mode 100644 index 0000000..2f08e0f --- /dev/null +++ b/level/block/dead_tube_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type DeadTubeCoralWallFan struct { + Facing string + Waterlogged string +} + +func (DeadTubeCoralWallFan) ID() string { + return "minecraft:dead_tube_coral_wall_fan" +} diff --git a/level/block/deepslate.go b/level/block/deepslate.go new file mode 100644 index 0000000..8274bf6 --- /dev/null +++ b/level/block/deepslate.go @@ -0,0 +1,9 @@ +package block + +type Deepslate struct { + Axis string +} + +func (Deepslate) ID() string { + return "minecraft:deepslate" +} diff --git a/level/block/deepslate_brick_slab.go b/level/block/deepslate_brick_slab.go new file mode 100644 index 0000000..3f8042a --- /dev/null +++ b/level/block/deepslate_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type DeepslateBrickSlab struct { + Type string + Waterlogged string +} + +func (DeepslateBrickSlab) ID() string { + return "minecraft:deepslate_brick_slab" +} diff --git a/level/block/deepslate_brick_stairs.go b/level/block/deepslate_brick_stairs.go new file mode 100644 index 0000000..c55f00c --- /dev/null +++ b/level/block/deepslate_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type DeepslateBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (DeepslateBrickStairs) ID() string { + return "minecraft:deepslate_brick_stairs" +} diff --git a/level/block/deepslate_brick_wall.go b/level/block/deepslate_brick_wall.go new file mode 100644 index 0000000..2d49d9b --- /dev/null +++ b/level/block/deepslate_brick_wall.go @@ -0,0 +1,14 @@ +package block + +type DeepslateBrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (DeepslateBrickWall) ID() string { + return "minecraft:deepslate_brick_wall" +} diff --git a/level/block/deepslate_bricks.go b/level/block/deepslate_bricks.go new file mode 100644 index 0000000..7b1f1d2 --- /dev/null +++ b/level/block/deepslate_bricks.go @@ -0,0 +1,8 @@ +package block + +type DeepslateBricks struct { +} + +func (DeepslateBricks) ID() string { + return "minecraft:deepslate_bricks" +} diff --git a/level/block/deepslate_coal_ore.go b/level/block/deepslate_coal_ore.go new file mode 100644 index 0000000..ef90d33 --- /dev/null +++ b/level/block/deepslate_coal_ore.go @@ -0,0 +1,8 @@ +package block + +type DeepslateCoalOre struct { +} + +func (DeepslateCoalOre) ID() string { + return "minecraft:deepslate_coal_ore" +} diff --git a/level/block/deepslate_copper_ore.go b/level/block/deepslate_copper_ore.go new file mode 100644 index 0000000..86739fc --- /dev/null +++ b/level/block/deepslate_copper_ore.go @@ -0,0 +1,8 @@ +package block + +type DeepslateCopperOre struct { +} + +func (DeepslateCopperOre) ID() string { + return "minecraft:deepslate_copper_ore" +} diff --git a/level/block/deepslate_diamond_ore.go b/level/block/deepslate_diamond_ore.go new file mode 100644 index 0000000..2ee945a --- /dev/null +++ b/level/block/deepslate_diamond_ore.go @@ -0,0 +1,8 @@ +package block + +type DeepslateDiamondOre struct { +} + +func (DeepslateDiamondOre) ID() string { + return "minecraft:deepslate_diamond_ore" +} diff --git a/level/block/deepslate_emerald_ore.go b/level/block/deepslate_emerald_ore.go new file mode 100644 index 0000000..233f13b --- /dev/null +++ b/level/block/deepslate_emerald_ore.go @@ -0,0 +1,8 @@ +package block + +type DeepslateEmeraldOre struct { +} + +func (DeepslateEmeraldOre) ID() string { + return "minecraft:deepslate_emerald_ore" +} diff --git a/level/block/deepslate_gold_ore.go b/level/block/deepslate_gold_ore.go new file mode 100644 index 0000000..50fbd4c --- /dev/null +++ b/level/block/deepslate_gold_ore.go @@ -0,0 +1,8 @@ +package block + +type DeepslateGoldOre struct { +} + +func (DeepslateGoldOre) ID() string { + return "minecraft:deepslate_gold_ore" +} diff --git a/level/block/deepslate_iron_ore.go b/level/block/deepslate_iron_ore.go new file mode 100644 index 0000000..b9e8e86 --- /dev/null +++ b/level/block/deepslate_iron_ore.go @@ -0,0 +1,8 @@ +package block + +type DeepslateIronOre struct { +} + +func (DeepslateIronOre) ID() string { + return "minecraft:deepslate_iron_ore" +} diff --git a/level/block/deepslate_lapis_ore.go b/level/block/deepslate_lapis_ore.go new file mode 100644 index 0000000..6c655b9 --- /dev/null +++ b/level/block/deepslate_lapis_ore.go @@ -0,0 +1,8 @@ +package block + +type DeepslateLapisOre struct { +} + +func (DeepslateLapisOre) ID() string { + return "minecraft:deepslate_lapis_ore" +} diff --git a/level/block/deepslate_redstone_ore.go b/level/block/deepslate_redstone_ore.go new file mode 100644 index 0000000..e151ff0 --- /dev/null +++ b/level/block/deepslate_redstone_ore.go @@ -0,0 +1,9 @@ +package block + +type DeepslateRedstoneOre struct { + Lit string +} + +func (DeepslateRedstoneOre) ID() string { + return "minecraft:deepslate_redstone_ore" +} diff --git a/level/block/deepslate_tile_slab.go b/level/block/deepslate_tile_slab.go new file mode 100644 index 0000000..19df79f --- /dev/null +++ b/level/block/deepslate_tile_slab.go @@ -0,0 +1,10 @@ +package block + +type DeepslateTileSlab struct { + Type string + Waterlogged string +} + +func (DeepslateTileSlab) ID() string { + return "minecraft:deepslate_tile_slab" +} diff --git a/level/block/deepslate_tile_stairs.go b/level/block/deepslate_tile_stairs.go new file mode 100644 index 0000000..cc8ef0d --- /dev/null +++ b/level/block/deepslate_tile_stairs.go @@ -0,0 +1,12 @@ +package block + +type DeepslateTileStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (DeepslateTileStairs) ID() string { + return "minecraft:deepslate_tile_stairs" +} diff --git a/level/block/deepslate_tile_wall.go b/level/block/deepslate_tile_wall.go new file mode 100644 index 0000000..429816d --- /dev/null +++ b/level/block/deepslate_tile_wall.go @@ -0,0 +1,14 @@ +package block + +type DeepslateTileWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (DeepslateTileWall) ID() string { + return "minecraft:deepslate_tile_wall" +} diff --git a/level/block/deepslate_tiles.go b/level/block/deepslate_tiles.go new file mode 100644 index 0000000..572d0a2 --- /dev/null +++ b/level/block/deepslate_tiles.go @@ -0,0 +1,8 @@ +package block + +type DeepslateTiles struct { +} + +func (DeepslateTiles) ID() string { + return "minecraft:deepslate_tiles" +} diff --git a/level/block/detector_rail.go b/level/block/detector_rail.go new file mode 100644 index 0000000..f65de6a --- /dev/null +++ b/level/block/detector_rail.go @@ -0,0 +1,11 @@ +package block + +type DetectorRail struct { + Powered string + Shape string + Waterlogged string +} + +func (DetectorRail) ID() string { + return "minecraft:detector_rail" +} diff --git a/level/block/diamond_block.go b/level/block/diamond_block.go new file mode 100644 index 0000000..077cf54 --- /dev/null +++ b/level/block/diamond_block.go @@ -0,0 +1,8 @@ +package block + +type DiamondBlock struct { +} + +func (DiamondBlock) ID() string { + return "minecraft:diamond_block" +} diff --git a/level/block/diamond_ore.go b/level/block/diamond_ore.go new file mode 100644 index 0000000..3f069c6 --- /dev/null +++ b/level/block/diamond_ore.go @@ -0,0 +1,8 @@ +package block + +type DiamondOre struct { +} + +func (DiamondOre) ID() string { + return "minecraft:diamond_ore" +} diff --git a/level/block/diorite.go b/level/block/diorite.go new file mode 100644 index 0000000..160cb0e --- /dev/null +++ b/level/block/diorite.go @@ -0,0 +1,8 @@ +package block + +type Diorite struct { +} + +func (Diorite) ID() string { + return "minecraft:diorite" +} diff --git a/level/block/diorite_slab.go b/level/block/diorite_slab.go new file mode 100644 index 0000000..54158d7 --- /dev/null +++ b/level/block/diorite_slab.go @@ -0,0 +1,10 @@ +package block + +type DioriteSlab struct { + Type string + Waterlogged string +} + +func (DioriteSlab) ID() string { + return "minecraft:diorite_slab" +} diff --git a/level/block/diorite_stairs.go b/level/block/diorite_stairs.go new file mode 100644 index 0000000..ff7bfec --- /dev/null +++ b/level/block/diorite_stairs.go @@ -0,0 +1,12 @@ +package block + +type DioriteStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (DioriteStairs) ID() string { + return "minecraft:diorite_stairs" +} diff --git a/level/block/diorite_wall.go b/level/block/diorite_wall.go new file mode 100644 index 0000000..62ad39d --- /dev/null +++ b/level/block/diorite_wall.go @@ -0,0 +1,14 @@ +package block + +type DioriteWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (DioriteWall) ID() string { + return "minecraft:diorite_wall" +} diff --git a/level/block/dirt.go b/level/block/dirt.go new file mode 100644 index 0000000..2af6fed --- /dev/null +++ b/level/block/dirt.go @@ -0,0 +1,8 @@ +package block + +type Dirt struct { +} + +func (Dirt) ID() string { + return "minecraft:dirt" +} diff --git a/level/block/dirt_path.go b/level/block/dirt_path.go new file mode 100644 index 0000000..537539f --- /dev/null +++ b/level/block/dirt_path.go @@ -0,0 +1,8 @@ +package block + +type DirtPath struct { +} + +func (DirtPath) ID() string { + return "minecraft:dirt_path" +} diff --git a/level/block/dispenser.go b/level/block/dispenser.go new file mode 100644 index 0000000..03a4ce5 --- /dev/null +++ b/level/block/dispenser.go @@ -0,0 +1,10 @@ +package block + +type Dispenser struct { + Facing string + Triggered string +} + +func (Dispenser) ID() string { + return "minecraft:dispenser" +} diff --git a/level/block/dragon_egg.go b/level/block/dragon_egg.go new file mode 100644 index 0000000..2dc5c14 --- /dev/null +++ b/level/block/dragon_egg.go @@ -0,0 +1,8 @@ +package block + +type DragonEgg struct { +} + +func (DragonEgg) ID() string { + return "minecraft:dragon_egg" +} diff --git a/level/block/dragon_head.go b/level/block/dragon_head.go new file mode 100644 index 0000000..d71d7a2 --- /dev/null +++ b/level/block/dragon_head.go @@ -0,0 +1,9 @@ +package block + +type DragonHead struct { + Rotation string +} + +func (DragonHead) ID() string { + return "minecraft:dragon_head" +} diff --git a/level/block/dragon_wall_head.go b/level/block/dragon_wall_head.go new file mode 100644 index 0000000..e7a9c3a --- /dev/null +++ b/level/block/dragon_wall_head.go @@ -0,0 +1,9 @@ +package block + +type DragonWallHead struct { + Facing string +} + +func (DragonWallHead) ID() string { + return "minecraft:dragon_wall_head" +} diff --git a/level/block/dried_kelp_block.go b/level/block/dried_kelp_block.go new file mode 100644 index 0000000..abcf7f7 --- /dev/null +++ b/level/block/dried_kelp_block.go @@ -0,0 +1,8 @@ +package block + +type DriedKelpBlock struct { +} + +func (DriedKelpBlock) ID() string { + return "minecraft:dried_kelp_block" +} diff --git a/level/block/dripstone_block.go b/level/block/dripstone_block.go new file mode 100644 index 0000000..f0ca34b --- /dev/null +++ b/level/block/dripstone_block.go @@ -0,0 +1,8 @@ +package block + +type DripstoneBlock struct { +} + +func (DripstoneBlock) ID() string { + return "minecraft:dripstone_block" +} diff --git a/level/block/dropper.go b/level/block/dropper.go new file mode 100644 index 0000000..d4fee3d --- /dev/null +++ b/level/block/dropper.go @@ -0,0 +1,10 @@ +package block + +type Dropper struct { + Facing string + Triggered string +} + +func (Dropper) ID() string { + return "minecraft:dropper" +} diff --git a/level/block/emerald_block.go b/level/block/emerald_block.go new file mode 100644 index 0000000..7692b7e --- /dev/null +++ b/level/block/emerald_block.go @@ -0,0 +1,8 @@ +package block + +type EmeraldBlock struct { +} + +func (EmeraldBlock) ID() string { + return "minecraft:emerald_block" +} diff --git a/level/block/emerald_ore.go b/level/block/emerald_ore.go new file mode 100644 index 0000000..00a7c4b --- /dev/null +++ b/level/block/emerald_ore.go @@ -0,0 +1,8 @@ +package block + +type EmeraldOre struct { +} + +func (EmeraldOre) ID() string { + return "minecraft:emerald_ore" +} diff --git a/level/block/enchanting_table.go b/level/block/enchanting_table.go new file mode 100644 index 0000000..07074de --- /dev/null +++ b/level/block/enchanting_table.go @@ -0,0 +1,8 @@ +package block + +type EnchantingTable struct { +} + +func (EnchantingTable) ID() string { + return "minecraft:enchanting_table" +} diff --git a/level/block/end_gateway.go b/level/block/end_gateway.go new file mode 100644 index 0000000..81d2a8d --- /dev/null +++ b/level/block/end_gateway.go @@ -0,0 +1,8 @@ +package block + +type EndGateway struct { +} + +func (EndGateway) ID() string { + return "minecraft:end_gateway" +} diff --git a/level/block/end_portal.go b/level/block/end_portal.go new file mode 100644 index 0000000..24b8b68 --- /dev/null +++ b/level/block/end_portal.go @@ -0,0 +1,8 @@ +package block + +type EndPortal struct { +} + +func (EndPortal) ID() string { + return "minecraft:end_portal" +} diff --git a/level/block/end_portal_frame.go b/level/block/end_portal_frame.go new file mode 100644 index 0000000..6324572 --- /dev/null +++ b/level/block/end_portal_frame.go @@ -0,0 +1,10 @@ +package block + +type EndPortalFrame struct { + Eye string + Facing string +} + +func (EndPortalFrame) ID() string { + return "minecraft:end_portal_frame" +} diff --git a/level/block/end_rod.go b/level/block/end_rod.go new file mode 100644 index 0000000..522cd59 --- /dev/null +++ b/level/block/end_rod.go @@ -0,0 +1,9 @@ +package block + +type EndRod struct { + Facing string +} + +func (EndRod) ID() string { + return "minecraft:end_rod" +} diff --git a/level/block/end_stone.go b/level/block/end_stone.go new file mode 100644 index 0000000..86c1753 --- /dev/null +++ b/level/block/end_stone.go @@ -0,0 +1,8 @@ +package block + +type EndStone struct { +} + +func (EndStone) ID() string { + return "minecraft:end_stone" +} diff --git a/level/block/end_stone_brick_slab.go b/level/block/end_stone_brick_slab.go new file mode 100644 index 0000000..56f60a9 --- /dev/null +++ b/level/block/end_stone_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type EndStoneBrickSlab struct { + Type string + Waterlogged string +} + +func (EndStoneBrickSlab) ID() string { + return "minecraft:end_stone_brick_slab" +} diff --git a/level/block/end_stone_brick_stairs.go b/level/block/end_stone_brick_stairs.go new file mode 100644 index 0000000..44f40d5 --- /dev/null +++ b/level/block/end_stone_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type EndStoneBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (EndStoneBrickStairs) ID() string { + return "minecraft:end_stone_brick_stairs" +} diff --git a/level/block/end_stone_brick_wall.go b/level/block/end_stone_brick_wall.go new file mode 100644 index 0000000..123c998 --- /dev/null +++ b/level/block/end_stone_brick_wall.go @@ -0,0 +1,14 @@ +package block + +type EndStoneBrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (EndStoneBrickWall) ID() string { + return "minecraft:end_stone_brick_wall" +} diff --git a/level/block/end_stone_bricks.go b/level/block/end_stone_bricks.go new file mode 100644 index 0000000..8e8fc37 --- /dev/null +++ b/level/block/end_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type EndStoneBricks struct { +} + +func (EndStoneBricks) ID() string { + return "minecraft:end_stone_bricks" +} diff --git a/level/block/ender_chest.go b/level/block/ender_chest.go new file mode 100644 index 0000000..4ec26fe --- /dev/null +++ b/level/block/ender_chest.go @@ -0,0 +1,10 @@ +package block + +type EnderChest struct { + Facing string + Waterlogged string +} + +func (EnderChest) ID() string { + return "minecraft:ender_chest" +} diff --git a/level/block/exposed_copper.go b/level/block/exposed_copper.go new file mode 100644 index 0000000..449d673 --- /dev/null +++ b/level/block/exposed_copper.go @@ -0,0 +1,8 @@ +package block + +type ExposedCopper struct { +} + +func (ExposedCopper) ID() string { + return "minecraft:exposed_copper" +} diff --git a/level/block/exposed_cut_copper.go b/level/block/exposed_cut_copper.go new file mode 100644 index 0000000..6684185 --- /dev/null +++ b/level/block/exposed_cut_copper.go @@ -0,0 +1,8 @@ +package block + +type ExposedCutCopper struct { +} + +func (ExposedCutCopper) ID() string { + return "minecraft:exposed_cut_copper" +} diff --git a/level/block/exposed_cut_copper_slab.go b/level/block/exposed_cut_copper_slab.go new file mode 100644 index 0000000..4e2364c --- /dev/null +++ b/level/block/exposed_cut_copper_slab.go @@ -0,0 +1,10 @@ +package block + +type ExposedCutCopperSlab struct { + Type string + Waterlogged string +} + +func (ExposedCutCopperSlab) ID() string { + return "minecraft:exposed_cut_copper_slab" +} diff --git a/level/block/exposed_cut_copper_stairs.go b/level/block/exposed_cut_copper_stairs.go new file mode 100644 index 0000000..5698cd2 --- /dev/null +++ b/level/block/exposed_cut_copper_stairs.go @@ -0,0 +1,12 @@ +package block + +type ExposedCutCopperStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (ExposedCutCopperStairs) ID() string { + return "minecraft:exposed_cut_copper_stairs" +} diff --git a/level/block/farmland.go b/level/block/farmland.go new file mode 100644 index 0000000..884fd31 --- /dev/null +++ b/level/block/farmland.go @@ -0,0 +1,9 @@ +package block + +type Farmland struct { + Moisture string +} + +func (Farmland) ID() string { + return "minecraft:farmland" +} diff --git a/level/block/fern.go b/level/block/fern.go new file mode 100644 index 0000000..fdd79d1 --- /dev/null +++ b/level/block/fern.go @@ -0,0 +1,8 @@ +package block + +type Fern struct { +} + +func (Fern) ID() string { + return "minecraft:fern" +} diff --git a/level/block/fire.go b/level/block/fire.go new file mode 100644 index 0000000..a31883c --- /dev/null +++ b/level/block/fire.go @@ -0,0 +1,14 @@ +package block + +type Fire struct { + Age string + East string + North string + South string + Up string + West string +} + +func (Fire) ID() string { + return "minecraft:fire" +} diff --git a/level/block/fire_coral.go b/level/block/fire_coral.go new file mode 100644 index 0000000..e3f1408 --- /dev/null +++ b/level/block/fire_coral.go @@ -0,0 +1,9 @@ +package block + +type FireCoral struct { + Waterlogged string +} + +func (FireCoral) ID() string { + return "minecraft:fire_coral" +} diff --git a/level/block/fire_coral_block.go b/level/block/fire_coral_block.go new file mode 100644 index 0000000..a5755a0 --- /dev/null +++ b/level/block/fire_coral_block.go @@ -0,0 +1,8 @@ +package block + +type FireCoralBlock struct { +} + +func (FireCoralBlock) ID() string { + return "minecraft:fire_coral_block" +} diff --git a/level/block/fire_coral_fan.go b/level/block/fire_coral_fan.go new file mode 100644 index 0000000..81ad098 --- /dev/null +++ b/level/block/fire_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type FireCoralFan struct { + Waterlogged string +} + +func (FireCoralFan) ID() string { + return "minecraft:fire_coral_fan" +} diff --git a/level/block/fire_coral_wall_fan.go b/level/block/fire_coral_wall_fan.go new file mode 100644 index 0000000..a8fb125 --- /dev/null +++ b/level/block/fire_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type FireCoralWallFan struct { + Facing string + Waterlogged string +} + +func (FireCoralWallFan) ID() string { + return "minecraft:fire_coral_wall_fan" +} diff --git a/level/block/fletching_table.go b/level/block/fletching_table.go new file mode 100644 index 0000000..42bd1c0 --- /dev/null +++ b/level/block/fletching_table.go @@ -0,0 +1,8 @@ +package block + +type FletchingTable struct { +} + +func (FletchingTable) ID() string { + return "minecraft:fletching_table" +} diff --git a/level/block/flower_pot.go b/level/block/flower_pot.go new file mode 100644 index 0000000..1f9f874 --- /dev/null +++ b/level/block/flower_pot.go @@ -0,0 +1,8 @@ +package block + +type FlowerPot struct { +} + +func (FlowerPot) ID() string { + return "minecraft:flower_pot" +} diff --git a/level/block/flowering_azalea.go b/level/block/flowering_azalea.go new file mode 100644 index 0000000..857b52c --- /dev/null +++ b/level/block/flowering_azalea.go @@ -0,0 +1,8 @@ +package block + +type FloweringAzalea struct { +} + +func (FloweringAzalea) ID() string { + return "minecraft:flowering_azalea" +} diff --git a/level/block/flowering_azalea_leaves.go b/level/block/flowering_azalea_leaves.go new file mode 100644 index 0000000..aea1da9 --- /dev/null +++ b/level/block/flowering_azalea_leaves.go @@ -0,0 +1,10 @@ +package block + +type FloweringAzaleaLeaves struct { + Distance string + Persistent string +} + +func (FloweringAzaleaLeaves) ID() string { + return "minecraft:flowering_azalea_leaves" +} diff --git a/level/block/frosted_ice.go b/level/block/frosted_ice.go new file mode 100644 index 0000000..0398217 --- /dev/null +++ b/level/block/frosted_ice.go @@ -0,0 +1,9 @@ +package block + +type FrostedIce struct { + Age string +} + +func (FrostedIce) ID() string { + return "minecraft:frosted_ice" +} diff --git a/level/block/furnace.go b/level/block/furnace.go new file mode 100644 index 0000000..87fb41a --- /dev/null +++ b/level/block/furnace.go @@ -0,0 +1,10 @@ +package block + +type Furnace struct { + Facing string + Lit string +} + +func (Furnace) ID() string { + return "minecraft:furnace" +} diff --git a/level/block/generator/main.go b/level/block/generator/main.go new file mode 100644 index 0000000..649b017 --- /dev/null +++ b/level/block/generator/main.go @@ -0,0 +1,99 @@ +package main + +import ( + "log" + "os" + "reflect" + "strings" + "text/template" + "unicode" + + "github.com/Tnze/go-mc/nbt" +) + +const tempSource = `package block + +type {{.Name | ToGoTypeName}} struct { {{range $key, $elem := .Properties}} + {{$key | UpperTheFirst}} {{$elem | GetType}} {{ end }} +} + +func ({{.Name | ToGoTypeName}}) ID() string { + return {{.Name | printf "%q"}} +} +` + +var temp = template.Must(template. + New("block_template"). + Funcs(template.FuncMap{ + "UpperTheFirst": UpperTheFirst, + "ToGoTypeName": ToGoTypeName, + "GetType": GetType, + }). + Parse(tempSource)) + +type State struct { + Name string + Properties map[string]interface{} +} + +func main() { + var states []State + readBlockStates(&states) + + // generate go sources for each blocks + for _, state := range states { + genSourceFile(state) + } +} + +func readBlockStates(states *[]State) { + // open block_states data file + f, err := os.Open("testdata/block_states.nbt") + if err != nil { + log.Panic(err) + } + defer f.Close() + + // parse the nbt format + if _, err := nbt.NewDecoder(f).Decode(states); err != nil { + log.Panic(err) + } +} + +func genSourceFile(state State) { + filename := strings.TrimPrefix(state.Name, "minecraft:") + ".go" + file, err := os.Create(filename) + if err != nil { + log.Panic(err) + } + defer file.Close() + // clean up the file + if err := file.Truncate(0); err != nil { + return + } + + if err := temp.Execute(file, state); err != nil { + log.Panic(err) + } +} + +func ToGoTypeName(name string) string { + name = strings.TrimPrefix(name, "minecraft:") + words := strings.Split(name, "_") + for i := range words { + words[i] = UpperTheFirst(words[i]) + } + return strings.Join(words, "") +} + +func GetType(v interface{}) string { + return reflect.TypeOf(v).String() +} + +func UpperTheFirst(word string) string { + runes := []rune(word) + if len(runes) > 0 { + runes[0] = unicode.ToUpper(runes[0]) + } + return string(runes) +} diff --git a/level/block/gilded_blackstone.go b/level/block/gilded_blackstone.go new file mode 100644 index 0000000..e3e20d6 --- /dev/null +++ b/level/block/gilded_blackstone.go @@ -0,0 +1,8 @@ +package block + +type GildedBlackstone struct { +} + +func (GildedBlackstone) ID() string { + return "minecraft:gilded_blackstone" +} diff --git a/level/block/glass.go b/level/block/glass.go new file mode 100644 index 0000000..bf3ad8b --- /dev/null +++ b/level/block/glass.go @@ -0,0 +1,8 @@ +package block + +type Glass struct { +} + +func (Glass) ID() string { + return "minecraft:glass" +} diff --git a/level/block/glass_pane.go b/level/block/glass_pane.go new file mode 100644 index 0000000..e2e6d39 --- /dev/null +++ b/level/block/glass_pane.go @@ -0,0 +1,13 @@ +package block + +type GlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (GlassPane) ID() string { + return "minecraft:glass_pane" +} diff --git a/level/block/glow_lichen.go b/level/block/glow_lichen.go new file mode 100644 index 0000000..54ebab2 --- /dev/null +++ b/level/block/glow_lichen.go @@ -0,0 +1,15 @@ +package block + +type GlowLichen struct { + Down string + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (GlowLichen) ID() string { + return "minecraft:glow_lichen" +} diff --git a/level/block/glowstone.go b/level/block/glowstone.go new file mode 100644 index 0000000..e4af218 --- /dev/null +++ b/level/block/glowstone.go @@ -0,0 +1,8 @@ +package block + +type Glowstone struct { +} + +func (Glowstone) ID() string { + return "minecraft:glowstone" +} diff --git a/level/block/gold_block.go b/level/block/gold_block.go new file mode 100644 index 0000000..cd52bf0 --- /dev/null +++ b/level/block/gold_block.go @@ -0,0 +1,8 @@ +package block + +type GoldBlock struct { +} + +func (GoldBlock) ID() string { + return "minecraft:gold_block" +} diff --git a/level/block/gold_ore.go b/level/block/gold_ore.go new file mode 100644 index 0000000..04a5fd2 --- /dev/null +++ b/level/block/gold_ore.go @@ -0,0 +1,8 @@ +package block + +type GoldOre struct { +} + +func (GoldOre) ID() string { + return "minecraft:gold_ore" +} diff --git a/level/block/granite.go b/level/block/granite.go new file mode 100644 index 0000000..3c99116 --- /dev/null +++ b/level/block/granite.go @@ -0,0 +1,8 @@ +package block + +type Granite struct { +} + +func (Granite) ID() string { + return "minecraft:granite" +} diff --git a/level/block/granite_slab.go b/level/block/granite_slab.go new file mode 100644 index 0000000..5ed0e30 --- /dev/null +++ b/level/block/granite_slab.go @@ -0,0 +1,10 @@ +package block + +type GraniteSlab struct { + Type string + Waterlogged string +} + +func (GraniteSlab) ID() string { + return "minecraft:granite_slab" +} diff --git a/level/block/granite_stairs.go b/level/block/granite_stairs.go new file mode 100644 index 0000000..7874600 --- /dev/null +++ b/level/block/granite_stairs.go @@ -0,0 +1,12 @@ +package block + +type GraniteStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (GraniteStairs) ID() string { + return "minecraft:granite_stairs" +} diff --git a/level/block/granite_wall.go b/level/block/granite_wall.go new file mode 100644 index 0000000..70a5c62 --- /dev/null +++ b/level/block/granite_wall.go @@ -0,0 +1,14 @@ +package block + +type GraniteWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (GraniteWall) ID() string { + return "minecraft:granite_wall" +} diff --git a/level/block/grass.go b/level/block/grass.go new file mode 100644 index 0000000..4ea1d2d --- /dev/null +++ b/level/block/grass.go @@ -0,0 +1,8 @@ +package block + +type Grass struct { +} + +func (Grass) ID() string { + return "minecraft:grass" +} diff --git a/level/block/grass_block.go b/level/block/grass_block.go new file mode 100644 index 0000000..d85e7dc --- /dev/null +++ b/level/block/grass_block.go @@ -0,0 +1,9 @@ +package block + +type GrassBlock struct { + Snowy string +} + +func (GrassBlock) ID() string { + return "minecraft:grass_block" +} diff --git a/level/block/gravel.go b/level/block/gravel.go new file mode 100644 index 0000000..702d708 --- /dev/null +++ b/level/block/gravel.go @@ -0,0 +1,8 @@ +package block + +type Gravel struct { +} + +func (Gravel) ID() string { + return "minecraft:gravel" +} diff --git a/level/block/gray_banner.go b/level/block/gray_banner.go new file mode 100644 index 0000000..eccd5ec --- /dev/null +++ b/level/block/gray_banner.go @@ -0,0 +1,9 @@ +package block + +type GrayBanner struct { + Rotation string +} + +func (GrayBanner) ID() string { + return "minecraft:gray_banner" +} diff --git a/level/block/gray_bed.go b/level/block/gray_bed.go new file mode 100644 index 0000000..3a40d74 --- /dev/null +++ b/level/block/gray_bed.go @@ -0,0 +1,11 @@ +package block + +type GrayBed struct { + Facing string + Occupied string + Part string +} + +func (GrayBed) ID() string { + return "minecraft:gray_bed" +} diff --git a/level/block/gray_candle.go b/level/block/gray_candle.go new file mode 100644 index 0000000..b3f5a5c --- /dev/null +++ b/level/block/gray_candle.go @@ -0,0 +1,11 @@ +package block + +type GrayCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (GrayCandle) ID() string { + return "minecraft:gray_candle" +} diff --git a/level/block/gray_candle_cake.go b/level/block/gray_candle_cake.go new file mode 100644 index 0000000..3ac2653 --- /dev/null +++ b/level/block/gray_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type GrayCandleCake struct { + Lit string +} + +func (GrayCandleCake) ID() string { + return "minecraft:gray_candle_cake" +} diff --git a/level/block/gray_carpet.go b/level/block/gray_carpet.go new file mode 100644 index 0000000..40a4a9b --- /dev/null +++ b/level/block/gray_carpet.go @@ -0,0 +1,8 @@ +package block + +type GrayCarpet struct { +} + +func (GrayCarpet) ID() string { + return "minecraft:gray_carpet" +} diff --git a/level/block/gray_concrete.go b/level/block/gray_concrete.go new file mode 100644 index 0000000..15c3484 --- /dev/null +++ b/level/block/gray_concrete.go @@ -0,0 +1,8 @@ +package block + +type GrayConcrete struct { +} + +func (GrayConcrete) ID() string { + return "minecraft:gray_concrete" +} diff --git a/level/block/gray_concrete_powder.go b/level/block/gray_concrete_powder.go new file mode 100644 index 0000000..3ea82d7 --- /dev/null +++ b/level/block/gray_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type GrayConcretePowder struct { +} + +func (GrayConcretePowder) ID() string { + return "minecraft:gray_concrete_powder" +} diff --git a/level/block/gray_glazed_terracotta.go b/level/block/gray_glazed_terracotta.go new file mode 100644 index 0000000..3fe108a --- /dev/null +++ b/level/block/gray_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type GrayGlazedTerracotta struct { + Facing string +} + +func (GrayGlazedTerracotta) ID() string { + return "minecraft:gray_glazed_terracotta" +} diff --git a/level/block/gray_shulker_box.go b/level/block/gray_shulker_box.go new file mode 100644 index 0000000..4fdee42 --- /dev/null +++ b/level/block/gray_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type GrayShulkerBox struct { + Facing string +} + +func (GrayShulkerBox) ID() string { + return "minecraft:gray_shulker_box" +} diff --git a/level/block/gray_stained_glass.go b/level/block/gray_stained_glass.go new file mode 100644 index 0000000..3477c26 --- /dev/null +++ b/level/block/gray_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type GrayStainedGlass struct { +} + +func (GrayStainedGlass) ID() string { + return "minecraft:gray_stained_glass" +} diff --git a/level/block/gray_stained_glass_pane.go b/level/block/gray_stained_glass_pane.go new file mode 100644 index 0000000..6365edf --- /dev/null +++ b/level/block/gray_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type GrayStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (GrayStainedGlassPane) ID() string { + return "minecraft:gray_stained_glass_pane" +} diff --git a/level/block/gray_terracotta.go b/level/block/gray_terracotta.go new file mode 100644 index 0000000..14820ee --- /dev/null +++ b/level/block/gray_terracotta.go @@ -0,0 +1,8 @@ +package block + +type GrayTerracotta struct { +} + +func (GrayTerracotta) ID() string { + return "minecraft:gray_terracotta" +} diff --git a/level/block/gray_wall_banner.go b/level/block/gray_wall_banner.go new file mode 100644 index 0000000..5efe7a1 --- /dev/null +++ b/level/block/gray_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type GrayWallBanner struct { + Facing string +} + +func (GrayWallBanner) ID() string { + return "minecraft:gray_wall_banner" +} diff --git a/level/block/gray_wool.go b/level/block/gray_wool.go new file mode 100644 index 0000000..eaf8c9f --- /dev/null +++ b/level/block/gray_wool.go @@ -0,0 +1,8 @@ +package block + +type GrayWool struct { +} + +func (GrayWool) ID() string { + return "minecraft:gray_wool" +} diff --git a/level/block/green_banner.go b/level/block/green_banner.go new file mode 100644 index 0000000..1b7cfe5 --- /dev/null +++ b/level/block/green_banner.go @@ -0,0 +1,9 @@ +package block + +type GreenBanner struct { + Rotation string +} + +func (GreenBanner) ID() string { + return "minecraft:green_banner" +} diff --git a/level/block/green_bed.go b/level/block/green_bed.go new file mode 100644 index 0000000..47090d7 --- /dev/null +++ b/level/block/green_bed.go @@ -0,0 +1,11 @@ +package block + +type GreenBed struct { + Facing string + Occupied string + Part string +} + +func (GreenBed) ID() string { + return "minecraft:green_bed" +} diff --git a/level/block/green_candle.go b/level/block/green_candle.go new file mode 100644 index 0000000..9fdd442 --- /dev/null +++ b/level/block/green_candle.go @@ -0,0 +1,11 @@ +package block + +type GreenCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (GreenCandle) ID() string { + return "minecraft:green_candle" +} diff --git a/level/block/green_candle_cake.go b/level/block/green_candle_cake.go new file mode 100644 index 0000000..d258cf9 --- /dev/null +++ b/level/block/green_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type GreenCandleCake struct { + Lit string +} + +func (GreenCandleCake) ID() string { + return "minecraft:green_candle_cake" +} diff --git a/level/block/green_carpet.go b/level/block/green_carpet.go new file mode 100644 index 0000000..e0e1ad9 --- /dev/null +++ b/level/block/green_carpet.go @@ -0,0 +1,8 @@ +package block + +type GreenCarpet struct { +} + +func (GreenCarpet) ID() string { + return "minecraft:green_carpet" +} diff --git a/level/block/green_concrete.go b/level/block/green_concrete.go new file mode 100644 index 0000000..21f7a80 --- /dev/null +++ b/level/block/green_concrete.go @@ -0,0 +1,8 @@ +package block + +type GreenConcrete struct { +} + +func (GreenConcrete) ID() string { + return "minecraft:green_concrete" +} diff --git a/level/block/green_concrete_powder.go b/level/block/green_concrete_powder.go new file mode 100644 index 0000000..a1ee796 --- /dev/null +++ b/level/block/green_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type GreenConcretePowder struct { +} + +func (GreenConcretePowder) ID() string { + return "minecraft:green_concrete_powder" +} diff --git a/level/block/green_glazed_terracotta.go b/level/block/green_glazed_terracotta.go new file mode 100644 index 0000000..132da9c --- /dev/null +++ b/level/block/green_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type GreenGlazedTerracotta struct { + Facing string +} + +func (GreenGlazedTerracotta) ID() string { + return "minecraft:green_glazed_terracotta" +} diff --git a/level/block/green_shulker_box.go b/level/block/green_shulker_box.go new file mode 100644 index 0000000..1656c79 --- /dev/null +++ b/level/block/green_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type GreenShulkerBox struct { + Facing string +} + +func (GreenShulkerBox) ID() string { + return "minecraft:green_shulker_box" +} diff --git a/level/block/green_stained_glass.go b/level/block/green_stained_glass.go new file mode 100644 index 0000000..1d2a57b --- /dev/null +++ b/level/block/green_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type GreenStainedGlass struct { +} + +func (GreenStainedGlass) ID() string { + return "minecraft:green_stained_glass" +} diff --git a/level/block/green_stained_glass_pane.go b/level/block/green_stained_glass_pane.go new file mode 100644 index 0000000..2cc92d4 --- /dev/null +++ b/level/block/green_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type GreenStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (GreenStainedGlassPane) ID() string { + return "minecraft:green_stained_glass_pane" +} diff --git a/level/block/green_terracotta.go b/level/block/green_terracotta.go new file mode 100644 index 0000000..6a3f89b --- /dev/null +++ b/level/block/green_terracotta.go @@ -0,0 +1,8 @@ +package block + +type GreenTerracotta struct { +} + +func (GreenTerracotta) ID() string { + return "minecraft:green_terracotta" +} diff --git a/level/block/green_wall_banner.go b/level/block/green_wall_banner.go new file mode 100644 index 0000000..be71ec8 --- /dev/null +++ b/level/block/green_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type GreenWallBanner struct { + Facing string +} + +func (GreenWallBanner) ID() string { + return "minecraft:green_wall_banner" +} diff --git a/level/block/green_wool.go b/level/block/green_wool.go new file mode 100644 index 0000000..963e192 --- /dev/null +++ b/level/block/green_wool.go @@ -0,0 +1,8 @@ +package block + +type GreenWool struct { +} + +func (GreenWool) ID() string { + return "minecraft:green_wool" +} diff --git a/level/block/grindstone.go b/level/block/grindstone.go new file mode 100644 index 0000000..c7068d8 --- /dev/null +++ b/level/block/grindstone.go @@ -0,0 +1,10 @@ +package block + +type Grindstone struct { + Face string + Facing string +} + +func (Grindstone) ID() string { + return "minecraft:grindstone" +} diff --git a/level/block/hanging_roots.go b/level/block/hanging_roots.go new file mode 100644 index 0000000..e8fc7c5 --- /dev/null +++ b/level/block/hanging_roots.go @@ -0,0 +1,9 @@ +package block + +type HangingRoots struct { + Waterlogged string +} + +func (HangingRoots) ID() string { + return "minecraft:hanging_roots" +} diff --git a/level/block/hay_block.go b/level/block/hay_block.go new file mode 100644 index 0000000..33856aa --- /dev/null +++ b/level/block/hay_block.go @@ -0,0 +1,9 @@ +package block + +type HayBlock struct { + Axis string +} + +func (HayBlock) ID() string { + return "minecraft:hay_block" +} diff --git a/level/block/heavy_weighted_pressure_plate.go b/level/block/heavy_weighted_pressure_plate.go new file mode 100644 index 0000000..eef4122 --- /dev/null +++ b/level/block/heavy_weighted_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type HeavyWeightedPressurePlate struct { + Power string +} + +func (HeavyWeightedPressurePlate) ID() string { + return "minecraft:heavy_weighted_pressure_plate" +} diff --git a/level/block/honey_block.go b/level/block/honey_block.go new file mode 100644 index 0000000..0ceafb0 --- /dev/null +++ b/level/block/honey_block.go @@ -0,0 +1,8 @@ +package block + +type HoneyBlock struct { +} + +func (HoneyBlock) ID() string { + return "minecraft:honey_block" +} diff --git a/level/block/honeycomb_block.go b/level/block/honeycomb_block.go new file mode 100644 index 0000000..ca934cf --- /dev/null +++ b/level/block/honeycomb_block.go @@ -0,0 +1,8 @@ +package block + +type HoneycombBlock struct { +} + +func (HoneycombBlock) ID() string { + return "minecraft:honeycomb_block" +} diff --git a/level/block/hopper.go b/level/block/hopper.go new file mode 100644 index 0000000..a5d06a4 --- /dev/null +++ b/level/block/hopper.go @@ -0,0 +1,10 @@ +package block + +type Hopper struct { + Enabled string + Facing string +} + +func (Hopper) ID() string { + return "minecraft:hopper" +} diff --git a/level/block/horn_coral.go b/level/block/horn_coral.go new file mode 100644 index 0000000..5ed9ebd --- /dev/null +++ b/level/block/horn_coral.go @@ -0,0 +1,9 @@ +package block + +type HornCoral struct { + Waterlogged string +} + +func (HornCoral) ID() string { + return "minecraft:horn_coral" +} diff --git a/level/block/horn_coral_block.go b/level/block/horn_coral_block.go new file mode 100644 index 0000000..cb06bd0 --- /dev/null +++ b/level/block/horn_coral_block.go @@ -0,0 +1,8 @@ +package block + +type HornCoralBlock struct { +} + +func (HornCoralBlock) ID() string { + return "minecraft:horn_coral_block" +} diff --git a/level/block/horn_coral_fan.go b/level/block/horn_coral_fan.go new file mode 100644 index 0000000..f2b4e79 --- /dev/null +++ b/level/block/horn_coral_fan.go @@ -0,0 +1,9 @@ +package block + +type HornCoralFan struct { + Waterlogged string +} + +func (HornCoralFan) ID() string { + return "minecraft:horn_coral_fan" +} diff --git a/level/block/horn_coral_wall_fan.go b/level/block/horn_coral_wall_fan.go new file mode 100644 index 0000000..65fd72d --- /dev/null +++ b/level/block/horn_coral_wall_fan.go @@ -0,0 +1,10 @@ +package block + +type HornCoralWallFan struct { + Facing string + Waterlogged string +} + +func (HornCoralWallFan) ID() string { + return "minecraft:horn_coral_wall_fan" +} diff --git a/level/block/ice.go b/level/block/ice.go new file mode 100644 index 0000000..e2616b8 --- /dev/null +++ b/level/block/ice.go @@ -0,0 +1,8 @@ +package block + +type Ice struct { +} + +func (Ice) ID() string { + return "minecraft:ice" +} diff --git a/level/block/infested_chiseled_stone_bricks.go b/level/block/infested_chiseled_stone_bricks.go new file mode 100644 index 0000000..43801b0 --- /dev/null +++ b/level/block/infested_chiseled_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type InfestedChiseledStoneBricks struct { +} + +func (InfestedChiseledStoneBricks) ID() string { + return "minecraft:infested_chiseled_stone_bricks" +} diff --git a/level/block/infested_cobblestone.go b/level/block/infested_cobblestone.go new file mode 100644 index 0000000..8cae839 --- /dev/null +++ b/level/block/infested_cobblestone.go @@ -0,0 +1,8 @@ +package block + +type InfestedCobblestone struct { +} + +func (InfestedCobblestone) ID() string { + return "minecraft:infested_cobblestone" +} diff --git a/level/block/infested_cracked_stone_bricks.go b/level/block/infested_cracked_stone_bricks.go new file mode 100644 index 0000000..a9a7d7f --- /dev/null +++ b/level/block/infested_cracked_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type InfestedCrackedStoneBricks struct { +} + +func (InfestedCrackedStoneBricks) ID() string { + return "minecraft:infested_cracked_stone_bricks" +} diff --git a/level/block/infested_deepslate.go b/level/block/infested_deepslate.go new file mode 100644 index 0000000..6f43519 --- /dev/null +++ b/level/block/infested_deepslate.go @@ -0,0 +1,9 @@ +package block + +type InfestedDeepslate struct { + Axis string +} + +func (InfestedDeepslate) ID() string { + return "minecraft:infested_deepslate" +} diff --git a/level/block/infested_mossy_stone_bricks.go b/level/block/infested_mossy_stone_bricks.go new file mode 100644 index 0000000..cce1889 --- /dev/null +++ b/level/block/infested_mossy_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type InfestedMossyStoneBricks struct { +} + +func (InfestedMossyStoneBricks) ID() string { + return "minecraft:infested_mossy_stone_bricks" +} diff --git a/level/block/infested_stone.go b/level/block/infested_stone.go new file mode 100644 index 0000000..955efc3 --- /dev/null +++ b/level/block/infested_stone.go @@ -0,0 +1,8 @@ +package block + +type InfestedStone struct { +} + +func (InfestedStone) ID() string { + return "minecraft:infested_stone" +} diff --git a/level/block/infested_stone_bricks.go b/level/block/infested_stone_bricks.go new file mode 100644 index 0000000..ed6996e --- /dev/null +++ b/level/block/infested_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type InfestedStoneBricks struct { +} + +func (InfestedStoneBricks) ID() string { + return "minecraft:infested_stone_bricks" +} diff --git a/level/block/iron_bars.go b/level/block/iron_bars.go new file mode 100644 index 0000000..14ca652 --- /dev/null +++ b/level/block/iron_bars.go @@ -0,0 +1,13 @@ +package block + +type IronBars struct { + East string + North string + South string + Waterlogged string + West string +} + +func (IronBars) ID() string { + return "minecraft:iron_bars" +} diff --git a/level/block/iron_block.go b/level/block/iron_block.go new file mode 100644 index 0000000..3766195 --- /dev/null +++ b/level/block/iron_block.go @@ -0,0 +1,8 @@ +package block + +type IronBlock struct { +} + +func (IronBlock) ID() string { + return "minecraft:iron_block" +} diff --git a/level/block/iron_door.go b/level/block/iron_door.go new file mode 100644 index 0000000..501ed32 --- /dev/null +++ b/level/block/iron_door.go @@ -0,0 +1,13 @@ +package block + +type IronDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (IronDoor) ID() string { + return "minecraft:iron_door" +} diff --git a/level/block/iron_ore.go b/level/block/iron_ore.go new file mode 100644 index 0000000..041ca7c --- /dev/null +++ b/level/block/iron_ore.go @@ -0,0 +1,8 @@ +package block + +type IronOre struct { +} + +func (IronOre) ID() string { + return "minecraft:iron_ore" +} diff --git a/level/block/iron_trapdoor.go b/level/block/iron_trapdoor.go new file mode 100644 index 0000000..fe997b6 --- /dev/null +++ b/level/block/iron_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type IronTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (IronTrapdoor) ID() string { + return "minecraft:iron_trapdoor" +} diff --git a/level/block/jack_o_lantern.go b/level/block/jack_o_lantern.go new file mode 100644 index 0000000..009a56b --- /dev/null +++ b/level/block/jack_o_lantern.go @@ -0,0 +1,9 @@ +package block + +type JackOLantern struct { + Facing string +} + +func (JackOLantern) ID() string { + return "minecraft:jack_o_lantern" +} diff --git a/level/block/jigsaw.go b/level/block/jigsaw.go new file mode 100644 index 0000000..4435f2c --- /dev/null +++ b/level/block/jigsaw.go @@ -0,0 +1,9 @@ +package block + +type Jigsaw struct { + Orientation string +} + +func (Jigsaw) ID() string { + return "minecraft:jigsaw" +} diff --git a/level/block/jukebox.go b/level/block/jukebox.go new file mode 100644 index 0000000..bcf86cc --- /dev/null +++ b/level/block/jukebox.go @@ -0,0 +1,9 @@ +package block + +type Jukebox struct { + Has_record string +} + +func (Jukebox) ID() string { + return "minecraft:jukebox" +} diff --git a/level/block/jungle_button.go b/level/block/jungle_button.go new file mode 100644 index 0000000..197b5b9 --- /dev/null +++ b/level/block/jungle_button.go @@ -0,0 +1,11 @@ +package block + +type JungleButton struct { + Face string + Facing string + Powered string +} + +func (JungleButton) ID() string { + return "minecraft:jungle_button" +} diff --git a/level/block/jungle_door.go b/level/block/jungle_door.go new file mode 100644 index 0000000..f6fba42 --- /dev/null +++ b/level/block/jungle_door.go @@ -0,0 +1,13 @@ +package block + +type JungleDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (JungleDoor) ID() string { + return "minecraft:jungle_door" +} diff --git a/level/block/jungle_fence.go b/level/block/jungle_fence.go new file mode 100644 index 0000000..bd3b81c --- /dev/null +++ b/level/block/jungle_fence.go @@ -0,0 +1,13 @@ +package block + +type JungleFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (JungleFence) ID() string { + return "minecraft:jungle_fence" +} diff --git a/level/block/jungle_fence_gate.go b/level/block/jungle_fence_gate.go new file mode 100644 index 0000000..5dc5860 --- /dev/null +++ b/level/block/jungle_fence_gate.go @@ -0,0 +1,12 @@ +package block + +type JungleFenceGate struct { + Facing string + In_wall string + Open string + Powered string +} + +func (JungleFenceGate) ID() string { + return "minecraft:jungle_fence_gate" +} diff --git a/level/block/jungle_leaves.go b/level/block/jungle_leaves.go new file mode 100644 index 0000000..8993ec7 --- /dev/null +++ b/level/block/jungle_leaves.go @@ -0,0 +1,10 @@ +package block + +type JungleLeaves struct { + Distance string + Persistent string +} + +func (JungleLeaves) ID() string { + return "minecraft:jungle_leaves" +} diff --git a/level/block/jungle_log.go b/level/block/jungle_log.go new file mode 100644 index 0000000..dafafa2 --- /dev/null +++ b/level/block/jungle_log.go @@ -0,0 +1,9 @@ +package block + +type JungleLog struct { + Axis string +} + +func (JungleLog) ID() string { + return "minecraft:jungle_log" +} diff --git a/level/block/jungle_planks.go b/level/block/jungle_planks.go new file mode 100644 index 0000000..3a597d6 --- /dev/null +++ b/level/block/jungle_planks.go @@ -0,0 +1,8 @@ +package block + +type JunglePlanks struct { +} + +func (JunglePlanks) ID() string { + return "minecraft:jungle_planks" +} diff --git a/level/block/jungle_pressure_plate.go b/level/block/jungle_pressure_plate.go new file mode 100644 index 0000000..514802b --- /dev/null +++ b/level/block/jungle_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type JunglePressurePlate struct { + Powered string +} + +func (JunglePressurePlate) ID() string { + return "minecraft:jungle_pressure_plate" +} diff --git a/level/block/jungle_sapling.go b/level/block/jungle_sapling.go new file mode 100644 index 0000000..b74616a --- /dev/null +++ b/level/block/jungle_sapling.go @@ -0,0 +1,9 @@ +package block + +type JungleSapling struct { + Stage string +} + +func (JungleSapling) ID() string { + return "minecraft:jungle_sapling" +} diff --git a/level/block/jungle_sign.go b/level/block/jungle_sign.go new file mode 100644 index 0000000..29c5169 --- /dev/null +++ b/level/block/jungle_sign.go @@ -0,0 +1,10 @@ +package block + +type JungleSign struct { + Rotation string + Waterlogged string +} + +func (JungleSign) ID() string { + return "minecraft:jungle_sign" +} diff --git a/level/block/jungle_slab.go b/level/block/jungle_slab.go new file mode 100644 index 0000000..cdf0127 --- /dev/null +++ b/level/block/jungle_slab.go @@ -0,0 +1,10 @@ +package block + +type JungleSlab struct { + Type string + Waterlogged string +} + +func (JungleSlab) ID() string { + return "minecraft:jungle_slab" +} diff --git a/level/block/jungle_stairs.go b/level/block/jungle_stairs.go new file mode 100644 index 0000000..5b7c292 --- /dev/null +++ b/level/block/jungle_stairs.go @@ -0,0 +1,12 @@ +package block + +type JungleStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (JungleStairs) ID() string { + return "minecraft:jungle_stairs" +} diff --git a/level/block/jungle_trapdoor.go b/level/block/jungle_trapdoor.go new file mode 100644 index 0000000..e230594 --- /dev/null +++ b/level/block/jungle_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type JungleTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (JungleTrapdoor) ID() string { + return "minecraft:jungle_trapdoor" +} diff --git a/level/block/jungle_wall_sign.go b/level/block/jungle_wall_sign.go new file mode 100644 index 0000000..24b0ffc --- /dev/null +++ b/level/block/jungle_wall_sign.go @@ -0,0 +1,10 @@ +package block + +type JungleWallSign struct { + Facing string + Waterlogged string +} + +func (JungleWallSign) ID() string { + return "minecraft:jungle_wall_sign" +} diff --git a/level/block/jungle_wood.go b/level/block/jungle_wood.go new file mode 100644 index 0000000..01e08aa --- /dev/null +++ b/level/block/jungle_wood.go @@ -0,0 +1,9 @@ +package block + +type JungleWood struct { + Axis string +} + +func (JungleWood) ID() string { + return "minecraft:jungle_wood" +} diff --git a/level/block/kelp.go b/level/block/kelp.go new file mode 100644 index 0000000..945879e --- /dev/null +++ b/level/block/kelp.go @@ -0,0 +1,9 @@ +package block + +type Kelp struct { + Age string +} + +func (Kelp) ID() string { + return "minecraft:kelp" +} diff --git a/level/block/kelp_plant.go b/level/block/kelp_plant.go new file mode 100644 index 0000000..1e4e1d5 --- /dev/null +++ b/level/block/kelp_plant.go @@ -0,0 +1,8 @@ +package block + +type KelpPlant struct { +} + +func (KelpPlant) ID() string { + return "minecraft:kelp_plant" +} diff --git a/level/block/ladder.go b/level/block/ladder.go new file mode 100644 index 0000000..4fac925 --- /dev/null +++ b/level/block/ladder.go @@ -0,0 +1,10 @@ +package block + +type Ladder struct { + Facing string + Waterlogged string +} + +func (Ladder) ID() string { + return "minecraft:ladder" +} diff --git a/level/block/lantern.go b/level/block/lantern.go new file mode 100644 index 0000000..0e91f4a --- /dev/null +++ b/level/block/lantern.go @@ -0,0 +1,10 @@ +package block + +type Lantern struct { + Hanging string + Waterlogged string +} + +func (Lantern) ID() string { + return "minecraft:lantern" +} diff --git a/level/block/lapis_block.go b/level/block/lapis_block.go new file mode 100644 index 0000000..2cd7c4e --- /dev/null +++ b/level/block/lapis_block.go @@ -0,0 +1,8 @@ +package block + +type LapisBlock struct { +} + +func (LapisBlock) ID() string { + return "minecraft:lapis_block" +} diff --git a/level/block/lapis_ore.go b/level/block/lapis_ore.go new file mode 100644 index 0000000..dd9e251 --- /dev/null +++ b/level/block/lapis_ore.go @@ -0,0 +1,8 @@ +package block + +type LapisOre struct { +} + +func (LapisOre) ID() string { + return "minecraft:lapis_ore" +} diff --git a/level/block/large_amethyst_bud.go b/level/block/large_amethyst_bud.go new file mode 100644 index 0000000..02121cb --- /dev/null +++ b/level/block/large_amethyst_bud.go @@ -0,0 +1,10 @@ +package block + +type LargeAmethystBud struct { + Facing string + Waterlogged string +} + +func (LargeAmethystBud) ID() string { + return "minecraft:large_amethyst_bud" +} diff --git a/level/block/large_fern.go b/level/block/large_fern.go new file mode 100644 index 0000000..00d426f --- /dev/null +++ b/level/block/large_fern.go @@ -0,0 +1,9 @@ +package block + +type LargeFern struct { + Half string +} + +func (LargeFern) ID() string { + return "minecraft:large_fern" +} diff --git a/level/block/lava.go b/level/block/lava.go new file mode 100644 index 0000000..307e850 --- /dev/null +++ b/level/block/lava.go @@ -0,0 +1,9 @@ +package block + +type Lava struct { + Level string +} + +func (Lava) ID() string { + return "minecraft:lava" +} diff --git a/level/block/lava_cauldron.go b/level/block/lava_cauldron.go new file mode 100644 index 0000000..b99e138 --- /dev/null +++ b/level/block/lava_cauldron.go @@ -0,0 +1,8 @@ +package block + +type LavaCauldron struct { +} + +func (LavaCauldron) ID() string { + return "minecraft:lava_cauldron" +} diff --git a/level/block/lectern.go b/level/block/lectern.go new file mode 100644 index 0000000..287b6f7 --- /dev/null +++ b/level/block/lectern.go @@ -0,0 +1,11 @@ +package block + +type Lectern struct { + Facing string + Has_book string + Powered string +} + +func (Lectern) ID() string { + return "minecraft:lectern" +} diff --git a/level/block/lever.go b/level/block/lever.go new file mode 100644 index 0000000..4f7760e --- /dev/null +++ b/level/block/lever.go @@ -0,0 +1,11 @@ +package block + +type Lever struct { + Face string + Facing string + Powered string +} + +func (Lever) ID() string { + return "minecraft:lever" +} diff --git a/level/block/light.go b/level/block/light.go new file mode 100644 index 0000000..8e8749a --- /dev/null +++ b/level/block/light.go @@ -0,0 +1,10 @@ +package block + +type Light struct { + Level string + Waterlogged string +} + +func (Light) ID() string { + return "minecraft:light" +} diff --git a/level/block/light_blue_banner.go b/level/block/light_blue_banner.go new file mode 100644 index 0000000..1d121b3 --- /dev/null +++ b/level/block/light_blue_banner.go @@ -0,0 +1,9 @@ +package block + +type LightBlueBanner struct { + Rotation string +} + +func (LightBlueBanner) ID() string { + return "minecraft:light_blue_banner" +} diff --git a/level/block/light_blue_bed.go b/level/block/light_blue_bed.go new file mode 100644 index 0000000..b4115ba --- /dev/null +++ b/level/block/light_blue_bed.go @@ -0,0 +1,11 @@ +package block + +type LightBlueBed struct { + Facing string + Occupied string + Part string +} + +func (LightBlueBed) ID() string { + return "minecraft:light_blue_bed" +} diff --git a/level/block/light_blue_candle.go b/level/block/light_blue_candle.go new file mode 100644 index 0000000..7b38956 --- /dev/null +++ b/level/block/light_blue_candle.go @@ -0,0 +1,11 @@ +package block + +type LightBlueCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (LightBlueCandle) ID() string { + return "minecraft:light_blue_candle" +} diff --git a/level/block/light_blue_candle_cake.go b/level/block/light_blue_candle_cake.go new file mode 100644 index 0000000..b481195 --- /dev/null +++ b/level/block/light_blue_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type LightBlueCandleCake struct { + Lit string +} + +func (LightBlueCandleCake) ID() string { + return "minecraft:light_blue_candle_cake" +} diff --git a/level/block/light_blue_carpet.go b/level/block/light_blue_carpet.go new file mode 100644 index 0000000..1be257a --- /dev/null +++ b/level/block/light_blue_carpet.go @@ -0,0 +1,8 @@ +package block + +type LightBlueCarpet struct { +} + +func (LightBlueCarpet) ID() string { + return "minecraft:light_blue_carpet" +} diff --git a/level/block/light_blue_concrete.go b/level/block/light_blue_concrete.go new file mode 100644 index 0000000..73f1637 --- /dev/null +++ b/level/block/light_blue_concrete.go @@ -0,0 +1,8 @@ +package block + +type LightBlueConcrete struct { +} + +func (LightBlueConcrete) ID() string { + return "minecraft:light_blue_concrete" +} diff --git a/level/block/light_blue_concrete_powder.go b/level/block/light_blue_concrete_powder.go new file mode 100644 index 0000000..860e588 --- /dev/null +++ b/level/block/light_blue_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type LightBlueConcretePowder struct { +} + +func (LightBlueConcretePowder) ID() string { + return "minecraft:light_blue_concrete_powder" +} diff --git a/level/block/light_blue_glazed_terracotta.go b/level/block/light_blue_glazed_terracotta.go new file mode 100644 index 0000000..4bffad5 --- /dev/null +++ b/level/block/light_blue_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type LightBlueGlazedTerracotta struct { + Facing string +} + +func (LightBlueGlazedTerracotta) ID() string { + return "minecraft:light_blue_glazed_terracotta" +} diff --git a/level/block/light_blue_shulker_box.go b/level/block/light_blue_shulker_box.go new file mode 100644 index 0000000..5f31dfc --- /dev/null +++ b/level/block/light_blue_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type LightBlueShulkerBox struct { + Facing string +} + +func (LightBlueShulkerBox) ID() string { + return "minecraft:light_blue_shulker_box" +} diff --git a/level/block/light_blue_stained_glass.go b/level/block/light_blue_stained_glass.go new file mode 100644 index 0000000..c696ddb --- /dev/null +++ b/level/block/light_blue_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type LightBlueStainedGlass struct { +} + +func (LightBlueStainedGlass) ID() string { + return "minecraft:light_blue_stained_glass" +} diff --git a/level/block/light_blue_stained_glass_pane.go b/level/block/light_blue_stained_glass_pane.go new file mode 100644 index 0000000..66aaae6 --- /dev/null +++ b/level/block/light_blue_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type LightBlueStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (LightBlueStainedGlassPane) ID() string { + return "minecraft:light_blue_stained_glass_pane" +} diff --git a/level/block/light_blue_terracotta.go b/level/block/light_blue_terracotta.go new file mode 100644 index 0000000..55ca8ba --- /dev/null +++ b/level/block/light_blue_terracotta.go @@ -0,0 +1,8 @@ +package block + +type LightBlueTerracotta struct { +} + +func (LightBlueTerracotta) ID() string { + return "minecraft:light_blue_terracotta" +} diff --git a/level/block/light_blue_wall_banner.go b/level/block/light_blue_wall_banner.go new file mode 100644 index 0000000..b725e82 --- /dev/null +++ b/level/block/light_blue_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type LightBlueWallBanner struct { + Facing string +} + +func (LightBlueWallBanner) ID() string { + return "minecraft:light_blue_wall_banner" +} diff --git a/level/block/light_blue_wool.go b/level/block/light_blue_wool.go new file mode 100644 index 0000000..f7e0563 --- /dev/null +++ b/level/block/light_blue_wool.go @@ -0,0 +1,8 @@ +package block + +type LightBlueWool struct { +} + +func (LightBlueWool) ID() string { + return "minecraft:light_blue_wool" +} diff --git a/level/block/light_gray_banner.go b/level/block/light_gray_banner.go new file mode 100644 index 0000000..a1000d6 --- /dev/null +++ b/level/block/light_gray_banner.go @@ -0,0 +1,9 @@ +package block + +type LightGrayBanner struct { + Rotation string +} + +func (LightGrayBanner) ID() string { + return "minecraft:light_gray_banner" +} diff --git a/level/block/light_gray_bed.go b/level/block/light_gray_bed.go new file mode 100644 index 0000000..8fd2aa0 --- /dev/null +++ b/level/block/light_gray_bed.go @@ -0,0 +1,11 @@ +package block + +type LightGrayBed struct { + Facing string + Occupied string + Part string +} + +func (LightGrayBed) ID() string { + return "minecraft:light_gray_bed" +} diff --git a/level/block/light_gray_candle.go b/level/block/light_gray_candle.go new file mode 100644 index 0000000..657738f --- /dev/null +++ b/level/block/light_gray_candle.go @@ -0,0 +1,11 @@ +package block + +type LightGrayCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (LightGrayCandle) ID() string { + return "minecraft:light_gray_candle" +} diff --git a/level/block/light_gray_candle_cake.go b/level/block/light_gray_candle_cake.go new file mode 100644 index 0000000..73e6ebd --- /dev/null +++ b/level/block/light_gray_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type LightGrayCandleCake struct { + Lit string +} + +func (LightGrayCandleCake) ID() string { + return "minecraft:light_gray_candle_cake" +} diff --git a/level/block/light_gray_carpet.go b/level/block/light_gray_carpet.go new file mode 100644 index 0000000..d40b66c --- /dev/null +++ b/level/block/light_gray_carpet.go @@ -0,0 +1,8 @@ +package block + +type LightGrayCarpet struct { +} + +func (LightGrayCarpet) ID() string { + return "minecraft:light_gray_carpet" +} diff --git a/level/block/light_gray_concrete.go b/level/block/light_gray_concrete.go new file mode 100644 index 0000000..e6762f7 --- /dev/null +++ b/level/block/light_gray_concrete.go @@ -0,0 +1,8 @@ +package block + +type LightGrayConcrete struct { +} + +func (LightGrayConcrete) ID() string { + return "minecraft:light_gray_concrete" +} diff --git a/level/block/light_gray_concrete_powder.go b/level/block/light_gray_concrete_powder.go new file mode 100644 index 0000000..5af4e9d --- /dev/null +++ b/level/block/light_gray_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type LightGrayConcretePowder struct { +} + +func (LightGrayConcretePowder) ID() string { + return "minecraft:light_gray_concrete_powder" +} diff --git a/level/block/light_gray_glazed_terracotta.go b/level/block/light_gray_glazed_terracotta.go new file mode 100644 index 0000000..d6c02d7 --- /dev/null +++ b/level/block/light_gray_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type LightGrayGlazedTerracotta struct { + Facing string +} + +func (LightGrayGlazedTerracotta) ID() string { + return "minecraft:light_gray_glazed_terracotta" +} diff --git a/level/block/light_gray_shulker_box.go b/level/block/light_gray_shulker_box.go new file mode 100644 index 0000000..eecfdaf --- /dev/null +++ b/level/block/light_gray_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type LightGrayShulkerBox struct { + Facing string +} + +func (LightGrayShulkerBox) ID() string { + return "minecraft:light_gray_shulker_box" +} diff --git a/level/block/light_gray_stained_glass.go b/level/block/light_gray_stained_glass.go new file mode 100644 index 0000000..fca4554 --- /dev/null +++ b/level/block/light_gray_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type LightGrayStainedGlass struct { +} + +func (LightGrayStainedGlass) ID() string { + return "minecraft:light_gray_stained_glass" +} diff --git a/level/block/light_gray_stained_glass_pane.go b/level/block/light_gray_stained_glass_pane.go new file mode 100644 index 0000000..94bf24a --- /dev/null +++ b/level/block/light_gray_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type LightGrayStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (LightGrayStainedGlassPane) ID() string { + return "minecraft:light_gray_stained_glass_pane" +} diff --git a/level/block/light_gray_terracotta.go b/level/block/light_gray_terracotta.go new file mode 100644 index 0000000..5eb995e --- /dev/null +++ b/level/block/light_gray_terracotta.go @@ -0,0 +1,8 @@ +package block + +type LightGrayTerracotta struct { +} + +func (LightGrayTerracotta) ID() string { + return "minecraft:light_gray_terracotta" +} diff --git a/level/block/light_gray_wall_banner.go b/level/block/light_gray_wall_banner.go new file mode 100644 index 0000000..3fb2161 --- /dev/null +++ b/level/block/light_gray_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type LightGrayWallBanner struct { + Facing string +} + +func (LightGrayWallBanner) ID() string { + return "minecraft:light_gray_wall_banner" +} diff --git a/level/block/light_gray_wool.go b/level/block/light_gray_wool.go new file mode 100644 index 0000000..f602b26 --- /dev/null +++ b/level/block/light_gray_wool.go @@ -0,0 +1,8 @@ +package block + +type LightGrayWool struct { +} + +func (LightGrayWool) ID() string { + return "minecraft:light_gray_wool" +} diff --git a/level/block/light_weighted_pressure_plate.go b/level/block/light_weighted_pressure_plate.go new file mode 100644 index 0000000..ebe4b9c --- /dev/null +++ b/level/block/light_weighted_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type LightWeightedPressurePlate struct { + Power string +} + +func (LightWeightedPressurePlate) ID() string { + return "minecraft:light_weighted_pressure_plate" +} diff --git a/level/block/lightning_rod.go b/level/block/lightning_rod.go new file mode 100644 index 0000000..db94274 --- /dev/null +++ b/level/block/lightning_rod.go @@ -0,0 +1,11 @@ +package block + +type LightningRod struct { + Facing string + Powered string + Waterlogged string +} + +func (LightningRod) ID() string { + return "minecraft:lightning_rod" +} diff --git a/level/block/lilac.go b/level/block/lilac.go new file mode 100644 index 0000000..4d1f0e8 --- /dev/null +++ b/level/block/lilac.go @@ -0,0 +1,9 @@ +package block + +type Lilac struct { + Half string +} + +func (Lilac) ID() string { + return "minecraft:lilac" +} diff --git a/level/block/lily_of_the_valley.go b/level/block/lily_of_the_valley.go new file mode 100644 index 0000000..754f23f --- /dev/null +++ b/level/block/lily_of_the_valley.go @@ -0,0 +1,8 @@ +package block + +type LilyOfTheValley struct { +} + +func (LilyOfTheValley) ID() string { + return "minecraft:lily_of_the_valley" +} diff --git a/level/block/lily_pad.go b/level/block/lily_pad.go new file mode 100644 index 0000000..a7bedb9 --- /dev/null +++ b/level/block/lily_pad.go @@ -0,0 +1,8 @@ +package block + +type LilyPad struct { +} + +func (LilyPad) ID() string { + return "minecraft:lily_pad" +} diff --git a/level/block/lime_banner.go b/level/block/lime_banner.go new file mode 100644 index 0000000..309bc32 --- /dev/null +++ b/level/block/lime_banner.go @@ -0,0 +1,9 @@ +package block + +type LimeBanner struct { + Rotation string +} + +func (LimeBanner) ID() string { + return "minecraft:lime_banner" +} diff --git a/level/block/lime_bed.go b/level/block/lime_bed.go new file mode 100644 index 0000000..c86c0f6 --- /dev/null +++ b/level/block/lime_bed.go @@ -0,0 +1,11 @@ +package block + +type LimeBed struct { + Facing string + Occupied string + Part string +} + +func (LimeBed) ID() string { + return "minecraft:lime_bed" +} diff --git a/level/block/lime_candle.go b/level/block/lime_candle.go new file mode 100644 index 0000000..fd4bc21 --- /dev/null +++ b/level/block/lime_candle.go @@ -0,0 +1,11 @@ +package block + +type LimeCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (LimeCandle) ID() string { + return "minecraft:lime_candle" +} diff --git a/level/block/lime_candle_cake.go b/level/block/lime_candle_cake.go new file mode 100644 index 0000000..03892eb --- /dev/null +++ b/level/block/lime_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type LimeCandleCake struct { + Lit string +} + +func (LimeCandleCake) ID() string { + return "minecraft:lime_candle_cake" +} diff --git a/level/block/lime_carpet.go b/level/block/lime_carpet.go new file mode 100644 index 0000000..f0eda04 --- /dev/null +++ b/level/block/lime_carpet.go @@ -0,0 +1,8 @@ +package block + +type LimeCarpet struct { +} + +func (LimeCarpet) ID() string { + return "minecraft:lime_carpet" +} diff --git a/level/block/lime_concrete.go b/level/block/lime_concrete.go new file mode 100644 index 0000000..6d0218c --- /dev/null +++ b/level/block/lime_concrete.go @@ -0,0 +1,8 @@ +package block + +type LimeConcrete struct { +} + +func (LimeConcrete) ID() string { + return "minecraft:lime_concrete" +} diff --git a/level/block/lime_concrete_powder.go b/level/block/lime_concrete_powder.go new file mode 100644 index 0000000..c39f2a8 --- /dev/null +++ b/level/block/lime_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type LimeConcretePowder struct { +} + +func (LimeConcretePowder) ID() string { + return "minecraft:lime_concrete_powder" +} diff --git a/level/block/lime_glazed_terracotta.go b/level/block/lime_glazed_terracotta.go new file mode 100644 index 0000000..b1e900b --- /dev/null +++ b/level/block/lime_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type LimeGlazedTerracotta struct { + Facing string +} + +func (LimeGlazedTerracotta) ID() string { + return "minecraft:lime_glazed_terracotta" +} diff --git a/level/block/lime_shulker_box.go b/level/block/lime_shulker_box.go new file mode 100644 index 0000000..b7ded0c --- /dev/null +++ b/level/block/lime_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type LimeShulkerBox struct { + Facing string +} + +func (LimeShulkerBox) ID() string { + return "minecraft:lime_shulker_box" +} diff --git a/level/block/lime_stained_glass.go b/level/block/lime_stained_glass.go new file mode 100644 index 0000000..8a751a7 --- /dev/null +++ b/level/block/lime_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type LimeStainedGlass struct { +} + +func (LimeStainedGlass) ID() string { + return "minecraft:lime_stained_glass" +} diff --git a/level/block/lime_stained_glass_pane.go b/level/block/lime_stained_glass_pane.go new file mode 100644 index 0000000..dabf2af --- /dev/null +++ b/level/block/lime_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type LimeStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (LimeStainedGlassPane) ID() string { + return "minecraft:lime_stained_glass_pane" +} diff --git a/level/block/lime_terracotta.go b/level/block/lime_terracotta.go new file mode 100644 index 0000000..2096ac4 --- /dev/null +++ b/level/block/lime_terracotta.go @@ -0,0 +1,8 @@ +package block + +type LimeTerracotta struct { +} + +func (LimeTerracotta) ID() string { + return "minecraft:lime_terracotta" +} diff --git a/level/block/lime_wall_banner.go b/level/block/lime_wall_banner.go new file mode 100644 index 0000000..f4dabef --- /dev/null +++ b/level/block/lime_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type LimeWallBanner struct { + Facing string +} + +func (LimeWallBanner) ID() string { + return "minecraft:lime_wall_banner" +} diff --git a/level/block/lime_wool.go b/level/block/lime_wool.go new file mode 100644 index 0000000..58abe8d --- /dev/null +++ b/level/block/lime_wool.go @@ -0,0 +1,8 @@ +package block + +type LimeWool struct { +} + +func (LimeWool) ID() string { + return "minecraft:lime_wool" +} diff --git a/level/block/lodestone.go b/level/block/lodestone.go new file mode 100644 index 0000000..159d164 --- /dev/null +++ b/level/block/lodestone.go @@ -0,0 +1,8 @@ +package block + +type Lodestone struct { +} + +func (Lodestone) ID() string { + return "minecraft:lodestone" +} diff --git a/level/block/loom.go b/level/block/loom.go new file mode 100644 index 0000000..0dd586d --- /dev/null +++ b/level/block/loom.go @@ -0,0 +1,9 @@ +package block + +type Loom struct { + Facing string +} + +func (Loom) ID() string { + return "minecraft:loom" +} diff --git a/level/block/magenta_banner.go b/level/block/magenta_banner.go new file mode 100644 index 0000000..8dc134c --- /dev/null +++ b/level/block/magenta_banner.go @@ -0,0 +1,9 @@ +package block + +type MagentaBanner struct { + Rotation string +} + +func (MagentaBanner) ID() string { + return "minecraft:magenta_banner" +} diff --git a/level/block/magenta_bed.go b/level/block/magenta_bed.go new file mode 100644 index 0000000..ce76658 --- /dev/null +++ b/level/block/magenta_bed.go @@ -0,0 +1,11 @@ +package block + +type MagentaBed struct { + Facing string + Occupied string + Part string +} + +func (MagentaBed) ID() string { + return "minecraft:magenta_bed" +} diff --git a/level/block/magenta_candle.go b/level/block/magenta_candle.go new file mode 100644 index 0000000..53e7e7e --- /dev/null +++ b/level/block/magenta_candle.go @@ -0,0 +1,11 @@ +package block + +type MagentaCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (MagentaCandle) ID() string { + return "minecraft:magenta_candle" +} diff --git a/level/block/magenta_candle_cake.go b/level/block/magenta_candle_cake.go new file mode 100644 index 0000000..9505e3b --- /dev/null +++ b/level/block/magenta_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type MagentaCandleCake struct { + Lit string +} + +func (MagentaCandleCake) ID() string { + return "minecraft:magenta_candle_cake" +} diff --git a/level/block/magenta_carpet.go b/level/block/magenta_carpet.go new file mode 100644 index 0000000..434b392 --- /dev/null +++ b/level/block/magenta_carpet.go @@ -0,0 +1,8 @@ +package block + +type MagentaCarpet struct { +} + +func (MagentaCarpet) ID() string { + return "minecraft:magenta_carpet" +} diff --git a/level/block/magenta_concrete.go b/level/block/magenta_concrete.go new file mode 100644 index 0000000..9eb11a2 --- /dev/null +++ b/level/block/magenta_concrete.go @@ -0,0 +1,8 @@ +package block + +type MagentaConcrete struct { +} + +func (MagentaConcrete) ID() string { + return "minecraft:magenta_concrete" +} diff --git a/level/block/magenta_concrete_powder.go b/level/block/magenta_concrete_powder.go new file mode 100644 index 0000000..4bff6f6 --- /dev/null +++ b/level/block/magenta_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type MagentaConcretePowder struct { +} + +func (MagentaConcretePowder) ID() string { + return "minecraft:magenta_concrete_powder" +} diff --git a/level/block/magenta_glazed_terracotta.go b/level/block/magenta_glazed_terracotta.go new file mode 100644 index 0000000..e05562b --- /dev/null +++ b/level/block/magenta_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type MagentaGlazedTerracotta struct { + Facing string +} + +func (MagentaGlazedTerracotta) ID() string { + return "minecraft:magenta_glazed_terracotta" +} diff --git a/level/block/magenta_shulker_box.go b/level/block/magenta_shulker_box.go new file mode 100644 index 0000000..e889546 --- /dev/null +++ b/level/block/magenta_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type MagentaShulkerBox struct { + Facing string +} + +func (MagentaShulkerBox) ID() string { + return "minecraft:magenta_shulker_box" +} diff --git a/level/block/magenta_stained_glass.go b/level/block/magenta_stained_glass.go new file mode 100644 index 0000000..e75b988 --- /dev/null +++ b/level/block/magenta_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type MagentaStainedGlass struct { +} + +func (MagentaStainedGlass) ID() string { + return "minecraft:magenta_stained_glass" +} diff --git a/level/block/magenta_stained_glass_pane.go b/level/block/magenta_stained_glass_pane.go new file mode 100644 index 0000000..20290f4 --- /dev/null +++ b/level/block/magenta_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type MagentaStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (MagentaStainedGlassPane) ID() string { + return "minecraft:magenta_stained_glass_pane" +} diff --git a/level/block/magenta_terracotta.go b/level/block/magenta_terracotta.go new file mode 100644 index 0000000..6baf318 --- /dev/null +++ b/level/block/magenta_terracotta.go @@ -0,0 +1,8 @@ +package block + +type MagentaTerracotta struct { +} + +func (MagentaTerracotta) ID() string { + return "minecraft:magenta_terracotta" +} diff --git a/level/block/magenta_wall_banner.go b/level/block/magenta_wall_banner.go new file mode 100644 index 0000000..dcae003 --- /dev/null +++ b/level/block/magenta_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type MagentaWallBanner struct { + Facing string +} + +func (MagentaWallBanner) ID() string { + return "minecraft:magenta_wall_banner" +} diff --git a/level/block/magenta_wool.go b/level/block/magenta_wool.go new file mode 100644 index 0000000..d032f6f --- /dev/null +++ b/level/block/magenta_wool.go @@ -0,0 +1,8 @@ +package block + +type MagentaWool struct { +} + +func (MagentaWool) ID() string { + return "minecraft:magenta_wool" +} diff --git a/level/block/magma_block.go b/level/block/magma_block.go new file mode 100644 index 0000000..e30b75d --- /dev/null +++ b/level/block/magma_block.go @@ -0,0 +1,8 @@ +package block + +type MagmaBlock struct { +} + +func (MagmaBlock) ID() string { + return "minecraft:magma_block" +} diff --git a/level/block/medium_amethyst_bud.go b/level/block/medium_amethyst_bud.go new file mode 100644 index 0000000..bdeae15 --- /dev/null +++ b/level/block/medium_amethyst_bud.go @@ -0,0 +1,10 @@ +package block + +type MediumAmethystBud struct { + Facing string + Waterlogged string +} + +func (MediumAmethystBud) ID() string { + return "minecraft:medium_amethyst_bud" +} diff --git a/level/block/melon.go b/level/block/melon.go new file mode 100644 index 0000000..97a808e --- /dev/null +++ b/level/block/melon.go @@ -0,0 +1,8 @@ +package block + +type Melon struct { +} + +func (Melon) ID() string { + return "minecraft:melon" +} diff --git a/level/block/melon_stem.go b/level/block/melon_stem.go new file mode 100644 index 0000000..40c7baf --- /dev/null +++ b/level/block/melon_stem.go @@ -0,0 +1,9 @@ +package block + +type MelonStem struct { + Age string +} + +func (MelonStem) ID() string { + return "minecraft:melon_stem" +} diff --git a/level/block/moss_block.go b/level/block/moss_block.go new file mode 100644 index 0000000..30d3cef --- /dev/null +++ b/level/block/moss_block.go @@ -0,0 +1,8 @@ +package block + +type MossBlock struct { +} + +func (MossBlock) ID() string { + return "minecraft:moss_block" +} diff --git a/level/block/moss_carpet.go b/level/block/moss_carpet.go new file mode 100644 index 0000000..9236f73 --- /dev/null +++ b/level/block/moss_carpet.go @@ -0,0 +1,8 @@ +package block + +type MossCarpet struct { +} + +func (MossCarpet) ID() string { + return "minecraft:moss_carpet" +} diff --git a/level/block/mossy_cobblestone.go b/level/block/mossy_cobblestone.go new file mode 100644 index 0000000..6f82038 --- /dev/null +++ b/level/block/mossy_cobblestone.go @@ -0,0 +1,8 @@ +package block + +type MossyCobblestone struct { +} + +func (MossyCobblestone) ID() string { + return "minecraft:mossy_cobblestone" +} diff --git a/level/block/mossy_cobblestone_slab.go b/level/block/mossy_cobblestone_slab.go new file mode 100644 index 0000000..4fc9e9b --- /dev/null +++ b/level/block/mossy_cobblestone_slab.go @@ -0,0 +1,10 @@ +package block + +type MossyCobblestoneSlab struct { + Type string + Waterlogged string +} + +func (MossyCobblestoneSlab) ID() string { + return "minecraft:mossy_cobblestone_slab" +} diff --git a/level/block/mossy_cobblestone_stairs.go b/level/block/mossy_cobblestone_stairs.go new file mode 100644 index 0000000..67c4f2f --- /dev/null +++ b/level/block/mossy_cobblestone_stairs.go @@ -0,0 +1,12 @@ +package block + +type MossyCobblestoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (MossyCobblestoneStairs) ID() string { + return "minecraft:mossy_cobblestone_stairs" +} diff --git a/level/block/mossy_cobblestone_wall.go b/level/block/mossy_cobblestone_wall.go new file mode 100644 index 0000000..1f791da --- /dev/null +++ b/level/block/mossy_cobblestone_wall.go @@ -0,0 +1,14 @@ +package block + +type MossyCobblestoneWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (MossyCobblestoneWall) ID() string { + return "minecraft:mossy_cobblestone_wall" +} diff --git a/level/block/mossy_stone_brick_slab.go b/level/block/mossy_stone_brick_slab.go new file mode 100644 index 0000000..9eea960 --- /dev/null +++ b/level/block/mossy_stone_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type MossyStoneBrickSlab struct { + Type string + Waterlogged string +} + +func (MossyStoneBrickSlab) ID() string { + return "minecraft:mossy_stone_brick_slab" +} diff --git a/level/block/mossy_stone_brick_stairs.go b/level/block/mossy_stone_brick_stairs.go new file mode 100644 index 0000000..8438bae --- /dev/null +++ b/level/block/mossy_stone_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type MossyStoneBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (MossyStoneBrickStairs) ID() string { + return "minecraft:mossy_stone_brick_stairs" +} diff --git a/level/block/mossy_stone_brick_wall.go b/level/block/mossy_stone_brick_wall.go new file mode 100644 index 0000000..8362da1 --- /dev/null +++ b/level/block/mossy_stone_brick_wall.go @@ -0,0 +1,14 @@ +package block + +type MossyStoneBrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (MossyStoneBrickWall) ID() string { + return "minecraft:mossy_stone_brick_wall" +} diff --git a/level/block/mossy_stone_bricks.go b/level/block/mossy_stone_bricks.go new file mode 100644 index 0000000..671ad39 --- /dev/null +++ b/level/block/mossy_stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type MossyStoneBricks struct { +} + +func (MossyStoneBricks) ID() string { + return "minecraft:mossy_stone_bricks" +} diff --git a/level/block/moving_piston.go b/level/block/moving_piston.go new file mode 100644 index 0000000..aaf7c5d --- /dev/null +++ b/level/block/moving_piston.go @@ -0,0 +1,10 @@ +package block + +type MovingPiston struct { + Facing string + Type string +} + +func (MovingPiston) ID() string { + return "minecraft:moving_piston" +} diff --git a/level/block/mushroom_stem.go b/level/block/mushroom_stem.go new file mode 100644 index 0000000..c755b76 --- /dev/null +++ b/level/block/mushroom_stem.go @@ -0,0 +1,14 @@ +package block + +type MushroomStem struct { + Down string + East string + North string + South string + Up string + West string +} + +func (MushroomStem) ID() string { + return "minecraft:mushroom_stem" +} diff --git a/level/block/mycelium.go b/level/block/mycelium.go new file mode 100644 index 0000000..43bf7d3 --- /dev/null +++ b/level/block/mycelium.go @@ -0,0 +1,9 @@ +package block + +type Mycelium struct { + Snowy string +} + +func (Mycelium) ID() string { + return "minecraft:mycelium" +} diff --git a/level/block/nether_brick_fence.go b/level/block/nether_brick_fence.go new file mode 100644 index 0000000..363913d --- /dev/null +++ b/level/block/nether_brick_fence.go @@ -0,0 +1,13 @@ +package block + +type NetherBrickFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (NetherBrickFence) ID() string { + return "minecraft:nether_brick_fence" +} diff --git a/level/block/nether_brick_slab.go b/level/block/nether_brick_slab.go new file mode 100644 index 0000000..103697b --- /dev/null +++ b/level/block/nether_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type NetherBrickSlab struct { + Type string + Waterlogged string +} + +func (NetherBrickSlab) ID() string { + return "minecraft:nether_brick_slab" +} diff --git a/level/block/nether_brick_stairs.go b/level/block/nether_brick_stairs.go new file mode 100644 index 0000000..9cca74d --- /dev/null +++ b/level/block/nether_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type NetherBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (NetherBrickStairs) ID() string { + return "minecraft:nether_brick_stairs" +} diff --git a/level/block/nether_brick_wall.go b/level/block/nether_brick_wall.go new file mode 100644 index 0000000..11f4a40 --- /dev/null +++ b/level/block/nether_brick_wall.go @@ -0,0 +1,14 @@ +package block + +type NetherBrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (NetherBrickWall) ID() string { + return "minecraft:nether_brick_wall" +} diff --git a/level/block/nether_bricks.go b/level/block/nether_bricks.go new file mode 100644 index 0000000..4fbe454 --- /dev/null +++ b/level/block/nether_bricks.go @@ -0,0 +1,8 @@ +package block + +type NetherBricks struct { +} + +func (NetherBricks) ID() string { + return "minecraft:nether_bricks" +} diff --git a/level/block/nether_gold_ore.go b/level/block/nether_gold_ore.go new file mode 100644 index 0000000..4d89619 --- /dev/null +++ b/level/block/nether_gold_ore.go @@ -0,0 +1,8 @@ +package block + +type NetherGoldOre struct { +} + +func (NetherGoldOre) ID() string { + return "minecraft:nether_gold_ore" +} diff --git a/level/block/nether_portal.go b/level/block/nether_portal.go new file mode 100644 index 0000000..57d3584 --- /dev/null +++ b/level/block/nether_portal.go @@ -0,0 +1,9 @@ +package block + +type NetherPortal struct { + Axis string +} + +func (NetherPortal) ID() string { + return "minecraft:nether_portal" +} diff --git a/level/block/nether_quartz_ore.go b/level/block/nether_quartz_ore.go new file mode 100644 index 0000000..5d86356 --- /dev/null +++ b/level/block/nether_quartz_ore.go @@ -0,0 +1,8 @@ +package block + +type NetherQuartzOre struct { +} + +func (NetherQuartzOre) ID() string { + return "minecraft:nether_quartz_ore" +} diff --git a/level/block/nether_sprouts.go b/level/block/nether_sprouts.go new file mode 100644 index 0000000..4a27166 --- /dev/null +++ b/level/block/nether_sprouts.go @@ -0,0 +1,8 @@ +package block + +type NetherSprouts struct { +} + +func (NetherSprouts) ID() string { + return "minecraft:nether_sprouts" +} diff --git a/level/block/nether_wart.go b/level/block/nether_wart.go new file mode 100644 index 0000000..2febce4 --- /dev/null +++ b/level/block/nether_wart.go @@ -0,0 +1,9 @@ +package block + +type NetherWart struct { + Age string +} + +func (NetherWart) ID() string { + return "minecraft:nether_wart" +} diff --git a/level/block/nether_wart_block.go b/level/block/nether_wart_block.go new file mode 100644 index 0000000..0ae9863 --- /dev/null +++ b/level/block/nether_wart_block.go @@ -0,0 +1,8 @@ +package block + +type NetherWartBlock struct { +} + +func (NetherWartBlock) ID() string { + return "minecraft:nether_wart_block" +} diff --git a/level/block/netherite_block.go b/level/block/netherite_block.go new file mode 100644 index 0000000..fb42321 --- /dev/null +++ b/level/block/netherite_block.go @@ -0,0 +1,8 @@ +package block + +type NetheriteBlock struct { +} + +func (NetheriteBlock) ID() string { + return "minecraft:netherite_block" +} diff --git a/level/block/netherrack.go b/level/block/netherrack.go new file mode 100644 index 0000000..7e441fa --- /dev/null +++ b/level/block/netherrack.go @@ -0,0 +1,8 @@ +package block + +type Netherrack struct { +} + +func (Netherrack) ID() string { + return "minecraft:netherrack" +} diff --git a/level/block/note_block.go b/level/block/note_block.go new file mode 100644 index 0000000..a63bcb6 --- /dev/null +++ b/level/block/note_block.go @@ -0,0 +1,11 @@ +package block + +type NoteBlock struct { + Instrument string + Note string + Powered string +} + +func (NoteBlock) ID() string { + return "minecraft:note_block" +} diff --git a/level/block/oak_button.go b/level/block/oak_button.go new file mode 100644 index 0000000..0f84e07 --- /dev/null +++ b/level/block/oak_button.go @@ -0,0 +1,11 @@ +package block + +type OakButton struct { + Face string + Facing string + Powered string +} + +func (OakButton) ID() string { + return "minecraft:oak_button" +} diff --git a/level/block/oak_door.go b/level/block/oak_door.go new file mode 100644 index 0000000..0bcceac --- /dev/null +++ b/level/block/oak_door.go @@ -0,0 +1,13 @@ +package block + +type OakDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (OakDoor) ID() string { + return "minecraft:oak_door" +} diff --git a/level/block/oak_fence.go b/level/block/oak_fence.go new file mode 100644 index 0000000..3bb7a29 --- /dev/null +++ b/level/block/oak_fence.go @@ -0,0 +1,13 @@ +package block + +type OakFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (OakFence) ID() string { + return "minecraft:oak_fence" +} diff --git a/level/block/oak_fence_gate.go b/level/block/oak_fence_gate.go new file mode 100644 index 0000000..0038415 --- /dev/null +++ b/level/block/oak_fence_gate.go @@ -0,0 +1,12 @@ +package block + +type OakFenceGate struct { + Facing string + In_wall string + Open string + Powered string +} + +func (OakFenceGate) ID() string { + return "minecraft:oak_fence_gate" +} diff --git a/level/block/oak_leaves.go b/level/block/oak_leaves.go new file mode 100644 index 0000000..7aa219f --- /dev/null +++ b/level/block/oak_leaves.go @@ -0,0 +1,10 @@ +package block + +type OakLeaves struct { + Distance string + Persistent string +} + +func (OakLeaves) ID() string { + return "minecraft:oak_leaves" +} diff --git a/level/block/oak_log.go b/level/block/oak_log.go new file mode 100644 index 0000000..0d06b41 --- /dev/null +++ b/level/block/oak_log.go @@ -0,0 +1,9 @@ +package block + +type OakLog struct { + Axis string +} + +func (OakLog) ID() string { + return "minecraft:oak_log" +} diff --git a/level/block/oak_planks.go b/level/block/oak_planks.go new file mode 100644 index 0000000..ae10f70 --- /dev/null +++ b/level/block/oak_planks.go @@ -0,0 +1,8 @@ +package block + +type OakPlanks struct { +} + +func (OakPlanks) ID() string { + return "minecraft:oak_planks" +} diff --git a/level/block/oak_pressure_plate.go b/level/block/oak_pressure_plate.go new file mode 100644 index 0000000..89d2fb4 --- /dev/null +++ b/level/block/oak_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type OakPressurePlate struct { + Powered string +} + +func (OakPressurePlate) ID() string { + return "minecraft:oak_pressure_plate" +} diff --git a/level/block/oak_sapling.go b/level/block/oak_sapling.go new file mode 100644 index 0000000..f44fc39 --- /dev/null +++ b/level/block/oak_sapling.go @@ -0,0 +1,9 @@ +package block + +type OakSapling struct { + Stage string +} + +func (OakSapling) ID() string { + return "minecraft:oak_sapling" +} diff --git a/level/block/oak_sign.go b/level/block/oak_sign.go new file mode 100644 index 0000000..6db47ea --- /dev/null +++ b/level/block/oak_sign.go @@ -0,0 +1,10 @@ +package block + +type OakSign struct { + Rotation string + Waterlogged string +} + +func (OakSign) ID() string { + return "minecraft:oak_sign" +} diff --git a/level/block/oak_slab.go b/level/block/oak_slab.go new file mode 100644 index 0000000..e6207c0 --- /dev/null +++ b/level/block/oak_slab.go @@ -0,0 +1,10 @@ +package block + +type OakSlab struct { + Type string + Waterlogged string +} + +func (OakSlab) ID() string { + return "minecraft:oak_slab" +} diff --git a/level/block/oak_stairs.go b/level/block/oak_stairs.go new file mode 100644 index 0000000..da2d1c4 --- /dev/null +++ b/level/block/oak_stairs.go @@ -0,0 +1,12 @@ +package block + +type OakStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (OakStairs) ID() string { + return "minecraft:oak_stairs" +} diff --git a/level/block/oak_trapdoor.go b/level/block/oak_trapdoor.go new file mode 100644 index 0000000..8057133 --- /dev/null +++ b/level/block/oak_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type OakTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (OakTrapdoor) ID() string { + return "minecraft:oak_trapdoor" +} diff --git a/level/block/oak_wall_sign.go b/level/block/oak_wall_sign.go new file mode 100644 index 0000000..c7adc6b --- /dev/null +++ b/level/block/oak_wall_sign.go @@ -0,0 +1,10 @@ +package block + +type OakWallSign struct { + Facing string + Waterlogged string +} + +func (OakWallSign) ID() string { + return "minecraft:oak_wall_sign" +} diff --git a/level/block/oak_wood.go b/level/block/oak_wood.go new file mode 100644 index 0000000..db15d8b --- /dev/null +++ b/level/block/oak_wood.go @@ -0,0 +1,9 @@ +package block + +type OakWood struct { + Axis string +} + +func (OakWood) ID() string { + return "minecraft:oak_wood" +} diff --git a/level/block/observer.go b/level/block/observer.go new file mode 100644 index 0000000..7c30c36 --- /dev/null +++ b/level/block/observer.go @@ -0,0 +1,10 @@ +package block + +type Observer struct { + Facing string + Powered string +} + +func (Observer) ID() string { + return "minecraft:observer" +} diff --git a/level/block/obsidian.go b/level/block/obsidian.go new file mode 100644 index 0000000..2898020 --- /dev/null +++ b/level/block/obsidian.go @@ -0,0 +1,8 @@ +package block + +type Obsidian struct { +} + +func (Obsidian) ID() string { + return "minecraft:obsidian" +} diff --git a/level/block/orange_banner.go b/level/block/orange_banner.go new file mode 100644 index 0000000..2ba8ba3 --- /dev/null +++ b/level/block/orange_banner.go @@ -0,0 +1,9 @@ +package block + +type OrangeBanner struct { + Rotation string +} + +func (OrangeBanner) ID() string { + return "minecraft:orange_banner" +} diff --git a/level/block/orange_bed.go b/level/block/orange_bed.go new file mode 100644 index 0000000..f0887cf --- /dev/null +++ b/level/block/orange_bed.go @@ -0,0 +1,11 @@ +package block + +type OrangeBed struct { + Facing string + Occupied string + Part string +} + +func (OrangeBed) ID() string { + return "minecraft:orange_bed" +} diff --git a/level/block/orange_candle.go b/level/block/orange_candle.go new file mode 100644 index 0000000..ddc55f1 --- /dev/null +++ b/level/block/orange_candle.go @@ -0,0 +1,11 @@ +package block + +type OrangeCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (OrangeCandle) ID() string { + return "minecraft:orange_candle" +} diff --git a/level/block/orange_candle_cake.go b/level/block/orange_candle_cake.go new file mode 100644 index 0000000..a18baab --- /dev/null +++ b/level/block/orange_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type OrangeCandleCake struct { + Lit string +} + +func (OrangeCandleCake) ID() string { + return "minecraft:orange_candle_cake" +} diff --git a/level/block/orange_carpet.go b/level/block/orange_carpet.go new file mode 100644 index 0000000..2f93c29 --- /dev/null +++ b/level/block/orange_carpet.go @@ -0,0 +1,8 @@ +package block + +type OrangeCarpet struct { +} + +func (OrangeCarpet) ID() string { + return "minecraft:orange_carpet" +} diff --git a/level/block/orange_concrete.go b/level/block/orange_concrete.go new file mode 100644 index 0000000..c034bca --- /dev/null +++ b/level/block/orange_concrete.go @@ -0,0 +1,8 @@ +package block + +type OrangeConcrete struct { +} + +func (OrangeConcrete) ID() string { + return "minecraft:orange_concrete" +} diff --git a/level/block/orange_concrete_powder.go b/level/block/orange_concrete_powder.go new file mode 100644 index 0000000..cc47fe1 --- /dev/null +++ b/level/block/orange_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type OrangeConcretePowder struct { +} + +func (OrangeConcretePowder) ID() string { + return "minecraft:orange_concrete_powder" +} diff --git a/level/block/orange_glazed_terracotta.go b/level/block/orange_glazed_terracotta.go new file mode 100644 index 0000000..1157e1c --- /dev/null +++ b/level/block/orange_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type OrangeGlazedTerracotta struct { + Facing string +} + +func (OrangeGlazedTerracotta) ID() string { + return "minecraft:orange_glazed_terracotta" +} diff --git a/level/block/orange_shulker_box.go b/level/block/orange_shulker_box.go new file mode 100644 index 0000000..47ea271 --- /dev/null +++ b/level/block/orange_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type OrangeShulkerBox struct { + Facing string +} + +func (OrangeShulkerBox) ID() string { + return "minecraft:orange_shulker_box" +} diff --git a/level/block/orange_stained_glass.go b/level/block/orange_stained_glass.go new file mode 100644 index 0000000..0d097f1 --- /dev/null +++ b/level/block/orange_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type OrangeStainedGlass struct { +} + +func (OrangeStainedGlass) ID() string { + return "minecraft:orange_stained_glass" +} diff --git a/level/block/orange_stained_glass_pane.go b/level/block/orange_stained_glass_pane.go new file mode 100644 index 0000000..724e90e --- /dev/null +++ b/level/block/orange_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type OrangeStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (OrangeStainedGlassPane) ID() string { + return "minecraft:orange_stained_glass_pane" +} diff --git a/level/block/orange_terracotta.go b/level/block/orange_terracotta.go new file mode 100644 index 0000000..5baa2c7 --- /dev/null +++ b/level/block/orange_terracotta.go @@ -0,0 +1,8 @@ +package block + +type OrangeTerracotta struct { +} + +func (OrangeTerracotta) ID() string { + return "minecraft:orange_terracotta" +} diff --git a/level/block/orange_tulip.go b/level/block/orange_tulip.go new file mode 100644 index 0000000..8e36e23 --- /dev/null +++ b/level/block/orange_tulip.go @@ -0,0 +1,8 @@ +package block + +type OrangeTulip struct { +} + +func (OrangeTulip) ID() string { + return "minecraft:orange_tulip" +} diff --git a/level/block/orange_wall_banner.go b/level/block/orange_wall_banner.go new file mode 100644 index 0000000..05db6e1 --- /dev/null +++ b/level/block/orange_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type OrangeWallBanner struct { + Facing string +} + +func (OrangeWallBanner) ID() string { + return "minecraft:orange_wall_banner" +} diff --git a/level/block/orange_wool.go b/level/block/orange_wool.go new file mode 100644 index 0000000..ca15666 --- /dev/null +++ b/level/block/orange_wool.go @@ -0,0 +1,8 @@ +package block + +type OrangeWool struct { +} + +func (OrangeWool) ID() string { + return "minecraft:orange_wool" +} diff --git a/level/block/oxeye_daisy.go b/level/block/oxeye_daisy.go new file mode 100644 index 0000000..a559ea7 --- /dev/null +++ b/level/block/oxeye_daisy.go @@ -0,0 +1,8 @@ +package block + +type OxeyeDaisy struct { +} + +func (OxeyeDaisy) ID() string { + return "minecraft:oxeye_daisy" +} diff --git a/level/block/oxidized_copper.go b/level/block/oxidized_copper.go new file mode 100644 index 0000000..94b916c --- /dev/null +++ b/level/block/oxidized_copper.go @@ -0,0 +1,8 @@ +package block + +type OxidizedCopper struct { +} + +func (OxidizedCopper) ID() string { + return "minecraft:oxidized_copper" +} diff --git a/level/block/oxidized_cut_copper.go b/level/block/oxidized_cut_copper.go new file mode 100644 index 0000000..3ff29d0 --- /dev/null +++ b/level/block/oxidized_cut_copper.go @@ -0,0 +1,8 @@ +package block + +type OxidizedCutCopper struct { +} + +func (OxidizedCutCopper) ID() string { + return "minecraft:oxidized_cut_copper" +} diff --git a/level/block/oxidized_cut_copper_slab.go b/level/block/oxidized_cut_copper_slab.go new file mode 100644 index 0000000..2ce99ec --- /dev/null +++ b/level/block/oxidized_cut_copper_slab.go @@ -0,0 +1,10 @@ +package block + +type OxidizedCutCopperSlab struct { + Type string + Waterlogged string +} + +func (OxidizedCutCopperSlab) ID() string { + return "minecraft:oxidized_cut_copper_slab" +} diff --git a/level/block/oxidized_cut_copper_stairs.go b/level/block/oxidized_cut_copper_stairs.go new file mode 100644 index 0000000..709972a --- /dev/null +++ b/level/block/oxidized_cut_copper_stairs.go @@ -0,0 +1,12 @@ +package block + +type OxidizedCutCopperStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (OxidizedCutCopperStairs) ID() string { + return "minecraft:oxidized_cut_copper_stairs" +} diff --git a/level/block/packed_ice.go b/level/block/packed_ice.go new file mode 100644 index 0000000..8b0e180 --- /dev/null +++ b/level/block/packed_ice.go @@ -0,0 +1,8 @@ +package block + +type PackedIce struct { +} + +func (PackedIce) ID() string { + return "minecraft:packed_ice" +} diff --git a/level/block/peony.go b/level/block/peony.go new file mode 100644 index 0000000..a89c129 --- /dev/null +++ b/level/block/peony.go @@ -0,0 +1,9 @@ +package block + +type Peony struct { + Half string +} + +func (Peony) ID() string { + return "minecraft:peony" +} diff --git a/level/block/petrified_oak_slab.go b/level/block/petrified_oak_slab.go new file mode 100644 index 0000000..d0cae10 --- /dev/null +++ b/level/block/petrified_oak_slab.go @@ -0,0 +1,10 @@ +package block + +type PetrifiedOakSlab struct { + Type string + Waterlogged string +} + +func (PetrifiedOakSlab) ID() string { + return "minecraft:petrified_oak_slab" +} diff --git a/level/block/pink_banner.go b/level/block/pink_banner.go new file mode 100644 index 0000000..a1de212 --- /dev/null +++ b/level/block/pink_banner.go @@ -0,0 +1,9 @@ +package block + +type PinkBanner struct { + Rotation string +} + +func (PinkBanner) ID() string { + return "minecraft:pink_banner" +} diff --git a/level/block/pink_bed.go b/level/block/pink_bed.go new file mode 100644 index 0000000..4f071e0 --- /dev/null +++ b/level/block/pink_bed.go @@ -0,0 +1,11 @@ +package block + +type PinkBed struct { + Facing string + Occupied string + Part string +} + +func (PinkBed) ID() string { + return "minecraft:pink_bed" +} diff --git a/level/block/pink_candle.go b/level/block/pink_candle.go new file mode 100644 index 0000000..eb95853 --- /dev/null +++ b/level/block/pink_candle.go @@ -0,0 +1,11 @@ +package block + +type PinkCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (PinkCandle) ID() string { + return "minecraft:pink_candle" +} diff --git a/level/block/pink_candle_cake.go b/level/block/pink_candle_cake.go new file mode 100644 index 0000000..a523ce3 --- /dev/null +++ b/level/block/pink_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type PinkCandleCake struct { + Lit string +} + +func (PinkCandleCake) ID() string { + return "minecraft:pink_candle_cake" +} diff --git a/level/block/pink_carpet.go b/level/block/pink_carpet.go new file mode 100644 index 0000000..6a8e209 --- /dev/null +++ b/level/block/pink_carpet.go @@ -0,0 +1,8 @@ +package block + +type PinkCarpet struct { +} + +func (PinkCarpet) ID() string { + return "minecraft:pink_carpet" +} diff --git a/level/block/pink_concrete.go b/level/block/pink_concrete.go new file mode 100644 index 0000000..f7ab45f --- /dev/null +++ b/level/block/pink_concrete.go @@ -0,0 +1,8 @@ +package block + +type PinkConcrete struct { +} + +func (PinkConcrete) ID() string { + return "minecraft:pink_concrete" +} diff --git a/level/block/pink_concrete_powder.go b/level/block/pink_concrete_powder.go new file mode 100644 index 0000000..928e6e6 --- /dev/null +++ b/level/block/pink_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type PinkConcretePowder struct { +} + +func (PinkConcretePowder) ID() string { + return "minecraft:pink_concrete_powder" +} diff --git a/level/block/pink_glazed_terracotta.go b/level/block/pink_glazed_terracotta.go new file mode 100644 index 0000000..a953547 --- /dev/null +++ b/level/block/pink_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type PinkGlazedTerracotta struct { + Facing string +} + +func (PinkGlazedTerracotta) ID() string { + return "minecraft:pink_glazed_terracotta" +} diff --git a/level/block/pink_shulker_box.go b/level/block/pink_shulker_box.go new file mode 100644 index 0000000..c226e04 --- /dev/null +++ b/level/block/pink_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type PinkShulkerBox struct { + Facing string +} + +func (PinkShulkerBox) ID() string { + return "minecraft:pink_shulker_box" +} diff --git a/level/block/pink_stained_glass.go b/level/block/pink_stained_glass.go new file mode 100644 index 0000000..1bbf158 --- /dev/null +++ b/level/block/pink_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type PinkStainedGlass struct { +} + +func (PinkStainedGlass) ID() string { + return "minecraft:pink_stained_glass" +} diff --git a/level/block/pink_stained_glass_pane.go b/level/block/pink_stained_glass_pane.go new file mode 100644 index 0000000..06bcb55 --- /dev/null +++ b/level/block/pink_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type PinkStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (PinkStainedGlassPane) ID() string { + return "minecraft:pink_stained_glass_pane" +} diff --git a/level/block/pink_terracotta.go b/level/block/pink_terracotta.go new file mode 100644 index 0000000..f09e425 --- /dev/null +++ b/level/block/pink_terracotta.go @@ -0,0 +1,8 @@ +package block + +type PinkTerracotta struct { +} + +func (PinkTerracotta) ID() string { + return "minecraft:pink_terracotta" +} diff --git a/level/block/pink_tulip.go b/level/block/pink_tulip.go new file mode 100644 index 0000000..212e8af --- /dev/null +++ b/level/block/pink_tulip.go @@ -0,0 +1,8 @@ +package block + +type PinkTulip struct { +} + +func (PinkTulip) ID() string { + return "minecraft:pink_tulip" +} diff --git a/level/block/pink_wall_banner.go b/level/block/pink_wall_banner.go new file mode 100644 index 0000000..7415338 --- /dev/null +++ b/level/block/pink_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type PinkWallBanner struct { + Facing string +} + +func (PinkWallBanner) ID() string { + return "minecraft:pink_wall_banner" +} diff --git a/level/block/pink_wool.go b/level/block/pink_wool.go new file mode 100644 index 0000000..410183c --- /dev/null +++ b/level/block/pink_wool.go @@ -0,0 +1,8 @@ +package block + +type PinkWool struct { +} + +func (PinkWool) ID() string { + return "minecraft:pink_wool" +} diff --git a/level/block/piston.go b/level/block/piston.go new file mode 100644 index 0000000..415bb61 --- /dev/null +++ b/level/block/piston.go @@ -0,0 +1,10 @@ +package block + +type Piston struct { + Extended string + Facing string +} + +func (Piston) ID() string { + return "minecraft:piston" +} diff --git a/level/block/piston_head.go b/level/block/piston_head.go new file mode 100644 index 0000000..e393b98 --- /dev/null +++ b/level/block/piston_head.go @@ -0,0 +1,11 @@ +package block + +type PistonHead struct { + Facing string + Short string + Type string +} + +func (PistonHead) ID() string { + return "minecraft:piston_head" +} diff --git a/level/block/player_head.go b/level/block/player_head.go new file mode 100644 index 0000000..5b08589 --- /dev/null +++ b/level/block/player_head.go @@ -0,0 +1,9 @@ +package block + +type PlayerHead struct { + Rotation string +} + +func (PlayerHead) ID() string { + return "minecraft:player_head" +} diff --git a/level/block/player_wall_head.go b/level/block/player_wall_head.go new file mode 100644 index 0000000..4b5170f --- /dev/null +++ b/level/block/player_wall_head.go @@ -0,0 +1,9 @@ +package block + +type PlayerWallHead struct { + Facing string +} + +func (PlayerWallHead) ID() string { + return "minecraft:player_wall_head" +} diff --git a/level/block/podzol.go b/level/block/podzol.go new file mode 100644 index 0000000..1918ad7 --- /dev/null +++ b/level/block/podzol.go @@ -0,0 +1,9 @@ +package block + +type Podzol struct { + Snowy string +} + +func (Podzol) ID() string { + return "minecraft:podzol" +} diff --git a/level/block/pointed_dripstone.go b/level/block/pointed_dripstone.go new file mode 100644 index 0000000..1cb22f1 --- /dev/null +++ b/level/block/pointed_dripstone.go @@ -0,0 +1,11 @@ +package block + +type PointedDripstone struct { + Thickness string + Vertical_direction string + Waterlogged string +} + +func (PointedDripstone) ID() string { + return "minecraft:pointed_dripstone" +} diff --git a/level/block/polished_andesite.go b/level/block/polished_andesite.go new file mode 100644 index 0000000..728355e --- /dev/null +++ b/level/block/polished_andesite.go @@ -0,0 +1,8 @@ +package block + +type PolishedAndesite struct { +} + +func (PolishedAndesite) ID() string { + return "minecraft:polished_andesite" +} diff --git a/level/block/polished_andesite_slab.go b/level/block/polished_andesite_slab.go new file mode 100644 index 0000000..8ab3f8b --- /dev/null +++ b/level/block/polished_andesite_slab.go @@ -0,0 +1,10 @@ +package block + +type PolishedAndesiteSlab struct { + Type string + Waterlogged string +} + +func (PolishedAndesiteSlab) ID() string { + return "minecraft:polished_andesite_slab" +} diff --git a/level/block/polished_andesite_stairs.go b/level/block/polished_andesite_stairs.go new file mode 100644 index 0000000..48ecc1e --- /dev/null +++ b/level/block/polished_andesite_stairs.go @@ -0,0 +1,12 @@ +package block + +type PolishedAndesiteStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PolishedAndesiteStairs) ID() string { + return "minecraft:polished_andesite_stairs" +} diff --git a/level/block/polished_basalt.go b/level/block/polished_basalt.go new file mode 100644 index 0000000..54921a1 --- /dev/null +++ b/level/block/polished_basalt.go @@ -0,0 +1,9 @@ +package block + +type PolishedBasalt struct { + Axis string +} + +func (PolishedBasalt) ID() string { + return "minecraft:polished_basalt" +} diff --git a/level/block/polished_blackstone.go b/level/block/polished_blackstone.go new file mode 100644 index 0000000..81329db --- /dev/null +++ b/level/block/polished_blackstone.go @@ -0,0 +1,8 @@ +package block + +type PolishedBlackstone struct { +} + +func (PolishedBlackstone) ID() string { + return "minecraft:polished_blackstone" +} diff --git a/level/block/polished_blackstone_brick_slab.go b/level/block/polished_blackstone_brick_slab.go new file mode 100644 index 0000000..dc141a2 --- /dev/null +++ b/level/block/polished_blackstone_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type PolishedBlackstoneBrickSlab struct { + Type string + Waterlogged string +} + +func (PolishedBlackstoneBrickSlab) ID() string { + return "minecraft:polished_blackstone_brick_slab" +} diff --git a/level/block/polished_blackstone_brick_stairs.go b/level/block/polished_blackstone_brick_stairs.go new file mode 100644 index 0000000..f674391 --- /dev/null +++ b/level/block/polished_blackstone_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type PolishedBlackstoneBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PolishedBlackstoneBrickStairs) ID() string { + return "minecraft:polished_blackstone_brick_stairs" +} diff --git a/level/block/polished_blackstone_brick_wall.go b/level/block/polished_blackstone_brick_wall.go new file mode 100644 index 0000000..4f25471 --- /dev/null +++ b/level/block/polished_blackstone_brick_wall.go @@ -0,0 +1,14 @@ +package block + +type PolishedBlackstoneBrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (PolishedBlackstoneBrickWall) ID() string { + return "minecraft:polished_blackstone_brick_wall" +} diff --git a/level/block/polished_blackstone_bricks.go b/level/block/polished_blackstone_bricks.go new file mode 100644 index 0000000..477d672 --- /dev/null +++ b/level/block/polished_blackstone_bricks.go @@ -0,0 +1,8 @@ +package block + +type PolishedBlackstoneBricks struct { +} + +func (PolishedBlackstoneBricks) ID() string { + return "minecraft:polished_blackstone_bricks" +} diff --git a/level/block/polished_blackstone_button.go b/level/block/polished_blackstone_button.go new file mode 100644 index 0000000..8211d87 --- /dev/null +++ b/level/block/polished_blackstone_button.go @@ -0,0 +1,11 @@ +package block + +type PolishedBlackstoneButton struct { + Face string + Facing string + Powered string +} + +func (PolishedBlackstoneButton) ID() string { + return "minecraft:polished_blackstone_button" +} diff --git a/level/block/polished_blackstone_pressure_plate.go b/level/block/polished_blackstone_pressure_plate.go new file mode 100644 index 0000000..70dd2cb --- /dev/null +++ b/level/block/polished_blackstone_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type PolishedBlackstonePressurePlate struct { + Powered string +} + +func (PolishedBlackstonePressurePlate) ID() string { + return "minecraft:polished_blackstone_pressure_plate" +} diff --git a/level/block/polished_blackstone_slab.go b/level/block/polished_blackstone_slab.go new file mode 100644 index 0000000..d0c60ed --- /dev/null +++ b/level/block/polished_blackstone_slab.go @@ -0,0 +1,10 @@ +package block + +type PolishedBlackstoneSlab struct { + Type string + Waterlogged string +} + +func (PolishedBlackstoneSlab) ID() string { + return "minecraft:polished_blackstone_slab" +} diff --git a/level/block/polished_blackstone_stairs.go b/level/block/polished_blackstone_stairs.go new file mode 100644 index 0000000..e6b23ba --- /dev/null +++ b/level/block/polished_blackstone_stairs.go @@ -0,0 +1,12 @@ +package block + +type PolishedBlackstoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PolishedBlackstoneStairs) ID() string { + return "minecraft:polished_blackstone_stairs" +} diff --git a/level/block/polished_blackstone_wall.go b/level/block/polished_blackstone_wall.go new file mode 100644 index 0000000..c5a06ab --- /dev/null +++ b/level/block/polished_blackstone_wall.go @@ -0,0 +1,14 @@ +package block + +type PolishedBlackstoneWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (PolishedBlackstoneWall) ID() string { + return "minecraft:polished_blackstone_wall" +} diff --git a/level/block/polished_deepslate.go b/level/block/polished_deepslate.go new file mode 100644 index 0000000..d8d7e50 --- /dev/null +++ b/level/block/polished_deepslate.go @@ -0,0 +1,8 @@ +package block + +type PolishedDeepslate struct { +} + +func (PolishedDeepslate) ID() string { + return "minecraft:polished_deepslate" +} diff --git a/level/block/polished_deepslate_slab.go b/level/block/polished_deepslate_slab.go new file mode 100644 index 0000000..5a950a8 --- /dev/null +++ b/level/block/polished_deepslate_slab.go @@ -0,0 +1,10 @@ +package block + +type PolishedDeepslateSlab struct { + Type string + Waterlogged string +} + +func (PolishedDeepslateSlab) ID() string { + return "minecraft:polished_deepslate_slab" +} diff --git a/level/block/polished_deepslate_stairs.go b/level/block/polished_deepslate_stairs.go new file mode 100644 index 0000000..fa69053 --- /dev/null +++ b/level/block/polished_deepslate_stairs.go @@ -0,0 +1,12 @@ +package block + +type PolishedDeepslateStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PolishedDeepslateStairs) ID() string { + return "minecraft:polished_deepslate_stairs" +} diff --git a/level/block/polished_deepslate_wall.go b/level/block/polished_deepslate_wall.go new file mode 100644 index 0000000..a86d546 --- /dev/null +++ b/level/block/polished_deepslate_wall.go @@ -0,0 +1,14 @@ +package block + +type PolishedDeepslateWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (PolishedDeepslateWall) ID() string { + return "minecraft:polished_deepslate_wall" +} diff --git a/level/block/polished_diorite.go b/level/block/polished_diorite.go new file mode 100644 index 0000000..b8c1946 --- /dev/null +++ b/level/block/polished_diorite.go @@ -0,0 +1,8 @@ +package block + +type PolishedDiorite struct { +} + +func (PolishedDiorite) ID() string { + return "minecraft:polished_diorite" +} diff --git a/level/block/polished_diorite_slab.go b/level/block/polished_diorite_slab.go new file mode 100644 index 0000000..8922506 --- /dev/null +++ b/level/block/polished_diorite_slab.go @@ -0,0 +1,10 @@ +package block + +type PolishedDioriteSlab struct { + Type string + Waterlogged string +} + +func (PolishedDioriteSlab) ID() string { + return "minecraft:polished_diorite_slab" +} diff --git a/level/block/polished_diorite_stairs.go b/level/block/polished_diorite_stairs.go new file mode 100644 index 0000000..22a508f --- /dev/null +++ b/level/block/polished_diorite_stairs.go @@ -0,0 +1,12 @@ +package block + +type PolishedDioriteStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PolishedDioriteStairs) ID() string { + return "minecraft:polished_diorite_stairs" +} diff --git a/level/block/polished_granite.go b/level/block/polished_granite.go new file mode 100644 index 0000000..de9825a --- /dev/null +++ b/level/block/polished_granite.go @@ -0,0 +1,8 @@ +package block + +type PolishedGranite struct { +} + +func (PolishedGranite) ID() string { + return "minecraft:polished_granite" +} diff --git a/level/block/polished_granite_slab.go b/level/block/polished_granite_slab.go new file mode 100644 index 0000000..3d7425c --- /dev/null +++ b/level/block/polished_granite_slab.go @@ -0,0 +1,10 @@ +package block + +type PolishedGraniteSlab struct { + Type string + Waterlogged string +} + +func (PolishedGraniteSlab) ID() string { + return "minecraft:polished_granite_slab" +} diff --git a/level/block/polished_granite_stairs.go b/level/block/polished_granite_stairs.go new file mode 100644 index 0000000..05b9081 --- /dev/null +++ b/level/block/polished_granite_stairs.go @@ -0,0 +1,12 @@ +package block + +type PolishedGraniteStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PolishedGraniteStairs) ID() string { + return "minecraft:polished_granite_stairs" +} diff --git a/level/block/poppy.go b/level/block/poppy.go new file mode 100644 index 0000000..77b38ac --- /dev/null +++ b/level/block/poppy.go @@ -0,0 +1,8 @@ +package block + +type Poppy struct { +} + +func (Poppy) ID() string { + return "minecraft:poppy" +} diff --git a/level/block/potatoes.go b/level/block/potatoes.go new file mode 100644 index 0000000..4549db2 --- /dev/null +++ b/level/block/potatoes.go @@ -0,0 +1,9 @@ +package block + +type Potatoes struct { + Age string +} + +func (Potatoes) ID() string { + return "minecraft:potatoes" +} diff --git a/level/block/potted_acacia_sapling.go b/level/block/potted_acacia_sapling.go new file mode 100644 index 0000000..d874af7 --- /dev/null +++ b/level/block/potted_acacia_sapling.go @@ -0,0 +1,8 @@ +package block + +type PottedAcaciaSapling struct { +} + +func (PottedAcaciaSapling) ID() string { + return "minecraft:potted_acacia_sapling" +} diff --git a/level/block/potted_allium.go b/level/block/potted_allium.go new file mode 100644 index 0000000..aab07cb --- /dev/null +++ b/level/block/potted_allium.go @@ -0,0 +1,8 @@ +package block + +type PottedAllium struct { +} + +func (PottedAllium) ID() string { + return "minecraft:potted_allium" +} diff --git a/level/block/potted_azalea_bush.go b/level/block/potted_azalea_bush.go new file mode 100644 index 0000000..5324bdd --- /dev/null +++ b/level/block/potted_azalea_bush.go @@ -0,0 +1,8 @@ +package block + +type PottedAzaleaBush struct { +} + +func (PottedAzaleaBush) ID() string { + return "minecraft:potted_azalea_bush" +} diff --git a/level/block/potted_azure_bluet.go b/level/block/potted_azure_bluet.go new file mode 100644 index 0000000..8cfb46f --- /dev/null +++ b/level/block/potted_azure_bluet.go @@ -0,0 +1,8 @@ +package block + +type PottedAzureBluet struct { +} + +func (PottedAzureBluet) ID() string { + return "minecraft:potted_azure_bluet" +} diff --git a/level/block/potted_bamboo.go b/level/block/potted_bamboo.go new file mode 100644 index 0000000..92a6e65 --- /dev/null +++ b/level/block/potted_bamboo.go @@ -0,0 +1,8 @@ +package block + +type PottedBamboo struct { +} + +func (PottedBamboo) ID() string { + return "minecraft:potted_bamboo" +} diff --git a/level/block/potted_birch_sapling.go b/level/block/potted_birch_sapling.go new file mode 100644 index 0000000..574a906 --- /dev/null +++ b/level/block/potted_birch_sapling.go @@ -0,0 +1,8 @@ +package block + +type PottedBirchSapling struct { +} + +func (PottedBirchSapling) ID() string { + return "minecraft:potted_birch_sapling" +} diff --git a/level/block/potted_blue_orchid.go b/level/block/potted_blue_orchid.go new file mode 100644 index 0000000..d891b08 --- /dev/null +++ b/level/block/potted_blue_orchid.go @@ -0,0 +1,8 @@ +package block + +type PottedBlueOrchid struct { +} + +func (PottedBlueOrchid) ID() string { + return "minecraft:potted_blue_orchid" +} diff --git a/level/block/potted_brown_mushroom.go b/level/block/potted_brown_mushroom.go new file mode 100644 index 0000000..1a585bd --- /dev/null +++ b/level/block/potted_brown_mushroom.go @@ -0,0 +1,8 @@ +package block + +type PottedBrownMushroom struct { +} + +func (PottedBrownMushroom) ID() string { + return "minecraft:potted_brown_mushroom" +} diff --git a/level/block/potted_cactus.go b/level/block/potted_cactus.go new file mode 100644 index 0000000..5f76d3c --- /dev/null +++ b/level/block/potted_cactus.go @@ -0,0 +1,8 @@ +package block + +type PottedCactus struct { +} + +func (PottedCactus) ID() string { + return "minecraft:potted_cactus" +} diff --git a/level/block/potted_cornflower.go b/level/block/potted_cornflower.go new file mode 100644 index 0000000..c1349b4 --- /dev/null +++ b/level/block/potted_cornflower.go @@ -0,0 +1,8 @@ +package block + +type PottedCornflower struct { +} + +func (PottedCornflower) ID() string { + return "minecraft:potted_cornflower" +} diff --git a/level/block/potted_crimson_fungus.go b/level/block/potted_crimson_fungus.go new file mode 100644 index 0000000..a2b4a99 --- /dev/null +++ b/level/block/potted_crimson_fungus.go @@ -0,0 +1,8 @@ +package block + +type PottedCrimsonFungus struct { +} + +func (PottedCrimsonFungus) ID() string { + return "minecraft:potted_crimson_fungus" +} diff --git a/level/block/potted_crimson_roots.go b/level/block/potted_crimson_roots.go new file mode 100644 index 0000000..36d8c8a --- /dev/null +++ b/level/block/potted_crimson_roots.go @@ -0,0 +1,8 @@ +package block + +type PottedCrimsonRoots struct { +} + +func (PottedCrimsonRoots) ID() string { + return "minecraft:potted_crimson_roots" +} diff --git a/level/block/potted_dandelion.go b/level/block/potted_dandelion.go new file mode 100644 index 0000000..9ee1291 --- /dev/null +++ b/level/block/potted_dandelion.go @@ -0,0 +1,8 @@ +package block + +type PottedDandelion struct { +} + +func (PottedDandelion) ID() string { + return "minecraft:potted_dandelion" +} diff --git a/level/block/potted_dark_oak_sapling.go b/level/block/potted_dark_oak_sapling.go new file mode 100644 index 0000000..74ab155 --- /dev/null +++ b/level/block/potted_dark_oak_sapling.go @@ -0,0 +1,8 @@ +package block + +type PottedDarkOakSapling struct { +} + +func (PottedDarkOakSapling) ID() string { + return "minecraft:potted_dark_oak_sapling" +} diff --git a/level/block/potted_dead_bush.go b/level/block/potted_dead_bush.go new file mode 100644 index 0000000..6d232b3 --- /dev/null +++ b/level/block/potted_dead_bush.go @@ -0,0 +1,8 @@ +package block + +type PottedDeadBush struct { +} + +func (PottedDeadBush) ID() string { + return "minecraft:potted_dead_bush" +} diff --git a/level/block/potted_fern.go b/level/block/potted_fern.go new file mode 100644 index 0000000..4539119 --- /dev/null +++ b/level/block/potted_fern.go @@ -0,0 +1,8 @@ +package block + +type PottedFern struct { +} + +func (PottedFern) ID() string { + return "minecraft:potted_fern" +} diff --git a/level/block/potted_flowering_azalea_bush.go b/level/block/potted_flowering_azalea_bush.go new file mode 100644 index 0000000..b324409 --- /dev/null +++ b/level/block/potted_flowering_azalea_bush.go @@ -0,0 +1,8 @@ +package block + +type PottedFloweringAzaleaBush struct { +} + +func (PottedFloweringAzaleaBush) ID() string { + return "minecraft:potted_flowering_azalea_bush" +} diff --git a/level/block/potted_jungle_sapling.go b/level/block/potted_jungle_sapling.go new file mode 100644 index 0000000..89e1d89 --- /dev/null +++ b/level/block/potted_jungle_sapling.go @@ -0,0 +1,8 @@ +package block + +type PottedJungleSapling struct { +} + +func (PottedJungleSapling) ID() string { + return "minecraft:potted_jungle_sapling" +} diff --git a/level/block/potted_lily_of_the_valley.go b/level/block/potted_lily_of_the_valley.go new file mode 100644 index 0000000..ffd029c --- /dev/null +++ b/level/block/potted_lily_of_the_valley.go @@ -0,0 +1,8 @@ +package block + +type PottedLilyOfTheValley struct { +} + +func (PottedLilyOfTheValley) ID() string { + return "minecraft:potted_lily_of_the_valley" +} diff --git a/level/block/potted_oak_sapling.go b/level/block/potted_oak_sapling.go new file mode 100644 index 0000000..870846f --- /dev/null +++ b/level/block/potted_oak_sapling.go @@ -0,0 +1,8 @@ +package block + +type PottedOakSapling struct { +} + +func (PottedOakSapling) ID() string { + return "minecraft:potted_oak_sapling" +} diff --git a/level/block/potted_orange_tulip.go b/level/block/potted_orange_tulip.go new file mode 100644 index 0000000..345ed6d --- /dev/null +++ b/level/block/potted_orange_tulip.go @@ -0,0 +1,8 @@ +package block + +type PottedOrangeTulip struct { +} + +func (PottedOrangeTulip) ID() string { + return "minecraft:potted_orange_tulip" +} diff --git a/level/block/potted_oxeye_daisy.go b/level/block/potted_oxeye_daisy.go new file mode 100644 index 0000000..a4c6681 --- /dev/null +++ b/level/block/potted_oxeye_daisy.go @@ -0,0 +1,8 @@ +package block + +type PottedOxeyeDaisy struct { +} + +func (PottedOxeyeDaisy) ID() string { + return "minecraft:potted_oxeye_daisy" +} diff --git a/level/block/potted_pink_tulip.go b/level/block/potted_pink_tulip.go new file mode 100644 index 0000000..34212d6 --- /dev/null +++ b/level/block/potted_pink_tulip.go @@ -0,0 +1,8 @@ +package block + +type PottedPinkTulip struct { +} + +func (PottedPinkTulip) ID() string { + return "minecraft:potted_pink_tulip" +} diff --git a/level/block/potted_poppy.go b/level/block/potted_poppy.go new file mode 100644 index 0000000..99d1b8c --- /dev/null +++ b/level/block/potted_poppy.go @@ -0,0 +1,8 @@ +package block + +type PottedPoppy struct { +} + +func (PottedPoppy) ID() string { + return "minecraft:potted_poppy" +} diff --git a/level/block/potted_red_mushroom.go b/level/block/potted_red_mushroom.go new file mode 100644 index 0000000..56b7409 --- /dev/null +++ b/level/block/potted_red_mushroom.go @@ -0,0 +1,8 @@ +package block + +type PottedRedMushroom struct { +} + +func (PottedRedMushroom) ID() string { + return "minecraft:potted_red_mushroom" +} diff --git a/level/block/potted_red_tulip.go b/level/block/potted_red_tulip.go new file mode 100644 index 0000000..cb8a607 --- /dev/null +++ b/level/block/potted_red_tulip.go @@ -0,0 +1,8 @@ +package block + +type PottedRedTulip struct { +} + +func (PottedRedTulip) ID() string { + return "minecraft:potted_red_tulip" +} diff --git a/level/block/potted_spruce_sapling.go b/level/block/potted_spruce_sapling.go new file mode 100644 index 0000000..83c0678 --- /dev/null +++ b/level/block/potted_spruce_sapling.go @@ -0,0 +1,8 @@ +package block + +type PottedSpruceSapling struct { +} + +func (PottedSpruceSapling) ID() string { + return "minecraft:potted_spruce_sapling" +} diff --git a/level/block/potted_warped_fungus.go b/level/block/potted_warped_fungus.go new file mode 100644 index 0000000..1b1ccc3 --- /dev/null +++ b/level/block/potted_warped_fungus.go @@ -0,0 +1,8 @@ +package block + +type PottedWarpedFungus struct { +} + +func (PottedWarpedFungus) ID() string { + return "minecraft:potted_warped_fungus" +} diff --git a/level/block/potted_warped_roots.go b/level/block/potted_warped_roots.go new file mode 100644 index 0000000..b17f547 --- /dev/null +++ b/level/block/potted_warped_roots.go @@ -0,0 +1,8 @@ +package block + +type PottedWarpedRoots struct { +} + +func (PottedWarpedRoots) ID() string { + return "minecraft:potted_warped_roots" +} diff --git a/level/block/potted_white_tulip.go b/level/block/potted_white_tulip.go new file mode 100644 index 0000000..be27496 --- /dev/null +++ b/level/block/potted_white_tulip.go @@ -0,0 +1,8 @@ +package block + +type PottedWhiteTulip struct { +} + +func (PottedWhiteTulip) ID() string { + return "minecraft:potted_white_tulip" +} diff --git a/level/block/potted_wither_rose.go b/level/block/potted_wither_rose.go new file mode 100644 index 0000000..7c39c34 --- /dev/null +++ b/level/block/potted_wither_rose.go @@ -0,0 +1,8 @@ +package block + +type PottedWitherRose struct { +} + +func (PottedWitherRose) ID() string { + return "minecraft:potted_wither_rose" +} diff --git a/level/block/powder_snow.go b/level/block/powder_snow.go new file mode 100644 index 0000000..0da7315 --- /dev/null +++ b/level/block/powder_snow.go @@ -0,0 +1,8 @@ +package block + +type PowderSnow struct { +} + +func (PowderSnow) ID() string { + return "minecraft:powder_snow" +} diff --git a/level/block/powder_snow_cauldron.go b/level/block/powder_snow_cauldron.go new file mode 100644 index 0000000..2fd143a --- /dev/null +++ b/level/block/powder_snow_cauldron.go @@ -0,0 +1,9 @@ +package block + +type PowderSnowCauldron struct { + Level string +} + +func (PowderSnowCauldron) ID() string { + return "minecraft:powder_snow_cauldron" +} diff --git a/level/block/powered_rail.go b/level/block/powered_rail.go new file mode 100644 index 0000000..469e95f --- /dev/null +++ b/level/block/powered_rail.go @@ -0,0 +1,11 @@ +package block + +type PoweredRail struct { + Powered string + Shape string + Waterlogged string +} + +func (PoweredRail) ID() string { + return "minecraft:powered_rail" +} diff --git a/level/block/prismarine.go b/level/block/prismarine.go new file mode 100644 index 0000000..409f780 --- /dev/null +++ b/level/block/prismarine.go @@ -0,0 +1,8 @@ +package block + +type Prismarine struct { +} + +func (Prismarine) ID() string { + return "minecraft:prismarine" +} diff --git a/level/block/prismarine_brick_slab.go b/level/block/prismarine_brick_slab.go new file mode 100644 index 0000000..2d836e1 --- /dev/null +++ b/level/block/prismarine_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type PrismarineBrickSlab struct { + Type string + Waterlogged string +} + +func (PrismarineBrickSlab) ID() string { + return "minecraft:prismarine_brick_slab" +} diff --git a/level/block/prismarine_brick_stairs.go b/level/block/prismarine_brick_stairs.go new file mode 100644 index 0000000..cdc5bee --- /dev/null +++ b/level/block/prismarine_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type PrismarineBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PrismarineBrickStairs) ID() string { + return "minecraft:prismarine_brick_stairs" +} diff --git a/level/block/prismarine_bricks.go b/level/block/prismarine_bricks.go new file mode 100644 index 0000000..f87b314 --- /dev/null +++ b/level/block/prismarine_bricks.go @@ -0,0 +1,8 @@ +package block + +type PrismarineBricks struct { +} + +func (PrismarineBricks) ID() string { + return "minecraft:prismarine_bricks" +} diff --git a/level/block/prismarine_slab.go b/level/block/prismarine_slab.go new file mode 100644 index 0000000..17c31cc --- /dev/null +++ b/level/block/prismarine_slab.go @@ -0,0 +1,10 @@ +package block + +type PrismarineSlab struct { + Type string + Waterlogged string +} + +func (PrismarineSlab) ID() string { + return "minecraft:prismarine_slab" +} diff --git a/level/block/prismarine_stairs.go b/level/block/prismarine_stairs.go new file mode 100644 index 0000000..23a71a4 --- /dev/null +++ b/level/block/prismarine_stairs.go @@ -0,0 +1,12 @@ +package block + +type PrismarineStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PrismarineStairs) ID() string { + return "minecraft:prismarine_stairs" +} diff --git a/level/block/prismarine_wall.go b/level/block/prismarine_wall.go new file mode 100644 index 0000000..686db2d --- /dev/null +++ b/level/block/prismarine_wall.go @@ -0,0 +1,14 @@ +package block + +type PrismarineWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (PrismarineWall) ID() string { + return "minecraft:prismarine_wall" +} diff --git a/level/block/pumpkin.go b/level/block/pumpkin.go new file mode 100644 index 0000000..8cd16ae --- /dev/null +++ b/level/block/pumpkin.go @@ -0,0 +1,8 @@ +package block + +type Pumpkin struct { +} + +func (Pumpkin) ID() string { + return "minecraft:pumpkin" +} diff --git a/level/block/pumpkin_stem.go b/level/block/pumpkin_stem.go new file mode 100644 index 0000000..c818b9b --- /dev/null +++ b/level/block/pumpkin_stem.go @@ -0,0 +1,9 @@ +package block + +type PumpkinStem struct { + Age string +} + +func (PumpkinStem) ID() string { + return "minecraft:pumpkin_stem" +} diff --git a/level/block/purple_banner.go b/level/block/purple_banner.go new file mode 100644 index 0000000..0069ca2 --- /dev/null +++ b/level/block/purple_banner.go @@ -0,0 +1,9 @@ +package block + +type PurpleBanner struct { + Rotation string +} + +func (PurpleBanner) ID() string { + return "minecraft:purple_banner" +} diff --git a/level/block/purple_bed.go b/level/block/purple_bed.go new file mode 100644 index 0000000..067dad9 --- /dev/null +++ b/level/block/purple_bed.go @@ -0,0 +1,11 @@ +package block + +type PurpleBed struct { + Facing string + Occupied string + Part string +} + +func (PurpleBed) ID() string { + return "minecraft:purple_bed" +} diff --git a/level/block/purple_candle.go b/level/block/purple_candle.go new file mode 100644 index 0000000..0b31ec5 --- /dev/null +++ b/level/block/purple_candle.go @@ -0,0 +1,11 @@ +package block + +type PurpleCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (PurpleCandle) ID() string { + return "minecraft:purple_candle" +} diff --git a/level/block/purple_candle_cake.go b/level/block/purple_candle_cake.go new file mode 100644 index 0000000..383b6ec --- /dev/null +++ b/level/block/purple_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type PurpleCandleCake struct { + Lit string +} + +func (PurpleCandleCake) ID() string { + return "minecraft:purple_candle_cake" +} diff --git a/level/block/purple_carpet.go b/level/block/purple_carpet.go new file mode 100644 index 0000000..3b9f2ce --- /dev/null +++ b/level/block/purple_carpet.go @@ -0,0 +1,8 @@ +package block + +type PurpleCarpet struct { +} + +func (PurpleCarpet) ID() string { + return "minecraft:purple_carpet" +} diff --git a/level/block/purple_concrete.go b/level/block/purple_concrete.go new file mode 100644 index 0000000..0ee3a07 --- /dev/null +++ b/level/block/purple_concrete.go @@ -0,0 +1,8 @@ +package block + +type PurpleConcrete struct { +} + +func (PurpleConcrete) ID() string { + return "minecraft:purple_concrete" +} diff --git a/level/block/purple_concrete_powder.go b/level/block/purple_concrete_powder.go new file mode 100644 index 0000000..20cfd15 --- /dev/null +++ b/level/block/purple_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type PurpleConcretePowder struct { +} + +func (PurpleConcretePowder) ID() string { + return "minecraft:purple_concrete_powder" +} diff --git a/level/block/purple_glazed_terracotta.go b/level/block/purple_glazed_terracotta.go new file mode 100644 index 0000000..a8935af --- /dev/null +++ b/level/block/purple_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type PurpleGlazedTerracotta struct { + Facing string +} + +func (PurpleGlazedTerracotta) ID() string { + return "minecraft:purple_glazed_terracotta" +} diff --git a/level/block/purple_shulker_box.go b/level/block/purple_shulker_box.go new file mode 100644 index 0000000..7f74ca2 --- /dev/null +++ b/level/block/purple_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type PurpleShulkerBox struct { + Facing string +} + +func (PurpleShulkerBox) ID() string { + return "minecraft:purple_shulker_box" +} diff --git a/level/block/purple_stained_glass.go b/level/block/purple_stained_glass.go new file mode 100644 index 0000000..cb3753d --- /dev/null +++ b/level/block/purple_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type PurpleStainedGlass struct { +} + +func (PurpleStainedGlass) ID() string { + return "minecraft:purple_stained_glass" +} diff --git a/level/block/purple_stained_glass_pane.go b/level/block/purple_stained_glass_pane.go new file mode 100644 index 0000000..be1a738 --- /dev/null +++ b/level/block/purple_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type PurpleStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (PurpleStainedGlassPane) ID() string { + return "minecraft:purple_stained_glass_pane" +} diff --git a/level/block/purple_terracotta.go b/level/block/purple_terracotta.go new file mode 100644 index 0000000..bf163d3 --- /dev/null +++ b/level/block/purple_terracotta.go @@ -0,0 +1,8 @@ +package block + +type PurpleTerracotta struct { +} + +func (PurpleTerracotta) ID() string { + return "minecraft:purple_terracotta" +} diff --git a/level/block/purple_wall_banner.go b/level/block/purple_wall_banner.go new file mode 100644 index 0000000..a9fdcb2 --- /dev/null +++ b/level/block/purple_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type PurpleWallBanner struct { + Facing string +} + +func (PurpleWallBanner) ID() string { + return "minecraft:purple_wall_banner" +} diff --git a/level/block/purple_wool.go b/level/block/purple_wool.go new file mode 100644 index 0000000..8a9de96 --- /dev/null +++ b/level/block/purple_wool.go @@ -0,0 +1,8 @@ +package block + +type PurpleWool struct { +} + +func (PurpleWool) ID() string { + return "minecraft:purple_wool" +} diff --git a/level/block/purpur_block.go b/level/block/purpur_block.go new file mode 100644 index 0000000..7d7446e --- /dev/null +++ b/level/block/purpur_block.go @@ -0,0 +1,8 @@ +package block + +type PurpurBlock struct { +} + +func (PurpurBlock) ID() string { + return "minecraft:purpur_block" +} diff --git a/level/block/purpur_pillar.go b/level/block/purpur_pillar.go new file mode 100644 index 0000000..774f63f --- /dev/null +++ b/level/block/purpur_pillar.go @@ -0,0 +1,9 @@ +package block + +type PurpurPillar struct { + Axis string +} + +func (PurpurPillar) ID() string { + return "minecraft:purpur_pillar" +} diff --git a/level/block/purpur_slab.go b/level/block/purpur_slab.go new file mode 100644 index 0000000..b016f74 --- /dev/null +++ b/level/block/purpur_slab.go @@ -0,0 +1,10 @@ +package block + +type PurpurSlab struct { + Type string + Waterlogged string +} + +func (PurpurSlab) ID() string { + return "minecraft:purpur_slab" +} diff --git a/level/block/purpur_stairs.go b/level/block/purpur_stairs.go new file mode 100644 index 0000000..63dc1cd --- /dev/null +++ b/level/block/purpur_stairs.go @@ -0,0 +1,12 @@ +package block + +type PurpurStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (PurpurStairs) ID() string { + return "minecraft:purpur_stairs" +} diff --git a/level/block/quartz_block.go b/level/block/quartz_block.go new file mode 100644 index 0000000..ae2e2ce --- /dev/null +++ b/level/block/quartz_block.go @@ -0,0 +1,8 @@ +package block + +type QuartzBlock struct { +} + +func (QuartzBlock) ID() string { + return "minecraft:quartz_block" +} diff --git a/level/block/quartz_bricks.go b/level/block/quartz_bricks.go new file mode 100644 index 0000000..cad5d48 --- /dev/null +++ b/level/block/quartz_bricks.go @@ -0,0 +1,8 @@ +package block + +type QuartzBricks struct { +} + +func (QuartzBricks) ID() string { + return "minecraft:quartz_bricks" +} diff --git a/level/block/quartz_pillar.go b/level/block/quartz_pillar.go new file mode 100644 index 0000000..ff2c966 --- /dev/null +++ b/level/block/quartz_pillar.go @@ -0,0 +1,9 @@ +package block + +type QuartzPillar struct { + Axis string +} + +func (QuartzPillar) ID() string { + return "minecraft:quartz_pillar" +} diff --git a/level/block/quartz_slab.go b/level/block/quartz_slab.go new file mode 100644 index 0000000..f72fd2a --- /dev/null +++ b/level/block/quartz_slab.go @@ -0,0 +1,10 @@ +package block + +type QuartzSlab struct { + Type string + Waterlogged string +} + +func (QuartzSlab) ID() string { + return "minecraft:quartz_slab" +} diff --git a/level/block/quartz_stairs.go b/level/block/quartz_stairs.go new file mode 100644 index 0000000..81e46ad --- /dev/null +++ b/level/block/quartz_stairs.go @@ -0,0 +1,12 @@ +package block + +type QuartzStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (QuartzStairs) ID() string { + return "minecraft:quartz_stairs" +} diff --git a/level/block/rail.go b/level/block/rail.go new file mode 100644 index 0000000..2ec6308 --- /dev/null +++ b/level/block/rail.go @@ -0,0 +1,10 @@ +package block + +type Rail struct { + Shape string + Waterlogged string +} + +func (Rail) ID() string { + return "minecraft:rail" +} diff --git a/level/block/raw_copper_block.go b/level/block/raw_copper_block.go new file mode 100644 index 0000000..1b8d5b1 --- /dev/null +++ b/level/block/raw_copper_block.go @@ -0,0 +1,8 @@ +package block + +type RawCopperBlock struct { +} + +func (RawCopperBlock) ID() string { + return "minecraft:raw_copper_block" +} diff --git a/level/block/raw_gold_block.go b/level/block/raw_gold_block.go new file mode 100644 index 0000000..ec044a4 --- /dev/null +++ b/level/block/raw_gold_block.go @@ -0,0 +1,8 @@ +package block + +type RawGoldBlock struct { +} + +func (RawGoldBlock) ID() string { + return "minecraft:raw_gold_block" +} diff --git a/level/block/raw_iron_block.go b/level/block/raw_iron_block.go new file mode 100644 index 0000000..0ecbc94 --- /dev/null +++ b/level/block/raw_iron_block.go @@ -0,0 +1,8 @@ +package block + +type RawIronBlock struct { +} + +func (RawIronBlock) ID() string { + return "minecraft:raw_iron_block" +} diff --git a/level/block/red_banner.go b/level/block/red_banner.go new file mode 100644 index 0000000..8329333 --- /dev/null +++ b/level/block/red_banner.go @@ -0,0 +1,9 @@ +package block + +type RedBanner struct { + Rotation string +} + +func (RedBanner) ID() string { + return "minecraft:red_banner" +} diff --git a/level/block/red_bed.go b/level/block/red_bed.go new file mode 100644 index 0000000..c6ff6e2 --- /dev/null +++ b/level/block/red_bed.go @@ -0,0 +1,11 @@ +package block + +type RedBed struct { + Facing string + Occupied string + Part string +} + +func (RedBed) ID() string { + return "minecraft:red_bed" +} diff --git a/level/block/red_candle.go b/level/block/red_candle.go new file mode 100644 index 0000000..983f64b --- /dev/null +++ b/level/block/red_candle.go @@ -0,0 +1,11 @@ +package block + +type RedCandle struct { + Candles string + Lit string + Waterlogged string +} + +func (RedCandle) ID() string { + return "minecraft:red_candle" +} diff --git a/level/block/red_candle_cake.go b/level/block/red_candle_cake.go new file mode 100644 index 0000000..cf80e75 --- /dev/null +++ b/level/block/red_candle_cake.go @@ -0,0 +1,9 @@ +package block + +type RedCandleCake struct { + Lit string +} + +func (RedCandleCake) ID() string { + return "minecraft:red_candle_cake" +} diff --git a/level/block/red_carpet.go b/level/block/red_carpet.go new file mode 100644 index 0000000..6ae6cc2 --- /dev/null +++ b/level/block/red_carpet.go @@ -0,0 +1,8 @@ +package block + +type RedCarpet struct { +} + +func (RedCarpet) ID() string { + return "minecraft:red_carpet" +} diff --git a/level/block/red_concrete.go b/level/block/red_concrete.go new file mode 100644 index 0000000..9e44660 --- /dev/null +++ b/level/block/red_concrete.go @@ -0,0 +1,8 @@ +package block + +type RedConcrete struct { +} + +func (RedConcrete) ID() string { + return "minecraft:red_concrete" +} diff --git a/level/block/red_concrete_powder.go b/level/block/red_concrete_powder.go new file mode 100644 index 0000000..e36e4bc --- /dev/null +++ b/level/block/red_concrete_powder.go @@ -0,0 +1,8 @@ +package block + +type RedConcretePowder struct { +} + +func (RedConcretePowder) ID() string { + return "minecraft:red_concrete_powder" +} diff --git a/level/block/red_glazed_terracotta.go b/level/block/red_glazed_terracotta.go new file mode 100644 index 0000000..8401328 --- /dev/null +++ b/level/block/red_glazed_terracotta.go @@ -0,0 +1,9 @@ +package block + +type RedGlazedTerracotta struct { + Facing string +} + +func (RedGlazedTerracotta) ID() string { + return "minecraft:red_glazed_terracotta" +} diff --git a/level/block/red_mushroom.go b/level/block/red_mushroom.go new file mode 100644 index 0000000..2d3d8ea --- /dev/null +++ b/level/block/red_mushroom.go @@ -0,0 +1,8 @@ +package block + +type RedMushroom struct { +} + +func (RedMushroom) ID() string { + return "minecraft:red_mushroom" +} diff --git a/level/block/red_mushroom_block.go b/level/block/red_mushroom_block.go new file mode 100644 index 0000000..26e4cf6 --- /dev/null +++ b/level/block/red_mushroom_block.go @@ -0,0 +1,14 @@ +package block + +type RedMushroomBlock struct { + Down string + East string + North string + South string + Up string + West string +} + +func (RedMushroomBlock) ID() string { + return "minecraft:red_mushroom_block" +} diff --git a/level/block/red_nether_brick_slab.go b/level/block/red_nether_brick_slab.go new file mode 100644 index 0000000..00d4d7c --- /dev/null +++ b/level/block/red_nether_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type RedNetherBrickSlab struct { + Type string + Waterlogged string +} + +func (RedNetherBrickSlab) ID() string { + return "minecraft:red_nether_brick_slab" +} diff --git a/level/block/red_nether_brick_stairs.go b/level/block/red_nether_brick_stairs.go new file mode 100644 index 0000000..34b558f --- /dev/null +++ b/level/block/red_nether_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type RedNetherBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (RedNetherBrickStairs) ID() string { + return "minecraft:red_nether_brick_stairs" +} diff --git a/level/block/red_nether_brick_wall.go b/level/block/red_nether_brick_wall.go new file mode 100644 index 0000000..2d9d488 --- /dev/null +++ b/level/block/red_nether_brick_wall.go @@ -0,0 +1,14 @@ +package block + +type RedNetherBrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (RedNetherBrickWall) ID() string { + return "minecraft:red_nether_brick_wall" +} diff --git a/level/block/red_nether_bricks.go b/level/block/red_nether_bricks.go new file mode 100644 index 0000000..3122bd1 --- /dev/null +++ b/level/block/red_nether_bricks.go @@ -0,0 +1,8 @@ +package block + +type RedNetherBricks struct { +} + +func (RedNetherBricks) ID() string { + return "minecraft:red_nether_bricks" +} diff --git a/level/block/red_sand.go b/level/block/red_sand.go new file mode 100644 index 0000000..76bd403 --- /dev/null +++ b/level/block/red_sand.go @@ -0,0 +1,8 @@ +package block + +type RedSand struct { +} + +func (RedSand) ID() string { + return "minecraft:red_sand" +} diff --git a/level/block/red_sandstone.go b/level/block/red_sandstone.go new file mode 100644 index 0000000..8363b17 --- /dev/null +++ b/level/block/red_sandstone.go @@ -0,0 +1,8 @@ +package block + +type RedSandstone struct { +} + +func (RedSandstone) ID() string { + return "minecraft:red_sandstone" +} diff --git a/level/block/red_sandstone_slab.go b/level/block/red_sandstone_slab.go new file mode 100644 index 0000000..d32a281 --- /dev/null +++ b/level/block/red_sandstone_slab.go @@ -0,0 +1,10 @@ +package block + +type RedSandstoneSlab struct { + Type string + Waterlogged string +} + +func (RedSandstoneSlab) ID() string { + return "minecraft:red_sandstone_slab" +} diff --git a/level/block/red_sandstone_stairs.go b/level/block/red_sandstone_stairs.go new file mode 100644 index 0000000..2af093e --- /dev/null +++ b/level/block/red_sandstone_stairs.go @@ -0,0 +1,12 @@ +package block + +type RedSandstoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (RedSandstoneStairs) ID() string { + return "minecraft:red_sandstone_stairs" +} diff --git a/level/block/red_sandstone_wall.go b/level/block/red_sandstone_wall.go new file mode 100644 index 0000000..ef7dc31 --- /dev/null +++ b/level/block/red_sandstone_wall.go @@ -0,0 +1,14 @@ +package block + +type RedSandstoneWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (RedSandstoneWall) ID() string { + return "minecraft:red_sandstone_wall" +} diff --git a/level/block/red_shulker_box.go b/level/block/red_shulker_box.go new file mode 100644 index 0000000..80d1aa0 --- /dev/null +++ b/level/block/red_shulker_box.go @@ -0,0 +1,9 @@ +package block + +type RedShulkerBox struct { + Facing string +} + +func (RedShulkerBox) ID() string { + return "minecraft:red_shulker_box" +} diff --git a/level/block/red_stained_glass.go b/level/block/red_stained_glass.go new file mode 100644 index 0000000..0c734fc --- /dev/null +++ b/level/block/red_stained_glass.go @@ -0,0 +1,8 @@ +package block + +type RedStainedGlass struct { +} + +func (RedStainedGlass) ID() string { + return "minecraft:red_stained_glass" +} diff --git a/level/block/red_stained_glass_pane.go b/level/block/red_stained_glass_pane.go new file mode 100644 index 0000000..1f43fc7 --- /dev/null +++ b/level/block/red_stained_glass_pane.go @@ -0,0 +1,13 @@ +package block + +type RedStainedGlassPane struct { + East string + North string + South string + Waterlogged string + West string +} + +func (RedStainedGlassPane) ID() string { + return "minecraft:red_stained_glass_pane" +} diff --git a/level/block/red_terracotta.go b/level/block/red_terracotta.go new file mode 100644 index 0000000..6df7e53 --- /dev/null +++ b/level/block/red_terracotta.go @@ -0,0 +1,8 @@ +package block + +type RedTerracotta struct { +} + +func (RedTerracotta) ID() string { + return "minecraft:red_terracotta" +} diff --git a/level/block/red_tulip.go b/level/block/red_tulip.go new file mode 100644 index 0000000..5aba966 --- /dev/null +++ b/level/block/red_tulip.go @@ -0,0 +1,8 @@ +package block + +type RedTulip struct { +} + +func (RedTulip) ID() string { + return "minecraft:red_tulip" +} diff --git a/level/block/red_wall_banner.go b/level/block/red_wall_banner.go new file mode 100644 index 0000000..5c3084f --- /dev/null +++ b/level/block/red_wall_banner.go @@ -0,0 +1,9 @@ +package block + +type RedWallBanner struct { + Facing string +} + +func (RedWallBanner) ID() string { + return "minecraft:red_wall_banner" +} diff --git a/level/block/red_wool.go b/level/block/red_wool.go new file mode 100644 index 0000000..92f71b3 --- /dev/null +++ b/level/block/red_wool.go @@ -0,0 +1,8 @@ +package block + +type RedWool struct { +} + +func (RedWool) ID() string { + return "minecraft:red_wool" +} diff --git a/level/block/redstone_block.go b/level/block/redstone_block.go new file mode 100644 index 0000000..3aabafd --- /dev/null +++ b/level/block/redstone_block.go @@ -0,0 +1,8 @@ +package block + +type RedstoneBlock struct { +} + +func (RedstoneBlock) ID() string { + return "minecraft:redstone_block" +} diff --git a/level/block/redstone_lamp.go b/level/block/redstone_lamp.go new file mode 100644 index 0000000..a90453f --- /dev/null +++ b/level/block/redstone_lamp.go @@ -0,0 +1,9 @@ +package block + +type RedstoneLamp struct { + Lit string +} + +func (RedstoneLamp) ID() string { + return "minecraft:redstone_lamp" +} diff --git a/level/block/redstone_ore.go b/level/block/redstone_ore.go new file mode 100644 index 0000000..85bcf28 --- /dev/null +++ b/level/block/redstone_ore.go @@ -0,0 +1,9 @@ +package block + +type RedstoneOre struct { + Lit string +} + +func (RedstoneOre) ID() string { + return "minecraft:redstone_ore" +} diff --git a/level/block/redstone_torch.go b/level/block/redstone_torch.go new file mode 100644 index 0000000..dca09c5 --- /dev/null +++ b/level/block/redstone_torch.go @@ -0,0 +1,9 @@ +package block + +type RedstoneTorch struct { + Lit string +} + +func (RedstoneTorch) ID() string { + return "minecraft:redstone_torch" +} diff --git a/level/block/redstone_wall_torch.go b/level/block/redstone_wall_torch.go new file mode 100644 index 0000000..06821e7 --- /dev/null +++ b/level/block/redstone_wall_torch.go @@ -0,0 +1,10 @@ +package block + +type RedstoneWallTorch struct { + Facing string + Lit string +} + +func (RedstoneWallTorch) ID() string { + return "minecraft:redstone_wall_torch" +} diff --git a/level/block/redstone_wire.go b/level/block/redstone_wire.go new file mode 100644 index 0000000..369580a --- /dev/null +++ b/level/block/redstone_wire.go @@ -0,0 +1,13 @@ +package block + +type RedstoneWire struct { + East string + North string + Power string + South string + West string +} + +func (RedstoneWire) ID() string { + return "minecraft:redstone_wire" +} diff --git a/level/block/repeater.go b/level/block/repeater.go new file mode 100644 index 0000000..f9f2e79 --- /dev/null +++ b/level/block/repeater.go @@ -0,0 +1,12 @@ +package block + +type Repeater struct { + Delay string + Facing string + Locked string + Powered string +} + +func (Repeater) ID() string { + return "minecraft:repeater" +} diff --git a/level/block/repeating_command_block.go b/level/block/repeating_command_block.go new file mode 100644 index 0000000..6bd7781 --- /dev/null +++ b/level/block/repeating_command_block.go @@ -0,0 +1,10 @@ +package block + +type RepeatingCommandBlock struct { + Conditional string + Facing string +} + +func (RepeatingCommandBlock) ID() string { + return "minecraft:repeating_command_block" +} diff --git a/level/block/respawn_anchor.go b/level/block/respawn_anchor.go new file mode 100644 index 0000000..98fc716 --- /dev/null +++ b/level/block/respawn_anchor.go @@ -0,0 +1,9 @@ +package block + +type RespawnAnchor struct { + Charges string +} + +func (RespawnAnchor) ID() string { + return "minecraft:respawn_anchor" +} diff --git a/level/block/rooted_dirt.go b/level/block/rooted_dirt.go new file mode 100644 index 0000000..5967672 --- /dev/null +++ b/level/block/rooted_dirt.go @@ -0,0 +1,8 @@ +package block + +type RootedDirt struct { +} + +func (RootedDirt) ID() string { + return "minecraft:rooted_dirt" +} diff --git a/level/block/rose_bush.go b/level/block/rose_bush.go new file mode 100644 index 0000000..6c419d1 --- /dev/null +++ b/level/block/rose_bush.go @@ -0,0 +1,9 @@ +package block + +type RoseBush struct { + Half string +} + +func (RoseBush) ID() string { + return "minecraft:rose_bush" +} diff --git a/level/block/sand.go b/level/block/sand.go new file mode 100644 index 0000000..f289105 --- /dev/null +++ b/level/block/sand.go @@ -0,0 +1,8 @@ +package block + +type Sand struct { +} + +func (Sand) ID() string { + return "minecraft:sand" +} diff --git a/level/block/sandstone.go b/level/block/sandstone.go new file mode 100644 index 0000000..1143b1a --- /dev/null +++ b/level/block/sandstone.go @@ -0,0 +1,8 @@ +package block + +type Sandstone struct { +} + +func (Sandstone) ID() string { + return "minecraft:sandstone" +} diff --git a/level/block/sandstone_slab.go b/level/block/sandstone_slab.go new file mode 100644 index 0000000..8d831a7 --- /dev/null +++ b/level/block/sandstone_slab.go @@ -0,0 +1,10 @@ +package block + +type SandstoneSlab struct { + Type string + Waterlogged string +} + +func (SandstoneSlab) ID() string { + return "minecraft:sandstone_slab" +} diff --git a/level/block/sandstone_stairs.go b/level/block/sandstone_stairs.go new file mode 100644 index 0000000..8946b3c --- /dev/null +++ b/level/block/sandstone_stairs.go @@ -0,0 +1,12 @@ +package block + +type SandstoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (SandstoneStairs) ID() string { + return "minecraft:sandstone_stairs" +} diff --git a/level/block/sandstone_wall.go b/level/block/sandstone_wall.go new file mode 100644 index 0000000..36eec39 --- /dev/null +++ b/level/block/sandstone_wall.go @@ -0,0 +1,14 @@ +package block + +type SandstoneWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (SandstoneWall) ID() string { + return "minecraft:sandstone_wall" +} diff --git a/level/block/scaffolding.go b/level/block/scaffolding.go new file mode 100644 index 0000000..17b66ca --- /dev/null +++ b/level/block/scaffolding.go @@ -0,0 +1,11 @@ +package block + +type Scaffolding struct { + Bottom string + Distance string + Waterlogged string +} + +func (Scaffolding) ID() string { + return "minecraft:scaffolding" +} diff --git a/level/block/sculk_sensor.go b/level/block/sculk_sensor.go new file mode 100644 index 0000000..10c026e --- /dev/null +++ b/level/block/sculk_sensor.go @@ -0,0 +1,11 @@ +package block + +type SculkSensor struct { + Power string + Sculk_sensor_phase string + Waterlogged string +} + +func (SculkSensor) ID() string { + return "minecraft:sculk_sensor" +} diff --git a/level/block/sea_lantern.go b/level/block/sea_lantern.go new file mode 100644 index 0000000..2cd645d --- /dev/null +++ b/level/block/sea_lantern.go @@ -0,0 +1,8 @@ +package block + +type SeaLantern struct { +} + +func (SeaLantern) ID() string { + return "minecraft:sea_lantern" +} diff --git a/level/block/sea_pickle.go b/level/block/sea_pickle.go new file mode 100644 index 0000000..2bd70b6 --- /dev/null +++ b/level/block/sea_pickle.go @@ -0,0 +1,10 @@ +package block + +type SeaPickle struct { + Pickles string + Waterlogged string +} + +func (SeaPickle) ID() string { + return "minecraft:sea_pickle" +} diff --git a/level/block/seagrass.go b/level/block/seagrass.go new file mode 100644 index 0000000..67645e8 --- /dev/null +++ b/level/block/seagrass.go @@ -0,0 +1,8 @@ +package block + +type Seagrass struct { +} + +func (Seagrass) ID() string { + return "minecraft:seagrass" +} diff --git a/level/block/shroomlight.go b/level/block/shroomlight.go new file mode 100644 index 0000000..ad3fd80 --- /dev/null +++ b/level/block/shroomlight.go @@ -0,0 +1,8 @@ +package block + +type Shroomlight struct { +} + +func (Shroomlight) ID() string { + return "minecraft:shroomlight" +} diff --git a/level/block/shulker_box.go b/level/block/shulker_box.go new file mode 100644 index 0000000..32c7aee --- /dev/null +++ b/level/block/shulker_box.go @@ -0,0 +1,9 @@ +package block + +type ShulkerBox struct { + Facing string +} + +func (ShulkerBox) ID() string { + return "minecraft:shulker_box" +} diff --git a/level/block/skeleton_skull.go b/level/block/skeleton_skull.go new file mode 100644 index 0000000..a1399e8 --- /dev/null +++ b/level/block/skeleton_skull.go @@ -0,0 +1,9 @@ +package block + +type SkeletonSkull struct { + Rotation string +} + +func (SkeletonSkull) ID() string { + return "minecraft:skeleton_skull" +} diff --git a/level/block/skeleton_wall_skull.go b/level/block/skeleton_wall_skull.go new file mode 100644 index 0000000..57b0dfd --- /dev/null +++ b/level/block/skeleton_wall_skull.go @@ -0,0 +1,9 @@ +package block + +type SkeletonWallSkull struct { + Facing string +} + +func (SkeletonWallSkull) ID() string { + return "minecraft:skeleton_wall_skull" +} diff --git a/level/block/slime_block.go b/level/block/slime_block.go new file mode 100644 index 0000000..15a57fd --- /dev/null +++ b/level/block/slime_block.go @@ -0,0 +1,8 @@ +package block + +type SlimeBlock struct { +} + +func (SlimeBlock) ID() string { + return "minecraft:slime_block" +} diff --git a/level/block/small_amethyst_bud.go b/level/block/small_amethyst_bud.go new file mode 100644 index 0000000..2f2fc9f --- /dev/null +++ b/level/block/small_amethyst_bud.go @@ -0,0 +1,10 @@ +package block + +type SmallAmethystBud struct { + Facing string + Waterlogged string +} + +func (SmallAmethystBud) ID() string { + return "minecraft:small_amethyst_bud" +} diff --git a/level/block/small_dripleaf.go b/level/block/small_dripleaf.go new file mode 100644 index 0000000..568821b --- /dev/null +++ b/level/block/small_dripleaf.go @@ -0,0 +1,11 @@ +package block + +type SmallDripleaf struct { + Facing string + Half string + Waterlogged string +} + +func (SmallDripleaf) ID() string { + return "minecraft:small_dripleaf" +} diff --git a/level/block/smithing_table.go b/level/block/smithing_table.go new file mode 100644 index 0000000..b8eb705 --- /dev/null +++ b/level/block/smithing_table.go @@ -0,0 +1,8 @@ +package block + +type SmithingTable struct { +} + +func (SmithingTable) ID() string { + return "minecraft:smithing_table" +} diff --git a/level/block/smoker.go b/level/block/smoker.go new file mode 100644 index 0000000..7b564c6 --- /dev/null +++ b/level/block/smoker.go @@ -0,0 +1,10 @@ +package block + +type Smoker struct { + Facing string + Lit string +} + +func (Smoker) ID() string { + return "minecraft:smoker" +} diff --git a/level/block/smooth_basalt.go b/level/block/smooth_basalt.go new file mode 100644 index 0000000..6d1a185 --- /dev/null +++ b/level/block/smooth_basalt.go @@ -0,0 +1,8 @@ +package block + +type SmoothBasalt struct { +} + +func (SmoothBasalt) ID() string { + return "minecraft:smooth_basalt" +} diff --git a/level/block/smooth_quartz.go b/level/block/smooth_quartz.go new file mode 100644 index 0000000..6896fa6 --- /dev/null +++ b/level/block/smooth_quartz.go @@ -0,0 +1,8 @@ +package block + +type SmoothQuartz struct { +} + +func (SmoothQuartz) ID() string { + return "minecraft:smooth_quartz" +} diff --git a/level/block/smooth_quartz_slab.go b/level/block/smooth_quartz_slab.go new file mode 100644 index 0000000..516720a --- /dev/null +++ b/level/block/smooth_quartz_slab.go @@ -0,0 +1,10 @@ +package block + +type SmoothQuartzSlab struct { + Type string + Waterlogged string +} + +func (SmoothQuartzSlab) ID() string { + return "minecraft:smooth_quartz_slab" +} diff --git a/level/block/smooth_quartz_stairs.go b/level/block/smooth_quartz_stairs.go new file mode 100644 index 0000000..8da169b --- /dev/null +++ b/level/block/smooth_quartz_stairs.go @@ -0,0 +1,12 @@ +package block + +type SmoothQuartzStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (SmoothQuartzStairs) ID() string { + return "minecraft:smooth_quartz_stairs" +} diff --git a/level/block/smooth_red_sandstone.go b/level/block/smooth_red_sandstone.go new file mode 100644 index 0000000..d8bef75 --- /dev/null +++ b/level/block/smooth_red_sandstone.go @@ -0,0 +1,8 @@ +package block + +type SmoothRedSandstone struct { +} + +func (SmoothRedSandstone) ID() string { + return "minecraft:smooth_red_sandstone" +} diff --git a/level/block/smooth_red_sandstone_slab.go b/level/block/smooth_red_sandstone_slab.go new file mode 100644 index 0000000..d5aeaf2 --- /dev/null +++ b/level/block/smooth_red_sandstone_slab.go @@ -0,0 +1,10 @@ +package block + +type SmoothRedSandstoneSlab struct { + Type string + Waterlogged string +} + +func (SmoothRedSandstoneSlab) ID() string { + return "minecraft:smooth_red_sandstone_slab" +} diff --git a/level/block/smooth_red_sandstone_stairs.go b/level/block/smooth_red_sandstone_stairs.go new file mode 100644 index 0000000..4952ca8 --- /dev/null +++ b/level/block/smooth_red_sandstone_stairs.go @@ -0,0 +1,12 @@ +package block + +type SmoothRedSandstoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (SmoothRedSandstoneStairs) ID() string { + return "minecraft:smooth_red_sandstone_stairs" +} diff --git a/level/block/smooth_sandstone.go b/level/block/smooth_sandstone.go new file mode 100644 index 0000000..d18ba8a --- /dev/null +++ b/level/block/smooth_sandstone.go @@ -0,0 +1,8 @@ +package block + +type SmoothSandstone struct { +} + +func (SmoothSandstone) ID() string { + return "minecraft:smooth_sandstone" +} diff --git a/level/block/smooth_sandstone_slab.go b/level/block/smooth_sandstone_slab.go new file mode 100644 index 0000000..344b9df --- /dev/null +++ b/level/block/smooth_sandstone_slab.go @@ -0,0 +1,10 @@ +package block + +type SmoothSandstoneSlab struct { + Type string + Waterlogged string +} + +func (SmoothSandstoneSlab) ID() string { + return "minecraft:smooth_sandstone_slab" +} diff --git a/level/block/smooth_sandstone_stairs.go b/level/block/smooth_sandstone_stairs.go new file mode 100644 index 0000000..0c874d1 --- /dev/null +++ b/level/block/smooth_sandstone_stairs.go @@ -0,0 +1,12 @@ +package block + +type SmoothSandstoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (SmoothSandstoneStairs) ID() string { + return "minecraft:smooth_sandstone_stairs" +} diff --git a/level/block/smooth_stone.go b/level/block/smooth_stone.go new file mode 100644 index 0000000..48c90e1 --- /dev/null +++ b/level/block/smooth_stone.go @@ -0,0 +1,8 @@ +package block + +type SmoothStone struct { +} + +func (SmoothStone) ID() string { + return "minecraft:smooth_stone" +} diff --git a/level/block/smooth_stone_slab.go b/level/block/smooth_stone_slab.go new file mode 100644 index 0000000..b15bfe2 --- /dev/null +++ b/level/block/smooth_stone_slab.go @@ -0,0 +1,10 @@ +package block + +type SmoothStoneSlab struct { + Type string + Waterlogged string +} + +func (SmoothStoneSlab) ID() string { + return "minecraft:smooth_stone_slab" +} diff --git a/level/block/snow.go b/level/block/snow.go new file mode 100644 index 0000000..8400beb --- /dev/null +++ b/level/block/snow.go @@ -0,0 +1,9 @@ +package block + +type Snow struct { + Layers string +} + +func (Snow) ID() string { + return "minecraft:snow" +} diff --git a/level/block/snow_block.go b/level/block/snow_block.go new file mode 100644 index 0000000..cc0d1e6 --- /dev/null +++ b/level/block/snow_block.go @@ -0,0 +1,8 @@ +package block + +type SnowBlock struct { +} + +func (SnowBlock) ID() string { + return "minecraft:snow_block" +} diff --git a/level/block/soul_campfire.go b/level/block/soul_campfire.go new file mode 100644 index 0000000..f912a2b --- /dev/null +++ b/level/block/soul_campfire.go @@ -0,0 +1,12 @@ +package block + +type SoulCampfire struct { + Facing string + Lit string + Signal_fire string + Waterlogged string +} + +func (SoulCampfire) ID() string { + return "minecraft:soul_campfire" +} diff --git a/level/block/soul_fire.go b/level/block/soul_fire.go new file mode 100644 index 0000000..acebce1 --- /dev/null +++ b/level/block/soul_fire.go @@ -0,0 +1,8 @@ +package block + +type SoulFire struct { +} + +func (SoulFire) ID() string { + return "minecraft:soul_fire" +} diff --git a/level/block/soul_lantern.go b/level/block/soul_lantern.go new file mode 100644 index 0000000..0eb88e6 --- /dev/null +++ b/level/block/soul_lantern.go @@ -0,0 +1,10 @@ +package block + +type SoulLantern struct { + Hanging string + Waterlogged string +} + +func (SoulLantern) ID() string { + return "minecraft:soul_lantern" +} diff --git a/level/block/soul_sand.go b/level/block/soul_sand.go new file mode 100644 index 0000000..199aa07 --- /dev/null +++ b/level/block/soul_sand.go @@ -0,0 +1,8 @@ +package block + +type SoulSand struct { +} + +func (SoulSand) ID() string { + return "minecraft:soul_sand" +} diff --git a/level/block/soul_soil.go b/level/block/soul_soil.go new file mode 100644 index 0000000..05136da --- /dev/null +++ b/level/block/soul_soil.go @@ -0,0 +1,8 @@ +package block + +type SoulSoil struct { +} + +func (SoulSoil) ID() string { + return "minecraft:soul_soil" +} diff --git a/level/block/soul_torch.go b/level/block/soul_torch.go new file mode 100644 index 0000000..277ef83 --- /dev/null +++ b/level/block/soul_torch.go @@ -0,0 +1,8 @@ +package block + +type SoulTorch struct { +} + +func (SoulTorch) ID() string { + return "minecraft:soul_torch" +} diff --git a/level/block/soul_wall_torch.go b/level/block/soul_wall_torch.go new file mode 100644 index 0000000..b84c146 --- /dev/null +++ b/level/block/soul_wall_torch.go @@ -0,0 +1,9 @@ +package block + +type SoulWallTorch struct { + Facing string +} + +func (SoulWallTorch) ID() string { + return "minecraft:soul_wall_torch" +} diff --git a/level/block/spawner.go b/level/block/spawner.go new file mode 100644 index 0000000..11c9dd3 --- /dev/null +++ b/level/block/spawner.go @@ -0,0 +1,8 @@ +package block + +type Spawner struct { +} + +func (Spawner) ID() string { + return "minecraft:spawner" +} diff --git a/level/block/sponge.go b/level/block/sponge.go new file mode 100644 index 0000000..8f6f684 --- /dev/null +++ b/level/block/sponge.go @@ -0,0 +1,8 @@ +package block + +type Sponge struct { +} + +func (Sponge) ID() string { + return "minecraft:sponge" +} diff --git a/level/block/spore_blossom.go b/level/block/spore_blossom.go new file mode 100644 index 0000000..473c233 --- /dev/null +++ b/level/block/spore_blossom.go @@ -0,0 +1,8 @@ +package block + +type SporeBlossom struct { +} + +func (SporeBlossom) ID() string { + return "minecraft:spore_blossom" +} diff --git a/level/block/spruce_button.go b/level/block/spruce_button.go new file mode 100644 index 0000000..33e9679 --- /dev/null +++ b/level/block/spruce_button.go @@ -0,0 +1,11 @@ +package block + +type SpruceButton struct { + Face string + Facing string + Powered string +} + +func (SpruceButton) ID() string { + return "minecraft:spruce_button" +} diff --git a/level/block/spruce_door.go b/level/block/spruce_door.go new file mode 100644 index 0000000..72cf0c9 --- /dev/null +++ b/level/block/spruce_door.go @@ -0,0 +1,13 @@ +package block + +type SpruceDoor struct { + Facing string + Half string + Hinge string + Open string + Powered string +} + +func (SpruceDoor) ID() string { + return "minecraft:spruce_door" +} diff --git a/level/block/spruce_fence.go b/level/block/spruce_fence.go new file mode 100644 index 0000000..58564a8 --- /dev/null +++ b/level/block/spruce_fence.go @@ -0,0 +1,13 @@ +package block + +type SpruceFence struct { + East string + North string + South string + Waterlogged string + West string +} + +func (SpruceFence) ID() string { + return "minecraft:spruce_fence" +} diff --git a/level/block/spruce_fence_gate.go b/level/block/spruce_fence_gate.go new file mode 100644 index 0000000..978d06e --- /dev/null +++ b/level/block/spruce_fence_gate.go @@ -0,0 +1,12 @@ +package block + +type SpruceFenceGate struct { + Facing string + In_wall string + Open string + Powered string +} + +func (SpruceFenceGate) ID() string { + return "minecraft:spruce_fence_gate" +} diff --git a/level/block/spruce_leaves.go b/level/block/spruce_leaves.go new file mode 100644 index 0000000..9e7e341 --- /dev/null +++ b/level/block/spruce_leaves.go @@ -0,0 +1,10 @@ +package block + +type SpruceLeaves struct { + Distance string + Persistent string +} + +func (SpruceLeaves) ID() string { + return "minecraft:spruce_leaves" +} diff --git a/level/block/spruce_log.go b/level/block/spruce_log.go new file mode 100644 index 0000000..c98cc76 --- /dev/null +++ b/level/block/spruce_log.go @@ -0,0 +1,9 @@ +package block + +type SpruceLog struct { + Axis string +} + +func (SpruceLog) ID() string { + return "minecraft:spruce_log" +} diff --git a/level/block/spruce_planks.go b/level/block/spruce_planks.go new file mode 100644 index 0000000..7c91c4c --- /dev/null +++ b/level/block/spruce_planks.go @@ -0,0 +1,8 @@ +package block + +type SprucePlanks struct { +} + +func (SprucePlanks) ID() string { + return "minecraft:spruce_planks" +} diff --git a/level/block/spruce_pressure_plate.go b/level/block/spruce_pressure_plate.go new file mode 100644 index 0000000..14ad128 --- /dev/null +++ b/level/block/spruce_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type SprucePressurePlate struct { + Powered string +} + +func (SprucePressurePlate) ID() string { + return "minecraft:spruce_pressure_plate" +} diff --git a/level/block/spruce_sapling.go b/level/block/spruce_sapling.go new file mode 100644 index 0000000..c07a15e --- /dev/null +++ b/level/block/spruce_sapling.go @@ -0,0 +1,9 @@ +package block + +type SpruceSapling struct { + Stage string +} + +func (SpruceSapling) ID() string { + return "minecraft:spruce_sapling" +} diff --git a/level/block/spruce_sign.go b/level/block/spruce_sign.go new file mode 100644 index 0000000..760654e --- /dev/null +++ b/level/block/spruce_sign.go @@ -0,0 +1,10 @@ +package block + +type SpruceSign struct { + Rotation string + Waterlogged string +} + +func (SpruceSign) ID() string { + return "minecraft:spruce_sign" +} diff --git a/level/block/spruce_slab.go b/level/block/spruce_slab.go new file mode 100644 index 0000000..5073306 --- /dev/null +++ b/level/block/spruce_slab.go @@ -0,0 +1,10 @@ +package block + +type SpruceSlab struct { + Type string + Waterlogged string +} + +func (SpruceSlab) ID() string { + return "minecraft:spruce_slab" +} diff --git a/level/block/spruce_stairs.go b/level/block/spruce_stairs.go new file mode 100644 index 0000000..338183d --- /dev/null +++ b/level/block/spruce_stairs.go @@ -0,0 +1,12 @@ +package block + +type SpruceStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (SpruceStairs) ID() string { + return "minecraft:spruce_stairs" +} diff --git a/level/block/spruce_trapdoor.go b/level/block/spruce_trapdoor.go new file mode 100644 index 0000000..34188df --- /dev/null +++ b/level/block/spruce_trapdoor.go @@ -0,0 +1,13 @@ +package block + +type SpruceTrapdoor struct { + Facing string + Half string + Open string + Powered string + Waterlogged string +} + +func (SpruceTrapdoor) ID() string { + return "minecraft:spruce_trapdoor" +} diff --git a/level/block/spruce_wall_sign.go b/level/block/spruce_wall_sign.go new file mode 100644 index 0000000..a33fe59 --- /dev/null +++ b/level/block/spruce_wall_sign.go @@ -0,0 +1,10 @@ +package block + +type SpruceWallSign struct { + Facing string + Waterlogged string +} + +func (SpruceWallSign) ID() string { + return "minecraft:spruce_wall_sign" +} diff --git a/level/block/spruce_wood.go b/level/block/spruce_wood.go new file mode 100644 index 0000000..2b82cde --- /dev/null +++ b/level/block/spruce_wood.go @@ -0,0 +1,9 @@ +package block + +type SpruceWood struct { + Axis string +} + +func (SpruceWood) ID() string { + return "minecraft:spruce_wood" +} diff --git a/level/block/sticky_piston.go b/level/block/sticky_piston.go new file mode 100644 index 0000000..9644da8 --- /dev/null +++ b/level/block/sticky_piston.go @@ -0,0 +1,10 @@ +package block + +type StickyPiston struct { + Extended string + Facing string +} + +func (StickyPiston) ID() string { + return "minecraft:sticky_piston" +} diff --git a/level/block/stone.go b/level/block/stone.go new file mode 100644 index 0000000..646caf9 --- /dev/null +++ b/level/block/stone.go @@ -0,0 +1,8 @@ +package block + +type Stone struct { +} + +func (Stone) ID() string { + return "minecraft:stone" +} diff --git a/level/block/stone_brick_slab.go b/level/block/stone_brick_slab.go new file mode 100644 index 0000000..2b790a4 --- /dev/null +++ b/level/block/stone_brick_slab.go @@ -0,0 +1,10 @@ +package block + +type StoneBrickSlab struct { + Type string + Waterlogged string +} + +func (StoneBrickSlab) ID() string { + return "minecraft:stone_brick_slab" +} diff --git a/level/block/stone_brick_stairs.go b/level/block/stone_brick_stairs.go new file mode 100644 index 0000000..cc6b972 --- /dev/null +++ b/level/block/stone_brick_stairs.go @@ -0,0 +1,12 @@ +package block + +type StoneBrickStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (StoneBrickStairs) ID() string { + return "minecraft:stone_brick_stairs" +} diff --git a/level/block/stone_brick_wall.go b/level/block/stone_brick_wall.go new file mode 100644 index 0000000..eaa5548 --- /dev/null +++ b/level/block/stone_brick_wall.go @@ -0,0 +1,14 @@ +package block + +type StoneBrickWall struct { + East string + North string + South string + Up string + Waterlogged string + West string +} + +func (StoneBrickWall) ID() string { + return "minecraft:stone_brick_wall" +} diff --git a/level/block/stone_bricks.go b/level/block/stone_bricks.go new file mode 100644 index 0000000..e3550e4 --- /dev/null +++ b/level/block/stone_bricks.go @@ -0,0 +1,8 @@ +package block + +type StoneBricks struct { +} + +func (StoneBricks) ID() string { + return "minecraft:stone_bricks" +} diff --git a/level/block/stone_button.go b/level/block/stone_button.go new file mode 100644 index 0000000..883aba9 --- /dev/null +++ b/level/block/stone_button.go @@ -0,0 +1,11 @@ +package block + +type StoneButton struct { + Face string + Facing string + Powered string +} + +func (StoneButton) ID() string { + return "minecraft:stone_button" +} diff --git a/level/block/stone_pressure_plate.go b/level/block/stone_pressure_plate.go new file mode 100644 index 0000000..feb8a17 --- /dev/null +++ b/level/block/stone_pressure_plate.go @@ -0,0 +1,9 @@ +package block + +type StonePressurePlate struct { + Powered string +} + +func (StonePressurePlate) ID() string { + return "minecraft:stone_pressure_plate" +} diff --git a/level/block/stone_slab.go b/level/block/stone_slab.go new file mode 100644 index 0000000..b7fe3a3 --- /dev/null +++ b/level/block/stone_slab.go @@ -0,0 +1,10 @@ +package block + +type StoneSlab struct { + Type string + Waterlogged string +} + +func (StoneSlab) ID() string { + return "minecraft:stone_slab" +} diff --git a/level/block/stone_stairs.go b/level/block/stone_stairs.go new file mode 100644 index 0000000..076cae5 --- /dev/null +++ b/level/block/stone_stairs.go @@ -0,0 +1,12 @@ +package block + +type StoneStairs struct { + Facing string + Half string + Shape string + Waterlogged string +} + +func (StoneStairs) ID() string { + return "minecraft:stone_stairs" +} diff --git a/level/block/stonecutter.go b/level/block/stonecutter.go new file mode 100644 index 0000000..16ea8f9 --- /dev/null +++ b/level/block/stonecutter.go @@ -0,0 +1,9 @@ +package block + +type Stonecutter struct { + Facing string +} + +func (Stonecutter) ID() string { + return "minecraft:stonecutter" +} diff --git a/level/block/stripped_acacia_log.go b/level/block/stripped_acacia_log.go new file mode 100644 index 0000000..c27470d --- /dev/null +++ b/level/block/stripped_acacia_log.go @@ -0,0 +1,9 @@ +package block + +type StrippedAcaciaLog struct { + Axis string +} + +func (StrippedAcaciaLog) ID() string { + return "minecraft:stripped_acacia_log" +} diff --git a/level/block/stripped_acacia_wood.go b/level/block/stripped_acacia_wood.go new file mode 100644 index 0000000..ef82dc4 --- /dev/null +++ b/level/block/stripped_acacia_wood.go @@ -0,0 +1,9 @@ +package block + +type StrippedAcaciaWood struct { + Axis string +} + +func (StrippedAcaciaWood) ID() string { + return "minecraft:stripped_acacia_wood" +} diff --git a/level/block/stripped_birch_log.go b/level/block/stripped_birch_log.go new file mode 100644 index 0000000..dc52256 --- /dev/null +++ b/level/block/stripped_birch_log.go @@ -0,0 +1,9 @@ +package block + +type StrippedBirchLog struct { + Axis string +} + +func (StrippedBirchLog) ID() string { + return "minecraft:stripped_birch_log" +} diff --git a/level/block/stripped_birch_wood.go b/level/block/stripped_birch_wood.go new file mode 100644 index 0000000..3b2420b --- /dev/null +++ b/level/block/stripped_birch_wood.go @@ -0,0 +1,9 @@ +package block + +type StrippedBirchWood struct { + Axis string +} + +func (StrippedBirchWood) ID() string { + return "minecraft:stripped_birch_wood" +} diff --git a/level/block/stripped_crimson_hyphae.go b/level/block/stripped_crimson_hyphae.go new file mode 100644 index 0000000..aac92f8 --- /dev/null +++ b/level/block/stripped_crimson_hyphae.go @@ -0,0 +1,9 @@ +package block + +type StrippedCrimsonHyphae struct { + Axis string +} + +func (StrippedCrimsonHyphae) ID() string { + return "minecraft:stripped_crimson_hyphae" +} diff --git a/level/block/stripped_crimson_stem.go b/level/block/stripped_crimson_stem.go new file mode 100644 index 0000000..7cdbc2a --- /dev/null +++ b/level/block/stripped_crimson_stem.go @@ -0,0 +1,9 @@ +package block + +type StrippedCrimsonStem struct { + Axis string +} + +func (StrippedCrimsonStem) ID() string { + return "minecraft:stripped_crimson_stem" +} diff --git a/level/block/stripped_dark_oak_log.go b/level/block/stripped_dark_oak_log.go new file mode 100644 index 0000000..39268ff --- /dev/null +++ b/level/block/stripped_dark_oak_log.go @@ -0,0 +1,9 @@ +package block + +type StrippedDarkOakLog struct { + Axis string +} + +func (StrippedDarkOakLog) ID() string { + return "minecraft:stripped_dark_oak_log" +} diff --git a/level/block/stripped_dark_oak_wood.go b/level/block/stripped_dark_oak_wood.go new file mode 100644 index 0000000..693711a --- /dev/null +++ b/level/block/stripped_dark_oak_wood.go @@ -0,0 +1,9 @@ +package block + +type StrippedDarkOakWood struct { + Axis string +} + +func (StrippedDarkOakWood) ID() string { + return "minecraft:stripped_dark_oak_wood" +} diff --git a/level/block/stripped_jungle_log.go b/level/block/stripped_jungle_log.go new file mode 100644 index 0000000..1d9ff94 --- /dev/null +++ b/level/block/stripped_jungle_log.go @@ -0,0 +1,9 @@ +package block + +type StrippedJungleLog struct { + Axis string +} + +func (StrippedJungleLog) ID() string { + return "minecraft:stripped_jungle_log" +} diff --git a/level/block/stripped_jungle_wood.go b/level/block/stripped_jungle_wood.go new file mode 100644 index 0000000..fdf2402 --- /dev/null +++ b/level/block/stripped_jungle_wood.go @@ -0,0 +1,9 @@ +package block + +type StrippedJungleWood struct { + Axis string +} + +func (StrippedJungleWood) ID() string { + return "minecraft:stripped_jungle_wood" +} diff --git a/level/block/stripped_oak_log.go b/level/block/stripped_oak_log.go new file mode 100644 index 0000000..63c4e8a --- /dev/null +++ b/level/block/stripped_oak_log.go @@ -0,0 +1,9 @@ +package block + +type StrippedOakLog struct { + Axis string +} + +func (StrippedOakLog) ID() string { + return "minecraft:stripped_oak_log" +} diff --git a/level/block/stripped_oak_wood.go b/level/block/stripped_oak_wood.go new file mode 100644 index 0000000..450266e --- /dev/null +++ b/level/block/stripped_oak_wood.go @@ -0,0 +1,9 @@ +package block + +type StrippedOakWood struct { + Axis string +} + +func (StrippedOakWood) ID() string { + return "minecraft:stripped_oak_wood" +} diff --git a/level/block/stripped_spruce_log.go b/level/block/stripped_spruce_log.go new file mode 100644 index 0000000..5eaed1a --- /dev/null +++ b/level/block/stripped_spruce_log.go @@ -0,0 +1,9 @@ +package block + +type StrippedSpruceLog struct { + Axis string +} + +func (StrippedSpruceLog) ID() string { + return "minecraft:stripped_spruce_log" +} diff --git a/level/block/stripped_spruce_wood.go b/level/block/stripped_spruce_wood.go new file mode 100644 index 0000000..751f1ca --- /dev/null +++ b/level/block/stripped_spruce_wood.go @@ -0,0 +1,9 @@ +package block + +type StrippedSpruceWood struct { + Axis string +} + +func (StrippedSpruceWood) ID() string { + return "minecraft:stripped_spruce_wood" +} diff --git a/level/block/stripped_warped_hyphae.go b/level/block/stripped_warped_hyphae.go new file mode 100644 index 0000000..4454d7f --- /dev/null +++ b/level/block/stripped_warped_hyphae.go @@ -0,0 +1,9 @@ +package block + +type StrippedWarpedHyphae struct { + Axis string +} + +func (StrippedWarpedHyphae) ID() string { + return "minecraft:stripped_warped_hyphae" +} diff --git a/level/block/stripped_warped_stem.go b/level/block/stripped_warped_stem.go new file mode 100644 index 0000000..8f5f688 --- /dev/null +++ b/level/block/stripped_warped_stem.go @@ -0,0 +1,9 @@ +package block + +type StrippedWarpedStem struct { + Axis string +} + +func (StrippedWarpedStem) ID() string { + return "minecraft:stripped_warped_stem" +} diff --git a/level/block/structure_block.go b/level/block/structure_block.go new file mode 100644 index 0000000..44e40db --- /dev/null +++ b/level/block/structure_block.go @@ -0,0 +1,9 @@ +package block + +type StructureBlock struct { + Mode string +} + +func (StructureBlock) ID() string { + return "minecraft:structure_block" +} diff --git a/level/block/structure_void.go b/level/block/structure_void.go new file mode 100644 index 0000000..54b444a --- /dev/null +++ b/level/block/structure_void.go @@ -0,0 +1,8 @@ +package block + +type StructureVoid struct { +} + +func (StructureVoid) ID() string { + return "minecraft:structure_void" +} diff --git a/level/block/sugar_cane.go b/level/block/sugar_cane.go new file mode 100644 index 0000000..66d2502 --- /dev/null +++ b/level/block/sugar_cane.go @@ -0,0 +1,9 @@ +package block + +type SugarCane struct { + Age string +} + +func (SugarCane) ID() string { + return "minecraft:sugar_cane" +} diff --git a/level/block/sunflower.go b/level/block/sunflower.go new file mode 100644 index 0000000..bfd328b --- /dev/null +++ b/level/block/sunflower.go @@ -0,0 +1,9 @@ +package block + +type Sunflower struct { + Half string +} + +func (Sunflower) ID() string { + return "minecraft:sunflower" +} diff --git a/level/block/sweet_berry_bush.go b/level/block/sweet_berry_bush.go new file mode 100644 index 0000000..63158e2 --- /dev/null +++ b/level/block/sweet_berry_bush.go @@ -0,0 +1,9 @@ +package block + +type SweetBerryBush struct { + Age string +} + +func (SweetBerryBush) ID() string { + return "minecraft:sweet_berry_bush" +} diff --git a/level/block/tall_grass.go b/level/block/tall_grass.go new file mode 100644 index 0000000..e72a55e --- /dev/null +++ b/level/block/tall_grass.go @@ -0,0 +1,9 @@ +package block + +type TallGrass struct { + Half string +} + +func (TallGrass) ID() string { + return "minecraft:tall_grass" +} diff --git a/level/block/tall_seagrass.go b/level/block/tall_seagrass.go new file mode 100644 index 0000000..00f2ff7 --- /dev/null +++ b/level/block/tall_seagrass.go @@ -0,0 +1,9 @@ +package block + +type TallSeagrass struct { + Half string +} + +func (TallSeagrass) ID() string { + return "minecraft:tall_seagrass" +} diff --git a/level/block/target.go b/level/block/target.go new file mode 100644 index 0000000..ae64b87 --- /dev/null +++ b/level/block/target.go @@ -0,0 +1,9 @@ +package block + +type Target struct { + Power string +} + +func (Target) ID() string { + return "minecraft:target" +} diff --git a/level/block/terracotta.go b/level/block/terracotta.go new file mode 100644 index 0000000..ea3d777 --- /dev/null +++ b/level/block/terracotta.go @@ -0,0 +1,8 @@ +package block + +type Terracotta struct { +} + +func (Terracotta) ID() string { + return "minecraft:terracotta" +} diff --git a/level/block/testdata/block_states.nbt b/level/block/testdata/block_states.nbt new file mode 100644 index 0000000000000000000000000000000000000000..5d0a0fa154343e43e54daefca0b2524d4f5fcb3b GIT binary patch literal 2365168 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

KnFZD6}aWX&<&` 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

gw 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