From 40451cdc70504fd82e3d60b82a4da92774d1e46e Mon Sep 17 00:00:00 2001 From: Aksiome <54895777+aksiome@users.noreply.github.com> Date: Mon, 4 Nov 2024 21:08:00 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=96=202.2.0=20release,=20diverse=20fix?= =?UTF-8?q?es=20and=20optimisations=20(#265)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.yml | 2 +- .spyglassrc.json | 18 +- commands.json | 1362 +++++++++++++++++ .../data/bs.dump/function/__load__.mcfunction | 2 +- .../bs.dump/function/format/any.mcfunction | 6 +- .../bs.dump/function/interpret/any.mcfunction | 4 +- .../function/interpret/path/path.mcfunction | 6 +- .../interpret/path/populate.mcfunction | 6 +- .../function/interpret/score.mcfunction | 4 +- .../bs.dump/tags/function/exclusive_load.json | 6 + .../data/bs.dump/tags/function/load.json | 1 - .../data/bs.dump/test/__boot__.mcfunction | 2 +- .../data/bs.dump/test/var.mcfunction | 3 +- .../data/bs.log/function/__load__.mcfunction | 3 +- .../data/bs.log/function/__tick__.mcfunction | 4 +- .../bs.log/function/__unload__.mcfunction | 1 + .../data/bs.log/function/time/get.mcfunction | 8 +- .../bs.log/tags/function/exclusive_load.json | 6 + .../data/bs.log/tags/function/load.json | 1 - .../data/bs.log/test/__boot__.mcfunction | 2 +- .../data/bs.log/test/history/show.mcfunction | 2 + datapacks/Bookshelf Dev/pack.mcmeta | 3 +- datapacks/Bookshelf Examples/pack.mcmeta | 2 +- datapacks/Bookshelf World/pack.mcmeta | 2 +- .../bs.biome/function/__load__.mcfunction | 4 +- .../bs.biome/function/__unload__.mcfunction | 4 +- .../function/get/biome/get_biome.mcfunction | 20 +- .../temperature/get_temperature.mcfunction | 10 +- .../get/temperature/variation.mcfunction | 7 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.biome/tags/function/load.json | 1 - .../bs.bitwise/function/__load__.mcfunction | 6 +- .../bs.bitwise/function/__unload__.mcfunction | 6 +- .../bs.bitwise/function/and/and.mcfunction | 6 +- .../function/and/compute.mcfunction | 190 +-- .../bs.bitwise/function/bit_count.mcfunction | 128 +- .../function/bit_length/bit_length.mcfunction | 13 +- .../function/bit_length/group_1.mcfunction | 16 +- .../function/bit_length/group_2.mcfunction | 16 +- .../function/bit_length/group_3.mcfunction | 16 +- .../function/bit_length/group_4.mcfunction | 16 +- .../data/bs.bitwise/function/or.mcfunction | 6 +- .../data/bs.bitwise/function/xor.mcfunction | 8 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.bitwise/tags/function/load.json | 1 - .../data/bs.bitwise/test/__boot__.mcfunction | 2 +- .../.metadata/generated/features.json | 2 +- .../bs.block/.metadata/generated/module.json | 2 +- .../bs.block/function/__load__.mcfunction | 5 +- .../bs.block/function/__unload__.mcfunction | 1 + .../function/fill/fill_block.mcfunction | 2 +- .../function/fill/fill_random.mcfunction | 2 +- .../function/fill/fill_type.mcfunction | 2 +- .../function/fill/process/pause.mcfunction | 4 +- .../function/fill/process/resume.mcfunction | 2 +- .../function/fill/recurse/init.mcfunction | 2 +- .../function/get/compile/block.mcfunction | 8 +- .../function/load/groups_table.mcfunction | 2 +- .../function/load/items_table.mcfunction | 2 +- .../function/load/types_table.mcfunction | 2 +- .../emit_block_particle.mcfunction} | 12 +- .../run.mcfunction | 0 .../keep_properties/recurse/next.mcfunction | 6 +- .../merge_properties/recurse/next.mcfunction | 4 +- .../transform/replace_type.mcfunction | 10 +- .../shift_properties/recurse/next.mcfunction | 4 +- .../recurse/shift_property.mcfunction | 16 +- .../type_mappings/find_match.mcfunction | 12 +- .../type_mappings/map_type.mcfunction | 4 +- .../type_mappings/mix_type.mcfunction | 4 +- .../utils/get_custom_dimension.mcfunction} | 4 +- .../function/utils/get_dimension.mcfunction} | 11 +- .../data/bs.block/loot_table/get/100.json | 2 +- .../data/bs.block/loot_table/get/101.json | 2 +- .../data/bs.block/loot_table/get/102.json | 2 +- .../data/bs.block/loot_table/get/103.json | 2 +- .../data/bs.block/loot_table/get/104.json | 2 +- .../data/bs.block/loot_table/get/105.json | 2 +- .../data/bs.block/loot_table/get/106.json | 2 +- .../data/bs.block/loot_table/get/107.json | 2 +- .../data/bs.block/loot_table/get/108.json | 2 +- .../data/bs.block/loot_table/get/109.json | 2 +- .../data/bs.block/loot_table/get/110.json | 2 +- .../data/bs.block/loot_table/get/111.json | 2 +- .../data/bs.block/loot_table/get/112.json | 2 +- .../data/bs.block/loot_table/get/113.json | 2 +- .../data/bs.block/loot_table/get/114.json | 2 +- .../data/bs.block/loot_table/get/115.json | 2 +- .../data/bs.block/loot_table/get/116.json | 2 +- .../data/bs.block/loot_table/get/117.json | 2 +- .../data/bs.block/loot_table/get/118.json | 2 +- .../data/bs.block/loot_table/get/119.json | 2 +- .../data/bs.block/loot_table/get/120.json | 2 +- .../data/bs.block/loot_table/get/121.json | 2 +- .../data/bs.block/loot_table/get/122.json | 2 +- .../data/bs.block/loot_table/get/123.json | 2 +- .../data/bs.block/loot_table/get/124.json | 2 +- .../data/bs.block/loot_table/get/125.json | 2 +- .../data/bs.block/loot_table/get/126.json | 2 +- .../data/bs.block/loot_table/get/127.json | 2 +- .../data/bs.block/loot_table/get/128.json | 2 +- .../data/bs.block/loot_table/get/129.json | 2 +- .../data/bs.block/loot_table/get/130.json | 2 +- .../data/bs.block/loot_table/get/131.json | 2 +- .../data/bs.block/loot_table/get/132.json | 2 +- .../data/bs.block/loot_table/get/133.json | 2 +- .../data/bs.block/loot_table/get/134.json | 2 +- .../data/bs.block/loot_table/get/135.json | 2 +- .../data/bs.block/loot_table/get/136.json | 2 +- .../data/bs.block/loot_table/get/137.json | 2 +- .../data/bs.block/loot_table/get/138.json | 2 +- .../data/bs.block/loot_table/get/139.json | 2 +- .../data/bs.block/loot_table/get/140.json | 2 +- .../data/bs.block/loot_table/get/141.json | 2 +- .../data/bs.block/loot_table/get/142.json | 2 +- .../data/bs.block/loot_table/get/143.json | 2 +- .../data/bs.block/loot_table/get/144.json | 2 +- .../data/bs.block/loot_table/get/145.json | 2 +- .../data/bs.block/loot_table/get/146.json | 2 +- .../data/bs.block/loot_table/get/147.json | 2 +- .../data/bs.block/loot_table/get/148.json | 2 +- .../data/bs.block/loot_table/get/149.json | 2 +- .../data/bs.block/loot_table/get/150.json | 2 +- .../data/bs.block/loot_table/get/151.json | 2 +- .../data/bs.block/loot_table/get/152.json | 2 +- .../data/bs.block/loot_table/get/153.json | 1 + .../data/bs.block/loot_table/get/154.json | 1 + .../data/bs.block/loot_table/get/155.json | 1 + .../data/bs.block/loot_table/get/156.json | 1 + .../data/bs.block/loot_table/get/157.json | 1 + .../data/bs.block/loot_table/get/158.json | 1 + .../data/bs.block/loot_table/get/159.json | 1 + .../data/bs.block/loot_table/get/86.json | 2 +- .../data/bs.block/loot_table/get/87.json | 2 +- .../data/bs.block/loot_table/get/88.json | 2 +- .../data/bs.block/loot_table/get/89.json | 2 +- .../data/bs.block/loot_table/get/90.json | 2 +- .../data/bs.block/loot_table/get/91.json | 2 +- .../data/bs.block/loot_table/get/92.json | 2 +- .../data/bs.block/loot_table/get/93.json | 2 +- .../data/bs.block/loot_table/get/94.json | 2 +- .../data/bs.block/loot_table/get/95.json | 2 +- .../data/bs.block/loot_table/get/96.json | 2 +- .../data/bs.block/loot_table/get/97.json | 2 +- .../data/bs.block/loot_table/get/98.json | 2 +- .../data/bs.block/loot_table/get/99.json | 2 +- .../data/bs.block/loot_table/get/get.json | 2 +- .../data/bs.block/tags/block/has_state.json | 21 + ...articles.json => emit_block_particle.json} | 2 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.block/tags/function/load.json | 1 - .../data/bs.block/test/__boot__.mcfunction | 2 +- .../data/bs.block/test/fill/random.mcfunction | 36 +- .../test/produce/block_display.mcfunction | 4 +- .../produce/emit_block_particle.mcfunction | 7 + .../produce/emit_block_particles.mcfunction | 7 - .../test/produce/falling_block.mcfunction | 4 +- .../produce/solid_block_display.mcfunction | 8 +- .../bs.color/function/__load__.mcfunction | 17 +- .../bs.color/function/__unload__.mcfunction | 4 +- .../hex_to_int/convert_hexes.mcfunction | 12 +- .../function/int_to_hex/int_to_hex.mcfunction | 18 +- .../bs.color/function/int_to_rgb.mcfunction | 8 +- .../bs.color/function/rgb_to_int.mcfunction | 16 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.color/tags/function/load.json | 1 - .../data/bs.color/test/__boot__.mcfunction | 2 +- .../data/bs.color/test/hex_to_int.mcfunction | 12 +- .../data/bs.color/test/rgb_to_int.mcfunction | 12 +- .../bs.generate/function/__load__.mcfunction | 2 +- .../shape_2d/fractal_shape_2d.mcfunction | 2 +- .../shape_2d/process/pause.mcfunction | 6 +- .../shape_2d/process/resume.mcfunction | 2 +- .../function/shape_2d/recurse/init.mcfunction | 3 +- .../function/shape_2d/shape_2d.mcfunction | 2 +- .../shape_2d/simplex_shape_2d.mcfunction | 2 +- .../utils/get_custom_dimension.mcfunction} | 3 +- .../function/utils/get_dimension.mcfunction} | 10 +- .../function/utils/get_location.mcfunction | 19 + .../tags/function/exclusive_load.json | 6 + .../data/bs.generate/tags/function/load.json | 1 - .../data/bs.generate/test/__boot__.mcfunction | 2 +- .../bs.health/function/__load__.mcfunction | 2 +- .../bs.health/function/__unload__.mcfunction | 2 +- .../bs.health/function/add/health.mcfunction | 24 +- .../function/add/max_health.mcfunction | 16 +- .../function/apply/decrease_health.mcfunction | 6 +- .../function/apply/increase_health.mcfunction | 4 +- .../function/apply/remove_modifier.mcfunction | 2 +- .../function/apply/set_max_health.mcfunction | 2 +- .../bs.health/function/get/health.mcfunction | 6 +- .../function/get/max_health.mcfunction | 6 +- .../bs.health/function/set/health.mcfunction | 18 +- .../function/set/max_health.mcfunction | 10 +- .../time_to_live/next_tick.mcfunction | 6 +- .../time_to_live/register_callback.mcfunction | 2 +- .../time_to_live/register_unit.mcfunction | 4 +- .../function/time_to_live/time_out.mcfunction | 4 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.health/tags/function/load.json | 1 - .../data/bs.health/test/__boot__.mcfunction | 2 +- .../bs.health/test/add/concurrent.mcfunction | 8 +- .../data/bs.health/test/add/health.mcfunction | 8 +- .../bs.health/test/add/max_health.mcfunction | 8 +- .../data/bs.health/test/get/health.mcfunction | 10 +- .../bs.health/test/get/max_health.mcfunction | 10 +- .../bs.health/test/set/concurrent.mcfunction | 8 +- .../data/bs.health/test/set/health.mcfunction | 8 +- .../bs.health/test/set/max_health.mcfunction | 8 +- .../bs.health/test/time_to_live.mcfunction | 8 +- .../bs.hitbox/function/__load__.mcfunction | 1 - .../bs.hitbox/function/__unload__.mcfunction | 1 - .../function/get_block/get_block.mcfunction | 2 +- .../function/get_block/offset/get.mcfunction | 3 +- .../function/get_entity/get_entity.mcfunction | 2 +- .../get_entity/registry/68.mcfunction | 1 + .../is_entity_in_block/shaped.mcfunction | 4 +- .../is_entity_in_block/sized.mcfunction | 4 +- .../is_entity_in_blocks/sized.mcfunction | 2 +- .../is_in_block/is_in_block.mcfunction | 2 +- .../function/utils/get_fract_pos.mcfunction | 1 - .../utils/get_negative_pos.mcfunction | 3 +- .../utils/get_relative_pos.mcfunction | 2 +- .../bs.hitbox/loot_table/get_block/72.json | 1 + .../bs.hitbox/loot_table/get_block/73.json | 1 + .../bs.hitbox/loot_table/get_block/get.json | 2 +- .../data/bs.hitbox/tags/block/has_offset.json | 4 +- .../bs.hitbox/tags/block/is_composite.json | 20 +- .../bs.hitbox/tags/entity_type/is_sized.json | 88 ++ .../bs.hitbox/tags/entity_type/size/boat.json | 22 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.hitbox/tags/function/load.json | 1 - .../data/bs.hitbox/test/__boot__.mcfunction | 2 +- .../bs.hitbox/test/entity_in_block.mcfunction | 3 +- .../test/entity_in_blocks.mcfunction | 2 +- .../bs.hitbox/test/entity_scale.mcfunction | 2 +- .../data/bs.id/function/__load__.mcfunction | 1 - .../data/bs.id/function/__unload__.mcfunction | 1 - .../bs.id/tags/function/exclusive_load.json | 6 + .../data/bs.id/tags/function/load.json | 1 - .../data/bs.id/test/__boot__.mcfunction | 2 +- .../data/bs.id/test/update_cuids.mcfunction | 16 +- .../data/bs.link/function/__load__.mcfunction | 5 +- .../bs.link/function/__unload__.mcfunction | 5 +- .../behaviors/imitate_pos_x.mcfunction | 2 +- .../behaviors/imitate_pos_y.mcfunction | 2 +- .../behaviors/imitate_pos_z.mcfunction | 2 +- .../behaviors/imitate_rot_h.mcfunction | 2 +- .../behaviors/imitate_rot_v.mcfunction | 3 +- .../behaviors/reverse_pos_x.mcfunction | 4 +- .../behaviors/reverse_pos_y.mcfunction | 4 +- .../behaviors/reverse_pos_z.mcfunction | 4 +- .../behaviors/reverse_rot_h.mcfunction | 4 +- .../behaviors/reverse_rot_v.mcfunction | 4 +- .../function/behaviors/setup.mcfunction | 10 +- .../mirror_point_ata/as_origin.mcfunction | 6 +- .../bs.link/tags/function/exclusive_load.json | 6 + .../data/bs.link/tags/function/load.json | 1 - .../data/bs.link/test/__boot__.mcfunction | 2 +- .../data/bs.link/test/as_children.mcfunction | 10 +- .../data/bs.link/test/as_parent.mcfunction | 10 +- .../data/bs.link/test/at_children.mcfunction | 10 +- .../data/bs.link/test/at_parent.mcfunction | 10 +- .../bs.link/test/create_link_ata.mcfunction | 26 +- .../test/imitate_pos_and_rot.mcfunction | 76 +- .../bs.link/test/keep_local_pos.mcfunction | 16 +- .../bs.link/test/mirror_point_ata.mcfunction | 32 +- .../data/bs.link/test/remove_link.mcfunction | 16 +- .../test/reverse_pos_and_rot.mcfunction | 34 +- .../data/bs.link/test/update_link.mcfunction | 26 +- .../data/bs.math/function/__load__.mcfunction | 9 +- .../bs.math/function/__unload__.mcfunction | 6 +- .../data/bs.math/function/acos.mcfunction | 14 +- .../data/bs.math/function/asin.mcfunction | 14 +- .../bs.math/function/atan/atan.mcfunction | 2 +- .../data/bs.math/function/atan/run.mcfunction | 9 +- .../bs.math/function/atan2/atan2.mcfunction | 2 +- .../bs.math/function/atan2/run.mcfunction | 7 +- .../function/combine/combine.mcfunction | 29 +- .../function/combine/recurse/init.mcfunction | 7 +- .../function/combine/recurse/next.mcfunction | 20 +- .../combine/recurse/overflow.mcfunction | 48 - .../data/bs.math/function/cos.mcfunction | 16 +- .../data/bs.math/function/divide.mcfunction | 10 +- .../data/bs.math/function/exp.mcfunction | 2 +- .../bs.math/function/exp2/exp2.mcfunction | 2 +- .../bs.math/function/exp2/fract.mcfunction | 22 +- .../data/bs.math/function/exp2/run.mcfunction | 8 +- .../function/factorial/factorial.mcfunction | 2 +- .../function/factorial/loop.mcfunction | 6 +- .../bs.math/function/frexp/e_neg.mcfunction | 44 +- .../function/frexp/e_pos/chunk.mcfunction | 30 +- .../function/frexp/e_pos/range_1.mcfunction | 16 +- .../function/frexp/e_pos/range_2.mcfunction | 16 +- .../function/frexp/e_pos/range_3.mcfunction | 16 +- .../function/frexp/e_pos/range_4.mcfunction | 16 +- .../function/frexp/e_pos/split.mcfunction | 12 +- .../bs.math/function/frexp/frexp.mcfunction | 2 +- .../bs.math/function/frexp/run.mcfunction | 8 +- .../data/bs.math/function/gcd/gcd.mcfunction | 2 +- .../data/bs.math/function/gcd/loop.mcfunction | 6 +- .../data/bs.math/function/ipow.mcfunction | 30 +- .../data/bs.math/function/isqrt.mcfunction | 18 +- .../bs.math/function/ldexp/ldexp.mcfunction | 2 +- .../bs.math/function/ldexp/run.mcfunction | 2 +- .../bs.math/function/log2/fract.mcfunction | 34 +- .../data/bs.math/function/log2/run.mcfunction | 4 +- .../bs.math/function/loga/loga.mcfunction | 6 +- .../data/bs.math/function/pow/mul.mcfunction | 2 +- .../data/bs.math/function/pow/pow.mcfunction | 4 +- .../data/bs.math/function/sin.mcfunction | 16 +- .../bs.math/function/sincos/sincos.mcfunction | 2 +- .../data/bs.math/function/sqrt.mcfunction | 44 +- .../data/bs.math/function/tan/run.mcfunction | 4 +- .../data/bs.math/function/tan/tan.mcfunction | 2 +- .../bs.math/tags/function/exclusive_load.json | 6 + .../data/bs.math/tags/function/load.json | 1 - .../data/bs.math/test/__boot__.mcfunction | 2 +- .../data/bs.math/test/combine.mcfunction | 5 + .../data/bs.math/test/exp.mcfunction | 8 +- .../data/bs.math/test/exp2.mcfunction | 8 +- .../data/bs.math/test/frexp.mcfunction | 16 +- .../data/bs.math/test/ldexp.mcfunction | 12 +- .../data/bs.math/test/log.mcfunction | 12 +- .../data/bs.math/test/log10.mcfunction | 12 +- .../data/bs.math/test/log2.mcfunction | 12 +- .../data/bs.math/test/loga.mcfunction | 12 +- .../data/bs.math/test/pow.mcfunction | 12 +- .../data/bs.math/test/sqrt.mcfunction | 8 +- .../data/bs.move/function/__load__.mcfunction | 9 +- .../collision/check/block/any.mcfunction | 8 +- .../collision/check/block/cube.mcfunction | 54 +- .../collision/check/block/shape.mcfunction | 66 +- .../collision/check/entity/any.mcfunction | 4 +- .../collision/check/entity/shape.mcfunction | 66 +- .../collision/check/entity/size.mcfunction | 74 +- .../function/collision/collide.mcfunction | 10 +- .../function/collision/handle.mcfunction | 67 +- .../collision/recurse/init/x_neg.mcfunction | 22 - .../collision/recurse/init/x_pos.mcfunction | 20 - .../collision/recurse/init/z_neg.mcfunction | 22 - .../collision/recurse/setup/init.mcfunction} | 2 +- .../collision/recurse/setup/xn.mcfunction | 19 + .../collision/recurse/setup/xp.mcfunction | 18 + .../collision/recurse/setup/yn.mcfunction | 18 + .../collision/recurse/setup/yp.mcfunction | 18 + .../y_pos.mcfunction => setup/zn.mcfunction} | 9 +- .../collision/recurse/setup/zp.mcfunction | 19 + .../collision/recurse/x_neg.mcfunction | 21 - .../collision/recurse/x_pos.mcfunction | 21 - .../function/collision/recurse/xn.mcfunction | 20 + .../function/collision/recurse/xp.mcfunction | 20 + .../collision/recurse/y_neg.mcfunction | 21 - .../collision/recurse/y_pos.mcfunction | 21 - .../function/collision/recurse/yn.mcfunction | 20 + .../function/collision/recurse/yp.mcfunction | 20 + .../{z_neg.mcfunction => zn.mcfunction} | 4 +- .../{z_pos.mcfunction => zp.mcfunction} | 4 +- .../collision/resolution/resolve.mcfunction | 42 - .../collision/resolvers/any.mcfunction | 22 + .../behaviors/bounce.mcfunction | 0 .../behaviors/damped_bounce.mcfunction | 0 .../behaviors/slide.mcfunction | 0 .../behaviors/stick.mcfunction | 0 .../canonical.mcfunction | 6 +- .../callback => resolvers}/local.mcfunction | 6 +- .../collision/resolvers/run.mcfunction | 16 + .../get_bounding_box.mcfunction} | 16 +- .../utils/get_relative_entity_pos.mcfunction | 18 + .../utils/get_relative_pos.mcfunction | 18 + .../tp_relative.mcfunction} | 2 +- .../canonical_to_local.mcfunction | 2 +- .../canonical_to_local/sincos.mcfunction | 2 +- .../local_to_canonical/compute.mcfunction | 2 +- .../local_to_canonical.mcfunction | 2 +- .../teleport/canonical/run.mcfunction | 2 +- .../function/teleport/local/run.mcfunction | 2 +- .../bs.move/tags/function/exclusive_load.json | 6 + .../data/bs.move/tags/function/load.json | 1 - .../tags/function/on_collision/bounce.json | 2 +- .../function/on_collision/damped_bounce.json | 2 +- .../tags/function/on_collision/slide.json | 2 +- .../tags/function/on_collision/stick.json | 2 +- .../data/bs.move/test/__boot__.mcfunction | 2 +- .../test/collision/with_entity.mcfunction | 4 +- .../data/bs.move/test/set_motion.mcfunction | 12 +- .../bs.position/function/__load__.mcfunction | 9 +- .../function/__unload__.mcfunction | 5 +- .../function/add/rotation/all/run.mcfunction | 2 +- .../function/add/rotation/h/run.mcfunction | 2 +- .../function/add/rotation/v/run.mcfunction | 2 +- .../canonical_to_local.mcfunction | 52 +- .../canonical_to_local/sincos.mcfunction | 10 +- .../local_to_canonical/compute.mcfunction | 2 +- .../local_to_canonical.mcfunction | 2 +- .../get/distance/distance_ata.mcfunction | 20 +- .../distance/distance_squared_ata.mcfunction | 30 +- .../function/get/position/all.mcfunction | 2 +- .../function/get/position/ctx.mcfunction | 3 +- .../function/get/position/x.mcfunction | 2 +- .../function/get/position/y.mcfunction | 2 +- .../function/get/position/z.mcfunction | 2 +- .../get/relative/relative_ata.mcfunction | 14 +- .../relative/relative_from_dir/ctx.mcfunction | 4 +- .../relative_from_dir.mcfunction | 2 +- .../function/set/rotation/all/all.mcfunction | 2 +- .../function/set/rotation/all/run.mcfunction | 2 +- .../function/set/rotation/h/h.mcfunction | 2 +- .../function/set/rotation/h/run.mcfunction | 2 +- .../function/set/rotation/v/run.mcfunction | 2 +- .../function/set/rotation/v/v.mcfunction | 2 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.position/tags/function/load.json | 1 - .../data/bs.position/test/__boot__.mcfunction | 2 +- .../data/bs.position/test/add/pos.mcfunction | 31 +- .../test/add/pos_and_rot.mcfunction | 58 +- .../bs.position/test/add/pos_x.mcfunction | 13 +- .../bs.position/test/add/pos_y.mcfunction | 13 +- .../bs.position/test/add/pos_z.mcfunction | 13 +- .../data/bs.position/test/add/rot.mcfunction | 28 +- .../bs.position/test/add/rot_h.mcfunction | 18 +- .../bs.position/test/add/rot_v.mcfunction | 18 +- .../test/get/distance_ata.mcfunction | 4 +- .../test/get/distance_squared_ata.mcfunction | 4 +- .../data/bs.position/test/get/pos.mcfunction | 24 +- .../test/get/pos_and_rot.mcfunction | 40 +- .../bs.position/test/get/pos_x.mcfunction | 9 +- .../bs.position/test/get/pos_y.mcfunction | 9 +- .../bs.position/test/get/pos_z.mcfunction | 9 +- .../data/bs.position/test/get/rot.mcfunction | 17 +- .../bs.position/test/get/rot_h.mcfunction | 8 +- .../bs.position/test/get/rot_v.mcfunction | 8 +- .../data/bs.position/test/set/pos.mcfunction | 31 +- .../test/set/pos_and_rot.mcfunction | 58 +- .../bs.position/test/set/pos_x.mcfunction | 13 +- .../bs.position/test/set/pos_y.mcfunction | 13 +- .../bs.position/test/set/pos_z.mcfunction | 13 +- .../data/bs.position/test/set/rot.mcfunction | 28 +- .../bs.position/test/set/rot_h.mcfunction | 16 +- .../bs.position/test/set/rot_v.mcfunction | 16 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.random/tags/function/load.json | 1 - .../data/bs.random/test/__boot__.mcfunction | 2 +- .../bs.raycast/function/__load__.mcfunction | 2 +- .../function/check/block/shape.mcfunction | 58 +- .../function/check/entity/shape.mcfunction | 50 +- .../function/check/entity/size.mcfunction | 52 +- .../function/collide/shape.mcfunction | 6 +- .../function/collide/size.mcfunction | 6 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.raycast/tags/function/load.json | 1 - .../data/bs.raycast/test/__boot__.mcfunction | 2 +- .../test/entity/tagged_entities.mcfunction | 4 +- .../bs.schedule/function/__load__.mcfunction | 3 +- .../function/__unload__.mcfunction | 3 +- .../function/execute/callback.mcfunction | 2 +- .../function/execute/loop.mcfunction | 7 +- .../execute/run/with_entity.mcfunction | 16 + .../execute/run/without_entity.mcfunction | 16 + .../schedule/context/get_entity.mcfunction | 19 - .../schedule/context/get_position.mcfunction | 10 +- .../function/schedule/schedule.mcfunction | 24 +- .../function/schedule/unit/handle.mcfunction | 2 - .../schedule/unit/normalize.mcfunction | 2 +- .../data/bs.schedule/predicate/target.json | 18 + .../tags/function/exclusive_load.json | 6 + .../data/bs.schedule/tags/function/load.json | 1 - .../data/bs.schedule/test/__boot__.mcfunction | 2 +- .../bs.sidebar/function/__load__.mcfunction | 4 +- .../bs.sidebar/function/__unload__.mcfunction | 2 +- .../function/create/create.mcfunction | 20 +- .../function/create/recurse/abort.mcfunction | 2 +- .../function/create/recurse/next.mcfunction | 10 +- .../function/create/recurse/start.mcfunction | 6 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.sidebar/tags/function/load.json | 1 - .../bs.time/tags/function/exclusive_load.json | 6 + .../data/bs.time/tags/function/load.json | 1 - .../data/bs.time/test/__boot__.mcfunction | 2 +- .../bs.tree/tags/function/exclusive_load.json | 6 + .../data/bs.tree/tags/function/load.json | 1 - .../bs.vector/function/__load__.mcfunction | 6 +- .../bs.vector/function/__unload__.mcfunction | 2 +- .../basis_rot_3d/basis_rot_3d.mcfunction | 40 +- .../convert/basis_rot_3d/sincos.mcfunction | 10 +- .../cartesian_to_spherical.mcfunction | 2 +- .../cartesian_to_spherical/compute.mcfunction | 2 +- .../spherical_to_cartesian/compute.mcfunction | 2 +- .../spherical_to_cartesian.mcfunction | 8 +- .../function/cross_product.mcfunction | 26 +- .../bs.vector/function/dot_product.mcfunction | 16 +- .../function/length_squared.mcfunction | 16 +- .../function/normalize/compute.mcfunction | 4 +- .../function/normalize/normalize.mcfunction | 2 +- .../normalize_max_component.mcfunction | 8 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.vector/tags/function/load.json | 1 - .../data/bs.vector/test/__boot__.mcfunction | 2 +- .../data/bs.view/function/__load__.mcfunction | 4 +- .../bs.view/function/__unload__.mcfunction | 1 - .../bs.view/tags/function/exclusive_load.json | 6 + .../data/bs.view/tags/function/load.json | 1 - .../data/bs.view/test/__boot__.mcfunction | 2 +- .../bs.view/test/as_aimed_entity.mcfunction | 4 +- .../bs.view/test/as_looked_entity.mcfunction | 4 +- .../bs.view/test/at_aimed_entity.mcfunction | 4 +- .../bs.view/test/at_looked_entity.mcfunction | 4 +- .../tags/function/exclusive_load.json | 6 + .../data/bs.weather/tags/function/load.json | 1 - .../bs.xp/tags/function/exclusive_load.json | 6 + .../data/bs.xp/tags/function/load.json | 1 - .../data/bs.xp/test/__boot__.mcfunction | 2 +- .../data/minecraft/tags/function/unload.json | 4 + datapacks/Bookshelf/pack.mcmeta | 3 +- docs/CHANGELOG.md | 104 +- docs/contribute/shared-data.md | 12 +- docs/modules/block.md | 30 +- docs/modules/hitbox.md | 7 + docs/modules/move.md | 2 +- generated/command_storage_bs.dat | Bin 33989 -> 34777 bytes generated/manifest.json | 6 +- scripts/src/packtest/runner.py | 3 +- scripts/workflows/distribute_release.py | 9 +- 523 files changed, 3930 insertions(+), 2348 deletions(-) create mode 100644 commands.json create mode 100644 datapacks/Bookshelf Dev/data/bs.dump/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf Dev/data/bs.log/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.biome/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.bitwise/tags/function/exclusive_load.json rename datapacks/Bookshelf/data/bs.block/function/produce/{block_particles/emit_block_particles.mcfunction => block_particle/emit_block_particle.mcfunction} (85%) rename datapacks/Bookshelf/data/bs.block/function/produce/{block_particles => block_particle}/run.mcfunction (100%) rename datapacks/Bookshelf/data/{bs.schedule/function/schedule/context/format/entity.mcfunction => bs.block/function/utils/get_custom_dimension.mcfunction} (84%) rename datapacks/Bookshelf/data/{bs.move/function/collision/recurse/init/y_neg.mcfunction => bs.block/function/utils/get_dimension.mcfunction} (60%) create mode 100644 datapacks/Bookshelf/data/bs.block/loot_table/get/153.json create mode 100644 datapacks/Bookshelf/data/bs.block/loot_table/get/154.json create mode 100644 datapacks/Bookshelf/data/bs.block/loot_table/get/155.json create mode 100644 datapacks/Bookshelf/data/bs.block/loot_table/get/156.json create mode 100644 datapacks/Bookshelf/data/bs.block/loot_table/get/157.json create mode 100644 datapacks/Bookshelf/data/bs.block/loot_table/get/158.json create mode 100644 datapacks/Bookshelf/data/bs.block/loot_table/get/159.json rename datapacks/Bookshelf/data/bs.block/tags/function/{emit_block_particles.json => emit_block_particle.json} (86%) create mode 100644 datapacks/Bookshelf/data/bs.block/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particle.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particles.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.color/tags/function/exclusive_load.json rename datapacks/Bookshelf/data/{bs.schedule/function/schedule/context/format/command.mcfunction => bs.generate/function/utils/get_custom_dimension.mcfunction} (83%) rename datapacks/Bookshelf/data/{bs.move/function/collision/recurse/init/z_pos.mcfunction => bs.generate/function/utils/get_dimension.mcfunction} (59%) create mode 100644 datapacks/Bookshelf/data/bs.generate/function/utils/get_location.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.generate/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.health/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/72.json create mode 100644 datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/73.json create mode 100644 datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/is_sized.json create mode 100644 datapacks/Bookshelf/data/bs.hitbox/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.id/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.link/tags/function/exclusive_load.json delete mode 100644 datapacks/Bookshelf/data/bs.math/function/combine/recurse/overflow.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.math/tags/function/exclusive_load.json delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_neg.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_pos.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/z_neg.mcfunction rename datapacks/Bookshelf/data/{bs.schedule/function/schedule/context/format/as_command.mcfunction => bs.move/function/collision/recurse/setup/init.mcfunction} (82%) create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xn.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xp.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yn.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yp.mcfunction rename datapacks/Bookshelf/data/bs.move/function/collision/recurse/{init/y_pos.mcfunction => setup/zn.mcfunction} (71%) create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/zp.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_neg.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_pos.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/xn.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/xp.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_neg.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_pos.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/yn.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/recurse/yp.mcfunction rename datapacks/Bookshelf/data/bs.move/function/collision/recurse/{z_neg.mcfunction => zn.mcfunction} (84%) rename datapacks/Bookshelf/data/bs.move/function/collision/recurse/{z_pos.mcfunction => zp.mcfunction} (84%) delete mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/resolution/resolve.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/resolvers/any.mcfunction rename datapacks/Bookshelf/data/bs.move/function/collision/{resolution => resolvers}/behaviors/bounce.mcfunction (100%) rename datapacks/Bookshelf/data/bs.move/function/collision/{resolution => resolvers}/behaviors/damped_bounce.mcfunction (100%) rename datapacks/Bookshelf/data/bs.move/function/collision/{resolution => resolvers}/behaviors/slide.mcfunction (100%) rename datapacks/Bookshelf/data/bs.move/function/collision/{resolution => resolvers}/behaviors/stick.mcfunction (100%) rename datapacks/Bookshelf/data/bs.move/function/collision/{resolution/callback => resolvers}/canonical.mcfunction (73%) rename datapacks/Bookshelf/data/bs.move/function/collision/{resolution/callback => resolvers}/local.mcfunction (77%) create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/resolvers/run.mcfunction rename datapacks/Bookshelf/data/bs.move/function/collision/{hitbox.mcfunction => utils/get_bounding_box.mcfunction} (76%) create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_entity_pos.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_pos.mcfunction rename datapacks/Bookshelf/data/bs.move/function/collision/{resolution/teleport.mcfunction => utils/tp_relative.mcfunction} (96%) create mode 100644 datapacks/Bookshelf/data/bs.move/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.position/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.random/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.raycast/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.schedule/function/execute/run/with_entity.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.schedule/function/execute/run/without_entity.mcfunction delete mode 100644 datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_entity.mcfunction create mode 100644 datapacks/Bookshelf/data/bs.schedule/predicate/target.json create mode 100644 datapacks/Bookshelf/data/bs.schedule/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.sidebar/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.time/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.tree/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.vector/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.view/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.weather/tags/function/exclusive_load.json create mode 100644 datapacks/Bookshelf/data/bs.xp/tags/function/exclusive_load.json diff --git a/.env.yml b/.env.yml index dbf83481c5..464d3f4dbc 100644 --- a/.env.yml +++ b/.env.yml @@ -1,4 +1,4 @@ -mc_version: "1.21" +mc_version: "1.21.2" documentation_url: "https://bookshelf.docs.gunivers.net/" diff --git a/.spyglassrc.json b/.spyglassrc.json index e2130c5971..66bb3eead1 100644 --- a/.spyglassrc.json +++ b/.spyglassrc.json @@ -3,15 +3,25 @@ "exclude": [ ".github/", ".vscode/", - "@gitignore", - "test/" - ] + "build/", + "docs/", + "generated/", + "region/", + "scripts/", + "@gitignore" + ], + "mcmetaSummaryOverrides": { + "commands": { + "path": "./commands.json", + "replace": false + } + } }, "lint": { "nameOfNbtKey": "^[a-z0-9_]+$", "nameOfObjective": "^bs\\.[a-z0-9_.]+$", "nameOfScoreHolder": "^[#$\\-]?[a-z0-9_.]+$", - "nameOfTag": "^bs\\.[a-z0-9_.]+$", + "nameOfTag": "^(?:bs|smithed)\\.[a-z0-9_.]+$", "nameOfTeam": "^bs\\.[a-z0-9_.]+$", "nbtArrayLengthCheck": true, "nbtListLengthCheck": true, diff --git a/commands.json b/commands.json new file mode 100644 index 0000000000..3832ccb272 --- /dev/null +++ b/commands.json @@ -0,0 +1,1362 @@ +{ + "type": "root", + "children": { + "assert": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "block": { + "type": "argument", + "parser": "minecraft:block_predicate", + "executable": true + } + } + } + } + }, + "chat": { + "type": "literal", + "children": { + "pattern": { + "type": "argument", + "parser": "brigadier:string", + "properties": { + "type": "phrase" + }, + "executable": true, + "children": { + "receivers": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "players", + "amount": "multiple" + }, + "executable": true + } + } + } + } + }, + "data": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "sourcePos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "single" + }, + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "storage": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:resource_location", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "executable": true, + "children": { + "inside": { + "type": "literal", + "executable": true + } + } + } + } + }, + "items": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + } + } + }, + "not": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "block": { + "type": "argument", + "parser": "minecraft:block_predicate", + "executable": true + } + } + } + } + }, + "chat": { + "type": "literal", + "children": { + "pattern": { + "type": "argument", + "parser": "brigadier:string", + "properties": { + "type": "phrase" + }, + "executable": true, + "children": { + "receivers": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "players", + "amount": "multiple" + }, + "executable": true + } + } + } + } + }, + "data": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "sourcePos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "single" + }, + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "storage": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:resource_location", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "executable": true, + "children": { + "inside": { + "type": "literal", + "executable": true + } + } + } + } + }, + "items": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + } + } + }, + "predicate": { + "type": "literal", + "children": { + "predicate": { + "type": "argument", + "parser": "minecraft:loot_predicate", + "executable": true + } + } + }, + "score": { + "type": "literal", + "children": { + "target": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "targetObjective": { + "type": "argument", + "parser": "minecraft:objective", + "children": { + "<": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "<=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + ">": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "matches": { + "type": "literal", + "children": { + "range": { + "type": "argument", + "parser": "minecraft:int_range", + "executable": true + } + } + } + } + } + } + } + } + } + } + }, + "predicate": { + "type": "literal", + "children": { + "predicate": { + "type": "argument", + "parser": "minecraft:loot_predicate", + "executable": true + } + } + }, + "score": { + "type": "literal", + "children": { + "target": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "targetObjective": { + "type": "argument", + "parser": "minecraft:objective", + "children": { + "<": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "<=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + ">": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "matches": { + "type": "literal", + "children": { + "range": { + "type": "argument", + "parser": "minecraft:int_range", + "executable": true + } + } + } + } + } + } + } + } + } + } + }, + "await": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "block": { + "type": "argument", + "parser": "minecraft:block_predicate", + "executable": true + } + } + } + } + }, + "chat": { + "type": "literal", + "children": { + "pattern": { + "type": "argument", + "parser": "brigadier:string", + "properties": { + "type": "phrase" + }, + "executable": true, + "children": { + "receivers": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "players", + "amount": "multiple" + }, + "executable": true + } + } + } + } + }, + "data": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "sourcePos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "single" + }, + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "storage": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:resource_location", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + } + } + }, + "delay": { + "type": "literal", + "children": { + "time": { + "type": "argument", + "parser": "minecraft:time", + "properties": { + "min": 0 + }, + "executable": true + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "executable": true, + "children": { + "inside": { + "type": "literal", + "executable": true + } + } + } + } + }, + "items": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + } + } + }, + "not": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "block": { + "type": "argument", + "parser": "minecraft:block_predicate", + "executable": true + } + } + } + } + }, + "chat": { + "type": "literal", + "children": { + "pattern": { + "type": "argument", + "parser": "brigadier:string", + "properties": { + "type": "phrase" + }, + "executable": true, + "children": { + "receivers": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "players", + "amount": "multiple" + }, + "executable": true + } + } + } + } + }, + "data": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "sourcePos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "single" + }, + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + }, + "storage": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:resource_location", + "children": { + "path": { + "type": "argument", + "parser": "minecraft:nbt_path", + "executable": true + } + } + } + } + } + } + }, + "delay": { + "type": "literal", + "children": { + "time": { + "type": "argument", + "parser": "minecraft:time", + "properties": { + "min": 0 + }, + "executable": true + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "executable": true, + "children": { + "inside": { + "type": "literal", + "executable": true + } + } + } + } + }, + "items": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "entities": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "multiple" + }, + "children": { + "slots": { + "type": "argument", + "parser": "minecraft:item_slots", + "children": { + "item_predicate": { + "type": "argument", + "parser": "minecraft:item_predicate", + "executable": true + } + } + } + } + } + } + } + } + }, + "predicate": { + "type": "literal", + "children": { + "predicate": { + "type": "argument", + "parser": "minecraft:loot_predicate", + "executable": true + } + } + }, + "score": { + "type": "literal", + "children": { + "target": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "targetObjective": { + "type": "argument", + "parser": "minecraft:objective", + "children": { + "<": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "<=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + ">": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "matches": { + "type": "literal", + "children": { + "range": { + "type": "argument", + "parser": "minecraft:int_range", + "executable": true + } + } + } + } + } + } + } + } + } + } + }, + "predicate": { + "type": "literal", + "children": { + "predicate": { + "type": "argument", + "parser": "minecraft:loot_predicate", + "executable": true + } + } + }, + "score": { + "type": "literal", + "children": { + "target": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "targetObjective": { + "type": "argument", + "parser": "minecraft:objective", + "children": { + "<": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "<=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "=": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + ">": { + "type": "literal", + "children": { + "source": { + "type": "argument", + "parser": "minecraft:score_holder", + "properties": { + "amount": "single" + }, + "children": { + "sourceObjective": { + "type": "argument", + "parser": "minecraft:objective", + "executable": true + } + } + } + } + }, + "matches": { + "type": "literal", + "children": { + "range": { + "type": "argument", + "parser": "minecraft:int_range", + "executable": true + } + } + } + } + } + } + } + } + } + } + }, + "dummy": { + "type": "literal", + "children": { + "dummy": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "single" + }, + "children": { + "attack": { + "type": "literal", + "children": { + "entity": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "single" + }, + "executable": true + } + } + }, + "drop": { + "type": "literal", + "executable": true, + "children": { + "all": { + "type": "literal", + "executable": true + } + } + }, + "jump": { + "type": "literal", + "executable": true + }, + "leave": { + "type": "literal", + "executable": true + }, + "mine": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:block_pos", + "executable": true + } + } + }, + "respawn": { + "type": "literal", + "executable": true + }, + "selectslot": { + "type": "literal", + "children": { + "slot": { + "type": "argument", + "parser": "brigadier:integer", + "properties": { + "max": 9, + "min": 1 + }, + "executable": true + } + } + }, + "sneak": { + "type": "literal", + "children": { + "active": { + "type": "argument", + "parser": "brigadier:bool", + "executable": true + } + } + }, + "spawn": { + "type": "literal", + "executable": true + }, + "sprint": { + "type": "literal", + "children": { + "active": { + "type": "argument", + "parser": "brigadier:bool", + "executable": true + } + } + }, + "swap": { + "type": "literal", + "executable": true + }, + "use": { + "type": "literal", + "children": { + "block": { + "type": "literal", + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:vec3", + "executable": true, + "children": { + "direction": { + "type": "argument", + "parser": "brigadier:string", + "properties": { + "type": "word" + }, + "executable": true + } + } + } + } + }, + "entity": { + "type": "literal", + "children": { + "entity": { + "type": "argument", + "parser": "minecraft:entity", + "properties": { + "type": "entities", + "amount": "single" + }, + "executable": true, + "children": { + "pos": { + "type": "argument", + "parser": "minecraft:vec3", + "executable": true + } + } + } + } + }, + "item": { + "type": "literal", + "executable": true + } + } + } + } + } + } + }, + "fail": { + "type": "literal", + "children": { + "message": { + "type": "argument", + "parser": "minecraft:component", + "executable": true + } + } + }, + "succeed": { + "type": "literal", + "executable": true + } + } +} diff --git a/datapacks/Bookshelf Dev/data/bs.dump/function/__load__.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/function/__load__.mcfunction index 6800368051..55c6c0111f 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/function/__load__.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/function/__load__.mcfunction @@ -16,7 +16,7 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] diff --git a/datapacks/Bookshelf Dev/data/bs.dump/function/format/any.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/function/format/any.mcfunction index 3cda2e787c..f2a21a8fe1 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/function/format/any.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/function/format/any.mcfunction @@ -17,6 +17,6 @@ execute if data storage bs:data dump[-1].var[] run return run function bs.dump:f execute if data storage bs:data dump[-1].var{} run return run function bs.dump:format/compound/compound data modify storage bs:ctx _ set value [[0b],[0s],[0],[0l],[0f],[0d],[""]] -execute store success score #success bs.data run data modify storage bs:ctx _[] append from storage bs:data dump[-1].var -execute if score #success bs.data matches 1 unless data storage bs:ctx _[-1][1] run return run function bs.dump:format/number with storage bs:const dump -execute if score #success bs.data matches 1 run function bs.dump:format/string/string with storage bs:const dump +execute store success score #dump.success bs.data run data modify storage bs:ctx _[] append from storage bs:data dump[-1].var +execute if score #dump.success bs.data matches 1 unless data storage bs:ctx _[-1][1] run return run function bs.dump:format/number with storage bs:const dump +execute if score #dump.success bs.data matches 1 run function bs.dump:format/string/string with storage bs:const dump diff --git a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/any.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/any.mcfunction index 5a270cf1cb..5d04fee1b0 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/any.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/any.mcfunction @@ -16,5 +16,5 @@ execute if data storage bs:data dump[-1].var[] run return run function bs.dump:interpret/array/array execute if data storage bs:data dump[-1].var{} run return run function bs.dump:interpret/compound/compound -execute store success score #success bs.data run function bs.dump:interpret/path/path with storage bs:data dump[-1] -execute if score #success bs.data matches 0 run function bs.dump:interpret/score with storage bs:data dump[-1] +execute store success score #dump.success bs.data run function bs.dump:interpret/path/path with storage bs:data dump[-1] +execute if score #dump.success bs.data matches 0 run function bs.dump:interpret/score with storage bs:data dump[-1] diff --git a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/path.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/path.mcfunction index 51b94e6c8a..d03d58c243 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/path.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/path.mcfunction @@ -13,9 +13,9 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store success score #success bs.data run function bs.dump:interpret/path/expand/guard with storage bs:data dump[-1] -execute if score #success bs.data matches 0 run function bs.dump:interpret/path/expand/parse/init with storage bs:ctx -execute if score #success bs.data matches 1 run data modify storage bs:data dump[-1].expand set value 2 +execute store success score #dump.success bs.data run function bs.dump:interpret/path/expand/guard with storage bs:data dump[-1] +execute if score #dump.success bs.data matches 0 run function bs.dump:interpret/path/expand/parse/init with storage bs:ctx +execute if score #dump.success bs.data matches 1 run data modify storage bs:data dump[-1].expand set value 2 function bs.dump:interpret/path/populate with storage bs:data dump[-1] return run function bs.dump:format/any diff --git a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/populate.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/populate.mcfunction index 90e9322927..407b8ac573 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/populate.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/path/populate.mcfunction @@ -13,6 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store success score #success bs.data run data get $(var) -execute if score #success bs.data matches 0 run data modify storage bs:data dump[-1].var set value {} -$execute if score #success bs.data matches 1 run data modify storage bs:data dump[-1].var set from $(var) +$execute store success score #dump.success bs.data run data get $(var) +execute if score #dump.success bs.data matches 0 run data modify storage bs:data dump[-1].var set value {} +$execute if score #dump.success bs.data matches 1 run data modify storage bs:data dump[-1].var set from $(var) diff --git a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/score.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/score.mcfunction index cda31ec086..cff45241b7 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/score.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/function/interpret/score.mcfunction @@ -13,7 +13,7 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store success score #success bs.data run scoreboard players get $(var) -execute if score #success bs.data matches 0 run return run function bs.dump:format/undefined with storage bs:const dump +$execute store success score #dump.success bs.data run scoreboard players get $(var) +execute if score #dump.success bs.data matches 0 run return run function bs.dump:format/undefined with storage bs:const dump $scoreboard players operation #dump.var bs.data = $(var) function bs.dump:format/score with storage bs:const dump diff --git a/datapacks/Bookshelf Dev/data/bs.dump/tags/function/exclusive_load.json b/datapacks/Bookshelf Dev/data/bs.dump/tags/function/exclusive_load.json new file mode 100644 index 0000000000..2ae30f7462 --- /dev/null +++ b/datapacks/Bookshelf Dev/data/bs.dump/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.dump:load" + ] +} diff --git a/datapacks/Bookshelf Dev/data/bs.dump/tags/function/load.json b/datapacks/Bookshelf Dev/data/bs.dump/tags/function/load.json index 3a2420a419..8a9a1489f9 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/tags/function/load.json +++ b/datapacks/Bookshelf Dev/data/bs.dump/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.dump:__load__" ] } diff --git a/datapacks/Bookshelf Dev/data/bs.dump/test/__boot__.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/test/__boot__.mcfunction index 5ebe9a232b..63910fa6d9 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/test/__boot__.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.dump -# @beforebatch function #bs.dump:load +# @beforebatch function #bs.dump:exclusive_load diff --git a/datapacks/Bookshelf Dev/data/bs.dump/test/var.mcfunction b/datapacks/Bookshelf Dev/data/bs.dump/test/var.mcfunction index 5ce0b0a6a6..0fb786fc86 100644 --- a/datapacks/Bookshelf Dev/data/bs.dump/test/var.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.dump/test/var.mcfunction @@ -2,6 +2,8 @@ # @batch bs.dump # @dummy +await entity B5-0-0-0-2 + data modify storage bs:data packtest set value {foo:"bar"} function #bs.dump:var { var: { storage: "storage bs:data packtest", entity:"entity @s {} 0", score: ["3 bs.const", "-_- bs.const"] }} @@ -10,4 +12,3 @@ assert chat '.*?\\{[\\s\\S]*entity: \\{ [0-9]+ entries .*? \\}[\\s\\S]*\\}' assert chat '.*?\\{[\\s\\S]*score: \\[3, undefined\\][\\s\\S]*\\}' data remove storage bs:data packtest - diff --git a/datapacks/Bookshelf Dev/data/bs.log/function/__load__.mcfunction b/datapacks/Bookshelf Dev/data/bs.log/function/__load__.mcfunction index d9db548608..76846c8bcb 100644 --- a/datapacks/Bookshelf Dev/data/bs.log/function/__load__.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.log/function/__load__.mcfunction @@ -16,10 +16,11 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} setblock -30000000 0 1605 minecraft:repeating_command_block[facing=up]{auto:1b,Command:"help me",TrackOutput:1b} scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] execute unless score #log.gametime bs.data matches -2147483648..2147483647 store result score #log.gametime bs.data run time query gametime diff --git a/datapacks/Bookshelf Dev/data/bs.log/function/__tick__.mcfunction b/datapacks/Bookshelf Dev/data/bs.log/function/__tick__.mcfunction index 0cffa6fa1b..43db4d38cb 100644 --- a/datapacks/Bookshelf Dev/data/bs.log/function/__tick__.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.log/function/__tick__.mcfunction @@ -15,5 +15,5 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/log.html # ------------------------------------------------------------------------------------------------------------ -execute store success score #success bs.data run data modify storage bs:data log.time set string block -30000000 0 1605 LastOutput 10 18 -execute if score #success bs.data matches 1 store result score #log.gametime bs.data run time query gametime +execute store success score #s bs.ctx run data modify storage bs:data log.time set string block -30000000 0 1605 LastOutput 10 18 +execute if score #s bs.ctx matches 1 store result score #log.gametime bs.data run time query gametime diff --git a/datapacks/Bookshelf Dev/data/bs.log/function/__unload__.mcfunction b/datapacks/Bookshelf Dev/data/bs.log/function/__unload__.mcfunction index 042dd68459..d9cdaa1c43 100644 --- a/datapacks/Bookshelf Dev/data/bs.log/function/__unload__.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.log/function/__unload__.mcfunction @@ -20,6 +20,7 @@ setblock -30000000 0 1605 minecraft:air forceload remove -30000000 1600 scoreboard objectives remove bs.in +scoreboard objectives remove bs.ctx scoreboard objectives remove bs.data data remove storage bs:in log diff --git a/datapacks/Bookshelf Dev/data/bs.log/function/time/get.mcfunction b/datapacks/Bookshelf Dev/data/bs.log/function/time/get.mcfunction index 834a281e1d..e92f46a7de 100644 --- a/datapacks/Bookshelf Dev/data/bs.log/function/time/get.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.log/function/time/get.mcfunction @@ -17,7 +17,7 @@ data modify storage bs:in log.hours set string storage bs:data log.time 0 2 data modify storage bs:in log.minutes set string storage bs:data log.time 3 5 data modify storage bs:in log.seconds set string storage bs:data log.time 6 8 -execute store result storage bs:in log.gametime int 1 store result score #log.ticks bs.data run time query gametime -execute store result storage bs:in log.ticks int .99999999999 run scoreboard players operation #log.ticks bs.data -= #log.gametime bs.data -execute if score #log.ticks bs.data matches ..10 run function bs.log:time/ticks/format with storage bs:in log -execute if score #log.ticks bs.data matches 11.. run function bs.log:time/ticks/stringify with storage bs:in log +execute store result storage bs:in log.gametime int 1 store result score #t bs.ctx run time query gametime +execute store result storage bs:in log.ticks int .99999999999 run scoreboard players operation #t bs.ctx -= #log.gametime bs.data +execute if score #t bs.ctx matches ..10 run function bs.log:time/ticks/format with storage bs:in log +execute if score #t bs.ctx matches 11.. run function bs.log:time/ticks/stringify with storage bs:in log diff --git a/datapacks/Bookshelf Dev/data/bs.log/tags/function/exclusive_load.json b/datapacks/Bookshelf Dev/data/bs.log/tags/function/exclusive_load.json new file mode 100644 index 0000000000..893559d2c4 --- /dev/null +++ b/datapacks/Bookshelf Dev/data/bs.log/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.log:load" + ] +} diff --git a/datapacks/Bookshelf Dev/data/bs.log/tags/function/load.json b/datapacks/Bookshelf Dev/data/bs.log/tags/function/load.json index 2d7171f931..a893c8962a 100644 --- a/datapacks/Bookshelf Dev/data/bs.log/tags/function/load.json +++ b/datapacks/Bookshelf Dev/data/bs.log/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.log:__load__" ] } diff --git a/datapacks/Bookshelf Dev/data/bs.log/test/__boot__.mcfunction b/datapacks/Bookshelf Dev/data/bs.log/test/__boot__.mcfunction index 8e03a1dce4..36d656d14d 100644 --- a/datapacks/Bookshelf Dev/data/bs.log/test/__boot__.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.log/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.log -# @beforebatch function #bs.log:load +# @beforebatch function #bs.log:exclusive_load diff --git a/datapacks/Bookshelf Dev/data/bs.log/test/history/show.mcfunction b/datapacks/Bookshelf Dev/data/bs.log/test/history/show.mcfunction index c6d1b7047d..50ff66bae3 100644 --- a/datapacks/Bookshelf Dev/data/bs.log/test/history/show.mcfunction +++ b/datapacks/Bookshelf Dev/data/bs.log/test/history/show.mcfunction @@ -2,6 +2,8 @@ # @batch bs.log # @dummy +await entity B5-0-0-0-2 + function #bs.log:warn { namespace: "bs.foo", path: "bs.foo:bar", tag: "history", message: '"History warn log message"' } function #bs.log:error { namespace: "bs.foo", path: "bs.foo:bar", tag: "history", message: '"History error log message"' } assert not chat "History warn log message" diff --git a/datapacks/Bookshelf Dev/pack.mcmeta b/datapacks/Bookshelf Dev/pack.mcmeta index aefb3326b5..e8d7c4284c 100644 --- a/datapacks/Bookshelf Dev/pack.mcmeta +++ b/datapacks/Bookshelf Dev/pack.mcmeta @@ -1,6 +1,7 @@ { + "id": "bs", "pack": { - "pack_format": 48, + "pack_format": 57, "description": "Bookshelf Development Kit - Library designed for mapmakers" } } diff --git a/datapacks/Bookshelf Examples/pack.mcmeta b/datapacks/Bookshelf Examples/pack.mcmeta index 3dac4fe733..e342fa15b8 100644 --- a/datapacks/Bookshelf Examples/pack.mcmeta +++ b/datapacks/Bookshelf Examples/pack.mcmeta @@ -1,6 +1,6 @@ { "pack": { - "pack_format": 48, + "pack_format": 57, "description": "Bookshelf Examples - Library designed for mapmakers" } } diff --git a/datapacks/Bookshelf World/pack.mcmeta b/datapacks/Bookshelf World/pack.mcmeta index 4d27c7d96d..a3772466cf 100644 --- a/datapacks/Bookshelf World/pack.mcmeta +++ b/datapacks/Bookshelf World/pack.mcmeta @@ -1,6 +1,6 @@ { "pack": { - "pack_format": 48, + "pack_format": 57, "description": "Bookshelf Sandbox World - Library designed for mapmakers" } } diff --git a/datapacks/Bookshelf/data/bs.biome/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.biome/function/__load__.mcfunction index 721db56b41..fec0720d45 100644 --- a/datapacks/Bookshelf/data/bs.biome/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.biome/function/__load__.mcfunction @@ -15,9 +15,9 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/biome.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] +scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] scoreboard players set 125000 bs.const 125000 diff --git a/datapacks/Bookshelf/data/bs.biome/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.biome/function/__unload__.mcfunction index 20484c404b..d21476d912 100644 --- a/datapacks/Bookshelf/data/bs.biome/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.biome/function/__unload__.mcfunction @@ -15,9 +15,9 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/biome.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives remove bs.out -scoreboard objectives remove bs.data scoreboard objectives remove bs.const +scoreboard objectives remove bs.ctx +scoreboard objectives remove bs.out data remove storage bs:out biome data remove storage bs:const biome diff --git a/datapacks/Bookshelf/data/bs.biome/function/get/biome/get_biome.mcfunction b/datapacks/Bookshelf/data/bs.biome/function/get/biome/get_biome.mcfunction index c456346b97..8c339697d5 100644 --- a/datapacks/Bookshelf/data/bs.biome/function/get/biome/get_biome.mcfunction +++ b/datapacks/Bookshelf/data/bs.biome/function/get/biome/get_biome.mcfunction @@ -15,14 +15,14 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/biome.html#get-biome # ------------------------------------------------------------------------------------------------------------ -scoreboard players set #biome.id bs.data 0 -execute if biome ~ ~ ~ #bs.biome:type/group_1 run scoreboard players add #biome.id bs.data 1 -execute if biome ~ ~ ~ #bs.biome:type/group_2 run scoreboard players add #biome.id bs.data 2 -execute if biome ~ ~ ~ #bs.biome:type/group_4 run scoreboard players add #biome.id bs.data 4 -execute if biome ~ ~ ~ #bs.biome:type/group_8 run scoreboard players add #biome.id bs.data 8 -execute if biome ~ ~ ~ #bs.biome:type/group_16 run scoreboard players add #biome.id bs.data 16 -execute if biome ~ ~ ~ #bs.biome:type/group_32 run scoreboard players add #biome.id bs.data 32 -execute if biome ~ ~ ~ #bs.biome:type/group_64 run scoreboard players add #biome.id bs.data 64 +scoreboard players set #i bs.ctx 0 +execute if biome ~ ~ ~ #bs.biome:type/group_1 run scoreboard players add #i bs.ctx 1 +execute if biome ~ ~ ~ #bs.biome:type/group_2 run scoreboard players add #i bs.ctx 2 +execute if biome ~ ~ ~ #bs.biome:type/group_4 run scoreboard players add #i bs.ctx 4 +execute if biome ~ ~ ~ #bs.biome:type/group_8 run scoreboard players add #i bs.ctx 8 +execute if biome ~ ~ ~ #bs.biome:type/group_16 run scoreboard players add #i bs.ctx 16 +execute if biome ~ ~ ~ #bs.biome:type/group_32 run scoreboard players add #i bs.ctx 32 +execute if biome ~ ~ ~ #bs.biome:type/group_64 run scoreboard players add #i bs.ctx 64 -execute store result storage bs:ctx y short 1 run scoreboard players remove #biome.id bs.data 1 -execute unless score #biome.id bs.data matches -1 run function bs.biome:get/biome/lookup with storage bs:ctx +execute store result storage bs:ctx y short 1 run scoreboard players remove #i bs.ctx 1 +execute unless score #i bs.ctx matches -1 run function bs.biome:get/biome/lookup with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.biome/function/get/temperature/get_temperature.mcfunction b/datapacks/Bookshelf/data/bs.biome/function/get/temperature/get_temperature.mcfunction index f1fe081afc..104bb2ecbf 100644 --- a/datapacks/Bookshelf/data/bs.biome/function/get/temperature/get_temperature.mcfunction +++ b/datapacks/Bookshelf/data/bs.biome/function/get/temperature/get_temperature.mcfunction @@ -16,11 +16,11 @@ # ------------------------------------------------------------------------------------------------------------ function #bs.biome:get_biome -execute store result score #biome.temperature bs.data run data get storage bs:out biome.temperature 100000000 +execute store result score #t bs.ctx run data get storage bs:out biome.temperature 100000000 -execute as B5-0-0-0-1 run function bs.biome:get/temperature/variation -execute if score #biome.variation bs.data matches 1.. run scoreboard players operation #biome.variation bs.data *= 125000 bs.const -execute if score #biome.variation bs.data matches 1.. run scoreboard players operation #biome.temperature bs.data -= #biome.variation bs.data -execute store result storage bs:ctx y double .00000001 run scoreboard players get #biome.temperature bs.data +execute summon minecraft:marker run function bs.biome:get/temperature/variation +execute if score #v bs.ctx matches 1.. run scoreboard players operation #v bs.ctx *= 125000 bs.const +execute if score #v bs.ctx matches 1.. run scoreboard players operation #t bs.ctx -= #v bs.ctx +execute store result storage bs:ctx y double .00000001 run scoreboard players get #t bs.ctx $return run execute store result score $biome.get_temperature bs.out run data get storage bs:ctx y $(scale) diff --git a/datapacks/Bookshelf/data/bs.biome/function/get/temperature/variation.mcfunction b/datapacks/Bookshelf/data/bs.biome/function/get/temperature/variation.mcfunction index 3aad3f8f5a..4e33ed6af2 100644 --- a/datapacks/Bookshelf/data/bs.biome/function/get/temperature/variation.mcfunction +++ b/datapacks/Bookshelf/data/bs.biome/function/get/temperature/variation.mcfunction @@ -13,7 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -tp @s ~ ~ ~ -execute store result score #biome.variation bs.data run data get entity @s Pos[1] -scoreboard players remove #biome.variation bs.data 80 -execute in minecraft:overworld run tp @s -30000000 0 1600 +execute store result score #v bs.ctx run data get entity @s Pos[1] +scoreboard players remove #v bs.ctx 80 +kill @s diff --git a/datapacks/Bookshelf/data/bs.biome/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.biome/tags/function/exclusive_load.json new file mode 100644 index 0000000000..127ddf91c6 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.biome/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.biome:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.biome/tags/function/load.json b/datapacks/Bookshelf/data/bs.biome/tags/function/load.json index 8f81178195..a9c5f9340c 100644 --- a/datapacks/Bookshelf/data/bs.biome/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.biome/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.biome:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/__load__.mcfunction index 502ef7d3c2..9a9b5d3f78 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/__load__.mcfunction @@ -15,10 +15,10 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/bitwise.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] -scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] +scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] +scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] scoreboard players set -1 bs.const -1 scoreboard players set 2 bs.const 2 diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/__unload__.mcfunction index eb5c388eaf..f0530e7f92 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/__unload__.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/bitwise.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives remove bs.in -scoreboard objectives remove bs.out -scoreboard objectives remove bs.data scoreboard objectives remove bs.const +scoreboard objectives remove bs.ctx +scoreboard objectives remove bs.out +scoreboard objectives remove bs.in diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/and/and.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/and/and.mcfunction index 157bccd5f7..91d242dcf2 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/and/and.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/and/and.mcfunction @@ -20,7 +20,7 @@ # - Example: -178 & 32165 = 32004 # The result is the number composed by keeping all one at the same position in the two binary representations of these numbers. -scoreboard players operation #bitwise.and.a bs.data = $bitwise.and.a bs.in -scoreboard players operation #bitwise.and.b bs.data = $bitwise.and.b bs.in +scoreboard players operation #a bs.ctx = $bitwise.and.a bs.in +scoreboard players operation #b bs.ctx = $bitwise.and.b bs.in function bs.bitwise:and/compute -return run scoreboard players operation $bitwise.and bs.out = #bitwise.and bs.data +return run scoreboard players operation $bitwise.and bs.out = #x bs.ctx diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/and/compute.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/and/compute.mcfunction index 56741c542b..318f16b871 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/and/compute.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/and/compute.mcfunction @@ -13,98 +13,98 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -scoreboard players set #bitwise.and bs.data 0 -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players set #bitwise.and bs.data -2147483648 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 1073741824 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 536870912 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 268435456 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 134217728 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 67108864 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 33554432 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 16777216 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 8388608 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 4194304 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 2097152 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 1048576 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 524288 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 262144 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 131072 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 65536 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 32768 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 16384 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 8192 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 4096 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 2048 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 1024 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 512 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 256 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 128 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 64 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 32 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 16 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 8 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 4 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 2 -scoreboard players operation #bitwise.and.a bs.data *= 2 bs.const -scoreboard players operation #bitwise.and.b bs.data *= 2 bs.const -execute if score #bitwise.and.a bs.data matches ..-1 if score #bitwise.and.b bs.data matches ..-1 run scoreboard players add #bitwise.and bs.data 1 +scoreboard players set #x bs.ctx 0 +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players set #x bs.ctx -2147483648 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 1073741824 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 536870912 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 268435456 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 134217728 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 67108864 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 33554432 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 16777216 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 8388608 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 4194304 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 2097152 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 1048576 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 524288 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 262144 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 131072 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 65536 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 32768 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 16384 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 8192 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 4096 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 2048 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 1024 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 512 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 256 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 128 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 64 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 32 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 16 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 8 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 4 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 2 +scoreboard players operation #a bs.ctx *= 2 bs.const +scoreboard players operation #b bs.ctx *= 2 bs.const +execute if score #a bs.ctx matches ..-1 if score #b bs.ctx matches ..-1 run scoreboard players add #x bs.ctx 1 diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/bit_count.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/bit_count.mcfunction index d4f43e1ba5..7970268c45 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/bit_count.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/bit_count.mcfunction @@ -16,68 +16,68 @@ # ------------------------------------------------------------------------------------------------------------ scoreboard players set $bitwise.bit_count bs.out 0 -scoreboard players operation #bitwise.bit_count bs.data = $bitwise.bit_count.n bs.in -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players operation #bitwise.bit_count bs.data *= -1 bs.const -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 -scoreboard players operation #bitwise.bit_count bs.data *= 2 bs.const -execute if score #bitwise.bit_count bs.data matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx = $bitwise.bit_count.n bs.in +execute if score #n bs.ctx matches ..-1 run scoreboard players operation #n bs.ctx *= -1 bs.const +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 +scoreboard players operation #n bs.ctx *= 2 bs.const +execute if score #n bs.ctx matches ..-1 run scoreboard players add $bitwise.bit_count bs.out 1 return run scoreboard players get $bitwise.bit_count bs.out diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/bit_length.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/bit_length.mcfunction index 4125e6e5ee..dec6c04910 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/bit_length.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/bit_length.mcfunction @@ -19,10 +19,9 @@ # - This function returns the number of bits needed to represent a number # - Example: a = 1451, (a)2 = 0b10110101011, |(a)2| = 11 - -scoreboard players operation #bitwise.bit_length bs.data = $bitwise.bit_length.n bs.in -execute if score #bitwise.bit_length bs.data matches ..-1 run scoreboard players operation #bitwise.bit_length bs.data *= -1 bs.const -execute if score #bitwise.bit_length bs.data matches 0..127 run return run function bs.bitwise:bit_length/group_1 -execute if score #bitwise.bit_length bs.data matches 128..32767 run return run function bs.bitwise:bit_length/group_2 -execute if score #bitwise.bit_length bs.data matches 32768..8388607 run return run function bs.bitwise:bit_length/group_3 -execute if score #bitwise.bit_length bs.data matches 8388608..2147483647 run return run function bs.bitwise:bit_length/group_4 +scoreboard players operation #n bs.ctx = $bitwise.bit_length.n bs.in +execute if score #n bs.ctx matches ..-1 run scoreboard players operation #n bs.ctx *= -1 bs.const +execute if score #n bs.ctx matches 0..127 run return run function bs.bitwise:bit_length/group_1 +execute if score #n bs.ctx matches 128..32767 run return run function bs.bitwise:bit_length/group_2 +execute if score #n bs.ctx matches 32768..8388607 run return run function bs.bitwise:bit_length/group_3 +execute if score #n bs.ctx matches 8388608..2147483647 run return run function bs.bitwise:bit_length/group_4 diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_1.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_1.mcfunction index 37e5e4baab..ba215f41d8 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_1.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_1.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute if score #bitwise.bit_length bs.data matches 0 run return run scoreboard players set $bitwise.bit_length bs.out 0 -execute if score #bitwise.bit_length bs.data matches 1 run return run scoreboard players set $bitwise.bit_length bs.out 1 -execute if score #bitwise.bit_length bs.data matches 2..3 run return run scoreboard players set $bitwise.bit_length bs.out 2 -execute if score #bitwise.bit_length bs.data matches 4..7 run return run scoreboard players set $bitwise.bit_length bs.out 3 -execute if score #bitwise.bit_length bs.data matches 8..15 run return run scoreboard players set $bitwise.bit_length bs.out 4 -execute if score #bitwise.bit_length bs.data matches 16..31 run return run scoreboard players set $bitwise.bit_length bs.out 5 -execute if score #bitwise.bit_length bs.data matches 32..63 run return run scoreboard players set $bitwise.bit_length bs.out 6 -execute if score #bitwise.bit_length bs.data matches 64..127 run return run scoreboard players set $bitwise.bit_length bs.out 7 +execute if score #n bs.ctx matches 0 run return run scoreboard players set $bitwise.bit_length bs.out 0 +execute if score #n bs.ctx matches 1 run return run scoreboard players set $bitwise.bit_length bs.out 1 +execute if score #n bs.ctx matches 2..3 run return run scoreboard players set $bitwise.bit_length bs.out 2 +execute if score #n bs.ctx matches 4..7 run return run scoreboard players set $bitwise.bit_length bs.out 3 +execute if score #n bs.ctx matches 8..15 run return run scoreboard players set $bitwise.bit_length bs.out 4 +execute if score #n bs.ctx matches 16..31 run return run scoreboard players set $bitwise.bit_length bs.out 5 +execute if score #n bs.ctx matches 32..63 run return run scoreboard players set $bitwise.bit_length bs.out 6 +execute if score #n bs.ctx matches 64..127 run return run scoreboard players set $bitwise.bit_length bs.out 7 diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_2.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_2.mcfunction index 4bd60b406b..dd14c53a2d 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_2.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_2.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute if score #bitwise.bit_length bs.data matches 128..255 run return run scoreboard players set $bitwise.bit_length bs.out 8 -execute if score #bitwise.bit_length bs.data matches 256..511 run return run scoreboard players set $bitwise.bit_length bs.out 9 -execute if score #bitwise.bit_length bs.data matches 512..1023 run return run scoreboard players set $bitwise.bit_length bs.out 10 -execute if score #bitwise.bit_length bs.data matches 1024..2047 run return run scoreboard players set $bitwise.bit_length bs.out 11 -execute if score #bitwise.bit_length bs.data matches 2048..4095 run return run scoreboard players set $bitwise.bit_length bs.out 12 -execute if score #bitwise.bit_length bs.data matches 4096..8191 run return run scoreboard players set $bitwise.bit_length bs.out 13 -execute if score #bitwise.bit_length bs.data matches 8192..16383 run return run scoreboard players set $bitwise.bit_length bs.out 14 -execute if score #bitwise.bit_length bs.data matches 16384..32767 run return run scoreboard players set $bitwise.bit_length bs.out 15 +execute if score #n bs.ctx matches 128..255 run return run scoreboard players set $bitwise.bit_length bs.out 8 +execute if score #n bs.ctx matches 256..511 run return run scoreboard players set $bitwise.bit_length bs.out 9 +execute if score #n bs.ctx matches 512..1023 run return run scoreboard players set $bitwise.bit_length bs.out 10 +execute if score #n bs.ctx matches 1024..2047 run return run scoreboard players set $bitwise.bit_length bs.out 11 +execute if score #n bs.ctx matches 2048..4095 run return run scoreboard players set $bitwise.bit_length bs.out 12 +execute if score #n bs.ctx matches 4096..8191 run return run scoreboard players set $bitwise.bit_length bs.out 13 +execute if score #n bs.ctx matches 8192..16383 run return run scoreboard players set $bitwise.bit_length bs.out 14 +execute if score #n bs.ctx matches 16384..32767 run return run scoreboard players set $bitwise.bit_length bs.out 15 diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_3.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_3.mcfunction index 21a3fac786..884ea363be 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_3.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_3.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute if score #bitwise.bit_length bs.data matches 32768..65535 run return run scoreboard players set $bitwise.bit_length bs.out 16 -execute if score #bitwise.bit_length bs.data matches 65536..131071 run return run scoreboard players set $bitwise.bit_length bs.out 17 -execute if score #bitwise.bit_length bs.data matches 131072..262143 run return run scoreboard players set $bitwise.bit_length bs.out 18 -execute if score #bitwise.bit_length bs.data matches 262144..524287 run return run scoreboard players set $bitwise.bit_length bs.out 19 -execute if score #bitwise.bit_length bs.data matches 524288..1048575 run return run scoreboard players set $bitwise.bit_length bs.out 20 -execute if score #bitwise.bit_length bs.data matches 1048576..2097151 run return run scoreboard players set $bitwise.bit_length bs.out 21 -execute if score #bitwise.bit_length bs.data matches 2097152..4194303 run return run scoreboard players set $bitwise.bit_length bs.out 22 -execute if score #bitwise.bit_length bs.data matches 4194304..8388607 run return run scoreboard players set $bitwise.bit_length bs.out 23 +execute if score #n bs.ctx matches 32768..65535 run return run scoreboard players set $bitwise.bit_length bs.out 16 +execute if score #n bs.ctx matches 65536..131071 run return run scoreboard players set $bitwise.bit_length bs.out 17 +execute if score #n bs.ctx matches 131072..262143 run return run scoreboard players set $bitwise.bit_length bs.out 18 +execute if score #n bs.ctx matches 262144..524287 run return run scoreboard players set $bitwise.bit_length bs.out 19 +execute if score #n bs.ctx matches 524288..1048575 run return run scoreboard players set $bitwise.bit_length bs.out 20 +execute if score #n bs.ctx matches 1048576..2097151 run return run scoreboard players set $bitwise.bit_length bs.out 21 +execute if score #n bs.ctx matches 2097152..4194303 run return run scoreboard players set $bitwise.bit_length bs.out 22 +execute if score #n bs.ctx matches 4194304..8388607 run return run scoreboard players set $bitwise.bit_length bs.out 23 diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_4.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_4.mcfunction index bd5d3ae420..4276a158c7 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_4.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/bit_length/group_4.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute if score #bitwise.bit_length bs.data matches 8388608..16777215 run return run scoreboard players set $bitwise.bit_length bs.out 24 -execute if score #bitwise.bit_length bs.data matches 16777216..33554431 run return run scoreboard players set $bitwise.bit_length bs.out 25 -execute if score #bitwise.bit_length bs.data matches 33554432..67108863 run return run scoreboard players set $bitwise.bit_length bs.out 26 -execute if score #bitwise.bit_length bs.data matches 67108864..134217727 run return run scoreboard players set $bitwise.bit_length bs.out 27 -execute if score #bitwise.bit_length bs.data matches 134217728..268435455 run return run scoreboard players set $bitwise.bit_length bs.out 28 -execute if score #bitwise.bit_length bs.data matches 268435456..536870911 run return run scoreboard players set $bitwise.bit_length bs.out 29 -execute if score #bitwise.bit_length bs.data matches 536870912..1073741823 run return run scoreboard players set $bitwise.bit_length bs.out 30 -execute if score #bitwise.bit_length bs.data matches 1073741824.. run return run scoreboard players set $bitwise.bit_length bs.out 31 +execute if score #n bs.ctx matches 8388608..16777215 run return run scoreboard players set $bitwise.bit_length bs.out 24 +execute if score #n bs.ctx matches 16777216..33554431 run return run scoreboard players set $bitwise.bit_length bs.out 25 +execute if score #n bs.ctx matches 33554432..67108863 run return run scoreboard players set $bitwise.bit_length bs.out 26 +execute if score #n bs.ctx matches 67108864..134217727 run return run scoreboard players set $bitwise.bit_length bs.out 27 +execute if score #n bs.ctx matches 134217728..268435455 run return run scoreboard players set $bitwise.bit_length bs.out 28 +execute if score #n bs.ctx matches 268435456..536870911 run return run scoreboard players set $bitwise.bit_length bs.out 29 +execute if score #n bs.ctx matches 536870912..1073741823 run return run scoreboard players set $bitwise.bit_length bs.out 30 +execute if score #n bs.ctx matches 1073741824.. run return run scoreboard players set $bitwise.bit_length bs.out 31 diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/or.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/or.mcfunction index 575e7cc8db..f742f0af1f 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/or.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/or.mcfunction @@ -21,8 +21,8 @@ # - Formula: a | b = (a + b) - (a & b) # The result is the number composed by keeping all one in the two binary representations of these numbers. -scoreboard players operation #bitwise.and.a bs.data = $bitwise.or.a bs.in -execute store result score $bitwise.or bs.out run scoreboard players operation #bitwise.and.b bs.data = $bitwise.or.b bs.in +scoreboard players operation #a bs.ctx = $bitwise.or.a bs.in +execute store result score $bitwise.or bs.out run scoreboard players operation #b bs.ctx = $bitwise.or.b bs.in scoreboard players operation $bitwise.or bs.out += $bitwise.or.a bs.in function bs.bitwise:and/compute -return run scoreboard players operation $bitwise.or bs.out -= #bitwise.and bs.data +return run scoreboard players operation $bitwise.or bs.out -= #x bs.ctx diff --git a/datapacks/Bookshelf/data/bs.bitwise/function/xor.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/function/xor.mcfunction index fb9c4707dd..bd2c0dc664 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/function/xor.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/function/xor.mcfunction @@ -21,9 +21,9 @@ # - Formula: a ^ b = (a + b) - 2*(a & b) # The result is the number composed by putting one at all bits where the value in the two binary representations of these numbers is different. -scoreboard players operation #bitwise.and.a bs.data = $bitwise.xor.a bs.in -execute store result score $bitwise.xor bs.out run scoreboard players operation #bitwise.and.b bs.data = $bitwise.xor.b bs.in +scoreboard players operation #a bs.ctx = $bitwise.xor.a bs.in +execute store result score $bitwise.xor bs.out run scoreboard players operation #b bs.ctx = $bitwise.xor.b bs.in scoreboard players operation $bitwise.xor bs.out += $bitwise.xor.a bs.in function bs.bitwise:and/compute -scoreboard players operation $bitwise.xor bs.out -= #bitwise.and bs.data -return run scoreboard players operation $bitwise.xor bs.out -= #bitwise.and bs.data +scoreboard players operation $bitwise.xor bs.out -= #x bs.ctx +return run scoreboard players operation $bitwise.xor bs.out -= #x bs.ctx diff --git a/datapacks/Bookshelf/data/bs.bitwise/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.bitwise/tags/function/exclusive_load.json new file mode 100644 index 0000000000..f1d0ec8015 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.bitwise/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.bitwise:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.bitwise/tags/function/load.json b/datapacks/Bookshelf/data/bs.bitwise/tags/function/load.json index 20317b39c7..11b981ca97 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.bitwise/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.bitwise:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.bitwise/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.bitwise/test/__boot__.mcfunction index 9ee38eaac3..ea61cb7eb5 100644 --- a/datapacks/Bookshelf/data/bs.bitwise/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.bitwise/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.bitwise -# @beforebatch function #bs.bitwise:load +# @beforebatch function #bs.bitwise:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.block/.metadata/generated/features.json b/datapacks/Bookshelf/data/bs.block/.metadata/generated/features.json index 518c2b8d3a..3d2a432836 100644 --- a/datapacks/Bookshelf/data/bs.block/.metadata/generated/features.json +++ b/datapacks/Bookshelf/data/bs.block/.metadata/generated/features.json @@ -1,6 +1,6 @@ [ { - "name": "emit_block_particles", + "name": "emit_block_particle", "documentation": "https://bookshelf.docs.gunivers.net/en/latest/modules/block.html#produce", "authors": [ "theogiraudet" diff --git a/datapacks/Bookshelf/data/bs.block/.metadata/generated/module.json b/datapacks/Bookshelf/data/bs.block/.metadata/generated/module.json index 33ff841dcf..923b728ec2 100644 --- a/datapacks/Bookshelf/data/bs.block/.metadata/generated/module.json +++ b/datapacks/Bookshelf/data/bs.block/.metadata/generated/module.json @@ -12,7 +12,7 @@ "theogiraudet" ], "features": [ - "bs.block:emit_block_particles", + "bs.block:emit_block_particle", "bs.block:fill_block", "bs.block:fill_random", "bs.block:fill_type", diff --git a/datapacks/Bookshelf/data/bs.block/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.block/function/__load__.mcfunction index b75073a61f..f787dabf13 100644 --- a/datapacks/Bookshelf/data/bs.block/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/__load__.mcfunction @@ -17,9 +17,10 @@ forceload add -30000000 1600 setblock -30000000 0 1606 minecraft:decorated_pot -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} +execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] function bs.block:load/types_table diff --git a/datapacks/Bookshelf/data/bs.block/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.block/function/__unload__.mcfunction index 68197ce6b6..958587983d 100644 --- a/datapacks/Bookshelf/data/bs.block/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/__unload__.mcfunction @@ -20,6 +20,7 @@ kill B5-0-0-0-2 setblock -30000000 0 1606 minecraft:air forceload remove -30000000 1600 +scoreboard objectives remove bs.ctx scoreboard objectives remove bs.data data remove storage bs:in block diff --git a/datapacks/Bookshelf/data/bs.block/function/fill/fill_block.mcfunction b/datapacks/Bookshelf/data/bs.block/function/fill/fill_block.mcfunction index 43fad29a42..04d9f69a9c 100644 --- a/datapacks/Bookshelf/data/bs.block/function/fill/fill_block.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/fill/fill_block.mcfunction @@ -26,4 +26,4 @@ data modify storage bs:data block._ set value { \ data modify storage bs:data block._ merge from storage bs:in block.fill_block execute if data storage bs:data block._.masks[0] run function bs.block:utils/masks/compile -execute as B5-0-0-0-1 run function bs.block:fill/recurse/init +execute summon minecraft:marker run function bs.block:fill/recurse/init diff --git a/datapacks/Bookshelf/data/bs.block/function/fill/fill_random.mcfunction b/datapacks/Bookshelf/data/bs.block/function/fill/fill_random.mcfunction index 9b355f0a45..80c938fd24 100644 --- a/datapacks/Bookshelf/data/bs.block/function/fill/fill_random.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/fill/fill_random.mcfunction @@ -27,4 +27,4 @@ data modify storage bs:data block._ merge from storage bs:in block.fill_random execute if data storage bs:data block._.masks[0] run function bs.block:utils/masks/compile execute if data storage bs:data block._.entries[0] run function bs.block:utils/random/compile -execute as B5-0-0-0-1 run function bs.block:fill/recurse/init +execute summon minecraft:marker run function bs.block:fill/recurse/init diff --git a/datapacks/Bookshelf/data/bs.block/function/fill/fill_type.mcfunction b/datapacks/Bookshelf/data/bs.block/function/fill/fill_type.mcfunction index bdc4b015f3..2a7c464992 100644 --- a/datapacks/Bookshelf/data/bs.block/function/fill/fill_type.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/fill/fill_type.mcfunction @@ -26,4 +26,4 @@ data modify storage bs:data block._ set value { \ data modify storage bs:data block._ merge from storage bs:in block.fill_type execute if data storage bs:data block._.masks[0] run function bs.block:utils/masks/compile -execute as B5-0-0-0-1 run function bs.block:fill/recurse/init +execute summon minecraft:marker run function bs.block:fill/recurse/init diff --git a/datapacks/Bookshelf/data/bs.block/function/fill/process/pause.mcfunction b/datapacks/Bookshelf/data/bs.block/function/fill/process/pause.mcfunction index 730ef1bebf..4dd542df82 100644 --- a/datapacks/Bookshelf/data/bs.block/function/fill/process/pause.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/fill/process/pause.mcfunction @@ -16,7 +16,9 @@ execute store result storage bs:data block._.pos[0] double 1 run scoreboard players get #block.x bs.data execute store result storage bs:data block._.pos[1] double 1 run scoreboard players get #block.y bs.data execute store result storage bs:data block._.pos[2] double 1 run scoreboard players get #block.z bs.data -data modify storage bs:data block._.rot set from entity @s Rotation + +execute unless data storage bs:data block._.dim run function bs.block:utils/get_dimension +execute unless data storage bs:data block._.rot run data modify storage bs:data block._.rot set from entity @s Rotation data modify storage bs:data block.fill prepend from storage bs:data block._ schedule function bs.block:fill/process/scheduled 1t replace diff --git a/datapacks/Bookshelf/data/bs.block/function/fill/process/resume.mcfunction b/datapacks/Bookshelf/data/bs.block/function/fill/process/resume.mcfunction index 5b9e4350a4..8b051b1b9b 100644 --- a/datapacks/Bookshelf/data/bs.block/function/fill/process/resume.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/fill/process/resume.mcfunction @@ -30,7 +30,7 @@ execute store result score #block.max_x bs.data run data get storage bs:data blo execute store result score #block.max_y bs.data run data get storage bs:data block._.max_y execute store result score #block.max_z bs.data run data get storage bs:data block._.max_z -execute at @s run function bs.block:fill/recurse/next with storage bs:data block._ +$execute in $(dim) positioned as @s rotated as @s run function bs.block:fill/recurse/next with storage bs:data block._ data remove storage bs:data block.fill[-1] execute if data storage bs:data block.fill[-1]._ \ diff --git a/datapacks/Bookshelf/data/bs.block/function/fill/recurse/init.mcfunction b/datapacks/Bookshelf/data/bs.block/function/fill/recurse/init.mcfunction index 52996ccb36..5144b6fe43 100644 --- a/datapacks/Bookshelf/data/bs.block/function/fill/recurse/init.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/fill/recurse/init.mcfunction @@ -35,4 +35,4 @@ execute store result storage bs:data block._.max_z int 1 run scoreboard players data modify entity @s Pos set from storage bs:data block._.pos execute positioned as @s run function bs.block:fill/recurse/next with storage bs:data block._ -execute in minecraft:overworld run tp @s -30000000 0 1600 ~ ~ +kill @s diff --git a/datapacks/Bookshelf/data/bs.block/function/get/compile/block.mcfunction b/datapacks/Bookshelf/data/bs.block/function/get/compile/block.mcfunction index 0a8aad4f52..b7fdd1842e 100644 --- a/datapacks/Bookshelf/data/bs.block/function/get/compile/block.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/get/compile/block.mcfunction @@ -19,11 +19,11 @@ execute unless data storage bs:out block.state run data modify storage bs:out bl execute unless data storage bs:out block.properties run data modify storage bs:out block.properties set value {} # escape the nbt or default to an empty string -execute store success score #success bs.data if data storage bs:out block.nbt{} -execute if score #success bs.data matches 0 run data modify storage bs:out block.nbt set value "" -execute if score #success bs.data matches 1 run data modify entity B5-0-0-0-2 text set value '{"storage":"bs:out","nbt":"block.nbt"}' +execute store success score #s bs.ctx if data storage bs:out block.nbt{} +execute if score #s bs.ctx matches 0 run data modify storage bs:out block.nbt set value "" +execute if score #s bs.ctx matches 1 run data modify entity B5-0-0-0-2 text set value '{"storage":"bs:out","nbt":"block.nbt"}' # generate the full block string representation data modify storage bs:ctx _ set from storage bs:out block -execute if score #success bs.data matches 1 run data modify storage bs:ctx _.nbt set string entity B5-0-0-0-2 text 1 -1 +execute if score #s bs.ctx matches 1 run data modify storage bs:ctx _.nbt set string entity B5-0-0-0-2 text 1 -1 return run function bs.block:get/compile/concat/block with storage bs:ctx _ diff --git a/datapacks/Bookshelf/data/bs.block/function/load/groups_table.mcfunction b/datapacks/Bookshelf/data/bs.block/function/load/groups_table.mcfunction index 124e17955a..e584669cff 100644 --- a/datapacks/Bookshelf/data/bs.block/function/load/groups_table.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/load/groups_table.mcfunction @@ -14,4 +14,4 @@ # ------------------------------------------------------------------------------------------------------------ # This file was automatically generated, do not edit it -data modify storage bs:const block.groups set value {0:[],1:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"face",o:[{i:0,v:"wall",p:{face:"wall"},s:{2:"face=wall,"}},{i:1,v:"ceiling",p:{face:"ceiling"},s:{2:"face=ceiling,"}},{i:2,v:"floor",p:{face:"floor"},s:{2:"face=floor,"}}]}],2:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{2:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{2:"open=true,"}}]},{i:3,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{3:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{3:"half=upper,"}}]},{i:4,n:"hinge",o:[{i:0,v:"left",p:{hinge:"left"},s:{4:"hinge=left,"}},{i:1,v:"right",p:{hinge:"right"},s:{4:"hinge=right,"}}]}],3:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{1:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{1:"east=true,"}}]},{i:2,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{2:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{2:"north=true,"}}]},{i:3,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{3:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{3:"south=true,"}}]},{i:4,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{4:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{4:"west=true,"}}]}],4:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{2:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{2:"open=true,"}}]},{i:3,n:"in_wall",o:[{i:0,v:"false",p:{in_wall:"false"},s:{3:"in_wall=false,"}},{i:1,v:"true",p:{in_wall:"true"},s:{3:"in_wall=true,"}}]}],5:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{1:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{1:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{1:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{1:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{1:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{1:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{1:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{1:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{1:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{1:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{1:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{1:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{1:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{1:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{1:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{1:"rotation=15,"}}]},{i:2,n:"attached",o:[{i:0,v:"false",p:{attached:"false"},s:{2:"attached=false,"}},{i:1,v:"true",p:{attached:"true"},s:{2:"attached=true,"}}]}],6:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"distance",o:[{i:0,v:"7",p:{distance:"7"},s:{1:"distance=7,"}},{i:1,v:"1",p:{distance:"1"},s:{1:"distance=1,"}},{i:2,v:"2",p:{distance:"2"},s:{1:"distance=2,"}},{i:3,v:"3",p:{distance:"3"},s:{1:"distance=3,"}},{i:4,v:"4",p:{distance:"4"},s:{1:"distance=4,"}},{i:5,v:"5",p:{distance:"5"},s:{1:"distance=5,"}},{i:6,v:"6",p:{distance:"6"},s:{1:"distance=6,"}}]},{i:2,n:"persistent",o:[{i:0,v:"false",p:{persistent:"false"},s:{2:"persistent=false,"}},{i:1,v:"true",p:{persistent:"true"},s:{2:"persistent=true,"}}]}],7:[{i:0,n:"axis",o:[{i:0,v:"y",p:{axis:"y"},s:{0:"axis=y,"}},{i:1,v:"z",p:{axis:"z"},s:{0:"axis=z,"}},{i:2,v:"x",p:{axis:"x"},s:{0:"axis=x,"}}]}],8:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]}],9:[{i:0,n:"stage",o:[{i:0,v:"0",p:{stage:"0"},s:{0:"stage=0,"}},{i:1,v:"1",p:{stage:"1"},s:{0:"stage=1,"}}]}],10:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{1:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{1:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{1:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{1:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{1:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{1:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{1:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{1:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{1:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{1:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{1:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{1:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{1:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{1:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{1:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{1:"rotation=15,"}}]}],11:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"type",o:[{i:0,v:"bottom",p:{type:"bottom"},s:{1:"type=bottom,"}},{i:1,v:"double",p:{type:"double"},s:{1:"type=double,"}},{i:2,v:"top",p:{type:"top"},s:{1:"type=top,"}}]}],12:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"half",o:[{i:0,v:"bottom",p:{half:"bottom"},s:{2:"half=bottom,"}},{i:1,v:"top",p:{half:"top"},s:{2:"half=top,"}}]},{i:3,n:"shape",o:[{i:0,v:"straight",p:{shape:"straight"},s:{3:"shape=straight,"}},{i:1,v:"inner_left",p:{shape:"inner_left"},s:{3:"shape=inner_left,"}},{i:2,v:"inner_right",p:{shape:"inner_right"},s:{3:"shape=inner_right,"}},{i:3,v:"outer_left",p:{shape:"outer_left"},s:{3:"shape=outer_left,"}},{i:4,v:"outer_right",p:{shape:"outer_right"},s:{3:"shape=outer_right,"}}]}],13:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"half",o:[{i:0,v:"bottom",p:{half:"bottom"},s:{2:"half=bottom,"}},{i:1,v:"top",p:{half:"top"},s:{2:"half=top,"}}]},{i:3,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{3:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{3:"open=true,"}}]},{i:4,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{4:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{4:"powered=true,"}}]}],14:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]}],15:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"shape",o:[{i:0,v:"north_south",p:{shape:"north_south"},s:{2:"shape=north_south,"}},{i:1,v:"east_west",p:{shape:"east_west"},s:{2:"shape=east_west,"}},{i:2,v:"ascending_east",p:{shape:"ascending_east"},s:{2:"shape=ascending_east,"}},{i:3,v:"ascending_west",p:{shape:"ascending_west"},s:{2:"shape=ascending_west,"}},{i:4,v:"ascending_north",p:{shape:"ascending_north"},s:{2:"shape=ascending_north,"}},{i:5,v:"ascending_south",p:{shape:"ascending_south"},s:{2:"shape=ascending_south,"}}]}],16:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"up",p:{facing:"up"},s:{1:"facing=up,"}},{i:1,v:"down",p:{facing:"down"},s:{1:"facing=down,"}},{i:2,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}},{i:4,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:5,v:"west",p:{facing:"west"},s:{1:"facing=west,"}}]}],17:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"up",o:[{i:0,v:"true",p:{up:"true"},s:{1:"up=true,"}},{i:1,v:"false",p:{up:"false"},s:{1:"up=false,"}}]},{i:2,n:"east",o:[{i:0,v:"none",p:{east:"none"},s:{2:"east=none,"}},{i:1,v:"low",p:{east:"low"},s:{2:"east=low,"}},{i:2,v:"tall",p:{east:"tall"},s:{2:"east=tall,"}}]},{i:3,n:"north",o:[{i:0,v:"none",p:{north:"none"},s:{3:"north=none,"}},{i:1,v:"low",p:{north:"low"},s:{3:"north=low,"}},{i:2,v:"tall",p:{north:"tall"},s:{3:"north=tall,"}}]},{i:4,n:"south",o:[{i:0,v:"none",p:{south:"none"},s:{4:"south=none,"}},{i:1,v:"low",p:{south:"low"},s:{4:"south=low,"}},{i:2,v:"tall",p:{south:"tall"},s:{4:"south=tall,"}}]},{i:5,n:"west",o:[{i:0,v:"none",p:{west:"none"},s:{5:"west=none,"}},{i:1,v:"low",p:{west:"low"},s:{5:"west=low,"}},{i:2,v:"tall",p:{west:"tall"},s:{5:"west=tall,"}}]}],18:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]}],19:[{i:0,n:"stage",o:[{i:0,v:"0",p:{stage:"0"},s:{0:"stage=0,"}},{i:1,v:"1",p:{stage:"1"},s:{0:"stage=1,"}}]},{i:1,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{1:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{1:"age=1,"}}]},{i:2,n:"leaves",o:[{i:0,v:"none",p:{leaves:"none"},s:{2:"leaves=none,"}},{i:1,v:"small",p:{leaves:"small"},s:{2:"leaves=small,"}},{i:2,v:"large",p:{leaves:"large"},s:{2:"leaves=large,"}}]}],20:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{1:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{1:"open=true,"}}]}],21:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]}],22:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"honey_level",o:[{i:0,v:"0",p:{honey_level:"0"},s:{1:"honey_level=0,"}},{i:1,v:"1",p:{honey_level:"1"},s:{1:"honey_level=1,"}},{i:2,v:"2",p:{honey_level:"2"},s:{1:"honey_level=2,"}},{i:3,v:"3",p:{honey_level:"3"},s:{1:"honey_level=3,"}},{i:4,v:"4",p:{honey_level:"4"},s:{1:"honey_level=4,"}},{i:5,v:"5",p:{honey_level:"5"},s:{1:"honey_level=5,"}}]}],23:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}}]}],24:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"attachment",o:[{i:0,v:"floor",p:{attachment:"floor"},s:{2:"attachment=floor,"}},{i:1,v:"ceiling",p:{attachment:"ceiling"},s:{2:"attachment=ceiling,"}},{i:2,v:"single_wall",p:{attachment:"single_wall"},s:{2:"attachment=single_wall,"}},{i:3,v:"double_wall",p:{attachment:"double_wall"},s:{2:"attachment=double_wall,"}}]}],25:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"tilt",o:[{i:0,v:"none",p:{tilt:"none"},s:{2:"tilt=none,"}},{i:1,v:"unstable",p:{tilt:"unstable"},s:{2:"tilt=unstable,"}},{i:2,v:"partial",p:{tilt:"partial"},s:{2:"tilt=partial,"}},{i:3,v:"full",p:{tilt:"full"},s:{2:"tilt=full,"}}]}],26:[{i:0,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{0:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{0:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{0:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{0:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{0:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{0:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{0:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{0:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{0:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{0:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{0:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{0:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{0:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{0:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{0:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{0:"rotation=15,"}}]}],27:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"occupied",o:[{i:0,v:"false",p:{occupied:"false"},s:{1:"occupied=false,"}},{i:1,v:"true",p:{occupied:"true"},s:{1:"occupied=true,"}}]},{i:2,n:"part",o:[{i:0,v:"foot",p:{part:"foot"},s:{2:"part=foot,"}},{i:1,v:"head",p:{part:"head"},s:{2:"part=head,"}}]}],28:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{1:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{1:"lit=true,"}}]},{i:2,n:"candles",o:[{i:0,v:"1",p:{candles:"1"},s:{2:"candles=1,"}},{i:1,v:"2",p:{candles:"2"},s:{2:"candles=2,"}},{i:2,v:"3",p:{candles:"3"},s:{2:"candles=3,"}},{i:3,v:"4",p:{candles:"4"},s:{2:"candles=4,"}}]}],29:[{i:0,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{0:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{0:"lit=true,"}}]}],30:[{i:0,n:"facing",o:[{i:0,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:1,v:"down",p:{facing:"down"},s:{0:"facing=down,"}},{i:2,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:4,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:5,v:"west",p:{facing:"west"},s:{0:"facing=west,"}}]}],31:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{1:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{1:"lit=true,"}}]}],32:[{i:0,n:"waterlogged",o:[{i:0,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}},{i:1,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}}]}],33:[{i:0,n:"waterlogged",o:[{i:0,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}},{i:1,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]}],34:[{i:0,n:"has_bottle_0",o:[{i:0,v:"false",p:{has_bottle_0:"false"},s:{0:"has_bottle_0=false,"}},{i:1,v:"true",p:{has_bottle_0:"true"},s:{0:"has_bottle_0=true,"}}]},{i:1,n:"has_bottle_1",o:[{i:0,v:"false",p:{has_bottle_1:"false"},s:{1:"has_bottle_1=false,"}},{i:1,v:"true",p:{has_bottle_1:"true"},s:{1:"has_bottle_1=true,"}}]},{i:2,n:"has_bottle_2",o:[{i:0,v:"false",p:{has_bottle_2:"false"},s:{2:"has_bottle_2=false,"}},{i:1,v:"true",p:{has_bottle_2:"true"},s:{2:"has_bottle_2=true,"}}]}],35:[{i:0,n:"east",o:[{i:0,v:"true",p:{east:"true"},s:{0:"east=true,"}},{i:1,v:"false",p:{east:"false"},s:{0:"east=false,"}}]},{i:1,n:"north",o:[{i:0,v:"true",p:{north:"true"},s:{1:"north=true,"}},{i:1,v:"false",p:{north:"false"},s:{1:"north=false,"}}]},{i:2,n:"south",o:[{i:0,v:"true",p:{south:"true"},s:{2:"south=true,"}},{i:1,v:"false",p:{south:"false"},s:{2:"south=false,"}}]},{i:3,n:"west",o:[{i:0,v:"true",p:{west:"true"},s:{3:"west=true,"}},{i:1,v:"false",p:{west:"false"},s:{3:"west=false,"}}]},{i:4,n:"up",o:[{i:0,v:"true",p:{up:"true"},s:{4:"up=true,"}},{i:1,v:"false",p:{up:"false"},s:{4:"up=false,"}}]},{i:5,n:"down",o:[{i:0,v:"true",p:{down:"true"},s:{5:"down=true,"}},{i:1,v:"false",p:{down:"false"},s:{5:"down=false,"}}]}],36:[{i:0,n:"drag",o:[{i:0,v:"true",p:{drag:"true"},s:{0:"drag=true,"}},{i:1,v:"false",p:{drag:"false"},s:{0:"drag=false,"}}]}],37:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{0:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{0:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{0:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{0:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{0:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{0:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{0:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{0:"age=15,"}}]}],38:[{i:0,n:"bites",o:[{i:0,v:"0",p:{bites:"0"},s:{0:"bites=0,"}},{i:1,v:"1",p:{bites:"1"},s:{0:"bites=1,"}},{i:2,v:"2",p:{bites:"2"},s:{0:"bites=2,"}},{i:3,v:"3",p:{bites:"3"},s:{0:"bites=3,"}},{i:4,v:"4",p:{bites:"4"},s:{0:"bites=4,"}},{i:5,v:"5",p:{bites:"5"},s:{0:"bites=5,"}},{i:6,v:"6",p:{bites:"6"},s:{0:"bites=6,"}}]}],39:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{2:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{2:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{2:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{2:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{2:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{2:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{2:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{2:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{2:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{2:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{2:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{2:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{2:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{2:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{2:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{2:"power=15,"}}]},{i:3,n:"sculk_sensor_phase",o:[{i:0,v:"inactive",p:{sculk_sensor_phase:"inactive"},s:{3:"sculk_sensor_phase=inactive,"}},{i:1,v:"active",p:{sculk_sensor_phase:"active"},s:{3:"sculk_sensor_phase=active,"}},{i:2,v:"cooldown",p:{sculk_sensor_phase:"cooldown"},s:{3:"sculk_sensor_phase=cooldown,"}}]}],40:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"lit",o:[{i:0,v:"true",p:{lit:"true"},s:{2:"lit=true,"}},{i:1,v:"false",p:{lit:"false"},s:{2:"lit=false,"}}]},{i:3,n:"signal_fire",o:[{i:0,v:"false",p:{signal_fire:"false"},s:{3:"signal_fire=false,"}},{i:1,v:"true",p:{signal_fire:"true"},s:{3:"signal_fire=true,"}}]}],41:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}}]}],42:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{0:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{0:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{0:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{0:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{0:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{0:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{0:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{0:"age=15,"}},{i:16,v:"16",p:{age:"16"},s:{0:"age=16,"}},{i:17,v:"17",p:{age:"17"},s:{0:"age=17,"}},{i:18,v:"18",p:{age:"18"},s:{0:"age=18,"}},{i:19,v:"19",p:{age:"19"},s:{0:"age=19,"}},{i:20,v:"20",p:{age:"20"},s:{0:"age=20,"}},{i:21,v:"21",p:{age:"21"},s:{0:"age=21,"}},{i:22,v:"22",p:{age:"22"},s:{0:"age=22,"}},{i:23,v:"23",p:{age:"23"},s:{0:"age=23,"}},{i:24,v:"24",p:{age:"24"},s:{0:"age=24,"}},{i:25,v:"25",p:{age:"25"},s:{0:"age=25,"}}]},{i:1,n:"berries",o:[{i:0,v:"false",p:{berries:"false"},s:{1:"berries=false,"}},{i:1,v:"true",p:{berries:"true"},s:{1:"berries=true,"}}]}],43:[{i:0,n:"berries",o:[{i:0,v:"false",p:{berries:"false"},s:{0:"berries=false,"}},{i:1,v:"true",p:{berries:"true"},s:{0:"berries=true,"}}]}],44:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"axis",o:[{i:0,v:"y",p:{axis:"y"},s:{1:"axis=y,"}},{i:1,v:"z",p:{axis:"z"},s:{1:"axis=z,"}},{i:2,v:"x",p:{axis:"x"},s:{1:"axis=x,"}}]}],45:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"conditional",o:[{i:0,v:"false",p:{conditional:"false"},s:{1:"conditional=false,"}},{i:1,v:"true",p:{conditional:"true"},s:{1:"conditional=true,"}}]}],46:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"type",o:[{i:0,v:"single",p:{type:"single"},s:{2:"type=single,"}},{i:1,v:"left",p:{type:"left"},s:{2:"type=left,"}},{i:2,v:"right",p:{type:"right"},s:{2:"type=right,"}}]}],47:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"slot_0_occupied",o:[{i:0,v:"false",p:{slot_0_occupied:"false"},s:{1:"slot_0_occupied=false,"}},{i:1,v:"true",p:{slot_0_occupied:"true"},s:{1:"slot_0_occupied=true,"}}]},{i:2,n:"slot_1_occupied",o:[{i:0,v:"false",p:{slot_1_occupied:"false"},s:{2:"slot_1_occupied=false,"}},{i:1,v:"true",p:{slot_1_occupied:"true"},s:{2:"slot_1_occupied=true,"}}]},{i:3,n:"slot_2_occupied",o:[{i:0,v:"false",p:{slot_2_occupied:"false"},s:{3:"slot_2_occupied=false,"}},{i:1,v:"true",p:{slot_2_occupied:"true"},s:{3:"slot_2_occupied=true,"}}]},{i:4,n:"slot_3_occupied",o:[{i:0,v:"false",p:{slot_3_occupied:"false"},s:{4:"slot_3_occupied=false,"}},{i:1,v:"true",p:{slot_3_occupied:"true"},s:{4:"slot_3_occupied=true,"}}]},{i:5,n:"slot_4_occupied",o:[{i:0,v:"false",p:{slot_4_occupied:"false"},s:{5:"slot_4_occupied=false,"}},{i:1,v:"true",p:{slot_4_occupied:"true"},s:{5:"slot_4_occupied=true,"}}]},{i:6,n:"slot_5_occupied",o:[{i:0,v:"false",p:{slot_5_occupied:"false"},s:{6:"slot_5_occupied=false,"}},{i:1,v:"true",p:{slot_5_occupied:"true"},s:{6:"slot_5_occupied=true,"}}]}],48:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}}]}],49:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{4:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{4:"up=true,"}}]},{i:5,n:"down",o:[{i:0,v:"false",p:{down:"false"},s:{5:"down=false,"}},{i:1,v:"true",p:{down:"true"},s:{5:"down=true,"}}]}],50:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{1:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{1:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{1:"age=2,"}}]}],51:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"mode",o:[{i:0,v:"compare",p:{mode:"compare"},s:{2:"mode=compare,"}},{i:1,v:"subtract",p:{mode:"subtract"},s:{2:"mode=subtract,"}}]}],52:[{i:0,n:"level",o:[{i:0,v:"0",p:{level:"0"},s:{0:"level=0,"}},{i:1,v:"1",p:{level:"1"},s:{0:"level=1,"}},{i:2,v:"2",p:{level:"2"},s:{0:"level=2,"}},{i:3,v:"3",p:{level:"3"},s:{0:"level=3,"}},{i:4,v:"4",p:{level:"4"},s:{0:"level=4,"}},{i:5,v:"5",p:{level:"5"},s:{0:"level=5,"}},{i:6,v:"6",p:{level:"6"},s:{0:"level=6,"}},{i:7,v:"7",p:{level:"7"},s:{0:"level=7,"}},{i:8,v:"8",p:{level:"8"},s:{0:"level=8,"}}]}],53:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]},{i:1,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{1:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{1:"lit=true,"}}]}],54:[{i:0,n:"orientation",o:[{i:0,v:"north_up",p:{orientation:"north_up"},s:{0:"orientation=north_up,"}},{i:1,v:"south_up",p:{orientation:"south_up"},s:{0:"orientation=south_up,"}},{i:2,v:"down_east",p:{orientation:"down_east"},s:{0:"orientation=down_east,"}},{i:3,v:"down_north",p:{orientation:"down_north"},s:{0:"orientation=down_north,"}},{i:4,v:"down_south",p:{orientation:"down_south"},s:{0:"orientation=down_south,"}},{i:5,v:"down_west",p:{orientation:"down_west"},s:{0:"orientation=down_west,"}},{i:6,v:"up_east",p:{orientation:"up_east"},s:{0:"orientation=up_east,"}},{i:7,v:"up_north",p:{orientation:"up_north"},s:{0:"orientation=up_north,"}},{i:8,v:"up_south",p:{orientation:"up_south"},s:{0:"orientation=up_south,"}},{i:9,v:"up_west",p:{orientation:"up_west"},s:{0:"orientation=up_west,"}},{i:10,v:"west_up",p:{orientation:"west_up"},s:{0:"orientation=west_up,"}},{i:11,v:"east_up",p:{orientation:"east_up"},s:{0:"orientation=east_up,"}}]},{i:1,n:"triggered",o:[{i:0,v:"false",p:{triggered:"false"},s:{1:"triggered=false,"}},{i:1,v:"true",p:{triggered:"true"},s:{1:"triggered=true,"}}]},{i:2,n:"crafting",o:[{i:0,v:"false",p:{crafting:"false"},s:{2:"crafting=false,"}},{i:1,v:"true",p:{crafting:"true"},s:{2:"crafting=true,"}}]}],55:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]},{i:1,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{1:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{1:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{1:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{1:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{1:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{1:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{1:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{1:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{1:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{1:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{1:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{1:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{1:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{1:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{1:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{1:"rotation=15,"}}]}],56:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]}],57:[{i:0,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{0:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{0:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{0:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{0:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{0:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{0:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{0:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{0:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{0:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{0:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{0:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{0:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{0:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{0:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{0:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{0:"power=15,"}}]},{i:1,n:"inverted",o:[{i:0,v:"false",p:{inverted:"false"},s:{1:"inverted=false,"}},{i:1,v:"true",p:{inverted:"true"},s:{1:"inverted=true,"}}]}],58:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"cracked",o:[{i:0,v:"false",p:{cracked:"false"},s:{2:"cracked=false,"}},{i:1,v:"true",p:{cracked:"true"},s:{2:"cracked=true,"}}]}],59:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"triggered",o:[{i:0,v:"false",p:{triggered:"false"},s:{1:"triggered=false,"}},{i:1,v:"true",p:{triggered:"true"},s:{1:"triggered=true,"}}]}],60:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"eye",o:[{i:0,v:"false",p:{eye:"false"},s:{1:"eye=false,"}},{i:1,v:"true",p:{eye:"true"},s:{1:"eye=true,"}}]}],61:[{i:0,n:"moisture",o:[{i:0,v:"0",p:{moisture:"0"},s:{0:"moisture=0,"}},{i:1,v:"1",p:{moisture:"1"},s:{0:"moisture=1,"}},{i:2,v:"2",p:{moisture:"2"},s:{0:"moisture=2,"}},{i:3,v:"3",p:{moisture:"3"},s:{0:"moisture=3,"}},{i:4,v:"4",p:{moisture:"4"},s:{0:"moisture=4,"}},{i:5,v:"5",p:{moisture:"5"},s:{0:"moisture=5,"}},{i:6,v:"6",p:{moisture:"6"},s:{0:"moisture=6,"}},{i:7,v:"7",p:{moisture:"7"},s:{0:"moisture=7,"}}]}],62:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{4:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{4:"up=true,"}}]},{i:5,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{5:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{5:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{5:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{5:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{5:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{5:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{5:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{5:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{5:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{5:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{5:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{5:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{5:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{5:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{5:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{5:"age=15,"}}]}],63:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{1:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{1:"east=true,"}}]},{i:2,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{2:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{2:"north=true,"}}]},{i:3,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{3:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{3:"south=true,"}}]},{i:4,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{4:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{4:"west=true,"}}]},{i:5,n:"down",o:[{i:0,v:"false",p:{down:"false"},s:{5:"down=false,"}},{i:1,v:"true",p:{down:"true"},s:{5:"down=true,"}}]},{i:6,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{6:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{6:"up=true,"}}]}],64:[{i:0,n:"snowy",o:[{i:0,v:"false",p:{snowy:"false"},s:{0:"snowy=false,"}},{i:1,v:"true",p:{snowy:"true"},s:{0:"snowy=true,"}}]}],65:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"face",o:[{i:0,v:"wall",p:{face:"wall"},s:{1:"face=wall,"}},{i:1,v:"ceiling",p:{face:"ceiling"},s:{1:"face=ceiling,"}},{i:2,v:"floor",p:{face:"floor"},s:{1:"face=floor,"}}]}],66:[{i:0,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{0:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{0:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{0:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{0:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{0:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{0:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{0:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{0:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{0:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{0:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{0:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{0:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{0:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{0:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{0:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{0:"power=15,"}}]}],67:[{i:0,n:"enabled",o:[{i:0,v:"true",p:{enabled:"true"},s:{0:"enabled=true,"}},{i:1,v:"false",p:{enabled:"false"},s:{0:"enabled=false,"}}]},{i:1,n:"facing",o:[{i:0,v:"down",p:{facing:"down"},s:{1:"facing=down,"}},{i:1,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:2,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:4,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]}],68:[{i:0,n:"orientation",o:[{i:0,v:"north_up",p:{orientation:"north_up"},s:{0:"orientation=north_up,"}},{i:1,v:"south_up",p:{orientation:"south_up"},s:{0:"orientation=south_up,"}},{i:2,v:"down_east",p:{orientation:"down_east"},s:{0:"orientation=down_east,"}},{i:3,v:"down_north",p:{orientation:"down_north"},s:{0:"orientation=down_north,"}},{i:4,v:"down_south",p:{orientation:"down_south"},s:{0:"orientation=down_south,"}},{i:5,v:"down_west",p:{orientation:"down_west"},s:{0:"orientation=down_west,"}},{i:6,v:"up_east",p:{orientation:"up_east"},s:{0:"orientation=up_east,"}},{i:7,v:"up_north",p:{orientation:"up_north"},s:{0:"orientation=up_north,"}},{i:8,v:"up_south",p:{orientation:"up_south"},s:{0:"orientation=up_south,"}},{i:9,v:"up_west",p:{orientation:"up_west"},s:{0:"orientation=up_west,"}},{i:10,v:"west_up",p:{orientation:"west_up"},s:{0:"orientation=west_up,"}},{i:11,v:"east_up",p:{orientation:"east_up"},s:{0:"orientation=east_up,"}}]}],69:[{i:0,n:"has_record",o:[{i:0,v:"false",p:{has_record:"false"},s:{0:"has_record=false,"}},{i:1,v:"true",p:{has_record:"true"},s:{0:"has_record=true,"}}]}],70:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{0:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{0:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{0:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{0:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{0:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{0:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{0:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{0:"age=15,"}},{i:16,v:"16",p:{age:"16"},s:{0:"age=16,"}},{i:17,v:"17",p:{age:"17"},s:{0:"age=17,"}},{i:18,v:"18",p:{age:"18"},s:{0:"age=18,"}},{i:19,v:"19",p:{age:"19"},s:{0:"age=19,"}},{i:20,v:"20",p:{age:"20"},s:{0:"age=20,"}},{i:21,v:"21",p:{age:"21"},s:{0:"age=21,"}},{i:22,v:"22",p:{age:"22"},s:{0:"age=22,"}},{i:23,v:"23",p:{age:"23"},s:{0:"age=23,"}},{i:24,v:"24",p:{age:"24"},s:{0:"age=24,"}},{i:25,v:"25",p:{age:"25"},s:{0:"age=25,"}}]}],71:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"hanging",o:[{i:0,v:"false",p:{hanging:"false"},s:{1:"hanging=false,"}},{i:1,v:"true",p:{hanging:"true"},s:{1:"hanging=true,"}}]}],72:[{i:0,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{0:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{0:"half=upper,"}}]}],73:[{i:0,n:"level",o:[{i:0,v:"0",p:{level:"0"},s:{0:"level=0,"}},{i:1,v:"1",p:{level:"1"},s:{0:"level=1,"}},{i:2,v:"2",p:{level:"2"},s:{0:"level=2,"}},{i:3,v:"3",p:{level:"3"},s:{0:"level=3,"}},{i:4,v:"4",p:{level:"4"},s:{0:"level=4,"}},{i:5,v:"5",p:{level:"5"},s:{0:"level=5,"}},{i:6,v:"6",p:{level:"6"},s:{0:"level=6,"}},{i:7,v:"7",p:{level:"7"},s:{0:"level=7,"}},{i:8,v:"8",p:{level:"8"},s:{0:"level=8,"}},{i:9,v:"9",p:{level:"9"},s:{0:"level=9,"}},{i:10,v:"10",p:{level:"10"},s:{0:"level=10,"}},{i:11,v:"11",p:{level:"11"},s:{0:"level=11,"}},{i:12,v:"12",p:{level:"12"},s:{0:"level=12,"}},{i:13,v:"13",p:{level:"13"},s:{0:"level=13,"}},{i:14,v:"14",p:{level:"14"},s:{0:"level=14,"}},{i:15,v:"15",p:{level:"15"},s:{0:"level=15,"}}]}],74:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"has_book",o:[{i:0,v:"false",p:{has_book:"false"},s:{2:"has_book=false,"}},{i:1,v:"true",p:{has_book:"true"},s:{2:"has_book=true,"}}]}],75:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"level",o:[{i:0,v:"15",p:{level:"15"},s:{1:"level=15,"}},{i:1,v:"0",p:{level:"0"},s:{1:"level=0,"}},{i:2,v:"1",p:{level:"1"},s:{1:"level=1,"}},{i:3,v:"2",p:{level:"2"},s:{1:"level=2,"}},{i:4,v:"3",p:{level:"3"},s:{1:"level=3,"}},{i:5,v:"4",p:{level:"4"},s:{1:"level=4,"}},{i:6,v:"5",p:{level:"5"},s:{1:"level=5,"}},{i:7,v:"6",p:{level:"6"},s:{1:"level=6,"}},{i:8,v:"7",p:{level:"7"},s:{1:"level=7,"}},{i:9,v:"8",p:{level:"8"},s:{1:"level=8,"}},{i:10,v:"9",p:{level:"9"},s:{1:"level=9,"}},{i:11,v:"10",p:{level:"10"},s:{1:"level=10,"}},{i:12,v:"11",p:{level:"11"},s:{1:"level=11,"}},{i:13,v:"12",p:{level:"12"},s:{1:"level=12,"}},{i:14,v:"13",p:{level:"13"},s:{1:"level=13,"}},{i:15,v:"14",p:{level:"14"},s:{1:"level=14,"}}]}],76:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"up",p:{facing:"up"},s:{1:"facing=up,"}},{i:1,v:"down",p:{facing:"down"},s:{1:"facing=down,"}},{i:2,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}},{i:4,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:5,v:"west",p:{facing:"west"},s:{1:"facing=west,"}}]},{i:2,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{2:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{2:"powered=true,"}}]}],77:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"hanging",o:[{i:0,v:"false",p:{hanging:"false"},s:{1:"hanging=false,"}},{i:1,v:"true",p:{hanging:"true"},s:{1:"hanging=true,"}}]},{i:2,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{2:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{2:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{2:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{2:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{2:"age=4,"}}]},{i:3,n:"stage",o:[{i:0,v:"0",p:{stage:"0"},s:{3:"stage=0,"}},{i:1,v:"1",p:{stage:"1"},s:{3:"stage=1,"}}]}],78:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"type",o:[{i:0,v:"normal",p:{type:"normal"},s:{1:"type=normal,"}},{i:1,v:"sticky",p:{type:"sticky"},s:{1:"type=sticky,"}}]}],79:[{i:0,n:"axis",o:[{i:0,v:"x",p:{axis:"x"},s:{0:"axis=x,"}},{i:1,v:"z",p:{axis:"z"},s:{0:"axis=z,"}}]}],80:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]},{i:1,n:"instrument",o:[{i:0,v:"harp",p:{instrument:"harp"},s:{1:"instrument=harp,"}},{i:1,v:"basedrum",p:{instrument:"basedrum"},s:{1:"instrument=basedrum,"}},{i:2,v:"snare",p:{instrument:"snare"},s:{1:"instrument=snare,"}},{i:3,v:"hat",p:{instrument:"hat"},s:{1:"instrument=hat,"}},{i:4,v:"bass",p:{instrument:"bass"},s:{1:"instrument=bass,"}},{i:5,v:"flute",p:{instrument:"flute"},s:{1:"instrument=flute,"}},{i:6,v:"bell",p:{instrument:"bell"},s:{1:"instrument=bell,"}},{i:7,v:"guitar",p:{instrument:"guitar"},s:{1:"instrument=guitar,"}},{i:8,v:"chime",p:{instrument:"chime"},s:{1:"instrument=chime,"}},{i:9,v:"xylophone",p:{instrument:"xylophone"},s:{1:"instrument=xylophone,"}},{i:10,v:"iron_xylophone",p:{instrument:"iron_xylophone"},s:{1:"instrument=iron_xylophone,"}},{i:11,v:"cow_bell",p:{instrument:"cow_bell"},s:{1:"instrument=cow_bell,"}},{i:12,v:"didgeridoo",p:{instrument:"didgeridoo"},s:{1:"instrument=didgeridoo,"}},{i:13,v:"bit",p:{instrument:"bit"},s:{1:"instrument=bit,"}},{i:14,v:"banjo",p:{instrument:"banjo"},s:{1:"instrument=banjo,"}},{i:15,v:"pling",p:{instrument:"pling"},s:{1:"instrument=pling,"}},{i:16,v:"zombie",p:{instrument:"zombie"},s:{1:"instrument=zombie,"}},{i:17,v:"skeleton",p:{instrument:"skeleton"},s:{1:"instrument=skeleton,"}},{i:18,v:"creeper",p:{instrument:"creeper"},s:{1:"instrument=creeper,"}},{i:19,v:"dragon",p:{instrument:"dragon"},s:{1:"instrument=dragon,"}},{i:20,v:"wither_skeleton",p:{instrument:"wither_skeleton"},s:{1:"instrument=wither_skeleton,"}},{i:21,v:"piglin",p:{instrument:"piglin"},s:{1:"instrument=piglin,"}},{i:22,v:"custom_head",p:{instrument:"custom_head"},s:{1:"instrument=custom_head,"}}]},{i:2,n:"note",o:[{i:0,v:"0",p:{note:"0"},s:{2:"note=0,"}},{i:1,v:"1",p:{note:"1"},s:{2:"note=1,"}},{i:2,v:"2",p:{note:"2"},s:{2:"note=2,"}},{i:3,v:"3",p:{note:"3"},s:{2:"note=3,"}},{i:4,v:"4",p:{note:"4"},s:{2:"note=4,"}},{i:5,v:"5",p:{note:"5"},s:{2:"note=5,"}},{i:6,v:"6",p:{note:"6"},s:{2:"note=6,"}},{i:7,v:"7",p:{note:"7"},s:{2:"note=7,"}},{i:8,v:"8",p:{note:"8"},s:{2:"note=8,"}},{i:9,v:"9",p:{note:"9"},s:{2:"note=9,"}},{i:10,v:"10",p:{note:"10"},s:{2:"note=10,"}},{i:11,v:"11",p:{note:"11"},s:{2:"note=11,"}},{i:12,v:"12",p:{note:"12"},s:{2:"note=12,"}},{i:13,v:"13",p:{note:"13"},s:{2:"note=13,"}},{i:14,v:"14",p:{note:"14"},s:{2:"note=14,"}},{i:15,v:"15",p:{note:"15"},s:{2:"note=15,"}},{i:16,v:"16",p:{note:"16"},s:{2:"note=16,"}},{i:17,v:"17",p:{note:"17"},s:{2:"note=17,"}},{i:18,v:"18",p:{note:"18"},s:{2:"note=18,"}},{i:19,v:"19",p:{note:"19"},s:{2:"note=19,"}},{i:20,v:"20",p:{note:"20"},s:{2:"note=20,"}},{i:21,v:"21",p:{note:"21"},s:{2:"note=21,"}},{i:22,v:"22",p:{note:"22"},s:{2:"note=22,"}},{i:23,v:"23",p:{note:"23"},s:{2:"note=23,"}},{i:24,v:"24",p:{note:"24"},s:{2:"note=24,"}}]}],81:[{i:0,n:"facing",o:[{i:0,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:1,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:2,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:3,v:"down",p:{facing:"down"},s:{0:"facing=down,"}},{i:4,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:5,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]}],82:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"flower_amount",o:[{i:0,v:"1",p:{flower_amount:"1"},s:{1:"flower_amount=1,"}},{i:1,v:"2",p:{flower_amount:"2"},s:{1:"flower_amount=2,"}},{i:2,v:"3",p:{flower_amount:"3"},s:{1:"flower_amount=3,"}},{i:3,v:"4",p:{flower_amount:"4"},s:{1:"flower_amount=4,"}}]}],83:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"extended",o:[{i:0,v:"false",p:{extended:"false"},s:{1:"extended=false,"}},{i:1,v:"true",p:{extended:"true"},s:{1:"extended=true,"}}]}],84:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"type",o:[{i:0,v:"normal",p:{type:"normal"},s:{1:"type=normal,"}},{i:1,v:"sticky",p:{type:"sticky"},s:{1:"type=sticky,"}}]},{i:2,n:"short",o:[{i:0,v:"false",p:{short:"false"},s:{2:"short=false,"}},{i:1,v:"true",p:{short:"true"},s:{2:"short=true,"}}]}],85:[{i:0,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{0:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{0:"half=upper,"}}]},{i:1,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{1:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{1:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{1:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{1:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{1:"age=4,"}}]}],86:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"thickness",o:[{i:0,v:"tip",p:{thickness:"tip"},s:{1:"thickness=tip,"}},{i:1,v:"frustum",p:{thickness:"frustum"},s:{1:"thickness=frustum,"}},{i:2,v:"middle",p:{thickness:"middle"},s:{1:"thickness=middle,"}},{i:3,v:"base",p:{thickness:"base"},s:{1:"thickness=base,"}},{i:4,v:"tip_merge",p:{thickness:"tip_merge"},s:{1:"thickness=tip_merge,"}}]},{i:2,n:"vertical_direction",o:[{i:0,v:"up",p:{vertical_direction:"up"},s:{2:"vertical_direction=up,"}},{i:1,v:"down",p:{vertical_direction:"down"},s:{2:"vertical_direction=down,"}}]}],87:[{i:0,n:"level",o:[{i:0,v:"1",p:{level:"1"},s:{0:"level=1,"}},{i:1,v:"2",p:{level:"2"},s:{0:"level=2,"}},{i:2,v:"3",p:{level:"3"},s:{0:"level=3,"}}]}],88:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"shape",o:[{i:0,v:"north_south",p:{shape:"north_south"},s:{1:"shape=north_south,"}},{i:1,v:"east_west",p:{shape:"east_west"},s:{1:"shape=east_west,"}},{i:2,v:"ascending_east",p:{shape:"ascending_east"},s:{1:"shape=ascending_east,"}},{i:3,v:"ascending_west",p:{shape:"ascending_west"},s:{1:"shape=ascending_west,"}},{i:4,v:"ascending_north",p:{shape:"ascending_north"},s:{1:"shape=ascending_north,"}},{i:5,v:"ascending_south",p:{shape:"ascending_south"},s:{1:"shape=ascending_south,"}},{i:6,v:"south_east",p:{shape:"south_east"},s:{1:"shape=south_east,"}},{i:7,v:"south_west",p:{shape:"south_west"},s:{1:"shape=south_west,"}},{i:8,v:"north_west",p:{shape:"north_west"},s:{1:"shape=north_west,"}},{i:9,v:"north_east",p:{shape:"north_east"},s:{1:"shape=north_east,"}}]}],89:[{i:0,n:"lit",o:[{i:0,v:"true",p:{lit:"true"},s:{0:"lit=true,"}},{i:1,v:"false",p:{lit:"false"},s:{0:"lit=false,"}}]}],90:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"lit",o:[{i:0,v:"true",p:{lit:"true"},s:{1:"lit=true,"}},{i:1,v:"false",p:{lit:"false"},s:{1:"lit=false,"}}]}],91:[{i:0,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{0:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{0:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{0:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{0:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{0:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{0:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{0:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{0:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{0:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{0:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{0:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{0:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{0:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{0:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{0:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{0:"power=15,"}}]},{i:1,n:"east",o:[{i:0,v:"none",p:{east:"none"},s:{1:"east=none,"}},{i:1,v:"up",p:{east:"up"},s:{1:"east=up,"}},{i:2,v:"side",p:{east:"side"},s:{1:"east=side,"}}]},{i:2,n:"north",o:[{i:0,v:"none",p:{north:"none"},s:{2:"north=none,"}},{i:1,v:"up",p:{north:"up"},s:{2:"north=up,"}},{i:2,v:"side",p:{north:"side"},s:{2:"north=side,"}}]},{i:3,n:"south",o:[{i:0,v:"none",p:{south:"none"},s:{3:"south=none,"}},{i:1,v:"up",p:{south:"up"},s:{3:"south=up,"}},{i:2,v:"side",p:{south:"side"},s:{3:"south=side,"}}]},{i:4,n:"west",o:[{i:0,v:"none",p:{west:"none"},s:{4:"west=none,"}},{i:1,v:"up",p:{west:"up"},s:{4:"west=up,"}},{i:2,v:"side",p:{west:"side"},s:{4:"west=side,"}}]}],92:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"delay",o:[{i:0,v:"1",p:{delay:"1"},s:{2:"delay=1,"}},{i:1,v:"2",p:{delay:"2"},s:{2:"delay=2,"}},{i:2,v:"3",p:{delay:"3"},s:{2:"delay=3,"}},{i:3,v:"4",p:{delay:"4"},s:{2:"delay=4,"}}]},{i:3,n:"locked",o:[{i:0,v:"false",p:{locked:"false"},s:{3:"locked=false,"}},{i:1,v:"true",p:{locked:"true"},s:{3:"locked=true,"}}]}],93:[{i:0,n:"charges",o:[{i:0,v:"0",p:{charges:"0"},s:{0:"charges=0,"}},{i:1,v:"1",p:{charges:"1"},s:{0:"charges=1,"}},{i:2,v:"2",p:{charges:"2"},s:{0:"charges=2,"}},{i:3,v:"3",p:{charges:"3"},s:{0:"charges=3,"}},{i:4,v:"4",p:{charges:"4"},s:{0:"charges=4,"}}]}],94:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"bottom",o:[{i:0,v:"false",p:{bottom:"false"},s:{1:"bottom=false,"}},{i:1,v:"true",p:{bottom:"true"},s:{1:"bottom=true,"}}]},{i:2,n:"distance",o:[{i:0,v:"7",p:{distance:"7"},s:{2:"distance=7,"}},{i:1,v:"0",p:{distance:"0"},s:{2:"distance=0,"}},{i:2,v:"1",p:{distance:"1"},s:{2:"distance=1,"}},{i:3,v:"2",p:{distance:"2"},s:{2:"distance=2,"}},{i:4,v:"3",p:{distance:"3"},s:{2:"distance=3,"}},{i:5,v:"4",p:{distance:"4"},s:{2:"distance=4,"}},{i:6,v:"5",p:{distance:"5"},s:{2:"distance=5,"}},{i:7,v:"6",p:{distance:"6"},s:{2:"distance=6,"}}]}],95:[{i:0,n:"bloom",o:[{i:0,v:"false",p:{bloom:"false"},s:{0:"bloom=false,"}},{i:1,v:"true",p:{bloom:"true"},s:{0:"bloom=true,"}}]}],96:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{1:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{1:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{1:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{1:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{1:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{1:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{1:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{1:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{1:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{1:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{1:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{1:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{1:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{1:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{1:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{1:"power=15,"}}]},{i:2,n:"sculk_sensor_phase",o:[{i:0,v:"inactive",p:{sculk_sensor_phase:"inactive"},s:{2:"sculk_sensor_phase=inactive,"}},{i:1,v:"active",p:{sculk_sensor_phase:"active"},s:{2:"sculk_sensor_phase=active,"}},{i:2,v:"cooldown",p:{sculk_sensor_phase:"cooldown"},s:{2:"sculk_sensor_phase=cooldown,"}}]}],97:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"can_summon",o:[{i:0,v:"false",p:{can_summon:"false"},s:{1:"can_summon=false,"}},{i:1,v:"true",p:{can_summon:"true"},s:{1:"can_summon=true,"}}]},{i:2,n:"shrieking",o:[{i:0,v:"false",p:{shrieking:"false"},s:{2:"shrieking=false,"}},{i:1,v:"true",p:{shrieking:"true"},s:{2:"shrieking=true,"}}]}],98:[{i:0,n:"waterlogged",o:[{i:0,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}},{i:1,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}}]},{i:1,n:"pickles",o:[{i:0,v:"1",p:{pickles:"1"},s:{1:"pickles=1,"}},{i:1,v:"2",p:{pickles:"2"},s:{1:"pickles=2,"}},{i:2,v:"3",p:{pickles:"3"},s:{1:"pickles=3,"}},{i:3,v:"4",p:{pickles:"4"},s:{1:"pickles=4,"}}]}],99:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{2:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{2:"half=upper,"}}]}],100:[{i:0,n:"hatch",o:[{i:0,v:"0",p:{hatch:"0"},s:{0:"hatch=0,"}},{i:1,v:"1",p:{hatch:"1"},s:{0:"hatch=1,"}},{i:2,v:"2",p:{hatch:"2"},s:{0:"hatch=2,"}}]}],101:[{i:0,n:"layers",o:[{i:0,v:"1",p:{layers:"1"},s:{0:"layers=1,"}},{i:1,v:"2",p:{layers:"2"},s:{0:"layers=2,"}},{i:2,v:"3",p:{layers:"3"},s:{0:"layers=3,"}},{i:3,v:"4",p:{layers:"4"},s:{0:"layers=4,"}},{i:4,v:"5",p:{layers:"5"},s:{0:"layers=5,"}},{i:5,v:"6",p:{layers:"6"},s:{0:"layers=6,"}},{i:6,v:"7",p:{layers:"7"},s:{0:"layers=7,"}},{i:7,v:"8",p:{layers:"8"},s:{0:"layers=8,"}}]}],102:[{i:0,n:"mode",o:[{i:0,v:"load",p:{mode:"load"},s:{0:"mode=load,"}},{i:1,v:"corner",p:{mode:"corner"},s:{0:"mode=corner,"}},{i:2,v:"data",p:{mode:"data"},s:{0:"mode=data,"}},{i:3,v:"save",p:{mode:"save"},s:{0:"mode=save,"}}]}],103:[{i:0,n:"dusted",o:[{i:0,v:"0",p:{dusted:"0"},s:{0:"dusted=0,"}},{i:1,v:"1",p:{dusted:"1"},s:{0:"dusted=1,"}},{i:2,v:"2",p:{dusted:"2"},s:{0:"dusted=2,"}},{i:3,v:"3",p:{dusted:"3"},s:{0:"dusted=3,"}}]}],104:[{i:0,n:"unstable",o:[{i:0,v:"false",p:{unstable:"false"},s:{0:"unstable=false,"}},{i:1,v:"true",p:{unstable:"true"},s:{0:"unstable=true,"}}]}],105:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}}]}],106:[{i:0,n:"ominous",o:[{i:0,v:"false",p:{ominous:"false"},s:{0:"ominous=false,"}},{i:1,v:"true",p:{ominous:"true"},s:{0:"ominous=true,"}}]},{i:1,n:"trial_spawner_state",o:[{i:0,v:"inactive",p:{trial_spawner_state:"inactive"},s:{1:"trial_spawner_state=inactive,"}},{i:1,v:"waiting_for_players",p:{trial_spawner_state:"waiting_for_players"},s:{1:"trial_spawner_state=waiting_for_players,"}},{i:2,v:"active",p:{trial_spawner_state:"active"},s:{1:"trial_spawner_state=active,"}},{i:3,v:"waiting_for_reward_ejection",p:{trial_spawner_state:"waiting_for_reward_ejection"},s:{1:"trial_spawner_state=waiting_for_reward_ejection,"}},{i:4,v:"ejecting_reward",p:{trial_spawner_state:"ejecting_reward"},s:{1:"trial_spawner_state=ejecting_reward,"}},{i:5,v:"cooldown",p:{trial_spawner_state:"cooldown"},s:{1:"trial_spawner_state=cooldown,"}}]}],107:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"attached",o:[{i:0,v:"false",p:{attached:"false"},s:{4:"attached=false,"}},{i:1,v:"true",p:{attached:"true"},s:{4:"attached=true,"}}]},{i:5,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{5:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{5:"powered=true,"}}]},{i:6,n:"disarmed",o:[{i:0,v:"false",p:{disarmed:"false"},s:{6:"disarmed=false,"}},{i:1,v:"true",p:{disarmed:"true"},s:{6:"disarmed=true,"}}]}],108:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"attached",o:[{i:0,v:"false",p:{attached:"false"},s:{2:"attached=false,"}},{i:1,v:"true",p:{attached:"true"},s:{2:"attached=true,"}}]}],109:[{i:0,n:"hatch",o:[{i:0,v:"0",p:{hatch:"0"},s:{0:"hatch=0,"}},{i:1,v:"1",p:{hatch:"1"},s:{0:"hatch=1,"}},{i:2,v:"2",p:{hatch:"2"},s:{0:"hatch=2,"}}]},{i:1,n:"eggs",o:[{i:0,v:"1",p:{eggs:"1"},s:{1:"eggs=1,"}},{i:1,v:"2",p:{eggs:"2"},s:{1:"eggs=2,"}},{i:2,v:"3",p:{eggs:"3"},s:{1:"eggs=3,"}},{i:3,v:"4",p:{eggs:"4"},s:{1:"eggs=4,"}}]}],110:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"ominous",o:[{i:0,v:"false",p:{ominous:"false"},s:{1:"ominous=false,"}},{i:1,v:"true",p:{ominous:"true"},s:{1:"ominous=true,"}}]},{i:2,n:"vault_state",o:[{i:0,v:"inactive",p:{vault_state:"inactive"},s:{2:"vault_state=inactive,"}},{i:1,v:"active",p:{vault_state:"active"},s:{2:"vault_state=active,"}},{i:2,v:"unlocking",p:{vault_state:"unlocking"},s:{2:"vault_state=unlocking,"}},{i:3,v:"ejecting",p:{vault_state:"ejecting"},s:{2:"vault_state=ejecting,"}}]}],111:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{4:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{4:"up=true,"}}]}]} +data modify storage bs:const block.groups set value {0:[],1:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"face",o:[{i:0,v:"wall",p:{face:"wall"},s:{2:"face=wall,"}},{i:1,v:"ceiling",p:{face:"ceiling"},s:{2:"face=ceiling,"}},{i:2,v:"floor",p:{face:"floor"},s:{2:"face=floor,"}}]}],2:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{2:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{2:"open=true,"}}]},{i:3,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{3:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{3:"half=upper,"}}]},{i:4,n:"hinge",o:[{i:0,v:"left",p:{hinge:"left"},s:{4:"hinge=left,"}},{i:1,v:"right",p:{hinge:"right"},s:{4:"hinge=right,"}}]}],3:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{1:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{1:"east=true,"}}]},{i:2,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{2:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{2:"north=true,"}}]},{i:3,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{3:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{3:"south=true,"}}]},{i:4,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{4:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{4:"west=true,"}}]}],4:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{2:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{2:"open=true,"}}]},{i:3,n:"in_wall",o:[{i:0,v:"false",p:{in_wall:"false"},s:{3:"in_wall=false,"}},{i:1,v:"true",p:{in_wall:"true"},s:{3:"in_wall=true,"}}]}],5:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{1:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{1:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{1:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{1:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{1:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{1:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{1:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{1:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{1:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{1:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{1:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{1:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{1:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{1:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{1:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{1:"rotation=15,"}}]},{i:2,n:"attached",o:[{i:0,v:"false",p:{attached:"false"},s:{2:"attached=false,"}},{i:1,v:"true",p:{attached:"true"},s:{2:"attached=true,"}}]}],6:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"distance",o:[{i:0,v:"7",p:{distance:"7"},s:{1:"distance=7,"}},{i:1,v:"1",p:{distance:"1"},s:{1:"distance=1,"}},{i:2,v:"2",p:{distance:"2"},s:{1:"distance=2,"}},{i:3,v:"3",p:{distance:"3"},s:{1:"distance=3,"}},{i:4,v:"4",p:{distance:"4"},s:{1:"distance=4,"}},{i:5,v:"5",p:{distance:"5"},s:{1:"distance=5,"}},{i:6,v:"6",p:{distance:"6"},s:{1:"distance=6,"}}]},{i:2,n:"persistent",o:[{i:0,v:"false",p:{persistent:"false"},s:{2:"persistent=false,"}},{i:1,v:"true",p:{persistent:"true"},s:{2:"persistent=true,"}}]}],7:[{i:0,n:"axis",o:[{i:0,v:"y",p:{axis:"y"},s:{0:"axis=y,"}},{i:1,v:"z",p:{axis:"z"},s:{0:"axis=z,"}},{i:2,v:"x",p:{axis:"x"},s:{0:"axis=x,"}}]}],8:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]}],9:[{i:0,n:"stage",o:[{i:0,v:"0",p:{stage:"0"},s:{0:"stage=0,"}},{i:1,v:"1",p:{stage:"1"},s:{0:"stage=1,"}}]}],10:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{1:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{1:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{1:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{1:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{1:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{1:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{1:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{1:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{1:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{1:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{1:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{1:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{1:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{1:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{1:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{1:"rotation=15,"}}]}],11:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"type",o:[{i:0,v:"bottom",p:{type:"bottom"},s:{1:"type=bottom,"}},{i:1,v:"double",p:{type:"double"},s:{1:"type=double,"}},{i:2,v:"top",p:{type:"top"},s:{1:"type=top,"}}]}],12:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"half",o:[{i:0,v:"bottom",p:{half:"bottom"},s:{2:"half=bottom,"}},{i:1,v:"top",p:{half:"top"},s:{2:"half=top,"}}]},{i:3,n:"shape",o:[{i:0,v:"straight",p:{shape:"straight"},s:{3:"shape=straight,"}},{i:1,v:"inner_left",p:{shape:"inner_left"},s:{3:"shape=inner_left,"}},{i:2,v:"inner_right",p:{shape:"inner_right"},s:{3:"shape=inner_right,"}},{i:3,v:"outer_left",p:{shape:"outer_left"},s:{3:"shape=outer_left,"}},{i:4,v:"outer_right",p:{shape:"outer_right"},s:{3:"shape=outer_right,"}}]}],13:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"half",o:[{i:0,v:"bottom",p:{half:"bottom"},s:{2:"half=bottom,"}},{i:1,v:"top",p:{half:"top"},s:{2:"half=top,"}}]},{i:3,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{3:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{3:"open=true,"}}]},{i:4,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{4:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{4:"powered=true,"}}]}],14:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]}],15:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"shape",o:[{i:0,v:"north_south",p:{shape:"north_south"},s:{2:"shape=north_south,"}},{i:1,v:"east_west",p:{shape:"east_west"},s:{2:"shape=east_west,"}},{i:2,v:"ascending_east",p:{shape:"ascending_east"},s:{2:"shape=ascending_east,"}},{i:3,v:"ascending_west",p:{shape:"ascending_west"},s:{2:"shape=ascending_west,"}},{i:4,v:"ascending_north",p:{shape:"ascending_north"},s:{2:"shape=ascending_north,"}},{i:5,v:"ascending_south",p:{shape:"ascending_south"},s:{2:"shape=ascending_south,"}}]}],16:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"up",p:{facing:"up"},s:{1:"facing=up,"}},{i:1,v:"down",p:{facing:"down"},s:{1:"facing=down,"}},{i:2,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}},{i:4,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:5,v:"west",p:{facing:"west"},s:{1:"facing=west,"}}]}],17:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"up",o:[{i:0,v:"true",p:{up:"true"},s:{1:"up=true,"}},{i:1,v:"false",p:{up:"false"},s:{1:"up=false,"}}]},{i:2,n:"east",o:[{i:0,v:"none",p:{east:"none"},s:{2:"east=none,"}},{i:1,v:"low",p:{east:"low"},s:{2:"east=low,"}},{i:2,v:"tall",p:{east:"tall"},s:{2:"east=tall,"}}]},{i:3,n:"north",o:[{i:0,v:"none",p:{north:"none"},s:{3:"north=none,"}},{i:1,v:"low",p:{north:"low"},s:{3:"north=low,"}},{i:2,v:"tall",p:{north:"tall"},s:{3:"north=tall,"}}]},{i:4,n:"south",o:[{i:0,v:"none",p:{south:"none"},s:{4:"south=none,"}},{i:1,v:"low",p:{south:"low"},s:{4:"south=low,"}},{i:2,v:"tall",p:{south:"tall"},s:{4:"south=tall,"}}]},{i:5,n:"west",o:[{i:0,v:"none",p:{west:"none"},s:{5:"west=none,"}},{i:1,v:"low",p:{west:"low"},s:{5:"west=low,"}},{i:2,v:"tall",p:{west:"tall"},s:{5:"west=tall,"}}]}],18:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]}],19:[{i:0,n:"stage",o:[{i:0,v:"0",p:{stage:"0"},s:{0:"stage=0,"}},{i:1,v:"1",p:{stage:"1"},s:{0:"stage=1,"}}]},{i:1,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{1:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{1:"age=1,"}}]},{i:2,n:"leaves",o:[{i:0,v:"none",p:{leaves:"none"},s:{2:"leaves=none,"}},{i:1,v:"small",p:{leaves:"small"},s:{2:"leaves=small,"}},{i:2,v:"large",p:{leaves:"large"},s:{2:"leaves=large,"}}]}],20:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"open",o:[{i:0,v:"false",p:{open:"false"},s:{1:"open=false,"}},{i:1,v:"true",p:{open:"true"},s:{1:"open=true,"}}]}],21:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]}],22:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"honey_level",o:[{i:0,v:"0",p:{honey_level:"0"},s:{1:"honey_level=0,"}},{i:1,v:"1",p:{honey_level:"1"},s:{1:"honey_level=1,"}},{i:2,v:"2",p:{honey_level:"2"},s:{1:"honey_level=2,"}},{i:3,v:"3",p:{honey_level:"3"},s:{1:"honey_level=3,"}},{i:4,v:"4",p:{honey_level:"4"},s:{1:"honey_level=4,"}},{i:5,v:"5",p:{honey_level:"5"},s:{1:"honey_level=5,"}}]}],23:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}}]}],24:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"attachment",o:[{i:0,v:"floor",p:{attachment:"floor"},s:{2:"attachment=floor,"}},{i:1,v:"ceiling",p:{attachment:"ceiling"},s:{2:"attachment=ceiling,"}},{i:2,v:"single_wall",p:{attachment:"single_wall"},s:{2:"attachment=single_wall,"}},{i:3,v:"double_wall",p:{attachment:"double_wall"},s:{2:"attachment=double_wall,"}}]}],25:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"tilt",o:[{i:0,v:"none",p:{tilt:"none"},s:{2:"tilt=none,"}},{i:1,v:"unstable",p:{tilt:"unstable"},s:{2:"tilt=unstable,"}},{i:2,v:"partial",p:{tilt:"partial"},s:{2:"tilt=partial,"}},{i:3,v:"full",p:{tilt:"full"},s:{2:"tilt=full,"}}]}],26:[{i:0,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{0:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{0:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{0:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{0:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{0:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{0:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{0:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{0:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{0:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{0:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{0:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{0:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{0:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{0:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{0:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{0:"rotation=15,"}}]}],27:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"occupied",o:[{i:0,v:"false",p:{occupied:"false"},s:{1:"occupied=false,"}},{i:1,v:"true",p:{occupied:"true"},s:{1:"occupied=true,"}}]},{i:2,n:"part",o:[{i:0,v:"foot",p:{part:"foot"},s:{2:"part=foot,"}},{i:1,v:"head",p:{part:"head"},s:{2:"part=head,"}}]}],28:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{1:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{1:"lit=true,"}}]},{i:2,n:"candles",o:[{i:0,v:"1",p:{candles:"1"},s:{2:"candles=1,"}},{i:1,v:"2",p:{candles:"2"},s:{2:"candles=2,"}},{i:2,v:"3",p:{candles:"3"},s:{2:"candles=3,"}},{i:3,v:"4",p:{candles:"4"},s:{2:"candles=4,"}}]}],29:[{i:0,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{0:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{0:"lit=true,"}}]}],30:[{i:0,n:"facing",o:[{i:0,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:1,v:"down",p:{facing:"down"},s:{0:"facing=down,"}},{i:2,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:4,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:5,v:"west",p:{facing:"west"},s:{0:"facing=west,"}}]}],31:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{1:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{1:"lit=true,"}}]}],32:[{i:0,n:"waterlogged",o:[{i:0,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}},{i:1,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}}]}],33:[{i:0,n:"waterlogged",o:[{i:0,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}},{i:1,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]}],34:[{i:0,n:"has_bottle_0",o:[{i:0,v:"false",p:{has_bottle_0:"false"},s:{0:"has_bottle_0=false,"}},{i:1,v:"true",p:{has_bottle_0:"true"},s:{0:"has_bottle_0=true,"}}]},{i:1,n:"has_bottle_1",o:[{i:0,v:"false",p:{has_bottle_1:"false"},s:{1:"has_bottle_1=false,"}},{i:1,v:"true",p:{has_bottle_1:"true"},s:{1:"has_bottle_1=true,"}}]},{i:2,n:"has_bottle_2",o:[{i:0,v:"false",p:{has_bottle_2:"false"},s:{2:"has_bottle_2=false,"}},{i:1,v:"true",p:{has_bottle_2:"true"},s:{2:"has_bottle_2=true,"}}]}],35:[{i:0,n:"east",o:[{i:0,v:"true",p:{east:"true"},s:{0:"east=true,"}},{i:1,v:"false",p:{east:"false"},s:{0:"east=false,"}}]},{i:1,n:"north",o:[{i:0,v:"true",p:{north:"true"},s:{1:"north=true,"}},{i:1,v:"false",p:{north:"false"},s:{1:"north=false,"}}]},{i:2,n:"south",o:[{i:0,v:"true",p:{south:"true"},s:{2:"south=true,"}},{i:1,v:"false",p:{south:"false"},s:{2:"south=false,"}}]},{i:3,n:"west",o:[{i:0,v:"true",p:{west:"true"},s:{3:"west=true,"}},{i:1,v:"false",p:{west:"false"},s:{3:"west=false,"}}]},{i:4,n:"up",o:[{i:0,v:"true",p:{up:"true"},s:{4:"up=true,"}},{i:1,v:"false",p:{up:"false"},s:{4:"up=false,"}}]},{i:5,n:"down",o:[{i:0,v:"true",p:{down:"true"},s:{5:"down=true,"}},{i:1,v:"false",p:{down:"false"},s:{5:"down=false,"}}]}],36:[{i:0,n:"drag",o:[{i:0,v:"true",p:{drag:"true"},s:{0:"drag=true,"}},{i:1,v:"false",p:{drag:"false"},s:{0:"drag=false,"}}]}],37:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{0:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{0:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{0:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{0:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{0:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{0:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{0:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{0:"age=15,"}}]}],38:[{i:0,n:"bites",o:[{i:0,v:"0",p:{bites:"0"},s:{0:"bites=0,"}},{i:1,v:"1",p:{bites:"1"},s:{0:"bites=1,"}},{i:2,v:"2",p:{bites:"2"},s:{0:"bites=2,"}},{i:3,v:"3",p:{bites:"3"},s:{0:"bites=3,"}},{i:4,v:"4",p:{bites:"4"},s:{0:"bites=4,"}},{i:5,v:"5",p:{bites:"5"},s:{0:"bites=5,"}},{i:6,v:"6",p:{bites:"6"},s:{0:"bites=6,"}}]}],39:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{2:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{2:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{2:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{2:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{2:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{2:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{2:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{2:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{2:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{2:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{2:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{2:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{2:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{2:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{2:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{2:"power=15,"}}]},{i:3,n:"sculk_sensor_phase",o:[{i:0,v:"inactive",p:{sculk_sensor_phase:"inactive"},s:{3:"sculk_sensor_phase=inactive,"}},{i:1,v:"active",p:{sculk_sensor_phase:"active"},s:{3:"sculk_sensor_phase=active,"}},{i:2,v:"cooldown",p:{sculk_sensor_phase:"cooldown"},s:{3:"sculk_sensor_phase=cooldown,"}}]}],40:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"lit",o:[{i:0,v:"true",p:{lit:"true"},s:{2:"lit=true,"}},{i:1,v:"false",p:{lit:"false"},s:{2:"lit=false,"}}]},{i:3,n:"signal_fire",o:[{i:0,v:"false",p:{signal_fire:"false"},s:{3:"signal_fire=false,"}},{i:1,v:"true",p:{signal_fire:"true"},s:{3:"signal_fire=true,"}}]}],41:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}}]}],42:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{0:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{0:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{0:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{0:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{0:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{0:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{0:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{0:"age=15,"}},{i:16,v:"16",p:{age:"16"},s:{0:"age=16,"}},{i:17,v:"17",p:{age:"17"},s:{0:"age=17,"}},{i:18,v:"18",p:{age:"18"},s:{0:"age=18,"}},{i:19,v:"19",p:{age:"19"},s:{0:"age=19,"}},{i:20,v:"20",p:{age:"20"},s:{0:"age=20,"}},{i:21,v:"21",p:{age:"21"},s:{0:"age=21,"}},{i:22,v:"22",p:{age:"22"},s:{0:"age=22,"}},{i:23,v:"23",p:{age:"23"},s:{0:"age=23,"}},{i:24,v:"24",p:{age:"24"},s:{0:"age=24,"}},{i:25,v:"25",p:{age:"25"},s:{0:"age=25,"}}]},{i:1,n:"berries",o:[{i:0,v:"false",p:{berries:"false"},s:{1:"berries=false,"}},{i:1,v:"true",p:{berries:"true"},s:{1:"berries=true,"}}]}],43:[{i:0,n:"berries",o:[{i:0,v:"false",p:{berries:"false"},s:{0:"berries=false,"}},{i:1,v:"true",p:{berries:"true"},s:{0:"berries=true,"}}]}],44:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"axis",o:[{i:0,v:"y",p:{axis:"y"},s:{1:"axis=y,"}},{i:1,v:"z",p:{axis:"z"},s:{1:"axis=z,"}},{i:2,v:"x",p:{axis:"x"},s:{1:"axis=x,"}}]}],45:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"conditional",o:[{i:0,v:"false",p:{conditional:"false"},s:{1:"conditional=false,"}},{i:1,v:"true",p:{conditional:"true"},s:{1:"conditional=true,"}}]}],46:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"type",o:[{i:0,v:"single",p:{type:"single"},s:{2:"type=single,"}},{i:1,v:"left",p:{type:"left"},s:{2:"type=left,"}},{i:2,v:"right",p:{type:"right"},s:{2:"type=right,"}}]}],47:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"slot_0_occupied",o:[{i:0,v:"false",p:{slot_0_occupied:"false"},s:{1:"slot_0_occupied=false,"}},{i:1,v:"true",p:{slot_0_occupied:"true"},s:{1:"slot_0_occupied=true,"}}]},{i:2,n:"slot_1_occupied",o:[{i:0,v:"false",p:{slot_1_occupied:"false"},s:{2:"slot_1_occupied=false,"}},{i:1,v:"true",p:{slot_1_occupied:"true"},s:{2:"slot_1_occupied=true,"}}]},{i:3,n:"slot_2_occupied",o:[{i:0,v:"false",p:{slot_2_occupied:"false"},s:{3:"slot_2_occupied=false,"}},{i:1,v:"true",p:{slot_2_occupied:"true"},s:{3:"slot_2_occupied=true,"}}]},{i:4,n:"slot_3_occupied",o:[{i:0,v:"false",p:{slot_3_occupied:"false"},s:{4:"slot_3_occupied=false,"}},{i:1,v:"true",p:{slot_3_occupied:"true"},s:{4:"slot_3_occupied=true,"}}]},{i:5,n:"slot_4_occupied",o:[{i:0,v:"false",p:{slot_4_occupied:"false"},s:{5:"slot_4_occupied=false,"}},{i:1,v:"true",p:{slot_4_occupied:"true"},s:{5:"slot_4_occupied=true,"}}]},{i:6,n:"slot_5_occupied",o:[{i:0,v:"false",p:{slot_5_occupied:"false"},s:{6:"slot_5_occupied=false,"}},{i:1,v:"true",p:{slot_5_occupied:"true"},s:{6:"slot_5_occupied=true,"}}]}],48:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}}]}],49:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{4:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{4:"up=true,"}}]},{i:5,n:"down",o:[{i:0,v:"false",p:{down:"false"},s:{5:"down=false,"}},{i:1,v:"true",p:{down:"true"},s:{5:"down=true,"}}]}],50:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{1:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{1:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{1:"age=2,"}}]}],51:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"mode",o:[{i:0,v:"compare",p:{mode:"compare"},s:{2:"mode=compare,"}},{i:1,v:"subtract",p:{mode:"subtract"},s:{2:"mode=subtract,"}}]}],52:[{i:0,n:"level",o:[{i:0,v:"0",p:{level:"0"},s:{0:"level=0,"}},{i:1,v:"1",p:{level:"1"},s:{0:"level=1,"}},{i:2,v:"2",p:{level:"2"},s:{0:"level=2,"}},{i:3,v:"3",p:{level:"3"},s:{0:"level=3,"}},{i:4,v:"4",p:{level:"4"},s:{0:"level=4,"}},{i:5,v:"5",p:{level:"5"},s:{0:"level=5,"}},{i:6,v:"6",p:{level:"6"},s:{0:"level=6,"}},{i:7,v:"7",p:{level:"7"},s:{0:"level=7,"}},{i:8,v:"8",p:{level:"8"},s:{0:"level=8,"}}]}],53:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]},{i:1,n:"lit",o:[{i:0,v:"false",p:{lit:"false"},s:{1:"lit=false,"}},{i:1,v:"true",p:{lit:"true"},s:{1:"lit=true,"}}]}],54:[{i:0,n:"orientation",o:[{i:0,v:"north_up",p:{orientation:"north_up"},s:{0:"orientation=north_up,"}},{i:1,v:"south_up",p:{orientation:"south_up"},s:{0:"orientation=south_up,"}},{i:2,v:"down_east",p:{orientation:"down_east"},s:{0:"orientation=down_east,"}},{i:3,v:"down_north",p:{orientation:"down_north"},s:{0:"orientation=down_north,"}},{i:4,v:"down_south",p:{orientation:"down_south"},s:{0:"orientation=down_south,"}},{i:5,v:"down_west",p:{orientation:"down_west"},s:{0:"orientation=down_west,"}},{i:6,v:"up_east",p:{orientation:"up_east"},s:{0:"orientation=up_east,"}},{i:7,v:"up_north",p:{orientation:"up_north"},s:{0:"orientation=up_north,"}},{i:8,v:"up_south",p:{orientation:"up_south"},s:{0:"orientation=up_south,"}},{i:9,v:"up_west",p:{orientation:"up_west"},s:{0:"orientation=up_west,"}},{i:10,v:"west_up",p:{orientation:"west_up"},s:{0:"orientation=west_up,"}},{i:11,v:"east_up",p:{orientation:"east_up"},s:{0:"orientation=east_up,"}}]},{i:1,n:"triggered",o:[{i:0,v:"false",p:{triggered:"false"},s:{1:"triggered=false,"}},{i:1,v:"true",p:{triggered:"true"},s:{1:"triggered=true,"}}]},{i:2,n:"crafting",o:[{i:0,v:"false",p:{crafting:"false"},s:{2:"crafting=false,"}},{i:1,v:"true",p:{crafting:"true"},s:{2:"crafting=true,"}}]}],55:[{i:0,n:"axis",o:[{i:0,v:"y",p:{axis:"y"},s:{0:"axis=y,"}},{i:1,v:"z",p:{axis:"z"},s:{0:"axis=z,"}},{i:2,v:"x",p:{axis:"x"},s:{0:"axis=x,"}}]},{i:1,n:"creaking",o:[{i:0,v:"disabled",p:{creaking:"disabled"},s:{1:"creaking=disabled,"}},{i:1,v:"dormant",p:{creaking:"dormant"},s:{1:"creaking=dormant,"}},{i:2,v:"active",p:{creaking:"active"},s:{1:"creaking=active,"}}]}],56:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]},{i:1,n:"rotation",o:[{i:0,v:"0",p:{rotation:"0"},s:{1:"rotation=0,"}},{i:1,v:"1",p:{rotation:"1"},s:{1:"rotation=1,"}},{i:2,v:"2",p:{rotation:"2"},s:{1:"rotation=2,"}},{i:3,v:"3",p:{rotation:"3"},s:{1:"rotation=3,"}},{i:4,v:"4",p:{rotation:"4"},s:{1:"rotation=4,"}},{i:5,v:"5",p:{rotation:"5"},s:{1:"rotation=5,"}},{i:6,v:"6",p:{rotation:"6"},s:{1:"rotation=6,"}},{i:7,v:"7",p:{rotation:"7"},s:{1:"rotation=7,"}},{i:8,v:"8",p:{rotation:"8"},s:{1:"rotation=8,"}},{i:9,v:"9",p:{rotation:"9"},s:{1:"rotation=9,"}},{i:10,v:"10",p:{rotation:"10"},s:{1:"rotation=10,"}},{i:11,v:"11",p:{rotation:"11"},s:{1:"rotation=11,"}},{i:12,v:"12",p:{rotation:"12"},s:{1:"rotation=12,"}},{i:13,v:"13",p:{rotation:"13"},s:{1:"rotation=13,"}},{i:14,v:"14",p:{rotation:"14"},s:{1:"rotation=14,"}},{i:15,v:"15",p:{rotation:"15"},s:{1:"rotation=15,"}}]}],57:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]}],58:[{i:0,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{0:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{0:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{0:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{0:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{0:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{0:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{0:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{0:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{0:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{0:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{0:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{0:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{0:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{0:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{0:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{0:"power=15,"}}]},{i:1,n:"inverted",o:[{i:0,v:"false",p:{inverted:"false"},s:{1:"inverted=false,"}},{i:1,v:"true",p:{inverted:"true"},s:{1:"inverted=true,"}}]}],59:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"cracked",o:[{i:0,v:"false",p:{cracked:"false"},s:{2:"cracked=false,"}},{i:1,v:"true",p:{cracked:"true"},s:{2:"cracked=true,"}}]}],60:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"triggered",o:[{i:0,v:"false",p:{triggered:"false"},s:{1:"triggered=false,"}},{i:1,v:"true",p:{triggered:"true"},s:{1:"triggered=true,"}}]}],61:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"eye",o:[{i:0,v:"false",p:{eye:"false"},s:{1:"eye=false,"}},{i:1,v:"true",p:{eye:"true"},s:{1:"eye=true,"}}]}],62:[{i:0,n:"moisture",o:[{i:0,v:"0",p:{moisture:"0"},s:{0:"moisture=0,"}},{i:1,v:"1",p:{moisture:"1"},s:{0:"moisture=1,"}},{i:2,v:"2",p:{moisture:"2"},s:{0:"moisture=2,"}},{i:3,v:"3",p:{moisture:"3"},s:{0:"moisture=3,"}},{i:4,v:"4",p:{moisture:"4"},s:{0:"moisture=4,"}},{i:5,v:"5",p:{moisture:"5"},s:{0:"moisture=5,"}},{i:6,v:"6",p:{moisture:"6"},s:{0:"moisture=6,"}},{i:7,v:"7",p:{moisture:"7"},s:{0:"moisture=7,"}}]}],63:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{4:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{4:"up=true,"}}]},{i:5,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{5:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{5:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{5:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{5:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{5:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{5:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{5:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{5:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{5:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{5:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{5:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{5:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{5:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{5:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{5:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{5:"age=15,"}}]}],64:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{1:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{1:"east=true,"}}]},{i:2,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{2:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{2:"north=true,"}}]},{i:3,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{3:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{3:"south=true,"}}]},{i:4,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{4:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{4:"west=true,"}}]},{i:5,n:"down",o:[{i:0,v:"false",p:{down:"false"},s:{5:"down=false,"}},{i:1,v:"true",p:{down:"true"},s:{5:"down=true,"}}]},{i:6,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{6:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{6:"up=true,"}}]}],65:[{i:0,n:"snowy",o:[{i:0,v:"false",p:{snowy:"false"},s:{0:"snowy=false,"}},{i:1,v:"true",p:{snowy:"true"},s:{0:"snowy=true,"}}]}],66:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"face",o:[{i:0,v:"wall",p:{face:"wall"},s:{1:"face=wall,"}},{i:1,v:"ceiling",p:{face:"ceiling"},s:{1:"face=ceiling,"}},{i:2,v:"floor",p:{face:"floor"},s:{1:"face=floor,"}}]}],67:[{i:0,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{0:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{0:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{0:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{0:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{0:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{0:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{0:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{0:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{0:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{0:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{0:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{0:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{0:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{0:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{0:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{0:"power=15,"}}]}],68:[{i:0,n:"enabled",o:[{i:0,v:"true",p:{enabled:"true"},s:{0:"enabled=true,"}},{i:1,v:"false",p:{enabled:"false"},s:{0:"enabled=false,"}}]},{i:1,n:"facing",o:[{i:0,v:"down",p:{facing:"down"},s:{1:"facing=down,"}},{i:1,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:2,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:4,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]}],69:[{i:0,n:"orientation",o:[{i:0,v:"north_up",p:{orientation:"north_up"},s:{0:"orientation=north_up,"}},{i:1,v:"south_up",p:{orientation:"south_up"},s:{0:"orientation=south_up,"}},{i:2,v:"down_east",p:{orientation:"down_east"},s:{0:"orientation=down_east,"}},{i:3,v:"down_north",p:{orientation:"down_north"},s:{0:"orientation=down_north,"}},{i:4,v:"down_south",p:{orientation:"down_south"},s:{0:"orientation=down_south,"}},{i:5,v:"down_west",p:{orientation:"down_west"},s:{0:"orientation=down_west,"}},{i:6,v:"up_east",p:{orientation:"up_east"},s:{0:"orientation=up_east,"}},{i:7,v:"up_north",p:{orientation:"up_north"},s:{0:"orientation=up_north,"}},{i:8,v:"up_south",p:{orientation:"up_south"},s:{0:"orientation=up_south,"}},{i:9,v:"up_west",p:{orientation:"up_west"},s:{0:"orientation=up_west,"}},{i:10,v:"west_up",p:{orientation:"west_up"},s:{0:"orientation=west_up,"}},{i:11,v:"east_up",p:{orientation:"east_up"},s:{0:"orientation=east_up,"}}]}],70:[{i:0,n:"has_record",o:[{i:0,v:"false",p:{has_record:"false"},s:{0:"has_record=false,"}},{i:1,v:"true",p:{has_record:"true"},s:{0:"has_record=true,"}}]}],71:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{0:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{0:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{0:"age=4,"}},{i:5,v:"5",p:{age:"5"},s:{0:"age=5,"}},{i:6,v:"6",p:{age:"6"},s:{0:"age=6,"}},{i:7,v:"7",p:{age:"7"},s:{0:"age=7,"}},{i:8,v:"8",p:{age:"8"},s:{0:"age=8,"}},{i:9,v:"9",p:{age:"9"},s:{0:"age=9,"}},{i:10,v:"10",p:{age:"10"},s:{0:"age=10,"}},{i:11,v:"11",p:{age:"11"},s:{0:"age=11,"}},{i:12,v:"12",p:{age:"12"},s:{0:"age=12,"}},{i:13,v:"13",p:{age:"13"},s:{0:"age=13,"}},{i:14,v:"14",p:{age:"14"},s:{0:"age=14,"}},{i:15,v:"15",p:{age:"15"},s:{0:"age=15,"}},{i:16,v:"16",p:{age:"16"},s:{0:"age=16,"}},{i:17,v:"17",p:{age:"17"},s:{0:"age=17,"}},{i:18,v:"18",p:{age:"18"},s:{0:"age=18,"}},{i:19,v:"19",p:{age:"19"},s:{0:"age=19,"}},{i:20,v:"20",p:{age:"20"},s:{0:"age=20,"}},{i:21,v:"21",p:{age:"21"},s:{0:"age=21,"}},{i:22,v:"22",p:{age:"22"},s:{0:"age=22,"}},{i:23,v:"23",p:{age:"23"},s:{0:"age=23,"}},{i:24,v:"24",p:{age:"24"},s:{0:"age=24,"}},{i:25,v:"25",p:{age:"25"},s:{0:"age=25,"}}]}],72:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"hanging",o:[{i:0,v:"false",p:{hanging:"false"},s:{1:"hanging=false,"}},{i:1,v:"true",p:{hanging:"true"},s:{1:"hanging=true,"}}]}],73:[{i:0,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{0:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{0:"half=upper,"}}]}],74:[{i:0,n:"level",o:[{i:0,v:"0",p:{level:"0"},s:{0:"level=0,"}},{i:1,v:"1",p:{level:"1"},s:{0:"level=1,"}},{i:2,v:"2",p:{level:"2"},s:{0:"level=2,"}},{i:3,v:"3",p:{level:"3"},s:{0:"level=3,"}},{i:4,v:"4",p:{level:"4"},s:{0:"level=4,"}},{i:5,v:"5",p:{level:"5"},s:{0:"level=5,"}},{i:6,v:"6",p:{level:"6"},s:{0:"level=6,"}},{i:7,v:"7",p:{level:"7"},s:{0:"level=7,"}},{i:8,v:"8",p:{level:"8"},s:{0:"level=8,"}},{i:9,v:"9",p:{level:"9"},s:{0:"level=9,"}},{i:10,v:"10",p:{level:"10"},s:{0:"level=10,"}},{i:11,v:"11",p:{level:"11"},s:{0:"level=11,"}},{i:12,v:"12",p:{level:"12"},s:{0:"level=12,"}},{i:13,v:"13",p:{level:"13"},s:{0:"level=13,"}},{i:14,v:"14",p:{level:"14"},s:{0:"level=14,"}},{i:15,v:"15",p:{level:"15"},s:{0:"level=15,"}}]}],75:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"has_book",o:[{i:0,v:"false",p:{has_book:"false"},s:{2:"has_book=false,"}},{i:1,v:"true",p:{has_book:"true"},s:{2:"has_book=true,"}}]}],76:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"level",o:[{i:0,v:"15",p:{level:"15"},s:{1:"level=15,"}},{i:1,v:"0",p:{level:"0"},s:{1:"level=0,"}},{i:2,v:"1",p:{level:"1"},s:{1:"level=1,"}},{i:3,v:"2",p:{level:"2"},s:{1:"level=2,"}},{i:4,v:"3",p:{level:"3"},s:{1:"level=3,"}},{i:5,v:"4",p:{level:"4"},s:{1:"level=4,"}},{i:6,v:"5",p:{level:"5"},s:{1:"level=5,"}},{i:7,v:"6",p:{level:"6"},s:{1:"level=6,"}},{i:8,v:"7",p:{level:"7"},s:{1:"level=7,"}},{i:9,v:"8",p:{level:"8"},s:{1:"level=8,"}},{i:10,v:"9",p:{level:"9"},s:{1:"level=9,"}},{i:11,v:"10",p:{level:"10"},s:{1:"level=10,"}},{i:12,v:"11",p:{level:"11"},s:{1:"level=11,"}},{i:13,v:"12",p:{level:"12"},s:{1:"level=12,"}},{i:14,v:"13",p:{level:"13"},s:{1:"level=13,"}},{i:15,v:"14",p:{level:"14"},s:{1:"level=14,"}}]}],77:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"up",p:{facing:"up"},s:{1:"facing=up,"}},{i:1,v:"down",p:{facing:"down"},s:{1:"facing=down,"}},{i:2,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}},{i:4,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:5,v:"west",p:{facing:"west"},s:{1:"facing=west,"}}]},{i:2,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{2:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{2:"powered=true,"}}]}],78:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"hanging",o:[{i:0,v:"false",p:{hanging:"false"},s:{1:"hanging=false,"}},{i:1,v:"true",p:{hanging:"true"},s:{1:"hanging=true,"}}]},{i:2,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{2:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{2:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{2:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{2:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{2:"age=4,"}}]},{i:3,n:"stage",o:[{i:0,v:"0",p:{stage:"0"},s:{3:"stage=0,"}},{i:1,v:"1",p:{stage:"1"},s:{3:"stage=1,"}}]}],79:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"type",o:[{i:0,v:"normal",p:{type:"normal"},s:{1:"type=normal,"}},{i:1,v:"sticky",p:{type:"sticky"},s:{1:"type=sticky,"}}]}],80:[{i:0,n:"axis",o:[{i:0,v:"x",p:{axis:"x"},s:{0:"axis=x,"}},{i:1,v:"z",p:{axis:"z"},s:{0:"axis=z,"}}]}],81:[{i:0,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{0:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{0:"powered=true,"}}]},{i:1,n:"instrument",o:[{i:0,v:"harp",p:{instrument:"harp"},s:{1:"instrument=harp,"}},{i:1,v:"basedrum",p:{instrument:"basedrum"},s:{1:"instrument=basedrum,"}},{i:2,v:"snare",p:{instrument:"snare"},s:{1:"instrument=snare,"}},{i:3,v:"hat",p:{instrument:"hat"},s:{1:"instrument=hat,"}},{i:4,v:"bass",p:{instrument:"bass"},s:{1:"instrument=bass,"}},{i:5,v:"flute",p:{instrument:"flute"},s:{1:"instrument=flute,"}},{i:6,v:"bell",p:{instrument:"bell"},s:{1:"instrument=bell,"}},{i:7,v:"guitar",p:{instrument:"guitar"},s:{1:"instrument=guitar,"}},{i:8,v:"chime",p:{instrument:"chime"},s:{1:"instrument=chime,"}},{i:9,v:"xylophone",p:{instrument:"xylophone"},s:{1:"instrument=xylophone,"}},{i:10,v:"iron_xylophone",p:{instrument:"iron_xylophone"},s:{1:"instrument=iron_xylophone,"}},{i:11,v:"cow_bell",p:{instrument:"cow_bell"},s:{1:"instrument=cow_bell,"}},{i:12,v:"didgeridoo",p:{instrument:"didgeridoo"},s:{1:"instrument=didgeridoo,"}},{i:13,v:"bit",p:{instrument:"bit"},s:{1:"instrument=bit,"}},{i:14,v:"banjo",p:{instrument:"banjo"},s:{1:"instrument=banjo,"}},{i:15,v:"pling",p:{instrument:"pling"},s:{1:"instrument=pling,"}},{i:16,v:"zombie",p:{instrument:"zombie"},s:{1:"instrument=zombie,"}},{i:17,v:"skeleton",p:{instrument:"skeleton"},s:{1:"instrument=skeleton,"}},{i:18,v:"creeper",p:{instrument:"creeper"},s:{1:"instrument=creeper,"}},{i:19,v:"dragon",p:{instrument:"dragon"},s:{1:"instrument=dragon,"}},{i:20,v:"wither_skeleton",p:{instrument:"wither_skeleton"},s:{1:"instrument=wither_skeleton,"}},{i:21,v:"piglin",p:{instrument:"piglin"},s:{1:"instrument=piglin,"}},{i:22,v:"custom_head",p:{instrument:"custom_head"},s:{1:"instrument=custom_head,"}}]},{i:2,n:"note",o:[{i:0,v:"0",p:{note:"0"},s:{2:"note=0,"}},{i:1,v:"1",p:{note:"1"},s:{2:"note=1,"}},{i:2,v:"2",p:{note:"2"},s:{2:"note=2,"}},{i:3,v:"3",p:{note:"3"},s:{2:"note=3,"}},{i:4,v:"4",p:{note:"4"},s:{2:"note=4,"}},{i:5,v:"5",p:{note:"5"},s:{2:"note=5,"}},{i:6,v:"6",p:{note:"6"},s:{2:"note=6,"}},{i:7,v:"7",p:{note:"7"},s:{2:"note=7,"}},{i:8,v:"8",p:{note:"8"},s:{2:"note=8,"}},{i:9,v:"9",p:{note:"9"},s:{2:"note=9,"}},{i:10,v:"10",p:{note:"10"},s:{2:"note=10,"}},{i:11,v:"11",p:{note:"11"},s:{2:"note=11,"}},{i:12,v:"12",p:{note:"12"},s:{2:"note=12,"}},{i:13,v:"13",p:{note:"13"},s:{2:"note=13,"}},{i:14,v:"14",p:{note:"14"},s:{2:"note=14,"}},{i:15,v:"15",p:{note:"15"},s:{2:"note=15,"}},{i:16,v:"16",p:{note:"16"},s:{2:"note=16,"}},{i:17,v:"17",p:{note:"17"},s:{2:"note=17,"}},{i:18,v:"18",p:{note:"18"},s:{2:"note=18,"}},{i:19,v:"19",p:{note:"19"},s:{2:"note=19,"}},{i:20,v:"20",p:{note:"20"},s:{2:"note=20,"}},{i:21,v:"21",p:{note:"21"},s:{2:"note=21,"}},{i:22,v:"22",p:{note:"22"},s:{2:"note=22,"}},{i:23,v:"23",p:{note:"23"},s:{2:"note=23,"}},{i:24,v:"24",p:{note:"24"},s:{2:"note=24,"}}]}],82:[{i:0,n:"facing",o:[{i:0,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:1,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:2,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:3,v:"down",p:{facing:"down"},s:{0:"facing=down,"}},{i:4,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:5,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]}],83:[{i:0,n:"tip",o:[{i:0,v:"true",p:{tip:"true"},s:{0:"tip=true,"}},{i:1,v:"false",p:{tip:"false"},s:{0:"tip=false,"}}]}],84:[{i:0,n:"bottom",o:[{i:0,v:"true",p:{bottom:"true"},s:{0:"bottom=true,"}},{i:1,v:"false",p:{bottom:"false"},s:{0:"bottom=false,"}}]},{i:1,n:"east",o:[{i:0,v:"none",p:{east:"none"},s:{1:"east=none,"}},{i:1,v:"low",p:{east:"low"},s:{1:"east=low,"}},{i:2,v:"tall",p:{east:"tall"},s:{1:"east=tall,"}}]},{i:2,n:"north",o:[{i:0,v:"none",p:{north:"none"},s:{2:"north=none,"}},{i:1,v:"low",p:{north:"low"},s:{2:"north=low,"}},{i:2,v:"tall",p:{north:"tall"},s:{2:"north=tall,"}}]},{i:3,n:"south",o:[{i:0,v:"none",p:{south:"none"},s:{3:"south=none,"}},{i:1,v:"low",p:{south:"low"},s:{3:"south=low,"}},{i:2,v:"tall",p:{south:"tall"},s:{3:"south=tall,"}}]},{i:4,n:"west",o:[{i:0,v:"none",p:{west:"none"},s:{4:"west=none,"}},{i:1,v:"low",p:{west:"low"},s:{4:"west=low,"}},{i:2,v:"tall",p:{west:"tall"},s:{4:"west=tall,"}}]}],85:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"flower_amount",o:[{i:0,v:"1",p:{flower_amount:"1"},s:{1:"flower_amount=1,"}},{i:1,v:"2",p:{flower_amount:"2"},s:{1:"flower_amount=2,"}},{i:2,v:"3",p:{flower_amount:"3"},s:{1:"flower_amount=3,"}},{i:3,v:"4",p:{flower_amount:"4"},s:{1:"flower_amount=4,"}}]}],86:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"extended",o:[{i:0,v:"false",p:{extended:"false"},s:{1:"extended=false,"}},{i:1,v:"true",p:{extended:"true"},s:{1:"extended=true,"}}]}],87:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"east",p:{facing:"east"},s:{0:"facing=east,"}},{i:2,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:3,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:4,v:"up",p:{facing:"up"},s:{0:"facing=up,"}},{i:5,v:"down",p:{facing:"down"},s:{0:"facing=down,"}}]},{i:1,n:"type",o:[{i:0,v:"normal",p:{type:"normal"},s:{1:"type=normal,"}},{i:1,v:"sticky",p:{type:"sticky"},s:{1:"type=sticky,"}}]},{i:2,n:"short",o:[{i:0,v:"false",p:{short:"false"},s:{2:"short=false,"}},{i:1,v:"true",p:{short:"true"},s:{2:"short=true,"}}]}],88:[{i:0,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{0:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{0:"half=upper,"}}]},{i:1,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{1:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{1:"age=1,"}},{i:2,v:"2",p:{age:"2"},s:{1:"age=2,"}},{i:3,v:"3",p:{age:"3"},s:{1:"age=3,"}},{i:4,v:"4",p:{age:"4"},s:{1:"age=4,"}}]}],89:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"thickness",o:[{i:0,v:"tip",p:{thickness:"tip"},s:{1:"thickness=tip,"}},{i:1,v:"frustum",p:{thickness:"frustum"},s:{1:"thickness=frustum,"}},{i:2,v:"middle",p:{thickness:"middle"},s:{1:"thickness=middle,"}},{i:3,v:"base",p:{thickness:"base"},s:{1:"thickness=base,"}},{i:4,v:"tip_merge",p:{thickness:"tip_merge"},s:{1:"thickness=tip_merge,"}}]},{i:2,n:"vertical_direction",o:[{i:0,v:"up",p:{vertical_direction:"up"},s:{2:"vertical_direction=up,"}},{i:1,v:"down",p:{vertical_direction:"down"},s:{2:"vertical_direction=down,"}}]}],90:[{i:0,n:"level",o:[{i:0,v:"1",p:{level:"1"},s:{0:"level=1,"}},{i:1,v:"2",p:{level:"2"},s:{0:"level=2,"}},{i:2,v:"3",p:{level:"3"},s:{0:"level=3,"}}]}],91:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"shape",o:[{i:0,v:"north_south",p:{shape:"north_south"},s:{1:"shape=north_south,"}},{i:1,v:"east_west",p:{shape:"east_west"},s:{1:"shape=east_west,"}},{i:2,v:"ascending_east",p:{shape:"ascending_east"},s:{1:"shape=ascending_east,"}},{i:3,v:"ascending_west",p:{shape:"ascending_west"},s:{1:"shape=ascending_west,"}},{i:4,v:"ascending_north",p:{shape:"ascending_north"},s:{1:"shape=ascending_north,"}},{i:5,v:"ascending_south",p:{shape:"ascending_south"},s:{1:"shape=ascending_south,"}},{i:6,v:"south_east",p:{shape:"south_east"},s:{1:"shape=south_east,"}},{i:7,v:"south_west",p:{shape:"south_west"},s:{1:"shape=south_west,"}},{i:8,v:"north_west",p:{shape:"north_west"},s:{1:"shape=north_west,"}},{i:9,v:"north_east",p:{shape:"north_east"},s:{1:"shape=north_east,"}}]}],92:[{i:0,n:"lit",o:[{i:0,v:"true",p:{lit:"true"},s:{0:"lit=true,"}},{i:1,v:"false",p:{lit:"false"},s:{0:"lit=false,"}}]}],93:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"lit",o:[{i:0,v:"true",p:{lit:"true"},s:{1:"lit=true,"}},{i:1,v:"false",p:{lit:"false"},s:{1:"lit=false,"}}]}],94:[{i:0,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{0:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{0:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{0:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{0:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{0:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{0:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{0:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{0:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{0:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{0:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{0:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{0:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{0:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{0:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{0:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{0:"power=15,"}}]},{i:1,n:"east",o:[{i:0,v:"none",p:{east:"none"},s:{1:"east=none,"}},{i:1,v:"up",p:{east:"up"},s:{1:"east=up,"}},{i:2,v:"side",p:{east:"side"},s:{1:"east=side,"}}]},{i:2,n:"north",o:[{i:0,v:"none",p:{north:"none"},s:{2:"north=none,"}},{i:1,v:"up",p:{north:"up"},s:{2:"north=up,"}},{i:2,v:"side",p:{north:"side"},s:{2:"north=side,"}}]},{i:3,n:"south",o:[{i:0,v:"none",p:{south:"none"},s:{3:"south=none,"}},{i:1,v:"up",p:{south:"up"},s:{3:"south=up,"}},{i:2,v:"side",p:{south:"side"},s:{3:"south=side,"}}]},{i:4,n:"west",o:[{i:0,v:"none",p:{west:"none"},s:{4:"west=none,"}},{i:1,v:"up",p:{west:"up"},s:{4:"west=up,"}},{i:2,v:"side",p:{west:"side"},s:{4:"west=side,"}}]}],95:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"delay",o:[{i:0,v:"1",p:{delay:"1"},s:{2:"delay=1,"}},{i:1,v:"2",p:{delay:"2"},s:{2:"delay=2,"}},{i:2,v:"3",p:{delay:"3"},s:{2:"delay=3,"}},{i:3,v:"4",p:{delay:"4"},s:{2:"delay=4,"}}]},{i:3,n:"locked",o:[{i:0,v:"false",p:{locked:"false"},s:{3:"locked=false,"}},{i:1,v:"true",p:{locked:"true"},s:{3:"locked=true,"}}]}],96:[{i:0,n:"charges",o:[{i:0,v:"0",p:{charges:"0"},s:{0:"charges=0,"}},{i:1,v:"1",p:{charges:"1"},s:{0:"charges=1,"}},{i:2,v:"2",p:{charges:"2"},s:{0:"charges=2,"}},{i:3,v:"3",p:{charges:"3"},s:{0:"charges=3,"}},{i:4,v:"4",p:{charges:"4"},s:{0:"charges=4,"}}]}],97:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"bottom",o:[{i:0,v:"false",p:{bottom:"false"},s:{1:"bottom=false,"}},{i:1,v:"true",p:{bottom:"true"},s:{1:"bottom=true,"}}]},{i:2,n:"distance",o:[{i:0,v:"7",p:{distance:"7"},s:{2:"distance=7,"}},{i:1,v:"0",p:{distance:"0"},s:{2:"distance=0,"}},{i:2,v:"1",p:{distance:"1"},s:{2:"distance=1,"}},{i:3,v:"2",p:{distance:"2"},s:{2:"distance=2,"}},{i:4,v:"3",p:{distance:"3"},s:{2:"distance=3,"}},{i:5,v:"4",p:{distance:"4"},s:{2:"distance=4,"}},{i:6,v:"5",p:{distance:"5"},s:{2:"distance=5,"}},{i:7,v:"6",p:{distance:"6"},s:{2:"distance=6,"}}]}],98:[{i:0,n:"bloom",o:[{i:0,v:"false",p:{bloom:"false"},s:{0:"bloom=false,"}},{i:1,v:"true",p:{bloom:"true"},s:{0:"bloom=true,"}}]}],99:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"power",o:[{i:0,v:"0",p:{power:"0"},s:{1:"power=0,"}},{i:1,v:"1",p:{power:"1"},s:{1:"power=1,"}},{i:2,v:"2",p:{power:"2"},s:{1:"power=2,"}},{i:3,v:"3",p:{power:"3"},s:{1:"power=3,"}},{i:4,v:"4",p:{power:"4"},s:{1:"power=4,"}},{i:5,v:"5",p:{power:"5"},s:{1:"power=5,"}},{i:6,v:"6",p:{power:"6"},s:{1:"power=6,"}},{i:7,v:"7",p:{power:"7"},s:{1:"power=7,"}},{i:8,v:"8",p:{power:"8"},s:{1:"power=8,"}},{i:9,v:"9",p:{power:"9"},s:{1:"power=9,"}},{i:10,v:"10",p:{power:"10"},s:{1:"power=10,"}},{i:11,v:"11",p:{power:"11"},s:{1:"power=11,"}},{i:12,v:"12",p:{power:"12"},s:{1:"power=12,"}},{i:13,v:"13",p:{power:"13"},s:{1:"power=13,"}},{i:14,v:"14",p:{power:"14"},s:{1:"power=14,"}},{i:15,v:"15",p:{power:"15"},s:{1:"power=15,"}}]},{i:2,n:"sculk_sensor_phase",o:[{i:0,v:"inactive",p:{sculk_sensor_phase:"inactive"},s:{2:"sculk_sensor_phase=inactive,"}},{i:1,v:"active",p:{sculk_sensor_phase:"active"},s:{2:"sculk_sensor_phase=active,"}},{i:2,v:"cooldown",p:{sculk_sensor_phase:"cooldown"},s:{2:"sculk_sensor_phase=cooldown,"}}]}],100:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"can_summon",o:[{i:0,v:"false",p:{can_summon:"false"},s:{1:"can_summon=false,"}},{i:1,v:"true",p:{can_summon:"true"},s:{1:"can_summon=true,"}}]},{i:2,n:"shrieking",o:[{i:0,v:"false",p:{shrieking:"false"},s:{2:"shrieking=false,"}},{i:1,v:"true",p:{shrieking:"true"},s:{2:"shrieking=true,"}}]}],101:[{i:0,n:"waterlogged",o:[{i:0,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}},{i:1,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}}]},{i:1,n:"pickles",o:[{i:0,v:"1",p:{pickles:"1"},s:{1:"pickles=1,"}},{i:1,v:"2",p:{pickles:"2"},s:{1:"pickles=2,"}},{i:2,v:"3",p:{pickles:"3"},s:{1:"pickles=3,"}},{i:3,v:"4",p:{pickles:"4"},s:{1:"pickles=4,"}}]}],102:[{i:0,n:"waterlogged",o:[{i:0,v:"false",p:{waterlogged:"false"},s:{0:"waterlogged=false,"}},{i:1,v:"true",p:{waterlogged:"true"},s:{0:"waterlogged=true,"}}]},{i:1,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{1:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{1:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{1:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{1:"facing=east,"}}]},{i:2,n:"half",o:[{i:0,v:"lower",p:{half:"lower"},s:{2:"half=lower,"}},{i:1,v:"upper",p:{half:"upper"},s:{2:"half=upper,"}}]}],103:[{i:0,n:"hatch",o:[{i:0,v:"0",p:{hatch:"0"},s:{0:"hatch=0,"}},{i:1,v:"1",p:{hatch:"1"},s:{0:"hatch=1,"}},{i:2,v:"2",p:{hatch:"2"},s:{0:"hatch=2,"}}]}],104:[{i:0,n:"layers",o:[{i:0,v:"1",p:{layers:"1"},s:{0:"layers=1,"}},{i:1,v:"2",p:{layers:"2"},s:{0:"layers=2,"}},{i:2,v:"3",p:{layers:"3"},s:{0:"layers=3,"}},{i:3,v:"4",p:{layers:"4"},s:{0:"layers=4,"}},{i:4,v:"5",p:{layers:"5"},s:{0:"layers=5,"}},{i:5,v:"6",p:{layers:"6"},s:{0:"layers=6,"}},{i:6,v:"7",p:{layers:"7"},s:{0:"layers=7,"}},{i:7,v:"8",p:{layers:"8"},s:{0:"layers=8,"}}]}],105:[{i:0,n:"mode",o:[{i:0,v:"load",p:{mode:"load"},s:{0:"mode=load,"}},{i:1,v:"corner",p:{mode:"corner"},s:{0:"mode=corner,"}},{i:2,v:"data",p:{mode:"data"},s:{0:"mode=data,"}},{i:3,v:"save",p:{mode:"save"},s:{0:"mode=save,"}}]}],106:[{i:0,n:"dusted",o:[{i:0,v:"0",p:{dusted:"0"},s:{0:"dusted=0,"}},{i:1,v:"1",p:{dusted:"1"},s:{0:"dusted=1,"}},{i:2,v:"2",p:{dusted:"2"},s:{0:"dusted=2,"}},{i:3,v:"3",p:{dusted:"3"},s:{0:"dusted=3,"}}]}],107:[{i:0,n:"unstable",o:[{i:0,v:"false",p:{unstable:"false"},s:{0:"unstable=false,"}},{i:1,v:"true",p:{unstable:"true"},s:{0:"unstable=true,"}}]}],108:[{i:0,n:"age",o:[{i:0,v:"0",p:{age:"0"},s:{0:"age=0,"}},{i:1,v:"1",p:{age:"1"},s:{0:"age=1,"}}]}],109:[{i:0,n:"ominous",o:[{i:0,v:"false",p:{ominous:"false"},s:{0:"ominous=false,"}},{i:1,v:"true",p:{ominous:"true"},s:{0:"ominous=true,"}}]},{i:1,n:"trial_spawner_state",o:[{i:0,v:"inactive",p:{trial_spawner_state:"inactive"},s:{1:"trial_spawner_state=inactive,"}},{i:1,v:"waiting_for_players",p:{trial_spawner_state:"waiting_for_players"},s:{1:"trial_spawner_state=waiting_for_players,"}},{i:2,v:"active",p:{trial_spawner_state:"active"},s:{1:"trial_spawner_state=active,"}},{i:3,v:"waiting_for_reward_ejection",p:{trial_spawner_state:"waiting_for_reward_ejection"},s:{1:"trial_spawner_state=waiting_for_reward_ejection,"}},{i:4,v:"ejecting_reward",p:{trial_spawner_state:"ejecting_reward"},s:{1:"trial_spawner_state=ejecting_reward,"}},{i:5,v:"cooldown",p:{trial_spawner_state:"cooldown"},s:{1:"trial_spawner_state=cooldown,"}}]}],110:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"attached",o:[{i:0,v:"false",p:{attached:"false"},s:{4:"attached=false,"}},{i:1,v:"true",p:{attached:"true"},s:{4:"attached=true,"}}]},{i:5,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{5:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{5:"powered=true,"}}]},{i:6,n:"disarmed",o:[{i:0,v:"false",p:{disarmed:"false"},s:{6:"disarmed=false,"}},{i:1,v:"true",p:{disarmed:"true"},s:{6:"disarmed=true,"}}]}],111:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"powered",o:[{i:0,v:"false",p:{powered:"false"},s:{1:"powered=false,"}},{i:1,v:"true",p:{powered:"true"},s:{1:"powered=true,"}}]},{i:2,n:"attached",o:[{i:0,v:"false",p:{attached:"false"},s:{2:"attached=false,"}},{i:1,v:"true",p:{attached:"true"},s:{2:"attached=true,"}}]}],112:[{i:0,n:"hatch",o:[{i:0,v:"0",p:{hatch:"0"},s:{0:"hatch=0,"}},{i:1,v:"1",p:{hatch:"1"},s:{0:"hatch=1,"}},{i:2,v:"2",p:{hatch:"2"},s:{0:"hatch=2,"}}]},{i:1,n:"eggs",o:[{i:0,v:"1",p:{eggs:"1"},s:{1:"eggs=1,"}},{i:1,v:"2",p:{eggs:"2"},s:{1:"eggs=2,"}},{i:2,v:"3",p:{eggs:"3"},s:{1:"eggs=3,"}},{i:3,v:"4",p:{eggs:"4"},s:{1:"eggs=4,"}}]}],113:[{i:0,n:"facing",o:[{i:0,v:"north",p:{facing:"north"},s:{0:"facing=north,"}},{i:1,v:"south",p:{facing:"south"},s:{0:"facing=south,"}},{i:2,v:"west",p:{facing:"west"},s:{0:"facing=west,"}},{i:3,v:"east",p:{facing:"east"},s:{0:"facing=east,"}}]},{i:1,n:"ominous",o:[{i:0,v:"false",p:{ominous:"false"},s:{1:"ominous=false,"}},{i:1,v:"true",p:{ominous:"true"},s:{1:"ominous=true,"}}]},{i:2,n:"vault_state",o:[{i:0,v:"inactive",p:{vault_state:"inactive"},s:{2:"vault_state=inactive,"}},{i:1,v:"active",p:{vault_state:"active"},s:{2:"vault_state=active,"}},{i:2,v:"unlocking",p:{vault_state:"unlocking"},s:{2:"vault_state=unlocking,"}},{i:3,v:"ejecting",p:{vault_state:"ejecting"},s:{2:"vault_state=ejecting,"}}]}],114:[{i:0,n:"east",o:[{i:0,v:"false",p:{east:"false"},s:{0:"east=false,"}},{i:1,v:"true",p:{east:"true"},s:{0:"east=true,"}}]},{i:1,n:"north",o:[{i:0,v:"false",p:{north:"false"},s:{1:"north=false,"}},{i:1,v:"true",p:{north:"true"},s:{1:"north=true,"}}]},{i:2,n:"south",o:[{i:0,v:"false",p:{south:"false"},s:{2:"south=false,"}},{i:1,v:"true",p:{south:"true"},s:{2:"south=true,"}}]},{i:3,n:"west",o:[{i:0,v:"false",p:{west:"false"},s:{3:"west=false,"}},{i:1,v:"true",p:{west:"true"},s:{3:"west=true,"}}]},{i:4,n:"up",o:[{i:0,v:"false",p:{up:"false"},s:{4:"up=false,"}},{i:1,v:"true",p:{up:"true"},s:{4:"up=true,"}}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/function/load/items_table.mcfunction b/datapacks/Bookshelf/data/bs.block/function/load/items_table.mcfunction index f38eb48af2..a4ff8869b9 100644 --- a/datapacks/Bookshelf/data/bs.block/function/load/items_table.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/load/items_table.mcfunction @@ -14,4 +14,4 @@ # ------------------------------------------------------------------------------------------------------------ # This file was automatically generated, do not edit it -data modify storage bs:const block.items set value {"minecraft:vine":{type:"minecraft:vine",item:"minecraft:vine",group:111},"minecraft:vault":{type:"minecraft:vault",item:"minecraft:vault",group:110},"minecraft:turtle_egg":{type:"minecraft:turtle_egg",item:"minecraft:turtle_egg",group:109},"minecraft:tripwire_hook":{type:"minecraft:tripwire_hook",item:"minecraft:tripwire_hook",group:108},"minecraft:string":{type:"minecraft:tripwire",item:"minecraft:string",group:107},"minecraft:trial_spawner":{type:"minecraft:trial_spawner",item:"minecraft:trial_spawner",group:106},"minecraft:torchflower_seeds":{type:"minecraft:torchflower_crop",item:"minecraft:torchflower_seeds",group:105},"minecraft:tnt":{type:"minecraft:tnt",item:"minecraft:tnt",group:104},"minecraft:suspicious_sand":{type:"minecraft:suspicious_sand",item:"minecraft:suspicious_sand",group:103},"minecraft:suspicious_gravel":{type:"minecraft:suspicious_gravel",item:"minecraft:suspicious_gravel",group:103},"minecraft:structure_block":{type:"minecraft:structure_block",item:"minecraft:structure_block",group:102},"minecraft:snow":{type:"minecraft:snow",item:"minecraft:snow",group:101},"minecraft:sniffer_egg":{type:"minecraft:sniffer_egg",item:"minecraft:sniffer_egg",group:100},"minecraft:small_dripleaf":{type:"minecraft:small_dripleaf",item:"minecraft:small_dripleaf",group:99},"minecraft:sea_pickle":{type:"minecraft:sea_pickle",item:"minecraft:sea_pickle",group:98},"minecraft:sculk_shrieker":{type:"minecraft:sculk_shrieker",item:"minecraft:sculk_shrieker",group:97},"minecraft:sculk_sensor":{type:"minecraft:sculk_sensor",item:"minecraft:sculk_sensor",group:96},"minecraft:sculk_catalyst":{type:"minecraft:sculk_catalyst",item:"minecraft:sculk_catalyst",group:95},"minecraft:scaffolding":{type:"minecraft:scaffolding",item:"minecraft:scaffolding",group:94},"minecraft:respawn_anchor":{type:"minecraft:respawn_anchor",item:"minecraft:respawn_anchor",group:93},"minecraft:repeater":{type:"minecraft:repeater",item:"minecraft:repeater",group:92},"minecraft:redstone":{type:"minecraft:redstone_wire",item:"minecraft:redstone",group:91},"minecraft:redstone_torch":{type:"minecraft:redstone_torch",item:"minecraft:redstone_torch",group:89},"minecraft:rail":{type:"minecraft:rail",item:"minecraft:rail",group:88},"minecraft:cauldron":{type:"minecraft:cauldron",item:"minecraft:cauldron",group:0},"minecraft:pointed_dripstone":{type:"minecraft:pointed_dripstone",item:"minecraft:pointed_dripstone",group:86},"minecraft:pitcher_pod":{type:"minecraft:pitcher_crop",item:"minecraft:pitcher_pod",group:85},None:{type:"minecraft:bamboo_sapling",group:0},"minecraft:sticky_piston":{type:"minecraft:sticky_piston",item:"minecraft:sticky_piston",group:83},"minecraft:piston":{type:"minecraft:piston",item:"minecraft:piston",group:83},"minecraft:pink_petals":{type:"minecraft:pink_petals",item:"minecraft:pink_petals",group:82},"minecraft:observer":{type:"minecraft:observer",item:"minecraft:observer",group:81},"minecraft:note_block":{type:"minecraft:note_block",item:"minecraft:note_block",group:80},"minecraft:mangrove_propagule":{type:"minecraft:mangrove_propagule",item:"minecraft:mangrove_propagule",group:77},"minecraft:lightning_rod":{type:"minecraft:lightning_rod",item:"minecraft:lightning_rod",group:76},"minecraft:light":{type:"minecraft:light",item:"minecraft:light",group:75},"minecraft:lectern":{type:"minecraft:lectern",item:"minecraft:lectern",group:74},"minecraft:water_bucket":{type:"minecraft:water",item:"minecraft:water_bucket",group:73},"minecraft:lava_bucket":{type:"minecraft:lava",item:"minecraft:lava_bucket",group:73},"minecraft:tall_grass":{type:"minecraft:tall_grass",item:"minecraft:tall_grass",group:72},"minecraft:sunflower":{type:"minecraft:sunflower",item:"minecraft:sunflower",group:72},"minecraft:rose_bush":{type:"minecraft:rose_bush",item:"minecraft:rose_bush",group:72},"minecraft:pitcher_plant":{type:"minecraft:pitcher_plant",item:"minecraft:pitcher_plant",group:72},"minecraft:peony":{type:"minecraft:peony",item:"minecraft:peony",group:72},"minecraft:lilac":{type:"minecraft:lilac",item:"minecraft:lilac",group:72},"minecraft:large_fern":{type:"minecraft:large_fern",item:"minecraft:large_fern",group:72},"minecraft:soul_lantern":{type:"minecraft:soul_lantern",item:"minecraft:soul_lantern",group:71},"minecraft:lantern":{type:"minecraft:lantern",item:"minecraft:lantern",group:71},"minecraft:weeping_vines":{type:"minecraft:weeping_vines",item:"minecraft:weeping_vines",group:70},"minecraft:twisting_vines":{type:"minecraft:twisting_vines",item:"minecraft:twisting_vines",group:70},"minecraft:kelp":{type:"minecraft:kelp",item:"minecraft:kelp",group:70},"minecraft:jukebox":{type:"minecraft:jukebox",item:"minecraft:jukebox",group:69},"minecraft:jigsaw":{type:"minecraft:jigsaw",item:"minecraft:jigsaw",group:68},"minecraft:hopper":{type:"minecraft:hopper",item:"minecraft:hopper",group:67},"minecraft:target":{type:"minecraft:target",item:"minecraft:target",group:66},"minecraft:light_weighted_pressure_plate":{type:"minecraft:light_weighted_pressure_plate",item:"minecraft:light_weighted_pressure_plate",group:66},"minecraft:heavy_weighted_pressure_plate":{type:"minecraft:heavy_weighted_pressure_plate",item:"minecraft:heavy_weighted_pressure_plate",group:66},"minecraft:grindstone":{type:"minecraft:grindstone",item:"minecraft:grindstone",group:65},"minecraft:podzol":{type:"minecraft:podzol",item:"minecraft:podzol",group:64},"minecraft:mycelium":{type:"minecraft:mycelium",item:"minecraft:mycelium",group:64},"minecraft:grass_block":{type:"minecraft:grass_block",item:"minecraft:grass_block",group:64},"minecraft:sculk_vein":{type:"minecraft:sculk_vein",item:"minecraft:sculk_vein",group:63},"minecraft:glow_lichen":{type:"minecraft:glow_lichen",item:"minecraft:glow_lichen",group:63},"minecraft:farmland":{type:"minecraft:farmland",item:"minecraft:farmland",group:61},"minecraft:end_portal_frame":{type:"minecraft:end_portal_frame",item:"minecraft:end_portal_frame",group:60},"minecraft:dropper":{type:"minecraft:dropper",item:"minecraft:dropper",group:59},"minecraft:dispenser":{type:"minecraft:dispenser",item:"minecraft:dispenser",group:59},"minecraft:decorated_pot":{type:"minecraft:decorated_pot",item:"minecraft:decorated_pot",group:58},"minecraft:daylight_detector":{type:"minecraft:daylight_detector",item:"minecraft:daylight_detector",group:57},"minecraft:zombie_head":{type:"minecraft:zombie_head",item:"minecraft:zombie_head",group:55},"minecraft:wither_skeleton_skull":{type:"minecraft:wither_skeleton_skull",item:"minecraft:wither_skeleton_skull",group:55},"minecraft:skeleton_skull":{type:"minecraft:skeleton_skull",item:"minecraft:skeleton_skull",group:55},"minecraft:player_head":{type:"minecraft:player_head",item:"minecraft:player_head",group:55},"minecraft:piglin_head":{type:"minecraft:piglin_head",item:"minecraft:piglin_head",group:55},"minecraft:dragon_head":{type:"minecraft:dragon_head",item:"minecraft:dragon_head",group:55},"minecraft:creeper_head":{type:"minecraft:creeper_head",item:"minecraft:creeper_head",group:55},"minecraft:crafter":{type:"minecraft:crafter",item:"minecraft:crafter",group:54},"minecraft:weathered_copper_bulb":{type:"minecraft:weathered_copper_bulb",item:"minecraft:weathered_copper_bulb",group:53},"minecraft:waxed_weathered_copper_bulb":{type:"minecraft:waxed_weathered_copper_bulb",item:"minecraft:waxed_weathered_copper_bulb",group:53},"minecraft:waxed_oxidized_copper_bulb":{type:"minecraft:waxed_oxidized_copper_bulb",item:"minecraft:waxed_oxidized_copper_bulb",group:53},"minecraft:waxed_exposed_copper_bulb":{type:"minecraft:waxed_exposed_copper_bulb",item:"minecraft:waxed_exposed_copper_bulb",group:53},"minecraft:waxed_copper_bulb":{type:"minecraft:waxed_copper_bulb",item:"minecraft:waxed_copper_bulb",group:53},"minecraft:oxidized_copper_bulb":{type:"minecraft:oxidized_copper_bulb",item:"minecraft:oxidized_copper_bulb",group:53},"minecraft:exposed_copper_bulb":{type:"minecraft:exposed_copper_bulb",item:"minecraft:exposed_copper_bulb",group:53},"minecraft:copper_bulb":{type:"minecraft:copper_bulb",item:"minecraft:copper_bulb",group:53},"minecraft:composter":{type:"minecraft:composter",item:"minecraft:composter",group:52},"minecraft:comparator":{type:"minecraft:comparator",item:"minecraft:comparator",group:51},"minecraft:cocoa_beans":{type:"minecraft:cocoa",item:"minecraft:cocoa_beans",group:50},"minecraft:chorus_plant":{type:"minecraft:chorus_plant",item:"minecraft:chorus_plant",group:49},"minecraft:chorus_flower":{type:"minecraft:chorus_flower",item:"minecraft:chorus_flower",group:48},"minecraft:chiseled_bookshelf":{type:"minecraft:chiseled_bookshelf",item:"minecraft:chiseled_bookshelf",group:47},"minecraft:trapped_chest":{type:"minecraft:trapped_chest",item:"minecraft:trapped_chest",group:46},"minecraft:chest":{type:"minecraft:chest",item:"minecraft:chest",group:46},"minecraft:repeating_command_block":{type:"minecraft:repeating_command_block",item:"minecraft:repeating_command_block",group:45},"minecraft:command_block":{type:"minecraft:command_block",item:"minecraft:command_block",group:45},"minecraft:chain_command_block":{type:"minecraft:chain_command_block",item:"minecraft:chain_command_block",group:45},"minecraft:chain":{type:"minecraft:chain",item:"minecraft:chain",group:44},"minecraft:glow_berries":{type:"minecraft:cave_vines",item:"minecraft:glow_berries",group:42},"minecraft:wheat_seeds":{type:"minecraft:wheat",item:"minecraft:wheat_seeds",group:41},"minecraft:pumpkin_seeds":{type:"minecraft:melon_stem",item:"minecraft:pumpkin_seeds",group:41},"minecraft:potato":{type:"minecraft:potatoes",item:"minecraft:potato",group:41},"minecraft:carrot":{type:"minecraft:carrots",item:"minecraft:carrot",group:41},"minecraft:soul_campfire":{type:"minecraft:soul_campfire",item:"minecraft:soul_campfire",group:40},"minecraft:campfire":{type:"minecraft:campfire",item:"minecraft:campfire",group:40},"minecraft:calibrated_sculk_sensor":{type:"minecraft:calibrated_sculk_sensor",item:"minecraft:calibrated_sculk_sensor",group:39},"minecraft:cake":{type:"minecraft:cake",item:"minecraft:cake",group:38},"minecraft:sugar_cane":{type:"minecraft:sugar_cane",item:"minecraft:sugar_cane",group:37},"minecraft:cactus":{type:"minecraft:cactus",item:"minecraft:cactus",group:37},"minecraft:red_mushroom_block":{type:"minecraft:red_mushroom_block",item:"minecraft:red_mushroom_block",group:35},"minecraft:mushroom_stem":{type:"minecraft:mushroom_stem",item:"minecraft:mushroom_stem",group:35},"minecraft:brown_mushroom_block":{type:"minecraft:brown_mushroom_block",item:"minecraft:brown_mushroom_block",group:35},"minecraft:brewing_stand":{type:"minecraft:brewing_stand",item:"minecraft:brewing_stand",group:34},"minecraft:tube_coral_fan":{type:"minecraft:tube_coral_fan",item:"minecraft:tube_coral_fan",group:32},"minecraft:horn_coral_fan":{type:"minecraft:horn_coral_fan",item:"minecraft:horn_coral_fan",group:32},"minecraft:fire_coral_fan":{type:"minecraft:fire_coral_fan",item:"minecraft:fire_coral_fan",group:32},"minecraft:dead_tube_coral_fan":{type:"minecraft:dead_tube_coral_fan",item:"minecraft:dead_tube_coral_fan",group:32},"minecraft:dead_horn_coral_fan":{type:"minecraft:dead_horn_coral_fan",item:"minecraft:dead_horn_coral_fan",group:32},"minecraft:dead_fire_coral_fan":{type:"minecraft:dead_fire_coral_fan",item:"minecraft:dead_fire_coral_fan",group:32},"minecraft:dead_bubble_coral_fan":{type:"minecraft:dead_bubble_coral_fan",item:"minecraft:dead_bubble_coral_fan",group:32},"minecraft:dead_brain_coral_fan":{type:"minecraft:dead_brain_coral_fan",item:"minecraft:dead_brain_coral_fan",group:32},"minecraft:bubble_coral_fan":{type:"minecraft:bubble_coral_fan",item:"minecraft:bubble_coral_fan",group:32},"minecraft:brain_coral_fan":{type:"minecraft:brain_coral_fan",item:"minecraft:brain_coral_fan",group:32},"minecraft:tube_coral":{type:"minecraft:tube_coral",item:"minecraft:tube_coral",group:32},"minecraft:horn_coral":{type:"minecraft:horn_coral",item:"minecraft:horn_coral",group:32},"minecraft:fire_coral":{type:"minecraft:fire_coral",item:"minecraft:fire_coral",group:32},"minecraft:dead_tube_coral":{type:"minecraft:dead_tube_coral",item:"minecraft:dead_tube_coral",group:32},"minecraft:dead_horn_coral":{type:"minecraft:dead_horn_coral",item:"minecraft:dead_horn_coral",group:32},"minecraft:dead_fire_coral":{type:"minecraft:dead_fire_coral",item:"minecraft:dead_fire_coral",group:32},"minecraft:dead_bubble_coral":{type:"minecraft:dead_bubble_coral",item:"minecraft:dead_bubble_coral",group:32},"minecraft:dead_brain_coral":{type:"minecraft:dead_brain_coral",item:"minecraft:dead_brain_coral",group:32},"minecraft:conduit":{type:"minecraft:conduit",item:"minecraft:conduit",group:32},"minecraft:bubble_coral":{type:"minecraft:bubble_coral",item:"minecraft:bubble_coral",group:32},"minecraft:brain_coral":{type:"minecraft:brain_coral",item:"minecraft:brain_coral",group:32},"minecraft:smoker":{type:"minecraft:smoker",item:"minecraft:smoker",group:31},"minecraft:furnace":{type:"minecraft:furnace",item:"minecraft:furnace",group:31},"minecraft:blast_furnace":{type:"minecraft:blast_furnace",item:"minecraft:blast_furnace",group:31},"minecraft:yellow_shulker_box":{type:"minecraft:yellow_shulker_box",item:"minecraft:yellow_shulker_box",group:30},"minecraft:white_shulker_box":{type:"minecraft:white_shulker_box",item:"minecraft:white_shulker_box",group:30},"minecraft:shulker_box":{type:"minecraft:shulker_box",item:"minecraft:shulker_box",group:30},"minecraft:red_shulker_box":{type:"minecraft:red_shulker_box",item:"minecraft:red_shulker_box",group:30},"minecraft:purple_shulker_box":{type:"minecraft:purple_shulker_box",item:"minecraft:purple_shulker_box",group:30},"minecraft:pink_shulker_box":{type:"minecraft:pink_shulker_box",item:"minecraft:pink_shulker_box",group:30},"minecraft:orange_shulker_box":{type:"minecraft:orange_shulker_box",item:"minecraft:orange_shulker_box",group:30},"minecraft:magenta_shulker_box":{type:"minecraft:magenta_shulker_box",item:"minecraft:magenta_shulker_box",group:30},"minecraft:lime_shulker_box":{type:"minecraft:lime_shulker_box",item:"minecraft:lime_shulker_box",group:30},"minecraft:light_gray_shulker_box":{type:"minecraft:light_gray_shulker_box",item:"minecraft:light_gray_shulker_box",group:30},"minecraft:light_blue_shulker_box":{type:"minecraft:light_blue_shulker_box",item:"minecraft:light_blue_shulker_box",group:30},"minecraft:green_shulker_box":{type:"minecraft:green_shulker_box",item:"minecraft:green_shulker_box",group:30},"minecraft:gray_shulker_box":{type:"minecraft:gray_shulker_box",item:"minecraft:gray_shulker_box",group:30},"minecraft:end_rod":{type:"minecraft:end_rod",item:"minecraft:end_rod",group:30},"minecraft:cyan_shulker_box":{type:"minecraft:cyan_shulker_box",item:"minecraft:cyan_shulker_box",group:30},"minecraft:brown_shulker_box":{type:"minecraft:brown_shulker_box",item:"minecraft:brown_shulker_box",group:30},"minecraft:blue_shulker_box":{type:"minecraft:blue_shulker_box",item:"minecraft:blue_shulker_box",group:30},"minecraft:black_shulker_box":{type:"minecraft:black_shulker_box",item:"minecraft:black_shulker_box",group:30},"minecraft:redstone_ore":{type:"minecraft:redstone_ore",item:"minecraft:redstone_ore",group:29},"minecraft:redstone_lamp":{type:"minecraft:redstone_lamp",item:"minecraft:redstone_lamp",group:29},"minecraft:deepslate_redstone_ore":{type:"minecraft:deepslate_redstone_ore",item:"minecraft:deepslate_redstone_ore",group:29},"minecraft:yellow_candle":{type:"minecraft:yellow_candle",item:"minecraft:yellow_candle",group:28},"minecraft:white_candle":{type:"minecraft:white_candle",item:"minecraft:white_candle",group:28},"minecraft:red_candle":{type:"minecraft:red_candle",item:"minecraft:red_candle",group:28},"minecraft:purple_candle":{type:"minecraft:purple_candle",item:"minecraft:purple_candle",group:28},"minecraft:pink_candle":{type:"minecraft:pink_candle",item:"minecraft:pink_candle",group:28},"minecraft:orange_candle":{type:"minecraft:orange_candle",item:"minecraft:orange_candle",group:28},"minecraft:magenta_candle":{type:"minecraft:magenta_candle",item:"minecraft:magenta_candle",group:28},"minecraft:lime_candle":{type:"minecraft:lime_candle",item:"minecraft:lime_candle",group:28},"minecraft:light_gray_candle":{type:"minecraft:light_gray_candle",item:"minecraft:light_gray_candle",group:28},"minecraft:light_blue_candle":{type:"minecraft:light_blue_candle",item:"minecraft:light_blue_candle",group:28},"minecraft:green_candle":{type:"minecraft:green_candle",item:"minecraft:green_candle",group:28},"minecraft:gray_candle":{type:"minecraft:gray_candle",item:"minecraft:gray_candle",group:28},"minecraft:cyan_candle":{type:"minecraft:cyan_candle",item:"minecraft:cyan_candle",group:28},"minecraft:candle":{type:"minecraft:candle",item:"minecraft:candle",group:28},"minecraft:brown_candle":{type:"minecraft:brown_candle",item:"minecraft:brown_candle",group:28},"minecraft:blue_candle":{type:"minecraft:blue_candle",item:"minecraft:blue_candle",group:28},"minecraft:black_candle":{type:"minecraft:black_candle",item:"minecraft:black_candle",group:28},"minecraft:yellow_bed":{type:"minecraft:yellow_bed",item:"minecraft:yellow_bed",group:27},"minecraft:white_bed":{type:"minecraft:white_bed",item:"minecraft:white_bed",group:27},"minecraft:red_bed":{type:"minecraft:red_bed",item:"minecraft:red_bed",group:27},"minecraft:purple_bed":{type:"minecraft:purple_bed",item:"minecraft:purple_bed",group:27},"minecraft:pink_bed":{type:"minecraft:pink_bed",item:"minecraft:pink_bed",group:27},"minecraft:orange_bed":{type:"minecraft:orange_bed",item:"minecraft:orange_bed",group:27},"minecraft:magenta_bed":{type:"minecraft:magenta_bed",item:"minecraft:magenta_bed",group:27},"minecraft:lime_bed":{type:"minecraft:lime_bed",item:"minecraft:lime_bed",group:27},"minecraft:light_gray_bed":{type:"minecraft:light_gray_bed",item:"minecraft:light_gray_bed",group:27},"minecraft:light_blue_bed":{type:"minecraft:light_blue_bed",item:"minecraft:light_blue_bed",group:27},"minecraft:green_bed":{type:"minecraft:green_bed",item:"minecraft:green_bed",group:27},"minecraft:gray_bed":{type:"minecraft:gray_bed",item:"minecraft:gray_bed",group:27},"minecraft:cyan_bed":{type:"minecraft:cyan_bed",item:"minecraft:cyan_bed",group:27},"minecraft:brown_bed":{type:"minecraft:brown_bed",item:"minecraft:brown_bed",group:27},"minecraft:blue_bed":{type:"minecraft:blue_bed",item:"minecraft:blue_bed",group:27},"minecraft:black_bed":{type:"minecraft:black_bed",item:"minecraft:black_bed",group:27},"minecraft:yellow_banner":{type:"minecraft:yellow_wall_banner",item:"minecraft:yellow_banner",group:18},"minecraft:white_banner":{type:"minecraft:white_wall_banner",item:"minecraft:white_banner",group:18},"minecraft:red_banner":{type:"minecraft:red_wall_banner",item:"minecraft:red_banner",group:18},"minecraft:purple_banner":{type:"minecraft:purple_wall_banner",item:"minecraft:purple_banner",group:18},"minecraft:pink_banner":{type:"minecraft:pink_wall_banner",item:"minecraft:pink_banner",group:18},"minecraft:orange_banner":{type:"minecraft:orange_wall_banner",item:"minecraft:orange_banner",group:18},"minecraft:magenta_banner":{type:"minecraft:magenta_wall_banner",item:"minecraft:magenta_banner",group:18},"minecraft:lime_banner":{type:"minecraft:lime_wall_banner",item:"minecraft:lime_banner",group:18},"minecraft:light_gray_banner":{type:"minecraft:light_gray_wall_banner",item:"minecraft:light_gray_banner",group:18},"minecraft:light_blue_banner":{type:"minecraft:light_blue_wall_banner",item:"minecraft:light_blue_banner",group:18},"minecraft:green_banner":{type:"minecraft:green_wall_banner",item:"minecraft:green_banner",group:18},"minecraft:gray_banner":{type:"minecraft:gray_wall_banner",item:"minecraft:gray_banner",group:18},"minecraft:cyan_banner":{type:"minecraft:cyan_wall_banner",item:"minecraft:cyan_banner",group:18},"minecraft:brown_banner":{type:"minecraft:brown_wall_banner",item:"minecraft:brown_banner",group:18},"minecraft:blue_banner":{type:"minecraft:blue_wall_banner",item:"minecraft:blue_banner",group:18},"minecraft:black_banner":{type:"minecraft:black_wall_banner",item:"minecraft:black_banner",group:18},"minecraft:big_dripleaf":{type:"minecraft:big_dripleaf_stem",item:"minecraft:big_dripleaf",group:14},"minecraft:bell":{type:"minecraft:bell",item:"minecraft:bell",group:24},"minecraft:sweet_berries":{type:"minecraft:sweet_berry_bush",item:"minecraft:sweet_berries",group:23},"minecraft:nether_wart":{type:"minecraft:nether_wart",item:"minecraft:nether_wart",group:23},"minecraft:beetroot_seeds":{type:"minecraft:beetroots",item:"minecraft:beetroot_seeds",group:23},"minecraft:beehive":{type:"minecraft:beehive",item:"minecraft:beehive",group:22},"minecraft:bee_nest":{type:"minecraft:bee_nest",item:"minecraft:bee_nest",group:22},"minecraft:weathered_copper_grate":{type:"minecraft:weathered_copper_grate",item:"minecraft:weathered_copper_grate",group:21},"minecraft:waxed_weathered_copper_grate":{type:"minecraft:waxed_weathered_copper_grate",item:"minecraft:waxed_weathered_copper_grate",group:21},"minecraft:waxed_oxidized_copper_grate":{type:"minecraft:waxed_oxidized_copper_grate",item:"minecraft:waxed_oxidized_copper_grate",group:21},"minecraft:waxed_exposed_copper_grate":{type:"minecraft:waxed_exposed_copper_grate",item:"minecraft:waxed_exposed_copper_grate",group:21},"minecraft:waxed_copper_grate":{type:"minecraft:waxed_copper_grate",item:"minecraft:waxed_copper_grate",group:21},"minecraft:oxidized_copper_grate":{type:"minecraft:oxidized_copper_grate",item:"minecraft:oxidized_copper_grate",group:21},"minecraft:mangrove_roots":{type:"minecraft:mangrove_roots",item:"minecraft:mangrove_roots",group:21},"minecraft:heavy_core":{type:"minecraft:heavy_core",item:"minecraft:heavy_core",group:21},"minecraft:hanging_roots":{type:"minecraft:hanging_roots",item:"minecraft:hanging_roots",group:21},"minecraft:exposed_copper_grate":{type:"minecraft:exposed_copper_grate",item:"minecraft:exposed_copper_grate",group:21},"minecraft:copper_grate":{type:"minecraft:copper_grate",item:"minecraft:copper_grate",group:21},"minecraft:barrier":{type:"minecraft:barrier",item:"minecraft:barrier",group:21},"minecraft:barrel":{type:"minecraft:barrel",item:"minecraft:barrel",group:20},"minecraft:bamboo":{type:"minecraft:bamboo",item:"minecraft:bamboo",group:19},"minecraft:yellow_glazed_terracotta":{type:"minecraft:yellow_glazed_terracotta",item:"minecraft:yellow_glazed_terracotta",group:18},"minecraft:white_glazed_terracotta":{type:"minecraft:white_glazed_terracotta",item:"minecraft:white_glazed_terracotta",group:18},"minecraft:torch":{type:"minecraft:torch",item:"minecraft:torch",group:0},"minecraft:stonecutter":{type:"minecraft:stonecutter",item:"minecraft:stonecutter",group:18},"minecraft:soul_torch":{type:"minecraft:soul_torch",item:"minecraft:soul_torch",group:0},"minecraft:red_glazed_terracotta":{type:"minecraft:red_glazed_terracotta",item:"minecraft:red_glazed_terracotta",group:18},"minecraft:purple_glazed_terracotta":{type:"minecraft:purple_glazed_terracotta",item:"minecraft:purple_glazed_terracotta",group:18},"minecraft:pink_glazed_terracotta":{type:"minecraft:pink_glazed_terracotta",item:"minecraft:pink_glazed_terracotta",group:18},"minecraft:orange_glazed_terracotta":{type:"minecraft:orange_glazed_terracotta",item:"minecraft:orange_glazed_terracotta",group:18},"minecraft:magenta_glazed_terracotta":{type:"minecraft:magenta_glazed_terracotta",item:"minecraft:magenta_glazed_terracotta",group:18},"minecraft:loom":{type:"minecraft:loom",item:"minecraft:loom",group:18},"minecraft:lime_glazed_terracotta":{type:"minecraft:lime_glazed_terracotta",item:"minecraft:lime_glazed_terracotta",group:18},"minecraft:light_gray_glazed_terracotta":{type:"minecraft:light_gray_glazed_terracotta",item:"minecraft:light_gray_glazed_terracotta",group:18},"minecraft:light_blue_glazed_terracotta":{type:"minecraft:light_blue_glazed_terracotta",item:"minecraft:light_blue_glazed_terracotta",group:18},"minecraft:jack_o_lantern":{type:"minecraft:jack_o_lantern",item:"minecraft:jack_o_lantern",group:18},"minecraft:green_glazed_terracotta":{type:"minecraft:green_glazed_terracotta",item:"minecraft:green_glazed_terracotta",group:18},"minecraft:gray_glazed_terracotta":{type:"minecraft:gray_glazed_terracotta",item:"minecraft:gray_glazed_terracotta",group:18},"minecraft:damaged_anvil":{type:"minecraft:damaged_anvil",item:"minecraft:damaged_anvil",group:18},"minecraft:cyan_glazed_terracotta":{type:"minecraft:cyan_glazed_terracotta",item:"minecraft:cyan_glazed_terracotta",group:18},"minecraft:chipped_anvil":{type:"minecraft:chipped_anvil",item:"minecraft:chipped_anvil",group:18},"minecraft:carved_pumpkin":{type:"minecraft:carved_pumpkin",item:"minecraft:carved_pumpkin",group:18},"minecraft:brown_glazed_terracotta":{type:"minecraft:brown_glazed_terracotta",item:"minecraft:brown_glazed_terracotta",group:18},"minecraft:blue_glazed_terracotta":{type:"minecraft:blue_glazed_terracotta",item:"minecraft:blue_glazed_terracotta",group:18},"minecraft:black_glazed_terracotta":{type:"minecraft:black_glazed_terracotta",item:"minecraft:black_glazed_terracotta",group:18},"minecraft:melon_seeds":{type:"minecraft:attached_melon_stem",item:"minecraft:melon_seeds",group:18},"minecraft:anvil":{type:"minecraft:anvil",item:"minecraft:anvil",group:18},"minecraft:tuff_wall":{type:"minecraft:tuff_wall",item:"minecraft:tuff_wall",group:17},"minecraft:tuff_brick_wall":{type:"minecraft:tuff_brick_wall",item:"minecraft:tuff_brick_wall",group:17},"minecraft:stone_brick_wall":{type:"minecraft:stone_brick_wall",item:"minecraft:stone_brick_wall",group:17},"minecraft:sandstone_wall":{type:"minecraft:sandstone_wall",item:"minecraft:sandstone_wall",group:17},"minecraft:red_sandstone_wall":{type:"minecraft:red_sandstone_wall",item:"minecraft:red_sandstone_wall",group:17},"minecraft:red_nether_brick_wall":{type:"minecraft:red_nether_brick_wall",item:"minecraft:red_nether_brick_wall",group:17},"minecraft:prismarine_wall":{type:"minecraft:prismarine_wall",item:"minecraft:prismarine_wall",group:17},"minecraft:polished_tuff_wall":{type:"minecraft:polished_tuff_wall",item:"minecraft:polished_tuff_wall",group:17},"minecraft:polished_deepslate_wall":{type:"minecraft:polished_deepslate_wall",item:"minecraft:polished_deepslate_wall",group:17},"minecraft:polished_blackstone_wall":{type:"minecraft:polished_blackstone_wall",item:"minecraft:polished_blackstone_wall",group:17},"minecraft:polished_blackstone_brick_wall":{type:"minecraft:polished_blackstone_brick_wall",item:"minecraft:polished_blackstone_brick_wall",group:17},"minecraft:nether_brick_wall":{type:"minecraft:nether_brick_wall",item:"minecraft:nether_brick_wall",group:17},"minecraft:mud_brick_wall":{type:"minecraft:mud_brick_wall",item:"minecraft:mud_brick_wall",group:17},"minecraft:mossy_stone_brick_wall":{type:"minecraft:mossy_stone_brick_wall",item:"minecraft:mossy_stone_brick_wall",group:17},"minecraft:mossy_cobblestone_wall":{type:"minecraft:mossy_cobblestone_wall",item:"minecraft:mossy_cobblestone_wall",group:17},"minecraft:granite_wall":{type:"minecraft:granite_wall",item:"minecraft:granite_wall",group:17},"minecraft:end_stone_brick_wall":{type:"minecraft:end_stone_brick_wall",item:"minecraft:end_stone_brick_wall",group:17},"minecraft:diorite_wall":{type:"minecraft:diorite_wall",item:"minecraft:diorite_wall",group:17},"minecraft:deepslate_tile_wall":{type:"minecraft:deepslate_tile_wall",item:"minecraft:deepslate_tile_wall",group:17},"minecraft:deepslate_brick_wall":{type:"minecraft:deepslate_brick_wall",item:"minecraft:deepslate_brick_wall",group:17},"minecraft:cobblestone_wall":{type:"minecraft:cobblestone_wall",item:"minecraft:cobblestone_wall",group:17},"minecraft:cobbled_deepslate_wall":{type:"minecraft:cobbled_deepslate_wall",item:"minecraft:cobbled_deepslate_wall",group:17},"minecraft:brick_wall":{type:"minecraft:brick_wall",item:"minecraft:brick_wall",group:17},"minecraft:blackstone_wall":{type:"minecraft:blackstone_wall",item:"minecraft:blackstone_wall",group:17},"minecraft:andesite_wall":{type:"minecraft:andesite_wall",item:"minecraft:andesite_wall",group:17},"minecraft:small_amethyst_bud":{type:"minecraft:small_amethyst_bud",item:"minecraft:small_amethyst_bud",group:16},"minecraft:medium_amethyst_bud":{type:"minecraft:medium_amethyst_bud",item:"minecraft:medium_amethyst_bud",group:16},"minecraft:large_amethyst_bud":{type:"minecraft:large_amethyst_bud",item:"minecraft:large_amethyst_bud",group:16},"minecraft:amethyst_cluster":{type:"minecraft:amethyst_cluster",item:"minecraft:amethyst_cluster",group:16},"minecraft:powered_rail":{type:"minecraft:powered_rail",item:"minecraft:powered_rail",group:15},"minecraft:detector_rail":{type:"minecraft:detector_rail",item:"minecraft:detector_rail",group:15},"minecraft:activator_rail":{type:"minecraft:activator_rail",item:"minecraft:activator_rail",group:15},"minecraft:warped_sign":{type:"minecraft:warped_sign",item:"minecraft:warped_sign",group:10},"minecraft:warped_hanging_sign":{type:"minecraft:warped_hanging_sign",item:"minecraft:warped_hanging_sign",group:5},"minecraft:spruce_sign":{type:"minecraft:spruce_sign",item:"minecraft:spruce_sign",group:10},"minecraft:spruce_hanging_sign":{type:"minecraft:spruce_hanging_sign",item:"minecraft:spruce_hanging_sign",group:5},"minecraft:oak_sign":{type:"minecraft:oak_sign",item:"minecraft:oak_sign",group:10},"minecraft:oak_hanging_sign":{type:"minecraft:oak_hanging_sign",item:"minecraft:oak_hanging_sign",group:5},"minecraft:mangrove_sign":{type:"minecraft:mangrove_sign",item:"minecraft:mangrove_sign",group:10},"minecraft:mangrove_hanging_sign":{type:"minecraft:mangrove_hanging_sign",item:"minecraft:mangrove_hanging_sign",group:5},"minecraft:ladder":{type:"minecraft:ladder",item:"minecraft:ladder",group:14},"minecraft:jungle_sign":{type:"minecraft:jungle_sign",item:"minecraft:jungle_sign",group:10},"minecraft:jungle_hanging_sign":{type:"minecraft:jungle_hanging_sign",item:"minecraft:jungle_hanging_sign",group:5},"minecraft:ender_chest":{type:"minecraft:ender_chest",item:"minecraft:ender_chest",group:14},"minecraft:dark_oak_sign":{type:"minecraft:dark_oak_sign",item:"minecraft:dark_oak_sign",group:10},"minecraft:dark_oak_hanging_sign":{type:"minecraft:dark_oak_hanging_sign",item:"minecraft:dark_oak_hanging_sign",group:5},"minecraft:crimson_sign":{type:"minecraft:crimson_sign",item:"minecraft:crimson_sign",group:10},"minecraft:crimson_hanging_sign":{type:"minecraft:crimson_hanging_sign",item:"minecraft:crimson_hanging_sign",group:5},"minecraft:cherry_sign":{type:"minecraft:cherry_sign",item:"minecraft:cherry_sign",group:10},"minecraft:cherry_hanging_sign":{type:"minecraft:cherry_hanging_sign",item:"minecraft:cherry_hanging_sign",group:5},"minecraft:birch_sign":{type:"minecraft:birch_sign",item:"minecraft:birch_sign",group:10},"minecraft:birch_hanging_sign":{type:"minecraft:birch_hanging_sign",item:"minecraft:birch_hanging_sign",group:5},"minecraft:bamboo_sign":{type:"minecraft:bamboo_sign",item:"minecraft:bamboo_sign",group:10},"minecraft:bamboo_hanging_sign":{type:"minecraft:bamboo_hanging_sign",item:"minecraft:bamboo_hanging_sign",group:5},"minecraft:acacia_sign":{type:"minecraft:acacia_sign",item:"minecraft:acacia_sign",group:10},"minecraft:acacia_hanging_sign":{type:"minecraft:acacia_hanging_sign",item:"minecraft:acacia_hanging_sign",group:5},"minecraft:weathered_copper_trapdoor":{type:"minecraft:weathered_copper_trapdoor",item:"minecraft:weathered_copper_trapdoor",group:13},"minecraft:waxed_weathered_copper_trapdoor":{type:"minecraft:waxed_weathered_copper_trapdoor",item:"minecraft:waxed_weathered_copper_trapdoor",group:13},"minecraft:waxed_oxidized_copper_trapdoor":{type:"minecraft:waxed_oxidized_copper_trapdoor",item:"minecraft:waxed_oxidized_copper_trapdoor",group:13},"minecraft:waxed_exposed_copper_trapdoor":{type:"minecraft:waxed_exposed_copper_trapdoor",item:"minecraft:waxed_exposed_copper_trapdoor",group:13},"minecraft:waxed_copper_trapdoor":{type:"minecraft:waxed_copper_trapdoor",item:"minecraft:waxed_copper_trapdoor",group:13},"minecraft:warped_trapdoor":{type:"minecraft:warped_trapdoor",item:"minecraft:warped_trapdoor",group:13},"minecraft:spruce_trapdoor":{type:"minecraft:spruce_trapdoor",item:"minecraft:spruce_trapdoor",group:13},"minecraft:oxidized_copper_trapdoor":{type:"minecraft:oxidized_copper_trapdoor",item:"minecraft:oxidized_copper_trapdoor",group:13},"minecraft:oak_trapdoor":{type:"minecraft:oak_trapdoor",item:"minecraft:oak_trapdoor",group:13},"minecraft:mangrove_trapdoor":{type:"minecraft:mangrove_trapdoor",item:"minecraft:mangrove_trapdoor",group:13},"minecraft:jungle_trapdoor":{type:"minecraft:jungle_trapdoor",item:"minecraft:jungle_trapdoor",group:13},"minecraft:iron_trapdoor":{type:"minecraft:iron_trapdoor",item:"minecraft:iron_trapdoor",group:13},"minecraft:exposed_copper_trapdoor":{type:"minecraft:exposed_copper_trapdoor",item:"minecraft:exposed_copper_trapdoor",group:13},"minecraft:dark_oak_trapdoor":{type:"minecraft:dark_oak_trapdoor",item:"minecraft:dark_oak_trapdoor",group:13},"minecraft:crimson_trapdoor":{type:"minecraft:crimson_trapdoor",item:"minecraft:crimson_trapdoor",group:13},"minecraft:copper_trapdoor":{type:"minecraft:copper_trapdoor",item:"minecraft:copper_trapdoor",group:13},"minecraft:cherry_trapdoor":{type:"minecraft:cherry_trapdoor",item:"minecraft:cherry_trapdoor",group:13},"minecraft:birch_trapdoor":{type:"minecraft:birch_trapdoor",item:"minecraft:birch_trapdoor",group:13},"minecraft:bamboo_trapdoor":{type:"minecraft:bamboo_trapdoor",item:"minecraft:bamboo_trapdoor",group:13},"minecraft:acacia_trapdoor":{type:"minecraft:acacia_trapdoor",item:"minecraft:acacia_trapdoor",group:13},"minecraft:weathered_cut_copper_stairs":{type:"minecraft:weathered_cut_copper_stairs",item:"minecraft:weathered_cut_copper_stairs",group:12},"minecraft:waxed_weathered_cut_copper_stairs":{type:"minecraft:waxed_weathered_cut_copper_stairs",item:"minecraft:waxed_weathered_cut_copper_stairs",group:12},"minecraft:waxed_oxidized_cut_copper_stairs":{type:"minecraft:waxed_oxidized_cut_copper_stairs",item:"minecraft:waxed_oxidized_cut_copper_stairs",group:12},"minecraft:waxed_exposed_cut_copper_stairs":{type:"minecraft:waxed_exposed_cut_copper_stairs",item:"minecraft:waxed_exposed_cut_copper_stairs",group:12},"minecraft:waxed_cut_copper_stairs":{type:"minecraft:waxed_cut_copper_stairs",item:"minecraft:waxed_cut_copper_stairs",group:12},"minecraft:warped_stairs":{type:"minecraft:warped_stairs",item:"minecraft:warped_stairs",group:12},"minecraft:tuff_stairs":{type:"minecraft:tuff_stairs",item:"minecraft:tuff_stairs",group:12},"minecraft:tuff_brick_stairs":{type:"minecraft:tuff_brick_stairs",item:"minecraft:tuff_brick_stairs",group:12},"minecraft:stone_stairs":{type:"minecraft:stone_stairs",item:"minecraft:stone_stairs",group:12},"minecraft:stone_brick_stairs":{type:"minecraft:stone_brick_stairs",item:"minecraft:stone_brick_stairs",group:12},"minecraft:spruce_stairs":{type:"minecraft:spruce_stairs",item:"minecraft:spruce_stairs",group:12},"minecraft:smooth_sandstone_stairs":{type:"minecraft:smooth_sandstone_stairs",item:"minecraft:smooth_sandstone_stairs",group:12},"minecraft:smooth_red_sandstone_stairs":{type:"minecraft:smooth_red_sandstone_stairs",item:"minecraft:smooth_red_sandstone_stairs",group:12},"minecraft:smooth_quartz_stairs":{type:"minecraft:smooth_quartz_stairs",item:"minecraft:smooth_quartz_stairs",group:12},"minecraft:sandstone_stairs":{type:"minecraft:sandstone_stairs",item:"minecraft:sandstone_stairs",group:12},"minecraft:red_sandstone_stairs":{type:"minecraft:red_sandstone_stairs",item:"minecraft:red_sandstone_stairs",group:12},"minecraft:red_nether_brick_stairs":{type:"minecraft:red_nether_brick_stairs",item:"minecraft:red_nether_brick_stairs",group:12},"minecraft:quartz_stairs":{type:"minecraft:quartz_stairs",item:"minecraft:quartz_stairs",group:12},"minecraft:purpur_stairs":{type:"minecraft:purpur_stairs",item:"minecraft:purpur_stairs",group:12},"minecraft:prismarine_stairs":{type:"minecraft:prismarine_stairs",item:"minecraft:prismarine_stairs",group:12},"minecraft:prismarine_brick_stairs":{type:"minecraft:prismarine_brick_stairs",item:"minecraft:prismarine_brick_stairs",group:12},"minecraft:polished_tuff_stairs":{type:"minecraft:polished_tuff_stairs",item:"minecraft:polished_tuff_stairs",group:12},"minecraft:polished_granite_stairs":{type:"minecraft:polished_granite_stairs",item:"minecraft:polished_granite_stairs",group:12},"minecraft:polished_diorite_stairs":{type:"minecraft:polished_diorite_stairs",item:"minecraft:polished_diorite_stairs",group:12},"minecraft:polished_deepslate_stairs":{type:"minecraft:polished_deepslate_stairs",item:"minecraft:polished_deepslate_stairs",group:12},"minecraft:polished_blackstone_stairs":{type:"minecraft:polished_blackstone_stairs",item:"minecraft:polished_blackstone_stairs",group:12},"minecraft:polished_blackstone_brick_stairs":{type:"minecraft:polished_blackstone_brick_stairs",item:"minecraft:polished_blackstone_brick_stairs",group:12},"minecraft:polished_andesite_stairs":{type:"minecraft:polished_andesite_stairs",item:"minecraft:polished_andesite_stairs",group:12},"minecraft:oxidized_cut_copper_stairs":{type:"minecraft:oxidized_cut_copper_stairs",item:"minecraft:oxidized_cut_copper_stairs",group:12},"minecraft:oak_stairs":{type:"minecraft:oak_stairs",item:"minecraft:oak_stairs",group:12},"minecraft:nether_brick_stairs":{type:"minecraft:nether_brick_stairs",item:"minecraft:nether_brick_stairs",group:12},"minecraft:mud_brick_stairs":{type:"minecraft:mud_brick_stairs",item:"minecraft:mud_brick_stairs",group:12},"minecraft:mossy_stone_brick_stairs":{type:"minecraft:mossy_stone_brick_stairs",item:"minecraft:mossy_stone_brick_stairs",group:12},"minecraft:mossy_cobblestone_stairs":{type:"minecraft:mossy_cobblestone_stairs",item:"minecraft:mossy_cobblestone_stairs",group:12},"minecraft:mangrove_stairs":{type:"minecraft:mangrove_stairs",item:"minecraft:mangrove_stairs",group:12},"minecraft:jungle_stairs":{type:"minecraft:jungle_stairs",item:"minecraft:jungle_stairs",group:12},"minecraft:granite_stairs":{type:"minecraft:granite_stairs",item:"minecraft:granite_stairs",group:12},"minecraft:exposed_cut_copper_stairs":{type:"minecraft:exposed_cut_copper_stairs",item:"minecraft:exposed_cut_copper_stairs",group:12},"minecraft:end_stone_brick_stairs":{type:"minecraft:end_stone_brick_stairs",item:"minecraft:end_stone_brick_stairs",group:12},"minecraft:diorite_stairs":{type:"minecraft:diorite_stairs",item:"minecraft:diorite_stairs",group:12},"minecraft:deepslate_tile_stairs":{type:"minecraft:deepslate_tile_stairs",item:"minecraft:deepslate_tile_stairs",group:12},"minecraft:deepslate_brick_stairs":{type:"minecraft:deepslate_brick_stairs",item:"minecraft:deepslate_brick_stairs",group:12},"minecraft:dark_prismarine_stairs":{type:"minecraft:dark_prismarine_stairs",item:"minecraft:dark_prismarine_stairs",group:12},"minecraft:dark_oak_stairs":{type:"minecraft:dark_oak_stairs",item:"minecraft:dark_oak_stairs",group:12},"minecraft:cut_copper_stairs":{type:"minecraft:cut_copper_stairs",item:"minecraft:cut_copper_stairs",group:12},"minecraft:crimson_stairs":{type:"minecraft:crimson_stairs",item:"minecraft:crimson_stairs",group:12},"minecraft:cobblestone_stairs":{type:"minecraft:cobblestone_stairs",item:"minecraft:cobblestone_stairs",group:12},"minecraft:cobbled_deepslate_stairs":{type:"minecraft:cobbled_deepslate_stairs",item:"minecraft:cobbled_deepslate_stairs",group:12},"minecraft:cherry_stairs":{type:"minecraft:cherry_stairs",item:"minecraft:cherry_stairs",group:12},"minecraft:brick_stairs":{type:"minecraft:brick_stairs",item:"minecraft:brick_stairs",group:12},"minecraft:blackstone_stairs":{type:"minecraft:blackstone_stairs",item:"minecraft:blackstone_stairs",group:12},"minecraft:birch_stairs":{type:"minecraft:birch_stairs",item:"minecraft:birch_stairs",group:12},"minecraft:bamboo_stairs":{type:"minecraft:bamboo_stairs",item:"minecraft:bamboo_stairs",group:12},"minecraft:bamboo_mosaic_stairs":{type:"minecraft:bamboo_mosaic_stairs",item:"minecraft:bamboo_mosaic_stairs",group:12},"minecraft:andesite_stairs":{type:"minecraft:andesite_stairs",item:"minecraft:andesite_stairs",group:12},"minecraft:acacia_stairs":{type:"minecraft:acacia_stairs",item:"minecraft:acacia_stairs",group:12},"minecraft:weathered_cut_copper_slab":{type:"minecraft:weathered_cut_copper_slab",item:"minecraft:weathered_cut_copper_slab",group:11},"minecraft:waxed_weathered_cut_copper_slab":{type:"minecraft:waxed_weathered_cut_copper_slab",item:"minecraft:waxed_weathered_cut_copper_slab",group:11},"minecraft:waxed_oxidized_cut_copper_slab":{type:"minecraft:waxed_oxidized_cut_copper_slab",item:"minecraft:waxed_oxidized_cut_copper_slab",group:11},"minecraft:waxed_exposed_cut_copper_slab":{type:"minecraft:waxed_exposed_cut_copper_slab",item:"minecraft:waxed_exposed_cut_copper_slab",group:11},"minecraft:waxed_cut_copper_slab":{type:"minecraft:waxed_cut_copper_slab",item:"minecraft:waxed_cut_copper_slab",group:11},"minecraft:warped_slab":{type:"minecraft:warped_slab",item:"minecraft:warped_slab",group:11},"minecraft:tuff_slab":{type:"minecraft:tuff_slab",item:"minecraft:tuff_slab",group:11},"minecraft:tuff_brick_slab":{type:"minecraft:tuff_brick_slab",item:"minecraft:tuff_brick_slab",group:11},"minecraft:stone_slab":{type:"minecraft:stone_slab",item:"minecraft:stone_slab",group:11},"minecraft:stone_brick_slab":{type:"minecraft:stone_brick_slab",item:"minecraft:stone_brick_slab",group:11},"minecraft:spruce_slab":{type:"minecraft:spruce_slab",item:"minecraft:spruce_slab",group:11},"minecraft:smooth_stone_slab":{type:"minecraft:smooth_stone_slab",item:"minecraft:smooth_stone_slab",group:11},"minecraft:smooth_sandstone_slab":{type:"minecraft:smooth_sandstone_slab",item:"minecraft:smooth_sandstone_slab",group:11},"minecraft:smooth_red_sandstone_slab":{type:"minecraft:smooth_red_sandstone_slab",item:"minecraft:smooth_red_sandstone_slab",group:11},"minecraft:smooth_quartz_slab":{type:"minecraft:smooth_quartz_slab",item:"minecraft:smooth_quartz_slab",group:11},"minecraft:sandstone_slab":{type:"minecraft:sandstone_slab",item:"minecraft:sandstone_slab",group:11},"minecraft:red_sandstone_slab":{type:"minecraft:red_sandstone_slab",item:"minecraft:red_sandstone_slab",group:11},"minecraft:red_nether_brick_slab":{type:"minecraft:red_nether_brick_slab",item:"minecraft:red_nether_brick_slab",group:11},"minecraft:quartz_slab":{type:"minecraft:quartz_slab",item:"minecraft:quartz_slab",group:11},"minecraft:purpur_slab":{type:"minecraft:purpur_slab",item:"minecraft:purpur_slab",group:11},"minecraft:prismarine_slab":{type:"minecraft:prismarine_slab",item:"minecraft:prismarine_slab",group:11},"minecraft:prismarine_brick_slab":{type:"minecraft:prismarine_brick_slab",item:"minecraft:prismarine_brick_slab",group:11},"minecraft:polished_tuff_slab":{type:"minecraft:polished_tuff_slab",item:"minecraft:polished_tuff_slab",group:11},"minecraft:polished_granite_slab":{type:"minecraft:polished_granite_slab",item:"minecraft:polished_granite_slab",group:11},"minecraft:polished_diorite_slab":{type:"minecraft:polished_diorite_slab",item:"minecraft:polished_diorite_slab",group:11},"minecraft:polished_deepslate_slab":{type:"minecraft:polished_deepslate_slab",item:"minecraft:polished_deepslate_slab",group:11},"minecraft:polished_blackstone_slab":{type:"minecraft:polished_blackstone_slab",item:"minecraft:polished_blackstone_slab",group:11},"minecraft:polished_blackstone_brick_slab":{type:"minecraft:polished_blackstone_brick_slab",item:"minecraft:polished_blackstone_brick_slab",group:11},"minecraft:polished_andesite_slab":{type:"minecraft:polished_andesite_slab",item:"minecraft:polished_andesite_slab",group:11},"minecraft:petrified_oak_slab":{type:"minecraft:petrified_oak_slab",item:"minecraft:petrified_oak_slab",group:11},"minecraft:oxidized_cut_copper_slab":{type:"minecraft:oxidized_cut_copper_slab",item:"minecraft:oxidized_cut_copper_slab",group:11},"minecraft:oak_slab":{type:"minecraft:oak_slab",item:"minecraft:oak_slab",group:11},"minecraft:nether_brick_slab":{type:"minecraft:nether_brick_slab",item:"minecraft:nether_brick_slab",group:11},"minecraft:mud_brick_slab":{type:"minecraft:mud_brick_slab",item:"minecraft:mud_brick_slab",group:11},"minecraft:mossy_stone_brick_slab":{type:"minecraft:mossy_stone_brick_slab",item:"minecraft:mossy_stone_brick_slab",group:11},"minecraft:mossy_cobblestone_slab":{type:"minecraft:mossy_cobblestone_slab",item:"minecraft:mossy_cobblestone_slab",group:11},"minecraft:mangrove_slab":{type:"minecraft:mangrove_slab",item:"minecraft:mangrove_slab",group:11},"minecraft:jungle_slab":{type:"minecraft:jungle_slab",item:"minecraft:jungle_slab",group:11},"minecraft:granite_slab":{type:"minecraft:granite_slab",item:"minecraft:granite_slab",group:11},"minecraft:exposed_cut_copper_slab":{type:"minecraft:exposed_cut_copper_slab",item:"minecraft:exposed_cut_copper_slab",group:11},"minecraft:end_stone_brick_slab":{type:"minecraft:end_stone_brick_slab",item:"minecraft:end_stone_brick_slab",group:11},"minecraft:diorite_slab":{type:"minecraft:diorite_slab",item:"minecraft:diorite_slab",group:11},"minecraft:deepslate_tile_slab":{type:"minecraft:deepslate_tile_slab",item:"minecraft:deepslate_tile_slab",group:11},"minecraft:deepslate_brick_slab":{type:"minecraft:deepslate_brick_slab",item:"minecraft:deepslate_brick_slab",group:11},"minecraft:dark_prismarine_slab":{type:"minecraft:dark_prismarine_slab",item:"minecraft:dark_prismarine_slab",group:11},"minecraft:dark_oak_slab":{type:"minecraft:dark_oak_slab",item:"minecraft:dark_oak_slab",group:11},"minecraft:cut_sandstone_slab":{type:"minecraft:cut_sandstone_slab",item:"minecraft:cut_sandstone_slab",group:11},"minecraft:cut_red_sandstone_slab":{type:"minecraft:cut_red_sandstone_slab",item:"minecraft:cut_red_sandstone_slab",group:11},"minecraft:cut_copper_slab":{type:"minecraft:cut_copper_slab",item:"minecraft:cut_copper_slab",group:11},"minecraft:crimson_slab":{type:"minecraft:crimson_slab",item:"minecraft:crimson_slab",group:11},"minecraft:cobblestone_slab":{type:"minecraft:cobblestone_slab",item:"minecraft:cobblestone_slab",group:11},"minecraft:cobbled_deepslate_slab":{type:"minecraft:cobbled_deepslate_slab",item:"minecraft:cobbled_deepslate_slab",group:11},"minecraft:cherry_slab":{type:"minecraft:cherry_slab",item:"minecraft:cherry_slab",group:11},"minecraft:brick_slab":{type:"minecraft:brick_slab",item:"minecraft:brick_slab",group:11},"minecraft:blackstone_slab":{type:"minecraft:blackstone_slab",item:"minecraft:blackstone_slab",group:11},"minecraft:birch_slab":{type:"minecraft:birch_slab",item:"minecraft:birch_slab",group:11},"minecraft:bamboo_slab":{type:"minecraft:bamboo_slab",item:"minecraft:bamboo_slab",group:11},"minecraft:bamboo_mosaic_slab":{type:"minecraft:bamboo_mosaic_slab",item:"minecraft:bamboo_mosaic_slab",group:11},"minecraft:andesite_slab":{type:"minecraft:andesite_slab",item:"minecraft:andesite_slab",group:11},"minecraft:acacia_slab":{type:"minecraft:acacia_slab",item:"minecraft:acacia_slab",group:11},"minecraft:spruce_sapling":{type:"minecraft:spruce_sapling",item:"minecraft:spruce_sapling",group:9},"minecraft:oak_sapling":{type:"minecraft:oak_sapling",item:"minecraft:oak_sapling",group:9},"minecraft:jungle_sapling":{type:"minecraft:jungle_sapling",item:"minecraft:jungle_sapling",group:9},"minecraft:dark_oak_sapling":{type:"minecraft:dark_oak_sapling",item:"minecraft:dark_oak_sapling",group:9},"minecraft:cherry_sapling":{type:"minecraft:cherry_sapling",item:"minecraft:cherry_sapling",group:9},"minecraft:birch_sapling":{type:"minecraft:birch_sapling",item:"minecraft:birch_sapling",group:9},"minecraft:acacia_sapling":{type:"minecraft:acacia_sapling",item:"minecraft:acacia_sapling",group:9},"minecraft:warped_pressure_plate":{type:"minecraft:warped_pressure_plate",item:"minecraft:warped_pressure_plate",group:8},"minecraft:stone_pressure_plate":{type:"minecraft:stone_pressure_plate",item:"minecraft:stone_pressure_plate",group:8},"minecraft:spruce_pressure_plate":{type:"minecraft:spruce_pressure_plate",item:"minecraft:spruce_pressure_plate",group:8},"minecraft:polished_blackstone_pressure_plate":{type:"minecraft:polished_blackstone_pressure_plate",item:"minecraft:polished_blackstone_pressure_plate",group:8},"minecraft:oak_pressure_plate":{type:"minecraft:oak_pressure_plate",item:"minecraft:oak_pressure_plate",group:8},"minecraft:mangrove_pressure_plate":{type:"minecraft:mangrove_pressure_plate",item:"minecraft:mangrove_pressure_plate",group:8},"minecraft:jungle_pressure_plate":{type:"minecraft:jungle_pressure_plate",item:"minecraft:jungle_pressure_plate",group:8},"minecraft:dark_oak_pressure_plate":{type:"minecraft:dark_oak_pressure_plate",item:"minecraft:dark_oak_pressure_plate",group:8},"minecraft:crimson_pressure_plate":{type:"minecraft:crimson_pressure_plate",item:"minecraft:crimson_pressure_plate",group:8},"minecraft:cherry_pressure_plate":{type:"minecraft:cherry_pressure_plate",item:"minecraft:cherry_pressure_plate",group:8},"minecraft:birch_pressure_plate":{type:"minecraft:birch_pressure_plate",item:"minecraft:birch_pressure_plate",group:8},"minecraft:bamboo_pressure_plate":{type:"minecraft:bamboo_pressure_plate",item:"minecraft:bamboo_pressure_plate",group:8},"minecraft:acacia_pressure_plate":{type:"minecraft:acacia_pressure_plate",item:"minecraft:acacia_pressure_plate",group:8},"minecraft:warped_stem":{type:"minecraft:warped_stem",item:"minecraft:warped_stem",group:7},"minecraft:warped_hyphae":{type:"minecraft:warped_hyphae",item:"minecraft:warped_hyphae",group:7},"minecraft:verdant_froglight":{type:"minecraft:verdant_froglight",item:"minecraft:verdant_froglight",group:7},"minecraft:stripped_warped_stem":{type:"minecraft:stripped_warped_stem",item:"minecraft:stripped_warped_stem",group:7},"minecraft:stripped_warped_hyphae":{type:"minecraft:stripped_warped_hyphae",item:"minecraft:stripped_warped_hyphae",group:7},"minecraft:stripped_spruce_wood":{type:"minecraft:stripped_spruce_wood",item:"minecraft:stripped_spruce_wood",group:7},"minecraft:stripped_spruce_log":{type:"minecraft:stripped_spruce_log",item:"minecraft:stripped_spruce_log",group:7},"minecraft:stripped_oak_wood":{type:"minecraft:stripped_oak_wood",item:"minecraft:stripped_oak_wood",group:7},"minecraft:stripped_oak_log":{type:"minecraft:stripped_oak_log",item:"minecraft:stripped_oak_log",group:7},"minecraft:stripped_mangrove_wood":{type:"minecraft:stripped_mangrove_wood",item:"minecraft:stripped_mangrove_wood",group:7},"minecraft:stripped_mangrove_log":{type:"minecraft:stripped_mangrove_log",item:"minecraft:stripped_mangrove_log",group:7},"minecraft:stripped_jungle_wood":{type:"minecraft:stripped_jungle_wood",item:"minecraft:stripped_jungle_wood",group:7},"minecraft:stripped_jungle_log":{type:"minecraft:stripped_jungle_log",item:"minecraft:stripped_jungle_log",group:7},"minecraft:stripped_dark_oak_wood":{type:"minecraft:stripped_dark_oak_wood",item:"minecraft:stripped_dark_oak_wood",group:7},"minecraft:stripped_dark_oak_log":{type:"minecraft:stripped_dark_oak_log",item:"minecraft:stripped_dark_oak_log",group:7},"minecraft:stripped_crimson_stem":{type:"minecraft:stripped_crimson_stem",item:"minecraft:stripped_crimson_stem",group:7},"minecraft:stripped_crimson_hyphae":{type:"minecraft:stripped_crimson_hyphae",item:"minecraft:stripped_crimson_hyphae",group:7},"minecraft:stripped_cherry_wood":{type:"minecraft:stripped_cherry_wood",item:"minecraft:stripped_cherry_wood",group:7},"minecraft:stripped_cherry_log":{type:"minecraft:stripped_cherry_log",item:"minecraft:stripped_cherry_log",group:7},"minecraft:stripped_birch_wood":{type:"minecraft:stripped_birch_wood",item:"minecraft:stripped_birch_wood",group:7},"minecraft:stripped_birch_log":{type:"minecraft:stripped_birch_log",item:"minecraft:stripped_birch_log",group:7},"minecraft:stripped_bamboo_block":{type:"minecraft:stripped_bamboo_block",item:"minecraft:stripped_bamboo_block",group:7},"minecraft:stripped_acacia_wood":{type:"minecraft:stripped_acacia_wood",item:"minecraft:stripped_acacia_wood",group:7},"minecraft:stripped_acacia_log":{type:"minecraft:stripped_acacia_log",item:"minecraft:stripped_acacia_log",group:7},"minecraft:spruce_wood":{type:"minecraft:spruce_wood",item:"minecraft:spruce_wood",group:7},"minecraft:spruce_log":{type:"minecraft:spruce_log",item:"minecraft:spruce_log",group:7},"minecraft:quartz_pillar":{type:"minecraft:quartz_pillar",item:"minecraft:quartz_pillar",group:7},"minecraft:purpur_pillar":{type:"minecraft:purpur_pillar",item:"minecraft:purpur_pillar",group:7},"minecraft:polished_basalt":{type:"minecraft:polished_basalt",item:"minecraft:polished_basalt",group:7},"minecraft:pearlescent_froglight":{type:"minecraft:pearlescent_froglight",item:"minecraft:pearlescent_froglight",group:7},"minecraft:ochre_froglight":{type:"minecraft:ochre_froglight",item:"minecraft:ochre_froglight",group:7},"minecraft:oak_wood":{type:"minecraft:oak_wood",item:"minecraft:oak_wood",group:7},"minecraft:oak_log":{type:"minecraft:oak_log",item:"minecraft:oak_log",group:7},"minecraft:muddy_mangrove_roots":{type:"minecraft:muddy_mangrove_roots",item:"minecraft:muddy_mangrove_roots",group:7},"minecraft:mangrove_wood":{type:"minecraft:mangrove_wood",item:"minecraft:mangrove_wood",group:7},"minecraft:mangrove_log":{type:"minecraft:mangrove_log",item:"minecraft:mangrove_log",group:7},"minecraft:jungle_wood":{type:"minecraft:jungle_wood",item:"minecraft:jungle_wood",group:7},"minecraft:jungle_log":{type:"minecraft:jungle_log",item:"minecraft:jungle_log",group:7},"minecraft:infested_deepslate":{type:"minecraft:infested_deepslate",item:"minecraft:infested_deepslate",group:7},"minecraft:hay_block":{type:"minecraft:hay_block",item:"minecraft:hay_block",group:7},"minecraft:deepslate":{type:"minecraft:deepslate",item:"minecraft:deepslate",group:7},"minecraft:dark_oak_wood":{type:"minecraft:dark_oak_wood",item:"minecraft:dark_oak_wood",group:7},"minecraft:dark_oak_log":{type:"minecraft:dark_oak_log",item:"minecraft:dark_oak_log",group:7},"minecraft:crimson_stem":{type:"minecraft:crimson_stem",item:"minecraft:crimson_stem",group:7},"minecraft:crimson_hyphae":{type:"minecraft:crimson_hyphae",item:"minecraft:crimson_hyphae",group:7},"minecraft:cherry_wood":{type:"minecraft:cherry_wood",item:"minecraft:cherry_wood",group:7},"minecraft:cherry_log":{type:"minecraft:cherry_log",item:"minecraft:cherry_log",group:7},"minecraft:bone_block":{type:"minecraft:bone_block",item:"minecraft:bone_block",group:7},"minecraft:birch_wood":{type:"minecraft:birch_wood",item:"minecraft:birch_wood",group:7},"minecraft:birch_log":{type:"minecraft:birch_log",item:"minecraft:birch_log",group:7},"minecraft:basalt":{type:"minecraft:basalt",item:"minecraft:basalt",group:7},"minecraft:bamboo_block":{type:"minecraft:bamboo_block",item:"minecraft:bamboo_block",group:7},"minecraft:acacia_wood":{type:"minecraft:acacia_wood",item:"minecraft:acacia_wood",group:7},"minecraft:acacia_log":{type:"minecraft:acacia_log",item:"minecraft:acacia_log",group:7},"minecraft:spruce_leaves":{type:"minecraft:spruce_leaves",item:"minecraft:spruce_leaves",group:6},"minecraft:oak_leaves":{type:"minecraft:oak_leaves",item:"minecraft:oak_leaves",group:6},"minecraft:mangrove_leaves":{type:"minecraft:mangrove_leaves",item:"minecraft:mangrove_leaves",group:6},"minecraft:jungle_leaves":{type:"minecraft:jungle_leaves",item:"minecraft:jungle_leaves",group:6},"minecraft:flowering_azalea_leaves":{type:"minecraft:flowering_azalea_leaves",item:"minecraft:flowering_azalea_leaves",group:6},"minecraft:dark_oak_leaves":{type:"minecraft:dark_oak_leaves",item:"minecraft:dark_oak_leaves",group:6},"minecraft:cherry_leaves":{type:"minecraft:cherry_leaves",item:"minecraft:cherry_leaves",group:6},"minecraft:birch_leaves":{type:"minecraft:birch_leaves",item:"minecraft:birch_leaves",group:6},"minecraft:azalea_leaves":{type:"minecraft:azalea_leaves",item:"minecraft:azalea_leaves",group:6},"minecraft:acacia_leaves":{type:"minecraft:acacia_leaves",item:"minecraft:acacia_leaves",group:6},"minecraft:warped_fence_gate":{type:"minecraft:warped_fence_gate",item:"minecraft:warped_fence_gate",group:4},"minecraft:spruce_fence_gate":{type:"minecraft:spruce_fence_gate",item:"minecraft:spruce_fence_gate",group:4},"minecraft:oak_fence_gate":{type:"minecraft:oak_fence_gate",item:"minecraft:oak_fence_gate",group:4},"minecraft:mangrove_fence_gate":{type:"minecraft:mangrove_fence_gate",item:"minecraft:mangrove_fence_gate",group:4},"minecraft:jungle_fence_gate":{type:"minecraft:jungle_fence_gate",item:"minecraft:jungle_fence_gate",group:4},"minecraft:dark_oak_fence_gate":{type:"minecraft:dark_oak_fence_gate",item:"minecraft:dark_oak_fence_gate",group:4},"minecraft:crimson_fence_gate":{type:"minecraft:crimson_fence_gate",item:"minecraft:crimson_fence_gate",group:4},"minecraft:cherry_fence_gate":{type:"minecraft:cherry_fence_gate",item:"minecraft:cherry_fence_gate",group:4},"minecraft:birch_fence_gate":{type:"minecraft:birch_fence_gate",item:"minecraft:birch_fence_gate",group:4},"minecraft:bamboo_fence_gate":{type:"minecraft:bamboo_fence_gate",item:"minecraft:bamboo_fence_gate",group:4},"minecraft:acacia_fence_gate":{type:"minecraft:acacia_fence_gate",item:"minecraft:acacia_fence_gate",group:4},"minecraft:yellow_stained_glass_pane":{type:"minecraft:yellow_stained_glass_pane",item:"minecraft:yellow_stained_glass_pane",group:3},"minecraft:white_stained_glass_pane":{type:"minecraft:white_stained_glass_pane",item:"minecraft:white_stained_glass_pane",group:3},"minecraft:warped_fence":{type:"minecraft:warped_fence",item:"minecraft:warped_fence",group:3},"minecraft:spruce_fence":{type:"minecraft:spruce_fence",item:"minecraft:spruce_fence",group:3},"minecraft:red_stained_glass_pane":{type:"minecraft:red_stained_glass_pane",item:"minecraft:red_stained_glass_pane",group:3},"minecraft:purple_stained_glass_pane":{type:"minecraft:purple_stained_glass_pane",item:"minecraft:purple_stained_glass_pane",group:3},"minecraft:pink_stained_glass_pane":{type:"minecraft:pink_stained_glass_pane",item:"minecraft:pink_stained_glass_pane",group:3},"minecraft:orange_stained_glass_pane":{type:"minecraft:orange_stained_glass_pane",item:"minecraft:orange_stained_glass_pane",group:3},"minecraft:oak_fence":{type:"minecraft:oak_fence",item:"minecraft:oak_fence",group:3},"minecraft:nether_brick_fence":{type:"minecraft:nether_brick_fence",item:"minecraft:nether_brick_fence",group:3},"minecraft:mangrove_fence":{type:"minecraft:mangrove_fence",item:"minecraft:mangrove_fence",group:3},"minecraft:magenta_stained_glass_pane":{type:"minecraft:magenta_stained_glass_pane",item:"minecraft:magenta_stained_glass_pane",group:3},"minecraft:lime_stained_glass_pane":{type:"minecraft:lime_stained_glass_pane",item:"minecraft:lime_stained_glass_pane",group:3},"minecraft:light_gray_stained_glass_pane":{type:"minecraft:light_gray_stained_glass_pane",item:"minecraft:light_gray_stained_glass_pane",group:3},"minecraft:light_blue_stained_glass_pane":{type:"minecraft:light_blue_stained_glass_pane",item:"minecraft:light_blue_stained_glass_pane",group:3},"minecraft:jungle_fence":{type:"minecraft:jungle_fence",item:"minecraft:jungle_fence",group:3},"minecraft:iron_bars":{type:"minecraft:iron_bars",item:"minecraft:iron_bars",group:3},"minecraft:green_stained_glass_pane":{type:"minecraft:green_stained_glass_pane",item:"minecraft:green_stained_glass_pane",group:3},"minecraft:gray_stained_glass_pane":{type:"minecraft:gray_stained_glass_pane",item:"minecraft:gray_stained_glass_pane",group:3},"minecraft:glass_pane":{type:"minecraft:glass_pane",item:"minecraft:glass_pane",group:3},"minecraft:dark_oak_fence":{type:"minecraft:dark_oak_fence",item:"minecraft:dark_oak_fence",group:3},"minecraft:cyan_stained_glass_pane":{type:"minecraft:cyan_stained_glass_pane",item:"minecraft:cyan_stained_glass_pane",group:3},"minecraft:crimson_fence":{type:"minecraft:crimson_fence",item:"minecraft:crimson_fence",group:3},"minecraft:cherry_fence":{type:"minecraft:cherry_fence",item:"minecraft:cherry_fence",group:3},"minecraft:brown_stained_glass_pane":{type:"minecraft:brown_stained_glass_pane",item:"minecraft:brown_stained_glass_pane",group:3},"minecraft:blue_stained_glass_pane":{type:"minecraft:blue_stained_glass_pane",item:"minecraft:blue_stained_glass_pane",group:3},"minecraft:black_stained_glass_pane":{type:"minecraft:black_stained_glass_pane",item:"minecraft:black_stained_glass_pane",group:3},"minecraft:birch_fence":{type:"minecraft:birch_fence",item:"minecraft:birch_fence",group:3},"minecraft:bamboo_fence":{type:"minecraft:bamboo_fence",item:"minecraft:bamboo_fence",group:3},"minecraft:acacia_fence":{type:"minecraft:acacia_fence",item:"minecraft:acacia_fence",group:3},"minecraft:weathered_copper_door":{type:"minecraft:weathered_copper_door",item:"minecraft:weathered_copper_door",group:2},"minecraft:waxed_weathered_copper_door":{type:"minecraft:waxed_weathered_copper_door",item:"minecraft:waxed_weathered_copper_door",group:2},"minecraft:waxed_oxidized_copper_door":{type:"minecraft:waxed_oxidized_copper_door",item:"minecraft:waxed_oxidized_copper_door",group:2},"minecraft:waxed_exposed_copper_door":{type:"minecraft:waxed_exposed_copper_door",item:"minecraft:waxed_exposed_copper_door",group:2},"minecraft:waxed_copper_door":{type:"minecraft:waxed_copper_door",item:"minecraft:waxed_copper_door",group:2},"minecraft:warped_door":{type:"minecraft:warped_door",item:"minecraft:warped_door",group:2},"minecraft:spruce_door":{type:"minecraft:spruce_door",item:"minecraft:spruce_door",group:2},"minecraft:oxidized_copper_door":{type:"minecraft:oxidized_copper_door",item:"minecraft:oxidized_copper_door",group:2},"minecraft:oak_door":{type:"minecraft:oak_door",item:"minecraft:oak_door",group:2},"minecraft:mangrove_door":{type:"minecraft:mangrove_door",item:"minecraft:mangrove_door",group:2},"minecraft:jungle_door":{type:"minecraft:jungle_door",item:"minecraft:jungle_door",group:2},"minecraft:iron_door":{type:"minecraft:iron_door",item:"minecraft:iron_door",group:2},"minecraft:exposed_copper_door":{type:"minecraft:exposed_copper_door",item:"minecraft:exposed_copper_door",group:2},"minecraft:dark_oak_door":{type:"minecraft:dark_oak_door",item:"minecraft:dark_oak_door",group:2},"minecraft:crimson_door":{type:"minecraft:crimson_door",item:"minecraft:crimson_door",group:2},"minecraft:copper_door":{type:"minecraft:copper_door",item:"minecraft:copper_door",group:2},"minecraft:cherry_door":{type:"minecraft:cherry_door",item:"minecraft:cherry_door",group:2},"minecraft:birch_door":{type:"minecraft:birch_door",item:"minecraft:birch_door",group:2},"minecraft:bamboo_door":{type:"minecraft:bamboo_door",item:"minecraft:bamboo_door",group:2},"minecraft:acacia_door":{type:"minecraft:acacia_door",item:"minecraft:acacia_door",group:2},"minecraft:warped_button":{type:"minecraft:warped_button",item:"minecraft:warped_button",group:1},"minecraft:stone_button":{type:"minecraft:stone_button",item:"minecraft:stone_button",group:1},"minecraft:spruce_button":{type:"minecraft:spruce_button",item:"minecraft:spruce_button",group:1},"minecraft:polished_blackstone_button":{type:"minecraft:polished_blackstone_button",item:"minecraft:polished_blackstone_button",group:1},"minecraft:oak_button":{type:"minecraft:oak_button",item:"minecraft:oak_button",group:1},"minecraft:mangrove_button":{type:"minecraft:mangrove_button",item:"minecraft:mangrove_button",group:1},"minecraft:lever":{type:"minecraft:lever",item:"minecraft:lever",group:1},"minecraft:jungle_button":{type:"minecraft:jungle_button",item:"minecraft:jungle_button",group:1},"minecraft:dark_oak_button":{type:"minecraft:dark_oak_button",item:"minecraft:dark_oak_button",group:1},"minecraft:crimson_button":{type:"minecraft:crimson_button",item:"minecraft:crimson_button",group:1},"minecraft:cherry_button":{type:"minecraft:cherry_button",item:"minecraft:cherry_button",group:1},"minecraft:birch_button":{type:"minecraft:birch_button",item:"minecraft:birch_button",group:1},"minecraft:bamboo_button":{type:"minecraft:bamboo_button",item:"minecraft:bamboo_button",group:1},"minecraft:acacia_button":{type:"minecraft:acacia_button",item:"minecraft:acacia_button",group:1},"minecraft:yellow_wool":{type:"minecraft:yellow_wool",item:"minecraft:yellow_wool",group:0},"minecraft:yellow_terracotta":{type:"minecraft:yellow_terracotta",item:"minecraft:yellow_terracotta",group:0},"minecraft:yellow_stained_glass":{type:"minecraft:yellow_stained_glass",item:"minecraft:yellow_stained_glass",group:0},"minecraft:yellow_concrete_powder":{type:"minecraft:yellow_concrete_powder",item:"minecraft:yellow_concrete_powder",group:0},"minecraft:yellow_concrete":{type:"minecraft:yellow_concrete",item:"minecraft:yellow_concrete",group:0},"minecraft:yellow_carpet":{type:"minecraft:yellow_carpet",item:"minecraft:yellow_carpet",group:0},"minecraft:wither_rose":{type:"minecraft:wither_rose",item:"minecraft:wither_rose",group:0},"minecraft:white_wool":{type:"minecraft:white_wool",item:"minecraft:white_wool",group:0},"minecraft:white_tulip":{type:"minecraft:white_tulip",item:"minecraft:white_tulip",group:0},"minecraft:white_terracotta":{type:"minecraft:white_terracotta",item:"minecraft:white_terracotta",group:0},"minecraft:white_stained_glass":{type:"minecraft:white_stained_glass",item:"minecraft:white_stained_glass",group:0},"minecraft:white_concrete_powder":{type:"minecraft:white_concrete_powder",item:"minecraft:white_concrete_powder",group:0},"minecraft:white_concrete":{type:"minecraft:white_concrete",item:"minecraft:white_concrete",group:0},"minecraft:white_carpet":{type:"minecraft:white_carpet",item:"minecraft:white_carpet",group:0},"minecraft:wet_sponge":{type:"minecraft:wet_sponge",item:"minecraft:wet_sponge",group:0},"minecraft:weathered_cut_copper":{type:"minecraft:weathered_cut_copper",item:"minecraft:weathered_cut_copper",group:0},"minecraft:weathered_copper":{type:"minecraft:weathered_copper",item:"minecraft:weathered_copper",group:0},"minecraft:weathered_chiseled_copper":{type:"minecraft:weathered_chiseled_copper",item:"minecraft:weathered_chiseled_copper",group:0},"minecraft:waxed_weathered_cut_copper":{type:"minecraft:waxed_weathered_cut_copper",item:"minecraft:waxed_weathered_cut_copper",group:0},"minecraft:waxed_weathered_copper":{type:"minecraft:waxed_weathered_copper",item:"minecraft:waxed_weathered_copper",group:0},"minecraft:waxed_weathered_chiseled_copper":{type:"minecraft:waxed_weathered_chiseled_copper",item:"minecraft:waxed_weathered_chiseled_copper",group:0},"minecraft:waxed_oxidized_cut_copper":{type:"minecraft:waxed_oxidized_cut_copper",item:"minecraft:waxed_oxidized_cut_copper",group:0},"minecraft:waxed_oxidized_copper":{type:"minecraft:waxed_oxidized_copper",item:"minecraft:waxed_oxidized_copper",group:0},"minecraft:waxed_oxidized_chiseled_copper":{type:"minecraft:waxed_oxidized_chiseled_copper",item:"minecraft:waxed_oxidized_chiseled_copper",group:0},"minecraft:waxed_exposed_cut_copper":{type:"minecraft:waxed_exposed_cut_copper",item:"minecraft:waxed_exposed_cut_copper",group:0},"minecraft:waxed_exposed_copper":{type:"minecraft:waxed_exposed_copper",item:"minecraft:waxed_exposed_copper",group:0},"minecraft:waxed_exposed_chiseled_copper":{type:"minecraft:waxed_exposed_chiseled_copper",item:"minecraft:waxed_exposed_chiseled_copper",group:0},"minecraft:waxed_cut_copper":{type:"minecraft:waxed_cut_copper",item:"minecraft:waxed_cut_copper",group:0},"minecraft:waxed_copper_block":{type:"minecraft:waxed_copper_block",item:"minecraft:waxed_copper_block",group:0},"minecraft:waxed_chiseled_copper":{type:"minecraft:waxed_chiseled_copper",item:"minecraft:waxed_chiseled_copper",group:0},"minecraft:warped_wart_block":{type:"minecraft:warped_wart_block",item:"minecraft:warped_wart_block",group:0},"minecraft:warped_roots":{type:"minecraft:warped_roots",item:"minecraft:warped_roots",group:0},"minecraft:warped_planks":{type:"minecraft:warped_planks",item:"minecraft:warped_planks",group:0},"minecraft:warped_nylium":{type:"minecraft:warped_nylium",item:"minecraft:warped_nylium",group:0},"minecraft:warped_fungus":{type:"minecraft:warped_fungus",item:"minecraft:warped_fungus",group:0},"minecraft:tuff_bricks":{type:"minecraft:tuff_bricks",item:"minecraft:tuff_bricks",group:0},"minecraft:tuff":{type:"minecraft:tuff",item:"minecraft:tuff",group:0},"minecraft:tube_coral_block":{type:"minecraft:tube_coral_block",item:"minecraft:tube_coral_block",group:0},"minecraft:torchflower":{type:"minecraft:torchflower",item:"minecraft:torchflower",group:0},"minecraft:tinted_glass":{type:"minecraft:tinted_glass",item:"minecraft:tinted_glass",group:0},"minecraft:terracotta":{type:"minecraft:terracotta",item:"minecraft:terracotta",group:0},"minecraft:structure_void":{type:"minecraft:structure_void",item:"minecraft:structure_void",group:0},"minecraft:stone_bricks":{type:"minecraft:stone_bricks",item:"minecraft:stone_bricks",group:0},"minecraft:stone":{type:"minecraft:stone",item:"minecraft:stone",group:0},"minecraft:spruce_planks":{type:"minecraft:spruce_planks",item:"minecraft:spruce_planks",group:0},"minecraft:spore_blossom":{type:"minecraft:spore_blossom",item:"minecraft:spore_blossom",group:0},"minecraft:sponge":{type:"minecraft:sponge",item:"minecraft:sponge",group:0},"minecraft:spawner":{type:"minecraft:spawner",item:"minecraft:spawner",group:0},"minecraft:soul_soil":{type:"minecraft:soul_soil",item:"minecraft:soul_soil",group:0},"minecraft:soul_sand":{type:"minecraft:soul_sand",item:"minecraft:soul_sand",group:0},"minecraft:snow_block":{type:"minecraft:snow_block",item:"minecraft:snow_block",group:0},"minecraft:smooth_stone":{type:"minecraft:smooth_stone",item:"minecraft:smooth_stone",group:0},"minecraft:smooth_sandstone":{type:"minecraft:smooth_sandstone",item:"minecraft:smooth_sandstone",group:0},"minecraft:smooth_red_sandstone":{type:"minecraft:smooth_red_sandstone",item:"minecraft:smooth_red_sandstone",group:0},"minecraft:smooth_quartz":{type:"minecraft:smooth_quartz",item:"minecraft:smooth_quartz",group:0},"minecraft:smooth_basalt":{type:"minecraft:smooth_basalt",item:"minecraft:smooth_basalt",group:0},"minecraft:smithing_table":{type:"minecraft:smithing_table",item:"minecraft:smithing_table",group:0},"minecraft:slime_block":{type:"minecraft:slime_block",item:"minecraft:slime_block",group:0},"minecraft:shroomlight":{type:"minecraft:shroomlight",item:"minecraft:shroomlight",group:0},"minecraft:short_grass":{type:"minecraft:short_grass",item:"minecraft:short_grass",group:0},"minecraft:seagrass":{type:"minecraft:seagrass",item:"minecraft:seagrass",group:0},"minecraft:sea_lantern":{type:"minecraft:sea_lantern",item:"minecraft:sea_lantern",group:0},"minecraft:sculk":{type:"minecraft:sculk",item:"minecraft:sculk",group:0},"minecraft:sandstone":{type:"minecraft:sandstone",item:"minecraft:sandstone",group:0},"minecraft:sand":{type:"minecraft:sand",item:"minecraft:sand",group:0},"minecraft:rooted_dirt":{type:"minecraft:rooted_dirt",item:"minecraft:rooted_dirt",group:0},"minecraft:reinforced_deepslate":{type:"minecraft:reinforced_deepslate",item:"minecraft:reinforced_deepslate",group:0},"minecraft:redstone_block":{type:"minecraft:redstone_block",item:"minecraft:redstone_block",group:0},"minecraft:red_wool":{type:"minecraft:red_wool",item:"minecraft:red_wool",group:0},"minecraft:red_tulip":{type:"minecraft:red_tulip",item:"minecraft:red_tulip",group:0},"minecraft:red_terracotta":{type:"minecraft:red_terracotta",item:"minecraft:red_terracotta",group:0},"minecraft:red_stained_glass":{type:"minecraft:red_stained_glass",item:"minecraft:red_stained_glass",group:0},"minecraft:red_sandstone":{type:"minecraft:red_sandstone",item:"minecraft:red_sandstone",group:0},"minecraft:red_sand":{type:"minecraft:red_sand",item:"minecraft:red_sand",group:0},"minecraft:red_nether_bricks":{type:"minecraft:red_nether_bricks",item:"minecraft:red_nether_bricks",group:0},"minecraft:red_mushroom":{type:"minecraft:red_mushroom",item:"minecraft:red_mushroom",group:0},"minecraft:red_concrete_powder":{type:"minecraft:red_concrete_powder",item:"minecraft:red_concrete_powder",group:0},"minecraft:red_concrete":{type:"minecraft:red_concrete",item:"minecraft:red_concrete",group:0},"minecraft:red_carpet":{type:"minecraft:red_carpet",item:"minecraft:red_carpet",group:0},"minecraft:raw_iron_block":{type:"minecraft:raw_iron_block",item:"minecraft:raw_iron_block",group:0},"minecraft:raw_gold_block":{type:"minecraft:raw_gold_block",item:"minecraft:raw_gold_block",group:0},"minecraft:raw_copper_block":{type:"minecraft:raw_copper_block",item:"minecraft:raw_copper_block",group:0},"minecraft:quartz_bricks":{type:"minecraft:quartz_bricks",item:"minecraft:quartz_bricks",group:0},"minecraft:quartz_block":{type:"minecraft:quartz_block",item:"minecraft:quartz_block",group:0},"minecraft:purpur_block":{type:"minecraft:purpur_block",item:"minecraft:purpur_block",group:0},"minecraft:purple_wool":{type:"minecraft:purple_wool",item:"minecraft:purple_wool",group:0},"minecraft:purple_terracotta":{type:"minecraft:purple_terracotta",item:"minecraft:purple_terracotta",group:0},"minecraft:purple_stained_glass":{type:"minecraft:purple_stained_glass",item:"minecraft:purple_stained_glass",group:0},"minecraft:purple_concrete_powder":{type:"minecraft:purple_concrete_powder",item:"minecraft:purple_concrete_powder",group:0},"minecraft:purple_concrete":{type:"minecraft:purple_concrete",item:"minecraft:purple_concrete",group:0},"minecraft:purple_carpet":{type:"minecraft:purple_carpet",item:"minecraft:purple_carpet",group:0},"minecraft:pumpkin":{type:"minecraft:pumpkin",item:"minecraft:pumpkin",group:0},"minecraft:prismarine_bricks":{type:"minecraft:prismarine_bricks",item:"minecraft:prismarine_bricks",group:0},"minecraft:prismarine":{type:"minecraft:prismarine",item:"minecraft:prismarine",group:0},"minecraft:powder_snow_bucket":{type:"minecraft:powder_snow",item:"minecraft:powder_snow_bucket",group:0},"minecraft:poppy":{type:"minecraft:poppy",item:"minecraft:poppy",group:0},"minecraft:polished_tuff":{type:"minecraft:polished_tuff",item:"minecraft:polished_tuff",group:0},"minecraft:polished_granite":{type:"minecraft:polished_granite",item:"minecraft:polished_granite",group:0},"minecraft:polished_diorite":{type:"minecraft:polished_diorite",item:"minecraft:polished_diorite",group:0},"minecraft:polished_deepslate":{type:"minecraft:polished_deepslate",item:"minecraft:polished_deepslate",group:0},"minecraft:polished_blackstone_bricks":{type:"minecraft:polished_blackstone_bricks",item:"minecraft:polished_blackstone_bricks",group:0},"minecraft:polished_blackstone":{type:"minecraft:polished_blackstone",item:"minecraft:polished_blackstone",group:0},"minecraft:polished_andesite":{type:"minecraft:polished_andesite",item:"minecraft:polished_andesite",group:0},"minecraft:pink_wool":{type:"minecraft:pink_wool",item:"minecraft:pink_wool",group:0},"minecraft:pink_tulip":{type:"minecraft:pink_tulip",item:"minecraft:pink_tulip",group:0},"minecraft:pink_terracotta":{type:"minecraft:pink_terracotta",item:"minecraft:pink_terracotta",group:0},"minecraft:pink_stained_glass":{type:"minecraft:pink_stained_glass",item:"minecraft:pink_stained_glass",group:0},"minecraft:pink_concrete_powder":{type:"minecraft:pink_concrete_powder",item:"minecraft:pink_concrete_powder",group:0},"minecraft:pink_concrete":{type:"minecraft:pink_concrete",item:"minecraft:pink_concrete",group:0},"minecraft:pink_carpet":{type:"minecraft:pink_carpet",item:"minecraft:pink_carpet",group:0},"minecraft:packed_mud":{type:"minecraft:packed_mud",item:"minecraft:packed_mud",group:0},"minecraft:packed_ice":{type:"minecraft:packed_ice",item:"minecraft:packed_ice",group:0},"minecraft:oxidized_cut_copper":{type:"minecraft:oxidized_cut_copper",item:"minecraft:oxidized_cut_copper",group:0},"minecraft:oxidized_copper":{type:"minecraft:oxidized_copper",item:"minecraft:oxidized_copper",group:0},"minecraft:oxidized_chiseled_copper":{type:"minecraft:oxidized_chiseled_copper",item:"minecraft:oxidized_chiseled_copper",group:0},"minecraft:oxeye_daisy":{type:"minecraft:oxeye_daisy",item:"minecraft:oxeye_daisy",group:0},"minecraft:orange_wool":{type:"minecraft:orange_wool",item:"minecraft:orange_wool",group:0},"minecraft:orange_tulip":{type:"minecraft:orange_tulip",item:"minecraft:orange_tulip",group:0},"minecraft:orange_terracotta":{type:"minecraft:orange_terracotta",item:"minecraft:orange_terracotta",group:0},"minecraft:orange_stained_glass":{type:"minecraft:orange_stained_glass",item:"minecraft:orange_stained_glass",group:0},"minecraft:orange_concrete_powder":{type:"minecraft:orange_concrete_powder",item:"minecraft:orange_concrete_powder",group:0},"minecraft:orange_concrete":{type:"minecraft:orange_concrete",item:"minecraft:orange_concrete",group:0},"minecraft:orange_carpet":{type:"minecraft:orange_carpet",item:"minecraft:orange_carpet",group:0},"minecraft:obsidian":{type:"minecraft:obsidian",item:"minecraft:obsidian",group:0},"minecraft:oak_planks":{type:"minecraft:oak_planks",item:"minecraft:oak_planks",group:0},"minecraft:netherrack":{type:"minecraft:netherrack",item:"minecraft:netherrack",group:0},"minecraft:netherite_block":{type:"minecraft:netherite_block",item:"minecraft:netherite_block",group:0},"minecraft:nether_wart_block":{type:"minecraft:nether_wart_block",item:"minecraft:nether_wart_block",group:0},"minecraft:nether_sprouts":{type:"minecraft:nether_sprouts",item:"minecraft:nether_sprouts",group:0},"minecraft:nether_quartz_ore":{type:"minecraft:nether_quartz_ore",item:"minecraft:nether_quartz_ore",group:0},"minecraft:nether_gold_ore":{type:"minecraft:nether_gold_ore",item:"minecraft:nether_gold_ore",group:0},"minecraft:nether_bricks":{type:"minecraft:nether_bricks",item:"minecraft:nether_bricks",group:0},"minecraft:mud_bricks":{type:"minecraft:mud_bricks",item:"minecraft:mud_bricks",group:0},"minecraft:mud":{type:"minecraft:mud",item:"minecraft:mud",group:0},"minecraft:mossy_stone_bricks":{type:"minecraft:mossy_stone_bricks",item:"minecraft:mossy_stone_bricks",group:0},"minecraft:mossy_cobblestone":{type:"minecraft:mossy_cobblestone",item:"minecraft:mossy_cobblestone",group:0},"minecraft:moss_carpet":{type:"minecraft:moss_carpet",item:"minecraft:moss_carpet",group:0},"minecraft:moss_block":{type:"minecraft:moss_block",item:"minecraft:moss_block",group:0},"minecraft:melon":{type:"minecraft:melon",item:"minecraft:melon",group:0},"minecraft:mangrove_planks":{type:"minecraft:mangrove_planks",item:"minecraft:mangrove_planks",group:0},"minecraft:magma_block":{type:"minecraft:magma_block",item:"minecraft:magma_block",group:0},"minecraft:magenta_wool":{type:"minecraft:magenta_wool",item:"minecraft:magenta_wool",group:0},"minecraft:magenta_terracotta":{type:"minecraft:magenta_terracotta",item:"minecraft:magenta_terracotta",group:0},"minecraft:magenta_stained_glass":{type:"minecraft:magenta_stained_glass",item:"minecraft:magenta_stained_glass",group:0},"minecraft:magenta_concrete_powder":{type:"minecraft:magenta_concrete_powder",item:"minecraft:magenta_concrete_powder",group:0},"minecraft:magenta_concrete":{type:"minecraft:magenta_concrete",item:"minecraft:magenta_concrete",group:0},"minecraft:magenta_carpet":{type:"minecraft:magenta_carpet",item:"minecraft:magenta_carpet",group:0},"minecraft:lodestone":{type:"minecraft:lodestone",item:"minecraft:lodestone",group:0},"minecraft:lime_wool":{type:"minecraft:lime_wool",item:"minecraft:lime_wool",group:0},"minecraft:lime_terracotta":{type:"minecraft:lime_terracotta",item:"minecraft:lime_terracotta",group:0},"minecraft:lime_stained_glass":{type:"minecraft:lime_stained_glass",item:"minecraft:lime_stained_glass",group:0},"minecraft:lime_concrete_powder":{type:"minecraft:lime_concrete_powder",item:"minecraft:lime_concrete_powder",group:0},"minecraft:lime_concrete":{type:"minecraft:lime_concrete",item:"minecraft:lime_concrete",group:0},"minecraft:lime_carpet":{type:"minecraft:lime_carpet",item:"minecraft:lime_carpet",group:0},"minecraft:lily_pad":{type:"minecraft:lily_pad",item:"minecraft:lily_pad",group:0},"minecraft:lily_of_the_valley":{type:"minecraft:lily_of_the_valley",item:"minecraft:lily_of_the_valley",group:0},"minecraft:light_gray_wool":{type:"minecraft:light_gray_wool",item:"minecraft:light_gray_wool",group:0},"minecraft:light_gray_terracotta":{type:"minecraft:light_gray_terracotta",item:"minecraft:light_gray_terracotta",group:0},"minecraft:light_gray_stained_glass":{type:"minecraft:light_gray_stained_glass",item:"minecraft:light_gray_stained_glass",group:0},"minecraft:light_gray_concrete_powder":{type:"minecraft:light_gray_concrete_powder",item:"minecraft:light_gray_concrete_powder",group:0},"minecraft:light_gray_concrete":{type:"minecraft:light_gray_concrete",item:"minecraft:light_gray_concrete",group:0},"minecraft:light_gray_carpet":{type:"minecraft:light_gray_carpet",item:"minecraft:light_gray_carpet",group:0},"minecraft:light_blue_wool":{type:"minecraft:light_blue_wool",item:"minecraft:light_blue_wool",group:0},"minecraft:light_blue_terracotta":{type:"minecraft:light_blue_terracotta",item:"minecraft:light_blue_terracotta",group:0},"minecraft:light_blue_stained_glass":{type:"minecraft:light_blue_stained_glass",item:"minecraft:light_blue_stained_glass",group:0},"minecraft:light_blue_concrete_powder":{type:"minecraft:light_blue_concrete_powder",item:"minecraft:light_blue_concrete_powder",group:0},"minecraft:light_blue_concrete":{type:"minecraft:light_blue_concrete",item:"minecraft:light_blue_concrete",group:0},"minecraft:light_blue_carpet":{type:"minecraft:light_blue_carpet",item:"minecraft:light_blue_carpet",group:0},"minecraft:lapis_ore":{type:"minecraft:lapis_ore",item:"minecraft:lapis_ore",group:0},"minecraft:lapis_block":{type:"minecraft:lapis_block",item:"minecraft:lapis_block",group:0},"minecraft:jungle_planks":{type:"minecraft:jungle_planks",item:"minecraft:jungle_planks",group:0},"minecraft:iron_ore":{type:"minecraft:iron_ore",item:"minecraft:iron_ore",group:0},"minecraft:iron_block":{type:"minecraft:iron_block",item:"minecraft:iron_block",group:0},"minecraft:infested_stone_bricks":{type:"minecraft:infested_stone_bricks",item:"minecraft:infested_stone_bricks",group:0},"minecraft:infested_stone":{type:"minecraft:infested_stone",item:"minecraft:infested_stone",group:0},"minecraft:infested_mossy_stone_bricks":{type:"minecraft:infested_mossy_stone_bricks",item:"minecraft:infested_mossy_stone_bricks",group:0},"minecraft:infested_cracked_stone_bricks":{type:"minecraft:infested_cracked_stone_bricks",item:"minecraft:infested_cracked_stone_bricks",group:0},"minecraft:infested_cobblestone":{type:"minecraft:infested_cobblestone",item:"minecraft:infested_cobblestone",group:0},"minecraft:infested_chiseled_stone_bricks":{type:"minecraft:infested_chiseled_stone_bricks",item:"minecraft:infested_chiseled_stone_bricks",group:0},"minecraft:ice":{type:"minecraft:ice",item:"minecraft:ice",group:0},"minecraft:horn_coral_block":{type:"minecraft:horn_coral_block",item:"minecraft:horn_coral_block",group:0},"minecraft:honeycomb_block":{type:"minecraft:honeycomb_block",item:"minecraft:honeycomb_block",group:0},"minecraft:honey_block":{type:"minecraft:honey_block",item:"minecraft:honey_block",group:0},"minecraft:green_wool":{type:"minecraft:green_wool",item:"minecraft:green_wool",group:0},"minecraft:green_terracotta":{type:"minecraft:green_terracotta",item:"minecraft:green_terracotta",group:0},"minecraft:green_stained_glass":{type:"minecraft:green_stained_glass",item:"minecraft:green_stained_glass",group:0},"minecraft:green_concrete_powder":{type:"minecraft:green_concrete_powder",item:"minecraft:green_concrete_powder",group:0},"minecraft:green_concrete":{type:"minecraft:green_concrete",item:"minecraft:green_concrete",group:0},"minecraft:green_carpet":{type:"minecraft:green_carpet",item:"minecraft:green_carpet",group:0},"minecraft:gray_wool":{type:"minecraft:gray_wool",item:"minecraft:gray_wool",group:0},"minecraft:gray_terracotta":{type:"minecraft:gray_terracotta",item:"minecraft:gray_terracotta",group:0},"minecraft:gray_stained_glass":{type:"minecraft:gray_stained_glass",item:"minecraft:gray_stained_glass",group:0},"minecraft:gray_concrete_powder":{type:"minecraft:gray_concrete_powder",item:"minecraft:gray_concrete_powder",group:0},"minecraft:gray_concrete":{type:"minecraft:gray_concrete",item:"minecraft:gray_concrete",group:0},"minecraft:gray_carpet":{type:"minecraft:gray_carpet",item:"minecraft:gray_carpet",group:0},"minecraft:gravel":{type:"minecraft:gravel",item:"minecraft:gravel",group:0},"minecraft:granite":{type:"minecraft:granite",item:"minecraft:granite",group:0},"minecraft:gold_ore":{type:"minecraft:gold_ore",item:"minecraft:gold_ore",group:0},"minecraft:gold_block":{type:"minecraft:gold_block",item:"minecraft:gold_block",group:0},"minecraft:glowstone":{type:"minecraft:glowstone",item:"minecraft:glowstone",group:0},"minecraft:glass":{type:"minecraft:glass",item:"minecraft:glass",group:0},"minecraft:gilded_blackstone":{type:"minecraft:gilded_blackstone",item:"minecraft:gilded_blackstone",group:0},"minecraft:frogspawn":{type:"minecraft:frogspawn",item:"minecraft:frogspawn",group:0},"minecraft:flowering_azalea":{type:"minecraft:flowering_azalea",item:"minecraft:flowering_azalea",group:0},"minecraft:flower_pot":{type:"minecraft:flower_pot",item:"minecraft:flower_pot",group:0},"minecraft:fletching_table":{type:"minecraft:fletching_table",item:"minecraft:fletching_table",group:0},"minecraft:fire_coral_block":{type:"minecraft:fire_coral_block",item:"minecraft:fire_coral_block",group:0},"minecraft:fern":{type:"minecraft:fern",item:"minecraft:fern",group:0},"minecraft:exposed_cut_copper":{type:"minecraft:exposed_cut_copper",item:"minecraft:exposed_cut_copper",group:0},"minecraft:exposed_copper":{type:"minecraft:exposed_copper",item:"minecraft:exposed_copper",group:0},"minecraft:exposed_chiseled_copper":{type:"minecraft:exposed_chiseled_copper",item:"minecraft:exposed_chiseled_copper",group:0},"minecraft:end_stone_bricks":{type:"minecraft:end_stone_bricks",item:"minecraft:end_stone_bricks",group:0},"minecraft:end_stone":{type:"minecraft:end_stone",item:"minecraft:end_stone",group:0},"minecraft:enchanting_table":{type:"minecraft:enchanting_table",item:"minecraft:enchanting_table",group:0},"minecraft:emerald_ore":{type:"minecraft:emerald_ore",item:"minecraft:emerald_ore",group:0},"minecraft:emerald_block":{type:"minecraft:emerald_block",item:"minecraft:emerald_block",group:0},"minecraft:dripstone_block":{type:"minecraft:dripstone_block",item:"minecraft:dripstone_block",group:0},"minecraft:dried_kelp_block":{type:"minecraft:dried_kelp_block",item:"minecraft:dried_kelp_block",group:0},"minecraft:dragon_egg":{type:"minecraft:dragon_egg",item:"minecraft:dragon_egg",group:0},"minecraft:dirt_path":{type:"minecraft:dirt_path",item:"minecraft:dirt_path",group:0},"minecraft:dirt":{type:"minecraft:dirt",item:"minecraft:dirt",group:0},"minecraft:diorite":{type:"minecraft:diorite",item:"minecraft:diorite",group:0},"minecraft:diamond_ore":{type:"minecraft:diamond_ore",item:"minecraft:diamond_ore",group:0},"minecraft:diamond_block":{type:"minecraft:diamond_block",item:"minecraft:diamond_block",group:0},"minecraft:deepslate_tiles":{type:"minecraft:deepslate_tiles",item:"minecraft:deepslate_tiles",group:0},"minecraft:deepslate_lapis_ore":{type:"minecraft:deepslate_lapis_ore",item:"minecraft:deepslate_lapis_ore",group:0},"minecraft:deepslate_iron_ore":{type:"minecraft:deepslate_iron_ore",item:"minecraft:deepslate_iron_ore",group:0},"minecraft:deepslate_gold_ore":{type:"minecraft:deepslate_gold_ore",item:"minecraft:deepslate_gold_ore",group:0},"minecraft:deepslate_emerald_ore":{type:"minecraft:deepslate_emerald_ore",item:"minecraft:deepslate_emerald_ore",group:0},"minecraft:deepslate_diamond_ore":{type:"minecraft:deepslate_diamond_ore",item:"minecraft:deepslate_diamond_ore",group:0},"minecraft:deepslate_copper_ore":{type:"minecraft:deepslate_copper_ore",item:"minecraft:deepslate_copper_ore",group:0},"minecraft:deepslate_coal_ore":{type:"minecraft:deepslate_coal_ore",item:"minecraft:deepslate_coal_ore",group:0},"minecraft:deepslate_bricks":{type:"minecraft:deepslate_bricks",item:"minecraft:deepslate_bricks",group:0},"minecraft:dead_tube_coral_block":{type:"minecraft:dead_tube_coral_block",item:"minecraft:dead_tube_coral_block",group:0},"minecraft:dead_horn_coral_block":{type:"minecraft:dead_horn_coral_block",item:"minecraft:dead_horn_coral_block",group:0},"minecraft:dead_fire_coral_block":{type:"minecraft:dead_fire_coral_block",item:"minecraft:dead_fire_coral_block",group:0},"minecraft:dead_bush":{type:"minecraft:dead_bush",item:"minecraft:dead_bush",group:0},"minecraft:dead_bubble_coral_block":{type:"minecraft:dead_bubble_coral_block",item:"minecraft:dead_bubble_coral_block",group:0},"minecraft:dead_brain_coral_block":{type:"minecraft:dead_brain_coral_block",item:"minecraft:dead_brain_coral_block",group:0},"minecraft:dark_prismarine":{type:"minecraft:dark_prismarine",item:"minecraft:dark_prismarine",group:0},"minecraft:dark_oak_planks":{type:"minecraft:dark_oak_planks",item:"minecraft:dark_oak_planks",group:0},"minecraft:dandelion":{type:"minecraft:dandelion",item:"minecraft:dandelion",group:0},"minecraft:cyan_wool":{type:"minecraft:cyan_wool",item:"minecraft:cyan_wool",group:0},"minecraft:cyan_terracotta":{type:"minecraft:cyan_terracotta",item:"minecraft:cyan_terracotta",group:0},"minecraft:cyan_stained_glass":{type:"minecraft:cyan_stained_glass",item:"minecraft:cyan_stained_glass",group:0},"minecraft:cyan_concrete_powder":{type:"minecraft:cyan_concrete_powder",item:"minecraft:cyan_concrete_powder",group:0},"minecraft:cyan_concrete":{type:"minecraft:cyan_concrete",item:"minecraft:cyan_concrete",group:0},"minecraft:cyan_carpet":{type:"minecraft:cyan_carpet",item:"minecraft:cyan_carpet",group:0},"minecraft:cut_sandstone":{type:"minecraft:cut_sandstone",item:"minecraft:cut_sandstone",group:0},"minecraft:cut_red_sandstone":{type:"minecraft:cut_red_sandstone",item:"minecraft:cut_red_sandstone",group:0},"minecraft:cut_copper":{type:"minecraft:cut_copper",item:"minecraft:cut_copper",group:0},"minecraft:crying_obsidian":{type:"minecraft:crying_obsidian",item:"minecraft:crying_obsidian",group:0},"minecraft:crimson_roots":{type:"minecraft:crimson_roots",item:"minecraft:crimson_roots",group:0},"minecraft:crimson_planks":{type:"minecraft:crimson_planks",item:"minecraft:crimson_planks",group:0},"minecraft:crimson_nylium":{type:"minecraft:crimson_nylium",item:"minecraft:crimson_nylium",group:0},"minecraft:crimson_fungus":{type:"minecraft:crimson_fungus",item:"minecraft:crimson_fungus",group:0},"minecraft:crafting_table":{type:"minecraft:crafting_table",item:"minecraft:crafting_table",group:0},"minecraft:cracked_stone_bricks":{type:"minecraft:cracked_stone_bricks",item:"minecraft:cracked_stone_bricks",group:0},"minecraft:cracked_polished_blackstone_bricks":{type:"minecraft:cracked_polished_blackstone_bricks",item:"minecraft:cracked_polished_blackstone_bricks",group:0},"minecraft:cracked_nether_bricks":{type:"minecraft:cracked_nether_bricks",item:"minecraft:cracked_nether_bricks",group:0},"minecraft:cracked_deepslate_tiles":{type:"minecraft:cracked_deepslate_tiles",item:"minecraft:cracked_deepslate_tiles",group:0},"minecraft:cracked_deepslate_bricks":{type:"minecraft:cracked_deepslate_bricks",item:"minecraft:cracked_deepslate_bricks",group:0},"minecraft:cornflower":{type:"minecraft:cornflower",item:"minecraft:cornflower",group:0},"minecraft:copper_ore":{type:"minecraft:copper_ore",item:"minecraft:copper_ore",group:0},"minecraft:copper_block":{type:"minecraft:copper_block",item:"minecraft:copper_block",group:0},"minecraft:cobweb":{type:"minecraft:cobweb",item:"minecraft:cobweb",group:0},"minecraft:cobblestone":{type:"minecraft:cobblestone",item:"minecraft:cobblestone",group:0},"minecraft:cobbled_deepslate":{type:"minecraft:cobbled_deepslate",item:"minecraft:cobbled_deepslate",group:0},"minecraft:coarse_dirt":{type:"minecraft:coarse_dirt",item:"minecraft:coarse_dirt",group:0},"minecraft:coal_ore":{type:"minecraft:coal_ore",item:"minecraft:coal_ore",group:0},"minecraft:coal_block":{type:"minecraft:coal_block",item:"minecraft:coal_block",group:0},"minecraft:clay":{type:"minecraft:clay",item:"minecraft:clay",group:0},"minecraft:chiseled_tuff_bricks":{type:"minecraft:chiseled_tuff_bricks",item:"minecraft:chiseled_tuff_bricks",group:0},"minecraft:chiseled_tuff":{type:"minecraft:chiseled_tuff",item:"minecraft:chiseled_tuff",group:0},"minecraft:chiseled_stone_bricks":{type:"minecraft:chiseled_stone_bricks",item:"minecraft:chiseled_stone_bricks",group:0},"minecraft:chiseled_sandstone":{type:"minecraft:chiseled_sandstone",item:"minecraft:chiseled_sandstone",group:0},"minecraft:chiseled_red_sandstone":{type:"minecraft:chiseled_red_sandstone",item:"minecraft:chiseled_red_sandstone",group:0},"minecraft:chiseled_quartz_block":{type:"minecraft:chiseled_quartz_block",item:"minecraft:chiseled_quartz_block",group:0},"minecraft:chiseled_polished_blackstone":{type:"minecraft:chiseled_polished_blackstone",item:"minecraft:chiseled_polished_blackstone",group:0},"minecraft:chiseled_nether_bricks":{type:"minecraft:chiseled_nether_bricks",item:"minecraft:chiseled_nether_bricks",group:0},"minecraft:chiseled_deepslate":{type:"minecraft:chiseled_deepslate",item:"minecraft:chiseled_deepslate",group:0},"minecraft:chiseled_copper":{type:"minecraft:chiseled_copper",item:"minecraft:chiseled_copper",group:0},"minecraft:cherry_planks":{type:"minecraft:cherry_planks",item:"minecraft:cherry_planks",group:0},"minecraft:cartography_table":{type:"minecraft:cartography_table",item:"minecraft:cartography_table",group:0},"minecraft:calcite":{type:"minecraft:calcite",item:"minecraft:calcite",group:0},"minecraft:budding_amethyst":{type:"minecraft:budding_amethyst",item:"minecraft:budding_amethyst",group:0},"minecraft:bubble_coral_block":{type:"minecraft:bubble_coral_block",item:"minecraft:bubble_coral_block",group:0},"minecraft:brown_wool":{type:"minecraft:brown_wool",item:"minecraft:brown_wool",group:0},"minecraft:brown_terracotta":{type:"minecraft:brown_terracotta",item:"minecraft:brown_terracotta",group:0},"minecraft:brown_stained_glass":{type:"minecraft:brown_stained_glass",item:"minecraft:brown_stained_glass",group:0},"minecraft:brown_mushroom":{type:"minecraft:brown_mushroom",item:"minecraft:brown_mushroom",group:0},"minecraft:brown_concrete_powder":{type:"minecraft:brown_concrete_powder",item:"minecraft:brown_concrete_powder",group:0},"minecraft:brown_concrete":{type:"minecraft:brown_concrete",item:"minecraft:brown_concrete",group:0},"minecraft:brown_carpet":{type:"minecraft:brown_carpet",item:"minecraft:brown_carpet",group:0},"minecraft:bricks":{type:"minecraft:bricks",item:"minecraft:bricks",group:0},"minecraft:brain_coral_block":{type:"minecraft:brain_coral_block",item:"minecraft:brain_coral_block",group:0},"minecraft:bookshelf":{type:"minecraft:bookshelf",item:"minecraft:bookshelf",group:0},"minecraft:blue_wool":{type:"minecraft:blue_wool",item:"minecraft:blue_wool",group:0},"minecraft:blue_terracotta":{type:"minecraft:blue_terracotta",item:"minecraft:blue_terracotta",group:0},"minecraft:blue_stained_glass":{type:"minecraft:blue_stained_glass",item:"minecraft:blue_stained_glass",group:0},"minecraft:blue_orchid":{type:"minecraft:blue_orchid",item:"minecraft:blue_orchid",group:0},"minecraft:blue_ice":{type:"minecraft:blue_ice",item:"minecraft:blue_ice",group:0},"minecraft:blue_concrete_powder":{type:"minecraft:blue_concrete_powder",item:"minecraft:blue_concrete_powder",group:0},"minecraft:blue_concrete":{type:"minecraft:blue_concrete",item:"minecraft:blue_concrete",group:0},"minecraft:blue_carpet":{type:"minecraft:blue_carpet",item:"minecraft:blue_carpet",group:0},"minecraft:blackstone":{type:"minecraft:blackstone",item:"minecraft:blackstone",group:0},"minecraft:black_wool":{type:"minecraft:black_wool",item:"minecraft:black_wool",group:0},"minecraft:black_terracotta":{type:"minecraft:black_terracotta",item:"minecraft:black_terracotta",group:0},"minecraft:black_stained_glass":{type:"minecraft:black_stained_glass",item:"minecraft:black_stained_glass",group:0},"minecraft:black_concrete_powder":{type:"minecraft:black_concrete_powder",item:"minecraft:black_concrete_powder",group:0},"minecraft:black_concrete":{type:"minecraft:black_concrete",item:"minecraft:black_concrete",group:0},"minecraft:black_carpet":{type:"minecraft:black_carpet",item:"minecraft:black_carpet",group:0},"minecraft:birch_planks":{type:"minecraft:birch_planks",item:"minecraft:birch_planks",group:0},"minecraft:bedrock":{type:"minecraft:bedrock",item:"minecraft:bedrock",group:0},"minecraft:beacon":{type:"minecraft:beacon",item:"minecraft:beacon",group:0},"minecraft:bamboo_planks":{type:"minecraft:bamboo_planks",item:"minecraft:bamboo_planks",group:0},"minecraft:bamboo_mosaic":{type:"minecraft:bamboo_mosaic",item:"minecraft:bamboo_mosaic",group:0},"minecraft:azure_bluet":{type:"minecraft:azure_bluet",item:"minecraft:azure_bluet",group:0},"minecraft:azalea":{type:"minecraft:azalea",item:"minecraft:azalea",group:0},"minecraft:andesite":{type:"minecraft:andesite",item:"minecraft:andesite",group:0},"minecraft:ancient_debris":{type:"minecraft:ancient_debris",item:"minecraft:ancient_debris",group:0},"minecraft:amethyst_block":{type:"minecraft:amethyst_block",item:"minecraft:amethyst_block",group:0},"minecraft:allium":{type:"minecraft:allium",item:"minecraft:allium",group:0},"minecraft:air":{type:"minecraft:air",item:"minecraft:air",group:0},"minecraft:acacia_planks":{type:"minecraft:acacia_planks",item:"minecraft:acacia_planks",group:0}} +data modify storage bs:const block.items set value {"minecraft:vine":{type:"minecraft:vine",item:"minecraft:vine",group:114},"minecraft:vault":{type:"minecraft:vault",item:"minecraft:vault",group:113},"minecraft:turtle_egg":{type:"minecraft:turtle_egg",item:"minecraft:turtle_egg",group:112},"minecraft:tripwire_hook":{type:"minecraft:tripwire_hook",item:"minecraft:tripwire_hook",group:111},"minecraft:string":{type:"minecraft:tripwire",item:"minecraft:string",group:110},"minecraft:trial_spawner":{type:"minecraft:trial_spawner",item:"minecraft:trial_spawner",group:109},"minecraft:torchflower_seeds":{type:"minecraft:torchflower_crop",item:"minecraft:torchflower_seeds",group:108},"minecraft:tnt":{type:"minecraft:tnt",item:"minecraft:tnt",group:107},"minecraft:suspicious_sand":{type:"minecraft:suspicious_sand",item:"minecraft:suspicious_sand",group:106},"minecraft:suspicious_gravel":{type:"minecraft:suspicious_gravel",item:"minecraft:suspicious_gravel",group:106},"minecraft:structure_block":{type:"minecraft:structure_block",item:"minecraft:structure_block",group:105},"minecraft:snow":{type:"minecraft:snow",item:"minecraft:snow",group:104},"minecraft:sniffer_egg":{type:"minecraft:sniffer_egg",item:"minecraft:sniffer_egg",group:103},"minecraft:small_dripleaf":{type:"minecraft:small_dripleaf",item:"minecraft:small_dripleaf",group:102},"minecraft:sea_pickle":{type:"minecraft:sea_pickle",item:"minecraft:sea_pickle",group:101},"minecraft:sculk_shrieker":{type:"minecraft:sculk_shrieker",item:"minecraft:sculk_shrieker",group:100},"minecraft:sculk_sensor":{type:"minecraft:sculk_sensor",item:"minecraft:sculk_sensor",group:99},"minecraft:sculk_catalyst":{type:"minecraft:sculk_catalyst",item:"minecraft:sculk_catalyst",group:98},"minecraft:scaffolding":{type:"minecraft:scaffolding",item:"minecraft:scaffolding",group:97},"minecraft:respawn_anchor":{type:"minecraft:respawn_anchor",item:"minecraft:respawn_anchor",group:96},"minecraft:repeater":{type:"minecraft:repeater",item:"minecraft:repeater",group:95},"minecraft:redstone":{type:"minecraft:redstone_wire",item:"minecraft:redstone",group:94},"minecraft:redstone_torch":{type:"minecraft:redstone_torch",item:"minecraft:redstone_torch",group:92},"minecraft:rail":{type:"minecraft:rail",item:"minecraft:rail",group:91},"minecraft:cauldron":{type:"minecraft:cauldron",item:"minecraft:cauldron",group:0},"minecraft:pointed_dripstone":{type:"minecraft:pointed_dripstone",item:"minecraft:pointed_dripstone",group:89},"minecraft:pitcher_pod":{type:"minecraft:pitcher_crop",item:"minecraft:pitcher_pod",group:88},None:{type:"minecraft:bamboo_sapling",group:0},"minecraft:sticky_piston":{type:"minecraft:sticky_piston",item:"minecraft:sticky_piston",group:86},"minecraft:piston":{type:"minecraft:piston",item:"minecraft:piston",group:86},"minecraft:pink_petals":{type:"minecraft:pink_petals",item:"minecraft:pink_petals",group:85},"minecraft:pale_moss_carpet":{type:"minecraft:pale_moss_carpet",item:"minecraft:pale_moss_carpet",group:84},"minecraft:pale_hanging_moss":{type:"minecraft:pale_hanging_moss",item:"minecraft:pale_hanging_moss",group:83},"minecraft:observer":{type:"minecraft:observer",item:"minecraft:observer",group:82},"minecraft:note_block":{type:"minecraft:note_block",item:"minecraft:note_block",group:81},"minecraft:mangrove_propagule":{type:"minecraft:mangrove_propagule",item:"minecraft:mangrove_propagule",group:78},"minecraft:lightning_rod":{type:"minecraft:lightning_rod",item:"minecraft:lightning_rod",group:77},"minecraft:light":{type:"minecraft:light",item:"minecraft:light",group:76},"minecraft:lectern":{type:"minecraft:lectern",item:"minecraft:lectern",group:75},"minecraft:water_bucket":{type:"minecraft:water",item:"minecraft:water_bucket",group:74},"minecraft:lava_bucket":{type:"minecraft:lava",item:"minecraft:lava_bucket",group:74},"minecraft:tall_grass":{type:"minecraft:tall_grass",item:"minecraft:tall_grass",group:73},"minecraft:sunflower":{type:"minecraft:sunflower",item:"minecraft:sunflower",group:73},"minecraft:rose_bush":{type:"minecraft:rose_bush",item:"minecraft:rose_bush",group:73},"minecraft:pitcher_plant":{type:"minecraft:pitcher_plant",item:"minecraft:pitcher_plant",group:73},"minecraft:peony":{type:"minecraft:peony",item:"minecraft:peony",group:73},"minecraft:lilac":{type:"minecraft:lilac",item:"minecraft:lilac",group:73},"minecraft:large_fern":{type:"minecraft:large_fern",item:"minecraft:large_fern",group:73},"minecraft:soul_lantern":{type:"minecraft:soul_lantern",item:"minecraft:soul_lantern",group:72},"minecraft:lantern":{type:"minecraft:lantern",item:"minecraft:lantern",group:72},"minecraft:weeping_vines":{type:"minecraft:weeping_vines",item:"minecraft:weeping_vines",group:71},"minecraft:twisting_vines":{type:"minecraft:twisting_vines",item:"minecraft:twisting_vines",group:71},"minecraft:kelp":{type:"minecraft:kelp",item:"minecraft:kelp",group:71},"minecraft:jukebox":{type:"minecraft:jukebox",item:"minecraft:jukebox",group:70},"minecraft:jigsaw":{type:"minecraft:jigsaw",item:"minecraft:jigsaw",group:69},"minecraft:hopper":{type:"minecraft:hopper",item:"minecraft:hopper",group:68},"minecraft:target":{type:"minecraft:target",item:"minecraft:target",group:67},"minecraft:light_weighted_pressure_plate":{type:"minecraft:light_weighted_pressure_plate",item:"minecraft:light_weighted_pressure_plate",group:67},"minecraft:heavy_weighted_pressure_plate":{type:"minecraft:heavy_weighted_pressure_plate",item:"minecraft:heavy_weighted_pressure_plate",group:67},"minecraft:grindstone":{type:"minecraft:grindstone",item:"minecraft:grindstone",group:66},"minecraft:podzol":{type:"minecraft:podzol",item:"minecraft:podzol",group:65},"minecraft:mycelium":{type:"minecraft:mycelium",item:"minecraft:mycelium",group:65},"minecraft:grass_block":{type:"minecraft:grass_block",item:"minecraft:grass_block",group:65},"minecraft:sculk_vein":{type:"minecraft:sculk_vein",item:"minecraft:sculk_vein",group:64},"minecraft:glow_lichen":{type:"minecraft:glow_lichen",item:"minecraft:glow_lichen",group:64},"minecraft:farmland":{type:"minecraft:farmland",item:"minecraft:farmland",group:62},"minecraft:end_portal_frame":{type:"minecraft:end_portal_frame",item:"minecraft:end_portal_frame",group:61},"minecraft:dropper":{type:"minecraft:dropper",item:"minecraft:dropper",group:60},"minecraft:dispenser":{type:"minecraft:dispenser",item:"minecraft:dispenser",group:60},"minecraft:decorated_pot":{type:"minecraft:decorated_pot",item:"minecraft:decorated_pot",group:59},"minecraft:daylight_detector":{type:"minecraft:daylight_detector",item:"minecraft:daylight_detector",group:58},"minecraft:zombie_head":{type:"minecraft:zombie_head",item:"minecraft:zombie_head",group:56},"minecraft:wither_skeleton_skull":{type:"minecraft:wither_skeleton_skull",item:"minecraft:wither_skeleton_skull",group:56},"minecraft:skeleton_skull":{type:"minecraft:skeleton_skull",item:"minecraft:skeleton_skull",group:56},"minecraft:player_head":{type:"minecraft:player_head",item:"minecraft:player_head",group:56},"minecraft:piglin_head":{type:"minecraft:piglin_head",item:"minecraft:piglin_head",group:56},"minecraft:dragon_head":{type:"minecraft:dragon_head",item:"minecraft:dragon_head",group:56},"minecraft:creeper_head":{type:"minecraft:creeper_head",item:"minecraft:creeper_head",group:56},"minecraft:creaking_heart":{type:"minecraft:creaking_heart",item:"minecraft:creaking_heart",group:55},"minecraft:crafter":{type:"minecraft:crafter",item:"minecraft:crafter",group:54},"minecraft:weathered_copper_bulb":{type:"minecraft:weathered_copper_bulb",item:"minecraft:weathered_copper_bulb",group:53},"minecraft:waxed_weathered_copper_bulb":{type:"minecraft:waxed_weathered_copper_bulb",item:"minecraft:waxed_weathered_copper_bulb",group:53},"minecraft:waxed_oxidized_copper_bulb":{type:"minecraft:waxed_oxidized_copper_bulb",item:"minecraft:waxed_oxidized_copper_bulb",group:53},"minecraft:waxed_exposed_copper_bulb":{type:"minecraft:waxed_exposed_copper_bulb",item:"minecraft:waxed_exposed_copper_bulb",group:53},"minecraft:waxed_copper_bulb":{type:"minecraft:waxed_copper_bulb",item:"minecraft:waxed_copper_bulb",group:53},"minecraft:oxidized_copper_bulb":{type:"minecraft:oxidized_copper_bulb",item:"minecraft:oxidized_copper_bulb",group:53},"minecraft:exposed_copper_bulb":{type:"minecraft:exposed_copper_bulb",item:"minecraft:exposed_copper_bulb",group:53},"minecraft:copper_bulb":{type:"minecraft:copper_bulb",item:"minecraft:copper_bulb",group:53},"minecraft:composter":{type:"minecraft:composter",item:"minecraft:composter",group:52},"minecraft:comparator":{type:"minecraft:comparator",item:"minecraft:comparator",group:51},"minecraft:cocoa_beans":{type:"minecraft:cocoa",item:"minecraft:cocoa_beans",group:50},"minecraft:chorus_plant":{type:"minecraft:chorus_plant",item:"minecraft:chorus_plant",group:49},"minecraft:chorus_flower":{type:"minecraft:chorus_flower",item:"minecraft:chorus_flower",group:48},"minecraft:chiseled_bookshelf":{type:"minecraft:chiseled_bookshelf",item:"minecraft:chiseled_bookshelf",group:47},"minecraft:trapped_chest":{type:"minecraft:trapped_chest",item:"minecraft:trapped_chest",group:46},"minecraft:chest":{type:"minecraft:chest",item:"minecraft:chest",group:46},"minecraft:repeating_command_block":{type:"minecraft:repeating_command_block",item:"minecraft:repeating_command_block",group:45},"minecraft:command_block":{type:"minecraft:command_block",item:"minecraft:command_block",group:45},"minecraft:chain_command_block":{type:"minecraft:chain_command_block",item:"minecraft:chain_command_block",group:45},"minecraft:chain":{type:"minecraft:chain",item:"minecraft:chain",group:44},"minecraft:glow_berries":{type:"minecraft:cave_vines",item:"minecraft:glow_berries",group:42},"minecraft:wheat_seeds":{type:"minecraft:wheat",item:"minecraft:wheat_seeds",group:41},"minecraft:pumpkin_seeds":{type:"minecraft:melon_stem",item:"minecraft:pumpkin_seeds",group:41},"minecraft:potato":{type:"minecraft:potatoes",item:"minecraft:potato",group:41},"minecraft:carrot":{type:"minecraft:carrots",item:"minecraft:carrot",group:41},"minecraft:soul_campfire":{type:"minecraft:soul_campfire",item:"minecraft:soul_campfire",group:40},"minecraft:campfire":{type:"minecraft:campfire",item:"minecraft:campfire",group:40},"minecraft:calibrated_sculk_sensor":{type:"minecraft:calibrated_sculk_sensor",item:"minecraft:calibrated_sculk_sensor",group:39},"minecraft:cake":{type:"minecraft:cake",item:"minecraft:cake",group:38},"minecraft:sugar_cane":{type:"minecraft:sugar_cane",item:"minecraft:sugar_cane",group:37},"minecraft:cactus":{type:"minecraft:cactus",item:"minecraft:cactus",group:37},"minecraft:red_mushroom_block":{type:"minecraft:red_mushroom_block",item:"minecraft:red_mushroom_block",group:35},"minecraft:mushroom_stem":{type:"minecraft:mushroom_stem",item:"minecraft:mushroom_stem",group:35},"minecraft:brown_mushroom_block":{type:"minecraft:brown_mushroom_block",item:"minecraft:brown_mushroom_block",group:35},"minecraft:brewing_stand":{type:"minecraft:brewing_stand",item:"minecraft:brewing_stand",group:34},"minecraft:tube_coral_fan":{type:"minecraft:tube_coral_fan",item:"minecraft:tube_coral_fan",group:32},"minecraft:horn_coral_fan":{type:"minecraft:horn_coral_fan",item:"minecraft:horn_coral_fan",group:32},"minecraft:fire_coral_fan":{type:"minecraft:fire_coral_fan",item:"minecraft:fire_coral_fan",group:32},"minecraft:dead_tube_coral_fan":{type:"minecraft:dead_tube_coral_fan",item:"minecraft:dead_tube_coral_fan",group:32},"minecraft:dead_horn_coral_fan":{type:"minecraft:dead_horn_coral_fan",item:"minecraft:dead_horn_coral_fan",group:32},"minecraft:dead_fire_coral_fan":{type:"minecraft:dead_fire_coral_fan",item:"minecraft:dead_fire_coral_fan",group:32},"minecraft:dead_bubble_coral_fan":{type:"minecraft:dead_bubble_coral_fan",item:"minecraft:dead_bubble_coral_fan",group:32},"minecraft:dead_brain_coral_fan":{type:"minecraft:dead_brain_coral_fan",item:"minecraft:dead_brain_coral_fan",group:32},"minecraft:bubble_coral_fan":{type:"minecraft:bubble_coral_fan",item:"minecraft:bubble_coral_fan",group:32},"minecraft:brain_coral_fan":{type:"minecraft:brain_coral_fan",item:"minecraft:brain_coral_fan",group:32},"minecraft:tube_coral":{type:"minecraft:tube_coral",item:"minecraft:tube_coral",group:32},"minecraft:horn_coral":{type:"minecraft:horn_coral",item:"minecraft:horn_coral",group:32},"minecraft:fire_coral":{type:"minecraft:fire_coral",item:"minecraft:fire_coral",group:32},"minecraft:dead_tube_coral":{type:"minecraft:dead_tube_coral",item:"minecraft:dead_tube_coral",group:32},"minecraft:dead_horn_coral":{type:"minecraft:dead_horn_coral",item:"minecraft:dead_horn_coral",group:32},"minecraft:dead_fire_coral":{type:"minecraft:dead_fire_coral",item:"minecraft:dead_fire_coral",group:32},"minecraft:dead_bubble_coral":{type:"minecraft:dead_bubble_coral",item:"minecraft:dead_bubble_coral",group:32},"minecraft:dead_brain_coral":{type:"minecraft:dead_brain_coral",item:"minecraft:dead_brain_coral",group:32},"minecraft:conduit":{type:"minecraft:conduit",item:"minecraft:conduit",group:32},"minecraft:bubble_coral":{type:"minecraft:bubble_coral",item:"minecraft:bubble_coral",group:32},"minecraft:brain_coral":{type:"minecraft:brain_coral",item:"minecraft:brain_coral",group:32},"minecraft:smoker":{type:"minecraft:smoker",item:"minecraft:smoker",group:31},"minecraft:furnace":{type:"minecraft:furnace",item:"minecraft:furnace",group:31},"minecraft:blast_furnace":{type:"minecraft:blast_furnace",item:"minecraft:blast_furnace",group:31},"minecraft:yellow_shulker_box":{type:"minecraft:yellow_shulker_box",item:"minecraft:yellow_shulker_box",group:30},"minecraft:white_shulker_box":{type:"minecraft:white_shulker_box",item:"minecraft:white_shulker_box",group:30},"minecraft:shulker_box":{type:"minecraft:shulker_box",item:"minecraft:shulker_box",group:30},"minecraft:red_shulker_box":{type:"minecraft:red_shulker_box",item:"minecraft:red_shulker_box",group:30},"minecraft:purple_shulker_box":{type:"minecraft:purple_shulker_box",item:"minecraft:purple_shulker_box",group:30},"minecraft:pink_shulker_box":{type:"minecraft:pink_shulker_box",item:"minecraft:pink_shulker_box",group:30},"minecraft:orange_shulker_box":{type:"minecraft:orange_shulker_box",item:"minecraft:orange_shulker_box",group:30},"minecraft:magenta_shulker_box":{type:"minecraft:magenta_shulker_box",item:"minecraft:magenta_shulker_box",group:30},"minecraft:lime_shulker_box":{type:"minecraft:lime_shulker_box",item:"minecraft:lime_shulker_box",group:30},"minecraft:light_gray_shulker_box":{type:"minecraft:light_gray_shulker_box",item:"minecraft:light_gray_shulker_box",group:30},"minecraft:light_blue_shulker_box":{type:"minecraft:light_blue_shulker_box",item:"minecraft:light_blue_shulker_box",group:30},"minecraft:green_shulker_box":{type:"minecraft:green_shulker_box",item:"minecraft:green_shulker_box",group:30},"minecraft:gray_shulker_box":{type:"minecraft:gray_shulker_box",item:"minecraft:gray_shulker_box",group:30},"minecraft:end_rod":{type:"minecraft:end_rod",item:"minecraft:end_rod",group:30},"minecraft:cyan_shulker_box":{type:"minecraft:cyan_shulker_box",item:"minecraft:cyan_shulker_box",group:30},"minecraft:brown_shulker_box":{type:"minecraft:brown_shulker_box",item:"minecraft:brown_shulker_box",group:30},"minecraft:blue_shulker_box":{type:"minecraft:blue_shulker_box",item:"minecraft:blue_shulker_box",group:30},"minecraft:black_shulker_box":{type:"minecraft:black_shulker_box",item:"minecraft:black_shulker_box",group:30},"minecraft:redstone_ore":{type:"minecraft:redstone_ore",item:"minecraft:redstone_ore",group:29},"minecraft:redstone_lamp":{type:"minecraft:redstone_lamp",item:"minecraft:redstone_lamp",group:29},"minecraft:deepslate_redstone_ore":{type:"minecraft:deepslate_redstone_ore",item:"minecraft:deepslate_redstone_ore",group:29},"minecraft:yellow_candle":{type:"minecraft:yellow_candle",item:"minecraft:yellow_candle",group:28},"minecraft:white_candle":{type:"minecraft:white_candle",item:"minecraft:white_candle",group:28},"minecraft:red_candle":{type:"minecraft:red_candle",item:"minecraft:red_candle",group:28},"minecraft:purple_candle":{type:"minecraft:purple_candle",item:"minecraft:purple_candle",group:28},"minecraft:pink_candle":{type:"minecraft:pink_candle",item:"minecraft:pink_candle",group:28},"minecraft:orange_candle":{type:"minecraft:orange_candle",item:"minecraft:orange_candle",group:28},"minecraft:magenta_candle":{type:"minecraft:magenta_candle",item:"minecraft:magenta_candle",group:28},"minecraft:lime_candle":{type:"minecraft:lime_candle",item:"minecraft:lime_candle",group:28},"minecraft:light_gray_candle":{type:"minecraft:light_gray_candle",item:"minecraft:light_gray_candle",group:28},"minecraft:light_blue_candle":{type:"minecraft:light_blue_candle",item:"minecraft:light_blue_candle",group:28},"minecraft:green_candle":{type:"minecraft:green_candle",item:"minecraft:green_candle",group:28},"minecraft:gray_candle":{type:"minecraft:gray_candle",item:"minecraft:gray_candle",group:28},"minecraft:cyan_candle":{type:"minecraft:cyan_candle",item:"minecraft:cyan_candle",group:28},"minecraft:candle":{type:"minecraft:candle",item:"minecraft:candle",group:28},"minecraft:brown_candle":{type:"minecraft:brown_candle",item:"minecraft:brown_candle",group:28},"minecraft:blue_candle":{type:"minecraft:blue_candle",item:"minecraft:blue_candle",group:28},"minecraft:black_candle":{type:"minecraft:black_candle",item:"minecraft:black_candle",group:28},"minecraft:yellow_bed":{type:"minecraft:yellow_bed",item:"minecraft:yellow_bed",group:27},"minecraft:white_bed":{type:"minecraft:white_bed",item:"minecraft:white_bed",group:27},"minecraft:red_bed":{type:"minecraft:red_bed",item:"minecraft:red_bed",group:27},"minecraft:purple_bed":{type:"minecraft:purple_bed",item:"minecraft:purple_bed",group:27},"minecraft:pink_bed":{type:"minecraft:pink_bed",item:"minecraft:pink_bed",group:27},"minecraft:orange_bed":{type:"minecraft:orange_bed",item:"minecraft:orange_bed",group:27},"minecraft:magenta_bed":{type:"minecraft:magenta_bed",item:"minecraft:magenta_bed",group:27},"minecraft:lime_bed":{type:"minecraft:lime_bed",item:"minecraft:lime_bed",group:27},"minecraft:light_gray_bed":{type:"minecraft:light_gray_bed",item:"minecraft:light_gray_bed",group:27},"minecraft:light_blue_bed":{type:"minecraft:light_blue_bed",item:"minecraft:light_blue_bed",group:27},"minecraft:green_bed":{type:"minecraft:green_bed",item:"minecraft:green_bed",group:27},"minecraft:gray_bed":{type:"minecraft:gray_bed",item:"minecraft:gray_bed",group:27},"minecraft:cyan_bed":{type:"minecraft:cyan_bed",item:"minecraft:cyan_bed",group:27},"minecraft:brown_bed":{type:"minecraft:brown_bed",item:"minecraft:brown_bed",group:27},"minecraft:blue_bed":{type:"minecraft:blue_bed",item:"minecraft:blue_bed",group:27},"minecraft:black_bed":{type:"minecraft:black_bed",item:"minecraft:black_bed",group:27},"minecraft:yellow_banner":{type:"minecraft:yellow_wall_banner",item:"minecraft:yellow_banner",group:18},"minecraft:white_banner":{type:"minecraft:white_wall_banner",item:"minecraft:white_banner",group:18},"minecraft:red_banner":{type:"minecraft:red_wall_banner",item:"minecraft:red_banner",group:18},"minecraft:purple_banner":{type:"minecraft:purple_wall_banner",item:"minecraft:purple_banner",group:18},"minecraft:pink_banner":{type:"minecraft:pink_wall_banner",item:"minecraft:pink_banner",group:18},"minecraft:orange_banner":{type:"minecraft:orange_wall_banner",item:"minecraft:orange_banner",group:18},"minecraft:magenta_banner":{type:"minecraft:magenta_wall_banner",item:"minecraft:magenta_banner",group:18},"minecraft:lime_banner":{type:"minecraft:lime_wall_banner",item:"minecraft:lime_banner",group:18},"minecraft:light_gray_banner":{type:"minecraft:light_gray_wall_banner",item:"minecraft:light_gray_banner",group:18},"minecraft:light_blue_banner":{type:"minecraft:light_blue_wall_banner",item:"minecraft:light_blue_banner",group:18},"minecraft:green_banner":{type:"minecraft:green_wall_banner",item:"minecraft:green_banner",group:18},"minecraft:gray_banner":{type:"minecraft:gray_wall_banner",item:"minecraft:gray_banner",group:18},"minecraft:cyan_banner":{type:"minecraft:cyan_wall_banner",item:"minecraft:cyan_banner",group:18},"minecraft:brown_banner":{type:"minecraft:brown_wall_banner",item:"minecraft:brown_banner",group:18},"minecraft:blue_banner":{type:"minecraft:blue_wall_banner",item:"minecraft:blue_banner",group:18},"minecraft:black_banner":{type:"minecraft:black_wall_banner",item:"minecraft:black_banner",group:18},"minecraft:big_dripleaf":{type:"minecraft:big_dripleaf_stem",item:"minecraft:big_dripleaf",group:14},"minecraft:bell":{type:"minecraft:bell",item:"minecraft:bell",group:24},"minecraft:sweet_berries":{type:"minecraft:sweet_berry_bush",item:"minecraft:sweet_berries",group:23},"minecraft:nether_wart":{type:"minecraft:nether_wart",item:"minecraft:nether_wart",group:23},"minecraft:beetroot_seeds":{type:"minecraft:beetroots",item:"minecraft:beetroot_seeds",group:23},"minecraft:beehive":{type:"minecraft:beehive",item:"minecraft:beehive",group:22},"minecraft:bee_nest":{type:"minecraft:bee_nest",item:"minecraft:bee_nest",group:22},"minecraft:weathered_copper_grate":{type:"minecraft:weathered_copper_grate",item:"minecraft:weathered_copper_grate",group:21},"minecraft:waxed_weathered_copper_grate":{type:"minecraft:waxed_weathered_copper_grate",item:"minecraft:waxed_weathered_copper_grate",group:21},"minecraft:waxed_oxidized_copper_grate":{type:"minecraft:waxed_oxidized_copper_grate",item:"minecraft:waxed_oxidized_copper_grate",group:21},"minecraft:waxed_exposed_copper_grate":{type:"minecraft:waxed_exposed_copper_grate",item:"minecraft:waxed_exposed_copper_grate",group:21},"minecraft:waxed_copper_grate":{type:"minecraft:waxed_copper_grate",item:"minecraft:waxed_copper_grate",group:21},"minecraft:oxidized_copper_grate":{type:"minecraft:oxidized_copper_grate",item:"minecraft:oxidized_copper_grate",group:21},"minecraft:mangrove_roots":{type:"minecraft:mangrove_roots",item:"minecraft:mangrove_roots",group:21},"minecraft:heavy_core":{type:"minecraft:heavy_core",item:"minecraft:heavy_core",group:21},"minecraft:hanging_roots":{type:"minecraft:hanging_roots",item:"minecraft:hanging_roots",group:21},"minecraft:exposed_copper_grate":{type:"minecraft:exposed_copper_grate",item:"minecraft:exposed_copper_grate",group:21},"minecraft:copper_grate":{type:"minecraft:copper_grate",item:"minecraft:copper_grate",group:21},"minecraft:barrier":{type:"minecraft:barrier",item:"minecraft:barrier",group:21},"minecraft:barrel":{type:"minecraft:barrel",item:"minecraft:barrel",group:20},"minecraft:bamboo":{type:"minecraft:bamboo",item:"minecraft:bamboo",group:19},"minecraft:yellow_glazed_terracotta":{type:"minecraft:yellow_glazed_terracotta",item:"minecraft:yellow_glazed_terracotta",group:18},"minecraft:white_glazed_terracotta":{type:"minecraft:white_glazed_terracotta",item:"minecraft:white_glazed_terracotta",group:18},"minecraft:torch":{type:"minecraft:torch",item:"minecraft:torch",group:0},"minecraft:stonecutter":{type:"minecraft:stonecutter",item:"minecraft:stonecutter",group:18},"minecraft:soul_torch":{type:"minecraft:soul_torch",item:"minecraft:soul_torch",group:0},"minecraft:red_glazed_terracotta":{type:"minecraft:red_glazed_terracotta",item:"minecraft:red_glazed_terracotta",group:18},"minecraft:purple_glazed_terracotta":{type:"minecraft:purple_glazed_terracotta",item:"minecraft:purple_glazed_terracotta",group:18},"minecraft:pink_glazed_terracotta":{type:"minecraft:pink_glazed_terracotta",item:"minecraft:pink_glazed_terracotta",group:18},"minecraft:orange_glazed_terracotta":{type:"minecraft:orange_glazed_terracotta",item:"minecraft:orange_glazed_terracotta",group:18},"minecraft:magenta_glazed_terracotta":{type:"minecraft:magenta_glazed_terracotta",item:"minecraft:magenta_glazed_terracotta",group:18},"minecraft:loom":{type:"minecraft:loom",item:"minecraft:loom",group:18},"minecraft:lime_glazed_terracotta":{type:"minecraft:lime_glazed_terracotta",item:"minecraft:lime_glazed_terracotta",group:18},"minecraft:light_gray_glazed_terracotta":{type:"minecraft:light_gray_glazed_terracotta",item:"minecraft:light_gray_glazed_terracotta",group:18},"minecraft:light_blue_glazed_terracotta":{type:"minecraft:light_blue_glazed_terracotta",item:"minecraft:light_blue_glazed_terracotta",group:18},"minecraft:jack_o_lantern":{type:"minecraft:jack_o_lantern",item:"minecraft:jack_o_lantern",group:18},"minecraft:green_glazed_terracotta":{type:"minecraft:green_glazed_terracotta",item:"minecraft:green_glazed_terracotta",group:18},"minecraft:gray_glazed_terracotta":{type:"minecraft:gray_glazed_terracotta",item:"minecraft:gray_glazed_terracotta",group:18},"minecraft:damaged_anvil":{type:"minecraft:damaged_anvil",item:"minecraft:damaged_anvil",group:18},"minecraft:cyan_glazed_terracotta":{type:"minecraft:cyan_glazed_terracotta",item:"minecraft:cyan_glazed_terracotta",group:18},"minecraft:chipped_anvil":{type:"minecraft:chipped_anvil",item:"minecraft:chipped_anvil",group:18},"minecraft:carved_pumpkin":{type:"minecraft:carved_pumpkin",item:"minecraft:carved_pumpkin",group:18},"minecraft:brown_glazed_terracotta":{type:"minecraft:brown_glazed_terracotta",item:"minecraft:brown_glazed_terracotta",group:18},"minecraft:blue_glazed_terracotta":{type:"minecraft:blue_glazed_terracotta",item:"minecraft:blue_glazed_terracotta",group:18},"minecraft:black_glazed_terracotta":{type:"minecraft:black_glazed_terracotta",item:"minecraft:black_glazed_terracotta",group:18},"minecraft:melon_seeds":{type:"minecraft:attached_melon_stem",item:"minecraft:melon_seeds",group:18},"minecraft:anvil":{type:"minecraft:anvil",item:"minecraft:anvil",group:18},"minecraft:tuff_wall":{type:"minecraft:tuff_wall",item:"minecraft:tuff_wall",group:17},"minecraft:tuff_brick_wall":{type:"minecraft:tuff_brick_wall",item:"minecraft:tuff_brick_wall",group:17},"minecraft:stone_brick_wall":{type:"minecraft:stone_brick_wall",item:"minecraft:stone_brick_wall",group:17},"minecraft:sandstone_wall":{type:"minecraft:sandstone_wall",item:"minecraft:sandstone_wall",group:17},"minecraft:red_sandstone_wall":{type:"minecraft:red_sandstone_wall",item:"minecraft:red_sandstone_wall",group:17},"minecraft:red_nether_brick_wall":{type:"minecraft:red_nether_brick_wall",item:"minecraft:red_nether_brick_wall",group:17},"minecraft:prismarine_wall":{type:"minecraft:prismarine_wall",item:"minecraft:prismarine_wall",group:17},"minecraft:polished_tuff_wall":{type:"minecraft:polished_tuff_wall",item:"minecraft:polished_tuff_wall",group:17},"minecraft:polished_deepslate_wall":{type:"minecraft:polished_deepslate_wall",item:"minecraft:polished_deepslate_wall",group:17},"minecraft:polished_blackstone_wall":{type:"minecraft:polished_blackstone_wall",item:"minecraft:polished_blackstone_wall",group:17},"minecraft:polished_blackstone_brick_wall":{type:"minecraft:polished_blackstone_brick_wall",item:"minecraft:polished_blackstone_brick_wall",group:17},"minecraft:nether_brick_wall":{type:"minecraft:nether_brick_wall",item:"minecraft:nether_brick_wall",group:17},"minecraft:mud_brick_wall":{type:"minecraft:mud_brick_wall",item:"minecraft:mud_brick_wall",group:17},"minecraft:mossy_stone_brick_wall":{type:"minecraft:mossy_stone_brick_wall",item:"minecraft:mossy_stone_brick_wall",group:17},"minecraft:mossy_cobblestone_wall":{type:"minecraft:mossy_cobblestone_wall",item:"minecraft:mossy_cobblestone_wall",group:17},"minecraft:granite_wall":{type:"minecraft:granite_wall",item:"minecraft:granite_wall",group:17},"minecraft:end_stone_brick_wall":{type:"minecraft:end_stone_brick_wall",item:"minecraft:end_stone_brick_wall",group:17},"minecraft:diorite_wall":{type:"minecraft:diorite_wall",item:"minecraft:diorite_wall",group:17},"minecraft:deepslate_tile_wall":{type:"minecraft:deepslate_tile_wall",item:"minecraft:deepslate_tile_wall",group:17},"minecraft:deepslate_brick_wall":{type:"minecraft:deepslate_brick_wall",item:"minecraft:deepslate_brick_wall",group:17},"minecraft:cobblestone_wall":{type:"minecraft:cobblestone_wall",item:"minecraft:cobblestone_wall",group:17},"minecraft:cobbled_deepslate_wall":{type:"minecraft:cobbled_deepslate_wall",item:"minecraft:cobbled_deepslate_wall",group:17},"minecraft:brick_wall":{type:"minecraft:brick_wall",item:"minecraft:brick_wall",group:17},"minecraft:blackstone_wall":{type:"minecraft:blackstone_wall",item:"minecraft:blackstone_wall",group:17},"minecraft:andesite_wall":{type:"minecraft:andesite_wall",item:"minecraft:andesite_wall",group:17},"minecraft:small_amethyst_bud":{type:"minecraft:small_amethyst_bud",item:"minecraft:small_amethyst_bud",group:16},"minecraft:medium_amethyst_bud":{type:"minecraft:medium_amethyst_bud",item:"minecraft:medium_amethyst_bud",group:16},"minecraft:large_amethyst_bud":{type:"minecraft:large_amethyst_bud",item:"minecraft:large_amethyst_bud",group:16},"minecraft:amethyst_cluster":{type:"minecraft:amethyst_cluster",item:"minecraft:amethyst_cluster",group:16},"minecraft:powered_rail":{type:"minecraft:powered_rail",item:"minecraft:powered_rail",group:15},"minecraft:detector_rail":{type:"minecraft:detector_rail",item:"minecraft:detector_rail",group:15},"minecraft:activator_rail":{type:"minecraft:activator_rail",item:"minecraft:activator_rail",group:15},"minecraft:warped_sign":{type:"minecraft:warped_sign",item:"minecraft:warped_sign",group:10},"minecraft:warped_hanging_sign":{type:"minecraft:warped_hanging_sign",item:"minecraft:warped_hanging_sign",group:5},"minecraft:spruce_sign":{type:"minecraft:spruce_sign",item:"minecraft:spruce_sign",group:10},"minecraft:spruce_hanging_sign":{type:"minecraft:spruce_hanging_sign",item:"minecraft:spruce_hanging_sign",group:5},"minecraft:oak_sign":{type:"minecraft:oak_sign",item:"minecraft:oak_sign",group:10},"minecraft:oak_hanging_sign":{type:"minecraft:oak_hanging_sign",item:"minecraft:oak_hanging_sign",group:5},"minecraft:mangrove_sign":{type:"minecraft:mangrove_sign",item:"minecraft:mangrove_sign",group:10},"minecraft:mangrove_hanging_sign":{type:"minecraft:mangrove_hanging_sign",item:"minecraft:mangrove_hanging_sign",group:5},"minecraft:ladder":{type:"minecraft:ladder",item:"minecraft:ladder",group:14},"minecraft:jungle_sign":{type:"minecraft:jungle_sign",item:"minecraft:jungle_sign",group:10},"minecraft:jungle_hanging_sign":{type:"minecraft:jungle_hanging_sign",item:"minecraft:jungle_hanging_sign",group:5},"minecraft:ender_chest":{type:"minecraft:ender_chest",item:"minecraft:ender_chest",group:14},"minecraft:dark_oak_sign":{type:"minecraft:dark_oak_sign",item:"minecraft:dark_oak_sign",group:10},"minecraft:dark_oak_hanging_sign":{type:"minecraft:dark_oak_hanging_sign",item:"minecraft:dark_oak_hanging_sign",group:5},"minecraft:crimson_sign":{type:"minecraft:crimson_sign",item:"minecraft:crimson_sign",group:10},"minecraft:crimson_hanging_sign":{type:"minecraft:crimson_hanging_sign",item:"minecraft:crimson_hanging_sign",group:5},"minecraft:cherry_sign":{type:"minecraft:cherry_sign",item:"minecraft:cherry_sign",group:10},"minecraft:cherry_hanging_sign":{type:"minecraft:cherry_hanging_sign",item:"minecraft:cherry_hanging_sign",group:5},"minecraft:birch_sign":{type:"minecraft:birch_sign",item:"minecraft:birch_sign",group:10},"minecraft:birch_hanging_sign":{type:"minecraft:birch_hanging_sign",item:"minecraft:birch_hanging_sign",group:5},"minecraft:bamboo_sign":{type:"minecraft:bamboo_sign",item:"minecraft:bamboo_sign",group:10},"minecraft:bamboo_hanging_sign":{type:"minecraft:bamboo_hanging_sign",item:"minecraft:bamboo_hanging_sign",group:5},"minecraft:acacia_sign":{type:"minecraft:acacia_sign",item:"minecraft:acacia_sign",group:10},"minecraft:acacia_hanging_sign":{type:"minecraft:acacia_hanging_sign",item:"minecraft:acacia_hanging_sign",group:5},"minecraft:weathered_copper_trapdoor":{type:"minecraft:weathered_copper_trapdoor",item:"minecraft:weathered_copper_trapdoor",group:13},"minecraft:waxed_weathered_copper_trapdoor":{type:"minecraft:waxed_weathered_copper_trapdoor",item:"minecraft:waxed_weathered_copper_trapdoor",group:13},"minecraft:waxed_oxidized_copper_trapdoor":{type:"minecraft:waxed_oxidized_copper_trapdoor",item:"minecraft:waxed_oxidized_copper_trapdoor",group:13},"minecraft:waxed_exposed_copper_trapdoor":{type:"minecraft:waxed_exposed_copper_trapdoor",item:"minecraft:waxed_exposed_copper_trapdoor",group:13},"minecraft:waxed_copper_trapdoor":{type:"minecraft:waxed_copper_trapdoor",item:"minecraft:waxed_copper_trapdoor",group:13},"minecraft:warped_trapdoor":{type:"minecraft:warped_trapdoor",item:"minecraft:warped_trapdoor",group:13},"minecraft:spruce_trapdoor":{type:"minecraft:spruce_trapdoor",item:"minecraft:spruce_trapdoor",group:13},"minecraft:pale_oak_trapdoor":{type:"minecraft:pale_oak_trapdoor",item:"minecraft:pale_oak_trapdoor",group:13},"minecraft:oxidized_copper_trapdoor":{type:"minecraft:oxidized_copper_trapdoor",item:"minecraft:oxidized_copper_trapdoor",group:13},"minecraft:oak_trapdoor":{type:"minecraft:oak_trapdoor",item:"minecraft:oak_trapdoor",group:13},"minecraft:mangrove_trapdoor":{type:"minecraft:mangrove_trapdoor",item:"minecraft:mangrove_trapdoor",group:13},"minecraft:jungle_trapdoor":{type:"minecraft:jungle_trapdoor",item:"minecraft:jungle_trapdoor",group:13},"minecraft:iron_trapdoor":{type:"minecraft:iron_trapdoor",item:"minecraft:iron_trapdoor",group:13},"minecraft:exposed_copper_trapdoor":{type:"minecraft:exposed_copper_trapdoor",item:"minecraft:exposed_copper_trapdoor",group:13},"minecraft:dark_oak_trapdoor":{type:"minecraft:dark_oak_trapdoor",item:"minecraft:dark_oak_trapdoor",group:13},"minecraft:crimson_trapdoor":{type:"minecraft:crimson_trapdoor",item:"minecraft:crimson_trapdoor",group:13},"minecraft:copper_trapdoor":{type:"minecraft:copper_trapdoor",item:"minecraft:copper_trapdoor",group:13},"minecraft:cherry_trapdoor":{type:"minecraft:cherry_trapdoor",item:"minecraft:cherry_trapdoor",group:13},"minecraft:birch_trapdoor":{type:"minecraft:birch_trapdoor",item:"minecraft:birch_trapdoor",group:13},"minecraft:bamboo_trapdoor":{type:"minecraft:bamboo_trapdoor",item:"minecraft:bamboo_trapdoor",group:13},"minecraft:acacia_trapdoor":{type:"minecraft:acacia_trapdoor",item:"minecraft:acacia_trapdoor",group:13},"minecraft:weathered_cut_copper_stairs":{type:"minecraft:weathered_cut_copper_stairs",item:"minecraft:weathered_cut_copper_stairs",group:12},"minecraft:waxed_weathered_cut_copper_stairs":{type:"minecraft:waxed_weathered_cut_copper_stairs",item:"minecraft:waxed_weathered_cut_copper_stairs",group:12},"minecraft:waxed_oxidized_cut_copper_stairs":{type:"minecraft:waxed_oxidized_cut_copper_stairs",item:"minecraft:waxed_oxidized_cut_copper_stairs",group:12},"minecraft:waxed_exposed_cut_copper_stairs":{type:"minecraft:waxed_exposed_cut_copper_stairs",item:"minecraft:waxed_exposed_cut_copper_stairs",group:12},"minecraft:waxed_cut_copper_stairs":{type:"minecraft:waxed_cut_copper_stairs",item:"minecraft:waxed_cut_copper_stairs",group:12},"minecraft:warped_stairs":{type:"minecraft:warped_stairs",item:"minecraft:warped_stairs",group:12},"minecraft:tuff_stairs":{type:"minecraft:tuff_stairs",item:"minecraft:tuff_stairs",group:12},"minecraft:tuff_brick_stairs":{type:"minecraft:tuff_brick_stairs",item:"minecraft:tuff_brick_stairs",group:12},"minecraft:stone_stairs":{type:"minecraft:stone_stairs",item:"minecraft:stone_stairs",group:12},"minecraft:stone_brick_stairs":{type:"minecraft:stone_brick_stairs",item:"minecraft:stone_brick_stairs",group:12},"minecraft:spruce_stairs":{type:"minecraft:spruce_stairs",item:"minecraft:spruce_stairs",group:12},"minecraft:smooth_sandstone_stairs":{type:"minecraft:smooth_sandstone_stairs",item:"minecraft:smooth_sandstone_stairs",group:12},"minecraft:smooth_red_sandstone_stairs":{type:"minecraft:smooth_red_sandstone_stairs",item:"minecraft:smooth_red_sandstone_stairs",group:12},"minecraft:smooth_quartz_stairs":{type:"minecraft:smooth_quartz_stairs",item:"minecraft:smooth_quartz_stairs",group:12},"minecraft:sandstone_stairs":{type:"minecraft:sandstone_stairs",item:"minecraft:sandstone_stairs",group:12},"minecraft:red_sandstone_stairs":{type:"minecraft:red_sandstone_stairs",item:"minecraft:red_sandstone_stairs",group:12},"minecraft:red_nether_brick_stairs":{type:"minecraft:red_nether_brick_stairs",item:"minecraft:red_nether_brick_stairs",group:12},"minecraft:quartz_stairs":{type:"minecraft:quartz_stairs",item:"minecraft:quartz_stairs",group:12},"minecraft:purpur_stairs":{type:"minecraft:purpur_stairs",item:"minecraft:purpur_stairs",group:12},"minecraft:prismarine_stairs":{type:"minecraft:prismarine_stairs",item:"minecraft:prismarine_stairs",group:12},"minecraft:prismarine_brick_stairs":{type:"minecraft:prismarine_brick_stairs",item:"minecraft:prismarine_brick_stairs",group:12},"minecraft:polished_tuff_stairs":{type:"minecraft:polished_tuff_stairs",item:"minecraft:polished_tuff_stairs",group:12},"minecraft:polished_granite_stairs":{type:"minecraft:polished_granite_stairs",item:"minecraft:polished_granite_stairs",group:12},"minecraft:polished_diorite_stairs":{type:"minecraft:polished_diorite_stairs",item:"minecraft:polished_diorite_stairs",group:12},"minecraft:polished_deepslate_stairs":{type:"minecraft:polished_deepslate_stairs",item:"minecraft:polished_deepslate_stairs",group:12},"minecraft:polished_blackstone_stairs":{type:"minecraft:polished_blackstone_stairs",item:"minecraft:polished_blackstone_stairs",group:12},"minecraft:polished_blackstone_brick_stairs":{type:"minecraft:polished_blackstone_brick_stairs",item:"minecraft:polished_blackstone_brick_stairs",group:12},"minecraft:polished_andesite_stairs":{type:"minecraft:polished_andesite_stairs",item:"minecraft:polished_andesite_stairs",group:12},"minecraft:pale_oak_stairs":{type:"minecraft:pale_oak_stairs",item:"minecraft:pale_oak_stairs",group:12},"minecraft:oxidized_cut_copper_stairs":{type:"minecraft:oxidized_cut_copper_stairs",item:"minecraft:oxidized_cut_copper_stairs",group:12},"minecraft:oak_stairs":{type:"minecraft:oak_stairs",item:"minecraft:oak_stairs",group:12},"minecraft:nether_brick_stairs":{type:"minecraft:nether_brick_stairs",item:"minecraft:nether_brick_stairs",group:12},"minecraft:mud_brick_stairs":{type:"minecraft:mud_brick_stairs",item:"minecraft:mud_brick_stairs",group:12},"minecraft:mossy_stone_brick_stairs":{type:"minecraft:mossy_stone_brick_stairs",item:"minecraft:mossy_stone_brick_stairs",group:12},"minecraft:mossy_cobblestone_stairs":{type:"minecraft:mossy_cobblestone_stairs",item:"minecraft:mossy_cobblestone_stairs",group:12},"minecraft:mangrove_stairs":{type:"minecraft:mangrove_stairs",item:"minecraft:mangrove_stairs",group:12},"minecraft:jungle_stairs":{type:"minecraft:jungle_stairs",item:"minecraft:jungle_stairs",group:12},"minecraft:granite_stairs":{type:"minecraft:granite_stairs",item:"minecraft:granite_stairs",group:12},"minecraft:exposed_cut_copper_stairs":{type:"minecraft:exposed_cut_copper_stairs",item:"minecraft:exposed_cut_copper_stairs",group:12},"minecraft:end_stone_brick_stairs":{type:"minecraft:end_stone_brick_stairs",item:"minecraft:end_stone_brick_stairs",group:12},"minecraft:diorite_stairs":{type:"minecraft:diorite_stairs",item:"minecraft:diorite_stairs",group:12},"minecraft:deepslate_tile_stairs":{type:"minecraft:deepslate_tile_stairs",item:"minecraft:deepslate_tile_stairs",group:12},"minecraft:deepslate_brick_stairs":{type:"minecraft:deepslate_brick_stairs",item:"minecraft:deepslate_brick_stairs",group:12},"minecraft:dark_prismarine_stairs":{type:"minecraft:dark_prismarine_stairs",item:"minecraft:dark_prismarine_stairs",group:12},"minecraft:dark_oak_stairs":{type:"minecraft:dark_oak_stairs",item:"minecraft:dark_oak_stairs",group:12},"minecraft:cut_copper_stairs":{type:"minecraft:cut_copper_stairs",item:"minecraft:cut_copper_stairs",group:12},"minecraft:crimson_stairs":{type:"minecraft:crimson_stairs",item:"minecraft:crimson_stairs",group:12},"minecraft:cobblestone_stairs":{type:"minecraft:cobblestone_stairs",item:"minecraft:cobblestone_stairs",group:12},"minecraft:cobbled_deepslate_stairs":{type:"minecraft:cobbled_deepslate_stairs",item:"minecraft:cobbled_deepslate_stairs",group:12},"minecraft:cherry_stairs":{type:"minecraft:cherry_stairs",item:"minecraft:cherry_stairs",group:12},"minecraft:brick_stairs":{type:"minecraft:brick_stairs",item:"minecraft:brick_stairs",group:12},"minecraft:blackstone_stairs":{type:"minecraft:blackstone_stairs",item:"minecraft:blackstone_stairs",group:12},"minecraft:birch_stairs":{type:"minecraft:birch_stairs",item:"minecraft:birch_stairs",group:12},"minecraft:bamboo_stairs":{type:"minecraft:bamboo_stairs",item:"minecraft:bamboo_stairs",group:12},"minecraft:bamboo_mosaic_stairs":{type:"minecraft:bamboo_mosaic_stairs",item:"minecraft:bamboo_mosaic_stairs",group:12},"minecraft:andesite_stairs":{type:"minecraft:andesite_stairs",item:"minecraft:andesite_stairs",group:12},"minecraft:acacia_stairs":{type:"minecraft:acacia_stairs",item:"minecraft:acacia_stairs",group:12},"minecraft:weathered_cut_copper_slab":{type:"minecraft:weathered_cut_copper_slab",item:"minecraft:weathered_cut_copper_slab",group:11},"minecraft:waxed_weathered_cut_copper_slab":{type:"minecraft:waxed_weathered_cut_copper_slab",item:"minecraft:waxed_weathered_cut_copper_slab",group:11},"minecraft:waxed_oxidized_cut_copper_slab":{type:"minecraft:waxed_oxidized_cut_copper_slab",item:"minecraft:waxed_oxidized_cut_copper_slab",group:11},"minecraft:waxed_exposed_cut_copper_slab":{type:"minecraft:waxed_exposed_cut_copper_slab",item:"minecraft:waxed_exposed_cut_copper_slab",group:11},"minecraft:waxed_cut_copper_slab":{type:"minecraft:waxed_cut_copper_slab",item:"minecraft:waxed_cut_copper_slab",group:11},"minecraft:warped_slab":{type:"minecraft:warped_slab",item:"minecraft:warped_slab",group:11},"minecraft:tuff_slab":{type:"minecraft:tuff_slab",item:"minecraft:tuff_slab",group:11},"minecraft:tuff_brick_slab":{type:"minecraft:tuff_brick_slab",item:"minecraft:tuff_brick_slab",group:11},"minecraft:stone_slab":{type:"minecraft:stone_slab",item:"minecraft:stone_slab",group:11},"minecraft:stone_brick_slab":{type:"minecraft:stone_brick_slab",item:"minecraft:stone_brick_slab",group:11},"minecraft:spruce_slab":{type:"minecraft:spruce_slab",item:"minecraft:spruce_slab",group:11},"minecraft:smooth_stone_slab":{type:"minecraft:smooth_stone_slab",item:"minecraft:smooth_stone_slab",group:11},"minecraft:smooth_sandstone_slab":{type:"minecraft:smooth_sandstone_slab",item:"minecraft:smooth_sandstone_slab",group:11},"minecraft:smooth_red_sandstone_slab":{type:"minecraft:smooth_red_sandstone_slab",item:"minecraft:smooth_red_sandstone_slab",group:11},"minecraft:smooth_quartz_slab":{type:"minecraft:smooth_quartz_slab",item:"minecraft:smooth_quartz_slab",group:11},"minecraft:sandstone_slab":{type:"minecraft:sandstone_slab",item:"minecraft:sandstone_slab",group:11},"minecraft:red_sandstone_slab":{type:"minecraft:red_sandstone_slab",item:"minecraft:red_sandstone_slab",group:11},"minecraft:red_nether_brick_slab":{type:"minecraft:red_nether_brick_slab",item:"minecraft:red_nether_brick_slab",group:11},"minecraft:quartz_slab":{type:"minecraft:quartz_slab",item:"minecraft:quartz_slab",group:11},"minecraft:purpur_slab":{type:"minecraft:purpur_slab",item:"minecraft:purpur_slab",group:11},"minecraft:prismarine_slab":{type:"minecraft:prismarine_slab",item:"minecraft:prismarine_slab",group:11},"minecraft:prismarine_brick_slab":{type:"minecraft:prismarine_brick_slab",item:"minecraft:prismarine_brick_slab",group:11},"minecraft:polished_tuff_slab":{type:"minecraft:polished_tuff_slab",item:"minecraft:polished_tuff_slab",group:11},"minecraft:polished_granite_slab":{type:"minecraft:polished_granite_slab",item:"minecraft:polished_granite_slab",group:11},"minecraft:polished_diorite_slab":{type:"minecraft:polished_diorite_slab",item:"minecraft:polished_diorite_slab",group:11},"minecraft:polished_deepslate_slab":{type:"minecraft:polished_deepslate_slab",item:"minecraft:polished_deepslate_slab",group:11},"minecraft:polished_blackstone_slab":{type:"minecraft:polished_blackstone_slab",item:"minecraft:polished_blackstone_slab",group:11},"minecraft:polished_blackstone_brick_slab":{type:"minecraft:polished_blackstone_brick_slab",item:"minecraft:polished_blackstone_brick_slab",group:11},"minecraft:polished_andesite_slab":{type:"minecraft:polished_andesite_slab",item:"minecraft:polished_andesite_slab",group:11},"minecraft:petrified_oak_slab":{type:"minecraft:petrified_oak_slab",item:"minecraft:petrified_oak_slab",group:11},"minecraft:pale_oak_slab":{type:"minecraft:pale_oak_slab",item:"minecraft:pale_oak_slab",group:11},"minecraft:oxidized_cut_copper_slab":{type:"minecraft:oxidized_cut_copper_slab",item:"minecraft:oxidized_cut_copper_slab",group:11},"minecraft:oak_slab":{type:"minecraft:oak_slab",item:"minecraft:oak_slab",group:11},"minecraft:nether_brick_slab":{type:"minecraft:nether_brick_slab",item:"minecraft:nether_brick_slab",group:11},"minecraft:mud_brick_slab":{type:"minecraft:mud_brick_slab",item:"minecraft:mud_brick_slab",group:11},"minecraft:mossy_stone_brick_slab":{type:"minecraft:mossy_stone_brick_slab",item:"minecraft:mossy_stone_brick_slab",group:11},"minecraft:mossy_cobblestone_slab":{type:"minecraft:mossy_cobblestone_slab",item:"minecraft:mossy_cobblestone_slab",group:11},"minecraft:mangrove_slab":{type:"minecraft:mangrove_slab",item:"minecraft:mangrove_slab",group:11},"minecraft:jungle_slab":{type:"minecraft:jungle_slab",item:"minecraft:jungle_slab",group:11},"minecraft:granite_slab":{type:"minecraft:granite_slab",item:"minecraft:granite_slab",group:11},"minecraft:exposed_cut_copper_slab":{type:"minecraft:exposed_cut_copper_slab",item:"minecraft:exposed_cut_copper_slab",group:11},"minecraft:end_stone_brick_slab":{type:"minecraft:end_stone_brick_slab",item:"minecraft:end_stone_brick_slab",group:11},"minecraft:diorite_slab":{type:"minecraft:diorite_slab",item:"minecraft:diorite_slab",group:11},"minecraft:deepslate_tile_slab":{type:"minecraft:deepslate_tile_slab",item:"minecraft:deepslate_tile_slab",group:11},"minecraft:deepslate_brick_slab":{type:"minecraft:deepslate_brick_slab",item:"minecraft:deepslate_brick_slab",group:11},"minecraft:dark_prismarine_slab":{type:"minecraft:dark_prismarine_slab",item:"minecraft:dark_prismarine_slab",group:11},"minecraft:dark_oak_slab":{type:"minecraft:dark_oak_slab",item:"minecraft:dark_oak_slab",group:11},"minecraft:cut_sandstone_slab":{type:"minecraft:cut_sandstone_slab",item:"minecraft:cut_sandstone_slab",group:11},"minecraft:cut_red_sandstone_slab":{type:"minecraft:cut_red_sandstone_slab",item:"minecraft:cut_red_sandstone_slab",group:11},"minecraft:cut_copper_slab":{type:"minecraft:cut_copper_slab",item:"minecraft:cut_copper_slab",group:11},"minecraft:crimson_slab":{type:"minecraft:crimson_slab",item:"minecraft:crimson_slab",group:11},"minecraft:cobblestone_slab":{type:"minecraft:cobblestone_slab",item:"minecraft:cobblestone_slab",group:11},"minecraft:cobbled_deepslate_slab":{type:"minecraft:cobbled_deepslate_slab",item:"minecraft:cobbled_deepslate_slab",group:11},"minecraft:cherry_slab":{type:"minecraft:cherry_slab",item:"minecraft:cherry_slab",group:11},"minecraft:brick_slab":{type:"minecraft:brick_slab",item:"minecraft:brick_slab",group:11},"minecraft:blackstone_slab":{type:"minecraft:blackstone_slab",item:"minecraft:blackstone_slab",group:11},"minecraft:birch_slab":{type:"minecraft:birch_slab",item:"minecraft:birch_slab",group:11},"minecraft:bamboo_slab":{type:"minecraft:bamboo_slab",item:"minecraft:bamboo_slab",group:11},"minecraft:bamboo_mosaic_slab":{type:"minecraft:bamboo_mosaic_slab",item:"minecraft:bamboo_mosaic_slab",group:11},"minecraft:andesite_slab":{type:"minecraft:andesite_slab",item:"minecraft:andesite_slab",group:11},"minecraft:acacia_slab":{type:"minecraft:acacia_slab",item:"minecraft:acacia_slab",group:11},"minecraft:pale_oak_sign":{type:"minecraft:pale_oak_sign",item:"minecraft:pale_oak_sign",group:10},"minecraft:spruce_sapling":{type:"minecraft:spruce_sapling",item:"minecraft:spruce_sapling",group:9},"minecraft:pale_oak_sapling":{type:"minecraft:pale_oak_sapling",item:"minecraft:pale_oak_sapling",group:9},"minecraft:oak_sapling":{type:"minecraft:oak_sapling",item:"minecraft:oak_sapling",group:9},"minecraft:jungle_sapling":{type:"minecraft:jungle_sapling",item:"minecraft:jungle_sapling",group:9},"minecraft:dark_oak_sapling":{type:"minecraft:dark_oak_sapling",item:"minecraft:dark_oak_sapling",group:9},"minecraft:cherry_sapling":{type:"minecraft:cherry_sapling",item:"minecraft:cherry_sapling",group:9},"minecraft:birch_sapling":{type:"minecraft:birch_sapling",item:"minecraft:birch_sapling",group:9},"minecraft:acacia_sapling":{type:"minecraft:acacia_sapling",item:"minecraft:acacia_sapling",group:9},"minecraft:warped_pressure_plate":{type:"minecraft:warped_pressure_plate",item:"minecraft:warped_pressure_plate",group:8},"minecraft:stone_pressure_plate":{type:"minecraft:stone_pressure_plate",item:"minecraft:stone_pressure_plate",group:8},"minecraft:spruce_pressure_plate":{type:"minecraft:spruce_pressure_plate",item:"minecraft:spruce_pressure_plate",group:8},"minecraft:polished_blackstone_pressure_plate":{type:"minecraft:polished_blackstone_pressure_plate",item:"minecraft:polished_blackstone_pressure_plate",group:8},"minecraft:pale_oak_pressure_plate":{type:"minecraft:pale_oak_pressure_plate",item:"minecraft:pale_oak_pressure_plate",group:8},"minecraft:oak_pressure_plate":{type:"minecraft:oak_pressure_plate",item:"minecraft:oak_pressure_plate",group:8},"minecraft:mangrove_pressure_plate":{type:"minecraft:mangrove_pressure_plate",item:"minecraft:mangrove_pressure_plate",group:8},"minecraft:jungle_pressure_plate":{type:"minecraft:jungle_pressure_plate",item:"minecraft:jungle_pressure_plate",group:8},"minecraft:dark_oak_pressure_plate":{type:"minecraft:dark_oak_pressure_plate",item:"minecraft:dark_oak_pressure_plate",group:8},"minecraft:crimson_pressure_plate":{type:"minecraft:crimson_pressure_plate",item:"minecraft:crimson_pressure_plate",group:8},"minecraft:cherry_pressure_plate":{type:"minecraft:cherry_pressure_plate",item:"minecraft:cherry_pressure_plate",group:8},"minecraft:birch_pressure_plate":{type:"minecraft:birch_pressure_plate",item:"minecraft:birch_pressure_plate",group:8},"minecraft:bamboo_pressure_plate":{type:"minecraft:bamboo_pressure_plate",item:"minecraft:bamboo_pressure_plate",group:8},"minecraft:acacia_pressure_plate":{type:"minecraft:acacia_pressure_plate",item:"minecraft:acacia_pressure_plate",group:8},"minecraft:warped_stem":{type:"minecraft:warped_stem",item:"minecraft:warped_stem",group:7},"minecraft:warped_hyphae":{type:"minecraft:warped_hyphae",item:"minecraft:warped_hyphae",group:7},"minecraft:verdant_froglight":{type:"minecraft:verdant_froglight",item:"minecraft:verdant_froglight",group:7},"minecraft:stripped_warped_stem":{type:"minecraft:stripped_warped_stem",item:"minecraft:stripped_warped_stem",group:7},"minecraft:stripped_warped_hyphae":{type:"minecraft:stripped_warped_hyphae",item:"minecraft:stripped_warped_hyphae",group:7},"minecraft:stripped_spruce_wood":{type:"minecraft:stripped_spruce_wood",item:"minecraft:stripped_spruce_wood",group:7},"minecraft:stripped_spruce_log":{type:"minecraft:stripped_spruce_log",item:"minecraft:stripped_spruce_log",group:7},"minecraft:stripped_pale_oak_wood":{type:"minecraft:stripped_pale_oak_wood",item:"minecraft:stripped_pale_oak_wood",group:7},"minecraft:stripped_pale_oak_log":{type:"minecraft:stripped_pale_oak_log",item:"minecraft:stripped_pale_oak_log",group:7},"minecraft:stripped_oak_wood":{type:"minecraft:stripped_oak_wood",item:"minecraft:stripped_oak_wood",group:7},"minecraft:stripped_oak_log":{type:"minecraft:stripped_oak_log",item:"minecraft:stripped_oak_log",group:7},"minecraft:stripped_mangrove_wood":{type:"minecraft:stripped_mangrove_wood",item:"minecraft:stripped_mangrove_wood",group:7},"minecraft:stripped_mangrove_log":{type:"minecraft:stripped_mangrove_log",item:"minecraft:stripped_mangrove_log",group:7},"minecraft:stripped_jungle_wood":{type:"minecraft:stripped_jungle_wood",item:"minecraft:stripped_jungle_wood",group:7},"minecraft:stripped_jungle_log":{type:"minecraft:stripped_jungle_log",item:"minecraft:stripped_jungle_log",group:7},"minecraft:stripped_dark_oak_wood":{type:"minecraft:stripped_dark_oak_wood",item:"minecraft:stripped_dark_oak_wood",group:7},"minecraft:stripped_dark_oak_log":{type:"minecraft:stripped_dark_oak_log",item:"minecraft:stripped_dark_oak_log",group:7},"minecraft:stripped_crimson_stem":{type:"minecraft:stripped_crimson_stem",item:"minecraft:stripped_crimson_stem",group:7},"minecraft:stripped_crimson_hyphae":{type:"minecraft:stripped_crimson_hyphae",item:"minecraft:stripped_crimson_hyphae",group:7},"minecraft:stripped_cherry_wood":{type:"minecraft:stripped_cherry_wood",item:"minecraft:stripped_cherry_wood",group:7},"minecraft:stripped_cherry_log":{type:"minecraft:stripped_cherry_log",item:"minecraft:stripped_cherry_log",group:7},"minecraft:stripped_birch_wood":{type:"minecraft:stripped_birch_wood",item:"minecraft:stripped_birch_wood",group:7},"minecraft:stripped_birch_log":{type:"minecraft:stripped_birch_log",item:"minecraft:stripped_birch_log",group:7},"minecraft:stripped_bamboo_block":{type:"minecraft:stripped_bamboo_block",item:"minecraft:stripped_bamboo_block",group:7},"minecraft:stripped_acacia_wood":{type:"minecraft:stripped_acacia_wood",item:"minecraft:stripped_acacia_wood",group:7},"minecraft:stripped_acacia_log":{type:"minecraft:stripped_acacia_log",item:"minecraft:stripped_acacia_log",group:7},"minecraft:spruce_wood":{type:"minecraft:spruce_wood",item:"minecraft:spruce_wood",group:7},"minecraft:spruce_log":{type:"minecraft:spruce_log",item:"minecraft:spruce_log",group:7},"minecraft:quartz_pillar":{type:"minecraft:quartz_pillar",item:"minecraft:quartz_pillar",group:7},"minecraft:purpur_pillar":{type:"minecraft:purpur_pillar",item:"minecraft:purpur_pillar",group:7},"minecraft:polished_basalt":{type:"minecraft:polished_basalt",item:"minecraft:polished_basalt",group:7},"minecraft:pearlescent_froglight":{type:"minecraft:pearlescent_froglight",item:"minecraft:pearlescent_froglight",group:7},"minecraft:pale_oak_wood":{type:"minecraft:pale_oak_wood",item:"minecraft:pale_oak_wood",group:7},"minecraft:pale_oak_log":{type:"minecraft:pale_oak_log",item:"minecraft:pale_oak_log",group:7},"minecraft:ochre_froglight":{type:"minecraft:ochre_froglight",item:"minecraft:ochre_froglight",group:7},"minecraft:oak_wood":{type:"minecraft:oak_wood",item:"minecraft:oak_wood",group:7},"minecraft:oak_log":{type:"minecraft:oak_log",item:"minecraft:oak_log",group:7},"minecraft:muddy_mangrove_roots":{type:"minecraft:muddy_mangrove_roots",item:"minecraft:muddy_mangrove_roots",group:7},"minecraft:mangrove_wood":{type:"minecraft:mangrove_wood",item:"minecraft:mangrove_wood",group:7},"minecraft:mangrove_log":{type:"minecraft:mangrove_log",item:"minecraft:mangrove_log",group:7},"minecraft:jungle_wood":{type:"minecraft:jungle_wood",item:"minecraft:jungle_wood",group:7},"minecraft:jungle_log":{type:"minecraft:jungle_log",item:"minecraft:jungle_log",group:7},"minecraft:infested_deepslate":{type:"minecraft:infested_deepslate",item:"minecraft:infested_deepslate",group:7},"minecraft:hay_block":{type:"minecraft:hay_block",item:"minecraft:hay_block",group:7},"minecraft:deepslate":{type:"minecraft:deepslate",item:"minecraft:deepslate",group:7},"minecraft:dark_oak_wood":{type:"minecraft:dark_oak_wood",item:"minecraft:dark_oak_wood",group:7},"minecraft:dark_oak_log":{type:"minecraft:dark_oak_log",item:"minecraft:dark_oak_log",group:7},"minecraft:crimson_stem":{type:"minecraft:crimson_stem",item:"minecraft:crimson_stem",group:7},"minecraft:crimson_hyphae":{type:"minecraft:crimson_hyphae",item:"minecraft:crimson_hyphae",group:7},"minecraft:cherry_wood":{type:"minecraft:cherry_wood",item:"minecraft:cherry_wood",group:7},"minecraft:cherry_log":{type:"minecraft:cherry_log",item:"minecraft:cherry_log",group:7},"minecraft:bone_block":{type:"minecraft:bone_block",item:"minecraft:bone_block",group:7},"minecraft:birch_wood":{type:"minecraft:birch_wood",item:"minecraft:birch_wood",group:7},"minecraft:birch_log":{type:"minecraft:birch_log",item:"minecraft:birch_log",group:7},"minecraft:basalt":{type:"minecraft:basalt",item:"minecraft:basalt",group:7},"minecraft:bamboo_block":{type:"minecraft:bamboo_block",item:"minecraft:bamboo_block",group:7},"minecraft:acacia_wood":{type:"minecraft:acacia_wood",item:"minecraft:acacia_wood",group:7},"minecraft:acacia_log":{type:"minecraft:acacia_log",item:"minecraft:acacia_log",group:7},"minecraft:spruce_leaves":{type:"minecraft:spruce_leaves",item:"minecraft:spruce_leaves",group:6},"minecraft:pale_oak_leaves":{type:"minecraft:pale_oak_leaves",item:"minecraft:pale_oak_leaves",group:6},"minecraft:oak_leaves":{type:"minecraft:oak_leaves",item:"minecraft:oak_leaves",group:6},"minecraft:mangrove_leaves":{type:"minecraft:mangrove_leaves",item:"minecraft:mangrove_leaves",group:6},"minecraft:jungle_leaves":{type:"minecraft:jungle_leaves",item:"minecraft:jungle_leaves",group:6},"minecraft:flowering_azalea_leaves":{type:"minecraft:flowering_azalea_leaves",item:"minecraft:flowering_azalea_leaves",group:6},"minecraft:dark_oak_leaves":{type:"minecraft:dark_oak_leaves",item:"minecraft:dark_oak_leaves",group:6},"minecraft:cherry_leaves":{type:"minecraft:cherry_leaves",item:"minecraft:cherry_leaves",group:6},"minecraft:birch_leaves":{type:"minecraft:birch_leaves",item:"minecraft:birch_leaves",group:6},"minecraft:azalea_leaves":{type:"minecraft:azalea_leaves",item:"minecraft:azalea_leaves",group:6},"minecraft:acacia_leaves":{type:"minecraft:acacia_leaves",item:"minecraft:acacia_leaves",group:6},"minecraft:pale_oak_hanging_sign":{type:"minecraft:pale_oak_hanging_sign",item:"minecraft:pale_oak_hanging_sign",group:5},"minecraft:warped_fence_gate":{type:"minecraft:warped_fence_gate",item:"minecraft:warped_fence_gate",group:4},"minecraft:spruce_fence_gate":{type:"minecraft:spruce_fence_gate",item:"minecraft:spruce_fence_gate",group:4},"minecraft:pale_oak_fence_gate":{type:"minecraft:pale_oak_fence_gate",item:"minecraft:pale_oak_fence_gate",group:4},"minecraft:oak_fence_gate":{type:"minecraft:oak_fence_gate",item:"minecraft:oak_fence_gate",group:4},"minecraft:mangrove_fence_gate":{type:"minecraft:mangrove_fence_gate",item:"minecraft:mangrove_fence_gate",group:4},"minecraft:jungle_fence_gate":{type:"minecraft:jungle_fence_gate",item:"minecraft:jungle_fence_gate",group:4},"minecraft:dark_oak_fence_gate":{type:"minecraft:dark_oak_fence_gate",item:"minecraft:dark_oak_fence_gate",group:4},"minecraft:crimson_fence_gate":{type:"minecraft:crimson_fence_gate",item:"minecraft:crimson_fence_gate",group:4},"minecraft:cherry_fence_gate":{type:"minecraft:cherry_fence_gate",item:"minecraft:cherry_fence_gate",group:4},"minecraft:birch_fence_gate":{type:"minecraft:birch_fence_gate",item:"minecraft:birch_fence_gate",group:4},"minecraft:bamboo_fence_gate":{type:"minecraft:bamboo_fence_gate",item:"minecraft:bamboo_fence_gate",group:4},"minecraft:acacia_fence_gate":{type:"minecraft:acacia_fence_gate",item:"minecraft:acacia_fence_gate",group:4},"minecraft:yellow_stained_glass_pane":{type:"minecraft:yellow_stained_glass_pane",item:"minecraft:yellow_stained_glass_pane",group:3},"minecraft:white_stained_glass_pane":{type:"minecraft:white_stained_glass_pane",item:"minecraft:white_stained_glass_pane",group:3},"minecraft:warped_fence":{type:"minecraft:warped_fence",item:"minecraft:warped_fence",group:3},"minecraft:spruce_fence":{type:"minecraft:spruce_fence",item:"minecraft:spruce_fence",group:3},"minecraft:red_stained_glass_pane":{type:"minecraft:red_stained_glass_pane",item:"minecraft:red_stained_glass_pane",group:3},"minecraft:purple_stained_glass_pane":{type:"minecraft:purple_stained_glass_pane",item:"minecraft:purple_stained_glass_pane",group:3},"minecraft:pink_stained_glass_pane":{type:"minecraft:pink_stained_glass_pane",item:"minecraft:pink_stained_glass_pane",group:3},"minecraft:pale_oak_fence":{type:"minecraft:pale_oak_fence",item:"minecraft:pale_oak_fence",group:3},"minecraft:orange_stained_glass_pane":{type:"minecraft:orange_stained_glass_pane",item:"minecraft:orange_stained_glass_pane",group:3},"minecraft:oak_fence":{type:"minecraft:oak_fence",item:"minecraft:oak_fence",group:3},"minecraft:nether_brick_fence":{type:"minecraft:nether_brick_fence",item:"minecraft:nether_brick_fence",group:3},"minecraft:mangrove_fence":{type:"minecraft:mangrove_fence",item:"minecraft:mangrove_fence",group:3},"minecraft:magenta_stained_glass_pane":{type:"minecraft:magenta_stained_glass_pane",item:"minecraft:magenta_stained_glass_pane",group:3},"minecraft:lime_stained_glass_pane":{type:"minecraft:lime_stained_glass_pane",item:"minecraft:lime_stained_glass_pane",group:3},"minecraft:light_gray_stained_glass_pane":{type:"minecraft:light_gray_stained_glass_pane",item:"minecraft:light_gray_stained_glass_pane",group:3},"minecraft:light_blue_stained_glass_pane":{type:"minecraft:light_blue_stained_glass_pane",item:"minecraft:light_blue_stained_glass_pane",group:3},"minecraft:jungle_fence":{type:"minecraft:jungle_fence",item:"minecraft:jungle_fence",group:3},"minecraft:iron_bars":{type:"minecraft:iron_bars",item:"minecraft:iron_bars",group:3},"minecraft:green_stained_glass_pane":{type:"minecraft:green_stained_glass_pane",item:"minecraft:green_stained_glass_pane",group:3},"minecraft:gray_stained_glass_pane":{type:"minecraft:gray_stained_glass_pane",item:"minecraft:gray_stained_glass_pane",group:3},"minecraft:glass_pane":{type:"minecraft:glass_pane",item:"minecraft:glass_pane",group:3},"minecraft:dark_oak_fence":{type:"minecraft:dark_oak_fence",item:"minecraft:dark_oak_fence",group:3},"minecraft:cyan_stained_glass_pane":{type:"minecraft:cyan_stained_glass_pane",item:"minecraft:cyan_stained_glass_pane",group:3},"minecraft:crimson_fence":{type:"minecraft:crimson_fence",item:"minecraft:crimson_fence",group:3},"minecraft:cherry_fence":{type:"minecraft:cherry_fence",item:"minecraft:cherry_fence",group:3},"minecraft:brown_stained_glass_pane":{type:"minecraft:brown_stained_glass_pane",item:"minecraft:brown_stained_glass_pane",group:3},"minecraft:blue_stained_glass_pane":{type:"minecraft:blue_stained_glass_pane",item:"minecraft:blue_stained_glass_pane",group:3},"minecraft:black_stained_glass_pane":{type:"minecraft:black_stained_glass_pane",item:"minecraft:black_stained_glass_pane",group:3},"minecraft:birch_fence":{type:"minecraft:birch_fence",item:"minecraft:birch_fence",group:3},"minecraft:bamboo_fence":{type:"minecraft:bamboo_fence",item:"minecraft:bamboo_fence",group:3},"minecraft:acacia_fence":{type:"minecraft:acacia_fence",item:"minecraft:acacia_fence",group:3},"minecraft:weathered_copper_door":{type:"minecraft:weathered_copper_door",item:"minecraft:weathered_copper_door",group:2},"minecraft:waxed_weathered_copper_door":{type:"minecraft:waxed_weathered_copper_door",item:"minecraft:waxed_weathered_copper_door",group:2},"minecraft:waxed_oxidized_copper_door":{type:"minecraft:waxed_oxidized_copper_door",item:"minecraft:waxed_oxidized_copper_door",group:2},"minecraft:waxed_exposed_copper_door":{type:"minecraft:waxed_exposed_copper_door",item:"minecraft:waxed_exposed_copper_door",group:2},"minecraft:waxed_copper_door":{type:"minecraft:waxed_copper_door",item:"minecraft:waxed_copper_door",group:2},"minecraft:warped_door":{type:"minecraft:warped_door",item:"minecraft:warped_door",group:2},"minecraft:spruce_door":{type:"minecraft:spruce_door",item:"minecraft:spruce_door",group:2},"minecraft:pale_oak_door":{type:"minecraft:pale_oak_door",item:"minecraft:pale_oak_door",group:2},"minecraft:oxidized_copper_door":{type:"minecraft:oxidized_copper_door",item:"minecraft:oxidized_copper_door",group:2},"minecraft:oak_door":{type:"minecraft:oak_door",item:"minecraft:oak_door",group:2},"minecraft:mangrove_door":{type:"minecraft:mangrove_door",item:"minecraft:mangrove_door",group:2},"minecraft:jungle_door":{type:"minecraft:jungle_door",item:"minecraft:jungle_door",group:2},"minecraft:iron_door":{type:"minecraft:iron_door",item:"minecraft:iron_door",group:2},"minecraft:exposed_copper_door":{type:"minecraft:exposed_copper_door",item:"minecraft:exposed_copper_door",group:2},"minecraft:dark_oak_door":{type:"minecraft:dark_oak_door",item:"minecraft:dark_oak_door",group:2},"minecraft:crimson_door":{type:"minecraft:crimson_door",item:"minecraft:crimson_door",group:2},"minecraft:copper_door":{type:"minecraft:copper_door",item:"minecraft:copper_door",group:2},"minecraft:cherry_door":{type:"minecraft:cherry_door",item:"minecraft:cherry_door",group:2},"minecraft:birch_door":{type:"minecraft:birch_door",item:"minecraft:birch_door",group:2},"minecraft:bamboo_door":{type:"minecraft:bamboo_door",item:"minecraft:bamboo_door",group:2},"minecraft:acacia_door":{type:"minecraft:acacia_door",item:"minecraft:acacia_door",group:2},"minecraft:warped_button":{type:"minecraft:warped_button",item:"minecraft:warped_button",group:1},"minecraft:stone_button":{type:"minecraft:stone_button",item:"minecraft:stone_button",group:1},"minecraft:spruce_button":{type:"minecraft:spruce_button",item:"minecraft:spruce_button",group:1},"minecraft:polished_blackstone_button":{type:"minecraft:polished_blackstone_button",item:"minecraft:polished_blackstone_button",group:1},"minecraft:pale_oak_button":{type:"minecraft:pale_oak_button",item:"minecraft:pale_oak_button",group:1},"minecraft:oak_button":{type:"minecraft:oak_button",item:"minecraft:oak_button",group:1},"minecraft:mangrove_button":{type:"minecraft:mangrove_button",item:"minecraft:mangrove_button",group:1},"minecraft:lever":{type:"minecraft:lever",item:"minecraft:lever",group:1},"minecraft:jungle_button":{type:"minecraft:jungle_button",item:"minecraft:jungle_button",group:1},"minecraft:dark_oak_button":{type:"minecraft:dark_oak_button",item:"minecraft:dark_oak_button",group:1},"minecraft:crimson_button":{type:"minecraft:crimson_button",item:"minecraft:crimson_button",group:1},"minecraft:cherry_button":{type:"minecraft:cherry_button",item:"minecraft:cherry_button",group:1},"minecraft:birch_button":{type:"minecraft:birch_button",item:"minecraft:birch_button",group:1},"minecraft:bamboo_button":{type:"minecraft:bamboo_button",item:"minecraft:bamboo_button",group:1},"minecraft:acacia_button":{type:"minecraft:acacia_button",item:"minecraft:acacia_button",group:1},"minecraft:yellow_wool":{type:"minecraft:yellow_wool",item:"minecraft:yellow_wool",group:0},"minecraft:yellow_terracotta":{type:"minecraft:yellow_terracotta",item:"minecraft:yellow_terracotta",group:0},"minecraft:yellow_stained_glass":{type:"minecraft:yellow_stained_glass",item:"minecraft:yellow_stained_glass",group:0},"minecraft:yellow_concrete_powder":{type:"minecraft:yellow_concrete_powder",item:"minecraft:yellow_concrete_powder",group:0},"minecraft:yellow_concrete":{type:"minecraft:yellow_concrete",item:"minecraft:yellow_concrete",group:0},"minecraft:yellow_carpet":{type:"minecraft:yellow_carpet",item:"minecraft:yellow_carpet",group:0},"minecraft:wither_rose":{type:"minecraft:wither_rose",item:"minecraft:wither_rose",group:0},"minecraft:white_wool":{type:"minecraft:white_wool",item:"minecraft:white_wool",group:0},"minecraft:white_tulip":{type:"minecraft:white_tulip",item:"minecraft:white_tulip",group:0},"minecraft:white_terracotta":{type:"minecraft:white_terracotta",item:"minecraft:white_terracotta",group:0},"minecraft:white_stained_glass":{type:"minecraft:white_stained_glass",item:"minecraft:white_stained_glass",group:0},"minecraft:white_concrete_powder":{type:"minecraft:white_concrete_powder",item:"minecraft:white_concrete_powder",group:0},"minecraft:white_concrete":{type:"minecraft:white_concrete",item:"minecraft:white_concrete",group:0},"minecraft:white_carpet":{type:"minecraft:white_carpet",item:"minecraft:white_carpet",group:0},"minecraft:wet_sponge":{type:"minecraft:wet_sponge",item:"minecraft:wet_sponge",group:0},"minecraft:weathered_cut_copper":{type:"minecraft:weathered_cut_copper",item:"minecraft:weathered_cut_copper",group:0},"minecraft:weathered_copper":{type:"minecraft:weathered_copper",item:"minecraft:weathered_copper",group:0},"minecraft:weathered_chiseled_copper":{type:"minecraft:weathered_chiseled_copper",item:"minecraft:weathered_chiseled_copper",group:0},"minecraft:waxed_weathered_cut_copper":{type:"minecraft:waxed_weathered_cut_copper",item:"minecraft:waxed_weathered_cut_copper",group:0},"minecraft:waxed_weathered_copper":{type:"minecraft:waxed_weathered_copper",item:"minecraft:waxed_weathered_copper",group:0},"minecraft:waxed_weathered_chiseled_copper":{type:"minecraft:waxed_weathered_chiseled_copper",item:"minecraft:waxed_weathered_chiseled_copper",group:0},"minecraft:waxed_oxidized_cut_copper":{type:"minecraft:waxed_oxidized_cut_copper",item:"minecraft:waxed_oxidized_cut_copper",group:0},"minecraft:waxed_oxidized_copper":{type:"minecraft:waxed_oxidized_copper",item:"minecraft:waxed_oxidized_copper",group:0},"minecraft:waxed_oxidized_chiseled_copper":{type:"minecraft:waxed_oxidized_chiseled_copper",item:"minecraft:waxed_oxidized_chiseled_copper",group:0},"minecraft:waxed_exposed_cut_copper":{type:"minecraft:waxed_exposed_cut_copper",item:"minecraft:waxed_exposed_cut_copper",group:0},"minecraft:waxed_exposed_copper":{type:"minecraft:waxed_exposed_copper",item:"minecraft:waxed_exposed_copper",group:0},"minecraft:waxed_exposed_chiseled_copper":{type:"minecraft:waxed_exposed_chiseled_copper",item:"minecraft:waxed_exposed_chiseled_copper",group:0},"minecraft:waxed_cut_copper":{type:"minecraft:waxed_cut_copper",item:"minecraft:waxed_cut_copper",group:0},"minecraft:waxed_copper_block":{type:"minecraft:waxed_copper_block",item:"minecraft:waxed_copper_block",group:0},"minecraft:waxed_chiseled_copper":{type:"minecraft:waxed_chiseled_copper",item:"minecraft:waxed_chiseled_copper",group:0},"minecraft:warped_wart_block":{type:"minecraft:warped_wart_block",item:"minecraft:warped_wart_block",group:0},"minecraft:warped_roots":{type:"minecraft:warped_roots",item:"minecraft:warped_roots",group:0},"minecraft:warped_planks":{type:"minecraft:warped_planks",item:"minecraft:warped_planks",group:0},"minecraft:warped_nylium":{type:"minecraft:warped_nylium",item:"minecraft:warped_nylium",group:0},"minecraft:warped_fungus":{type:"minecraft:warped_fungus",item:"minecraft:warped_fungus",group:0},"minecraft:tuff_bricks":{type:"minecraft:tuff_bricks",item:"minecraft:tuff_bricks",group:0},"minecraft:tuff":{type:"minecraft:tuff",item:"minecraft:tuff",group:0},"minecraft:tube_coral_block":{type:"minecraft:tube_coral_block",item:"minecraft:tube_coral_block",group:0},"minecraft:torchflower":{type:"minecraft:torchflower",item:"minecraft:torchflower",group:0},"minecraft:tinted_glass":{type:"minecraft:tinted_glass",item:"minecraft:tinted_glass",group:0},"minecraft:terracotta":{type:"minecraft:terracotta",item:"minecraft:terracotta",group:0},"minecraft:structure_void":{type:"minecraft:structure_void",item:"minecraft:structure_void",group:0},"minecraft:stone_bricks":{type:"minecraft:stone_bricks",item:"minecraft:stone_bricks",group:0},"minecraft:stone":{type:"minecraft:stone",item:"minecraft:stone",group:0},"minecraft:spruce_planks":{type:"minecraft:spruce_planks",item:"minecraft:spruce_planks",group:0},"minecraft:spore_blossom":{type:"minecraft:spore_blossom",item:"minecraft:spore_blossom",group:0},"minecraft:sponge":{type:"minecraft:sponge",item:"minecraft:sponge",group:0},"minecraft:spawner":{type:"minecraft:spawner",item:"minecraft:spawner",group:0},"minecraft:soul_soil":{type:"minecraft:soul_soil",item:"minecraft:soul_soil",group:0},"minecraft:soul_sand":{type:"minecraft:soul_sand",item:"minecraft:soul_sand",group:0},"minecraft:snow_block":{type:"minecraft:snow_block",item:"minecraft:snow_block",group:0},"minecraft:smooth_stone":{type:"minecraft:smooth_stone",item:"minecraft:smooth_stone",group:0},"minecraft:smooth_sandstone":{type:"minecraft:smooth_sandstone",item:"minecraft:smooth_sandstone",group:0},"minecraft:smooth_red_sandstone":{type:"minecraft:smooth_red_sandstone",item:"minecraft:smooth_red_sandstone",group:0},"minecraft:smooth_quartz":{type:"minecraft:smooth_quartz",item:"minecraft:smooth_quartz",group:0},"minecraft:smooth_basalt":{type:"minecraft:smooth_basalt",item:"minecraft:smooth_basalt",group:0},"minecraft:smithing_table":{type:"minecraft:smithing_table",item:"minecraft:smithing_table",group:0},"minecraft:slime_block":{type:"minecraft:slime_block",item:"minecraft:slime_block",group:0},"minecraft:shroomlight":{type:"minecraft:shroomlight",item:"minecraft:shroomlight",group:0},"minecraft:short_grass":{type:"minecraft:short_grass",item:"minecraft:short_grass",group:0},"minecraft:seagrass":{type:"minecraft:seagrass",item:"minecraft:seagrass",group:0},"minecraft:sea_lantern":{type:"minecraft:sea_lantern",item:"minecraft:sea_lantern",group:0},"minecraft:sculk":{type:"minecraft:sculk",item:"minecraft:sculk",group:0},"minecraft:sandstone":{type:"minecraft:sandstone",item:"minecraft:sandstone",group:0},"minecraft:sand":{type:"minecraft:sand",item:"minecraft:sand",group:0},"minecraft:rooted_dirt":{type:"minecraft:rooted_dirt",item:"minecraft:rooted_dirt",group:0},"minecraft:reinforced_deepslate":{type:"minecraft:reinforced_deepslate",item:"minecraft:reinforced_deepslate",group:0},"minecraft:redstone_block":{type:"minecraft:redstone_block",item:"minecraft:redstone_block",group:0},"minecraft:red_wool":{type:"minecraft:red_wool",item:"minecraft:red_wool",group:0},"minecraft:red_tulip":{type:"minecraft:red_tulip",item:"minecraft:red_tulip",group:0},"minecraft:red_terracotta":{type:"minecraft:red_terracotta",item:"minecraft:red_terracotta",group:0},"minecraft:red_stained_glass":{type:"minecraft:red_stained_glass",item:"minecraft:red_stained_glass",group:0},"minecraft:red_sandstone":{type:"minecraft:red_sandstone",item:"minecraft:red_sandstone",group:0},"minecraft:red_sand":{type:"minecraft:red_sand",item:"minecraft:red_sand",group:0},"minecraft:red_nether_bricks":{type:"minecraft:red_nether_bricks",item:"minecraft:red_nether_bricks",group:0},"minecraft:red_mushroom":{type:"minecraft:red_mushroom",item:"minecraft:red_mushroom",group:0},"minecraft:red_concrete_powder":{type:"minecraft:red_concrete_powder",item:"minecraft:red_concrete_powder",group:0},"minecraft:red_concrete":{type:"minecraft:red_concrete",item:"minecraft:red_concrete",group:0},"minecraft:red_carpet":{type:"minecraft:red_carpet",item:"minecraft:red_carpet",group:0},"minecraft:raw_iron_block":{type:"minecraft:raw_iron_block",item:"minecraft:raw_iron_block",group:0},"minecraft:raw_gold_block":{type:"minecraft:raw_gold_block",item:"minecraft:raw_gold_block",group:0},"minecraft:raw_copper_block":{type:"minecraft:raw_copper_block",item:"minecraft:raw_copper_block",group:0},"minecraft:quartz_bricks":{type:"minecraft:quartz_bricks",item:"minecraft:quartz_bricks",group:0},"minecraft:quartz_block":{type:"minecraft:quartz_block",item:"minecraft:quartz_block",group:0},"minecraft:purpur_block":{type:"minecraft:purpur_block",item:"minecraft:purpur_block",group:0},"minecraft:purple_wool":{type:"minecraft:purple_wool",item:"minecraft:purple_wool",group:0},"minecraft:purple_terracotta":{type:"minecraft:purple_terracotta",item:"minecraft:purple_terracotta",group:0},"minecraft:purple_stained_glass":{type:"minecraft:purple_stained_glass",item:"minecraft:purple_stained_glass",group:0},"minecraft:purple_concrete_powder":{type:"minecraft:purple_concrete_powder",item:"minecraft:purple_concrete_powder",group:0},"minecraft:purple_concrete":{type:"minecraft:purple_concrete",item:"minecraft:purple_concrete",group:0},"minecraft:purple_carpet":{type:"minecraft:purple_carpet",item:"minecraft:purple_carpet",group:0},"minecraft:pumpkin":{type:"minecraft:pumpkin",item:"minecraft:pumpkin",group:0},"minecraft:prismarine_bricks":{type:"minecraft:prismarine_bricks",item:"minecraft:prismarine_bricks",group:0},"minecraft:prismarine":{type:"minecraft:prismarine",item:"minecraft:prismarine",group:0},"minecraft:powder_snow_bucket":{type:"minecraft:powder_snow",item:"minecraft:powder_snow_bucket",group:0},"minecraft:poppy":{type:"minecraft:poppy",item:"minecraft:poppy",group:0},"minecraft:polished_tuff":{type:"minecraft:polished_tuff",item:"minecraft:polished_tuff",group:0},"minecraft:polished_granite":{type:"minecraft:polished_granite",item:"minecraft:polished_granite",group:0},"minecraft:polished_diorite":{type:"minecraft:polished_diorite",item:"minecraft:polished_diorite",group:0},"minecraft:polished_deepslate":{type:"minecraft:polished_deepslate",item:"minecraft:polished_deepslate",group:0},"minecraft:polished_blackstone_bricks":{type:"minecraft:polished_blackstone_bricks",item:"minecraft:polished_blackstone_bricks",group:0},"minecraft:polished_blackstone":{type:"minecraft:polished_blackstone",item:"minecraft:polished_blackstone",group:0},"minecraft:polished_andesite":{type:"minecraft:polished_andesite",item:"minecraft:polished_andesite",group:0},"minecraft:pink_wool":{type:"minecraft:pink_wool",item:"minecraft:pink_wool",group:0},"minecraft:pink_tulip":{type:"minecraft:pink_tulip",item:"minecraft:pink_tulip",group:0},"minecraft:pink_terracotta":{type:"minecraft:pink_terracotta",item:"minecraft:pink_terracotta",group:0},"minecraft:pink_stained_glass":{type:"minecraft:pink_stained_glass",item:"minecraft:pink_stained_glass",group:0},"minecraft:pink_concrete_powder":{type:"minecraft:pink_concrete_powder",item:"minecraft:pink_concrete_powder",group:0},"minecraft:pink_concrete":{type:"minecraft:pink_concrete",item:"minecraft:pink_concrete",group:0},"minecraft:pink_carpet":{type:"minecraft:pink_carpet",item:"minecraft:pink_carpet",group:0},"minecraft:pale_oak_planks":{type:"minecraft:pale_oak_planks",item:"minecraft:pale_oak_planks",group:0},"minecraft:pale_moss_block":{type:"minecraft:pale_moss_block",item:"minecraft:pale_moss_block",group:0},"minecraft:packed_mud":{type:"minecraft:packed_mud",item:"minecraft:packed_mud",group:0},"minecraft:packed_ice":{type:"minecraft:packed_ice",item:"minecraft:packed_ice",group:0},"minecraft:oxidized_cut_copper":{type:"minecraft:oxidized_cut_copper",item:"minecraft:oxidized_cut_copper",group:0},"minecraft:oxidized_copper":{type:"minecraft:oxidized_copper",item:"minecraft:oxidized_copper",group:0},"minecraft:oxidized_chiseled_copper":{type:"minecraft:oxidized_chiseled_copper",item:"minecraft:oxidized_chiseled_copper",group:0},"minecraft:oxeye_daisy":{type:"minecraft:oxeye_daisy",item:"minecraft:oxeye_daisy",group:0},"minecraft:orange_wool":{type:"minecraft:orange_wool",item:"minecraft:orange_wool",group:0},"minecraft:orange_tulip":{type:"minecraft:orange_tulip",item:"minecraft:orange_tulip",group:0},"minecraft:orange_terracotta":{type:"minecraft:orange_terracotta",item:"minecraft:orange_terracotta",group:0},"minecraft:orange_stained_glass":{type:"minecraft:orange_stained_glass",item:"minecraft:orange_stained_glass",group:0},"minecraft:orange_concrete_powder":{type:"minecraft:orange_concrete_powder",item:"minecraft:orange_concrete_powder",group:0},"minecraft:orange_concrete":{type:"minecraft:orange_concrete",item:"minecraft:orange_concrete",group:0},"minecraft:orange_carpet":{type:"minecraft:orange_carpet",item:"minecraft:orange_carpet",group:0},"minecraft:obsidian":{type:"minecraft:obsidian",item:"minecraft:obsidian",group:0},"minecraft:oak_planks":{type:"minecraft:oak_planks",item:"minecraft:oak_planks",group:0},"minecraft:netherrack":{type:"minecraft:netherrack",item:"minecraft:netherrack",group:0},"minecraft:netherite_block":{type:"minecraft:netherite_block",item:"minecraft:netherite_block",group:0},"minecraft:nether_wart_block":{type:"minecraft:nether_wart_block",item:"minecraft:nether_wart_block",group:0},"minecraft:nether_sprouts":{type:"minecraft:nether_sprouts",item:"minecraft:nether_sprouts",group:0},"minecraft:nether_quartz_ore":{type:"minecraft:nether_quartz_ore",item:"minecraft:nether_quartz_ore",group:0},"minecraft:nether_gold_ore":{type:"minecraft:nether_gold_ore",item:"minecraft:nether_gold_ore",group:0},"minecraft:nether_bricks":{type:"minecraft:nether_bricks",item:"minecraft:nether_bricks",group:0},"minecraft:mud_bricks":{type:"minecraft:mud_bricks",item:"minecraft:mud_bricks",group:0},"minecraft:mud":{type:"minecraft:mud",item:"minecraft:mud",group:0},"minecraft:mossy_stone_bricks":{type:"minecraft:mossy_stone_bricks",item:"minecraft:mossy_stone_bricks",group:0},"minecraft:mossy_cobblestone":{type:"minecraft:mossy_cobblestone",item:"minecraft:mossy_cobblestone",group:0},"minecraft:moss_carpet":{type:"minecraft:moss_carpet",item:"minecraft:moss_carpet",group:0},"minecraft:moss_block":{type:"minecraft:moss_block",item:"minecraft:moss_block",group:0},"minecraft:melon":{type:"minecraft:melon",item:"minecraft:melon",group:0},"minecraft:mangrove_planks":{type:"minecraft:mangrove_planks",item:"minecraft:mangrove_planks",group:0},"minecraft:magma_block":{type:"minecraft:magma_block",item:"minecraft:magma_block",group:0},"minecraft:magenta_wool":{type:"minecraft:magenta_wool",item:"minecraft:magenta_wool",group:0},"minecraft:magenta_terracotta":{type:"minecraft:magenta_terracotta",item:"minecraft:magenta_terracotta",group:0},"minecraft:magenta_stained_glass":{type:"minecraft:magenta_stained_glass",item:"minecraft:magenta_stained_glass",group:0},"minecraft:magenta_concrete_powder":{type:"minecraft:magenta_concrete_powder",item:"minecraft:magenta_concrete_powder",group:0},"minecraft:magenta_concrete":{type:"minecraft:magenta_concrete",item:"minecraft:magenta_concrete",group:0},"minecraft:magenta_carpet":{type:"minecraft:magenta_carpet",item:"minecraft:magenta_carpet",group:0},"minecraft:lodestone":{type:"minecraft:lodestone",item:"minecraft:lodestone",group:0},"minecraft:lime_wool":{type:"minecraft:lime_wool",item:"minecraft:lime_wool",group:0},"minecraft:lime_terracotta":{type:"minecraft:lime_terracotta",item:"minecraft:lime_terracotta",group:0},"minecraft:lime_stained_glass":{type:"minecraft:lime_stained_glass",item:"minecraft:lime_stained_glass",group:0},"minecraft:lime_concrete_powder":{type:"minecraft:lime_concrete_powder",item:"minecraft:lime_concrete_powder",group:0},"minecraft:lime_concrete":{type:"minecraft:lime_concrete",item:"minecraft:lime_concrete",group:0},"minecraft:lime_carpet":{type:"minecraft:lime_carpet",item:"minecraft:lime_carpet",group:0},"minecraft:lily_pad":{type:"minecraft:lily_pad",item:"minecraft:lily_pad",group:0},"minecraft:lily_of_the_valley":{type:"minecraft:lily_of_the_valley",item:"minecraft:lily_of_the_valley",group:0},"minecraft:light_gray_wool":{type:"minecraft:light_gray_wool",item:"minecraft:light_gray_wool",group:0},"minecraft:light_gray_terracotta":{type:"minecraft:light_gray_terracotta",item:"minecraft:light_gray_terracotta",group:0},"minecraft:light_gray_stained_glass":{type:"minecraft:light_gray_stained_glass",item:"minecraft:light_gray_stained_glass",group:0},"minecraft:light_gray_concrete_powder":{type:"minecraft:light_gray_concrete_powder",item:"minecraft:light_gray_concrete_powder",group:0},"minecraft:light_gray_concrete":{type:"minecraft:light_gray_concrete",item:"minecraft:light_gray_concrete",group:0},"minecraft:light_gray_carpet":{type:"minecraft:light_gray_carpet",item:"minecraft:light_gray_carpet",group:0},"minecraft:light_blue_wool":{type:"minecraft:light_blue_wool",item:"minecraft:light_blue_wool",group:0},"minecraft:light_blue_terracotta":{type:"minecraft:light_blue_terracotta",item:"minecraft:light_blue_terracotta",group:0},"minecraft:light_blue_stained_glass":{type:"minecraft:light_blue_stained_glass",item:"minecraft:light_blue_stained_glass",group:0},"minecraft:light_blue_concrete_powder":{type:"minecraft:light_blue_concrete_powder",item:"minecraft:light_blue_concrete_powder",group:0},"minecraft:light_blue_concrete":{type:"minecraft:light_blue_concrete",item:"minecraft:light_blue_concrete",group:0},"minecraft:light_blue_carpet":{type:"minecraft:light_blue_carpet",item:"minecraft:light_blue_carpet",group:0},"minecraft:lapis_ore":{type:"minecraft:lapis_ore",item:"minecraft:lapis_ore",group:0},"minecraft:lapis_block":{type:"minecraft:lapis_block",item:"minecraft:lapis_block",group:0},"minecraft:jungle_planks":{type:"minecraft:jungle_planks",item:"minecraft:jungle_planks",group:0},"minecraft:iron_ore":{type:"minecraft:iron_ore",item:"minecraft:iron_ore",group:0},"minecraft:iron_block":{type:"minecraft:iron_block",item:"minecraft:iron_block",group:0},"minecraft:infested_stone_bricks":{type:"minecraft:infested_stone_bricks",item:"minecraft:infested_stone_bricks",group:0},"minecraft:infested_stone":{type:"minecraft:infested_stone",item:"minecraft:infested_stone",group:0},"minecraft:infested_mossy_stone_bricks":{type:"minecraft:infested_mossy_stone_bricks",item:"minecraft:infested_mossy_stone_bricks",group:0},"minecraft:infested_cracked_stone_bricks":{type:"minecraft:infested_cracked_stone_bricks",item:"minecraft:infested_cracked_stone_bricks",group:0},"minecraft:infested_cobblestone":{type:"minecraft:infested_cobblestone",item:"minecraft:infested_cobblestone",group:0},"minecraft:infested_chiseled_stone_bricks":{type:"minecraft:infested_chiseled_stone_bricks",item:"minecraft:infested_chiseled_stone_bricks",group:0},"minecraft:ice":{type:"minecraft:ice",item:"minecraft:ice",group:0},"minecraft:horn_coral_block":{type:"minecraft:horn_coral_block",item:"minecraft:horn_coral_block",group:0},"minecraft:honeycomb_block":{type:"minecraft:honeycomb_block",item:"minecraft:honeycomb_block",group:0},"minecraft:honey_block":{type:"minecraft:honey_block",item:"minecraft:honey_block",group:0},"minecraft:green_wool":{type:"minecraft:green_wool",item:"minecraft:green_wool",group:0},"minecraft:green_terracotta":{type:"minecraft:green_terracotta",item:"minecraft:green_terracotta",group:0},"minecraft:green_stained_glass":{type:"minecraft:green_stained_glass",item:"minecraft:green_stained_glass",group:0},"minecraft:green_concrete_powder":{type:"minecraft:green_concrete_powder",item:"minecraft:green_concrete_powder",group:0},"minecraft:green_concrete":{type:"minecraft:green_concrete",item:"minecraft:green_concrete",group:0},"minecraft:green_carpet":{type:"minecraft:green_carpet",item:"minecraft:green_carpet",group:0},"minecraft:gray_wool":{type:"minecraft:gray_wool",item:"minecraft:gray_wool",group:0},"minecraft:gray_terracotta":{type:"minecraft:gray_terracotta",item:"minecraft:gray_terracotta",group:0},"minecraft:gray_stained_glass":{type:"minecraft:gray_stained_glass",item:"minecraft:gray_stained_glass",group:0},"minecraft:gray_concrete_powder":{type:"minecraft:gray_concrete_powder",item:"minecraft:gray_concrete_powder",group:0},"minecraft:gray_concrete":{type:"minecraft:gray_concrete",item:"minecraft:gray_concrete",group:0},"minecraft:gray_carpet":{type:"minecraft:gray_carpet",item:"minecraft:gray_carpet",group:0},"minecraft:gravel":{type:"minecraft:gravel",item:"minecraft:gravel",group:0},"minecraft:granite":{type:"minecraft:granite",item:"minecraft:granite",group:0},"minecraft:gold_ore":{type:"minecraft:gold_ore",item:"minecraft:gold_ore",group:0},"minecraft:gold_block":{type:"minecraft:gold_block",item:"minecraft:gold_block",group:0},"minecraft:glowstone":{type:"minecraft:glowstone",item:"minecraft:glowstone",group:0},"minecraft:glass":{type:"minecraft:glass",item:"minecraft:glass",group:0},"minecraft:gilded_blackstone":{type:"minecraft:gilded_blackstone",item:"minecraft:gilded_blackstone",group:0},"minecraft:frogspawn":{type:"minecraft:frogspawn",item:"minecraft:frogspawn",group:0},"minecraft:flowering_azalea":{type:"minecraft:flowering_azalea",item:"minecraft:flowering_azalea",group:0},"minecraft:flower_pot":{type:"minecraft:flower_pot",item:"minecraft:flower_pot",group:0},"minecraft:fletching_table":{type:"minecraft:fletching_table",item:"minecraft:fletching_table",group:0},"minecraft:fire_coral_block":{type:"minecraft:fire_coral_block",item:"minecraft:fire_coral_block",group:0},"minecraft:fern":{type:"minecraft:fern",item:"minecraft:fern",group:0},"minecraft:exposed_cut_copper":{type:"minecraft:exposed_cut_copper",item:"minecraft:exposed_cut_copper",group:0},"minecraft:exposed_copper":{type:"minecraft:exposed_copper",item:"minecraft:exposed_copper",group:0},"minecraft:exposed_chiseled_copper":{type:"minecraft:exposed_chiseled_copper",item:"minecraft:exposed_chiseled_copper",group:0},"minecraft:end_stone_bricks":{type:"minecraft:end_stone_bricks",item:"minecraft:end_stone_bricks",group:0},"minecraft:end_stone":{type:"minecraft:end_stone",item:"minecraft:end_stone",group:0},"minecraft:enchanting_table":{type:"minecraft:enchanting_table",item:"minecraft:enchanting_table",group:0},"minecraft:emerald_ore":{type:"minecraft:emerald_ore",item:"minecraft:emerald_ore",group:0},"minecraft:emerald_block":{type:"minecraft:emerald_block",item:"minecraft:emerald_block",group:0},"minecraft:dripstone_block":{type:"minecraft:dripstone_block",item:"minecraft:dripstone_block",group:0},"minecraft:dried_kelp_block":{type:"minecraft:dried_kelp_block",item:"minecraft:dried_kelp_block",group:0},"minecraft:dragon_egg":{type:"minecraft:dragon_egg",item:"minecraft:dragon_egg",group:0},"minecraft:dirt_path":{type:"minecraft:dirt_path",item:"minecraft:dirt_path",group:0},"minecraft:dirt":{type:"minecraft:dirt",item:"minecraft:dirt",group:0},"minecraft:diorite":{type:"minecraft:diorite",item:"minecraft:diorite",group:0},"minecraft:diamond_ore":{type:"minecraft:diamond_ore",item:"minecraft:diamond_ore",group:0},"minecraft:diamond_block":{type:"minecraft:diamond_block",item:"minecraft:diamond_block",group:0},"minecraft:deepslate_tiles":{type:"minecraft:deepslate_tiles",item:"minecraft:deepslate_tiles",group:0},"minecraft:deepslate_lapis_ore":{type:"minecraft:deepslate_lapis_ore",item:"minecraft:deepslate_lapis_ore",group:0},"minecraft:deepslate_iron_ore":{type:"minecraft:deepslate_iron_ore",item:"minecraft:deepslate_iron_ore",group:0},"minecraft:deepslate_gold_ore":{type:"minecraft:deepslate_gold_ore",item:"minecraft:deepslate_gold_ore",group:0},"minecraft:deepslate_emerald_ore":{type:"minecraft:deepslate_emerald_ore",item:"minecraft:deepslate_emerald_ore",group:0},"minecraft:deepslate_diamond_ore":{type:"minecraft:deepslate_diamond_ore",item:"minecraft:deepslate_diamond_ore",group:0},"minecraft:deepslate_copper_ore":{type:"minecraft:deepslate_copper_ore",item:"minecraft:deepslate_copper_ore",group:0},"minecraft:deepslate_coal_ore":{type:"minecraft:deepslate_coal_ore",item:"minecraft:deepslate_coal_ore",group:0},"minecraft:deepslate_bricks":{type:"minecraft:deepslate_bricks",item:"minecraft:deepslate_bricks",group:0},"minecraft:dead_tube_coral_block":{type:"minecraft:dead_tube_coral_block",item:"minecraft:dead_tube_coral_block",group:0},"minecraft:dead_horn_coral_block":{type:"minecraft:dead_horn_coral_block",item:"minecraft:dead_horn_coral_block",group:0},"minecraft:dead_fire_coral_block":{type:"minecraft:dead_fire_coral_block",item:"minecraft:dead_fire_coral_block",group:0},"minecraft:dead_bush":{type:"minecraft:dead_bush",item:"minecraft:dead_bush",group:0},"minecraft:dead_bubble_coral_block":{type:"minecraft:dead_bubble_coral_block",item:"minecraft:dead_bubble_coral_block",group:0},"minecraft:dead_brain_coral_block":{type:"minecraft:dead_brain_coral_block",item:"minecraft:dead_brain_coral_block",group:0},"minecraft:dark_prismarine":{type:"minecraft:dark_prismarine",item:"minecraft:dark_prismarine",group:0},"minecraft:dark_oak_planks":{type:"minecraft:dark_oak_planks",item:"minecraft:dark_oak_planks",group:0},"minecraft:dandelion":{type:"minecraft:dandelion",item:"minecraft:dandelion",group:0},"minecraft:cyan_wool":{type:"minecraft:cyan_wool",item:"minecraft:cyan_wool",group:0},"minecraft:cyan_terracotta":{type:"minecraft:cyan_terracotta",item:"minecraft:cyan_terracotta",group:0},"minecraft:cyan_stained_glass":{type:"minecraft:cyan_stained_glass",item:"minecraft:cyan_stained_glass",group:0},"minecraft:cyan_concrete_powder":{type:"minecraft:cyan_concrete_powder",item:"minecraft:cyan_concrete_powder",group:0},"minecraft:cyan_concrete":{type:"minecraft:cyan_concrete",item:"minecraft:cyan_concrete",group:0},"minecraft:cyan_carpet":{type:"minecraft:cyan_carpet",item:"minecraft:cyan_carpet",group:0},"minecraft:cut_sandstone":{type:"minecraft:cut_sandstone",item:"minecraft:cut_sandstone",group:0},"minecraft:cut_red_sandstone":{type:"minecraft:cut_red_sandstone",item:"minecraft:cut_red_sandstone",group:0},"minecraft:cut_copper":{type:"minecraft:cut_copper",item:"minecraft:cut_copper",group:0},"minecraft:crying_obsidian":{type:"minecraft:crying_obsidian",item:"minecraft:crying_obsidian",group:0},"minecraft:crimson_roots":{type:"minecraft:crimson_roots",item:"minecraft:crimson_roots",group:0},"minecraft:crimson_planks":{type:"minecraft:crimson_planks",item:"minecraft:crimson_planks",group:0},"minecraft:crimson_nylium":{type:"minecraft:crimson_nylium",item:"minecraft:crimson_nylium",group:0},"minecraft:crimson_fungus":{type:"minecraft:crimson_fungus",item:"minecraft:crimson_fungus",group:0},"minecraft:crafting_table":{type:"minecraft:crafting_table",item:"minecraft:crafting_table",group:0},"minecraft:cracked_stone_bricks":{type:"minecraft:cracked_stone_bricks",item:"minecraft:cracked_stone_bricks",group:0},"minecraft:cracked_polished_blackstone_bricks":{type:"minecraft:cracked_polished_blackstone_bricks",item:"minecraft:cracked_polished_blackstone_bricks",group:0},"minecraft:cracked_nether_bricks":{type:"minecraft:cracked_nether_bricks",item:"minecraft:cracked_nether_bricks",group:0},"minecraft:cracked_deepslate_tiles":{type:"minecraft:cracked_deepslate_tiles",item:"minecraft:cracked_deepslate_tiles",group:0},"minecraft:cracked_deepslate_bricks":{type:"minecraft:cracked_deepslate_bricks",item:"minecraft:cracked_deepslate_bricks",group:0},"minecraft:cornflower":{type:"minecraft:cornflower",item:"minecraft:cornflower",group:0},"minecraft:copper_ore":{type:"minecraft:copper_ore",item:"minecraft:copper_ore",group:0},"minecraft:copper_block":{type:"minecraft:copper_block",item:"minecraft:copper_block",group:0},"minecraft:cobweb":{type:"minecraft:cobweb",item:"minecraft:cobweb",group:0},"minecraft:cobblestone":{type:"minecraft:cobblestone",item:"minecraft:cobblestone",group:0},"minecraft:cobbled_deepslate":{type:"minecraft:cobbled_deepslate",item:"minecraft:cobbled_deepslate",group:0},"minecraft:coarse_dirt":{type:"minecraft:coarse_dirt",item:"minecraft:coarse_dirt",group:0},"minecraft:coal_ore":{type:"minecraft:coal_ore",item:"minecraft:coal_ore",group:0},"minecraft:coal_block":{type:"minecraft:coal_block",item:"minecraft:coal_block",group:0},"minecraft:clay":{type:"minecraft:clay",item:"minecraft:clay",group:0},"minecraft:chiseled_tuff_bricks":{type:"minecraft:chiseled_tuff_bricks",item:"minecraft:chiseled_tuff_bricks",group:0},"minecraft:chiseled_tuff":{type:"minecraft:chiseled_tuff",item:"minecraft:chiseled_tuff",group:0},"minecraft:chiseled_stone_bricks":{type:"minecraft:chiseled_stone_bricks",item:"minecraft:chiseled_stone_bricks",group:0},"minecraft:chiseled_sandstone":{type:"minecraft:chiseled_sandstone",item:"minecraft:chiseled_sandstone",group:0},"minecraft:chiseled_red_sandstone":{type:"minecraft:chiseled_red_sandstone",item:"minecraft:chiseled_red_sandstone",group:0},"minecraft:chiseled_quartz_block":{type:"minecraft:chiseled_quartz_block",item:"minecraft:chiseled_quartz_block",group:0},"minecraft:chiseled_polished_blackstone":{type:"minecraft:chiseled_polished_blackstone",item:"minecraft:chiseled_polished_blackstone",group:0},"minecraft:chiseled_nether_bricks":{type:"minecraft:chiseled_nether_bricks",item:"minecraft:chiseled_nether_bricks",group:0},"minecraft:chiseled_deepslate":{type:"minecraft:chiseled_deepslate",item:"minecraft:chiseled_deepslate",group:0},"minecraft:chiseled_copper":{type:"minecraft:chiseled_copper",item:"minecraft:chiseled_copper",group:0},"minecraft:cherry_planks":{type:"minecraft:cherry_planks",item:"minecraft:cherry_planks",group:0},"minecraft:cartography_table":{type:"minecraft:cartography_table",item:"minecraft:cartography_table",group:0},"minecraft:calcite":{type:"minecraft:calcite",item:"minecraft:calcite",group:0},"minecraft:budding_amethyst":{type:"minecraft:budding_amethyst",item:"minecraft:budding_amethyst",group:0},"minecraft:bubble_coral_block":{type:"minecraft:bubble_coral_block",item:"minecraft:bubble_coral_block",group:0},"minecraft:brown_wool":{type:"minecraft:brown_wool",item:"minecraft:brown_wool",group:0},"minecraft:brown_terracotta":{type:"minecraft:brown_terracotta",item:"minecraft:brown_terracotta",group:0},"minecraft:brown_stained_glass":{type:"minecraft:brown_stained_glass",item:"minecraft:brown_stained_glass",group:0},"minecraft:brown_mushroom":{type:"minecraft:brown_mushroom",item:"minecraft:brown_mushroom",group:0},"minecraft:brown_concrete_powder":{type:"minecraft:brown_concrete_powder",item:"minecraft:brown_concrete_powder",group:0},"minecraft:brown_concrete":{type:"minecraft:brown_concrete",item:"minecraft:brown_concrete",group:0},"minecraft:brown_carpet":{type:"minecraft:brown_carpet",item:"minecraft:brown_carpet",group:0},"minecraft:bricks":{type:"minecraft:bricks",item:"minecraft:bricks",group:0},"minecraft:brain_coral_block":{type:"minecraft:brain_coral_block",item:"minecraft:brain_coral_block",group:0},"minecraft:bookshelf":{type:"minecraft:bookshelf",item:"minecraft:bookshelf",group:0},"minecraft:blue_wool":{type:"minecraft:blue_wool",item:"minecraft:blue_wool",group:0},"minecraft:blue_terracotta":{type:"minecraft:blue_terracotta",item:"minecraft:blue_terracotta",group:0},"minecraft:blue_stained_glass":{type:"minecraft:blue_stained_glass",item:"minecraft:blue_stained_glass",group:0},"minecraft:blue_orchid":{type:"minecraft:blue_orchid",item:"minecraft:blue_orchid",group:0},"minecraft:blue_ice":{type:"minecraft:blue_ice",item:"minecraft:blue_ice",group:0},"minecraft:blue_concrete_powder":{type:"minecraft:blue_concrete_powder",item:"minecraft:blue_concrete_powder",group:0},"minecraft:blue_concrete":{type:"minecraft:blue_concrete",item:"minecraft:blue_concrete",group:0},"minecraft:blue_carpet":{type:"minecraft:blue_carpet",item:"minecraft:blue_carpet",group:0},"minecraft:blackstone":{type:"minecraft:blackstone",item:"minecraft:blackstone",group:0},"minecraft:black_wool":{type:"minecraft:black_wool",item:"minecraft:black_wool",group:0},"minecraft:black_terracotta":{type:"minecraft:black_terracotta",item:"minecraft:black_terracotta",group:0},"minecraft:black_stained_glass":{type:"minecraft:black_stained_glass",item:"minecraft:black_stained_glass",group:0},"minecraft:black_concrete_powder":{type:"minecraft:black_concrete_powder",item:"minecraft:black_concrete_powder",group:0},"minecraft:black_concrete":{type:"minecraft:black_concrete",item:"minecraft:black_concrete",group:0},"minecraft:black_carpet":{type:"minecraft:black_carpet",item:"minecraft:black_carpet",group:0},"minecraft:birch_planks":{type:"minecraft:birch_planks",item:"minecraft:birch_planks",group:0},"minecraft:bedrock":{type:"minecraft:bedrock",item:"minecraft:bedrock",group:0},"minecraft:beacon":{type:"minecraft:beacon",item:"minecraft:beacon",group:0},"minecraft:bamboo_planks":{type:"minecraft:bamboo_planks",item:"minecraft:bamboo_planks",group:0},"minecraft:bamboo_mosaic":{type:"minecraft:bamboo_mosaic",item:"minecraft:bamboo_mosaic",group:0},"minecraft:azure_bluet":{type:"minecraft:azure_bluet",item:"minecraft:azure_bluet",group:0},"minecraft:azalea":{type:"minecraft:azalea",item:"minecraft:azalea",group:0},"minecraft:andesite":{type:"minecraft:andesite",item:"minecraft:andesite",group:0},"minecraft:ancient_debris":{type:"minecraft:ancient_debris",item:"minecraft:ancient_debris",group:0},"minecraft:amethyst_block":{type:"minecraft:amethyst_block",item:"minecraft:amethyst_block",group:0},"minecraft:allium":{type:"minecraft:allium",item:"minecraft:allium",group:0},"minecraft:air":{type:"minecraft:air",item:"minecraft:air",group:0},"minecraft:acacia_planks":{type:"minecraft:acacia_planks",item:"minecraft:acacia_planks",group:0}} diff --git a/datapacks/Bookshelf/data/bs.block/function/load/types_table.mcfunction b/datapacks/Bookshelf/data/bs.block/function/load/types_table.mcfunction index 763fe40578..774b774970 100644 --- a/datapacks/Bookshelf/data/bs.block/function/load/types_table.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/load/types_table.mcfunction @@ -14,4 +14,4 @@ # ------------------------------------------------------------------------------------------------------------ # This file was automatically generated, do not edit it -data modify storage bs:const block.types set value {"minecraft:acacia_planks":{type:"minecraft:acacia_planks",item:"minecraft:acacia_planks",group:0},"minecraft:air":{type:"minecraft:air",item:"minecraft:air",group:0},"minecraft:allium":{type:"minecraft:allium",item:"minecraft:allium",group:0},"minecraft:amethyst_block":{type:"minecraft:amethyst_block",item:"minecraft:amethyst_block",group:0},"minecraft:ancient_debris":{type:"minecraft:ancient_debris",item:"minecraft:ancient_debris",group:0},"minecraft:andesite":{type:"minecraft:andesite",item:"minecraft:andesite",group:0},"minecraft:azalea":{type:"minecraft:azalea",item:"minecraft:azalea",group:0},"minecraft:azure_bluet":{type:"minecraft:azure_bluet",item:"minecraft:azure_bluet",group:0},"minecraft:bamboo_mosaic":{type:"minecraft:bamboo_mosaic",item:"minecraft:bamboo_mosaic",group:0},"minecraft:bamboo_planks":{type:"minecraft:bamboo_planks",item:"minecraft:bamboo_planks",group:0},"minecraft:bamboo_sapling":{type:"minecraft:bamboo_sapling",group:0},"minecraft:beacon":{type:"minecraft:beacon",item:"minecraft:beacon",group:0},"minecraft:bedrock":{type:"minecraft:bedrock",item:"minecraft:bedrock",group:0},"minecraft:birch_planks":{type:"minecraft:birch_planks",item:"minecraft:birch_planks",group:0},"minecraft:black_carpet":{type:"minecraft:black_carpet",item:"minecraft:black_carpet",group:0},"minecraft:black_concrete":{type:"minecraft:black_concrete",item:"minecraft:black_concrete",group:0},"minecraft:black_concrete_powder":{type:"minecraft:black_concrete_powder",item:"minecraft:black_concrete_powder",group:0},"minecraft:black_stained_glass":{type:"minecraft:black_stained_glass",item:"minecraft:black_stained_glass",group:0},"minecraft:black_terracotta":{type:"minecraft:black_terracotta",item:"minecraft:black_terracotta",group:0},"minecraft:black_wool":{type:"minecraft:black_wool",item:"minecraft:black_wool",group:0},"minecraft:blackstone":{type:"minecraft:blackstone",item:"minecraft:blackstone",group:0},"minecraft:blue_carpet":{type:"minecraft:blue_carpet",item:"minecraft:blue_carpet",group:0},"minecraft:blue_concrete":{type:"minecraft:blue_concrete",item:"minecraft:blue_concrete",group:0},"minecraft:blue_concrete_powder":{type:"minecraft:blue_concrete_powder",item:"minecraft:blue_concrete_powder",group:0},"minecraft:blue_ice":{type:"minecraft:blue_ice",item:"minecraft:blue_ice",group:0},"minecraft:blue_orchid":{type:"minecraft:blue_orchid",item:"minecraft:blue_orchid",group:0},"minecraft:blue_stained_glass":{type:"minecraft:blue_stained_glass",item:"minecraft:blue_stained_glass",group:0},"minecraft:blue_terracotta":{type:"minecraft:blue_terracotta",item:"minecraft:blue_terracotta",group:0},"minecraft:blue_wool":{type:"minecraft:blue_wool",item:"minecraft:blue_wool",group:0},"minecraft:bookshelf":{type:"minecraft:bookshelf",item:"minecraft:bookshelf",group:0},"minecraft:brain_coral_block":{type:"minecraft:brain_coral_block",item:"minecraft:brain_coral_block",group:0},"minecraft:bricks":{type:"minecraft:bricks",item:"minecraft:bricks",group:0},"minecraft:brown_carpet":{type:"minecraft:brown_carpet",item:"minecraft:brown_carpet",group:0},"minecraft:brown_concrete":{type:"minecraft:brown_concrete",item:"minecraft:brown_concrete",group:0},"minecraft:brown_concrete_powder":{type:"minecraft:brown_concrete_powder",item:"minecraft:brown_concrete_powder",group:0},"minecraft:brown_mushroom":{type:"minecraft:brown_mushroom",item:"minecraft:brown_mushroom",group:0},"minecraft:brown_stained_glass":{type:"minecraft:brown_stained_glass",item:"minecraft:brown_stained_glass",group:0},"minecraft:brown_terracotta":{type:"minecraft:brown_terracotta",item:"minecraft:brown_terracotta",group:0},"minecraft:brown_wool":{type:"minecraft:brown_wool",item:"minecraft:brown_wool",group:0},"minecraft:bubble_coral_block":{type:"minecraft:bubble_coral_block",item:"minecraft:bubble_coral_block",group:0},"minecraft:budding_amethyst":{type:"minecraft:budding_amethyst",item:"minecraft:budding_amethyst",group:0},"minecraft:calcite":{type:"minecraft:calcite",item:"minecraft:calcite",group:0},"minecraft:cartography_table":{type:"minecraft:cartography_table",item:"minecraft:cartography_table",group:0},"minecraft:cauldron":{type:"minecraft:cauldron",item:"minecraft:cauldron",group:0},"minecraft:cave_air":{type:"minecraft:cave_air",group:0},"minecraft:cherry_planks":{type:"minecraft:cherry_planks",item:"minecraft:cherry_planks",group:0},"minecraft:chiseled_copper":{type:"minecraft:chiseled_copper",item:"minecraft:chiseled_copper",group:0},"minecraft:chiseled_deepslate":{type:"minecraft:chiseled_deepslate",item:"minecraft:chiseled_deepslate",group:0},"minecraft:chiseled_nether_bricks":{type:"minecraft:chiseled_nether_bricks",item:"minecraft:chiseled_nether_bricks",group:0},"minecraft:chiseled_polished_blackstone":{type:"minecraft:chiseled_polished_blackstone",item:"minecraft:chiseled_polished_blackstone",group:0},"minecraft:chiseled_quartz_block":{type:"minecraft:chiseled_quartz_block",item:"minecraft:chiseled_quartz_block",group:0},"minecraft:chiseled_red_sandstone":{type:"minecraft:chiseled_red_sandstone",item:"minecraft:chiseled_red_sandstone",group:0},"minecraft:chiseled_sandstone":{type:"minecraft:chiseled_sandstone",item:"minecraft:chiseled_sandstone",group:0},"minecraft:chiseled_stone_bricks":{type:"minecraft:chiseled_stone_bricks",item:"minecraft:chiseled_stone_bricks",group:0},"minecraft:chiseled_tuff":{type:"minecraft:chiseled_tuff",item:"minecraft:chiseled_tuff",group:0},"minecraft:chiseled_tuff_bricks":{type:"minecraft:chiseled_tuff_bricks",item:"minecraft:chiseled_tuff_bricks",group:0},"minecraft:clay":{type:"minecraft:clay",item:"minecraft:clay",group:0},"minecraft:coal_block":{type:"minecraft:coal_block",item:"minecraft:coal_block",group:0},"minecraft:coal_ore":{type:"minecraft:coal_ore",item:"minecraft:coal_ore",group:0},"minecraft:coarse_dirt":{type:"minecraft:coarse_dirt",item:"minecraft:coarse_dirt",group:0},"minecraft:cobbled_deepslate":{type:"minecraft:cobbled_deepslate",item:"minecraft:cobbled_deepslate",group:0},"minecraft:cobblestone":{type:"minecraft:cobblestone",item:"minecraft:cobblestone",group:0},"minecraft:cobweb":{type:"minecraft:cobweb",item:"minecraft:cobweb",group:0},"minecraft:copper_block":{type:"minecraft:copper_block",item:"minecraft:copper_block",group:0},"minecraft:copper_ore":{type:"minecraft:copper_ore",item:"minecraft:copper_ore",group:0},"minecraft:cornflower":{type:"minecraft:cornflower",item:"minecraft:cornflower",group:0},"minecraft:cracked_deepslate_bricks":{type:"minecraft:cracked_deepslate_bricks",item:"minecraft:cracked_deepslate_bricks",group:0},"minecraft:cracked_deepslate_tiles":{type:"minecraft:cracked_deepslate_tiles",item:"minecraft:cracked_deepslate_tiles",group:0},"minecraft:cracked_nether_bricks":{type:"minecraft:cracked_nether_bricks",item:"minecraft:cracked_nether_bricks",group:0},"minecraft:cracked_polished_blackstone_bricks":{type:"minecraft:cracked_polished_blackstone_bricks",item:"minecraft:cracked_polished_blackstone_bricks",group:0},"minecraft:cracked_stone_bricks":{type:"minecraft:cracked_stone_bricks",item:"minecraft:cracked_stone_bricks",group:0},"minecraft:crafting_table":{type:"minecraft:crafting_table",item:"minecraft:crafting_table",group:0},"minecraft:crimson_fungus":{type:"minecraft:crimson_fungus",item:"minecraft:crimson_fungus",group:0},"minecraft:crimson_nylium":{type:"minecraft:crimson_nylium",item:"minecraft:crimson_nylium",group:0},"minecraft:crimson_planks":{type:"minecraft:crimson_planks",item:"minecraft:crimson_planks",group:0},"minecraft:crimson_roots":{type:"minecraft:crimson_roots",item:"minecraft:crimson_roots",group:0},"minecraft:crying_obsidian":{type:"minecraft:crying_obsidian",item:"minecraft:crying_obsidian",group:0},"minecraft:cut_copper":{type:"minecraft:cut_copper",item:"minecraft:cut_copper",group:0},"minecraft:cut_red_sandstone":{type:"minecraft:cut_red_sandstone",item:"minecraft:cut_red_sandstone",group:0},"minecraft:cut_sandstone":{type:"minecraft:cut_sandstone",item:"minecraft:cut_sandstone",group:0},"minecraft:cyan_carpet":{type:"minecraft:cyan_carpet",item:"minecraft:cyan_carpet",group:0},"minecraft:cyan_concrete":{type:"minecraft:cyan_concrete",item:"minecraft:cyan_concrete",group:0},"minecraft:cyan_concrete_powder":{type:"minecraft:cyan_concrete_powder",item:"minecraft:cyan_concrete_powder",group:0},"minecraft:cyan_stained_glass":{type:"minecraft:cyan_stained_glass",item:"minecraft:cyan_stained_glass",group:0},"minecraft:cyan_terracotta":{type:"minecraft:cyan_terracotta",item:"minecraft:cyan_terracotta",group:0},"minecraft:cyan_wool":{type:"minecraft:cyan_wool",item:"minecraft:cyan_wool",group:0},"minecraft:dandelion":{type:"minecraft:dandelion",item:"minecraft:dandelion",group:0},"minecraft:dark_oak_planks":{type:"minecraft:dark_oak_planks",item:"minecraft:dark_oak_planks",group:0},"minecraft:dark_prismarine":{type:"minecraft:dark_prismarine",item:"minecraft:dark_prismarine",group:0},"minecraft:dead_brain_coral_block":{type:"minecraft:dead_brain_coral_block",item:"minecraft:dead_brain_coral_block",group:0},"minecraft:dead_bubble_coral_block":{type:"minecraft:dead_bubble_coral_block",item:"minecraft:dead_bubble_coral_block",group:0},"minecraft:dead_bush":{type:"minecraft:dead_bush",item:"minecraft:dead_bush",group:0},"minecraft:dead_fire_coral_block":{type:"minecraft:dead_fire_coral_block",item:"minecraft:dead_fire_coral_block",group:0},"minecraft:dead_horn_coral_block":{type:"minecraft:dead_horn_coral_block",item:"minecraft:dead_horn_coral_block",group:0},"minecraft:dead_tube_coral_block":{type:"minecraft:dead_tube_coral_block",item:"minecraft:dead_tube_coral_block",group:0},"minecraft:deepslate_bricks":{type:"minecraft:deepslate_bricks",item:"minecraft:deepslate_bricks",group:0},"minecraft:deepslate_coal_ore":{type:"minecraft:deepslate_coal_ore",item:"minecraft:deepslate_coal_ore",group:0},"minecraft:deepslate_copper_ore":{type:"minecraft:deepslate_copper_ore",item:"minecraft:deepslate_copper_ore",group:0},"minecraft:deepslate_diamond_ore":{type:"minecraft:deepslate_diamond_ore",item:"minecraft:deepslate_diamond_ore",group:0},"minecraft:deepslate_emerald_ore":{type:"minecraft:deepslate_emerald_ore",item:"minecraft:deepslate_emerald_ore",group:0},"minecraft:deepslate_gold_ore":{type:"minecraft:deepslate_gold_ore",item:"minecraft:deepslate_gold_ore",group:0},"minecraft:deepslate_iron_ore":{type:"minecraft:deepslate_iron_ore",item:"minecraft:deepslate_iron_ore",group:0},"minecraft:deepslate_lapis_ore":{type:"minecraft:deepslate_lapis_ore",item:"minecraft:deepslate_lapis_ore",group:0},"minecraft:deepslate_tiles":{type:"minecraft:deepslate_tiles",item:"minecraft:deepslate_tiles",group:0},"minecraft:diamond_block":{type:"minecraft:diamond_block",item:"minecraft:diamond_block",group:0},"minecraft:diamond_ore":{type:"minecraft:diamond_ore",item:"minecraft:diamond_ore",group:0},"minecraft:diorite":{type:"minecraft:diorite",item:"minecraft:diorite",group:0},"minecraft:dirt":{type:"minecraft:dirt",item:"minecraft:dirt",group:0},"minecraft:dirt_path":{type:"minecraft:dirt_path",item:"minecraft:dirt_path",group:0},"minecraft:dragon_egg":{type:"minecraft:dragon_egg",item:"minecraft:dragon_egg",group:0},"minecraft:dried_kelp_block":{type:"minecraft:dried_kelp_block",item:"minecraft:dried_kelp_block",group:0},"minecraft:dripstone_block":{type:"minecraft:dripstone_block",item:"minecraft:dripstone_block",group:0},"minecraft:emerald_block":{type:"minecraft:emerald_block",item:"minecraft:emerald_block",group:0},"minecraft:emerald_ore":{type:"minecraft:emerald_ore",item:"minecraft:emerald_ore",group:0},"minecraft:enchanting_table":{type:"minecraft:enchanting_table",item:"minecraft:enchanting_table",group:0},"minecraft:end_gateway":{type:"minecraft:end_gateway",group:0},"minecraft:end_portal":{type:"minecraft:end_portal",group:0},"minecraft:end_stone":{type:"minecraft:end_stone",item:"minecraft:end_stone",group:0},"minecraft:end_stone_bricks":{type:"minecraft:end_stone_bricks",item:"minecraft:end_stone_bricks",group:0},"minecraft:exposed_chiseled_copper":{type:"minecraft:exposed_chiseled_copper",item:"minecraft:exposed_chiseled_copper",group:0},"minecraft:exposed_copper":{type:"minecraft:exposed_copper",item:"minecraft:exposed_copper",group:0},"minecraft:exposed_cut_copper":{type:"minecraft:exposed_cut_copper",item:"minecraft:exposed_cut_copper",group:0},"minecraft:fern":{type:"minecraft:fern",item:"minecraft:fern",group:0},"minecraft:fire_coral_block":{type:"minecraft:fire_coral_block",item:"minecraft:fire_coral_block",group:0},"minecraft:fletching_table":{type:"minecraft:fletching_table",item:"minecraft:fletching_table",group:0},"minecraft:flower_pot":{type:"minecraft:flower_pot",item:"minecraft:flower_pot",group:0},"minecraft:flowering_azalea":{type:"minecraft:flowering_azalea",item:"minecraft:flowering_azalea",group:0},"minecraft:frogspawn":{type:"minecraft:frogspawn",item:"minecraft:frogspawn",group:0},"minecraft:gilded_blackstone":{type:"minecraft:gilded_blackstone",item:"minecraft:gilded_blackstone",group:0},"minecraft:glass":{type:"minecraft:glass",item:"minecraft:glass",group:0},"minecraft:glowstone":{type:"minecraft:glowstone",item:"minecraft:glowstone",group:0},"minecraft:gold_block":{type:"minecraft:gold_block",item:"minecraft:gold_block",group:0},"minecraft:gold_ore":{type:"minecraft:gold_ore",item:"minecraft:gold_ore",group:0},"minecraft:granite":{type:"minecraft:granite",item:"minecraft:granite",group:0},"minecraft:gravel":{type:"minecraft:gravel",item:"minecraft:gravel",group:0},"minecraft:gray_carpet":{type:"minecraft:gray_carpet",item:"minecraft:gray_carpet",group:0},"minecraft:gray_concrete":{type:"minecraft:gray_concrete",item:"minecraft:gray_concrete",group:0},"minecraft:gray_concrete_powder":{type:"minecraft:gray_concrete_powder",item:"minecraft:gray_concrete_powder",group:0},"minecraft:gray_stained_glass":{type:"minecraft:gray_stained_glass",item:"minecraft:gray_stained_glass",group:0},"minecraft:gray_terracotta":{type:"minecraft:gray_terracotta",item:"minecraft:gray_terracotta",group:0},"minecraft:gray_wool":{type:"minecraft:gray_wool",item:"minecraft:gray_wool",group:0},"minecraft:green_carpet":{type:"minecraft:green_carpet",item:"minecraft:green_carpet",group:0},"minecraft:green_concrete":{type:"minecraft:green_concrete",item:"minecraft:green_concrete",group:0},"minecraft:green_concrete_powder":{type:"minecraft:green_concrete_powder",item:"minecraft:green_concrete_powder",group:0},"minecraft:green_stained_glass":{type:"minecraft:green_stained_glass",item:"minecraft:green_stained_glass",group:0},"minecraft:green_terracotta":{type:"minecraft:green_terracotta",item:"minecraft:green_terracotta",group:0},"minecraft:green_wool":{type:"minecraft:green_wool",item:"minecraft:green_wool",group:0},"minecraft:honey_block":{type:"minecraft:honey_block",item:"minecraft:honey_block",group:0},"minecraft:honeycomb_block":{type:"minecraft:honeycomb_block",item:"minecraft:honeycomb_block",group:0},"minecraft:horn_coral_block":{type:"minecraft:horn_coral_block",item:"minecraft:horn_coral_block",group:0},"minecraft:ice":{type:"minecraft:ice",item:"minecraft:ice",group:0},"minecraft:infested_chiseled_stone_bricks":{type:"minecraft:infested_chiseled_stone_bricks",item:"minecraft:infested_chiseled_stone_bricks",group:0},"minecraft:infested_cobblestone":{type:"minecraft:infested_cobblestone",item:"minecraft:infested_cobblestone",group:0},"minecraft:infested_cracked_stone_bricks":{type:"minecraft:infested_cracked_stone_bricks",item:"minecraft:infested_cracked_stone_bricks",group:0},"minecraft:infested_mossy_stone_bricks":{type:"minecraft:infested_mossy_stone_bricks",item:"minecraft:infested_mossy_stone_bricks",group:0},"minecraft:infested_stone":{type:"minecraft:infested_stone",item:"minecraft:infested_stone",group:0},"minecraft:infested_stone_bricks":{type:"minecraft:infested_stone_bricks",item:"minecraft:infested_stone_bricks",group:0},"minecraft:iron_block":{type:"minecraft:iron_block",item:"minecraft:iron_block",group:0},"minecraft:iron_ore":{type:"minecraft:iron_ore",item:"minecraft:iron_ore",group:0},"minecraft:jungle_planks":{type:"minecraft:jungle_planks",item:"minecraft:jungle_planks",group:0},"minecraft:kelp_plant":{type:"minecraft:kelp_plant",group:0},"minecraft:lapis_block":{type:"minecraft:lapis_block",item:"minecraft:lapis_block",group:0},"minecraft:lapis_ore":{type:"minecraft:lapis_ore",item:"minecraft:lapis_ore",group:0},"minecraft:lava_cauldron":{type:"minecraft:lava_cauldron",item:"minecraft:cauldron",group:0},"minecraft:light_blue_carpet":{type:"minecraft:light_blue_carpet",item:"minecraft:light_blue_carpet",group:0},"minecraft:light_blue_concrete":{type:"minecraft:light_blue_concrete",item:"minecraft:light_blue_concrete",group:0},"minecraft:light_blue_concrete_powder":{type:"minecraft:light_blue_concrete_powder",item:"minecraft:light_blue_concrete_powder",group:0},"minecraft:light_blue_stained_glass":{type:"minecraft:light_blue_stained_glass",item:"minecraft:light_blue_stained_glass",group:0},"minecraft:light_blue_terracotta":{type:"minecraft:light_blue_terracotta",item:"minecraft:light_blue_terracotta",group:0},"minecraft:light_blue_wool":{type:"minecraft:light_blue_wool",item:"minecraft:light_blue_wool",group:0},"minecraft:light_gray_carpet":{type:"minecraft:light_gray_carpet",item:"minecraft:light_gray_carpet",group:0},"minecraft:light_gray_concrete":{type:"minecraft:light_gray_concrete",item:"minecraft:light_gray_concrete",group:0},"minecraft:light_gray_concrete_powder":{type:"minecraft:light_gray_concrete_powder",item:"minecraft:light_gray_concrete_powder",group:0},"minecraft:light_gray_stained_glass":{type:"minecraft:light_gray_stained_glass",item:"minecraft:light_gray_stained_glass",group:0},"minecraft:light_gray_terracotta":{type:"minecraft:light_gray_terracotta",item:"minecraft:light_gray_terracotta",group:0},"minecraft:light_gray_wool":{type:"minecraft:light_gray_wool",item:"minecraft:light_gray_wool",group:0},"minecraft:lily_of_the_valley":{type:"minecraft:lily_of_the_valley",item:"minecraft:lily_of_the_valley",group:0},"minecraft:lily_pad":{type:"minecraft:lily_pad",item:"minecraft:lily_pad",group:0},"minecraft:lime_carpet":{type:"minecraft:lime_carpet",item:"minecraft:lime_carpet",group:0},"minecraft:lime_concrete":{type:"minecraft:lime_concrete",item:"minecraft:lime_concrete",group:0},"minecraft:lime_concrete_powder":{type:"minecraft:lime_concrete_powder",item:"minecraft:lime_concrete_powder",group:0},"minecraft:lime_stained_glass":{type:"minecraft:lime_stained_glass",item:"minecraft:lime_stained_glass",group:0},"minecraft:lime_terracotta":{type:"minecraft:lime_terracotta",item:"minecraft:lime_terracotta",group:0},"minecraft:lime_wool":{type:"minecraft:lime_wool",item:"minecraft:lime_wool",group:0},"minecraft:lodestone":{type:"minecraft:lodestone",item:"minecraft:lodestone",group:0},"minecraft:magenta_carpet":{type:"minecraft:magenta_carpet",item:"minecraft:magenta_carpet",group:0},"minecraft:magenta_concrete":{type:"minecraft:magenta_concrete",item:"minecraft:magenta_concrete",group:0},"minecraft:magenta_concrete_powder":{type:"minecraft:magenta_concrete_powder",item:"minecraft:magenta_concrete_powder",group:0},"minecraft:magenta_stained_glass":{type:"minecraft:magenta_stained_glass",item:"minecraft:magenta_stained_glass",group:0},"minecraft:magenta_terracotta":{type:"minecraft:magenta_terracotta",item:"minecraft:magenta_terracotta",group:0},"minecraft:magenta_wool":{type:"minecraft:magenta_wool",item:"minecraft:magenta_wool",group:0},"minecraft:magma_block":{type:"minecraft:magma_block",item:"minecraft:magma_block",group:0},"minecraft:mangrove_planks":{type:"minecraft:mangrove_planks",item:"minecraft:mangrove_planks",group:0},"minecraft:melon":{type:"minecraft:melon",item:"minecraft:melon",group:0},"minecraft:moss_block":{type:"minecraft:moss_block",item:"minecraft:moss_block",group:0},"minecraft:moss_carpet":{type:"minecraft:moss_carpet",item:"minecraft:moss_carpet",group:0},"minecraft:mossy_cobblestone":{type:"minecraft:mossy_cobblestone",item:"minecraft:mossy_cobblestone",group:0},"minecraft:mossy_stone_bricks":{type:"minecraft:mossy_stone_bricks",item:"minecraft:mossy_stone_bricks",group:0},"minecraft:mud":{type:"minecraft:mud",item:"minecraft:mud",group:0},"minecraft:mud_bricks":{type:"minecraft:mud_bricks",item:"minecraft:mud_bricks",group:0},"minecraft:nether_bricks":{type:"minecraft:nether_bricks",item:"minecraft:nether_bricks",group:0},"minecraft:nether_gold_ore":{type:"minecraft:nether_gold_ore",item:"minecraft:nether_gold_ore",group:0},"minecraft:nether_quartz_ore":{type:"minecraft:nether_quartz_ore",item:"minecraft:nether_quartz_ore",group:0},"minecraft:nether_sprouts":{type:"minecraft:nether_sprouts",item:"minecraft:nether_sprouts",group:0},"minecraft:nether_wart_block":{type:"minecraft:nether_wart_block",item:"minecraft:nether_wart_block",group:0},"minecraft:netherite_block":{type:"minecraft:netherite_block",item:"minecraft:netherite_block",group:0},"minecraft:netherrack":{type:"minecraft:netherrack",item:"minecraft:netherrack",group:0},"minecraft:oak_planks":{type:"minecraft:oak_planks",item:"minecraft:oak_planks",group:0},"minecraft:obsidian":{type:"minecraft:obsidian",item:"minecraft:obsidian",group:0},"minecraft:orange_carpet":{type:"minecraft:orange_carpet",item:"minecraft:orange_carpet",group:0},"minecraft:orange_concrete":{type:"minecraft:orange_concrete",item:"minecraft:orange_concrete",group:0},"minecraft:orange_concrete_powder":{type:"minecraft:orange_concrete_powder",item:"minecraft:orange_concrete_powder",group:0},"minecraft:orange_stained_glass":{type:"minecraft:orange_stained_glass",item:"minecraft:orange_stained_glass",group:0},"minecraft:orange_terracotta":{type:"minecraft:orange_terracotta",item:"minecraft:orange_terracotta",group:0},"minecraft:orange_tulip":{type:"minecraft:orange_tulip",item:"minecraft:orange_tulip",group:0},"minecraft:orange_wool":{type:"minecraft:orange_wool",item:"minecraft:orange_wool",group:0},"minecraft:oxeye_daisy":{type:"minecraft:oxeye_daisy",item:"minecraft:oxeye_daisy",group:0},"minecraft:oxidized_chiseled_copper":{type:"minecraft:oxidized_chiseled_copper",item:"minecraft:oxidized_chiseled_copper",group:0},"minecraft:oxidized_copper":{type:"minecraft:oxidized_copper",item:"minecraft:oxidized_copper",group:0},"minecraft:oxidized_cut_copper":{type:"minecraft:oxidized_cut_copper",item:"minecraft:oxidized_cut_copper",group:0},"minecraft:packed_ice":{type:"minecraft:packed_ice",item:"minecraft:packed_ice",group:0},"minecraft:packed_mud":{type:"minecraft:packed_mud",item:"minecraft:packed_mud",group:0},"minecraft:pink_carpet":{type:"minecraft:pink_carpet",item:"minecraft:pink_carpet",group:0},"minecraft:pink_concrete":{type:"minecraft:pink_concrete",item:"minecraft:pink_concrete",group:0},"minecraft:pink_concrete_powder":{type:"minecraft:pink_concrete_powder",item:"minecraft:pink_concrete_powder",group:0},"minecraft:pink_stained_glass":{type:"minecraft:pink_stained_glass",item:"minecraft:pink_stained_glass",group:0},"minecraft:pink_terracotta":{type:"minecraft:pink_terracotta",item:"minecraft:pink_terracotta",group:0},"minecraft:pink_tulip":{type:"minecraft:pink_tulip",item:"minecraft:pink_tulip",group:0},"minecraft:pink_wool":{type:"minecraft:pink_wool",item:"minecraft:pink_wool",group:0},"minecraft:polished_andesite":{type:"minecraft:polished_andesite",item:"minecraft:polished_andesite",group:0},"minecraft:polished_blackstone":{type:"minecraft:polished_blackstone",item:"minecraft:polished_blackstone",group:0},"minecraft:polished_blackstone_bricks":{type:"minecraft:polished_blackstone_bricks",item:"minecraft:polished_blackstone_bricks",group:0},"minecraft:polished_deepslate":{type:"minecraft:polished_deepslate",item:"minecraft:polished_deepslate",group:0},"minecraft:polished_diorite":{type:"minecraft:polished_diorite",item:"minecraft:polished_diorite",group:0},"minecraft:polished_granite":{type:"minecraft:polished_granite",item:"minecraft:polished_granite",group:0},"minecraft:polished_tuff":{type:"minecraft:polished_tuff",item:"minecraft:polished_tuff",group:0},"minecraft:poppy":{type:"minecraft:poppy",item:"minecraft:poppy",group:0},"minecraft:potted_acacia_sapling":{type:"minecraft:potted_acacia_sapling",group:0},"minecraft:potted_allium":{type:"minecraft:potted_allium",group:0},"minecraft:potted_azalea_bush":{type:"minecraft:potted_azalea_bush",group:0},"minecraft:potted_azure_bluet":{type:"minecraft:potted_azure_bluet",group:0},"minecraft:potted_bamboo":{type:"minecraft:potted_bamboo",group:0},"minecraft:potted_birch_sapling":{type:"minecraft:potted_birch_sapling",group:0},"minecraft:potted_blue_orchid":{type:"minecraft:potted_blue_orchid",group:0},"minecraft:potted_brown_mushroom":{type:"minecraft:potted_brown_mushroom",group:0},"minecraft:potted_cactus":{type:"minecraft:potted_cactus",group:0},"minecraft:potted_cherry_sapling":{type:"minecraft:potted_cherry_sapling",group:0},"minecraft:potted_cornflower":{type:"minecraft:potted_cornflower",group:0},"minecraft:potted_crimson_fungus":{type:"minecraft:potted_crimson_fungus",group:0},"minecraft:potted_crimson_roots":{type:"minecraft:potted_crimson_roots",group:0},"minecraft:potted_dandelion":{type:"minecraft:potted_dandelion",group:0},"minecraft:potted_dark_oak_sapling":{type:"minecraft:potted_dark_oak_sapling",group:0},"minecraft:potted_dead_bush":{type:"minecraft:potted_dead_bush",group:0},"minecraft:potted_fern":{type:"minecraft:potted_fern",group:0},"minecraft:potted_flowering_azalea_bush":{type:"minecraft:potted_flowering_azalea_bush",group:0},"minecraft:potted_jungle_sapling":{type:"minecraft:potted_jungle_sapling",group:0},"minecraft:potted_lily_of_the_valley":{type:"minecraft:potted_lily_of_the_valley",group:0},"minecraft:potted_mangrove_propagule":{type:"minecraft:potted_mangrove_propagule",group:0},"minecraft:potted_oak_sapling":{type:"minecraft:potted_oak_sapling",group:0},"minecraft:potted_orange_tulip":{type:"minecraft:potted_orange_tulip",group:0},"minecraft:potted_oxeye_daisy":{type:"minecraft:potted_oxeye_daisy",group:0},"minecraft:potted_pink_tulip":{type:"minecraft:potted_pink_tulip",group:0},"minecraft:potted_poppy":{type:"minecraft:potted_poppy",group:0},"minecraft:potted_red_mushroom":{type:"minecraft:potted_red_mushroom",group:0},"minecraft:potted_red_tulip":{type:"minecraft:potted_red_tulip",group:0},"minecraft:potted_spruce_sapling":{type:"minecraft:potted_spruce_sapling",group:0},"minecraft:potted_torchflower":{type:"minecraft:potted_torchflower",group:0},"minecraft:potted_warped_fungus":{type:"minecraft:potted_warped_fungus",group:0},"minecraft:potted_warped_roots":{type:"minecraft:potted_warped_roots",group:0},"minecraft:potted_white_tulip":{type:"minecraft:potted_white_tulip",group:0},"minecraft:potted_wither_rose":{type:"minecraft:potted_wither_rose",group:0},"minecraft:powder_snow":{type:"minecraft:powder_snow",item:"minecraft:powder_snow_bucket",group:0},"minecraft:prismarine":{type:"minecraft:prismarine",item:"minecraft:prismarine",group:0},"minecraft:prismarine_bricks":{type:"minecraft:prismarine_bricks",item:"minecraft:prismarine_bricks",group:0},"minecraft:pumpkin":{type:"minecraft:pumpkin",item:"minecraft:pumpkin",group:0},"minecraft:purple_carpet":{type:"minecraft:purple_carpet",item:"minecraft:purple_carpet",group:0},"minecraft:purple_concrete":{type:"minecraft:purple_concrete",item:"minecraft:purple_concrete",group:0},"minecraft:purple_concrete_powder":{type:"minecraft:purple_concrete_powder",item:"minecraft:purple_concrete_powder",group:0},"minecraft:purple_stained_glass":{type:"minecraft:purple_stained_glass",item:"minecraft:purple_stained_glass",group:0},"minecraft:purple_terracotta":{type:"minecraft:purple_terracotta",item:"minecraft:purple_terracotta",group:0},"minecraft:purple_wool":{type:"minecraft:purple_wool",item:"minecraft:purple_wool",group:0},"minecraft:purpur_block":{type:"minecraft:purpur_block",item:"minecraft:purpur_block",group:0},"minecraft:quartz_block":{type:"minecraft:quartz_block",item:"minecraft:quartz_block",group:0},"minecraft:quartz_bricks":{type:"minecraft:quartz_bricks",item:"minecraft:quartz_bricks",group:0},"minecraft:raw_copper_block":{type:"minecraft:raw_copper_block",item:"minecraft:raw_copper_block",group:0},"minecraft:raw_gold_block":{type:"minecraft:raw_gold_block",item:"minecraft:raw_gold_block",group:0},"minecraft:raw_iron_block":{type:"minecraft:raw_iron_block",item:"minecraft:raw_iron_block",group:0},"minecraft:red_carpet":{type:"minecraft:red_carpet",item:"minecraft:red_carpet",group:0},"minecraft:red_concrete":{type:"minecraft:red_concrete",item:"minecraft:red_concrete",group:0},"minecraft:red_concrete_powder":{type:"minecraft:red_concrete_powder",item:"minecraft:red_concrete_powder",group:0},"minecraft:red_mushroom":{type:"minecraft:red_mushroom",item:"minecraft:red_mushroom",group:0},"minecraft:red_nether_bricks":{type:"minecraft:red_nether_bricks",item:"minecraft:red_nether_bricks",group:0},"minecraft:red_sand":{type:"minecraft:red_sand",item:"minecraft:red_sand",group:0},"minecraft:red_sandstone":{type:"minecraft:red_sandstone",item:"minecraft:red_sandstone",group:0},"minecraft:red_stained_glass":{type:"minecraft:red_stained_glass",item:"minecraft:red_stained_glass",group:0},"minecraft:red_terracotta":{type:"minecraft:red_terracotta",item:"minecraft:red_terracotta",group:0},"minecraft:red_tulip":{type:"minecraft:red_tulip",item:"minecraft:red_tulip",group:0},"minecraft:red_wool":{type:"minecraft:red_wool",item:"minecraft:red_wool",group:0},"minecraft:redstone_block":{type:"minecraft:redstone_block",item:"minecraft:redstone_block",group:0},"minecraft:reinforced_deepslate":{type:"minecraft:reinforced_deepslate",item:"minecraft:reinforced_deepslate",group:0},"minecraft:rooted_dirt":{type:"minecraft:rooted_dirt",item:"minecraft:rooted_dirt",group:0},"minecraft:sand":{type:"minecraft:sand",item:"minecraft:sand",group:0},"minecraft:sandstone":{type:"minecraft:sandstone",item:"minecraft:sandstone",group:0},"minecraft:sculk":{type:"minecraft:sculk",item:"minecraft:sculk",group:0},"minecraft:sea_lantern":{type:"minecraft:sea_lantern",item:"minecraft:sea_lantern",group:0},"minecraft:seagrass":{type:"minecraft:seagrass",item:"minecraft:seagrass",group:0},"minecraft:short_grass":{type:"minecraft:short_grass",item:"minecraft:short_grass",group:0},"minecraft:shroomlight":{type:"minecraft:shroomlight",item:"minecraft:shroomlight",group:0},"minecraft:slime_block":{type:"minecraft:slime_block",item:"minecraft:slime_block",group:0},"minecraft:smithing_table":{type:"minecraft:smithing_table",item:"minecraft:smithing_table",group:0},"minecraft:smooth_basalt":{type:"minecraft:smooth_basalt",item:"minecraft:smooth_basalt",group:0},"minecraft:smooth_quartz":{type:"minecraft:smooth_quartz",item:"minecraft:smooth_quartz",group:0},"minecraft:smooth_red_sandstone":{type:"minecraft:smooth_red_sandstone",item:"minecraft:smooth_red_sandstone",group:0},"minecraft:smooth_sandstone":{type:"minecraft:smooth_sandstone",item:"minecraft:smooth_sandstone",group:0},"minecraft:smooth_stone":{type:"minecraft:smooth_stone",item:"minecraft:smooth_stone",group:0},"minecraft:snow_block":{type:"minecraft:snow_block",item:"minecraft:snow_block",group:0},"minecraft:soul_fire":{type:"minecraft:soul_fire",group:0},"minecraft:soul_sand":{type:"minecraft:soul_sand",item:"minecraft:soul_sand",group:0},"minecraft:soul_soil":{type:"minecraft:soul_soil",item:"minecraft:soul_soil",group:0},"minecraft:soul_torch":{type:"minecraft:soul_torch",item:"minecraft:soul_torch",group:0},"minecraft:spawner":{type:"minecraft:spawner",item:"minecraft:spawner",group:0},"minecraft:sponge":{type:"minecraft:sponge",item:"minecraft:sponge",group:0},"minecraft:spore_blossom":{type:"minecraft:spore_blossom",item:"minecraft:spore_blossom",group:0},"minecraft:spruce_planks":{type:"minecraft:spruce_planks",item:"minecraft:spruce_planks",group:0},"minecraft:stone":{type:"minecraft:stone",item:"minecraft:stone",group:0},"minecraft:stone_bricks":{type:"minecraft:stone_bricks",item:"minecraft:stone_bricks",group:0},"minecraft:structure_void":{type:"minecraft:structure_void",item:"minecraft:structure_void",group:0},"minecraft:terracotta":{type:"minecraft:terracotta",item:"minecraft:terracotta",group:0},"minecraft:tinted_glass":{type:"minecraft:tinted_glass",item:"minecraft:tinted_glass",group:0},"minecraft:torch":{type:"minecraft:torch",item:"minecraft:torch",group:0},"minecraft:torchflower":{type:"minecraft:torchflower",item:"minecraft:torchflower",group:0},"minecraft:tube_coral_block":{type:"minecraft:tube_coral_block",item:"minecraft:tube_coral_block",group:0},"minecraft:tuff":{type:"minecraft:tuff",item:"minecraft:tuff",group:0},"minecraft:tuff_bricks":{type:"minecraft:tuff_bricks",item:"minecraft:tuff_bricks",group:0},"minecraft:twisting_vines_plant":{type:"minecraft:twisting_vines_plant",group:0},"minecraft:void_air":{type:"minecraft:void_air",group:0},"minecraft:warped_fungus":{type:"minecraft:warped_fungus",item:"minecraft:warped_fungus",group:0},"minecraft:warped_nylium":{type:"minecraft:warped_nylium",item:"minecraft:warped_nylium",group:0},"minecraft:warped_planks":{type:"minecraft:warped_planks",item:"minecraft:warped_planks",group:0},"minecraft:warped_roots":{type:"minecraft:warped_roots",item:"minecraft:warped_roots",group:0},"minecraft:warped_wart_block":{type:"minecraft:warped_wart_block",item:"minecraft:warped_wart_block",group:0},"minecraft:waxed_chiseled_copper":{type:"minecraft:waxed_chiseled_copper",item:"minecraft:waxed_chiseled_copper",group:0},"minecraft:waxed_copper_block":{type:"minecraft:waxed_copper_block",item:"minecraft:waxed_copper_block",group:0},"minecraft:waxed_cut_copper":{type:"minecraft:waxed_cut_copper",item:"minecraft:waxed_cut_copper",group:0},"minecraft:waxed_exposed_chiseled_copper":{type:"minecraft:waxed_exposed_chiseled_copper",item:"minecraft:waxed_exposed_chiseled_copper",group:0},"minecraft:waxed_exposed_copper":{type:"minecraft:waxed_exposed_copper",item:"minecraft:waxed_exposed_copper",group:0},"minecraft:waxed_exposed_cut_copper":{type:"minecraft:waxed_exposed_cut_copper",item:"minecraft:waxed_exposed_cut_copper",group:0},"minecraft:waxed_oxidized_chiseled_copper":{type:"minecraft:waxed_oxidized_chiseled_copper",item:"minecraft:waxed_oxidized_chiseled_copper",group:0},"minecraft:waxed_oxidized_copper":{type:"minecraft:waxed_oxidized_copper",item:"minecraft:waxed_oxidized_copper",group:0},"minecraft:waxed_oxidized_cut_copper":{type:"minecraft:waxed_oxidized_cut_copper",item:"minecraft:waxed_oxidized_cut_copper",group:0},"minecraft:waxed_weathered_chiseled_copper":{type:"minecraft:waxed_weathered_chiseled_copper",item:"minecraft:waxed_weathered_chiseled_copper",group:0},"minecraft:waxed_weathered_copper":{type:"minecraft:waxed_weathered_copper",item:"minecraft:waxed_weathered_copper",group:0},"minecraft:waxed_weathered_cut_copper":{type:"minecraft:waxed_weathered_cut_copper",item:"minecraft:waxed_weathered_cut_copper",group:0},"minecraft:weathered_chiseled_copper":{type:"minecraft:weathered_chiseled_copper",item:"minecraft:weathered_chiseled_copper",group:0},"minecraft:weathered_copper":{type:"minecraft:weathered_copper",item:"minecraft:weathered_copper",group:0},"minecraft:weathered_cut_copper":{type:"minecraft:weathered_cut_copper",item:"minecraft:weathered_cut_copper",group:0},"minecraft:weeping_vines_plant":{type:"minecraft:weeping_vines_plant",group:0},"minecraft:wet_sponge":{type:"minecraft:wet_sponge",item:"minecraft:wet_sponge",group:0},"minecraft:white_carpet":{type:"minecraft:white_carpet",item:"minecraft:white_carpet",group:0},"minecraft:white_concrete":{type:"minecraft:white_concrete",item:"minecraft:white_concrete",group:0},"minecraft:white_concrete_powder":{type:"minecraft:white_concrete_powder",item:"minecraft:white_concrete_powder",group:0},"minecraft:white_stained_glass":{type:"minecraft:white_stained_glass",item:"minecraft:white_stained_glass",group:0},"minecraft:white_terracotta":{type:"minecraft:white_terracotta",item:"minecraft:white_terracotta",group:0},"minecraft:white_tulip":{type:"minecraft:white_tulip",item:"minecraft:white_tulip",group:0},"minecraft:white_wool":{type:"minecraft:white_wool",item:"minecraft:white_wool",group:0},"minecraft:wither_rose":{type:"minecraft:wither_rose",item:"minecraft:wither_rose",group:0},"minecraft:yellow_carpet":{type:"minecraft:yellow_carpet",item:"minecraft:yellow_carpet",group:0},"minecraft:yellow_concrete":{type:"minecraft:yellow_concrete",item:"minecraft:yellow_concrete",group:0},"minecraft:yellow_concrete_powder":{type:"minecraft:yellow_concrete_powder",item:"minecraft:yellow_concrete_powder",group:0},"minecraft:yellow_stained_glass":{type:"minecraft:yellow_stained_glass",item:"minecraft:yellow_stained_glass",group:0},"minecraft:yellow_terracotta":{type:"minecraft:yellow_terracotta",item:"minecraft:yellow_terracotta",group:0},"minecraft:yellow_wool":{type:"minecraft:yellow_wool",item:"minecraft:yellow_wool",group:0},"minecraft:acacia_button":{type:"minecraft:acacia_button",item:"minecraft:acacia_button",group:1},"minecraft:bamboo_button":{type:"minecraft:bamboo_button",item:"minecraft:bamboo_button",group:1},"minecraft:birch_button":{type:"minecraft:birch_button",item:"minecraft:birch_button",group:1},"minecraft:cherry_button":{type:"minecraft:cherry_button",item:"minecraft:cherry_button",group:1},"minecraft:crimson_button":{type:"minecraft:crimson_button",item:"minecraft:crimson_button",group:1},"minecraft:dark_oak_button":{type:"minecraft:dark_oak_button",item:"minecraft:dark_oak_button",group:1},"minecraft:jungle_button":{type:"minecraft:jungle_button",item:"minecraft:jungle_button",group:1},"minecraft:lever":{type:"minecraft:lever",item:"minecraft:lever",group:1},"minecraft:mangrove_button":{type:"minecraft:mangrove_button",item:"minecraft:mangrove_button",group:1},"minecraft:oak_button":{type:"minecraft:oak_button",item:"minecraft:oak_button",group:1},"minecraft:polished_blackstone_button":{type:"minecraft:polished_blackstone_button",item:"minecraft:polished_blackstone_button",group:1},"minecraft:spruce_button":{type:"minecraft:spruce_button",item:"minecraft:spruce_button",group:1},"minecraft:stone_button":{type:"minecraft:stone_button",item:"minecraft:stone_button",group:1},"minecraft:warped_button":{type:"minecraft:warped_button",item:"minecraft:warped_button",group:1},"minecraft:acacia_door":{type:"minecraft:acacia_door",item:"minecraft:acacia_door",group:2},"minecraft:bamboo_door":{type:"minecraft:bamboo_door",item:"minecraft:bamboo_door",group:2},"minecraft:birch_door":{type:"minecraft:birch_door",item:"minecraft:birch_door",group:2},"minecraft:cherry_door":{type:"minecraft:cherry_door",item:"minecraft:cherry_door",group:2},"minecraft:copper_door":{type:"minecraft:copper_door",item:"minecraft:copper_door",group:2},"minecraft:crimson_door":{type:"minecraft:crimson_door",item:"minecraft:crimson_door",group:2},"minecraft:dark_oak_door":{type:"minecraft:dark_oak_door",item:"minecraft:dark_oak_door",group:2},"minecraft:exposed_copper_door":{type:"minecraft:exposed_copper_door",item:"minecraft:exposed_copper_door",group:2},"minecraft:iron_door":{type:"minecraft:iron_door",item:"minecraft:iron_door",group:2},"minecraft:jungle_door":{type:"minecraft:jungle_door",item:"minecraft:jungle_door",group:2},"minecraft:mangrove_door":{type:"minecraft:mangrove_door",item:"minecraft:mangrove_door",group:2},"minecraft:oak_door":{type:"minecraft:oak_door",item:"minecraft:oak_door",group:2},"minecraft:oxidized_copper_door":{type:"minecraft:oxidized_copper_door",item:"minecraft:oxidized_copper_door",group:2},"minecraft:spruce_door":{type:"minecraft:spruce_door",item:"minecraft:spruce_door",group:2},"minecraft:warped_door":{type:"minecraft:warped_door",item:"minecraft:warped_door",group:2},"minecraft:waxed_copper_door":{type:"minecraft:waxed_copper_door",item:"minecraft:waxed_copper_door",group:2},"minecraft:waxed_exposed_copper_door":{type:"minecraft:waxed_exposed_copper_door",item:"minecraft:waxed_exposed_copper_door",group:2},"minecraft:waxed_oxidized_copper_door":{type:"minecraft:waxed_oxidized_copper_door",item:"minecraft:waxed_oxidized_copper_door",group:2},"minecraft:waxed_weathered_copper_door":{type:"minecraft:waxed_weathered_copper_door",item:"minecraft:waxed_weathered_copper_door",group:2},"minecraft:weathered_copper_door":{type:"minecraft:weathered_copper_door",item:"minecraft:weathered_copper_door",group:2},"minecraft:acacia_fence":{type:"minecraft:acacia_fence",item:"minecraft:acacia_fence",group:3},"minecraft:bamboo_fence":{type:"minecraft:bamboo_fence",item:"minecraft:bamboo_fence",group:3},"minecraft:birch_fence":{type:"minecraft:birch_fence",item:"minecraft:birch_fence",group:3},"minecraft:black_stained_glass_pane":{type:"minecraft:black_stained_glass_pane",item:"minecraft:black_stained_glass_pane",group:3},"minecraft:blue_stained_glass_pane":{type:"minecraft:blue_stained_glass_pane",item:"minecraft:blue_stained_glass_pane",group:3},"minecraft:brown_stained_glass_pane":{type:"minecraft:brown_stained_glass_pane",item:"minecraft:brown_stained_glass_pane",group:3},"minecraft:cherry_fence":{type:"minecraft:cherry_fence",item:"minecraft:cherry_fence",group:3},"minecraft:crimson_fence":{type:"minecraft:crimson_fence",item:"minecraft:crimson_fence",group:3},"minecraft:cyan_stained_glass_pane":{type:"minecraft:cyan_stained_glass_pane",item:"minecraft:cyan_stained_glass_pane",group:3},"minecraft:dark_oak_fence":{type:"minecraft:dark_oak_fence",item:"minecraft:dark_oak_fence",group:3},"minecraft:glass_pane":{type:"minecraft:glass_pane",item:"minecraft:glass_pane",group:3},"minecraft:gray_stained_glass_pane":{type:"minecraft:gray_stained_glass_pane",item:"minecraft:gray_stained_glass_pane",group:3},"minecraft:green_stained_glass_pane":{type:"minecraft:green_stained_glass_pane",item:"minecraft:green_stained_glass_pane",group:3},"minecraft:iron_bars":{type:"minecraft:iron_bars",item:"minecraft:iron_bars",group:3},"minecraft:jungle_fence":{type:"minecraft:jungle_fence",item:"minecraft:jungle_fence",group:3},"minecraft:light_blue_stained_glass_pane":{type:"minecraft:light_blue_stained_glass_pane",item:"minecraft:light_blue_stained_glass_pane",group:3},"minecraft:light_gray_stained_glass_pane":{type:"minecraft:light_gray_stained_glass_pane",item:"minecraft:light_gray_stained_glass_pane",group:3},"minecraft:lime_stained_glass_pane":{type:"minecraft:lime_stained_glass_pane",item:"minecraft:lime_stained_glass_pane",group:3},"minecraft:magenta_stained_glass_pane":{type:"minecraft:magenta_stained_glass_pane",item:"minecraft:magenta_stained_glass_pane",group:3},"minecraft:mangrove_fence":{type:"minecraft:mangrove_fence",item:"minecraft:mangrove_fence",group:3},"minecraft:nether_brick_fence":{type:"minecraft:nether_brick_fence",item:"minecraft:nether_brick_fence",group:3},"minecraft:oak_fence":{type:"minecraft:oak_fence",item:"minecraft:oak_fence",group:3},"minecraft:orange_stained_glass_pane":{type:"minecraft:orange_stained_glass_pane",item:"minecraft:orange_stained_glass_pane",group:3},"minecraft:pink_stained_glass_pane":{type:"minecraft:pink_stained_glass_pane",item:"minecraft:pink_stained_glass_pane",group:3},"minecraft:purple_stained_glass_pane":{type:"minecraft:purple_stained_glass_pane",item:"minecraft:purple_stained_glass_pane",group:3},"minecraft:red_stained_glass_pane":{type:"minecraft:red_stained_glass_pane",item:"minecraft:red_stained_glass_pane",group:3},"minecraft:spruce_fence":{type:"minecraft:spruce_fence",item:"minecraft:spruce_fence",group:3},"minecraft:warped_fence":{type:"minecraft:warped_fence",item:"minecraft:warped_fence",group:3},"minecraft:white_stained_glass_pane":{type:"minecraft:white_stained_glass_pane",item:"minecraft:white_stained_glass_pane",group:3},"minecraft:yellow_stained_glass_pane":{type:"minecraft:yellow_stained_glass_pane",item:"minecraft:yellow_stained_glass_pane",group:3},"minecraft:acacia_fence_gate":{type:"minecraft:acacia_fence_gate",item:"minecraft:acacia_fence_gate",group:4},"minecraft:bamboo_fence_gate":{type:"minecraft:bamboo_fence_gate",item:"minecraft:bamboo_fence_gate",group:4},"minecraft:birch_fence_gate":{type:"minecraft:birch_fence_gate",item:"minecraft:birch_fence_gate",group:4},"minecraft:cherry_fence_gate":{type:"minecraft:cherry_fence_gate",item:"minecraft:cherry_fence_gate",group:4},"minecraft:crimson_fence_gate":{type:"minecraft:crimson_fence_gate",item:"minecraft:crimson_fence_gate",group:4},"minecraft:dark_oak_fence_gate":{type:"minecraft:dark_oak_fence_gate",item:"minecraft:dark_oak_fence_gate",group:4},"minecraft:jungle_fence_gate":{type:"minecraft:jungle_fence_gate",item:"minecraft:jungle_fence_gate",group:4},"minecraft:mangrove_fence_gate":{type:"minecraft:mangrove_fence_gate",item:"minecraft:mangrove_fence_gate",group:4},"minecraft:oak_fence_gate":{type:"minecraft:oak_fence_gate",item:"minecraft:oak_fence_gate",group:4},"minecraft:spruce_fence_gate":{type:"minecraft:spruce_fence_gate",item:"minecraft:spruce_fence_gate",group:4},"minecraft:warped_fence_gate":{type:"minecraft:warped_fence_gate",item:"minecraft:warped_fence_gate",group:4},"minecraft:acacia_hanging_sign":{type:"minecraft:acacia_hanging_sign",item:"minecraft:acacia_hanging_sign",group:5},"minecraft:bamboo_hanging_sign":{type:"minecraft:bamboo_hanging_sign",item:"minecraft:bamboo_hanging_sign",group:5},"minecraft:birch_hanging_sign":{type:"minecraft:birch_hanging_sign",item:"minecraft:birch_hanging_sign",group:5},"minecraft:cherry_hanging_sign":{type:"minecraft:cherry_hanging_sign",item:"minecraft:cherry_hanging_sign",group:5},"minecraft:crimson_hanging_sign":{type:"minecraft:crimson_hanging_sign",item:"minecraft:crimson_hanging_sign",group:5},"minecraft:dark_oak_hanging_sign":{type:"minecraft:dark_oak_hanging_sign",item:"minecraft:dark_oak_hanging_sign",group:5},"minecraft:jungle_hanging_sign":{type:"minecraft:jungle_hanging_sign",item:"minecraft:jungle_hanging_sign",group:5},"minecraft:mangrove_hanging_sign":{type:"minecraft:mangrove_hanging_sign",item:"minecraft:mangrove_hanging_sign",group:5},"minecraft:oak_hanging_sign":{type:"minecraft:oak_hanging_sign",item:"minecraft:oak_hanging_sign",group:5},"minecraft:spruce_hanging_sign":{type:"minecraft:spruce_hanging_sign",item:"minecraft:spruce_hanging_sign",group:5},"minecraft:warped_hanging_sign":{type:"minecraft:warped_hanging_sign",item:"minecraft:warped_hanging_sign",group:5},"minecraft:acacia_leaves":{type:"minecraft:acacia_leaves",item:"minecraft:acacia_leaves",group:6},"minecraft:azalea_leaves":{type:"minecraft:azalea_leaves",item:"minecraft:azalea_leaves",group:6},"minecraft:birch_leaves":{type:"minecraft:birch_leaves",item:"minecraft:birch_leaves",group:6},"minecraft:cherry_leaves":{type:"minecraft:cherry_leaves",item:"minecraft:cherry_leaves",group:6},"minecraft:dark_oak_leaves":{type:"minecraft:dark_oak_leaves",item:"minecraft:dark_oak_leaves",group:6},"minecraft:flowering_azalea_leaves":{type:"minecraft:flowering_azalea_leaves",item:"minecraft:flowering_azalea_leaves",group:6},"minecraft:jungle_leaves":{type:"minecraft:jungle_leaves",item:"minecraft:jungle_leaves",group:6},"minecraft:mangrove_leaves":{type:"minecraft:mangrove_leaves",item:"minecraft:mangrove_leaves",group:6},"minecraft:oak_leaves":{type:"minecraft:oak_leaves",item:"minecraft:oak_leaves",group:6},"minecraft:spruce_leaves":{type:"minecraft:spruce_leaves",item:"minecraft:spruce_leaves",group:6},"minecraft:acacia_log":{type:"minecraft:acacia_log",item:"minecraft:acacia_log",group:7},"minecraft:acacia_wood":{type:"minecraft:acacia_wood",item:"minecraft:acacia_wood",group:7},"minecraft:bamboo_block":{type:"minecraft:bamboo_block",item:"minecraft:bamboo_block",group:7},"minecraft:basalt":{type:"minecraft:basalt",item:"minecraft:basalt",group:7},"minecraft:birch_log":{type:"minecraft:birch_log",item:"minecraft:birch_log",group:7},"minecraft:birch_wood":{type:"minecraft:birch_wood",item:"minecraft:birch_wood",group:7},"minecraft:bone_block":{type:"minecraft:bone_block",item:"minecraft:bone_block",group:7},"minecraft:cherry_log":{type:"minecraft:cherry_log",item:"minecraft:cherry_log",group:7},"minecraft:cherry_wood":{type:"minecraft:cherry_wood",item:"minecraft:cherry_wood",group:7},"minecraft:crimson_hyphae":{type:"minecraft:crimson_hyphae",item:"minecraft:crimson_hyphae",group:7},"minecraft:crimson_stem":{type:"minecraft:crimson_stem",item:"minecraft:crimson_stem",group:7},"minecraft:dark_oak_log":{type:"minecraft:dark_oak_log",item:"minecraft:dark_oak_log",group:7},"minecraft:dark_oak_wood":{type:"minecraft:dark_oak_wood",item:"minecraft:dark_oak_wood",group:7},"minecraft:deepslate":{type:"minecraft:deepslate",item:"minecraft:deepslate",group:7},"minecraft:hay_block":{type:"minecraft:hay_block",item:"minecraft:hay_block",group:7},"minecraft:infested_deepslate":{type:"minecraft:infested_deepslate",item:"minecraft:infested_deepslate",group:7},"minecraft:jungle_log":{type:"minecraft:jungle_log",item:"minecraft:jungle_log",group:7},"minecraft:jungle_wood":{type:"minecraft:jungle_wood",item:"minecraft:jungle_wood",group:7},"minecraft:mangrove_log":{type:"minecraft:mangrove_log",item:"minecraft:mangrove_log",group:7},"minecraft:mangrove_wood":{type:"minecraft:mangrove_wood",item:"minecraft:mangrove_wood",group:7},"minecraft:muddy_mangrove_roots":{type:"minecraft:muddy_mangrove_roots",item:"minecraft:muddy_mangrove_roots",group:7},"minecraft:oak_log":{type:"minecraft:oak_log",item:"minecraft:oak_log",group:7},"minecraft:oak_wood":{type:"minecraft:oak_wood",item:"minecraft:oak_wood",group:7},"minecraft:ochre_froglight":{type:"minecraft:ochre_froglight",item:"minecraft:ochre_froglight",group:7},"minecraft:pearlescent_froglight":{type:"minecraft:pearlescent_froglight",item:"minecraft:pearlescent_froglight",group:7},"minecraft:polished_basalt":{type:"minecraft:polished_basalt",item:"minecraft:polished_basalt",group:7},"minecraft:purpur_pillar":{type:"minecraft:purpur_pillar",item:"minecraft:purpur_pillar",group:7},"minecraft:quartz_pillar":{type:"minecraft:quartz_pillar",item:"minecraft:quartz_pillar",group:7},"minecraft:spruce_log":{type:"minecraft:spruce_log",item:"minecraft:spruce_log",group:7},"minecraft:spruce_wood":{type:"minecraft:spruce_wood",item:"minecraft:spruce_wood",group:7},"minecraft:stripped_acacia_log":{type:"minecraft:stripped_acacia_log",item:"minecraft:stripped_acacia_log",group:7},"minecraft:stripped_acacia_wood":{type:"minecraft:stripped_acacia_wood",item:"minecraft:stripped_acacia_wood",group:7},"minecraft:stripped_bamboo_block":{type:"minecraft:stripped_bamboo_block",item:"minecraft:stripped_bamboo_block",group:7},"minecraft:stripped_birch_log":{type:"minecraft:stripped_birch_log",item:"minecraft:stripped_birch_log",group:7},"minecraft:stripped_birch_wood":{type:"minecraft:stripped_birch_wood",item:"minecraft:stripped_birch_wood",group:7},"minecraft:stripped_cherry_log":{type:"minecraft:stripped_cherry_log",item:"minecraft:stripped_cherry_log",group:7},"minecraft:stripped_cherry_wood":{type:"minecraft:stripped_cherry_wood",item:"minecraft:stripped_cherry_wood",group:7},"minecraft:stripped_crimson_hyphae":{type:"minecraft:stripped_crimson_hyphae",item:"minecraft:stripped_crimson_hyphae",group:7},"minecraft:stripped_crimson_stem":{type:"minecraft:stripped_crimson_stem",item:"minecraft:stripped_crimson_stem",group:7},"minecraft:stripped_dark_oak_log":{type:"minecraft:stripped_dark_oak_log",item:"minecraft:stripped_dark_oak_log",group:7},"minecraft:stripped_dark_oak_wood":{type:"minecraft:stripped_dark_oak_wood",item:"minecraft:stripped_dark_oak_wood",group:7},"minecraft:stripped_jungle_log":{type:"minecraft:stripped_jungle_log",item:"minecraft:stripped_jungle_log",group:7},"minecraft:stripped_jungle_wood":{type:"minecraft:stripped_jungle_wood",item:"minecraft:stripped_jungle_wood",group:7},"minecraft:stripped_mangrove_log":{type:"minecraft:stripped_mangrove_log",item:"minecraft:stripped_mangrove_log",group:7},"minecraft:stripped_mangrove_wood":{type:"minecraft:stripped_mangrove_wood",item:"minecraft:stripped_mangrove_wood",group:7},"minecraft:stripped_oak_log":{type:"minecraft:stripped_oak_log",item:"minecraft:stripped_oak_log",group:7},"minecraft:stripped_oak_wood":{type:"minecraft:stripped_oak_wood",item:"minecraft:stripped_oak_wood",group:7},"minecraft:stripped_spruce_log":{type:"minecraft:stripped_spruce_log",item:"minecraft:stripped_spruce_log",group:7},"minecraft:stripped_spruce_wood":{type:"minecraft:stripped_spruce_wood",item:"minecraft:stripped_spruce_wood",group:7},"minecraft:stripped_warped_hyphae":{type:"minecraft:stripped_warped_hyphae",item:"minecraft:stripped_warped_hyphae",group:7},"minecraft:stripped_warped_stem":{type:"minecraft:stripped_warped_stem",item:"minecraft:stripped_warped_stem",group:7},"minecraft:verdant_froglight":{type:"minecraft:verdant_froglight",item:"minecraft:verdant_froglight",group:7},"minecraft:warped_hyphae":{type:"minecraft:warped_hyphae",item:"minecraft:warped_hyphae",group:7},"minecraft:warped_stem":{type:"minecraft:warped_stem",item:"minecraft:warped_stem",group:7},"minecraft:acacia_pressure_plate":{type:"minecraft:acacia_pressure_plate",item:"minecraft:acacia_pressure_plate",group:8},"minecraft:bamboo_pressure_plate":{type:"minecraft:bamboo_pressure_plate",item:"minecraft:bamboo_pressure_plate",group:8},"minecraft:birch_pressure_plate":{type:"minecraft:birch_pressure_plate",item:"minecraft:birch_pressure_plate",group:8},"minecraft:cherry_pressure_plate":{type:"minecraft:cherry_pressure_plate",item:"minecraft:cherry_pressure_plate",group:8},"minecraft:crimson_pressure_plate":{type:"minecraft:crimson_pressure_plate",item:"minecraft:crimson_pressure_plate",group:8},"minecraft:dark_oak_pressure_plate":{type:"minecraft:dark_oak_pressure_plate",item:"minecraft:dark_oak_pressure_plate",group:8},"minecraft:jungle_pressure_plate":{type:"minecraft:jungle_pressure_plate",item:"minecraft:jungle_pressure_plate",group:8},"minecraft:mangrove_pressure_plate":{type:"minecraft:mangrove_pressure_plate",item:"minecraft:mangrove_pressure_plate",group:8},"minecraft:oak_pressure_plate":{type:"minecraft:oak_pressure_plate",item:"minecraft:oak_pressure_plate",group:8},"minecraft:polished_blackstone_pressure_plate":{type:"minecraft:polished_blackstone_pressure_plate",item:"minecraft:polished_blackstone_pressure_plate",group:8},"minecraft:spruce_pressure_plate":{type:"minecraft:spruce_pressure_plate",item:"minecraft:spruce_pressure_plate",group:8},"minecraft:stone_pressure_plate":{type:"minecraft:stone_pressure_plate",item:"minecraft:stone_pressure_plate",group:8},"minecraft:warped_pressure_plate":{type:"minecraft:warped_pressure_plate",item:"minecraft:warped_pressure_plate",group:8},"minecraft:acacia_sapling":{type:"minecraft:acacia_sapling",item:"minecraft:acacia_sapling",group:9},"minecraft:birch_sapling":{type:"minecraft:birch_sapling",item:"minecraft:birch_sapling",group:9},"minecraft:cherry_sapling":{type:"minecraft:cherry_sapling",item:"minecraft:cherry_sapling",group:9},"minecraft:dark_oak_sapling":{type:"minecraft:dark_oak_sapling",item:"minecraft:dark_oak_sapling",group:9},"minecraft:jungle_sapling":{type:"minecraft:jungle_sapling",item:"minecraft:jungle_sapling",group:9},"minecraft:oak_sapling":{type:"minecraft:oak_sapling",item:"minecraft:oak_sapling",group:9},"minecraft:spruce_sapling":{type:"minecraft:spruce_sapling",item:"minecraft:spruce_sapling",group:9},"minecraft:acacia_sign":{type:"minecraft:acacia_sign",item:"minecraft:acacia_sign",group:10},"minecraft:bamboo_sign":{type:"minecraft:bamboo_sign",item:"minecraft:bamboo_sign",group:10},"minecraft:birch_sign":{type:"minecraft:birch_sign",item:"minecraft:birch_sign",group:10},"minecraft:cherry_sign":{type:"minecraft:cherry_sign",item:"minecraft:cherry_sign",group:10},"minecraft:crimson_sign":{type:"minecraft:crimson_sign",item:"minecraft:crimson_sign",group:10},"minecraft:dark_oak_sign":{type:"minecraft:dark_oak_sign",item:"minecraft:dark_oak_sign",group:10},"minecraft:jungle_sign":{type:"minecraft:jungle_sign",item:"minecraft:jungle_sign",group:10},"minecraft:mangrove_sign":{type:"minecraft:mangrove_sign",item:"minecraft:mangrove_sign",group:10},"minecraft:oak_sign":{type:"minecraft:oak_sign",item:"minecraft:oak_sign",group:10},"minecraft:spruce_sign":{type:"minecraft:spruce_sign",item:"minecraft:spruce_sign",group:10},"minecraft:warped_sign":{type:"minecraft:warped_sign",item:"minecraft:warped_sign",group:10},"minecraft:acacia_slab":{type:"minecraft:acacia_slab",item:"minecraft:acacia_slab",group:11},"minecraft:andesite_slab":{type:"minecraft:andesite_slab",item:"minecraft:andesite_slab",group:11},"minecraft:bamboo_mosaic_slab":{type:"minecraft:bamboo_mosaic_slab",item:"minecraft:bamboo_mosaic_slab",group:11},"minecraft:bamboo_slab":{type:"minecraft:bamboo_slab",item:"minecraft:bamboo_slab",group:11},"minecraft:birch_slab":{type:"minecraft:birch_slab",item:"minecraft:birch_slab",group:11},"minecraft:blackstone_slab":{type:"minecraft:blackstone_slab",item:"minecraft:blackstone_slab",group:11},"minecraft:brick_slab":{type:"minecraft:brick_slab",item:"minecraft:brick_slab",group:11},"minecraft:cherry_slab":{type:"minecraft:cherry_slab",item:"minecraft:cherry_slab",group:11},"minecraft:cobbled_deepslate_slab":{type:"minecraft:cobbled_deepslate_slab",item:"minecraft:cobbled_deepslate_slab",group:11},"minecraft:cobblestone_slab":{type:"minecraft:cobblestone_slab",item:"minecraft:cobblestone_slab",group:11},"minecraft:crimson_slab":{type:"minecraft:crimson_slab",item:"minecraft:crimson_slab",group:11},"minecraft:cut_copper_slab":{type:"minecraft:cut_copper_slab",item:"minecraft:cut_copper_slab",group:11},"minecraft:cut_red_sandstone_slab":{type:"minecraft:cut_red_sandstone_slab",item:"minecraft:cut_red_sandstone_slab",group:11},"minecraft:cut_sandstone_slab":{type:"minecraft:cut_sandstone_slab",item:"minecraft:cut_sandstone_slab",group:11},"minecraft:dark_oak_slab":{type:"minecraft:dark_oak_slab",item:"minecraft:dark_oak_slab",group:11},"minecraft:dark_prismarine_slab":{type:"minecraft:dark_prismarine_slab",item:"minecraft:dark_prismarine_slab",group:11},"minecraft:deepslate_brick_slab":{type:"minecraft:deepslate_brick_slab",item:"minecraft:deepslate_brick_slab",group:11},"minecraft:deepslate_tile_slab":{type:"minecraft:deepslate_tile_slab",item:"minecraft:deepslate_tile_slab",group:11},"minecraft:diorite_slab":{type:"minecraft:diorite_slab",item:"minecraft:diorite_slab",group:11},"minecraft:end_stone_brick_slab":{type:"minecraft:end_stone_brick_slab",item:"minecraft:end_stone_brick_slab",group:11},"minecraft:exposed_cut_copper_slab":{type:"minecraft:exposed_cut_copper_slab",item:"minecraft:exposed_cut_copper_slab",group:11},"minecraft:granite_slab":{type:"minecraft:granite_slab",item:"minecraft:granite_slab",group:11},"minecraft:jungle_slab":{type:"minecraft:jungle_slab",item:"minecraft:jungle_slab",group:11},"minecraft:mangrove_slab":{type:"minecraft:mangrove_slab",item:"minecraft:mangrove_slab",group:11},"minecraft:mossy_cobblestone_slab":{type:"minecraft:mossy_cobblestone_slab",item:"minecraft:mossy_cobblestone_slab",group:11},"minecraft:mossy_stone_brick_slab":{type:"minecraft:mossy_stone_brick_slab",item:"minecraft:mossy_stone_brick_slab",group:11},"minecraft:mud_brick_slab":{type:"minecraft:mud_brick_slab",item:"minecraft:mud_brick_slab",group:11},"minecraft:nether_brick_slab":{type:"minecraft:nether_brick_slab",item:"minecraft:nether_brick_slab",group:11},"minecraft:oak_slab":{type:"minecraft:oak_slab",item:"minecraft:oak_slab",group:11},"minecraft:oxidized_cut_copper_slab":{type:"minecraft:oxidized_cut_copper_slab",item:"minecraft:oxidized_cut_copper_slab",group:11},"minecraft:petrified_oak_slab":{type:"minecraft:petrified_oak_slab",item:"minecraft:petrified_oak_slab",group:11},"minecraft:polished_andesite_slab":{type:"minecraft:polished_andesite_slab",item:"minecraft:polished_andesite_slab",group:11},"minecraft:polished_blackstone_brick_slab":{type:"minecraft:polished_blackstone_brick_slab",item:"minecraft:polished_blackstone_brick_slab",group:11},"minecraft:polished_blackstone_slab":{type:"minecraft:polished_blackstone_slab",item:"minecraft:polished_blackstone_slab",group:11},"minecraft:polished_deepslate_slab":{type:"minecraft:polished_deepslate_slab",item:"minecraft:polished_deepslate_slab",group:11},"minecraft:polished_diorite_slab":{type:"minecraft:polished_diorite_slab",item:"minecraft:polished_diorite_slab",group:11},"minecraft:polished_granite_slab":{type:"minecraft:polished_granite_slab",item:"minecraft:polished_granite_slab",group:11},"minecraft:polished_tuff_slab":{type:"minecraft:polished_tuff_slab",item:"minecraft:polished_tuff_slab",group:11},"minecraft:prismarine_brick_slab":{type:"minecraft:prismarine_brick_slab",item:"minecraft:prismarine_brick_slab",group:11},"minecraft:prismarine_slab":{type:"minecraft:prismarine_slab",item:"minecraft:prismarine_slab",group:11},"minecraft:purpur_slab":{type:"minecraft:purpur_slab",item:"minecraft:purpur_slab",group:11},"minecraft:quartz_slab":{type:"minecraft:quartz_slab",item:"minecraft:quartz_slab",group:11},"minecraft:red_nether_brick_slab":{type:"minecraft:red_nether_brick_slab",item:"minecraft:red_nether_brick_slab",group:11},"minecraft:red_sandstone_slab":{type:"minecraft:red_sandstone_slab",item:"minecraft:red_sandstone_slab",group:11},"minecraft:sandstone_slab":{type:"minecraft:sandstone_slab",item:"minecraft:sandstone_slab",group:11},"minecraft:smooth_quartz_slab":{type:"minecraft:smooth_quartz_slab",item:"minecraft:smooth_quartz_slab",group:11},"minecraft:smooth_red_sandstone_slab":{type:"minecraft:smooth_red_sandstone_slab",item:"minecraft:smooth_red_sandstone_slab",group:11},"minecraft:smooth_sandstone_slab":{type:"minecraft:smooth_sandstone_slab",item:"minecraft:smooth_sandstone_slab",group:11},"minecraft:smooth_stone_slab":{type:"minecraft:smooth_stone_slab",item:"minecraft:smooth_stone_slab",group:11},"minecraft:spruce_slab":{type:"minecraft:spruce_slab",item:"minecraft:spruce_slab",group:11},"minecraft:stone_brick_slab":{type:"minecraft:stone_brick_slab",item:"minecraft:stone_brick_slab",group:11},"minecraft:stone_slab":{type:"minecraft:stone_slab",item:"minecraft:stone_slab",group:11},"minecraft:tuff_brick_slab":{type:"minecraft:tuff_brick_slab",item:"minecraft:tuff_brick_slab",group:11},"minecraft:tuff_slab":{type:"minecraft:tuff_slab",item:"minecraft:tuff_slab",group:11},"minecraft:warped_slab":{type:"minecraft:warped_slab",item:"minecraft:warped_slab",group:11},"minecraft:waxed_cut_copper_slab":{type:"minecraft:waxed_cut_copper_slab",item:"minecraft:waxed_cut_copper_slab",group:11},"minecraft:waxed_exposed_cut_copper_slab":{type:"minecraft:waxed_exposed_cut_copper_slab",item:"minecraft:waxed_exposed_cut_copper_slab",group:11},"minecraft:waxed_oxidized_cut_copper_slab":{type:"minecraft:waxed_oxidized_cut_copper_slab",item:"minecraft:waxed_oxidized_cut_copper_slab",group:11},"minecraft:waxed_weathered_cut_copper_slab":{type:"minecraft:waxed_weathered_cut_copper_slab",item:"minecraft:waxed_weathered_cut_copper_slab",group:11},"minecraft:weathered_cut_copper_slab":{type:"minecraft:weathered_cut_copper_slab",item:"minecraft:weathered_cut_copper_slab",group:11},"minecraft:acacia_stairs":{type:"minecraft:acacia_stairs",item:"minecraft:acacia_stairs",group:12},"minecraft:andesite_stairs":{type:"minecraft:andesite_stairs",item:"minecraft:andesite_stairs",group:12},"minecraft:bamboo_mosaic_stairs":{type:"minecraft:bamboo_mosaic_stairs",item:"minecraft:bamboo_mosaic_stairs",group:12},"minecraft:bamboo_stairs":{type:"minecraft:bamboo_stairs",item:"minecraft:bamboo_stairs",group:12},"minecraft:birch_stairs":{type:"minecraft:birch_stairs",item:"minecraft:birch_stairs",group:12},"minecraft:blackstone_stairs":{type:"minecraft:blackstone_stairs",item:"minecraft:blackstone_stairs",group:12},"minecraft:brick_stairs":{type:"minecraft:brick_stairs",item:"minecraft:brick_stairs",group:12},"minecraft:cherry_stairs":{type:"minecraft:cherry_stairs",item:"minecraft:cherry_stairs",group:12},"minecraft:cobbled_deepslate_stairs":{type:"minecraft:cobbled_deepslate_stairs",item:"minecraft:cobbled_deepslate_stairs",group:12},"minecraft:cobblestone_stairs":{type:"minecraft:cobblestone_stairs",item:"minecraft:cobblestone_stairs",group:12},"minecraft:crimson_stairs":{type:"minecraft:crimson_stairs",item:"minecraft:crimson_stairs",group:12},"minecraft:cut_copper_stairs":{type:"minecraft:cut_copper_stairs",item:"minecraft:cut_copper_stairs",group:12},"minecraft:dark_oak_stairs":{type:"minecraft:dark_oak_stairs",item:"minecraft:dark_oak_stairs",group:12},"minecraft:dark_prismarine_stairs":{type:"minecraft:dark_prismarine_stairs",item:"minecraft:dark_prismarine_stairs",group:12},"minecraft:deepslate_brick_stairs":{type:"minecraft:deepslate_brick_stairs",item:"minecraft:deepslate_brick_stairs",group:12},"minecraft:deepslate_tile_stairs":{type:"minecraft:deepslate_tile_stairs",item:"minecraft:deepslate_tile_stairs",group:12},"minecraft:diorite_stairs":{type:"minecraft:diorite_stairs",item:"minecraft:diorite_stairs",group:12},"minecraft:end_stone_brick_stairs":{type:"minecraft:end_stone_brick_stairs",item:"minecraft:end_stone_brick_stairs",group:12},"minecraft:exposed_cut_copper_stairs":{type:"minecraft:exposed_cut_copper_stairs",item:"minecraft:exposed_cut_copper_stairs",group:12},"minecraft:granite_stairs":{type:"minecraft:granite_stairs",item:"minecraft:granite_stairs",group:12},"minecraft:jungle_stairs":{type:"minecraft:jungle_stairs",item:"minecraft:jungle_stairs",group:12},"minecraft:mangrove_stairs":{type:"minecraft:mangrove_stairs",item:"minecraft:mangrove_stairs",group:12},"minecraft:mossy_cobblestone_stairs":{type:"minecraft:mossy_cobblestone_stairs",item:"minecraft:mossy_cobblestone_stairs",group:12},"minecraft:mossy_stone_brick_stairs":{type:"minecraft:mossy_stone_brick_stairs",item:"minecraft:mossy_stone_brick_stairs",group:12},"minecraft:mud_brick_stairs":{type:"minecraft:mud_brick_stairs",item:"minecraft:mud_brick_stairs",group:12},"minecraft:nether_brick_stairs":{type:"minecraft:nether_brick_stairs",item:"minecraft:nether_brick_stairs",group:12},"minecraft:oak_stairs":{type:"minecraft:oak_stairs",item:"minecraft:oak_stairs",group:12},"minecraft:oxidized_cut_copper_stairs":{type:"minecraft:oxidized_cut_copper_stairs",item:"minecraft:oxidized_cut_copper_stairs",group:12},"minecraft:polished_andesite_stairs":{type:"minecraft:polished_andesite_stairs",item:"minecraft:polished_andesite_stairs",group:12},"minecraft:polished_blackstone_brick_stairs":{type:"minecraft:polished_blackstone_brick_stairs",item:"minecraft:polished_blackstone_brick_stairs",group:12},"minecraft:polished_blackstone_stairs":{type:"minecraft:polished_blackstone_stairs",item:"minecraft:polished_blackstone_stairs",group:12},"minecraft:polished_deepslate_stairs":{type:"minecraft:polished_deepslate_stairs",item:"minecraft:polished_deepslate_stairs",group:12},"minecraft:polished_diorite_stairs":{type:"minecraft:polished_diorite_stairs",item:"minecraft:polished_diorite_stairs",group:12},"minecraft:polished_granite_stairs":{type:"minecraft:polished_granite_stairs",item:"minecraft:polished_granite_stairs",group:12},"minecraft:polished_tuff_stairs":{type:"minecraft:polished_tuff_stairs",item:"minecraft:polished_tuff_stairs",group:12},"minecraft:prismarine_brick_stairs":{type:"minecraft:prismarine_brick_stairs",item:"minecraft:prismarine_brick_stairs",group:12},"minecraft:prismarine_stairs":{type:"minecraft:prismarine_stairs",item:"minecraft:prismarine_stairs",group:12},"minecraft:purpur_stairs":{type:"minecraft:purpur_stairs",item:"minecraft:purpur_stairs",group:12},"minecraft:quartz_stairs":{type:"minecraft:quartz_stairs",item:"minecraft:quartz_stairs",group:12},"minecraft:red_nether_brick_stairs":{type:"minecraft:red_nether_brick_stairs",item:"minecraft:red_nether_brick_stairs",group:12},"minecraft:red_sandstone_stairs":{type:"minecraft:red_sandstone_stairs",item:"minecraft:red_sandstone_stairs",group:12},"minecraft:sandstone_stairs":{type:"minecraft:sandstone_stairs",item:"minecraft:sandstone_stairs",group:12},"minecraft:smooth_quartz_stairs":{type:"minecraft:smooth_quartz_stairs",item:"minecraft:smooth_quartz_stairs",group:12},"minecraft:smooth_red_sandstone_stairs":{type:"minecraft:smooth_red_sandstone_stairs",item:"minecraft:smooth_red_sandstone_stairs",group:12},"minecraft:smooth_sandstone_stairs":{type:"minecraft:smooth_sandstone_stairs",item:"minecraft:smooth_sandstone_stairs",group:12},"minecraft:spruce_stairs":{type:"minecraft:spruce_stairs",item:"minecraft:spruce_stairs",group:12},"minecraft:stone_brick_stairs":{type:"minecraft:stone_brick_stairs",item:"minecraft:stone_brick_stairs",group:12},"minecraft:stone_stairs":{type:"minecraft:stone_stairs",item:"minecraft:stone_stairs",group:12},"minecraft:tuff_brick_stairs":{type:"minecraft:tuff_brick_stairs",item:"minecraft:tuff_brick_stairs",group:12},"minecraft:tuff_stairs":{type:"minecraft:tuff_stairs",item:"minecraft:tuff_stairs",group:12},"minecraft:warped_stairs":{type:"minecraft:warped_stairs",item:"minecraft:warped_stairs",group:12},"minecraft:waxed_cut_copper_stairs":{type:"minecraft:waxed_cut_copper_stairs",item:"minecraft:waxed_cut_copper_stairs",group:12},"minecraft:waxed_exposed_cut_copper_stairs":{type:"minecraft:waxed_exposed_cut_copper_stairs",item:"minecraft:waxed_exposed_cut_copper_stairs",group:12},"minecraft:waxed_oxidized_cut_copper_stairs":{type:"minecraft:waxed_oxidized_cut_copper_stairs",item:"minecraft:waxed_oxidized_cut_copper_stairs",group:12},"minecraft:waxed_weathered_cut_copper_stairs":{type:"minecraft:waxed_weathered_cut_copper_stairs",item:"minecraft:waxed_weathered_cut_copper_stairs",group:12},"minecraft:weathered_cut_copper_stairs":{type:"minecraft:weathered_cut_copper_stairs",item:"minecraft:weathered_cut_copper_stairs",group:12},"minecraft:acacia_trapdoor":{type:"minecraft:acacia_trapdoor",item:"minecraft:acacia_trapdoor",group:13},"minecraft:bamboo_trapdoor":{type:"minecraft:bamboo_trapdoor",item:"minecraft:bamboo_trapdoor",group:13},"minecraft:birch_trapdoor":{type:"minecraft:birch_trapdoor",item:"minecraft:birch_trapdoor",group:13},"minecraft:cherry_trapdoor":{type:"minecraft:cherry_trapdoor",item:"minecraft:cherry_trapdoor",group:13},"minecraft:copper_trapdoor":{type:"minecraft:copper_trapdoor",item:"minecraft:copper_trapdoor",group:13},"minecraft:crimson_trapdoor":{type:"minecraft:crimson_trapdoor",item:"minecraft:crimson_trapdoor",group:13},"minecraft:dark_oak_trapdoor":{type:"minecraft:dark_oak_trapdoor",item:"minecraft:dark_oak_trapdoor",group:13},"minecraft:exposed_copper_trapdoor":{type:"minecraft:exposed_copper_trapdoor",item:"minecraft:exposed_copper_trapdoor",group:13},"minecraft:iron_trapdoor":{type:"minecraft:iron_trapdoor",item:"minecraft:iron_trapdoor",group:13},"minecraft:jungle_trapdoor":{type:"minecraft:jungle_trapdoor",item:"minecraft:jungle_trapdoor",group:13},"minecraft:mangrove_trapdoor":{type:"minecraft:mangrove_trapdoor",item:"minecraft:mangrove_trapdoor",group:13},"minecraft:oak_trapdoor":{type:"minecraft:oak_trapdoor",item:"minecraft:oak_trapdoor",group:13},"minecraft:oxidized_copper_trapdoor":{type:"minecraft:oxidized_copper_trapdoor",item:"minecraft:oxidized_copper_trapdoor",group:13},"minecraft:spruce_trapdoor":{type:"minecraft:spruce_trapdoor",item:"minecraft:spruce_trapdoor",group:13},"minecraft:warped_trapdoor":{type:"minecraft:warped_trapdoor",item:"minecraft:warped_trapdoor",group:13},"minecraft:waxed_copper_trapdoor":{type:"minecraft:waxed_copper_trapdoor",item:"minecraft:waxed_copper_trapdoor",group:13},"minecraft:waxed_exposed_copper_trapdoor":{type:"minecraft:waxed_exposed_copper_trapdoor",item:"minecraft:waxed_exposed_copper_trapdoor",group:13},"minecraft:waxed_oxidized_copper_trapdoor":{type:"minecraft:waxed_oxidized_copper_trapdoor",item:"minecraft:waxed_oxidized_copper_trapdoor",group:13},"minecraft:waxed_weathered_copper_trapdoor":{type:"minecraft:waxed_weathered_copper_trapdoor",item:"minecraft:waxed_weathered_copper_trapdoor",group:13},"minecraft:weathered_copper_trapdoor":{type:"minecraft:weathered_copper_trapdoor",item:"minecraft:weathered_copper_trapdoor",group:13},"minecraft:acacia_wall_hanging_sign":{type:"minecraft:acacia_wall_hanging_sign",item:"minecraft:acacia_hanging_sign",group:14},"minecraft:acacia_wall_sign":{type:"minecraft:acacia_wall_sign",item:"minecraft:acacia_sign",group:14},"minecraft:bamboo_wall_hanging_sign":{type:"minecraft:bamboo_wall_hanging_sign",item:"minecraft:bamboo_hanging_sign",group:14},"minecraft:bamboo_wall_sign":{type:"minecraft:bamboo_wall_sign",item:"minecraft:bamboo_sign",group:14},"minecraft:big_dripleaf_stem":{type:"minecraft:big_dripleaf_stem",item:"minecraft:big_dripleaf",group:14},"minecraft:birch_wall_hanging_sign":{type:"minecraft:birch_wall_hanging_sign",item:"minecraft:birch_hanging_sign",group:14},"minecraft:birch_wall_sign":{type:"minecraft:birch_wall_sign",item:"minecraft:birch_sign",group:14},"minecraft:cherry_wall_hanging_sign":{type:"minecraft:cherry_wall_hanging_sign",item:"minecraft:cherry_hanging_sign",group:14},"minecraft:cherry_wall_sign":{type:"minecraft:cherry_wall_sign",item:"minecraft:cherry_sign",group:14},"minecraft:crimson_wall_hanging_sign":{type:"minecraft:crimson_wall_hanging_sign",item:"minecraft:crimson_hanging_sign",group:14},"minecraft:crimson_wall_sign":{type:"minecraft:crimson_wall_sign",item:"minecraft:crimson_sign",group:14},"minecraft:dark_oak_wall_hanging_sign":{type:"minecraft:dark_oak_wall_hanging_sign",item:"minecraft:dark_oak_hanging_sign",group:14},"minecraft:dark_oak_wall_sign":{type:"minecraft:dark_oak_wall_sign",item:"minecraft:dark_oak_sign",group:14},"minecraft:ender_chest":{type:"minecraft:ender_chest",item:"minecraft:ender_chest",group:14},"minecraft:jungle_wall_hanging_sign":{type:"minecraft:jungle_wall_hanging_sign",item:"minecraft:jungle_hanging_sign",group:14},"minecraft:jungle_wall_sign":{type:"minecraft:jungle_wall_sign",item:"minecraft:jungle_sign",group:14},"minecraft:ladder":{type:"minecraft:ladder",item:"minecraft:ladder",group:14},"minecraft:mangrove_wall_hanging_sign":{type:"minecraft:mangrove_wall_hanging_sign",item:"minecraft:mangrove_hanging_sign",group:14},"minecraft:mangrove_wall_sign":{type:"minecraft:mangrove_wall_sign",item:"minecraft:mangrove_sign",group:14},"minecraft:oak_wall_hanging_sign":{type:"minecraft:oak_wall_hanging_sign",item:"minecraft:oak_hanging_sign",group:14},"minecraft:oak_wall_sign":{type:"minecraft:oak_wall_sign",item:"minecraft:oak_sign",group:14},"minecraft:spruce_wall_hanging_sign":{type:"minecraft:spruce_wall_hanging_sign",item:"minecraft:spruce_hanging_sign",group:14},"minecraft:spruce_wall_sign":{type:"minecraft:spruce_wall_sign",item:"minecraft:spruce_sign",group:14},"minecraft:warped_wall_hanging_sign":{type:"minecraft:warped_wall_hanging_sign",item:"minecraft:warped_hanging_sign",group:14},"minecraft:warped_wall_sign":{type:"minecraft:warped_wall_sign",item:"minecraft:warped_sign",group:14},"minecraft:activator_rail":{type:"minecraft:activator_rail",item:"minecraft:activator_rail",group:15},"minecraft:detector_rail":{type:"minecraft:detector_rail",item:"minecraft:detector_rail",group:15},"minecraft:powered_rail":{type:"minecraft:powered_rail",item:"minecraft:powered_rail",group:15},"minecraft:amethyst_cluster":{type:"minecraft:amethyst_cluster",item:"minecraft:amethyst_cluster",group:16},"minecraft:large_amethyst_bud":{type:"minecraft:large_amethyst_bud",item:"minecraft:large_amethyst_bud",group:16},"minecraft:medium_amethyst_bud":{type:"minecraft:medium_amethyst_bud",item:"minecraft:medium_amethyst_bud",group:16},"minecraft:small_amethyst_bud":{type:"minecraft:small_amethyst_bud",item:"minecraft:small_amethyst_bud",group:16},"minecraft:andesite_wall":{type:"minecraft:andesite_wall",item:"minecraft:andesite_wall",group:17},"minecraft:blackstone_wall":{type:"minecraft:blackstone_wall",item:"minecraft:blackstone_wall",group:17},"minecraft:brick_wall":{type:"minecraft:brick_wall",item:"minecraft:brick_wall",group:17},"minecraft:cobbled_deepslate_wall":{type:"minecraft:cobbled_deepslate_wall",item:"minecraft:cobbled_deepslate_wall",group:17},"minecraft:cobblestone_wall":{type:"minecraft:cobblestone_wall",item:"minecraft:cobblestone_wall",group:17},"minecraft:deepslate_brick_wall":{type:"minecraft:deepslate_brick_wall",item:"minecraft:deepslate_brick_wall",group:17},"minecraft:deepslate_tile_wall":{type:"minecraft:deepslate_tile_wall",item:"minecraft:deepslate_tile_wall",group:17},"minecraft:diorite_wall":{type:"minecraft:diorite_wall",item:"minecraft:diorite_wall",group:17},"minecraft:end_stone_brick_wall":{type:"minecraft:end_stone_brick_wall",item:"minecraft:end_stone_brick_wall",group:17},"minecraft:granite_wall":{type:"minecraft:granite_wall",item:"minecraft:granite_wall",group:17},"minecraft:mossy_cobblestone_wall":{type:"minecraft:mossy_cobblestone_wall",item:"minecraft:mossy_cobblestone_wall",group:17},"minecraft:mossy_stone_brick_wall":{type:"minecraft:mossy_stone_brick_wall",item:"minecraft:mossy_stone_brick_wall",group:17},"minecraft:mud_brick_wall":{type:"minecraft:mud_brick_wall",item:"minecraft:mud_brick_wall",group:17},"minecraft:nether_brick_wall":{type:"minecraft:nether_brick_wall",item:"minecraft:nether_brick_wall",group:17},"minecraft:polished_blackstone_brick_wall":{type:"minecraft:polished_blackstone_brick_wall",item:"minecraft:polished_blackstone_brick_wall",group:17},"minecraft:polished_blackstone_wall":{type:"minecraft:polished_blackstone_wall",item:"minecraft:polished_blackstone_wall",group:17},"minecraft:polished_deepslate_wall":{type:"minecraft:polished_deepslate_wall",item:"minecraft:polished_deepslate_wall",group:17},"minecraft:polished_tuff_wall":{type:"minecraft:polished_tuff_wall",item:"minecraft:polished_tuff_wall",group:17},"minecraft:prismarine_wall":{type:"minecraft:prismarine_wall",item:"minecraft:prismarine_wall",group:17},"minecraft:red_nether_brick_wall":{type:"minecraft:red_nether_brick_wall",item:"minecraft:red_nether_brick_wall",group:17},"minecraft:red_sandstone_wall":{type:"minecraft:red_sandstone_wall",item:"minecraft:red_sandstone_wall",group:17},"minecraft:sandstone_wall":{type:"minecraft:sandstone_wall",item:"minecraft:sandstone_wall",group:17},"minecraft:stone_brick_wall":{type:"minecraft:stone_brick_wall",item:"minecraft:stone_brick_wall",group:17},"minecraft:tuff_brick_wall":{type:"minecraft:tuff_brick_wall",item:"minecraft:tuff_brick_wall",group:17},"minecraft:tuff_wall":{type:"minecraft:tuff_wall",item:"minecraft:tuff_wall",group:17},"minecraft:anvil":{type:"minecraft:anvil",item:"minecraft:anvil",group:18},"minecraft:attached_melon_stem":{type:"minecraft:attached_melon_stem",item:"minecraft:melon_seeds",group:18},"minecraft:attached_pumpkin_stem":{type:"minecraft:attached_pumpkin_stem",item:"minecraft:melon_seeds",group:18},"minecraft:black_glazed_terracotta":{type:"minecraft:black_glazed_terracotta",item:"minecraft:black_glazed_terracotta",group:18},"minecraft:black_wall_banner":{type:"minecraft:black_wall_banner",item:"minecraft:black_banner",group:18},"minecraft:blue_glazed_terracotta":{type:"minecraft:blue_glazed_terracotta",item:"minecraft:blue_glazed_terracotta",group:18},"minecraft:blue_wall_banner":{type:"minecraft:blue_wall_banner",item:"minecraft:blue_banner",group:18},"minecraft:brown_glazed_terracotta":{type:"minecraft:brown_glazed_terracotta",item:"minecraft:brown_glazed_terracotta",group:18},"minecraft:brown_wall_banner":{type:"minecraft:brown_wall_banner",item:"minecraft:brown_banner",group:18},"minecraft:carved_pumpkin":{type:"minecraft:carved_pumpkin",item:"minecraft:carved_pumpkin",group:18},"minecraft:chipped_anvil":{type:"minecraft:chipped_anvil",item:"minecraft:chipped_anvil",group:18},"minecraft:cyan_glazed_terracotta":{type:"minecraft:cyan_glazed_terracotta",item:"minecraft:cyan_glazed_terracotta",group:18},"minecraft:cyan_wall_banner":{type:"minecraft:cyan_wall_banner",item:"minecraft:cyan_banner",group:18},"minecraft:damaged_anvil":{type:"minecraft:damaged_anvil",item:"minecraft:damaged_anvil",group:18},"minecraft:gray_glazed_terracotta":{type:"minecraft:gray_glazed_terracotta",item:"minecraft:gray_glazed_terracotta",group:18},"minecraft:gray_wall_banner":{type:"minecraft:gray_wall_banner",item:"minecraft:gray_banner",group:18},"minecraft:green_glazed_terracotta":{type:"minecraft:green_glazed_terracotta",item:"minecraft:green_glazed_terracotta",group:18},"minecraft:green_wall_banner":{type:"minecraft:green_wall_banner",item:"minecraft:green_banner",group:18},"minecraft:jack_o_lantern":{type:"minecraft:jack_o_lantern",item:"minecraft:jack_o_lantern",group:18},"minecraft:light_blue_glazed_terracotta":{type:"minecraft:light_blue_glazed_terracotta",item:"minecraft:light_blue_glazed_terracotta",group:18},"minecraft:light_blue_wall_banner":{type:"minecraft:light_blue_wall_banner",item:"minecraft:light_blue_banner",group:18},"minecraft:light_gray_glazed_terracotta":{type:"minecraft:light_gray_glazed_terracotta",item:"minecraft:light_gray_glazed_terracotta",group:18},"minecraft:light_gray_wall_banner":{type:"minecraft:light_gray_wall_banner",item:"minecraft:light_gray_banner",group:18},"minecraft:lime_glazed_terracotta":{type:"minecraft:lime_glazed_terracotta",item:"minecraft:lime_glazed_terracotta",group:18},"minecraft:lime_wall_banner":{type:"minecraft:lime_wall_banner",item:"minecraft:lime_banner",group:18},"minecraft:loom":{type:"minecraft:loom",item:"minecraft:loom",group:18},"minecraft:magenta_glazed_terracotta":{type:"minecraft:magenta_glazed_terracotta",item:"minecraft:magenta_glazed_terracotta",group:18},"minecraft:magenta_wall_banner":{type:"minecraft:magenta_wall_banner",item:"minecraft:magenta_banner",group:18},"minecraft:orange_glazed_terracotta":{type:"minecraft:orange_glazed_terracotta",item:"minecraft:orange_glazed_terracotta",group:18},"minecraft:orange_wall_banner":{type:"minecraft:orange_wall_banner",item:"minecraft:orange_banner",group:18},"minecraft:pink_glazed_terracotta":{type:"minecraft:pink_glazed_terracotta",item:"minecraft:pink_glazed_terracotta",group:18},"minecraft:pink_wall_banner":{type:"minecraft:pink_wall_banner",item:"minecraft:pink_banner",group:18},"minecraft:purple_glazed_terracotta":{type:"minecraft:purple_glazed_terracotta",item:"minecraft:purple_glazed_terracotta",group:18},"minecraft:purple_wall_banner":{type:"minecraft:purple_wall_banner",item:"minecraft:purple_banner",group:18},"minecraft:red_glazed_terracotta":{type:"minecraft:red_glazed_terracotta",item:"minecraft:red_glazed_terracotta",group:18},"minecraft:red_wall_banner":{type:"minecraft:red_wall_banner",item:"minecraft:red_banner",group:18},"minecraft:soul_wall_torch":{type:"minecraft:soul_wall_torch",item:"minecraft:soul_torch",group:18},"minecraft:stonecutter":{type:"minecraft:stonecutter",item:"minecraft:stonecutter",group:18},"minecraft:wall_torch":{type:"minecraft:wall_torch",item:"minecraft:torch",group:18},"minecraft:white_glazed_terracotta":{type:"minecraft:white_glazed_terracotta",item:"minecraft:white_glazed_terracotta",group:18},"minecraft:white_wall_banner":{type:"minecraft:white_wall_banner",item:"minecraft:white_banner",group:18},"minecraft:yellow_glazed_terracotta":{type:"minecraft:yellow_glazed_terracotta",item:"minecraft:yellow_glazed_terracotta",group:18},"minecraft:yellow_wall_banner":{type:"minecraft:yellow_wall_banner",item:"minecraft:yellow_banner",group:18},"minecraft:bamboo":{type:"minecraft:bamboo",item:"minecraft:bamboo",group:19},"minecraft:barrel":{type:"minecraft:barrel",item:"minecraft:barrel",group:20},"minecraft:barrier":{type:"minecraft:barrier",item:"minecraft:barrier",group:21},"minecraft:copper_grate":{type:"minecraft:copper_grate",item:"minecraft:copper_grate",group:21},"minecraft:exposed_copper_grate":{type:"minecraft:exposed_copper_grate",item:"minecraft:exposed_copper_grate",group:21},"minecraft:hanging_roots":{type:"minecraft:hanging_roots",item:"minecraft:hanging_roots",group:21},"minecraft:heavy_core":{type:"minecraft:heavy_core",item:"minecraft:heavy_core",group:21},"minecraft:mangrove_roots":{type:"minecraft:mangrove_roots",item:"minecraft:mangrove_roots",group:21},"minecraft:oxidized_copper_grate":{type:"minecraft:oxidized_copper_grate",item:"minecraft:oxidized_copper_grate",group:21},"minecraft:waxed_copper_grate":{type:"minecraft:waxed_copper_grate",item:"minecraft:waxed_copper_grate",group:21},"minecraft:waxed_exposed_copper_grate":{type:"minecraft:waxed_exposed_copper_grate",item:"minecraft:waxed_exposed_copper_grate",group:21},"minecraft:waxed_oxidized_copper_grate":{type:"minecraft:waxed_oxidized_copper_grate",item:"minecraft:waxed_oxidized_copper_grate",group:21},"minecraft:waxed_weathered_copper_grate":{type:"minecraft:waxed_weathered_copper_grate",item:"minecraft:waxed_weathered_copper_grate",group:21},"minecraft:weathered_copper_grate":{type:"minecraft:weathered_copper_grate",item:"minecraft:weathered_copper_grate",group:21},"minecraft:bee_nest":{type:"minecraft:bee_nest",item:"minecraft:bee_nest",group:22},"minecraft:beehive":{type:"minecraft:beehive",item:"minecraft:beehive",group:22},"minecraft:beetroots":{type:"minecraft:beetroots",item:"minecraft:beetroot_seeds",group:23},"minecraft:frosted_ice":{type:"minecraft:frosted_ice",group:23},"minecraft:nether_wart":{type:"minecraft:nether_wart",item:"minecraft:nether_wart",group:23},"minecraft:sweet_berry_bush":{type:"minecraft:sweet_berry_bush",item:"minecraft:sweet_berries",group:23},"minecraft:bell":{type:"minecraft:bell",item:"minecraft:bell",group:24},"minecraft:big_dripleaf":{type:"minecraft:big_dripleaf",item:"minecraft:big_dripleaf",group:25},"minecraft:black_banner":{type:"minecraft:black_banner",item:"minecraft:black_banner",group:26},"minecraft:blue_banner":{type:"minecraft:blue_banner",item:"minecraft:blue_banner",group:26},"minecraft:brown_banner":{type:"minecraft:brown_banner",item:"minecraft:brown_banner",group:26},"minecraft:cyan_banner":{type:"minecraft:cyan_banner",item:"minecraft:cyan_banner",group:26},"minecraft:gray_banner":{type:"minecraft:gray_banner",item:"minecraft:gray_banner",group:26},"minecraft:green_banner":{type:"minecraft:green_banner",item:"minecraft:green_banner",group:26},"minecraft:light_blue_banner":{type:"minecraft:light_blue_banner",item:"minecraft:light_blue_banner",group:26},"minecraft:light_gray_banner":{type:"minecraft:light_gray_banner",item:"minecraft:light_gray_banner",group:26},"minecraft:lime_banner":{type:"minecraft:lime_banner",item:"minecraft:lime_banner",group:26},"minecraft:magenta_banner":{type:"minecraft:magenta_banner",item:"minecraft:magenta_banner",group:26},"minecraft:orange_banner":{type:"minecraft:orange_banner",item:"minecraft:orange_banner",group:26},"minecraft:pink_banner":{type:"minecraft:pink_banner",item:"minecraft:pink_banner",group:26},"minecraft:purple_banner":{type:"minecraft:purple_banner",item:"minecraft:purple_banner",group:26},"minecraft:red_banner":{type:"minecraft:red_banner",item:"minecraft:red_banner",group:26},"minecraft:white_banner":{type:"minecraft:white_banner",item:"minecraft:white_banner",group:26},"minecraft:yellow_banner":{type:"minecraft:yellow_banner",item:"minecraft:yellow_banner",group:26},"minecraft:black_bed":{type:"minecraft:black_bed",item:"minecraft:black_bed",group:27},"minecraft:blue_bed":{type:"minecraft:blue_bed",item:"minecraft:blue_bed",group:27},"minecraft:brown_bed":{type:"minecraft:brown_bed",item:"minecraft:brown_bed",group:27},"minecraft:cyan_bed":{type:"minecraft:cyan_bed",item:"minecraft:cyan_bed",group:27},"minecraft:gray_bed":{type:"minecraft:gray_bed",item:"minecraft:gray_bed",group:27},"minecraft:green_bed":{type:"minecraft:green_bed",item:"minecraft:green_bed",group:27},"minecraft:light_blue_bed":{type:"minecraft:light_blue_bed",item:"minecraft:light_blue_bed",group:27},"minecraft:light_gray_bed":{type:"minecraft:light_gray_bed",item:"minecraft:light_gray_bed",group:27},"minecraft:lime_bed":{type:"minecraft:lime_bed",item:"minecraft:lime_bed",group:27},"minecraft:magenta_bed":{type:"minecraft:magenta_bed",item:"minecraft:magenta_bed",group:27},"minecraft:orange_bed":{type:"minecraft:orange_bed",item:"minecraft:orange_bed",group:27},"minecraft:pink_bed":{type:"minecraft:pink_bed",item:"minecraft:pink_bed",group:27},"minecraft:purple_bed":{type:"minecraft:purple_bed",item:"minecraft:purple_bed",group:27},"minecraft:red_bed":{type:"minecraft:red_bed",item:"minecraft:red_bed",group:27},"minecraft:white_bed":{type:"minecraft:white_bed",item:"minecraft:white_bed",group:27},"minecraft:yellow_bed":{type:"minecraft:yellow_bed",item:"minecraft:yellow_bed",group:27},"minecraft:black_candle":{type:"minecraft:black_candle",item:"minecraft:black_candle",group:28},"minecraft:blue_candle":{type:"minecraft:blue_candle",item:"minecraft:blue_candle",group:28},"minecraft:brown_candle":{type:"minecraft:brown_candle",item:"minecraft:brown_candle",group:28},"minecraft:candle":{type:"minecraft:candle",item:"minecraft:candle",group:28},"minecraft:cyan_candle":{type:"minecraft:cyan_candle",item:"minecraft:cyan_candle",group:28},"minecraft:gray_candle":{type:"minecraft:gray_candle",item:"minecraft:gray_candle",group:28},"minecraft:green_candle":{type:"minecraft:green_candle",item:"minecraft:green_candle",group:28},"minecraft:light_blue_candle":{type:"minecraft:light_blue_candle",item:"minecraft:light_blue_candle",group:28},"minecraft:light_gray_candle":{type:"minecraft:light_gray_candle",item:"minecraft:light_gray_candle",group:28},"minecraft:lime_candle":{type:"minecraft:lime_candle",item:"minecraft:lime_candle",group:28},"minecraft:magenta_candle":{type:"minecraft:magenta_candle",item:"minecraft:magenta_candle",group:28},"minecraft:orange_candle":{type:"minecraft:orange_candle",item:"minecraft:orange_candle",group:28},"minecraft:pink_candle":{type:"minecraft:pink_candle",item:"minecraft:pink_candle",group:28},"minecraft:purple_candle":{type:"minecraft:purple_candle",item:"minecraft:purple_candle",group:28},"minecraft:red_candle":{type:"minecraft:red_candle",item:"minecraft:red_candle",group:28},"minecraft:white_candle":{type:"minecraft:white_candle",item:"minecraft:white_candle",group:28},"minecraft:yellow_candle":{type:"minecraft:yellow_candle",item:"minecraft:yellow_candle",group:28},"minecraft:black_candle_cake":{type:"minecraft:black_candle_cake",group:29},"minecraft:blue_candle_cake":{type:"minecraft:blue_candle_cake",group:29},"minecraft:brown_candle_cake":{type:"minecraft:brown_candle_cake",group:29},"minecraft:candle_cake":{type:"minecraft:candle_cake",group:29},"minecraft:cyan_candle_cake":{type:"minecraft:cyan_candle_cake",group:29},"minecraft:deepslate_redstone_ore":{type:"minecraft:deepslate_redstone_ore",item:"minecraft:deepslate_redstone_ore",group:29},"minecraft:gray_candle_cake":{type:"minecraft:gray_candle_cake",group:29},"minecraft:green_candle_cake":{type:"minecraft:green_candle_cake",group:29},"minecraft:light_blue_candle_cake":{type:"minecraft:light_blue_candle_cake",group:29},"minecraft:light_gray_candle_cake":{type:"minecraft:light_gray_candle_cake",group:29},"minecraft:lime_candle_cake":{type:"minecraft:lime_candle_cake",group:29},"minecraft:magenta_candle_cake":{type:"minecraft:magenta_candle_cake",group:29},"minecraft:orange_candle_cake":{type:"minecraft:orange_candle_cake",group:29},"minecraft:pink_candle_cake":{type:"minecraft:pink_candle_cake",group:29},"minecraft:purple_candle_cake":{type:"minecraft:purple_candle_cake",group:29},"minecraft:red_candle_cake":{type:"minecraft:red_candle_cake",group:29},"minecraft:redstone_lamp":{type:"minecraft:redstone_lamp",item:"minecraft:redstone_lamp",group:29},"minecraft:redstone_ore":{type:"minecraft:redstone_ore",item:"minecraft:redstone_ore",group:29},"minecraft:white_candle_cake":{type:"minecraft:white_candle_cake",group:29},"minecraft:yellow_candle_cake":{type:"minecraft:yellow_candle_cake",group:29},"minecraft:black_shulker_box":{type:"minecraft:black_shulker_box",item:"minecraft:black_shulker_box",group:30},"minecraft:blue_shulker_box":{type:"minecraft:blue_shulker_box",item:"minecraft:blue_shulker_box",group:30},"minecraft:brown_shulker_box":{type:"minecraft:brown_shulker_box",item:"minecraft:brown_shulker_box",group:30},"minecraft:cyan_shulker_box":{type:"minecraft:cyan_shulker_box",item:"minecraft:cyan_shulker_box",group:30},"minecraft:end_rod":{type:"minecraft:end_rod",item:"minecraft:end_rod",group:30},"minecraft:gray_shulker_box":{type:"minecraft:gray_shulker_box",item:"minecraft:gray_shulker_box",group:30},"minecraft:green_shulker_box":{type:"minecraft:green_shulker_box",item:"minecraft:green_shulker_box",group:30},"minecraft:light_blue_shulker_box":{type:"minecraft:light_blue_shulker_box",item:"minecraft:light_blue_shulker_box",group:30},"minecraft:light_gray_shulker_box":{type:"minecraft:light_gray_shulker_box",item:"minecraft:light_gray_shulker_box",group:30},"minecraft:lime_shulker_box":{type:"minecraft:lime_shulker_box",item:"minecraft:lime_shulker_box",group:30},"minecraft:magenta_shulker_box":{type:"minecraft:magenta_shulker_box",item:"minecraft:magenta_shulker_box",group:30},"minecraft:orange_shulker_box":{type:"minecraft:orange_shulker_box",item:"minecraft:orange_shulker_box",group:30},"minecraft:pink_shulker_box":{type:"minecraft:pink_shulker_box",item:"minecraft:pink_shulker_box",group:30},"minecraft:purple_shulker_box":{type:"minecraft:purple_shulker_box",item:"minecraft:purple_shulker_box",group:30},"minecraft:red_shulker_box":{type:"minecraft:red_shulker_box",item:"minecraft:red_shulker_box",group:30},"minecraft:shulker_box":{type:"minecraft:shulker_box",item:"minecraft:shulker_box",group:30},"minecraft:white_shulker_box":{type:"minecraft:white_shulker_box",item:"minecraft:white_shulker_box",group:30},"minecraft:yellow_shulker_box":{type:"minecraft:yellow_shulker_box",item:"minecraft:yellow_shulker_box",group:30},"minecraft:blast_furnace":{type:"minecraft:blast_furnace",item:"minecraft:blast_furnace",group:31},"minecraft:furnace":{type:"minecraft:furnace",item:"minecraft:furnace",group:31},"minecraft:smoker":{type:"minecraft:smoker",item:"minecraft:smoker",group:31},"minecraft:brain_coral":{type:"minecraft:brain_coral",item:"minecraft:brain_coral",group:32},"minecraft:brain_coral_fan":{type:"minecraft:brain_coral_fan",item:"minecraft:brain_coral_fan",group:32},"minecraft:bubble_coral":{type:"minecraft:bubble_coral",item:"minecraft:bubble_coral",group:32},"minecraft:bubble_coral_fan":{type:"minecraft:bubble_coral_fan",item:"minecraft:bubble_coral_fan",group:32},"minecraft:conduit":{type:"minecraft:conduit",item:"minecraft:conduit",group:32},"minecraft:dead_brain_coral":{type:"minecraft:dead_brain_coral",item:"minecraft:dead_brain_coral",group:32},"minecraft:dead_brain_coral_fan":{type:"minecraft:dead_brain_coral_fan",item:"minecraft:dead_brain_coral_fan",group:32},"minecraft:dead_bubble_coral":{type:"minecraft:dead_bubble_coral",item:"minecraft:dead_bubble_coral",group:32},"minecraft:dead_bubble_coral_fan":{type:"minecraft:dead_bubble_coral_fan",item:"minecraft:dead_bubble_coral_fan",group:32},"minecraft:dead_fire_coral":{type:"minecraft:dead_fire_coral",item:"minecraft:dead_fire_coral",group:32},"minecraft:dead_fire_coral_fan":{type:"minecraft:dead_fire_coral_fan",item:"minecraft:dead_fire_coral_fan",group:32},"minecraft:dead_horn_coral":{type:"minecraft:dead_horn_coral",item:"minecraft:dead_horn_coral",group:32},"minecraft:dead_horn_coral_fan":{type:"minecraft:dead_horn_coral_fan",item:"minecraft:dead_horn_coral_fan",group:32},"minecraft:dead_tube_coral":{type:"minecraft:dead_tube_coral",item:"minecraft:dead_tube_coral",group:32},"minecraft:dead_tube_coral_fan":{type:"minecraft:dead_tube_coral_fan",item:"minecraft:dead_tube_coral_fan",group:32},"minecraft:fire_coral":{type:"minecraft:fire_coral",item:"minecraft:fire_coral",group:32},"minecraft:fire_coral_fan":{type:"minecraft:fire_coral_fan",item:"minecraft:fire_coral_fan",group:32},"minecraft:horn_coral":{type:"minecraft:horn_coral",item:"minecraft:horn_coral",group:32},"minecraft:horn_coral_fan":{type:"minecraft:horn_coral_fan",item:"minecraft:horn_coral_fan",group:32},"minecraft:tube_coral":{type:"minecraft:tube_coral",item:"minecraft:tube_coral",group:32},"minecraft:tube_coral_fan":{type:"minecraft:tube_coral_fan",item:"minecraft:tube_coral_fan",group:32},"minecraft:brain_coral_wall_fan":{type:"minecraft:brain_coral_wall_fan",item:"minecraft:brain_coral_fan",group:33},"minecraft:bubble_coral_wall_fan":{type:"minecraft:bubble_coral_wall_fan",item:"minecraft:bubble_coral_fan",group:33},"minecraft:dead_brain_coral_wall_fan":{type:"minecraft:dead_brain_coral_wall_fan",item:"minecraft:dead_brain_coral_fan",group:33},"minecraft:dead_bubble_coral_wall_fan":{type:"minecraft:dead_bubble_coral_wall_fan",item:"minecraft:dead_bubble_coral_fan",group:33},"minecraft:dead_fire_coral_wall_fan":{type:"minecraft:dead_fire_coral_wall_fan",item:"minecraft:dead_fire_coral_fan",group:33},"minecraft:dead_horn_coral_wall_fan":{type:"minecraft:dead_horn_coral_wall_fan",item:"minecraft:dead_horn_coral_fan",group:33},"minecraft:dead_tube_coral_wall_fan":{type:"minecraft:dead_tube_coral_wall_fan",item:"minecraft:dead_tube_coral_fan",group:33},"minecraft:fire_coral_wall_fan":{type:"minecraft:fire_coral_wall_fan",item:"minecraft:fire_coral_fan",group:33},"minecraft:horn_coral_wall_fan":{type:"minecraft:horn_coral_wall_fan",item:"minecraft:horn_coral_fan",group:33},"minecraft:tube_coral_wall_fan":{type:"minecraft:tube_coral_wall_fan",item:"minecraft:tube_coral_fan",group:33},"minecraft:brewing_stand":{type:"minecraft:brewing_stand",item:"minecraft:brewing_stand",group:34},"minecraft:brown_mushroom_block":{type:"minecraft:brown_mushroom_block",item:"minecraft:brown_mushroom_block",group:35},"minecraft:mushroom_stem":{type:"minecraft:mushroom_stem",item:"minecraft:mushroom_stem",group:35},"minecraft:red_mushroom_block":{type:"minecraft:red_mushroom_block",item:"minecraft:red_mushroom_block",group:35},"minecraft:bubble_column":{type:"minecraft:bubble_column",group:36},"minecraft:cactus":{type:"minecraft:cactus",item:"minecraft:cactus",group:37},"minecraft:sugar_cane":{type:"minecraft:sugar_cane",item:"minecraft:sugar_cane",group:37},"minecraft:cake":{type:"minecraft:cake",item:"minecraft:cake",group:38},"minecraft:calibrated_sculk_sensor":{type:"minecraft:calibrated_sculk_sensor",item:"minecraft:calibrated_sculk_sensor",group:39},"minecraft:campfire":{type:"minecraft:campfire",item:"minecraft:campfire",group:40},"minecraft:soul_campfire":{type:"minecraft:soul_campfire",item:"minecraft:soul_campfire",group:40},"minecraft:carrots":{type:"minecraft:carrots",item:"minecraft:carrot",group:41},"minecraft:melon_stem":{type:"minecraft:melon_stem",item:"minecraft:pumpkin_seeds",group:41},"minecraft:potatoes":{type:"minecraft:potatoes",item:"minecraft:potato",group:41},"minecraft:pumpkin_stem":{type:"minecraft:pumpkin_stem",item:"minecraft:pumpkin_seeds",group:41},"minecraft:wheat":{type:"minecraft:wheat",item:"minecraft:wheat_seeds",group:41},"minecraft:cave_vines":{type:"minecraft:cave_vines",item:"minecraft:glow_berries",group:42},"minecraft:cave_vines_plant":{type:"minecraft:cave_vines_plant",item:"minecraft:glow_berries",group:43},"minecraft:chain":{type:"minecraft:chain",item:"minecraft:chain",group:44},"minecraft:chain_command_block":{type:"minecraft:chain_command_block",item:"minecraft:chain_command_block",group:45},"minecraft:command_block":{type:"minecraft:command_block",item:"minecraft:command_block",group:45},"minecraft:repeating_command_block":{type:"minecraft:repeating_command_block",item:"minecraft:repeating_command_block",group:45},"minecraft:chest":{type:"minecraft:chest",item:"minecraft:chest",group:46},"minecraft:trapped_chest":{type:"minecraft:trapped_chest",item:"minecraft:trapped_chest",group:46},"minecraft:chiseled_bookshelf":{type:"minecraft:chiseled_bookshelf",item:"minecraft:chiseled_bookshelf",group:47},"minecraft:chorus_flower":{type:"minecraft:chorus_flower",item:"minecraft:chorus_flower",group:48},"minecraft:chorus_plant":{type:"minecraft:chorus_plant",item:"minecraft:chorus_plant",group:49},"minecraft:cocoa":{type:"minecraft:cocoa",item:"minecraft:cocoa_beans",group:50},"minecraft:comparator":{type:"minecraft:comparator",item:"minecraft:comparator",group:51},"minecraft:composter":{type:"minecraft:composter",item:"minecraft:composter",group:52},"minecraft:copper_bulb":{type:"minecraft:copper_bulb",item:"minecraft:copper_bulb",group:53},"minecraft:exposed_copper_bulb":{type:"minecraft:exposed_copper_bulb",item:"minecraft:exposed_copper_bulb",group:53},"minecraft:oxidized_copper_bulb":{type:"minecraft:oxidized_copper_bulb",item:"minecraft:oxidized_copper_bulb",group:53},"minecraft:waxed_copper_bulb":{type:"minecraft:waxed_copper_bulb",item:"minecraft:waxed_copper_bulb",group:53},"minecraft:waxed_exposed_copper_bulb":{type:"minecraft:waxed_exposed_copper_bulb",item:"minecraft:waxed_exposed_copper_bulb",group:53},"minecraft:waxed_oxidized_copper_bulb":{type:"minecraft:waxed_oxidized_copper_bulb",item:"minecraft:waxed_oxidized_copper_bulb",group:53},"minecraft:waxed_weathered_copper_bulb":{type:"minecraft:waxed_weathered_copper_bulb",item:"minecraft:waxed_weathered_copper_bulb",group:53},"minecraft:weathered_copper_bulb":{type:"minecraft:weathered_copper_bulb",item:"minecraft:weathered_copper_bulb",group:53},"minecraft:crafter":{type:"minecraft:crafter",item:"minecraft:crafter",group:54},"minecraft:creeper_head":{type:"minecraft:creeper_head",item:"minecraft:creeper_head",group:55},"minecraft:dragon_head":{type:"minecraft:dragon_head",item:"minecraft:dragon_head",group:55},"minecraft:piglin_head":{type:"minecraft:piglin_head",item:"minecraft:piglin_head",group:55},"minecraft:player_head":{type:"minecraft:player_head",item:"minecraft:player_head",group:55},"minecraft:skeleton_skull":{type:"minecraft:skeleton_skull",item:"minecraft:skeleton_skull",group:55},"minecraft:wither_skeleton_skull":{type:"minecraft:wither_skeleton_skull",item:"minecraft:wither_skeleton_skull",group:55},"minecraft:zombie_head":{type:"minecraft:zombie_head",item:"minecraft:zombie_head",group:55},"minecraft:creeper_wall_head":{type:"minecraft:creeper_wall_head",item:"minecraft:creeper_head",group:56},"minecraft:dragon_wall_head":{type:"minecraft:dragon_wall_head",item:"minecraft:dragon_head",group:56},"minecraft:piglin_wall_head":{type:"minecraft:piglin_wall_head",item:"minecraft:piglin_head",group:56},"minecraft:player_wall_head":{type:"minecraft:player_wall_head",item:"minecraft:player_head",group:56},"minecraft:skeleton_wall_skull":{type:"minecraft:skeleton_wall_skull",item:"minecraft:skeleton_skull",group:56},"minecraft:wither_skeleton_wall_skull":{type:"minecraft:wither_skeleton_wall_skull",item:"minecraft:wither_skeleton_skull",group:56},"minecraft:zombie_wall_head":{type:"minecraft:zombie_wall_head",item:"minecraft:zombie_head",group:56},"minecraft:daylight_detector":{type:"minecraft:daylight_detector",item:"minecraft:daylight_detector",group:57},"minecraft:decorated_pot":{type:"minecraft:decorated_pot",item:"minecraft:decorated_pot",group:58},"minecraft:dispenser":{type:"minecraft:dispenser",item:"minecraft:dispenser",group:59},"minecraft:dropper":{type:"minecraft:dropper",item:"minecraft:dropper",group:59},"minecraft:end_portal_frame":{type:"minecraft:end_portal_frame",item:"minecraft:end_portal_frame",group:60},"minecraft:farmland":{type:"minecraft:farmland",item:"minecraft:farmland",group:61},"minecraft:fire":{type:"minecraft:fire",group:62},"minecraft:glow_lichen":{type:"minecraft:glow_lichen",item:"minecraft:glow_lichen",group:63},"minecraft:sculk_vein":{type:"minecraft:sculk_vein",item:"minecraft:sculk_vein",group:63},"minecraft:grass_block":{type:"minecraft:grass_block",item:"minecraft:grass_block",group:64},"minecraft:mycelium":{type:"minecraft:mycelium",item:"minecraft:mycelium",group:64},"minecraft:podzol":{type:"minecraft:podzol",item:"minecraft:podzol",group:64},"minecraft:grindstone":{type:"minecraft:grindstone",item:"minecraft:grindstone",group:65},"minecraft:heavy_weighted_pressure_plate":{type:"minecraft:heavy_weighted_pressure_plate",item:"minecraft:heavy_weighted_pressure_plate",group:66},"minecraft:light_weighted_pressure_plate":{type:"minecraft:light_weighted_pressure_plate",item:"minecraft:light_weighted_pressure_plate",group:66},"minecraft:target":{type:"minecraft:target",item:"minecraft:target",group:66},"minecraft:hopper":{type:"minecraft:hopper",item:"minecraft:hopper",group:67},"minecraft:jigsaw":{type:"minecraft:jigsaw",item:"minecraft:jigsaw",group:68},"minecraft:jukebox":{type:"minecraft:jukebox",item:"minecraft:jukebox",group:69},"minecraft:kelp":{type:"minecraft:kelp",item:"minecraft:kelp",group:70},"minecraft:twisting_vines":{type:"minecraft:twisting_vines",item:"minecraft:twisting_vines",group:70},"minecraft:weeping_vines":{type:"minecraft:weeping_vines",item:"minecraft:weeping_vines",group:70},"minecraft:lantern":{type:"minecraft:lantern",item:"minecraft:lantern",group:71},"minecraft:soul_lantern":{type:"minecraft:soul_lantern",item:"minecraft:soul_lantern",group:71},"minecraft:large_fern":{type:"minecraft:large_fern",item:"minecraft:large_fern",group:72},"minecraft:lilac":{type:"minecraft:lilac",item:"minecraft:lilac",group:72},"minecraft:peony":{type:"minecraft:peony",item:"minecraft:peony",group:72},"minecraft:pitcher_plant":{type:"minecraft:pitcher_plant",item:"minecraft:pitcher_plant",group:72},"minecraft:rose_bush":{type:"minecraft:rose_bush",item:"minecraft:rose_bush",group:72},"minecraft:sunflower":{type:"minecraft:sunflower",item:"minecraft:sunflower",group:72},"minecraft:tall_grass":{type:"minecraft:tall_grass",item:"minecraft:tall_grass",group:72},"minecraft:tall_seagrass":{type:"minecraft:tall_seagrass",group:72},"minecraft:lava":{type:"minecraft:lava",item:"minecraft:lava_bucket",group:73},"minecraft:water":{type:"minecraft:water",item:"minecraft:water_bucket",group:73},"minecraft:lectern":{type:"minecraft:lectern",item:"minecraft:lectern",group:74},"minecraft:light":{type:"minecraft:light",item:"minecraft:light",group:75},"minecraft:lightning_rod":{type:"minecraft:lightning_rod",item:"minecraft:lightning_rod",group:76},"minecraft:mangrove_propagule":{type:"minecraft:mangrove_propagule",item:"minecraft:mangrove_propagule",group:77},"minecraft:moving_piston":{type:"minecraft:moving_piston",group:78},"minecraft:nether_portal":{type:"minecraft:nether_portal",group:79},"minecraft:note_block":{type:"minecraft:note_block",item:"minecraft:note_block",group:80},"minecraft:observer":{type:"minecraft:observer",item:"minecraft:observer",group:81},"minecraft:pink_petals":{type:"minecraft:pink_petals",item:"minecraft:pink_petals",group:82},"minecraft:piston":{type:"minecraft:piston",item:"minecraft:piston",group:83},"minecraft:sticky_piston":{type:"minecraft:sticky_piston",item:"minecraft:sticky_piston",group:83},"minecraft:piston_head":{type:"minecraft:piston_head",group:84},"minecraft:pitcher_crop":{type:"minecraft:pitcher_crop",item:"minecraft:pitcher_pod",group:85},"minecraft:pointed_dripstone":{type:"minecraft:pointed_dripstone",item:"minecraft:pointed_dripstone",group:86},"minecraft:powder_snow_cauldron":{type:"minecraft:powder_snow_cauldron",item:"minecraft:cauldron",group:87},"minecraft:water_cauldron":{type:"minecraft:water_cauldron",item:"minecraft:cauldron",group:87},"minecraft:rail":{type:"minecraft:rail",item:"minecraft:rail",group:88},"minecraft:redstone_torch":{type:"minecraft:redstone_torch",item:"minecraft:redstone_torch",group:89},"minecraft:redstone_wall_torch":{type:"minecraft:redstone_wall_torch",item:"minecraft:redstone_torch",group:90},"minecraft:redstone_wire":{type:"minecraft:redstone_wire",item:"minecraft:redstone",group:91},"minecraft:repeater":{type:"minecraft:repeater",item:"minecraft:repeater",group:92},"minecraft:respawn_anchor":{type:"minecraft:respawn_anchor",item:"minecraft:respawn_anchor",group:93},"minecraft:scaffolding":{type:"minecraft:scaffolding",item:"minecraft:scaffolding",group:94},"minecraft:sculk_catalyst":{type:"minecraft:sculk_catalyst",item:"minecraft:sculk_catalyst",group:95},"minecraft:sculk_sensor":{type:"minecraft:sculk_sensor",item:"minecraft:sculk_sensor",group:96},"minecraft:sculk_shrieker":{type:"minecraft:sculk_shrieker",item:"minecraft:sculk_shrieker",group:97},"minecraft:sea_pickle":{type:"minecraft:sea_pickle",item:"minecraft:sea_pickle",group:98},"minecraft:small_dripleaf":{type:"minecraft:small_dripleaf",item:"minecraft:small_dripleaf",group:99},"minecraft:sniffer_egg":{type:"minecraft:sniffer_egg",item:"minecraft:sniffer_egg",group:100},"minecraft:snow":{type:"minecraft:snow",item:"minecraft:snow",group:101},"minecraft:structure_block":{type:"minecraft:structure_block",item:"minecraft:structure_block",group:102},"minecraft:suspicious_gravel":{type:"minecraft:suspicious_gravel",item:"minecraft:suspicious_gravel",group:103},"minecraft:suspicious_sand":{type:"minecraft:suspicious_sand",item:"minecraft:suspicious_sand",group:103},"minecraft:tnt":{type:"minecraft:tnt",item:"minecraft:tnt",group:104},"minecraft:torchflower_crop":{type:"minecraft:torchflower_crop",item:"minecraft:torchflower_seeds",group:105},"minecraft:trial_spawner":{type:"minecraft:trial_spawner",item:"minecraft:trial_spawner",group:106},"minecraft:tripwire":{type:"minecraft:tripwire",item:"minecraft:string",group:107},"minecraft:tripwire_hook":{type:"minecraft:tripwire_hook",item:"minecraft:tripwire_hook",group:108},"minecraft:turtle_egg":{type:"minecraft:turtle_egg",item:"minecraft:turtle_egg",group:109},"minecraft:vault":{type:"minecraft:vault",item:"minecraft:vault",group:110},"minecraft:vine":{type:"minecraft:vine",item:"minecraft:vine",group:111}} +data modify storage bs:const block.types set value {"minecraft:acacia_planks":{type:"minecraft:acacia_planks",item:"minecraft:acacia_planks",group:0},"minecraft:air":{type:"minecraft:air",item:"minecraft:air",group:0},"minecraft:allium":{type:"minecraft:allium",item:"minecraft:allium",group:0},"minecraft:amethyst_block":{type:"minecraft:amethyst_block",item:"minecraft:amethyst_block",group:0},"minecraft:ancient_debris":{type:"minecraft:ancient_debris",item:"minecraft:ancient_debris",group:0},"minecraft:andesite":{type:"minecraft:andesite",item:"minecraft:andesite",group:0},"minecraft:azalea":{type:"minecraft:azalea",item:"minecraft:azalea",group:0},"minecraft:azure_bluet":{type:"minecraft:azure_bluet",item:"minecraft:azure_bluet",group:0},"minecraft:bamboo_mosaic":{type:"minecraft:bamboo_mosaic",item:"minecraft:bamboo_mosaic",group:0},"minecraft:bamboo_planks":{type:"minecraft:bamboo_planks",item:"minecraft:bamboo_planks",group:0},"minecraft:bamboo_sapling":{type:"minecraft:bamboo_sapling",group:0},"minecraft:beacon":{type:"minecraft:beacon",item:"minecraft:beacon",group:0},"minecraft:bedrock":{type:"minecraft:bedrock",item:"minecraft:bedrock",group:0},"minecraft:birch_planks":{type:"minecraft:birch_planks",item:"minecraft:birch_planks",group:0},"minecraft:black_carpet":{type:"minecraft:black_carpet",item:"minecraft:black_carpet",group:0},"minecraft:black_concrete":{type:"minecraft:black_concrete",item:"minecraft:black_concrete",group:0},"minecraft:black_concrete_powder":{type:"minecraft:black_concrete_powder",item:"minecraft:black_concrete_powder",group:0},"minecraft:black_stained_glass":{type:"minecraft:black_stained_glass",item:"minecraft:black_stained_glass",group:0},"minecraft:black_terracotta":{type:"minecraft:black_terracotta",item:"minecraft:black_terracotta",group:0},"minecraft:black_wool":{type:"minecraft:black_wool",item:"minecraft:black_wool",group:0},"minecraft:blackstone":{type:"minecraft:blackstone",item:"minecraft:blackstone",group:0},"minecraft:blue_carpet":{type:"minecraft:blue_carpet",item:"minecraft:blue_carpet",group:0},"minecraft:blue_concrete":{type:"minecraft:blue_concrete",item:"minecraft:blue_concrete",group:0},"minecraft:blue_concrete_powder":{type:"minecraft:blue_concrete_powder",item:"minecraft:blue_concrete_powder",group:0},"minecraft:blue_ice":{type:"minecraft:blue_ice",item:"minecraft:blue_ice",group:0},"minecraft:blue_orchid":{type:"minecraft:blue_orchid",item:"minecraft:blue_orchid",group:0},"minecraft:blue_stained_glass":{type:"minecraft:blue_stained_glass",item:"minecraft:blue_stained_glass",group:0},"minecraft:blue_terracotta":{type:"minecraft:blue_terracotta",item:"minecraft:blue_terracotta",group:0},"minecraft:blue_wool":{type:"minecraft:blue_wool",item:"minecraft:blue_wool",group:0},"minecraft:bookshelf":{type:"minecraft:bookshelf",item:"minecraft:bookshelf",group:0},"minecraft:brain_coral_block":{type:"minecraft:brain_coral_block",item:"minecraft:brain_coral_block",group:0},"minecraft:bricks":{type:"minecraft:bricks",item:"minecraft:bricks",group:0},"minecraft:brown_carpet":{type:"minecraft:brown_carpet",item:"minecraft:brown_carpet",group:0},"minecraft:brown_concrete":{type:"minecraft:brown_concrete",item:"minecraft:brown_concrete",group:0},"minecraft:brown_concrete_powder":{type:"minecraft:brown_concrete_powder",item:"minecraft:brown_concrete_powder",group:0},"minecraft:brown_mushroom":{type:"minecraft:brown_mushroom",item:"minecraft:brown_mushroom",group:0},"minecraft:brown_stained_glass":{type:"minecraft:brown_stained_glass",item:"minecraft:brown_stained_glass",group:0},"minecraft:brown_terracotta":{type:"minecraft:brown_terracotta",item:"minecraft:brown_terracotta",group:0},"minecraft:brown_wool":{type:"minecraft:brown_wool",item:"minecraft:brown_wool",group:0},"minecraft:bubble_coral_block":{type:"minecraft:bubble_coral_block",item:"minecraft:bubble_coral_block",group:0},"minecraft:budding_amethyst":{type:"minecraft:budding_amethyst",item:"minecraft:budding_amethyst",group:0},"minecraft:calcite":{type:"minecraft:calcite",item:"minecraft:calcite",group:0},"minecraft:cartography_table":{type:"minecraft:cartography_table",item:"minecraft:cartography_table",group:0},"minecraft:cauldron":{type:"minecraft:cauldron",item:"minecraft:cauldron",group:0},"minecraft:cave_air":{type:"minecraft:cave_air",group:0},"minecraft:cherry_planks":{type:"minecraft:cherry_planks",item:"minecraft:cherry_planks",group:0},"minecraft:chiseled_copper":{type:"minecraft:chiseled_copper",item:"minecraft:chiseled_copper",group:0},"minecraft:chiseled_deepslate":{type:"minecraft:chiseled_deepslate",item:"minecraft:chiseled_deepslate",group:0},"minecraft:chiseled_nether_bricks":{type:"minecraft:chiseled_nether_bricks",item:"minecraft:chiseled_nether_bricks",group:0},"minecraft:chiseled_polished_blackstone":{type:"minecraft:chiseled_polished_blackstone",item:"minecraft:chiseled_polished_blackstone",group:0},"minecraft:chiseled_quartz_block":{type:"minecraft:chiseled_quartz_block",item:"minecraft:chiseled_quartz_block",group:0},"minecraft:chiseled_red_sandstone":{type:"minecraft:chiseled_red_sandstone",item:"minecraft:chiseled_red_sandstone",group:0},"minecraft:chiseled_sandstone":{type:"minecraft:chiseled_sandstone",item:"minecraft:chiseled_sandstone",group:0},"minecraft:chiseled_stone_bricks":{type:"minecraft:chiseled_stone_bricks",item:"minecraft:chiseled_stone_bricks",group:0},"minecraft:chiseled_tuff":{type:"minecraft:chiseled_tuff",item:"minecraft:chiseled_tuff",group:0},"minecraft:chiseled_tuff_bricks":{type:"minecraft:chiseled_tuff_bricks",item:"minecraft:chiseled_tuff_bricks",group:0},"minecraft:clay":{type:"minecraft:clay",item:"minecraft:clay",group:0},"minecraft:coal_block":{type:"minecraft:coal_block",item:"minecraft:coal_block",group:0},"minecraft:coal_ore":{type:"minecraft:coal_ore",item:"minecraft:coal_ore",group:0},"minecraft:coarse_dirt":{type:"minecraft:coarse_dirt",item:"minecraft:coarse_dirt",group:0},"minecraft:cobbled_deepslate":{type:"minecraft:cobbled_deepslate",item:"minecraft:cobbled_deepslate",group:0},"minecraft:cobblestone":{type:"minecraft:cobblestone",item:"minecraft:cobblestone",group:0},"minecraft:cobweb":{type:"minecraft:cobweb",item:"minecraft:cobweb",group:0},"minecraft:copper_block":{type:"minecraft:copper_block",item:"minecraft:copper_block",group:0},"minecraft:copper_ore":{type:"minecraft:copper_ore",item:"minecraft:copper_ore",group:0},"minecraft:cornflower":{type:"minecraft:cornflower",item:"minecraft:cornflower",group:0},"minecraft:cracked_deepslate_bricks":{type:"minecraft:cracked_deepslate_bricks",item:"minecraft:cracked_deepslate_bricks",group:0},"minecraft:cracked_deepslate_tiles":{type:"minecraft:cracked_deepslate_tiles",item:"minecraft:cracked_deepslate_tiles",group:0},"minecraft:cracked_nether_bricks":{type:"minecraft:cracked_nether_bricks",item:"minecraft:cracked_nether_bricks",group:0},"minecraft:cracked_polished_blackstone_bricks":{type:"minecraft:cracked_polished_blackstone_bricks",item:"minecraft:cracked_polished_blackstone_bricks",group:0},"minecraft:cracked_stone_bricks":{type:"minecraft:cracked_stone_bricks",item:"minecraft:cracked_stone_bricks",group:0},"minecraft:crafting_table":{type:"minecraft:crafting_table",item:"minecraft:crafting_table",group:0},"minecraft:crimson_fungus":{type:"minecraft:crimson_fungus",item:"minecraft:crimson_fungus",group:0},"minecraft:crimson_nylium":{type:"minecraft:crimson_nylium",item:"minecraft:crimson_nylium",group:0},"minecraft:crimson_planks":{type:"minecraft:crimson_planks",item:"minecraft:crimson_planks",group:0},"minecraft:crimson_roots":{type:"minecraft:crimson_roots",item:"minecraft:crimson_roots",group:0},"minecraft:crying_obsidian":{type:"minecraft:crying_obsidian",item:"minecraft:crying_obsidian",group:0},"minecraft:cut_copper":{type:"minecraft:cut_copper",item:"minecraft:cut_copper",group:0},"minecraft:cut_red_sandstone":{type:"minecraft:cut_red_sandstone",item:"minecraft:cut_red_sandstone",group:0},"minecraft:cut_sandstone":{type:"minecraft:cut_sandstone",item:"minecraft:cut_sandstone",group:0},"minecraft:cyan_carpet":{type:"minecraft:cyan_carpet",item:"minecraft:cyan_carpet",group:0},"minecraft:cyan_concrete":{type:"minecraft:cyan_concrete",item:"minecraft:cyan_concrete",group:0},"minecraft:cyan_concrete_powder":{type:"minecraft:cyan_concrete_powder",item:"minecraft:cyan_concrete_powder",group:0},"minecraft:cyan_stained_glass":{type:"minecraft:cyan_stained_glass",item:"minecraft:cyan_stained_glass",group:0},"minecraft:cyan_terracotta":{type:"minecraft:cyan_terracotta",item:"minecraft:cyan_terracotta",group:0},"minecraft:cyan_wool":{type:"minecraft:cyan_wool",item:"minecraft:cyan_wool",group:0},"minecraft:dandelion":{type:"minecraft:dandelion",item:"minecraft:dandelion",group:0},"minecraft:dark_oak_planks":{type:"minecraft:dark_oak_planks",item:"minecraft:dark_oak_planks",group:0},"minecraft:dark_prismarine":{type:"minecraft:dark_prismarine",item:"minecraft:dark_prismarine",group:0},"minecraft:dead_brain_coral_block":{type:"minecraft:dead_brain_coral_block",item:"minecraft:dead_brain_coral_block",group:0},"minecraft:dead_bubble_coral_block":{type:"minecraft:dead_bubble_coral_block",item:"minecraft:dead_bubble_coral_block",group:0},"minecraft:dead_bush":{type:"minecraft:dead_bush",item:"minecraft:dead_bush",group:0},"minecraft:dead_fire_coral_block":{type:"minecraft:dead_fire_coral_block",item:"minecraft:dead_fire_coral_block",group:0},"minecraft:dead_horn_coral_block":{type:"minecraft:dead_horn_coral_block",item:"minecraft:dead_horn_coral_block",group:0},"minecraft:dead_tube_coral_block":{type:"minecraft:dead_tube_coral_block",item:"minecraft:dead_tube_coral_block",group:0},"minecraft:deepslate_bricks":{type:"minecraft:deepslate_bricks",item:"minecraft:deepslate_bricks",group:0},"minecraft:deepslate_coal_ore":{type:"minecraft:deepslate_coal_ore",item:"minecraft:deepslate_coal_ore",group:0},"minecraft:deepslate_copper_ore":{type:"minecraft:deepslate_copper_ore",item:"minecraft:deepslate_copper_ore",group:0},"minecraft:deepslate_diamond_ore":{type:"minecraft:deepslate_diamond_ore",item:"minecraft:deepslate_diamond_ore",group:0},"minecraft:deepslate_emerald_ore":{type:"minecraft:deepslate_emerald_ore",item:"minecraft:deepslate_emerald_ore",group:0},"minecraft:deepslate_gold_ore":{type:"minecraft:deepslate_gold_ore",item:"minecraft:deepslate_gold_ore",group:0},"minecraft:deepslate_iron_ore":{type:"minecraft:deepslate_iron_ore",item:"minecraft:deepslate_iron_ore",group:0},"minecraft:deepslate_lapis_ore":{type:"minecraft:deepslate_lapis_ore",item:"minecraft:deepslate_lapis_ore",group:0},"minecraft:deepslate_tiles":{type:"minecraft:deepslate_tiles",item:"minecraft:deepslate_tiles",group:0},"minecraft:diamond_block":{type:"minecraft:diamond_block",item:"minecraft:diamond_block",group:0},"minecraft:diamond_ore":{type:"minecraft:diamond_ore",item:"minecraft:diamond_ore",group:0},"minecraft:diorite":{type:"minecraft:diorite",item:"minecraft:diorite",group:0},"minecraft:dirt":{type:"minecraft:dirt",item:"minecraft:dirt",group:0},"minecraft:dirt_path":{type:"minecraft:dirt_path",item:"minecraft:dirt_path",group:0},"minecraft:dragon_egg":{type:"minecraft:dragon_egg",item:"minecraft:dragon_egg",group:0},"minecraft:dried_kelp_block":{type:"minecraft:dried_kelp_block",item:"minecraft:dried_kelp_block",group:0},"minecraft:dripstone_block":{type:"minecraft:dripstone_block",item:"minecraft:dripstone_block",group:0},"minecraft:emerald_block":{type:"minecraft:emerald_block",item:"minecraft:emerald_block",group:0},"minecraft:emerald_ore":{type:"minecraft:emerald_ore",item:"minecraft:emerald_ore",group:0},"minecraft:enchanting_table":{type:"minecraft:enchanting_table",item:"minecraft:enchanting_table",group:0},"minecraft:end_gateway":{type:"minecraft:end_gateway",group:0},"minecraft:end_portal":{type:"minecraft:end_portal",group:0},"minecraft:end_stone":{type:"minecraft:end_stone",item:"minecraft:end_stone",group:0},"minecraft:end_stone_bricks":{type:"minecraft:end_stone_bricks",item:"minecraft:end_stone_bricks",group:0},"minecraft:exposed_chiseled_copper":{type:"minecraft:exposed_chiseled_copper",item:"minecraft:exposed_chiseled_copper",group:0},"minecraft:exposed_copper":{type:"minecraft:exposed_copper",item:"minecraft:exposed_copper",group:0},"minecraft:exposed_cut_copper":{type:"minecraft:exposed_cut_copper",item:"minecraft:exposed_cut_copper",group:0},"minecraft:fern":{type:"minecraft:fern",item:"minecraft:fern",group:0},"minecraft:fire_coral_block":{type:"minecraft:fire_coral_block",item:"minecraft:fire_coral_block",group:0},"minecraft:fletching_table":{type:"minecraft:fletching_table",item:"minecraft:fletching_table",group:0},"minecraft:flower_pot":{type:"minecraft:flower_pot",item:"minecraft:flower_pot",group:0},"minecraft:flowering_azalea":{type:"minecraft:flowering_azalea",item:"minecraft:flowering_azalea",group:0},"minecraft:frogspawn":{type:"minecraft:frogspawn",item:"minecraft:frogspawn",group:0},"minecraft:gilded_blackstone":{type:"minecraft:gilded_blackstone",item:"minecraft:gilded_blackstone",group:0},"minecraft:glass":{type:"minecraft:glass",item:"minecraft:glass",group:0},"minecraft:glowstone":{type:"minecraft:glowstone",item:"minecraft:glowstone",group:0},"minecraft:gold_block":{type:"minecraft:gold_block",item:"minecraft:gold_block",group:0},"minecraft:gold_ore":{type:"minecraft:gold_ore",item:"minecraft:gold_ore",group:0},"minecraft:granite":{type:"minecraft:granite",item:"minecraft:granite",group:0},"minecraft:gravel":{type:"minecraft:gravel",item:"minecraft:gravel",group:0},"minecraft:gray_carpet":{type:"minecraft:gray_carpet",item:"minecraft:gray_carpet",group:0},"minecraft:gray_concrete":{type:"minecraft:gray_concrete",item:"minecraft:gray_concrete",group:0},"minecraft:gray_concrete_powder":{type:"minecraft:gray_concrete_powder",item:"minecraft:gray_concrete_powder",group:0},"minecraft:gray_stained_glass":{type:"minecraft:gray_stained_glass",item:"minecraft:gray_stained_glass",group:0},"minecraft:gray_terracotta":{type:"minecraft:gray_terracotta",item:"minecraft:gray_terracotta",group:0},"minecraft:gray_wool":{type:"minecraft:gray_wool",item:"minecraft:gray_wool",group:0},"minecraft:green_carpet":{type:"minecraft:green_carpet",item:"minecraft:green_carpet",group:0},"minecraft:green_concrete":{type:"minecraft:green_concrete",item:"minecraft:green_concrete",group:0},"minecraft:green_concrete_powder":{type:"minecraft:green_concrete_powder",item:"minecraft:green_concrete_powder",group:0},"minecraft:green_stained_glass":{type:"minecraft:green_stained_glass",item:"minecraft:green_stained_glass",group:0},"minecraft:green_terracotta":{type:"minecraft:green_terracotta",item:"minecraft:green_terracotta",group:0},"minecraft:green_wool":{type:"minecraft:green_wool",item:"minecraft:green_wool",group:0},"minecraft:honey_block":{type:"minecraft:honey_block",item:"minecraft:honey_block",group:0},"minecraft:honeycomb_block":{type:"minecraft:honeycomb_block",item:"minecraft:honeycomb_block",group:0},"minecraft:horn_coral_block":{type:"minecraft:horn_coral_block",item:"minecraft:horn_coral_block",group:0},"minecraft:ice":{type:"minecraft:ice",item:"minecraft:ice",group:0},"minecraft:infested_chiseled_stone_bricks":{type:"minecraft:infested_chiseled_stone_bricks",item:"minecraft:infested_chiseled_stone_bricks",group:0},"minecraft:infested_cobblestone":{type:"minecraft:infested_cobblestone",item:"minecraft:infested_cobblestone",group:0},"minecraft:infested_cracked_stone_bricks":{type:"minecraft:infested_cracked_stone_bricks",item:"minecraft:infested_cracked_stone_bricks",group:0},"minecraft:infested_mossy_stone_bricks":{type:"minecraft:infested_mossy_stone_bricks",item:"minecraft:infested_mossy_stone_bricks",group:0},"minecraft:infested_stone":{type:"minecraft:infested_stone",item:"minecraft:infested_stone",group:0},"minecraft:infested_stone_bricks":{type:"minecraft:infested_stone_bricks",item:"minecraft:infested_stone_bricks",group:0},"minecraft:iron_block":{type:"minecraft:iron_block",item:"minecraft:iron_block",group:0},"minecraft:iron_ore":{type:"minecraft:iron_ore",item:"minecraft:iron_ore",group:0},"minecraft:jungle_planks":{type:"minecraft:jungle_planks",item:"minecraft:jungle_planks",group:0},"minecraft:kelp_plant":{type:"minecraft:kelp_plant",group:0},"minecraft:lapis_block":{type:"minecraft:lapis_block",item:"minecraft:lapis_block",group:0},"minecraft:lapis_ore":{type:"minecraft:lapis_ore",item:"minecraft:lapis_ore",group:0},"minecraft:lava_cauldron":{type:"minecraft:lava_cauldron",item:"minecraft:cauldron",group:0},"minecraft:light_blue_carpet":{type:"minecraft:light_blue_carpet",item:"minecraft:light_blue_carpet",group:0},"minecraft:light_blue_concrete":{type:"minecraft:light_blue_concrete",item:"minecraft:light_blue_concrete",group:0},"minecraft:light_blue_concrete_powder":{type:"minecraft:light_blue_concrete_powder",item:"minecraft:light_blue_concrete_powder",group:0},"minecraft:light_blue_stained_glass":{type:"minecraft:light_blue_stained_glass",item:"minecraft:light_blue_stained_glass",group:0},"minecraft:light_blue_terracotta":{type:"minecraft:light_blue_terracotta",item:"minecraft:light_blue_terracotta",group:0},"minecraft:light_blue_wool":{type:"minecraft:light_blue_wool",item:"minecraft:light_blue_wool",group:0},"minecraft:light_gray_carpet":{type:"minecraft:light_gray_carpet",item:"minecraft:light_gray_carpet",group:0},"minecraft:light_gray_concrete":{type:"minecraft:light_gray_concrete",item:"minecraft:light_gray_concrete",group:0},"minecraft:light_gray_concrete_powder":{type:"minecraft:light_gray_concrete_powder",item:"minecraft:light_gray_concrete_powder",group:0},"minecraft:light_gray_stained_glass":{type:"minecraft:light_gray_stained_glass",item:"minecraft:light_gray_stained_glass",group:0},"minecraft:light_gray_terracotta":{type:"minecraft:light_gray_terracotta",item:"minecraft:light_gray_terracotta",group:0},"minecraft:light_gray_wool":{type:"minecraft:light_gray_wool",item:"minecraft:light_gray_wool",group:0},"minecraft:lily_of_the_valley":{type:"minecraft:lily_of_the_valley",item:"minecraft:lily_of_the_valley",group:0},"minecraft:lily_pad":{type:"minecraft:lily_pad",item:"minecraft:lily_pad",group:0},"minecraft:lime_carpet":{type:"minecraft:lime_carpet",item:"minecraft:lime_carpet",group:0},"minecraft:lime_concrete":{type:"minecraft:lime_concrete",item:"minecraft:lime_concrete",group:0},"minecraft:lime_concrete_powder":{type:"minecraft:lime_concrete_powder",item:"minecraft:lime_concrete_powder",group:0},"minecraft:lime_stained_glass":{type:"minecraft:lime_stained_glass",item:"minecraft:lime_stained_glass",group:0},"minecraft:lime_terracotta":{type:"minecraft:lime_terracotta",item:"minecraft:lime_terracotta",group:0},"minecraft:lime_wool":{type:"minecraft:lime_wool",item:"minecraft:lime_wool",group:0},"minecraft:lodestone":{type:"minecraft:lodestone",item:"minecraft:lodestone",group:0},"minecraft:magenta_carpet":{type:"minecraft:magenta_carpet",item:"minecraft:magenta_carpet",group:0},"minecraft:magenta_concrete":{type:"minecraft:magenta_concrete",item:"minecraft:magenta_concrete",group:0},"minecraft:magenta_concrete_powder":{type:"minecraft:magenta_concrete_powder",item:"minecraft:magenta_concrete_powder",group:0},"minecraft:magenta_stained_glass":{type:"minecraft:magenta_stained_glass",item:"minecraft:magenta_stained_glass",group:0},"minecraft:magenta_terracotta":{type:"minecraft:magenta_terracotta",item:"minecraft:magenta_terracotta",group:0},"minecraft:magenta_wool":{type:"minecraft:magenta_wool",item:"minecraft:magenta_wool",group:0},"minecraft:magma_block":{type:"minecraft:magma_block",item:"minecraft:magma_block",group:0},"minecraft:mangrove_planks":{type:"minecraft:mangrove_planks",item:"minecraft:mangrove_planks",group:0},"minecraft:melon":{type:"minecraft:melon",item:"minecraft:melon",group:0},"minecraft:moss_block":{type:"minecraft:moss_block",item:"minecraft:moss_block",group:0},"minecraft:moss_carpet":{type:"minecraft:moss_carpet",item:"minecraft:moss_carpet",group:0},"minecraft:mossy_cobblestone":{type:"minecraft:mossy_cobblestone",item:"minecraft:mossy_cobblestone",group:0},"minecraft:mossy_stone_bricks":{type:"minecraft:mossy_stone_bricks",item:"minecraft:mossy_stone_bricks",group:0},"minecraft:mud":{type:"minecraft:mud",item:"minecraft:mud",group:0},"minecraft:mud_bricks":{type:"minecraft:mud_bricks",item:"minecraft:mud_bricks",group:0},"minecraft:nether_bricks":{type:"minecraft:nether_bricks",item:"minecraft:nether_bricks",group:0},"minecraft:nether_gold_ore":{type:"minecraft:nether_gold_ore",item:"minecraft:nether_gold_ore",group:0},"minecraft:nether_quartz_ore":{type:"minecraft:nether_quartz_ore",item:"minecraft:nether_quartz_ore",group:0},"minecraft:nether_sprouts":{type:"minecraft:nether_sprouts",item:"minecraft:nether_sprouts",group:0},"minecraft:nether_wart_block":{type:"minecraft:nether_wart_block",item:"minecraft:nether_wart_block",group:0},"minecraft:netherite_block":{type:"minecraft:netherite_block",item:"minecraft:netherite_block",group:0},"minecraft:netherrack":{type:"minecraft:netherrack",item:"minecraft:netherrack",group:0},"minecraft:oak_planks":{type:"minecraft:oak_planks",item:"minecraft:oak_planks",group:0},"minecraft:obsidian":{type:"minecraft:obsidian",item:"minecraft:obsidian",group:0},"minecraft:orange_carpet":{type:"minecraft:orange_carpet",item:"minecraft:orange_carpet",group:0},"minecraft:orange_concrete":{type:"minecraft:orange_concrete",item:"minecraft:orange_concrete",group:0},"minecraft:orange_concrete_powder":{type:"minecraft:orange_concrete_powder",item:"minecraft:orange_concrete_powder",group:0},"minecraft:orange_stained_glass":{type:"minecraft:orange_stained_glass",item:"minecraft:orange_stained_glass",group:0},"minecraft:orange_terracotta":{type:"minecraft:orange_terracotta",item:"minecraft:orange_terracotta",group:0},"minecraft:orange_tulip":{type:"minecraft:orange_tulip",item:"minecraft:orange_tulip",group:0},"minecraft:orange_wool":{type:"minecraft:orange_wool",item:"minecraft:orange_wool",group:0},"minecraft:oxeye_daisy":{type:"minecraft:oxeye_daisy",item:"minecraft:oxeye_daisy",group:0},"minecraft:oxidized_chiseled_copper":{type:"minecraft:oxidized_chiseled_copper",item:"minecraft:oxidized_chiseled_copper",group:0},"minecraft:oxidized_copper":{type:"minecraft:oxidized_copper",item:"minecraft:oxidized_copper",group:0},"minecraft:oxidized_cut_copper":{type:"minecraft:oxidized_cut_copper",item:"minecraft:oxidized_cut_copper",group:0},"minecraft:packed_ice":{type:"minecraft:packed_ice",item:"minecraft:packed_ice",group:0},"minecraft:packed_mud":{type:"minecraft:packed_mud",item:"minecraft:packed_mud",group:0},"minecraft:pale_moss_block":{type:"minecraft:pale_moss_block",item:"minecraft:pale_moss_block",group:0},"minecraft:pale_oak_planks":{type:"minecraft:pale_oak_planks",item:"minecraft:pale_oak_planks",group:0},"minecraft:pink_carpet":{type:"minecraft:pink_carpet",item:"minecraft:pink_carpet",group:0},"minecraft:pink_concrete":{type:"minecraft:pink_concrete",item:"minecraft:pink_concrete",group:0},"minecraft:pink_concrete_powder":{type:"minecraft:pink_concrete_powder",item:"minecraft:pink_concrete_powder",group:0},"minecraft:pink_stained_glass":{type:"minecraft:pink_stained_glass",item:"minecraft:pink_stained_glass",group:0},"minecraft:pink_terracotta":{type:"minecraft:pink_terracotta",item:"minecraft:pink_terracotta",group:0},"minecraft:pink_tulip":{type:"minecraft:pink_tulip",item:"minecraft:pink_tulip",group:0},"minecraft:pink_wool":{type:"minecraft:pink_wool",item:"minecraft:pink_wool",group:0},"minecraft:polished_andesite":{type:"minecraft:polished_andesite",item:"minecraft:polished_andesite",group:0},"minecraft:polished_blackstone":{type:"minecraft:polished_blackstone",item:"minecraft:polished_blackstone",group:0},"minecraft:polished_blackstone_bricks":{type:"minecraft:polished_blackstone_bricks",item:"minecraft:polished_blackstone_bricks",group:0},"minecraft:polished_deepslate":{type:"minecraft:polished_deepslate",item:"minecraft:polished_deepslate",group:0},"minecraft:polished_diorite":{type:"minecraft:polished_diorite",item:"minecraft:polished_diorite",group:0},"minecraft:polished_granite":{type:"minecraft:polished_granite",item:"minecraft:polished_granite",group:0},"minecraft:polished_tuff":{type:"minecraft:polished_tuff",item:"minecraft:polished_tuff",group:0},"minecraft:poppy":{type:"minecraft:poppy",item:"minecraft:poppy",group:0},"minecraft:potted_acacia_sapling":{type:"minecraft:potted_acacia_sapling",group:0},"minecraft:potted_allium":{type:"minecraft:potted_allium",group:0},"minecraft:potted_azalea_bush":{type:"minecraft:potted_azalea_bush",group:0},"minecraft:potted_azure_bluet":{type:"minecraft:potted_azure_bluet",group:0},"minecraft:potted_bamboo":{type:"minecraft:potted_bamboo",group:0},"minecraft:potted_birch_sapling":{type:"minecraft:potted_birch_sapling",group:0},"minecraft:potted_blue_orchid":{type:"minecraft:potted_blue_orchid",group:0},"minecraft:potted_brown_mushroom":{type:"minecraft:potted_brown_mushroom",group:0},"minecraft:potted_cactus":{type:"minecraft:potted_cactus",group:0},"minecraft:potted_cherry_sapling":{type:"minecraft:potted_cherry_sapling",group:0},"minecraft:potted_cornflower":{type:"minecraft:potted_cornflower",group:0},"minecraft:potted_crimson_fungus":{type:"minecraft:potted_crimson_fungus",group:0},"minecraft:potted_crimson_roots":{type:"minecraft:potted_crimson_roots",group:0},"minecraft:potted_dandelion":{type:"minecraft:potted_dandelion",group:0},"minecraft:potted_dark_oak_sapling":{type:"minecraft:potted_dark_oak_sapling",group:0},"minecraft:potted_dead_bush":{type:"minecraft:potted_dead_bush",group:0},"minecraft:potted_fern":{type:"minecraft:potted_fern",group:0},"minecraft:potted_flowering_azalea_bush":{type:"minecraft:potted_flowering_azalea_bush",group:0},"minecraft:potted_jungle_sapling":{type:"minecraft:potted_jungle_sapling",group:0},"minecraft:potted_lily_of_the_valley":{type:"minecraft:potted_lily_of_the_valley",group:0},"minecraft:potted_mangrove_propagule":{type:"minecraft:potted_mangrove_propagule",group:0},"minecraft:potted_oak_sapling":{type:"minecraft:potted_oak_sapling",group:0},"minecraft:potted_orange_tulip":{type:"minecraft:potted_orange_tulip",group:0},"minecraft:potted_oxeye_daisy":{type:"minecraft:potted_oxeye_daisy",group:0},"minecraft:potted_pale_oak_sapling":{type:"minecraft:potted_pale_oak_sapling",group:0},"minecraft:potted_pink_tulip":{type:"minecraft:potted_pink_tulip",group:0},"minecraft:potted_poppy":{type:"minecraft:potted_poppy",group:0},"minecraft:potted_red_mushroom":{type:"minecraft:potted_red_mushroom",group:0},"minecraft:potted_red_tulip":{type:"minecraft:potted_red_tulip",group:0},"minecraft:potted_spruce_sapling":{type:"minecraft:potted_spruce_sapling",group:0},"minecraft:potted_torchflower":{type:"minecraft:potted_torchflower",group:0},"minecraft:potted_warped_fungus":{type:"minecraft:potted_warped_fungus",group:0},"minecraft:potted_warped_roots":{type:"minecraft:potted_warped_roots",group:0},"minecraft:potted_white_tulip":{type:"minecraft:potted_white_tulip",group:0},"minecraft:potted_wither_rose":{type:"minecraft:potted_wither_rose",group:0},"minecraft:powder_snow":{type:"minecraft:powder_snow",item:"minecraft:powder_snow_bucket",group:0},"minecraft:prismarine":{type:"minecraft:prismarine",item:"minecraft:prismarine",group:0},"minecraft:prismarine_bricks":{type:"minecraft:prismarine_bricks",item:"minecraft:prismarine_bricks",group:0},"minecraft:pumpkin":{type:"minecraft:pumpkin",item:"minecraft:pumpkin",group:0},"minecraft:purple_carpet":{type:"minecraft:purple_carpet",item:"minecraft:purple_carpet",group:0},"minecraft:purple_concrete":{type:"minecraft:purple_concrete",item:"minecraft:purple_concrete",group:0},"minecraft:purple_concrete_powder":{type:"minecraft:purple_concrete_powder",item:"minecraft:purple_concrete_powder",group:0},"minecraft:purple_stained_glass":{type:"minecraft:purple_stained_glass",item:"minecraft:purple_stained_glass",group:0},"minecraft:purple_terracotta":{type:"minecraft:purple_terracotta",item:"minecraft:purple_terracotta",group:0},"minecraft:purple_wool":{type:"minecraft:purple_wool",item:"minecraft:purple_wool",group:0},"minecraft:purpur_block":{type:"minecraft:purpur_block",item:"minecraft:purpur_block",group:0},"minecraft:quartz_block":{type:"minecraft:quartz_block",item:"minecraft:quartz_block",group:0},"minecraft:quartz_bricks":{type:"minecraft:quartz_bricks",item:"minecraft:quartz_bricks",group:0},"minecraft:raw_copper_block":{type:"minecraft:raw_copper_block",item:"minecraft:raw_copper_block",group:0},"minecraft:raw_gold_block":{type:"minecraft:raw_gold_block",item:"minecraft:raw_gold_block",group:0},"minecraft:raw_iron_block":{type:"minecraft:raw_iron_block",item:"minecraft:raw_iron_block",group:0},"minecraft:red_carpet":{type:"minecraft:red_carpet",item:"minecraft:red_carpet",group:0},"minecraft:red_concrete":{type:"minecraft:red_concrete",item:"minecraft:red_concrete",group:0},"minecraft:red_concrete_powder":{type:"minecraft:red_concrete_powder",item:"minecraft:red_concrete_powder",group:0},"minecraft:red_mushroom":{type:"minecraft:red_mushroom",item:"minecraft:red_mushroom",group:0},"minecraft:red_nether_bricks":{type:"minecraft:red_nether_bricks",item:"minecraft:red_nether_bricks",group:0},"minecraft:red_sand":{type:"minecraft:red_sand",item:"minecraft:red_sand",group:0},"minecraft:red_sandstone":{type:"minecraft:red_sandstone",item:"minecraft:red_sandstone",group:0},"minecraft:red_stained_glass":{type:"minecraft:red_stained_glass",item:"minecraft:red_stained_glass",group:0},"minecraft:red_terracotta":{type:"minecraft:red_terracotta",item:"minecraft:red_terracotta",group:0},"minecraft:red_tulip":{type:"minecraft:red_tulip",item:"minecraft:red_tulip",group:0},"minecraft:red_wool":{type:"minecraft:red_wool",item:"minecraft:red_wool",group:0},"minecraft:redstone_block":{type:"minecraft:redstone_block",item:"minecraft:redstone_block",group:0},"minecraft:reinforced_deepslate":{type:"minecraft:reinforced_deepslate",item:"minecraft:reinforced_deepslate",group:0},"minecraft:rooted_dirt":{type:"minecraft:rooted_dirt",item:"minecraft:rooted_dirt",group:0},"minecraft:sand":{type:"minecraft:sand",item:"minecraft:sand",group:0},"minecraft:sandstone":{type:"minecraft:sandstone",item:"minecraft:sandstone",group:0},"minecraft:sculk":{type:"minecraft:sculk",item:"minecraft:sculk",group:0},"minecraft:sea_lantern":{type:"minecraft:sea_lantern",item:"minecraft:sea_lantern",group:0},"minecraft:seagrass":{type:"minecraft:seagrass",item:"minecraft:seagrass",group:0},"minecraft:short_grass":{type:"minecraft:short_grass",item:"minecraft:short_grass",group:0},"minecraft:shroomlight":{type:"minecraft:shroomlight",item:"minecraft:shroomlight",group:0},"minecraft:slime_block":{type:"minecraft:slime_block",item:"minecraft:slime_block",group:0},"minecraft:smithing_table":{type:"minecraft:smithing_table",item:"minecraft:smithing_table",group:0},"minecraft:smooth_basalt":{type:"minecraft:smooth_basalt",item:"minecraft:smooth_basalt",group:0},"minecraft:smooth_quartz":{type:"minecraft:smooth_quartz",item:"minecraft:smooth_quartz",group:0},"minecraft:smooth_red_sandstone":{type:"minecraft:smooth_red_sandstone",item:"minecraft:smooth_red_sandstone",group:0},"minecraft:smooth_sandstone":{type:"minecraft:smooth_sandstone",item:"minecraft:smooth_sandstone",group:0},"minecraft:smooth_stone":{type:"minecraft:smooth_stone",item:"minecraft:smooth_stone",group:0},"minecraft:snow_block":{type:"minecraft:snow_block",item:"minecraft:snow_block",group:0},"minecraft:soul_fire":{type:"minecraft:soul_fire",group:0},"minecraft:soul_sand":{type:"minecraft:soul_sand",item:"minecraft:soul_sand",group:0},"minecraft:soul_soil":{type:"minecraft:soul_soil",item:"minecraft:soul_soil",group:0},"minecraft:soul_torch":{type:"minecraft:soul_torch",item:"minecraft:soul_torch",group:0},"minecraft:spawner":{type:"minecraft:spawner",item:"minecraft:spawner",group:0},"minecraft:sponge":{type:"minecraft:sponge",item:"minecraft:sponge",group:0},"minecraft:spore_blossom":{type:"minecraft:spore_blossom",item:"minecraft:spore_blossom",group:0},"minecraft:spruce_planks":{type:"minecraft:spruce_planks",item:"minecraft:spruce_planks",group:0},"minecraft:stone":{type:"minecraft:stone",item:"minecraft:stone",group:0},"minecraft:stone_bricks":{type:"minecraft:stone_bricks",item:"minecraft:stone_bricks",group:0},"minecraft:structure_void":{type:"minecraft:structure_void",item:"minecraft:structure_void",group:0},"minecraft:terracotta":{type:"minecraft:terracotta",item:"minecraft:terracotta",group:0},"minecraft:tinted_glass":{type:"minecraft:tinted_glass",item:"minecraft:tinted_glass",group:0},"minecraft:torch":{type:"minecraft:torch",item:"minecraft:torch",group:0},"minecraft:torchflower":{type:"minecraft:torchflower",item:"minecraft:torchflower",group:0},"minecraft:tube_coral_block":{type:"minecraft:tube_coral_block",item:"minecraft:tube_coral_block",group:0},"minecraft:tuff":{type:"minecraft:tuff",item:"minecraft:tuff",group:0},"minecraft:tuff_bricks":{type:"minecraft:tuff_bricks",item:"minecraft:tuff_bricks",group:0},"minecraft:twisting_vines_plant":{type:"minecraft:twisting_vines_plant",group:0},"minecraft:void_air":{type:"minecraft:void_air",group:0},"minecraft:warped_fungus":{type:"minecraft:warped_fungus",item:"minecraft:warped_fungus",group:0},"minecraft:warped_nylium":{type:"minecraft:warped_nylium",item:"minecraft:warped_nylium",group:0},"minecraft:warped_planks":{type:"minecraft:warped_planks",item:"minecraft:warped_planks",group:0},"minecraft:warped_roots":{type:"minecraft:warped_roots",item:"minecraft:warped_roots",group:0},"minecraft:warped_wart_block":{type:"minecraft:warped_wart_block",item:"minecraft:warped_wart_block",group:0},"minecraft:waxed_chiseled_copper":{type:"minecraft:waxed_chiseled_copper",item:"minecraft:waxed_chiseled_copper",group:0},"minecraft:waxed_copper_block":{type:"minecraft:waxed_copper_block",item:"minecraft:waxed_copper_block",group:0},"minecraft:waxed_cut_copper":{type:"minecraft:waxed_cut_copper",item:"minecraft:waxed_cut_copper",group:0},"minecraft:waxed_exposed_chiseled_copper":{type:"minecraft:waxed_exposed_chiseled_copper",item:"minecraft:waxed_exposed_chiseled_copper",group:0},"minecraft:waxed_exposed_copper":{type:"minecraft:waxed_exposed_copper",item:"minecraft:waxed_exposed_copper",group:0},"minecraft:waxed_exposed_cut_copper":{type:"minecraft:waxed_exposed_cut_copper",item:"minecraft:waxed_exposed_cut_copper",group:0},"minecraft:waxed_oxidized_chiseled_copper":{type:"minecraft:waxed_oxidized_chiseled_copper",item:"minecraft:waxed_oxidized_chiseled_copper",group:0},"minecraft:waxed_oxidized_copper":{type:"minecraft:waxed_oxidized_copper",item:"minecraft:waxed_oxidized_copper",group:0},"minecraft:waxed_oxidized_cut_copper":{type:"minecraft:waxed_oxidized_cut_copper",item:"minecraft:waxed_oxidized_cut_copper",group:0},"minecraft:waxed_weathered_chiseled_copper":{type:"minecraft:waxed_weathered_chiseled_copper",item:"minecraft:waxed_weathered_chiseled_copper",group:0},"minecraft:waxed_weathered_copper":{type:"minecraft:waxed_weathered_copper",item:"minecraft:waxed_weathered_copper",group:0},"minecraft:waxed_weathered_cut_copper":{type:"minecraft:waxed_weathered_cut_copper",item:"minecraft:waxed_weathered_cut_copper",group:0},"minecraft:weathered_chiseled_copper":{type:"minecraft:weathered_chiseled_copper",item:"minecraft:weathered_chiseled_copper",group:0},"minecraft:weathered_copper":{type:"minecraft:weathered_copper",item:"minecraft:weathered_copper",group:0},"minecraft:weathered_cut_copper":{type:"minecraft:weathered_cut_copper",item:"minecraft:weathered_cut_copper",group:0},"minecraft:weeping_vines_plant":{type:"minecraft:weeping_vines_plant",group:0},"minecraft:wet_sponge":{type:"minecraft:wet_sponge",item:"minecraft:wet_sponge",group:0},"minecraft:white_carpet":{type:"minecraft:white_carpet",item:"minecraft:white_carpet",group:0},"minecraft:white_concrete":{type:"minecraft:white_concrete",item:"minecraft:white_concrete",group:0},"minecraft:white_concrete_powder":{type:"minecraft:white_concrete_powder",item:"minecraft:white_concrete_powder",group:0},"minecraft:white_stained_glass":{type:"minecraft:white_stained_glass",item:"minecraft:white_stained_glass",group:0},"minecraft:white_terracotta":{type:"minecraft:white_terracotta",item:"minecraft:white_terracotta",group:0},"minecraft:white_tulip":{type:"minecraft:white_tulip",item:"minecraft:white_tulip",group:0},"minecraft:white_wool":{type:"minecraft:white_wool",item:"minecraft:white_wool",group:0},"minecraft:wither_rose":{type:"minecraft:wither_rose",item:"minecraft:wither_rose",group:0},"minecraft:yellow_carpet":{type:"minecraft:yellow_carpet",item:"minecraft:yellow_carpet",group:0},"minecraft:yellow_concrete":{type:"minecraft:yellow_concrete",item:"minecraft:yellow_concrete",group:0},"minecraft:yellow_concrete_powder":{type:"minecraft:yellow_concrete_powder",item:"minecraft:yellow_concrete_powder",group:0},"minecraft:yellow_stained_glass":{type:"minecraft:yellow_stained_glass",item:"minecraft:yellow_stained_glass",group:0},"minecraft:yellow_terracotta":{type:"minecraft:yellow_terracotta",item:"minecraft:yellow_terracotta",group:0},"minecraft:yellow_wool":{type:"minecraft:yellow_wool",item:"minecraft:yellow_wool",group:0},"minecraft:acacia_button":{type:"minecraft:acacia_button",item:"minecraft:acacia_button",group:1},"minecraft:bamboo_button":{type:"minecraft:bamboo_button",item:"minecraft:bamboo_button",group:1},"minecraft:birch_button":{type:"minecraft:birch_button",item:"minecraft:birch_button",group:1},"minecraft:cherry_button":{type:"minecraft:cherry_button",item:"minecraft:cherry_button",group:1},"minecraft:crimson_button":{type:"minecraft:crimson_button",item:"minecraft:crimson_button",group:1},"minecraft:dark_oak_button":{type:"minecraft:dark_oak_button",item:"minecraft:dark_oak_button",group:1},"minecraft:jungle_button":{type:"minecraft:jungle_button",item:"minecraft:jungle_button",group:1},"minecraft:lever":{type:"minecraft:lever",item:"minecraft:lever",group:1},"minecraft:mangrove_button":{type:"minecraft:mangrove_button",item:"minecraft:mangrove_button",group:1},"minecraft:oak_button":{type:"minecraft:oak_button",item:"minecraft:oak_button",group:1},"minecraft:pale_oak_button":{type:"minecraft:pale_oak_button",item:"minecraft:pale_oak_button",group:1},"minecraft:polished_blackstone_button":{type:"minecraft:polished_blackstone_button",item:"minecraft:polished_blackstone_button",group:1},"minecraft:spruce_button":{type:"minecraft:spruce_button",item:"minecraft:spruce_button",group:1},"minecraft:stone_button":{type:"minecraft:stone_button",item:"minecraft:stone_button",group:1},"minecraft:warped_button":{type:"minecraft:warped_button",item:"minecraft:warped_button",group:1},"minecraft:acacia_door":{type:"minecraft:acacia_door",item:"minecraft:acacia_door",group:2},"minecraft:bamboo_door":{type:"minecraft:bamboo_door",item:"minecraft:bamboo_door",group:2},"minecraft:birch_door":{type:"minecraft:birch_door",item:"minecraft:birch_door",group:2},"minecraft:cherry_door":{type:"minecraft:cherry_door",item:"minecraft:cherry_door",group:2},"minecraft:copper_door":{type:"minecraft:copper_door",item:"minecraft:copper_door",group:2},"minecraft:crimson_door":{type:"minecraft:crimson_door",item:"minecraft:crimson_door",group:2},"minecraft:dark_oak_door":{type:"minecraft:dark_oak_door",item:"minecraft:dark_oak_door",group:2},"minecraft:exposed_copper_door":{type:"minecraft:exposed_copper_door",item:"minecraft:exposed_copper_door",group:2},"minecraft:iron_door":{type:"minecraft:iron_door",item:"minecraft:iron_door",group:2},"minecraft:jungle_door":{type:"minecraft:jungle_door",item:"minecraft:jungle_door",group:2},"minecraft:mangrove_door":{type:"minecraft:mangrove_door",item:"minecraft:mangrove_door",group:2},"minecraft:oak_door":{type:"minecraft:oak_door",item:"minecraft:oak_door",group:2},"minecraft:oxidized_copper_door":{type:"minecraft:oxidized_copper_door",item:"minecraft:oxidized_copper_door",group:2},"minecraft:pale_oak_door":{type:"minecraft:pale_oak_door",item:"minecraft:pale_oak_door",group:2},"minecraft:spruce_door":{type:"minecraft:spruce_door",item:"minecraft:spruce_door",group:2},"minecraft:warped_door":{type:"minecraft:warped_door",item:"minecraft:warped_door",group:2},"minecraft:waxed_copper_door":{type:"minecraft:waxed_copper_door",item:"minecraft:waxed_copper_door",group:2},"minecraft:waxed_exposed_copper_door":{type:"minecraft:waxed_exposed_copper_door",item:"minecraft:waxed_exposed_copper_door",group:2},"minecraft:waxed_oxidized_copper_door":{type:"minecraft:waxed_oxidized_copper_door",item:"minecraft:waxed_oxidized_copper_door",group:2},"minecraft:waxed_weathered_copper_door":{type:"minecraft:waxed_weathered_copper_door",item:"minecraft:waxed_weathered_copper_door",group:2},"minecraft:weathered_copper_door":{type:"minecraft:weathered_copper_door",item:"minecraft:weathered_copper_door",group:2},"minecraft:acacia_fence":{type:"minecraft:acacia_fence",item:"minecraft:acacia_fence",group:3},"minecraft:bamboo_fence":{type:"minecraft:bamboo_fence",item:"minecraft:bamboo_fence",group:3},"minecraft:birch_fence":{type:"minecraft:birch_fence",item:"minecraft:birch_fence",group:3},"minecraft:black_stained_glass_pane":{type:"minecraft:black_stained_glass_pane",item:"minecraft:black_stained_glass_pane",group:3},"minecraft:blue_stained_glass_pane":{type:"minecraft:blue_stained_glass_pane",item:"minecraft:blue_stained_glass_pane",group:3},"minecraft:brown_stained_glass_pane":{type:"minecraft:brown_stained_glass_pane",item:"minecraft:brown_stained_glass_pane",group:3},"minecraft:cherry_fence":{type:"minecraft:cherry_fence",item:"minecraft:cherry_fence",group:3},"minecraft:crimson_fence":{type:"minecraft:crimson_fence",item:"minecraft:crimson_fence",group:3},"minecraft:cyan_stained_glass_pane":{type:"minecraft:cyan_stained_glass_pane",item:"minecraft:cyan_stained_glass_pane",group:3},"minecraft:dark_oak_fence":{type:"minecraft:dark_oak_fence",item:"minecraft:dark_oak_fence",group:3},"minecraft:glass_pane":{type:"minecraft:glass_pane",item:"minecraft:glass_pane",group:3},"minecraft:gray_stained_glass_pane":{type:"minecraft:gray_stained_glass_pane",item:"minecraft:gray_stained_glass_pane",group:3},"minecraft:green_stained_glass_pane":{type:"minecraft:green_stained_glass_pane",item:"minecraft:green_stained_glass_pane",group:3},"minecraft:iron_bars":{type:"minecraft:iron_bars",item:"minecraft:iron_bars",group:3},"minecraft:jungle_fence":{type:"minecraft:jungle_fence",item:"minecraft:jungle_fence",group:3},"minecraft:light_blue_stained_glass_pane":{type:"minecraft:light_blue_stained_glass_pane",item:"minecraft:light_blue_stained_glass_pane",group:3},"minecraft:light_gray_stained_glass_pane":{type:"minecraft:light_gray_stained_glass_pane",item:"minecraft:light_gray_stained_glass_pane",group:3},"minecraft:lime_stained_glass_pane":{type:"minecraft:lime_stained_glass_pane",item:"minecraft:lime_stained_glass_pane",group:3},"minecraft:magenta_stained_glass_pane":{type:"minecraft:magenta_stained_glass_pane",item:"minecraft:magenta_stained_glass_pane",group:3},"minecraft:mangrove_fence":{type:"minecraft:mangrove_fence",item:"minecraft:mangrove_fence",group:3},"minecraft:nether_brick_fence":{type:"minecraft:nether_brick_fence",item:"minecraft:nether_brick_fence",group:3},"minecraft:oak_fence":{type:"minecraft:oak_fence",item:"minecraft:oak_fence",group:3},"minecraft:orange_stained_glass_pane":{type:"minecraft:orange_stained_glass_pane",item:"minecraft:orange_stained_glass_pane",group:3},"minecraft:pale_oak_fence":{type:"minecraft:pale_oak_fence",item:"minecraft:pale_oak_fence",group:3},"minecraft:pink_stained_glass_pane":{type:"minecraft:pink_stained_glass_pane",item:"minecraft:pink_stained_glass_pane",group:3},"minecraft:purple_stained_glass_pane":{type:"minecraft:purple_stained_glass_pane",item:"minecraft:purple_stained_glass_pane",group:3},"minecraft:red_stained_glass_pane":{type:"minecraft:red_stained_glass_pane",item:"minecraft:red_stained_glass_pane",group:3},"minecraft:spruce_fence":{type:"minecraft:spruce_fence",item:"minecraft:spruce_fence",group:3},"minecraft:warped_fence":{type:"minecraft:warped_fence",item:"minecraft:warped_fence",group:3},"minecraft:white_stained_glass_pane":{type:"minecraft:white_stained_glass_pane",item:"minecraft:white_stained_glass_pane",group:3},"minecraft:yellow_stained_glass_pane":{type:"minecraft:yellow_stained_glass_pane",item:"minecraft:yellow_stained_glass_pane",group:3},"minecraft:acacia_fence_gate":{type:"minecraft:acacia_fence_gate",item:"minecraft:acacia_fence_gate",group:4},"minecraft:bamboo_fence_gate":{type:"minecraft:bamboo_fence_gate",item:"minecraft:bamboo_fence_gate",group:4},"minecraft:birch_fence_gate":{type:"minecraft:birch_fence_gate",item:"minecraft:birch_fence_gate",group:4},"minecraft:cherry_fence_gate":{type:"minecraft:cherry_fence_gate",item:"minecraft:cherry_fence_gate",group:4},"minecraft:crimson_fence_gate":{type:"minecraft:crimson_fence_gate",item:"minecraft:crimson_fence_gate",group:4},"minecraft:dark_oak_fence_gate":{type:"minecraft:dark_oak_fence_gate",item:"minecraft:dark_oak_fence_gate",group:4},"minecraft:jungle_fence_gate":{type:"minecraft:jungle_fence_gate",item:"minecraft:jungle_fence_gate",group:4},"minecraft:mangrove_fence_gate":{type:"minecraft:mangrove_fence_gate",item:"minecraft:mangrove_fence_gate",group:4},"minecraft:oak_fence_gate":{type:"minecraft:oak_fence_gate",item:"minecraft:oak_fence_gate",group:4},"minecraft:pale_oak_fence_gate":{type:"minecraft:pale_oak_fence_gate",item:"minecraft:pale_oak_fence_gate",group:4},"minecraft:spruce_fence_gate":{type:"minecraft:spruce_fence_gate",item:"minecraft:spruce_fence_gate",group:4},"minecraft:warped_fence_gate":{type:"minecraft:warped_fence_gate",item:"minecraft:warped_fence_gate",group:4},"minecraft:acacia_hanging_sign":{type:"minecraft:acacia_hanging_sign",item:"minecraft:acacia_hanging_sign",group:5},"minecraft:bamboo_hanging_sign":{type:"minecraft:bamboo_hanging_sign",item:"minecraft:bamboo_hanging_sign",group:5},"minecraft:birch_hanging_sign":{type:"minecraft:birch_hanging_sign",item:"minecraft:birch_hanging_sign",group:5},"minecraft:cherry_hanging_sign":{type:"minecraft:cherry_hanging_sign",item:"minecraft:cherry_hanging_sign",group:5},"minecraft:crimson_hanging_sign":{type:"minecraft:crimson_hanging_sign",item:"minecraft:crimson_hanging_sign",group:5},"minecraft:dark_oak_hanging_sign":{type:"minecraft:dark_oak_hanging_sign",item:"minecraft:dark_oak_hanging_sign",group:5},"minecraft:jungle_hanging_sign":{type:"minecraft:jungle_hanging_sign",item:"minecraft:jungle_hanging_sign",group:5},"minecraft:mangrove_hanging_sign":{type:"minecraft:mangrove_hanging_sign",item:"minecraft:mangrove_hanging_sign",group:5},"minecraft:oak_hanging_sign":{type:"minecraft:oak_hanging_sign",item:"minecraft:oak_hanging_sign",group:5},"minecraft:pale_oak_hanging_sign":{type:"minecraft:pale_oak_hanging_sign",item:"minecraft:pale_oak_hanging_sign",group:5},"minecraft:spruce_hanging_sign":{type:"minecraft:spruce_hanging_sign",item:"minecraft:spruce_hanging_sign",group:5},"minecraft:warped_hanging_sign":{type:"minecraft:warped_hanging_sign",item:"minecraft:warped_hanging_sign",group:5},"minecraft:acacia_leaves":{type:"minecraft:acacia_leaves",item:"minecraft:acacia_leaves",group:6},"minecraft:azalea_leaves":{type:"minecraft:azalea_leaves",item:"minecraft:azalea_leaves",group:6},"minecraft:birch_leaves":{type:"minecraft:birch_leaves",item:"minecraft:birch_leaves",group:6},"minecraft:cherry_leaves":{type:"minecraft:cherry_leaves",item:"minecraft:cherry_leaves",group:6},"minecraft:dark_oak_leaves":{type:"minecraft:dark_oak_leaves",item:"minecraft:dark_oak_leaves",group:6},"minecraft:flowering_azalea_leaves":{type:"minecraft:flowering_azalea_leaves",item:"minecraft:flowering_azalea_leaves",group:6},"minecraft:jungle_leaves":{type:"minecraft:jungle_leaves",item:"minecraft:jungle_leaves",group:6},"minecraft:mangrove_leaves":{type:"minecraft:mangrove_leaves",item:"minecraft:mangrove_leaves",group:6},"minecraft:oak_leaves":{type:"minecraft:oak_leaves",item:"minecraft:oak_leaves",group:6},"minecraft:pale_oak_leaves":{type:"minecraft:pale_oak_leaves",item:"minecraft:pale_oak_leaves",group:6},"minecraft:spruce_leaves":{type:"minecraft:spruce_leaves",item:"minecraft:spruce_leaves",group:6},"minecraft:acacia_log":{type:"minecraft:acacia_log",item:"minecraft:acacia_log",group:7},"minecraft:acacia_wood":{type:"minecraft:acacia_wood",item:"minecraft:acacia_wood",group:7},"minecraft:bamboo_block":{type:"minecraft:bamboo_block",item:"minecraft:bamboo_block",group:7},"minecraft:basalt":{type:"minecraft:basalt",item:"minecraft:basalt",group:7},"minecraft:birch_log":{type:"minecraft:birch_log",item:"minecraft:birch_log",group:7},"minecraft:birch_wood":{type:"minecraft:birch_wood",item:"minecraft:birch_wood",group:7},"minecraft:bone_block":{type:"minecraft:bone_block",item:"minecraft:bone_block",group:7},"minecraft:cherry_log":{type:"minecraft:cherry_log",item:"minecraft:cherry_log",group:7},"minecraft:cherry_wood":{type:"minecraft:cherry_wood",item:"minecraft:cherry_wood",group:7},"minecraft:crimson_hyphae":{type:"minecraft:crimson_hyphae",item:"minecraft:crimson_hyphae",group:7},"minecraft:crimson_stem":{type:"minecraft:crimson_stem",item:"minecraft:crimson_stem",group:7},"minecraft:dark_oak_log":{type:"minecraft:dark_oak_log",item:"minecraft:dark_oak_log",group:7},"minecraft:dark_oak_wood":{type:"minecraft:dark_oak_wood",item:"minecraft:dark_oak_wood",group:7},"minecraft:deepslate":{type:"minecraft:deepslate",item:"minecraft:deepslate",group:7},"minecraft:hay_block":{type:"minecraft:hay_block",item:"minecraft:hay_block",group:7},"minecraft:infested_deepslate":{type:"minecraft:infested_deepslate",item:"minecraft:infested_deepslate",group:7},"minecraft:jungle_log":{type:"minecraft:jungle_log",item:"minecraft:jungle_log",group:7},"minecraft:jungle_wood":{type:"minecraft:jungle_wood",item:"minecraft:jungle_wood",group:7},"minecraft:mangrove_log":{type:"minecraft:mangrove_log",item:"minecraft:mangrove_log",group:7},"minecraft:mangrove_wood":{type:"minecraft:mangrove_wood",item:"minecraft:mangrove_wood",group:7},"minecraft:muddy_mangrove_roots":{type:"minecraft:muddy_mangrove_roots",item:"minecraft:muddy_mangrove_roots",group:7},"minecraft:oak_log":{type:"minecraft:oak_log",item:"minecraft:oak_log",group:7},"minecraft:oak_wood":{type:"minecraft:oak_wood",item:"minecraft:oak_wood",group:7},"minecraft:ochre_froglight":{type:"minecraft:ochre_froglight",item:"minecraft:ochre_froglight",group:7},"minecraft:pale_oak_log":{type:"minecraft:pale_oak_log",item:"minecraft:pale_oak_log",group:7},"minecraft:pale_oak_wood":{type:"minecraft:pale_oak_wood",item:"minecraft:pale_oak_wood",group:7},"minecraft:pearlescent_froglight":{type:"minecraft:pearlescent_froglight",item:"minecraft:pearlescent_froglight",group:7},"minecraft:polished_basalt":{type:"minecraft:polished_basalt",item:"minecraft:polished_basalt",group:7},"minecraft:purpur_pillar":{type:"minecraft:purpur_pillar",item:"minecraft:purpur_pillar",group:7},"minecraft:quartz_pillar":{type:"minecraft:quartz_pillar",item:"minecraft:quartz_pillar",group:7},"minecraft:spruce_log":{type:"minecraft:spruce_log",item:"minecraft:spruce_log",group:7},"minecraft:spruce_wood":{type:"minecraft:spruce_wood",item:"minecraft:spruce_wood",group:7},"minecraft:stripped_acacia_log":{type:"minecraft:stripped_acacia_log",item:"minecraft:stripped_acacia_log",group:7},"minecraft:stripped_acacia_wood":{type:"minecraft:stripped_acacia_wood",item:"minecraft:stripped_acacia_wood",group:7},"minecraft:stripped_bamboo_block":{type:"minecraft:stripped_bamboo_block",item:"minecraft:stripped_bamboo_block",group:7},"minecraft:stripped_birch_log":{type:"minecraft:stripped_birch_log",item:"minecraft:stripped_birch_log",group:7},"minecraft:stripped_birch_wood":{type:"minecraft:stripped_birch_wood",item:"minecraft:stripped_birch_wood",group:7},"minecraft:stripped_cherry_log":{type:"minecraft:stripped_cherry_log",item:"minecraft:stripped_cherry_log",group:7},"minecraft:stripped_cherry_wood":{type:"minecraft:stripped_cherry_wood",item:"minecraft:stripped_cherry_wood",group:7},"minecraft:stripped_crimson_hyphae":{type:"minecraft:stripped_crimson_hyphae",item:"minecraft:stripped_crimson_hyphae",group:7},"minecraft:stripped_crimson_stem":{type:"minecraft:stripped_crimson_stem",item:"minecraft:stripped_crimson_stem",group:7},"minecraft:stripped_dark_oak_log":{type:"minecraft:stripped_dark_oak_log",item:"minecraft:stripped_dark_oak_log",group:7},"minecraft:stripped_dark_oak_wood":{type:"minecraft:stripped_dark_oak_wood",item:"minecraft:stripped_dark_oak_wood",group:7},"minecraft:stripped_jungle_log":{type:"minecraft:stripped_jungle_log",item:"minecraft:stripped_jungle_log",group:7},"minecraft:stripped_jungle_wood":{type:"minecraft:stripped_jungle_wood",item:"minecraft:stripped_jungle_wood",group:7},"minecraft:stripped_mangrove_log":{type:"minecraft:stripped_mangrove_log",item:"minecraft:stripped_mangrove_log",group:7},"minecraft:stripped_mangrove_wood":{type:"minecraft:stripped_mangrove_wood",item:"minecraft:stripped_mangrove_wood",group:7},"minecraft:stripped_oak_log":{type:"minecraft:stripped_oak_log",item:"minecraft:stripped_oak_log",group:7},"minecraft:stripped_oak_wood":{type:"minecraft:stripped_oak_wood",item:"minecraft:stripped_oak_wood",group:7},"minecraft:stripped_pale_oak_log":{type:"minecraft:stripped_pale_oak_log",item:"minecraft:stripped_pale_oak_log",group:7},"minecraft:stripped_pale_oak_wood":{type:"minecraft:stripped_pale_oak_wood",item:"minecraft:stripped_pale_oak_wood",group:7},"minecraft:stripped_spruce_log":{type:"minecraft:stripped_spruce_log",item:"minecraft:stripped_spruce_log",group:7},"minecraft:stripped_spruce_wood":{type:"minecraft:stripped_spruce_wood",item:"minecraft:stripped_spruce_wood",group:7},"minecraft:stripped_warped_hyphae":{type:"minecraft:stripped_warped_hyphae",item:"minecraft:stripped_warped_hyphae",group:7},"minecraft:stripped_warped_stem":{type:"minecraft:stripped_warped_stem",item:"minecraft:stripped_warped_stem",group:7},"minecraft:verdant_froglight":{type:"minecraft:verdant_froglight",item:"minecraft:verdant_froglight",group:7},"minecraft:warped_hyphae":{type:"minecraft:warped_hyphae",item:"minecraft:warped_hyphae",group:7},"minecraft:warped_stem":{type:"minecraft:warped_stem",item:"minecraft:warped_stem",group:7},"minecraft:acacia_pressure_plate":{type:"minecraft:acacia_pressure_plate",item:"minecraft:acacia_pressure_plate",group:8},"minecraft:bamboo_pressure_plate":{type:"minecraft:bamboo_pressure_plate",item:"minecraft:bamboo_pressure_plate",group:8},"minecraft:birch_pressure_plate":{type:"minecraft:birch_pressure_plate",item:"minecraft:birch_pressure_plate",group:8},"minecraft:cherry_pressure_plate":{type:"minecraft:cherry_pressure_plate",item:"minecraft:cherry_pressure_plate",group:8},"minecraft:crimson_pressure_plate":{type:"minecraft:crimson_pressure_plate",item:"minecraft:crimson_pressure_plate",group:8},"minecraft:dark_oak_pressure_plate":{type:"minecraft:dark_oak_pressure_plate",item:"minecraft:dark_oak_pressure_plate",group:8},"minecraft:jungle_pressure_plate":{type:"minecraft:jungle_pressure_plate",item:"minecraft:jungle_pressure_plate",group:8},"minecraft:mangrove_pressure_plate":{type:"minecraft:mangrove_pressure_plate",item:"minecraft:mangrove_pressure_plate",group:8},"minecraft:oak_pressure_plate":{type:"minecraft:oak_pressure_plate",item:"minecraft:oak_pressure_plate",group:8},"minecraft:pale_oak_pressure_plate":{type:"minecraft:pale_oak_pressure_plate",item:"minecraft:pale_oak_pressure_plate",group:8},"minecraft:polished_blackstone_pressure_plate":{type:"minecraft:polished_blackstone_pressure_plate",item:"minecraft:polished_blackstone_pressure_plate",group:8},"minecraft:spruce_pressure_plate":{type:"minecraft:spruce_pressure_plate",item:"minecraft:spruce_pressure_plate",group:8},"minecraft:stone_pressure_plate":{type:"minecraft:stone_pressure_plate",item:"minecraft:stone_pressure_plate",group:8},"minecraft:warped_pressure_plate":{type:"minecraft:warped_pressure_plate",item:"minecraft:warped_pressure_plate",group:8},"minecraft:acacia_sapling":{type:"minecraft:acacia_sapling",item:"minecraft:acacia_sapling",group:9},"minecraft:birch_sapling":{type:"minecraft:birch_sapling",item:"minecraft:birch_sapling",group:9},"minecraft:cherry_sapling":{type:"minecraft:cherry_sapling",item:"minecraft:cherry_sapling",group:9},"minecraft:dark_oak_sapling":{type:"minecraft:dark_oak_sapling",item:"minecraft:dark_oak_sapling",group:9},"minecraft:jungle_sapling":{type:"minecraft:jungle_sapling",item:"minecraft:jungle_sapling",group:9},"minecraft:oak_sapling":{type:"minecraft:oak_sapling",item:"minecraft:oak_sapling",group:9},"minecraft:pale_oak_sapling":{type:"minecraft:pale_oak_sapling",item:"minecraft:pale_oak_sapling",group:9},"minecraft:spruce_sapling":{type:"minecraft:spruce_sapling",item:"minecraft:spruce_sapling",group:9},"minecraft:acacia_sign":{type:"minecraft:acacia_sign",item:"minecraft:acacia_sign",group:10},"minecraft:bamboo_sign":{type:"minecraft:bamboo_sign",item:"minecraft:bamboo_sign",group:10},"minecraft:birch_sign":{type:"minecraft:birch_sign",item:"minecraft:birch_sign",group:10},"minecraft:cherry_sign":{type:"minecraft:cherry_sign",item:"minecraft:cherry_sign",group:10},"minecraft:crimson_sign":{type:"minecraft:crimson_sign",item:"minecraft:crimson_sign",group:10},"minecraft:dark_oak_sign":{type:"minecraft:dark_oak_sign",item:"minecraft:dark_oak_sign",group:10},"minecraft:jungle_sign":{type:"minecraft:jungle_sign",item:"minecraft:jungle_sign",group:10},"minecraft:mangrove_sign":{type:"minecraft:mangrove_sign",item:"minecraft:mangrove_sign",group:10},"minecraft:oak_sign":{type:"minecraft:oak_sign",item:"minecraft:oak_sign",group:10},"minecraft:pale_oak_sign":{type:"minecraft:pale_oak_sign",item:"minecraft:pale_oak_sign",group:10},"minecraft:spruce_sign":{type:"minecraft:spruce_sign",item:"minecraft:spruce_sign",group:10},"minecraft:warped_sign":{type:"minecraft:warped_sign",item:"minecraft:warped_sign",group:10},"minecraft:acacia_slab":{type:"minecraft:acacia_slab",item:"minecraft:acacia_slab",group:11},"minecraft:andesite_slab":{type:"minecraft:andesite_slab",item:"minecraft:andesite_slab",group:11},"minecraft:bamboo_mosaic_slab":{type:"minecraft:bamboo_mosaic_slab",item:"minecraft:bamboo_mosaic_slab",group:11},"minecraft:bamboo_slab":{type:"minecraft:bamboo_slab",item:"minecraft:bamboo_slab",group:11},"minecraft:birch_slab":{type:"minecraft:birch_slab",item:"minecraft:birch_slab",group:11},"minecraft:blackstone_slab":{type:"minecraft:blackstone_slab",item:"minecraft:blackstone_slab",group:11},"minecraft:brick_slab":{type:"minecraft:brick_slab",item:"minecraft:brick_slab",group:11},"minecraft:cherry_slab":{type:"minecraft:cherry_slab",item:"minecraft:cherry_slab",group:11},"minecraft:cobbled_deepslate_slab":{type:"minecraft:cobbled_deepslate_slab",item:"minecraft:cobbled_deepslate_slab",group:11},"minecraft:cobblestone_slab":{type:"minecraft:cobblestone_slab",item:"minecraft:cobblestone_slab",group:11},"minecraft:crimson_slab":{type:"minecraft:crimson_slab",item:"minecraft:crimson_slab",group:11},"minecraft:cut_copper_slab":{type:"minecraft:cut_copper_slab",item:"minecraft:cut_copper_slab",group:11},"minecraft:cut_red_sandstone_slab":{type:"minecraft:cut_red_sandstone_slab",item:"minecraft:cut_red_sandstone_slab",group:11},"minecraft:cut_sandstone_slab":{type:"minecraft:cut_sandstone_slab",item:"minecraft:cut_sandstone_slab",group:11},"minecraft:dark_oak_slab":{type:"minecraft:dark_oak_slab",item:"minecraft:dark_oak_slab",group:11},"minecraft:dark_prismarine_slab":{type:"minecraft:dark_prismarine_slab",item:"minecraft:dark_prismarine_slab",group:11},"minecraft:deepslate_brick_slab":{type:"minecraft:deepslate_brick_slab",item:"minecraft:deepslate_brick_slab",group:11},"minecraft:deepslate_tile_slab":{type:"minecraft:deepslate_tile_slab",item:"minecraft:deepslate_tile_slab",group:11},"minecraft:diorite_slab":{type:"minecraft:diorite_slab",item:"minecraft:diorite_slab",group:11},"minecraft:end_stone_brick_slab":{type:"minecraft:end_stone_brick_slab",item:"minecraft:end_stone_brick_slab",group:11},"minecraft:exposed_cut_copper_slab":{type:"minecraft:exposed_cut_copper_slab",item:"minecraft:exposed_cut_copper_slab",group:11},"minecraft:granite_slab":{type:"minecraft:granite_slab",item:"minecraft:granite_slab",group:11},"minecraft:jungle_slab":{type:"minecraft:jungle_slab",item:"minecraft:jungle_slab",group:11},"minecraft:mangrove_slab":{type:"minecraft:mangrove_slab",item:"minecraft:mangrove_slab",group:11},"minecraft:mossy_cobblestone_slab":{type:"minecraft:mossy_cobblestone_slab",item:"minecraft:mossy_cobblestone_slab",group:11},"minecraft:mossy_stone_brick_slab":{type:"minecraft:mossy_stone_brick_slab",item:"minecraft:mossy_stone_brick_slab",group:11},"minecraft:mud_brick_slab":{type:"minecraft:mud_brick_slab",item:"minecraft:mud_brick_slab",group:11},"minecraft:nether_brick_slab":{type:"minecraft:nether_brick_slab",item:"minecraft:nether_brick_slab",group:11},"minecraft:oak_slab":{type:"minecraft:oak_slab",item:"minecraft:oak_slab",group:11},"minecraft:oxidized_cut_copper_slab":{type:"minecraft:oxidized_cut_copper_slab",item:"minecraft:oxidized_cut_copper_slab",group:11},"minecraft:pale_oak_slab":{type:"minecraft:pale_oak_slab",item:"minecraft:pale_oak_slab",group:11},"minecraft:petrified_oak_slab":{type:"minecraft:petrified_oak_slab",item:"minecraft:petrified_oak_slab",group:11},"minecraft:polished_andesite_slab":{type:"minecraft:polished_andesite_slab",item:"minecraft:polished_andesite_slab",group:11},"minecraft:polished_blackstone_brick_slab":{type:"minecraft:polished_blackstone_brick_slab",item:"minecraft:polished_blackstone_brick_slab",group:11},"minecraft:polished_blackstone_slab":{type:"minecraft:polished_blackstone_slab",item:"minecraft:polished_blackstone_slab",group:11},"minecraft:polished_deepslate_slab":{type:"minecraft:polished_deepslate_slab",item:"minecraft:polished_deepslate_slab",group:11},"minecraft:polished_diorite_slab":{type:"minecraft:polished_diorite_slab",item:"minecraft:polished_diorite_slab",group:11},"minecraft:polished_granite_slab":{type:"minecraft:polished_granite_slab",item:"minecraft:polished_granite_slab",group:11},"minecraft:polished_tuff_slab":{type:"minecraft:polished_tuff_slab",item:"minecraft:polished_tuff_slab",group:11},"minecraft:prismarine_brick_slab":{type:"minecraft:prismarine_brick_slab",item:"minecraft:prismarine_brick_slab",group:11},"minecraft:prismarine_slab":{type:"minecraft:prismarine_slab",item:"minecraft:prismarine_slab",group:11},"minecraft:purpur_slab":{type:"minecraft:purpur_slab",item:"minecraft:purpur_slab",group:11},"minecraft:quartz_slab":{type:"minecraft:quartz_slab",item:"minecraft:quartz_slab",group:11},"minecraft:red_nether_brick_slab":{type:"minecraft:red_nether_brick_slab",item:"minecraft:red_nether_brick_slab",group:11},"minecraft:red_sandstone_slab":{type:"minecraft:red_sandstone_slab",item:"minecraft:red_sandstone_slab",group:11},"minecraft:sandstone_slab":{type:"minecraft:sandstone_slab",item:"minecraft:sandstone_slab",group:11},"minecraft:smooth_quartz_slab":{type:"minecraft:smooth_quartz_slab",item:"minecraft:smooth_quartz_slab",group:11},"minecraft:smooth_red_sandstone_slab":{type:"minecraft:smooth_red_sandstone_slab",item:"minecraft:smooth_red_sandstone_slab",group:11},"minecraft:smooth_sandstone_slab":{type:"minecraft:smooth_sandstone_slab",item:"minecraft:smooth_sandstone_slab",group:11},"minecraft:smooth_stone_slab":{type:"minecraft:smooth_stone_slab",item:"minecraft:smooth_stone_slab",group:11},"minecraft:spruce_slab":{type:"minecraft:spruce_slab",item:"minecraft:spruce_slab",group:11},"minecraft:stone_brick_slab":{type:"minecraft:stone_brick_slab",item:"minecraft:stone_brick_slab",group:11},"minecraft:stone_slab":{type:"minecraft:stone_slab",item:"minecraft:stone_slab",group:11},"minecraft:tuff_brick_slab":{type:"minecraft:tuff_brick_slab",item:"minecraft:tuff_brick_slab",group:11},"minecraft:tuff_slab":{type:"minecraft:tuff_slab",item:"minecraft:tuff_slab",group:11},"minecraft:warped_slab":{type:"minecraft:warped_slab",item:"minecraft:warped_slab",group:11},"minecraft:waxed_cut_copper_slab":{type:"minecraft:waxed_cut_copper_slab",item:"minecraft:waxed_cut_copper_slab",group:11},"minecraft:waxed_exposed_cut_copper_slab":{type:"minecraft:waxed_exposed_cut_copper_slab",item:"minecraft:waxed_exposed_cut_copper_slab",group:11},"minecraft:waxed_oxidized_cut_copper_slab":{type:"minecraft:waxed_oxidized_cut_copper_slab",item:"minecraft:waxed_oxidized_cut_copper_slab",group:11},"minecraft:waxed_weathered_cut_copper_slab":{type:"minecraft:waxed_weathered_cut_copper_slab",item:"minecraft:waxed_weathered_cut_copper_slab",group:11},"minecraft:weathered_cut_copper_slab":{type:"minecraft:weathered_cut_copper_slab",item:"minecraft:weathered_cut_copper_slab",group:11},"minecraft:acacia_stairs":{type:"minecraft:acacia_stairs",item:"minecraft:acacia_stairs",group:12},"minecraft:andesite_stairs":{type:"minecraft:andesite_stairs",item:"minecraft:andesite_stairs",group:12},"minecraft:bamboo_mosaic_stairs":{type:"minecraft:bamboo_mosaic_stairs",item:"minecraft:bamboo_mosaic_stairs",group:12},"minecraft:bamboo_stairs":{type:"minecraft:bamboo_stairs",item:"minecraft:bamboo_stairs",group:12},"minecraft:birch_stairs":{type:"minecraft:birch_stairs",item:"minecraft:birch_stairs",group:12},"minecraft:blackstone_stairs":{type:"minecraft:blackstone_stairs",item:"minecraft:blackstone_stairs",group:12},"minecraft:brick_stairs":{type:"minecraft:brick_stairs",item:"minecraft:brick_stairs",group:12},"minecraft:cherry_stairs":{type:"minecraft:cherry_stairs",item:"minecraft:cherry_stairs",group:12},"minecraft:cobbled_deepslate_stairs":{type:"minecraft:cobbled_deepslate_stairs",item:"minecraft:cobbled_deepslate_stairs",group:12},"minecraft:cobblestone_stairs":{type:"minecraft:cobblestone_stairs",item:"minecraft:cobblestone_stairs",group:12},"minecraft:crimson_stairs":{type:"minecraft:crimson_stairs",item:"minecraft:crimson_stairs",group:12},"minecraft:cut_copper_stairs":{type:"minecraft:cut_copper_stairs",item:"minecraft:cut_copper_stairs",group:12},"minecraft:dark_oak_stairs":{type:"minecraft:dark_oak_stairs",item:"minecraft:dark_oak_stairs",group:12},"minecraft:dark_prismarine_stairs":{type:"minecraft:dark_prismarine_stairs",item:"minecraft:dark_prismarine_stairs",group:12},"minecraft:deepslate_brick_stairs":{type:"minecraft:deepslate_brick_stairs",item:"minecraft:deepslate_brick_stairs",group:12},"minecraft:deepslate_tile_stairs":{type:"minecraft:deepslate_tile_stairs",item:"minecraft:deepslate_tile_stairs",group:12},"minecraft:diorite_stairs":{type:"minecraft:diorite_stairs",item:"minecraft:diorite_stairs",group:12},"minecraft:end_stone_brick_stairs":{type:"minecraft:end_stone_brick_stairs",item:"minecraft:end_stone_brick_stairs",group:12},"minecraft:exposed_cut_copper_stairs":{type:"minecraft:exposed_cut_copper_stairs",item:"minecraft:exposed_cut_copper_stairs",group:12},"minecraft:granite_stairs":{type:"minecraft:granite_stairs",item:"minecraft:granite_stairs",group:12},"minecraft:jungle_stairs":{type:"minecraft:jungle_stairs",item:"minecraft:jungle_stairs",group:12},"minecraft:mangrove_stairs":{type:"minecraft:mangrove_stairs",item:"minecraft:mangrove_stairs",group:12},"minecraft:mossy_cobblestone_stairs":{type:"minecraft:mossy_cobblestone_stairs",item:"minecraft:mossy_cobblestone_stairs",group:12},"minecraft:mossy_stone_brick_stairs":{type:"minecraft:mossy_stone_brick_stairs",item:"minecraft:mossy_stone_brick_stairs",group:12},"minecraft:mud_brick_stairs":{type:"minecraft:mud_brick_stairs",item:"minecraft:mud_brick_stairs",group:12},"minecraft:nether_brick_stairs":{type:"minecraft:nether_brick_stairs",item:"minecraft:nether_brick_stairs",group:12},"minecraft:oak_stairs":{type:"minecraft:oak_stairs",item:"minecraft:oak_stairs",group:12},"minecraft:oxidized_cut_copper_stairs":{type:"minecraft:oxidized_cut_copper_stairs",item:"minecraft:oxidized_cut_copper_stairs",group:12},"minecraft:pale_oak_stairs":{type:"minecraft:pale_oak_stairs",item:"minecraft:pale_oak_stairs",group:12},"minecraft:polished_andesite_stairs":{type:"minecraft:polished_andesite_stairs",item:"minecraft:polished_andesite_stairs",group:12},"minecraft:polished_blackstone_brick_stairs":{type:"minecraft:polished_blackstone_brick_stairs",item:"minecraft:polished_blackstone_brick_stairs",group:12},"minecraft:polished_blackstone_stairs":{type:"minecraft:polished_blackstone_stairs",item:"minecraft:polished_blackstone_stairs",group:12},"minecraft:polished_deepslate_stairs":{type:"minecraft:polished_deepslate_stairs",item:"minecraft:polished_deepslate_stairs",group:12},"minecraft:polished_diorite_stairs":{type:"minecraft:polished_diorite_stairs",item:"minecraft:polished_diorite_stairs",group:12},"minecraft:polished_granite_stairs":{type:"minecraft:polished_granite_stairs",item:"minecraft:polished_granite_stairs",group:12},"minecraft:polished_tuff_stairs":{type:"minecraft:polished_tuff_stairs",item:"minecraft:polished_tuff_stairs",group:12},"minecraft:prismarine_brick_stairs":{type:"minecraft:prismarine_brick_stairs",item:"minecraft:prismarine_brick_stairs",group:12},"minecraft:prismarine_stairs":{type:"minecraft:prismarine_stairs",item:"minecraft:prismarine_stairs",group:12},"minecraft:purpur_stairs":{type:"minecraft:purpur_stairs",item:"minecraft:purpur_stairs",group:12},"minecraft:quartz_stairs":{type:"minecraft:quartz_stairs",item:"minecraft:quartz_stairs",group:12},"minecraft:red_nether_brick_stairs":{type:"minecraft:red_nether_brick_stairs",item:"minecraft:red_nether_brick_stairs",group:12},"minecraft:red_sandstone_stairs":{type:"minecraft:red_sandstone_stairs",item:"minecraft:red_sandstone_stairs",group:12},"minecraft:sandstone_stairs":{type:"minecraft:sandstone_stairs",item:"minecraft:sandstone_stairs",group:12},"minecraft:smooth_quartz_stairs":{type:"minecraft:smooth_quartz_stairs",item:"minecraft:smooth_quartz_stairs",group:12},"minecraft:smooth_red_sandstone_stairs":{type:"minecraft:smooth_red_sandstone_stairs",item:"minecraft:smooth_red_sandstone_stairs",group:12},"minecraft:smooth_sandstone_stairs":{type:"minecraft:smooth_sandstone_stairs",item:"minecraft:smooth_sandstone_stairs",group:12},"minecraft:spruce_stairs":{type:"minecraft:spruce_stairs",item:"minecraft:spruce_stairs",group:12},"minecraft:stone_brick_stairs":{type:"minecraft:stone_brick_stairs",item:"minecraft:stone_brick_stairs",group:12},"minecraft:stone_stairs":{type:"minecraft:stone_stairs",item:"minecraft:stone_stairs",group:12},"minecraft:tuff_brick_stairs":{type:"minecraft:tuff_brick_stairs",item:"minecraft:tuff_brick_stairs",group:12},"minecraft:tuff_stairs":{type:"minecraft:tuff_stairs",item:"minecraft:tuff_stairs",group:12},"minecraft:warped_stairs":{type:"minecraft:warped_stairs",item:"minecraft:warped_stairs",group:12},"minecraft:waxed_cut_copper_stairs":{type:"minecraft:waxed_cut_copper_stairs",item:"minecraft:waxed_cut_copper_stairs",group:12},"minecraft:waxed_exposed_cut_copper_stairs":{type:"minecraft:waxed_exposed_cut_copper_stairs",item:"minecraft:waxed_exposed_cut_copper_stairs",group:12},"minecraft:waxed_oxidized_cut_copper_stairs":{type:"minecraft:waxed_oxidized_cut_copper_stairs",item:"minecraft:waxed_oxidized_cut_copper_stairs",group:12},"minecraft:waxed_weathered_cut_copper_stairs":{type:"minecraft:waxed_weathered_cut_copper_stairs",item:"minecraft:waxed_weathered_cut_copper_stairs",group:12},"minecraft:weathered_cut_copper_stairs":{type:"minecraft:weathered_cut_copper_stairs",item:"minecraft:weathered_cut_copper_stairs",group:12},"minecraft:acacia_trapdoor":{type:"minecraft:acacia_trapdoor",item:"minecraft:acacia_trapdoor",group:13},"minecraft:bamboo_trapdoor":{type:"minecraft:bamboo_trapdoor",item:"minecraft:bamboo_trapdoor",group:13},"minecraft:birch_trapdoor":{type:"minecraft:birch_trapdoor",item:"minecraft:birch_trapdoor",group:13},"minecraft:cherry_trapdoor":{type:"minecraft:cherry_trapdoor",item:"minecraft:cherry_trapdoor",group:13},"minecraft:copper_trapdoor":{type:"minecraft:copper_trapdoor",item:"minecraft:copper_trapdoor",group:13},"minecraft:crimson_trapdoor":{type:"minecraft:crimson_trapdoor",item:"minecraft:crimson_trapdoor",group:13},"minecraft:dark_oak_trapdoor":{type:"minecraft:dark_oak_trapdoor",item:"minecraft:dark_oak_trapdoor",group:13},"minecraft:exposed_copper_trapdoor":{type:"minecraft:exposed_copper_trapdoor",item:"minecraft:exposed_copper_trapdoor",group:13},"minecraft:iron_trapdoor":{type:"minecraft:iron_trapdoor",item:"minecraft:iron_trapdoor",group:13},"minecraft:jungle_trapdoor":{type:"minecraft:jungle_trapdoor",item:"minecraft:jungle_trapdoor",group:13},"minecraft:mangrove_trapdoor":{type:"minecraft:mangrove_trapdoor",item:"minecraft:mangrove_trapdoor",group:13},"minecraft:oak_trapdoor":{type:"minecraft:oak_trapdoor",item:"minecraft:oak_trapdoor",group:13},"minecraft:oxidized_copper_trapdoor":{type:"minecraft:oxidized_copper_trapdoor",item:"minecraft:oxidized_copper_trapdoor",group:13},"minecraft:pale_oak_trapdoor":{type:"minecraft:pale_oak_trapdoor",item:"minecraft:pale_oak_trapdoor",group:13},"minecraft:spruce_trapdoor":{type:"minecraft:spruce_trapdoor",item:"minecraft:spruce_trapdoor",group:13},"minecraft:warped_trapdoor":{type:"minecraft:warped_trapdoor",item:"minecraft:warped_trapdoor",group:13},"minecraft:waxed_copper_trapdoor":{type:"minecraft:waxed_copper_trapdoor",item:"minecraft:waxed_copper_trapdoor",group:13},"minecraft:waxed_exposed_copper_trapdoor":{type:"minecraft:waxed_exposed_copper_trapdoor",item:"minecraft:waxed_exposed_copper_trapdoor",group:13},"minecraft:waxed_oxidized_copper_trapdoor":{type:"minecraft:waxed_oxidized_copper_trapdoor",item:"minecraft:waxed_oxidized_copper_trapdoor",group:13},"minecraft:waxed_weathered_copper_trapdoor":{type:"minecraft:waxed_weathered_copper_trapdoor",item:"minecraft:waxed_weathered_copper_trapdoor",group:13},"minecraft:weathered_copper_trapdoor":{type:"minecraft:weathered_copper_trapdoor",item:"minecraft:weathered_copper_trapdoor",group:13},"minecraft:acacia_wall_hanging_sign":{type:"minecraft:acacia_wall_hanging_sign",item:"minecraft:acacia_hanging_sign",group:14},"minecraft:acacia_wall_sign":{type:"minecraft:acacia_wall_sign",item:"minecraft:acacia_sign",group:14},"minecraft:bamboo_wall_hanging_sign":{type:"minecraft:bamboo_wall_hanging_sign",item:"minecraft:bamboo_hanging_sign",group:14},"minecraft:bamboo_wall_sign":{type:"minecraft:bamboo_wall_sign",item:"minecraft:bamboo_sign",group:14},"minecraft:big_dripleaf_stem":{type:"minecraft:big_dripleaf_stem",item:"minecraft:big_dripleaf",group:14},"minecraft:birch_wall_hanging_sign":{type:"minecraft:birch_wall_hanging_sign",item:"minecraft:birch_hanging_sign",group:14},"minecraft:birch_wall_sign":{type:"minecraft:birch_wall_sign",item:"minecraft:birch_sign",group:14},"minecraft:cherry_wall_hanging_sign":{type:"minecraft:cherry_wall_hanging_sign",item:"minecraft:cherry_hanging_sign",group:14},"minecraft:cherry_wall_sign":{type:"minecraft:cherry_wall_sign",item:"minecraft:cherry_sign",group:14},"minecraft:crimson_wall_hanging_sign":{type:"minecraft:crimson_wall_hanging_sign",item:"minecraft:crimson_hanging_sign",group:14},"minecraft:crimson_wall_sign":{type:"minecraft:crimson_wall_sign",item:"minecraft:crimson_sign",group:14},"minecraft:dark_oak_wall_hanging_sign":{type:"minecraft:dark_oak_wall_hanging_sign",item:"minecraft:dark_oak_hanging_sign",group:14},"minecraft:dark_oak_wall_sign":{type:"minecraft:dark_oak_wall_sign",item:"minecraft:dark_oak_sign",group:14},"minecraft:ender_chest":{type:"minecraft:ender_chest",item:"minecraft:ender_chest",group:14},"minecraft:jungle_wall_hanging_sign":{type:"minecraft:jungle_wall_hanging_sign",item:"minecraft:jungle_hanging_sign",group:14},"minecraft:jungle_wall_sign":{type:"minecraft:jungle_wall_sign",item:"minecraft:jungle_sign",group:14},"minecraft:ladder":{type:"minecraft:ladder",item:"minecraft:ladder",group:14},"minecraft:mangrove_wall_hanging_sign":{type:"minecraft:mangrove_wall_hanging_sign",item:"minecraft:mangrove_hanging_sign",group:14},"minecraft:mangrove_wall_sign":{type:"minecraft:mangrove_wall_sign",item:"minecraft:mangrove_sign",group:14},"minecraft:oak_wall_hanging_sign":{type:"minecraft:oak_wall_hanging_sign",item:"minecraft:oak_hanging_sign",group:14},"minecraft:oak_wall_sign":{type:"minecraft:oak_wall_sign",item:"minecraft:oak_sign",group:14},"minecraft:pale_oak_wall_hanging_sign":{type:"minecraft:pale_oak_wall_hanging_sign",group:14},"minecraft:pale_oak_wall_sign":{type:"minecraft:pale_oak_wall_sign",group:14},"minecraft:spruce_wall_hanging_sign":{type:"minecraft:spruce_wall_hanging_sign",item:"minecraft:spruce_hanging_sign",group:14},"minecraft:spruce_wall_sign":{type:"minecraft:spruce_wall_sign",item:"minecraft:spruce_sign",group:14},"minecraft:warped_wall_hanging_sign":{type:"minecraft:warped_wall_hanging_sign",item:"minecraft:warped_hanging_sign",group:14},"minecraft:warped_wall_sign":{type:"minecraft:warped_wall_sign",item:"minecraft:warped_sign",group:14},"minecraft:activator_rail":{type:"minecraft:activator_rail",item:"minecraft:activator_rail",group:15},"minecraft:detector_rail":{type:"minecraft:detector_rail",item:"minecraft:detector_rail",group:15},"minecraft:powered_rail":{type:"minecraft:powered_rail",item:"minecraft:powered_rail",group:15},"minecraft:amethyst_cluster":{type:"minecraft:amethyst_cluster",item:"minecraft:amethyst_cluster",group:16},"minecraft:large_amethyst_bud":{type:"minecraft:large_amethyst_bud",item:"minecraft:large_amethyst_bud",group:16},"minecraft:medium_amethyst_bud":{type:"minecraft:medium_amethyst_bud",item:"minecraft:medium_amethyst_bud",group:16},"minecraft:small_amethyst_bud":{type:"minecraft:small_amethyst_bud",item:"minecraft:small_amethyst_bud",group:16},"minecraft:andesite_wall":{type:"minecraft:andesite_wall",item:"minecraft:andesite_wall",group:17},"minecraft:blackstone_wall":{type:"minecraft:blackstone_wall",item:"minecraft:blackstone_wall",group:17},"minecraft:brick_wall":{type:"minecraft:brick_wall",item:"minecraft:brick_wall",group:17},"minecraft:cobbled_deepslate_wall":{type:"minecraft:cobbled_deepslate_wall",item:"minecraft:cobbled_deepslate_wall",group:17},"minecraft:cobblestone_wall":{type:"minecraft:cobblestone_wall",item:"minecraft:cobblestone_wall",group:17},"minecraft:deepslate_brick_wall":{type:"minecraft:deepslate_brick_wall",item:"minecraft:deepslate_brick_wall",group:17},"minecraft:deepslate_tile_wall":{type:"minecraft:deepslate_tile_wall",item:"minecraft:deepslate_tile_wall",group:17},"minecraft:diorite_wall":{type:"minecraft:diorite_wall",item:"minecraft:diorite_wall",group:17},"minecraft:end_stone_brick_wall":{type:"minecraft:end_stone_brick_wall",item:"minecraft:end_stone_brick_wall",group:17},"minecraft:granite_wall":{type:"minecraft:granite_wall",item:"minecraft:granite_wall",group:17},"minecraft:mossy_cobblestone_wall":{type:"minecraft:mossy_cobblestone_wall",item:"minecraft:mossy_cobblestone_wall",group:17},"minecraft:mossy_stone_brick_wall":{type:"minecraft:mossy_stone_brick_wall",item:"minecraft:mossy_stone_brick_wall",group:17},"minecraft:mud_brick_wall":{type:"minecraft:mud_brick_wall",item:"minecraft:mud_brick_wall",group:17},"minecraft:nether_brick_wall":{type:"minecraft:nether_brick_wall",item:"minecraft:nether_brick_wall",group:17},"minecraft:polished_blackstone_brick_wall":{type:"minecraft:polished_blackstone_brick_wall",item:"minecraft:polished_blackstone_brick_wall",group:17},"minecraft:polished_blackstone_wall":{type:"minecraft:polished_blackstone_wall",item:"minecraft:polished_blackstone_wall",group:17},"minecraft:polished_deepslate_wall":{type:"minecraft:polished_deepslate_wall",item:"minecraft:polished_deepslate_wall",group:17},"minecraft:polished_tuff_wall":{type:"minecraft:polished_tuff_wall",item:"minecraft:polished_tuff_wall",group:17},"minecraft:prismarine_wall":{type:"minecraft:prismarine_wall",item:"minecraft:prismarine_wall",group:17},"minecraft:red_nether_brick_wall":{type:"minecraft:red_nether_brick_wall",item:"minecraft:red_nether_brick_wall",group:17},"minecraft:red_sandstone_wall":{type:"minecraft:red_sandstone_wall",item:"minecraft:red_sandstone_wall",group:17},"minecraft:sandstone_wall":{type:"minecraft:sandstone_wall",item:"minecraft:sandstone_wall",group:17},"minecraft:stone_brick_wall":{type:"minecraft:stone_brick_wall",item:"minecraft:stone_brick_wall",group:17},"minecraft:tuff_brick_wall":{type:"minecraft:tuff_brick_wall",item:"minecraft:tuff_brick_wall",group:17},"minecraft:tuff_wall":{type:"minecraft:tuff_wall",item:"minecraft:tuff_wall",group:17},"minecraft:anvil":{type:"minecraft:anvil",item:"minecraft:anvil",group:18},"minecraft:attached_melon_stem":{type:"minecraft:attached_melon_stem",item:"minecraft:melon_seeds",group:18},"minecraft:attached_pumpkin_stem":{type:"minecraft:attached_pumpkin_stem",item:"minecraft:melon_seeds",group:18},"minecraft:black_glazed_terracotta":{type:"minecraft:black_glazed_terracotta",item:"minecraft:black_glazed_terracotta",group:18},"minecraft:black_wall_banner":{type:"minecraft:black_wall_banner",item:"minecraft:black_banner",group:18},"minecraft:blue_glazed_terracotta":{type:"minecraft:blue_glazed_terracotta",item:"minecraft:blue_glazed_terracotta",group:18},"minecraft:blue_wall_banner":{type:"minecraft:blue_wall_banner",item:"minecraft:blue_banner",group:18},"minecraft:brown_glazed_terracotta":{type:"minecraft:brown_glazed_terracotta",item:"minecraft:brown_glazed_terracotta",group:18},"minecraft:brown_wall_banner":{type:"minecraft:brown_wall_banner",item:"minecraft:brown_banner",group:18},"minecraft:carved_pumpkin":{type:"minecraft:carved_pumpkin",item:"minecraft:carved_pumpkin",group:18},"minecraft:chipped_anvil":{type:"minecraft:chipped_anvil",item:"minecraft:chipped_anvil",group:18},"minecraft:cyan_glazed_terracotta":{type:"minecraft:cyan_glazed_terracotta",item:"minecraft:cyan_glazed_terracotta",group:18},"minecraft:cyan_wall_banner":{type:"minecraft:cyan_wall_banner",item:"minecraft:cyan_banner",group:18},"minecraft:damaged_anvil":{type:"minecraft:damaged_anvil",item:"minecraft:damaged_anvil",group:18},"minecraft:gray_glazed_terracotta":{type:"minecraft:gray_glazed_terracotta",item:"minecraft:gray_glazed_terracotta",group:18},"minecraft:gray_wall_banner":{type:"minecraft:gray_wall_banner",item:"minecraft:gray_banner",group:18},"minecraft:green_glazed_terracotta":{type:"minecraft:green_glazed_terracotta",item:"minecraft:green_glazed_terracotta",group:18},"minecraft:green_wall_banner":{type:"minecraft:green_wall_banner",item:"minecraft:green_banner",group:18},"minecraft:jack_o_lantern":{type:"minecraft:jack_o_lantern",item:"minecraft:jack_o_lantern",group:18},"minecraft:light_blue_glazed_terracotta":{type:"minecraft:light_blue_glazed_terracotta",item:"minecraft:light_blue_glazed_terracotta",group:18},"minecraft:light_blue_wall_banner":{type:"minecraft:light_blue_wall_banner",item:"minecraft:light_blue_banner",group:18},"minecraft:light_gray_glazed_terracotta":{type:"minecraft:light_gray_glazed_terracotta",item:"minecraft:light_gray_glazed_terracotta",group:18},"minecraft:light_gray_wall_banner":{type:"minecraft:light_gray_wall_banner",item:"minecraft:light_gray_banner",group:18},"minecraft:lime_glazed_terracotta":{type:"minecraft:lime_glazed_terracotta",item:"minecraft:lime_glazed_terracotta",group:18},"minecraft:lime_wall_banner":{type:"minecraft:lime_wall_banner",item:"minecraft:lime_banner",group:18},"minecraft:loom":{type:"minecraft:loom",item:"minecraft:loom",group:18},"minecraft:magenta_glazed_terracotta":{type:"minecraft:magenta_glazed_terracotta",item:"minecraft:magenta_glazed_terracotta",group:18},"minecraft:magenta_wall_banner":{type:"minecraft:magenta_wall_banner",item:"minecraft:magenta_banner",group:18},"minecraft:orange_glazed_terracotta":{type:"minecraft:orange_glazed_terracotta",item:"minecraft:orange_glazed_terracotta",group:18},"minecraft:orange_wall_banner":{type:"minecraft:orange_wall_banner",item:"minecraft:orange_banner",group:18},"minecraft:pink_glazed_terracotta":{type:"minecraft:pink_glazed_terracotta",item:"minecraft:pink_glazed_terracotta",group:18},"minecraft:pink_wall_banner":{type:"minecraft:pink_wall_banner",item:"minecraft:pink_banner",group:18},"minecraft:purple_glazed_terracotta":{type:"minecraft:purple_glazed_terracotta",item:"minecraft:purple_glazed_terracotta",group:18},"minecraft:purple_wall_banner":{type:"minecraft:purple_wall_banner",item:"minecraft:purple_banner",group:18},"minecraft:red_glazed_terracotta":{type:"minecraft:red_glazed_terracotta",item:"minecraft:red_glazed_terracotta",group:18},"minecraft:red_wall_banner":{type:"minecraft:red_wall_banner",item:"minecraft:red_banner",group:18},"minecraft:soul_wall_torch":{type:"minecraft:soul_wall_torch",item:"minecraft:soul_torch",group:18},"minecraft:stonecutter":{type:"minecraft:stonecutter",item:"minecraft:stonecutter",group:18},"minecraft:wall_torch":{type:"minecraft:wall_torch",item:"minecraft:torch",group:18},"minecraft:white_glazed_terracotta":{type:"minecraft:white_glazed_terracotta",item:"minecraft:white_glazed_terracotta",group:18},"minecraft:white_wall_banner":{type:"minecraft:white_wall_banner",item:"minecraft:white_banner",group:18},"minecraft:yellow_glazed_terracotta":{type:"minecraft:yellow_glazed_terracotta",item:"minecraft:yellow_glazed_terracotta",group:18},"minecraft:yellow_wall_banner":{type:"minecraft:yellow_wall_banner",item:"minecraft:yellow_banner",group:18},"minecraft:bamboo":{type:"minecraft:bamboo",item:"minecraft:bamboo",group:19},"minecraft:barrel":{type:"minecraft:barrel",item:"minecraft:barrel",group:20},"minecraft:barrier":{type:"minecraft:barrier",item:"minecraft:barrier",group:21},"minecraft:copper_grate":{type:"minecraft:copper_grate",item:"minecraft:copper_grate",group:21},"minecraft:exposed_copper_grate":{type:"minecraft:exposed_copper_grate",item:"minecraft:exposed_copper_grate",group:21},"minecraft:hanging_roots":{type:"minecraft:hanging_roots",item:"minecraft:hanging_roots",group:21},"minecraft:heavy_core":{type:"minecraft:heavy_core",item:"minecraft:heavy_core",group:21},"minecraft:mangrove_roots":{type:"minecraft:mangrove_roots",item:"minecraft:mangrove_roots",group:21},"minecraft:oxidized_copper_grate":{type:"minecraft:oxidized_copper_grate",item:"minecraft:oxidized_copper_grate",group:21},"minecraft:waxed_copper_grate":{type:"minecraft:waxed_copper_grate",item:"minecraft:waxed_copper_grate",group:21},"minecraft:waxed_exposed_copper_grate":{type:"minecraft:waxed_exposed_copper_grate",item:"minecraft:waxed_exposed_copper_grate",group:21},"minecraft:waxed_oxidized_copper_grate":{type:"minecraft:waxed_oxidized_copper_grate",item:"minecraft:waxed_oxidized_copper_grate",group:21},"minecraft:waxed_weathered_copper_grate":{type:"minecraft:waxed_weathered_copper_grate",item:"minecraft:waxed_weathered_copper_grate",group:21},"minecraft:weathered_copper_grate":{type:"minecraft:weathered_copper_grate",item:"minecraft:weathered_copper_grate",group:21},"minecraft:bee_nest":{type:"minecraft:bee_nest",item:"minecraft:bee_nest",group:22},"minecraft:beehive":{type:"minecraft:beehive",item:"minecraft:beehive",group:22},"minecraft:beetroots":{type:"minecraft:beetroots",item:"minecraft:beetroot_seeds",group:23},"minecraft:frosted_ice":{type:"minecraft:frosted_ice",group:23},"minecraft:nether_wart":{type:"minecraft:nether_wart",item:"minecraft:nether_wart",group:23},"minecraft:sweet_berry_bush":{type:"minecraft:sweet_berry_bush",item:"minecraft:sweet_berries",group:23},"minecraft:bell":{type:"minecraft:bell",item:"minecraft:bell",group:24},"minecraft:big_dripleaf":{type:"minecraft:big_dripleaf",item:"minecraft:big_dripleaf",group:25},"minecraft:black_banner":{type:"minecraft:black_banner",item:"minecraft:black_banner",group:26},"minecraft:blue_banner":{type:"minecraft:blue_banner",item:"minecraft:blue_banner",group:26},"minecraft:brown_banner":{type:"minecraft:brown_banner",item:"minecraft:brown_banner",group:26},"minecraft:cyan_banner":{type:"minecraft:cyan_banner",item:"minecraft:cyan_banner",group:26},"minecraft:gray_banner":{type:"minecraft:gray_banner",item:"minecraft:gray_banner",group:26},"minecraft:green_banner":{type:"minecraft:green_banner",item:"minecraft:green_banner",group:26},"minecraft:light_blue_banner":{type:"minecraft:light_blue_banner",item:"minecraft:light_blue_banner",group:26},"minecraft:light_gray_banner":{type:"minecraft:light_gray_banner",item:"minecraft:light_gray_banner",group:26},"minecraft:lime_banner":{type:"minecraft:lime_banner",item:"minecraft:lime_banner",group:26},"minecraft:magenta_banner":{type:"minecraft:magenta_banner",item:"minecraft:magenta_banner",group:26},"minecraft:orange_banner":{type:"minecraft:orange_banner",item:"minecraft:orange_banner",group:26},"minecraft:pink_banner":{type:"minecraft:pink_banner",item:"minecraft:pink_banner",group:26},"minecraft:purple_banner":{type:"minecraft:purple_banner",item:"minecraft:purple_banner",group:26},"minecraft:red_banner":{type:"minecraft:red_banner",item:"minecraft:red_banner",group:26},"minecraft:white_banner":{type:"minecraft:white_banner",item:"minecraft:white_banner",group:26},"minecraft:yellow_banner":{type:"minecraft:yellow_banner",item:"minecraft:yellow_banner",group:26},"minecraft:black_bed":{type:"minecraft:black_bed",item:"minecraft:black_bed",group:27},"minecraft:blue_bed":{type:"minecraft:blue_bed",item:"minecraft:blue_bed",group:27},"minecraft:brown_bed":{type:"minecraft:brown_bed",item:"minecraft:brown_bed",group:27},"minecraft:cyan_bed":{type:"minecraft:cyan_bed",item:"minecraft:cyan_bed",group:27},"minecraft:gray_bed":{type:"minecraft:gray_bed",item:"minecraft:gray_bed",group:27},"minecraft:green_bed":{type:"minecraft:green_bed",item:"minecraft:green_bed",group:27},"minecraft:light_blue_bed":{type:"minecraft:light_blue_bed",item:"minecraft:light_blue_bed",group:27},"minecraft:light_gray_bed":{type:"minecraft:light_gray_bed",item:"minecraft:light_gray_bed",group:27},"minecraft:lime_bed":{type:"minecraft:lime_bed",item:"minecraft:lime_bed",group:27},"minecraft:magenta_bed":{type:"minecraft:magenta_bed",item:"minecraft:magenta_bed",group:27},"minecraft:orange_bed":{type:"minecraft:orange_bed",item:"minecraft:orange_bed",group:27},"minecraft:pink_bed":{type:"minecraft:pink_bed",item:"minecraft:pink_bed",group:27},"minecraft:purple_bed":{type:"minecraft:purple_bed",item:"minecraft:purple_bed",group:27},"minecraft:red_bed":{type:"minecraft:red_bed",item:"minecraft:red_bed",group:27},"minecraft:white_bed":{type:"minecraft:white_bed",item:"minecraft:white_bed",group:27},"minecraft:yellow_bed":{type:"minecraft:yellow_bed",item:"minecraft:yellow_bed",group:27},"minecraft:black_candle":{type:"minecraft:black_candle",item:"minecraft:black_candle",group:28},"minecraft:blue_candle":{type:"minecraft:blue_candle",item:"minecraft:blue_candle",group:28},"minecraft:brown_candle":{type:"minecraft:brown_candle",item:"minecraft:brown_candle",group:28},"minecraft:candle":{type:"minecraft:candle",item:"minecraft:candle",group:28},"minecraft:cyan_candle":{type:"minecraft:cyan_candle",item:"minecraft:cyan_candle",group:28},"minecraft:gray_candle":{type:"minecraft:gray_candle",item:"minecraft:gray_candle",group:28},"minecraft:green_candle":{type:"minecraft:green_candle",item:"minecraft:green_candle",group:28},"minecraft:light_blue_candle":{type:"minecraft:light_blue_candle",item:"minecraft:light_blue_candle",group:28},"minecraft:light_gray_candle":{type:"minecraft:light_gray_candle",item:"minecraft:light_gray_candle",group:28},"minecraft:lime_candle":{type:"minecraft:lime_candle",item:"minecraft:lime_candle",group:28},"minecraft:magenta_candle":{type:"minecraft:magenta_candle",item:"minecraft:magenta_candle",group:28},"minecraft:orange_candle":{type:"minecraft:orange_candle",item:"minecraft:orange_candle",group:28},"minecraft:pink_candle":{type:"minecraft:pink_candle",item:"minecraft:pink_candle",group:28},"minecraft:purple_candle":{type:"minecraft:purple_candle",item:"minecraft:purple_candle",group:28},"minecraft:red_candle":{type:"minecraft:red_candle",item:"minecraft:red_candle",group:28},"minecraft:white_candle":{type:"minecraft:white_candle",item:"minecraft:white_candle",group:28},"minecraft:yellow_candle":{type:"minecraft:yellow_candle",item:"minecraft:yellow_candle",group:28},"minecraft:black_candle_cake":{type:"minecraft:black_candle_cake",group:29},"minecraft:blue_candle_cake":{type:"minecraft:blue_candle_cake",group:29},"minecraft:brown_candle_cake":{type:"minecraft:brown_candle_cake",group:29},"minecraft:candle_cake":{type:"minecraft:candle_cake",group:29},"minecraft:cyan_candle_cake":{type:"minecraft:cyan_candle_cake",group:29},"minecraft:deepslate_redstone_ore":{type:"minecraft:deepslate_redstone_ore",item:"minecraft:deepslate_redstone_ore",group:29},"minecraft:gray_candle_cake":{type:"minecraft:gray_candle_cake",group:29},"minecraft:green_candle_cake":{type:"minecraft:green_candle_cake",group:29},"minecraft:light_blue_candle_cake":{type:"minecraft:light_blue_candle_cake",group:29},"minecraft:light_gray_candle_cake":{type:"minecraft:light_gray_candle_cake",group:29},"minecraft:lime_candle_cake":{type:"minecraft:lime_candle_cake",group:29},"minecraft:magenta_candle_cake":{type:"minecraft:magenta_candle_cake",group:29},"minecraft:orange_candle_cake":{type:"minecraft:orange_candle_cake",group:29},"minecraft:pink_candle_cake":{type:"minecraft:pink_candle_cake",group:29},"minecraft:purple_candle_cake":{type:"minecraft:purple_candle_cake",group:29},"minecraft:red_candle_cake":{type:"minecraft:red_candle_cake",group:29},"minecraft:redstone_lamp":{type:"minecraft:redstone_lamp",item:"minecraft:redstone_lamp",group:29},"minecraft:redstone_ore":{type:"minecraft:redstone_ore",item:"minecraft:redstone_ore",group:29},"minecraft:white_candle_cake":{type:"minecraft:white_candle_cake",group:29},"minecraft:yellow_candle_cake":{type:"minecraft:yellow_candle_cake",group:29},"minecraft:black_shulker_box":{type:"minecraft:black_shulker_box",item:"minecraft:black_shulker_box",group:30},"minecraft:blue_shulker_box":{type:"minecraft:blue_shulker_box",item:"minecraft:blue_shulker_box",group:30},"minecraft:brown_shulker_box":{type:"minecraft:brown_shulker_box",item:"minecraft:brown_shulker_box",group:30},"minecraft:cyan_shulker_box":{type:"minecraft:cyan_shulker_box",item:"minecraft:cyan_shulker_box",group:30},"minecraft:end_rod":{type:"minecraft:end_rod",item:"minecraft:end_rod",group:30},"minecraft:gray_shulker_box":{type:"minecraft:gray_shulker_box",item:"minecraft:gray_shulker_box",group:30},"minecraft:green_shulker_box":{type:"minecraft:green_shulker_box",item:"minecraft:green_shulker_box",group:30},"minecraft:light_blue_shulker_box":{type:"minecraft:light_blue_shulker_box",item:"minecraft:light_blue_shulker_box",group:30},"minecraft:light_gray_shulker_box":{type:"minecraft:light_gray_shulker_box",item:"minecraft:light_gray_shulker_box",group:30},"minecraft:lime_shulker_box":{type:"minecraft:lime_shulker_box",item:"minecraft:lime_shulker_box",group:30},"minecraft:magenta_shulker_box":{type:"minecraft:magenta_shulker_box",item:"minecraft:magenta_shulker_box",group:30},"minecraft:orange_shulker_box":{type:"minecraft:orange_shulker_box",item:"minecraft:orange_shulker_box",group:30},"minecraft:pink_shulker_box":{type:"minecraft:pink_shulker_box",item:"minecraft:pink_shulker_box",group:30},"minecraft:purple_shulker_box":{type:"minecraft:purple_shulker_box",item:"minecraft:purple_shulker_box",group:30},"minecraft:red_shulker_box":{type:"minecraft:red_shulker_box",item:"minecraft:red_shulker_box",group:30},"minecraft:shulker_box":{type:"minecraft:shulker_box",item:"minecraft:shulker_box",group:30},"minecraft:white_shulker_box":{type:"minecraft:white_shulker_box",item:"minecraft:white_shulker_box",group:30},"minecraft:yellow_shulker_box":{type:"minecraft:yellow_shulker_box",item:"minecraft:yellow_shulker_box",group:30},"minecraft:blast_furnace":{type:"minecraft:blast_furnace",item:"minecraft:blast_furnace",group:31},"minecraft:furnace":{type:"minecraft:furnace",item:"minecraft:furnace",group:31},"minecraft:smoker":{type:"minecraft:smoker",item:"minecraft:smoker",group:31},"minecraft:brain_coral":{type:"minecraft:brain_coral",item:"minecraft:brain_coral",group:32},"minecraft:brain_coral_fan":{type:"minecraft:brain_coral_fan",item:"minecraft:brain_coral_fan",group:32},"minecraft:bubble_coral":{type:"minecraft:bubble_coral",item:"minecraft:bubble_coral",group:32},"minecraft:bubble_coral_fan":{type:"minecraft:bubble_coral_fan",item:"minecraft:bubble_coral_fan",group:32},"minecraft:conduit":{type:"minecraft:conduit",item:"minecraft:conduit",group:32},"minecraft:dead_brain_coral":{type:"minecraft:dead_brain_coral",item:"minecraft:dead_brain_coral",group:32},"minecraft:dead_brain_coral_fan":{type:"minecraft:dead_brain_coral_fan",item:"minecraft:dead_brain_coral_fan",group:32},"minecraft:dead_bubble_coral":{type:"minecraft:dead_bubble_coral",item:"minecraft:dead_bubble_coral",group:32},"minecraft:dead_bubble_coral_fan":{type:"minecraft:dead_bubble_coral_fan",item:"minecraft:dead_bubble_coral_fan",group:32},"minecraft:dead_fire_coral":{type:"minecraft:dead_fire_coral",item:"minecraft:dead_fire_coral",group:32},"minecraft:dead_fire_coral_fan":{type:"minecraft:dead_fire_coral_fan",item:"minecraft:dead_fire_coral_fan",group:32},"minecraft:dead_horn_coral":{type:"minecraft:dead_horn_coral",item:"minecraft:dead_horn_coral",group:32},"minecraft:dead_horn_coral_fan":{type:"minecraft:dead_horn_coral_fan",item:"minecraft:dead_horn_coral_fan",group:32},"minecraft:dead_tube_coral":{type:"minecraft:dead_tube_coral",item:"minecraft:dead_tube_coral",group:32},"minecraft:dead_tube_coral_fan":{type:"minecraft:dead_tube_coral_fan",item:"minecraft:dead_tube_coral_fan",group:32},"minecraft:fire_coral":{type:"minecraft:fire_coral",item:"minecraft:fire_coral",group:32},"minecraft:fire_coral_fan":{type:"minecraft:fire_coral_fan",item:"minecraft:fire_coral_fan",group:32},"minecraft:horn_coral":{type:"minecraft:horn_coral",item:"minecraft:horn_coral",group:32},"minecraft:horn_coral_fan":{type:"minecraft:horn_coral_fan",item:"minecraft:horn_coral_fan",group:32},"minecraft:tube_coral":{type:"minecraft:tube_coral",item:"minecraft:tube_coral",group:32},"minecraft:tube_coral_fan":{type:"minecraft:tube_coral_fan",item:"minecraft:tube_coral_fan",group:32},"minecraft:brain_coral_wall_fan":{type:"minecraft:brain_coral_wall_fan",item:"minecraft:brain_coral_fan",group:33},"minecraft:bubble_coral_wall_fan":{type:"minecraft:bubble_coral_wall_fan",item:"minecraft:bubble_coral_fan",group:33},"minecraft:dead_brain_coral_wall_fan":{type:"minecraft:dead_brain_coral_wall_fan",item:"minecraft:dead_brain_coral_fan",group:33},"minecraft:dead_bubble_coral_wall_fan":{type:"minecraft:dead_bubble_coral_wall_fan",item:"minecraft:dead_bubble_coral_fan",group:33},"minecraft:dead_fire_coral_wall_fan":{type:"minecraft:dead_fire_coral_wall_fan",item:"minecraft:dead_fire_coral_fan",group:33},"minecraft:dead_horn_coral_wall_fan":{type:"minecraft:dead_horn_coral_wall_fan",item:"minecraft:dead_horn_coral_fan",group:33},"minecraft:dead_tube_coral_wall_fan":{type:"minecraft:dead_tube_coral_wall_fan",item:"minecraft:dead_tube_coral_fan",group:33},"minecraft:fire_coral_wall_fan":{type:"minecraft:fire_coral_wall_fan",item:"minecraft:fire_coral_fan",group:33},"minecraft:horn_coral_wall_fan":{type:"minecraft:horn_coral_wall_fan",item:"minecraft:horn_coral_fan",group:33},"minecraft:tube_coral_wall_fan":{type:"minecraft:tube_coral_wall_fan",item:"minecraft:tube_coral_fan",group:33},"minecraft:brewing_stand":{type:"minecraft:brewing_stand",item:"minecraft:brewing_stand",group:34},"minecraft:brown_mushroom_block":{type:"minecraft:brown_mushroom_block",item:"minecraft:brown_mushroom_block",group:35},"minecraft:mushroom_stem":{type:"minecraft:mushroom_stem",item:"minecraft:mushroom_stem",group:35},"minecraft:red_mushroom_block":{type:"minecraft:red_mushroom_block",item:"minecraft:red_mushroom_block",group:35},"minecraft:bubble_column":{type:"minecraft:bubble_column",group:36},"minecraft:cactus":{type:"minecraft:cactus",item:"minecraft:cactus",group:37},"minecraft:sugar_cane":{type:"minecraft:sugar_cane",item:"minecraft:sugar_cane",group:37},"minecraft:cake":{type:"minecraft:cake",item:"minecraft:cake",group:38},"minecraft:calibrated_sculk_sensor":{type:"minecraft:calibrated_sculk_sensor",item:"minecraft:calibrated_sculk_sensor",group:39},"minecraft:campfire":{type:"minecraft:campfire",item:"minecraft:campfire",group:40},"minecraft:soul_campfire":{type:"minecraft:soul_campfire",item:"minecraft:soul_campfire",group:40},"minecraft:carrots":{type:"minecraft:carrots",item:"minecraft:carrot",group:41},"minecraft:melon_stem":{type:"minecraft:melon_stem",item:"minecraft:pumpkin_seeds",group:41},"minecraft:potatoes":{type:"minecraft:potatoes",item:"minecraft:potato",group:41},"minecraft:pumpkin_stem":{type:"minecraft:pumpkin_stem",item:"minecraft:pumpkin_seeds",group:41},"minecraft:wheat":{type:"minecraft:wheat",item:"minecraft:wheat_seeds",group:41},"minecraft:cave_vines":{type:"minecraft:cave_vines",item:"minecraft:glow_berries",group:42},"minecraft:cave_vines_plant":{type:"minecraft:cave_vines_plant",item:"minecraft:glow_berries",group:43},"minecraft:chain":{type:"minecraft:chain",item:"minecraft:chain",group:44},"minecraft:chain_command_block":{type:"minecraft:chain_command_block",item:"minecraft:chain_command_block",group:45},"minecraft:command_block":{type:"minecraft:command_block",item:"minecraft:command_block",group:45},"minecraft:repeating_command_block":{type:"minecraft:repeating_command_block",item:"minecraft:repeating_command_block",group:45},"minecraft:chest":{type:"minecraft:chest",item:"minecraft:chest",group:46},"minecraft:trapped_chest":{type:"minecraft:trapped_chest",item:"minecraft:trapped_chest",group:46},"minecraft:chiseled_bookshelf":{type:"minecraft:chiseled_bookshelf",item:"minecraft:chiseled_bookshelf",group:47},"minecraft:chorus_flower":{type:"minecraft:chorus_flower",item:"minecraft:chorus_flower",group:48},"minecraft:chorus_plant":{type:"minecraft:chorus_plant",item:"minecraft:chorus_plant",group:49},"minecraft:cocoa":{type:"minecraft:cocoa",item:"minecraft:cocoa_beans",group:50},"minecraft:comparator":{type:"minecraft:comparator",item:"minecraft:comparator",group:51},"minecraft:composter":{type:"minecraft:composter",item:"minecraft:composter",group:52},"minecraft:copper_bulb":{type:"minecraft:copper_bulb",item:"minecraft:copper_bulb",group:53},"minecraft:exposed_copper_bulb":{type:"minecraft:exposed_copper_bulb",item:"minecraft:exposed_copper_bulb",group:53},"minecraft:oxidized_copper_bulb":{type:"minecraft:oxidized_copper_bulb",item:"minecraft:oxidized_copper_bulb",group:53},"minecraft:waxed_copper_bulb":{type:"minecraft:waxed_copper_bulb",item:"minecraft:waxed_copper_bulb",group:53},"minecraft:waxed_exposed_copper_bulb":{type:"minecraft:waxed_exposed_copper_bulb",item:"minecraft:waxed_exposed_copper_bulb",group:53},"minecraft:waxed_oxidized_copper_bulb":{type:"minecraft:waxed_oxidized_copper_bulb",item:"minecraft:waxed_oxidized_copper_bulb",group:53},"minecraft:waxed_weathered_copper_bulb":{type:"minecraft:waxed_weathered_copper_bulb",item:"minecraft:waxed_weathered_copper_bulb",group:53},"minecraft:weathered_copper_bulb":{type:"minecraft:weathered_copper_bulb",item:"minecraft:weathered_copper_bulb",group:53},"minecraft:crafter":{type:"minecraft:crafter",item:"minecraft:crafter",group:54},"minecraft:creaking_heart":{type:"minecraft:creaking_heart",item:"minecraft:creaking_heart",group:55},"minecraft:creeper_head":{type:"minecraft:creeper_head",item:"minecraft:creeper_head",group:56},"minecraft:dragon_head":{type:"minecraft:dragon_head",item:"minecraft:dragon_head",group:56},"minecraft:piglin_head":{type:"minecraft:piglin_head",item:"minecraft:piglin_head",group:56},"minecraft:player_head":{type:"minecraft:player_head",item:"minecraft:player_head",group:56},"minecraft:skeleton_skull":{type:"minecraft:skeleton_skull",item:"minecraft:skeleton_skull",group:56},"minecraft:wither_skeleton_skull":{type:"minecraft:wither_skeleton_skull",item:"minecraft:wither_skeleton_skull",group:56},"minecraft:zombie_head":{type:"minecraft:zombie_head",item:"minecraft:zombie_head",group:56},"minecraft:creeper_wall_head":{type:"minecraft:creeper_wall_head",item:"minecraft:creeper_head",group:57},"minecraft:dragon_wall_head":{type:"minecraft:dragon_wall_head",item:"minecraft:dragon_head",group:57},"minecraft:piglin_wall_head":{type:"minecraft:piglin_wall_head",item:"minecraft:piglin_head",group:57},"minecraft:player_wall_head":{type:"minecraft:player_wall_head",item:"minecraft:player_head",group:57},"minecraft:skeleton_wall_skull":{type:"minecraft:skeleton_wall_skull",item:"minecraft:skeleton_skull",group:57},"minecraft:wither_skeleton_wall_skull":{type:"minecraft:wither_skeleton_wall_skull",item:"minecraft:wither_skeleton_skull",group:57},"minecraft:zombie_wall_head":{type:"minecraft:zombie_wall_head",item:"minecraft:zombie_head",group:57},"minecraft:daylight_detector":{type:"minecraft:daylight_detector",item:"minecraft:daylight_detector",group:58},"minecraft:decorated_pot":{type:"minecraft:decorated_pot",item:"minecraft:decorated_pot",group:59},"minecraft:dispenser":{type:"minecraft:dispenser",item:"minecraft:dispenser",group:60},"minecraft:dropper":{type:"minecraft:dropper",item:"minecraft:dropper",group:60},"minecraft:end_portal_frame":{type:"minecraft:end_portal_frame",item:"minecraft:end_portal_frame",group:61},"minecraft:farmland":{type:"minecraft:farmland",item:"minecraft:farmland",group:62},"minecraft:fire":{type:"minecraft:fire",group:63},"minecraft:glow_lichen":{type:"minecraft:glow_lichen",item:"minecraft:glow_lichen",group:64},"minecraft:sculk_vein":{type:"minecraft:sculk_vein",item:"minecraft:sculk_vein",group:64},"minecraft:grass_block":{type:"minecraft:grass_block",item:"minecraft:grass_block",group:65},"minecraft:mycelium":{type:"minecraft:mycelium",item:"minecraft:mycelium",group:65},"minecraft:podzol":{type:"minecraft:podzol",item:"minecraft:podzol",group:65},"minecraft:grindstone":{type:"minecraft:grindstone",item:"minecraft:grindstone",group:66},"minecraft:heavy_weighted_pressure_plate":{type:"minecraft:heavy_weighted_pressure_plate",item:"minecraft:heavy_weighted_pressure_plate",group:67},"minecraft:light_weighted_pressure_plate":{type:"minecraft:light_weighted_pressure_plate",item:"minecraft:light_weighted_pressure_plate",group:67},"minecraft:target":{type:"minecraft:target",item:"minecraft:target",group:67},"minecraft:hopper":{type:"minecraft:hopper",item:"minecraft:hopper",group:68},"minecraft:jigsaw":{type:"minecraft:jigsaw",item:"minecraft:jigsaw",group:69},"minecraft:jukebox":{type:"minecraft:jukebox",item:"minecraft:jukebox",group:70},"minecraft:kelp":{type:"minecraft:kelp",item:"minecraft:kelp",group:71},"minecraft:twisting_vines":{type:"minecraft:twisting_vines",item:"minecraft:twisting_vines",group:71},"minecraft:weeping_vines":{type:"minecraft:weeping_vines",item:"minecraft:weeping_vines",group:71},"minecraft:lantern":{type:"minecraft:lantern",item:"minecraft:lantern",group:72},"minecraft:soul_lantern":{type:"minecraft:soul_lantern",item:"minecraft:soul_lantern",group:72},"minecraft:large_fern":{type:"minecraft:large_fern",item:"minecraft:large_fern",group:73},"minecraft:lilac":{type:"minecraft:lilac",item:"minecraft:lilac",group:73},"minecraft:peony":{type:"minecraft:peony",item:"minecraft:peony",group:73},"minecraft:pitcher_plant":{type:"minecraft:pitcher_plant",item:"minecraft:pitcher_plant",group:73},"minecraft:rose_bush":{type:"minecraft:rose_bush",item:"minecraft:rose_bush",group:73},"minecraft:sunflower":{type:"minecraft:sunflower",item:"minecraft:sunflower",group:73},"minecraft:tall_grass":{type:"minecraft:tall_grass",item:"minecraft:tall_grass",group:73},"minecraft:tall_seagrass":{type:"minecraft:tall_seagrass",group:73},"minecraft:lava":{type:"minecraft:lava",item:"minecraft:lava_bucket",group:74},"minecraft:water":{type:"minecraft:water",item:"minecraft:water_bucket",group:74},"minecraft:lectern":{type:"minecraft:lectern",item:"minecraft:lectern",group:75},"minecraft:light":{type:"minecraft:light",item:"minecraft:light",group:76},"minecraft:lightning_rod":{type:"minecraft:lightning_rod",item:"minecraft:lightning_rod",group:77},"minecraft:mangrove_propagule":{type:"minecraft:mangrove_propagule",item:"minecraft:mangrove_propagule",group:78},"minecraft:moving_piston":{type:"minecraft:moving_piston",group:79},"minecraft:nether_portal":{type:"minecraft:nether_portal",group:80},"minecraft:note_block":{type:"minecraft:note_block",item:"minecraft:note_block",group:81},"minecraft:observer":{type:"minecraft:observer",item:"minecraft:observer",group:82},"minecraft:pale_hanging_moss":{type:"minecraft:pale_hanging_moss",item:"minecraft:pale_hanging_moss",group:83},"minecraft:pale_moss_carpet":{type:"minecraft:pale_moss_carpet",item:"minecraft:pale_moss_carpet",group:84},"minecraft:pink_petals":{type:"minecraft:pink_petals",item:"minecraft:pink_petals",group:85},"minecraft:piston":{type:"minecraft:piston",item:"minecraft:piston",group:86},"minecraft:sticky_piston":{type:"minecraft:sticky_piston",item:"minecraft:sticky_piston",group:86},"minecraft:piston_head":{type:"minecraft:piston_head",group:87},"minecraft:pitcher_crop":{type:"minecraft:pitcher_crop",item:"minecraft:pitcher_pod",group:88},"minecraft:pointed_dripstone":{type:"minecraft:pointed_dripstone",item:"minecraft:pointed_dripstone",group:89},"minecraft:powder_snow_cauldron":{type:"minecraft:powder_snow_cauldron",item:"minecraft:cauldron",group:90},"minecraft:water_cauldron":{type:"minecraft:water_cauldron",item:"minecraft:cauldron",group:90},"minecraft:rail":{type:"minecraft:rail",item:"minecraft:rail",group:91},"minecraft:redstone_torch":{type:"minecraft:redstone_torch",item:"minecraft:redstone_torch",group:92},"minecraft:redstone_wall_torch":{type:"minecraft:redstone_wall_torch",item:"minecraft:redstone_torch",group:93},"minecraft:redstone_wire":{type:"minecraft:redstone_wire",item:"minecraft:redstone",group:94},"minecraft:repeater":{type:"minecraft:repeater",item:"minecraft:repeater",group:95},"minecraft:respawn_anchor":{type:"minecraft:respawn_anchor",item:"minecraft:respawn_anchor",group:96},"minecraft:scaffolding":{type:"minecraft:scaffolding",item:"minecraft:scaffolding",group:97},"minecraft:sculk_catalyst":{type:"minecraft:sculk_catalyst",item:"minecraft:sculk_catalyst",group:98},"minecraft:sculk_sensor":{type:"minecraft:sculk_sensor",item:"minecraft:sculk_sensor",group:99},"minecraft:sculk_shrieker":{type:"minecraft:sculk_shrieker",item:"minecraft:sculk_shrieker",group:100},"minecraft:sea_pickle":{type:"minecraft:sea_pickle",item:"minecraft:sea_pickle",group:101},"minecraft:small_dripleaf":{type:"minecraft:small_dripleaf",item:"minecraft:small_dripleaf",group:102},"minecraft:sniffer_egg":{type:"minecraft:sniffer_egg",item:"minecraft:sniffer_egg",group:103},"minecraft:snow":{type:"minecraft:snow",item:"minecraft:snow",group:104},"minecraft:structure_block":{type:"minecraft:structure_block",item:"minecraft:structure_block",group:105},"minecraft:suspicious_gravel":{type:"minecraft:suspicious_gravel",item:"minecraft:suspicious_gravel",group:106},"minecraft:suspicious_sand":{type:"minecraft:suspicious_sand",item:"minecraft:suspicious_sand",group:106},"minecraft:tnt":{type:"minecraft:tnt",item:"minecraft:tnt",group:107},"minecraft:torchflower_crop":{type:"minecraft:torchflower_crop",item:"minecraft:torchflower_seeds",group:108},"minecraft:trial_spawner":{type:"minecraft:trial_spawner",item:"minecraft:trial_spawner",group:109},"minecraft:tripwire":{type:"minecraft:tripwire",item:"minecraft:string",group:110},"minecraft:tripwire_hook":{type:"minecraft:tripwire_hook",item:"minecraft:tripwire_hook",group:111},"minecraft:turtle_egg":{type:"minecraft:turtle_egg",item:"minecraft:turtle_egg",group:112},"minecraft:vault":{type:"minecraft:vault",item:"minecraft:vault",group:113},"minecraft:vine":{type:"minecraft:vine",item:"minecraft:vine",group:114}} diff --git a/datapacks/Bookshelf/data/bs.block/function/produce/block_particles/emit_block_particles.mcfunction b/datapacks/Bookshelf/data/bs.block/function/produce/block_particle/emit_block_particle.mcfunction similarity index 85% rename from datapacks/Bookshelf/data/bs.block/function/produce/block_particles/emit_block_particles.mcfunction rename to datapacks/Bookshelf/data/bs.block/function/produce/block_particle/emit_block_particle.mcfunction index 001fff9b62..881c7550c3 100644 --- a/datapacks/Bookshelf/data/bs.block/function/produce/block_particles/emit_block_particles.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/produce/block_particle/emit_block_particle.mcfunction @@ -16,10 +16,10 @@ # ------------------------------------------------------------------------------------------------------------ data modify storage bs:ctx _ set value {} -data modify storage bs:ctx _.name set from storage bs:in block.emit_block_particles.type -data modify storage bs:ctx _.properties set from storage bs:in block.emit_block_particles.properties -data modify storage bs:ctx _.delta set from storage bs:in block.emit_block_particles.delta -data modify storage bs:ctx _.speed set from storage bs:in block.emit_block_particles.speed -data modify storage bs:ctx _.count set from storage bs:in block.emit_block_particles.count +data modify storage bs:ctx _.name set from storage bs:in block.emit_block_particle.type +data modify storage bs:ctx _.properties set from storage bs:in block.emit_block_particle.properties +data modify storage bs:ctx _.delta set from storage bs:in block.emit_block_particle.delta +data modify storage bs:ctx _.speed set from storage bs:in block.emit_block_particle.speed +data modify storage bs:ctx _.count set from storage bs:in block.emit_block_particle.count -function bs.block:produce/block_particles/run with storage bs:ctx _ +function bs.block:produce/block_particle/run with storage bs:ctx _ diff --git a/datapacks/Bookshelf/data/bs.block/function/produce/block_particles/run.mcfunction b/datapacks/Bookshelf/data/bs.block/function/produce/block_particle/run.mcfunction similarity index 100% rename from datapacks/Bookshelf/data/bs.block/function/produce/block_particles/run.mcfunction rename to datapacks/Bookshelf/data/bs.block/function/produce/block_particle/run.mcfunction diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/keep_properties/recurse/next.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/keep_properties/recurse/next.mcfunction index e92f1d7cec..1a4265948a 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/keep_properties/recurse/next.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/keep_properties/recurse/next.mcfunction @@ -13,9 +13,9 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store success score #success bs.data run data modify storage bs:ctx _.i[-1].v set from storage bs:out block.properties."$(name)" -execute if score #success bs.data matches 0 run function bs.block:transform/keep_properties/recurse/get_default with storage bs:ctx _.i[-1] -execute if score #success bs.data matches 1 run function bs.block:transform/keep_properties/recurse/get_by_value with storage bs:ctx _.i[-1] +$execute store success score #s bs.ctx run data modify storage bs:ctx _.i[-1].v set from storage bs:out block.properties."$(name)" +execute if score #s bs.ctx matches 0 run function bs.block:transform/keep_properties/recurse/get_default with storage bs:ctx _.i[-1] +execute if score #s bs.ctx matches 1 run function bs.block:transform/keep_properties/recurse/get_by_value with storage bs:ctx _.i[-1] data modify storage bs:ctx _.p merge from storage bs:ctx _.v.p data modify storage bs:ctx _.s merge from storage bs:ctx _.v.s diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/merge_properties/recurse/next.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/merge_properties/recurse/next.mcfunction index 7d026f500c..a4f94e4431 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/merge_properties/recurse/next.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/merge_properties/recurse/next.mcfunction @@ -13,8 +13,8 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store success score #success bs.data run data modify storage bs:ctx _.i[-1].v set from storage bs:ctx _.p."$(name)" -execute if score #success bs.data matches 1 run function bs.block:transform/merge_properties/recurse/get_by_value with storage bs:ctx _.i[-1] +$execute store success score #s bs.ctx run data modify storage bs:ctx _.i[-1].v set from storage bs:ctx _.p."$(name)" +execute if score #s bs.ctx matches 1 run function bs.block:transform/merge_properties/recurse/get_by_value with storage bs:ctx _.i[-1] data modify storage bs:out block.properties merge from storage bs:ctx _.v.p data modify storage bs:out block._ merge from storage bs:ctx _.v.s diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/replace_type.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/replace_type.mcfunction index fa774cf735..76bb57b741 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/replace_type.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/replace_type.mcfunction @@ -15,8 +15,8 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/block.html#manage-type # ------------------------------------------------------------------------------------------------------------ -$execute store success score #success bs.data run data modify storage bs:ctx _ set from storage bs:const block.types."$(type)" -execute if score #success bs.data matches 0 run return fail -execute store success score #success bs.data run data modify storage bs:ctx _.group set from storage bs:out block.group -execute if score #success bs.data matches 0 run data modify storage bs:out block.type set from storage bs:ctx _.type -execute if score #success bs.data matches 1 run data modify storage bs:out block set from storage bs:ctx _ +$execute store success score #s bs.ctx run data modify storage bs:ctx _ set from storage bs:const block.types."$(type)" +execute if score #s bs.ctx matches 0 run return fail +execute store success score #s bs.ctx run data modify storage bs:ctx _.group set from storage bs:out block.group +execute if score #s bs.ctx matches 0 run data modify storage bs:out block.type set from storage bs:ctx _.type +execute if score #s bs.ctx matches 1 run data modify storage bs:out block set from storage bs:ctx _ diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/next.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/next.mcfunction index 04c4c07cf5..8e4a901a1c 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/next.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/next.mcfunction @@ -13,9 +13,9 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store result score #block.shift_properties.len bs.data if data storage bs:ctx _.g[{n:"$(name)"}].o[] +$execute store result score #l bs.ctx if data storage bs:ctx _.g[{n:"$(name)"}].o[] -execute if score #block.shift_properties.len bs.data matches 1.. \ +execute if score #l bs.ctx matches 1.. \ run function bs.block:transform/shift_properties/recurse/shift_property with storage bs:ctx _.i[-1] data remove storage bs:ctx _.i[-1] diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/shift_property.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/shift_property.mcfunction index ee711606a3..3f2385bde7 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/shift_property.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/shift_properties/recurse/shift_property.mcfunction @@ -13,15 +13,15 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -scoreboard players set #block.shift_properties.by bs.data 1 -execute if data storage bs:ctx _.i[-1].by store result score #block.shift_properties.by bs.data run data get storage bs:ctx _.i[-1].by +scoreboard players set #n bs.ctx 1 +execute if data storage bs:ctx _.i[-1].by store result score #n bs.ctx run data get storage bs:ctx _.i[-1].by -scoreboard players set #block.shift_properties.i bs.data 0 -$execute store success score #success bs.data run data modify storage bs:ctx _.i[-1].v set from storage bs:out block.properties."$(name)" -execute if score #success bs.data matches 1 \ - store result score #block.shift_properties.i bs.data \ +scoreboard players set #i bs.ctx 0 +$execute store success score #s bs.ctx run data modify storage bs:ctx _.i[-1].v set from storage bs:out block.properties."$(name)" +execute if score #s bs.ctx matches 1 \ + store result score #i bs.ctx \ run function bs.block:transform/shift_properties/recurse/index with storage bs:ctx _.i[-1] -scoreboard players operation #block.shift_properties.i bs.data += #block.shift_properties.by bs.data -execute store result storage bs:ctx _.i[-1].i short 1 run scoreboard players operation #block.shift_properties.i bs.data %= #block.shift_properties bs.data +scoreboard players operation #i bs.ctx += #n bs.ctx +execute store result storage bs:ctx _.i[-1].i short 1 run scoreboard players operation #i bs.ctx %= #l bs.ctx function bs.block:transform/shift_properties/recurse/update_property with storage bs:ctx _.i[-1] diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/find_match.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/find_match.mcfunction index 5a1aa99bca..924df83b03 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/find_match.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/find_match.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store success score #success bs.data if data storage bs:ctx _{attrs:$(attrs)} -execute if score #success bs.data matches 1 store result score #result bs.data if data storage bs:ctx _.entry.attrs[] -execute if score #success bs.data matches 1 run scoreboard players operation #block.attrs bs.data > #result bs.data -execute if score #success bs.data matches 1 run data modify storage bs:ctx _.found append from storage bs:ctx _.entry +$execute store success score #s bs.ctx if data storage bs:ctx _{attrs:$(attrs)} +execute if score #s bs.ctx matches 1 store result score #r bs.ctx if data storage bs:ctx _.entry.attrs[] +execute if score #s bs.ctx matches 1 run scoreboard players operation #a bs.ctx > #r bs.ctx +execute if score #s bs.ctx matches 1 run data modify storage bs:ctx _.found append from storage bs:ctx _.entry data remove storage bs:ctx _.sets[-1] -execute store success score #success bs.data run data modify storage bs:ctx _.entry set from storage bs:ctx _.sets[-1] -execute if score #success bs.data matches 1 run function bs.block:transform/type_mappings/find_match with storage bs:ctx _.entry +execute store success score #s bs.ctx run data modify storage bs:ctx _.entry set from storage bs:ctx _.sets[-1] +execute if score #s bs.ctx matches 1 run function bs.block:transform/type_mappings/find_match with storage bs:ctx _.entry diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/map_type.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/map_type.mcfunction index 74a79251ed..a32388a875 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/map_type.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/map_type.mcfunction @@ -24,12 +24,12 @@ function bs.block:transform/type_mappings/filter_type with storage bs:out block execute unless data storage bs:ctx _.filter run return fail # find entries that match the attributes -scoreboard players set #block.attrs bs.data 0 +scoreboard players set #a bs.ctx 0 data modify storage bs:ctx _.entry set from storage bs:ctx _.sets[-1] function bs.block:transform/type_mappings/find_match with storage bs:ctx _.entry # filter out entries that have more attributes -execute store result storage bs:ctx y byte 1 run scoreboard players get #block.attrs bs.data +execute store result storage bs:ctx y byte 1 run scoreboard players get #a bs.ctx function bs.block:transform/type_mappings/keep_best with storage bs:ctx # replace the type in bs:out block diff --git a/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/mix_type.mcfunction b/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/mix_type.mcfunction index 7f039cf995..de5f40c159 100644 --- a/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/mix_type.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/transform/type_mappings/mix_type.mcfunction @@ -24,13 +24,13 @@ function bs.block:transform/type_mappings/filter_type with storage bs:out block execute unless data storage bs:ctx _.filter run return fail # find entries that match the attributes -scoreboard players set #block.attrs bs.data 0 +scoreboard players set #a bs.ctx 0 data modify storage bs:ctx _.attrs append from storage bs:ctx _.filter.attrs[] data modify storage bs:ctx _.entry set from storage bs:ctx _.sets[-1] function bs.block:transform/type_mappings/find_match with storage bs:ctx _.entry # filter out entries that have more attributes -execute store result storage bs:ctx y byte 1 run scoreboard players get #block.attrs bs.data +execute store result storage bs:ctx y byte 1 run scoreboard players get #a bs.ctx function bs.block:transform/type_mappings/keep_best with storage bs:ctx # filter out entries that are different from the input / output diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/entity.mcfunction b/datapacks/Bookshelf/data/bs.block/function/utils/get_custom_dimension.mcfunction similarity index 84% rename from datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/entity.mcfunction rename to datapacks/Bookshelf/data/bs.block/function/utils/get_custom_dimension.mcfunction index 60726e143c..4fb21a3d81 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/entity.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/utils/get_custom_dimension.mcfunction @@ -13,5 +13,5 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$data modify storage bs:ctx _.entity set value $(text) -data modify storage bs:ctx _.entity set from storage bs:ctx _.entity.insertion +data modify storage bs:data block._.dim set from entity @s Brain.memories.minecraft:home.value.dimension +kill @s diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/y_neg.mcfunction b/datapacks/Bookshelf/data/bs.block/function/utils/get_dimension.mcfunction similarity index 60% rename from datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/y_neg.mcfunction rename to datapacks/Bookshelf/data/bs.block/function/utils/get_dimension.mcfunction index 39611f093e..a96a3ae8d2 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/y_neg.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/function/utils/get_dimension.mcfunction @@ -13,9 +13,8 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result entity B5-0-0-0-1 Pos[1] double .001 run scoreboard players operation #move.y1 bs.data += #move.sh bs.data -execute as B5-0-0-0-1 at @s run tp @s ~ ~-.000000001 ~ -execute store result score #move.y1 bs.data run data get entity B5-0-0-0-1 Pos[1] -scoreboard players operation #move.y1 bs.data *= 1000 bs.const -scoreboard players operation #move.y1 bs.data -= #move.y bs.data -scoreboard players remove #move.y2 bs.data 1000 +execute if dimension minecraft:overworld run return run data modify storage bs:data block._.dim set value "minecraft:overworld" +execute if dimension minecraft:the_nether run return run data modify storage bs:data block._.dim set value "minecraft:the_nether" +execute if dimension minecraft:the_end run return run data modify storage bs:data block._.dim set value "minecraft:the_end" + +execute positioned -30000000 0 1600 summon piglin_brute run function bs.block:utils/get_custom_dimension diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/100.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/100.json index 89f6e9a077..1a12e9f68f 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/100.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/100.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_record":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_record:'false'},_:{0:'has_record=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_record":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_record:'true'},_:{0:'has_record=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/99","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"down"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'down'},_:{1:'facing=down,'}}"}]},{"type":"loot_table","value":"bs.block:get/99","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"north"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'north'},_:{1:'facing=north,'}}"}]},{"type":"loot_table","value":"bs.block:get/99","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"south"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'south'},_:{1:'facing=south,'}}"}]},{"type":"loot_table","value":"bs.block:get/99","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'west'},_:{1:'facing=west,'}}"}]},{"type":"loot_table","value":"bs.block:get/99","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'east'},_:{1:'facing=east,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/101.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/101.json index 4e984869b9..89f6e9a077 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/101.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/101.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hanging":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hanging:'false'},_:{1:'hanging=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hanging":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hanging:'true'},_:{1:'hanging=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_record":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_record:'false'},_:{0:'has_record=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_record":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_record:'true'},_:{0:'has_record=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/102.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/102.json index 76f52b7c7e..4e984869b9 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/102.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/102.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"lower"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'lower'},_:{0:'half=lower,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"upper"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'upper'},_:{0:'half=upper,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hanging":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hanging:'false'},_:{1:'hanging=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hanging":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hanging:'true'},_:{1:'hanging=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/103.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/103.json index f2e5f4d5cc..76f52b7c7e 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/103.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/103.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'0'},_:{0:'level=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'1'},_:{0:'level=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'2'},_:{0:'level=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'3'},_:{0:'level=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'4'},_:{0:'level=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'5'},_:{0:'level=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'6'},_:{0:'level=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'7'},_:{0:'level=7,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'8'},_:{0:'level=8,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'9'},_:{0:'level=9,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'10'},_:{0:'level=10,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'11'},_:{0:'level=11,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'12'},_:{0:'level=12,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'13'},_:{0:'level=13,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'14'},_:{0:'level=14,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'15'},_:{0:'level=15,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"lower"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'lower'},_:{0:'half=lower,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"upper"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'upper'},_:{0:'half=upper,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/104.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/104.json index 29b168927c..f2e5f4d5cc 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/104.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/104.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_book":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_book:'false'},_:{2:'has_book=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_book":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_book:'true'},_:{2:'has_book=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'0'},_:{0:'level=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'1'},_:{0:'level=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'2'},_:{0:'level=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'3'},_:{0:'level=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'4'},_:{0:'level=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'5'},_:{0:'level=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'6'},_:{0:'level=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'7'},_:{0:'level=7,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'8'},_:{0:'level=8,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'9'},_:{0:'level=9,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'10'},_:{0:'level=10,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'11'},_:{0:'level=11,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'12'},_:{0:'level=12,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'13'},_:{0:'level=13,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'14'},_:{0:'level=14,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'15'},_:{0:'level=15,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/105.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/105.json index 228da81db4..29b168927c 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/105.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/105.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'15'},_:{1:'level=15,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'0'},_:{1:'level=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'1'},_:{1:'level=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'2'},_:{1:'level=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'3'},_:{1:'level=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'4'},_:{1:'level=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'5'},_:{1:'level=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'6'},_:{1:'level=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'7'},_:{1:'level=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'8'},_:{1:'level=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'9'},_:{1:'level=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'10'},_:{1:'level=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'11'},_:{1:'level=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'12'},_:{1:'level=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'13'},_:{1:'level=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'14'},_:{1:'level=14,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_book":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_book:'false'},_:{2:'has_book=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"has_book":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{has_book:'true'},_:{2:'has_book=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/106.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/106.json index 2bedf0c3b7..228da81db4 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/106.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/106.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/28","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'false'},_:{2:'powered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/28","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'true'},_:{2:'powered=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'15'},_:{1:'level=15,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'0'},_:{1:'level=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'1'},_:{1:'level=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'2'},_:{1:'level=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'3'},_:{1:'level=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'4'},_:{1:'level=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'5'},_:{1:'level=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'6'},_:{1:'level=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'7'},_:{1:'level=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'8'},_:{1:'level=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'9'},_:{1:'level=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'10'},_:{1:'level=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'11'},_:{1:'level=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'12'},_:{1:'level=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'13'},_:{1:'level=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'14'},_:{1:'level=14,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/107.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/107.json index 0b88e7ab3d..2bedf0c3b7 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/107.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/107.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/101","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{2:'age=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/101","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{2:'age=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/101","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'2'},_:{2:'age=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/101","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'3'},_:{2:'age=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/101","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'4'},_:{2:'age=4,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/28","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'false'},_:{2:'powered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/28","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'true'},_:{2:'powered=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/108.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/108.json index daf0447cb4..1046d0bce9 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/108.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/108.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/107","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"stage":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{stage:'0'},_:{3:'stage=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/107","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"stage":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{stage:'1'},_:{3:'stage=1,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{2:'age=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{2:'age=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'2'},_:{2:'age=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'3'},_:{2:'age=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'4'},_:{2:'age=4,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/109.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/109.json index 59faf2ed59..cf9a7f3f6b 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/109.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/109.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"type":"normal"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{type:'normal'},_:{1:'type=normal,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"type":"sticky"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{type:'sticky'},_:{1:'type=sticky,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/108","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"stage":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{stage:'0'},_:{3:'stage=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/108","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"stage":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{stage:'1'},_:{3:'stage=1,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/110.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/110.json index f7b595f794..59faf2ed59 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/110.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/110.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"axis":"x"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{axis:'x'},_:{0:'axis=x,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"axis":"z"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{axis:'z'},_:{0:'axis=z,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"type":"normal"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{type:'normal'},_:{1:'type=normal,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"type":"sticky"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{type:'sticky'},_:{1:'type=sticky,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/111.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/111.json index b2b12d7516..f7b595f794 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/111.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/111.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"harp"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'harp'},_:{1:'instrument=harp,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"basedrum"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'basedrum'},_:{1:'instrument=basedrum,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"snare"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'snare'},_:{1:'instrument=snare,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"hat"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'hat'},_:{1:'instrument=hat,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"bass"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'bass'},_:{1:'instrument=bass,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"flute"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'flute'},_:{1:'instrument=flute,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"bell"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'bell'},_:{1:'instrument=bell,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"guitar"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'guitar'},_:{1:'instrument=guitar,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"chime"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'chime'},_:{1:'instrument=chime,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"xylophone"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'xylophone'},_:{1:'instrument=xylophone,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"iron_xylophone"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'iron_xylophone'},_:{1:'instrument=iron_xylophone,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"cow_bell"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'cow_bell'},_:{1:'instrument=cow_bell,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"didgeridoo"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'didgeridoo'},_:{1:'instrument=didgeridoo,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"bit"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'bit'},_:{1:'instrument=bit,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"banjo"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'banjo'},_:{1:'instrument=banjo,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"pling"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'pling'},_:{1:'instrument=pling,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"zombie"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'zombie'},_:{1:'instrument=zombie,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"skeleton"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'skeleton'},_:{1:'instrument=skeleton,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"creeper"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'creeper'},_:{1:'instrument=creeper,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"dragon"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'dragon'},_:{1:'instrument=dragon,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"wither_skeleton"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'wither_skeleton'},_:{1:'instrument=wither_skeleton,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"piglin"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'piglin'},_:{1:'instrument=piglin,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"custom_head"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'custom_head'},_:{1:'instrument=custom_head,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"axis":"x"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{axis:'x'},_:{0:'axis=x,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"axis":"z"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{axis:'z'},_:{0:'axis=z,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/112.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/112.json index 359966b6e9..b2b12d7516 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/112.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/112.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'0'},_:{2:'note=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'1'},_:{2:'note=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'2'},_:{2:'note=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'3'},_:{2:'note=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'4'},_:{2:'note=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'5'},_:{2:'note=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'6'},_:{2:'note=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'7'},_:{2:'note=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'8'},_:{2:'note=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'9'},_:{2:'note=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'10'},_:{2:'note=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'11'},_:{2:'note=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'12'},_:{2:'note=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'13'},_:{2:'note=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'14'},_:{2:'note=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'15'},_:{2:'note=15,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"16"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'16'},_:{2:'note=16,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"17"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'17'},_:{2:'note=17,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"18"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'18'},_:{2:'note=18,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"19"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'19'},_:{2:'note=19,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"20"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'20'},_:{2:'note=20,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"21"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'21'},_:{2:'note=21,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"22"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'22'},_:{2:'note=22,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"23"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'23'},_:{2:'note=23,'}}"}]},{"type":"loot_table","value":"bs.block:get/111","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"24"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'24'},_:{2:'note=24,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"harp"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'harp'},_:{1:'instrument=harp,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"basedrum"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'basedrum'},_:{1:'instrument=basedrum,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"snare"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'snare'},_:{1:'instrument=snare,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"hat"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'hat'},_:{1:'instrument=hat,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"bass"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'bass'},_:{1:'instrument=bass,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"flute"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'flute'},_:{1:'instrument=flute,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"bell"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'bell'},_:{1:'instrument=bell,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"guitar"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'guitar'},_:{1:'instrument=guitar,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"chime"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'chime'},_:{1:'instrument=chime,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"xylophone"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'xylophone'},_:{1:'instrument=xylophone,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"iron_xylophone"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'iron_xylophone'},_:{1:'instrument=iron_xylophone,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"cow_bell"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'cow_bell'},_:{1:'instrument=cow_bell,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"didgeridoo"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'didgeridoo'},_:{1:'instrument=didgeridoo,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"bit"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'bit'},_:{1:'instrument=bit,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"banjo"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'banjo'},_:{1:'instrument=banjo,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"pling"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'pling'},_:{1:'instrument=pling,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"zombie"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'zombie'},_:{1:'instrument=zombie,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"skeleton"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'skeleton'},_:{1:'instrument=skeleton,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"creeper"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'creeper'},_:{1:'instrument=creeper,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"dragon"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'dragon'},_:{1:'instrument=dragon,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"wither_skeleton"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'wither_skeleton'},_:{1:'instrument=wither_skeleton,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"piglin"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'piglin'},_:{1:'instrument=piglin,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"instrument":"custom_head"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{instrument:'custom_head'},_:{1:'instrument=custom_head,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/113.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/113.json index f0ed84de30..caa464386a 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/113.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/113.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'false'},_:{1:'powered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'true'},_:{1:'powered=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'0'},_:{2:'note=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'1'},_:{2:'note=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'2'},_:{2:'note=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'3'},_:{2:'note=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'4'},_:{2:'note=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'5'},_:{2:'note=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'6'},_:{2:'note=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'7'},_:{2:'note=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'8'},_:{2:'note=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'9'},_:{2:'note=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'10'},_:{2:'note=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'11'},_:{2:'note=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'12'},_:{2:'note=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'13'},_:{2:'note=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'14'},_:{2:'note=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'15'},_:{2:'note=15,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"16"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'16'},_:{2:'note=16,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"17"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'17'},_:{2:'note=17,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"18"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'18'},_:{2:'note=18,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"19"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'19'},_:{2:'note=19,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"20"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'20'},_:{2:'note=20,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"21"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'21'},_:{2:'note=21,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"22"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'22'},_:{2:'note=22,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"23"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'23'},_:{2:'note=23,'}}"}]},{"type":"loot_table","value":"bs.block:get/112","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"note":"24"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{note:'24'},_:{2:'note=24,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/114.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/114.json index 3636589023..f0ed84de30 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/114.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/114.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'1'},_:{1:'flower_amount=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'2'},_:{1:'flower_amount=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'3'},_:{1:'flower_amount=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'4'},_:{1:'flower_amount=4,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'false'},_:{1:'powered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'true'},_:{1:'powered=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/115.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/115.json index 616c8c776e..89ce0878fb 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/115.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/115.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"extended":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{extended:'false'},_:{1:'extended=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"extended":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{extended:'true'},_:{1:'extended=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"tip":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{tip:'true'},_:{0:'tip=true,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"tip":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{tip:'false'},_:{0:'tip=false,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/116.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/116.json index 4b71cb27e4..06a339c2a5 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/116.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/116.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/109","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"short":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{short:'false'},_:{2:'short=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/109","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"short":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{short:'true'},_:{2:'short=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bottom":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bottom:'true'},_:{0:'bottom=true,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bottom":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bottom:'false'},_:{0:'bottom=false,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/117.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/117.json index c3ec15363e..dce93a2d9a 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/117.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/117.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{1:'age=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{1:'age=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'2'},_:{1:'age=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'3'},_:{1:'age=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/102","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'4'},_:{1:'age=4,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/116","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'none'},_:{1:'east=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/116","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"low"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'low'},_:{1:'east=low,'}}"}]},{"type":"loot_table","value":"bs.block:get/116","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"tall"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'tall'},_:{1:'east=tall,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/118.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/118.json index 530126bbb9..41f27a1a44 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/118.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/118.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"tip"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'tip'},_:{1:'thickness=tip,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"frustum"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'frustum'},_:{1:'thickness=frustum,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"middle"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'middle'},_:{1:'thickness=middle,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"base"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'base'},_:{1:'thickness=base,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"tip_merge"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'tip_merge'},_:{1:'thickness=tip_merge,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/117","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'none'},_:{2:'north=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/117","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"low"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'low'},_:{2:'north=low,'}}"}]},{"type":"loot_table","value":"bs.block:get/117","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"tall"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'tall'},_:{2:'north=tall,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/119.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/119.json index 6ab390cbc2..e96ea7dc11 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/119.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/119.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/118","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vertical_direction":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vertical_direction:'up'},_:{2:'vertical_direction=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/118","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vertical_direction":"down"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vertical_direction:'down'},_:{2:'vertical_direction=down,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/118","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'none'},_:{3:'south=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/118","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'low'},_:{3:'south=low,'}}"}]},{"type":"loot_table","value":"bs.block:get/118","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"tall"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'tall'},_:{3:'south=tall,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/120.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/120.json index d75ae2db65..b8b3d428b2 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/120.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/120.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'1'},_:{0:'level=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'2'},_:{0:'level=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'3'},_:{0:'level=3,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/119","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'none'},_:{4:'west=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/119","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'low'},_:{4:'west=low,'}}"}]},{"type":"loot_table","value":"bs.block:get/119","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"tall"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'tall'},_:{4:'west=tall,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/121.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/121.json index 252bd9e523..3636589023 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/121.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/121.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"north_south"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'north_south'},_:{1:'shape=north_south,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"east_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'east_west'},_:{1:'shape=east_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_east'},_:{1:'shape=ascending_east,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_west'},_:{1:'shape=ascending_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_north"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_north'},_:{1:'shape=ascending_north,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_south"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_south'},_:{1:'shape=ascending_south,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"south_east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'south_east'},_:{1:'shape=south_east,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"south_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'south_west'},_:{1:'shape=south_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"north_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'north_west'},_:{1:'shape=north_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"north_east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'north_east'},_:{1:'shape=north_east,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'1'},_:{1:'flower_amount=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'2'},_:{1:'flower_amount=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'3'},_:{1:'flower_amount=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"flower_amount":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{flower_amount:'4'},_:{1:'flower_amount=4,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/122.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/122.json index d74bc64eec..616c8c776e 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/122.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/122.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/87","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'none'},_:{1:'east=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/87","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'up'},_:{1:'east=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/87","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'side'},_:{1:'east=side,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"extended":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{extended:'false'},_:{1:'extended=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"extended":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{extended:'true'},_:{1:'extended=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/123.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/123.json index fe7df0e6c3..33bde9f9be 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/123.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/123.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/122","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'none'},_:{2:'north=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/122","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'up'},_:{2:'north=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/122","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'side'},_:{2:'north=side,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/110","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"short":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{short:'false'},_:{2:'short=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/110","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"short":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{short:'true'},_:{2:'short=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/124.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/124.json index 073c5a8e08..667cda1784 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/124.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/124.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/123","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'none'},_:{3:'south=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/123","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'up'},_:{3:'south=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/123","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'side'},_:{3:'south=side,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/103","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{1:'age=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/103","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{1:'age=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/103","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'2'},_:{1:'age=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/103","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'3'},_:{1:'age=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/103","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'4'},_:{1:'age=4,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/125.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/125.json index ac05ce8dcc..530126bbb9 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/125.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/125.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/124","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'none'},_:{4:'west=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/124","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'up'},_:{4:'west=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/124","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'side'},_:{4:'west=side,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"tip"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'tip'},_:{1:'thickness=tip,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"frustum"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'frustum'},_:{1:'thickness=frustum,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"middle"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'middle'},_:{1:'thickness=middle,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"base"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'base'},_:{1:'thickness=base,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"thickness":"tip_merge"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{thickness:'tip_merge'},_:{1:'thickness=tip_merge,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/126.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/126.json index 48b0360552..8584033417 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/126.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/126.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'1'},_:{2:'delay=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'2'},_:{2:'delay=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'3'},_:{2:'delay=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'4'},_:{2:'delay=4,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/125","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vertical_direction":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vertical_direction:'up'},_:{2:'vertical_direction=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/125","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vertical_direction":"down"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vertical_direction:'down'},_:{2:'vertical_direction=down,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/127.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/127.json index 40be5fa9d1..d75ae2db65 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/127.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/127.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/126","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"locked":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{locked:'false'},_:{3:'locked=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/126","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"locked":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{locked:'true'},_:{3:'locked=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'1'},_:{0:'level=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'2'},_:{0:'level=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"level":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{level:'3'},_:{0:'level=3,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/128.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/128.json index 7ce81e5587..252bd9e523 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/128.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/128.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'0'},_:{0:'charges=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'1'},_:{0:'charges=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'2'},_:{0:'charges=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'3'},_:{0:'charges=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'4'},_:{0:'charges=4,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"north_south"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'north_south'},_:{1:'shape=north_south,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"east_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'east_west'},_:{1:'shape=east_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_east'},_:{1:'shape=ascending_east,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_west'},_:{1:'shape=ascending_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_north"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_north'},_:{1:'shape=ascending_north,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"ascending_south"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'ascending_south'},_:{1:'shape=ascending_south,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"south_east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'south_east'},_:{1:'shape=south_east,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"south_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'south_west'},_:{1:'shape=south_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"north_west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'north_west'},_:{1:'shape=north_west,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shape":"north_east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shape:'north_east'},_:{1:'shape=north_east,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/129.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/129.json index 58dafdb1e6..70f335cd16 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/129.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/129.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bottom":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bottom:'false'},_:{1:'bottom=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bottom":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bottom:'true'},_:{1:'bottom=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/88","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'none'},_:{1:'east=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/88","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'up'},_:{1:'east=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/88","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{east:'side'},_:{1:'east=side,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/130.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/130.json index 10b82eda7c..c8e119fd7d 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/130.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/130.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'7'},_:{2:'distance=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'0'},_:{2:'distance=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'1'},_:{2:'distance=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'2'},_:{2:'distance=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'3'},_:{2:'distance=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'4'},_:{2:'distance=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'5'},_:{2:'distance=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'6'},_:{2:'distance=6,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'none'},_:{2:'north=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'up'},_:{2:'north=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/129","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{north:'side'},_:{2:'north=side,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/131.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/131.json index 023ad51da4..d4db09c48b 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/131.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/131.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bloom":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bloom:'false'},_:{0:'bloom=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bloom":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bloom:'true'},_:{0:'bloom=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/130","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'none'},_:{3:'south=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/130","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'up'},_:{3:'south=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/130","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{south:'side'},_:{3:'south=side,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/132.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/132.json index a53d3dd1f0..601429cba8 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/132.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/132.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'0'},_:{1:'power=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'1'},_:{1:'power=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'2'},_:{1:'power=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'3'},_:{1:'power=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'4'},_:{1:'power=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'5'},_:{1:'power=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'6'},_:{1:'power=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'7'},_:{1:'power=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'8'},_:{1:'power=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'9'},_:{1:'power=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'10'},_:{1:'power=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'11'},_:{1:'power=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'12'},_:{1:'power=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'13'},_:{1:'power=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'14'},_:{1:'power=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'15'},_:{1:'power=15,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/131","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'none'},_:{4:'west=none,'}}"}]},{"type":"loot_table","value":"bs.block:get/131","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"up"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'up'},_:{4:'west=up,'}}"}]},{"type":"loot_table","value":"bs.block:get/131","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"side"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{west:'side'},_:{4:'west=side,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/133.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/133.json index 2c5cc61b7a..48b0360552 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/133.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/133.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/132","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"sculk_sensor_phase":"inactive"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{sculk_sensor_phase:'inactive'},_:{2:'sculk_sensor_phase=inactive,'}}"}]},{"type":"loot_table","value":"bs.block:get/132","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"sculk_sensor_phase":"active"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{sculk_sensor_phase:'active'},_:{2:'sculk_sensor_phase=active,'}}"}]},{"type":"loot_table","value":"bs.block:get/132","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"sculk_sensor_phase":"cooldown"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{sculk_sensor_phase:'cooldown'},_:{2:'sculk_sensor_phase=cooldown,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'1'},_:{2:'delay=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'2'},_:{2:'delay=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'3'},_:{2:'delay=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"delay":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{delay:'4'},_:{2:'delay=4,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/134.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/134.json index cec0f22018..0175d2c522 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/134.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/134.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"can_summon":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{can_summon:'false'},_:{1:'can_summon=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"can_summon":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{can_summon:'true'},_:{1:'can_summon=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/133","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"locked":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{locked:'false'},_:{3:'locked=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/133","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"locked":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{locked:'true'},_:{3:'locked=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/135.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/135.json index ccba14a5bb..7ce81e5587 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/135.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/135.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/134","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shrieking":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shrieking:'false'},_:{2:'shrieking=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/134","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shrieking":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shrieking:'true'},_:{2:'shrieking=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'0'},_:{0:'charges=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'1'},_:{0:'charges=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'2'},_:{0:'charges=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'3'},_:{0:'charges=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"charges":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{charges:'4'},_:{0:'charges=4,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/136.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/136.json index 39f317d20d..58dafdb1e6 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/136.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/136.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'1'},_:{1:'pickles=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'2'},_:{1:'pickles=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'3'},_:{1:'pickles=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'4'},_:{1:'pickles=4,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bottom":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bottom:'false'},_:{1:'bottom=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bottom":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bottom:'true'},_:{1:'bottom=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/137.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/137.json index 8cd8d89aea..97f1c49450 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/137.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/137.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"lower"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'lower'},_:{2:'half=lower,'}}"}]},{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"upper"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'upper'},_:{2:'half=upper,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'7'},_:{2:'distance=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'0'},_:{2:'distance=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'1'},_:{2:'distance=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'2'},_:{2:'distance=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'3'},_:{2:'distance=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'4'},_:{2:'distance=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'5'},_:{2:'distance=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/136","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"distance":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{distance:'6'},_:{2:'distance=6,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/138.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/138.json index 1cc4461760..023ad51da4 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/138.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/138.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hatch":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hatch:'0'},_:{0:'hatch=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hatch":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hatch:'1'},_:{0:'hatch=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hatch":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hatch:'2'},_:{0:'hatch=2,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bloom":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bloom:'false'},_:{0:'bloom=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bloom":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{bloom:'true'},_:{0:'bloom=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/139.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/139.json index 0874716efa..a53d3dd1f0 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/139.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/139.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'1'},_:{0:'layers=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'2'},_:{0:'layers=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'3'},_:{0:'layers=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'4'},_:{0:'layers=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'5'},_:{0:'layers=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'6'},_:{0:'layers=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'7'},_:{0:'layers=7,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'8'},_:{0:'layers=8,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'0'},_:{1:'power=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'1'},_:{1:'power=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'2'},_:{1:'power=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'3'},_:{1:'power=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'4'},_:{1:'power=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'5'},_:{1:'power=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'6'},_:{1:'power=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'7'},_:{1:'power=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'8'},_:{1:'power=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'9'},_:{1:'power=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'10'},_:{1:'power=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'11'},_:{1:'power=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'12'},_:{1:'power=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'13'},_:{1:'power=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'14'},_:{1:'power=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'15'},_:{1:'power=15,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/140.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/140.json index c7480cfaf7..24682ed95b 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/140.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/140.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"load"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'load'},_:{0:'mode=load,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"corner"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'corner'},_:{0:'mode=corner,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"data"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'data'},_:{0:'mode=data,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"save"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'save'},_:{0:'mode=save,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/139","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"sculk_sensor_phase":"inactive"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{sculk_sensor_phase:'inactive'},_:{2:'sculk_sensor_phase=inactive,'}}"}]},{"type":"loot_table","value":"bs.block:get/139","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"sculk_sensor_phase":"active"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{sculk_sensor_phase:'active'},_:{2:'sculk_sensor_phase=active,'}}"}]},{"type":"loot_table","value":"bs.block:get/139","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"sculk_sensor_phase":"cooldown"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{sculk_sensor_phase:'cooldown'},_:{2:'sculk_sensor_phase=cooldown,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/141.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/141.json index 2dd9a92e18..cec0f22018 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/141.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/141.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'0'},_:{0:'dusted=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'1'},_:{0:'dusted=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'2'},_:{0:'dusted=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'3'},_:{0:'dusted=3,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"can_summon":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{can_summon:'false'},_:{1:'can_summon=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"can_summon":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{can_summon:'true'},_:{1:'can_summon=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/142.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/142.json index b99713cb09..202143f039 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/142.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/142.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"unstable":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{unstable:'false'},_:{0:'unstable=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"unstable":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{unstable:'true'},_:{0:'unstable=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/141","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shrieking":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shrieking:'false'},_:{2:'shrieking=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/141","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"shrieking":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{shrieking:'true'},_:{2:'shrieking=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/143.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/143.json index 8d12d1cf20..39f317d20d 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/143.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/143.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{0:'age=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{0:'age=1,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'1'},_:{1:'pickles=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'2'},_:{1:'pickles=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'3'},_:{1:'pickles=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/7","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"pickles":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{pickles:'4'},_:{1:'pickles=4,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/144.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/144.json index 23060fa36b..8cd8d89aea 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/144.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/144.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'false'},_:{0:'ominous=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'true'},_:{0:'ominous=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"lower"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'lower'},_:{2:'half=lower,'}}"}]},{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"half":"upper"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{half:'upper'},_:{2:'half=upper,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/145.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/145.json index 8d46c24633..1cc4461760 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/145.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/145.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/144","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"inactive"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'inactive'},_:{1:'trial_spawner_state=inactive,'}}"}]},{"type":"loot_table","value":"bs.block:get/144","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"waiting_for_players"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'waiting_for_players'},_:{1:'trial_spawner_state=waiting_for_players,'}}"}]},{"type":"loot_table","value":"bs.block:get/144","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"active"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'active'},_:{1:'trial_spawner_state=active,'}}"}]},{"type":"loot_table","value":"bs.block:get/144","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"waiting_for_reward_ejection"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'waiting_for_reward_ejection'},_:{1:'trial_spawner_state=waiting_for_reward_ejection,'}}"}]},{"type":"loot_table","value":"bs.block:get/144","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"ejecting_reward"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'ejecting_reward'},_:{1:'trial_spawner_state=ejecting_reward,'}}"}]},{"type":"loot_table","value":"bs.block:get/144","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"cooldown"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'cooldown'},_:{1:'trial_spawner_state=cooldown,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hatch":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hatch:'0'},_:{0:'hatch=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hatch":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hatch:'1'},_:{0:'hatch=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"hatch":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{hatch:'2'},_:{0:'hatch=2,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/146.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/146.json index 8d31f15627..0874716efa 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/146.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/146.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/55","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'false'},_:{4:'attached=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/55","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'true'},_:{4:'attached=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'1'},_:{0:'layers=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'2'},_:{0:'layers=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'3'},_:{0:'layers=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'4'},_:{0:'layers=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'5'},_:{0:'layers=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'6'},_:{0:'layers=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'7'},_:{0:'layers=7,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"layers":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{layers:'8'},_:{0:'layers=8,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/147.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/147.json index d36d8a37af..c7480cfaf7 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/147.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/147.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/146","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'false'},_:{5:'powered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/146","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'true'},_:{5:'powered=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"load"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'load'},_:{0:'mode=load,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"corner"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'corner'},_:{0:'mode=corner,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"data"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'data'},_:{0:'mode=data,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"mode":"save"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{mode:'save'},_:{0:'mode=save,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/148.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/148.json index 2f73a617ac..2dd9a92e18 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/148.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/148.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/147","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"disarmed":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{disarmed:'false'},_:{6:'disarmed=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/147","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"disarmed":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{disarmed:'true'},_:{6:'disarmed=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'0'},_:{0:'dusted=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'1'},_:{0:'dusted=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'2'},_:{0:'dusted=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"dusted":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{dusted:'3'},_:{0:'dusted=3,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/149.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/149.json index c5a2de9ca3..b99713cb09 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/149.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/149.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'false'},_:{2:'attached=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'true'},_:{2:'attached=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"unstable":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{unstable:'false'},_:{0:'unstable=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"unstable":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{unstable:'true'},_:{0:'unstable=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/150.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/150.json index 8963eb23a1..8d12d1cf20 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/150.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/150.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/138","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'1'},_:{1:'eggs=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/138","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'2'},_:{1:'eggs=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/138","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'3'},_:{1:'eggs=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/138","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'4'},_:{1:'eggs=4,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{0:'age=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{0:'age=1,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/151.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/151.json index bd2ffcd1bb..23060fa36b 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/151.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/151.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'false'},_:{1:'ominous=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'true'},_:{1:'ominous=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'false'},_:{0:'ominous=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'true'},_:{0:'ominous=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/152.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/152.json index d0bc101b98..d15d0850f4 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/152.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/152.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"inactive"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'inactive'},_:{2:'vault_state=inactive,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"active"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'active'},_:{2:'vault_state=active,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"unlocking"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'unlocking'},_:{2:'vault_state=unlocking,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"ejecting"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'ejecting'},_:{2:'vault_state=ejecting,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"inactive"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'inactive'},_:{1:'trial_spawner_state=inactive,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"waiting_for_players"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'waiting_for_players'},_:{1:'trial_spawner_state=waiting_for_players,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"active"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'active'},_:{1:'trial_spawner_state=active,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"waiting_for_reward_ejection"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'waiting_for_reward_ejection'},_:{1:'trial_spawner_state=waiting_for_reward_ejection,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"ejecting_reward"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'ejecting_reward'},_:{1:'trial_spawner_state=ejecting_reward,'}}"}]},{"type":"loot_table","value":"bs.block:get/151","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"trial_spawner_state":"cooldown"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{trial_spawner_state:'cooldown'},_:{1:'trial_spawner_state=cooldown,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/153.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/153.json new file mode 100644 index 0000000000..8d31f15627 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/153.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/55","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'false'},_:{4:'attached=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/55","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'true'},_:{4:'attached=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/154.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/154.json new file mode 100644 index 0000000000..847d9aeafa --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/154.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/153","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'false'},_:{5:'powered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/153","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"powered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{powered:'true'},_:{5:'powered=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/155.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/155.json new file mode 100644 index 0000000000..e90d84beb5 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/155.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/154","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"disarmed":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{disarmed:'false'},_:{6:'disarmed=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/154","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"disarmed":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{disarmed:'true'},_:{6:'disarmed=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/156.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/156.json new file mode 100644 index 0000000000..c5a2de9ca3 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/156.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'false'},_:{2:'attached=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/2","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"attached":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{attached:'true'},_:{2:'attached=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/157.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/157.json new file mode 100644 index 0000000000..e145bc7d6d --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/157.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/145","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'1'},_:{1:'eggs=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/145","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'2'},_:{1:'eggs=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/145","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'3'},_:{1:'eggs=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/145","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eggs":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eggs:'4'},_:{1:'eggs=4,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/158.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/158.json new file mode 100644 index 0000000000..bd2ffcd1bb --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/158.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'false'},_:{1:'ominous=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"ominous":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{ominous:'true'},_:{1:'ominous=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/159.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/159.json new file mode 100644 index 0000000000..e925318a57 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/159.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/158","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"inactive"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'inactive'},_:{2:'vault_state=inactive,'}}"}]},{"type":"loot_table","value":"bs.block:get/158","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"active"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'active'},_:{2:'vault_state=active,'}}"}]},{"type":"loot_table","value":"bs.block:get/158","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"unlocking"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'unlocking'},_:{2:'vault_state=unlocking,'}}"}]},{"type":"loot_table","value":"bs.block:get/158","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"vault_state":"ejecting"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{vault_state:'ejecting'},_:{2:'vault_state=ejecting,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/86.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/86.json index 1a0b60590a..3a164343d6 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/86.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/86.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'0'},_:{1:'rotation=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'1'},_:{1:'rotation=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'2'},_:{1:'rotation=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'3'},_:{1:'rotation=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'4'},_:{1:'rotation=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'5'},_:{1:'rotation=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'6'},_:{1:'rotation=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'7'},_:{1:'rotation=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'8'},_:{1:'rotation=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'9'},_:{1:'rotation=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'10'},_:{1:'rotation=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'11'},_:{1:'rotation=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'12'},_:{1:'rotation=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'13'},_:{1:'rotation=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'14'},_:{1:'rotation=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'15'},_:{1:'rotation=15,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"creaking":"disabled"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{creaking:'disabled'},_:{1:'creaking=disabled,'}}"}]},{"type":"loot_table","value":"bs.block:get/17","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"creaking":"dormant"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{creaking:'dormant'},_:{1:'creaking=dormant,'}}"}]},{"type":"loot_table","value":"bs.block:get/17","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"creaking":"active"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{creaking:'active'},_:{1:'creaking=active,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/87.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/87.json index 41605d7b71..1a0b60590a 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/87.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/87.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'0'},_:{0:'power=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'1'},_:{0:'power=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'2'},_:{0:'power=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'3'},_:{0:'power=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'4'},_:{0:'power=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'5'},_:{0:'power=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'6'},_:{0:'power=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'7'},_:{0:'power=7,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'8'},_:{0:'power=8,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'9'},_:{0:'power=9,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'10'},_:{0:'power=10,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'11'},_:{0:'power=11,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'12'},_:{0:'power=12,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'13'},_:{0:'power=13,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'14'},_:{0:'power=14,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'15'},_:{0:'power=15,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'0'},_:{1:'rotation=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'1'},_:{1:'rotation=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'2'},_:{1:'rotation=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'3'},_:{1:'rotation=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'4'},_:{1:'rotation=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'5'},_:{1:'rotation=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'6'},_:{1:'rotation=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'7'},_:{1:'rotation=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'8'},_:{1:'rotation=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'9'},_:{1:'rotation=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'10'},_:{1:'rotation=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'11'},_:{1:'rotation=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'12'},_:{1:'rotation=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'13'},_:{1:'rotation=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'14'},_:{1:'rotation=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/18","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"rotation":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{rotation:'15'},_:{1:'rotation=15,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/88.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/88.json index 67771ace73..41605d7b71 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/88.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/88.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/87","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"inverted":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{inverted:'false'},_:{1:'inverted=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/87","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"inverted":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{inverted:'true'},_:{1:'inverted=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'0'},_:{0:'power=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'1'},_:{0:'power=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'2'},_:{0:'power=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'3'},_:{0:'power=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'4'},_:{0:'power=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'5'},_:{0:'power=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'6'},_:{0:'power=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'7'},_:{0:'power=7,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'8'},_:{0:'power=8,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'9'},_:{0:'power=9,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'10'},_:{0:'power=10,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'11'},_:{0:'power=11,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'12'},_:{0:'power=12,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'13'},_:{0:'power=13,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'14'},_:{0:'power=14,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"power":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{power:'15'},_:{0:'power=15,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/89.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/89.json index f94dab0534..d4935effd9 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/89.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/89.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"cracked":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{cracked:'false'},_:{2:'cracked=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"cracked":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{cracked:'true'},_:{2:'cracked=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/88","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"inverted":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{inverted:'false'},_:{1:'inverted=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/88","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"inverted":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{inverted:'true'},_:{1:'inverted=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/90.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/90.json index b4b1cc74c8..f94dab0534 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/90.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/90.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"triggered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{triggered:'false'},_:{1:'triggered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"triggered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{triggered:'true'},_:{1:'triggered=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"cracked":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{cracked:'false'},_:{2:'cracked=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/21","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"cracked":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{cracked:'true'},_:{2:'cracked=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/91.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/91.json index 9286ff8f03..b4b1cc74c8 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/91.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/91.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eye":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eye:'false'},_:{1:'eye=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eye":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eye:'true'},_:{1:'eye=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"triggered":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{triggered:'false'},_:{1:'triggered=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/36","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"triggered":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{triggered:'true'},_:{1:'triggered=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/92.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/92.json index 0f986ca2a7..9286ff8f03 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/92.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/92.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'0'},_:{0:'moisture=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'1'},_:{0:'moisture=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'2'},_:{0:'moisture=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'3'},_:{0:'moisture=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'4'},_:{0:'moisture=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'5'},_:{0:'moisture=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'6'},_:{0:'moisture=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'7'},_:{0:'moisture=7,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eye":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eye:'false'},_:{1:'eye=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"eye":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{eye:'true'},_:{1:'eye=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/93.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/93.json index cc8cc6f3ca..0f986ca2a7 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/93.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/93.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{5:'age=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{5:'age=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'2'},_:{5:'age=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'3'},_:{5:'age=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'4'},_:{5:'age=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'5'},_:{5:'age=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'6'},_:{5:'age=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'7'},_:{5:'age=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'8'},_:{5:'age=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'9'},_:{5:'age=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'10'},_:{5:'age=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'11'},_:{5:'age=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'12'},_:{5:'age=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'13'},_:{5:'age=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'14'},_:{5:'age=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'15'},_:{5:'age=15,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'0'},_:{0:'moisture=0,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'1'},_:{0:'moisture=1,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'2'},_:{0:'moisture=2,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'3'},_:{0:'moisture=3,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'4'},_:{0:'moisture=4,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'5'},_:{0:'moisture=5,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'6'},_:{0:'moisture=6,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"moisture":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{moisture:'7'},_:{0:'moisture=7,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/94.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/94.json index d63603a789..cc8cc6f3ca 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/94.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/94.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"down":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{down:'false'},_:{5:'down=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/11","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"down":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{down:'true'},_:{5:'down=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"0"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'0'},_:{5:'age=0,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"1"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'1'},_:{5:'age=1,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"2"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'2'},_:{5:'age=2,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"3"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'3'},_:{5:'age=3,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"4"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'4'},_:{5:'age=4,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"5"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'5'},_:{5:'age=5,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"6"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'6'},_:{5:'age=6,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"7"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'7'},_:{5:'age=7,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"8"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'8'},_:{5:'age=8,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"9"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'9'},_:{5:'age=9,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"10"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'10'},_:{5:'age=10,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"11"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'11'},_:{5:'age=11,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"12"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'12'},_:{5:'age=12,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"13"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'13'},_:{5:'age=13,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"14"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'14'},_:{5:'age=14,'}}"}]},{"type":"loot_table","value":"bs.block:get/56","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"age":"15"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{age:'15'},_:{5:'age=15,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/95.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/95.json index c43700d081..d63603a789 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/95.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/95.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/94","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"up":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{up:'false'},_:{6:'up=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/94","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"up":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{up:'true'},_:{6:'up=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"down":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{down:'false'},_:{5:'down=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/11","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"down":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{down:'true'},_:{5:'down=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/96.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/96.json index be59dc95d6..a7b19ea6ed 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/96.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/96.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"snowy":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{snowy:'false'},_:{0:'snowy=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"snowy":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{snowy:'true'},_:{0:'snowy=true,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/95","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"up":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{up:'false'},_:{6:'up=false,'}}"}]},{"type":"loot_table","value":"bs.block:get/95","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"up":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{up:'true'},_:{6:'up=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/97.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/97.json index de7a7ebb23..be59dc95d6 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/97.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/97.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"face":"wall"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{face:'wall'},_:{1:'face=wall,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"face":"ceiling"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{face:'ceiling'},_:{1:'face=ceiling,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"face":"floor"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{face:'floor'},_:{1:'face=floor,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"snowy":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{snowy:'false'},_:{0:'snowy=false,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"snowy":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{snowy:'true'},_:{0:'snowy=true,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/98.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/98.json index 4b4171946c..de7a7ebb23 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/98.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/98.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"enabled":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{enabled:'true'},_:{0:'enabled=true,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"enabled":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{enabled:'false'},_:{0:'enabled=false,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"face":"wall"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{face:'wall'},_:{1:'face=wall,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"face":"ceiling"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{face:'ceiling'},_:{1:'face=ceiling,'}}"}]},{"type":"loot_table","value":"bs.block:get/1","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"face":"floor"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{face:'floor'},_:{1:'face=floor,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/99.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/99.json index 7af3a65ee1..4b4171946c 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/99.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/99.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/98","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"down"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'down'},_:{1:'facing=down,'}}"}]},{"type":"loot_table","value":"bs.block:get/98","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"north"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'north'},_:{1:'facing=north,'}}"}]},{"type":"loot_table","value":"bs.block:get/98","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"south"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'south'},_:{1:'facing=south,'}}"}]},{"type":"loot_table","value":"bs.block:get/98","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"west"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'west'},_:{1:'facing=west,'}}"}]},{"type":"loot_table","value":"bs.block:get/98","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"facing":"east"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{facing:'east'},_:{1:'facing=east,'}}"}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"enabled":"true"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{enabled:'true'},_:{0:'enabled=true,'}}"}]},{"type":"item","name":"egg","conditions":[{"condition":"location_check","predicate":{"block":{"state":{"enabled":"false"}}}}],"functions":[{"function":"set_custom_data","tag":"{properties:{enabled:'false'},_:{0:'enabled=false,'}}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/loot_table/get/get.json b/datapacks/Bookshelf/data/bs.block/loot_table/get/get.json index 0ecae0f68f..1270d6eccb 100644 --- a/datapacks/Bookshelf/data/bs.block/loot_table/get/get.json +++ b/datapacks/Bookshelf/data/bs.block/loot_table/get/get.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_planks',item:'minecraft:acacia_planks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:air',item:'minecraft:air',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:allium',item:'minecraft:allium',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["allium"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:amethyst_block',item:'minecraft:amethyst_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ancient_debris',item:'minecraft:ancient_debris',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ancient_debris"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite',item:'minecraft:andesite',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ancient_debris","andesite"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:azalea',item:'minecraft:azalea',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["azalea"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:azure_bluet',item:'minecraft:azure_bluet',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_mosaic',item:'minecraft:bamboo_mosaic',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_mosaic"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_planks',item:'minecraft:bamboo_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_mosaic","bamboo_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:beacon',item:'minecraft:beacon',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bedrock',item:'minecraft:bedrock',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bedrock"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_planks',item:'minecraft:birch_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bedrock","birch_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_carpet',item:'minecraft:black_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_concrete',item:'minecraft:black_concrete',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_concrete_powder',item:'minecraft:black_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_stained_glass',item:'minecraft:black_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder","black_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_terracotta',item:'minecraft:black_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_wool',item:'minecraft:black_wool',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder","black_stained_glass","black_terracotta","black_wool"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone',item:'minecraft:blackstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_carpet',item:'minecraft:blue_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone","blue_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_concrete',item:'minecraft:blue_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_concrete_powder',item:'minecraft:blue_concrete_powder',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_ice',item:'minecraft:blue_ice',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_ice"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_orchid',item:'minecraft:blue_orchid',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_ice","blue_orchid"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_stained_glass',item:'minecraft:blue_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_terracotta',item:'minecraft:blue_terracotta',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_ice","blue_orchid","blue_stained_glass","blue_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_wool',item:'minecraft:blue_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bookshelf',item:'minecraft:bookshelf',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_wool","bookshelf"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral_block',item:'minecraft:brain_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bricks',item:'minecraft:bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_carpet',item:'minecraft:brown_carpet',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_concrete',item:'minecraft:brown_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_concrete_powder',item:'minecraft:brown_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_mushroom',item:'minecraft:brown_mushroom',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_stained_glass',item:'minecraft:brown_stained_glass',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_terracotta',item:'minecraft:brown_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_wool',item:'minecraft:brown_wool',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_terracotta","brown_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral_block',item:'minecraft:bubble_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bubble_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:budding_amethyst',item:'minecraft:budding_amethyst',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:calcite',item:'minecraft:calcite',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["calcite"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cartography_table',item:'minecraft:cartography_table',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["calcite","cartography_table"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cauldron',item:'minecraft:cauldron',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cauldron"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cave_air',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["calcite","cartography_table","cauldron","cave_air"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_planks',item:'minecraft:cherry_planks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_planks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_copper',item:'minecraft:chiseled_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_planks","chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_deepslate',item:'minecraft:chiseled_deepslate',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_deepslate"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_nether_bricks',item:'minecraft:chiseled_nether_bricks',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_polished_blackstone',item:'minecraft:chiseled_polished_blackstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_polished_blackstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_quartz_block',item:'minecraft:chiseled_quartz_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_polished_blackstone","chiseled_quartz_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_red_sandstone',item:'minecraft:chiseled_red_sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_red_sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_sandstone',item:'minecraft:chiseled_sandstone',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_stone_bricks',item:'minecraft:chiseled_stone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_stone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_tuff',item:'minecraft:chiseled_tuff',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_stone_bricks","chiseled_tuff"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_tuff_bricks',item:'minecraft:chiseled_tuff_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_tuff_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:clay',item:'minecraft:clay',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:coal_block',item:'minecraft:coal_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["coal_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:coal_ore',item:'minecraft:coal_ore',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["coal_block","coal_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:coarse_dirt',item:'minecraft:coarse_dirt',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["coarse_dirt"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate',item:'minecraft:cobbled_deepslate',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["coal_block","coal_ore","coarse_dirt","cobbled_deepslate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone',item:'minecraft:cobblestone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobweb',item:'minecraft:cobweb',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone","cobweb"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_block',item:'minecraft:copper_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_ore',item:'minecraft:copper_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cornflower',item:'minecraft:cornflower',group:0}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_deepslate_bricks',item:'minecraft:cracked_deepslate_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_deepslate_tiles',item:'minecraft:cracked_deepslate_tiles',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_bricks","cracked_deepslate_tiles"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_nether_bricks',item:'minecraft:cracked_nether_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_nether_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_polished_blackstone_bricks',item:'minecraft:cracked_polished_blackstone_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_stone_bricks',item:'minecraft:cracked_stone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_stone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crafting_table',item:'minecraft:crafting_table',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_stone_bricks","crafting_table"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_fungus',item:'minecraft:crimson_fungus',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fungus"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_nylium',item:'minecraft:crimson_nylium',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_planks',item:'minecraft:crimson_planks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_planks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_roots',item:'minecraft:crimson_roots',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_planks","crimson_roots"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crying_obsidian',item:'minecraft:crying_obsidian',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crying_obsidian"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_copper',item:'minecraft:cut_copper',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_planks","crimson_roots","crying_obsidian","cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_red_sandstone',item:'minecraft:cut_red_sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_red_sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_sandstone',item:'minecraft:cut_sandstone',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_red_sandstone","cut_sandstone"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_carpet',item:'minecraft:cyan_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_concrete',item:'minecraft:cyan_concrete',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_concrete_powder',item:'minecraft:cyan_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_stained_glass',item:'minecraft:cyan_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_concrete_powder","cyan_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_terracotta',item:'minecraft:cyan_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_wool',item:'minecraft:cyan_wool',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dandelion',item:'minecraft:dandelion',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dandelion"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_planks',item:'minecraft:dark_oak_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dandelion","dark_oak_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_prismarine',item:'minecraft:dark_prismarine',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral_block',item:'minecraft:dead_brain_coral_block',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral_block',item:'minecraft:dead_bubble_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bush',item:'minecraft:dead_bush',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral_block","dead_bush"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral_block',item:'minecraft:dead_fire_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral_block',item:'minecraft:dead_horn_coral_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral_block',item:'minecraft:dead_tube_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_bricks',item:'minecraft:deepslate_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral_block","deepslate_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_coal_ore',item:'minecraft:deepslate_coal_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_coal_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_copper_ore',item:'minecraft:deepslate_copper_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_copper_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_diamond_ore',item:'minecraft:deepslate_diamond_ore',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_emerald_ore',item:'minecraft:deepslate_emerald_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_emerald_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_gold_ore',item:'minecraft:deepslate_gold_ore',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_emerald_ore","deepslate_gold_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_iron_ore',item:'minecraft:deepslate_iron_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_iron_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_lapis_ore',item:'minecraft:deepslate_lapis_ore',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tiles',item:'minecraft:deepslate_tiles',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_tiles"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diamond_block',item:'minecraft:diamond_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_tiles","diamond_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diamond_ore',item:'minecraft:diamond_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diamond_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite',item:'minecraft:diorite',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dirt',item:'minecraft:dirt',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dirt"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dirt_path',item:'minecraft:dirt_path',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dirt","dirt_path"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dragon_egg',item:'minecraft:dragon_egg',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_egg"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dried_kelp_block',item:'minecraft:dried_kelp_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dirt","dirt_path","dragon_egg","dried_kelp_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dripstone_block',item:'minecraft:dripstone_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dripstone_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:emerald_block',item:'minecraft:emerald_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dripstone_block","emerald_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:emerald_ore',item:'minecraft:emerald_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["emerald_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:enchanting_table',item:'minecraft:enchanting_table',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_gateway',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_gateway"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_portal',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_gateway","end_portal"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone',item:'minecraft:end_stone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_stone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_bricks',item:'minecraft:end_stone_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_gateway","end_portal","end_stone","end_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_chiseled_copper',item:'minecraft:exposed_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_chiseled_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper',item:'minecraft:exposed_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_chiseled_copper","exposed_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_cut_copper',item:'minecraft:exposed_cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_cut_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fern',item:'minecraft:fern',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_gateway","end_portal","end_stone","end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral_block',item:'minecraft:fire_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fletching_table',item:'minecraft:fletching_table',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire_coral_block","fletching_table"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:flower_pot',item:'minecraft:flower_pot',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flower_pot"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:flowering_azalea',item:'minecraft:flowering_azalea',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire_coral_block","fletching_table","flower_pot","flowering_azalea"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:frogspawn',item:'minecraft:frogspawn',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["frogspawn"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gilded_blackstone',item:'minecraft:gilded_blackstone',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["frogspawn","gilded_blackstone"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glass',item:'minecraft:glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glowstone',item:'minecraft:glowstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glowstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gold_block',item:'minecraft:gold_block',group:0}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower","cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore","deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table","end_gateway","end_portal","end_stone","end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern","fire_coral_block","fletching_table","flower_pot","flowering_azalea","frogspawn","gilded_blackstone","glass","glowstone","gold_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gold_ore',item:'minecraft:gold_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite',item:'minecraft:granite',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore","granite"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gravel',item:'minecraft:gravel',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gravel"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_carpet',item:'minecraft:gray_carpet',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore","granite","gravel","gray_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_concrete',item:'minecraft:gray_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_concrete_powder',item:'minecraft:gray_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_concrete","gray_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_stained_glass',item:'minecraft:gray_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_terracotta',item:'minecraft:gray_terracotta',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_wool',item:'minecraft:gray_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_carpet',item:'minecraft:green_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wool","green_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_concrete',item:'minecraft:green_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_concrete_powder',item:'minecraft:green_concrete_powder',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wool","green_carpet","green_concrete","green_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_stained_glass',item:'minecraft:green_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_terracotta',item:'minecraft:green_terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_stained_glass","green_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_wool',item:'minecraft:green_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:honey_block',item:'minecraft:honey_block',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:honeycomb_block',item:'minecraft:honeycomb_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["honeycomb_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral_block',item:'minecraft:horn_coral_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["honeycomb_block","horn_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ice',item:'minecraft:ice',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ice"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_chiseled_stone_bricks',item:'minecraft:infested_chiseled_stone_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_cobblestone',item:'minecraft:infested_cobblestone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_cobblestone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_cracked_stone_bricks',item:'minecraft:infested_cracked_stone_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_cobblestone","infested_cracked_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_mossy_stone_bricks',item:'minecraft:infested_mossy_stone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_mossy_stone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_stone',item:'minecraft:infested_stone',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_stone_bricks',item:'minecraft:infested_stone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_stone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_block',item:'minecraft:iron_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_stone_bricks","iron_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_ore',item:'minecraft:iron_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["iron_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_planks',item:'minecraft:jungle_planks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_stone_bricks","iron_block","iron_ore","jungle_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:kelp_plant',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["kelp_plant"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lapis_block',item:'minecraft:lapis_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["kelp_plant","lapis_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lapis_ore',item:'minecraft:lapis_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lapis_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lava_cauldron',item:'minecraft:cauldron',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lava_cauldron"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_carpet',item:'minecraft:light_blue_carpet',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_concrete',item:'minecraft:light_blue_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_concrete_powder',item:'minecraft:light_blue_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_concrete","light_blue_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_stained_glass',item:'minecraft:light_blue_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_terracotta',item:'minecraft:light_blue_terracotta',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_wool',item:'minecraft:light_blue_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_carpet',item:'minecraft:light_gray_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wool","light_gray_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_concrete',item:'minecraft:light_gray_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_concrete_powder',item:'minecraft:light_gray_concrete_powder',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_stained_glass',item:'minecraft:light_gray_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_terracotta',item:'minecraft:light_gray_terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_stained_glass","light_gray_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_wool',item:'minecraft:light_gray_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lily_of_the_valley',item:'minecraft:lily_of_the_valley',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lily_pad',item:'minecraft:lily_pad',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lily_pad"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_carpet',item:'minecraft:lime_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lily_pad","lime_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_concrete',item:'minecraft:lime_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_concrete_powder',item:'minecraft:lime_concrete_powder',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_stained_glass',item:'minecraft:lime_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_terracotta',item:'minecraft:lime_terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_stained_glass","lime_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_wool',item:'minecraft:lime_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lodestone',item:'minecraft:lodestone',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_stained_glass","lime_terracotta","lime_wool","lodestone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_carpet',item:'minecraft:magenta_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_concrete',item:'minecraft:magenta_concrete',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_carpet","magenta_concrete"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_concrete_powder',item:'minecraft:magenta_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_stained_glass',item:'minecraft:magenta_stained_glass',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet","magenta_concrete","magenta_concrete_powder","magenta_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_terracotta',item:'minecraft:magenta_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_wool',item:'minecraft:magenta_wool',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_terracotta","magenta_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magma_block',item:'minecraft:magma_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magma_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_planks',item:'minecraft:mangrove_planks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_terracotta","magenta_wool","magma_block","mangrove_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:melon',item:'minecraft:melon',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["melon"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:moss_block',item:'minecraft:moss_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["melon","moss_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:moss_carpet',item:'minecraft:moss_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["moss_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone',item:'minecraft:mossy_cobblestone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_cobblestone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_bricks',item:'minecraft:mossy_stone_bricks',group:0}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet","light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder","lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet","magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta","magenta_wool","magma_block","mangrove_planks","melon","moss_block","moss_carpet","mossy_cobblestone","mossy_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud',item:'minecraft:mud',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_bricks',item:'minecraft:mud_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud","mud_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_bricks',item:'minecraft:nether_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_gold_ore',item:'minecraft:nether_gold_ore',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud","mud_bricks","nether_bricks","nether_gold_ore"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_quartz_ore',item:'minecraft:nether_quartz_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_quartz_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_sprouts',item:'minecraft:nether_sprouts',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_quartz_ore","nether_sprouts"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_wart_block',item:'minecraft:nether_wart_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_wart_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:netherite_block',item:'minecraft:netherite_block',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore","nether_sprouts","nether_wart_block","netherite_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:netherrack',item:'minecraft:netherrack',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["netherrack"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_planks',item:'minecraft:oak_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["netherrack","oak_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:obsidian',item:'minecraft:obsidian',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["obsidian"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_carpet',item:'minecraft:orange_carpet',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["netherrack","oak_planks","obsidian","orange_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_concrete',item:'minecraft:orange_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_concrete_powder',item:'minecraft:orange_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_concrete","orange_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_stained_glass',item:'minecraft:orange_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_terracotta',item:'minecraft:orange_terracotta',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore","nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_tulip',item:'minecraft:orange_tulip',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_tulip"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_wool',item:'minecraft:orange_wool',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_tulip","orange_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxeye_daisy',item:'minecraft:oxeye_daisy',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxeye_daisy"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_chiseled_copper',item:'minecraft:oxidized_chiseled_copper',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper',item:'minecraft:oxidized_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_cut_copper',item:'minecraft:oxidized_cut_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_copper","oxidized_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:packed_ice',item:'minecraft:packed_ice',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["packed_ice"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:packed_mud',item:'minecraft:packed_mud',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper","packed_ice","packed_mud"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_carpet',item:'minecraft:pink_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_concrete',item:'minecraft:pink_concrete',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_carpet","pink_concrete"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_concrete_powder',item:'minecraft:pink_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_stained_glass',item:'minecraft:pink_stained_glass',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_terracotta',item:'minecraft:pink_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_tulip',item:'minecraft:pink_tulip',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_terracotta","pink_tulip"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_wool',item:'minecraft:pink_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_andesite',item:'minecraft:polished_andesite',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_andesite"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone',item:'minecraft:polished_blackstone',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore","nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper","packed_ice","packed_mud","pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass","pink_terracotta","pink_tulip","pink_wool","polished_andesite","polished_blackstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_bricks',item:'minecraft:polished_blackstone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate',item:'minecraft:polished_deepslate',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_bricks","polished_deepslate"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_diorite',item:'minecraft:polished_diorite',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_diorite"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_granite',item:'minecraft:polished_granite',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff',item:'minecraft:polished_tuff',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:poppy',item:'minecraft:poppy',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff","poppy"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_acacia_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_acacia_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_allium',item:'None',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite","polished_tuff","poppy","potted_acacia_sapling","potted_allium"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_azalea_bush',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_azalea_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_azure_bluet',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_azalea_bush","potted_azure_bluet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_bamboo',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_bamboo"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_birch_sapling',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_blue_orchid',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_blue_orchid"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_brown_mushroom',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_blue_orchid","potted_brown_mushroom"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_cactus',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_cactus"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_cherry_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_cherry_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_cornflower',item:'None',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite","polished_tuff","poppy","potted_acacia_sapling","potted_allium","potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling","potted_blue_orchid","potted_brown_mushroom","potted_cactus","potted_cherry_sapling","potted_cornflower"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_crimson_fungus',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_crimson_fungus"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_crimson_roots',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_crimson_fungus","potted_crimson_roots"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_dandelion',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dandelion"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_dark_oak_sapling',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_crimson_fungus","potted_crimson_roots","potted_dandelion","potted_dark_oak_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_dead_bush',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dead_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_fern',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dead_bush","potted_fern"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_flowering_azalea_bush',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_flowering_azalea_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_jungle_sapling',item:'None',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_crimson_fungus","potted_crimson_roots","potted_dandelion","potted_dark_oak_sapling","potted_dead_bush","potted_fern","potted_flowering_azalea_bush","potted_jungle_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_lily_of_the_valley',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_lily_of_the_valley"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_mangrove_propagule',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_lily_of_the_valley","potted_mangrove_propagule"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_oak_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_oak_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_orange_tulip',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_lily_of_the_valley","potted_mangrove_propagule","potted_oak_sapling","potted_orange_tulip"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_oxeye_daisy',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_oxeye_daisy"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_pink_tulip',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_oxeye_daisy","potted_pink_tulip"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_poppy',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_poppy"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_red_mushroom',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_red_mushroom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_red_tulip',item:'None',group:0}"}]}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower","cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore","deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table","end_gateway","end_portal","end_stone","end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern","fire_coral_block","fletching_table","flower_pot","flowering_azalea","frogspawn","gilded_blackstone","glass","glowstone","gold_block","gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet","light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder","lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet","magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta","magenta_wool","magma_block","mangrove_planks","melon","moss_block","moss_carpet","mossy_cobblestone","mossy_stone_bricks","mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore","nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper","packed_ice","packed_mud","pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass","pink_terracotta","pink_tulip","pink_wool","polished_andesite","polished_blackstone","polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite","polished_tuff","poppy","potted_acacia_sapling","potted_allium","potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling","potted_blue_orchid","potted_brown_mushroom","potted_cactus","potted_cherry_sapling","potted_cornflower","potted_crimson_fungus","potted_crimson_roots","potted_dandelion","potted_dark_oak_sapling","potted_dead_bush","potted_fern","potted_flowering_azalea_bush","potted_jungle_sapling","potted_lily_of_the_valley","potted_mangrove_propagule","potted_oak_sapling","potted_orange_tulip","potted_oxeye_daisy","potted_pink_tulip","potted_poppy","potted_red_mushroom","potted_red_tulip"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_spruce_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_torchflower',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling","potted_torchflower"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_warped_fungus',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_fungus"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_warped_roots',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_white_tulip',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_white_tulip"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_wither_rose',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_white_tulip","potted_wither_rose"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:powder_snow',item:'minecraft:powder_snow_bucket',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["powder_snow"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine',item:'minecraft:prismarine',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_bricks',item:'minecraft:prismarine_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pumpkin',item:'minecraft:pumpkin',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_bricks","pumpkin"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_carpet',item:'minecraft:purple_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_concrete',item:'minecraft:purple_concrete',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_bricks","pumpkin","purple_carpet","purple_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_concrete_powder',item:'minecraft:purple_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_stained_glass',item:'minecraft:purple_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_concrete_powder","purple_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_terracotta',item:'minecraft:purple_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_wool',item:'minecraft:purple_wool',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_block',item:'minecraft:purpur_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_block',item:'minecraft:quartz_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_block","quartz_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_bricks',item:'minecraft:quartz_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["quartz_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:raw_copper_block',item:'minecraft:raw_copper_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_block","quartz_block","quartz_bricks","raw_copper_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:raw_gold_block',item:'minecraft:raw_gold_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["raw_gold_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:raw_iron_block',item:'minecraft:raw_iron_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["raw_gold_block","raw_iron_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_carpet',item:'minecraft:red_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_concrete',item:'minecraft:red_concrete',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_concrete_powder',item:'minecraft:red_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_mushroom',item:'minecraft:red_mushroom',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_concrete_powder","red_mushroom"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_bricks',item:'minecraft:red_nether_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_nether_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sand',item:'minecraft:red_sand',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_concrete_powder","red_mushroom","red_nether_bricks","red_sand"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone',item:'minecraft:red_sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_stained_glass',item:'minecraft:red_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone","red_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_terracotta',item:'minecraft:red_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_tulip',item:'minecraft:red_tulip',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_tulip"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_wool',item:'minecraft:red_wool',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_block',item:'minecraft:redstone_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:reinforced_deepslate',item:'minecraft:reinforced_deepslate',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_block","reinforced_deepslate"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:rooted_dirt',item:'minecraft:rooted_dirt',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["rooted_dirt"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sand',item:'minecraft:sand',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_block","reinforced_deepslate","rooted_dirt","sand"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone',item:'minecraft:sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk',item:'minecraft:sculk',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sandstone","sculk"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sea_lantern',item:'minecraft:sea_lantern',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sea_lantern"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:seagrass',item:'minecraft:seagrass',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:short_grass',item:'minecraft:short_grass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["short_grass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:shroomlight',item:'minecraft:shroomlight',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["short_grass","shroomlight"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:slime_block',item:'minecraft:slime_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["slime_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smithing_table',item:'minecraft:smithing_table',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["short_grass","shroomlight","slime_block","smithing_table"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_basalt',item:'minecraft:smooth_basalt',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_basalt"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_quartz',item:'minecraft:smooth_quartz',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_basalt","smooth_quartz"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_red_sandstone',item:'minecraft:smooth_red_sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_red_sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_sandstone',item:'minecraft:smooth_sandstone',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_stone',item:'minecraft:smooth_stone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_stone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:snow_block',item:'minecraft:snow_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_stone","snow_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_fire',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_sand',item:'minecraft:soul_sand',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_stone","snow_block","soul_fire","soul_sand"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_soil',item:'minecraft:soul_soil',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_soil"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_torch',item:'minecraft:soul_torch',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_soil","soul_torch"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spawner',item:'minecraft:spawner',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spawner"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sponge',item:'minecraft:sponge',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_stone","snow_block","soul_fire","soul_sand","soul_soil","soul_torch","spawner","sponge"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spore_blossom',item:'minecraft:spore_blossom',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_planks',item:'minecraft:spruce_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom","spruce_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone',item:'minecraft:stone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_bricks',item:'minecraft:stone_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom","spruce_planks","stone","stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:structure_void',item:'minecraft:structure_void',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_void"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:terracotta',item:'minecraft:terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_void","terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tinted_glass',item:'minecraft:tinted_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tinted_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:torch',item:'minecraft:torch',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torch"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:torchflower',item:'minecraft:torchflower',group:0}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool","redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone","smooth_stone","snow_block","soul_fire","soul_sand","soul_soil","soul_torch","spawner","sponge","spore_blossom","spruce_planks","stone","stone_bricks","structure_void","terracotta","tinted_glass","torch","torchflower"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral_block',item:'minecraft:tube_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff',item:'minecraft:tuff',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_block","tuff"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_bricks',item:'minecraft:tuff_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:twisting_vines_plant',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_block","tuff","tuff_bricks","twisting_vines_plant"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:void_air',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_fungus',item:'minecraft:warped_fungus',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air","warped_fungus"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_nylium',item:'minecraft:warped_nylium',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_nylium"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_planks',item:'minecraft:warped_planks',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_block","tuff","tuff_bricks","twisting_vines_plant","void_air","warped_fungus","warped_nylium","warped_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_roots',item:'minecraft:warped_roots',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_roots"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_wart_block',item:'minecraft:warped_wart_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_roots","warped_wart_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_chiseled_copper',item:'minecraft:waxed_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_chiseled_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_block',item:'minecraft:waxed_copper_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_cut_copper',item:'minecraft:waxed_cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_chiseled_copper',item:'minecraft:waxed_exposed_chiseled_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper","waxed_exposed_chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper',item:'minecraft:waxed_exposed_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_cut_copper',item:'minecraft:waxed_exposed_cut_copper',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_block","tuff","tuff_bricks","twisting_vines_plant","void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_chiseled_copper',item:'minecraft:waxed_oxidized_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_chiseled_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper',item:'minecraft:waxed_oxidized_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_chiseled_copper","waxed_oxidized_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_cut_copper',item:'minecraft:waxed_oxidized_cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_cut_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_chiseled_copper',item:'minecraft:waxed_weathered_chiseled_copper',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper',item:'minecraft:waxed_weathered_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_cut_copper',item:'minecraft:waxed_weathered_cut_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper","waxed_weathered_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_chiseled_copper',item:'minecraft:weathered_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_chiseled_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper',item:'minecraft:weathered_copper',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper","waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_cut_copper',item:'minecraft:weathered_cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weeping_vines_plant',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper","weeping_vines_plant"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wet_sponge',item:'minecraft:wet_sponge',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wet_sponge"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_carpet',item:'minecraft:white_carpet',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_concrete',item:'minecraft:white_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_concrete_powder',item:'minecraft:white_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_concrete","white_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_stained_glass',item:'minecraft:white_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_terracotta',item:'minecraft:white_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_tulip',item:'minecraft:white_tulip',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_block","tuff","tuff_bricks","twisting_vines_plant","void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper","waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper","waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet","white_concrete","white_concrete_powder","white_stained_glass","white_terracotta","white_tulip"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_wool',item:'minecraft:white_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wither_rose',item:'minecraft:wither_rose',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wool","wither_rose"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_carpet',item:'minecraft:yellow_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_concrete',item:'minecraft:yellow_concrete',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wool","wither_rose","yellow_carpet","yellow_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_concrete_powder',item:'minecraft:yellow_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_stained_glass',item:'minecraft:yellow_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_concrete_powder","yellow_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_terracotta',item:'minecraft:yellow_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_wool',item:'minecraft:yellow_wool',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wool","wither_rose","yellow_carpet","yellow_concrete","yellow_concrete_powder","yellow_stained_glass","yellow_terracotta","yellow_wool"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_button',item:'minecraft:acacia_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_button',item:'minecraft:bamboo_button',group:1}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_button","bamboo_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_button',item:'minecraft:birch_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_button',item:'minecraft:cherry_button',group:1}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_button","bamboo_button","birch_button","cherry_button"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_button',item:'minecraft:crimson_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_button',item:'minecraft:dark_oak_button',group:1}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_button","dark_oak_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_button',item:'minecraft:jungle_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lever',item:'minecraft:lever',group:1}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wool","wither_rose","yellow_carpet","yellow_concrete","yellow_concrete_powder","yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button","bamboo_button","birch_button","cherry_button","crimson_button","dark_oak_button","jungle_button","lever"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_button',item:'minecraft:mangrove_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_button',item:'minecraft:oak_button',group:1}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_button","oak_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_button',item:'minecraft:polished_blackstone_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_button',item:'minecraft:spruce_button',group:1}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_button","oak_button","polished_blackstone_button","spruce_button"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_button',item:'minecraft:stone_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_button',item:'minecraft:warped_button',group:1}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_button","warped_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_door',item:'minecraft:acacia_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_door',item:'minecraft:bamboo_door',group:2}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_button","oak_button","polished_blackstone_button","spruce_button","stone_button","warped_button","acacia_door","bamboo_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_door',item:'minecraft:birch_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_door',item:'minecraft:cherry_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_door","cherry_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_door',item:'minecraft:copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_door',item:'minecraft:crimson_door',group:2}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_door","cherry_door","copper_door","crimson_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_door',item:'minecraft:dark_oak_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_door',item:'minecraft:exposed_copper_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_door","exposed_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_door',item:'minecraft:iron_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["iron_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_door',item:'minecraft:jungle_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_door',item:'minecraft:mangrove_door',group:2}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool","redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone","smooth_stone","snow_block","soul_fire","soul_sand","soul_soil","soul_torch","spawner","sponge","spore_blossom","spruce_planks","stone","stone_bricks","structure_void","terracotta","tinted_glass","torch","torchflower","tube_coral_block","tuff","tuff_bricks","twisting_vines_plant","void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper","waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper","waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet","white_concrete","white_concrete_powder","white_stained_glass","white_terracotta","white_tulip","white_wool","wither_rose","yellow_carpet","yellow_concrete","yellow_concrete_powder","yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button","bamboo_button","birch_button","cherry_button","crimson_button","dark_oak_button","jungle_button","lever","mangrove_button","oak_button","polished_blackstone_button","spruce_button","stone_button","warped_button","acacia_door","bamboo_door","birch_door","cherry_door","copper_door","crimson_door","dark_oak_door","exposed_copper_door","iron_door","jungle_door","mangrove_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_door',item:'minecraft:oak_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_door',item:'minecraft:oxidized_copper_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","oxidized_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_door',item:'minecraft:spruce_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_door',item:'minecraft:warped_door',group:2}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","oxidized_copper_door","spruce_door","warped_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_door',item:'minecraft:waxed_copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_door',item:'minecraft:waxed_exposed_copper_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door","waxed_exposed_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_door',item:'minecraft:waxed_oxidized_copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_door',item:'minecraft:waxed_weathered_copper_door',group:2}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","oxidized_copper_door","spruce_door","warped_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_door',item:'minecraft:weathered_copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_fence',item:'minecraft:acacia_fence',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_door","acacia_fence"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_fence',item:'minecraft:bamboo_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_fence',item:'minecraft:birch_fence',group:3}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_door","acacia_fence","bamboo_fence","birch_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_stained_glass_pane',item:'minecraft:black_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_stained_glass_pane',item:'minecraft:blue_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_stained_glass_pane","blue_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_stained_glass_pane',item:'minecraft:brown_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_fence',item:'minecraft:cherry_fence',group:3}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","oxidized_copper_door","spruce_door","warped_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_fence',item:'minecraft:crimson_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_stained_glass_pane',item:'minecraft:cyan_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence","cyan_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_fence',item:'minecraft:dark_oak_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glass_pane',item:'minecraft:glass_pane',group:3}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_stained_glass_pane',item:'minecraft:gray_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_stained_glass_pane',item:'minecraft:green_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_stained_glass_pane","green_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_bars',item:'minecraft:iron_bars',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["iron_bars"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_fence',item:'minecraft:jungle_fence',group:3}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane","green_stained_glass_pane","iron_bars","jungle_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_stained_glass_pane',item:'minecraft:light_blue_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_stained_glass_pane',item:'minecraft:light_gray_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_stained_glass_pane","light_gray_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_stained_glass_pane',item:'minecraft:lime_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_stained_glass_pane',item:'minecraft:magenta_stained_glass_pane',group:3}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_fence',item:'minecraft:mangrove_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_fence',item:'minecraft:nether_brick_fence',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_fence","nether_brick_fence"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_fence',item:'minecraft:oak_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_fence"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_stained_glass_pane',item:'minecraft:orange_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_stained_glass_pane',item:'minecraft:pink_stained_glass_pane',group:3}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","oxidized_copper_door","spruce_door","warped_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence","crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane","green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane","mangrove_fence","nether_brick_fence","oak_fence","orange_stained_glass_pane","pink_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_stained_glass_pane',item:'minecraft:purple_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_stained_glass_pane',item:'minecraft:red_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_stained_glass_pane","red_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_fence',item:'minecraft:spruce_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_fence',item:'minecraft:warped_fence',group:3}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_stained_glass_pane',item:'minecraft:white_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_stained_glass_pane',item:'minecraft:yellow_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass_pane","yellow_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_fence_gate',item:'minecraft:acacia_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_fence_gate',item:'minecraft:bamboo_fence_gate',group:4}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence","white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_fence_gate',item:'minecraft:birch_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_fence_gate',item:'minecraft:cherry_fence_gate',group:4}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_fence_gate","cherry_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_fence_gate',item:'minecraft:crimson_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_fence_gate',item:'minecraft:dark_oak_fence_gate',group:4}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_fence_gate',item:'minecraft:jungle_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_fence_gate',item:'minecraft:mangrove_fence_gate',group:4}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_fence_gate","mangrove_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_fence_gate',item:'minecraft:oak_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_fence_gate',item:'minecraft:spruce_fence_gate',group:4}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence","white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate","birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate","jungle_fence_gate","mangrove_fence_gate","oak_fence_gate","spruce_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_fence_gate',item:'minecraft:warped_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_hanging_sign',item:'minecraft:acacia_hanging_sign',group:5}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_fence_gate","acacia_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_hanging_sign',item:'minecraft:bamboo_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_hanging_sign',item:'minecraft:birch_hanging_sign',group:5}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_fence_gate","acacia_hanging_sign","bamboo_hanging_sign","birch_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_hanging_sign',item:'minecraft:cherry_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_hanging_sign',item:'minecraft:crimson_hanging_sign',group:5}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_hanging_sign","crimson_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_hanging_sign',item:'minecraft:dark_oak_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_hanging_sign',item:'minecraft:jungle_hanging_sign',group:5}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_fence_gate","acacia_hanging_sign","bamboo_hanging_sign","birch_hanging_sign","cherry_hanging_sign","crimson_hanging_sign","dark_oak_hanging_sign","jungle_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_hanging_sign',item:'minecraft:mangrove_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_hanging_sign',item:'minecraft:oak_hanging_sign',group:5}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_hanging_sign","oak_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_hanging_sign',item:'minecraft:spruce_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_hanging_sign',item:'minecraft:warped_hanging_sign',group:5}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_hanging_sign","oak_hanging_sign","spruce_hanging_sign","warped_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_leaves',item:'minecraft:acacia_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:azalea_leaves',item:'minecraft:azalea_leaves',group:6}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_leaves","azalea_leaves"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_leaves',item:'minecraft:birch_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_leaves"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_leaves',item:'minecraft:cherry_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_leaves',item:'minecraft:dark_oak_leaves',group:6}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","oxidized_copper_door","spruce_door","warped_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence","crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane","green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane","mangrove_fence","nether_brick_fence","oak_fence","orange_stained_glass_pane","pink_stained_glass_pane","purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence","white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate","birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate","jungle_fence_gate","mangrove_fence_gate","oak_fence_gate","spruce_fence_gate","warped_fence_gate","acacia_hanging_sign","bamboo_hanging_sign","birch_hanging_sign","cherry_hanging_sign","crimson_hanging_sign","dark_oak_hanging_sign","jungle_hanging_sign","mangrove_hanging_sign","oak_hanging_sign","spruce_hanging_sign","warped_hanging_sign","acacia_leaves","azalea_leaves","birch_leaves","cherry_leaves","dark_oak_leaves"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:flowering_azalea_leaves',item:'minecraft:flowering_azalea_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_leaves',item:'minecraft:jungle_leaves',group:6}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea_leaves","jungle_leaves"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_leaves',item:'minecraft:mangrove_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_leaves',item:'minecraft:oak_leaves',group:6}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea_leaves","jungle_leaves","mangrove_leaves","oak_leaves"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_leaves',item:'minecraft:spruce_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_log',item:'minecraft:acacia_log',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_leaves","acacia_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_wood',item:'minecraft:acacia_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_block',item:'minecraft:bamboo_block',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea_leaves","jungle_leaves","mangrove_leaves","oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:basalt',item:'minecraft:basalt',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["basalt"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_log',item:'minecraft:birch_log',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["basalt","birch_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_wood',item:'minecraft:birch_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bone_block',item:'minecraft:bone_block',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["basalt","birch_log","birch_wood","bone_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_log',item:'minecraft:cherry_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_wood',item:'minecraft:cherry_wood',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_log","cherry_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_hyphae',item:'minecraft:crimson_hyphae',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_hyphae"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_stem',item:'minecraft:crimson_stem',group:7}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea_leaves","jungle_leaves","mangrove_leaves","oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block","basalt","birch_log","birch_wood","bone_block","cherry_log","cherry_wood","crimson_hyphae","crimson_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_log',item:'minecraft:dark_oak_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_wood',item:'minecraft:dark_oak_wood',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_log","dark_oak_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate',item:'minecraft:deepslate',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:hay_block',item:'minecraft:hay_block',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_log","dark_oak_wood","deepslate","hay_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_deepslate',item:'minecraft:infested_deepslate',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_deepslate"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_log',item:'minecraft:jungle_log',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_deepslate","jungle_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_wood',item:'minecraft:jungle_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_log',item:'minecraft:mangrove_log',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_log","dark_oak_wood","deepslate","hay_block","infested_deepslate","jungle_log","jungle_wood","mangrove_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_wood',item:'minecraft:mangrove_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:muddy_mangrove_roots',item:'minecraft:muddy_mangrove_roots',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_wood","muddy_mangrove_roots"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_log',item:'minecraft:oak_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_wood',item:'minecraft:oak_wood',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_wood","muddy_mangrove_roots","oak_log","oak_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ochre_froglight',item:'minecraft:ochre_froglight',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ochre_froglight"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pearlescent_froglight',item:'minecraft:pearlescent_froglight',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ochre_froglight","pearlescent_froglight"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_basalt',item:'minecraft:polished_basalt',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_basalt"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_pillar',item:'minecraft:purpur_pillar',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_pillar"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_pillar',item:'minecraft:quartz_pillar',group:7}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea_leaves","jungle_leaves","mangrove_leaves","oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block","basalt","birch_log","birch_wood","bone_block","cherry_log","cherry_wood","crimson_hyphae","crimson_stem","dark_oak_log","dark_oak_wood","deepslate","hay_block","infested_deepslate","jungle_log","jungle_wood","mangrove_log","mangrove_wood","muddy_mangrove_roots","oak_log","oak_wood","ochre_froglight","pearlescent_froglight","polished_basalt","purpur_pillar","quartz_pillar"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_log',item:'minecraft:spruce_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_wood',item:'minecraft:spruce_wood',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_log","spruce_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_acacia_log',item:'minecraft:stripped_acacia_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_acacia_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_acacia_wood',item:'minecraft:stripped_acacia_wood',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_log","spruce_wood","stripped_acacia_log","stripped_acacia_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_bamboo_block',item:'minecraft:stripped_bamboo_block',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_bamboo_block"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_birch_log',item:'minecraft:stripped_birch_log',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_bamboo_block","stripped_birch_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_birch_wood',item:'minecraft:stripped_birch_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_birch_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_cherry_log',item:'minecraft:stripped_cherry_log',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_log","spruce_wood","stripped_acacia_log","stripped_acacia_wood","stripped_bamboo_block","stripped_birch_log","stripped_birch_wood","stripped_cherry_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_cherry_wood',item:'minecraft:stripped_cherry_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_cherry_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_crimson_hyphae',item:'minecraft:stripped_crimson_hyphae',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_cherry_wood","stripped_crimson_hyphae"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_crimson_stem',item:'minecraft:stripped_crimson_stem',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_crimson_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_dark_oak_log',item:'minecraft:stripped_dark_oak_log',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_cherry_wood","stripped_crimson_hyphae","stripped_crimson_stem","stripped_dark_oak_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_dark_oak_wood',item:'minecraft:stripped_dark_oak_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_dark_oak_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_jungle_log',item:'minecraft:stripped_jungle_log',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_dark_oak_wood","stripped_jungle_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_jungle_wood',item:'minecraft:stripped_jungle_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_jungle_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_mangrove_log',item:'minecraft:stripped_mangrove_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_mangrove_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_mangrove_wood',item:'minecraft:stripped_mangrove_wood',group:7}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_log","spruce_wood","stripped_acacia_log","stripped_acacia_wood","stripped_bamboo_block","stripped_birch_log","stripped_birch_wood","stripped_cherry_log","stripped_cherry_wood","stripped_crimson_hyphae","stripped_crimson_stem","stripped_dark_oak_log","stripped_dark_oak_wood","stripped_jungle_log","stripped_jungle_wood","stripped_mangrove_log","stripped_mangrove_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_oak_log',item:'minecraft:stripped_oak_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_oak_wood',item:'minecraft:stripped_oak_wood',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_log","stripped_oak_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_spruce_log',item:'minecraft:stripped_spruce_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_spruce_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_spruce_wood',item:'minecraft:stripped_spruce_wood',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_log","stripped_oak_wood","stripped_spruce_log","stripped_spruce_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_warped_hyphae',item:'minecraft:stripped_warped_hyphae',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_warped_hyphae"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_warped_stem',item:'minecraft:stripped_warped_stem',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_warped_hyphae","stripped_warped_stem"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:verdant_froglight',item:'minecraft:verdant_froglight',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["verdant_froglight"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_hyphae',item:'minecraft:warped_hyphae',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_log","stripped_oak_wood","stripped_spruce_log","stripped_spruce_wood","stripped_warped_hyphae","stripped_warped_stem","verdant_froglight","warped_hyphae"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_stem',item:'minecraft:warped_stem',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_pressure_plate',item:'minecraft:acacia_pressure_plate',group:8}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_stem","acacia_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_pressure_plate',item:'minecraft:bamboo_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_pressure_plate',item:'minecraft:birch_pressure_plate',group:8}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_stem","acacia_pressure_plate","bamboo_pressure_plate","birch_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_pressure_plate',item:'minecraft:cherry_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_pressure_plate',item:'minecraft:crimson_pressure_plate',group:8}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_pressure_plate","crimson_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_pressure_plate',item:'minecraft:dark_oak_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_pressure_plate',item:'minecraft:jungle_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_pressure_plate',item:'minecraft:mangrove_pressure_plate',group:8}"}]}]}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower","cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore","deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table","end_gateway","end_portal","end_stone","end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern","fire_coral_block","fletching_table","flower_pot","flowering_azalea","frogspawn","gilded_blackstone","glass","glowstone","gold_block","gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet","light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder","lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet","magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta","magenta_wool","magma_block","mangrove_planks","melon","moss_block","moss_carpet","mossy_cobblestone","mossy_stone_bricks","mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore","nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper","packed_ice","packed_mud","pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass","pink_terracotta","pink_tulip","pink_wool","polished_andesite","polished_blackstone","polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite","polished_tuff","poppy","potted_acacia_sapling","potted_allium","potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling","potted_blue_orchid","potted_brown_mushroom","potted_cactus","potted_cherry_sapling","potted_cornflower","potted_crimson_fungus","potted_crimson_roots","potted_dandelion","potted_dark_oak_sapling","potted_dead_bush","potted_fern","potted_flowering_azalea_bush","potted_jungle_sapling","potted_lily_of_the_valley","potted_mangrove_propagule","potted_oak_sapling","potted_orange_tulip","potted_oxeye_daisy","potted_pink_tulip","potted_poppy","potted_red_mushroom","potted_red_tulip","potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool","redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone","smooth_stone","snow_block","soul_fire","soul_sand","soul_soil","soul_torch","spawner","sponge","spore_blossom","spruce_planks","stone","stone_bricks","structure_void","terracotta","tinted_glass","torch","torchflower","tube_coral_block","tuff","tuff_bricks","twisting_vines_plant","void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper","waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper","waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet","white_concrete","white_concrete_powder","white_stained_glass","white_terracotta","white_tulip","white_wool","wither_rose","yellow_carpet","yellow_concrete","yellow_concrete_powder","yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button","bamboo_button","birch_button","cherry_button","crimson_button","dark_oak_button","jungle_button","lever","mangrove_button","oak_button","polished_blackstone_button","spruce_button","stone_button","warped_button","acacia_door","bamboo_door","birch_door","cherry_door","copper_door","crimson_door","dark_oak_door","exposed_copper_door","iron_door","jungle_door","mangrove_door","oak_door","oxidized_copper_door","spruce_door","warped_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence","crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane","green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane","mangrove_fence","nether_brick_fence","oak_fence","orange_stained_glass_pane","pink_stained_glass_pane","purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence","white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate","birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate","jungle_fence_gate","mangrove_fence_gate","oak_fence_gate","spruce_fence_gate","warped_fence_gate","acacia_hanging_sign","bamboo_hanging_sign","birch_hanging_sign","cherry_hanging_sign","crimson_hanging_sign","dark_oak_hanging_sign","jungle_hanging_sign","mangrove_hanging_sign","oak_hanging_sign","spruce_hanging_sign","warped_hanging_sign","acacia_leaves","azalea_leaves","birch_leaves","cherry_leaves","dark_oak_leaves","flowering_azalea_leaves","jungle_leaves","mangrove_leaves","oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block","basalt","birch_log","birch_wood","bone_block","cherry_log","cherry_wood","crimson_hyphae","crimson_stem","dark_oak_log","dark_oak_wood","deepslate","hay_block","infested_deepslate","jungle_log","jungle_wood","mangrove_log","mangrove_wood","muddy_mangrove_roots","oak_log","oak_wood","ochre_froglight","pearlescent_froglight","polished_basalt","purpur_pillar","quartz_pillar","spruce_log","spruce_wood","stripped_acacia_log","stripped_acacia_wood","stripped_bamboo_block","stripped_birch_log","stripped_birch_wood","stripped_cherry_log","stripped_cherry_wood","stripped_crimson_hyphae","stripped_crimson_stem","stripped_dark_oak_log","stripped_dark_oak_wood","stripped_jungle_log","stripped_jungle_wood","stripped_mangrove_log","stripped_mangrove_wood","stripped_oak_log","stripped_oak_wood","stripped_spruce_log","stripped_spruce_wood","stripped_warped_hyphae","stripped_warped_stem","verdant_froglight","warped_hyphae","warped_stem","acacia_pressure_plate","bamboo_pressure_plate","birch_pressure_plate","cherry_pressure_plate","crimson_pressure_plate","dark_oak_pressure_plate","jungle_pressure_plate","mangrove_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_pressure_plate',item:'minecraft:oak_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_pressure_plate',item:'minecraft:polished_blackstone_pressure_plate',group:8}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_pressure_plate',item:'minecraft:spruce_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_pressure_plate',item:'minecraft:stone_pressure_plate',group:8}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_pressure_plate',item:'minecraft:warped_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_sapling',item:'minecraft:acacia_sapling',group:9}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_pressure_plate","acacia_sapling"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_sapling',item:'minecraft:birch_sapling',group:9}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_sapling"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_sapling',item:'minecraft:cherry_sapling',group:9}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_sapling',item:'minecraft:dark_oak_sapling',group:9}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_sapling"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_sapling',item:'minecraft:jungle_sapling',group:9}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_sapling","jungle_sapling"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_sapling',item:'minecraft:oak_sapling',group:9}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_sapling',item:'minecraft:spruce_sapling',group:9}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_sapling","jungle_sapling","oak_sapling","spruce_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_sign',item:'minecraft:acacia_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_sign',item:'minecraft:bamboo_sign',group:10}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_sign","bamboo_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_sign',item:'minecraft:birch_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_sign',item:'minecraft:cherry_sign',group:10}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_sign',item:'minecraft:crimson_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_sign',item:'minecraft:dark_oak_sign',group:10}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_sign","dark_oak_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_sign',item:'minecraft:jungle_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_sign',item:'minecraft:mangrove_sign',group:10}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_sign',item:'minecraft:oak_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_sign',item:'minecraft:spruce_sign',group:10}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sign","spruce_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_sign',item:'minecraft:warped_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_slab',item:'minecraft:acacia_slab',group:11}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","spruce_sign","warped_sign","acacia_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite_slab',item:'minecraft:andesite_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_mosaic_slab',item:'minecraft:bamboo_mosaic_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_slab","bamboo_mosaic_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_slab',item:'minecraft:bamboo_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_slab',item:'minecraft:birch_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone_slab',item:'minecraft:blackstone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brick_slab',item:'minecraft:brick_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone_slab","brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_slab',item:'minecraft:cherry_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate_slab',item:'minecraft:cobbled_deepslate_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone_slab',item:'minecraft:cobblestone_slab',group:11}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab","brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_slab',item:'minecraft:crimson_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_copper_slab',item:'minecraft:cut_copper_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_slab","cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_red_sandstone_slab',item:'minecraft:cut_red_sandstone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_red_sandstone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_sandstone_slab',item:'minecraft:cut_sandstone_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_slab',item:'minecraft:dark_oak_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_prismarine_slab',item:'minecraft:dark_prismarine_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_slab","dark_prismarine_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_brick_slab',item:'minecraft:deepslate_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tile_slab',item:'minecraft:deepslate_tile_slab',group:11}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite_slab',item:'minecraft:diorite_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_brick_slab',item:'minecraft:end_stone_brick_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_slab","end_stone_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_cut_copper_slab',item:'minecraft:exposed_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_cut_copper_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite_slab',item:'minecraft:granite_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_slab',item:'minecraft:jungle_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_slab',item:'minecraft:mangrove_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_slab","mangrove_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone_slab',item:'minecraft:mossy_cobblestone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_cobblestone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_brick_slab',item:'minecraft:mossy_stone_brick_slab',group:11}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab","mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_brick_slab',item:'minecraft:mud_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_slab',item:'minecraft:nether_brick_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud_brick_slab","nether_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_slab',item:'minecraft:oak_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_cut_copper_slab',item:'minecraft:oxidized_cut_copper_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:petrified_oak_slab',item:'minecraft:petrified_oak_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["petrified_oak_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_andesite_slab',item:'minecraft:polished_andesite_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["petrified_oak_slab","polished_andesite_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_brick_slab',item:'minecraft:polished_blackstone_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_slab',item:'minecraft:polished_blackstone_slab',group:11}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate_slab',item:'minecraft:polished_deepslate_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_deepslate_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_diorite_slab',item:'minecraft:polished_diorite_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_deepslate_slab","polished_diorite_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_granite_slab',item:'minecraft:polished_granite_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_granite_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff_slab',item:'minecraft:polished_tuff_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_deepslate_slab","polished_diorite_slab","polished_granite_slab","polished_tuff_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_brick_slab',item:'minecraft:prismarine_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_slab',item:'minecraft:prismarine_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_brick_slab","prismarine_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_slab',item:'minecraft:purpur_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_slab',item:'minecraft:quartz_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["quartz_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_brick_slab',item:'minecraft:red_nether_brick_slab',group:11}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab","brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab","mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab","polished_deepslate_slab","polished_diorite_slab","polished_granite_slab","polished_tuff_slab","prismarine_brick_slab","prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone_slab',item:'minecraft:red_sandstone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone_slab',item:'minecraft:sandstone_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab","sandstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_quartz_slab',item:'minecraft:smooth_quartz_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_quartz_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_red_sandstone_slab',item:'minecraft:smooth_red_sandstone_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_sandstone_slab',item:'minecraft:smooth_sandstone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_stone_slab',item:'minecraft:smooth_stone_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_slab","smooth_stone_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_slab',item:'minecraft:spruce_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_brick_slab',item:'minecraft:stone_brick_slab',group:11}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_slab',item:'minecraft:stone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_brick_slab',item:'minecraft:tuff_brick_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_slab","tuff_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_slab',item:'minecraft:tuff_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_slab',item:'minecraft:warped_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_slab","tuff_brick_slab","tuff_slab","warped_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_cut_copper_slab',item:'minecraft:waxed_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_cut_copper_slab',item:'minecraft:waxed_exposed_cut_copper_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper_slab","waxed_exposed_cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_cut_copper_slab',item:'minecraft:waxed_oxidized_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_cut_copper_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_cut_copper_slab',item:'minecraft:waxed_weathered_cut_copper_slab',group:11}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_cut_copper_slab',item:'minecraft:weathered_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_stairs',item:'minecraft:acacia_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper_slab","acacia_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite_stairs',item:'minecraft:andesite_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_mosaic_stairs',item:'minecraft:bamboo_mosaic_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_stairs',item:'minecraft:bamboo_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_stairs',item:'minecraft:birch_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_stairs","birch_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone_stairs',item:'minecraft:blackstone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brick_stairs',item:'minecraft:brick_stairs',group:12}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs","birch_stairs","blackstone_stairs","brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_stairs',item:'minecraft:cherry_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate_stairs',item:'minecraft:cobbled_deepslate_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_stairs","cobbled_deepslate_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone_stairs',item:'minecraft:cobblestone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_stairs',item:'minecraft:crimson_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_stairs","cobbled_deepslate_stairs","cobblestone_stairs","crimson_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_copper_stairs',item:'minecraft:cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_stairs',item:'minecraft:dark_oak_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_copper_stairs","dark_oak_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_prismarine_stairs',item:'minecraft:dark_prismarine_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_brick_stairs',item:'minecraft:deepslate_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tile_stairs',item:'minecraft:deepslate_tile_stairs',group:12}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs","birch_stairs","blackstone_stairs","brick_stairs","cherry_stairs","cobbled_deepslate_stairs","cobblestone_stairs","crimson_stairs","cut_copper_stairs","dark_oak_stairs","dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite_stairs',item:'minecraft:diorite_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_brick_stairs',item:'minecraft:end_stone_brick_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_stairs","end_stone_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_cut_copper_stairs',item:'minecraft:exposed_cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite_stairs',item:'minecraft:granite_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_stairs',item:'minecraft:jungle_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_stairs',item:'minecraft:mangrove_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_stairs","mangrove_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone_stairs',item:'minecraft:mossy_cobblestone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_cobblestone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_brick_stairs',item:'minecraft:mossy_stone_brick_stairs',group:12}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs","mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_brick_stairs',item:'minecraft:mud_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_stairs',item:'minecraft:nether_brick_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud_brick_stairs","nether_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_stairs',item:'minecraft:oak_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_cut_copper_stairs',item:'minecraft:oxidized_cut_copper_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud_brick_stairs","nether_brick_stairs","oak_stairs","oxidized_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_andesite_stairs',item:'minecraft:polished_andesite_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_andesite_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_brick_stairs',item:'minecraft:polished_blackstone_brick_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_andesite_stairs","polished_blackstone_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_stairs',item:'minecraft:polished_blackstone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate_stairs',item:'minecraft:polished_deepslate_stairs',group:12}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs","mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","oak_stairs","oxidized_cut_copper_stairs","polished_andesite_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","polished_deepslate_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_diorite_stairs',item:'minecraft:polished_diorite_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_diorite_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_granite_stairs',item:'minecraft:polished_granite_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_diorite_stairs","polished_granite_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff_stairs',item:'minecraft:polished_tuff_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_brick_stairs',item:'minecraft:prismarine_brick_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_diorite_stairs","polished_granite_stairs","polished_tuff_stairs","prismarine_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_stairs',item:'minecraft:prismarine_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_stairs',item:'minecraft:purpur_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_stairs","purpur_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_stairs',item:'minecraft:quartz_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["quartz_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_brick_stairs',item:'minecraft:red_nether_brick_stairs',group:12}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_diorite_stairs","polished_granite_stairs","polished_tuff_stairs","prismarine_brick_stairs","prismarine_stairs","purpur_stairs","quartz_stairs","red_nether_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone_stairs',item:'minecraft:red_sandstone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone_stairs',item:'minecraft:sandstone_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_stairs","sandstone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_quartz_stairs',item:'minecraft:smooth_quartz_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_quartz_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_red_sandstone_stairs',item:'minecraft:smooth_red_sandstone_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_stairs","sandstone_stairs","smooth_quartz_stairs","smooth_red_sandstone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_sandstone_stairs',item:'minecraft:smooth_sandstone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_stairs',item:'minecraft:spruce_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_stairs","spruce_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_brick_stairs',item:'minecraft:stone_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_stairs',item:'minecraft:stone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_brick_stairs',item:'minecraft:tuff_brick_stairs',group:12}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab","brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab","mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab","polished_deepslate_slab","polished_diorite_slab","polished_granite_slab","polished_tuff_slab","prismarine_brick_slab","prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab","red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs","birch_stairs","blackstone_stairs","brick_stairs","cherry_stairs","cobbled_deepslate_stairs","cobblestone_stairs","crimson_stairs","cut_copper_stairs","dark_oak_stairs","dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs","diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs","mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","oak_stairs","oxidized_cut_copper_stairs","polished_andesite_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","polished_deepslate_stairs","polished_diorite_stairs","polished_granite_stairs","polished_tuff_stairs","prismarine_brick_stairs","prismarine_stairs","purpur_stairs","quartz_stairs","red_nether_brick_stairs","red_sandstone_stairs","sandstone_stairs","smooth_quartz_stairs","smooth_red_sandstone_stairs","smooth_sandstone_stairs","spruce_stairs","stone_brick_stairs","stone_stairs","tuff_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_stairs',item:'minecraft:tuff_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_stairs',item:'minecraft:warped_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_stairs","warped_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_cut_copper_stairs',item:'minecraft:waxed_cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_cut_copper_stairs',item:'minecraft:waxed_exposed_cut_copper_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_cut_copper_stairs',item:'minecraft:waxed_oxidized_cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_cut_copper_stairs',item:'minecraft:waxed_weathered_cut_copper_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_cut_copper_stairs',item:'minecraft:weathered_cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_trapdoor',item:'minecraft:acacia_trapdoor',group:13}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_trapdoor',item:'minecraft:bamboo_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_trapdoor',item:'minecraft:birch_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_trapdoor","birch_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_trapdoor',item:'minecraft:cherry_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_trapdoor',item:'minecraft:copper_trapdoor',group:13}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_trapdoor',item:'minecraft:crimson_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_trapdoor',item:'minecraft:dark_oak_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_trapdoor","dark_oak_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_trapdoor',item:'minecraft:exposed_copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_trapdoor',item:'minecraft:iron_trapdoor',group:13}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor","exposed_copper_trapdoor","iron_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_trapdoor',item:'minecraft:jungle_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_trapdoor',item:'minecraft:mangrove_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_trapdoor","mangrove_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_trapdoor',item:'minecraft:oak_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_trapdoor',item:'minecraft:oxidized_copper_trapdoor',group:13}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_trapdoor',item:'minecraft:spruce_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_trapdoor',item:'minecraft:warped_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_trapdoor","warped_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_trapdoor',item:'minecraft:waxed_copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_trapdoor',item:'minecraft:waxed_exposed_copper_trapdoor',group:13}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","spruce_trapdoor","warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_trapdoor',item:'minecraft:waxed_oxidized_copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_trapdoor',item:'minecraft:waxed_weathered_copper_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_trapdoor',item:'minecraft:weathered_copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_wall_hanging_sign',item:'minecraft:acacia_hanging_sign',group:14}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","weathered_copper_trapdoor","acacia_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_wall_sign',item:'minecraft:acacia_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_wall_hanging_sign',item:'minecraft:bamboo_hanging_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_wall_sign","bamboo_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_wall_sign',item:'minecraft:bamboo_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_wall_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:big_dripleaf_stem',item:'minecraft:big_dripleaf',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["big_dripleaf_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_wall_hanging_sign',item:'minecraft:birch_hanging_sign',group:14}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor","exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","spruce_trapdoor","warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","weathered_copper_trapdoor","acacia_wall_hanging_sign","acacia_wall_sign","bamboo_wall_hanging_sign","bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_wall_sign',item:'minecraft:birch_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_wall_hanging_sign',item:'minecraft:cherry_hanging_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wall_sign","cherry_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_wall_sign',item:'minecraft:cherry_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_wall_hanging_sign',item:'minecraft:crimson_hanging_sign',group:14}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_wall_sign',item:'minecraft:crimson_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_wall_hanging_sign',item:'minecraft:dark_oak_hanging_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_wall_sign","dark_oak_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_wall_sign',item:'minecraft:dark_oak_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ender_chest',item:'minecraft:ender_chest',group:14}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign","dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_wall_hanging_sign',item:'minecraft:jungle_hanging_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_wall_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_wall_sign',item:'minecraft:jungle_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_wall_hanging_sign","jungle_wall_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ladder',item:'minecraft:ladder',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ladder"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_wall_hanging_sign',item:'minecraft:mangrove_hanging_sign',group:14}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_wall_hanging_sign","jungle_wall_sign","ladder","mangrove_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_wall_sign',item:'minecraft:mangrove_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_wall_hanging_sign',item:'minecraft:oak_hanging_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_wall_sign","oak_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_wall_sign',item:'minecraft:oak_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_wall_hanging_sign',item:'minecraft:spruce_hanging_sign',group:14}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign","dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest","jungle_wall_hanging_sign","jungle_wall_sign","ladder","mangrove_wall_hanging_sign","mangrove_wall_sign","oak_wall_hanging_sign","oak_wall_sign","spruce_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_wall_sign',item:'minecraft:spruce_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_wall_hanging_sign',item:'minecraft:warped_hanging_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wall_sign","warped_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_wall_sign',item:'minecraft:warped_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/27","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:activator_rail',item:'minecraft:activator_rail',group:15}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wall_sign","warped_wall_hanging_sign","warped_wall_sign","activator_rail"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/27","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:detector_rail',item:'minecraft:detector_rail',group:15}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["detector_rail"]}}}]},{"type":"loot_table","value":"bs.block:get/27","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:powered_rail',item:'minecraft:powered_rail',group:15}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["detector_rail","powered_rail"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:amethyst_cluster',item:'minecraft:amethyst_cluster',group:16}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["amethyst_cluster"]}}}]},{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:large_amethyst_bud',item:'minecraft:large_amethyst_bud',group:16}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wall_sign","warped_wall_hanging_sign","warped_wall_sign","activator_rail","detector_rail","powered_rail","amethyst_cluster","large_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:medium_amethyst_bud',item:'minecraft:medium_amethyst_bud',group:16}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud"]}}}]},{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:small_amethyst_bud',item:'minecraft:small_amethyst_bud',group:16}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud","small_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite_wall',item:'minecraft:andesite_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone_wall',item:'minecraft:blackstone_wall',group:17}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud","small_amethyst_bud","andesite_wall","blackstone_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brick_wall',item:'minecraft:brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate_wall',item:'minecraft:cobbled_deepslate_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_wall","cobbled_deepslate_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone_wall',item:'minecraft:cobblestone_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_brick_wall',item:'minecraft:deepslate_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tile_wall',item:'minecraft:deepslate_tile_wall',group:17}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor","exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","spruce_trapdoor","warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","weathered_copper_trapdoor","acacia_wall_hanging_sign","acacia_wall_sign","bamboo_wall_hanging_sign","bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign","birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign","dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest","jungle_wall_hanging_sign","jungle_wall_sign","ladder","mangrove_wall_hanging_sign","mangrove_wall_sign","oak_wall_hanging_sign","oak_wall_sign","spruce_wall_hanging_sign","spruce_wall_sign","warped_wall_hanging_sign","warped_wall_sign","activator_rail","detector_rail","powered_rail","amethyst_cluster","large_amethyst_bud","medium_amethyst_bud","small_amethyst_bud","andesite_wall","blackstone_wall","brick_wall","cobbled_deepslate_wall","cobblestone_wall","deepslate_brick_wall","deepslate_tile_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite_wall',item:'minecraft:diorite_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_brick_wall',item:'minecraft:end_stone_brick_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall","end_stone_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite_wall',item:'minecraft:granite_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["granite_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone_wall',item:'minecraft:mossy_cobblestone_wall',group:17}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_brick_wall',item:'minecraft:mossy_stone_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_stone_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_brick_wall',item:'minecraft:mud_brick_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_stone_brick_wall","mud_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_wall',item:'minecraft:nether_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_brick_wall',item:'minecraft:polished_blackstone_brick_wall',group:17}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall","mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_wall',item:'minecraft:polished_blackstone_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate_wall',item:'minecraft:polished_deepslate_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_wall","polished_deepslate_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff_wall',item:'minecraft:polished_tuff_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_wall',item:'minecraft:prismarine_wall',group:17}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_wall","polished_deepslate_wall","polished_tuff_wall","prismarine_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_brick_wall',item:'minecraft:red_nether_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_nether_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone_wall',item:'minecraft:red_sandstone_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_nether_brick_wall","red_sandstone_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone_wall',item:'minecraft:sandstone_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sandstone_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_brick_wall',item:'minecraft:stone_brick_wall',group:17}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall","mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall","polished_blackstone_wall","polished_deepslate_wall","polished_tuff_wall","prismarine_wall","red_nether_brick_wall","red_sandstone_wall","sandstone_wall","stone_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_brick_wall',item:'minecraft:tuff_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_wall',item:'minecraft:tuff_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_brick_wall","tuff_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:anvil',item:'minecraft:anvil',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["anvil"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:attached_melon_stem',item:'minecraft:melon_seeds',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_brick_wall","tuff_wall","anvil","attached_melon_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:attached_pumpkin_stem',item:'minecraft:melon_seeds',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["attached_pumpkin_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_glazed_terracotta',item:'minecraft:black_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["attached_pumpkin_stem","black_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_wall_banner',item:'minecraft:black_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_glazed_terracotta',item:'minecraft:blue_glazed_terracotta',group:18}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_brick_wall","tuff_wall","anvil","attached_melon_stem","attached_pumpkin_stem","black_glazed_terracotta","black_wall_banner","blue_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_wall_banner',item:'minecraft:blue_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_glazed_terracotta',item:'minecraft:brown_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_wall_banner","brown_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_wall_banner',item:'minecraft:brown_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:carved_pumpkin',item:'minecraft:carved_pumpkin',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_wall_banner","brown_glazed_terracotta","brown_wall_banner","carved_pumpkin"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chipped_anvil',item:'minecraft:chipped_anvil',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chipped_anvil"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_glazed_terracotta',item:'minecraft:cyan_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chipped_anvil","cyan_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_wall_banner',item:'minecraft:cyan_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:damaged_anvil',item:'minecraft:damaged_anvil',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["damaged_anvil"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_glazed_terracotta',item:'minecraft:gray_glazed_terracotta',group:18}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall","mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall","polished_blackstone_wall","polished_deepslate_wall","polished_tuff_wall","prismarine_wall","red_nether_brick_wall","red_sandstone_wall","sandstone_wall","stone_brick_wall","tuff_brick_wall","tuff_wall","anvil","attached_melon_stem","attached_pumpkin_stem","black_glazed_terracotta","black_wall_banner","blue_glazed_terracotta","blue_wall_banner","brown_glazed_terracotta","brown_wall_banner","carved_pumpkin","chipped_anvil","cyan_glazed_terracotta","cyan_wall_banner","damaged_anvil","gray_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_wall_banner',item:'minecraft:gray_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_glazed_terracotta',item:'minecraft:green_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wall_banner","green_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_wall_banner',item:'minecraft:green_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jack_o_lantern',item:'minecraft:jack_o_lantern',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wall_banner","green_glazed_terracotta","green_wall_banner","jack_o_lantern"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_glazed_terracotta',item:'minecraft:light_blue_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_wall_banner',item:'minecraft:light_blue_banner',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_glazed_terracotta","light_blue_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_glazed_terracotta',item:'minecraft:light_gray_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_wall_banner',item:'minecraft:light_gray_banner',group:18}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wall_banner","green_glazed_terracotta","green_wall_banner","jack_o_lantern","light_blue_glazed_terracotta","light_blue_wall_banner","light_gray_glazed_terracotta","light_gray_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_glazed_terracotta',item:'minecraft:lime_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_wall_banner',item:'minecraft:lime_banner',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_glazed_terracotta","lime_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:loom',item:'minecraft:loom',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["loom"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_glazed_terracotta',item:'minecraft:magenta_glazed_terracotta',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_glazed_terracotta","lime_wall_banner","loom","magenta_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_wall_banner',item:'minecraft:magenta_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_glazed_terracotta',item:'minecraft:orange_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_wall_banner","orange_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_wall_banner',item:'minecraft:orange_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_glazed_terracotta',item:'minecraft:pink_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_wall_banner',item:'minecraft:pink_banner',group:18}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_wall_banner","green_glazed_terracotta","green_wall_banner","jack_o_lantern","light_blue_glazed_terracotta","light_blue_wall_banner","light_gray_glazed_terracotta","light_gray_wall_banner","lime_glazed_terracotta","lime_wall_banner","loom","magenta_glazed_terracotta","magenta_wall_banner","orange_glazed_terracotta","orange_wall_banner","pink_glazed_terracotta","pink_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_glazed_terracotta',item:'minecraft:purple_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_wall_banner',item:'minecraft:purple_banner',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_glazed_terracotta","purple_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_glazed_terracotta',item:'minecraft:red_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_wall_banner',item:'minecraft:red_banner',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_glazed_terracotta","purple_wall_banner","red_glazed_terracotta","red_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_wall_torch',item:'minecraft:soul_torch',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_wall_torch"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stonecutter',item:'minecraft:stonecutter',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_wall_torch","stonecutter"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wall_torch',item:'minecraft:torch',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wall_torch"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_glazed_terracotta',item:'minecraft:white_glazed_terracotta',group:18}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_glazed_terracotta","purple_wall_banner","red_glazed_terracotta","red_wall_banner","soul_wall_torch","stonecutter","wall_torch","white_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_wall_banner',item:'minecraft:white_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_glazed_terracotta',item:'minecraft:yellow_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wall_banner","yellow_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_wall_banner',item:'minecraft:yellow_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/35","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo',item:'minecraft:bamboo',group:19}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wall_banner","yellow_glazed_terracotta","yellow_wall_banner","bamboo"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/37","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:barrel',item:'minecraft:barrel',group:20}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["barrel"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:barrier',item:'minecraft:barrier',group:21}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["barrel","barrier"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_grate',item:'minecraft:copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_grate',item:'minecraft:exposed_copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:hanging_roots',item:'minecraft:hanging_roots',group:21}"}]}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab","brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab","mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab","polished_deepslate_slab","polished_diorite_slab","polished_granite_slab","polished_tuff_slab","prismarine_brick_slab","prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab","red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs","birch_stairs","blackstone_stairs","brick_stairs","cherry_stairs","cobbled_deepslate_stairs","cobblestone_stairs","crimson_stairs","cut_copper_stairs","dark_oak_stairs","dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs","diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs","mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","oak_stairs","oxidized_cut_copper_stairs","polished_andesite_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","polished_deepslate_stairs","polished_diorite_stairs","polished_granite_stairs","polished_tuff_stairs","prismarine_brick_stairs","prismarine_stairs","purpur_stairs","quartz_stairs","red_nether_brick_stairs","red_sandstone_stairs","sandstone_stairs","smooth_quartz_stairs","smooth_red_sandstone_stairs","smooth_sandstone_stairs","spruce_stairs","stone_brick_stairs","stone_stairs","tuff_brick_stairs","tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor","exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","spruce_trapdoor","warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","weathered_copper_trapdoor","acacia_wall_hanging_sign","acacia_wall_sign","bamboo_wall_hanging_sign","bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign","birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign","dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest","jungle_wall_hanging_sign","jungle_wall_sign","ladder","mangrove_wall_hanging_sign","mangrove_wall_sign","oak_wall_hanging_sign","oak_wall_sign","spruce_wall_hanging_sign","spruce_wall_sign","warped_wall_hanging_sign","warped_wall_sign","activator_rail","detector_rail","powered_rail","amethyst_cluster","large_amethyst_bud","medium_amethyst_bud","small_amethyst_bud","andesite_wall","blackstone_wall","brick_wall","cobbled_deepslate_wall","cobblestone_wall","deepslate_brick_wall","deepslate_tile_wall","diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall","mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall","polished_blackstone_wall","polished_deepslate_wall","polished_tuff_wall","prismarine_wall","red_nether_brick_wall","red_sandstone_wall","sandstone_wall","stone_brick_wall","tuff_brick_wall","tuff_wall","anvil","attached_melon_stem","attached_pumpkin_stem","black_glazed_terracotta","black_wall_banner","blue_glazed_terracotta","blue_wall_banner","brown_glazed_terracotta","brown_wall_banner","carved_pumpkin","chipped_anvil","cyan_glazed_terracotta","cyan_wall_banner","damaged_anvil","gray_glazed_terracotta","gray_wall_banner","green_glazed_terracotta","green_wall_banner","jack_o_lantern","light_blue_glazed_terracotta","light_blue_wall_banner","light_gray_glazed_terracotta","light_gray_wall_banner","lime_glazed_terracotta","lime_wall_banner","loom","magenta_glazed_terracotta","magenta_wall_banner","orange_glazed_terracotta","orange_wall_banner","pink_glazed_terracotta","pink_wall_banner","purple_glazed_terracotta","purple_wall_banner","red_glazed_terracotta","red_wall_banner","soul_wall_torch","stonecutter","wall_torch","white_glazed_terracotta","white_wall_banner","yellow_glazed_terracotta","yellow_wall_banner","bamboo","barrel","barrier","copper_grate","exposed_copper_grate","hanging_roots"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:heavy_core',item:'minecraft:heavy_core',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_roots',item:'minecraft:mangrove_roots',group:21}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core","mangrove_roots"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_grate',item:'minecraft:oxidized_copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_grate',item:'minecraft:waxed_copper_grate',group:21}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_grate',item:'minecraft:waxed_exposed_copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_grate',item:'minecraft:waxed_oxidized_copper_grate',group:21}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_copper_grate","waxed_oxidized_copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_grate',item:'minecraft:waxed_weathered_copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_grate',item:'minecraft:weathered_copper_grate',group:21}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/38","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bee_nest',item:'minecraft:bee_nest',group:22}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bee_nest"]}}}]},{"type":"loot_table","value":"bs.block:get/38","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:beehive',item:'minecraft:beehive',group:22}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bee_nest","beehive"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:beetroots',item:'minecraft:beetroot_seeds',group:23}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["beetroots"]}}}]},{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:frosted_ice',item:'None',group:23}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bee_nest","beehive","beetroots","frosted_ice"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_wart',item:'minecraft:nether_wart',group:23}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_wart"]}}}]},{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sweet_berry_bush',item:'minecraft:sweet_berries',group:23}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_wart","sweet_berry_bush"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/40","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bell',item:'minecraft:bell',group:24}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bell"]}}}]},{"type":"loot_table","value":"bs.block:get/41","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:big_dripleaf',item:'minecraft:big_dripleaf',group:25}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart","sweet_berry_bush","bell","big_dripleaf"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_banner',item:'minecraft:black_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_banner',item:'minecraft:blue_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_banner","blue_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_banner',item:'minecraft:brown_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_banner',item:'minecraft:cyan_banner',group:26}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_banner","blue_banner","brown_banner","cyan_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_banner',item:'minecraft:gray_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_banner',item:'minecraft:green_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_banner","green_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_banner',item:'minecraft:light_blue_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_banner',item:'minecraft:light_gray_banner',group:26}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_banner","blue_banner","brown_banner","cyan_banner","gray_banner","green_banner","light_blue_banner","light_gray_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_banner',item:'minecraft:lime_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_banner',item:'minecraft:magenta_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_banner","magenta_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_banner',item:'minecraft:orange_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_banner',item:'minecraft:pink_banner',group:26}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_banner","magenta_banner","orange_banner","pink_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_banner',item:'minecraft:purple_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_banner',item:'minecraft:red_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_banner","red_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_banner',item:'minecraft:white_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_banner',item:'minecraft:yellow_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_bed',item:'minecraft:black_bed',group:27}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart","sweet_berry_bush","bell","big_dripleaf","black_banner","blue_banner","brown_banner","cyan_banner","gray_banner","green_banner","light_blue_banner","light_gray_banner","lime_banner","magenta_banner","orange_banner","pink_banner","purple_banner","red_banner","white_banner","yellow_banner","black_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_bed',item:'minecraft:blue_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_bed',item:'minecraft:brown_bed',group:27}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_bed","brown_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_bed',item:'minecraft:cyan_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_bed',item:'minecraft:gray_bed',group:27}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_bed","brown_bed","cyan_bed","gray_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_bed',item:'minecraft:green_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_bed',item:'minecraft:light_blue_bed',group:27}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_bed","light_blue_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_bed',item:'minecraft:light_gray_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_bed',item:'minecraft:lime_bed',group:27}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_bed","brown_bed","cyan_bed","gray_bed","green_bed","light_blue_bed","light_gray_bed","lime_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_bed',item:'minecraft:magenta_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_bed',item:'minecraft:orange_bed',group:27}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_bed","orange_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_bed',item:'minecraft:pink_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_bed',item:'minecraft:purple_bed',group:27}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_bed","orange_bed","pink_bed","purple_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_bed',item:'minecraft:red_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_bed',item:'minecraft:white_bed',group:27}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_bed","white_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_bed',item:'minecraft:yellow_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_candle',item:'minecraft:black_candle',group:28}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_bed","brown_bed","cyan_bed","gray_bed","green_bed","light_blue_bed","light_gray_bed","lime_bed","magenta_bed","orange_bed","pink_bed","purple_bed","red_bed","white_bed","yellow_bed","black_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_candle',item:'minecraft:blue_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_candle',item:'minecraft:brown_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle","brown_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:candle',item:'minecraft:candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_candle',item:'minecraft:cyan_candle',group:28}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle","brown_candle","candle","cyan_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_candle',item:'minecraft:gray_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_candle',item:'minecraft:green_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_candle","green_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_candle',item:'minecraft:light_blue_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_candle',item:'minecraft:light_gray_candle',group:28}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle","brown_candle","candle","cyan_candle","gray_candle","green_candle","light_blue_candle","light_gray_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_candle',item:'minecraft:lime_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_candle',item:'minecraft:magenta_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_candle","magenta_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_candle',item:'minecraft:orange_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_candle',item:'minecraft:pink_candle',group:28}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_candle","magenta_candle","orange_candle","pink_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_candle',item:'minecraft:purple_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_candle',item:'minecraft:red_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_candle","red_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_candle',item:'minecraft:white_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_candle',item:'minecraft:yellow_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_candle_cake',item:'None',group:29}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart","sweet_berry_bush","bell","big_dripleaf","black_banner","blue_banner","brown_banner","cyan_banner","gray_banner","green_banner","light_blue_banner","light_gray_banner","lime_banner","magenta_banner","orange_banner","pink_banner","purple_banner","red_banner","white_banner","yellow_banner","black_bed","blue_bed","brown_bed","cyan_bed","gray_bed","green_bed","light_blue_bed","light_gray_bed","lime_bed","magenta_bed","orange_bed","pink_bed","purple_bed","red_bed","white_bed","yellow_bed","black_candle","blue_candle","brown_candle","candle","cyan_candle","gray_candle","green_candle","light_blue_candle","light_gray_candle","lime_candle","magenta_candle","orange_candle","pink_candle","purple_candle","red_candle","white_candle","yellow_candle","black_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle_cake","brown_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_candle_cake',item:'None',group:29}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_redstone_ore',item:'minecraft:deepslate_redstone_ore',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_redstone_ore"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_redstone_ore","gray_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_candle_cake',item:'None',group:29}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake","green_candle_cake","light_blue_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_candle_cake","lime_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_candle_cake',item:'None',group:29}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_candle_cake","lime_candle_cake","magenta_candle_cake","orange_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_candle_cake","purple_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_lamp',item:'minecraft:redstone_lamp',group:29}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake","green_candle_cake","light_blue_candle_cake","light_gray_candle_cake","lime_candle_cake","magenta_candle_cake","orange_candle_cake","pink_candle_cake","purple_candle_cake","red_candle_cake","redstone_lamp"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_ore',item:'minecraft:redstone_ore',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_ore"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_ore","white_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_shulker_box',item:'minecraft:black_shulker_box',group:30}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_ore","white_candle_cake","yellow_candle_cake","black_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_shulker_box',item:'minecraft:blue_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_shulker_box',item:'minecraft:brown_shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_shulker_box","brown_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_shulker_box',item:'minecraft:cyan_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_rod',item:'minecraft:end_rod',group:30}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_ore","white_candle_cake","yellow_candle_cake","black_shulker_box","blue_shulker_box","brown_shulker_box","cyan_shulker_box","end_rod"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_shulker_box',item:'minecraft:gray_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_shulker_box',item:'minecraft:green_shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_shulker_box","green_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_shulker_box',item:'minecraft:light_blue_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_shulker_box',item:'minecraft:light_gray_shulker_box',group:30}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_shulker_box","green_shulker_box","light_blue_shulker_box","light_gray_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_shulker_box',item:'minecraft:lime_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_shulker_box',item:'minecraft:magenta_shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_shulker_box","magenta_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_shulker_box',item:'minecraft:orange_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_shulker_box',item:'minecraft:pink_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_shulker_box',item:'minecraft:purple_shulker_box',group:30}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake","green_candle_cake","light_blue_candle_cake","light_gray_candle_cake","lime_candle_cake","magenta_candle_cake","orange_candle_cake","pink_candle_cake","purple_candle_cake","red_candle_cake","redstone_lamp","redstone_ore","white_candle_cake","yellow_candle_cake","black_shulker_box","blue_shulker_box","brown_shulker_box","cyan_shulker_box","end_rod","gray_shulker_box","green_shulker_box","light_blue_shulker_box","light_gray_shulker_box","lime_shulker_box","magenta_shulker_box","orange_shulker_box","pink_shulker_box","purple_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_shulker_box',item:'minecraft:red_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:shulker_box',item:'minecraft:shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_shulker_box","shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_shulker_box',item:'minecraft:white_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_shulker_box',item:'minecraft:yellow_shulker_box',group:30}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_shulker_box","shulker_box","white_shulker_box","yellow_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blast_furnace',item:'minecraft:blast_furnace',group:31}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blast_furnace"]}}}]},{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:furnace',item:'minecraft:furnace',group:31}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blast_furnace","furnace"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smoker',item:'minecraft:smoker',group:31}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smoker"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral',item:'minecraft:brain_coral',group:32}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_shulker_box","shulker_box","white_shulker_box","yellow_shulker_box","blast_furnace","furnace","smoker","brain_coral"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral_fan',item:'minecraft:brain_coral_fan',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral',item:'minecraft:bubble_coral',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_fan","bubble_coral"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral_fan',item:'minecraft:bubble_coral_fan',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bubble_coral_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:conduit',item:'minecraft:conduit',group:32}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_fan","bubble_coral","bubble_coral_fan","conduit"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral',item:'minecraft:dead_brain_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_brain_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral_fan',item:'minecraft:dead_brain_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_brain_coral","dead_brain_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral',item:'minecraft:dead_bubble_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral_fan',item:'minecraft:dead_bubble_coral_fan',group:32}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_shulker_box","shulker_box","white_shulker_box","yellow_shulker_box","blast_furnace","furnace","smoker","brain_coral","brain_coral_fan","bubble_coral","bubble_coral_fan","conduit","dead_brain_coral","dead_brain_coral_fan","dead_bubble_coral","dead_bubble_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral',item:'minecraft:dead_fire_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral_fan',item:'minecraft:dead_fire_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral","dead_fire_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral',item:'minecraft:dead_horn_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral_fan',item:'minecraft:dead_horn_coral_fan',group:32}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral","dead_fire_coral_fan","dead_horn_coral","dead_horn_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral',item:'minecraft:dead_tube_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral_fan',item:'minecraft:dead_tube_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral","dead_tube_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral',item:'minecraft:fire_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral_fan',item:'minecraft:fire_coral_fan',group:32}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral","dead_fire_coral_fan","dead_horn_coral","dead_horn_coral_fan","dead_tube_coral","dead_tube_coral_fan","fire_coral","fire_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral',item:'minecraft:horn_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["horn_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral_fan',item:'minecraft:horn_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["horn_coral","horn_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral',item:'minecraft:tube_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral_fan',item:'minecraft:tube_coral_fan',group:32}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["horn_coral","horn_coral_fan","tube_coral","tube_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral_wall_fan',item:'minecraft:brain_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral_wall_fan',item:'minecraft:bubble_coral_fan',group:33}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_wall_fan","bubble_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral_wall_fan',item:'minecraft:dead_brain_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_brain_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral_wall_fan',item:'minecraft:dead_bubble_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral_wall_fan',item:'minecraft:dead_fire_coral_fan',group:33}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart","sweet_berry_bush","bell","big_dripleaf","black_banner","blue_banner","brown_banner","cyan_banner","gray_banner","green_banner","light_blue_banner","light_gray_banner","lime_banner","magenta_banner","orange_banner","pink_banner","purple_banner","red_banner","white_banner","yellow_banner","black_bed","blue_bed","brown_bed","cyan_bed","gray_bed","green_bed","light_blue_bed","light_gray_bed","lime_bed","magenta_bed","orange_bed","pink_bed","purple_bed","red_bed","white_bed","yellow_bed","black_candle","blue_candle","brown_candle","candle","cyan_candle","gray_candle","green_candle","light_blue_candle","light_gray_candle","lime_candle","magenta_candle","orange_candle","pink_candle","purple_candle","red_candle","white_candle","yellow_candle","black_candle_cake","blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake","green_candle_cake","light_blue_candle_cake","light_gray_candle_cake","lime_candle_cake","magenta_candle_cake","orange_candle_cake","pink_candle_cake","purple_candle_cake","red_candle_cake","redstone_lamp","redstone_ore","white_candle_cake","yellow_candle_cake","black_shulker_box","blue_shulker_box","brown_shulker_box","cyan_shulker_box","end_rod","gray_shulker_box","green_shulker_box","light_blue_shulker_box","light_gray_shulker_box","lime_shulker_box","magenta_shulker_box","orange_shulker_box","pink_shulker_box","purple_shulker_box","red_shulker_box","shulker_box","white_shulker_box","yellow_shulker_box","blast_furnace","furnace","smoker","brain_coral","brain_coral_fan","bubble_coral","bubble_coral_fan","conduit","dead_brain_coral","dead_brain_coral_fan","dead_bubble_coral","dead_bubble_coral_fan","dead_fire_coral","dead_fire_coral_fan","dead_horn_coral","dead_horn_coral_fan","dead_tube_coral","dead_tube_coral_fan","fire_coral","fire_coral_fan","horn_coral","horn_coral_fan","tube_coral","tube_coral_fan","brain_coral_wall_fan","bubble_coral_wall_fan","dead_brain_coral_wall_fan","dead_bubble_coral_wall_fan","dead_fire_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral_wall_fan',item:'minecraft:dead_horn_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral_wall_fan',item:'minecraft:dead_tube_coral_fan',group:33}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral_wall_fan',item:'minecraft:fire_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral_wall_fan',item:'minecraft:horn_coral_fan',group:33}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral_wall_fan',item:'minecraft:tube_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/51","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brewing_stand',item:'minecraft:brewing_stand',group:34}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_wall_fan","brewing_stand"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_mushroom_block',item:'minecraft:brown_mushroom_block',group:35}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom_block"]}}}]},{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mushroom_stem',item:'minecraft:mushroom_stem',group:35}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_mushroom_block',item:'minecraft:red_mushroom_block',group:35}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_mushroom_block"]}}}]},{"type":"loot_table","value":"bs.block:get/58","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_column',item:'None',group:36}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_mushroom_block","bubble_column"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/59","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cactus',item:'minecraft:cactus',group:37}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cactus"]}}}]},{"type":"loot_table","value":"bs.block:get/59","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sugar_cane',item:'minecraft:sugar_cane',group:37}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_mushroom_block","bubble_column","cactus","sugar_cane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/60","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cake',item:'minecraft:cake',group:38}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cake"]}}}]},{"type":"loot_table","value":"bs.block:get/62","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:calibrated_sculk_sensor',item:'minecraft:calibrated_sculk_sensor',group:39}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cake","calibrated_sculk_sensor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/64","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:campfire',item:'minecraft:campfire',group:40}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["campfire"]}}}]},{"type":"loot_table","value":"bs.block:get/64","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_campfire',item:'minecraft:soul_campfire',group:40}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem","red_mushroom_block","bubble_column","cactus","sugar_cane","cake","calibrated_sculk_sensor","campfire","soul_campfire"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:carrots',item:'minecraft:carrot',group:41}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots"]}}}]},{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:melon_stem',item:'minecraft:pumpkin_seeds',group:41}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","melon_stem"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potatoes',item:'minecraft:potato',group:41}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potatoes"]}}}]},{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pumpkin_stem',item:'minecraft:pumpkin_seeds',group:41}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","melon_stem","potatoes","pumpkin_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wheat',item:'minecraft:wheat_seeds',group:41}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wheat"]}}}]},{"type":"loot_table","value":"bs.block:get/67","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cave_vines',item:'minecraft:glow_berries',group:42}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wheat","cave_vines"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/68","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cave_vines_plant',item:'minecraft:glow_berries',group:43}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cave_vines_plant"]}}}]},{"type":"loot_table","value":"bs.block:get/69","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chain',item:'minecraft:chain',group:44}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","melon_stem","potatoes","pumpkin_stem","wheat","cave_vines","cave_vines_plant","chain"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/70","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chain_command_block',item:'minecraft:chain_command_block',group:45}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chain_command_block"]}}}]},{"type":"loot_table","value":"bs.block:get/70","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:command_block',item:'minecraft:command_block',group:45}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chain_command_block","command_block"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/70","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:repeating_command_block',item:'minecraft:repeating_command_block',group:45}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["repeating_command_block"]}}}]},{"type":"loot_table","value":"bs.block:get/71","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chest',item:'minecraft:chest',group:46}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chain_command_block","command_block","repeating_command_block","chest"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/71","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:trapped_chest',item:'minecraft:trapped_chest',group:46}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["trapped_chest"]}}}]},{"type":"loot_table","value":"bs.block:get/77","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_bookshelf',item:'minecraft:chiseled_bookshelf',group:47}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["trapped_chest","chiseled_bookshelf"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/78","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chorus_flower',item:'minecraft:chorus_flower',group:48}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chorus_flower"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chorus_plant',item:'minecraft:chorus_plant',group:49}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chorus_plant"]}}}]},{"type":"loot_table","value":"bs.block:get/79","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cocoa',item:'minecraft:cocoa_beans',group:50}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem","red_mushroom_block","bubble_column","cactus","sugar_cane","cake","calibrated_sculk_sensor","campfire","soul_campfire","carrots","melon_stem","potatoes","pumpkin_stem","wheat","cave_vines","cave_vines_plant","chain","chain_command_block","command_block","repeating_command_block","chest","trapped_chest","chiseled_bookshelf","chorus_flower","chorus_plant","cocoa"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/80","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:comparator',item:'minecraft:comparator',group:51}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["comparator"]}}}]},{"type":"loot_table","value":"bs.block:get/81","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:composter',item:'minecraft:composter',group:52}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["comparator","composter"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_bulb',item:'minecraft:copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_bulb',item:'minecraft:exposed_copper_bulb',group:53}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["comparator","composter","copper_bulb","exposed_copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_bulb',item:'minecraft:oxidized_copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_bulb',item:'minecraft:waxed_copper_bulb',group:53}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_copper_bulb","waxed_copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_bulb',item:'minecraft:waxed_exposed_copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_bulb',item:'minecraft:waxed_oxidized_copper_bulb',group:53}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["comparator","composter","copper_bulb","exposed_copper_bulb","oxidized_copper_bulb","waxed_copper_bulb","waxed_exposed_copper_bulb","waxed_oxidized_copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_bulb',item:'minecraft:waxed_weathered_copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_bulb',item:'minecraft:weathered_copper_bulb',group:53}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper_bulb","weathered_copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/85","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crafter',item:'minecraft:crafter',group:54}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crafter"]}}}]},{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:creeper_head',item:'minecraft:creeper_head',group:55}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper_bulb","weathered_copper_bulb","crafter","creeper_head"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dragon_head',item:'minecraft:dragon_head',group:55}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_head"]}}}]},{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piglin_head',item:'minecraft:piglin_head',group:55}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_head","piglin_head"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:player_head',item:'minecraft:player_head',group:55}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["player_head"]}}}]},{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:skeleton_skull',item:'minecraft:skeleton_skull',group:55}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["comparator","composter","copper_bulb","exposed_copper_bulb","oxidized_copper_bulb","waxed_copper_bulb","waxed_exposed_copper_bulb","waxed_oxidized_copper_bulb","waxed_weathered_copper_bulb","weathered_copper_bulb","crafter","creeper_head","dragon_head","piglin_head","player_head","skeleton_skull"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wither_skeleton_skull',item:'minecraft:wither_skeleton_skull',group:55}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wither_skeleton_skull"]}}}]},{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:zombie_head',item:'minecraft:zombie_head',group:55}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wither_skeleton_skull","zombie_head"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:creeper_wall_head',item:'minecraft:creeper_head',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["creeper_wall_head"]}}}]},{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dragon_wall_head',item:'minecraft:dragon_head',group:56}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wither_skeleton_skull","zombie_head","creeper_wall_head","dragon_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piglin_wall_head',item:'minecraft:piglin_head',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piglin_wall_head"]}}}]},{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:player_wall_head',item:'minecraft:player_head',group:56}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piglin_wall_head","player_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:skeleton_wall_skull',item:'minecraft:skeleton_skull',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["skeleton_wall_skull"]}}}]},{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wither_skeleton_wall_skull',item:'minecraft:wither_skeleton_skull',group:56}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wither_skeleton_skull","zombie_head","creeper_wall_head","dragon_wall_head","piglin_wall_head","player_wall_head","skeleton_wall_skull","wither_skeleton_wall_skull"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:zombie_wall_head',item:'minecraft:zombie_head',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["zombie_wall_head"]}}}]},{"type":"loot_table","value":"bs.block:get/88","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:daylight_detector',item:'minecraft:daylight_detector',group:57}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["zombie_wall_head","daylight_detector"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/89","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:decorated_pot',item:'minecraft:decorated_pot',group:58}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["decorated_pot"]}}}]},{"type":"loot_table","value":"bs.block:get/90","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dispenser',item:'minecraft:dispenser',group:59}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["zombie_wall_head","daylight_detector","decorated_pot","dispenser"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/90","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dropper',item:'minecraft:dropper',group:59}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dropper"]}}}]},{"type":"loot_table","value":"bs.block:get/91","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_portal_frame',item:'minecraft:end_portal_frame',group:60}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dropper","end_portal_frame"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/92","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:farmland',item:'minecraft:farmland',group:61}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["farmland"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/93","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire',item:'None',group:62}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire"]}}}]},{"type":"loot_table","value":"bs.block:get/95","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glow_lichen',item:'minecraft:glow_lichen',group:63}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem","red_mushroom_block","bubble_column","cactus","sugar_cane","cake","calibrated_sculk_sensor","campfire","soul_campfire","carrots","melon_stem","potatoes","pumpkin_stem","wheat","cave_vines","cave_vines_plant","chain","chain_command_block","command_block","repeating_command_block","chest","trapped_chest","chiseled_bookshelf","chorus_flower","chorus_plant","cocoa","comparator","composter","copper_bulb","exposed_copper_bulb","oxidized_copper_bulb","waxed_copper_bulb","waxed_exposed_copper_bulb","waxed_oxidized_copper_bulb","waxed_weathered_copper_bulb","weathered_copper_bulb","crafter","creeper_head","dragon_head","piglin_head","player_head","skeleton_skull","wither_skeleton_skull","zombie_head","creeper_wall_head","dragon_wall_head","piglin_wall_head","player_wall_head","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","daylight_detector","decorated_pot","dispenser","dropper","end_portal_frame","farmland","fire","glow_lichen"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/95","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_vein',item:'minecraft:sculk_vein',group:63}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_vein"]}}}]},{"type":"loot_table","value":"bs.block:get/96","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:grass_block',item:'minecraft:grass_block',group:64}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_vein","grass_block"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/96","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mycelium',item:'minecraft:mycelium',group:64}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mycelium"]}}}]},{"type":"loot_table","value":"bs.block:get/96","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:podzol',item:'minecraft:podzol',group:64}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_vein","grass_block","mycelium","podzol"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/97","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:grindstone',item:'minecraft:grindstone',group:65}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grindstone"]}}}]},{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:heavy_weighted_pressure_plate',item:'minecraft:heavy_weighted_pressure_plate',group:66}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grindstone","heavy_weighted_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_weighted_pressure_plate',item:'minecraft:light_weighted_pressure_plate',group:66}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_weighted_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:target',item:'minecraft:target',group:66}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_vein","grass_block","mycelium","podzol","grindstone","heavy_weighted_pressure_plate","light_weighted_pressure_plate","target"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/99","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:hopper',item:'minecraft:hopper',group:67}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hopper"]}}}]},{"type":"loot_table","value":"bs.block:get/83","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jigsaw',item:'minecraft:jigsaw',group:68}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hopper","jigsaw"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/100","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jukebox',item:'minecraft:jukebox',group:69}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jukebox"]}}}]},{"type":"loot_table","value":"bs.block:get/66","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:kelp',item:'minecraft:kelp',group:70}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hopper","jigsaw","jukebox","kelp"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/66","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:twisting_vines',item:'minecraft:twisting_vines',group:70}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["twisting_vines"]}}}]},{"type":"loot_table","value":"bs.block:get/66","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weeping_vines',item:'minecraft:weeping_vines',group:70}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["twisting_vines","weeping_vines"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/101","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lantern',item:'minecraft:lantern',group:71}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lantern"]}}}]},{"type":"loot_table","value":"bs.block:get/101","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_lantern',item:'minecraft:soul_lantern',group:71}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_vein","grass_block","mycelium","podzol","grindstone","heavy_weighted_pressure_plate","light_weighted_pressure_plate","target","hopper","jigsaw","jukebox","kelp","twisting_vines","weeping_vines","lantern","soul_lantern"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:large_fern',item:'minecraft:large_fern',group:72}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_fern"]}}}]},{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lilac',item:'minecraft:lilac',group:72}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_fern","lilac"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:peony',item:'minecraft:peony',group:72}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["peony"]}}}]},{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pitcher_plant',item:'minecraft:pitcher_plant',group:72}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_fern","lilac","peony","pitcher_plant"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:rose_bush',item:'minecraft:rose_bush',group:72}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["rose_bush"]}}}]},{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sunflower',item:'minecraft:sunflower',group:72}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["rose_bush","sunflower"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tall_grass',item:'minecraft:tall_grass',group:72}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tall_grass"]}}}]},{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tall_seagrass',item:'None',group:72}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_fern","lilac","peony","pitcher_plant","rose_bush","sunflower","tall_grass","tall_seagrass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lava',item:'minecraft:lava_bucket',group:73}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lava"]}}}]},{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:water',item:'minecraft:water_bucket',group:73}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lava","water"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/104","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lectern',item:'minecraft:lectern',group:74}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lectern"]}}}]},{"type":"loot_table","value":"bs.block:get/105","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light',item:'minecraft:light',group:75}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lava","water","lectern","light"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/106","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lightning_rod',item:'minecraft:lightning_rod',group:76}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lightning_rod"]}}}]},{"type":"loot_table","value":"bs.block:get/108","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_propagule',item:'minecraft:mangrove_propagule',group:77}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lightning_rod","mangrove_propagule"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/109","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:moving_piston',item:'None',group:78}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["moving_piston"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/110","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_portal',item:'None',group:79}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_portal"]}}}]},{"type":"loot_table","value":"bs.block:get/112","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:note_block',item:'minecraft:note_block',group:80}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_vein","grass_block","mycelium","podzol","grindstone","heavy_weighted_pressure_plate","light_weighted_pressure_plate","target","hopper","jigsaw","jukebox","kelp","twisting_vines","weeping_vines","lantern","soul_lantern","large_fern","lilac","peony","pitcher_plant","rose_bush","sunflower","tall_grass","tall_seagrass","lava","water","lectern","light","lightning_rod","mangrove_propagule","moving_piston","nether_portal","note_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/113","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:observer',item:'minecraft:observer',group:81}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["observer"]}}}]},{"type":"loot_table","value":"bs.block:get/114","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_petals',item:'minecraft:pink_petals',group:82}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["observer","pink_petals"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/115","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piston',item:'minecraft:piston',group:83}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston"]}}}]},{"type":"loot_table","value":"bs.block:get/115","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sticky_piston',item:'minecraft:sticky_piston',group:83}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["observer","pink_petals","piston","sticky_piston"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/116","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piston_head',item:'None',group:84}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston_head"]}}}]},{"type":"loot_table","value":"bs.block:get/117","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pitcher_crop',item:'minecraft:pitcher_pod',group:85}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston_head","pitcher_crop"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/119","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pointed_dripstone',item:'minecraft:pointed_dripstone',group:86}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pointed_dripstone"]}}}]},{"type":"loot_table","value":"bs.block:get/120","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:powder_snow_cauldron',item:'minecraft:cauldron',group:87}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["observer","pink_petals","piston","sticky_piston","piston_head","pitcher_crop","pointed_dripstone","powder_snow_cauldron"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/120","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:water_cauldron',item:'minecraft:cauldron',group:87}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["water_cauldron"]}}}]},{"type":"loot_table","value":"bs.block:get/121","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:rail',item:'minecraft:rail',group:88}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["water_cauldron","rail"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_torch',item:'minecraft:redstone_torch',group:89}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_torch"]}}}]},{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_wall_torch',item:'minecraft:redstone_torch',group:90}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["water_cauldron","rail","redstone_torch","redstone_wall_torch"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/125","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_wire',item:'minecraft:redstone',group:91}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire"]}}}]},{"type":"loot_table","value":"bs.block:get/127","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:repeater',item:'minecraft:repeater',group:92}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire","repeater"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/128","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:respawn_anchor',item:'minecraft:respawn_anchor',group:93}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["respawn_anchor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/130","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:scaffolding',item:'minecraft:scaffolding',group:94}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["scaffolding"]}}}]},{"type":"loot_table","value":"bs.block:get/131","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_catalyst',item:'minecraft:sculk_catalyst',group:95}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["observer","pink_petals","piston","sticky_piston","piston_head","pitcher_crop","pointed_dripstone","powder_snow_cauldron","water_cauldron","rail","redstone_torch","redstone_wall_torch","redstone_wire","repeater","respawn_anchor","scaffolding","sculk_catalyst"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/133","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_sensor',item:'minecraft:sculk_sensor',group:96}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor"]}}}]},{"type":"loot_table","value":"bs.block:get/135","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_shrieker',item:'minecraft:sculk_shrieker',group:97}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","sculk_shrieker"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/136","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sea_pickle',item:'minecraft:sea_pickle',group:98}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sea_pickle"]}}}]},{"type":"loot_table","value":"bs.block:get/137","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:small_dripleaf',item:'minecraft:small_dripleaf',group:99}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","sculk_shrieker","sea_pickle","small_dripleaf"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/138","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sniffer_egg',item:'minecraft:sniffer_egg',group:100}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sniffer_egg"]}}}]},{"type":"loot_table","value":"bs.block:get/139","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:snow',item:'minecraft:snow',group:101}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sniffer_egg","snow"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/140","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:structure_block',item:'minecraft:structure_block',group:102}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_block"]}}}]},{"type":"loot_table","value":"bs.block:get/141","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:suspicious_gravel',item:'minecraft:suspicious_gravel',group:103}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","sculk_shrieker","sea_pickle","small_dripleaf","sniffer_egg","snow","structure_block","suspicious_gravel"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/141","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:suspicious_sand',item:'minecraft:suspicious_sand',group:103}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["suspicious_sand"]}}}]},{"type":"loot_table","value":"bs.block:get/142","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tnt',item:'minecraft:tnt',group:104}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["suspicious_sand","tnt"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/143","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:torchflower_crop',item:'minecraft:torchflower_seeds',group:105}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower_crop"]}}}]},{"type":"loot_table","value":"bs.block:get/145","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:trial_spawner',item:'minecraft:trial_spawner',group:106}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["suspicious_sand","tnt","torchflower_crop","trial_spawner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/148","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tripwire',item:'minecraft:string',group:107}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tripwire"]}}}]},{"type":"loot_table","value":"bs.block:get/149","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tripwire_hook',item:'minecraft:tripwire_hook',group:108}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tripwire","tripwire_hook"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/150","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:turtle_egg',item:'minecraft:turtle_egg',group:109}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["turtle_egg"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/152","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:vault',item:'minecraft:vault',group:110}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["vault"]}}}]},{"type":"loot_table","value":"bs.block:get/56","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:vine',item:'minecraft:vine',group:111}"}]}]}]}]}]}]}]}]}]}]}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_planks',item:'minecraft:acacia_planks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:air',item:'minecraft:air',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:allium',item:'minecraft:allium',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["allium"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:amethyst_block',item:'minecraft:amethyst_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ancient_debris',item:'minecraft:ancient_debris',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ancient_debris"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite',item:'minecraft:andesite',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ancient_debris","andesite"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:azalea',item:'minecraft:azalea',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["azalea"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:azure_bluet',item:'minecraft:azure_bluet',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_mosaic',item:'minecraft:bamboo_mosaic',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_mosaic"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_planks',item:'minecraft:bamboo_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_mosaic","bamboo_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:beacon',item:'minecraft:beacon',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bedrock',item:'minecraft:bedrock',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bedrock"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_planks',item:'minecraft:birch_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bedrock","birch_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_carpet',item:'minecraft:black_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_concrete',item:'minecraft:black_concrete',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_concrete_powder',item:'minecraft:black_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_stained_glass',item:'minecraft:black_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder","black_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_terracotta',item:'minecraft:black_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_wool',item:'minecraft:black_wool',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder","black_stained_glass","black_terracotta","black_wool"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone',item:'minecraft:blackstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_carpet',item:'minecraft:blue_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone","blue_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_concrete',item:'minecraft:blue_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_concrete_powder',item:'minecraft:blue_concrete_powder',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_ice',item:'minecraft:blue_ice',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_ice"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_orchid',item:'minecraft:blue_orchid',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_ice","blue_orchid"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_stained_glass',item:'minecraft:blue_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_terracotta',item:'minecraft:blue_terracotta',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_ice","blue_orchid","blue_stained_glass","blue_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_wool',item:'minecraft:blue_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bookshelf',item:'minecraft:bookshelf',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_wool","bookshelf"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral_block',item:'minecraft:brain_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bricks',item:'minecraft:bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_carpet',item:'minecraft:brown_carpet',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_concrete',item:'minecraft:brown_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_concrete_powder',item:'minecraft:brown_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_mushroom',item:'minecraft:brown_mushroom',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_stained_glass',item:'minecraft:brown_stained_glass',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_terracotta',item:'minecraft:brown_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_wool',item:'minecraft:brown_wool',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_terracotta","brown_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral_block',item:'minecraft:bubble_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bubble_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:budding_amethyst',item:'minecraft:budding_amethyst',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:calcite',item:'minecraft:calcite',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["calcite"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cartography_table',item:'minecraft:cartography_table',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["calcite","cartography_table"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cauldron',item:'minecraft:cauldron',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cauldron"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cave_air',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["calcite","cartography_table","cauldron","cave_air"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_planks',item:'minecraft:cherry_planks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_planks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_copper',item:'minecraft:chiseled_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_planks","chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_deepslate',item:'minecraft:chiseled_deepslate',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_deepslate"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_nether_bricks',item:'minecraft:chiseled_nether_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_nether_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_polished_blackstone',item:'minecraft:chiseled_polished_blackstone',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_quartz_block',item:'minecraft:chiseled_quartz_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_quartz_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_red_sandstone',item:'minecraft:chiseled_red_sandstone',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_quartz_block","chiseled_red_sandstone"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_sandstone',item:'minecraft:chiseled_sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_stone_bricks',item:'minecraft:chiseled_stone_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_tuff',item:'minecraft:chiseled_tuff',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_tuff"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_tuff_bricks',item:'minecraft:chiseled_tuff_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_tuff","chiseled_tuff_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:clay',item:'minecraft:clay',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["clay"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:coal_block',item:'minecraft:coal_block',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:coal_ore',item:'minecraft:coal_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["coal_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:coarse_dirt',item:'minecraft:coarse_dirt',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["coal_ore","coarse_dirt"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate',item:'minecraft:cobbled_deepslate',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone',item:'minecraft:cobblestone',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["coal_ore","coarse_dirt","cobbled_deepslate","cobblestone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobweb',item:'minecraft:cobweb',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobweb"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_block',item:'minecraft:copper_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobweb","copper_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_ore',item:'minecraft:copper_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cornflower',item:'minecraft:cornflower',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cornflower"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_deepslate_bricks',item:'minecraft:cracked_deepslate_bricks',group:0}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower","cracked_deepslate_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_deepslate_tiles',item:'minecraft:cracked_deepslate_tiles',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_tiles"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_nether_bricks',item:'minecraft:cracked_nether_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_tiles","cracked_nether_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_polished_blackstone_bricks',item:'minecraft:cracked_polished_blackstone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_polished_blackstone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cracked_stone_bricks',item:'minecraft:cracked_stone_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crafting_table',item:'minecraft:crafting_table',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crafting_table"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_fungus',item:'minecraft:crimson_fungus',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crafting_table","crimson_fungus"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_nylium',item:'minecraft:crimson_nylium',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_nylium"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_planks',item:'minecraft:crimson_planks',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_roots',item:'minecraft:crimson_roots',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_roots"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crying_obsidian',item:'minecraft:crying_obsidian',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_roots","crying_obsidian"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_copper',item:'minecraft:cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_red_sandstone',item:'minecraft:cut_red_sandstone',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_sandstone',item:'minecraft:cut_sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_carpet',item:'minecraft:cyan_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_sandstone","cyan_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_concrete',item:'minecraft:cyan_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_concrete"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_concrete_powder',item:'minecraft:cyan_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_stained_glass',item:'minecraft:cyan_stained_glass',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_terracotta',item:'minecraft:cyan_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_wool',item:'minecraft:cyan_wool',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_terracotta","cyan_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dandelion',item:'minecraft:dandelion',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dandelion"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_planks',item:'minecraft:dark_oak_planks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_terracotta","cyan_wool","dandelion","dark_oak_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_prismarine',item:'minecraft:dark_prismarine',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral_block',item:'minecraft:dead_brain_coral_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine","dead_brain_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral_block',item:'minecraft:dead_bubble_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bush',item:'minecraft:dead_bush',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral_block',item:'minecraft:dead_fire_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral_block',item:'minecraft:dead_horn_coral_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral_block","dead_horn_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral_block',item:'minecraft:dead_tube_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_bricks',item:'minecraft:deepslate_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_coal_ore',item:'minecraft:deepslate_coal_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_coal_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_copper_ore',item:'minecraft:deepslate_copper_ore',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_coal_ore","deepslate_copper_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_diamond_ore',item:'minecraft:deepslate_diamond_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_diamond_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_emerald_ore',item:'minecraft:deepslate_emerald_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_emerald_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_gold_ore',item:'minecraft:deepslate_gold_ore',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore","deepslate_emerald_ore","deepslate_gold_ore"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_iron_ore',item:'minecraft:deepslate_iron_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_iron_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_lapis_ore',item:'minecraft:deepslate_lapis_ore',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_iron_ore","deepslate_lapis_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tiles',item:'minecraft:deepslate_tiles',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_tiles"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diamond_block',item:'minecraft:diamond_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diamond_ore',item:'minecraft:diamond_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diamond_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite',item:'minecraft:diorite',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diamond_ore","diorite"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dirt',item:'minecraft:dirt',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dirt"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dirt_path',item:'minecraft:dirt_path',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dragon_egg',item:'minecraft:dragon_egg',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_egg"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dried_kelp_block',item:'minecraft:dried_kelp_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_egg","dried_kelp_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dripstone_block',item:'minecraft:dripstone_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dripstone_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:emerald_block',item:'minecraft:emerald_block',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_egg","dried_kelp_block","dripstone_block","emerald_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:emerald_ore',item:'minecraft:emerald_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["emerald_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:enchanting_table',item:'minecraft:enchanting_table',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["emerald_ore","enchanting_table"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_gateway',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_gateway"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_portal',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_portal"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone',item:'minecraft:end_stone',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table","end_gateway","end_portal","end_stone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_bricks',item:'minecraft:end_stone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_stone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_chiseled_copper',item:'minecraft:exposed_chiseled_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_stone_bricks","exposed_chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper',item:'minecraft:exposed_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_cut_copper',item:'minecraft:exposed_cut_copper',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fern',item:'minecraft:fern',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fern"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral_block',item:'minecraft:fire_coral_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fern","fire_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fletching_table',item:'minecraft:fletching_table',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fletching_table"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:flower_pot',item:'minecraft:flower_pot',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern","fire_coral_block","fletching_table","flower_pot"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:flowering_azalea',item:'minecraft:flowering_azalea',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:frogspawn',item:'minecraft:frogspawn',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea","frogspawn"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gilded_blackstone',item:'minecraft:gilded_blackstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gilded_blackstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glass',item:'minecraft:glass',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea","frogspawn","gilded_blackstone","glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glowstone',item:'minecraft:glowstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glowstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gold_block',item:'minecraft:gold_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glowstone","gold_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gold_ore',item:'minecraft:gold_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gold_ore"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite',item:'minecraft:granite',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["granite"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gravel',item:'minecraft:gravel',group:0}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower","cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore","deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table","end_gateway","end_portal","end_stone","end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern","fire_coral_block","fletching_table","flower_pot","flowering_azalea","frogspawn","gilded_blackstone","glass","glowstone","gold_block","gold_ore","granite","gravel"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_carpet',item:'minecraft:gray_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_concrete',item:'minecraft:gray_concrete',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_carpet","gray_concrete"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_concrete_powder',item:'minecraft:gray_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_stained_glass',item:'minecraft:gray_stained_glass',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_terracotta',item:'minecraft:gray_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_wool',item:'minecraft:gray_wool',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_terracotta","gray_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_carpet',item:'minecraft:green_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_concrete',item:'minecraft:green_concrete',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_concrete_powder',item:'minecraft:green_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_stained_glass',item:'minecraft:green_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_concrete_powder","green_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_terracotta',item:'minecraft:green_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_wool',item:'minecraft:green_wool',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_concrete_powder","green_stained_glass","green_terracotta","green_wool"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:honey_block',item:'minecraft:honey_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["honey_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:honeycomb_block',item:'minecraft:honeycomb_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["honey_block","honeycomb_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral_block',item:'minecraft:horn_coral_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["horn_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ice',item:'minecraft:ice',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ice"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_chiseled_stone_bricks',item:'minecraft:infested_chiseled_stone_bricks',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_cobblestone',item:'minecraft:infested_cobblestone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_cobblestone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_cracked_stone_bricks',item:'minecraft:infested_cracked_stone_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_cobblestone","infested_cracked_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_mossy_stone_bricks',item:'minecraft:infested_mossy_stone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_mossy_stone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_stone',item:'minecraft:infested_stone',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_stone_bricks',item:'minecraft:infested_stone_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_stone_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_block',item:'minecraft:iron_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_stone_bricks","iron_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_ore',item:'minecraft:iron_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["iron_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_planks',item:'minecraft:jungle_planks',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:kelp_plant',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["kelp_plant"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lapis_block',item:'minecraft:lapis_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["kelp_plant","lapis_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lapis_ore',item:'minecraft:lapis_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lapis_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lava_cauldron',item:'minecraft:cauldron',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["kelp_plant","lapis_block","lapis_ore","lava_cauldron"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_carpet',item:'minecraft:light_blue_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_concrete',item:'minecraft:light_blue_concrete',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_carpet","light_blue_concrete"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_concrete_powder',item:'minecraft:light_blue_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_stained_glass',item:'minecraft:light_blue_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_terracotta',item:'minecraft:light_blue_terracotta',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet","light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_wool',item:'minecraft:light_blue_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_carpet',item:'minecraft:light_gray_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wool","light_gray_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_concrete',item:'minecraft:light_gray_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_concrete_powder',item:'minecraft:light_gray_concrete_powder',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_stained_glass',item:'minecraft:light_gray_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_terracotta',item:'minecraft:light_gray_terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_stained_glass","light_gray_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_wool',item:'minecraft:light_gray_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lily_of_the_valley',item:'minecraft:lily_of_the_valley',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lily_pad',item:'minecraft:lily_pad',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lily_pad"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_carpet',item:'minecraft:lime_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lily_pad","lime_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_concrete',item:'minecraft:lime_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_concrete_powder',item:'minecraft:lime_concrete_powder',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lily_pad","lime_carpet","lime_concrete","lime_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_stained_glass',item:'minecraft:lime_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_terracotta',item:'minecraft:lime_terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_stained_glass","lime_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_wool',item:'minecraft:lime_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lodestone',item:'minecraft:lodestone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lodestone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_carpet',item:'minecraft:magenta_carpet',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder","lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_concrete',item:'minecraft:magenta_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_concrete_powder',item:'minecraft:magenta_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_concrete","magenta_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_stained_glass',item:'minecraft:magenta_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_terracotta',item:'minecraft:magenta_terracotta',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_wool',item:'minecraft:magenta_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magma_block',item:'minecraft:magma_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_wool","magma_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_planks',item:'minecraft:mangrove_planks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_planks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:melon',item:'minecraft:melon',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta","magenta_wool","magma_block","mangrove_planks","melon"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:moss_block',item:'minecraft:moss_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["moss_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:moss_carpet',item:'minecraft:moss_carpet',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["moss_block","moss_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone',item:'minecraft:mossy_cobblestone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_cobblestone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_bricks',item:'minecraft:mossy_stone_bricks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["moss_block","moss_carpet","mossy_cobblestone","mossy_stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud',item:'minecraft:mud',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_bricks',item:'minecraft:mud_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mud","mud_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_bricks',item:'minecraft:nether_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_gold_ore',item:'minecraft:nether_gold_ore',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_gold_ore"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_quartz_ore',item:'minecraft:nether_quartz_ore',group:0}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet","light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder","lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet","magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta","magenta_wool","magma_block","mangrove_planks","melon","moss_block","moss_carpet","mossy_cobblestone","mossy_stone_bricks","mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_sprouts',item:'minecraft:nether_sprouts',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_wart_block',item:'minecraft:nether_wart_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts","nether_wart_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:netherite_block',item:'minecraft:netherite_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["netherite_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:netherrack',item:'minecraft:netherrack',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts","nether_wart_block","netherite_block","netherrack"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_planks',item:'minecraft:oak_planks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_planks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:obsidian',item:'minecraft:obsidian',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_planks","obsidian"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_carpet',item:'minecraft:orange_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_concrete',item:'minecraft:orange_concrete',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_concrete_powder',item:'minecraft:orange_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_stained_glass',item:'minecraft:orange_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_concrete_powder","orange_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_terracotta',item:'minecraft:orange_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_tulip',item:'minecraft:orange_tulip',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_wool',item:'minecraft:orange_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxeye_daisy',item:'minecraft:oxeye_daisy',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_wool","oxeye_daisy"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_chiseled_copper',item:'minecraft:oxidized_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper',item:'minecraft:oxidized_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_cut_copper',item:'minecraft:oxidized_cut_copper',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:packed_ice',item:'minecraft:packed_ice',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["packed_ice"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:packed_mud',item:'minecraft:packed_mud',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["packed_ice","packed_mud"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_moss_block',item:'minecraft:pale_moss_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_moss_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_planks',item:'minecraft:pale_oak_planks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["packed_ice","packed_mud","pale_moss_block","pale_oak_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_carpet',item:'minecraft:pink_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_concrete',item:'minecraft:pink_concrete',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_carpet","pink_concrete"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_concrete_powder',item:'minecraft:pink_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_stained_glass',item:'minecraft:pink_stained_glass',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["packed_ice","packed_mud","pale_moss_block","pale_oak_planks","pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_terracotta',item:'minecraft:pink_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_tulip',item:'minecraft:pink_tulip',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_terracotta","pink_tulip"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_wool',item:'minecraft:pink_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_andesite',item:'minecraft:polished_andesite',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_terracotta","pink_tulip","pink_wool","polished_andesite"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone',item:'minecraft:polished_blackstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_bricks',item:'minecraft:polished_blackstone_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone","polished_blackstone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate',item:'minecraft:polished_deepslate',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_deepslate"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_diorite',item:'minecraft:polished_diorite',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_diorite"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_granite',item:'minecraft:polished_granite',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper","packed_ice","packed_mud","pale_moss_block","pale_oak_planks","pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass","pink_terracotta","pink_tulip","pink_wool","polished_andesite","polished_blackstone","polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff',item:'minecraft:polished_tuff',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:poppy',item:'minecraft:poppy',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff","poppy"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_acacia_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_acacia_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_allium',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff","poppy","potted_acacia_sapling","potted_allium"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_azalea_bush',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_azalea_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_azure_bluet',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_azalea_bush","potted_azure_bluet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_bamboo',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_bamboo"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_birch_sapling',item:'None',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff","poppy","potted_acacia_sapling","potted_allium","potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_blue_orchid',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_blue_orchid"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_brown_mushroom',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_blue_orchid","potted_brown_mushroom"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_cactus',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_cactus"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_cherry_sapling',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_blue_orchid","potted_brown_mushroom","potted_cactus","potted_cherry_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_cornflower',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_cornflower"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_crimson_fungus',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_cornflower","potted_crimson_fungus"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_crimson_roots',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_crimson_roots"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_dandelion',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dandelion"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_dark_oak_sapling',item:'None',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff","poppy","potted_acacia_sapling","potted_allium","potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling","potted_blue_orchid","potted_brown_mushroom","potted_cactus","potted_cherry_sapling","potted_cornflower","potted_crimson_fungus","potted_crimson_roots","potted_dandelion","potted_dark_oak_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_dead_bush',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dead_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_fern',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dead_bush","potted_fern"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_flowering_azalea_bush',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_flowering_azalea_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_jungle_sapling',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dead_bush","potted_fern","potted_flowering_azalea_bush","potted_jungle_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_lily_of_the_valley',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_lily_of_the_valley"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_mangrove_propagule',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_lily_of_the_valley","potted_mangrove_propagule"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_oak_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_oak_sapling"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_orange_tulip',item:'None',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_dead_bush","potted_fern","potted_flowering_azalea_bush","potted_jungle_sapling","potted_lily_of_the_valley","potted_mangrove_propagule","potted_oak_sapling","potted_orange_tulip"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_oxeye_daisy',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_oxeye_daisy"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_pale_oak_sapling',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_oxeye_daisy","potted_pale_oak_sapling"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_pink_tulip',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_pink_tulip"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_poppy',item:'None',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_oxeye_daisy","potted_pale_oak_sapling","potted_pink_tulip","potted_poppy"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_red_mushroom',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_red_mushroom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_red_tulip',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_red_mushroom","potted_red_tulip"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_spruce_sapling',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_spruce_sapling"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_torchflower',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_torchflower"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_warped_fungus',item:'None',group:0}"}]}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower","cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore","deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table","end_gateway","end_portal","end_stone","end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern","fire_coral_block","fletching_table","flower_pot","flowering_azalea","frogspawn","gilded_blackstone","glass","glowstone","gold_block","gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet","light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder","lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet","magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta","magenta_wool","magma_block","mangrove_planks","melon","moss_block","moss_carpet","mossy_cobblestone","mossy_stone_bricks","mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore","nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper","packed_ice","packed_mud","pale_moss_block","pale_oak_planks","pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass","pink_terracotta","pink_tulip","pink_wool","polished_andesite","polished_blackstone","polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite","polished_tuff","poppy","potted_acacia_sapling","potted_allium","potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling","potted_blue_orchid","potted_brown_mushroom","potted_cactus","potted_cherry_sapling","potted_cornflower","potted_crimson_fungus","potted_crimson_roots","potted_dandelion","potted_dark_oak_sapling","potted_dead_bush","potted_fern","potted_flowering_azalea_bush","potted_jungle_sapling","potted_lily_of_the_valley","potted_mangrove_propagule","potted_oak_sapling","potted_orange_tulip","potted_oxeye_daisy","potted_pale_oak_sapling","potted_pink_tulip","potted_poppy","potted_red_mushroom","potted_red_tulip","potted_spruce_sapling","potted_torchflower","potted_warped_fungus"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_warped_roots',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_white_tulip',item:'None',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots","potted_white_tulip"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potted_wither_rose',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_wither_rose"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:powder_snow',item:'minecraft:powder_snow_bucket',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine',item:'minecraft:prismarine',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_bricks',item:'minecraft:prismarine_bricks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine","prismarine_bricks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pumpkin',item:'minecraft:pumpkin',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pumpkin"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_carpet',item:'minecraft:purple_carpet',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_concrete',item:'minecraft:purple_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_concrete_powder',item:'minecraft:purple_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_concrete","purple_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_stained_glass',item:'minecraft:purple_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_terracotta',item:'minecraft:purple_terracotta',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_wool',item:'minecraft:purple_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_block',item:'minecraft:purpur_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_wool","purpur_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_block',item:'minecraft:quartz_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["quartz_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_bricks',item:'minecraft:quartz_bricks',group:0}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:raw_copper_block',item:'minecraft:raw_copper_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["raw_copper_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:raw_gold_block',item:'minecraft:raw_gold_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["raw_copper_block","raw_gold_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:raw_iron_block',item:'minecraft:raw_iron_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["raw_iron_block"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_carpet',item:'minecraft:red_carpet',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["raw_copper_block","raw_gold_block","raw_iron_block","red_carpet"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_concrete',item:'minecraft:red_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_concrete_powder',item:'minecraft:red_concrete_powder',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_concrete","red_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_mushroom',item:'minecraft:red_mushroom',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_mushroom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_bricks',item:'minecraft:red_nether_bricks',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sand',item:'minecraft:red_sand',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sand"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone',item:'minecraft:red_sandstone',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sand","red_sandstone"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_stained_glass',item:'minecraft:red_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_terracotta',item:'minecraft:red_terracotta',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sand","red_sandstone","red_stained_glass","red_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_tulip',item:'minecraft:red_tulip',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_tulip"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_wool',item:'minecraft:red_wool',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_tulip","red_wool"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_block',item:'minecraft:redstone_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:reinforced_deepslate',item:'minecraft:reinforced_deepslate',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["reinforced_deepslate"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:rooted_dirt',item:'minecraft:rooted_dirt',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool","redstone_block","reinforced_deepslate","rooted_dirt"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sand',item:'minecraft:sand',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sand"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone',item:'minecraft:sandstone',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sand","sandstone"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk',item:'minecraft:sculk',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sea_lantern',item:'minecraft:sea_lantern',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sand","sandstone","sculk","sea_lantern"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:seagrass',item:'minecraft:seagrass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["seagrass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:short_grass',item:'minecraft:short_grass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["seagrass","short_grass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:shroomlight',item:'minecraft:shroomlight',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["shroomlight"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:slime_block',item:'minecraft:slime_block',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smithing_table',item:'minecraft:smithing_table',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smithing_table"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_basalt',item:'minecraft:smooth_basalt',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smithing_table","smooth_basalt"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_quartz',item:'minecraft:smooth_quartz',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_quartz"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_red_sandstone',item:'minecraft:smooth_red_sandstone',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_sandstone',item:'minecraft:smooth_sandstone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_stone',item:'minecraft:smooth_stone',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone","smooth_stone"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:snow_block',item:'minecraft:snow_block',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["snow_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_fire',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_sand',item:'minecraft:soul_sand',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone","smooth_stone","snow_block","soul_fire","soul_sand"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_soil',item:'minecraft:soul_soil',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_soil"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_torch',item:'minecraft:soul_torch',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_soil","soul_torch"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spawner',item:'minecraft:spawner',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spawner"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sponge',item:'minecraft:sponge',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_soil","soul_torch","spawner","sponge"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spore_blossom',item:'minecraft:spore_blossom',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_planks',item:'minecraft:spruce_planks',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom","spruce_planks"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone',item:'minecraft:stone',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_bricks',item:'minecraft:stone_bricks',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_soil","soul_torch","spawner","sponge","spore_blossom","spruce_planks","stone","stone_bricks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:structure_void',item:'minecraft:structure_void',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_void"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:terracotta',item:'minecraft:terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_void","terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tinted_glass',item:'minecraft:tinted_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tinted_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:torch',item:'minecraft:torch',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_void","terracotta","tinted_glass","torch"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:torchflower',item:'minecraft:torchflower',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral_block',item:'minecraft:tube_coral_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower","tube_coral_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff',item:'minecraft:tuff',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_bricks',item:'minecraft:tuff_bricks',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_bricks"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:twisting_vines_plant',item:'None',group:0}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool","redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone","smooth_stone","snow_block","soul_fire","soul_sand","soul_soil","soul_torch","spawner","sponge","spore_blossom","spruce_planks","stone","stone_bricks","structure_void","terracotta","tinted_glass","torch","torchflower","tube_coral_block","tuff","tuff_bricks","twisting_vines_plant"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:void_air',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_fungus',item:'minecraft:warped_fungus',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air","warped_fungus"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_nylium',item:'minecraft:warped_nylium',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_nylium"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_planks',item:'minecraft:warped_planks',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air","warped_fungus","warped_nylium","warped_planks"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_roots',item:'minecraft:warped_roots',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_roots"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_wart_block',item:'minecraft:warped_wart_block',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_roots","warped_wart_block"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_chiseled_copper',item:'minecraft:waxed_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_chiseled_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_block',item:'minecraft:waxed_copper_block',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_cut_copper',item:'minecraft:waxed_cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_chiseled_copper',item:'minecraft:waxed_exposed_chiseled_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper","waxed_exposed_chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper',item:'minecraft:waxed_exposed_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_cut_copper',item:'minecraft:waxed_exposed_cut_copper',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_chiseled_copper',item:'minecraft:waxed_oxidized_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_chiseled_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper',item:'minecraft:waxed_oxidized_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_chiseled_copper","waxed_oxidized_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_cut_copper',item:'minecraft:waxed_oxidized_cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_chiseled_copper',item:'minecraft:waxed_weathered_chiseled_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_chiseled_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper',item:'minecraft:waxed_weathered_copper',group:0}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper","waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_cut_copper',item:'minecraft:waxed_weathered_cut_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_chiseled_copper',item:'minecraft:weathered_chiseled_copper',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper","weathered_chiseled_copper"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper',item:'minecraft:weathered_copper',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_cut_copper',item:'minecraft:weathered_cut_copper',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weeping_vines_plant',item:'None',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weeping_vines_plant"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wet_sponge',item:'minecraft:wet_sponge',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weeping_vines_plant","wet_sponge"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_carpet',item:'minecraft:white_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_carpet"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_concrete',item:'minecraft:white_concrete',group:0}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet","white_concrete"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_concrete_powder',item:'minecraft:white_concrete_powder',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_concrete_powder"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_stained_glass',item:'minecraft:white_stained_glass',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_concrete_powder","white_stained_glass"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_terracotta',item:'minecraft:white_terracotta',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_terracotta"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_tulip',item:'minecraft:white_tulip',group:0}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_concrete_powder","white_stained_glass","white_terracotta","white_tulip"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_wool',item:'minecraft:white_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wool"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wither_rose',item:'minecraft:wither_rose',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wool","wither_rose"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_carpet',item:'minecraft:yellow_carpet',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_carpet"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_concrete',item:'minecraft:yellow_concrete',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_concrete"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_concrete_powder',item:'minecraft:yellow_concrete_powder',group:0}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper","waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper","waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet","white_concrete","white_concrete_powder","white_stained_glass","white_terracotta","white_tulip","white_wool","wither_rose","yellow_carpet","yellow_concrete","yellow_concrete_powder"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_stained_glass',item:'minecraft:yellow_stained_glass',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_stained_glass"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_terracotta',item:'minecraft:yellow_terracotta',group:0}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_stained_glass","yellow_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_wool',item:'minecraft:yellow_wool',group:0}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_wool"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_button',item:'minecraft:acacia_button',group:1}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_button',item:'minecraft:bamboo_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_button',item:'minecraft:birch_button',group:1}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_button","birch_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_button',item:'minecraft:cherry_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_button',item:'minecraft:crimson_button',group:1}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button","bamboo_button","birch_button","cherry_button","crimson_button"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_button',item:'minecraft:dark_oak_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_button',item:'minecraft:jungle_button',group:1}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_button","jungle_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lever',item:'minecraft:lever',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lever"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_button',item:'minecraft:mangrove_button',group:1}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_button","jungle_button","lever","mangrove_button"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_button',item:'minecraft:oak_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_button',item:'minecraft:pale_oak_button',group:1}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_button","pale_oak_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_button',item:'minecraft:polished_blackstone_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_button"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_button',item:'minecraft:spruce_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_button"]}}}]},{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_button',item:'minecraft:stone_button',group:1}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button","bamboo_button","birch_button","cherry_button","crimson_button","dark_oak_button","jungle_button","lever","mangrove_button","oak_button","pale_oak_button","polished_blackstone_button","spruce_button","stone_button"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/3","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_button',item:'minecraft:warped_button',group:1}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_button"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_door',item:'minecraft:acacia_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_button","acacia_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_door',item:'minecraft:bamboo_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_door',item:'minecraft:birch_door',group:2}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_button","acacia_door","bamboo_door","birch_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_door',item:'minecraft:cherry_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_door',item:'minecraft:copper_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_door","copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_door',item:'minecraft:crimson_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_door',item:'minecraft:dark_oak_door',group:2}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_button","acacia_door","bamboo_door","birch_door","cherry_door","copper_door","crimson_door","dark_oak_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_door',item:'minecraft:exposed_copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_door',item:'minecraft:iron_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_door","iron_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_door',item:'minecraft:jungle_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_door',item:'minecraft:mangrove_door',group:2}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_door","iron_door","jungle_door","mangrove_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_door',item:'minecraft:oak_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_door',item:'minecraft:oxidized_copper_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","oxidized_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_door',item:'minecraft:pale_oak_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_door',item:'minecraft:spruce_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_door',item:'minecraft:warped_door',group:2}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool","redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone","smooth_stone","snow_block","soul_fire","soul_sand","soul_soil","soul_torch","spawner","sponge","spore_blossom","spruce_planks","stone","stone_bricks","structure_void","terracotta","tinted_glass","torch","torchflower","tube_coral_block","tuff","tuff_bricks","twisting_vines_plant","void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper","waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper","waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet","white_concrete","white_concrete_powder","white_stained_glass","white_terracotta","white_tulip","white_wool","wither_rose","yellow_carpet","yellow_concrete","yellow_concrete_powder","yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button","bamboo_button","birch_button","cherry_button","crimson_button","dark_oak_button","jungle_button","lever","mangrove_button","oak_button","pale_oak_button","polished_blackstone_button","spruce_button","stone_button","warped_button","acacia_door","bamboo_door","birch_door","cherry_door","copper_door","crimson_door","dark_oak_door","exposed_copper_door","iron_door","jungle_door","mangrove_door","oak_door","oxidized_copper_door","pale_oak_door","spruce_door","warped_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_door',item:'minecraft:waxed_copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_door',item:'minecraft:waxed_exposed_copper_door',group:2}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door","waxed_exposed_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_door',item:'minecraft:waxed_oxidized_copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_door',item:'minecraft:waxed_weathered_copper_door',group:2}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/6","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_door',item:'minecraft:weathered_copper_door',group:2}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_door"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_fence',item:'minecraft:acacia_fence',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_door","acacia_fence"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_fence',item:'minecraft:bamboo_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_fence',item:'minecraft:birch_fence',group:3}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_stained_glass_pane',item:'minecraft:black_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_stained_glass_pane',item:'minecraft:blue_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_stained_glass_pane","blue_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_stained_glass_pane',item:'minecraft:brown_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_fence',item:'minecraft:cherry_fence',group:3}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_fence',item:'minecraft:crimson_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_stained_glass_pane',item:'minecraft:cyan_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence","cyan_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_fence',item:'minecraft:dark_oak_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_fence"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glass_pane',item:'minecraft:glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_stained_glass_pane',item:'minecraft:gray_stained_glass_pane',group:3}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence","crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_stained_glass_pane',item:'minecraft:green_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_bars',item:'minecraft:iron_bars',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_stained_glass_pane","iron_bars"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_fence',item:'minecraft:jungle_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_stained_glass_pane',item:'minecraft:light_blue_stained_glass_pane',group:3}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_stained_glass_pane',item:'minecraft:light_gray_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_stained_glass_pane',item:'minecraft:lime_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_stained_glass_pane","lime_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_stained_glass_pane',item:'minecraft:magenta_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_fence',item:'minecraft:mangrove_fence',group:3}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane","mangrove_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_fence',item:'minecraft:nether_brick_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_fence',item:'minecraft:oak_fence',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_fence","oak_fence"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_stained_glass_pane',item:'minecraft:orange_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_fence',item:'minecraft:pale_oak_fence',group:3}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_fence","oak_fence","orange_stained_glass_pane","pale_oak_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_stained_glass_pane',item:'minecraft:pink_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_stained_glass_pane',item:'minecraft:purple_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_stained_glass_pane","purple_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_stained_glass_pane',item:'minecraft:red_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_fence',item:'minecraft:spruce_fence',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_fence"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_fence',item:'minecraft:warped_fence',group:3}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence","crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane","green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane","mangrove_fence","nether_brick_fence","oak_fence","orange_stained_glass_pane","pale_oak_fence","pink_stained_glass_pane","purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_stained_glass_pane',item:'minecraft:white_stained_glass_pane',group:3}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.block:get/11","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_stained_glass_pane',item:'minecraft:yellow_stained_glass_pane',group:3}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass_pane","yellow_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_fence_gate',item:'minecraft:acacia_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_fence_gate',item:'minecraft:bamboo_fence_gate',group:4}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_fence_gate',item:'minecraft:birch_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_fence_gate',item:'minecraft:cherry_fence_gate',group:4}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_fence_gate","cherry_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_fence_gate',item:'minecraft:crimson_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_fence_gate',item:'minecraft:dark_oak_fence_gate',group:4}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate","birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_fence_gate',item:'minecraft:jungle_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_fence_gate',item:'minecraft:mangrove_fence_gate',group:4}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_fence_gate","mangrove_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_fence_gate',item:'minecraft:oak_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_fence_gate',item:'minecraft:pale_oak_fence_gate',group:4}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_fence_gate","mangrove_fence_gate","oak_fence_gate","pale_oak_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_fence_gate',item:'minecraft:spruce_fence_gate',group:4}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_fence_gate"]}}}]},{"type":"loot_table","value":"bs.block:get/12","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_fence_gate',item:'minecraft:warped_fence_gate',group:4}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_fence_gate","warped_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_hanging_sign',item:'minecraft:acacia_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_hanging_sign',item:'minecraft:bamboo_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_hanging_sign',item:'minecraft:birch_hanging_sign',group:5}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate","birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate","jungle_fence_gate","mangrove_fence_gate","oak_fence_gate","pale_oak_fence_gate","spruce_fence_gate","warped_fence_gate","acacia_hanging_sign","bamboo_hanging_sign","birch_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_hanging_sign',item:'minecraft:cherry_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_hanging_sign',item:'minecraft:crimson_hanging_sign',group:5}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_hanging_sign","crimson_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_hanging_sign',item:'minecraft:dark_oak_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_hanging_sign',item:'minecraft:jungle_hanging_sign',group:5}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_hanging_sign","crimson_hanging_sign","dark_oak_hanging_sign","jungle_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_hanging_sign',item:'minecraft:mangrove_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_hanging_sign',item:'minecraft:oak_hanging_sign',group:5}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_hanging_sign","oak_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_hanging_sign',item:'minecraft:pale_oak_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_hanging_sign',item:'minecraft:spruce_hanging_sign',group:5}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_hanging_sign","crimson_hanging_sign","dark_oak_hanging_sign","jungle_hanging_sign","mangrove_hanging_sign","oak_hanging_sign","pale_oak_hanging_sign","spruce_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/14","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_hanging_sign',item:'minecraft:warped_hanging_sign',group:5}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_leaves',item:'minecraft:acacia_leaves',group:6}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_hanging_sign","acacia_leaves"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:azalea_leaves',item:'minecraft:azalea_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["azalea_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_leaves',item:'minecraft:birch_leaves',group:6}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_hanging_sign","acacia_leaves","azalea_leaves","birch_leaves"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_leaves',item:'minecraft:cherry_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_leaves',item:'minecraft:dark_oak_leaves',group:6}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_leaves","dark_oak_leaves"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:flowering_azalea_leaves',item:'minecraft:flowering_azalea_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["flowering_azalea_leaves"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_leaves',item:'minecraft:jungle_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_leaves',item:'minecraft:mangrove_leaves',group:6}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence","crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane","green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane","mangrove_fence","nether_brick_fence","oak_fence","orange_stained_glass_pane","pale_oak_fence","pink_stained_glass_pane","purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence","white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate","birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate","jungle_fence_gate","mangrove_fence_gate","oak_fence_gate","pale_oak_fence_gate","spruce_fence_gate","warped_fence_gate","acacia_hanging_sign","bamboo_hanging_sign","birch_hanging_sign","cherry_hanging_sign","crimson_hanging_sign","dark_oak_hanging_sign","jungle_hanging_sign","mangrove_hanging_sign","oak_hanging_sign","pale_oak_hanging_sign","spruce_hanging_sign","warped_hanging_sign","acacia_leaves","azalea_leaves","birch_leaves","cherry_leaves","dark_oak_leaves","flowering_azalea_leaves","jungle_leaves","mangrove_leaves"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_leaves',item:'minecraft:oak_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_leaves',item:'minecraft:pale_oak_leaves',group:6}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_leaves","pale_oak_leaves"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/16","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_leaves',item:'minecraft:spruce_leaves',group:6}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_leaves"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_log',item:'minecraft:acacia_log',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_leaves","pale_oak_leaves","spruce_leaves","acacia_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_wood',item:'minecraft:acacia_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_block',item:'minecraft:bamboo_block',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_wood","bamboo_block"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:basalt',item:'minecraft:basalt',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["basalt"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_log',item:'minecraft:birch_log',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_leaves","pale_oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block","basalt","birch_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_wood',item:'minecraft:birch_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bone_block',item:'minecraft:bone_block',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wood","bone_block"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_log',item:'minecraft:cherry_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_wood',item:'minecraft:cherry_wood',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wood","bone_block","cherry_log","cherry_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_hyphae',item:'minecraft:crimson_hyphae',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_hyphae"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_stem',item:'minecraft:crimson_stem',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_hyphae","crimson_stem"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_log',item:'minecraft:dark_oak_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_wood',item:'minecraft:dark_oak_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate',item:'minecraft:deepslate',group:7}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_leaves","pale_oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block","basalt","birch_log","birch_wood","bone_block","cherry_log","cherry_wood","crimson_hyphae","crimson_stem","dark_oak_log","dark_oak_wood","deepslate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:hay_block',item:'minecraft:hay_block',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hay_block"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:infested_deepslate',item:'minecraft:infested_deepslate',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hay_block","infested_deepslate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_log',item:'minecraft:jungle_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_wood',item:'minecraft:jungle_wood',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hay_block","infested_deepslate","jungle_log","jungle_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_log',item:'minecraft:mangrove_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_wood',item:'minecraft:mangrove_wood',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_log","mangrove_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:muddy_mangrove_roots',item:'minecraft:muddy_mangrove_roots',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["muddy_mangrove_roots"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_log',item:'minecraft:oak_log',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hay_block","infested_deepslate","jungle_log","jungle_wood","mangrove_log","mangrove_wood","muddy_mangrove_roots","oak_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_wood',item:'minecraft:oak_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ochre_froglight',item:'minecraft:ochre_froglight',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wood","ochre_froglight"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_log',item:'minecraft:pale_oak_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_wood',item:'minecraft:pale_oak_wood',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wood","ochre_froglight","pale_oak_log","pale_oak_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pearlescent_froglight',item:'minecraft:pearlescent_froglight',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pearlescent_froglight"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_basalt',item:'minecraft:polished_basalt',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pearlescent_froglight","polished_basalt"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_pillar',item:'minecraft:purpur_pillar',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_pillar"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_pillar',item:'minecraft:quartz_pillar',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["quartz_pillar"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_log',item:'minecraft:spruce_log',group:7}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_leaves","pale_oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block","basalt","birch_log","birch_wood","bone_block","cherry_log","cherry_wood","crimson_hyphae","crimson_stem","dark_oak_log","dark_oak_wood","deepslate","hay_block","infested_deepslate","jungle_log","jungle_wood","mangrove_log","mangrove_wood","muddy_mangrove_roots","oak_log","oak_wood","ochre_froglight","pale_oak_log","pale_oak_wood","pearlescent_froglight","polished_basalt","purpur_pillar","quartz_pillar","spruce_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_wood',item:'minecraft:spruce_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_acacia_log',item:'minecraft:stripped_acacia_log',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wood","stripped_acacia_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_acacia_wood',item:'minecraft:stripped_acacia_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_acacia_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_bamboo_block',item:'minecraft:stripped_bamboo_block',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wood","stripped_acacia_log","stripped_acacia_wood","stripped_bamboo_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_birch_log',item:'minecraft:stripped_birch_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_birch_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_birch_wood',item:'minecraft:stripped_birch_wood',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_birch_log","stripped_birch_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_cherry_log',item:'minecraft:stripped_cherry_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_cherry_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_cherry_wood',item:'minecraft:stripped_cherry_wood',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wood","stripped_acacia_log","stripped_acacia_wood","stripped_bamboo_block","stripped_birch_log","stripped_birch_wood","stripped_cherry_log","stripped_cherry_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_crimson_hyphae',item:'minecraft:stripped_crimson_hyphae',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_crimson_hyphae"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_crimson_stem',item:'minecraft:stripped_crimson_stem',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_crimson_hyphae","stripped_crimson_stem"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_dark_oak_log',item:'minecraft:stripped_dark_oak_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_dark_oak_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_dark_oak_wood',item:'minecraft:stripped_dark_oak_wood',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_crimson_hyphae","stripped_crimson_stem","stripped_dark_oak_log","stripped_dark_oak_wood"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_jungle_log',item:'minecraft:stripped_jungle_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_jungle_log"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_jungle_wood',item:'minecraft:stripped_jungle_wood',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_jungle_log","stripped_jungle_wood"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_mangrove_log',item:'minecraft:stripped_mangrove_log',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_mangrove_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_mangrove_wood',item:'minecraft:stripped_mangrove_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_mangrove_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_oak_log',item:'minecraft:stripped_oak_log',group:7}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wood","stripped_acacia_log","stripped_acacia_wood","stripped_bamboo_block","stripped_birch_log","stripped_birch_wood","stripped_cherry_log","stripped_cherry_wood","stripped_crimson_hyphae","stripped_crimson_stem","stripped_dark_oak_log","stripped_dark_oak_wood","stripped_jungle_log","stripped_jungle_wood","stripped_mangrove_log","stripped_mangrove_wood","stripped_oak_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_oak_wood',item:'minecraft:stripped_oak_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_pale_oak_log',item:'minecraft:stripped_pale_oak_log',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_wood","stripped_pale_oak_log"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_pale_oak_wood',item:'minecraft:stripped_pale_oak_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_pale_oak_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_spruce_log',item:'minecraft:stripped_spruce_log',group:7}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_wood","stripped_pale_oak_log","stripped_pale_oak_wood","stripped_spruce_log"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_spruce_wood',item:'minecraft:stripped_spruce_wood',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_spruce_wood"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_warped_hyphae',item:'minecraft:stripped_warped_hyphae',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_spruce_wood","stripped_warped_hyphae"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stripped_warped_stem',item:'minecraft:stripped_warped_stem',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_warped_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:verdant_froglight',item:'minecraft:verdant_froglight',group:7}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stripped_oak_wood","stripped_pale_oak_log","stripped_pale_oak_wood","stripped_spruce_log","stripped_spruce_wood","stripped_warped_hyphae","stripped_warped_stem","verdant_froglight"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_hyphae',item:'minecraft:warped_hyphae',group:7}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_hyphae"]}}}]},{"type":"loot_table","value":"bs.block:get/17","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_stem',item:'minecraft:warped_stem',group:7}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_hyphae","warped_stem"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_pressure_plate',item:'minecraft:acacia_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_pressure_plate',item:'minecraft:bamboo_pressure_plate',group:8}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_hyphae","warped_stem","acacia_pressure_plate","bamboo_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_pressure_plate',item:'minecraft:birch_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_pressure_plate',item:'minecraft:cherry_pressure_plate',group:8}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_pressure_plate","cherry_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_pressure_plate',item:'minecraft:crimson_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_pressure_plate',item:'minecraft:dark_oak_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_pressure_plate',item:'minecraft:jungle_pressure_plate',group:8}"}]}]}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_planks","air","allium","amethyst_block","ancient_debris","andesite","azalea","azure_bluet","bamboo_mosaic","bamboo_planks","bamboo_sapling","beacon","bedrock","birch_planks","black_carpet","black_concrete","black_concrete_powder","black_stained_glass","black_terracotta","black_wool","blackstone","blue_carpet","blue_concrete","blue_concrete_powder","blue_ice","blue_orchid","blue_stained_glass","blue_terracotta","blue_wool","bookshelf","brain_coral_block","bricks","brown_carpet","brown_concrete","brown_concrete_powder","brown_mushroom","brown_stained_glass","brown_terracotta","brown_wool","bubble_coral_block","budding_amethyst","calcite","cartography_table","cauldron","cave_air","cherry_planks","chiseled_copper","chiseled_deepslate","chiseled_nether_bricks","chiseled_polished_blackstone","chiseled_quartz_block","chiseled_red_sandstone","chiseled_sandstone","chiseled_stone_bricks","chiseled_tuff","chiseled_tuff_bricks","clay","coal_block","coal_ore","coarse_dirt","cobbled_deepslate","cobblestone","cobweb","copper_block","copper_ore","cornflower","cracked_deepslate_bricks","cracked_deepslate_tiles","cracked_nether_bricks","cracked_polished_blackstone_bricks","cracked_stone_bricks","crafting_table","crimson_fungus","crimson_nylium","crimson_planks","crimson_roots","crying_obsidian","cut_copper","cut_red_sandstone","cut_sandstone","cyan_carpet","cyan_concrete","cyan_concrete_powder","cyan_stained_glass","cyan_terracotta","cyan_wool","dandelion","dark_oak_planks","dark_prismarine","dead_brain_coral_block","dead_bubble_coral_block","dead_bush","dead_fire_coral_block","dead_horn_coral_block","dead_tube_coral_block","deepslate_bricks","deepslate_coal_ore","deepslate_copper_ore","deepslate_diamond_ore","deepslate_emerald_ore","deepslate_gold_ore","deepslate_iron_ore","deepslate_lapis_ore","deepslate_tiles","diamond_block","diamond_ore","diorite","dirt","dirt_path","dragon_egg","dried_kelp_block","dripstone_block","emerald_block","emerald_ore","enchanting_table","end_gateway","end_portal","end_stone","end_stone_bricks","exposed_chiseled_copper","exposed_copper","exposed_cut_copper","fern","fire_coral_block","fletching_table","flower_pot","flowering_azalea","frogspawn","gilded_blackstone","glass","glowstone","gold_block","gold_ore","granite","gravel","gray_carpet","gray_concrete","gray_concrete_powder","gray_stained_glass","gray_terracotta","gray_wool","green_carpet","green_concrete","green_concrete_powder","green_stained_glass","green_terracotta","green_wool","honey_block","honeycomb_block","horn_coral_block","ice","infested_chiseled_stone_bricks","infested_cobblestone","infested_cracked_stone_bricks","infested_mossy_stone_bricks","infested_stone","infested_stone_bricks","iron_block","iron_ore","jungle_planks","kelp_plant","lapis_block","lapis_ore","lava_cauldron","light_blue_carpet","light_blue_concrete","light_blue_concrete_powder","light_blue_stained_glass","light_blue_terracotta","light_blue_wool","light_gray_carpet","light_gray_concrete","light_gray_concrete_powder","light_gray_stained_glass","light_gray_terracotta","light_gray_wool","lily_of_the_valley","lily_pad","lime_carpet","lime_concrete","lime_concrete_powder","lime_stained_glass","lime_terracotta","lime_wool","lodestone","magenta_carpet","magenta_concrete","magenta_concrete_powder","magenta_stained_glass","magenta_terracotta","magenta_wool","magma_block","mangrove_planks","melon","moss_block","moss_carpet","mossy_cobblestone","mossy_stone_bricks","mud","mud_bricks","nether_bricks","nether_gold_ore","nether_quartz_ore","nether_sprouts","nether_wart_block","netherite_block","netherrack","oak_planks","obsidian","orange_carpet","orange_concrete","orange_concrete_powder","orange_stained_glass","orange_terracotta","orange_tulip","orange_wool","oxeye_daisy","oxidized_chiseled_copper","oxidized_copper","oxidized_cut_copper","packed_ice","packed_mud","pale_moss_block","pale_oak_planks","pink_carpet","pink_concrete","pink_concrete_powder","pink_stained_glass","pink_terracotta","pink_tulip","pink_wool","polished_andesite","polished_blackstone","polished_blackstone_bricks","polished_deepslate","polished_diorite","polished_granite","polished_tuff","poppy","potted_acacia_sapling","potted_allium","potted_azalea_bush","potted_azure_bluet","potted_bamboo","potted_birch_sapling","potted_blue_orchid","potted_brown_mushroom","potted_cactus","potted_cherry_sapling","potted_cornflower","potted_crimson_fungus","potted_crimson_roots","potted_dandelion","potted_dark_oak_sapling","potted_dead_bush","potted_fern","potted_flowering_azalea_bush","potted_jungle_sapling","potted_lily_of_the_valley","potted_mangrove_propagule","potted_oak_sapling","potted_orange_tulip","potted_oxeye_daisy","potted_pale_oak_sapling","potted_pink_tulip","potted_poppy","potted_red_mushroom","potted_red_tulip","potted_spruce_sapling","potted_torchflower","potted_warped_fungus","potted_warped_roots","potted_white_tulip","potted_wither_rose","powder_snow","prismarine","prismarine_bricks","pumpkin","purple_carpet","purple_concrete","purple_concrete_powder","purple_stained_glass","purple_terracotta","purple_wool","purpur_block","quartz_block","quartz_bricks","raw_copper_block","raw_gold_block","raw_iron_block","red_carpet","red_concrete","red_concrete_powder","red_mushroom","red_nether_bricks","red_sand","red_sandstone","red_stained_glass","red_terracotta","red_tulip","red_wool","redstone_block","reinforced_deepslate","rooted_dirt","sand","sandstone","sculk","sea_lantern","seagrass","short_grass","shroomlight","slime_block","smithing_table","smooth_basalt","smooth_quartz","smooth_red_sandstone","smooth_sandstone","smooth_stone","snow_block","soul_fire","soul_sand","soul_soil","soul_torch","spawner","sponge","spore_blossom","spruce_planks","stone","stone_bricks","structure_void","terracotta","tinted_glass","torch","torchflower","tube_coral_block","tuff","tuff_bricks","twisting_vines_plant","void_air","warped_fungus","warped_nylium","warped_planks","warped_roots","warped_wart_block","waxed_chiseled_copper","waxed_copper_block","waxed_cut_copper","waxed_exposed_chiseled_copper","waxed_exposed_copper","waxed_exposed_cut_copper","waxed_oxidized_chiseled_copper","waxed_oxidized_copper","waxed_oxidized_cut_copper","waxed_weathered_chiseled_copper","waxed_weathered_copper","waxed_weathered_cut_copper","weathered_chiseled_copper","weathered_copper","weathered_cut_copper","weeping_vines_plant","wet_sponge","white_carpet","white_concrete","white_concrete_powder","white_stained_glass","white_terracotta","white_tulip","white_wool","wither_rose","yellow_carpet","yellow_concrete","yellow_concrete_powder","yellow_stained_glass","yellow_terracotta","yellow_wool","acacia_button","bamboo_button","birch_button","cherry_button","crimson_button","dark_oak_button","jungle_button","lever","mangrove_button","oak_button","pale_oak_button","polished_blackstone_button","spruce_button","stone_button","warped_button","acacia_door","bamboo_door","birch_door","cherry_door","copper_door","crimson_door","dark_oak_door","exposed_copper_door","iron_door","jungle_door","mangrove_door","oak_door","oxidized_copper_door","pale_oak_door","spruce_door","warped_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","weathered_copper_door","acacia_fence","bamboo_fence","birch_fence","black_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","cherry_fence","crimson_fence","cyan_stained_glass_pane","dark_oak_fence","glass_pane","gray_stained_glass_pane","green_stained_glass_pane","iron_bars","jungle_fence","light_blue_stained_glass_pane","light_gray_stained_glass_pane","lime_stained_glass_pane","magenta_stained_glass_pane","mangrove_fence","nether_brick_fence","oak_fence","orange_stained_glass_pane","pale_oak_fence","pink_stained_glass_pane","purple_stained_glass_pane","red_stained_glass_pane","spruce_fence","warped_fence","white_stained_glass_pane","yellow_stained_glass_pane","acacia_fence_gate","bamboo_fence_gate","birch_fence_gate","cherry_fence_gate","crimson_fence_gate","dark_oak_fence_gate","jungle_fence_gate","mangrove_fence_gate","oak_fence_gate","pale_oak_fence_gate","spruce_fence_gate","warped_fence_gate","acacia_hanging_sign","bamboo_hanging_sign","birch_hanging_sign","cherry_hanging_sign","crimson_hanging_sign","dark_oak_hanging_sign","jungle_hanging_sign","mangrove_hanging_sign","oak_hanging_sign","pale_oak_hanging_sign","spruce_hanging_sign","warped_hanging_sign","acacia_leaves","azalea_leaves","birch_leaves","cherry_leaves","dark_oak_leaves","flowering_azalea_leaves","jungle_leaves","mangrove_leaves","oak_leaves","pale_oak_leaves","spruce_leaves","acacia_log","acacia_wood","bamboo_block","basalt","birch_log","birch_wood","bone_block","cherry_log","cherry_wood","crimson_hyphae","crimson_stem","dark_oak_log","dark_oak_wood","deepslate","hay_block","infested_deepslate","jungle_log","jungle_wood","mangrove_log","mangrove_wood","muddy_mangrove_roots","oak_log","oak_wood","ochre_froglight","pale_oak_log","pale_oak_wood","pearlescent_froglight","polished_basalt","purpur_pillar","quartz_pillar","spruce_log","spruce_wood","stripped_acacia_log","stripped_acacia_wood","stripped_bamboo_block","stripped_birch_log","stripped_birch_wood","stripped_cherry_log","stripped_cherry_wood","stripped_crimson_hyphae","stripped_crimson_stem","stripped_dark_oak_log","stripped_dark_oak_wood","stripped_jungle_log","stripped_jungle_wood","stripped_mangrove_log","stripped_mangrove_wood","stripped_oak_log","stripped_oak_wood","stripped_pale_oak_log","stripped_pale_oak_wood","stripped_spruce_log","stripped_spruce_wood","stripped_warped_hyphae","stripped_warped_stem","verdant_froglight","warped_hyphae","warped_stem","acacia_pressure_plate","bamboo_pressure_plate","birch_pressure_plate","cherry_pressure_plate","crimson_pressure_plate","dark_oak_pressure_plate","jungle_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_pressure_plate',item:'minecraft:mangrove_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_pressure_plate',item:'minecraft:oak_pressure_plate',group:8}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_pressure_plate',item:'minecraft:pale_oak_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_pressure_plate',item:'minecraft:polished_blackstone_pressure_plate',group:8}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate","pale_oak_pressure_plate","polished_blackstone_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_pressure_plate',item:'minecraft:spruce_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_pressure_plate',item:'minecraft:stone_pressure_plate',group:8}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_pressure_plate","stone_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/18","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_pressure_plate',item:'minecraft:warped_pressure_plate',group:8}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_sapling',item:'minecraft:acacia_sapling',group:9}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate","pale_oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_sapling',item:'minecraft:birch_sapling',group:9}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_sapling"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_sapling',item:'minecraft:cherry_sapling',group:9}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_sapling","cherry_sapling"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_sapling',item:'minecraft:dark_oak_sapling',group:9}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_sapling"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_sapling',item:'minecraft:jungle_sapling',group:9}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_sapling',item:'minecraft:oak_sapling',group:9}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling"]}}}]},{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_sapling',item:'minecraft:pale_oak_sapling',group:9}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","pale_oak_sapling"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/19","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_sapling',item:'minecraft:spruce_sapling',group:9}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_sapling"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_sign',item:'minecraft:acacia_sign',group:10}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate","pale_oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","pale_oak_sapling","spruce_sapling","acacia_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_sign',item:'minecraft:bamboo_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_sign',item:'minecraft:birch_sign',group:10}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_sign","birch_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_sign',item:'minecraft:cherry_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_sign',item:'minecraft:crimson_sign',group:10}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_sign","birch_sign","cherry_sign","crimson_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_sign',item:'minecraft:dark_oak_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_sign',item:'minecraft:jungle_sign',group:10}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_sign","jungle_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_sign',item:'minecraft:mangrove_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_sign',item:'minecraft:oak_sign',group:10}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_sign',item:'minecraft:pale_oak_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_sign',item:'minecraft:spruce_sign',group:10}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_sign","spruce_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/13","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_sign',item:'minecraft:warped_sign',group:10}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_slab',item:'minecraft:acacia_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_sign","spruce_sign","warped_sign","acacia_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite_slab',item:'minecraft:andesite_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_mosaic_slab',item:'minecraft:bamboo_mosaic_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_slab","bamboo_mosaic_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_slab',item:'minecraft:bamboo_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_slab',item:'minecraft:birch_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone_slab',item:'minecraft:blackstone_slab',group:11}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate","pale_oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","pale_oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","pale_oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brick_slab',item:'minecraft:brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_slab',item:'minecraft:cherry_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_slab","cherry_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate_slab',item:'minecraft:cobbled_deepslate_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone_slab',item:'minecraft:cobblestone_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_slab',item:'minecraft:crimson_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_copper_slab',item:'minecraft:cut_copper_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_slab","cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_red_sandstone_slab',item:'minecraft:cut_red_sandstone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_red_sandstone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_sandstone_slab',item:'minecraft:cut_sandstone_slab',group:11}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_slab',item:'minecraft:dark_oak_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_prismarine_slab',item:'minecraft:dark_prismarine_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_slab","dark_prismarine_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_brick_slab',item:'minecraft:deepslate_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tile_slab',item:'minecraft:deepslate_tile_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite_slab',item:'minecraft:diorite_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_brick_slab',item:'minecraft:end_stone_brick_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_slab","end_stone_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_cut_copper_slab',item:'minecraft:exposed_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite_slab',item:'minecraft:granite_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["granite_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_slab',item:'minecraft:jungle_slab',group:11}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_slab',item:'minecraft:mangrove_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone_slab',item:'minecraft:mossy_cobblestone_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_slab","mossy_cobblestone_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_brick_slab',item:'minecraft:mossy_stone_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_stone_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_brick_slab',item:'minecraft:mud_brick_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_slab',item:'minecraft:nether_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_slab',item:'minecraft:oak_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_slab","oak_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_cut_copper_slab',item:'minecraft:oxidized_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_cut_copper_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_slab',item:'minecraft:pale_oak_slab',group:11}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","pale_oak_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:petrified_oak_slab',item:'minecraft:petrified_oak_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["petrified_oak_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_andesite_slab',item:'minecraft:polished_andesite_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["petrified_oak_slab","polished_andesite_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_brick_slab',item:'minecraft:polished_blackstone_brick_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_brick_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_slab',item:'minecraft:polished_blackstone_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate_slab',item:'minecraft:polished_deepslate_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_deepslate_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_diorite_slab',item:'minecraft:polished_diorite_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_deepslate_slab","polished_diorite_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_granite_slab',item:'minecraft:polished_granite_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_granite_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff_slab',item:'minecraft:polished_tuff_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_brick_slab',item:'minecraft:prismarine_brick_slab',group:11}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate","pale_oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","pale_oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","pale_oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab","brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab","mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","pale_oak_slab","petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab","polished_deepslate_slab","polished_diorite_slab","polished_granite_slab","polished_tuff_slab","prismarine_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_slab',item:'minecraft:prismarine_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_slab',item:'minecraft:purpur_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab","purpur_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_slab',item:'minecraft:quartz_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["quartz_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_brick_slab',item:'minecraft:red_nether_brick_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone_slab',item:'minecraft:red_sandstone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone_slab',item:'minecraft:sandstone_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_slab","sandstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_quartz_slab',item:'minecraft:smooth_quartz_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_quartz_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_red_sandstone_slab',item:'minecraft:smooth_red_sandstone_slab',group:11}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab","red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_sandstone_slab',item:'minecraft:smooth_sandstone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_stone_slab',item:'minecraft:smooth_stone_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_slab","smooth_stone_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_slab',item:'minecraft:spruce_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_brick_slab',item:'minecraft:stone_brick_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_slab',item:'minecraft:stone_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_brick_slab',item:'minecraft:tuff_brick_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_slab","tuff_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_slab',item:'minecraft:tuff_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_slab',item:'minecraft:warped_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_cut_copper_slab',item:'minecraft:waxed_cut_copper_slab',group:11}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab","red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_cut_copper_slab',item:'minecraft:waxed_exposed_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_cut_copper_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_cut_copper_slab',item:'minecraft:waxed_oxidized_cut_copper_slab',group:11}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_cut_copper_slab',item:'minecraft:waxed_weathered_cut_copper_slab',group:11}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper_slab"]}}}]},{"type":"loot_table","value":"bs.block:get/20","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_cut_copper_slab',item:'minecraft:weathered_cut_copper_slab',group:11}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_stairs',item:'minecraft:acacia_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite_stairs',item:'minecraft:andesite_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_stairs","andesite_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_mosaic_stairs',item:'minecraft:bamboo_mosaic_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_mosaic_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_stairs',item:'minecraft:bamboo_stairs',group:12}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_stairs',item:'minecraft:birch_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone_stairs',item:'minecraft:blackstone_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_stairs","blackstone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brick_stairs',item:'minecraft:brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_stairs',item:'minecraft:cherry_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_stairs","blackstone_stairs","brick_stairs","cherry_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate_stairs',item:'minecraft:cobbled_deepslate_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone_stairs',item:'minecraft:cobblestone_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_stairs","cobblestone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_stairs',item:'minecraft:crimson_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cut_copper_stairs',item:'minecraft:cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_stairs',item:'minecraft:dark_oak_stairs',group:12}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab","red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs","birch_stairs","blackstone_stairs","brick_stairs","cherry_stairs","cobbled_deepslate_stairs","cobblestone_stairs","crimson_stairs","cut_copper_stairs","dark_oak_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_prismarine_stairs',item:'minecraft:dark_prismarine_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_brick_stairs',item:'minecraft:deepslate_brick_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine_stairs","deepslate_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tile_stairs',item:'minecraft:deepslate_tile_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_tile_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite_stairs',item:'minecraft:diorite_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs","diorite_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_brick_stairs',item:'minecraft:end_stone_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_stone_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_cut_copper_stairs',item:'minecraft:exposed_cut_copper_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_stone_brick_stairs","exposed_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite_stairs',item:'minecraft:granite_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["granite_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_stairs',item:'minecraft:jungle_stairs',group:12}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs","diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_stairs',item:'minecraft:mangrove_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone_stairs',item:'minecraft:mossy_cobblestone_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_stairs","mossy_cobblestone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_brick_stairs',item:'minecraft:mossy_stone_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_stone_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_brick_stairs',item:'minecraft:mud_brick_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs","mud_brick_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_stairs',item:'minecraft:nether_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_stairs',item:'minecraft:oak_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_stairs","oak_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_cut_copper_stairs',item:'minecraft:oxidized_cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oxidized_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_stairs',item:'minecraft:pale_oak_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_andesite_stairs',item:'minecraft:polished_andesite_stairs',group:12}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs","diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs","mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","oak_stairs","oxidized_cut_copper_stairs","pale_oak_stairs","polished_andesite_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_brick_stairs',item:'minecraft:polished_blackstone_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_stairs',item:'minecraft:polished_blackstone_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_brick_stairs","polished_blackstone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate_stairs',item:'minecraft:polished_deepslate_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_deepslate_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_diorite_stairs',item:'minecraft:polished_diorite_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_brick_stairs","polished_blackstone_stairs","polished_deepslate_stairs","polished_diorite_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_granite_stairs',item:'minecraft:polished_granite_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_granite_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff_stairs',item:'minecraft:polished_tuff_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_granite_stairs","polished_tuff_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_brick_stairs',item:'minecraft:prismarine_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_stairs',item:'minecraft:prismarine_stairs',group:12}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_brick_stairs","polished_blackstone_stairs","polished_deepslate_stairs","polished_diorite_stairs","polished_granite_stairs","polished_tuff_stairs","prismarine_brick_stairs","prismarine_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purpur_stairs',item:'minecraft:purpur_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:quartz_stairs',item:'minecraft:quartz_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_stairs","quartz_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_brick_stairs',item:'minecraft:red_nether_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_nether_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone_stairs',item:'minecraft:red_sandstone_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purpur_stairs","quartz_stairs","red_nether_brick_stairs","red_sandstone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone_stairs',item:'minecraft:sandstone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sandstone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_quartz_stairs',item:'minecraft:smooth_quartz_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sandstone_stairs","smooth_quartz_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_red_sandstone_stairs',item:'minecraft:smooth_red_sandstone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_red_sandstone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smooth_sandstone_stairs',item:'minecraft:smooth_sandstone_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["smooth_sandstone_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_stairs',item:'minecraft:spruce_stairs',group:12}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate","pale_oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","pale_oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","pale_oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab","brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab","mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","pale_oak_slab","petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab","polished_deepslate_slab","polished_diorite_slab","polished_granite_slab","polished_tuff_slab","prismarine_brick_slab","prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab","red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs","birch_stairs","blackstone_stairs","brick_stairs","cherry_stairs","cobbled_deepslate_stairs","cobblestone_stairs","crimson_stairs","cut_copper_stairs","dark_oak_stairs","dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs","diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs","mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","oak_stairs","oxidized_cut_copper_stairs","pale_oak_stairs","polished_andesite_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","polished_deepslate_stairs","polished_diorite_stairs","polished_granite_stairs","polished_tuff_stairs","prismarine_brick_stairs","prismarine_stairs","purpur_stairs","quartz_stairs","red_nether_brick_stairs","red_sandstone_stairs","sandstone_stairs","smooth_quartz_stairs","smooth_red_sandstone_stairs","smooth_sandstone_stairs","spruce_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_brick_stairs',item:'minecraft:stone_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_stairs',item:'minecraft:stone_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs","stone_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_brick_stairs',item:'minecraft:tuff_brick_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_stairs',item:'minecraft:tuff_stairs',group:12}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs","stone_stairs","tuff_brick_stairs","tuff_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_stairs',item:'minecraft:warped_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_cut_copper_stairs',item:'minecraft:waxed_cut_copper_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_stairs","waxed_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_cut_copper_stairs',item:'minecraft:waxed_exposed_cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_cut_copper_stairs',item:'minecraft:waxed_oxidized_cut_copper_stairs',group:12}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs","stone_stairs","tuff_brick_stairs","tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_cut_copper_stairs',item:'minecraft:waxed_weathered_cut_copper_stairs',group:12}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper_stairs"]}}}]},{"type":"loot_table","value":"bs.block:get/23","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_cut_copper_stairs',item:'minecraft:weathered_cut_copper_stairs',group:12}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_trapdoor',item:'minecraft:acacia_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_trapdoor',item:'minecraft:bamboo_trapdoor',group:13}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_trapdoor',item:'minecraft:birch_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_trapdoor',item:'minecraft:cherry_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_trapdoor","cherry_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_trapdoor',item:'minecraft:copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_trapdoor',item:'minecraft:crimson_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_trapdoor',item:'minecraft:dark_oak_trapdoor',group:13}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs","stone_stairs","tuff_brick_stairs","tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_trapdoor',item:'minecraft:exposed_copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:iron_trapdoor',item:'minecraft:iron_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_trapdoor","iron_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_trapdoor',item:'minecraft:jungle_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_trapdoor',item:'minecraft:mangrove_trapdoor',group:13}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_trapdoor',item:'minecraft:oak_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_trapdoor',item:'minecraft:oxidized_copper_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_trapdoor","oxidized_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_trapdoor',item:'minecraft:pale_oak_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_trapdoor',item:'minecraft:spruce_trapdoor',group:13}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","pale_oak_trapdoor","spruce_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_trapdoor',item:'minecraft:warped_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_trapdoor',item:'minecraft:waxed_copper_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_trapdoor","waxed_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_trapdoor',item:'minecraft:waxed_exposed_copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_exposed_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_trapdoor',item:'minecraft:waxed_oxidized_copper_trapdoor',group:13}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_trapdoor',item:'minecraft:waxed_weathered_copper_trapdoor',group:13}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.block:get/25","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_trapdoor',item:'minecraft:weathered_copper_trapdoor',group:13}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_weathered_copper_trapdoor","weathered_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_wall_hanging_sign',item:'minecraft:acacia_hanging_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:acacia_wall_sign',item:'minecraft:acacia_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["acacia_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_wall_hanging_sign',item:'minecraft:bamboo_hanging_sign',group:14}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs","stone_stairs","tuff_brick_stairs","tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor","exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","pale_oak_trapdoor","spruce_trapdoor","warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","weathered_copper_trapdoor","acacia_wall_hanging_sign","acacia_wall_sign","bamboo_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo_wall_sign',item:'minecraft:bamboo_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:big_dripleaf_stem',item:'minecraft:big_dripleaf',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_wall_sign","big_dripleaf_stem"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_wall_hanging_sign',item:'minecraft:birch_hanging_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["birch_wall_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:birch_wall_sign',item:'minecraft:birch_sign',group:14}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign","birch_wall_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_wall_hanging_sign',item:'minecraft:cherry_hanging_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_wall_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cherry_wall_sign',item:'minecraft:cherry_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cherry_wall_hanging_sign","cherry_wall_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_wall_hanging_sign',item:'minecraft:crimson_hanging_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["crimson_wall_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crimson_wall_sign',item:'minecraft:crimson_sign',group:14}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign","birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_wall_hanging_sign',item:'minecraft:dark_oak_hanging_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_wall_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dark_oak_wall_sign',item:'minecraft:dark_oak_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_wall_hanging_sign","dark_oak_wall_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ender_chest',item:'minecraft:ender_chest',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ender_chest"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_wall_hanging_sign',item:'minecraft:jungle_hanging_sign',group:14}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest","jungle_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jungle_wall_sign',item:'minecraft:jungle_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:ladder',item:'minecraft:ladder',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jungle_wall_sign","ladder"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_wall_hanging_sign',item:'minecraft:mangrove_hanging_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_wall_sign',item:'minecraft:mangrove_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_wall_hanging_sign',item:'minecraft:oak_hanging_sign',group:14}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign","birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign","dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest","jungle_wall_hanging_sign","jungle_wall_sign","ladder","mangrove_wall_hanging_sign","mangrove_wall_sign","oak_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oak_wall_sign',item:'minecraft:oak_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_wall_hanging_sign',item:'None',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign","pale_oak_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_oak_wall_sign',item:'None',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_oak_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_wall_hanging_sign',item:'minecraft:spruce_hanging_sign',group:14}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign","pale_oak_wall_hanging_sign","pale_oak_wall_sign","spruce_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:spruce_wall_sign',item:'minecraft:spruce_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_wall_hanging_sign',item:'minecraft:warped_hanging_sign',group:14}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spruce_wall_sign","warped_wall_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:warped_wall_sign',item:'minecraft:warped_sign',group:14}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_wall_sign"]}}}]},{"type":"loot_table","value":"bs.block:get/27","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:activator_rail',item:'minecraft:activator_rail',group:15}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign","pale_oak_wall_hanging_sign","pale_oak_wall_sign","spruce_wall_hanging_sign","spruce_wall_sign","warped_wall_hanging_sign","warped_wall_sign","activator_rail"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/27","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:detector_rail',item:'minecraft:detector_rail',group:15}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["detector_rail"]}}}]},{"type":"loot_table","value":"bs.block:get/27","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:powered_rail',item:'minecraft:powered_rail',group:15}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["detector_rail","powered_rail"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:amethyst_cluster',item:'minecraft:amethyst_cluster',group:16}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["amethyst_cluster"]}}}]},{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:large_amethyst_bud',item:'minecraft:large_amethyst_bud',group:16}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["detector_rail","powered_rail","amethyst_cluster","large_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:medium_amethyst_bud',item:'minecraft:medium_amethyst_bud',group:16}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud"]}}}]},{"type":"loot_table","value":"bs.block:get/28","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:small_amethyst_bud',item:'minecraft:small_amethyst_bud',group:16}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud","small_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:andesite_wall',item:'minecraft:andesite_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["andesite_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blackstone_wall',item:'minecraft:blackstone_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blackstone_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brick_wall',item:'minecraft:brick_wall',group:17}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_stairs","stone_stairs","tuff_brick_stairs","tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor","exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","pale_oak_trapdoor","spruce_trapdoor","warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","weathered_copper_trapdoor","acacia_wall_hanging_sign","acacia_wall_sign","bamboo_wall_hanging_sign","bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign","birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign","dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest","jungle_wall_hanging_sign","jungle_wall_sign","ladder","mangrove_wall_hanging_sign","mangrove_wall_sign","oak_wall_hanging_sign","oak_wall_sign","pale_oak_wall_hanging_sign","pale_oak_wall_sign","spruce_wall_hanging_sign","spruce_wall_sign","warped_wall_hanging_sign","warped_wall_sign","activator_rail","detector_rail","powered_rail","amethyst_cluster","large_amethyst_bud","medium_amethyst_bud","small_amethyst_bud","andesite_wall","blackstone_wall","brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobbled_deepslate_wall',item:'minecraft:cobbled_deepslate_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cobblestone_wall',item:'minecraft:cobblestone_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_wall","cobblestone_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_brick_wall',item:'minecraft:deepslate_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_tile_wall',item:'minecraft:deepslate_tile_wall',group:17}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_wall","cobblestone_wall","deepslate_brick_wall","deepslate_tile_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:diorite_wall',item:'minecraft:diorite_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_stone_brick_wall',item:'minecraft:end_stone_brick_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["diorite_wall","end_stone_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:granite_wall',item:'minecraft:granite_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["granite_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_cobblestone_wall',item:'minecraft:mossy_cobblestone_wall',group:17}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_wall","cobblestone_wall","deepslate_brick_wall","deepslate_tile_wall","diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mossy_stone_brick_wall',item:'minecraft:mossy_stone_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_stone_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mud_brick_wall',item:'minecraft:mud_brick_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_stone_brick_wall","mud_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_brick_wall',item:'minecraft:nether_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_brick_wall',item:'minecraft:polished_blackstone_brick_wall',group:17}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_blackstone_wall',item:'minecraft:polished_blackstone_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_deepslate_wall',item:'minecraft:polished_deepslate_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_blackstone_wall","polished_deepslate_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:polished_tuff_wall',item:'minecraft:polished_tuff_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["polished_tuff_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:prismarine_wall',item:'minecraft:prismarine_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_nether_brick_wall',item:'minecraft:red_nether_brick_wall',group:17}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_wall","cobblestone_wall","deepslate_brick_wall","deepslate_tile_wall","diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall","mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall","polished_blackstone_wall","polished_deepslate_wall","polished_tuff_wall","prismarine_wall","red_nether_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_sandstone_wall',item:'minecraft:red_sandstone_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sandstone_wall',item:'minecraft:sandstone_wall',group:17}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_wall","sandstone_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stone_brick_wall',item:'minecraft:stone_brick_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_brick_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_brick_wall',item:'minecraft:tuff_brick_wall',group:17}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_wall","sandstone_wall","stone_brick_wall","tuff_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/33","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tuff_wall',item:'minecraft:tuff_wall',group:17}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_wall"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:anvil',item:'minecraft:anvil',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tuff_wall","anvil"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:attached_melon_stem',item:'minecraft:melon_seeds',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["attached_melon_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:attached_pumpkin_stem',item:'minecraft:melon_seeds',group:18}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_sandstone_wall","sandstone_wall","stone_brick_wall","tuff_brick_wall","tuff_wall","anvil","attached_melon_stem","attached_pumpkin_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_glazed_terracotta',item:'minecraft:black_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_wall_banner',item:'minecraft:black_banner',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_glazed_terracotta","black_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_glazed_terracotta',item:'minecraft:blue_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_wall_banner',item:'minecraft:blue_banner',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_glazed_terracotta","black_wall_banner","blue_glazed_terracotta","blue_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_glazed_terracotta',item:'minecraft:brown_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_wall_banner',item:'minecraft:brown_banner',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_glazed_terracotta","brown_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:carved_pumpkin',item:'minecraft:carved_pumpkin',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carved_pumpkin"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chipped_anvil',item:'minecraft:chipped_anvil',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chipped_anvil"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_glazed_terracotta',item:'minecraft:cyan_glazed_terracotta',group:18}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobbled_deepslate_wall","cobblestone_wall","deepslate_brick_wall","deepslate_tile_wall","diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall","mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall","polished_blackstone_wall","polished_deepslate_wall","polished_tuff_wall","prismarine_wall","red_nether_brick_wall","red_sandstone_wall","sandstone_wall","stone_brick_wall","tuff_brick_wall","tuff_wall","anvil","attached_melon_stem","attached_pumpkin_stem","black_glazed_terracotta","black_wall_banner","blue_glazed_terracotta","blue_wall_banner","brown_glazed_terracotta","brown_wall_banner","carved_pumpkin","chipped_anvil","cyan_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_wall_banner',item:'minecraft:cyan_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:damaged_anvil',item:'minecraft:damaged_anvil',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_wall_banner","damaged_anvil"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_glazed_terracotta',item:'minecraft:gray_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_wall_banner',item:'minecraft:gray_banner',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_wall_banner","damaged_anvil","gray_glazed_terracotta","gray_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_glazed_terracotta',item:'minecraft:green_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_wall_banner',item:'minecraft:green_banner',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_glazed_terracotta","green_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jack_o_lantern',item:'minecraft:jack_o_lantern',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jack_o_lantern"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_glazed_terracotta',item:'minecraft:light_blue_glazed_terracotta',group:18}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_wall_banner","damaged_anvil","gray_glazed_terracotta","gray_wall_banner","green_glazed_terracotta","green_wall_banner","jack_o_lantern","light_blue_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_wall_banner',item:'minecraft:light_blue_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_glazed_terracotta',item:'minecraft:light_gray_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wall_banner","light_gray_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_wall_banner',item:'minecraft:light_gray_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_glazed_terracotta',item:'minecraft:lime_glazed_terracotta',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_wall_banner","light_gray_glazed_terracotta","light_gray_wall_banner","lime_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_wall_banner',item:'minecraft:lime_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:loom',item:'minecraft:loom',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_wall_banner","loom"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_glazed_terracotta',item:'minecraft:magenta_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_wall_banner',item:'minecraft:magenta_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_glazed_terracotta',item:'minecraft:orange_glazed_terracotta',group:18}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_wall_banner","damaged_anvil","gray_glazed_terracotta","gray_wall_banner","green_glazed_terracotta","green_wall_banner","jack_o_lantern","light_blue_glazed_terracotta","light_blue_wall_banner","light_gray_glazed_terracotta","light_gray_wall_banner","lime_glazed_terracotta","lime_wall_banner","loom","magenta_glazed_terracotta","magenta_wall_banner","orange_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_wall_banner',item:'minecraft:orange_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_glazed_terracotta',item:'minecraft:pink_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_wall_banner","pink_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_wall_banner',item:'minecraft:pink_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_glazed_terracotta',item:'minecraft:purple_glazed_terracotta',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_wall_banner","pink_glazed_terracotta","pink_wall_banner","purple_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_wall_banner',item:'minecraft:purple_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_glazed_terracotta',item:'minecraft:red_glazed_terracotta',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_wall_banner","red_glazed_terracotta"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_wall_banner',item:'minecraft:red_banner',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_wall_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_wall_torch',item:'minecraft:soul_torch',group:18}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_wall_banner","pink_glazed_terracotta","pink_wall_banner","purple_glazed_terracotta","purple_wall_banner","red_glazed_terracotta","red_wall_banner","soul_wall_torch"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:stonecutter',item:'minecraft:stonecutter',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stonecutter"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wall_torch',item:'minecraft:torch',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stonecutter","wall_torch"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_glazed_terracotta',item:'minecraft:white_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_wall_banner',item:'minecraft:white_banner',group:18}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stonecutter","wall_torch","white_glazed_terracotta","white_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_glazed_terracotta',item:'minecraft:yellow_glazed_terracotta',group:18}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_glazed_terracotta"]}}}]},{"type":"loot_table","value":"bs.block:get/1","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_wall_banner',item:'minecraft:yellow_banner',group:18}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_glazed_terracotta","yellow_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/35","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bamboo',item:'minecraft:bamboo',group:19}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/37","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:barrel',item:'minecraft:barrel',group:20}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["barrel"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:barrier',item:'minecraft:barrier',group:21}"}]}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_pressure_plate","oak_pressure_plate","pale_oak_pressure_plate","polished_blackstone_pressure_plate","spruce_pressure_plate","stone_pressure_plate","warped_pressure_plate","acacia_sapling","birch_sapling","cherry_sapling","dark_oak_sapling","jungle_sapling","oak_sapling","pale_oak_sapling","spruce_sapling","acacia_sign","bamboo_sign","birch_sign","cherry_sign","crimson_sign","dark_oak_sign","jungle_sign","mangrove_sign","oak_sign","pale_oak_sign","spruce_sign","warped_sign","acacia_slab","andesite_slab","bamboo_mosaic_slab","bamboo_slab","birch_slab","blackstone_slab","brick_slab","cherry_slab","cobbled_deepslate_slab","cobblestone_slab","crimson_slab","cut_copper_slab","cut_red_sandstone_slab","cut_sandstone_slab","dark_oak_slab","dark_prismarine_slab","deepslate_brick_slab","deepslate_tile_slab","diorite_slab","end_stone_brick_slab","exposed_cut_copper_slab","granite_slab","jungle_slab","mangrove_slab","mossy_cobblestone_slab","mossy_stone_brick_slab","mud_brick_slab","nether_brick_slab","oak_slab","oxidized_cut_copper_slab","pale_oak_slab","petrified_oak_slab","polished_andesite_slab","polished_blackstone_brick_slab","polished_blackstone_slab","polished_deepslate_slab","polished_diorite_slab","polished_granite_slab","polished_tuff_slab","prismarine_brick_slab","prismarine_slab","purpur_slab","quartz_slab","red_nether_brick_slab","red_sandstone_slab","sandstone_slab","smooth_quartz_slab","smooth_red_sandstone_slab","smooth_sandstone_slab","smooth_stone_slab","spruce_slab","stone_brick_slab","stone_slab","tuff_brick_slab","tuff_slab","warped_slab","waxed_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","weathered_cut_copper_slab","acacia_stairs","andesite_stairs","bamboo_mosaic_stairs","bamboo_stairs","birch_stairs","blackstone_stairs","brick_stairs","cherry_stairs","cobbled_deepslate_stairs","cobblestone_stairs","crimson_stairs","cut_copper_stairs","dark_oak_stairs","dark_prismarine_stairs","deepslate_brick_stairs","deepslate_tile_stairs","diorite_stairs","end_stone_brick_stairs","exposed_cut_copper_stairs","granite_stairs","jungle_stairs","mangrove_stairs","mossy_cobblestone_stairs","mossy_stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","oak_stairs","oxidized_cut_copper_stairs","pale_oak_stairs","polished_andesite_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","polished_deepslate_stairs","polished_diorite_stairs","polished_granite_stairs","polished_tuff_stairs","prismarine_brick_stairs","prismarine_stairs","purpur_stairs","quartz_stairs","red_nether_brick_stairs","red_sandstone_stairs","sandstone_stairs","smooth_quartz_stairs","smooth_red_sandstone_stairs","smooth_sandstone_stairs","spruce_stairs","stone_brick_stairs","stone_stairs","tuff_brick_stairs","tuff_stairs","warped_stairs","waxed_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","weathered_cut_copper_stairs","acacia_trapdoor","bamboo_trapdoor","birch_trapdoor","cherry_trapdoor","copper_trapdoor","crimson_trapdoor","dark_oak_trapdoor","exposed_copper_trapdoor","iron_trapdoor","jungle_trapdoor","mangrove_trapdoor","oak_trapdoor","oxidized_copper_trapdoor","pale_oak_trapdoor","spruce_trapdoor","warped_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","weathered_copper_trapdoor","acacia_wall_hanging_sign","acacia_wall_sign","bamboo_wall_hanging_sign","bamboo_wall_sign","big_dripleaf_stem","birch_wall_hanging_sign","birch_wall_sign","cherry_wall_hanging_sign","cherry_wall_sign","crimson_wall_hanging_sign","crimson_wall_sign","dark_oak_wall_hanging_sign","dark_oak_wall_sign","ender_chest","jungle_wall_hanging_sign","jungle_wall_sign","ladder","mangrove_wall_hanging_sign","mangrove_wall_sign","oak_wall_hanging_sign","oak_wall_sign","pale_oak_wall_hanging_sign","pale_oak_wall_sign","spruce_wall_hanging_sign","spruce_wall_sign","warped_wall_hanging_sign","warped_wall_sign","activator_rail","detector_rail","powered_rail","amethyst_cluster","large_amethyst_bud","medium_amethyst_bud","small_amethyst_bud","andesite_wall","blackstone_wall","brick_wall","cobbled_deepslate_wall","cobblestone_wall","deepslate_brick_wall","deepslate_tile_wall","diorite_wall","end_stone_brick_wall","granite_wall","mossy_cobblestone_wall","mossy_stone_brick_wall","mud_brick_wall","nether_brick_wall","polished_blackstone_brick_wall","polished_blackstone_wall","polished_deepslate_wall","polished_tuff_wall","prismarine_wall","red_nether_brick_wall","red_sandstone_wall","sandstone_wall","stone_brick_wall","tuff_brick_wall","tuff_wall","anvil","attached_melon_stem","attached_pumpkin_stem","black_glazed_terracotta","black_wall_banner","blue_glazed_terracotta","blue_wall_banner","brown_glazed_terracotta","brown_wall_banner","carved_pumpkin","chipped_anvil","cyan_glazed_terracotta","cyan_wall_banner","damaged_anvil","gray_glazed_terracotta","gray_wall_banner","green_glazed_terracotta","green_wall_banner","jack_o_lantern","light_blue_glazed_terracotta","light_blue_wall_banner","light_gray_glazed_terracotta","light_gray_wall_banner","lime_glazed_terracotta","lime_wall_banner","loom","magenta_glazed_terracotta","magenta_wall_banner","orange_glazed_terracotta","orange_wall_banner","pink_glazed_terracotta","pink_wall_banner","purple_glazed_terracotta","purple_wall_banner","red_glazed_terracotta","red_wall_banner","soul_wall_torch","stonecutter","wall_torch","white_glazed_terracotta","white_wall_banner","yellow_glazed_terracotta","yellow_wall_banner","bamboo","barrel","barrier"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_grate',item:'minecraft:copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_grate',item:'minecraft:exposed_copper_grate',group:21}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate","exposed_copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:hanging_roots',item:'minecraft:hanging_roots',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hanging_roots"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:heavy_core',item:'minecraft:heavy_core',group:21}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate","exposed_copper_grate","hanging_roots","heavy_core"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_roots',item:'minecraft:mangrove_roots',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_roots"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_grate',item:'minecraft:oxidized_copper_grate',group:21}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_roots","oxidized_copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_grate',item:'minecraft:waxed_copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_grate',item:'minecraft:waxed_exposed_copper_grate',group:21}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate","exposed_copper_grate","hanging_roots","heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_grate',item:'minecraft:waxed_oxidized_copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_grate',item:'minecraft:waxed_weathered_copper_grate',group:21}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_grate","waxed_weathered_copper_grate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_grate',item:'minecraft:weathered_copper_grate',group:21}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_grate"]}}}]},{"type":"loot_table","value":"bs.block:get/38","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bee_nest',item:'minecraft:bee_nest',group:22}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/38","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:beehive',item:'minecraft:beehive',group:22}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["beehive"]}}}]},{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:beetroots',item:'minecraft:beetroot_seeds',group:23}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["beehive","beetroots"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:frosted_ice',item:'None',group:23}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["frosted_ice"]}}}]},{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_wart',item:'minecraft:nether_wart',group:23}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate","exposed_copper_grate","hanging_roots","heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/39","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sweet_berry_bush',item:'minecraft:sweet_berries',group:23}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sweet_berry_bush"]}}}]},{"type":"loot_table","value":"bs.block:get/40","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bell',item:'minecraft:bell',group:24}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sweet_berry_bush","bell"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/41","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:big_dripleaf',item:'minecraft:big_dripleaf',group:25}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["big_dripleaf"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_banner',item:'minecraft:black_banner',group:26}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sweet_berry_bush","bell","big_dripleaf","black_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_banner',item:'minecraft:blue_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_banner',item:'minecraft:brown_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_banner","brown_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_banner',item:'minecraft:cyan_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cyan_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_banner',item:'minecraft:gray_banner',group:26}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sweet_berry_bush","bell","big_dripleaf","black_banner","blue_banner","brown_banner","cyan_banner","gray_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_banner',item:'minecraft:green_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_banner',item:'minecraft:light_blue_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_banner","light_blue_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_banner',item:'minecraft:light_gray_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_banner',item:'minecraft:lime_banner',group:26}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_banner","light_blue_banner","light_gray_banner","lime_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_banner',item:'minecraft:magenta_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_banner',item:'minecraft:orange_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_banner","orange_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_banner',item:'minecraft:pink_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_banner',item:'minecraft:purple_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_banner',item:'minecraft:red_banner',group:26}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate","exposed_copper_grate","hanging_roots","heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart","sweet_berry_bush","bell","big_dripleaf","black_banner","blue_banner","brown_banner","cyan_banner","gray_banner","green_banner","light_blue_banner","light_gray_banner","lime_banner","magenta_banner","orange_banner","pink_banner","purple_banner","red_banner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_banner',item:'minecraft:white_banner',group:26}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_banner"]}}}]},{"type":"loot_table","value":"bs.block:get/42","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_banner',item:'minecraft:yellow_banner',group:26}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_banner","yellow_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_bed',item:'minecraft:black_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_bed',item:'minecraft:blue_bed',group:27}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_banner","yellow_banner","black_bed","blue_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_bed',item:'minecraft:brown_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_bed',item:'minecraft:cyan_bed',group:27}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_bed","cyan_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_bed',item:'minecraft:gray_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_bed',item:'minecraft:green_bed',group:27}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_banner","yellow_banner","black_bed","blue_bed","brown_bed","cyan_bed","gray_bed","green_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_bed',item:'minecraft:light_blue_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_bed',item:'minecraft:light_gray_bed',group:27}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_bed","light_gray_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_bed',item:'minecraft:lime_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_bed',item:'minecraft:magenta_bed',group:27}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_bed","light_gray_bed","lime_bed","magenta_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_bed',item:'minecraft:orange_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_bed',item:'minecraft:pink_bed',group:27}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_bed","pink_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_bed',item:'minecraft:purple_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_bed',item:'minecraft:red_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_bed',item:'minecraft:white_bed',group:27}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_banner","yellow_banner","black_bed","blue_bed","brown_bed","cyan_bed","gray_bed","green_bed","light_blue_bed","light_gray_bed","lime_bed","magenta_bed","orange_bed","pink_bed","purple_bed","red_bed","white_bed"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/44","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_bed',item:'minecraft:yellow_bed',group:27}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_bed"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_candle',item:'minecraft:black_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_bed","black_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_candle',item:'minecraft:blue_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_candle',item:'minecraft:brown_candle',group:28}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_bed","black_candle","blue_candle","brown_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:candle',item:'minecraft:candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_candle',item:'minecraft:cyan_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle","cyan_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_candle',item:'minecraft:gray_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["gray_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_candle',item:'minecraft:green_candle',group:28}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_bed","black_candle","blue_candle","brown_candle","candle","cyan_candle","gray_candle","green_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_candle',item:'minecraft:light_blue_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_candle',item:'minecraft:light_gray_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_candle","light_gray_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_candle',item:'minecraft:lime_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lime_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_candle',item:'minecraft:magenta_candle',group:28}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_blue_candle","light_gray_candle","lime_candle","magenta_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_candle',item:'minecraft:orange_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_candle',item:'minecraft:pink_candle',group:28}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_candle","pink_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_candle',item:'minecraft:purple_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_candle"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_candle',item:'minecraft:red_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_candle',item:'minecraft:white_candle',group:28}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate","exposed_copper_grate","hanging_roots","heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart","sweet_berry_bush","bell","big_dripleaf","black_banner","blue_banner","brown_banner","cyan_banner","gray_banner","green_banner","light_blue_banner","light_gray_banner","lime_banner","magenta_banner","orange_banner","pink_banner","purple_banner","red_banner","white_banner","yellow_banner","black_bed","blue_bed","brown_bed","cyan_bed","gray_bed","green_bed","light_blue_bed","light_gray_bed","lime_bed","magenta_bed","orange_bed","pink_bed","purple_bed","red_bed","white_bed","yellow_bed","black_candle","blue_candle","brown_candle","candle","cyan_candle","gray_candle","green_candle","light_blue_candle","light_gray_candle","lime_candle","magenta_candle","orange_candle","pink_candle","purple_candle","red_candle","white_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/46","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_candle',item:'minecraft:yellow_candle',group:28}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle","black_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["blue_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_candle_cake',item:'None',group:29}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle","black_candle_cake","blue_candle_cake","brown_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle_cake","cyan_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:deepslate_redstone_ore',item:'minecraft:deepslate_redstone_ore',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["deepslate_redstone_ore"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_candle_cake',item:'None',group:29}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle","black_candle_cake","blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_candle_cake","light_blue_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_candle_cake',item:'None',group:29}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_candle_cake","light_blue_candle_cake","light_gray_candle_cake","lime_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_candle_cake',item:'None',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_candle_cake","orange_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_candle_cake',item:'None',group:29}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle","black_candle_cake","blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake","green_candle_cake","light_blue_candle_cake","light_gray_candle_cake","lime_candle_cake","magenta_candle_cake","orange_candle_cake","pink_candle_cake","purple_candle_cake","red_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_lamp',item:'minecraft:redstone_lamp',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_lamp"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_ore',item:'minecraft:redstone_ore',group:29}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_lamp","redstone_ore"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_candle_cake',item:'None',group:29}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_candle_cake"]}}}]},{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_candle_cake',item:'None',group:29}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_lamp","redstone_ore","white_candle_cake","yellow_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:black_shulker_box',item:'minecraft:black_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blue_shulker_box',item:'minecraft:blue_shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["black_shulker_box","blue_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_shulker_box',item:'minecraft:brown_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cyan_shulker_box',item:'minecraft:cyan_shulker_box',group:30}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_lamp","redstone_ore","white_candle_cake","yellow_candle_cake","black_shulker_box","blue_shulker_box","brown_shulker_box","cyan_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_rod',item:'minecraft:end_rod',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_rod"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:gray_shulker_box',item:'minecraft:gray_shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_rod","gray_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:green_shulker_box',item:'minecraft:green_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["green_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_blue_shulker_box',item:'minecraft:light_blue_shulker_box',group:30}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_rod","gray_shulker_box","green_shulker_box","light_blue_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_gray_shulker_box',item:'minecraft:light_gray_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lime_shulker_box',item:'minecraft:lime_shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_gray_shulker_box","lime_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:magenta_shulker_box',item:'minecraft:magenta_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["magenta_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:orange_shulker_box',item:'minecraft:orange_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["orange_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_shulker_box',item:'minecraft:pink_shulker_box',group:30}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_candle","black_candle_cake","blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake","green_candle_cake","light_blue_candle_cake","light_gray_candle_cake","lime_candle_cake","magenta_candle_cake","orange_candle_cake","pink_candle_cake","purple_candle_cake","red_candle_cake","redstone_lamp","redstone_ore","white_candle_cake","yellow_candle_cake","black_shulker_box","blue_shulker_box","brown_shulker_box","cyan_shulker_box","end_rod","gray_shulker_box","green_shulker_box","light_blue_shulker_box","light_gray_shulker_box","lime_shulker_box","magenta_shulker_box","orange_shulker_box","pink_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:purple_shulker_box',item:'minecraft:purple_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_shulker_box',item:'minecraft:red_shulker_box',group:30}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_shulker_box","red_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:shulker_box',item:'minecraft:shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:white_shulker_box',item:'minecraft:white_shulker_box',group:30}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_shulker_box","red_shulker_box","shulker_box","white_shulker_box"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/36","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:yellow_shulker_box',item:'minecraft:yellow_shulker_box',group:30}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_shulker_box"]}}}]},{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:blast_furnace',item:'minecraft:blast_furnace',group:31}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["yellow_shulker_box","blast_furnace"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:furnace',item:'minecraft:furnace',group:31}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["furnace"]}}}]},{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:smoker',item:'minecraft:smoker',group:31}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_shulker_box","red_shulker_box","shulker_box","white_shulker_box","yellow_shulker_box","blast_furnace","furnace","smoker"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral',item:'minecraft:brain_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral_fan',item:'minecraft:brain_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral","brain_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral',item:'minecraft:bubble_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bubble_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral_fan',item:'minecraft:bubble_coral_fan',group:32}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral","brain_coral_fan","bubble_coral","bubble_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:conduit',item:'minecraft:conduit',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["conduit"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral',item:'minecraft:dead_brain_coral',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["conduit","dead_brain_coral"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral_fan',item:'minecraft:dead_brain_coral_fan',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_brain_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral',item:'minecraft:dead_bubble_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral_fan',item:'minecraft:dead_bubble_coral_fan',group:32}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["purple_shulker_box","red_shulker_box","shulker_box","white_shulker_box","yellow_shulker_box","blast_furnace","furnace","smoker","brain_coral","brain_coral_fan","bubble_coral","bubble_coral_fan","conduit","dead_brain_coral","dead_brain_coral_fan","dead_bubble_coral","dead_bubble_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral',item:'minecraft:dead_fire_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral_fan',item:'minecraft:dead_fire_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral","dead_fire_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral',item:'minecraft:dead_horn_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral_fan',item:'minecraft:dead_horn_coral_fan',group:32}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral","dead_fire_coral_fan","dead_horn_coral","dead_horn_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral',item:'minecraft:dead_tube_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral_fan',item:'minecraft:dead_tube_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral","dead_tube_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral',item:'minecraft:fire_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral_fan',item:'minecraft:fire_coral_fan',group:32}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_fire_coral","dead_fire_coral_fan","dead_horn_coral","dead_horn_coral_fan","dead_tube_coral","dead_tube_coral_fan","fire_coral","fire_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral',item:'minecraft:horn_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["horn_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral_fan',item:'minecraft:horn_coral_fan',group:32}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["horn_coral","horn_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral',item:'minecraft:tube_coral',group:32}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral"]}}}]},{"type":"loot_table","value":"bs.block:get/7","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral_fan',item:'minecraft:tube_coral_fan',group:32}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["horn_coral","horn_coral_fan","tube_coral","tube_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brain_coral_wall_fan',item:'minecraft:brain_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_coral_wall_fan',item:'minecraft:bubble_coral_fan',group:33}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brain_coral_wall_fan","bubble_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_brain_coral_wall_fan',item:'minecraft:dead_brain_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_brain_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_bubble_coral_wall_fan',item:'minecraft:dead_bubble_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_bubble_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_fire_coral_wall_fan',item:'minecraft:dead_fire_coral_fan',group:33}"}]}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["copper_grate","exposed_copper_grate","hanging_roots","heavy_core","mangrove_roots","oxidized_copper_grate","waxed_copper_grate","waxed_exposed_copper_grate","waxed_oxidized_copper_grate","waxed_weathered_copper_grate","weathered_copper_grate","bee_nest","beehive","beetroots","frosted_ice","nether_wart","sweet_berry_bush","bell","big_dripleaf","black_banner","blue_banner","brown_banner","cyan_banner","gray_banner","green_banner","light_blue_banner","light_gray_banner","lime_banner","magenta_banner","orange_banner","pink_banner","purple_banner","red_banner","white_banner","yellow_banner","black_bed","blue_bed","brown_bed","cyan_bed","gray_bed","green_bed","light_blue_bed","light_gray_bed","lime_bed","magenta_bed","orange_bed","pink_bed","purple_bed","red_bed","white_bed","yellow_bed","black_candle","blue_candle","brown_candle","candle","cyan_candle","gray_candle","green_candle","light_blue_candle","light_gray_candle","lime_candle","magenta_candle","orange_candle","pink_candle","purple_candle","red_candle","white_candle","yellow_candle","black_candle_cake","blue_candle_cake","brown_candle_cake","candle_cake","cyan_candle_cake","deepslate_redstone_ore","gray_candle_cake","green_candle_cake","light_blue_candle_cake","light_gray_candle_cake","lime_candle_cake","magenta_candle_cake","orange_candle_cake","pink_candle_cake","purple_candle_cake","red_candle_cake","redstone_lamp","redstone_ore","white_candle_cake","yellow_candle_cake","black_shulker_box","blue_shulker_box","brown_shulker_box","cyan_shulker_box","end_rod","gray_shulker_box","green_shulker_box","light_blue_shulker_box","light_gray_shulker_box","lime_shulker_box","magenta_shulker_box","orange_shulker_box","pink_shulker_box","purple_shulker_box","red_shulker_box","shulker_box","white_shulker_box","yellow_shulker_box","blast_furnace","furnace","smoker","brain_coral","brain_coral_fan","bubble_coral","bubble_coral_fan","conduit","dead_brain_coral","dead_brain_coral_fan","dead_bubble_coral","dead_bubble_coral_fan","dead_fire_coral","dead_fire_coral_fan","dead_horn_coral","dead_horn_coral_fan","dead_tube_coral","dead_tube_coral_fan","fire_coral","fire_coral_fan","horn_coral","horn_coral_fan","tube_coral","tube_coral_fan","brain_coral_wall_fan","bubble_coral_wall_fan","dead_brain_coral_wall_fan","dead_bubble_coral_wall_fan","dead_fire_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_horn_coral_wall_fan',item:'minecraft:dead_horn_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dead_tube_coral_wall_fan',item:'minecraft:dead_tube_coral_fan',group:33}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire_coral_wall_fan',item:'minecraft:fire_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:horn_coral_wall_fan',item:'minecraft:horn_coral_fan',group:33}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/21","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tube_coral_wall_fan',item:'minecraft:tube_coral_fan',group:33}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.block:get/51","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brewing_stand',item:'minecraft:brewing_stand',group:34}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tube_coral_wall_fan","brewing_stand"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:brown_mushroom_block',item:'minecraft:brown_mushroom_block',group:35}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom_block"]}}}]},{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mushroom_stem',item:'minecraft:mushroom_stem',group:35}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:red_mushroom_block',item:'minecraft:red_mushroom_block',group:35}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_mushroom_block"]}}}]},{"type":"loot_table","value":"bs.block:get/58","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:bubble_column',item:'None',group:36}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_mushroom_block","bubble_column"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/59","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cactus',item:'minecraft:cactus',group:37}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cactus"]}}}]},{"type":"loot_table","value":"bs.block:get/59","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sugar_cane',item:'minecraft:sugar_cane',group:37}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["red_mushroom_block","bubble_column","cactus","sugar_cane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/60","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cake',item:'minecraft:cake',group:38}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cake"]}}}]},{"type":"loot_table","value":"bs.block:get/62","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:calibrated_sculk_sensor',item:'minecraft:calibrated_sculk_sensor',group:39}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cake","calibrated_sculk_sensor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/64","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:campfire',item:'minecraft:campfire',group:40}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["campfire"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/64","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_campfire',item:'minecraft:soul_campfire',group:40}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_campfire"]}}}]},{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:carrots',item:'minecraft:carrot',group:41}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem","red_mushroom_block","bubble_column","cactus","sugar_cane","cake","calibrated_sculk_sensor","campfire","soul_campfire","carrots"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:melon_stem',item:'minecraft:pumpkin_seeds',group:41}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["melon_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:potatoes',item:'minecraft:potato',group:41}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["melon_stem","potatoes"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pumpkin_stem',item:'minecraft:pumpkin_seeds',group:41}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pumpkin_stem"]}}}]},{"type":"loot_table","value":"bs.block:get/65","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wheat',item:'minecraft:wheat_seeds',group:41}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["melon_stem","potatoes","pumpkin_stem","wheat"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/67","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cave_vines',item:'minecraft:glow_berries',group:42}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cave_vines"]}}}]},{"type":"loot_table","value":"bs.block:get/68","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cave_vines_plant',item:'minecraft:glow_berries',group:43}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cave_vines","cave_vines_plant"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/69","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chain',item:'minecraft:chain',group:44}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chain"]}}}]},{"type":"loot_table","value":"bs.block:get/70","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chain_command_block',item:'minecraft:chain_command_block',group:45}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["melon_stem","potatoes","pumpkin_stem","wheat","cave_vines","cave_vines_plant","chain","chain_command_block"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/70","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:command_block',item:'minecraft:command_block',group:45}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["command_block"]}}}]},{"type":"loot_table","value":"bs.block:get/70","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:repeating_command_block',item:'minecraft:repeating_command_block',group:45}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["command_block","repeating_command_block"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/71","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chest',item:'minecraft:chest',group:46}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chest"]}}}]},{"type":"loot_table","value":"bs.block:get/71","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:trapped_chest',item:'minecraft:trapped_chest',group:46}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["command_block","repeating_command_block","chest","trapped_chest"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/77","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chiseled_bookshelf',item:'minecraft:chiseled_bookshelf',group:47}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_bookshelf"]}}}]},{"type":"loot_table","value":"bs.block:get/78","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chorus_flower',item:'minecraft:chorus_flower',group:48}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chiseled_bookshelf","chorus_flower"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/57","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:chorus_plant',item:'minecraft:chorus_plant',group:49}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chorus_plant"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/79","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:cocoa',item:'minecraft:cocoa_beans',group:50}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cocoa"]}}}]},{"type":"loot_table","value":"bs.block:get/80","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:comparator',item:'minecraft:comparator',group:51}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem","red_mushroom_block","bubble_column","cactus","sugar_cane","cake","calibrated_sculk_sensor","campfire","soul_campfire","carrots","melon_stem","potatoes","pumpkin_stem","wheat","cave_vines","cave_vines_plant","chain","chain_command_block","command_block","repeating_command_block","chest","trapped_chest","chiseled_bookshelf","chorus_flower","chorus_plant","cocoa","comparator"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/81","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:composter',item:'minecraft:composter',group:52}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:copper_bulb',item:'minecraft:copper_bulb',group:53}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter","copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:exposed_copper_bulb',item:'minecraft:exposed_copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["exposed_copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:oxidized_copper_bulb',item:'minecraft:oxidized_copper_bulb',group:53}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter","copper_bulb","exposed_copper_bulb","oxidized_copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_copper_bulb',item:'minecraft:waxed_copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_exposed_copper_bulb',item:'minecraft:waxed_exposed_copper_bulb',group:53}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_copper_bulb","waxed_exposed_copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_oxidized_copper_bulb',item:'minecraft:waxed_oxidized_copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["waxed_oxidized_copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:waxed_weathered_copper_bulb',item:'minecraft:waxed_weathered_copper_bulb',group:53}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter","copper_bulb","exposed_copper_bulb","oxidized_copper_bulb","waxed_copper_bulb","waxed_exposed_copper_bulb","waxed_oxidized_copper_bulb","waxed_weathered_copper_bulb"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/82","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weathered_copper_bulb',item:'minecraft:weathered_copper_bulb',group:53}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_bulb"]}}}]},{"type":"loot_table","value":"bs.block:get/85","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:crafter',item:'minecraft:crafter',group:54}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_bulb","crafter"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/86","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:creaking_heart',item:'minecraft:creaking_heart',group:55}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["creaking_heart"]}}}]},{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:creeper_head',item:'minecraft:creeper_head',group:56}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weathered_copper_bulb","crafter","creaking_heart","creeper_head"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dragon_head',item:'minecraft:dragon_head',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_head"]}}}]},{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piglin_head',item:'minecraft:piglin_head',group:56}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_head","piglin_head"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:player_head',item:'minecraft:player_head',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["player_head"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:skeleton_skull',item:'minecraft:skeleton_skull',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["skeleton_skull"]}}}]},{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wither_skeleton_skull',item:'minecraft:wither_skeleton_skull',group:56}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter","copper_bulb","exposed_copper_bulb","oxidized_copper_bulb","waxed_copper_bulb","waxed_exposed_copper_bulb","waxed_oxidized_copper_bulb","waxed_weathered_copper_bulb","weathered_copper_bulb","crafter","creaking_heart","creeper_head","dragon_head","piglin_head","player_head","skeleton_skull","wither_skeleton_skull"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/87","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:zombie_head',item:'minecraft:zombie_head',group:56}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["zombie_head"]}}}]},{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:creeper_wall_head',item:'minecraft:creeper_head',group:57}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["zombie_head","creeper_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dragon_wall_head',item:'minecraft:dragon_head',group:57}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dragon_wall_head"]}}}]},{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piglin_wall_head',item:'minecraft:piglin_head',group:57}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["zombie_head","creeper_wall_head","dragon_wall_head","piglin_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:player_wall_head',item:'minecraft:player_head',group:57}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["player_wall_head"]}}}]},{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:skeleton_wall_skull',item:'minecraft:skeleton_skull',group:57}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["player_wall_head","skeleton_wall_skull"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:wither_skeleton_wall_skull',item:'minecraft:wither_skeleton_skull',group:57}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wither_skeleton_wall_skull"]}}}]},{"type":"loot_table","value":"bs.block:get/2","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:zombie_wall_head',item:'minecraft:zombie_head',group:57}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["zombie_head","creeper_wall_head","dragon_wall_head","piglin_wall_head","player_wall_head","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/89","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:daylight_detector',item:'minecraft:daylight_detector',group:58}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["daylight_detector"]}}}]},{"type":"loot_table","value":"bs.block:get/90","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:decorated_pot',item:'minecraft:decorated_pot',group:59}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["daylight_detector","decorated_pot"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/91","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dispenser',item:'minecraft:dispenser',group:60}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dispenser"]}}}]},{"type":"loot_table","value":"bs.block:get/91","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:dropper',item:'minecraft:dropper',group:60}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["daylight_detector","decorated_pot","dispenser","dropper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/92","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:end_portal_frame',item:'minecraft:end_portal_frame',group:61}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_portal_frame"]}}}]},{"type":"loot_table","value":"bs.block:get/93","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:farmland',item:'minecraft:farmland',group:62}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_portal_frame","farmland"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/94","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:fire',item:'None',group:63}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["fire"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/96","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:glow_lichen',item:'minecraft:glow_lichen',group:64}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glow_lichen"]}}}]},{"type":"loot_table","value":"bs.block:get/96","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_vein',item:'minecraft:sculk_vein',group:64}"}]}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_horn_coral_wall_fan","dead_tube_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","tube_coral_wall_fan","brewing_stand","brown_mushroom_block","mushroom_stem","red_mushroom_block","bubble_column","cactus","sugar_cane","cake","calibrated_sculk_sensor","campfire","soul_campfire","carrots","melon_stem","potatoes","pumpkin_stem","wheat","cave_vines","cave_vines_plant","chain","chain_command_block","command_block","repeating_command_block","chest","trapped_chest","chiseled_bookshelf","chorus_flower","chorus_plant","cocoa","comparator","composter","copper_bulb","exposed_copper_bulb","oxidized_copper_bulb","waxed_copper_bulb","waxed_exposed_copper_bulb","waxed_oxidized_copper_bulb","waxed_weathered_copper_bulb","weathered_copper_bulb","crafter","creaking_heart","creeper_head","dragon_head","piglin_head","player_head","skeleton_skull","wither_skeleton_skull","zombie_head","creeper_wall_head","dragon_wall_head","piglin_wall_head","player_wall_head","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","daylight_detector","decorated_pot","dispenser","dropper","end_portal_frame","farmland","fire","glow_lichen","sculk_vein"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/97","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:grass_block',item:'minecraft:grass_block',group:65}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grass_block"]}}}]},{"type":"loot_table","value":"bs.block:get/97","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mycelium',item:'minecraft:mycelium',group:65}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grass_block","mycelium"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/97","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:podzol',item:'minecraft:podzol',group:65}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["podzol"]}}}]},{"type":"loot_table","value":"bs.block:get/98","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:grindstone',item:'minecraft:grindstone',group:66}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grass_block","mycelium","podzol","grindstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/88","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:heavy_weighted_pressure_plate',item:'minecraft:heavy_weighted_pressure_plate',group:67}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_weighted_pressure_plate"]}}}]},{"type":"loot_table","value":"bs.block:get/88","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light_weighted_pressure_plate',item:'minecraft:light_weighted_pressure_plate',group:67}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["heavy_weighted_pressure_plate","light_weighted_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/88","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:target',item:'minecraft:target',group:67}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["target"]}}}]},{"type":"loot_table","value":"bs.block:get/100","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:hopper',item:'minecraft:hopper',group:68}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grass_block","mycelium","podzol","grindstone","heavy_weighted_pressure_plate","light_weighted_pressure_plate","target","hopper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/83","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jigsaw',item:'minecraft:jigsaw',group:69}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jigsaw"]}}}]},{"type":"loot_table","value":"bs.block:get/101","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:jukebox',item:'minecraft:jukebox',group:70}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jigsaw","jukebox"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/66","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:kelp',item:'minecraft:kelp',group:71}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["kelp"]}}}]},{"type":"loot_table","value":"bs.block:get/66","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:twisting_vines',item:'minecraft:twisting_vines',group:71}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["jigsaw","jukebox","kelp","twisting_vines"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/66","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:weeping_vines',item:'minecraft:weeping_vines',group:71}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weeping_vines"]}}}]},{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lantern',item:'minecraft:lantern',group:72}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weeping_vines","lantern"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/102","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:soul_lantern',item:'minecraft:soul_lantern',group:72}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_lantern"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:large_fern',item:'minecraft:large_fern',group:73}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_fern"]}}}]},{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lilac',item:'minecraft:lilac',group:73}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grass_block","mycelium","podzol","grindstone","heavy_weighted_pressure_plate","light_weighted_pressure_plate","target","hopper","jigsaw","jukebox","kelp","twisting_vines","weeping_vines","lantern","soul_lantern","large_fern","lilac"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:peony',item:'minecraft:peony',group:73}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["peony"]}}}]},{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pitcher_plant',item:'minecraft:pitcher_plant',group:73}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["peony","pitcher_plant"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:rose_bush',item:'minecraft:rose_bush',group:73}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["rose_bush"]}}}]},{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sunflower',item:'minecraft:sunflower',group:73}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["peony","pitcher_plant","rose_bush","sunflower"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tall_grass',item:'minecraft:tall_grass',group:73}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tall_grass"]}}}]},{"type":"loot_table","value":"bs.block:get/103","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tall_seagrass',item:'None',group:73}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tall_grass","tall_seagrass"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/104","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lava',item:'minecraft:lava_bucket',group:74}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lava"]}}}]},{"type":"loot_table","value":"bs.block:get/104","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:water',item:'minecraft:water_bucket',group:74}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["peony","pitcher_plant","rose_bush","sunflower","tall_grass","tall_seagrass","lava","water"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/105","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lectern',item:'minecraft:lectern',group:75}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lectern"]}}}]},{"type":"loot_table","value":"bs.block:get/106","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:light',item:'minecraft:light',group:76}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lectern","light"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/107","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:lightning_rod',item:'minecraft:lightning_rod',group:77}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lightning_rod"]}}}]},{"type":"loot_table","value":"bs.block:get/109","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:mangrove_propagule',item:'minecraft:mangrove_propagule',group:78}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lectern","light","lightning_rod","mangrove_propagule"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/110","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:moving_piston',item:'None',group:79}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["moving_piston"]}}}]},{"type":"loot_table","value":"bs.block:get/111","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:nether_portal',item:'None',group:80}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["moving_piston","nether_portal"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/113","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:note_block',item:'minecraft:note_block',group:81}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["note_block"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/114","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:observer',item:'minecraft:observer',group:82}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["observer"]}}}]},{"type":"loot_table","value":"bs.block:get/115","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_hanging_moss',item:'minecraft:pale_hanging_moss',group:83}"}]}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grass_block","mycelium","podzol","grindstone","heavy_weighted_pressure_plate","light_weighted_pressure_plate","target","hopper","jigsaw","jukebox","kelp","twisting_vines","weeping_vines","lantern","soul_lantern","large_fern","lilac","peony","pitcher_plant","rose_bush","sunflower","tall_grass","tall_seagrass","lava","water","lectern","light","lightning_rod","mangrove_propagule","moving_piston","nether_portal","note_block","observer","pale_hanging_moss"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/120","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pale_moss_carpet',item:'minecraft:pale_moss_carpet',group:84}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_moss_carpet"]}}}]},{"type":"loot_table","value":"bs.block:get/121","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pink_petals',item:'minecraft:pink_petals',group:85}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_moss_carpet","pink_petals"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/122","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piston',item:'minecraft:piston',group:86}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston"]}}}]},{"type":"loot_table","value":"bs.block:get/122","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sticky_piston',item:'minecraft:sticky_piston',group:86}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_moss_carpet","pink_petals","piston","sticky_piston"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/123","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:piston_head',item:'None',group:87}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston_head"]}}}]},{"type":"loot_table","value":"bs.block:get/124","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pitcher_crop',item:'minecraft:pitcher_pod',group:88}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston_head","pitcher_crop"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/126","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:pointed_dripstone',item:'minecraft:pointed_dripstone',group:89}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pointed_dripstone"]}}}]},{"type":"loot_table","value":"bs.block:get/127","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:powder_snow_cauldron',item:'minecraft:cauldron',group:90}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_moss_carpet","pink_petals","piston","sticky_piston","piston_head","pitcher_crop","pointed_dripstone","powder_snow_cauldron"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/127","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:water_cauldron',item:'minecraft:cauldron',group:90}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["water_cauldron"]}}}]},{"type":"loot_table","value":"bs.block:get/128","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:rail',item:'minecraft:rail',group:91}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["water_cauldron","rail"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/47","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_torch',item:'minecraft:redstone_torch',group:92}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_torch"]}}}]},{"type":"loot_table","value":"bs.block:get/48","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_wall_torch',item:'minecraft:redstone_torch',group:93}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["water_cauldron","rail","redstone_torch","redstone_wall_torch"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/132","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:redstone_wire',item:'minecraft:redstone',group:94}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire"]}}}]},{"type":"loot_table","value":"bs.block:get/134","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:repeater',item:'minecraft:repeater',group:95}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire","repeater"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/135","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:respawn_anchor',item:'minecraft:respawn_anchor',group:96}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["respawn_anchor"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/137","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:scaffolding',item:'minecraft:scaffolding',group:97}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["scaffolding"]}}}]},{"type":"loot_table","value":"bs.block:get/138","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_catalyst',item:'minecraft:sculk_catalyst',group:98}"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_moss_carpet","pink_petals","piston","sticky_piston","piston_head","pitcher_crop","pointed_dripstone","powder_snow_cauldron","water_cauldron","rail","redstone_torch","redstone_wall_torch","redstone_wire","repeater","respawn_anchor","scaffolding","sculk_catalyst"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/140","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_sensor',item:'minecraft:sculk_sensor',group:99}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor"]}}}]},{"type":"loot_table","value":"bs.block:get/142","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sculk_shrieker',item:'minecraft:sculk_shrieker',group:100}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","sculk_shrieker"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/143","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sea_pickle',item:'minecraft:sea_pickle',group:101}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sea_pickle"]}}}]},{"type":"loot_table","value":"bs.block:get/144","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:small_dripleaf',item:'minecraft:small_dripleaf',group:102}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","sculk_shrieker","sea_pickle","small_dripleaf"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/145","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:sniffer_egg',item:'minecraft:sniffer_egg',group:103}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sniffer_egg"]}}}]},{"type":"loot_table","value":"bs.block:get/146","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:snow',item:'minecraft:snow',group:104}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sniffer_egg","snow"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/147","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:structure_block',item:'minecraft:structure_block',group:105}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_block"]}}}]},{"type":"loot_table","value":"bs.block:get/148","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:suspicious_gravel',item:'minecraft:suspicious_gravel',group:106}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","sculk_shrieker","sea_pickle","small_dripleaf","sniffer_egg","snow","structure_block","suspicious_gravel"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/148","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:suspicious_sand',item:'minecraft:suspicious_sand',group:106}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["suspicious_sand"]}}}]},{"type":"loot_table","value":"bs.block:get/149","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tnt',item:'minecraft:tnt',group:107}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["suspicious_sand","tnt"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/150","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:torchflower_crop',item:'minecraft:torchflower_seeds',group:108}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower_crop"]}}}]},{"type":"loot_table","value":"bs.block:get/152","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:trial_spawner',item:'minecraft:trial_spawner',group:109}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["suspicious_sand","tnt","torchflower_crop","trial_spawner"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/155","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tripwire',item:'minecraft:string',group:110}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tripwire"]}}}]},{"type":"loot_table","value":"bs.block:get/156","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:tripwire_hook',item:'minecraft:tripwire_hook',group:111}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tripwire","tripwire_hook"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/157","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:turtle_egg',item:'minecraft:turtle_egg',group:112}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["turtle_egg"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.block:get/159","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:vault',item:'minecraft:vault',group:113}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["vault"]}}}]},{"type":"loot_table","value":"bs.block:get/56","functions":[{"function":"set_custom_data","tag":"{type:'minecraft:vine',item:'minecraft:vine',group:114}"}]}]}]}]}]}]}]}]}]}]}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.block/tags/block/has_state.json b/datapacks/Bookshelf/data/bs.block/tags/block/has_state.json index 2e799343f6..d1d7f6c8c5 100644 --- a/datapacks/Bookshelf/data/bs.block/tags/block/has_state.json +++ b/datapacks/Bookshelf/data/bs.block/tags/block/has_state.json @@ -10,6 +10,7 @@ "minecraft:lever", "minecraft:mangrove_button", "minecraft:oak_button", + "minecraft:pale_oak_button", "minecraft:polished_blackstone_button", "minecraft:spruce_button", "minecraft:stone_button", @@ -27,6 +28,7 @@ "minecraft:mangrove_door", "minecraft:oak_door", "minecraft:oxidized_copper_door", + "minecraft:pale_oak_door", "minecraft:spruce_door", "minecraft:warped_door", "minecraft:waxed_copper_door", @@ -57,6 +59,7 @@ "minecraft:nether_brick_fence", "minecraft:oak_fence", "minecraft:orange_stained_glass_pane", + "minecraft:pale_oak_fence", "minecraft:pink_stained_glass_pane", "minecraft:purple_stained_glass_pane", "minecraft:red_stained_glass_pane", @@ -73,6 +76,7 @@ "minecraft:jungle_fence_gate", "minecraft:mangrove_fence_gate", "minecraft:oak_fence_gate", + "minecraft:pale_oak_fence_gate", "minecraft:spruce_fence_gate", "minecraft:warped_fence_gate", "minecraft:acacia_hanging_sign", @@ -84,6 +88,7 @@ "minecraft:jungle_hanging_sign", "minecraft:mangrove_hanging_sign", "minecraft:oak_hanging_sign", + "minecraft:pale_oak_hanging_sign", "minecraft:spruce_hanging_sign", "minecraft:warped_hanging_sign", "minecraft:acacia_leaves", @@ -95,6 +100,7 @@ "minecraft:jungle_leaves", "minecraft:mangrove_leaves", "minecraft:oak_leaves", + "minecraft:pale_oak_leaves", "minecraft:spruce_leaves", "minecraft:acacia_log", "minecraft:acacia_wood", @@ -120,6 +126,8 @@ "minecraft:oak_log", "minecraft:oak_wood", "minecraft:ochre_froglight", + "minecraft:pale_oak_log", + "minecraft:pale_oak_wood", "minecraft:pearlescent_froglight", "minecraft:polished_basalt", "minecraft:purpur_pillar", @@ -143,6 +151,8 @@ "minecraft:stripped_mangrove_wood", "minecraft:stripped_oak_log", "minecraft:stripped_oak_wood", + "minecraft:stripped_pale_oak_log", + "minecraft:stripped_pale_oak_wood", "minecraft:stripped_spruce_log", "minecraft:stripped_spruce_wood", "minecraft:stripped_warped_hyphae", @@ -159,6 +169,7 @@ "minecraft:jungle_pressure_plate", "minecraft:mangrove_pressure_plate", "minecraft:oak_pressure_plate", + "minecraft:pale_oak_pressure_plate", "minecraft:polished_blackstone_pressure_plate", "minecraft:spruce_pressure_plate", "minecraft:stone_pressure_plate", @@ -169,6 +180,7 @@ "minecraft:dark_oak_sapling", "minecraft:jungle_sapling", "minecraft:oak_sapling", + "minecraft:pale_oak_sapling", "minecraft:spruce_sapling", "minecraft:acacia_sign", "minecraft:bamboo_sign", @@ -179,6 +191,7 @@ "minecraft:jungle_sign", "minecraft:mangrove_sign", "minecraft:oak_sign", + "minecraft:pale_oak_sign", "minecraft:spruce_sign", "minecraft:warped_sign", "minecraft:acacia_slab", @@ -211,6 +224,7 @@ "minecraft:nether_brick_slab", "minecraft:oak_slab", "minecraft:oxidized_cut_copper_slab", + "minecraft:pale_oak_slab", "minecraft:petrified_oak_slab", "minecraft:polished_andesite_slab", "minecraft:polished_blackstone_brick_slab", @@ -269,6 +283,7 @@ "minecraft:nether_brick_stairs", "minecraft:oak_stairs", "minecraft:oxidized_cut_copper_stairs", + "minecraft:pale_oak_stairs", "minecraft:polished_andesite_stairs", "minecraft:polished_blackstone_brick_stairs", "minecraft:polished_blackstone_stairs", @@ -310,6 +325,7 @@ "minecraft:mangrove_trapdoor", "minecraft:oak_trapdoor", "minecraft:oxidized_copper_trapdoor", + "minecraft:pale_oak_trapdoor", "minecraft:spruce_trapdoor", "minecraft:warped_trapdoor", "minecraft:waxed_copper_trapdoor", @@ -338,6 +354,8 @@ "minecraft:mangrove_wall_sign", "minecraft:oak_wall_hanging_sign", "minecraft:oak_wall_sign", + "minecraft:pale_oak_wall_hanging_sign", + "minecraft:pale_oak_wall_sign", "minecraft:spruce_wall_hanging_sign", "minecraft:spruce_wall_sign", "minecraft:warped_wall_hanging_sign", @@ -599,6 +617,7 @@ "minecraft:waxed_weathered_copper_bulb", "minecraft:weathered_copper_bulb", "minecraft:crafter", + "minecraft:creaking_heart", "minecraft:creeper_head", "minecraft:dragon_head", "minecraft:piglin_head", @@ -655,6 +674,8 @@ "minecraft:nether_portal", "minecraft:note_block", "minecraft:observer", + "minecraft:pale_hanging_moss", + "minecraft:pale_moss_carpet", "minecraft:pink_petals", "minecraft:piston", "minecraft:sticky_piston", diff --git a/datapacks/Bookshelf/data/bs.block/tags/function/emit_block_particles.json b/datapacks/Bookshelf/data/bs.block/tags/function/emit_block_particle.json similarity index 86% rename from datapacks/Bookshelf/data/bs.block/tags/function/emit_block_particles.json rename to datapacks/Bookshelf/data/bs.block/tags/function/emit_block_particle.json index 61dfe5c986..0e6dcff2ae 100644 --- a/datapacks/Bookshelf/data/bs.block/tags/function/emit_block_particles.json +++ b/datapacks/Bookshelf/data/bs.block/tags/function/emit_block_particle.json @@ -15,6 +15,6 @@ } }, "values": [ - "bs.block:produce/block_particles/emit_block_particles" + "bs.block:produce/block_particle/emit_block_particle" ] } diff --git a/datapacks/Bookshelf/data/bs.block/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.block/tags/function/exclusive_load.json new file mode 100644 index 0000000000..df97cc21d3 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.block:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.block/tags/function/load.json b/datapacks/Bookshelf/data/bs.block/tags/function/load.json index e28e272ffe..1664ea8ba1 100644 --- a/datapacks/Bookshelf/data/bs.block/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.block/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.block:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.block/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.block/test/__boot__.mcfunction index 73246ca9fb..3f1dbf5f73 100644 --- a/datapacks/Bookshelf/data/bs.block/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.block -# @beforebatch function #bs.block:load +# @beforebatch function #bs.block:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.block/test/fill/random.mcfunction b/datapacks/Bookshelf/data/bs.block/test/fill/random.mcfunction index 0e26fdd7f8..39b7e57b5e 100644 --- a/datapacks/Bookshelf/data/bs.block/test/fill/random.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/test/fill/random.mcfunction @@ -9,22 +9,22 @@ fill ~ ~ ~-1 ~ ~1 ~-1 minecraft:oak_stairs[facing=south] data modify storage bs:in block.fill_random set value {entries:[{type:"minecraft:spruce_stairs"},{block:"minecraft:air"}],masks:[{block:"#minecraft:stairs"}],from:"~-1 ~ ~-1",to:"~1 ~1 ~1"} function #bs.block:fill_random -scoreboard players set #result bs.data 0 -execute if block ~1 ~ ~-1 minecraft:spruce_stairs[facing=west] run scoreboard players add #result bs.data 1 -execute if block ~1 ~ ~ minecraft:spruce_stairs[facing=west] run scoreboard players add #result bs.data 1 -execute if block ~1 ~ ~1 minecraft:spruce_stairs[facing=west] run scoreboard players add #result bs.data 1 -execute if block ~1 ~1 ~-1 minecraft:spruce_stairs[facing=west] run scoreboard players add #result bs.data 1 -execute if block ~1 ~1 ~ minecraft:spruce_stairs[facing=west] run scoreboard players add #result bs.data 1 -execute if block ~1 ~1 ~1 minecraft:spruce_stairs[facing=west] run scoreboard players add #result bs.data 1 -execute if block ~-1 ~ ~-1 minecraft:spruce_stairs[facing=east] run scoreboard players add #result bs.data 1 -execute if block ~-1 ~ ~ minecraft:spruce_stairs[facing=east] run scoreboard players add #result bs.data 1 -execute if block ~-1 ~ ~1 minecraft:spruce_stairs[facing=east] run scoreboard players add #result bs.data 1 -execute if block ~-1 ~1 ~-1 minecraft:spruce_stairs[facing=east] run scoreboard players add #result bs.data 1 -execute if block ~-1 ~1 ~ minecraft:spruce_stairs[facing=east] run scoreboard players add #result bs.data 1 -execute if block ~-1 ~1 ~1 minecraft:spruce_stairs[facing=east] run scoreboard players add #result bs.data 1 -execute if block ~ ~ ~1 minecraft:spruce_stairs[facing=north] run scoreboard players add #result bs.data 1 -execute if block ~ ~1 ~1 minecraft:spruce_stairs[facing=north] run scoreboard players add #result bs.data 1 -execute if block ~ ~ ~-1 minecraft:spruce_stairs[facing=south] run scoreboard players add #result bs.data 1 -execute if block ~ ~1 ~-1 minecraft:spruce_stairs[facing=south] run scoreboard players add #result bs.data 1 +scoreboard players set #c bs.ctx 0 +execute if block ~1 ~ ~-1 minecraft:spruce_stairs[facing=west] run scoreboard players add #c bs.ctx 1 +execute if block ~1 ~ ~ minecraft:spruce_stairs[facing=west] run scoreboard players add #c bs.ctx 1 +execute if block ~1 ~ ~1 minecraft:spruce_stairs[facing=west] run scoreboard players add #c bs.ctx 1 +execute if block ~1 ~1 ~-1 minecraft:spruce_stairs[facing=west] run scoreboard players add #c bs.ctx 1 +execute if block ~1 ~1 ~ minecraft:spruce_stairs[facing=west] run scoreboard players add #c bs.ctx 1 +execute if block ~1 ~1 ~1 minecraft:spruce_stairs[facing=west] run scoreboard players add #c bs.ctx 1 +execute if block ~-1 ~ ~-1 minecraft:spruce_stairs[facing=east] run scoreboard players add #c bs.ctx 1 +execute if block ~-1 ~ ~ minecraft:spruce_stairs[facing=east] run scoreboard players add #c bs.ctx 1 +execute if block ~-1 ~ ~1 minecraft:spruce_stairs[facing=east] run scoreboard players add #c bs.ctx 1 +execute if block ~-1 ~1 ~-1 minecraft:spruce_stairs[facing=east] run scoreboard players add #c bs.ctx 1 +execute if block ~-1 ~1 ~ minecraft:spruce_stairs[facing=east] run scoreboard players add #c bs.ctx 1 +execute if block ~-1 ~1 ~1 minecraft:spruce_stairs[facing=east] run scoreboard players add #c bs.ctx 1 +execute if block ~ ~ ~1 minecraft:spruce_stairs[facing=north] run scoreboard players add #c bs.ctx 1 +execute if block ~ ~1 ~1 minecraft:spruce_stairs[facing=north] run scoreboard players add #c bs.ctx 1 +execute if block ~ ~ ~-1 minecraft:spruce_stairs[facing=south] run scoreboard players add #c bs.ctx 1 +execute if block ~ ~1 ~-1 minecraft:spruce_stairs[facing=south] run scoreboard players add #c bs.ctx 1 -execute unless score #result bs.data matches 1..15 run fail "Random should approximately affect half of the blocks and keep their states when using type." +execute unless score #c bs.ctx matches 1..15 run fail "Random should approximately affect half of the blocks and keep their states when using type." diff --git a/datapacks/Bookshelf/data/bs.block/test/produce/block_display.mcfunction b/datapacks/Bookshelf/data/bs.block/test/produce/block_display.mcfunction index 7992697843..d26d569673 100644 --- a/datapacks/Bookshelf/data/bs.block/test/produce/block_display.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/test/produce/block_display.mcfunction @@ -2,7 +2,7 @@ # @batch bs.block data modify storage bs:in block.spawn_block_display.type set value "minecraft:bookshelf" -data modify storage bs:in block.spawn_block_display.extra_nbt set value {Tags:["packtest"]} +data modify storage bs:in block.spawn_block_display.extra_nbt set value {Tags:["bs.packtest"]} function #bs.block:spawn_block_display -assert entity @e[type=minecraft:block_display,tag=packtest] inside +assert entity @e[type=minecraft:block_display,tag=bs.packtest] inside diff --git a/datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particle.mcfunction b/datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particle.mcfunction new file mode 100644 index 0000000000..0a1bb6b01f --- /dev/null +++ b/datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particle.mcfunction @@ -0,0 +1,7 @@ +# Emit block particle +# @batch bs.block + +data modify storage bs:in block.emit_block_particle.type set value "minecraft:bookshelf" +data modify storage bs:in block.emit_block_particle merge value { delta: "0 0 0", speed: 5, count: 30, properties: {}} + +function #bs.block:emit_block_particle diff --git a/datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particles.mcfunction b/datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particles.mcfunction deleted file mode 100644 index 2607c97be7..0000000000 --- a/datapacks/Bookshelf/data/bs.block/test/produce/emit_block_particles.mcfunction +++ /dev/null @@ -1,7 +0,0 @@ -# Emit block particles -# @batch bs.block - -data modify storage bs:in block.emit_block_particles.type set value "minecraft:bookshelf" -data modify storage bs:in block.emit_block_particles merge value { delta: "0 0 0", speed: 5, count: 30, properties: {}} - -function #bs.block:emit_block_particles diff --git a/datapacks/Bookshelf/data/bs.block/test/produce/falling_block.mcfunction b/datapacks/Bookshelf/data/bs.block/test/produce/falling_block.mcfunction index 79ce493078..3b24bc76a1 100644 --- a/datapacks/Bookshelf/data/bs.block/test/produce/falling_block.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/test/produce/falling_block.mcfunction @@ -2,7 +2,7 @@ # @batch bs.block data modify storage bs:in block.spawn_falling_block.type set value "minecraft:bookshelf" -data modify storage bs:in block.spawn_falling_block.extra_nbt set value {Tags:["packtest"]} +data modify storage bs:in block.spawn_falling_block.extra_nbt set value {Tags:["bs.packtest"]} function #bs.block:spawn_falling_block -assert entity @e[type=minecraft:falling_block,tag=packtest] inside +assert entity @e[type=minecraft:falling_block,tag=bs.packtest] inside diff --git a/datapacks/Bookshelf/data/bs.block/test/produce/solid_block_display.mcfunction b/datapacks/Bookshelf/data/bs.block/test/produce/solid_block_display.mcfunction index aecf308966..1faf80bb66 100644 --- a/datapacks/Bookshelf/data/bs.block/test/produce/solid_block_display.mcfunction +++ b/datapacks/Bookshelf/data/bs.block/test/produce/solid_block_display.mcfunction @@ -2,9 +2,9 @@ # @batch bs.block data modify storage bs:in block.spawn_solid_block_display.type set value "minecraft:bookshelf" -data modify storage bs:in block.spawn_solid_block_display.extra_nbt set value {Tags:["packtest"]} +data modify storage bs:in block.spawn_solid_block_display.extra_nbt set value {Tags:["bs.packtest"]} function #bs.block:spawn_solid_block_display -execute as @e[type=minecraft:block_display,tag=packtest] on passengers at @s positioned ~ ~ ~.4 run tag @s[dx=0] add packtest.hitbox +execute as @e[type=minecraft:block_display,tag=bs.packtest] on passengers at @s positioned ~ ~ ~.4 run tag @s[dx=0] add bs.packtest.hitbox -assert entity @e[type=minecraft:block_display,tag=packtest] inside -assert entity @e[type=!minecraft:block_display,tag=packtest.hitbox] inside +assert entity @e[type=minecraft:block_display,tag=bs.packtest] inside +assert entity @e[type=!minecraft:block_display,tag=bs.packtest.hitbox] inside diff --git a/datapacks/Bookshelf/data/bs.color/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.color/function/__load__.mcfunction index 1b311f1237..3460f3a934 100644 --- a/datapacks/Bookshelf/data/bs.color/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/function/__load__.mcfunction @@ -15,9 +15,9 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/color.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] +scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] scoreboard players set 256 bs.const 256 scoreboard players set 65536 bs.const 65536 @@ -25,18 +25,5 @@ scoreboard players set 65536 bs.const 65536 data modify storage bs:const color.hex_chars set value ["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"] data modify storage bs:const color.hex_values set value {00:0,01:1,02:2,03:3,04:4,05:5,06:6,07:7,08:8,09:9,0a:10,0b:11,0c:12,0d:13,0e:14,0f:15,0A:10,0B:11,0C:12,0D:13,0E:14,0F:15,10:16,11:17,12:18,13:19,14:20,15:21,16:22,17:23,18:24,19:25,1a:26,1b:27,1c:28,1d:29,1e:30,1f:31,1A:26,1B:27,1C:28,1D:29,1E:30,1F:31,20:32,21:33,22:34,23:35,24:36,25:37,26:38,27:39,28:40,29:41,2a:42,2b:43,2c:44,2d:45,2e:46,2f:47,2A:42,2B:43,2C:44,2D:45,2E:46,2F:47,30:48,31:49,32:50,33:51,34:52,35:53,36:54,37:55,38:56,39:57,3a:58,3b:59,3c:60,3d:61,3e:62,3f:63,3A:58,3B:59,3C:60,3D:61,3E:62,3F:63,40:64,41:65,42:66,43:67,44:68,45:69,46:70,47:71,48:72,49:73,4a:74,4b:75,4c:76,4d:77,4e:78,4f:79,4A:74,4B:75,4C:76,4D:77,4E:78,4F:79,50:80,51:81,52:82,53:83,54:84,55:85,56:86,57:87,58:88,59:89,5a:90,5b:91,5c:92,5d:93,5e:94,5f:95,5A:90,5B:91,5C:92,5D:93,5E:94,5F:95,60:96,61:97,62:98,63:99,64:100,65:101,66:102,67:103,68:104,69:105,6a:106,6b:107,6c:108,6d:109,6e:110,6f:111,6A:106,6B:107,6C:108,6D:109,6E:110,6F:111,70:112,71:113,72:114,73:115,74:116,75:117,76:118,77:119,78:120,79:121,7a:122,7b:123,7c:124,7d:125,7e:126,7f:127,7A:122,7B:123,7C:124,7D:125,7E:126,7F:127,80:128,81:129,82:130,83:131,84:132,85:133,86:134,87:135,88:136,89:137,8a:138,8b:139,8c:140,8d:141,8e:142,8f:143,8A:138,8B:139,8C:140,8D:141,8E:142,8F:143,90:144,91:145,92:146,93:147,94:148,95:149,96:150,97:151,98:152,99:153,9a:154,9b:155,9c:156,9d:157,9e:158,9f:159,9A:154,9B:155,9C:156,9D:157,9E:158,9F:159,a0:160,a1:161,a2:162,a3:163,a4:164,a5:165,a6:166,a7:167,a8:168,a9:169,aa:170,ab:171,ac:172,ad:173,ae:174,af:175,b0:176,b1:177,b2:178,b3:179,b4:180,b5:181,b6:182,b7:183,b8:184,b9:185,ba:186,bb:187,bc:188,bd:189,be:190,bf:191,c0:192,c1:193,c2:194,c3:195,c4:196,c5:197,c6:198,c7:199,c8:200,c9:201,ca:202,cb:203,cc:204,cd:205,ce:206,cf:207,d0:208,d1:209,d2:210,d3:211,d4:212,d5:213,d6:214,d7:215,d8:216,d9:217,da:218,db:219,dc:220,dd:221,de:222,df:223,e0:224,e1:225,e2:226,e3:227,e4:228,e5:229,e6:230,e7:231,e8:232,e9:233,ea:234,eb:235,ec:236,ed:237,ee:238,ef:239,f0:240,f1:241,f2:242,f3:243,f4:244,f5:245,f6:246,f7:247,f8:248,f9:249,fa:250,fb:251,fc:252,fd:253,fe:254,ff:255,A1:161,A2:162,A3:163,A4:164,A5:165,A6:166,A7:167,A8:168,A9:169,AA:170,AB:171,AC:172,AD:173,AE:174,AF:175,B0:176,B1:177,B2:178,B3:179,B4:180,B5:181,B6:182,B7:183,B8:184,B9:185,BA:186,BB:187,BC:188,BD:189,BE:190,BF:191,C0:192,C1:193,C2:194,C3:195,C4:196,C5:197,C6:198,C7:199,C8:200,C9:201,CA:202,CB:203,CC:204,CD:205,CE:206,CF:207,D0:208,D1:209,D2:210,D3:211,D4:212,D5:213,D6:214,D7:215,D8:216,D9:217,DA:218,DB:219,DC:220,DD:221,DE:222,DF:223,E0:224,E1:225,E2:226,E3:227,E4:228,E5:229,E6:230,E7:231,E8:232,E9:233,EA:234,EB:235,EC:236,ED:237,EE:238,EF:239,F0:240,F1:241,F2:242,F3:243,F4:244,F5:245,F6:246,F7:247,F8:248,F9:249,FA:250,FB:251,FC:252,FD:253,FE:254,FF:255} -scoreboard players add $color.int_to_rgb.r bs.out 0 -scoreboard players add $color.int_to_rgb.g bs.out 0 -scoreboard players add $color.int_to_rgb.b bs.out 0 -scoreboard players add $color.hex_to_rgb.r bs.out 0 -scoreboard players add $color.hex_to_rgb.g bs.out 0 -scoreboard players add $color.hex_to_rgb.b bs.out 0 -scoreboard players add $color.rgb_to_int bs.out 0 -scoreboard players add $color.hex_to_int bs.out 0 - execute unless data storage bs:out color.int_to_rgb run data modify storage bs:out color.int_to_rgb set value [0,0,0] execute unless data storage bs:out color.hex_to_rgb run data modify storage bs:out color.hex_to_rgb set value [0,0,0] -execute unless data storage bs:out color.rgb_to_int run data modify storage bs:out color.rgb_to_int set value 0 -execute unless data storage bs:out color.hex_to_int run data modify storage bs:out color.hex_to_int set value 0 -execute unless data storage bs:out color.rgb_to_hex run data modify storage bs:out color.rgb_to_hex set value "" -execute unless data storage bs:out color.int_to_hex run data modify storage bs:out color.int_to_hex set value "" diff --git a/datapacks/Bookshelf/data/bs.color/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.color/function/__unload__.mcfunction index 05e03d7b28..e2d04c3315 100644 --- a/datapacks/Bookshelf/data/bs.color/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/function/__unload__.mcfunction @@ -15,9 +15,9 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/color.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives remove bs.out -scoreboard objectives remove bs.data scoreboard objectives remove bs.const +scoreboard objectives remove bs.ctx +scoreboard objectives remove bs.out data remove storage bs:const color data remove storage bs:out color diff --git a/datapacks/Bookshelf/data/bs.color/function/hex_to_int/convert_hexes.mcfunction b/datapacks/Bookshelf/data/bs.color/function/hex_to_int/convert_hexes.mcfunction index c8e3cdf6be..a725371c4f 100644 --- a/datapacks/Bookshelf/data/bs.color/function/hex_to_int/convert_hexes.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/function/hex_to_int/convert_hexes.mcfunction @@ -14,9 +14,9 @@ # ------------------------------------------------------------------------------------------------------------ $execute store result score $color.hex_to_int bs.out run data get storage bs:const color.hex_values.$(z) -$execute store result score #result bs.data run data get storage bs:const color.hex_values.$(y) -scoreboard players operation #result bs.data *= 256 bs.const -scoreboard players operation $color.hex_to_int bs.out += #result bs.data -$execute store result score #result bs.data run data get storage bs:const color.hex_values.$(x) -scoreboard players operation #result bs.data *= 65536 bs.const -execute store result storage bs:out color.hex_to_int int 1 run return run scoreboard players operation $color.hex_to_int bs.out += #result bs.data +$execute store result score #r bs.ctx run data get storage bs:const color.hex_values.$(y) +scoreboard players operation #r bs.ctx *= 256 bs.const +scoreboard players operation $color.hex_to_int bs.out += #r bs.ctx +$execute store result score #r bs.ctx run data get storage bs:const color.hex_values.$(x) +scoreboard players operation #r bs.ctx *= 65536 bs.const +execute store result storage bs:out color.hex_to_int int 1 run return run scoreboard players operation $color.hex_to_int bs.out += #r bs.ctx diff --git a/datapacks/Bookshelf/data/bs.color/function/int_to_hex/int_to_hex.mcfunction b/datapacks/Bookshelf/data/bs.color/function/int_to_hex/int_to_hex.mcfunction index ad3e8b2acf..ea446a50c0 100644 --- a/datapacks/Bookshelf/data/bs.color/function/int_to_hex/int_to_hex.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/function/int_to_hex/int_to_hex.mcfunction @@ -15,17 +15,17 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/color.html#convert-to-hex # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #color.int_to_hex bs.data $(color) +$scoreboard players set #c bs.ctx $(color) -scoreboard players operation #color.int_to_hex.r bs.data = #color.int_to_hex bs.data -scoreboard players operation #color.int_to_hex.r bs.data /= 65536 bs.const -scoreboard players operation #color.int_to_hex.g bs.data = #color.int_to_hex bs.data -scoreboard players operation #color.int_to_hex.g bs.data /= 256 bs.const -scoreboard players operation #color.int_to_hex.b bs.data = #color.int_to_hex bs.data +scoreboard players operation #r bs.ctx = #c bs.ctx +scoreboard players operation #r bs.ctx /= 65536 bs.const +scoreboard players operation #g bs.ctx = #c bs.ctx +scoreboard players operation #g bs.ctx /= 256 bs.const +scoreboard players operation #b bs.ctx = #c bs.ctx -execute store result storage bs:ctx x int 1 run scoreboard players operation #color.int_to_hex.r bs.data %= 256 bs.const -execute store result storage bs:ctx y int 1 run scoreboard players operation #color.int_to_hex.g bs.data %= 256 bs.const -execute store result storage bs:ctx z int 1 run scoreboard players operation #color.int_to_hex.b bs.data %= 256 bs.const +execute store result storage bs:ctx x int 1 run scoreboard players operation #r bs.ctx %= 256 bs.const +execute store result storage bs:ctx y int 1 run scoreboard players operation #g bs.ctx %= 256 bs.const +execute store result storage bs:ctx z int 1 run scoreboard players operation #b bs.ctx %= 256 bs.const function bs.color:int_to_hex/get_hexes with storage bs:ctx function bs.color:int_to_hex/concat_hexes with storage bs:ctx _ diff --git a/datapacks/Bookshelf/data/bs.color/function/int_to_rgb.mcfunction b/datapacks/Bookshelf/data/bs.color/function/int_to_rgb.mcfunction index b1aa28ef93..bbc3431e8a 100644 --- a/datapacks/Bookshelf/data/bs.color/function/int_to_rgb.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/function/int_to_rgb.mcfunction @@ -15,13 +15,13 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/color.html#convert-to-rgb # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #color.int_to_rgb bs.data $(color) +$scoreboard players set #c bs.ctx $(color) -scoreboard players operation $color.int_to_rgb.r bs.out = #color.int_to_rgb bs.data +scoreboard players operation $color.int_to_rgb.r bs.out = #c bs.ctx scoreboard players operation $color.int_to_rgb.r bs.out /= 65536 bs.const -scoreboard players operation $color.int_to_rgb.g bs.out = #color.int_to_rgb bs.data +scoreboard players operation $color.int_to_rgb.g bs.out = #c bs.ctx scoreboard players operation $color.int_to_rgb.g bs.out /= 256 bs.const -scoreboard players operation $color.int_to_rgb.b bs.out = #color.int_to_rgb bs.data +scoreboard players operation $color.int_to_rgb.b bs.out = #c bs.ctx execute store result storage bs:out color.int_to_rgb[0] int 1 run scoreboard players operation $color.int_to_rgb.r bs.out %= 256 bs.const execute store result storage bs:out color.int_to_rgb[1] int 1 run scoreboard players operation $color.int_to_rgb.g bs.out %= 256 bs.const diff --git a/datapacks/Bookshelf/data/bs.color/function/rgb_to_int.mcfunction b/datapacks/Bookshelf/data/bs.color/function/rgb_to_int.mcfunction index 259e2b7a03..72c237b2cf 100644 --- a/datapacks/Bookshelf/data/bs.color/function/rgb_to_int.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/function/rgb_to_int.mcfunction @@ -17,13 +17,13 @@ $data modify storage bs:ctx _ set value $(color) -execute store result score #color.rgb_to_int.r bs.data run data get storage bs:ctx _[0] -execute store result score #color.rgb_to_int.g bs.data run data get storage bs:ctx _[1] -execute store result score #color.rgb_to_int.b bs.data run data get storage bs:ctx _[2] +execute store result score #r bs.ctx run data get storage bs:ctx _[0] +execute store result score #g bs.ctx run data get storage bs:ctx _[1] +execute store result score #b bs.ctx run data get storage bs:ctx _[2] -scoreboard players operation $color.rgb_to_int bs.out = #color.rgb_to_int.r bs.data +scoreboard players operation $color.rgb_to_int bs.out = #r bs.ctx scoreboard players operation $color.rgb_to_int bs.out *= 65536 bs.const -scoreboard players operation #color.rgb_to_int bs.data = #color.rgb_to_int.g bs.data -scoreboard players operation #color.rgb_to_int bs.data *= 256 bs.const -scoreboard players operation $color.rgb_to_int bs.out += #color.rgb_to_int bs.data -return run execute store result storage bs:out color.rgb_to_int int 1 run scoreboard players operation $color.rgb_to_int bs.out += #color.rgb_to_int.b bs.data +scoreboard players operation #c bs.ctx = #g bs.ctx +scoreboard players operation #c bs.ctx *= 256 bs.const +scoreboard players operation $color.rgb_to_int bs.out += #c bs.ctx +return run execute store result storage bs:out color.rgb_to_int int 1 run scoreboard players operation $color.rgb_to_int bs.out += #b bs.ctx diff --git a/datapacks/Bookshelf/data/bs.color/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.color/tags/function/exclusive_load.json new file mode 100644 index 0000000000..509787c2e3 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.color/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.color:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.color/tags/function/load.json b/datapacks/Bookshelf/data/bs.color/tags/function/load.json index 73348c44d0..6a81b04d35 100644 --- a/datapacks/Bookshelf/data/bs.color/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.color/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.color:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.color/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.color/test/__boot__.mcfunction index 13a7855f5e..b7a9ebd4a1 100644 --- a/datapacks/Bookshelf/data/bs.color/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.color -# @beforebatch function #bs.color:load +# @beforebatch function #bs.color:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.color/test/hex_to_int.mcfunction b/datapacks/Bookshelf/data/bs.color/test/hex_to_int.mcfunction index 6e80daac0a..ccafd18085 100644 --- a/datapacks/Bookshelf/data/bs.color/test/hex_to_int.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/test/hex_to_int.mcfunction @@ -1,13 +1,13 @@ # Color is converted the right way # @batch bs.color -execute store result score #result bs.data run function #bs.color:hex_to_int {color:"#F26A3B"} +execute store result score #r bs.ctx run function #bs.color:hex_to_int {color:"#F26A3B"} assert data storage bs:out color{hex_to_int:15886907} assert score $color.hex_to_int bs.out matches 15886907 -assert score #result bs.data matches 15886907 +assert score #r bs.ctx matches 15886907 -execute store result score #result bs.data run function #bs.color:hex_to_int {color:"#2AC855"} -assert score #result bs.data matches 2803797 +execute store result score #r bs.ctx run function #bs.color:hex_to_int {color:"#2AC855"} +assert score #r bs.ctx matches 2803797 -execute store result score #result bs.data run function #bs.color:hex_to_int {color:"#5919C0"} -assert score #result bs.data matches 5839296 +execute store result score #r bs.ctx run function #bs.color:hex_to_int {color:"#5919C0"} +assert score #r bs.ctx matches 5839296 diff --git a/datapacks/Bookshelf/data/bs.color/test/rgb_to_int.mcfunction b/datapacks/Bookshelf/data/bs.color/test/rgb_to_int.mcfunction index b707758ec9..b1d8c402ea 100644 --- a/datapacks/Bookshelf/data/bs.color/test/rgb_to_int.mcfunction +++ b/datapacks/Bookshelf/data/bs.color/test/rgb_to_int.mcfunction @@ -1,13 +1,13 @@ # Color is converted the right way # @batch bs.color -execute store result score #result bs.data run function #bs.color:rgb_to_int {color:[242,106,59]} +execute store result score #r bs.ctx run function #bs.color:rgb_to_int {color:[242,106,59]} assert data storage bs:out color{rgb_to_int:15886907} assert score $color.rgb_to_int bs.out matches 15886907 -assert score #result bs.data matches 15886907 +assert score #r bs.ctx matches 15886907 -execute store result score #result bs.data run function #bs.color:rgb_to_int {color:[42,200,85]} -assert score #result bs.data matches 2803797 +execute store result score #r bs.ctx run function #bs.color:rgb_to_int {color:[42,200,85]} +assert score #r bs.ctx matches 2803797 -execute store result score #result bs.data run function #bs.color:rgb_to_int {color:[89,25,192]} -assert score #result bs.data matches 5839296 +execute store result score #r bs.ctx run function #bs.color:rgb_to_int {color:[89,25,192]} +assert score #r bs.ctx matches 5839296 diff --git a/datapacks/Bookshelf/data/bs.generate/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/__load__.mcfunction index eaf652c469..5ff7841635 100644 --- a/datapacks/Bookshelf/data/bs.generate/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/__load__.mcfunction @@ -17,7 +17,7 @@ forceload add -30000000 1600 setblock -30000000 0 1606 minecraft:decorated_pot -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] diff --git a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/fractal_shape_2d.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/fractal_shape_2d.mcfunction index 5da1e3a746..ff1df87800 100644 --- a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/fractal_shape_2d.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/fractal_shape_2d.mcfunction @@ -33,4 +33,4 @@ execute store result score #c bs.ctx run data get storage bs:data generate._.siz execute store result storage bs:data generate._.k int .001 run scoreboard players operation #generate.k bs.data /= #c bs.ctx execute unless data storage bs:data generate._.seed store result storage bs:data generate._.seed int 1 run random value 1.. bs.generate:fractal_shape_2d -execute align xyz as B5-0-0-0-1 positioned ~.5 ~.5 ~.5 run function bs.generate:shape_2d/recurse/init with storage bs:data generate._ +execute align xyz positioned ~.5 ~.5 ~.5 summon minecraft:marker run function bs.generate:shape_2d/recurse/init with storage bs:data generate._ diff --git a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/pause.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/pause.mcfunction index 30071964a7..6ef4b2d020 100644 --- a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/pause.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/pause.mcfunction @@ -15,10 +15,8 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/generate.html#shape-2d # ------------------------------------------------------------------------------------------------------------ -tp @s ~ ~ ~ ~ ~ -data modify storage bs:data generate._.pos set from entity @s Pos -data modify storage bs:data generate._.rot set from entity @s Rotation -execute in minecraft:overworld run tp @s -30000000 0 1600 +execute summon minecraft:marker run function bs.generate:utils/get_location +execute unless data storage bs:data generate._.dim run function bs.generate:utils/get_dimension execute store result storage bs:data generate._.x int 1 run scoreboard players get $generate.x bs.data execute store result storage bs:data generate._.y int 1 run scoreboard players get $generate.y bs.data diff --git a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/resume.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/resume.mcfunction index bb0e3cc4d8..d660703b05 100644 --- a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/resume.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/process/resume.mcfunction @@ -21,7 +21,7 @@ data remove storage bs:data generate._._ $function bs.generate:shape_2d/strategy/$(impl)/setup data modify entity @s Pos set from storage bs:data generate._.pos data modify entity @s Rotation set from storage bs:data generate._.rot -execute at @s run function bs.generate:shape_2d/recurse/next with storage bs:data generate._ +$execute in $(dim) positioned as @s rotated as @s run function bs.generate:shape_2d/recurse/next with storage bs:data generate._ data remove storage bs:data generate.shape_2d[-1] execute if data storage bs:data generate.shape_2d[-1]._ \ diff --git a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/recurse/init.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/recurse/init.mcfunction index 5134a89e72..77ada04ec3 100644 --- a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/recurse/init.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/recurse/init.mcfunction @@ -15,10 +15,9 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/generate.html#shape-2d # ------------------------------------------------------------------------------------------------------------ -tp @s ~ ~ ~ execute if data storage bs:data generate._{direction:"xz"} run data modify storage bs:data generate._.oz set from entity @s Pos[2] execute unless data storage bs:data generate._{direction:"xz"} run data modify storage bs:data generate._.oy set from entity @s Pos[1] -execute in minecraft:overworld run tp @s -30000000 0 1600 +kill @s $function bs.generate:shape_2d/strategy/$(impl)/setup diff --git a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/shape_2d.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/shape_2d.mcfunction index 14255c4257..e18071e623 100644 --- a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/shape_2d.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/shape_2d.mcfunction @@ -24,4 +24,4 @@ data modify storage bs:data generate._ set value { \ $data modify storage bs:data generate._ merge value $(with) $data modify storage bs:data generate._ merge value {impl:"dummy",cb:'$(run)',w:$(width),h:$(height),x:0,y:0,oy:"~",oz:"~"} -execute align xyz as B5-0-0-0-1 positioned ~.5 ~.5 ~.5 run function bs.generate:shape_2d/recurse/init with storage bs:data generate._ +execute align xyz positioned ~.5 ~.5 ~.5 summon minecraft:marker run function bs.generate:shape_2d/recurse/init with storage bs:data generate._ diff --git a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/simplex_shape_2d.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/simplex_shape_2d.mcfunction index 6e5cd4f7a2..31c221860f 100644 --- a/datapacks/Bookshelf/data/bs.generate/function/shape_2d/simplex_shape_2d.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/shape_2d/simplex_shape_2d.mcfunction @@ -30,4 +30,4 @@ execute store result score #c bs.ctx run data get storage bs:data generate._.siz execute store result storage bs:data generate._.k int .001 run scoreboard players operation #generate.k bs.data /= #c bs.ctx execute unless data storage bs:data generate._.seed store result storage bs:data generate._.seed int 1 run random value 1.. bs.generate:simplex_shape_2d -execute align xyz as B5-0-0-0-1 positioned ~.5 ~.5 ~.5 run function bs.generate:shape_2d/recurse/init with storage bs:data generate._ +execute align xyz positioned ~.5 ~.5 ~.5 summon minecraft:marker run function bs.generate:shape_2d/recurse/init with storage bs:data generate._ diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/command.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/utils/get_custom_dimension.mcfunction similarity index 83% rename from datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/command.mcfunction rename to datapacks/Bookshelf/data/bs.generate/function/utils/get_custom_dimension.mcfunction index ff9aab2cb2..572caf9d53 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/command.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/utils/get_custom_dimension.mcfunction @@ -13,4 +13,5 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$data modify storage bs:data schedule.entry.command set value 'execute in $(dimension) positioned $(x) $(y) $(z) rotated $(h) $(v) run $(command)' +data modify storage bs:data generate._.dim set from entity @s Brain.memories.minecraft:home.value.dimension +kill @s diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/z_pos.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/utils/get_dimension.mcfunction similarity index 59% rename from datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/z_pos.mcfunction rename to datapacks/Bookshelf/data/bs.generate/function/utils/get_dimension.mcfunction index adee02a2a1..c81c2205f9 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/z_pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/function/utils/get_dimension.mcfunction @@ -13,8 +13,8 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result entity B5-0-0-0-1 Pos[2] double .001 run scoreboard players operation #move.z1 bs.data -= #move.sw bs.data -scoreboard players operation #move.z1 bs.data /= 1000 bs.const -scoreboard players operation #move.z1 bs.data *= 1000 bs.const -scoreboard players operation #move.z1 bs.data -= #move.z bs.data -scoreboard players operation #move.z2 bs.data += #move.sw bs.data +execute if dimension minecraft:overworld run return run data modify storage bs:data generate._.dim set value "minecraft:overworld" +execute if dimension minecraft:the_nether run return run data modify storage bs:data generate._.dim set value "minecraft:the_nether" +execute if dimension minecraft:the_end run return run data modify storage bs:data generate._.dim set value "minecraft:the_end" + +execute positioned -30000000 0 1600 summon piglin_brute run function bs.generate:utils/get_custom_dimension diff --git a/datapacks/Bookshelf/data/bs.generate/function/utils/get_location.mcfunction b/datapacks/Bookshelf/data/bs.generate/function/utils/get_location.mcfunction new file mode 100644 index 0000000000..a065911760 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.generate/function/utils/get_location.mcfunction @@ -0,0 +1,19 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +tp @s ~ ~ ~ ~ ~ +data modify storage bs:data generate._.pos set from entity @s Pos +data modify storage bs:data generate._.rot set from entity @s Rotation +kill @s diff --git a/datapacks/Bookshelf/data/bs.generate/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.generate/tags/function/exclusive_load.json new file mode 100644 index 0000000000..53fc2b9eea --- /dev/null +++ b/datapacks/Bookshelf/data/bs.generate/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.generate:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.generate/tags/function/load.json b/datapacks/Bookshelf/data/bs.generate/tags/function/load.json index 7f977547ee..bf70e9fc4b 100644 --- a/datapacks/Bookshelf/data/bs.generate/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.generate/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "#bs.random:load", "bs.generate:__load__" ] diff --git a/datapacks/Bookshelf/data/bs.generate/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.generate/test/__boot__.mcfunction index 8c2b1e10fe..0081f05be0 100644 --- a/datapacks/Bookshelf/data/bs.generate/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.generate/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.generate -# @beforebatch function #bs.generate:load +# @beforebatch function #bs.generate:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.health/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.health/function/__load__.mcfunction index fccd6ae531..977324fdb9 100644 --- a/datapacks/Bookshelf/data/bs.health/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/__load__.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/health.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] scoreboard objectives add bs.ttl dummy [{"text":"BS ","color":"dark_gray"},{"text":"Time to Live","color":"aqua"}] data modify storage bs:const health.point set value 100000 diff --git a/datapacks/Bookshelf/data/bs.health/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.health/function/__unload__.mcfunction index 2b2ddf1fba..ccd3ae34cd 100644 --- a/datapacks/Bookshelf/data/bs.health/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/__unload__.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/health.html # ------------------------------------------------------------------------------------------------------------ -scoreboard objectives remove bs.data +scoreboard objectives remove bs.ctx scoreboard objectives remove bs.ttl data remove storage bs:const health diff --git a/datapacks/Bookshelf/data/bs.health/function/add/health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/add/health.mcfunction index 6aba69a34e..91eaf306e4 100644 --- a/datapacks/Bookshelf/data/bs.health/function/add/health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/add/health.mcfunction @@ -17,17 +17,17 @@ # Note: Thanks to XanBelOr for giving the idea to use an advancement to subtick heal the player. -$execute store result score #health bs.data run data get storage bs:const health.point $(points) +$execute store result score #h bs.ctx run data get storage bs:const health.point $(points) -execute store success score #success bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit -execute if score #success bs.data matches 1 store result score #health.points bs.data run attribute @s minecraft:generic.max_health get 100000 -execute if score #success bs.data matches 0 store result score #health.points bs.data run data get entity @s Health 100000 -scoreboard players operation #health bs.data += #health.points bs.data +execute store success score #s bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit +execute if score #s bs.ctx matches 1 store result score #p bs.ctx run attribute @s minecraft:max_health get 100000 +execute if score #s bs.ctx matches 0 store result score #p bs.ctx run data get entity @s Health 100000 +scoreboard players operation #h bs.ctx += #p bs.ctx -execute store result score #health.max bs.data run attribute @s minecraft:generic.max_health get 100000 -execute store result score #health.mod bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit 100000 -scoreboard players operation #health.mod bs.data -= #health.max bs.data -execute store result storage bs:ctx x double 0.00001 run scoreboard players operation #health.mod bs.data += #health bs.data -execute if score #health.mod bs.data matches 1.. run data modify storage bs:ctx x set value 0 -execute if score #health.points bs.data > #health bs.data run return run function bs.health:apply/decrease_health with storage bs:ctx -execute if score #health.points bs.data < #health bs.data run return run function bs.health:apply/increase_health with storage bs:ctx +execute store result score #m bs.ctx run attribute @s minecraft:max_health get 100000 +execute store result score #a bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit 100000 +scoreboard players operation #a bs.ctx -= #m bs.ctx +execute store result storage bs:ctx x double 0.00001 run scoreboard players operation #a bs.ctx += #h bs.ctx +execute if score #a bs.ctx matches 1.. run data modify storage bs:ctx x set value 0 +execute if score #p bs.ctx > #h bs.ctx run return run function bs.health:apply/decrease_health with storage bs:ctx +execute if score #p bs.ctx < #h bs.ctx run return run function bs.health:apply/increase_health with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.health/function/add/max_health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/add/max_health.mcfunction index 0e1aa2d990..5db41b818f 100644 --- a/datapacks/Bookshelf/data/bs.health/function/add/max_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/add/max_health.mcfunction @@ -15,15 +15,15 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/health.html#add-remove # ------------------------------------------------------------------------------------------------------------ -$execute store result score #health bs.data run data get storage bs:const health.point $(points) +$execute store result score #h bs.ctx run data get storage bs:const health.point $(points) -execute store result score #health.max bs.data run attribute @s minecraft:generic.max_health get 100000 -execute store result score #health.mod bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit -scoreboard players operation #health.max bs.data -= #health.mod bs.data -execute store result storage bs:ctx y double 0.00001 run scoreboard players operation #health.max bs.data += #health bs.data +execute store result score #m bs.ctx run attribute @s minecraft:max_health get 100000 +execute store result score #a bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit +scoreboard players operation #m bs.ctx -= #a bs.ctx +execute store result storage bs:ctx y double 0.00001 run scoreboard players operation #m bs.ctx += #h bs.ctx -execute store success score #success bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit -execute if score #success bs.data matches 1 store result storage bs:ctx x double 0.00001 run scoreboard players operation #health.mod bs.data -= #health bs.data -execute if score #success bs.data matches 1 if score #health.mod bs.data matches ..0 run function bs.health:apply/increase_health with storage bs:ctx +execute store success score #s bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit +execute if score #s bs.ctx matches 1 store result storage bs:ctx x double 0.00001 run scoreboard players operation #a bs.ctx -= #h bs.ctx +execute if score #s bs.ctx matches 1 if score #a bs.ctx matches ..0 run function bs.health:apply/increase_health with storage bs:ctx function bs.health:apply/set_max_health with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.health/function/apply/decrease_health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/apply/decrease_health.mcfunction index 94a50fc46a..57cd0259b3 100644 --- a/datapacks/Bookshelf/data/bs.health/function/apply/decrease_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/apply/decrease_health.mcfunction @@ -14,9 +14,9 @@ # ------------------------------------------------------------------------------------------------------------ advancement grant @s only bs.health:restore_health -attribute @s minecraft:generic.max_health modifier remove bs.health:limit -$attribute @s minecraft:generic.max_health modifier add bs.health:limit $(x) add_value +attribute @s minecraft:max_health modifier remove bs.health:limit +$attribute @s minecraft:max_health modifier add bs.health:limit $(x) add_value effect give @s minecraft:health_boost 1 0 true effect clear @s minecraft:health_boost effect clear @s minecraft:instant_health -attribute @s minecraft:generic.max_health modifier remove bs.health:limit +attribute @s minecraft:max_health modifier remove bs.health:limit diff --git a/datapacks/Bookshelf/data/bs.health/function/apply/increase_health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/apply/increase_health.mcfunction index 3586ecb0cc..253da98b87 100644 --- a/datapacks/Bookshelf/data/bs.health/function/apply/increase_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/apply/increase_health.mcfunction @@ -13,7 +13,7 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -attribute @s minecraft:generic.max_health modifier remove bs.health:limit -$attribute @s minecraft:generic.max_health modifier add bs.health:limit $(x) add_value +attribute @s minecraft:max_health modifier remove bs.health:limit +$attribute @s minecraft:max_health modifier add bs.health:limit $(x) add_value effect give @s minecraft:instant_health 1 28 true advancement revoke @s only bs.health:restore_health diff --git a/datapacks/Bookshelf/data/bs.health/function/apply/remove_modifier.mcfunction b/datapacks/Bookshelf/data/bs.health/function/apply/remove_modifier.mcfunction index 3387645501..e7809717f4 100644 --- a/datapacks/Bookshelf/data/bs.health/function/apply/remove_modifier.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/apply/remove_modifier.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -attribute @s minecraft:generic.max_health modifier remove bs.health:limit +attribute @s minecraft:max_health modifier remove bs.health:limit diff --git a/datapacks/Bookshelf/data/bs.health/function/apply/set_max_health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/apply/set_max_health.mcfunction index c6c6c6e57d..4140158de8 100644 --- a/datapacks/Bookshelf/data/bs.health/function/apply/set_max_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/apply/set_max_health.mcfunction @@ -13,6 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$attribute @s minecraft:generic.max_health base set $(y) +$attribute @s minecraft:max_health base set $(y) effect give @s minecraft:health_boost 1 0 true effect clear @s minecraft:health_boost diff --git a/datapacks/Bookshelf/data/bs.health/function/get/health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/get/health.mcfunction index 6640b625a7..afeb7ef032 100644 --- a/datapacks/Bookshelf/data/bs.health/function/get/health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/get/health.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/health.html#get # ------------------------------------------------------------------------------------------------------------ -execute store success score #success bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit -execute if score #success bs.data matches 1 store result storage bs:out health.get_health double 0.00001 run attribute @s minecraft:generic.max_health get 100000 -execute if score #success bs.data matches 0 run data modify storage bs:out health.get_health set from entity @s Health +execute store success score #s bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit +execute if score #s bs.ctx matches 1 store result storage bs:out health.get_health double 0.00001 run attribute @s minecraft:max_health get 100000 +execute if score #s bs.ctx matches 0 run data modify storage bs:out health.get_health set from entity @s Health $return run data get storage bs:out health.get_health $(scale) diff --git a/datapacks/Bookshelf/data/bs.health/function/get/max_health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/get/max_health.mcfunction index 64987c5932..f61f788942 100644 --- a/datapacks/Bookshelf/data/bs.health/function/get/max_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/get/max_health.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/health.html#get # ------------------------------------------------------------------------------------------------------------ -execute store result score #health.max bs.data run attribute @s minecraft:generic.max_health get 100000 -execute store result score #health.mod bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit 100000 -execute store result storage bs:out health.get_max_health double 0.00001 run scoreboard players operation #health.max bs.data -= #health.mod bs.data +execute store result score #m bs.ctx run attribute @s minecraft:max_health get 100000 +execute store result score #a bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit 100000 +execute store result storage bs:out health.get_max_health double 0.00001 run scoreboard players operation #m bs.ctx -= #a bs.ctx $return run data get storage bs:out health.get_max_health $(scale) diff --git a/datapacks/Bookshelf/data/bs.health/function/set/health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/set/health.mcfunction index 682afdb27b..eff1b4c9c1 100644 --- a/datapacks/Bookshelf/data/bs.health/function/set/health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/set/health.mcfunction @@ -17,14 +17,14 @@ # Note: Thanks to XanBelOr for giving the idea to use an advancement to subtick heal the player. -$execute store result score #health bs.data run data get storage bs:const health.point $(points) +$execute store result score #h bs.ctx run data get storage bs:const health.point $(points) -execute store result score #health.max bs.data run attribute @s minecraft:generic.max_health get 100000 -execute store result score #health.mod bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit 100000 -scoreboard players operation #health.max bs.data -= #health.mod bs.data +execute store result score #m bs.ctx run attribute @s minecraft:max_health get 100000 +execute store result score #a bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit 100000 +scoreboard players operation #m bs.ctx -= #a bs.ctx -execute store result score #health.points bs.data run data get entity @s Health 100000 -execute store result storage bs:ctx x double -0.00001 run scoreboard players operation #health.max bs.data -= #health bs.data -execute if score #health.max bs.data matches ..-1 run data modify storage bs:ctx x set value 0 -execute if score #health.points bs.data > #health bs.data run return run function bs.health:apply/decrease_health with storage bs:ctx -execute if score #health.points bs.data < #health bs.data run return run function bs.health:apply/increase_health with storage bs:ctx +execute store result score #p bs.ctx run data get entity @s Health 100000 +execute store result storage bs:ctx x double -0.00001 run scoreboard players operation #m bs.ctx -= #h bs.ctx +execute if score #m bs.ctx matches ..-1 run data modify storage bs:ctx x set value 0 +execute if score #p bs.ctx > #h bs.ctx run return run function bs.health:apply/decrease_health with storage bs:ctx +execute if score #p bs.ctx < #h bs.ctx run return run function bs.health:apply/increase_health with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.health/function/set/max_health.mcfunction b/datapacks/Bookshelf/data/bs.health/function/set/max_health.mcfunction index 0685b0e5a4..2a5c795364 100644 --- a/datapacks/Bookshelf/data/bs.health/function/set/max_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/set/max_health.mcfunction @@ -15,11 +15,11 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/health.html#set # ------------------------------------------------------------------------------------------------------------ -$execute store result storage bs:ctx y double 0.00001 store result score #health bs.data run data get storage bs:const health.point $(points) +$execute store result storage bs:ctx y double 0.00001 store result score #h bs.ctx run data get storage bs:const health.point $(points) -execute store success score #success bs.data run attribute @s minecraft:generic.max_health modifier value get bs.health:limit -execute if score #success bs.data matches 1 store result score #health.max bs.data run attribute @s minecraft:generic.max_health get 100000 -execute if score #success bs.data matches 1 store result storage bs:ctx x double 0.00001 run scoreboard players operation #health.max bs.data -= #health bs.data -execute if score #success bs.data matches 1 if score #health.max bs.data matches ..0 run function bs.health:apply/increase_health with storage bs:ctx +execute store success score #s bs.ctx run attribute @s minecraft:max_health modifier value get bs.health:limit +execute if score #s bs.ctx matches 1 store result score #m bs.ctx run attribute @s minecraft:max_health get 100000 +execute if score #s bs.ctx matches 1 store result storage bs:ctx x double 0.00001 run scoreboard players operation #m bs.ctx -= #h bs.ctx +execute if score #s bs.ctx matches 1 if score #m bs.ctx matches ..0 run function bs.health:apply/increase_health with storage bs:ctx function bs.health:apply/set_max_health with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.health/function/time_to_live/next_tick.mcfunction b/datapacks/Bookshelf/data/bs.health/function/time_to_live/next_tick.mcfunction index 0c63c738ec..b1a58d946b 100644 --- a/datapacks/Bookshelf/data/bs.health/function/time_to_live/next_tick.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/time_to_live/next_tick.mcfunction @@ -13,6 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store success score #success bs.data run scoreboard players remove @e[scores={bs.ttl=1..}] bs.ttl 1 -execute if score #success bs.data matches 1 as @e[scores={bs.ttl=0}] run function bs.health:time_to_live/time_out with entity @s -execute if score #success bs.data matches 1 run schedule function bs.health:time_to_live/next_tick 1t +execute store success score #s bs.ctx run scoreboard players remove @e[scores={bs.ttl=1..}] bs.ttl 1 +execute if score #s bs.ctx matches 1 as @e[scores={bs.ttl=0}] run function bs.health:time_to_live/time_out with entity @s +execute if score #s bs.ctx matches 1 run schedule function bs.health:time_to_live/next_tick 1t diff --git a/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_callback.mcfunction b/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_callback.mcfunction index 12dc1ae664..758889792b 100644 --- a/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_callback.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_callback.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$data modify storage bs:data health.ttl.callbacks[{uuid:$(UUID)}].on_death set from storage bs:ctx _.on_death +$data modify storage bs:data health.ttl."$(UUID)".on_death set from storage bs:ctx _.on_death diff --git a/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_unit.mcfunction b/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_unit.mcfunction index a39c2e5a7d..61170a06ed 100644 --- a/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_unit.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/time_to_live/register_unit.mcfunction @@ -13,8 +13,8 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store success score #success bs.data run function bs.health:time_to_live/normalize_unit with storage bs:const health.units[{name:'$(unit)'}] -execute if score #success bs.data matches 0 run function #bs.log:error { \ +$execute store success score #s bs.ctx run function bs.health:time_to_live/normalize_unit with storage bs:const health.units[{name:'$(unit)'}] +execute if score #s bs.ctx matches 0 run function #bs.log:error { \ namespace:"bs.health", \ tag:"time_to_live", \ message:'"The unit provided is not supported."', \ diff --git a/datapacks/Bookshelf/data/bs.health/function/time_to_live/time_out.mcfunction b/datapacks/Bookshelf/data/bs.health/function/time_to_live/time_out.mcfunction index 8fad27e1ea..3c7c0c58e5 100644 --- a/datapacks/Bookshelf/data/bs.health/function/time_to_live/time_out.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/function/time_to_live/time_out.mcfunction @@ -13,8 +13,8 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$function bs.health:time_to_live/run_callback with storage bs:data health.ttl.callbacks[{uuid:$(UUID)}] -$data remove storage bs:data health.ttl.callbacks[{uuid:$(UUID)}] +$function bs.health:time_to_live/run_callback with storage bs:data health.ttl."$(UUID)" +$data remove storage bs:data health.ttl."$(UUID)" scoreboard players reset @s bs.ttl execute at @s run tp @s ~ -1000000 ~ diff --git a/datapacks/Bookshelf/data/bs.health/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.health/tags/function/exclusive_load.json new file mode 100644 index 0000000000..25c4a4498d --- /dev/null +++ b/datapacks/Bookshelf/data/bs.health/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.health:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.health/tags/function/load.json b/datapacks/Bookshelf/data/bs.health/tags/function/load.json index 1af880e488..70d8a7a9a1 100644 --- a/datapacks/Bookshelf/data/bs.health/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.health/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.health:__load__", { "id": "#bs.log:load", diff --git a/datapacks/Bookshelf/data/bs.health/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.health/test/__boot__.mcfunction index bc16ddce54..4f92df9e1a 100644 --- a/datapacks/Bookshelf/data/bs.health/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.health -# @beforebatch function #bs.health:load +# @beforebatch function #bs.health:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.health/test/add/concurrent.mcfunction b/datapacks/Bookshelf/data/bs.health/test/add/concurrent.mcfunction index 0905f020b2..1628a642d9 100644 --- a/datapacks/Bookshelf/data/bs.health/test/add/concurrent.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/add/concurrent.mcfunction @@ -6,10 +6,10 @@ function #bs.health:add_health {points:5.0} function #bs.health:add_max_health {points:10.0} function #bs.health:add_health {points:5.0} function #bs.health:add_health {points:-10.0} -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 15 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 15 function #bs.health:add_health {points:20.0} await delay 1t -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 30 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 30 diff --git a/datapacks/Bookshelf/data/bs.health/test/add/health.mcfunction b/datapacks/Bookshelf/data/bs.health/test/add/health.mcfunction index 8237702539..55f39beadb 100644 --- a/datapacks/Bookshelf/data/bs.health/test/add/health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/add/health.mcfunction @@ -3,10 +3,10 @@ # @dummy function #bs.health:add_health {points:-10} -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 10 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 10 function #bs.health:add_health {points:5} await delay 1t -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 15 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 15 diff --git a/datapacks/Bookshelf/data/bs.health/test/add/max_health.mcfunction b/datapacks/Bookshelf/data/bs.health/test/add/max_health.mcfunction index 1cd623da10..45189f80cf 100644 --- a/datapacks/Bookshelf/data/bs.health/test/add/max_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/add/max_health.mcfunction @@ -3,9 +3,9 @@ # @dummy function #bs.health:add_max_health {points:10} -execute store result score #result bs.data run attribute @s minecraft:generic.max_health get -assert score #result bs.data matches 30 +execute store result score #r bs.ctx run attribute @s minecraft:max_health get +assert score #r bs.ctx matches 30 function #bs.health:add_max_health {points:-5} -execute store result score #result bs.data run attribute @s minecraft:generic.max_health get -assert score #result bs.data matches 25 +execute store result score #r bs.ctx run attribute @s minecraft:max_health get +assert score #r bs.ctx matches 25 diff --git a/datapacks/Bookshelf/data/bs.health/test/get/health.mcfunction b/datapacks/Bookshelf/data/bs.health/test/get/health.mcfunction index e969122094..2abd5e3c28 100644 --- a/datapacks/Bookshelf/data/bs.health/test/get/health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/get/health.mcfunction @@ -2,9 +2,9 @@ # @batch bs.health # @dummy -execute store result score #result bs.data run function #bs.health:get_health {scale:1} -assert score #result bs.data matches 20 +execute store result score #r bs.ctx run function #bs.health:get_health {scale:1} +assert score #r bs.ctx matches 20 -attribute @s minecraft:generic.max_health modifier add bs.health:limit -5 add_value -execute store result score #result bs.data run function #bs.health:get_health {scale:1} -assert score #result bs.data matches 15 +attribute @s minecraft:max_health modifier add bs.health:limit -5 add_value +execute store result score #r bs.ctx run function #bs.health:get_health {scale:1} +assert score #r bs.ctx matches 15 diff --git a/datapacks/Bookshelf/data/bs.health/test/get/max_health.mcfunction b/datapacks/Bookshelf/data/bs.health/test/get/max_health.mcfunction index ad1e1b3be0..e762e51afb 100644 --- a/datapacks/Bookshelf/data/bs.health/test/get/max_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/get/max_health.mcfunction @@ -2,9 +2,9 @@ # @batch bs.health # @dummy -execute store result score #result bs.data run function #bs.health:get_max_health {scale:1} -assert score #result bs.data matches 20 +execute store result score #r bs.ctx run function #bs.health:get_max_health {scale:1} +assert score #r bs.ctx matches 20 -attribute @s minecraft:generic.max_health modifier add bs.health:limit -10 add_value -execute store result score #result bs.data run function #bs.health:get_max_health {scale:1} -assert score #result bs.data matches 20 +attribute @s minecraft:max_health modifier add bs.health:limit -10 add_value +execute store result score #r bs.ctx run function #bs.health:get_max_health {scale:1} +assert score #r bs.ctx matches 20 diff --git a/datapacks/Bookshelf/data/bs.health/test/set/concurrent.mcfunction b/datapacks/Bookshelf/data/bs.health/test/set/concurrent.mcfunction index 63571cf797..0df0adb911 100644 --- a/datapacks/Bookshelf/data/bs.health/test/set/concurrent.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/set/concurrent.mcfunction @@ -4,11 +4,11 @@ function #bs.health:set_health {points:10.0} function #bs.health:set_max_health {points:30.0} -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 10 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 10 function #bs.health:set_max_health {points:20.0} function #bs.health:set_health {points:30.0} await delay 1t -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 20 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 20 diff --git a/datapacks/Bookshelf/data/bs.health/test/set/health.mcfunction b/datapacks/Bookshelf/data/bs.health/test/set/health.mcfunction index 99680297bf..6a07f7ed2a 100644 --- a/datapacks/Bookshelf/data/bs.health/test/set/health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/set/health.mcfunction @@ -3,10 +3,10 @@ # @dummy function #bs.health:set_health {points:10} -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 10 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 10 function #bs.health:set_health {points:15} await delay 1t -execute store result score #result bs.data run data get entity @s Health -assert score #result bs.data matches 15 +execute store result score #r bs.ctx run data get entity @s Health +assert score #r bs.ctx matches 15 diff --git a/datapacks/Bookshelf/data/bs.health/test/set/max_health.mcfunction b/datapacks/Bookshelf/data/bs.health/test/set/max_health.mcfunction index 00dd26e61a..17c4183292 100644 --- a/datapacks/Bookshelf/data/bs.health/test/set/max_health.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/set/max_health.mcfunction @@ -3,9 +3,9 @@ # @dummy function #bs.health:set_max_health {points:10} -execute store result score #result bs.data run attribute @s minecraft:generic.max_health get -assert score #result bs.data matches 10 +execute store result score #r bs.ctx run attribute @s minecraft:max_health get +assert score #r bs.ctx matches 10 function #bs.health:set_max_health {points:20} -execute store result score #result bs.data run attribute @s minecraft:generic.max_health get -assert score #result bs.data matches 20 +execute store result score #r bs.ctx run attribute @s minecraft:max_health get +assert score #r bs.ctx matches 20 diff --git a/datapacks/Bookshelf/data/bs.health/test/time_to_live.mcfunction b/datapacks/Bookshelf/data/bs.health/test/time_to_live.mcfunction index cae482671d..084cd3972a 100644 --- a/datapacks/Bookshelf/data/bs.health/test/time_to_live.mcfunction +++ b/datapacks/Bookshelf/data/bs.health/test/time_to_live.mcfunction @@ -1,10 +1,10 @@ # A callback is run just before killing the entity # @batch bs.health -scoreboard players set #packtest.ttl bs.data 0 -summon minecraft:armor_stand ~ ~ ~ {Tags:["packtest"]} -execute as @e[type=minecraft:armor_stand,tag=packtest] run function #bs.health:time_to_live {with:{time:5,on_death:"scoreboard players set #packtest.ttl bs.data 1"}} +scoreboard players set #t bs.ctx 0 +summon minecraft:armor_stand ~ ~ ~ {Tags:["bs.packtest"]} +execute as @e[type=minecraft:armor_stand,tag=bs.packtest] run function #bs.health:time_to_live {with:{time:5,on_death:"scoreboard players set #t bs.ctx 1"}} await delay 5t -assert score #packtest.ttl bs.data matches 1 +assert score #t bs.ctx matches 1 assert not entity @e[type=minecraft:armor_stand,distance=..1] inside diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/__load__.mcfunction index 8c6c9c73d7..62bcdb4edf 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/__load__.mcfunction @@ -17,7 +17,6 @@ forceload add -30000000 1600 setblock -30000000 0 1606 minecraft:decorated_pot -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/__unload__.mcfunction index 930d08b4e0..6d97402e4a 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/__unload__.mcfunction @@ -15,7 +15,6 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/hitbox.html # ------------------------------------------------------------------------------------------------------------ -kill B5-0-0-0-1 setblock -30000000 0 1606 minecraft:air forceload remove -30000000 1600 diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/get_block/get_block.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/get_block/get_block.mcfunction index a356d36b8d..088d5944b2 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/get_block/get_block.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/get_block/get_block.mcfunction @@ -20,4 +20,4 @@ execute unless block ~ ~ ~ #bs.hitbox:is_composite run \ loot replace block -30000000 0 1606 container.0 loot bs.hitbox:get_block/get data modify storage bs:out hitbox set from block -30000000 0 1606 item.components."minecraft:custom_data" -execute if block ~ ~ ~ #bs.hitbox:has_offset as B5-0-0-0-1 run function bs.hitbox:get_block/offset/get +execute if block ~ ~ ~ #bs.hitbox:has_offset summon minecraft:marker run function bs.hitbox:get_block/offset/get diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/get_block/offset/get.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/get_block/offset/get.mcfunction index c28f808e50..eec06feb37 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/get_block/offset/get.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/get_block/offset/get.mcfunction @@ -13,12 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -tp @s ~ ~ ~ execute store result score #u bs.ctx store result storage bs:ctx x int 1 run data get entity @s Pos[0] execute store result score #v bs.ctx store result storage bs:ctx z int 1 run data get entity @s Pos[2] function bs.hitbox:get_block/offset/fetch with storage bs:ctx execute if score #s bs.ctx matches 0 run function bs.hitbox:get_block/offset/compute -execute in minecraft:overworld run tp @s -30000000 0 1600 +kill @s execute if block ~ ~ ~ minecraft:pointed_dripstone run function bs.hitbox:get_block/offset/clamp {min:-1250000,max:1250000} diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/get_entity.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/get_entity.mcfunction index 5ba5785a16..50f29a28d3 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/get_entity.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/get_entity.mcfunction @@ -27,5 +27,5 @@ execute if entity @s[type=#bs.hitbox:size/group_64] run scoreboard players add # execute store result storage bs:ctx y short 1 run scoreboard players get #i bs.ctx function bs.hitbox:get_entity/dispatch with storage bs:ctx -execute store result storage bs:out hitbox.scale double .000001 store success score #s bs.ctx run attribute @s minecraft:generic.scale get 1000000 +execute store result storage bs:out hitbox.scale double .000001 store success score #s bs.ctx run attribute @s minecraft:scale get 1000000 execute if score #s bs.ctx matches 0 run data modify storage bs:out hitbox.scale set value 1.0 diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/registry/68.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/registry/68.mcfunction index 294b52372d..e611074e3e 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/registry/68.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/get_entity/registry/68.mcfunction @@ -14,6 +14,7 @@ # ------------------------------------------------------------------------------------------------------------ # player group +execute if entity @s[gamemode=spectator] run return run data modify storage bs:out hitbox set value {width:0.0,height:0.0} execute at @s positioned ~ ~1.6 ~ if entity @s[dx=0] run return run data modify storage bs:out hitbox set value {width:0.6,height:1.8} execute at @s positioned ~ ~1 ~ if entity @s[dx=0] run return run data modify storage bs:out hitbox set value {width:0.6,height:1.5} execute at @s positioned ~ ~.5 ~ if entity @s[dx=0] run return run data modify storage bs:out hitbox set value {width:0.6,height:0.6} diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/shaped.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/shaped.mcfunction index 9c30deabd8..e9cd014f2c 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/shaped.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/shaped.mcfunction @@ -20,8 +20,8 @@ execute store result score #l bs.ctx run data get storage bs:out hitbox.shape[-1 execute store result score #m bs.ctx run data get storage bs:out hitbox.shape[-1][4] 62500 execute store result score #n bs.ctx run data get storage bs:out hitbox.shape[-1][5] 62500 -execute as B5-0-0-0-1 run function bs.hitbox:utils/get_negative_pos -execute at @s align xyz as B5-0-0-0-1 run function bs.hitbox:utils/get_relative_pos with storage bs:ctx +execute summon minecraft:marker run function bs.hitbox:utils/get_negative_pos +execute at @s align xyz summon minecraft:marker run function bs.hitbox:utils/get_relative_pos with storage bs:ctx execute store result score #i bs.ctx run data get storage bs:ctx _[0] 1000000 execute store result score #j bs.ctx run data get storage bs:ctx _[1] 1000000 execute store result score #k bs.ctx run data get storage bs:ctx _[2] 1000000 diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/sized.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/sized.mcfunction index d5b4c49bfe..0be9ba2865 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/sized.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_block/sized.mcfunction @@ -19,8 +19,8 @@ execute store result score #s bs.ctx run data get storage bs:out hitbox.scale 10 scoreboard players operation #h bs.ctx *= #s bs.ctx scoreboard players operation #w bs.ctx *= #s bs.ctx -execute as B5-0-0-0-1 run function bs.hitbox:utils/get_negative_pos -execute at @s as B5-0-0-0-1 run function bs.hitbox:utils/get_relative_pos with storage bs:ctx +execute summon minecraft:marker run function bs.hitbox:utils/get_negative_pos +execute at @s summon minecraft:marker run function bs.hitbox:utils/get_relative_pos with storage bs:ctx execute store result score #l bs.ctx store result score #x bs.ctx run data get storage bs:ctx _[0] 1000000 execute store result score #m bs.ctx store result score #y bs.ctx run data get storage bs:ctx _[1] 1000000 execute store result score #n bs.ctx store result score #z bs.ctx run data get storage bs:ctx _[2] 1000000 diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_blocks/sized.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_blocks/sized.mcfunction index 09f9df268d..113caacd3e 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_blocks/sized.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/is_entity_in_blocks/sized.mcfunction @@ -19,7 +19,7 @@ execute store result score #s bs.ctx run data get storage bs:out hitbox.scale 10 scoreboard players operation #h bs.ctx *= #s bs.ctx scoreboard players operation #w bs.ctx *= #s bs.ctx -execute at @s as B5-0-0-0-1 run function bs.hitbox:utils/get_fract_pos with storage bs:ctx +execute at @s summon minecraft:marker run function bs.hitbox:utils/get_fract_pos execute store result score #l bs.ctx store result score #x bs.ctx run data get storage bs:ctx _[0] 1000000 execute store result score #n bs.ctx store result score #z bs.ctx run data get storage bs:ctx _[2] 1000000 execute store result storage bs:ctx y double .000001 store result score #j bs.ctx store result score #m bs.ctx store result score #y bs.ctx run data get storage bs:ctx _[1] 1000000 diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/is_in_block/is_in_block.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/is_in_block/is_in_block.mcfunction index da285bd03a..53542a3b20 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/is_in_block/is_in_block.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/is_in_block/is_in_block.mcfunction @@ -18,7 +18,7 @@ execute if block ~ ~ ~ #bs.hitbox:intangible run return 0 execute unless block ~ ~ ~ #bs.hitbox:is_composite run return 1 -execute as B5-0-0-0-1 run function bs.hitbox:utils/get_fract_pos +execute summon minecraft:marker run function bs.hitbox:utils/get_fract_pos execute store result score #x bs.ctx run data get storage bs:ctx _[0] 1000000 execute store result score #y bs.ctx run data get storage bs:ctx _[1] 1000000 execute store result score #z bs.ctx run data get storage bs:ctx _[2] 1000000 diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_fract_pos.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_fract_pos.mcfunction index d9c141f854..42fbc0020f 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_fract_pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_fract_pos.mcfunction @@ -13,7 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -tp @s ~ ~ ~ data modify storage bs:ctx _ set from entity @s Pos execute store result storage bs:ctx x int -1 run data get storage bs:ctx _[0] execute store result storage bs:ctx y int -1 run data get storage bs:ctx _[1] diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_negative_pos.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_negative_pos.mcfunction index d1f43657d1..1a9b1adfeb 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_negative_pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_negative_pos.mcfunction @@ -13,9 +13,8 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -tp @s ~ ~ ~ data modify storage bs:ctx _ set from entity @s Pos execute store result storage bs:ctx x int -1 run data get storage bs:ctx _[0] execute store result storage bs:ctx y int -1 run data get storage bs:ctx _[1] execute store result storage bs:ctx z int -1 run data get storage bs:ctx _[2] -execute in minecraft:overworld run tp @s -30000000 0 1600 +kill @s diff --git a/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_relative_pos.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_relative_pos.mcfunction index c323de2700..31c69f4de8 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_relative_pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/function/utils/get_relative_pos.mcfunction @@ -15,4 +15,4 @@ $tp @s ~$(x) ~$(y) ~$(z) data modify storage bs:ctx _ set from entity @s Pos -execute in minecraft:overworld run tp @s -30000000 0 1600 +kill @s diff --git a/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/72.json b/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/72.json new file mode 100644 index 0000000000..03ef0e426a --- /dev/null +++ b/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/72.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,0.0,16.0,10.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,10.0,16.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,0.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,10.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,16.0,1.0,16.0],[0.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,1.0,16.0,1.0,16.0],[1.0,1.0,15.0,16.0,16.0,16.0],[15.0,1.0,1.0,16.0,16.0,16.0]]}"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"bottom":"true"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,15.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,15.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[15.0,0.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,0.0,16.0,10.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,10.0,16.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"east":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[15.0,0.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,0.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"none"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,10.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,1.0,16.0,16.0],[1.0,0.0,0.0,16.0,10.0,1.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0],[15.0,10.0,0.0,16.0,16.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"north":"low"}}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"none"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,10.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"south":"low"}}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"none"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,10.0,16.0],[0.0,10.0,15.0,16.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"west":"low"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,16.0,1.0],[0.0,0.0,1.0,1.0,16.0,16.0],[1.0,0.0,15.0,16.0,16.0,16.0],[15.0,0.0,1.0,16.0,16.0,16.0]]}"}]}]}]}]}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/73.json b/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/73.json new file mode 100644 index 0000000000..d01e1b6acb --- /dev/null +++ b/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/73.json @@ -0,0 +1 @@ +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,2.0,1.0,15.0,16.0,15.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"state":{"tip":"true"}}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,16.0,15.0]]}"}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/get.json b/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/get.json index 8bd3bdaea2..3f5b3b9610 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/get.json +++ b/datapacks/Bookshelf/data/bs.hitbox/loot_table/get_block/get.json @@ -1 +1 @@ -{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,12.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","seagrass"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/1","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_propagule"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/2"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/3","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["powered_rail","detector_rail","activator_rail"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/4","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sticky_piston","piston"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,13.0,14.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,16.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tall_seagrass","sugar_cane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/5","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston_head"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[5.0,0.0,5.0,11.0,10.0,11.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[5.0,0.0,5.0,11.0,6.0,11.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[6.0,0.0,6.0,10.0,10.0,10.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/6","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wall_torch","redstone_wall_torch","soul_wall_torch"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/7"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf","tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley","brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch","wall_torch","redstone_wall_torch","soul_wall_torch","fire"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/8","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/9"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/10","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/11"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire","wheat"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,15.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["farmland","dirt_path"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,16.0,12.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest","redstone_wire","wheat","farmland","dirt_path","oak_sign","spruce_sign","birch_sign","acacia_sign","cherry_sign","jungle_sign","dark_oak_sign","mangrove_sign","bamboo_sign","white_banner","orange_banner","magenta_banner","light_blue_banner","yellow_banner","lime_banner","pink_banner","gray_banner","light_gray_banner","cyan_banner","purple_banner","blue_banner","brown_banner","green_banner","red_banner","black_banner","twisting_vines_plant","crimson_sign","warped_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/12","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/13","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ladder"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/14"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","ladder","rail"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/15","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/16"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign","oak_hanging_sign","spruce_hanging_sign","birch_hanging_sign","acacia_hanging_sign","cherry_hanging_sign","jungle_hanging_sign","dark_oak_hanging_sign","crimson_hanging_sign","warped_hanging_sign","mangrove_hanging_sign","bamboo_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/17","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_hanging_sign","spruce_wall_hanging_sign","birch_wall_hanging_sign","acacia_wall_hanging_sign","cherry_wall_hanging_sign","jungle_wall_hanging_sign","dark_oak_wall_hanging_sign","mangrove_wall_hanging_sign","crimson_wall_hanging_sign","warped_wall_hanging_sign","bamboo_wall_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/18"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf","tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley","brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch","wall_torch","redstone_wall_torch","soul_wall_torch","fire","soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest","redstone_wire","wheat","farmland","dirt_path","oak_sign","spruce_sign","birch_sign","acacia_sign","cherry_sign","jungle_sign","dark_oak_sign","mangrove_sign","bamboo_sign","white_banner","orange_banner","magenta_banner","light_blue_banner","yellow_banner","lime_banner","pink_banner","gray_banner","light_gray_banner","cyan_banner","purple_banner","blue_banner","brown_banner","green_banner","red_banner","black_banner","twisting_vines_plant","crimson_sign","warped_sign","oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","ladder","rail","oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign","oak_hanging_sign","spruce_hanging_sign","birch_hanging_sign","acacia_hanging_sign","cherry_hanging_sign","jungle_hanging_sign","dark_oak_hanging_sign","crimson_hanging_sign","warped_hanging_sign","mangrove_hanging_sign","bamboo_hanging_sign","oak_wall_hanging_sign","spruce_wall_hanging_sign","birch_wall_hanging_sign","acacia_wall_hanging_sign","cherry_wall_hanging_sign","jungle_wall_hanging_sign","dark_oak_wall_hanging_sign","mangrove_wall_hanging_sign","crimson_wall_hanging_sign","warped_wall_hanging_sign","bamboo_wall_hanging_sign","lever"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/19","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/20","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/21"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,16.0,15.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/22","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/23"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow","cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot","oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence","nether_portal"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/24","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cake"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,2.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["repeater","comparator"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/25"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cake","repeater","comparator","oak_trapdoor","spruce_trapdoor","birch_trapdoor","jungle_trapdoor","acacia_trapdoor","cherry_trapdoor","dark_oak_trapdoor","mangrove_trapdoor","bamboo_trapdoor","iron_trapdoor","crimson_trapdoor","warped_trapdoor","copper_trapdoor","exposed_copper_trapdoor","oxidized_copper_trapdoor","weathered_copper_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/26","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["iron_bars","glass_pane","white_stained_glass_pane","orange_stained_glass_pane","magenta_stained_glass_pane","light_blue_stained_glass_pane","yellow_stained_glass_pane","lime_stained_glass_pane","pink_stained_glass_pane","gray_stained_glass_pane","light_gray_stained_glass_pane","cyan_stained_glass_pane","purple_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","green_stained_glass_pane","red_stained_glass_pane","black_stained_glass_pane"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/27"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["iron_bars","glass_pane","white_stained_glass_pane","orange_stained_glass_pane","magenta_stained_glass_pane","light_blue_stained_glass_pane","yellow_stained_glass_pane","lime_stained_glass_pane","pink_stained_glass_pane","gray_stained_glass_pane","light_gray_stained_glass_pane","cyan_stained_glass_pane","purple_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","green_stained_glass_pane","red_stained_glass_pane","black_stained_glass_pane","chain"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/28","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["attached_pumpkin_stem","attached_melon_stem"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/29"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow","cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot","oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence","nether_portal","cake","repeater","comparator","oak_trapdoor","spruce_trapdoor","birch_trapdoor","jungle_trapdoor","acacia_trapdoor","cherry_trapdoor","dark_oak_trapdoor","mangrove_trapdoor","bamboo_trapdoor","iron_trapdoor","crimson_trapdoor","warped_trapdoor","copper_trapdoor","exposed_copper_trapdoor","oxidized_copper_trapdoor","weathered_copper_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","iron_bars","glass_pane","white_stained_glass_pane","orange_stained_glass_pane","magenta_stained_glass_pane","light_blue_stained_glass_pane","yellow_stained_glass_pane","lime_stained_glass_pane","pink_stained_glass_pane","gray_stained_glass_pane","light_gray_stained_glass_pane","cyan_stained_glass_pane","purple_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","green_stained_glass_pane","red_stained_glass_pane","black_stained_glass_pane","chain","attached_pumpkin_stem","attached_melon_stem","pumpkin_stem","melon_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/30","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["vine"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/31","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glow_lichen","sculk_vein"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/32"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["vine","glow_lichen","sculk_vein","oak_fence_gate","spruce_fence_gate","birch_fence_gate","jungle_fence_gate","acacia_fence_gate","cherry_fence_gate","dark_oak_fence_gate","mangrove_fence_gate","bamboo_fence_gate","crimson_fence_gate","warped_fence_gate"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,1.5,15.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lily_pad"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/33"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lily_pad","nether_wart"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,12.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["enchanting_table"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,2.0,15.0],[7.0,2.0,7.0,9.0,14.0,9.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["vine","glow_lichen","sculk_vein","oak_fence_gate","spruce_fence_gate","birch_fence_gate","jungle_fence_gate","acacia_fence_gate","cherry_fence_gate","dark_oak_fence_gate","mangrove_fence_gate","bamboo_fence_gate","crimson_fence_gate","warped_fence_gate","lily_pad","nether_wart","enchanting_table","brewing_stand"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,4.0,16.0,2.0],[0.0,0.0,2.0,2.0,16.0,4.0],[0.0,0.0,12.0,2.0,16.0,16.0],[0.0,3.0,4.0,2.0,16.0,16.0],[2.0,0.0,14.0,4.0,16.0,16.0],[2.0,3.0,2.0,16.0,4.0,16.0],[4.0,3.0,0.0,16.0,16.0,2.0],[4.0,4.0,14.0,16.0,16.0,16.0],[12.0,0.0,0.0,16.0,16.0,2.0],[12.0,0.0,14.0,16.0,16.0,16.0],[14.0,0.0,2.0,16.0,16.0,4.0],[14.0,0.0,12.0,16.0,16.0,16.0],[14.0,4.0,4.0,16.0,16.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cauldron","water_cauldron","lava_cauldron","powder_snow_cauldron"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,6.0,0.0,16.0,12.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_portal"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/34"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cauldron","water_cauldron","lava_cauldron","powder_snow_cauldron","end_portal","end_portal_frame"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/35","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cocoa"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,14.0,15.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cocoa","ender_chest"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/36","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tripwire_hook"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/37"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf","tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley","brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch","wall_torch","redstone_wall_torch","soul_wall_torch","fire","soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest","redstone_wire","wheat","farmland","dirt_path","oak_sign","spruce_sign","birch_sign","acacia_sign","cherry_sign","jungle_sign","dark_oak_sign","mangrove_sign","bamboo_sign","white_banner","orange_banner","magenta_banner","light_blue_banner","yellow_banner","lime_banner","pink_banner","gray_banner","light_gray_banner","cyan_banner","purple_banner","blue_banner","brown_banner","green_banner","red_banner","black_banner","twisting_vines_plant","crimson_sign","warped_sign","oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","ladder","rail","oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign","oak_hanging_sign","spruce_hanging_sign","birch_hanging_sign","acacia_hanging_sign","cherry_hanging_sign","jungle_hanging_sign","dark_oak_hanging_sign","crimson_hanging_sign","warped_hanging_sign","mangrove_hanging_sign","bamboo_hanging_sign","oak_wall_hanging_sign","spruce_wall_hanging_sign","birch_wall_hanging_sign","acacia_wall_hanging_sign","cherry_wall_hanging_sign","jungle_wall_hanging_sign","dark_oak_wall_hanging_sign","mangrove_wall_hanging_sign","crimson_wall_hanging_sign","warped_wall_hanging_sign","bamboo_wall_hanging_sign","lever","stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow","cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot","oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence","nether_portal","cake","repeater","comparator","oak_trapdoor","spruce_trapdoor","birch_trapdoor","jungle_trapdoor","acacia_trapdoor","cherry_trapdoor","dark_oak_trapdoor","mangrove_trapdoor","bamboo_trapdoor","iron_trapdoor","crimson_trapdoor","warped_trapdoor","copper_trapdoor","exposed_copper_trapdoor","oxidized_copper_trapdoor","weathered_copper_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","iron_bars","glass_pane","white_stained_glass_pane","orange_stained_glass_pane","magenta_stained_glass_pane","light_blue_stained_glass_pane","yellow_stained_glass_pane","lime_stained_glass_pane","pink_stained_glass_pane","gray_stained_glass_pane","light_gray_stained_glass_pane","cyan_stained_glass_pane","purple_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","green_stained_glass_pane","red_stained_glass_pane","black_stained_glass_pane","chain","attached_pumpkin_stem","attached_melon_stem","pumpkin_stem","melon_stem","vine","glow_lichen","sculk_vein","oak_fence_gate","spruce_fence_gate","birch_fence_gate","jungle_fence_gate","acacia_fence_gate","cherry_fence_gate","dark_oak_fence_gate","mangrove_fence_gate","bamboo_fence_gate","crimson_fence_gate","warped_fence_gate","lily_pad","nether_wart","enchanting_table","brewing_stand","cauldron","water_cauldron","lava_cauldron","powder_snow_cauldron","end_portal","end_portal_frame","cocoa","ender_chest","tripwire_hook","tripwire"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/38","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone_wall","mossy_cobblestone_wall","brick_wall","prismarine_wall","red_sandstone_wall","mossy_stone_brick_wall","granite_wall","stone_brick_wall","mud_brick_wall","nether_brick_wall","andesite_wall","red_nether_brick_wall","sandstone_wall","end_stone_brick_wall","diorite_wall","blackstone_wall","polished_blackstone_brick_wall","polished_blackstone_wall","tuff_wall","polished_tuff_wall","tuff_brick_wall","cobbled_deepslate_wall","polished_deepslate_wall","deepslate_tile_wall","deepslate_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/39","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","potatoes"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,8.0,12.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone_wall","mossy_cobblestone_wall","brick_wall","prismarine_wall","red_sandstone_wall","mossy_stone_brick_wall","granite_wall","stone_brick_wall","mud_brick_wall","nether_brick_wall","andesite_wall","red_nether_brick_wall","sandstone_wall","end_stone_brick_wall","diorite_wall","blackstone_wall","polished_blackstone_brick_wall","polished_blackstone_wall","tuff_wall","polished_tuff_wall","tuff_brick_wall","cobbled_deepslate_wall","polished_deepslate_wall","deepslate_tile_wall","deepslate_brick_wall","carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/40","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[3.0,0.0,3.0,13.0,8.0,13.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piglin_head"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/41"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone_wall","mossy_cobblestone_wall","brick_wall","prismarine_wall","red_sandstone_wall","mossy_stone_brick_wall","granite_wall","stone_brick_wall","mud_brick_wall","nether_brick_wall","andesite_wall","red_nether_brick_wall","sandstone_wall","end_stone_brick_wall","diorite_wall","blackstone_wall","polished_blackstone_brick_wall","polished_blackstone_wall","tuff_wall","polished_tuff_wall","tuff_brick_wall","cobbled_deepslate_wall","polished_deepslate_wall","deepslate_tile_wall","deepslate_brick_wall","carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head","piglin_head","piglin_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/42","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["anvil","chipped_anvil","damaged_anvil"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/43","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_weighted_pressure_plate","heavy_weighted_pressure_plate"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,6.0,16.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["anvil","chipped_anvil","damaged_anvil","light_weighted_pressure_plate","heavy_weighted_pressure_plate","daylight_detector"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/44","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hopper"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/45"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hopper","prismarine_slab","prismarine_brick_slab","dark_prismarine_slab","oak_slab","spruce_slab","birch_slab","jungle_slab","acacia_slab","cherry_slab","dark_oak_slab","mangrove_slab","bamboo_slab","bamboo_mosaic_slab","stone_slab","smooth_stone_slab","sandstone_slab","cut_sandstone_slab","petrified_oak_slab","cobblestone_slab","brick_slab","stone_brick_slab","mud_brick_slab","nether_brick_slab","quartz_slab","red_sandstone_slab","cut_red_sandstone_slab","purpur_slab","polished_granite_slab","smooth_red_sandstone_slab","mossy_stone_brick_slab","polished_diorite_slab","mossy_cobblestone_slab","end_stone_brick_slab","smooth_sandstone_slab","smooth_quartz_slab","granite_slab","andesite_slab","red_nether_brick_slab","polished_andesite_slab","diorite_slab","crimson_slab","warped_slab","blackstone_slab","polished_blackstone_brick_slab","polished_blackstone_slab","tuff_slab","polished_tuff_slab","tuff_brick_slab","oxidized_cut_copper_slab","weathered_cut_copper_slab","exposed_cut_copper_slab","cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_cut_copper_slab","cobbled_deepslate_slab","polished_deepslate_slab","deepslate_tile_slab","deepslate_brick_slab"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/46","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["white_wall_banner","orange_wall_banner","magenta_wall_banner","light_blue_wall_banner","yellow_wall_banner","lime_wall_banner","pink_wall_banner","gray_wall_banner","light_gray_wall_banner","cyan_wall_banner","purple_wall_banner","blue_wall_banner","brown_wall_banner","green_wall_banner","red_wall_banner","black_wall_banner"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/47"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone_wall","mossy_cobblestone_wall","brick_wall","prismarine_wall","red_sandstone_wall","mossy_stone_brick_wall","granite_wall","stone_brick_wall","mud_brick_wall","nether_brick_wall","andesite_wall","red_nether_brick_wall","sandstone_wall","end_stone_brick_wall","diorite_wall","blackstone_wall","polished_blackstone_brick_wall","polished_blackstone_wall","tuff_wall","polished_tuff_wall","tuff_brick_wall","cobbled_deepslate_wall","polished_deepslate_wall","deepslate_tile_wall","deepslate_brick_wall","carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head","piglin_head","piglin_wall_head","anvil","chipped_anvil","damaged_anvil","light_weighted_pressure_plate","heavy_weighted_pressure_plate","daylight_detector","hopper","prismarine_slab","prismarine_brick_slab","dark_prismarine_slab","oak_slab","spruce_slab","birch_slab","jungle_slab","acacia_slab","cherry_slab","dark_oak_slab","mangrove_slab","bamboo_slab","bamboo_mosaic_slab","stone_slab","smooth_stone_slab","sandstone_slab","cut_sandstone_slab","petrified_oak_slab","cobblestone_slab","brick_slab","stone_brick_slab","mud_brick_slab","nether_brick_slab","quartz_slab","red_sandstone_slab","cut_red_sandstone_slab","purpur_slab","polished_granite_slab","smooth_red_sandstone_slab","mossy_stone_brick_slab","polished_diorite_slab","mossy_cobblestone_slab","end_stone_brick_slab","smooth_sandstone_slab","smooth_quartz_slab","granite_slab","andesite_slab","red_nether_brick_slab","polished_andesite_slab","diorite_slab","crimson_slab","warped_slab","blackstone_slab","polished_blackstone_brick_slab","polished_blackstone_slab","tuff_slab","polished_tuff_slab","tuff_brick_slab","oxidized_cut_copper_slab","weathered_cut_copper_slab","exposed_cut_copper_slab","cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_cut_copper_slab","cobbled_deepslate_slab","polished_deepslate_slab","deepslate_tile_slab","deepslate_brick_slab","white_wall_banner","orange_wall_banner","magenta_wall_banner","light_blue_wall_banner","yellow_wall_banner","lime_wall_banner","pink_wall_banner","gray_wall_banner","light_gray_wall_banner","cyan_wall_banner","purple_wall_banner","blue_wall_banner","brown_wall_banner","green_wall_banner","red_wall_banner","black_wall_banner","end_rod","lightning_rod"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/48","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chorus_plant"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/49","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower_crop"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/50"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chorus_plant","torchflower_crop","pitcher_crop"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/51","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["beetroots"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[5.0,5.0,5.0,11.0,11.0,11.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["beetroots","structure_void","conduit"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,9.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["kelp","stonecutter"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/52"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chorus_plant","torchflower_crop","pitcher_crop","beetroots","structure_void","conduit","kelp","stonecutter","turtle_egg"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,2.0,15.0,16.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sniffer_egg"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,15.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral","dead_brain_coral","dead_bubble_coral","dead_fire_coral","dead_horn_coral","tube_coral","brain_coral","bubble_coral","fire_coral","horn_coral"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,4.0,14.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sniffer_egg","dead_tube_coral","dead_brain_coral","dead_bubble_coral","dead_fire_coral","dead_horn_coral","tube_coral","brain_coral","bubble_coral","fire_coral","horn_coral","dead_tube_coral_fan","dead_brain_coral_fan","dead_bubble_coral_fan","dead_fire_coral_fan","dead_horn_coral_fan","tube_coral_fan","brain_coral_fan","bubble_coral_fan","fire_coral_fan","horn_coral_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/53","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral_wall_fan","dead_brain_coral_wall_fan","dead_bubble_coral_wall_fan","dead_fire_coral_wall_fan","dead_horn_coral_wall_fan","tube_coral_wall_fan","brain_coral_wall_fan","bubble_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/54"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral_wall_fan","dead_brain_coral_wall_fan","dead_bubble_coral_wall_fan","dead_fire_coral_wall_fan","dead_horn_coral_wall_fan","tube_coral_wall_fan","brain_coral_wall_fan","bubble_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","sea_pickle"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,12.0,12.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo_sapling"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/55"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cobblestone_wall","mossy_cobblestone_wall","brick_wall","prismarine_wall","red_sandstone_wall","mossy_stone_brick_wall","granite_wall","stone_brick_wall","mud_brick_wall","nether_brick_wall","andesite_wall","red_nether_brick_wall","sandstone_wall","end_stone_brick_wall","diorite_wall","blackstone_wall","polished_blackstone_brick_wall","polished_blackstone_wall","tuff_wall","polished_tuff_wall","tuff_brick_wall","cobbled_deepslate_wall","polished_deepslate_wall","deepslate_tile_wall","deepslate_brick_wall","carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head","piglin_head","piglin_wall_head","anvil","chipped_anvil","damaged_anvil","light_weighted_pressure_plate","heavy_weighted_pressure_plate","daylight_detector","hopper","prismarine_slab","prismarine_brick_slab","dark_prismarine_slab","oak_slab","spruce_slab","birch_slab","jungle_slab","acacia_slab","cherry_slab","dark_oak_slab","mangrove_slab","bamboo_slab","bamboo_mosaic_slab","stone_slab","smooth_stone_slab","sandstone_slab","cut_sandstone_slab","petrified_oak_slab","cobblestone_slab","brick_slab","stone_brick_slab","mud_brick_slab","nether_brick_slab","quartz_slab","red_sandstone_slab","cut_red_sandstone_slab","purpur_slab","polished_granite_slab","smooth_red_sandstone_slab","mossy_stone_brick_slab","polished_diorite_slab","mossy_cobblestone_slab","end_stone_brick_slab","smooth_sandstone_slab","smooth_quartz_slab","granite_slab","andesite_slab","red_nether_brick_slab","polished_andesite_slab","diorite_slab","crimson_slab","warped_slab","blackstone_slab","polished_blackstone_brick_slab","polished_blackstone_slab","tuff_slab","polished_tuff_slab","tuff_brick_slab","oxidized_cut_copper_slab","weathered_cut_copper_slab","exposed_cut_copper_slab","cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_cut_copper_slab","cobbled_deepslate_slab","polished_deepslate_slab","deepslate_tile_slab","deepslate_brick_slab","white_wall_banner","orange_wall_banner","magenta_wall_banner","light_blue_wall_banner","yellow_wall_banner","lime_wall_banner","pink_wall_banner","gray_wall_banner","light_gray_wall_banner","cyan_wall_banner","purple_wall_banner","blue_wall_banner","brown_wall_banner","green_wall_banner","red_wall_banner","black_wall_banner","end_rod","lightning_rod","chorus_plant","torchflower_crop","pitcher_crop","beetroots","structure_void","conduit","kelp","stonecutter","turtle_egg","sniffer_egg","dead_tube_coral","dead_brain_coral","dead_bubble_coral","dead_fire_coral","dead_horn_coral","tube_coral","brain_coral","bubble_coral","fire_coral","horn_coral","dead_tube_coral_fan","dead_brain_coral_fan","dead_bubble_coral_fan","dead_fire_coral_fan","dead_horn_coral_fan","tube_coral_fan","brain_coral_fan","bubble_coral_fan","fire_coral_fan","horn_coral_fan","dead_tube_coral_wall_fan","dead_brain_coral_wall_fan","dead_bubble_coral_wall_fan","dead_fire_coral_wall_fan","dead_horn_coral_wall_fan","tube_coral_wall_fan","brain_coral_wall_fan","bubble_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","sea_pickle","bamboo_sapling","bamboo"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/56","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["scaffolding"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/57","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grindstone"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/58"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["scaffolding","grindstone","lectern"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/59","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bell"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/60","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lantern","soul_lantern"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,7.0,16.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["scaffolding","grindstone","lectern","bell","lantern","soul_lantern","campfire","soul_campfire"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/61","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sweet_berry_bush"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,9.0,12.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["warped_fungus","crimson_fungus"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,3.0,14.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sweet_berry_bush","warped_fungus","crimson_fungus","nether_sprouts"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,9.0,4.0,12.0,16.0,12.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weeping_vines"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,15.0,12.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weeping_vines","twisting_vines"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/62","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/63"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["scaffolding","grindstone","lectern","bell","lantern","soul_lantern","campfire","soul_campfire","sweet_berry_bush","warped_fungus","crimson_fungus","nether_sprouts","weeping_vines","twisting_vines","composter","candle","white_candle","orange_candle","magenta_candle","light_blue_candle","yellow_candle","lime_candle","pink_candle","gray_candle","light_gray_candle","cyan_candle","purple_candle","blue_candle","brown_candle","green_candle","red_candle","black_candle"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,8.0,15.0],[7.0,8.0,7.0,9.0,14.0,9.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle_cake","white_candle_cake","orange_candle_cake","magenta_candle_cake","light_blue_candle_cake","yellow_candle_cake","lime_candle_cake","pink_candle_cake","gray_candle_cake","light_gray_candle_cake","cyan_candle_cake","purple_candle_cake","blue_candle_cake","brown_candle_cake","green_candle_cake","red_candle_cake","black_candle_cake"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/64","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["amethyst_cluster"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/65"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle_cake","white_candle_cake","orange_candle_cake","magenta_candle_cake","light_blue_candle_cake","yellow_candle_cake","lime_candle_cake","pink_candle_cake","gray_candle_cake","light_gray_candle_cake","cyan_candle_cake","purple_candle_cake","blue_candle_cake","brown_candle_cake","green_candle_cake","red_candle_cake","black_candle_cake","amethyst_cluster","large_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/66","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/67"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud","small_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,8.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","calibrated_sculk_sensor"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/68"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle_cake","white_candle_cake","orange_candle_cake","magenta_candle_cake","light_blue_candle_cake","yellow_candle_cake","lime_candle_cake","pink_candle_cake","gray_candle_cake","light_gray_candle_cake","cyan_candle_cake","purple_candle_cake","blue_candle_cake","brown_candle_cake","green_candle_cake","red_candle_cake","black_candle_cake","amethyst_cluster","large_amethyst_bud","medium_amethyst_bud","small_amethyst_bud","sculk_sensor","calibrated_sculk_sensor","pointed_dripstone"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,13.0,2.0,14.0,16.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,8.0,0.0,16.0,16.0,16.0],[6.0,0.0,6.0,10.0,16.0,10.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["azalea","flowering_azalea"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/69"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom","azalea","flowering_azalea","pink_petals"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/70","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["big_dripleaf"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/71"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["big_dripleaf","big_dripleaf_stem"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,10.0,2.0,14.0,16.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hanging_roots"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.5,16.0]]}"}]}]}]}]}]}]}]}]}]}]} +{"pools":[{"rolls":1,"entries":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,12.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","pale_oak_sapling","seagrass"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/1","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["mangrove_propagule"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/2"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","pale_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/3","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["powered_rail","detector_rail","activator_rail"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/4","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sticky_piston","piston"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,13.0,14.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","pale_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,16.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tall_seagrass","sugar_cane"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/5","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piston_head"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[5.0,0.0,5.0,11.0,10.0,11.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[5.0,0.0,5.0,11.0,6.0,11.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_pale_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[6.0,0.0,6.0,10.0,10.0,10.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_pale_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/6","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["wall_torch","redstone_wall_torch","soul_wall_torch"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/7"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","pale_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf","tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley","brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_pale_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch","wall_torch","redstone_wall_torch","soul_wall_torch","fire"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/8","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","pale_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/9"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","pale_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/10","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/11"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["redstone_wire","wheat"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,15.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["farmland","dirt_path"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,16.0,12.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","pale_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest","redstone_wire","wheat","farmland","dirt_path","oak_sign","spruce_sign","birch_sign","acacia_sign","cherry_sign","jungle_sign","dark_oak_sign","pale_oak_sign","mangrove_sign","bamboo_sign","white_banner","orange_banner","magenta_banner","light_blue_banner","yellow_banner","lime_banner","pink_banner","gray_banner","light_gray_banner","cyan_banner","purple_banner","blue_banner","brown_banner","green_banner","red_banner","black_banner","twisting_vines_plant","crimson_sign","warped_sign"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/12","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","pale_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/13","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ladder"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/14"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","pale_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","ladder","rail"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/15","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","pale_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/16"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","pale_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign","oak_hanging_sign","spruce_hanging_sign","birch_hanging_sign","acacia_hanging_sign","cherry_hanging_sign","jungle_hanging_sign","dark_oak_hanging_sign","pale_oak_hanging_sign","crimson_hanging_sign","warped_hanging_sign","mangrove_hanging_sign","bamboo_hanging_sign"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/17","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_wall_hanging_sign","spruce_wall_hanging_sign","birch_wall_hanging_sign","acacia_wall_hanging_sign","cherry_wall_hanging_sign","jungle_wall_hanging_sign","dark_oak_wall_hanging_sign","pale_oak_wall_hanging_sign","mangrove_wall_hanging_sign","crimson_wall_hanging_sign","warped_wall_hanging_sign","bamboo_wall_hanging_sign"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/18"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","pale_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf","tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley","brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_pale_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch","wall_torch","redstone_wall_torch","soul_wall_torch","fire","soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","pale_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest","redstone_wire","wheat","farmland","dirt_path","oak_sign","spruce_sign","birch_sign","acacia_sign","cherry_sign","jungle_sign","dark_oak_sign","pale_oak_sign","mangrove_sign","bamboo_sign","white_banner","orange_banner","magenta_banner","light_blue_banner","yellow_banner","lime_banner","pink_banner","gray_banner","light_gray_banner","cyan_banner","purple_banner","blue_banner","brown_banner","green_banner","red_banner","black_banner","twisting_vines_plant","crimson_sign","warped_sign","oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","pale_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","ladder","rail","oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","pale_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign","oak_hanging_sign","spruce_hanging_sign","birch_hanging_sign","acacia_hanging_sign","cherry_hanging_sign","jungle_hanging_sign","dark_oak_hanging_sign","pale_oak_hanging_sign","crimson_hanging_sign","warped_hanging_sign","mangrove_hanging_sign","bamboo_hanging_sign","oak_wall_hanging_sign","spruce_wall_hanging_sign","birch_wall_hanging_sign","acacia_wall_hanging_sign","cherry_wall_hanging_sign","jungle_wall_hanging_sign","dark_oak_wall_hanging_sign","pale_oak_wall_hanging_sign","mangrove_wall_hanging_sign","crimson_wall_hanging_sign","warped_wall_hanging_sign","bamboo_wall_hanging_sign","lever"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/19","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","pale_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/20","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","pale_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/21"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","pale_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","pale_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,16.0,15.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/22"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot","oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","pale_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/23","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_portal"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/24"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","pale_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","pale_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow","cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot","oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","pale_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence","nether_portal","cake"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,2.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["repeater","comparator"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/25","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_trapdoor","spruce_trapdoor","birch_trapdoor","jungle_trapdoor","acacia_trapdoor","cherry_trapdoor","dark_oak_trapdoor","pale_oak_trapdoor","mangrove_trapdoor","bamboo_trapdoor","iron_trapdoor","crimson_trapdoor","warped_trapdoor","copper_trapdoor","exposed_copper_trapdoor","oxidized_copper_trapdoor","weathered_copper_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/26"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["repeater","comparator","oak_trapdoor","spruce_trapdoor","birch_trapdoor","jungle_trapdoor","acacia_trapdoor","cherry_trapdoor","dark_oak_trapdoor","pale_oak_trapdoor","mangrove_trapdoor","bamboo_trapdoor","iron_trapdoor","crimson_trapdoor","warped_trapdoor","copper_trapdoor","exposed_copper_trapdoor","oxidized_copper_trapdoor","weathered_copper_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","iron_bars","glass_pane","white_stained_glass_pane","orange_stained_glass_pane","magenta_stained_glass_pane","light_blue_stained_glass_pane","yellow_stained_glass_pane","lime_stained_glass_pane","pink_stained_glass_pane","gray_stained_glass_pane","light_gray_stained_glass_pane","cyan_stained_glass_pane","purple_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","green_stained_glass_pane","red_stained_glass_pane","black_stained_glass_pane"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/27","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chain"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/28"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["chain","attached_pumpkin_stem","attached_melon_stem"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/29","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pumpkin_stem","melon_stem"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/30"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","pale_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","pale_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow","cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot","oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","pale_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence","nether_portal","cake","repeater","comparator","oak_trapdoor","spruce_trapdoor","birch_trapdoor","jungle_trapdoor","acacia_trapdoor","cherry_trapdoor","dark_oak_trapdoor","pale_oak_trapdoor","mangrove_trapdoor","bamboo_trapdoor","iron_trapdoor","crimson_trapdoor","warped_trapdoor","copper_trapdoor","exposed_copper_trapdoor","oxidized_copper_trapdoor","weathered_copper_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","iron_bars","glass_pane","white_stained_glass_pane","orange_stained_glass_pane","magenta_stained_glass_pane","light_blue_stained_glass_pane","yellow_stained_glass_pane","lime_stained_glass_pane","pink_stained_glass_pane","gray_stained_glass_pane","light_gray_stained_glass_pane","cyan_stained_glass_pane","purple_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","green_stained_glass_pane","red_stained_glass_pane","black_stained_glass_pane","chain","attached_pumpkin_stem","attached_melon_stem","pumpkin_stem","melon_stem","vine"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/31","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glow_lichen","sculk_vein"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/32","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_fence_gate","spruce_fence_gate","birch_fence_gate","jungle_fence_gate","acacia_fence_gate","cherry_fence_gate","dark_oak_fence_gate","pale_oak_fence_gate","mangrove_fence_gate","bamboo_fence_gate","crimson_fence_gate","warped_fence_gate"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,1.5,15.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glow_lichen","sculk_vein","oak_fence_gate","spruce_fence_gate","birch_fence_gate","jungle_fence_gate","acacia_fence_gate","cherry_fence_gate","dark_oak_fence_gate","pale_oak_fence_gate","mangrove_fence_gate","bamboo_fence_gate","crimson_fence_gate","warped_fence_gate","lily_pad"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/33","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_wart"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,12.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_wart","enchanting_table"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,2.0,15.0],[7.0,2.0,7.0,9.0,14.0,9.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["brewing_stand"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,4.0,16.0,2.0],[0.0,0.0,2.0,2.0,16.0,4.0],[0.0,0.0,12.0,2.0,16.0,16.0],[0.0,3.0,4.0,2.0,16.0,16.0],[2.0,0.0,14.0,4.0,16.0,16.0],[2.0,3.0,2.0,16.0,4.0,16.0],[4.0,3.0,0.0,16.0,16.0,2.0],[4.0,4.0,14.0,16.0,16.0,16.0],[12.0,0.0,0.0,16.0,16.0,2.0],[12.0,0.0,14.0,16.0,16.0,16.0],[14.0,0.0,2.0,16.0,16.0,4.0],[14.0,0.0,12.0,16.0,16.0,16.0],[14.0,4.0,4.0,16.0,16.0,16.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["glow_lichen","sculk_vein","oak_fence_gate","spruce_fence_gate","birch_fence_gate","jungle_fence_gate","acacia_fence_gate","cherry_fence_gate","dark_oak_fence_gate","pale_oak_fence_gate","mangrove_fence_gate","bamboo_fence_gate","crimson_fence_gate","warped_fence_gate","lily_pad","nether_wart","enchanting_table","brewing_stand","cauldron","water_cauldron","lava_cauldron","powder_snow_cauldron"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,6.0,0.0,16.0,12.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_portal"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/34","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_portal_frame"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/35"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_portal","end_portal_frame","cocoa"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,14.0,15.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ender_chest"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/36"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["ender_chest","tripwire_hook"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/37","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["tripwire"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/38"}]}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["oak_sapling","spruce_sapling","birch_sapling","jungle_sapling","acacia_sapling","cherry_sapling","dark_oak_sapling","pale_oak_sapling","seagrass","mangrove_propagule","white_bed","orange_bed","magenta_bed","light_blue_bed","yellow_bed","lime_bed","pink_bed","gray_bed","light_gray_bed","cyan_bed","purple_bed","blue_bed","brown_bed","green_bed","red_bed","black_bed","powered_rail","detector_rail","activator_rail","sticky_piston","piston","short_grass","fern","dead_bush","warped_roots","crimson_roots","small_dripleaf","tall_seagrass","sugar_cane","piston_head","dandelion","torchflower","poppy","blue_orchid","allium","azure_bluet","red_tulip","orange_tulip","white_tulip","pink_tulip","oxeye_daisy","cornflower","wither_rose","lily_of_the_valley","brown_mushroom","red_mushroom","flower_pot","potted_torchflower","potted_oak_sapling","potted_spruce_sapling","potted_birch_sapling","potted_jungle_sapling","potted_acacia_sapling","potted_cherry_sapling","potted_dark_oak_sapling","potted_pale_oak_sapling","potted_mangrove_propagule","potted_fern","potted_dandelion","potted_poppy","potted_blue_orchid","potted_allium","potted_azure_bluet","potted_red_tulip","potted_orange_tulip","potted_white_tulip","potted_pink_tulip","potted_oxeye_daisy","potted_cornflower","potted_lily_of_the_valley","potted_wither_rose","potted_red_mushroom","potted_brown_mushroom","potted_dead_bush","potted_cactus","potted_bamboo","potted_crimson_fungus","potted_warped_fungus","potted_crimson_roots","potted_warped_roots","potted_azalea_bush","potted_flowering_azalea_bush","torch","redstone_torch","soul_torch","wall_torch","redstone_wall_torch","soul_wall_torch","fire","soul_fire","white_carpet","orange_carpet","magenta_carpet","light_blue_carpet","yellow_carpet","lime_carpet","pink_carpet","gray_carpet","light_gray_carpet","cyan_carpet","purple_carpet","blue_carpet","brown_carpet","green_carpet","red_carpet","black_carpet","moss_carpet","oak_stairs","cobblestone_stairs","brick_stairs","stone_brick_stairs","mud_brick_stairs","nether_brick_stairs","sandstone_stairs","spruce_stairs","birch_stairs","jungle_stairs","quartz_stairs","acacia_stairs","cherry_stairs","dark_oak_stairs","pale_oak_stairs","mangrove_stairs","bamboo_stairs","bamboo_mosaic_stairs","prismarine_stairs","prismarine_brick_stairs","dark_prismarine_stairs","red_sandstone_stairs","purpur_stairs","polished_granite_stairs","smooth_red_sandstone_stairs","mossy_stone_brick_stairs","polished_diorite_stairs","mossy_cobblestone_stairs","end_stone_brick_stairs","stone_stairs","smooth_sandstone_stairs","smooth_quartz_stairs","granite_stairs","andesite_stairs","red_nether_brick_stairs","polished_andesite_stairs","diorite_stairs","crimson_stairs","warped_stairs","blackstone_stairs","polished_blackstone_brick_stairs","polished_blackstone_stairs","tuff_stairs","polished_tuff_stairs","tuff_brick_stairs","oxidized_cut_copper_stairs","weathered_cut_copper_stairs","exposed_cut_copper_stairs","cut_copper_stairs","waxed_oxidized_cut_copper_stairs","waxed_weathered_cut_copper_stairs","waxed_exposed_cut_copper_stairs","waxed_cut_copper_stairs","cobbled_deepslate_stairs","polished_deepslate_stairs","deepslate_tile_stairs","deepslate_brick_stairs","chest","trapped_chest","redstone_wire","wheat","farmland","dirt_path","oak_sign","spruce_sign","birch_sign","acacia_sign","cherry_sign","jungle_sign","dark_oak_sign","pale_oak_sign","mangrove_sign","bamboo_sign","white_banner","orange_banner","magenta_banner","light_blue_banner","yellow_banner","lime_banner","pink_banner","gray_banner","light_gray_banner","cyan_banner","purple_banner","blue_banner","brown_banner","green_banner","red_banner","black_banner","twisting_vines_plant","crimson_sign","warped_sign","oak_door","iron_door","spruce_door","birch_door","jungle_door","acacia_door","cherry_door","dark_oak_door","pale_oak_door","mangrove_door","bamboo_door","crimson_door","warped_door","copper_door","exposed_copper_door","oxidized_copper_door","weathered_copper_door","waxed_copper_door","waxed_exposed_copper_door","waxed_oxidized_copper_door","waxed_weathered_copper_door","ladder","rail","oak_wall_sign","spruce_wall_sign","birch_wall_sign","acacia_wall_sign","cherry_wall_sign","jungle_wall_sign","dark_oak_wall_sign","pale_oak_wall_sign","mangrove_wall_sign","bamboo_wall_sign","crimson_wall_sign","warped_wall_sign","oak_hanging_sign","spruce_hanging_sign","birch_hanging_sign","acacia_hanging_sign","cherry_hanging_sign","jungle_hanging_sign","dark_oak_hanging_sign","pale_oak_hanging_sign","crimson_hanging_sign","warped_hanging_sign","mangrove_hanging_sign","bamboo_hanging_sign","oak_wall_hanging_sign","spruce_wall_hanging_sign","birch_wall_hanging_sign","acacia_wall_hanging_sign","cherry_wall_hanging_sign","jungle_wall_hanging_sign","dark_oak_wall_hanging_sign","pale_oak_wall_hanging_sign","mangrove_wall_hanging_sign","crimson_wall_hanging_sign","warped_wall_hanging_sign","bamboo_wall_hanging_sign","lever","stone_pressure_plate","oak_pressure_plate","spruce_pressure_plate","birch_pressure_plate","jungle_pressure_plate","acacia_pressure_plate","cherry_pressure_plate","dark_oak_pressure_plate","pale_oak_pressure_plate","mangrove_pressure_plate","bamboo_pressure_plate","crimson_pressure_plate","warped_pressure_plate","polished_blackstone_pressure_plate","stone_button","oak_button","spruce_button","birch_button","jungle_button","acacia_button","cherry_button","dark_oak_button","pale_oak_button","mangrove_button","bamboo_button","crimson_button","warped_button","polished_blackstone_button","snow","cactus","dragon_egg","weeping_vines_plant","cave_vines","cave_vines_plant","decorated_pot","oak_fence","nether_brick_fence","spruce_fence","birch_fence","jungle_fence","acacia_fence","cherry_fence","dark_oak_fence","pale_oak_fence","mangrove_fence","bamboo_fence","crimson_fence","warped_fence","nether_portal","cake","repeater","comparator","oak_trapdoor","spruce_trapdoor","birch_trapdoor","jungle_trapdoor","acacia_trapdoor","cherry_trapdoor","dark_oak_trapdoor","pale_oak_trapdoor","mangrove_trapdoor","bamboo_trapdoor","iron_trapdoor","crimson_trapdoor","warped_trapdoor","copper_trapdoor","exposed_copper_trapdoor","oxidized_copper_trapdoor","weathered_copper_trapdoor","waxed_copper_trapdoor","waxed_exposed_copper_trapdoor","waxed_oxidized_copper_trapdoor","waxed_weathered_copper_trapdoor","iron_bars","glass_pane","white_stained_glass_pane","orange_stained_glass_pane","magenta_stained_glass_pane","light_blue_stained_glass_pane","yellow_stained_glass_pane","lime_stained_glass_pane","pink_stained_glass_pane","gray_stained_glass_pane","light_gray_stained_glass_pane","cyan_stained_glass_pane","purple_stained_glass_pane","blue_stained_glass_pane","brown_stained_glass_pane","green_stained_glass_pane","red_stained_glass_pane","black_stained_glass_pane","chain","attached_pumpkin_stem","attached_melon_stem","pumpkin_stem","melon_stem","vine","glow_lichen","sculk_vein","oak_fence_gate","spruce_fence_gate","birch_fence_gate","jungle_fence_gate","acacia_fence_gate","cherry_fence_gate","dark_oak_fence_gate","pale_oak_fence_gate","mangrove_fence_gate","bamboo_fence_gate","crimson_fence_gate","warped_fence_gate","lily_pad","nether_wart","enchanting_table","brewing_stand","cauldron","water_cauldron","lava_cauldron","powder_snow_cauldron","end_portal","end_portal_frame","cocoa","ender_chest","tripwire_hook","tripwire","cobblestone_wall","mossy_cobblestone_wall","brick_wall","prismarine_wall","red_sandstone_wall","mossy_stone_brick_wall","granite_wall","stone_brick_wall","mud_brick_wall","nether_brick_wall","andesite_wall","red_nether_brick_wall","sandstone_wall","end_stone_brick_wall","diorite_wall","blackstone_wall","polished_blackstone_brick_wall","polished_blackstone_wall","tuff_wall","polished_tuff_wall","tuff_brick_wall","cobbled_deepslate_wall","polished_deepslate_wall","deepslate_tile_wall","deepslate_brick_wall"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/39","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","potatoes"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,8.0,12.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/40"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[3.0,0.0,3.0,13.0,8.0,13.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piglin_head"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/41","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["piglin_wall_head"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/42"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head","piglin_head","piglin_wall_head","anvil","chipped_anvil","damaged_anvil"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/43","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_weighted_pressure_plate","heavy_weighted_pressure_plate"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,6.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["daylight_detector"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/44"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["light_weighted_pressure_plate","heavy_weighted_pressure_plate","daylight_detector","hopper"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/45","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab","prismarine_brick_slab","dark_prismarine_slab","oak_slab","spruce_slab","birch_slab","jungle_slab","acacia_slab","cherry_slab","dark_oak_slab","pale_oak_slab","mangrove_slab","bamboo_slab","bamboo_mosaic_slab","stone_slab","smooth_stone_slab","sandstone_slab","cut_sandstone_slab","petrified_oak_slab","cobblestone_slab","brick_slab","stone_brick_slab","mud_brick_slab","nether_brick_slab","quartz_slab","red_sandstone_slab","cut_red_sandstone_slab","purpur_slab","polished_granite_slab","smooth_red_sandstone_slab","mossy_stone_brick_slab","polished_diorite_slab","mossy_cobblestone_slab","end_stone_brick_slab","smooth_sandstone_slab","smooth_quartz_slab","granite_slab","andesite_slab","red_nether_brick_slab","polished_andesite_slab","diorite_slab","crimson_slab","warped_slab","blackstone_slab","polished_blackstone_brick_slab","polished_blackstone_slab","tuff_slab","polished_tuff_slab","tuff_brick_slab","oxidized_cut_copper_slab","weathered_cut_copper_slab","exposed_cut_copper_slab","cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_cut_copper_slab","cobbled_deepslate_slab","polished_deepslate_slab","deepslate_tile_slab","deepslate_brick_slab"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/46"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["prismarine_slab","prismarine_brick_slab","dark_prismarine_slab","oak_slab","spruce_slab","birch_slab","jungle_slab","acacia_slab","cherry_slab","dark_oak_slab","pale_oak_slab","mangrove_slab","bamboo_slab","bamboo_mosaic_slab","stone_slab","smooth_stone_slab","sandstone_slab","cut_sandstone_slab","petrified_oak_slab","cobblestone_slab","brick_slab","stone_brick_slab","mud_brick_slab","nether_brick_slab","quartz_slab","red_sandstone_slab","cut_red_sandstone_slab","purpur_slab","polished_granite_slab","smooth_red_sandstone_slab","mossy_stone_brick_slab","polished_diorite_slab","mossy_cobblestone_slab","end_stone_brick_slab","smooth_sandstone_slab","smooth_quartz_slab","granite_slab","andesite_slab","red_nether_brick_slab","polished_andesite_slab","diorite_slab","crimson_slab","warped_slab","blackstone_slab","polished_blackstone_brick_slab","polished_blackstone_slab","tuff_slab","polished_tuff_slab","tuff_brick_slab","oxidized_cut_copper_slab","weathered_cut_copper_slab","exposed_cut_copper_slab","cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_cut_copper_slab","cobbled_deepslate_slab","polished_deepslate_slab","deepslate_tile_slab","deepslate_brick_slab","white_wall_banner","orange_wall_banner","magenta_wall_banner","light_blue_wall_banner","yellow_wall_banner","lime_wall_banner","pink_wall_banner","gray_wall_banner","light_gray_wall_banner","cyan_wall_banner","purple_wall_banner","blue_wall_banner","brown_wall_banner","green_wall_banner","red_wall_banner","black_wall_banner"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/47","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["end_rod","lightning_rod"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/48"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head","piglin_head","piglin_wall_head","anvil","chipped_anvil","damaged_anvil","light_weighted_pressure_plate","heavy_weighted_pressure_plate","daylight_detector","hopper","prismarine_slab","prismarine_brick_slab","dark_prismarine_slab","oak_slab","spruce_slab","birch_slab","jungle_slab","acacia_slab","cherry_slab","dark_oak_slab","pale_oak_slab","mangrove_slab","bamboo_slab","bamboo_mosaic_slab","stone_slab","smooth_stone_slab","sandstone_slab","cut_sandstone_slab","petrified_oak_slab","cobblestone_slab","brick_slab","stone_brick_slab","mud_brick_slab","nether_brick_slab","quartz_slab","red_sandstone_slab","cut_red_sandstone_slab","purpur_slab","polished_granite_slab","smooth_red_sandstone_slab","mossy_stone_brick_slab","polished_diorite_slab","mossy_cobblestone_slab","end_stone_brick_slab","smooth_sandstone_slab","smooth_quartz_slab","granite_slab","andesite_slab","red_nether_brick_slab","polished_andesite_slab","diorite_slab","crimson_slab","warped_slab","blackstone_slab","polished_blackstone_brick_slab","polished_blackstone_slab","tuff_slab","polished_tuff_slab","tuff_brick_slab","oxidized_cut_copper_slab","weathered_cut_copper_slab","exposed_cut_copper_slab","cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_cut_copper_slab","cobbled_deepslate_slab","polished_deepslate_slab","deepslate_tile_slab","deepslate_brick_slab","white_wall_banner","orange_wall_banner","magenta_wall_banner","light_blue_wall_banner","yellow_wall_banner","lime_wall_banner","pink_wall_banner","gray_wall_banner","light_gray_wall_banner","cyan_wall_banner","purple_wall_banner","blue_wall_banner","brown_wall_banner","green_wall_banner","red_wall_banner","black_wall_banner","end_rod","lightning_rod","chorus_plant"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/49","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower_crop"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/50","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pitcher_crop"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/51"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower_crop","pitcher_crop","beetroots"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[5.0,5.0,5.0,11.0,11.0,11.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_void","conduit"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,9.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["structure_void","conduit","kelp","stonecutter"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/52","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["turtle_egg"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,2.0,15.0,16.0,14.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["torchflower_crop","pitcher_crop","beetroots","structure_void","conduit","kelp","stonecutter","turtle_egg","sniffer_egg"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,15.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral","dead_brain_coral","dead_bubble_coral","dead_fire_coral","dead_horn_coral","tube_coral","brain_coral","bubble_coral","fire_coral","horn_coral"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,4.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral_fan","dead_brain_coral_fan","dead_bubble_coral_fan","dead_fire_coral_fan","dead_horn_coral_fan","tube_coral_fan","brain_coral_fan","bubble_coral_fan","fire_coral_fan","horn_coral_fan"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/53"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["dead_tube_coral","dead_brain_coral","dead_bubble_coral","dead_fire_coral","dead_horn_coral","tube_coral","brain_coral","bubble_coral","fire_coral","horn_coral","dead_tube_coral_fan","dead_brain_coral_fan","dead_bubble_coral_fan","dead_fire_coral_fan","dead_horn_coral_fan","tube_coral_fan","brain_coral_fan","bubble_coral_fan","fire_coral_fan","horn_coral_fan","dead_tube_coral_wall_fan","dead_brain_coral_wall_fan","dead_bubble_coral_wall_fan","dead_fire_coral_wall_fan","dead_horn_coral_wall_fan","tube_coral_wall_fan","brain_coral_wall_fan","bubble_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/54","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sea_pickle"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,12.0,12.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sea_pickle","bamboo_sapling"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/55","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["bamboo"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/56"}]}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["carrots","potatoes","skeleton_skull","wither_skeleton_skull","zombie_head","player_head","creeper_head","dragon_head","heavy_core","skeleton_wall_skull","wither_skeleton_wall_skull","zombie_wall_head","player_wall_head","creeper_wall_head","dragon_wall_head","piglin_head","piglin_wall_head","anvil","chipped_anvil","damaged_anvil","light_weighted_pressure_plate","heavy_weighted_pressure_plate","daylight_detector","hopper","prismarine_slab","prismarine_brick_slab","dark_prismarine_slab","oak_slab","spruce_slab","birch_slab","jungle_slab","acacia_slab","cherry_slab","dark_oak_slab","pale_oak_slab","mangrove_slab","bamboo_slab","bamboo_mosaic_slab","stone_slab","smooth_stone_slab","sandstone_slab","cut_sandstone_slab","petrified_oak_slab","cobblestone_slab","brick_slab","stone_brick_slab","mud_brick_slab","nether_brick_slab","quartz_slab","red_sandstone_slab","cut_red_sandstone_slab","purpur_slab","polished_granite_slab","smooth_red_sandstone_slab","mossy_stone_brick_slab","polished_diorite_slab","mossy_cobblestone_slab","end_stone_brick_slab","smooth_sandstone_slab","smooth_quartz_slab","granite_slab","andesite_slab","red_nether_brick_slab","polished_andesite_slab","diorite_slab","crimson_slab","warped_slab","blackstone_slab","polished_blackstone_brick_slab","polished_blackstone_slab","tuff_slab","polished_tuff_slab","tuff_brick_slab","oxidized_cut_copper_slab","weathered_cut_copper_slab","exposed_cut_copper_slab","cut_copper_slab","waxed_oxidized_cut_copper_slab","waxed_weathered_cut_copper_slab","waxed_exposed_cut_copper_slab","waxed_cut_copper_slab","cobbled_deepslate_slab","polished_deepslate_slab","deepslate_tile_slab","deepslate_brick_slab","white_wall_banner","orange_wall_banner","magenta_wall_banner","light_blue_wall_banner","yellow_wall_banner","lime_wall_banner","pink_wall_banner","gray_wall_banner","light_gray_wall_banner","cyan_wall_banner","purple_wall_banner","blue_wall_banner","brown_wall_banner","green_wall_banner","red_wall_banner","black_wall_banner","end_rod","lightning_rod","chorus_plant","torchflower_crop","pitcher_crop","beetroots","structure_void","conduit","kelp","stonecutter","turtle_egg","sniffer_egg","dead_tube_coral","dead_brain_coral","dead_bubble_coral","dead_fire_coral","dead_horn_coral","tube_coral","brain_coral","bubble_coral","fire_coral","horn_coral","dead_tube_coral_fan","dead_brain_coral_fan","dead_bubble_coral_fan","dead_fire_coral_fan","dead_horn_coral_fan","tube_coral_fan","brain_coral_fan","bubble_coral_fan","fire_coral_fan","horn_coral_fan","dead_tube_coral_wall_fan","dead_brain_coral_wall_fan","dead_bubble_coral_wall_fan","dead_fire_coral_wall_fan","dead_horn_coral_wall_fan","tube_coral_wall_fan","brain_coral_wall_fan","bubble_coral_wall_fan","fire_coral_wall_fan","horn_coral_wall_fan","sea_pickle","bamboo_sapling","bamboo","scaffolding"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/57","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grindstone"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/58","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lectern"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/59"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grindstone","lectern","bell"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/60","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lantern","soul_lantern"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,7.0,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["lantern","soul_lantern","campfire","soul_campfire"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/61","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sweet_berry_bush"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,9.0,12.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grindstone","lectern","bell","lantern","soul_lantern","campfire","soul_campfire","sweet_berry_bush","warped_fungus","crimson_fungus"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,0.0,2.0,14.0,3.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,9.0,4.0,12.0,16.0,12.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["weeping_vines"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[4.0,0.0,4.0,12.0,15.0,12.0]]}"}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["nether_sprouts","weeping_vines","twisting_vines"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/62","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/63"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["composter","candle","white_candle","orange_candle","magenta_candle","light_blue_candle","yellow_candle","lime_candle","pink_candle","gray_candle","light_gray_candle","cyan_candle","purple_candle","blue_candle","brown_candle","green_candle","red_candle","black_candle"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[1.0,0.0,1.0,15.0,8.0,15.0],[7.0,8.0,7.0,9.0,14.0,9.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["candle_cake","white_candle_cake","orange_candle_cake","magenta_candle_cake","light_blue_candle_cake","yellow_candle_cake","lime_candle_cake","pink_candle_cake","gray_candle_cake","light_gray_candle_cake","cyan_candle_cake","purple_candle_cake","blue_candle_cake","brown_candle_cake","green_candle_cake","red_candle_cake","black_candle_cake"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/64"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["grindstone","lectern","bell","lantern","soul_lantern","campfire","soul_campfire","sweet_berry_bush","warped_fungus","crimson_fungus","nether_sprouts","weeping_vines","twisting_vines","composter","candle","white_candle","orange_candle","magenta_candle","light_blue_candle","yellow_candle","lime_candle","pink_candle","gray_candle","light_gray_candle","cyan_candle","purple_candle","blue_candle","brown_candle","green_candle","red_candle","black_candle","candle_cake","white_candle_cake","orange_candle_cake","magenta_candle_cake","light_blue_candle_cake","yellow_candle_cake","lime_candle_cake","pink_candle_cake","gray_candle_cake","light_gray_candle_cake","cyan_candle_cake","purple_candle_cake","blue_candle_cake","brown_candle_cake","green_candle_cake","red_candle_cake","black_candle_cake","amethyst_cluster"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/65","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/66","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["medium_amethyst_bud"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/67"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_amethyst_bud","medium_amethyst_bud","small_amethyst_bud"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,8.0,16.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","calibrated_sculk_sensor"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/68"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["sculk_sensor","calibrated_sculk_sensor","pointed_dripstone"]}}}]},{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,13.0,2.0,14.0,16.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["spore_blossom"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,8.0,0.0,16.0,16.0,16.0],[6.0,0.0,6.0,10.0,16.0,10.0]]}"}]}]}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["large_amethyst_bud","medium_amethyst_bud","small_amethyst_bud","sculk_sensor","calibrated_sculk_sensor","pointed_dripstone","spore_blossom","azalea","flowering_azalea"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/69","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_petals"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/70","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["big_dripleaf"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/71"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pink_petals","big_dripleaf","big_dripleaf_stem"]}}}]},{"type":"alternatives","children":[{"type":"alternatives","children":[{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[2.0,10.0,2.0,14.0,16.0,14.0]]}"}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hanging_roots"]}}}]},{"type":"item","name":"egg","functions":[{"function":"set_custom_data","tag":"{shape:[[0.0,0.0,0.0,16.0,1.5,16.0]]}"}]}],"conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["hanging_roots","frogspawn"]}}}]},{"type":"alternatives","children":[{"type":"loot_table","value":"bs.hitbox:get_block/72","conditions":[{"condition":"location_check","predicate":{"block":{"blocks":["pale_moss_carpet"]}}}]},{"type":"loot_table","value":"bs.hitbox:get_block/73"}]}]}]}]}]}]}]}]}]} diff --git a/datapacks/Bookshelf/data/bs.hitbox/tags/block/has_offset.json b/datapacks/Bookshelf/data/bs.hitbox/tags/block/has_offset.json index 0f8694e47b..f64d7a59dc 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/tags/block/has_offset.json +++ b/datapacks/Bookshelf/data/bs.hitbox/tags/block/has_offset.json @@ -10,8 +10,8 @@ "minecraft_version": "1.21" }, "updated": { - "date": "2024/09/28", - "minecraft_version": "1.21" + "date": "2024/10/24", + "minecraft_version": "1.21.2" } }, "values": [ diff --git a/datapacks/Bookshelf/data/bs.hitbox/tags/block/is_composite.json b/datapacks/Bookshelf/data/bs.hitbox/tags/block/is_composite.json index d73fc154b4..293ea362bd 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/tags/block/is_composite.json +++ b/datapacks/Bookshelf/data/bs.hitbox/tags/block/is_composite.json @@ -10,8 +10,8 @@ "minecraft_version": "1.21" }, "updated": { - "date": "2024/09/28", - "minecraft_version": "1.21" + "date": "2024/10/24", + "minecraft_version": "1.21.2" } }, "values": [ @@ -385,6 +385,21 @@ "minecraft:oxidized_copper_trapdoor", "minecraft:oxidized_cut_copper_slab", "minecraft:oxidized_cut_copper_stairs", + "minecraft:pale_hanging_moss", + "minecraft:pale_moss_carpet", + "minecraft:pale_oak_button", + "minecraft:pale_oak_door", + "minecraft:pale_oak_fence", + "minecraft:pale_oak_fence_gate", + "minecraft:pale_oak_hanging_sign", + "minecraft:pale_oak_pressure_plate", + "minecraft:pale_oak_sapling", + "minecraft:pale_oak_sign", + "minecraft:pale_oak_slab", + "minecraft:pale_oak_stairs", + "minecraft:pale_oak_trapdoor", + "minecraft:pale_oak_wall_hanging_sign", + "minecraft:pale_oak_wall_sign", "minecraft:petrified_oak_slab", "minecraft:piglin_head", "minecraft:piglin_wall_head", @@ -449,6 +464,7 @@ "minecraft:potted_oak_sapling", "minecraft:potted_orange_tulip", "minecraft:potted_oxeye_daisy", + "minecraft:potted_pale_oak_sapling", "minecraft:potted_pink_tulip", "minecraft:potted_poppy", "minecraft:potted_red_mushroom", diff --git a/datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/is_sized.json b/datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/is_sized.json new file mode 100644 index 0000000000..0649c3de0f --- /dev/null +++ b/datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/is_sized.json @@ -0,0 +1,88 @@ +{ + "__bookshelf__": { + "feature": true, + "documentation": "https://bookshelf.docs.gunivers.net/en/latest/modules/hitbox.html#is-sized", + "authors": [ + "Aksiome" + ], + "created": { + "date": "2024/10/28", + "minecraft_version": "1.21.2" + }, + "updated": { + "date": "2024/10/28", + "minecraft_version": "1.21.2" + } + }, + "values": [ + "#bs.hitbox:size/arrow_like", + "#bs.hitbox:size/bat_like", + "#bs.hitbox:size/boat", + "#bs.hitbox:size/cat_like", + "#bs.hitbox:size/cow_like", + "#bs.hitbox:size/falling_block_like", + "#bs.hitbox:size/hoglin", + "#bs.hitbox:size/horse_like", + "#bs.hitbox:size/item_like", + "#bs.hitbox:size/llama", + "#bs.hitbox:size/minecart", + "#bs.hitbox:size/shulker_like", + "#bs.hitbox:size/silverfish_like", + "#bs.hitbox:size/skeleton", + "#bs.hitbox:size/slime_like", + "#bs.hitbox:size/small_fireball_like", + "#bs.hitbox:size/zombie_like", + "minecraft:allay", + "minecraft:area_effect_cloud", + "minecraft:armadillo", + "minecraft:armor_stand", + "minecraft:axolotl", + "minecraft:bee", + "minecraft:blaze", + "minecraft:breeze", + "minecraft:camel", + "minecraft:cave_spider", + "minecraft:chicken", + "minecraft:cod", + "minecraft:creeper", + "minecraft:dolphin", + "minecraft:donkey", + "minecraft:elder_guardian", + "minecraft:end_crystal", + "minecraft:ender_dragon", + "minecraft:enderman", + "minecraft:evoker_fangs", + "minecraft:frog", + "minecraft:ghast", + "minecraft:giant", + "minecraft:goat", + "minecraft:guardian", + "minecraft:interaction", + "minecraft:iron_golem", + "minecraft:leash_knot", + "minecraft:panda", + "minecraft:phantom", + "minecraft:pig", + "minecraft:player", + "minecraft:polar_bear", + "minecraft:pufferfish", + "minecraft:rabbit", + "minecraft:ravager", + "minecraft:salmon", + "minecraft:sheep", + "minecraft:sniffer", + "minecraft:snow_golem", + "minecraft:spider", + "minecraft:squid", + "minecraft:strider", + "minecraft:tadpole", + "minecraft:tropical_fish", + "minecraft:turtle", + "minecraft:vex", + "minecraft:villager", + "minecraft:warden", + "minecraft:wither_skeleton", + "minecraft:wither", + "minecraft:wolf" + ] +} diff --git a/datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/size/boat.json b/datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/size/boat.json index 00c1335ae2..dd7f16d651 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/size/boat.json +++ b/datapacks/Bookshelf/data/bs.hitbox/tags/entity_type/size/boat.json @@ -1,6 +1,24 @@ { "values": [ - "minecraft:boat", - "minecraft:chest_boat" + "minecraft:acacia_boat", + "minecraft:acacia_chest_boat", + "minecraft:bamboo_chest_raft", + "minecraft:bamboo_raft", + "minecraft:birch_boat", + "minecraft:birch_chest_boat", + "minecraft:cherry_boat", + "minecraft:cherry_chest_boat", + "minecraft:dark_oak_boat", + "minecraft:dark_oak_chest_boat", + "minecraft:jungle_boat", + "minecraft:jungle_chest_boat", + "minecraft:mangrove_boat", + "minecraft:mangrove_chest_boat", + "minecraft:oak_boat", + "minecraft:oak_chest_boat", + "minecraft:pale_oak_boat", + "minecraft:pale_oak_chest_boat", + "minecraft:spruce_boat", + "minecraft:spruce_chest_boat" ] } diff --git a/datapacks/Bookshelf/data/bs.hitbox/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.hitbox/tags/function/exclusive_load.json new file mode 100644 index 0000000000..90c5d360aa --- /dev/null +++ b/datapacks/Bookshelf/data/bs.hitbox/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.hitbox:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.hitbox/tags/function/load.json b/datapacks/Bookshelf/data/bs.hitbox/tags/function/load.json index 46f6dffeb8..5483a49b48 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.hitbox/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.hitbox:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.hitbox/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/test/__boot__.mcfunction index 02129a3335..383db6feab 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.hitbox -# @beforebatch function #bs.hitbox:load +# @beforebatch function #bs.hitbox:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_block.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_block.mcfunction index 6aa2fc060e..7ed53ee891 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_block.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_block.mcfunction @@ -1,13 +1,14 @@ # @batch bs.hitbox # @dummy -fill ~-1 ~-1 ~-1 ~1 ~1 ~1 minecraft:air +fill ~-1 ~-1 ~-1 ~1 ~1 ~1 minecraft:air replace minecraft:barrier setblock ~ ~ ~ minecraft:stone_slab[type=bottom] ## |TEST CASE|: Entity is not inside the block tp @s ~.5 ~.75 ~.5 execute if function #bs.hitbox:is_entity_in_block run fail "Entity should not be inside the slab" tp @s ~-.3 ~ ~-.3 +await delay 5t execute if function #bs.hitbox:is_entity_in_block run fail "Entity should not be inside the slab" ## |TEST CASE|: Entity is inside the block diff --git a/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_blocks.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_blocks.mcfunction index 4093ef9357..aa969dbdbd 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_blocks.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/test/entity_in_blocks.mcfunction @@ -1,7 +1,7 @@ # @batch bs.hitbox # @dummy -fill ~-1 ~-1 ~-1 ~1 ~1 ~1 minecraft:air +fill ~-1 ~-1 ~-1 ~1 ~1 ~1 minecraft:air replace minecraft:barrier setblock ~-1 ~ ~-1 minecraft:bookshelf ## |TEST CASE|: Entity is not inside a block diff --git a/datapacks/Bookshelf/data/bs.hitbox/test/entity_scale.mcfunction b/datapacks/Bookshelf/data/bs.hitbox/test/entity_scale.mcfunction index 57144ff568..28c3e73978 100644 --- a/datapacks/Bookshelf/data/bs.hitbox/test/entity_scale.mcfunction +++ b/datapacks/Bookshelf/data/bs.hitbox/test/entity_scale.mcfunction @@ -6,6 +6,6 @@ function #bs.hitbox:get_entity assert data storage bs:out hitbox{ scale: 1.0 } ## |TEST CASE|: Custom entity scale -attribute @s minecraft:generic.scale base set 0.42 +attribute @s minecraft:scale base set 0.42 function #bs.hitbox:get_entity assert data storage bs:out hitbox{ scale: 0.42 } diff --git a/datapacks/Bookshelf/data/bs.id/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.id/function/__load__.mcfunction index 9209c41bd2..6641095bfc 100644 --- a/datapacks/Bookshelf/data/bs.id/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.id/function/__load__.mcfunction @@ -18,4 +18,3 @@ scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] scoreboard objectives add bs.id dummy [{"text":"BS ","color":"dark_gray"},{"text":"ID","color":"aqua"}] scoreboard objectives add bs.cid dummy [{"text":"BS ","color":"dark_gray"},{"text":"Chain ID","color":"aqua"}] -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] diff --git a/datapacks/Bookshelf/data/bs.id/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.id/function/__unload__.mcfunction index d0ee191b72..63ed9cefe4 100644 --- a/datapacks/Bookshelf/data/bs.id/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.id/function/__unload__.mcfunction @@ -18,4 +18,3 @@ scoreboard objectives remove bs.in scoreboard objectives remove bs.id scoreboard objectives remove bs.cid -scoreboard objectives remove bs.data diff --git a/datapacks/Bookshelf/data/bs.id/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.id/tags/function/exclusive_load.json new file mode 100644 index 0000000000..fc41052a85 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.id/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.id:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.id/tags/function/load.json b/datapacks/Bookshelf/data/bs.id/tags/function/load.json index 97f29705c7..e96a219be1 100644 --- a/datapacks/Bookshelf/data/bs.id/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.id/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.id:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.id/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.id/test/__boot__.mcfunction index d01363f380..b4835d2e11 100644 --- a/datapacks/Bookshelf/data/bs.id/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.id/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.id -# @beforebatch function #bs.id:load +# @beforebatch function #bs.id:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.id/test/update_cuids.mcfunction b/datapacks/Bookshelf/data/bs.id/test/update_cuids.mcfunction index 9dc133b00c..1915815063 100644 --- a/datapacks/Bookshelf/data/bs.id/test/update_cuids.mcfunction +++ b/datapacks/Bookshelf/data/bs.id/test/update_cuids.mcfunction @@ -11,12 +11,12 @@ execute summon minecraft:marker run function #bs.id:give_cuid kill @e[type=minecraft:armor_stand,distance=..1] function #bs.id:update_cuids -scoreboard players set #packtest.i bs.data 0 -execute store result score #packtest bs.data run scoreboard players operation #packtest.i bs.data > @e bs.cid -execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.data run scoreboard players remove #packtest.i bs.data 1 -execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.data run scoreboard players remove #packtest.i bs.data 1 -execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.data run scoreboard players remove #packtest.i bs.data 1 -execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.data run scoreboard players remove #packtest.i bs.data 1 -scoreboard players operation #packtest bs.data -= #packtest.i bs.data +scoreboard players set #packtest.i bs.cid 0 +execute store result score #packtest bs.cid run scoreboard players operation #packtest.i bs.cid > @e bs.cid +execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.cid run scoreboard players remove #packtest.i bs.cid 1 +execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.cid run scoreboard players remove #packtest.i bs.cid 1 +execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.cid run scoreboard players remove #packtest.i bs.cid 1 +execute as @e[type=minecraft:marker] if score @s bs.cid = #packtest.i bs.cid run scoreboard players remove #packtest.i bs.cid 1 +scoreboard players operation #packtest bs.cid -= #packtest.i bs.cid kill @e[type=minecraft:marker,distance=..1] -assert score #packtest bs.data matches 4 +assert score #packtest bs.cid matches 4 diff --git a/datapacks/Bookshelf/data/bs.link/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.link/function/__load__.mcfunction index bcd126c768..2668522107 100644 --- a/datapacks/Bookshelf/data/bs.link/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/__load__.mcfunction @@ -16,6 +16,7 @@ # ------------------------------------------------------------------------------------------------------------ scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] scoreboard objectives add bs.link.rx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Link relative X","color":"aqua"}] scoreboard objectives add bs.link.ry dummy [{"text":"BS ","color":"dark_gray"},{"text":"Link relative Y","color":"aqua"}] @@ -29,5 +30,5 @@ scoreboard objectives add bs.link.to dummy [{"text":"BS ","color":"dark_gray"},{ scoreboard players set 10 bs.const 10 -execute store result score #result bs.data run worldborder get -execute if score #result bs.data matches 2147484.. run worldborder set 2147483 0 +execute store result score #w bs.ctx run worldborder get +execute if score #w bs.ctx matches 2147484.. run worldborder set 2147483 0 diff --git a/datapacks/Bookshelf/data/bs.link/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.link/function/__unload__.mcfunction index 36fb19f591..eb0a32bae9 100644 --- a/datapacks/Bookshelf/data/bs.link/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/__unload__.mcfunction @@ -15,6 +15,9 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html # ------------------------------------------------------------------------------------------------------------ +scoreboard objectives remove bs.const +scoreboard objectives remove bs.ctx + scoreboard objectives remove bs.link.rx scoreboard objectives remove bs.link.ry scoreboard objectives remove bs.link.rz @@ -27,5 +30,3 @@ scoreboard objectives remove bs.link.lv scoreboard objectives remove bs.link.lh scoreboard objectives remove bs.link.to - -scoreboard objectives remove bs.const diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_x.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_x.mcfunction index b356f7402e..8c9400d0fd 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_x.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_x.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#imitate-behaviors # ------------------------------------------------------------------------------------------------------------ -execute store result score @s bs.pos.x run scoreboard players operation #link.origin.x bs.data += @s bs.link.rx +execute store result score @s bs.pos.x run scoreboard players operation #x bs.ctx += @s bs.link.rx diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_y.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_y.mcfunction index e509e3a233..9935bae329 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_y.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_y.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#imitate-behaviors # ------------------------------------------------------------------------------------------------------------ -execute store result score @s bs.pos.y run scoreboard players operation #link.origin.y bs.data += @s bs.link.ry +execute store result score @s bs.pos.y run scoreboard players operation #y bs.ctx += @s bs.link.ry diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_z.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_z.mcfunction index d6d4fdde80..046f5cf4bb 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_z.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_pos_z.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#imitate-behaviors # ------------------------------------------------------------------------------------------------------------ -execute store result score @s bs.pos.z run scoreboard players operation #link.origin.z bs.data += @s bs.link.rz +execute store result score @s bs.pos.z run scoreboard players operation #z bs.ctx += @s bs.link.rz diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_h.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_h.mcfunction index 9fbb66fad5..a37c0a2a05 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_h.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_h.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#imitate-behaviors # ------------------------------------------------------------------------------------------------------------ -execute store result score @s bs.rot.h run scoreboard players operation #link.origin.h bs.data += @s bs.link.lh +execute store result score @s bs.rot.h run scoreboard players operation #h bs.ctx += @s bs.link.lh diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_v.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_v.mcfunction index 6f880cdabe..19fa5f085b 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_v.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/imitate_rot_v.mcfunction @@ -14,4 +14,5 @@ # # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#imitate-behaviors # ------------------------------------------------------------------------------------------------------------ -execute store result score @s bs.rot.v run scoreboard players operation #link.origin.v bs.data += @s bs.link.lv + +execute store result score @s bs.rot.v run scoreboard players operation #v bs.ctx += @s bs.link.lv diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_x.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_x.mcfunction index 90f31565dd..cbf6013daf 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_x.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_x.mcfunction @@ -15,8 +15,8 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#reverse-behaviors # ------------------------------------------------------------------------------------------------------------ -scoreboard players operation @s bs.pos.x -= #link.origin.x bs.data +scoreboard players operation @s bs.pos.x -= #x bs.ctx scoreboard players operation @s bs.pos.x -= @s bs.link.rx scoreboard players operation @s bs.pos.x += @s bs.pos.x scoreboard players operation @s bs.link.rx += @s bs.pos.x -execute store result score @s bs.pos.x run scoreboard players operation #link.origin.x bs.data += @s bs.link.rx +execute store result score @s bs.pos.x run scoreboard players operation #x bs.ctx += @s bs.link.rx diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_y.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_y.mcfunction index d2427201db..7542198827 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_y.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_y.mcfunction @@ -15,8 +15,8 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#reverse-behaviors # ------------------------------------------------------------------------------------------------------------ -scoreboard players operation @s bs.pos.y -= #link.origin.y bs.data +scoreboard players operation @s bs.pos.y -= #y bs.ctx scoreboard players operation @s bs.pos.y -= @s bs.link.ry scoreboard players operation @s bs.pos.y += @s bs.pos.y scoreboard players operation @s bs.link.ry += @s bs.pos.y -execute store result score @s bs.pos.y run scoreboard players operation #link.origin.y bs.data += @s bs.link.ry +execute store result score @s bs.pos.y run scoreboard players operation #y bs.ctx += @s bs.link.ry diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_z.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_z.mcfunction index 1f6575b9d7..5209bc930a 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_z.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_pos_z.mcfunction @@ -15,8 +15,8 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#reverse-behaviors # ------------------------------------------------------------------------------------------------------------ -scoreboard players operation @s bs.pos.z -= #link.origin.z bs.data +scoreboard players operation @s bs.pos.z -= #z bs.ctx scoreboard players operation @s bs.pos.z -= @s bs.link.rz scoreboard players operation @s bs.pos.z += @s bs.pos.z scoreboard players operation @s bs.link.rz += @s bs.pos.z -execute store result score @s bs.pos.z run scoreboard players operation #link.origin.z bs.data += @s bs.link.rz +execute store result score @s bs.pos.z run scoreboard players operation #z bs.ctx += @s bs.link.rz diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_h.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_h.mcfunction index 83b1706b29..783ac0f29d 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_h.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_h.mcfunction @@ -15,8 +15,8 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#reverse-behaviors # ------------------------------------------------------------------------------------------------------------ -scoreboard players operation @s bs.rot.h -= #link.origin.h bs.data +scoreboard players operation @s bs.rot.h -= #h bs.ctx scoreboard players operation @s bs.rot.h -= @s bs.link.lh scoreboard players operation @s bs.rot.h += @s bs.rot.h scoreboard players operation @s bs.link.lh += @s bs.rot.h -execute store result score @s bs.rot.h run scoreboard players operation #link.origin.h bs.data += @s bs.link.lh +execute store result score @s bs.rot.h run scoreboard players operation #h bs.ctx += @s bs.link.lh diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_v.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_v.mcfunction index 31a7d0c0af..0353f87707 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_v.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/reverse_rot_v.mcfunction @@ -15,8 +15,8 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/link.html#reverse-behaviors # ------------------------------------------------------------------------------------------------------------- -scoreboard players operation @s bs.rot.v -= #link.origin.v bs.data +scoreboard players operation @s bs.rot.v -= #v bs.ctx scoreboard players operation @s bs.rot.v -= @s bs.link.lv scoreboard players operation @s bs.rot.v += @s bs.rot.v scoreboard players operation @s bs.link.lv += @s bs.rot.v -execute store result score @s bs.rot.v run scoreboard players operation #link.origin.v bs.data += @s bs.link.lv +execute store result score @s bs.rot.v run scoreboard players operation #v bs.ctx += @s bs.link.lv diff --git a/datapacks/Bookshelf/data/bs.link/function/behaviors/setup.mcfunction b/datapacks/Bookshelf/data/bs.link/function/behaviors/setup.mcfunction index f1b6c9de85..03a84ee245 100644 --- a/datapacks/Bookshelf/data/bs.link/function/behaviors/setup.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/behaviors/setup.mcfunction @@ -18,11 +18,11 @@ scoreboard players operation $id.suid bs.in = @s bs.link.to execute at @n[predicate=bs.id:suid_equal,sort=arbitrary] run function #bs.position:get_pos_and_rot {scale:1000} -scoreboard players operation #link.origin.x bs.data = @s bs.pos.x -scoreboard players operation #link.origin.y bs.data = @s bs.pos.y -scoreboard players operation #link.origin.z bs.data = @s bs.pos.z -scoreboard players operation #link.origin.h bs.data = @s bs.rot.h -scoreboard players operation #link.origin.v bs.data = @s bs.rot.v +scoreboard players operation #x bs.ctx = @s bs.pos.x +scoreboard players operation #y bs.ctx = @s bs.pos.y +scoreboard players operation #z bs.ctx = @s bs.pos.z +scoreboard players operation #h bs.ctx = @s bs.rot.h +scoreboard players operation #v bs.ctx = @s bs.rot.v execute store result score @s bs.pos.x run data get entity @s Pos[0] 1000 execute store result score @s bs.pos.y run data get entity @s Pos[1] 1000 diff --git a/datapacks/Bookshelf/data/bs.link/function/mirror_point_ata/as_origin.mcfunction b/datapacks/Bookshelf/data/bs.link/function/mirror_point_ata/as_origin.mcfunction index 0c8bfed246..6ec1ba8698 100644 --- a/datapacks/Bookshelf/data/bs.link/function/mirror_point_ata/as_origin.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/function/mirror_point_ata/as_origin.mcfunction @@ -16,8 +16,8 @@ function #bs.position:get_distance_ata {scale:1000} execute store result storage bs:ctx z double -0.001 run scoreboard players get $position.get_distance_ata bs.out -execute store result score #link.mirror_ata.oh bs.data run data get entity @s Rotation[0] 1000 +execute store result score #r bs.ctx run data get entity @s Rotation[0] 1000 execute facing entity @s eyes run function #bs.position:get_rot_h {scale:1000} -scoreboard players operation #link.mirror_ata.oh bs.data -= @s bs.rot.h -execute store result storage bs:ctx x double 0.001 run scoreboard players remove #link.mirror_ata.oh bs.data 180000 +scoreboard players operation #r bs.ctx -= @s bs.rot.h +execute store result storage bs:ctx x double 0.001 run scoreboard players remove #r bs.ctx 180000 execute store result storage bs:ctx y double 0.001 run data get entity @s Rotation[1] -1000 diff --git a/datapacks/Bookshelf/data/bs.link/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.link/tags/function/exclusive_load.json new file mode 100644 index 0000000000..8d1cdc4457 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.link/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.link:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.link/tags/function/load.json b/datapacks/Bookshelf/data/bs.link/tags/function/load.json index e0a3853c34..ee8b505295 100644 --- a/datapacks/Bookshelf/data/bs.link/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.link/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "#bs.id:load", "#bs.position:load", "bs.link:__load__" diff --git a/datapacks/Bookshelf/data/bs.link/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.link/test/__boot__.mcfunction index cbd9b9b317..db654a992a 100644 --- a/datapacks/Bookshelf/data/bs.link/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.link -# @beforebatch function #bs.link:load +# @beforebatch function #bs.link:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.link/test/as_children.mcfunction b/datapacks/Bookshelf/data/bs.link/test/as_children.mcfunction index 95024cedfc..deb7ddede5 100644 --- a/datapacks/Bookshelf/data/bs.link/test/as_children.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/as_children.mcfunction @@ -1,9 +1,9 @@ # Check as children relationship # @batch bs.link -summon minecraft:armor_stand ~ ~ ~ {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand ~ ~1 ~ {Tags:["packtest","packtest.2"],NoGravity:1b} +summon minecraft:armor_stand ~ ~ ~ {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand ~ ~1 ~ {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:as_children {run:"tag @s add packtest.check"} -assert entity @e[type=minecraft:armor_stand,tag=packtest.2,tag=packtest.check] +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:as_children {run:"tag @s add bs.packtest.check"} +assert entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,tag=bs.packtest.check] diff --git a/datapacks/Bookshelf/data/bs.link/test/as_parent.mcfunction b/datapacks/Bookshelf/data/bs.link/test/as_parent.mcfunction index 7b9da96a4d..0824dc7d74 100644 --- a/datapacks/Bookshelf/data/bs.link/test/as_parent.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/as_parent.mcfunction @@ -1,9 +1,9 @@ # Check as parent relationship # @batch bs.link -summon minecraft:armor_stand ~ ~ ~ {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand ~ ~1 ~ {Tags:["packtest","packtest.2"],NoGravity:1b} +summon minecraft:armor_stand ~ ~ ~ {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand ~ ~1 ~ {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.2] run function #bs.link:as_parent {run:"tag @s add packtest.check"} -assert entity @e[type=minecraft:armor_stand,tag=packtest.1,tag=packtest.check] +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] run function #bs.link:as_parent {run:"tag @s add bs.packtest.check"} +assert entity @e[type=minecraft:armor_stand,tag=bs.packtest.1,tag=bs.packtest.check] diff --git a/datapacks/Bookshelf/data/bs.link/test/at_children.mcfunction b/datapacks/Bookshelf/data/bs.link/test/at_children.mcfunction index 7fea50a291..6aa1bea1fc 100644 --- a/datapacks/Bookshelf/data/bs.link/test/at_children.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/at_children.mcfunction @@ -1,9 +1,9 @@ # Check at children relationship # @batch bs.link -summon minecraft:armor_stand ~ ~ ~ {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand ~ ~1 ~ {Tags:["packtest","packtest.2"],NoGravity:1b} +summon minecraft:armor_stand ~ ~ ~ {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand ~ ~1 ~ {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:at_children {run:"tag @n add packtest.check"} -assert entity @e[type=minecraft:armor_stand,tag=packtest.2,tag=packtest.check] +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:at_children {run:"tag @n add bs.packtest.check"} +assert entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,tag=bs.packtest.check] diff --git a/datapacks/Bookshelf/data/bs.link/test/at_parent.mcfunction b/datapacks/Bookshelf/data/bs.link/test/at_parent.mcfunction index 29aa01fc21..6c2cb78ea0 100644 --- a/datapacks/Bookshelf/data/bs.link/test/at_parent.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/at_parent.mcfunction @@ -1,9 +1,9 @@ # Check at parent relationship # @batch bs.link -summon minecraft:armor_stand ~ ~ ~ {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand ~ ~1 ~ {Tags:["packtest","packtest.2"],NoGravity:1b} +summon minecraft:armor_stand ~ ~ ~ {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand ~ ~1 ~ {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.2] run function #bs.link:at_parent {run:"tag @n add packtest.check"} -assert entity @e[type=minecraft:armor_stand,tag=packtest.1,tag=packtest.check] +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] run function #bs.link:at_parent {run:"tag @n add bs.packtest.check"} +assert entity @e[type=minecraft:armor_stand,tag=bs.packtest.1,tag=bs.packtest.check] diff --git a/datapacks/Bookshelf/data/bs.link/test/create_link_ata.mcfunction b/datapacks/Bookshelf/data/bs.link/test/create_link_ata.mcfunction index cc7c19bc50..49b2b5e810 100644 --- a/datapacks/Bookshelf/data/bs.link/test/create_link_ata.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/create_link_ata.mcfunction @@ -1,20 +1,18 @@ # Linking entities together # @batch bs.link -await entity B5-0-0-0-1 +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand 0.5 0.2 1.0 {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand 0.5 0.2 1.0 {Tags:["packtest","packtest.2"],NoGravity:1b} +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata +assert entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,predicate=bs.link:has_link] +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.1,limit=1] bs.id = @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.to +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.rx matches 499..501 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.ry matches 199..201 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.rz matches 999..1001 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.lx matches 499..501 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.ly matches 199..201 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.lz matches 999..1001 -assert entity @e[type=minecraft:armor_stand,tag=packtest.2,predicate=bs.link:has_link] -assert score @e[type=minecraft:armor_stand,tag=packtest.1,limit=1] bs.id = @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.to -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.rx matches 499..501 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.ry matches 199..201 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.rz matches 999..1001 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.lx matches 499..501 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.ly matches 199..201 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.lz matches 999..1001 - -kill @e[type=minecraft:armor_stand,tag=packtest] +kill @e[type=minecraft:armor_stand,tag=bs.packtest] diff --git a/datapacks/Bookshelf/data/bs.link/test/imitate_pos_and_rot.mcfunction b/datapacks/Bookshelf/data/bs.link/test/imitate_pos_and_rot.mcfunction index 7747fccdff..32c59e20f2 100644 --- a/datapacks/Bookshelf/data/bs.link/test/imitate_pos_and_rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/imitate_pos_and_rot.mcfunction @@ -1,47 +1,35 @@ # Imitate position and rotation # @batch bs.link -await entity B5-0-0-0-1 - -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.2"],NoGravity:1b} - -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata - -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data store result score @e[type=minecraft:armor_stand,tag=packtest.2] bs.link.rx run random value -10000..10000 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data store result score @e[type=minecraft:armor_stand,tag=packtest.2] bs.link.ry run random value -10000..10000 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data store result score @e[type=minecraft:armor_stand,tag=packtest.2] bs.link.rz run random value -10000..10000 -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data store result score @e[type=minecraft:armor_stand,tag=packtest.2] bs.link.lh run random value -10000..10000 -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data store result score @e[type=minecraft:armor_stand,tag=packtest.2] bs.link.lv run random value -10000..10000 - -execute as @e[type=minecraft:armor_stand,tag=packtest.2] run function #bs.link:imitate_pos_and_rot - -execute store result score #packtest.x bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[0] 1000 -execute store result score #packtest.y bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[1] 1000 -execute store result score #packtest.z bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[2] 1000 -execute store result score #packtest.h bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Rotation[0] 1000 -execute store result score #packtest.v bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Rotation[1] 1000 - -kill @e[type=minecraft:armor_stand,tag=packtest] - -scoreboard players remove #packtest.x_min bs.data 2 -scoreboard players remove #packtest.y_min bs.data 2 -scoreboard players remove #packtest.z_min bs.data 2 -scoreboard players remove #packtest.h_min bs.data 2 -scoreboard players remove #packtest.v_min bs.data 2 -scoreboard players add #packtest.x_max bs.data 2 -scoreboard players add #packtest.y_max bs.data 2 -scoreboard players add #packtest.z_max bs.data 2 -scoreboard players add #packtest.h_max bs.data 2 -scoreboard players add #packtest.v_max bs.data 2 - -assert score #packtest.x_min bs.data < #packtest.x bs.data -assert score #packtest.y_min bs.data < #packtest.y bs.data -assert score #packtest.z_min bs.data < #packtest.z bs.data -assert score #packtest.h_min bs.data < #packtest.h bs.data -assert score #packtest.v_min bs.data < #packtest.v bs.data -assert score #packtest.x_max bs.data > #packtest.x bs.data -assert score #packtest.y_max bs.data > #packtest.y bs.data -assert score #packtest.z_max bs.data > #packtest.z bs.data -assert score #packtest.h_max bs.data > #packtest.h bs.data -assert score #packtest.v_max bs.data > #packtest.v bs.data +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} + +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata + +execute store result score @e[type=minecraft:armor_stand,tag=bs.packtest.2] bs.link.rx run random value -10000..10000 +execute store result score @e[type=minecraft:armor_stand,tag=bs.packtest.2] bs.link.ry run random value -10000..10000 +execute store result score @e[type=minecraft:armor_stand,tag=bs.packtest.2] bs.link.rz run random value -10000..10000 +execute store result score @e[type=minecraft:armor_stand,tag=bs.packtest.2] bs.link.lh run random value -10000..10000 +execute store result score @e[type=minecraft:armor_stand,tag=bs.packtest.2] bs.link.lv run random value -10000..10000 + +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] run function #bs.link:imitate_pos_and_rot + +execute store result score #x bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[0] 1000 +execute store result score #y bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[1] 1000 +execute store result score #z bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[2] 1000 +execute store result score #h bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Rotation[0] 1000 +execute store result score #v bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Rotation[1] 1000 + +scoreboard players operation #x bs.ctx -= @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.rx +scoreboard players operation #y bs.ctx -= @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.ry +scoreboard players operation #z bs.ctx -= @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.rz +scoreboard players operation #h bs.ctx -= @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.lh +scoreboard players operation #v bs.ctx -= @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.lv + +kill @e[type=minecraft:armor_stand,tag=bs.packtest] + +assert score #x bs.ctx matches -2..2 +assert score #y bs.ctx matches -2..2 +assert score #z bs.ctx matches -2..2 +assert score #h bs.ctx matches -2..2 +assert score #v bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.link/test/keep_local_pos.mcfunction b/datapacks/Bookshelf/data/bs.link/test/keep_local_pos.mcfunction index aac9e38b3c..d03cbe9205 100644 --- a/datapacks/Bookshelf/data/bs.link/test/keep_local_pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/keep_local_pos.mcfunction @@ -1,15 +1,13 @@ # Keep the local position # @batch bs.link -await entity B5-0-0-0-1 +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand 0.0 0.0 1.0 {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand 0.0 0.0 1.0 {Tags:["packtest","packtest.2"],NoGravity:1b} +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +tp @e[type=minecraft:armor_stand,tag=bs.packtest.1] 0.0 0.0 0.0 52 -12 +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] run function #bs.link:keep_local_pos -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -tp @e[type=minecraft:armor_stand,tag=packtest.1] 0.0 0.0 0.0 52 -12 -execute as @e[type=minecraft:armor_stand,tag=packtest.2] run function #bs.link:keep_local_pos +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.1] at @s positioned ^ ^ ^1 run assert entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,distance=..0.002] -execute as @e[type=minecraft:armor_stand,tag=packtest.1] at @s positioned ^ ^ ^1 run assert entity @e[type=minecraft:armor_stand,tag=packtest.2,distance=..0.002] - -kill @e[type=minecraft:armor_stand,tag=packtest] +kill @e[type=minecraft:armor_stand,tag=bs.packtest] diff --git a/datapacks/Bookshelf/data/bs.link/test/mirror_point_ata.mcfunction b/datapacks/Bookshelf/data/bs.link/test/mirror_point_ata.mcfunction index c117e45ad2..593b5daa96 100644 --- a/datapacks/Bookshelf/data/bs.link/test/mirror_point_ata.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/mirror_point_ata.mcfunction @@ -1,24 +1,22 @@ # Mirror around a point # @batch bs.link -await entity B5-0-0-0-1 +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b,Rotation:[75f,12f]} +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b,Rotation:[0f,0f]} -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.1"],NoGravity:1b,Rotation:[75f,12f]} -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.2"],NoGravity:1b,Rotation:[0f,0f]} +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] positioned .5 .5 .5 run function #bs.link:mirror_point_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.2] positioned .5 .5 .5 run function #bs.link:mirror_point_ata +execute store result score #x bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[0] 1000 +execute store result score #y bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[1] 1000 +execute store result score #z bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[2] 1000 +execute store result score #h bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Rotation[0] 1000 +execute store result score #v bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Rotation[1] 1000 -execute store result score #packtest.x bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[0] 1000 -execute store result score #packtest.y bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[1] 1000 -execute store result score #packtest.z bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[2] 1000 -execute store result score #packtest.h bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Rotation[0] 1000 -execute store result score #packtest.v bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Rotation[1] 1000 +kill @e[type=minecraft:armor_stand,tag=bs.packtest] -kill @e[type=minecraft:armor_stand,tag=packtest] - -assert score #packtest.x bs.data matches 999..1001 -assert score #packtest.y bs.data matches 999..1001 -assert score #packtest.z bs.data matches 999..1001 -assert score #packtest.h bs.data matches -105001..-104999 -assert score #packtest.v bs.data matches -12001..-11999 +assert score #x bs.ctx matches 999..1001 +assert score #y bs.ctx matches 999..1001 +assert score #z bs.ctx matches 999..1001 +assert score #h bs.ctx matches -105001..-104999 +assert score #v bs.ctx matches -12001..-11999 diff --git a/datapacks/Bookshelf/data/bs.link/test/remove_link.mcfunction b/datapacks/Bookshelf/data/bs.link/test/remove_link.mcfunction index a22b819585..abe003c36a 100644 --- a/datapacks/Bookshelf/data/bs.link/test/remove_link.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/remove_link.mcfunction @@ -1,15 +1,15 @@ # Check link removal # @batch bs.link -summon minecraft:armor_stand ~ ~ ~ {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand ~ ~1 ~ {Tags:["packtest","packtest.2"],NoGravity:1b} +summon minecraft:armor_stand ~ ~ ~ {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand ~ ~1 ~ {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} # from parent -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:remove_link -assert not entity @e[type=minecraft:armor_stand,tag=packtest.2,predicate=bs.link:has_link] +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:remove_link +assert not entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,predicate=bs.link:has_link] # from child -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.2] run function #bs.link:remove_link -assert not entity @e[type=minecraft:armor_stand,tag=packtest.2,predicate=bs.link:has_link] +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] run function #bs.link:remove_link +assert not entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,predicate=bs.link:has_link] diff --git a/datapacks/Bookshelf/data/bs.link/test/reverse_pos_and_rot.mcfunction b/datapacks/Bookshelf/data/bs.link/test/reverse_pos_and_rot.mcfunction index 0409ac828f..63a4a0ad24 100644 --- a/datapacks/Bookshelf/data/bs.link/test/reverse_pos_and_rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/reverse_pos_and_rot.mcfunction @@ -1,26 +1,24 @@ # Reverse position and rotation # @batch bs.link -await entity B5-0-0-0-1 +summon minecraft:armor_stand 0.0 0.0 1.0 {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -summon minecraft:armor_stand 0.0 0.0 1.0 {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.2"],NoGravity:1b} +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] at @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.link:create_link_ata -execute as @e[type=minecraft:armor_stand,tag=packtest.2] at @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.link:create_link_ata +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.1] at @s run tp @s ~1 ~1 ~1 ~42 ~42 +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] run function #bs.link:reverse_pos_and_rot -execute as @e[type=minecraft:armor_stand,tag=packtest.1] at @s run tp @s ~1 ~1 ~1 ~42 ~42 -execute as @e[type=minecraft:armor_stand,tag=packtest.2] run function #bs.link:reverse_pos_and_rot +execute store result score #x bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[0] 1000 +execute store result score #y bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[1] 1000 +execute store result score #z bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Pos[2] 1000 +execute store result score #h bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Rotation[0] 1000 +execute store result score #v bs.ctx run data get entity @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] Rotation[1] 1000 -execute store result score #packtest.x bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[0] 1000 -execute store result score #packtest.y bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[1] 1000 -execute store result score #packtest.z bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Pos[2] 1000 -execute store result score #packtest.h bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Rotation[0] 1000 -execute store result score #packtest.v bs.data run data get entity @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] Rotation[1] 1000 +kill @e[type=minecraft:armor_stand,tag=bs.packtest] -kill @e[type=minecraft:armor_stand,tag=packtest] - -assert score #packtest.x bs.data matches -1001..-999 -assert score #packtest.y bs.data matches -1001..-999 -assert score #packtest.z bs.data matches -1001..-999 -assert score #packtest.h bs.data matches -42001..-41999 -assert score #packtest.v bs.data matches -42001..-41999 +assert score #x bs.ctx matches -1001..-999 +assert score #y bs.ctx matches -1001..-999 +assert score #z bs.ctx matches -1001..-999 +assert score #h bs.ctx matches -42001..-41999 +assert score #v bs.ctx matches -42001..-41999 diff --git a/datapacks/Bookshelf/data/bs.link/test/update_link.mcfunction b/datapacks/Bookshelf/data/bs.link/test/update_link.mcfunction index 29611f25e6..9f7269f5ab 100644 --- a/datapacks/Bookshelf/data/bs.link/test/update_link.mcfunction +++ b/datapacks/Bookshelf/data/bs.link/test/update_link.mcfunction @@ -1,20 +1,18 @@ # Update the link # @batch bs.link -await entity B5-0-0-0-1 +summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["bs.packtest","bs.packtest.1"],NoGravity:1b} +summon minecraft:armor_stand 0.5 0.2 1.0 {Tags:["bs.packtest","bs.packtest.2"],NoGravity:1b} -summon minecraft:armor_stand 0.0 0.0 0.0 {Tags:["packtest","packtest.1"],NoGravity:1b} -summon minecraft:armor_stand 0.5 0.2 1.0 {Tags:["packtest","packtest.2"],NoGravity:1b} +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.1] run function #bs.id:give_suid +scoreboard players operation @e[type=minecraft:armor_stand,tag=bs.packtest.2] bs.link.to = @e[type=minecraft:armor_stand,tag=bs.packtest.1] bs.id +execute as @e[type=minecraft:armor_stand,tag=bs.packtest.2] run function #bs.link:update_link -execute as @e[type=minecraft:armor_stand,tag=packtest.1] run function #bs.id:give_suid -scoreboard players operation @e[type=minecraft:armor_stand,tag=packtest.2] bs.link.to = @e[type=minecraft:armor_stand,tag=packtest.1] bs.id -execute as @e[type=minecraft:armor_stand,tag=packtest.2] run function #bs.link:update_link +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.rx matches 499..501 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.ry matches 199..201 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.rz matches 999..1001 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.lx matches 499..501 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.ly matches 199..201 +assert score @e[type=minecraft:armor_stand,tag=bs.packtest.2,limit=1] bs.link.lz matches 999..1001 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.rx matches 499..501 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.ry matches 199..201 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.rz matches 999..1001 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.lx matches 499..501 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.ly matches 199..201 -assert score @e[type=minecraft:armor_stand,tag=packtest.2,limit=1] bs.link.lz matches 999..1001 - -kill @e[type=minecraft:armor_stand,tag=packtest] +kill @e[type=minecraft:armor_stand,tag=bs.packtest] diff --git a/datapacks/Bookshelf/data/bs.math/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.math/function/__load__.mcfunction index 9bda4b52d7..c5147e1b3d 100644 --- a/datapacks/Bookshelf/data/bs.math/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/__load__.mcfunction @@ -16,18 +16,17 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} -scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] -scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] +scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] +scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] scoreboard players set -100000 bs.const -100000 scoreboard players set -4 bs.const -4 scoreboard players set -2 bs.const -2 scoreboard players set -1 bs.const -1 -scoreboard players set 0 bs.const 0 scoreboard players set 2 bs.const 2 scoreboard players set 10 bs.const 10 scoreboard players set 100 bs.const 100 diff --git a/datapacks/Bookshelf/data/bs.math/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.math/function/__unload__.mcfunction index 6138ed54b0..5e39be48f1 100644 --- a/datapacks/Bookshelf/data/bs.math/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/__unload__.mcfunction @@ -18,10 +18,10 @@ kill B5-0-0-0-1 forceload remove -30000000 1600 -scoreboard objectives remove bs.in -scoreboard objectives remove bs.out -scoreboard objectives remove bs.data scoreboard objectives remove bs.const +scoreboard objectives remove bs.ctx +scoreboard objectives remove bs.out +scoreboard objectives remove bs.in data remove storage bs:in math data remove storage bs:out math diff --git a/datapacks/Bookshelf/data/bs.math/function/acos.mcfunction b/datapacks/Bookshelf/data/bs.math/function/acos.mcfunction index d99b2601ae..458109c8f1 100644 --- a/datapacks/Bookshelf/data/bs.math/function/acos.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/acos.mcfunction @@ -17,26 +17,26 @@ # Note: This algorithm is taken from the Handbook of Mathematical Functions (M. Abramowitz and I.A. Stegun, Ed.) -scoreboard players operation #math.acos.x bs.data = $math.acos.x bs.in -execute if score $math.acos.x bs.in matches ..-1 run scoreboard players operation #math.acos.x bs.data *= -1 bs.const +scoreboard players operation #x bs.ctx = $math.acos.x bs.in +execute if score $math.acos.x bs.in matches ..-1 run scoreboard players operation #x bs.ctx *= -1 bs.const scoreboard players set $math.acos bs.out 107311 -scoreboard players operation $math.acos bs.out *= #math.acos.x bs.data +scoreboard players operation $math.acos bs.out *= #x bs.ctx scoreboard players operation $math.acos bs.out /= 1000 bs.const scoreboard players remove $math.acos bs.out 425484 -scoreboard players operation $math.acos bs.out *= #math.acos.x bs.data +scoreboard players operation $math.acos bs.out *= #x bs.ctx scoreboard players operation $math.acos bs.out /= 1000 bs.const scoreboard players add $math.acos bs.out 1215325 -scoreboard players operation $math.acos bs.out *= #math.acos.x bs.data +scoreboard players operation $math.acos bs.out *= #x bs.ctx scoreboard players operation $math.acos bs.out /= 1000 bs.const scoreboard players remove $math.acos bs.out 9000000 scoreboard players operation $math.acos bs.out /= 100 bs.const -scoreboard players operation $math.isqrt.x bs.in >< #math.acos.x bs.data +scoreboard players operation $math.isqrt.x bs.in >< #x bs.ctx scoreboard players operation $math.isqrt.x bs.in *= -100000 bs.const scoreboard players add $math.isqrt.x bs.in 100000000 function #bs.math:isqrt -scoreboard players operation $math.isqrt.x bs.in >< #math.acos.x bs.data +scoreboard players operation $math.isqrt.x bs.in >< #x bs.ctx scoreboard players operation $math.acos bs.out *= $math.isqrt bs.out scoreboard players operation $math.acos bs.out /= 100000 bs.const diff --git a/datapacks/Bookshelf/data/bs.math/function/asin.mcfunction b/datapacks/Bookshelf/data/bs.math/function/asin.mcfunction index d6b7f9ea24..5f078349ae 100644 --- a/datapacks/Bookshelf/data/bs.math/function/asin.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/asin.mcfunction @@ -17,26 +17,26 @@ # Note: This algorithm is taken from the Handbook of Mathematical Functions (M. Abramowitz and I.A. Stegun, Ed.) -scoreboard players operation #math.asin.x bs.data = $math.asin.x bs.in -execute if score $math.asin.x bs.in matches ..-1 run scoreboard players operation #math.asin.x bs.data *= -1 bs.const +scoreboard players operation #x bs.ctx = $math.asin.x bs.in +execute if score $math.asin.x bs.in matches ..-1 run scoreboard players operation #x bs.ctx *= -1 bs.const scoreboard players set $math.asin bs.out 107311 -scoreboard players operation $math.asin bs.out *= #math.asin.x bs.data +scoreboard players operation $math.asin bs.out *= #x bs.ctx scoreboard players operation $math.asin bs.out /= 1000 bs.const scoreboard players remove $math.asin bs.out 425484 -scoreboard players operation $math.asin bs.out *= #math.asin.x bs.data +scoreboard players operation $math.asin bs.out *= #x bs.ctx scoreboard players operation $math.asin bs.out /= 1000 bs.const scoreboard players add $math.asin bs.out 1215325 -scoreboard players operation $math.asin bs.out *= #math.asin.x bs.data +scoreboard players operation $math.asin bs.out *= #x bs.ctx scoreboard players operation $math.asin bs.out /= 1000 bs.const scoreboard players remove $math.asin bs.out 9000000 scoreboard players operation $math.asin bs.out /= 100 bs.const -scoreboard players operation $math.isqrt.x bs.in >< #math.asin.x bs.data +scoreboard players operation $math.isqrt.x bs.in >< #x bs.ctx scoreboard players operation $math.isqrt.x bs.in *= -100000 bs.const scoreboard players add $math.isqrt.x bs.in 100000000 function #bs.math:isqrt -scoreboard players operation $math.isqrt.x bs.in >< #math.asin.x bs.data +scoreboard players operation $math.isqrt.x bs.in >< #x bs.ctx scoreboard players operation $math.asin bs.out *= $math.isqrt bs.out scoreboard players operation $math.asin bs.out /= 100000 bs.const diff --git a/datapacks/Bookshelf/data/bs.math/function/atan/atan.mcfunction b/datapacks/Bookshelf/data/bs.math/function/atan/atan.mcfunction index 78bf4748ed..bec51af0c2 100644 --- a/datapacks/Bookshelf/data/bs.math/function/atan/atan.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/atan/atan.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#inverse-trigonometry # ------------------------------------------------------------------------------------------------------------ -return run execute as B5-0-0-0-1 run function bs.math:atan/run +return run execute in minecraft:overworld as B5-0-0-0-1 run function bs.math:atan/run diff --git a/datapacks/Bookshelf/data/bs.math/function/atan/run.mcfunction b/datapacks/Bookshelf/data/bs.math/function/atan/run.mcfunction index 0fa09e3176..263a5de29e 100644 --- a/datapacks/Bookshelf/data/bs.math/function/atan/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/atan/run.mcfunction @@ -11,9 +11,14 @@ # - Any modifications must be documented and disclosed under the same license # # For more details, refer to the MPL v2.0. +# +# Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#inverse-trigonometry # ------------------------------------------------------------------------------------------------------------ execute store result entity @s Pos[0] double 0.001 run scoreboard players get $math.atan.x bs.in data modify entity @s Pos[2] set value 1.0 -execute positioned 0.0 0.0 0.0 facing entity @s feet rotated ~ 0.0 in minecraft:overworld run tp @s -30000000 0 1600 ~ ~ -return run execute store result score $math.atan bs.out run data get entity @s Rotation[0] -100 +execute positioned 0.0 0.0 0.0 facing entity @s feet rotated ~ 0.0 run tp @s -30000000 0 1600 ~ ~ +execute store result score $math.atan bs.out run data get entity @s Rotation[0] -100 +execute if score $math.atan bs.out matches ..-18000 run scoreboard players add $math.atan bs.out 36000 +execute if score $math.atan bs.out matches 18001.. run scoreboard players remove $math.atan bs.out 36000 +return run scoreboard players get $math.atan bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/atan2/atan2.mcfunction b/datapacks/Bookshelf/data/bs.math/function/atan2/atan2.mcfunction index 47668b860e..cf6317b243 100644 --- a/datapacks/Bookshelf/data/bs.math/function/atan2/atan2.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/atan2/atan2.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#inverse-trigonometry # ------------------------------------------------------------------------------------------------------------ -return run execute as B5-0-0-0-1 run function bs.math:atan2/run +return run execute in minecraft:overworld as B5-0-0-0-1 run function bs.math:atan2/run diff --git a/datapacks/Bookshelf/data/bs.math/function/atan2/run.mcfunction b/datapacks/Bookshelf/data/bs.math/function/atan2/run.mcfunction index 87efcc0145..b87a26aec0 100644 --- a/datapacks/Bookshelf/data/bs.math/function/atan2/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/atan2/run.mcfunction @@ -17,5 +17,8 @@ execute store result entity @s Pos[0] double 0.001 run scoreboard players get $math.atan2.y bs.in execute store result entity @s Pos[2] double 0.001 run scoreboard players get $math.atan2.x bs.in -execute positioned 0.0 0.0 0.0 facing entity @s feet rotated ~ 0.0 in minecraft:overworld run tp @s -30000000 0 1600 ~ ~ -return run execute store result score $math.atan2 bs.out run data get entity @s Rotation[0] -100 +execute positioned 0.0 0.0 0.0 facing entity @s feet rotated ~ 0.0 run tp @s -30000000 0 1600 ~ ~ +execute store result score $math.atan2 bs.out run data get entity @s Rotation[0] -100 +execute if score $math.atan2 bs.out matches ..-18000 run scoreboard players add $math.atan2 bs.out 36000 +execute if score $math.atan2 bs.out matches 18001.. run scoreboard players remove $math.atan2 bs.out 36000 +return run scoreboard players get $math.atan2 bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/combine/combine.mcfunction b/datapacks/Bookshelf/data/bs.math/function/combine/combine.mcfunction index 29a617777b..7ceda46ad3 100644 --- a/datapacks/Bookshelf/data/bs.math/function/combine/combine.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/combine/combine.mcfunction @@ -17,25 +17,18 @@ # Note: the larger bs.in must be smaller than 46342 -# C(n,k) - -# keep n, k > 0 -scoreboard players operation #math.combine.n bs.data = $math.combine.n bs.in -scoreboard players operation #math.combine.n bs.data > 0 bs.const -scoreboard players operation #math.combine.k bs.data = $math.combine.k bs.in -scoreboard players operation #math.combine.k bs.data > 0 bs.const - -# keep n <= k -execute if score #math.combine.n bs.data > #math.combine.k bs.data run scoreboard players operation #math.combine.n bs.data >< #math.combine.k bs.data +# keep n, k > 0 & n <= k +execute store result score #n bs.ctx run scoreboard players set #k bs.ctx 0 +execute if score $math.combine.n bs.in matches 0.. run scoreboard players operation #n bs.ctx = $math.combine.n bs.in +execute if score $math.combine.k bs.in matches 0.. run scoreboard players operation #k bs.ctx = $math.combine.k bs.in +execute if score #n bs.ctx > #k bs.ctx run scoreboard players operation #n bs.ctx >< #k bs.ctx # get smaller n -scoreboard players operation #math.combine.temp bs.data = #math.combine.k bs.data -scoreboard players operation #math.combine.temp bs.data -= #math.combine.n bs.data -scoreboard players operation #math.combine.n bs.data < #math.combine.temp bs.data +scoreboard players operation #t bs.ctx = #k bs.ctx +scoreboard players operation #t bs.ctx -= #n bs.ctx +scoreboard players operation #n bs.ctx < #t bs.ctx # break if n is special -execute if score #math.combine.n bs.data matches 0 run scoreboard players set $math.combine bs.out 1 -execute if score #math.combine.n bs.data matches 1 run scoreboard players operation $math.combine bs.out = #math.combine.k bs.data -execute if score #math.combine.n bs.data matches 2.. run function bs.math:combine/recurse/init - -return run scoreboard players get $math.combine bs.out +execute if score #n bs.ctx matches 0 run return run scoreboard players set $math.combine bs.out 1 +execute if score #n bs.ctx matches 1 run return run scoreboard players operation $math.combine bs.out = #k bs.ctx +execute if score #n bs.ctx matches 2.. run return run function bs.math:combine/recurse/init diff --git a/datapacks/Bookshelf/data/bs.math/function/combine/recurse/init.mcfunction b/datapacks/Bookshelf/data/bs.math/function/combine/recurse/init.mcfunction index 66241414aa..407f1ab086 100644 --- a/datapacks/Bookshelf/data/bs.math/function/combine/recurse/init.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/combine/recurse/init.mcfunction @@ -14,7 +14,8 @@ # ------------------------------------------------------------------------------------------------------------ # ((k-n+1)(k-n+2)...(k-2)(k-1)k) / (1*2*3*...*(n-1)*n) -scoreboard players operation #math.combine.k bs.data -= #math.combine.n bs.data -scoreboard players set #math.combine.i bs.data 0 -scoreboard players set $math.combine bs.out 1 +scoreboard players operation #k bs.ctx -= #n bs.ctx +scoreboard players set #i bs.ctx 0 +execute store result score #m bs.ctx run scoreboard players set $math.combine bs.out 1 function bs.math:combine/recurse/next +return run scoreboard players get $math.combine bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/combine/recurse/next.mcfunction b/datapacks/Bookshelf/data/bs.math/function/combine/recurse/next.mcfunction index f2ac9e7ace..24eacbc6da 100644 --- a/datapacks/Bookshelf/data/bs.math/function/combine/recurse/next.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/combine/recurse/next.mcfunction @@ -13,15 +13,15 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -# math magic -scoreboard players add #math.combine.k bs.data 1 -scoreboard players add #math.combine.i bs.data 1 +scoreboard players add #k bs.ctx 1 +scoreboard players add #i bs.ctx 1 -scoreboard players set #math.combine.max_out_nonoverflow bs.data 2147483647 -scoreboard players operation #math.combine.max_out_nonoverflow bs.data /= #math.combine.k bs.data -execute store result score #math.combine.flag bs.data if score $math.combine bs.out <= #math.combine.max_out_nonoverflow bs.data -execute if score #math.combine.flag bs.data matches 1 run scoreboard players operation $math.combine bs.out *= #math.combine.k bs.data -execute if score #math.combine.flag bs.data matches 1 run scoreboard players operation $math.combine bs.out /= #math.combine.i bs.data -execute if score #math.combine.flag bs.data matches 0 run function bs.math:combine/recurse/overflow +scoreboard players operation $math.combine bs.out /= #i bs.ctx +scoreboard players operation $math.combine bs.out *= #k bs.ctx -execute if score #math.combine.i bs.data < #math.combine.n bs.data run function bs.math:combine/recurse/next +scoreboard players operation #m bs.ctx %= #i bs.ctx +scoreboard players operation #m bs.ctx *= #k bs.ctx +scoreboard players operation #m bs.ctx /= #i bs.ctx +execute store result score #m bs.ctx run scoreboard players operation $math.combine bs.out += #m bs.ctx + +execute if score #i bs.ctx < #n bs.ctx run function bs.math:combine/recurse/next diff --git a/datapacks/Bookshelf/data/bs.math/function/combine/recurse/overflow.mcfunction b/datapacks/Bookshelf/data/bs.math/function/combine/recurse/overflow.mcfunction deleted file mode 100644 index da2f82a01c..0000000000 --- a/datapacks/Bookshelf/data/bs.math/function/combine/recurse/overflow.mcfunction +++ /dev/null @@ -1,48 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -# t1 = out//i; t2 = out%i; t3 = k//i; t4 = k%i -# out*k//i = t1*t3*i + t2*t3 + t1*t4 + t2*t4//i -#tellraw @a {"score":{"name": "#math.combine.max_out_nonoverflow","objective": "bs.data"}} -# t2 -scoreboard players operation #math.combine.temp2 bs.data = $math.combine bs.out -execute store result score #math.combine.add2 bs.data run scoreboard players operation #math.combine.temp2 bs.data %= #math.combine.i bs.data - -# t1 -scoreboard players operation $math.combine bs.out /= #math.combine.i bs.data - -# t3 & t4 -execute store result score #math.combine.temp3 bs.data run scoreboard players operation #math.combine.temp4 bs.data = #math.combine.k bs.data -scoreboard players operation #math.combine.temp3 bs.data /= #math.combine.i bs.data -execute store result score #math.combine.add3 bs.data store result score #math.combine.add4 bs.data run scoreboard players operation #math.combine.temp4 bs.data %= #math.combine.i bs.data - -# add1 = t1 * t3 * i -scoreboard players operation $math.combine bs.out *= #math.combine.temp3 bs.data -scoreboard players operation $math.combine bs.out *= #math.combine.i bs.data - -# add2 = t2 * t3 -scoreboard players operation #math.combine.add2 bs.data *= #math.combine.temp3 bs.data - -# add3 = t4 * t1 -scoreboard players operation #math.combine.add3 bs.data *= #math.combine.temp1 bs.data - -# add4 = t4 * t2 // i -scoreboard players operation #math.combine.add3 bs.data *= #math.combine.temp2 bs.data -scoreboard players operation #math.combine.add3 bs.data /= #math.combine.i bs.data - -# add together -scoreboard players operation $math.combine bs.out += #math.combine.add2 bs.data -scoreboard players operation $math.combine bs.out += #math.combine.add3 bs.data -scoreboard players operation $math.combine bs.out += #math.combine.add4 bs.data diff --git a/datapacks/Bookshelf/data/bs.math/function/cos.mcfunction b/datapacks/Bookshelf/data/bs.math/function/cos.mcfunction index d980dd6301..38dc738262 100644 --- a/datapacks/Bookshelf/data/bs.math/function/cos.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/cos.mcfunction @@ -17,15 +17,15 @@ # Normalize angle scoreboard players operation $math.cos bs.out = $math.cos.x bs.in -execute store result score #math.cos.x bs.data run scoreboard players operation $math.cos bs.out %= 36000 bs.const -execute if score #math.cos.x bs.data matches 9000..27000 run scoreboard players remove $math.cos bs.out 18000 -execute if score #math.cos.x bs.data matches 27001.. run scoreboard players remove $math.cos bs.out 36000 +execute store result score #x bs.ctx run scoreboard players operation $math.cos bs.out %= 36000 bs.const +execute if score #x bs.ctx matches 9000..27000 run scoreboard players remove $math.cos bs.out 18000 +execute if score #x bs.ctx matches 27001.. run scoreboard players remove $math.cos bs.out 36000 # Compute Bhāskara cosine approximation -execute store result score #math.cos.y bs.data run scoreboard players operation $math.cos bs.out *= $math.cos bs.out +execute store result score #y bs.ctx run scoreboard players operation $math.cos bs.out *= $math.cos bs.out scoreboard players operation $math.cos bs.out *= -4 bs.const scoreboard players add $math.cos bs.out 324000000 -scoreboard players add #math.cos.y bs.data 324000000 -scoreboard players operation #math.cos.y bs.data /= 1000 bs.const -execute if score #math.cos.x bs.data matches 9000..27000 run scoreboard players operation #math.cos.y bs.data *= -1 bs.const -return run scoreboard players operation $math.cos bs.out /= #math.cos.y bs.data +scoreboard players add #y bs.ctx 324000000 +scoreboard players operation #y bs.ctx /= 1000 bs.const +execute if score #x bs.ctx matches 9000..27000 run scoreboard players operation #y bs.ctx *= -1 bs.const +return run scoreboard players operation $math.cos bs.out /= #y bs.ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/divide.mcfunction b/datapacks/Bookshelf/data/bs.math/function/divide.mcfunction index 8a8f70f492..b846c4b82b 100644 --- a/datapacks/Bookshelf/data/bs.math/function/divide.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/divide.mcfunction @@ -15,10 +15,10 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#rounded-division # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.divide.x bs.data run scoreboard players operation $math.divide bs.out = $math.divide.x bs.in +execute store result score #x bs.ctx run scoreboard players operation $math.divide bs.out = $math.divide.x bs.in scoreboard players operation $math.divide bs.out /= $math.divide.y bs.in -execute store result score #math.divide.y bs.data run scoreboard players operation #math.divide.x bs.data %= $math.divide.y bs.in -scoreboard players operation #math.divide.y bs.data -= $math.divide.y bs.in -scoreboard players operation #math.divide.y bs.data *= -1 bs.const -execute if score #math.divide.y bs.data < #math.divide.x bs.data run scoreboard players add $math.divide bs.out 1 +execute store result score #y bs.ctx run scoreboard players operation #x bs.ctx %= $math.divide.y bs.in +scoreboard players operation #y bs.ctx -= $math.divide.y bs.in +scoreboard players operation #y bs.ctx *= -1 bs.const +execute if score #y bs.ctx < #x bs.ctx run scoreboard players add $math.divide bs.out 1 return run scoreboard players get $math.divide bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/exp.mcfunction b/datapacks/Bookshelf/data/bs.math/function/exp.mcfunction index b78b6ac7db..3ab43f0842 100644 --- a/datapacks/Bookshelf/data/bs.math/function/exp.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/exp.mcfunction @@ -15,6 +15,6 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#exponential # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.ldexp.e bs.data store result score #math.exp2.x bs.data run data get storage bs:in math.exp.x 24204406.323122970759868621826171875 +execute store result score #e bs.ctx store result score #x bs.ctx run data get storage bs:in math.exp.x 24204406.323122970759868621826171875 function bs.math:exp2/run data modify storage bs:out math.exp set from storage bs:ctx x diff --git a/datapacks/Bookshelf/data/bs.math/function/exp2/exp2.mcfunction b/datapacks/Bookshelf/data/bs.math/function/exp2/exp2.mcfunction index ec40e99da8..3549788a33 100644 --- a/datapacks/Bookshelf/data/bs.math/function/exp2/exp2.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/exp2/exp2.mcfunction @@ -15,6 +15,6 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#exponential # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.ldexp.e bs.data store result score #math.exp2.x bs.data run data get storage bs:in math.exp2.x 16777216 +execute store result score #e bs.ctx store result score #x bs.ctx run data get storage bs:in math.exp2.x 16777216 function bs.math:exp2/run data modify storage bs:out math.exp2 set from storage bs:ctx x diff --git a/datapacks/Bookshelf/data/bs.math/function/exp2/fract.mcfunction b/datapacks/Bookshelf/data/bs.math/function/exp2/fract.mcfunction index a2c7641843..cbfecfc6c5 100644 --- a/datapacks/Bookshelf/data/bs.math/function/exp2/fract.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/exp2/fract.mcfunction @@ -22,14 +22,14 @@ # c4: 0.69315307320016572578680325023015029728412628173828 # c5: 0.99999992506352930465851613917038775980472564697266 -$execute store result storage bs:ctx x float $(x) run scoreboard players set #math.exp2.x bs.data 31500 -execute store result score #math.exp2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.exp2.x bs.data 150816 -execute store result score #math.exp2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.exp2.x bs.data 936610 -execute store result score #math.exp2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.exp2.x bs.data 4029109 -execute store result score #math.exp2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.exp2.x bs.data 11629179 -execute store result score #math.exp2.x bs.data run data get storage bs:ctx x -execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players add #math.exp2.x bs.data 16777215 +$execute store result storage bs:ctx x float $(x) run scoreboard players set #x bs.ctx 31500 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 150816 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 936610 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 4029109 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 11629179 +execute store result score #x bs.ctx run data get storage bs:ctx x +execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players add #x bs.ctx 16777215 diff --git a/datapacks/Bookshelf/data/bs.math/function/exp2/run.mcfunction b/datapacks/Bookshelf/data/bs.math/function/exp2/run.mcfunction index 79e909fdde..7a9683f588 100644 --- a/datapacks/Bookshelf/data/bs.math/function/exp2/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/exp2/run.mcfunction @@ -14,8 +14,8 @@ # ------------------------------------------------------------------------------------------------------------ # exp2(x) = exp2(i) * exp2(f) -scoreboard players operation #math.ldexp.e bs.data /= 16777216 bs.const -execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players operation #math.exp2.x bs.data %= 16777216 bs.const -execute unless score #math.exp2.x bs.data matches 0 run function bs.math:exp2/fract with storage bs:ctx -execute if score #math.exp2.x bs.data matches 0 run data modify storage bs:ctx x set value 1.0 +scoreboard players operation #e bs.ctx /= 16777216 bs.const +execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players operation #x bs.ctx %= 16777216 bs.const +execute unless score #x bs.ctx matches 0 run function bs.math:exp2/fract with storage bs:ctx +execute if score #x bs.ctx matches 0 run data modify storage bs:ctx x set value 1.0 function bs.math:ldexp/run with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/factorial/factorial.mcfunction b/datapacks/Bookshelf/data/bs.math/function/factorial/factorial.mcfunction index 2ed84f5fd8..ea30676f3f 100644 --- a/datapacks/Bookshelf/data/bs.math/function/factorial/factorial.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/factorial/factorial.mcfunction @@ -31,6 +31,6 @@ execute if score $math.factorial.n bs.in matches 10 run return run scoreboard pl execute if score $math.factorial.n bs.in matches 11 run return run scoreboard players set $math.factorial bs.out 39916800 execute if score $math.factorial.n bs.in matches 12 run return run scoreboard players set $math.factorial bs.out 479001600 -execute store result score #math.factorial.i bs.data run scoreboard players operation $math.factorial bs.out = $math.factorial.n bs.in +execute store result score #i bs.ctx run scoreboard players operation $math.factorial bs.out = $math.factorial.n bs.in function bs.math:factorial/loop return run scoreboard players get $math.factorial bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/factorial/loop.mcfunction b/datapacks/Bookshelf/data/bs.math/function/factorial/loop.mcfunction index 743fe11d3b..a18b617d3e 100644 --- a/datapacks/Bookshelf/data/bs.math/function/factorial/loop.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/factorial/loop.mcfunction @@ -13,6 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -scoreboard players remove #math.factorial.i bs.data 1 -scoreboard players operation $math.factorial bs.out *= #math.factorial.i bs.data -execute if score #math.factorial.i bs.data matches 3.. run function bs.math:factorial/loop +scoreboard players remove #i bs.ctx 1 +scoreboard players operation $math.factorial bs.out *= #i bs.ctx +execute if score #i bs.ctx matches 3.. run function bs.math:factorial/loop diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/e_neg.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/e_neg.mcfunction index 62acf29485..771840f880 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/e_neg.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/e_neg.mcfunction @@ -13,25 +13,25 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -scoreboard players set #math.frexp.e bs.data 0 -execute store result score #result bs.data run data get storage bs:ctx x 18446744073709551616 -execute if score #result bs.data matches 0 run scoreboard players remove #math.frexp.e bs.data 64 -execute if score #result bs.data matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 39614081257132168796771975168 -execute store result score #result bs.data run data get storage bs:ctx x 4294967296 -execute if score #result bs.data matches 0 run scoreboard players remove #math.frexp.e bs.data 32 -execute if score #result bs.data matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 9223372036854775808 -execute store result score #result bs.data run data get storage bs:ctx x 65536 -execute if score #result bs.data matches 0 run scoreboard players remove #math.frexp.e bs.data 16 -execute if score #result bs.data matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 140737488355328 -execute store result score #result bs.data run data get storage bs:ctx x 256 -execute if score #result bs.data matches 0 run scoreboard players remove #math.frexp.e bs.data 8 -execute if score #result bs.data matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 549755813888 -execute store result score #result bs.data run data get storage bs:ctx x 16 -execute if score #result bs.data matches 0 run scoreboard players remove #math.frexp.e bs.data 4 -execute if score #result bs.data matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 34359738368 -execute store result score #result bs.data run data get storage bs:ctx x 4 -execute if score #result bs.data matches 0 run scoreboard players remove #math.frexp.e bs.data 2 -execute if score #result bs.data matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 8589934588 -execute store result score #result bs.data run data get storage bs:ctx x 2 -execute if score #result bs.data matches 0 run scoreboard players remove #math.frexp.e bs.data 1 -execute if score #result bs.data matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 4294967296 +scoreboard players set #e bs.ctx 0 +execute store result score #f bs.ctx run data get storage bs:ctx x 18446744073709551616 +execute if score #f bs.ctx matches 0 run scoreboard players remove #e bs.ctx 64 +execute if score #f bs.ctx matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 39614081257132168796771975168 +execute store result score #f bs.ctx run data get storage bs:ctx x 4294967296 +execute if score #f bs.ctx matches 0 run scoreboard players remove #e bs.ctx 32 +execute if score #f bs.ctx matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 9223372036854775808 +execute store result score #f bs.ctx run data get storage bs:ctx x 65536 +execute if score #f bs.ctx matches 0 run scoreboard players remove #e bs.ctx 16 +execute if score #f bs.ctx matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 140737488355328 +execute store result score #f bs.ctx run data get storage bs:ctx x 256 +execute if score #f bs.ctx matches 0 run scoreboard players remove #e bs.ctx 8 +execute if score #f bs.ctx matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 549755813888 +execute store result score #f bs.ctx run data get storage bs:ctx x 16 +execute if score #f bs.ctx matches 0 run scoreboard players remove #e bs.ctx 4 +execute if score #f bs.ctx matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 34359738368 +execute store result score #f bs.ctx run data get storage bs:ctx x 4 +execute if score #f bs.ctx matches 0 run scoreboard players remove #e bs.ctx 2 +execute if score #f bs.ctx matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 8589934588 +execute store result score #f bs.ctx run data get storage bs:ctx x 2 +execute if score #f bs.ctx matches 0 run scoreboard players remove #e bs.ctx 1 +execute if score #f bs.ctx matches 0 store result storage bs:ctx x float .0000000004656612873077392578125 run data get storage bs:ctx x 4294967296 diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/chunk.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/chunk.mcfunction index de65df84b5..6d32b5ceaa 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/chunk.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/chunk.mcfunction @@ -13,18 +13,18 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute unless score #math.frexp.x bs.data matches -1073741823..1073741823 store result storage bs:ctx x float .0000000004656612873077392578125 run scoreboard players get #math.frexp.x bs.data -execute unless score #math.frexp.x bs.data matches -1073741823..1073741823 run return run scoreboard players add #math.frexp.e bs.data 7 -execute unless score #math.frexp.x bs.data matches -536870911..536870911 store result storage bs:ctx x float .000000000931322574615478515625 run scoreboard players get #math.frexp.x bs.data -execute unless score #math.frexp.x bs.data matches -536870911..536870911 run return run scoreboard players add #math.frexp.e bs.data 6 -execute unless score #math.frexp.x bs.data matches -268435455..268435455 store result storage bs:ctx x float .00000000186264514923095703125 run scoreboard players get #math.frexp.x bs.data -execute unless score #math.frexp.x bs.data matches -268435455..268435455 run return run scoreboard players add #math.frexp.e bs.data 5 -execute unless score #math.frexp.x bs.data matches -134217727..134217727 store result storage bs:ctx x float .0000000037252902984619140625 run scoreboard players get #math.frexp.x bs.data -execute unless score #math.frexp.x bs.data matches -134217727..134217727 run return run scoreboard players add #math.frexp.e bs.data 4 -execute unless score #math.frexp.x bs.data matches -67108863..67108863 store result storage bs:ctx x float .000000007450580596923828125 run scoreboard players get #math.frexp.x bs.data -execute unless score #math.frexp.x bs.data matches -67108863..67108863 run return run scoreboard players add #math.frexp.e bs.data 3 -execute unless score #math.frexp.x bs.data matches -33554431..33554431 store result storage bs:ctx x float .00000001490116119384765625 run scoreboard players get #math.frexp.x bs.data -execute unless score #math.frexp.x bs.data matches -33554431..33554431 run return run scoreboard players add #math.frexp.e bs.data 2 -execute unless score #math.frexp.x bs.data matches -16777215..16777215 store result storage bs:ctx x float .0000000298023223876953125 run scoreboard players get #math.frexp.x bs.data -execute unless score #math.frexp.x bs.data matches -16777215..16777215 run return run scoreboard players add #math.frexp.e bs.data 1 -execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players get #math.frexp.x bs.data +execute unless score #x bs.ctx matches -1073741823..1073741823 store result storage bs:ctx x float .0000000004656612873077392578125 run scoreboard players get #x bs.ctx +execute unless score #x bs.ctx matches -1073741823..1073741823 run return run scoreboard players add #e bs.ctx 7 +execute unless score #x bs.ctx matches -536870911..536870911 store result storage bs:ctx x float .000000000931322574615478515625 run scoreboard players get #x bs.ctx +execute unless score #x bs.ctx matches -536870911..536870911 run return run scoreboard players add #e bs.ctx 6 +execute unless score #x bs.ctx matches -268435455..268435455 store result storage bs:ctx x float .00000000186264514923095703125 run scoreboard players get #x bs.ctx +execute unless score #x bs.ctx matches -268435455..268435455 run return run scoreboard players add #e bs.ctx 5 +execute unless score #x bs.ctx matches -134217727..134217727 store result storage bs:ctx x float .0000000037252902984619140625 run scoreboard players get #x bs.ctx +execute unless score #x bs.ctx matches -134217727..134217727 run return run scoreboard players add #e bs.ctx 4 +execute unless score #x bs.ctx matches -67108863..67108863 store result storage bs:ctx x float .000000007450580596923828125 run scoreboard players get #x bs.ctx +execute unless score #x bs.ctx matches -67108863..67108863 run return run scoreboard players add #e bs.ctx 3 +execute unless score #x bs.ctx matches -33554431..33554431 store result storage bs:ctx x float .00000001490116119384765625 run scoreboard players get #x bs.ctx +execute unless score #x bs.ctx matches -33554431..33554431 run return run scoreboard players add #e bs.ctx 2 +execute unless score #x bs.ctx matches -16777215..16777215 store result storage bs:ctx x float .0000000298023223876953125 run scoreboard players get #x bs.ctx +execute unless score #x bs.ctx matches -16777215..16777215 run return run scoreboard players add #e bs.ctx 1 +execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players get #x bs.ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_1.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_1.mcfunction index 7220f3da80..1cacee1b95 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_1.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_1.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .000000000000000000000000000012621774483536188886587657044524579674771302961744368076324462890625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 120 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .0000000000000000000000000032311742677852643549664402033982923967414535582065582275390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 112 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .00000000000000000000000082718061255302767487140869206996285356581211090087890625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 104 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .000000000000000000000211758236813575084767080625169910490512847900390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 96 +execute store result score #x bs.ctx run data get storage bs:ctx x .000000000000000000000000000012621774483536188886587657044524579674771302961744368076324462890625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 120 +execute store result score #x bs.ctx run data get storage bs:ctx x .0000000000000000000000000032311742677852643549664402033982923967414535582065582275390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 112 +execute store result score #x bs.ctx run data get storage bs:ctx x .00000000000000000000000082718061255302767487140869206996285356581211090087890625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 104 +execute store result score #x bs.ctx run data get storage bs:ctx x .000000000000000000000211758236813575084767080625169910490512847900390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 96 diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_2.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_2.mcfunction index b0e0776d38..d18270aa32 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_2.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_2.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .0000000000000000000542101086242752217003726400434970855712890625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 88 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .00000000000000001387778780781445675529539585113525390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 80 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .000000000000003552713678800500929355621337890625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 72 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .0000000000009094947017729282379150390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 64 +execute store result score #x bs.ctx run data get storage bs:ctx x .0000000000000000000542101086242752217003726400434970855712890625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 88 +execute store result score #x bs.ctx run data get storage bs:ctx x .00000000000000001387778780781445675529539585113525390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 80 +execute store result score #x bs.ctx run data get storage bs:ctx x .000000000000003552713678800500929355621337890625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 72 +execute store result score #x bs.ctx run data get storage bs:ctx x .0000000000009094947017729282379150390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 64 diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_3.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_3.mcfunction index 9367d0ed0d..2f639b214d 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_3.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_3.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .00000000023283064365386962890625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 56 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .000000059604644775390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 48 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .0000152587890625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 40 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .00390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 32 +execute store result score #x bs.ctx run data get storage bs:ctx x .00000000023283064365386962890625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 56 +execute store result score #x bs.ctx run data get storage bs:ctx x .000000059604644775390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 48 +execute store result score #x bs.ctx run data get storage bs:ctx x .0000152587890625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 40 +execute store result score #x bs.ctx run data get storage bs:ctx x .00390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 32 diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_4.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_4.mcfunction index f72cf2ff32..986b2ca74e 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_4.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/range_4.mcfunction @@ -13,11 +13,11 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x 1 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 24 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x 256 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 16 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x 65536 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run scoreboard players set #math.frexp.e bs.data 8 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x 16777216 -scoreboard players set #math.frexp.e bs.data 0 +execute store result score #x bs.ctx run data get storage bs:ctx x 1 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 24 +execute store result score #x bs.ctx run data get storage bs:ctx x 256 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 16 +execute store result score #x bs.ctx run data get storage bs:ctx x 65536 +execute unless score #x bs.ctx matches -8388607..8388607 run return run scoreboard players set #e bs.ctx 8 +execute store result score #x bs.ctx run data get storage bs:ctx x 16777216 +scoreboard players set #e bs.ctx 0 diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/split.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/split.mcfunction index 3374ea8ff2..db51913415 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/split.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/e_pos/split.mcfunction @@ -13,10 +13,10 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .000000000000000000000211758236813575084767080625169910490512847900390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run function bs.math:frexp/e_pos/range_1 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .0000000000009094947017729282379150390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run function bs.math:frexp/e_pos/range_2 -execute store result score #math.frexp.x bs.data run data get storage bs:ctx x .00390625 -execute unless score #math.frexp.x bs.data matches -8388607..8388607 run return run function bs.math:frexp/e_pos/range_3 +execute store result score #x bs.ctx run data get storage bs:ctx x .000000000000000000000211758236813575084767080625169910490512847900390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run function bs.math:frexp/e_pos/range_1 +execute store result score #x bs.ctx run data get storage bs:ctx x .0000000000009094947017729282379150390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run function bs.math:frexp/e_pos/range_2 +execute store result score #x bs.ctx run data get storage bs:ctx x .00390625 +execute unless score #x bs.ctx matches -8388607..8388607 run return run function bs.math:frexp/e_pos/range_3 function bs.math:frexp/e_pos/range_4 diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/frexp.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/frexp.mcfunction index f5ad93f807..d61310c157 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/frexp.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/frexp.mcfunction @@ -17,5 +17,5 @@ data modify storage bs:ctx x set from storage bs:in math.frexp.x function bs.math:frexp/run -execute store result storage bs:out math.frexp.e int 1 run scoreboard players get #math.frexp.e bs.data +execute store result storage bs:out math.frexp.e int 1 run scoreboard players get #e bs.ctx data modify storage bs:out math.frexp.x set from storage bs:ctx x diff --git a/datapacks/Bookshelf/data/bs.math/function/frexp/run.mcfunction b/datapacks/Bookshelf/data/bs.math/function/frexp/run.mcfunction index 78fed0b7c9..2ae926e562 100644 --- a/datapacks/Bookshelf/data/bs.math/function/frexp/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/frexp/run.mcfunction @@ -13,7 +13,7 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result score #result bs.data run data get storage bs:ctx x -execute unless score #result bs.data matches 0 run function bs.math:frexp/e_pos/split -execute unless score #result bs.data matches 0 run function bs.math:frexp/e_pos/chunk -execute if score #result bs.data matches 0 run function bs.math:frexp/e_neg +execute store result score #f bs.ctx run data get storage bs:ctx x +execute unless score #f bs.ctx matches 0 run function bs.math:frexp/e_pos/split +execute unless score #f bs.ctx matches 0 run function bs.math:frexp/e_pos/chunk +execute if score #f bs.ctx matches 0 run function bs.math:frexp/e_neg diff --git a/datapacks/Bookshelf/data/bs.math/function/gcd/gcd.mcfunction b/datapacks/Bookshelf/data/bs.math/function/gcd/gcd.mcfunction index 85e7ef3b2f..35888a6904 100644 --- a/datapacks/Bookshelf/data/bs.math/function/gcd/gcd.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/gcd/gcd.mcfunction @@ -16,6 +16,6 @@ # ------------------------------------------------------------------------------------------------------------ scoreboard players operation $math.gcd bs.out = $math.gcd.a bs.in -scoreboard players operation #math.gcd.b bs.data = $math.gcd.b bs.in +scoreboard players operation #t bs.ctx = $math.gcd.b bs.in function bs.math:gcd/loop return run scoreboard players get $math.gcd bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/gcd/loop.mcfunction b/datapacks/Bookshelf/data/bs.math/function/gcd/loop.mcfunction index 524bdba015..4db04bd693 100644 --- a/datapacks/Bookshelf/data/bs.math/function/gcd/loop.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/gcd/loop.mcfunction @@ -13,6 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -scoreboard players operation $math.gcd bs.out %= #math.gcd.b bs.data -scoreboard players operation $math.gcd bs.out >< #math.gcd.b bs.data -execute unless score #math.gcd.b bs.data matches 0 run function bs.math:gcd/loop +scoreboard players operation $math.gcd bs.out %= #t bs.ctx +scoreboard players operation $math.gcd bs.out >< #t bs.ctx +execute unless score #t bs.ctx matches 0 run function bs.math:gcd/loop diff --git a/datapacks/Bookshelf/data/bs.math/function/ipow.mcfunction b/datapacks/Bookshelf/data/bs.math/function/ipow.mcfunction index 456ecc38a3..d357dc568b 100644 --- a/datapacks/Bookshelf/data/bs.math/function/ipow.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/ipow.mcfunction @@ -16,21 +16,21 @@ # ------------------------------------------------------------------------------------------------------------ scoreboard players set $math.ipow bs.out 1 -execute if score $math.ipow.y bs.in matches 1.. store result score #math.ipow.2 bs.data run scoreboard players operation #math.ipow.1 bs.data = $math.ipow.x bs.in -execute if score $math.ipow.y bs.in matches 2.. store result score #math.ipow.4 bs.data run scoreboard players operation #math.ipow.2 bs.data *= #math.ipow.2 bs.data -execute if score $math.ipow.y bs.in matches 4.. store result score #math.ipow.8 bs.data run scoreboard players operation #math.ipow.4 bs.data *= #math.ipow.4 bs.data -execute if score $math.ipow.y bs.in matches 8.. store result score #math.ipow.16 bs.data run scoreboard players operation #math.ipow.8 bs.data *= #math.ipow.8 bs.data -execute if score $math.ipow.y bs.in matches 16.. run scoreboard players operation #math.ipow.16 bs.data *= #math.ipow.16 bs.data +execute if score $math.ipow.y bs.in matches 1.. store result score #j bs.ctx run scoreboard players operation #i bs.ctx = $math.ipow.x bs.in +execute if score $math.ipow.y bs.in matches 2.. store result score #k bs.ctx run scoreboard players operation #j bs.ctx *= #j bs.ctx +execute if score $math.ipow.y bs.in matches 4.. store result score #l bs.ctx run scoreboard players operation #k bs.ctx *= #k bs.ctx +execute if score $math.ipow.y bs.in matches 8.. store result score #m bs.ctx run scoreboard players operation #l bs.ctx *= #l bs.ctx +execute if score $math.ipow.y bs.in matches 16.. run scoreboard players operation #m bs.ctx *= #m bs.ctx -scoreboard players operation #math.ipow.y bs.data = $math.ipow.y bs.in -execute if score #math.ipow.y bs.data matches 16.. run scoreboard players operation $math.ipow bs.out *= #math.ipow.16 bs.data -execute if score #math.ipow.y bs.data matches 16.. run scoreboard players remove #math.ipow.y bs.data 16 -execute if score #math.ipow.y bs.data matches 8.. run scoreboard players operation $math.ipow bs.out *= #math.ipow.8 bs.data -execute if score #math.ipow.y bs.data matches 8.. run scoreboard players remove #math.ipow.y bs.data 8 -execute if score #math.ipow.y bs.data matches 4.. run scoreboard players operation $math.ipow bs.out *= #math.ipow.4 bs.data -execute if score #math.ipow.y bs.data matches 4.. run scoreboard players remove #math.ipow.y bs.data 4 -execute if score #math.ipow.y bs.data matches 2.. run scoreboard players operation $math.ipow bs.out *= #math.ipow.2 bs.data -execute if score #math.ipow.y bs.data matches 2.. run scoreboard players remove #math.ipow.y bs.data 2 -execute if score #math.ipow.y bs.data matches 1.. run scoreboard players operation $math.ipow bs.out *= #math.ipow.1 bs.data +scoreboard players operation #y bs.ctx = $math.ipow.y bs.in +execute if score #y bs.ctx matches 16.. run scoreboard players operation $math.ipow bs.out *= #m bs.ctx +execute if score #y bs.ctx matches 16.. run scoreboard players remove #y bs.ctx 16 +execute if score #y bs.ctx matches 8.. run scoreboard players operation $math.ipow bs.out *= #l bs.ctx +execute if score #y bs.ctx matches 8.. run scoreboard players remove #y bs.ctx 8 +execute if score #y bs.ctx matches 4.. run scoreboard players operation $math.ipow bs.out *= #k bs.ctx +execute if score #y bs.ctx matches 4.. run scoreboard players remove #y bs.ctx 4 +execute if score #y bs.ctx matches 2.. run scoreboard players operation $math.ipow bs.out *= #j bs.ctx +execute if score #y bs.ctx matches 2.. run scoreboard players remove #y bs.ctx 2 +execute if score #y bs.ctx matches 1.. run scoreboard players operation $math.ipow bs.out *= #i bs.ctx return run scoreboard players get $math.ipow bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/isqrt.mcfunction b/datapacks/Bookshelf/data/bs.math/function/isqrt.mcfunction index b7bb5e34e4..76be7d1bcf 100644 --- a/datapacks/Bookshelf/data/bs.math/function/isqrt.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/isqrt.mcfunction @@ -17,23 +17,23 @@ # Note: Thanks to the Minecraft Commands' discord server for the help provided (https://discord.gg/QAFXFtZ) -execute store result score #math.isqrt.t1 bs.data store result score #math.isqrt.t2 bs.data store result score #math.isqrt.t3 bs.data store result score #math.isqrt.t4 bs.data run scoreboard players operation $math.isqrt bs.out = $math.isqrt.x bs.in +execute store result score #s bs.ctx store result score #t bs.ctx store result score #u bs.ctx store result score #v bs.ctx run scoreboard players operation $math.isqrt bs.out = $math.isqrt.x bs.in execute if score $math.isqrt.x bs.in matches 0..1515359 run scoreboard players operation $math.isqrt bs.out /= 559 bs.const execute if score $math.isqrt.x bs.in matches 0..1515359 run scoreboard players add $math.isqrt bs.out 15 execute if score $math.isqrt.x bs.in matches 1515360.. run scoreboard players operation $math.isqrt bs.out /= 32768 bs.const execute if score $math.isqrt.x bs.in matches 1515360.. run scoreboard players add $math.isqrt bs.out 2456 -scoreboard players operation #math.isqrt.t1 bs.data /= $math.isqrt bs.out -scoreboard players operation $math.isqrt bs.out += #math.isqrt.t1 bs.data +scoreboard players operation #s bs.ctx /= $math.isqrt bs.out +scoreboard players operation $math.isqrt bs.out += #s bs.ctx scoreboard players operation $math.isqrt bs.out /= 2 bs.const -scoreboard players operation #math.isqrt.t2 bs.data /= $math.isqrt bs.out -scoreboard players operation $math.isqrt bs.out += #math.isqrt.t2 bs.data +scoreboard players operation #t bs.ctx /= $math.isqrt bs.out +scoreboard players operation $math.isqrt bs.out += #t bs.ctx scoreboard players operation $math.isqrt bs.out /= 2 bs.const -scoreboard players operation #math.isqrt.t3 bs.data /= $math.isqrt bs.out -scoreboard players operation $math.isqrt bs.out += #math.isqrt.t3 bs.data +scoreboard players operation #u bs.ctx /= $math.isqrt bs.out +scoreboard players operation $math.isqrt bs.out += #u bs.ctx scoreboard players operation $math.isqrt bs.out /= 2 bs.const -scoreboard players operation #math.isqrt.t4 bs.data /= $math.isqrt bs.out -execute if score $math.isqrt bs.out > #math.isqrt.t4 bs.data run scoreboard players remove $math.isqrt bs.out 1 +scoreboard players operation #v bs.ctx /= $math.isqrt bs.out +execute if score $math.isqrt bs.out > #v bs.ctx run scoreboard players remove $math.isqrt bs.out 1 return run scoreboard players get $math.isqrt bs.out diff --git a/datapacks/Bookshelf/data/bs.math/function/ldexp/ldexp.mcfunction b/datapacks/Bookshelf/data/bs.math/function/ldexp/ldexp.mcfunction index d91895ebcb..04d1646379 100644 --- a/datapacks/Bookshelf/data/bs.math/function/ldexp/ldexp.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/ldexp/ldexp.mcfunction @@ -16,6 +16,6 @@ # ------------------------------------------------------------------------------------------------------------ data modify storage bs:ctx x set from storage bs:in math.ldexp.x -execute store result score #math.ldexp.e bs.data run data get storage bs:in math.ldexp.e +execute store result score #e bs.ctx run data get storage bs:in math.ldexp.e function bs.math:ldexp/run data modify storage bs:out math.ldexp set from storage bs:ctx x diff --git a/datapacks/Bookshelf/data/bs.math/function/ldexp/run.mcfunction b/datapacks/Bookshelf/data/bs.math/function/ldexp/run.mcfunction index 5f5fb2dc3c..dba4430646 100644 --- a/datapacks/Bookshelf/data/bs.math/function/ldexp/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/ldexp/run.mcfunction @@ -13,6 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute store result storage bs:ctx y int 1 run scoreboard players add #math.ldexp.e bs.data 127 +execute store result storage bs:ctx y int 1 run scoreboard players add #e bs.ctx 127 function bs.math:ldexp/table with storage bs:ctx function bs.math:ldexp/mul with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/log2/fract.mcfunction b/datapacks/Bookshelf/data/bs.math/function/log2/fract.mcfunction index da6e60cae2..659ff12846 100644 --- a/datapacks/Bookshelf/data/bs.math/function/log2/fract.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/log2/fract.mcfunction @@ -25,20 +25,20 @@ # c7: 15.723860485552176413648339803330600261688232421875 # c8: -4.3731760053578137004137715848628431558609008789062 -$execute store result storage bs:ctx x float $(x) run scoreboard players set #math.log2.x bs.data -28749446 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.log2.x bs.data 203688367 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players remove #math.log2.x bs.data 639941865 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.log2.x bs.data 1173047633 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players remove #math.log2.x bs.data 1389339069 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.log2.x bs.data 1114625108 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players remove #math.log2.x bs.data 623763613 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -$execute store result storage bs:ctx x float $(x) run scoreboard players add #math.log2.x bs.data 263802604 -execute store result score #math.log2.x bs.data run data get storage bs:ctx x -scoreboard players remove #math.log2.x bs.data 73369718 +$execute store result storage bs:ctx x float $(x) run scoreboard players set #x bs.ctx -28749446 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 203688367 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players remove #x bs.ctx 639941865 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 1173047633 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players remove #x bs.ctx 1389339069 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 1114625108 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players remove #x bs.ctx 623763613 +execute store result score #x bs.ctx run data get storage bs:ctx x +$execute store result storage bs:ctx x float $(x) run scoreboard players add #x bs.ctx 263802604 +execute store result score #x bs.ctx run data get storage bs:ctx x +scoreboard players remove #x bs.ctx 73369718 diff --git a/datapacks/Bookshelf/data/bs.math/function/log2/run.mcfunction b/datapacks/Bookshelf/data/bs.math/function/log2/run.mcfunction index 16606bcc52..e3c4d4f69c 100644 --- a/datapacks/Bookshelf/data/bs.math/function/log2/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/log2/run.mcfunction @@ -16,5 +16,5 @@ # decompose x into a normalized fraction and an integral power of two [log2(x) = log2(frexp.x) + frexp.e] function bs.math:frexp/run function bs.math:log2/fract with storage bs:ctx -scoreboard players operation #math.frexp.e bs.data *= 16777216 bs.const -execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players operation #math.log2.x bs.data += #math.frexp.e bs.data +scoreboard players operation #e bs.ctx *= 16777216 bs.const +execute store result storage bs:ctx x float .000000059604644775390625 run scoreboard players operation #x bs.ctx += #e bs.ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/loga/loga.mcfunction b/datapacks/Bookshelf/data/bs.math/function/loga/loga.mcfunction index aa42ef03a2..4cf878e849 100644 --- a/datapacks/Bookshelf/data/bs.math/function/loga/loga.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/loga/loga.mcfunction @@ -18,9 +18,9 @@ data modify storage bs:ctx x set from storage bs:in math.loga.a function bs.math:log2/run -scoreboard players set #math.loga.a bs.data 2000000000 -execute store result score #math.loga.b bs.data run data get storage bs:ctx x 20000 -execute store result storage bs:ctx y double 1 run scoreboard players operation #math.loga.a bs.data /= #math.loga.b bs.data +scoreboard players set #a bs.ctx 2000000000 +execute store result score #b bs.ctx run data get storage bs:ctx x 20000 +execute store result storage bs:ctx y double 1 run scoreboard players operation #a bs.ctx /= #b bs.ctx data modify storage bs:ctx x set from storage bs:in math.loga.x function bs.math:log2/run diff --git a/datapacks/Bookshelf/data/bs.math/function/pow/mul.mcfunction b/datapacks/Bookshelf/data/bs.math/function/pow/mul.mcfunction index c2861c4bf4..3846380092 100644 --- a/datapacks/Bookshelf/data/bs.math/function/pow/mul.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/pow/mul.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store result storage bs:ctx x float $(y) run scoreboard players operation #math.log2.x bs.data += #math.frexp.e bs.data +$execute store result storage bs:ctx x float $(y) run scoreboard players operation #x bs.ctx += #e bs.ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/pow/pow.mcfunction b/datapacks/Bookshelf/data/bs.math/function/pow/pow.mcfunction index a95ea1711e..4d1167fdbc 100644 --- a/datapacks/Bookshelf/data/bs.math/function/pow/pow.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/pow/pow.mcfunction @@ -21,9 +21,9 @@ data modify storage bs:ctx y set from storage bs:in math.pow.y function bs.math:frexp/run function bs.math:log2/fract with storage bs:ctx -scoreboard players operation #math.frexp.e bs.data *= 16777216 bs.const +scoreboard players operation #e bs.ctx *= 16777216 bs.const function bs.math:pow/mul with storage bs:ctx -execute store result score #math.ldexp.e bs.data store result score #math.exp2.x bs.data run data get storage bs:ctx x +execute store result score #e bs.ctx store result score #x bs.ctx run data get storage bs:ctx x function bs.math:exp2/run data modify storage bs:out math.pow set from storage bs:ctx x diff --git a/datapacks/Bookshelf/data/bs.math/function/sin.mcfunction b/datapacks/Bookshelf/data/bs.math/function/sin.mcfunction index 4d82390c4c..fc3c0c64c2 100644 --- a/datapacks/Bookshelf/data/bs.math/function/sin.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/sin.mcfunction @@ -17,15 +17,15 @@ # Normalize angle scoreboard players operation $math.sin bs.out = $math.sin.x bs.in -execute store result score #math.sin.x bs.data run scoreboard players operation $math.sin bs.out %= 36000 bs.const -execute if score #math.sin.x bs.data matches ..18000 run scoreboard players remove $math.sin bs.out 9000 -execute if score #math.sin.x bs.data matches 18001.. run scoreboard players remove $math.sin bs.out 27000 +execute store result score #x bs.ctx run scoreboard players operation $math.sin bs.out %= 36000 bs.const +execute if score #x bs.ctx matches ..18000 run scoreboard players remove $math.sin bs.out 9000 +execute if score #x bs.ctx matches 18001.. run scoreboard players remove $math.sin bs.out 27000 # Compute Bhāskara sinine approximation -execute store result score #math.sin.y bs.data run scoreboard players operation $math.sin bs.out *= $math.sin bs.out +execute store result score #y bs.ctx run scoreboard players operation $math.sin bs.out *= $math.sin bs.out scoreboard players operation $math.sin bs.out *= -4 bs.const scoreboard players add $math.sin bs.out 324000000 -scoreboard players add #math.sin.y bs.data 324000000 -scoreboard players operation #math.sin.y bs.data /= 1000 bs.const -execute if score #math.sin.x bs.data matches 18000.. run scoreboard players operation #math.sin.y bs.data *= -1 bs.const -return run scoreboard players operation $math.sin bs.out /= #math.sin.y bs.data +scoreboard players add #y bs.ctx 324000000 +scoreboard players operation #y bs.ctx /= 1000 bs.const +execute if score #x bs.ctx matches 18000.. run scoreboard players operation #y bs.ctx *= -1 bs.const +return run scoreboard players operation $math.sin bs.out /= #y bs.ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/sincos/sincos.mcfunction b/datapacks/Bookshelf/data/bs.math/function/sincos/sincos.mcfunction index 2a49049dba..02f5be997f 100644 --- a/datapacks/Bookshelf/data/bs.math/function/sincos/sincos.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/sincos/sincos.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#trigonometry # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.math:sincos/run +execute in minecraft:overworld as B5-0-0-0-1 run function bs.math:sincos/run diff --git a/datapacks/Bookshelf/data/bs.math/function/sqrt.mcfunction b/datapacks/Bookshelf/data/bs.math/function/sqrt.mcfunction index 5a0f4e1ab0..2ac88ff911 100644 --- a/datapacks/Bookshelf/data/bs.math/function/sqrt.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/sqrt.mcfunction @@ -19,30 +19,30 @@ data modify storage bs:ctx x set from storage bs:in math.sqrt.x function bs.math:frexp/run # secant approximation (x / 79249 + 19750 => 2 iters) -execute store result score #math.sqrt.x bs.data store result score #math.sqrt.y bs.data store result score #math.sqrt.t1 bs.data store result score #math.sqrt.t2 bs.data run data get storage bs:ctx x 1073741824 -scoreboard players operation #math.sqrt.x bs.data /= 79249 bs.const -scoreboard players add #math.sqrt.x bs.data 19750 -scoreboard players operation #math.sqrt.t1 bs.data /= #math.sqrt.x bs.data -scoreboard players operation #math.sqrt.x bs.data += #math.sqrt.t1 bs.data -scoreboard players operation #math.sqrt.x bs.data /= 2 bs.const -scoreboard players operation #math.sqrt.t2 bs.data /= #math.sqrt.x bs.data -scoreboard players operation #math.sqrt.x bs.data += #math.sqrt.t2 bs.data -execute store result score #math.sqrt.t1 bs.data store result score #math.sqrt.t2 bs.data run scoreboard players operation #math.sqrt.x bs.data /= 2 bs.const +execute store result score #x bs.ctx store result score #y bs.ctx store result score #i bs.ctx store result score #j bs.ctx run data get storage bs:ctx x 1073741824 +scoreboard players operation #x bs.ctx /= 79249 bs.const +scoreboard players add #x bs.ctx 19750 +scoreboard players operation #i bs.ctx /= #x bs.ctx +scoreboard players operation #x bs.ctx += #i bs.ctx +scoreboard players operation #x bs.ctx /= 2 bs.const +scoreboard players operation #j bs.ctx /= #x bs.ctx +scoreboard players operation #x bs.ctx += #j bs.ctx +execute store result score #i bs.ctx store result score #j bs.ctx run scoreboard players operation #x bs.ctx /= 2 bs.const # secant approximation (x - isqrt(x)^2) / (isqrt(x) * 2 + 1) -scoreboard players operation #math.sqrt.t1 bs.data *= 2 bs.const -scoreboard players add #math.sqrt.t1 bs.data 1 -scoreboard players operation #math.sqrt.t2 bs.data *= #math.sqrt.t2 bs.data -scoreboard players operation #math.sqrt.y bs.data -= #math.sqrt.t2 bs.data -scoreboard players operation #math.sqrt.y bs.data *= 32768 bs.const -scoreboard players operation #math.sqrt.y bs.data /= #math.sqrt.t1 bs.data -scoreboard players operation #math.sqrt.x bs.data *= 32768 bs.const +scoreboard players operation #i bs.ctx *= 2 bs.const +scoreboard players add #i bs.ctx 1 +scoreboard players operation #j bs.ctx *= #j bs.ctx +scoreboard players operation #y bs.ctx -= #j bs.ctx +scoreboard players operation #y bs.ctx *= 32768 bs.const +scoreboard players operation #y bs.ctx /= #i bs.ctx +scoreboard players operation #x bs.ctx *= 32768 bs.const -scoreboard players operation #math.ldexp.e bs.data = #math.frexp.e bs.data -scoreboard players operation #math.frexp.e bs.data %= 2 bs.const -scoreboard players operation #math.ldexp.e bs.data += #math.frexp.e bs.data -scoreboard players operation #math.ldexp.e bs.data /= 2 bs.const -execute if score #math.frexp.e bs.data matches 0 store result storage bs:ctx x float .000000000931322574615478515625 run scoreboard players operation #math.sqrt.x bs.data += #math.sqrt.y bs.data -execute if score #math.frexp.e bs.data matches 1 store result storage bs:ctx x float .00000000065854450798271929168823261686546190196711592079736874438822269439697265625 run scoreboard players operation #math.sqrt.x bs.data += #math.sqrt.y bs.data +scoreboard players operation #t bs.ctx = #e bs.ctx +scoreboard players operation #t bs.ctx %= 2 bs.const +scoreboard players operation #e bs.ctx += #t bs.ctx +scoreboard players operation #e bs.ctx /= 2 bs.const +execute if score #t bs.ctx matches 0 store result storage bs:ctx x float .000000000931322574615478515625 run scoreboard players operation #x bs.ctx += #y bs.ctx +execute if score #t bs.ctx matches 1 store result storage bs:ctx x float .00000000065854450798271929168823261686546190196711592079736874438822269439697265625 run scoreboard players operation #x bs.ctx += #y bs.ctx function bs.math:ldexp/run data modify storage bs:out math.sqrt set from storage bs:ctx x diff --git a/datapacks/Bookshelf/data/bs.math/function/tan/run.mcfunction b/datapacks/Bookshelf/data/bs.math/function/tan/run.mcfunction index 6c61bfe805..c7df6d2064 100644 --- a/datapacks/Bookshelf/data/bs.math/function/tan/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/tan/run.mcfunction @@ -16,7 +16,7 @@ execute store result entity @s Rotation[0] float -0.01 run scoreboard players get $math.tan.x bs.in execute at @s positioned 0.0 0.0 0.0 rotated ~ 0.0 run tp @s ^ ^ ^10.0 execute store result score $math.tan bs.out run data get entity @s Pos[0] 100 -execute store result score #math.tan bs.data run data get entity @s Pos[2] 100 +execute store result score #t bs.ctx run data get entity @s Pos[2] 100 tp @s -30000000 0 1600 scoreboard players operation $math.tan bs.out *= 1000 bs.const -return run scoreboard players operation $math.tan bs.out /= #math.tan bs.data +return run scoreboard players operation $math.tan bs.out /= #t bs.ctx diff --git a/datapacks/Bookshelf/data/bs.math/function/tan/tan.mcfunction b/datapacks/Bookshelf/data/bs.math/function/tan/tan.mcfunction index f251940888..e482d27185 100644 --- a/datapacks/Bookshelf/data/bs.math/function/tan/tan.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/function/tan/tan.mcfunction @@ -15,4 +15,4 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/math.html#trigonometry # ------------------------------------------------------------------------------------------------------------ -return run execute as B5-0-0-0-1 run function bs.math:tan/run +return run execute in minecraft:overworld as B5-0-0-0-1 run function bs.math:tan/run diff --git a/datapacks/Bookshelf/data/bs.math/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.math/tags/function/exclusive_load.json new file mode 100644 index 0000000000..6a034e3b39 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.math/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.math:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.math/tags/function/load.json b/datapacks/Bookshelf/data/bs.math/tags/function/load.json index 9bd20a6182..8c72151852 100644 --- a/datapacks/Bookshelf/data/bs.math/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.math/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.math:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.math/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.math/test/__boot__.mcfunction index e23d2b79c0..0a54ea02d5 100644 --- a/datapacks/Bookshelf/data/bs.math/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.math -# @beforebatch function #bs.math:load +# @beforebatch function #bs.math:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.math/test/combine.mcfunction b/datapacks/Bookshelf/data/bs.math/test/combine.mcfunction index fcb991e9b4..ff819dcd0a 100644 --- a/datapacks/Bookshelf/data/bs.math/test/combine.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/combine.mcfunction @@ -10,3 +10,8 @@ scoreboard players set $math.combine.n bs.in 128 scoreboard players set $math.combine.k bs.in 3 function #bs.math:combine assert score $math.combine bs.out matches 341376 + +scoreboard players set $math.combine.n bs.in 42 +scoreboard players set $math.combine.k bs.in 9 +function #bs.math:combine +assert score $math.combine bs.out matches 445891810 diff --git a/datapacks/Bookshelf/data/bs.math/test/exp.mcfunction b/datapacks/Bookshelf/data/bs.math/test/exp.mcfunction index c7db911d59..7e7a461306 100644 --- a/datapacks/Bookshelf/data/bs.math/test/exp.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/exp.mcfunction @@ -3,10 +3,10 @@ data modify storage bs:in math.exp.x set value 3.0 function #bs.math:exp -execute store result score #result bs.data run data get storage bs:out math.exp 10000 -assert score #result bs.data matches 200854..200856 +execute store result score #r bs.ctx run data get storage bs:out math.exp 10000 +assert score #r bs.ctx matches 200854..200856 data modify storage bs:in math.exp.x set value 7.25 function #bs.math:exp -execute store result score #result bs.data run data get storage bs:out math.exp 10000 -assert score #result bs.data matches 14081047..14081049 +execute store result score #r bs.ctx run data get storage bs:out math.exp 10000 +assert score #r bs.ctx matches 14081047..14081049 diff --git a/datapacks/Bookshelf/data/bs.math/test/exp2.mcfunction b/datapacks/Bookshelf/data/bs.math/test/exp2.mcfunction index 82953b7cca..63d9f6187f 100644 --- a/datapacks/Bookshelf/data/bs.math/test/exp2.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/exp2.mcfunction @@ -3,10 +3,10 @@ data modify storage bs:in math.exp2.x set value 3.0 function #bs.math:exp2 -execute store result score #result bs.data run data get storage bs:out math.exp2 10000 -assert score #result bs.data matches 80000..80000 +execute store result score #r bs.ctx run data get storage bs:out math.exp2 10000 +assert score #r bs.ctx matches 80000..80000 data modify storage bs:in math.exp2.x set value 7.25 function #bs.math:exp2 -execute store result score #result bs.data run data get storage bs:out math.exp2 10000 -assert score #result bs.data matches 1522184..1522186 +execute store result score #r bs.ctx run data get storage bs:out math.exp2 10000 +assert score #r bs.ctx matches 1522184..1522186 diff --git a/datapacks/Bookshelf/data/bs.math/test/frexp.mcfunction b/datapacks/Bookshelf/data/bs.math/test/frexp.mcfunction index bd4e7e8de3..5f87f2761a 100644 --- a/datapacks/Bookshelf/data/bs.math/test/frexp.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/frexp.mcfunction @@ -3,14 +3,14 @@ data modify storage bs:in math.frexp.x set value 5.8 function #bs.math:frexp -execute store result score #e bs.data run data get storage bs:out math.frexp.e -execute store result score #x bs.data run data get storage bs:out math.frexp.x 1000 -assert score #e bs.data matches 3 -assert score #x bs.data matches 725 +execute store result score #e bs.ctx run data get storage bs:out math.frexp.e +execute store result score #x bs.ctx run data get storage bs:out math.frexp.x 1000 +assert score #e bs.ctx matches 3 +assert score #x bs.ctx matches 725 data modify storage bs:in math.frexp.x set value 18238123421.42 function #bs.math:frexp -execute store result score #e bs.data run data get storage bs:out math.frexp.e -execute store result score #x bs.data run data get storage bs:out math.frexp.x 100000000 -assert score #e bs.data matches 35 -assert score #x bs.data matches 53079924..53079926 +execute store result score #e bs.ctx run data get storage bs:out math.frexp.e +execute store result score #x bs.ctx run data get storage bs:out math.frexp.x 100000000 +assert score #e bs.ctx matches 35 +assert score #x bs.ctx matches 53079924..53079926 diff --git a/datapacks/Bookshelf/data/bs.math/test/ldexp.mcfunction b/datapacks/Bookshelf/data/bs.math/test/ldexp.mcfunction index 27dd164ece..86bdc2fbfc 100644 --- a/datapacks/Bookshelf/data/bs.math/test/ldexp.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/ldexp.mcfunction @@ -3,15 +3,15 @@ data modify storage bs:in math.ldexp set value {x:.652,e:-3} function #bs.math:ldexp -execute store result score #result bs.data run data get storage bs:out math.ldexp 10000 -assert score #result bs.data matches 814..816 +execute store result score #r bs.ctx run data get storage bs:out math.ldexp 10000 +assert score #r bs.ctx matches 814..816 data modify storage bs:in math.ldexp set value {x:-.725,e:3} function #bs.math:ldexp -execute store result score #result bs.data run data get storage bs:out math.ldexp -assert score #result bs.data matches -6 +execute store result score #r bs.ctx run data get storage bs:out math.ldexp +assert score #r bs.ctx matches -6 data modify storage bs:in math.ldexp set value {x:.85,e:11} function #bs.math:ldexp -execute store result score #result bs.data run data get storage bs:out math.ldexp 10000 -assert score #result bs.data matches 17407999..17408001 +execute store result score #r bs.ctx run data get storage bs:out math.ldexp 10000 +assert score #r bs.ctx matches 17407999..17408001 diff --git a/datapacks/Bookshelf/data/bs.math/test/log.mcfunction b/datapacks/Bookshelf/data/bs.math/test/log.mcfunction index 818a83322c..c604c90bc0 100644 --- a/datapacks/Bookshelf/data/bs.math/test/log.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/log.mcfunction @@ -3,15 +3,15 @@ data modify storage bs:in math.log.x set value 28.0 function #bs.math:log -execute store result score #result bs.data run data get storage bs:out math.log 100000 -assert score #result bs.data matches 333219..333221 +execute store result score #r bs.ctx run data get storage bs:out math.log 100000 +assert score #r bs.ctx matches 333219..333221 data modify storage bs:in math.log.x set value 123456789.0 function #bs.math:log -execute store result score #result bs.data run data get storage bs:out math.log 100000 -assert score #result bs.data matches 1863139..1863141 +execute store result score #r bs.ctx run data get storage bs:out math.log 100000 +assert score #r bs.ctx matches 1863139..1863141 data modify storage bs:in math.log.x set value 1234.4321 function #bs.math:log -execute store result score #result bs.data run data get storage bs:out math.log 100000 -assert score #result bs.data matches 711835..711837 +execute store result score #r bs.ctx run data get storage bs:out math.log 100000 +assert score #r bs.ctx matches 711835..711837 diff --git a/datapacks/Bookshelf/data/bs.math/test/log10.mcfunction b/datapacks/Bookshelf/data/bs.math/test/log10.mcfunction index 786d56a1b0..47619f0d7c 100644 --- a/datapacks/Bookshelf/data/bs.math/test/log10.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/log10.mcfunction @@ -3,15 +3,15 @@ data modify storage bs:in math.log10.x set value 28.0 function #bs.math:log10 -execute store result score #result bs.data run data get storage bs:out math.log10 100000 -assert score #result bs.data matches 144714..144716 +execute store result score #r bs.ctx run data get storage bs:out math.log10 100000 +assert score #r bs.ctx matches 144714..144716 data modify storage bs:in math.log10.x set value 123456789.0 function #bs.math:log10 -execute store result score #result bs.data run data get storage bs:out math.log10 100000 -assert score #result bs.data matches 809150..809152 +execute store result score #r bs.ctx run data get storage bs:out math.log10 100000 +assert score #r bs.ctx matches 809150..809152 data modify storage bs:in math.log10.x set value 1234.4321 function #bs.math:log10 -execute store result score #result bs.data run data get storage bs:out math.log10 100000 -assert score #result bs.data matches 309145..309147 +execute store result score #r bs.ctx run data get storage bs:out math.log10 100000 +assert score #r bs.ctx matches 309145..309147 diff --git a/datapacks/Bookshelf/data/bs.math/test/log2.mcfunction b/datapacks/Bookshelf/data/bs.math/test/log2.mcfunction index 5268406da4..bde8c5b3f7 100644 --- a/datapacks/Bookshelf/data/bs.math/test/log2.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/log2.mcfunction @@ -3,15 +3,15 @@ data modify storage bs:in math.log2.x set value 28.0 function #bs.math:log2 -execute store result score #result bs.data run data get storage bs:out math.log2 100000 -assert score #result bs.data matches 480734..480736 +execute store result score #r bs.ctx run data get storage bs:out math.log2 100000 +assert score #r bs.ctx matches 480734..480736 data modify storage bs:in math.log2.x set value 123456789.0 function #bs.math:log2 -execute store result score #result bs.data run data get storage bs:out math.log2 100000 -assert score #result bs.data matches 2687942..2687944 +execute store result score #r bs.ctx run data get storage bs:out math.log2 100000 +assert score #r bs.ctx matches 2687942..2687944 data modify storage bs:in math.log2.x set value 1234.4321 function #bs.math:log2 -execute store result score #result bs.data run data get storage bs:out math.log2 100000 -assert score #result bs.data matches 1026962..1026964 +execute store result score #r bs.ctx run data get storage bs:out math.log2 100000 +assert score #r bs.ctx matches 1026962..1026964 diff --git a/datapacks/Bookshelf/data/bs.math/test/loga.mcfunction b/datapacks/Bookshelf/data/bs.math/test/loga.mcfunction index 1790354d9c..c48a788a13 100644 --- a/datapacks/Bookshelf/data/bs.math/test/loga.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/loga.mcfunction @@ -3,15 +3,15 @@ data modify storage bs:in math.loga set value {x:28.0,a:5} function #bs.math:loga -execute store result score #result bs.data run data get storage bs:out math.loga 10000 -assert score #result bs.data matches 20703..20705 +execute store result score #r bs.ctx run data get storage bs:out math.loga 10000 +assert score #r bs.ctx matches 20703..20705 data modify storage bs:in math.loga set value {x:123456789.0,a:3} function #bs.math:loga -execute store result score #result bs.data run data get storage bs:out math.loga 10000 -assert score #result bs.data matches 169589..169591 +execute store result score #r bs.ctx run data get storage bs:out math.loga 10000 +assert score #r bs.ctx matches 169589..169591 data modify storage bs:in math.loga set value {x:1234.4321,a:9} function #bs.math:loga -execute store result score #result bs.data run data get storage bs:out math.loga 10000 -assert score #result bs.data matches 32396..32398 +execute store result score #r bs.ctx run data get storage bs:out math.loga 10000 +assert score #r bs.ctx matches 32396..32398 diff --git a/datapacks/Bookshelf/data/bs.math/test/pow.mcfunction b/datapacks/Bookshelf/data/bs.math/test/pow.mcfunction index f70f3e7c7f..9e56a2fa1f 100644 --- a/datapacks/Bookshelf/data/bs.math/test/pow.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/pow.mcfunction @@ -3,15 +3,15 @@ data modify storage bs:in math.pow set value {x:3.5,y:5} function #bs.math:pow -execute store result score #result bs.data run data get storage bs:out math.pow 1000 -assert score #result bs.data matches 525217..525219 +execute store result score #r bs.ctx run data get storage bs:out math.pow 1000 +assert score #r bs.ctx matches 525217..525219 data modify storage bs:in math.pow set value {x:18.125,y:2.5} function #bs.math:pow -execute store result score #result bs.data run data get storage bs:out math.pow 1000 -assert score #result bs.data matches 1398603..1398605 +execute store result score #r bs.ctx run data get storage bs:out math.pow 1000 +assert score #r bs.ctx matches 1398603..1398605 data modify storage bs:in math.pow set value {x:49,y:.5} function #bs.math:pow -execute store result score #result bs.data run data get storage bs:out math.pow 1000 -assert score #result bs.data matches 6999..7001 +execute store result score #r bs.ctx run data get storage bs:out math.pow 1000 +assert score #r bs.ctx matches 6999..7001 diff --git a/datapacks/Bookshelf/data/bs.math/test/sqrt.mcfunction b/datapacks/Bookshelf/data/bs.math/test/sqrt.mcfunction index ba8cdbe44c..92c87573ac 100644 --- a/datapacks/Bookshelf/data/bs.math/test/sqrt.mcfunction +++ b/datapacks/Bookshelf/data/bs.math/test/sqrt.mcfunction @@ -3,10 +3,10 @@ data modify storage bs:in math.sqrt.x set value 1234.56789 function #bs.math:sqrt -execute store result score #result bs.data run data get storage bs:out math.sqrt 100000 -assert score #result bs.data matches 3513640..3513642 +execute store result score #r bs.ctx run data get storage bs:out math.sqrt 100000 +assert score #r bs.ctx matches 3513640..3513642 data modify storage bs:in math.sqrt.x set value 98765.56789 function #bs.math:sqrt -execute store result score #result bs.data run data get storage bs:out math.sqrt 100000 -assert score #result bs.data matches 31426988..31426990 +execute store result score #r bs.ctx run data get storage bs:out math.sqrt 100000 +assert score #r bs.ctx matches 31426988..31426990 diff --git a/datapacks/Bookshelf/data/bs.move/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.move/function/__load__.mcfunction index 173f86eaa8..7bf84a311b 100644 --- a/datapacks/Bookshelf/data/bs.move/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/__load__.mcfunction @@ -16,7 +16,7 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] @@ -26,12 +26,13 @@ scoreboard objectives add bs.vel.x dummy [{"text":"BS ","color":"dark_gray"},{"t scoreboard objectives add bs.vel.y dummy [{"text":"BS ","color":"dark_gray"},{"text":"Velocity Y","color":"aqua"}] scoreboard objectives add bs.vel.z dummy [{"text":"BS ","color":"dark_gray"},{"text":"Velocity Z","color":"aqua"}] +scoreboard players set -10000000 bs.const -10000000 +scoreboard players set -10000 bs.const -10000 scoreboard players set -1000 bs.const -1000 scoreboard players set -2 bs.const -2 scoreboard players set -1 bs.const -1 scoreboard players set 2 bs.const 2 scoreboard players set 500 bs.const 500 scoreboard players set 1000 bs.const 1000 - -execute store result score #result bs.data run worldborder get -execute if score #result bs.data matches 2147484.. run worldborder set 2147483 0 +scoreboard players set 10000 bs.const 10000 +scoreboard players set 10000000 bs.const 10000000 diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/check/block/any.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/check/block/any.mcfunction index c179fec1ca..e3732f3200 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/check/block/any.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/check/block/any.mcfunction @@ -16,8 +16,8 @@ execute unless block ~ ~ ~ #bs.hitbox:is_composite run return run function bs.move:collision/check/block/cube function #bs.hitbox:get_block -execute store result score #move.ox bs.data run data get storage bs:out hitbox.offset.x 1000000 -execute store result score #move.oz bs.data run data get storage bs:out hitbox.offset.z 1000000 -scoreboard players operation #move.ox bs.data += #move.rx bs.data -scoreboard players operation #move.oz bs.data += #move.rz bs.data +execute store result score #move.ox bs.data run data get storage bs:out hitbox.offset.x 10000000 +execute store result score #move.oz bs.data run data get storage bs:out hitbox.offset.z 10000000 +scoreboard players operation #move.ox bs.data += #move.x bs.data +scoreboard players operation #move.oz bs.data += #move.z bs.data function bs.move:collision/check/block/shape diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/check/block/cube.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/check/block/cube.mcfunction index 3d81f40ede..3154ba4fb5 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/check/block/cube.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/check/block/cube.mcfunction @@ -14,41 +14,41 @@ # ------------------------------------------------------------------------------------------------------------ # get cube hitbox coordinates -execute store result score #move.max_x bs.data run scoreboard players operation #move.min_x bs.data = #move.rx bs.data -execute store result score #move.max_y bs.data run scoreboard players operation #move.min_y bs.data = #move.ry bs.data -execute store result score #move.max_z bs.data run scoreboard players operation #move.min_z bs.data = #move.rz bs.data -scoreboard players add #move.max_x bs.data 1000000 -scoreboard players add #move.max_y bs.data 1000000 -scoreboard players add #move.max_z bs.data 1000000 +execute store result score #i bs.ctx run scoreboard players operation #x bs.ctx = #move.x bs.data +execute store result score #j bs.ctx run scoreboard players operation #y bs.ctx = #move.y bs.data +execute store result score #k bs.ctx run scoreboard players operation #z bs.ctx = #move.z bs.data +scoreboard players add #i bs.ctx 10000000 +scoreboard players add #j bs.ctx 10000000 +scoreboard players add #k bs.ctx 10000000 # add the moving entity size to the hitbox -scoreboard players operation #move.min_x bs.data -= #move.w bs.data -scoreboard players operation #move.min_y bs.data -= #move.h bs.data -scoreboard players operation #move.min_z bs.data -= #move.w bs.data -scoreboard players operation #move.max_x bs.data += #move.w bs.data -scoreboard players operation #move.max_z bs.data += #move.w bs.data +scoreboard players operation #x bs.ctx -= #move.w bs.data +scoreboard players operation #y bs.ctx -= #move.h bs.data +scoreboard players operation #z bs.ctx -= #move.w bs.data +scoreboard players operation #i bs.ctx += #move.w bs.data +scoreboard players operation #k bs.ctx += #move.w bs.data # when step is negative, points are negative so we get the absolute value -scoreboard players operation #move.min_x bs.data /= #move.vx bs.data -scoreboard players operation #move.max_x bs.data /= #move.vx bs.data -scoreboard players operation #move.min_y bs.data /= #move.vy bs.data -scoreboard players operation #move.max_y bs.data /= #move.vy bs.data -scoreboard players operation #move.min_z bs.data /= #move.vz bs.data -scoreboard players operation #move.max_z bs.data /= #move.vz bs.data +scoreboard players operation #x bs.ctx /= #move.vx bs.data +scoreboard players operation #i bs.ctx /= #move.vx bs.data +scoreboard players operation #y bs.ctx /= #move.vy bs.data +scoreboard players operation #j bs.ctx /= #move.vy bs.data +scoreboard players operation #z bs.ctx /= #move.vz bs.data +scoreboard players operation #k bs.ctx /= #move.vz bs.data # when step is negative we need to reverse near and far points -execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #move.min_x bs.data >< #move.max_x bs.data -execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #move.min_y bs.data >< #move.max_y bs.data -execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #move.min_z bs.data >< #move.max_z bs.data +execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #x bs.ctx >< #i bs.ctx +execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #y bs.ctx >< #j bs.ctx +execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #z bs.ctx >< #k bs.ctx # compute near and far points for AABB collision -scoreboard players operation #move.min_x bs.data > #move.min_y bs.data -scoreboard players operation #move.min_x bs.data > #move.min_z bs.data -scoreboard players operation #move.max_x bs.data < #move.max_y bs.data -scoreboard players operation #move.max_x bs.data < #move.max_z bs.data +scoreboard players operation #x bs.ctx > #y bs.ctx +scoreboard players operation #x bs.ctx > #z bs.ctx +scoreboard players operation #i bs.ctx < #j bs.ctx +scoreboard players operation #i bs.ctx < #k bs.ctx # if min_x <= max_x, ray is intersecting with AABB, if max_x < 0, ray is intersecting AABB, but the whole AABB is behind -execute if score #move.max_x bs.data matches 0.. \ - if score #move.min_x bs.data <= #move.max_x bs.data \ - if score #move.ctime bs.data > #move.min_x bs.data \ +execute if score #i bs.ctx matches 0.. \ + if score #x bs.ctx <= #i bs.ctx \ + if score #move.ctime bs.data > #x bs.ctx \ run function bs.move:collision/collide diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/check/block/shape.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/check/block/shape.mcfunction index c183603f60..65ff5a989c 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/check/block/shape.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/check/block/shape.mcfunction @@ -14,52 +14,52 @@ # ------------------------------------------------------------------------------------------------------------ # get hitbox coordinates -execute store result score #move.min_x bs.data run data get storage bs:out hitbox.shape[-1][0] 62500 -execute store result score #move.min_y bs.data run data get storage bs:out hitbox.shape[-1][1] 62500 -execute store result score #move.min_z bs.data run data get storage bs:out hitbox.shape[-1][2] 62500 -execute store result score #move.max_x bs.data run data get storage bs:out hitbox.shape[-1][3] 62500 -execute store result score #move.max_y bs.data run data get storage bs:out hitbox.shape[-1][4] 62500 -execute store result score #move.max_z bs.data run data get storage bs:out hitbox.shape[-1][5] 62500 +execute store result score #x bs.ctx run data get storage bs:out hitbox.shape[-1][0] 625000 +execute store result score #y bs.ctx run data get storage bs:out hitbox.shape[-1][1] 625000 +execute store result score #z bs.ctx run data get storage bs:out hitbox.shape[-1][2] 625000 +execute store result score #i bs.ctx run data get storage bs:out hitbox.shape[-1][3] 625000 +execute store result score #j bs.ctx run data get storage bs:out hitbox.shape[-1][4] 625000 +execute store result score #k bs.ctx run data get storage bs:out hitbox.shape[-1][5] 625000 data remove storage bs:out hitbox.shape[-1] # add the relative coordinates to the hitbox -scoreboard players operation #move.min_x bs.data += #move.ox bs.data -scoreboard players operation #move.min_y bs.data += #move.ry bs.data -scoreboard players operation #move.min_z bs.data += #move.oz bs.data -scoreboard players operation #move.max_x bs.data += #move.ox bs.data -scoreboard players operation #move.max_y bs.data += #move.ry bs.data -scoreboard players operation #move.max_z bs.data += #move.oz bs.data +scoreboard players operation #x bs.ctx += #move.ox bs.data +scoreboard players operation #y bs.ctx += #move.y bs.data +scoreboard players operation #z bs.ctx += #move.oz bs.data +scoreboard players operation #i bs.ctx += #move.ox bs.data +scoreboard players operation #j bs.ctx += #move.y bs.data +scoreboard players operation #k bs.ctx += #move.oz bs.data # add the moving entity size to the hitbox -scoreboard players operation #move.min_x bs.data -= #move.w bs.data -scoreboard players operation #move.min_y bs.data -= #move.h bs.data -scoreboard players operation #move.min_z bs.data -= #move.w bs.data -scoreboard players operation #move.max_x bs.data += #move.w bs.data -scoreboard players operation #move.max_z bs.data += #move.w bs.data +scoreboard players operation #x bs.ctx -= #move.w bs.data +scoreboard players operation #y bs.ctx -= #move.h bs.data +scoreboard players operation #z bs.ctx -= #move.w bs.data +scoreboard players operation #i bs.ctx += #move.w bs.data +scoreboard players operation #k bs.ctx += #move.w bs.data # when step is negative, points are negative so we get the absolute value -scoreboard players operation #move.min_x bs.data /= #move.vx bs.data -scoreboard players operation #move.max_x bs.data /= #move.vx bs.data -scoreboard players operation #move.min_y bs.data /= #move.vy bs.data -scoreboard players operation #move.max_y bs.data /= #move.vy bs.data -scoreboard players operation #move.min_z bs.data /= #move.vz bs.data -scoreboard players operation #move.max_z bs.data /= #move.vz bs.data +scoreboard players operation #x bs.ctx /= #move.vx bs.data +scoreboard players operation #i bs.ctx /= #move.vx bs.data +scoreboard players operation #y bs.ctx /= #move.vy bs.data +scoreboard players operation #j bs.ctx /= #move.vy bs.data +scoreboard players operation #z bs.ctx /= #move.vz bs.data +scoreboard players operation #k bs.ctx /= #move.vz bs.data # when step is negative we need to reverse near and far points -execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #move.min_x bs.data >< #move.max_x bs.data -execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #move.min_y bs.data >< #move.max_y bs.data -execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #move.min_z bs.data >< #move.max_z bs.data +execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #x bs.ctx >< #i bs.ctx +execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #y bs.ctx >< #j bs.ctx +execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #z bs.ctx >< #k bs.ctx # compute near and far points for AABB collision -scoreboard players operation #move.min_x bs.data > #move.min_y bs.data -scoreboard players operation #move.min_x bs.data > #move.min_z bs.data -scoreboard players operation #move.max_x bs.data < #move.max_y bs.data -scoreboard players operation #move.max_x bs.data < #move.max_z bs.data +scoreboard players operation #x bs.ctx > #y bs.ctx +scoreboard players operation #x bs.ctx > #z bs.ctx +scoreboard players operation #i bs.ctx < #j bs.ctx +scoreboard players operation #i bs.ctx < #k bs.ctx # if min_x <= max_x, ray is intersecting with AABB, if max_x < 0, ray is intersecting AABB, but the whole AABB is behind -execute if score #move.max_x bs.data matches 0.. \ - if score #move.min_x bs.data <= #move.max_x bs.data \ - if score #move.ctime bs.data > #move.min_x bs.data \ +execute if score #i bs.ctx matches 0.. \ + if score #x bs.ctx <= #i bs.ctx \ + if score #move.ctime bs.data > #x bs.ctx \ run function bs.move:collision/collide execute if data storage bs:out hitbox.shape[0] run function bs.move:collision/check/block/shape diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/any.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/any.mcfunction index ea142a7bb8..9ae8e35dd2 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/any.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/any.mcfunction @@ -14,5 +14,5 @@ # ------------------------------------------------------------------------------------------------------------ function #bs.hitbox:get_entity -execute if entity @s[type=#bs.hitbox:is_shaped] run return run function bs.move:collision/check/entity/shape -function bs.move:collision/check/entity/size +execute if entity @s[type=!#bs.hitbox:is_shaped] run return run function bs.move:collision/check/entity/size +function bs.move:collision/check/entity/shape diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/shape.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/shape.mcfunction index a4e9b1e525..efe5da4be8 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/shape.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/shape.mcfunction @@ -14,52 +14,52 @@ # ------------------------------------------------------------------------------------------------------------ # get hitbox coordinates -execute store result score #move.min_x bs.data run data get storage bs:out hitbox.shape[-1][0] 62500 -execute store result score #move.min_y bs.data run data get storage bs:out hitbox.shape[-1][1] 62500 -execute store result score #move.min_z bs.data run data get storage bs:out hitbox.shape[-1][2] 62500 -execute store result score #move.max_x bs.data run data get storage bs:out hitbox.shape[-1][3] 62500 -execute store result score #move.max_y bs.data run data get storage bs:out hitbox.shape[-1][4] 62500 -execute store result score #move.max_z bs.data run data get storage bs:out hitbox.shape[-1][5] 62500 +execute store result score #x bs.ctx run data get storage bs:out hitbox.shape[-1][0] 625000 +execute store result score #y bs.ctx run data get storage bs:out hitbox.shape[-1][1] 625000 +execute store result score #z bs.ctx run data get storage bs:out hitbox.shape[-1][2] 625000 +execute store result score #i bs.ctx run data get storage bs:out hitbox.shape[-1][3] 625000 +execute store result score #j bs.ctx run data get storage bs:out hitbox.shape[-1][4] 625000 +execute store result score #k bs.ctx run data get storage bs:out hitbox.shape[-1][5] 625000 data remove storage bs:out hitbox.shape[-1] # add the relative coordinates to the hitbox -scoreboard players operation #move.min_x bs.data += #move.rx bs.data -scoreboard players operation #move.min_y bs.data += #move.ry bs.data -scoreboard players operation #move.min_z bs.data += #move.rz bs.data -scoreboard players operation #move.max_x bs.data += #move.rx bs.data -scoreboard players operation #move.max_y bs.data += #move.ry bs.data -scoreboard players operation #move.max_z bs.data += #move.rz bs.data +scoreboard players operation #x bs.ctx += #move.x bs.data +scoreboard players operation #y bs.ctx += #move.y bs.data +scoreboard players operation #z bs.ctx += #move.z bs.data +scoreboard players operation #i bs.ctx += #move.x bs.data +scoreboard players operation #j bs.ctx += #move.y bs.data +scoreboard players operation #k bs.ctx += #move.z bs.data # add the moving entity size to the hitbox -scoreboard players operation #move.min_x bs.data -= #move.w bs.data -scoreboard players operation #move.min_y bs.data -= #move.h bs.data -scoreboard players operation #move.min_z bs.data -= #move.w bs.data -scoreboard players operation #move.max_x bs.data += #move.w bs.data -scoreboard players operation #move.max_z bs.data += #move.w bs.data +scoreboard players operation #x bs.ctx -= #move.w bs.data +scoreboard players operation #y bs.ctx -= #move.h bs.data +scoreboard players operation #z bs.ctx -= #move.w bs.data +scoreboard players operation #i bs.ctx += #move.w bs.data +scoreboard players operation #k bs.ctx += #move.w bs.data # when step is negative, points are negative so we get the absolute value -scoreboard players operation #move.min_x bs.data /= #move.vx bs.data -scoreboard players operation #move.max_x bs.data /= #move.vx bs.data -scoreboard players operation #move.min_y bs.data /= #move.vy bs.data -scoreboard players operation #move.max_y bs.data /= #move.vy bs.data -scoreboard players operation #move.min_z bs.data /= #move.vz bs.data -scoreboard players operation #move.max_z bs.data /= #move.vz bs.data +scoreboard players operation #x bs.ctx /= #move.vx bs.data +scoreboard players operation #i bs.ctx /= #move.vx bs.data +scoreboard players operation #y bs.ctx /= #move.vy bs.data +scoreboard players operation #j bs.ctx /= #move.vy bs.data +scoreboard players operation #z bs.ctx /= #move.vz bs.data +scoreboard players operation #k bs.ctx /= #move.vz bs.data # when step is negative we need to reverse near and far points -execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #move.min_x bs.data >< #move.max_x bs.data -execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #move.min_y bs.data >< #move.max_y bs.data -execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #move.min_z bs.data >< #move.max_z bs.data +execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #x bs.ctx >< #i bs.ctx +execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #y bs.ctx >< #j bs.ctx +execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #z bs.ctx >< #k bs.ctx # compute near and far points for AABB collision -scoreboard players operation #move.min_x bs.data > #move.min_y bs.data -scoreboard players operation #move.min_x bs.data > #move.min_z bs.data -scoreboard players operation #move.max_x bs.data < #move.max_y bs.data -scoreboard players operation #move.max_x bs.data < #move.max_z bs.data +scoreboard players operation #x bs.ctx > #y bs.ctx +scoreboard players operation #x bs.ctx > #z bs.ctx +scoreboard players operation #i bs.ctx < #j bs.ctx +scoreboard players operation #i bs.ctx < #k bs.ctx # if min_x <= max_x, ray is intersecting with AABB, if max_x < 0, ray is intersecting AABB, but the whole AABB is behind -execute if score #move.max_x bs.data matches 0.. \ - if score #move.min_x bs.data <= #move.max_x bs.data \ - if score #move.ctime bs.data > #move.min_x bs.data \ +execute if score #i bs.ctx matches 0.. \ + if score #x bs.ctx <= #i bs.ctx \ + if score #move.ctime bs.data > #x bs.ctx \ run function bs.move:collision/collide execute if data storage bs:out hitbox.shape[0] run function bs.move:collision/check/entity/shape diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/size.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/size.mcfunction index 696140ed70..5718222b9c 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/size.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/check/entity/size.mcfunction @@ -13,54 +13,52 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -tag @s add bs.raycast.omit +tag @s add bs.move.omit # get the entity relative coordinates -execute store result score #move.min_x bs.data run data get entity @s Pos[0] 1000 -execute store result score #move.min_y bs.data run data get entity @s Pos[1] 1000 -execute store result score #move.min_z bs.data run data get entity @s Pos[2] 1000 -scoreboard players operation #move.min_x bs.data -= #move.x bs.data -scoreboard players operation #move.min_y bs.data -= #move.y bs.data -scoreboard players operation #move.min_z bs.data -= #move.z bs.data -execute store result score #move.max_x bs.data run scoreboard players operation #move.min_x bs.data *= 1000 bs.const -execute store result score #move.max_y bs.data run scoreboard players operation #move.min_y bs.data *= 1000 bs.const -execute store result score #move.max_z bs.data run scoreboard players operation #move.min_z bs.data *= 1000 bs.const +execute in minecraft:overworld positioned as @s as B5-0-0-0-1 run function bs.move:collision/utils/get_relative_entity_pos with storage bs:data move +execute store result score #x bs.ctx run data get storage bs:ctx _[0] 10000000 +execute store result score #y bs.ctx run data get storage bs:ctx _[1] 10000000 +execute store result score #z bs.ctx run data get storage bs:ctx _[2] 10000000 +execute store result score #i bs.ctx run scoreboard players operation #x bs.ctx += #move.sx bs.data +execute store result score #j bs.ctx run scoreboard players operation #y bs.ctx += #move.sy bs.data +execute store result score #k bs.ctx run scoreboard players operation #z bs.ctx += #move.sz bs.data # compute the hitbox using the sizes of the collided entity and the moving entity -execute store result score #move.eh bs.data run data get storage bs:out hitbox.height 1000 -execute store result score #move.ew bs.data run data get storage bs:out hitbox.width 500 -execute store result score #move.es bs.data run data get storage bs:out hitbox.scale 1000 -scoreboard players operation #move.eh bs.data *= #move.es bs.data -scoreboard players operation #move.ew bs.data *= #move.es bs.data -scoreboard players operation #move.ew bs.data += #move.w bs.data -scoreboard players operation #move.min_x bs.data -= #move.ew bs.data -scoreboard players operation #move.min_y bs.data -= #move.h bs.data -scoreboard players operation #move.min_z bs.data -= #move.ew bs.data -scoreboard players operation #move.max_x bs.data += #move.ew bs.data -scoreboard players operation #move.max_y bs.data += #move.eh bs.data -scoreboard players operation #move.max_z bs.data += #move.ew bs.data +execute store result score #h bs.ctx run data get storage bs:out hitbox.height 10000 +execute store result score #w bs.ctx run data get storage bs:out hitbox.width 5000 +execute store result score #s bs.ctx run data get storage bs:out hitbox.scale 1000 +scoreboard players operation #h bs.ctx *= #s bs.ctx +scoreboard players operation #w bs.ctx *= #s bs.ctx +scoreboard players operation #w bs.ctx += #move.w bs.data +scoreboard players operation #x bs.ctx -= #w bs.ctx +scoreboard players operation #y bs.ctx -= #move.h bs.data +scoreboard players operation #z bs.ctx -= #w bs.ctx +scoreboard players operation #i bs.ctx += #w bs.ctx +scoreboard players operation #j bs.ctx += #h bs.ctx +scoreboard players operation #k bs.ctx += #w bs.ctx # when step is negative, points are negative so we get the absolute value -scoreboard players operation #move.min_x bs.data /= #move.vx bs.data -scoreboard players operation #move.max_x bs.data /= #move.vx bs.data -scoreboard players operation #move.min_y bs.data /= #move.vy bs.data -scoreboard players operation #move.max_y bs.data /= #move.vy bs.data -scoreboard players operation #move.min_z bs.data /= #move.vz bs.data -scoreboard players operation #move.max_z bs.data /= #move.vz bs.data +scoreboard players operation #x bs.ctx /= #move.vx bs.data +scoreboard players operation #i bs.ctx /= #move.vx bs.data +scoreboard players operation #y bs.ctx /= #move.vy bs.data +scoreboard players operation #j bs.ctx /= #move.vy bs.data +scoreboard players operation #z bs.ctx /= #move.vz bs.data +scoreboard players operation #k bs.ctx /= #move.vz bs.data # when step is negative we need to reverse near and far points -execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #move.min_x bs.data >< #move.max_x bs.data -execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #move.min_y bs.data >< #move.max_y bs.data -execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #move.min_z bs.data >< #move.max_z bs.data +execute if score #move.vx bs.data matches ..-1 run scoreboard players operation #x bs.ctx >< #i bs.ctx +execute if score #move.vy bs.data matches ..-1 run scoreboard players operation #y bs.ctx >< #j bs.ctx +execute if score #move.vz bs.data matches ..-1 run scoreboard players operation #z bs.ctx >< #k bs.ctx # compute near and far points for AABB collision -scoreboard players operation #move.min_x bs.data > #move.min_y bs.data -scoreboard players operation #move.min_x bs.data > #move.min_z bs.data -scoreboard players operation #move.max_x bs.data < #move.max_y bs.data -scoreboard players operation #move.max_x bs.data < #move.max_z bs.data +scoreboard players operation #x bs.ctx > #y bs.ctx +scoreboard players operation #x bs.ctx > #z bs.ctx +scoreboard players operation #i bs.ctx < #j bs.ctx +scoreboard players operation #i bs.ctx < #k bs.ctx # if min_x <= max_x, ray is intersecting with AABB, if max_x < 0, ray is intersecting AABB, but the whole AABB is behind -execute if score #move.max_x bs.data matches 0.. \ - if score #move.min_x bs.data <= #move.max_x bs.data \ - if score #move.ctime bs.data > #move.min_x bs.data \ +execute if score #i bs.ctx matches 0.. \ + if score #x bs.ctx <= #i bs.ctx \ + if score #move.ctime bs.data > #x bs.ctx \ run function bs.move:collision/collide diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/collide.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/collide.mcfunction index 8ceddaab5d..86c00e46c9 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/collide.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/collide.mcfunction @@ -14,10 +14,10 @@ # ------------------------------------------------------------------------------------------------------------ # get the travelled distance and the surface that was hit -scoreboard players operation #move.ctime bs.data = #move.min_x bs.data +scoreboard players operation #move.ctime bs.data = #x bs.ctx execute if score #move.vx bs.data matches ..-1 run scoreboard players set $move.hit_face bs.data 5 execute if score #move.vx bs.data matches 0.. run scoreboard players set $move.hit_face bs.data 4 -execute if score #move.ctime bs.data = #move.min_z bs.data if score #move.vz bs.data matches ..-1 run scoreboard players set $move.hit_face bs.data 3 -execute if score #move.ctime bs.data = #move.min_z bs.data if score #move.vz bs.data matches 0.. run scoreboard players set $move.hit_face bs.data 2 -execute if score #move.ctime bs.data = #move.min_y bs.data if score #move.vy bs.data matches ..-1 run scoreboard players set $move.hit_face bs.data 1 -execute if score #move.ctime bs.data = #move.min_y bs.data if score #move.vy bs.data matches 0.. run scoreboard players set $move.hit_face bs.data 0 +execute if score #move.ctime bs.data = #z bs.ctx if score #move.vz bs.data matches ..-1 run scoreboard players set $move.hit_face bs.data 3 +execute if score #move.ctime bs.data = #z bs.ctx if score #move.vz bs.data matches 0.. run scoreboard players set $move.hit_face bs.data 2 +execute if score #move.ctime bs.data = #y bs.ctx if score #move.vy bs.data matches ..-1 run scoreboard players set $move.hit_face bs.data 1 +execute if score #move.ctime bs.data = #y bs.ctx if score #move.vy bs.data matches 0.. run scoreboard players set $move.hit_face bs.data 0 diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/handle.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/handle.mcfunction index 4c4a48636a..6e2381dffa 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/handle.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/handle.mcfunction @@ -14,45 +14,44 @@ # ------------------------------------------------------------------------------------------------------------ # get starting position and velocity vector -tp B5-0-0-0-1 ~ ~ ~ -execute store result score #move.x1 bs.data store result score #move.x bs.data run data get entity B5-0-0-0-1 Pos[0] 1000 -execute store result score #move.y1 bs.data store result score #move.y bs.data run data get entity B5-0-0-0-1 Pos[1] 1000 -execute store result score #move.z1 bs.data store result score #move.z bs.data run data get entity B5-0-0-0-1 Pos[2] 1000 -execute store result score #move.x2 bs.data run data get entity @s Pos[0] 1000 -execute store result score #move.y2 bs.data run data get entity @s Pos[1] 1000 -execute store result score #move.z2 bs.data run data get entity @s Pos[2] 1000 -execute store result score #move.vx bs.data run scoreboard players operation #move.x2 bs.data -= #move.x bs.data -execute store result score #move.vy bs.data run scoreboard players operation #move.y2 bs.data -= #move.y bs.data -execute store result score #move.vz bs.data run scoreboard players operation #move.z2 bs.data -= #move.z bs.data +data modify storage bs:ctx _ set from entity @s Pos +execute store result score #move.y bs.data run data get storage bs:ctx _[1] 10000 +execute store result storage bs:data move.x int -1 run data get storage bs:ctx _[0] +execute store result storage bs:data move.y int -1 run data get storage bs:ctx _[1] +execute store result storage bs:data move.z int -1 run data get storage bs:ctx _[2] +execute summon minecraft:marker run function bs.move:collision/utils/get_relative_pos with storage bs:data move +execute store result score #move.vx bs.data store result score #move.rx bs.data store result score #move.sx bs.data run data get storage bs:ctx _[0] -10000000 +execute store result score #move.vy bs.data store result score #move.ry bs.data store result score #move.sy bs.data run data get storage bs:ctx _[1] -10000000 +execute store result score #move.vz bs.data store result score #move.rz bs.data store result score #move.sz bs.data run data get storage bs:ctx _[2] -10000000 +execute in minecraft:overworld positioned as @s as B5-0-0-0-1 run function bs.move:collision/utils/get_relative_entity_pos with storage bs:data move +execute store result score #move.nx bs.data run data get storage bs:ctx _[0] -10000000 +execute store result score #move.ny bs.data run data get storage bs:ctx _[1] -10000000 +execute store result score #move.nz bs.data run data get storage bs:ctx _[2] -10000000 +execute store result score #move.nx bs.data run scoreboard players operation #move.vx bs.data -= #move.nx bs.data +execute store result score #move.ny bs.data run scoreboard players operation #move.vy bs.data -= #move.ny bs.data +execute store result score #move.nz bs.data run scoreboard players operation #move.vz bs.data -= #move.nz bs.data +scoreboard players operation #move.rx bs.data %= -10000000 bs.const +scoreboard players operation #move.ry bs.data %= -10000000 bs.const +scoreboard players operation #move.rz bs.data %= -10000000 bs.const +scoreboard players operation #move.vx bs.data /= 10000 bs.const +scoreboard players operation #move.vy bs.data /= 10000 bs.const +scoreboard players operation #move.vz bs.data /= 10000 bs.const -# get width and height +# compute a bounding box that encompasses all passengers +tag @e[tag=bs.move.omit] remove bs.move.omit scoreboard players set #move.h bs.data 0 scoreboard players set #move.w bs.data 0 -function bs.move:collision/hitbox -scoreboard players operation #move.sh bs.data /= 1000 bs.const -scoreboard players operation #move.sw bs.data /= 1000 bs.const +function bs.move:collision/utils/get_bounding_box # check for collisions and resolve them -tag @s add bs.move.omit -execute on passengers run tag @s add bs.move.omit -scoreboard players set #move.ctime bs.data 1000 -execute if score #move.vx bs.data matches 0.. run function bs.move:collision/recurse/init/x_pos -execute if score #move.vy bs.data matches 0.. run function bs.move:collision/recurse/init/y_pos -execute if score #move.vz bs.data matches 0.. run function bs.move:collision/recurse/init/z_pos -execute if score #move.vx bs.data matches ..-1 run function bs.move:collision/recurse/init/x_neg -execute if score #move.vy bs.data matches ..-1 run function bs.move:collision/recurse/init/y_neg -execute if score #move.vz bs.data matches ..-1 run function bs.move:collision/recurse/init/z_neg -scoreboard players operation #move.x2 bs.data *= 1000 bs.const -scoreboard players operation #move.y2 bs.data *= 1000 bs.const -scoreboard players operation #move.z2 bs.data *= 1000 bs.const -execute store result score #move.rx bs.data run scoreboard players operation #move.x1 bs.data *= 1000 bs.const -execute store result score #move.ry bs.data run scoreboard players operation #move.y1 bs.data *= 1000 bs.const -execute store result score #move.rz bs.data run scoreboard players operation #move.z1 bs.data *= 1000 bs.const +scoreboard players set #move.ctime bs.data 10000 +data modify storage bs:data move merge value {sx:"xp",sy:"yp",sz:"zp"} +execute if score #move.vx bs.data matches ..-1 run data modify storage bs:data move.sx set value "xn" +execute if score #move.vy bs.data matches ..-1 run data modify storage bs:data move.sy set value "yn" +execute if score #move.vz bs.data matches ..-1 run data modify storage bs:data move.sz set value "zn" execute store result score #move.b bs.data unless data storage bs:data move{blocks:0b} execute store result score #move.e bs.data unless data storage bs:data move{entities:0b} execute if score #move.e bs.data matches 1 if data storage bs:data move{entities:1b} run data modify storage bs:data move.entities set value "!bs.move.omit" -execute if score #move.vx bs.data matches 0.. at B5-0-0-0-1 align xyz run function bs.move:collision/recurse/x_pos -execute if score #move.vx bs.data matches ..-1 at B5-0-0-0-1 align xyz run function bs.move:collision/recurse/x_neg -tag @e[tag=bs.move.omit] remove bs.move.omit -$execute if score #move.ctime bs.data matches 0..999 run function bs.move:collision/resolution/resolve {type:$(type)} -execute in minecraft:overworld run tp B5-0-0-0-1 -30000000 0 1600 +execute run function bs.move:collision/recurse/setup/init with storage bs:data move +execute if score #move.ctime bs.data matches ..-1 run scoreboard players set #move.ctime bs.data 0 +$execute if score #move.ctime bs.data matches 0..9999 run function bs.move:collision/resolvers/any {resolver:$(resolver)} diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_neg.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_neg.mcfunction deleted file mode 100644 index 14d463e442..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_neg.mcfunction +++ /dev/null @@ -1,22 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -execute store result entity B5-0-0-0-1 Pos[0] double .001 run scoreboard players operation #move.x1 bs.data += #move.sw bs.data -execute as B5-0-0-0-1 at @s run tp @s ~-.000000001 ~ ~ -execute store result score #move.x1 bs.data run data get entity B5-0-0-0-1 Pos[0] -scoreboard players operation #move.x1 bs.data *= 1000 bs.const -scoreboard players operation #move.x1 bs.data -= #move.x bs.data -scoreboard players operation #move.x2 bs.data -= #move.sw bs.data -scoreboard players remove #move.x2 bs.data 1000 diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_pos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_pos.mcfunction deleted file mode 100644 index 7247a82ee0..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/x_pos.mcfunction +++ /dev/null @@ -1,20 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -execute store result entity B5-0-0-0-1 Pos[0] double .001 run scoreboard players operation #move.x1 bs.data -= #move.sw bs.data -scoreboard players operation #move.x1 bs.data /= 1000 bs.const -scoreboard players operation #move.x1 bs.data *= 1000 bs.const -scoreboard players operation #move.x1 bs.data -= #move.x bs.data -scoreboard players operation #move.x2 bs.data += #move.sw bs.data diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/z_neg.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/z_neg.mcfunction deleted file mode 100644 index 2da3e05955..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/z_neg.mcfunction +++ /dev/null @@ -1,22 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -execute store result entity B5-0-0-0-1 Pos[2] double .001 run scoreboard players operation #move.z1 bs.data += #move.sw bs.data -execute as B5-0-0-0-1 at @s run tp @s ~ ~ ~-.000000001 -execute store result score #move.z1 bs.data run data get entity B5-0-0-0-1 Pos[2] -scoreboard players operation #move.z1 bs.data *= 1000 bs.const -scoreboard players operation #move.z1 bs.data -= #move.z bs.data -scoreboard players operation #move.z2 bs.data -= #move.sw bs.data -scoreboard players remove #move.z2 bs.data 1000 diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/as_command.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/init.mcfunction similarity index 82% rename from datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/as_command.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/init.mcfunction index bd06f743a2..1ad119a856 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/format/as_command.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/init.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$data modify storage bs:data schedule.entry.command set value 'execute as $(entity) in $(dimension) positioned $(x) $(y) $(z) rotated $(h) $(v) run $(command)' +$function bs.move:collision/recurse/setup/$(sx) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xn.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xn.mcfunction new file mode 100644 index 0000000000..326f83741d --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xn.mcfunction @@ -0,0 +1,19 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.nx bs.data -= #move.w bs.data +scoreboard players remove #move.nx bs.data 10000000 + +$execute positioned ~-.00000001 ~ ~ run function bs.move:collision/recurse/setup/$(sy) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xp.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xp.mcfunction new file mode 100644 index 0000000000..7979e7229c --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/xp.mcfunction @@ -0,0 +1,18 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.nx bs.data += #move.w bs.data + +$function bs.move:collision/recurse/setup/$(sy) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yn.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yn.mcfunction new file mode 100644 index 0000000000..3cd37b89ea --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yn.mcfunction @@ -0,0 +1,18 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players remove #move.ny bs.data 10000000 + +$function bs.move:collision/recurse/setup/$(sz) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yp.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yp.mcfunction new file mode 100644 index 0000000000..b26d8fade2 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/yp.mcfunction @@ -0,0 +1,18 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.ny bs.data += #move.h bs.data + +$function bs.move:collision/recurse/setup/$(sz) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/y_pos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/zn.mcfunction similarity index 71% rename from datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/y_pos.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/zn.mcfunction index 45647995d2..221a2413dd 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/init/y_pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/zn.mcfunction @@ -13,7 +13,8 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -scoreboard players operation #move.y1 bs.data /= 1000 bs.const -scoreboard players operation #move.y1 bs.data *= 1000 bs.const -scoreboard players operation #move.y1 bs.data -= #move.y bs.data -scoreboard players operation #move.y2 bs.data += #move.sh bs.data +scoreboard players operation #move.nz bs.data -= #move.w bs.data +scoreboard players remove #move.nz bs.data 10000000 + +scoreboard players operation #move.x bs.data = #move.rx bs.data +$execute positioned ~ ~ ~-.00000001 align xyz run function bs.move:collision/recurse/$(sx) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/zp.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/zp.mcfunction new file mode 100644 index 0000000000..9cccae45cd --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/setup/zp.mcfunction @@ -0,0 +1,19 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.nz bs.data += #move.w bs.data + +scoreboard players operation #move.x bs.data = #move.rx bs.data +$execute align xyz run function bs.move:collision/recurse/$(sx) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_neg.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_neg.mcfunction deleted file mode 100644 index 852cee473a..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_neg.mcfunction +++ /dev/null @@ -1,21 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -scoreboard players operation #move.ry bs.data = #move.y1 bs.data -execute if score #move.vy bs.data matches 0.. run function bs.move:collision/recurse/y_pos -execute if score #move.vy bs.data matches ..-1 run function bs.move:collision/recurse/y_neg - -scoreboard players remove #move.rx bs.data 1000000 -execute if score #move.rx bs.data > #move.x2 bs.data positioned ~-1 ~ ~ run function bs.move:collision/recurse/x_neg diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_pos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_pos.mcfunction deleted file mode 100644 index be05602217..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/x_pos.mcfunction +++ /dev/null @@ -1,21 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -scoreboard players operation #move.ry bs.data = #move.y1 bs.data -execute if score #move.vy bs.data matches 0.. run function bs.move:collision/recurse/y_pos -execute if score #move.vy bs.data matches ..-1 run function bs.move:collision/recurse/y_neg - -scoreboard players add #move.rx bs.data 1000000 -execute if score #move.rx bs.data < #move.x2 bs.data positioned ~1 ~ ~ run function bs.move:collision/recurse/x_pos diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/xn.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/xn.mcfunction new file mode 100644 index 0000000000..aefd13ef62 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/xn.mcfunction @@ -0,0 +1,20 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.y bs.data = #move.ry bs.data +$function bs.move:collision/recurse/$(sy) with storage bs:data move + +scoreboard players remove #move.x bs.data 10000000 +execute if score #move.x bs.data >= #move.nx bs.data positioned ~-1 ~ ~ run function bs.move:collision/recurse/xn with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/xp.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/xp.mcfunction new file mode 100644 index 0000000000..cdaafbbfce --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/xp.mcfunction @@ -0,0 +1,20 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.y bs.data = #move.ry bs.data +$function bs.move:collision/recurse/$(sy) with storage bs:data move + +scoreboard players add #move.x bs.data 10000000 +execute if score #move.x bs.data <= #move.nx bs.data positioned ~1 ~ ~ run function bs.move:collision/recurse/xp with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_neg.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_neg.mcfunction deleted file mode 100644 index ba69a2580a..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_neg.mcfunction +++ /dev/null @@ -1,21 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -scoreboard players operation #move.rz bs.data = #move.z1 bs.data -execute if score #move.vz bs.data matches 0.. run function bs.move:collision/recurse/z_pos with storage bs:data move -execute if score #move.vz bs.data matches ..-1 run function bs.move:collision/recurse/z_neg with storage bs:data move - -scoreboard players remove #move.ry bs.data 1000000 -execute if score #move.ry bs.data > #move.y2 bs.data positioned ~ ~-1 ~ run function bs.move:collision/recurse/y_neg diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_pos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_pos.mcfunction deleted file mode 100644 index bdc0e729fb..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/y_pos.mcfunction +++ /dev/null @@ -1,21 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -scoreboard players operation #move.rz bs.data = #move.z1 bs.data -execute if score #move.vz bs.data matches 0.. run function bs.move:collision/recurse/z_pos with storage bs:data move -execute if score #move.vz bs.data matches ..-1 run function bs.move:collision/recurse/z_neg with storage bs:data move - -scoreboard players add #move.ry bs.data 1000000 -execute if score #move.ry bs.data < #move.y2 bs.data positioned ~ ~1 ~ run function bs.move:collision/recurse/y_pos diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/yn.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/yn.mcfunction new file mode 100644 index 0000000000..c5e4433d62 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/yn.mcfunction @@ -0,0 +1,20 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.z bs.data = #move.rz bs.data +$function bs.move:collision/recurse/$(sz) with storage bs:data move + +scoreboard players remove #move.y bs.data 10000000 +execute if score #move.y bs.data >= #move.ny bs.data positioned ~ ~-1 ~ run function bs.move:collision/recurse/yn with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/yp.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/yp.mcfunction new file mode 100644 index 0000000000..a1c6970072 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/yp.mcfunction @@ -0,0 +1,20 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.z bs.data = #move.rz bs.data +$function bs.move:collision/recurse/$(sz) with storage bs:data move + +scoreboard players add #move.y bs.data 10000000 +execute if score #move.y bs.data <= #move.ny bs.data positioned ~ ~1 ~ run function bs.move:collision/recurse/yp with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/z_neg.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/zn.mcfunction similarity index 84% rename from datapacks/Bookshelf/data/bs.move/function/collision/recurse/z_neg.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/recurse/zn.mcfunction index 7c5c3ed7af..260a9587f3 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/z_neg.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/zn.mcfunction @@ -16,5 +16,5 @@ $execute if score #move.b bs.data matches 1 unless block ~ ~ ~ $(ignored_blocks) run function bs.move:collision/check/block/any $execute if score #move.e bs.data matches 1 as @e[type=!$(ignored_entities),tag=$(entities),tag=!bs.move.omit,dx=0] run function bs.move:collision/check/entity/any -scoreboard players remove #move.rz bs.data 1000000 -execute if score #move.rz bs.data > #move.z2 bs.data positioned ~ ~ ~-1 run function bs.move:collision/recurse/z_neg with storage bs:data move +scoreboard players remove #move.z bs.data 10000000 +execute if score #move.z bs.data >= #move.nz bs.data positioned ~ ~ ~-1 run function bs.move:collision/recurse/zn with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/z_pos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/zp.mcfunction similarity index 84% rename from datapacks/Bookshelf/data/bs.move/function/collision/recurse/z_pos.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/recurse/zp.mcfunction index c06da19384..f8dcc81272 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/recurse/z_pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/recurse/zp.mcfunction @@ -16,5 +16,5 @@ $execute if score #move.b bs.data matches 1 unless block ~ ~ ~ $(ignored_blocks) run function bs.move:collision/check/block/any $execute if score #move.e bs.data matches 1 as @e[type=!$(ignored_entities),tag=$(entities),tag=!bs.move.omit,dx=0] run function bs.move:collision/check/entity/any -scoreboard players add #move.rz bs.data 1000000 -execute if score #move.rz bs.data < #move.z2 bs.data positioned ~ ~ ~1 run function bs.move:collision/recurse/z_pos with storage bs:data move +scoreboard players add #move.z bs.data 10000000 +execute if score #move.z bs.data <= #move.nz bs.data positioned ~ ~ ~1 run function bs.move:collision/recurse/zp with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/resolve.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolution/resolve.mcfunction deleted file mode 100644 index 43918cf7bb..0000000000 --- a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/resolve.mcfunction +++ /dev/null @@ -1,42 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -# compute the collision point and remaining velocity -scoreboard players operation $move.vel_remaining.x bs.data = #move.vx bs.data -scoreboard players operation $move.vel_remaining.y bs.data = #move.vy bs.data -scoreboard players operation $move.vel_remaining.z bs.data = #move.vz bs.data -scoreboard players operation $move.vel_remaining.x bs.data *= #move.ctime bs.data -scoreboard players operation $move.vel_remaining.y bs.data *= #move.ctime bs.data -scoreboard players operation $move.vel_remaining.z bs.data *= #move.ctime bs.data -scoreboard players operation $move.vel_remaining.x bs.data /= -1000 bs.const -scoreboard players operation $move.vel_remaining.y bs.data /= -1000 bs.const -scoreboard players operation $move.vel_remaining.z bs.data /= -1000 bs.const - -# move the entity out of the collision -execute if score $move.hit_face bs.data matches 5 run scoreboard players add #move.x bs.data 1 -execute if score $move.hit_face bs.data matches 4 run scoreboard players remove #move.x bs.data 1 -execute if score $move.hit_face bs.data matches 3 run scoreboard players add #move.z bs.data 1 -execute if score $move.hit_face bs.data matches 2 run scoreboard players remove #move.z bs.data 1 -execute if score $move.hit_face bs.data matches 1 run scoreboard players add #move.y bs.data 1 -execute if score $move.hit_face bs.data matches 0 run scoreboard players remove #move.y bs.data 1 -execute store result storage bs:ctx x double .001 run scoreboard players operation #move.x bs.data -= $move.vel_remaining.x bs.data -execute store result storage bs:ctx y double .001 run scoreboard players operation #move.y bs.data -= $move.vel_remaining.y bs.data -execute store result storage bs:ctx z double .001 run scoreboard players operation #move.z bs.data -= $move.vel_remaining.z bs.data -function bs.move:collision/resolution/teleport with storage bs:ctx -scoreboard players operation $move.vel_remaining.x bs.data += #move.vx bs.data -scoreboard players operation $move.vel_remaining.y bs.data += #move.vy bs.data -scoreboard players operation $move.vel_remaining.z bs.data += #move.vz bs.data - -$function bs.move:collision/resolution/callback/$(type) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/any.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/any.mcfunction new file mode 100644 index 0000000000..6a7c6627fb --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/any.mcfunction @@ -0,0 +1,22 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +scoreboard players operation #move.ctime bs.data *= -1 bs.const +scoreboard players add #move.ctime bs.data 9999 +execute store result storage bs:ctx x double -.0000001 store result score $move.vel_remaining.x bs.data run scoreboard players operation #move.vx bs.data *= #move.ctime bs.data +execute store result storage bs:ctx y double -.0000001 store result score $move.vel_remaining.y bs.data run scoreboard players operation #move.vy bs.data *= #move.ctime bs.data +execute store result storage bs:ctx z double -.0000001 store result score $move.vel_remaining.z bs.data run scoreboard players operation #move.vz bs.data *= #move.ctime bs.data +execute at @s run function bs.move:collision/utils/tp_relative with storage bs:ctx +$function bs.move:collision/resolvers/$(resolver) with storage bs:data move diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/bounce.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/bounce.mcfunction similarity index 100% rename from datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/bounce.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/bounce.mcfunction diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/damped_bounce.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/damped_bounce.mcfunction similarity index 100% rename from datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/damped_bounce.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/damped_bounce.mcfunction diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/slide.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/slide.mcfunction similarity index 100% rename from datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/slide.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/slide.mcfunction diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/stick.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/stick.mcfunction similarity index 100% rename from datapacks/Bookshelf/data/bs.move/function/collision/resolution/behaviors/stick.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/resolvers/behaviors/stick.mcfunction diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/callback/canonical.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/canonical.mcfunction similarity index 73% rename from datapacks/Bookshelf/data/bs.move/function/collision/resolution/callback/canonical.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/resolvers/canonical.mcfunction index e85b04d9de..ed417c7292 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/callback/canonical.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/canonical.mcfunction @@ -15,7 +15,7 @@ # resolve collision using the on_collision callback $function $(on_collision) -execute store result storage bs:ctx x double .001 run scoreboard players get $move.vel_remaining.x bs.data -execute store result storage bs:ctx y double .001 run scoreboard players get $move.vel_remaining.y bs.data -execute store result storage bs:ctx z double .001 run scoreboard players get $move.vel_remaining.z bs.data +execute store result storage bs:ctx x double .0000001 run scoreboard players get $move.vel_remaining.x bs.data +execute store result storage bs:ctx y double .0000001 run scoreboard players get $move.vel_remaining.y bs.data +execute store result storage bs:ctx z double .0000001 run scoreboard players get $move.vel_remaining.z bs.data execute unless data storage bs:ctx {x:0d,y:0d,z:0d} at @s run function bs.move:teleport/canonical/run with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/callback/local.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/local.mcfunction similarity index 77% rename from datapacks/Bookshelf/data/bs.move/function/collision/resolution/callback/local.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/resolvers/local.mcfunction index 73a587503c..1e88a7ed0d 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/callback/local.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/local.mcfunction @@ -16,8 +16,8 @@ # resolve collision using the on_collision callback (ensure the velocity vector is in canonical space for simpler transformation) execute rotated as @s run function #bs.move:local_to_canonical $function $(on_collision) -execute store result storage bs:ctx x double .001 run scoreboard players get $move.vel_remaining.x bs.data -execute store result storage bs:ctx y double .001 run scoreboard players get $move.vel_remaining.y bs.data -execute store result storage bs:ctx z double .001 run scoreboard players get $move.vel_remaining.z bs.data +execute store result storage bs:ctx x double .0000001 run scoreboard players get $move.vel_remaining.x bs.data +execute store result storage bs:ctx y double .0000001 run scoreboard players get $move.vel_remaining.y bs.data +execute store result storage bs:ctx z double .0000001 run scoreboard players get $move.vel_remaining.z bs.data execute unless data storage bs:ctx {x:0d,y:0d,z:0d} at @s run function bs.move:teleport/canonical/run with storage bs:ctx execute rotated as @s run function #bs.move:canonical_to_local diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/run.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/run.mcfunction new file mode 100644 index 0000000000..7b932023e6 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/resolvers/run.mcfunction @@ -0,0 +1,16 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +$function $(on_collision) diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/hitbox.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_bounding_box.mcfunction similarity index 76% rename from datapacks/Bookshelf/data/bs.move/function/collision/hitbox.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/utils/get_bounding_box.mcfunction index 9bfa76b140..4c825f0cf3 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/hitbox.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_bounding_box.mcfunction @@ -13,20 +13,22 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -# compute a bounding box that encompasses all passengers +tag @s add bs.move.omit +execute unless entity @s[type=#bs.hitbox:is_sized] on passengers run return run function bs.move:collision/utils/get_bounding_box + function #bs.hitbox:get_entity -execute store result score #h bs.ctx run data get storage bs:out hitbox.height 1000 -execute store result score #w bs.ctx run data get storage bs:out hitbox.width 500 +execute store result score #h bs.ctx run data get storage bs:out hitbox.height 10000 +execute store result score #w bs.ctx run data get storage bs:out hitbox.width 5000 execute store result score #s bs.ctx run data get storage bs:out hitbox.scale 1000 -execute store result score #y bs.ctx run data get entity @s Pos[1] 1000 +execute store result score #y bs.ctx run data get entity @s Pos[1] 10000 scoreboard players operation #h bs.ctx *= #s bs.ctx scoreboard players operation #w bs.ctx *= #s bs.ctx scoreboard players operation #y bs.ctx -= #move.y bs.data scoreboard players operation #y bs.ctx *= 1000 bs.const scoreboard players operation #h bs.ctx += #y bs.ctx -execute store result score #move.sh bs.data run scoreboard players operation #move.h bs.data > #h bs.ctx -execute store result score #move.sw bs.data run scoreboard players operation #move.w bs.data > #w bs.ctx +scoreboard players operation #move.h bs.data > #h bs.ctx +scoreboard players operation #move.w bs.data > #w bs.ctx -execute on passengers run function bs.move:collision/hitbox +execute on passengers run function bs.move:collision/utils/get_bounding_box diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_entity_pos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_entity_pos.mcfunction new file mode 100644 index 0000000000..13fa35393f --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_entity_pos.mcfunction @@ -0,0 +1,18 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +$tp @s ~$(x) ~$(y) ~$(z) +data modify storage bs:ctx _ set from entity @s Pos +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_pos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_pos.mcfunction new file mode 100644 index 0000000000..31c69f4de8 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/function/collision/utils/get_relative_pos.mcfunction @@ -0,0 +1,18 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +$tp @s ~$(x) ~$(y) ~$(z) +data modify storage bs:ctx _ set from entity @s Pos +kill @s diff --git a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/teleport.mcfunction b/datapacks/Bookshelf/data/bs.move/function/collision/utils/tp_relative.mcfunction similarity index 96% rename from datapacks/Bookshelf/data/bs.move/function/collision/resolution/teleport.mcfunction rename to datapacks/Bookshelf/data/bs.move/function/collision/utils/tp_relative.mcfunction index c774f94056..6409a1e85e 100644 --- a/datapacks/Bookshelf/data/bs.move/function/collision/resolution/teleport.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/collision/utils/tp_relative.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$tp @s $(x) $(y) $(z) +$tp @s ~$(x) ~$(y) ~$(z) diff --git a/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/canonical_to_local.mcfunction b/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/canonical_to_local.mcfunction index d43fec4a6a..ab97053f1a 100644 --- a/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/canonical_to_local.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/canonical_to_local.mcfunction @@ -16,7 +16,7 @@ # ------------------------------------------------------------------------------------------------------------ # sincos(h: Phi) & sincos(v: Theta) -execute as B5-0-0-0-1 run function bs.move:convert/canonical_to_local/sincos +execute in minecraft:overworld as B5-0-0-0-1 run function bs.move:convert/canonical_to_local/sincos # X' = Z * sin(h) + X * cos(h) scoreboard players operation #x bs.ctx = @s bs.vel.z diff --git a/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/sincos.mcfunction b/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/sincos.mcfunction index 1eeadfedc6..fa0884fd9b 100644 --- a/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/sincos.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/convert/canonical_to_local/sincos.mcfunction @@ -19,4 +19,4 @@ execute store result score #j bs.ctx run data get entity @s Pos[0] -100 execute positioned 0.0 0.0 0.0 rotated 0.0 ~ run tp @s ^ ^ ^10.0 execute store result score #k bs.ctx run data get entity @s Pos[2] 100 execute store result score #l bs.ctx run data get entity @s Pos[1] -100 -execute in minecraft:overworld run tp @s -30000000 0 1600 +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/compute.mcfunction b/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/compute.mcfunction index d9a1236a40..6b154fb801 100644 --- a/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/compute.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/compute.mcfunction @@ -15,4 +15,4 @@ $execute positioned 0.0 0.0 0.0 run tp @s ^$(x) ^$(y) ^$(z) data modify storage bs:ctx _ set from entity @s Pos -execute in minecraft:overworld run tp @s -30000000 0 1600 +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/local_to_canonical.mcfunction b/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/local_to_canonical.mcfunction index 8fb628563b..956c803559 100644 --- a/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/local_to_canonical.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/convert/local_to_canonical/local_to_canonical.mcfunction @@ -19,7 +19,7 @@ execute store result storage bs:ctx x int 1 run scoreboard players get @s bs.vel execute store result storage bs:ctx y int 1 run scoreboard players get @s bs.vel.y execute store result storage bs:ctx z int 1 run scoreboard players get @s bs.vel.z -execute as B5-0-0-0-1 run function bs.move:convert/local_to_canonical/compute with storage bs:ctx +execute in minecraft:overworld as B5-0-0-0-1 run function bs.move:convert/local_to_canonical/compute with storage bs:ctx execute store result score @s bs.vel.x run data get storage bs:ctx _[0] execute store result score @s bs.vel.y run data get storage bs:ctx _[1] diff --git a/datapacks/Bookshelf/data/bs.move/function/teleport/canonical/run.mcfunction b/datapacks/Bookshelf/data/bs.move/function/teleport/canonical/run.mcfunction index c07664d7ed..bb28b8fe99 100644 --- a/datapacks/Bookshelf/data/bs.move/function/teleport/canonical/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/teleport/canonical/run.mcfunction @@ -15,4 +15,4 @@ $tp @s ~$(x) ~$(y) ~$(z) -execute unless data storage bs:data move{blocks:0b,entities:0b} run function bs.move:collision/handle {type:"canonical"} +execute unless data storage bs:data move{blocks:0b,entities:0b} run function bs.move:collision/handle {resolver:"canonical"} diff --git a/datapacks/Bookshelf/data/bs.move/function/teleport/local/run.mcfunction b/datapacks/Bookshelf/data/bs.move/function/teleport/local/run.mcfunction index 57f1d78f3a..2d955016ff 100644 --- a/datapacks/Bookshelf/data/bs.move/function/teleport/local/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/function/teleport/local/run.mcfunction @@ -15,4 +15,4 @@ $tp @s ^$(x) ^$(y) ^$(z) -execute unless data storage bs:data move{blocks:0b,entities:0b} run function bs.move:collision/handle {type:"local"} +execute unless data storage bs:data move{blocks:0b,entities:0b} run function bs.move:collision/handle {resolver:"local"} diff --git a/datapacks/Bookshelf/data/bs.move/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.move/tags/function/exclusive_load.json new file mode 100644 index 0000000000..afe7a018cb --- /dev/null +++ b/datapacks/Bookshelf/data/bs.move/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.move:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.move/tags/function/load.json b/datapacks/Bookshelf/data/bs.move/tags/function/load.json index 80d3c9bd43..534792c6ba 100644 --- a/datapacks/Bookshelf/data/bs.move/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.move/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "#bs.hitbox:load", "bs.move:__load__" ] diff --git a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/bounce.json b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/bounce.json index ee36bbc88d..573295dc3f 100644 --- a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/bounce.json +++ b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/bounce.json @@ -1,5 +1,5 @@ { "values": [ - "bs.move:collision/resolution/behaviors/bounce" + "bs.move:collision/resolvers/behaviors/bounce" ] } diff --git a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/damped_bounce.json b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/damped_bounce.json index 9f54a3fdaf..2615a0ad22 100644 --- a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/damped_bounce.json +++ b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/damped_bounce.json @@ -1,5 +1,5 @@ { "values": [ - "bs.move:collision/resolution/behaviors/damped_bounce" + "bs.move:collision/resolvers/behaviors/damped_bounce" ] } diff --git a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/slide.json b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/slide.json index 8a241fdf71..9e56772917 100644 --- a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/slide.json +++ b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/slide.json @@ -1,5 +1,5 @@ { "values": [ - "bs.move:collision/resolution/behaviors/slide" + "bs.move:collision/resolvers/behaviors/slide" ] } diff --git a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/stick.json b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/stick.json index ef0e6872d2..a2ab4c007e 100644 --- a/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/stick.json +++ b/datapacks/Bookshelf/data/bs.move/tags/function/on_collision/stick.json @@ -1,5 +1,5 @@ { "values": [ - "bs.move:collision/resolution/behaviors/stick" + "bs.move:collision/resolvers/behaviors/stick" ] } diff --git a/datapacks/Bookshelf/data/bs.move/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.move/test/__boot__.mcfunction index 22ff769e8e..09e6bba1b6 100644 --- a/datapacks/Bookshelf/data/bs.move/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.move -# @beforebatch function #bs.move:load +# @beforebatch function #bs.move:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.move/test/collision/with_entity.mcfunction b/datapacks/Bookshelf/data/bs.move/test/collision/with_entity.mcfunction index 6e9d16a307..fed84fcb99 100644 --- a/datapacks/Bookshelf/data/bs.move/test/collision/with_entity.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/test/collision/with_entity.mcfunction @@ -2,7 +2,7 @@ # @batch bs.move # @dummy -summon minecraft:armor_stand .5 0 .5 {Tags:["packtest"]} +summon minecraft:armor_stand .5 0 .5 {Tags:["bs.packtest"]} tp @s -.5 0.0 1.5 0.0 0.0 scoreboard players set @s bs.vel.x 1000 @@ -15,7 +15,7 @@ execute store result score #packtest.x bs.data run data get entity @s Pos[0] 100 execute store result score #packtest.z bs.data run data get entity @s Pos[2] 1000 dummy @s leave -kill @e[type=minecraft:armor_stand,tag=packtest] +kill @e[type=minecraft:armor_stand,tag=bs.packtest] assert score #packtest.x bs.data matches -51..-49 assert score #packtest.z bs.data matches 1049..1051 diff --git a/datapacks/Bookshelf/data/bs.move/test/set_motion.mcfunction b/datapacks/Bookshelf/data/bs.move/test/set_motion.mcfunction index 9b691ef721..f9598d2ef4 100644 --- a/datapacks/Bookshelf/data/bs.move/test/set_motion.mcfunction +++ b/datapacks/Bookshelf/data/bs.move/test/set_motion.mcfunction @@ -1,9 +1,9 @@ # Set motion using NBTs # @batch bs.move -summon minecraft:pig ~ ~ ~ {Tags:["packtest"]} -scoreboard players set @e[type=minecraft:pig,tag=packtest] bs.vel.x 250 -scoreboard players set @e[type=minecraft:pig,tag=packtest] bs.vel.y 50 -scoreboard players set @e[type=minecraft:pig,tag=packtest] bs.vel.z 0 -execute as @e[type=minecraft:pig,tag=packtest] run function #bs.move:set_motion {scale:0.001} -assert data entity @n[type=minecraft:pig,tag=packtest] {Motion:[0.25d,0.05d,0.0d]} +summon minecraft:pig ~ ~ ~ {Tags:["bs.packtest"]} +scoreboard players set @e[type=minecraft:pig,tag=bs.packtest] bs.vel.x 250 +scoreboard players set @e[type=minecraft:pig,tag=bs.packtest] bs.vel.y 50 +scoreboard players set @e[type=minecraft:pig,tag=bs.packtest] bs.vel.z 0 +execute as @e[type=minecraft:pig,tag=bs.packtest] run function #bs.move:set_motion {scale:0.001} +assert data entity @n[type=minecraft:pig,tag=bs.packtest] {Motion:[0.25d,0.05d,0.0d]} diff --git a/datapacks/Bookshelf/data/bs.position/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.position/function/__load__.mcfunction index bb892d9176..914c37cb79 100644 --- a/datapacks/Bookshelf/data/bs.position/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/__load__.mcfunction @@ -16,12 +16,13 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} +execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} -scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] +scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] + scoreboard objectives add bs.pos.x dummy [{"text":"BS ","color":"dark_gray"},{"text":"Position X","color":"aqua"}] scoreboard objectives add bs.pos.y dummy [{"text":"BS ","color":"dark_gray"},{"text":"Position Y","color":"aqua"}] scoreboard objectives add bs.pos.z dummy [{"text":"BS ","color":"dark_gray"},{"text":"Position Z","color":"aqua"}] diff --git a/datapacks/Bookshelf/data/bs.position/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.position/function/__unload__.mcfunction index e9a98bda26..187bba8814 100644 --- a/datapacks/Bookshelf/data/bs.position/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/__unload__.mcfunction @@ -19,9 +19,10 @@ kill B5-0-0-0-1 kill B5-0-0-0-2 forceload remove -30000000 1600 -scoreboard objectives remove bs.out -scoreboard objectives remove bs.data scoreboard objectives remove bs.const +scoreboard objectives remove bs.ctx +scoreboard objectives remove bs.out + scoreboard objectives remove bs.pos.x scoreboard objectives remove bs.pos.y scoreboard objectives remove bs.pos.z diff --git a/datapacks/Bookshelf/data/bs.position/function/add/rotation/all/run.mcfunction b/datapacks/Bookshelf/data/bs.position/function/add/rotation/all/run.mcfunction index f7e43a5c8d..16e2ffd668 100644 --- a/datapacks/Bookshelf/data/bs.position/function/add/rotation/all/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/add/rotation/all/run.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$tp @s ~ ~ ~ ~$(x) ~$(y) +$rotate @s ~$(x) ~$(y) diff --git a/datapacks/Bookshelf/data/bs.position/function/add/rotation/h/run.mcfunction b/datapacks/Bookshelf/data/bs.position/function/add/rotation/h/run.mcfunction index 710579de93..f18e8e51ce 100644 --- a/datapacks/Bookshelf/data/bs.position/function/add/rotation/h/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/add/rotation/h/run.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$tp @s ~ ~ ~ ~$(x) ~ +$rotate @s ~$(x) ~ diff --git a/datapacks/Bookshelf/data/bs.position/function/add/rotation/v/run.mcfunction b/datapacks/Bookshelf/data/bs.position/function/add/rotation/v/run.mcfunction index d9a48ac3da..d41495a19e 100644 --- a/datapacks/Bookshelf/data/bs.position/function/add/rotation/v/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/add/rotation/v/run.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$tp @s ~ ~ ~ ~ ~$(y) +$rotate @s ~ ~$(y) diff --git a/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/canonical_to_local.mcfunction b/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/canonical_to_local.mcfunction index 223b8ba4c1..4a3c32c416 100644 --- a/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/canonical_to_local.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/canonical_to_local.mcfunction @@ -16,36 +16,36 @@ # ------------------------------------------------------------------------------------------------------------ # sincos(h: Phi) & sincos(v: Theta) -execute as B5-0-0-0-1 run function bs.position:convert/canonical_to_local/sincos +execute in minecraft:overworld as B5-0-0-0-1 run function bs.position:convert/canonical_to_local/sincos # X' = Z * sin(h) + X * cos(h) -scoreboard players operation #position.convert.x bs.data = @s bs.pos.z -scoreboard players operation #position.convert.x bs.data *= #position.convert.sin.h bs.data -scoreboard players operation #position.convert bs.data = @s bs.pos.x -scoreboard players operation #position.convert bs.data *= #position.convert.cos.h bs.data -scoreboard players operation #position.convert.x bs.data += #position.convert bs.data -scoreboard players operation #position.convert.x bs.data /= 1000 bs.const +scoreboard players operation #x bs.ctx = @s bs.pos.z +scoreboard players operation #x bs.ctx *= #j bs.ctx +scoreboard players operation #t bs.ctx = @s bs.pos.x +scoreboard players operation #t bs.ctx *= #i bs.ctx +scoreboard players operation #x bs.ctx += #t bs.ctx +scoreboard players operation #x bs.ctx /= 1000 bs.const # Y' = (z * cos(h) - x * sin(h)) * sin(v) + y * cos(v) -scoreboard players operation #position.convert.y bs.data = @s bs.pos.z -scoreboard players operation #position.convert.y bs.data *= #position.convert.cos.h bs.data -scoreboard players operation #position.convert bs.data = @s bs.pos.x -scoreboard players operation #position.convert bs.data *= #position.convert.sin.h bs.data -scoreboard players operation #position.convert.y bs.data -= #position.convert bs.data -execute store result score #position.convert.z bs.data run scoreboard players operation #position.convert.y bs.data /= 1000 bs.const -scoreboard players operation #position.convert.y bs.data *= #position.convert.sin.v bs.data -scoreboard players operation #position.convert bs.data = @s bs.pos.y -scoreboard players operation #position.convert bs.data *= #position.convert.cos.v bs.data -scoreboard players operation #position.convert.y bs.data += #position.convert bs.data -scoreboard players operation #position.convert.y bs.data /= 1000 bs.const +scoreboard players operation #y bs.ctx = @s bs.pos.z +scoreboard players operation #y bs.ctx *= #i bs.ctx +scoreboard players operation #t bs.ctx = @s bs.pos.x +scoreboard players operation #t bs.ctx *= #j bs.ctx +scoreboard players operation #y bs.ctx -= #t bs.ctx +execute store result score #z bs.ctx run scoreboard players operation #y bs.ctx /= 1000 bs.const +scoreboard players operation #y bs.ctx *= #l bs.ctx +scoreboard players operation #t bs.ctx = @s bs.pos.y +scoreboard players operation #t bs.ctx *= #k bs.ctx +scoreboard players operation #y bs.ctx += #t bs.ctx +scoreboard players operation #y bs.ctx /= 1000 bs.const # Z' = (z * cos(h) - x * sin(h)) * cos(v) - y * sin(v) -scoreboard players operation #position.convert.z bs.data *= #position.convert.cos.v bs.data -scoreboard players operation #position.convert bs.data = @s bs.pos.y -scoreboard players operation #position.convert bs.data *= #position.convert.sin.v bs.data -scoreboard players operation #position.convert.z bs.data -= #position.convert bs.data -scoreboard players operation #position.convert.z bs.data /= 1000 bs.const +scoreboard players operation #z bs.ctx *= #k bs.ctx +scoreboard players operation #t bs.ctx = @s bs.pos.y +scoreboard players operation #t bs.ctx *= #l bs.ctx +scoreboard players operation #z bs.ctx -= #t bs.ctx +scoreboard players operation #z bs.ctx /= 1000 bs.const -scoreboard players operation @s bs.pos.x = #position.convert.x bs.data -scoreboard players operation @s bs.pos.y = #position.convert.y bs.data -scoreboard players operation @s bs.pos.z = #position.convert.z bs.data +scoreboard players operation @s bs.pos.x = #x bs.ctx +scoreboard players operation @s bs.pos.y = #y bs.ctx +scoreboard players operation @s bs.pos.z = #z bs.ctx diff --git a/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/sincos.mcfunction b/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/sincos.mcfunction index 30453faf3c..fa0884fd9b 100644 --- a/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/sincos.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/convert/canonical_to_local/sincos.mcfunction @@ -14,9 +14,9 @@ # ------------------------------------------------------------------------------------------------------------ execute positioned 0.0 0.0 0.0 rotated ~ 0.0 run tp @s ^ ^ ^10.0 -execute store result score #position.convert.cos.h bs.data run data get entity @s Pos[2] 100 -execute store result score #position.convert.sin.h bs.data run data get entity @s Pos[0] -100 +execute store result score #i bs.ctx run data get entity @s Pos[2] 100 +execute store result score #j bs.ctx run data get entity @s Pos[0] -100 execute positioned 0.0 0.0 0.0 rotated 0.0 ~ run tp @s ^ ^ ^10.0 -execute store result score #position.convert.cos.v bs.data run data get entity @s Pos[2] 100 -execute store result score #position.convert.sin.v bs.data run data get entity @s Pos[1] -100 -execute in minecraft:overworld run tp @s -30000000 0 1600 +execute store result score #k bs.ctx run data get entity @s Pos[2] 100 +execute store result score #l bs.ctx run data get entity @s Pos[1] -100 +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/compute.mcfunction b/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/compute.mcfunction index d9a1236a40..6b154fb801 100644 --- a/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/compute.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/compute.mcfunction @@ -15,4 +15,4 @@ $execute positioned 0.0 0.0 0.0 run tp @s ^$(x) ^$(y) ^$(z) data modify storage bs:ctx _ set from entity @s Pos -execute in minecraft:overworld run tp @s -30000000 0 1600 +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/local_to_canonical.mcfunction b/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/local_to_canonical.mcfunction index 11d5ef5e83..28aeaf8c15 100644 --- a/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/local_to_canonical.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/convert/local_to_canonical/local_to_canonical.mcfunction @@ -19,7 +19,7 @@ execute store result storage bs:ctx x int 1 run scoreboard players get @s bs.pos execute store result storage bs:ctx y int 1 run scoreboard players get @s bs.pos.y execute store result storage bs:ctx z int 1 run scoreboard players get @s bs.pos.z -execute as B5-0-0-0-1 run function bs.position:convert/local_to_canonical/compute with storage bs:ctx +execute in minecraft:overworld as B5-0-0-0-1 run function bs.position:convert/local_to_canonical/compute with storage bs:ctx execute store result score @s bs.pos.x run data get storage bs:ctx _[0] execute store result score @s bs.pos.y run data get storage bs:ctx _[1] diff --git a/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_ata.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_ata.mcfunction index 8576ccf61c..603344fdd3 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_ata.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_ata.mcfunction @@ -15,16 +15,16 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/position.html#get-distance # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/position/ctx -$execute store result score #position.get_distance.x1 bs.data run data get storage bs:ctx _[0] $(scale) -$execute store result score #position.get_distance.y1 bs.data run data get storage bs:ctx _[1] $(scale) -$execute store result score #position.get_distance.z1 bs.data run data get storage bs:ctx _[2] $(scale) -$execute store result score #position.get_distance.x2 bs.data run data get entity @s Pos[0] $(scale) -$execute store result score #position.get_distance.y2 bs.data run data get entity @s Pos[1] $(scale) -$execute store result score #position.get_distance.z2 bs.data run data get entity @s Pos[2] $(scale) +execute summon minecraft:marker run function bs.position:get/position/ctx +$execute store result score #x bs.ctx run data get storage bs:ctx _[0] $(scale) +$execute store result score #y bs.ctx run data get storage bs:ctx _[1] $(scale) +$execute store result score #z bs.ctx run data get storage bs:ctx _[2] $(scale) +$execute store result score #u bs.ctx run data get entity @s Pos[0] $(scale) +$execute store result score #v bs.ctx run data get entity @s Pos[1] $(scale) +$execute store result score #w bs.ctx run data get entity @s Pos[2] $(scale) -execute store result storage bs:ctx x int 1 run scoreboard players operation #position.get_distance.x1 bs.data -= #position.get_distance.x2 bs.data -execute store result storage bs:ctx y int 1 run scoreboard players operation #position.get_distance.y1 bs.data -= #position.get_distance.y2 bs.data -execute store result storage bs:ctx z int 1 run scoreboard players operation #position.get_distance.z1 bs.data -= #position.get_distance.z2 bs.data +execute store result storage bs:ctx x int 1 run scoreboard players operation #x bs.ctx -= #u bs.ctx +execute store result storage bs:ctx y int 1 run scoreboard players operation #y bs.ctx -= #v bs.ctx +execute store result storage bs:ctx z int 1 run scoreboard players operation #z bs.ctx -= #w bs.ctx execute store result score $position.get_distance_ata bs.out as B5-0-0-0-2 run return run function bs.position:get/distance/compute with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_squared_ata.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_squared_ata.mcfunction index 71f6258509..a72cccec82 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_squared_ata.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/distance/distance_squared_ata.mcfunction @@ -15,20 +15,20 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/position.html#get-distance # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/position/ctx -$execute store result score #position.get_distance.x1 bs.data run data get storage bs:ctx _[0] $(scale) -$execute store result score #position.get_distance.y1 bs.data run data get storage bs:ctx _[1] $(scale) -$execute store result score #position.get_distance.z1 bs.data run data get storage bs:ctx _[2] $(scale) -$execute store result score #position.get_distance.x2 bs.data run data get entity @s Pos[0] $(scale) -$execute store result score #position.get_distance.y2 bs.data run data get entity @s Pos[1] $(scale) -$execute store result score #position.get_distance.z2 bs.data run data get entity @s Pos[2] $(scale) +execute summon minecraft:marker run function bs.position:get/position/ctx +$execute store result score #x bs.ctx run data get storage bs:ctx _[0] $(scale) +$execute store result score #y bs.ctx run data get storage bs:ctx _[1] $(scale) +$execute store result score #z bs.ctx run data get storage bs:ctx _[2] $(scale) +$execute store result score #u bs.ctx run data get entity @s Pos[0] $(scale) +$execute store result score #v bs.ctx run data get entity @s Pos[1] $(scale) +$execute store result score #w bs.ctx run data get entity @s Pos[2] $(scale) -scoreboard players operation #position.get_distance.x1 bs.data -= #position.get_distance.x2 bs.data -scoreboard players operation #position.get_distance.y1 bs.data -= #position.get_distance.y2 bs.data -scoreboard players operation #position.get_distance.z1 bs.data -= #position.get_distance.z2 bs.data -scoreboard players operation #position.get_distance.x1 bs.data *= #position.get_distance.x1 bs.data -scoreboard players operation #position.get_distance.y1 bs.data *= #position.get_distance.y1 bs.data -scoreboard players operation #position.get_distance.z1 bs.data *= #position.get_distance.z1 bs.data +scoreboard players operation #x bs.ctx -= #u bs.ctx +scoreboard players operation #y bs.ctx -= #v bs.ctx +scoreboard players operation #z bs.ctx -= #w bs.ctx +scoreboard players operation #x bs.ctx *= #x bs.ctx +scoreboard players operation #y bs.ctx *= #y bs.ctx +scoreboard players operation #z bs.ctx *= #z bs.ctx -scoreboard players operation #position.get_distance.x1 bs.data += #position.get_distance.y1 bs.data -execute store result score $position.get_distance_squared_ata bs.out run return run scoreboard players operation #position.get_distance.x1 bs.data += #position.get_distance.z1 bs.data +scoreboard players operation #x bs.ctx += #y bs.ctx +execute store result score $position.get_distance_squared_ata bs.out run return run scoreboard players operation #x bs.ctx += #z bs.ctx diff --git a/datapacks/Bookshelf/data/bs.position/function/get/position/all.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/position/all.mcfunction index a1eb3d71aa..d3f1016634 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/position/all.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/position/all.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/master/modules/position.html#get-position-and-rotation # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/position/ctx +execute summon minecraft:marker run function bs.position:get/position/ctx $execute store result score @s bs.pos.x run data get storage bs:ctx _[0] $(scale) $execute store result score @s bs.pos.y run data get storage bs:ctx _[1] $(scale) $execute store result score @s bs.pos.z run data get storage bs:ctx _[2] $(scale) diff --git a/datapacks/Bookshelf/data/bs.position/function/get/position/ctx.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/position/ctx.mcfunction index b710ba15c5..979ce61093 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/position/ctx.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/position/ctx.mcfunction @@ -13,6 +13,5 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -tp @s ~ ~ ~ ~ ~ data modify storage bs:ctx _ set from entity @s Pos -execute in minecraft:overworld run tp @s -30000000 0 1600 +kill @s diff --git a/datapacks/Bookshelf/data/bs.position/function/get/position/x.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/position/x.mcfunction index bbc3ef7846..d1a4ce080d 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/position/x.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/position/x.mcfunction @@ -15,5 +15,5 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/master/modules/position.html#get-position-and-rotation # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/position/ctx +execute summon minecraft:marker run function bs.position:get/position/ctx $execute store result score @s bs.pos.x run data get storage bs:ctx _[0] $(scale) diff --git a/datapacks/Bookshelf/data/bs.position/function/get/position/y.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/position/y.mcfunction index 02810d69fb..4988d4e593 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/position/y.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/position/y.mcfunction @@ -15,5 +15,5 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/master/modules/position.html#get-position-and-rotation # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/position/ctx +execute summon minecraft:marker run function bs.position:get/position/ctx $execute store result score @s bs.pos.y run data get storage bs:ctx _[1] $(scale) diff --git a/datapacks/Bookshelf/data/bs.position/function/get/position/z.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/position/z.mcfunction index 6c4986cb0b..bb744df5a2 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/position/z.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/position/z.mcfunction @@ -15,5 +15,5 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/master/modules/position.html#get-position-and-rotation # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/position/ctx +execute summon minecraft:marker run function bs.position:get/position/ctx $execute store result score @s bs.pos.z run data get storage bs:ctx _[2] $(scale) diff --git a/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_ata.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_ata.mcfunction index 34a277aa91..b6b7f45ba7 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_ata.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_ata.mcfunction @@ -15,14 +15,14 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/position.html#get-relative # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/position/ctx -$execute store result score #position.get_relative_ata.x bs.data run data get storage bs:ctx _[0] $(scale) -$execute store result score #position.get_relative_ata.y bs.data run data get storage bs:ctx _[1] $(scale) -$execute store result score #position.get_relative_ata.z bs.data run data get storage bs:ctx _[2] $(scale) +execute summon minecraft:marker run function bs.position:get/position/ctx +$execute store result score #x bs.ctx run data get storage bs:ctx _[0] $(scale) +$execute store result score #y bs.ctx run data get storage bs:ctx _[1] $(scale) +$execute store result score #z bs.ctx run data get storage bs:ctx _[2] $(scale) $execute store result score @s bs.pos.x run data get entity @s Pos[0] $(scale) $execute store result score @s bs.pos.y run data get entity @s Pos[1] $(scale) $execute store result score @s bs.pos.z run data get entity @s Pos[2] $(scale) -scoreboard players operation @s bs.pos.x -= #position.get_relative_ata.x bs.data -scoreboard players operation @s bs.pos.y -= #position.get_relative_ata.y bs.data -scoreboard players operation @s bs.pos.z -= #position.get_relative_ata.z bs.data +scoreboard players operation @s bs.pos.x -= #x bs.ctx +scoreboard players operation @s bs.pos.y -= #y bs.ctx +scoreboard players operation @s bs.pos.z -= #z bs.ctx diff --git a/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/ctx.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/ctx.mcfunction index b3d3063aa5..ba3cdeb89e 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/ctx.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/ctx.mcfunction @@ -13,6 +13,6 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -execute positioned 0.0 0.0 0.0 positioned ^ ^ ^1 run tp @s ~ ~ ~ ~ ~ +execute positioned 0.0 0.0 0.0 run tp @s ^ ^ ^1 data modify storage bs:ctx _ set from entity @s Pos -execute in minecraft:overworld run tp @s -30000000 0 1600 +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/relative_from_dir.mcfunction b/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/relative_from_dir.mcfunction index ed87b5e832..a47216c825 100644 --- a/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/relative_from_dir.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/get/relative/relative_from_dir/relative_from_dir.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/position.html#get-relative # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.position:get/relative/relative_from_dir/ctx +execute in minecraft:overworld as B5-0-0-0-1 run function bs.position:get/relative/relative_from_dir/ctx $execute store result score @s bs.pos.x run data get storage bs:ctx _[0] $(scale) $execute store result score @s bs.pos.y run data get storage bs:ctx _[1] $(scale) $execute store result score @s bs.pos.z run data get storage bs:ctx _[2] $(scale) diff --git a/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/all.mcfunction b/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/all.mcfunction index e0f9b41616..410c30d169 100644 --- a/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/all.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/all.mcfunction @@ -17,4 +17,4 @@ $execute store result storage bs:ctx x double $(scale) run scoreboard players get @s bs.rot.h $execute store result storage bs:ctx y double $(scale) run scoreboard players get @s bs.rot.v -execute at @s run function bs.position:set/rotation/all/run with storage bs:ctx +function bs.position:set/rotation/all/run with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/run.mcfunction b/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/run.mcfunction index 273f45be4e..eadfe9ce3e 100644 --- a/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/set/rotation/all/run.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$tp @s ~ ~ ~ $(x) $(y) +$rotate @s $(x) $(y) diff --git a/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/h.mcfunction b/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/h.mcfunction index 8c0186893a..6887c9c883 100644 --- a/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/h.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/h.mcfunction @@ -16,4 +16,4 @@ # ------------------------------------------------------------------------------------------------------------ $execute store result storage bs:ctx x double $(scale) run scoreboard players get @s bs.rot.h -execute at @s run function bs.position:set/rotation/h/run with storage bs:ctx +function bs.position:set/rotation/h/run with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/run.mcfunction b/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/run.mcfunction index 60541df51a..172a11c172 100644 --- a/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/set/rotation/h/run.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$tp @s ~ ~ ~ $(x) ~ +$rotate @s $(x) ~ diff --git a/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/run.mcfunction b/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/run.mcfunction index 4a5024777c..66f080e4fe 100644 --- a/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/run.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/run.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$tp @s ~ ~ ~ ~ $(y) +$rotate @s ~ $(y) diff --git a/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/v.mcfunction b/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/v.mcfunction index c3ffe39a16..022f751bf9 100644 --- a/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/v.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/function/set/rotation/v/v.mcfunction @@ -16,4 +16,4 @@ # ------------------------------------------------------------------------------------------------------------ $execute store result storage bs:ctx y double $(scale) run scoreboard players get @s bs.rot.v -execute at @s run function bs.position:set/rotation/v/run with storage bs:ctx +function bs.position:set/rotation/v/run with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.position/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.position/tags/function/exclusive_load.json new file mode 100644 index 0000000000..ccb2117375 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.position/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.position:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.position/tags/function/load.json b/datapacks/Bookshelf/data/bs.position/tags/function/load.json index 14fa195e8e..69a0247e4b 100644 --- a/datapacks/Bookshelf/data/bs.position/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.position/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.position:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.position/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.position/test/__boot__.mcfunction index 7ea2a20b83..1f4477eae2 100644 --- a/datapacks/Bookshelf/data/bs.position/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.position -# @beforebatch function #bs.position:load +# @beforebatch function #bs.position:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.position/test/add/pos.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/pos.mcfunction index 85bab50f95..76790f00ac 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/pos.mcfunction @@ -4,26 +4,19 @@ tp @s 0.0 0.0 0.0 0.0 0.0 -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data store result score @s bs.pos.x run random value -10000..10000 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data store result score @s bs.pos.y run random value -10000..10000 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data store result score @s bs.pos.z run random value -10000..10000 +execute store result score @s bs.pos.x run random value -10000..10000 +execute store result score @s bs.pos.y run random value -10000..10000 +execute store result score @s bs.pos.z run random value -10000..10000 function #bs.position:add_pos {scale:.001} -execute store result score #packtest.x bs.data run data get entity @s Pos[0] 1000 -execute store result score #packtest.y bs.data run data get entity @s Pos[1] 1000 -execute store result score #packtest.z bs.data run data get entity @s Pos[2] 1000 -dummy @s leave +execute store result score #x bs.ctx run data get entity @s Pos[0] 1000 +execute store result score #y bs.ctx run data get entity @s Pos[1] 1000 +execute store result score #z bs.ctx run data get entity @s Pos[2] 1000 -scoreboard players remove #packtest.x_min bs.data 2 -scoreboard players remove #packtest.y_min bs.data 2 -scoreboard players remove #packtest.z_min bs.data 2 -scoreboard players add #packtest.x_max bs.data 2 -scoreboard players add #packtest.y_max bs.data 2 -scoreboard players add #packtest.z_max bs.data 2 +scoreboard players operation #x bs.ctx -= @s bs.pos.x +scoreboard players operation #y bs.ctx -= @s bs.pos.y +scoreboard players operation #z bs.ctx -= @s bs.pos.z -assert score #packtest.x_min bs.data < #packtest.x bs.data -assert score #packtest.y_min bs.data < #packtest.y bs.data -assert score #packtest.z_min bs.data < #packtest.z bs.data -assert score #packtest.x_max bs.data > #packtest.x bs.data -assert score #packtest.y_max bs.data > #packtest.y bs.data -assert score #packtest.z_max bs.data > #packtest.z bs.data +assert score #x bs.ctx matches -2..2 +assert score #y bs.ctx matches -2..2 +assert score #z bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/add/pos_and_rot.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/pos_and_rot.mcfunction index 7b14cd4024..ee73fa1133 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/pos_and_rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/pos_and_rot.mcfunction @@ -1,41 +1,31 @@ # Position is added correctly # @batch bs.position -# @dummy -tp @s 0.0 0.0 0.0 0.0 0.0 +summon minecraft:marker 0.0 0.0 0.0 {Tags:["bs.packtest"],Rotation:[0.0,0.0]} -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data store result score @s bs.pos.x run random value -10000..10000 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data store result score @s bs.pos.y run random value -10000..10000 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data store result score @s bs.pos.z run random value -10000..10000 -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data store result score @s bs.rot.h run random value -10000..10000 -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data store result score @s bs.rot.v run random value -10000..10000 -function #bs.position:add_pos_and_rot {scale:.001} -execute store result score #packtest.x bs.data run data get entity @s Pos[0] 1000 -execute store result score #packtest.y bs.data run data get entity @s Pos[1] 1000 -execute store result score #packtest.z bs.data run data get entity @s Pos[2] 1000 -execute store result score #packtest.h bs.data run data get entity @s Rotation[0] 1000 -execute store result score #packtest.v bs.data run data get entity @s Rotation[1] 1000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.pos.x run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.pos.y run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.pos.z run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:add_pos_and_rot {scale:.001} -dummy @s leave +execute store result score #x bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Pos[0] 1000 +execute store result score #y bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Pos[1] 1000 +execute store result score #z bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Pos[2] 1000 +execute store result score #h bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[0] 1000 +execute store result score #v bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[1] 1000 -scoreboard players remove #packtest.x_min bs.data 2 -scoreboard players remove #packtest.y_min bs.data 2 -scoreboard players remove #packtest.z_min bs.data 2 -scoreboard players remove #packtest.h_min bs.data 2 -scoreboard players remove #packtest.v_min bs.data 2 -scoreboard players add #packtest.x_max bs.data 2 -scoreboard players add #packtest.y_max bs.data 2 -scoreboard players add #packtest.z_max bs.data 2 -scoreboard players add #packtest.h_max bs.data 2 -scoreboard players add #packtest.v_max bs.data 2 +scoreboard players operation #x bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.pos.x +scoreboard players operation #y bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.pos.y +scoreboard players operation #z bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.pos.z +scoreboard players operation #h bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h +scoreboard players operation #v bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v -assert score #packtest.x_min bs.data < #packtest.x bs.data -assert score #packtest.y_min bs.data < #packtest.y bs.data -assert score #packtest.z_min bs.data < #packtest.z bs.data -assert score #packtest.h_min bs.data < #packtest.h bs.data -assert score #packtest.v_min bs.data < #packtest.v bs.data -assert score #packtest.x_max bs.data > #packtest.x bs.data -assert score #packtest.y_max bs.data > #packtest.y bs.data -assert score #packtest.z_max bs.data > #packtest.z bs.data -assert score #packtest.h_max bs.data > #packtest.h bs.data -assert score #packtest.v_max bs.data > #packtest.v bs.data +kill @n[type=minecraft:marker,tag=bs.packtest] + +assert score #x bs.ctx matches -2..2 +assert score #y bs.ctx matches -2..2 +assert score #z bs.ctx matches -2..2 +assert score #h bs.ctx matches -2..2 +assert score #v bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/add/pos_x.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/pos_x.mcfunction index 6be98651e0..eae31917dd 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/pos_x.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/pos_x.mcfunction @@ -4,14 +4,9 @@ tp @s 0.0 0.0 0.0 0.0 0.0 -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data store result score @s bs.pos.x run random value -10000..10000 +execute store result score @s bs.pos.x run random value -10000..10000 function #bs.position:add_pos_x {scale:.001} -execute store result score #packtest.x bs.data run data get entity @s Pos[0] 1000 +execute store result score #x bs.ctx run data get entity @s Pos[0] 1000 +scoreboard players operation #x bs.ctx -= @s bs.pos.x -dummy @s leave - -scoreboard players remove #packtest.x_min bs.data 2 -scoreboard players add #packtest.x_max bs.data 2 - -assert score #packtest.x_min bs.data < #packtest.x bs.data -assert score #packtest.x_max bs.data > #packtest.x bs.data +assert score #x bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/add/pos_y.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/pos_y.mcfunction index 48d9d1da91..c2cea54567 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/pos_y.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/pos_y.mcfunction @@ -4,14 +4,9 @@ tp @s 0.0 0.0 0.0 0.0 0.0 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data store result score @s bs.pos.y run random value -10000..10000 +execute store result score @s bs.pos.y run random value -10000..10000 function #bs.position:add_pos_y {scale:.001} -execute store result score #packtest.y bs.data run data get entity @s Pos[1] 1000 +execute store result score #y bs.ctx run data get entity @s Pos[1] 1000 +scoreboard players operation #y bs.ctx -= @s bs.pos.y -dummy @s leave - -scoreboard players remove #packtest.y_min bs.data 2 -scoreboard players add #packtest.y_max bs.data 2 - -assert score #packtest.y_min bs.data < #packtest.y bs.data -assert score #packtest.y_max bs.data > #packtest.y bs.data +assert score #y bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/add/pos_z.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/pos_z.mcfunction index 337e190f73..d92fc97cb9 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/pos_z.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/pos_z.mcfunction @@ -4,14 +4,9 @@ tp @s 0.0 0.0 0.0 0.0 0.0 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data store result score @s bs.pos.z run random value -10000..10000 +execute store result score @s bs.pos.z run random value -10000..10000 function #bs.position:add_pos_z {scale:.001} -execute store result score #packtest.z bs.data run data get entity @s Pos[2] 1000 +execute store result score #z bs.ctx run data get entity @s Pos[2] 1000 +scoreboard players operation #z bs.ctx -= @s bs.pos.z -dummy @s leave - -scoreboard players remove #packtest.z_min bs.data 2 -scoreboard players add #packtest.z_max bs.data 2 - -assert score #packtest.z_min bs.data < #packtest.z bs.data -assert score #packtest.z_max bs.data > #packtest.z bs.data +assert score #z bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/add/rot.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/rot.mcfunction index 4f1b23b979..c14ab4d991 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/rot.mcfunction @@ -1,23 +1,19 @@ # Position is added correctly # @batch bs.position -# @dummy -tp @s 0.0 0.0 0.0 0.0 0.0 +summon minecraft:marker ~ ~ ~ {Tags:["bs.packtest"],Rotation:[0.0,0.0]} -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data store result score @s bs.rot.h run random value -10000..10000 -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data store result score @s bs.rot.v run random value -10000..10000 -function #bs.position:add_rot {scale:.001} -execute store result score #packtest.h bs.data run data get entity @s Rotation[0] 1000 -execute store result score #packtest.v bs.data run data get entity @s Rotation[1] 1000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:add_rot {scale:.001} -dummy @s leave +execute store result score #h bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[0] 1000 +execute store result score #v bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[1] 1000 -scoreboard players remove #packtest.h_min bs.data 2 -scoreboard players remove #packtest.v_min bs.data 2 -scoreboard players add #packtest.h_max bs.data 2 -scoreboard players add #packtest.v_max bs.data 2 +scoreboard players operation #h bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h +scoreboard players operation #v bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v -assert score #packtest.h_min bs.data < #packtest.h bs.data -assert score #packtest.v_min bs.data < #packtest.v bs.data -assert score #packtest.h_max bs.data > #packtest.h bs.data -assert score #packtest.v_max bs.data > #packtest.v bs.data +kill @n[type=minecraft:marker,tag=bs.packtest] + +assert score #h bs.ctx matches -2..2 +assert score #v bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/add/rot_h.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/rot_h.mcfunction index c103dc6666..001052eec0 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/rot_h.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/rot_h.mcfunction @@ -1,17 +1,13 @@ # Position is added correctly # @batch bs.position -# @dummy -tp @s 0.0 0.0 0.0 0.0 0.0 +summon minecraft:marker ~ ~ ~ {Tags:["bs.packtest"],Rotation:[0.0,0.0]} -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data store result score @s bs.rot.h run random value -10000..10000 -function #bs.position:add_rot_h {scale:.001} -execute store result score #packtest.h bs.data run data get entity @s Rotation[0] 1000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:add_rot_h {scale:.001} +execute store result score #h bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[0] 1000 +scoreboard players operation #h bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h -dummy @s leave +kill @n[type=minecraft:marker,tag=bs.packtest] -scoreboard players remove #packtest.h_min bs.data 2 -scoreboard players add #packtest.h_max bs.data 2 - -assert score #packtest.h_min bs.data < #packtest.h bs.data -assert score #packtest.h_max bs.data > #packtest.h bs.data +assert score #h bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/add/rot_v.mcfunction b/datapacks/Bookshelf/data/bs.position/test/add/rot_v.mcfunction index 5731742039..d95188c99c 100644 --- a/datapacks/Bookshelf/data/bs.position/test/add/rot_v.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/add/rot_v.mcfunction @@ -1,17 +1,13 @@ # Position is added correctly # @batch bs.position -# @dummy -tp @s 0.0 0.0 0.0 0.0 0.0 +summon minecraft:marker ~ ~ ~ {Tags:["bs.packtest"],Rotation:[0.0,0.0]} -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data store result score @s bs.rot.v run random value -10000..10000 -function #bs.position:add_rot {scale:.001} -execute store result score #packtest.v bs.data run data get entity @s Rotation[1] 1000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:add_rot_v {scale:.001} +execute store result score #v bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[1] 1000 +scoreboard players operation #v bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v -dummy @s leave +kill @n[type=minecraft:marker,tag=bs.packtest] -scoreboard players remove #packtest.v_min bs.data 2 -scoreboard players add #packtest.v_max bs.data 2 - -assert score #packtest.v_min bs.data < #packtest.v bs.data -assert score #packtest.v_max bs.data > #packtest.v bs.data +assert score #v bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/distance_ata.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/distance_ata.mcfunction index 4e2e3fe88c..1d9a242b76 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/distance_ata.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/distance_ata.mcfunction @@ -2,5 +2,5 @@ # @batch bs.position # @dummy -execute at @s positioned ^ ^ ^7.5 store result score #result bs.data run function #bs.position:get_distance_ata {scale:10} -assert score #result bs.data matches 74..76 +execute at @s positioned ^ ^ ^7.5 store result score #r bs.ctx run function #bs.position:get_distance_ata {scale:10} +assert score #r bs.ctx matches 74..76 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/distance_squared_ata.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/distance_squared_ata.mcfunction index f7a97eeefa..53c4ff0571 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/distance_squared_ata.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/distance_squared_ata.mcfunction @@ -2,5 +2,5 @@ # @batch bs.position # @dummy -execute at @s positioned ^ ^ ^7.5 store result score #result bs.data run function #bs.position:get_distance_squared_ata {scale:10} -assert score #result bs.data matches 5624..5626 +execute at @s positioned ^ ^ ^7.5 store result score #r bs.ctx run function #bs.position:get_distance_squared_ata {scale:10} +assert score #r bs.ctx matches 5624..5626 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/pos.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/pos.mcfunction index b637b3f8b4..2febf68df5 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/pos.mcfunction @@ -4,20 +4,14 @@ execute at @s positioned ~1 ~1 ~1 run function #bs.position:get_pos {scale:10} -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data run data get entity @s Pos[0] 10 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data run data get entity @s Pos[1] 10 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data run data get entity @s Pos[2] 10 +execute store result score #x bs.ctx run data get entity @s Pos[0] 10 +execute store result score #y bs.ctx run data get entity @s Pos[1] 10 +execute store result score #z bs.ctx run data get entity @s Pos[2] 10 -scoreboard players add #packtest.x_min bs.data 8 -scoreboard players add #packtest.y_min bs.data 8 -scoreboard players add #packtest.z_min bs.data 8 -scoreboard players add #packtest.x_max bs.data 12 -scoreboard players add #packtest.y_max bs.data 12 -scoreboard players add #packtest.z_max bs.data 12 +scoreboard players operation #x bs.ctx -= @s bs.pos.x +scoreboard players operation #y bs.ctx -= @s bs.pos.y +scoreboard players operation #z bs.ctx -= @s bs.pos.z -assert score #packtest.x_min bs.data < @s bs.pos.x -assert score #packtest.y_min bs.data < @s bs.pos.y -assert score #packtest.z_min bs.data < @s bs.pos.z -assert score #packtest.x_max bs.data > @s bs.pos.x -assert score #packtest.y_max bs.data > @s bs.pos.y -assert score #packtest.z_max bs.data > @s bs.pos.z +assert score #x bs.ctx matches -11..-9 +assert score #y bs.ctx matches -11..-9 +assert score #z bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/pos_and_rot.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/pos_and_rot.mcfunction index 8c27e2e776..0f32e79e87 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/pos_and_rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/pos_and_rot.mcfunction @@ -4,30 +4,20 @@ execute at @s positioned ~1 ~1 ~1 rotated ~1 ~1 run function #bs.position:get_pos_and_rot {scale:10} -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data run data get entity @s Pos[0] 10 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data run data get entity @s Pos[1] 10 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data run data get entity @s Pos[2] 10 -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data run data get entity @s Rotation[0] 10 -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data run data get entity @s Rotation[1] 10 +execute store result score #x bs.ctx run data get entity @s Pos[0] 10 +execute store result score #y bs.ctx run data get entity @s Pos[1] 10 +execute store result score #z bs.ctx run data get entity @s Pos[2] 10 +execute store result score #h bs.ctx run data get entity @s Rotation[0] 10 +execute store result score #v bs.ctx run data get entity @s Rotation[1] 10 -scoreboard players add #packtest.x_min bs.data 8 -scoreboard players add #packtest.y_min bs.data 8 -scoreboard players add #packtest.z_min bs.data 8 -scoreboard players add #packtest.h_min bs.data 8 -scoreboard players add #packtest.v_min bs.data 8 -scoreboard players add #packtest.x_max bs.data 12 -scoreboard players add #packtest.y_max bs.data 12 -scoreboard players add #packtest.z_max bs.data 12 -scoreboard players add #packtest.h_max bs.data 12 -scoreboard players add #packtest.v_max bs.data 12 +scoreboard players operation #x bs.ctx -= @s bs.pos.x +scoreboard players operation #y bs.ctx -= @s bs.pos.y +scoreboard players operation #z bs.ctx -= @s bs.pos.z +scoreboard players operation #h bs.ctx -= @s bs.rot.h +scoreboard players operation #v bs.ctx -= @s bs.rot.v -assert score #packtest.x_min bs.data < @s bs.pos.x -assert score #packtest.y_min bs.data < @s bs.pos.y -assert score #packtest.z_min bs.data < @s bs.pos.z -assert score #packtest.h_min bs.data < @s bs.rot.h -assert score #packtest.v_min bs.data < @s bs.rot.v -assert score #packtest.x_max bs.data > @s bs.pos.x -assert score #packtest.y_max bs.data > @s bs.pos.y -assert score #packtest.z_max bs.data > @s bs.pos.z -assert score #packtest.h_max bs.data > @s bs.rot.h -assert score #packtest.v_max bs.data > @s bs.rot.v +assert score #x bs.ctx matches -11..-9 +assert score #y bs.ctx matches -11..-9 +assert score #z bs.ctx matches -11..-9 +assert score #h bs.ctx matches -11..-9 +assert score #v bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/pos_x.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/pos_x.mcfunction index 1c3e7df9fd..a0994c5692 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/pos_x.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/pos_x.mcfunction @@ -4,10 +4,7 @@ execute at @s positioned ~1 ~1 ~1 run function #bs.position:get_pos_x {scale:10} -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data run data get entity @s Pos[0] 10 +execute store result score #x bs.ctx run data get entity @s Pos[0] 10 +scoreboard players operation #x bs.ctx -= @s bs.pos.x -scoreboard players add #packtest.x_min bs.data 8 -scoreboard players add #packtest.x_max bs.data 12 - -assert score #packtest.x_min bs.data < @s bs.pos.x -assert score #packtest.x_max bs.data > @s bs.pos.x +assert score #x bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/pos_y.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/pos_y.mcfunction index c34e6c2499..d91c7b6103 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/pos_y.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/pos_y.mcfunction @@ -4,10 +4,7 @@ execute at @s positioned ~1 ~1 ~1 run function #bs.position:get_pos_y {scale:10} -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data run data get entity @s Pos[1] 10 +execute store result score #y bs.ctx run data get entity @s Pos[1] 10 +scoreboard players operation #y bs.ctx -= @s bs.pos.y -scoreboard players add #packtest.y_min bs.data 8 -scoreboard players add #packtest.y_max bs.data 12 - -assert score #packtest.y_min bs.data < @s bs.pos.y -assert score #packtest.y_max bs.data > @s bs.pos.y +assert score #y bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/pos_z.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/pos_z.mcfunction index e3d7e30c3e..6686b757c3 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/pos_z.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/pos_z.mcfunction @@ -4,10 +4,7 @@ execute at @s positioned ~1 ~1 ~1 run function #bs.position:get_pos_z {scale:10} -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data run data get entity @s Pos[2] 10 +execute store result score #z bs.ctx run data get entity @s Pos[2] 10 +scoreboard players operation #z bs.ctx -= @s bs.pos.z -scoreboard players add #packtest.z_min bs.data 8 -scoreboard players add #packtest.z_max bs.data 12 - -assert score #packtest.z_min bs.data < @s bs.pos.z -assert score #packtest.z_max bs.data > @s bs.pos.z +assert score #z bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/rot.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/rot.mcfunction index 423b60923c..5b147d3845 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/rot.mcfunction @@ -4,14 +4,11 @@ execute at @s rotated ~1 ~1 run function #bs.position:get_rot {scale:10} -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data run data get entity @s Rotation[0] 10 -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data run data get entity @s Rotation[1] 10 -scoreboard players add #packtest.h_min bs.data 8 -scoreboard players add #packtest.v_min bs.data 8 -scoreboard players add #packtest.h_max bs.data 12 -scoreboard players add #packtest.v_max bs.data 12 +execute store result score #h bs.ctx run data get entity @s Rotation[0] 10 +execute store result score #v bs.ctx run data get entity @s Rotation[1] 10 -assert score #packtest.h_min bs.data < @s bs.rot.h -assert score #packtest.v_min bs.data < @s bs.rot.v -assert score #packtest.h_max bs.data > @s bs.rot.h -assert score #packtest.v_max bs.data > @s bs.rot.v +scoreboard players operation #h bs.ctx -= @s bs.rot.h +scoreboard players operation #v bs.ctx -= @s bs.rot.v + +assert score #h bs.ctx matches -11..-9 +assert score #v bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/rot_h.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/rot_h.mcfunction index 00dcd0481f..26f1f3f8f6 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/rot_h.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/rot_h.mcfunction @@ -4,9 +4,7 @@ execute at @s rotated ~1 ~1 run function #bs.position:get_rot_h {scale:10} -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data run data get entity @s Rotation[0] 10 -scoreboard players add #packtest.h_min bs.data 8 -scoreboard players add #packtest.h_max bs.data 12 +execute store result score #h bs.ctx run data get entity @s Rotation[0] 10 +scoreboard players operation #h bs.ctx -= @s bs.rot.h -assert score #packtest.h_min bs.data < @s bs.rot.h -assert score #packtest.h_max bs.data > @s bs.rot.h +assert score #h bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/get/rot_v.mcfunction b/datapacks/Bookshelf/data/bs.position/test/get/rot_v.mcfunction index 2b23c2871f..5ecb3b2bb2 100644 --- a/datapacks/Bookshelf/data/bs.position/test/get/rot_v.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/get/rot_v.mcfunction @@ -4,9 +4,7 @@ execute at @s rotated ~1 ~1 run function #bs.position:get_rot_v {scale:10} -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data run data get entity @s Rotation[1] 10 -scoreboard players add #packtest.v_min bs.data 8 -scoreboard players add #packtest.v_max bs.data 12 +execute store result score #v bs.ctx run data get entity @s Rotation[1] 10 +scoreboard players operation #v bs.ctx -= @s bs.rot.v -assert score #packtest.v_min bs.data < @s bs.rot.v -assert score #packtest.v_max bs.data > @s bs.rot.v +assert score #v bs.ctx matches -11..-9 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/pos.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/pos.mcfunction index 4610fce825..46220e6eef 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/pos.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/pos.mcfunction @@ -2,26 +2,19 @@ # @batch bs.position # @dummy -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data store result score @s bs.pos.x run random value -10000..10000 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data store result score @s bs.pos.y run random value -10000..10000 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data store result score @s bs.pos.z run random value -10000..10000 +execute store result score @s bs.pos.x run random value -10000..10000 +execute store result score @s bs.pos.y run random value -10000..10000 +execute store result score @s bs.pos.z run random value -10000..10000 function #bs.position:set_pos {scale:.001} -execute store result score #packtest.x bs.data run data get entity @s Pos[0] 1000 -execute store result score #packtest.y bs.data run data get entity @s Pos[1] 1000 -execute store result score #packtest.z bs.data run data get entity @s Pos[2] 1000 -dummy @s leave +execute store result score #x bs.ctx run data get entity @s Pos[0] 1000 +execute store result score #y bs.ctx run data get entity @s Pos[1] 1000 +execute store result score #z bs.ctx run data get entity @s Pos[2] 1000 -scoreboard players remove #packtest.x_min bs.data 2 -scoreboard players remove #packtest.y_min bs.data 2 -scoreboard players remove #packtest.z_min bs.data 2 -scoreboard players add #packtest.x_max bs.data 2 -scoreboard players add #packtest.y_max bs.data 2 -scoreboard players add #packtest.z_max bs.data 2 +scoreboard players operation #x bs.ctx -= @s bs.pos.x +scoreboard players operation #y bs.ctx -= @s bs.pos.y +scoreboard players operation #z bs.ctx -= @s bs.pos.z -assert score #packtest.x_min bs.data < #packtest.x bs.data -assert score #packtest.y_min bs.data < #packtest.y bs.data -assert score #packtest.z_min bs.data < #packtest.z bs.data -assert score #packtest.x_max bs.data > #packtest.x bs.data -assert score #packtest.y_max bs.data > #packtest.y bs.data -assert score #packtest.z_max bs.data > #packtest.z bs.data +assert score #x bs.ctx matches -2..2 +assert score #y bs.ctx matches -2..2 +assert score #z bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/pos_and_rot.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/pos_and_rot.mcfunction index 8bfa20853b..3087ddb787 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/pos_and_rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/pos_and_rot.mcfunction @@ -1,39 +1,31 @@ # Position is set correctly # @batch bs.position -# @dummy -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data store result score @s bs.pos.x run random value -10000..10000 -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data store result score @s bs.pos.y run random value -10000..10000 -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data store result score @s bs.pos.z run random value -10000..10000 -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data store result score @s bs.rot.h run random value -10000..10000 -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data store result score @s bs.rot.v run random value -10000..10000 -function #bs.position:set_pos_and_rot {scale:.001} -execute store result score #packtest.x bs.data run data get entity @s Pos[0] 1000 -execute store result score #packtest.y bs.data run data get entity @s Pos[1] 1000 -execute store result score #packtest.z bs.data run data get entity @s Pos[2] 1000 -execute store result score #packtest.h bs.data run data get entity @s Rotation[0] 1000 -execute store result score #packtest.v bs.data run data get entity @s Rotation[1] 1000 +summon minecraft:marker ~ ~ ~ {Tags:["bs.packtest"]} -dummy @s leave +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.pos.x run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.pos.y run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.pos.z run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:set_pos_and_rot {scale:.001} -scoreboard players remove #packtest.x_min bs.data 2 -scoreboard players remove #packtest.y_min bs.data 2 -scoreboard players remove #packtest.z_min bs.data 2 -scoreboard players remove #packtest.h_min bs.data 2 -scoreboard players remove #packtest.v_min bs.data 2 -scoreboard players add #packtest.x_max bs.data 2 -scoreboard players add #packtest.y_max bs.data 2 -scoreboard players add #packtest.z_max bs.data 2 -scoreboard players add #packtest.h_max bs.data 2 -scoreboard players add #packtest.v_max bs.data 2 +execute store result score #x bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Pos[0] 1000 +execute store result score #y bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Pos[1] 1000 +execute store result score #z bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Pos[2] 1000 +execute store result score #h bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[0] 1000 +execute store result score #v bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[1] 1000 -assert score #packtest.x_min bs.data < #packtest.x bs.data -assert score #packtest.y_min bs.data < #packtest.y bs.data -assert score #packtest.z_min bs.data < #packtest.z bs.data -assert score #packtest.h_min bs.data < #packtest.h bs.data -assert score #packtest.v_min bs.data < #packtest.v bs.data -assert score #packtest.x_max bs.data > #packtest.x bs.data -assert score #packtest.y_max bs.data > #packtest.y bs.data -assert score #packtest.z_max bs.data > #packtest.z bs.data -assert score #packtest.h_max bs.data > #packtest.h bs.data -assert score #packtest.v_max bs.data > #packtest.v bs.data +scoreboard players operation #x bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.pos.x +scoreboard players operation #y bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.pos.y +scoreboard players operation #z bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.pos.z +scoreboard players operation #h bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h +scoreboard players operation #v bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v + +kill @n[type=minecraft:marker,tag=bs.packtest] + +assert score #x bs.ctx matches -2..2 +assert score #y bs.ctx matches -2..2 +assert score #z bs.ctx matches -2..2 +assert score #h bs.ctx matches -2..2 +assert score #v bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/pos_x.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/pos_x.mcfunction index 6bdbfed922..29299d7824 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/pos_x.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/pos_x.mcfunction @@ -2,14 +2,9 @@ # @batch bs.position # @dummy -execute store result score #packtest.x_min bs.data store result score #packtest.x_max bs.data store result score @s bs.pos.x run random value -10000..10000 +execute store result score @s bs.pos.x run random value -10000..10000 function #bs.position:set_pos_x {scale:.001} -execute store result score #packtest.x bs.data run data get entity @s Pos[0] 1000 +execute store result score #x bs.ctx run data get entity @s Pos[0] 1000 +scoreboard players operation #x bs.ctx -= @s bs.pos.x -dummy @s leave - -scoreboard players remove #packtest.x_min bs.data 2 -scoreboard players add #packtest.x_max bs.data 2 - -assert score #packtest.x_min bs.data < #packtest.x bs.data -assert score #packtest.x_max bs.data > #packtest.x bs.data +assert score #x bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/pos_y.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/pos_y.mcfunction index c28d19a402..718c3ca1e8 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/pos_y.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/pos_y.mcfunction @@ -2,14 +2,9 @@ # @batch bs.position # @dummy -execute store result score #packtest.y_min bs.data store result score #packtest.y_max bs.data store result score @s bs.pos.y run random value -10000..10000 +execute store result score @s bs.pos.y run random value -10000..10000 function #bs.position:set_pos_y {scale:.001} -execute store result score #packtest.y bs.data run data get entity @s Pos[1] 1000 +execute store result score #y bs.ctx run data get entity @s Pos[1] 1000 +scoreboard players operation #y bs.ctx -= @s bs.pos.y -dummy @s leave - -scoreboard players remove #packtest.y_min bs.data 2 -scoreboard players add #packtest.y_max bs.data 2 - -assert score #packtest.y_min bs.data < #packtest.y bs.data -assert score #packtest.y_max bs.data > #packtest.y bs.data +assert score #y bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/pos_z.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/pos_z.mcfunction index d9d4c4a485..a20272c32c 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/pos_z.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/pos_z.mcfunction @@ -2,14 +2,9 @@ # @batch bs.position # @dummy -execute store result score #packtest.z_min bs.data store result score #packtest.z_max bs.data store result score @s bs.pos.z run random value -10000..10000 +execute store result score @s bs.pos.z run random value -10000..10000 function #bs.position:set_pos_z {scale:.001} -execute store result score #packtest.z bs.data run data get entity @s Pos[2] 1000 +execute store result score #z bs.ctx run data get entity @s Pos[2] 1000 +scoreboard players operation #z bs.ctx -= @s bs.pos.z -dummy @s leave - -scoreboard players remove #packtest.z_min bs.data 2 -scoreboard players add #packtest.z_max bs.data 2 - -assert score #packtest.z_min bs.data < #packtest.z bs.data -assert score #packtest.z_max bs.data > #packtest.z bs.data +assert score #z bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/rot.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/rot.mcfunction index 992cfb8896..c708f314fe 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/rot.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/rot.mcfunction @@ -1,21 +1,19 @@ # Position is set correctly # @batch bs.position -# @dummy -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data store result score @s bs.rot.h run random value -10000..10000 -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data store result score @s bs.rot.v run random value -10000..10000 -function #bs.position:set_rot {scale:.001} -execute store result score #packtest.h bs.data run data get entity @s Rotation[0] 1000 -execute store result score #packtest.v bs.data run data get entity @s Rotation[1] 1000 +summon minecraft:marker ~ ~ ~ {Tags:["bs.packtest"]} -dummy @s leave +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h run random value -10000..10000 +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:set_rot {scale:.001} -scoreboard players remove #packtest.h_min bs.data 2 -scoreboard players remove #packtest.v_min bs.data 2 -scoreboard players add #packtest.h_max bs.data 2 -scoreboard players add #packtest.v_max bs.data 2 +execute store result score #h bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[0] 1000 +execute store result score #v bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[1] 1000 -assert score #packtest.h_min bs.data < #packtest.h bs.data -assert score #packtest.v_min bs.data < #packtest.v bs.data -assert score #packtest.h_max bs.data > #packtest.h bs.data -assert score #packtest.v_max bs.data > #packtest.v bs.data +scoreboard players operation #h bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h +scoreboard players operation #v bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v + +kill @n[type=minecraft:marker,tag=bs.packtest] + +assert score #h bs.ctx matches -2..2 +assert score #v bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/rot_h.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/rot_h.mcfunction index 999de05b37..44c934b7b9 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/rot_h.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/rot_h.mcfunction @@ -1,15 +1,13 @@ # Position is set correctly # @batch bs.position -# @dummy -execute store result score #packtest.h_min bs.data store result score #packtest.h_max bs.data store result score @s bs.rot.h run random value -10000..10000 -function #bs.position:set_rot_h {scale:.001} -execute store result score #packtest.h bs.data run data get entity @s Rotation[0] 1000 +summon minecraft:marker ~ ~ ~ {Tags:["bs.packtest"]} -dummy @s leave +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:set_rot_h {scale:.001} +execute store result score #h bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[0] 1000 +scoreboard players operation #h bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.h -scoreboard players remove #packtest.h_min bs.data 2 -scoreboard players add #packtest.h_max bs.data 2 +kill @n[type=minecraft:marker,tag=bs.packtest] -assert score #packtest.h_min bs.data < #packtest.h bs.data -assert score #packtest.h_max bs.data > #packtest.h bs.data +assert score #h bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.position/test/set/rot_v.mcfunction b/datapacks/Bookshelf/data/bs.position/test/set/rot_v.mcfunction index cea69b7e25..117f61b0cf 100644 --- a/datapacks/Bookshelf/data/bs.position/test/set/rot_v.mcfunction +++ b/datapacks/Bookshelf/data/bs.position/test/set/rot_v.mcfunction @@ -1,15 +1,13 @@ # Position is set correctly # @batch bs.position -# @dummy -execute store result score #packtest.v_min bs.data store result score #packtest.v_max bs.data store result score @s bs.rot.v run random value -10000..10000 -function #bs.position:set_rot {scale:.001} -execute store result score #packtest.v bs.data run data get entity @s Rotation[1] 1000 +summon minecraft:marker ~ ~ ~ {Tags:["bs.packtest"]} -dummy @s leave +execute store result score @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v run random value -10000..10000 +execute as @n[type=minecraft:marker,tag=bs.packtest] run function #bs.position:set_rot_v {scale:.001} +execute store result score #v bs.ctx run data get entity @n[type=minecraft:marker,tag=bs.packtest] Rotation[1] 1000 +scoreboard players operation #v bs.ctx -= @n[type=minecraft:marker,tag=bs.packtest] bs.rot.v -scoreboard players remove #packtest.v_min bs.data 2 -scoreboard players add #packtest.v_max bs.data 2 +kill @n[type=minecraft:marker,tag=bs.packtest] -assert score #packtest.v_min bs.data < #packtest.v bs.data -assert score #packtest.v_max bs.data > #packtest.v bs.data +assert score #v bs.ctx matches -2..2 diff --git a/datapacks/Bookshelf/data/bs.random/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.random/tags/function/exclusive_load.json new file mode 100644 index 0000000000..4e6155d084 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.random/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.random:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.random/tags/function/load.json b/datapacks/Bookshelf/data/bs.random/tags/function/load.json index daf7ba1efc..f42a6b211c 100644 --- a/datapacks/Bookshelf/data/bs.random/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.random/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.random:__load__", { "id": "#bs.log:load", diff --git a/datapacks/Bookshelf/data/bs.random/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.random/test/__boot__.mcfunction index 02b7c75f69..e47bb949dc 100644 --- a/datapacks/Bookshelf/data/bs.random/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.random/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.random -# @beforebatch function #bs.random:load +# @beforebatch function #bs.random:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.raycast/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.raycast/function/__load__.mcfunction index 09d0decaaf..7a9ee73e61 100644 --- a/datapacks/Bookshelf/data/bs.raycast/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/function/__load__.mcfunction @@ -16,6 +16,6 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] diff --git a/datapacks/Bookshelf/data/bs.raycast/function/check/block/shape.mcfunction b/datapacks/Bookshelf/data/bs.raycast/function/check/block/shape.mcfunction index d1fcd17856..62f6b7658c 100644 --- a/datapacks/Bookshelf/data/bs.raycast/function/check/block/shape.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/function/check/block/shape.mcfunction @@ -14,44 +14,44 @@ # ------------------------------------------------------------------------------------------------------------ # get hitbox coordinates -execute store result score #raycast.min_x bs.data run data get storage bs:out hitbox.shape[-1][0] 625000 -execute store result score #raycast.min_y bs.data run data get storage bs:out hitbox.shape[-1][1] 625000 -execute store result score #raycast.min_z bs.data run data get storage bs:out hitbox.shape[-1][2] 625000 -execute store result score #raycast.max_x bs.data run data get storage bs:out hitbox.shape[-1][3] 625000 -execute store result score #raycast.max_y bs.data run data get storage bs:out hitbox.shape[-1][4] 625000 -execute store result score #raycast.max_z bs.data run data get storage bs:out hitbox.shape[-1][5] 625000 +execute store result score #x bs.ctx run data get storage bs:out hitbox.shape[-1][0] 625000 +execute store result score #y bs.ctx run data get storage bs:out hitbox.shape[-1][1] 625000 +execute store result score #z bs.ctx run data get storage bs:out hitbox.shape[-1][2] 625000 +execute store result score #i bs.ctx run data get storage bs:out hitbox.shape[-1][3] 625000 +execute store result score #j bs.ctx run data get storage bs:out hitbox.shape[-1][4] 625000 +execute store result score #k bs.ctx run data get storage bs:out hitbox.shape[-1][5] 625000 data remove storage bs:out hitbox.shape[-1] # offset coordinates if needed -scoreboard players operation #raycast.min_x bs.data += #raycast.ox bs.data -scoreboard players operation #raycast.max_x bs.data += #raycast.ox bs.data -scoreboard players operation #raycast.min_z bs.data += #raycast.oz bs.data -scoreboard players operation #raycast.max_z bs.data += #raycast.oz bs.data +scoreboard players operation #x bs.ctx += #raycast.ox bs.data +scoreboard players operation #i bs.ctx += #raycast.ox bs.data +scoreboard players operation #z bs.ctx += #raycast.oz bs.data +scoreboard players operation #k bs.ctx += #raycast.oz bs.data # when step is negative, ray is one step further and hitbox coordinates should be negative -scoreboard players operation #raycast.min_x bs.data /= #raycast.ux bs.data -scoreboard players operation #raycast.max_x bs.data /= #raycast.ux bs.data -scoreboard players operation #raycast.min_y bs.data /= #raycast.uy bs.data -scoreboard players operation #raycast.max_y bs.data /= #raycast.uy bs.data -scoreboard players operation #raycast.min_z bs.data /= #raycast.uz bs.data -scoreboard players operation #raycast.max_z bs.data /= #raycast.uz bs.data +scoreboard players operation #x bs.ctx /= #raycast.ux bs.data +scoreboard players operation #i bs.ctx /= #raycast.ux bs.data +scoreboard players operation #y bs.ctx /= #raycast.uy bs.data +scoreboard players operation #j bs.ctx /= #raycast.uy bs.data +scoreboard players operation #z bs.ctx /= #raycast.uz bs.data +scoreboard players operation #k bs.ctx /= #raycast.uz bs.data # when step is negative we need to reverse near and far points -execute if score #raycast.ux bs.data matches ..-1 run scoreboard players operation #raycast.min_x bs.data >< #raycast.max_x bs.data -execute if score #raycast.uy bs.data matches ..-1 run scoreboard players operation #raycast.min_y bs.data >< #raycast.max_y bs.data -execute if score #raycast.uz bs.data matches ..-1 run scoreboard players operation #raycast.min_z bs.data >< #raycast.max_z bs.data +execute if score #raycast.ux bs.data matches ..-1 run scoreboard players operation #x bs.ctx >< #i bs.ctx +execute if score #raycast.uy bs.data matches ..-1 run scoreboard players operation #y bs.ctx >< #j bs.ctx +execute if score #raycast.uz bs.data matches ..-1 run scoreboard players operation #z bs.ctx >< #k bs.ctx # compute near and far points for AABB collision -execute store result score #raycast.tmin bs.data run scoreboard players operation #raycast.min_x bs.data += #raycast.lx bs.data -execute store result score #raycast.tmax bs.data run scoreboard players operation #raycast.max_x bs.data += #raycast.lx bs.data -scoreboard players operation #raycast.min_y bs.data += #raycast.ly bs.data -scoreboard players operation #raycast.max_y bs.data += #raycast.ly bs.data -scoreboard players operation #raycast.min_z bs.data += #raycast.lz bs.data -scoreboard players operation #raycast.max_z bs.data += #raycast.lz bs.data -scoreboard players operation #raycast.tmin bs.data > #raycast.min_y bs.data -scoreboard players operation #raycast.tmin bs.data > #raycast.min_z bs.data -scoreboard players operation #raycast.tmax bs.data < #raycast.max_y bs.data -scoreboard players operation #raycast.tmax bs.data < #raycast.max_z bs.data +execute store result score #raycast.tmin bs.data run scoreboard players operation #x bs.ctx += #raycast.lx bs.data +execute store result score #raycast.tmax bs.data run scoreboard players operation #i bs.ctx += #raycast.lx bs.data +scoreboard players operation #y bs.ctx += #raycast.ly bs.data +scoreboard players operation #j bs.ctx += #raycast.ly bs.data +scoreboard players operation #z bs.ctx += #raycast.lz bs.data +scoreboard players operation #k bs.ctx += #raycast.lz bs.data +scoreboard players operation #raycast.tmin bs.data > #y bs.ctx +scoreboard players operation #raycast.tmin bs.data > #z bs.ctx +scoreboard players operation #raycast.tmax bs.data < #j bs.ctx +scoreboard players operation #raycast.tmax bs.data < #k bs.ctx # if tmin <= tmax, ray is intersecting with AABB, if tmax < 0, ray is intersecting AABB, but the whole AABB is behind execute if score #raycast.tmax bs.data matches 0.. \ diff --git a/datapacks/Bookshelf/data/bs.raycast/function/check/entity/shape.mcfunction b/datapacks/Bookshelf/data/bs.raycast/function/check/entity/shape.mcfunction index b6ebf1fab0..0a7a0726f0 100644 --- a/datapacks/Bookshelf/data/bs.raycast/function/check/entity/shape.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/function/check/entity/shape.mcfunction @@ -14,38 +14,38 @@ # ------------------------------------------------------------------------------------------------------------ # get hitbox coordinates -execute store result score #raycast.min_x bs.data run data get storage bs:out hitbox.shape[-1][0] 625000 -execute store result score #raycast.min_y bs.data run data get storage bs:out hitbox.shape[-1][1] 625000 -execute store result score #raycast.min_z bs.data run data get storage bs:out hitbox.shape[-1][2] 625000 -execute store result score #raycast.max_x bs.data run data get storage bs:out hitbox.shape[-1][3] 625000 -execute store result score #raycast.max_y bs.data run data get storage bs:out hitbox.shape[-1][4] 625000 -execute store result score #raycast.max_z bs.data run data get storage bs:out hitbox.shape[-1][5] 625000 +execute store result score #x bs.ctx run data get storage bs:out hitbox.shape[-1][0] 625000 +execute store result score #y bs.ctx run data get storage bs:out hitbox.shape[-1][1] 625000 +execute store result score #z bs.ctx run data get storage bs:out hitbox.shape[-1][2] 625000 +execute store result score #i bs.ctx run data get storage bs:out hitbox.shape[-1][3] 625000 +execute store result score #j bs.ctx run data get storage bs:out hitbox.shape[-1][4] 625000 +execute store result score #k bs.ctx run data get storage bs:out hitbox.shape[-1][5] 625000 data remove storage bs:out hitbox.shape[-1] # when step is negative, ray is one step further and hitbox coordinates should be negative -scoreboard players operation #raycast.min_x bs.data /= #raycast.ux bs.data -scoreboard players operation #raycast.max_x bs.data /= #raycast.ux bs.data -scoreboard players operation #raycast.min_y bs.data /= #raycast.uy bs.data -scoreboard players operation #raycast.max_y bs.data /= #raycast.uy bs.data -scoreboard players operation #raycast.min_z bs.data /= #raycast.uz bs.data -scoreboard players operation #raycast.max_z bs.data /= #raycast.uz bs.data +scoreboard players operation #x bs.ctx /= #raycast.ux bs.data +scoreboard players operation #i bs.ctx /= #raycast.ux bs.data +scoreboard players operation #y bs.ctx /= #raycast.uy bs.data +scoreboard players operation #j bs.ctx /= #raycast.uy bs.data +scoreboard players operation #z bs.ctx /= #raycast.uz bs.data +scoreboard players operation #k bs.ctx /= #raycast.uz bs.data # when step is negative we need to reverse near and far points -execute if score #raycast.ux bs.data matches ..-1 run scoreboard players operation #raycast.min_x bs.data >< #raycast.max_x bs.data -execute if score #raycast.uy bs.data matches ..-1 run scoreboard players operation #raycast.min_y bs.data >< #raycast.max_y bs.data -execute if score #raycast.uz bs.data matches ..-1 run scoreboard players operation #raycast.min_z bs.data >< #raycast.max_z bs.data +execute if score #raycast.ux bs.data matches ..-1 run scoreboard players operation #x bs.ctx >< #i bs.ctx +execute if score #raycast.uy bs.data matches ..-1 run scoreboard players operation #y bs.ctx >< #j bs.ctx +execute if score #raycast.uz bs.data matches ..-1 run scoreboard players operation #z bs.ctx >< #k bs.ctx # compute near and far points for AABB collision -execute store result score #raycast.tmin bs.data run scoreboard players operation #raycast.min_x bs.data += #raycast.lx bs.data -execute store result score #raycast.tmax bs.data run scoreboard players operation #raycast.max_x bs.data += #raycast.lx bs.data -scoreboard players operation #raycast.min_y bs.data += #raycast.ly bs.data -scoreboard players operation #raycast.max_y bs.data += #raycast.ly bs.data -scoreboard players operation #raycast.min_z bs.data += #raycast.lz bs.data -scoreboard players operation #raycast.max_z bs.data += #raycast.lz bs.data -scoreboard players operation #raycast.tmin bs.data > #raycast.min_y bs.data -scoreboard players operation #raycast.tmin bs.data > #raycast.min_z bs.data -scoreboard players operation #raycast.tmax bs.data < #raycast.max_y bs.data -scoreboard players operation #raycast.tmax bs.data < #raycast.max_z bs.data +execute store result score #raycast.tmin bs.data run scoreboard players operation #x bs.ctx += #raycast.lx bs.data +execute store result score #raycast.tmax bs.data run scoreboard players operation #i bs.ctx += #raycast.lx bs.data +scoreboard players operation #y bs.ctx += #raycast.ly bs.data +scoreboard players operation #j bs.ctx += #raycast.ly bs.data +scoreboard players operation #z bs.ctx += #raycast.lz bs.data +scoreboard players operation #k bs.ctx += #raycast.lz bs.data +scoreboard players operation #raycast.tmin bs.data > #y bs.ctx +scoreboard players operation #raycast.tmin bs.data > #z bs.ctx +scoreboard players operation #raycast.tmax bs.data < #j bs.ctx +scoreboard players operation #raycast.tmax bs.data < #k bs.ctx # if tmin <= tmax, ray is intersecting with AABB, if tmax < 0, ray is intersecting AABB, but the whole AABB is behind execute if score #raycast.tmax bs.data matches 0.. \ diff --git a/datapacks/Bookshelf/data/bs.raycast/function/check/entity/size.mcfunction b/datapacks/Bookshelf/data/bs.raycast/function/check/entity/size.mcfunction index 878278e833..4b295d958b 100644 --- a/datapacks/Bookshelf/data/bs.raycast/function/check/entity/size.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/function/check/entity/size.mcfunction @@ -17,12 +17,12 @@ tag @s add bs.raycast.omit # get the entity relative coordinates execute in minecraft:overworld positioned as @s as B5-0-0-0-1 run function bs.raycast:compute/entity_rpos with storage bs:data raycast -execute store result score #raycast.min_x bs.data run data get storage bs:ctx _[0] 10000000 -execute store result score #raycast.min_y bs.data run data get storage bs:ctx _[1] 10000000 -execute store result score #raycast.min_z bs.data run data get storage bs:ctx _[2] 10000000 -execute store result score #raycast.max_x bs.data run scoreboard players operation #raycast.min_x bs.data += #raycast.x bs.data -execute store result score #raycast.max_y bs.data run scoreboard players operation #raycast.min_y bs.data += #raycast.y bs.data -execute store result score #raycast.max_z bs.data run scoreboard players operation #raycast.min_z bs.data += #raycast.z bs.data +execute store result score #x bs.ctx run data get storage bs:ctx _[0] 10000000 +execute store result score #y bs.ctx run data get storage bs:ctx _[1] 10000000 +execute store result score #z bs.ctx run data get storage bs:ctx _[2] 10000000 +execute store result score #i bs.ctx run scoreboard players operation #x bs.ctx += #raycast.x bs.data +execute store result score #j bs.ctx run scoreboard players operation #y bs.ctx += #raycast.y bs.data +execute store result score #k bs.ctx run scoreboard players operation #z bs.ctx += #raycast.z bs.data # compute hitbox coordinates (using width and height) execute store result score #raycast.h bs.data run data get storage bs:out hitbox.height 10000 @@ -30,32 +30,32 @@ execute store result score #raycast.w bs.data run data get storage bs:out hitbox execute store result score #raycast.s bs.data run data get storage bs:out hitbox.scale 1000 scoreboard players operation #raycast.h bs.data *= #raycast.s bs.data scoreboard players operation #raycast.w bs.data *= #raycast.s bs.data -scoreboard players operation #raycast.min_x bs.data -= #raycast.w bs.data -scoreboard players operation #raycast.min_z bs.data -= #raycast.w bs.data -scoreboard players operation #raycast.max_x bs.data += #raycast.w bs.data -scoreboard players operation #raycast.max_y bs.data += #raycast.h bs.data -scoreboard players operation #raycast.max_z bs.data += #raycast.w bs.data +scoreboard players operation #x bs.ctx -= #raycast.w bs.data +scoreboard players operation #z bs.ctx -= #raycast.w bs.data +scoreboard players operation #i bs.ctx += #raycast.w bs.data +scoreboard players operation #j bs.ctx += #raycast.h bs.data +scoreboard players operation #k bs.ctx += #raycast.w bs.data # when step is negative, points are negative so we get the absolute value -scoreboard players operation #raycast.min_x bs.data /= #raycast.ux bs.data -scoreboard players operation #raycast.max_x bs.data /= #raycast.ux bs.data -scoreboard players operation #raycast.min_y bs.data /= #raycast.uy bs.data -scoreboard players operation #raycast.max_y bs.data /= #raycast.uy bs.data -scoreboard players operation #raycast.min_z bs.data /= #raycast.uz bs.data -scoreboard players operation #raycast.max_z bs.data /= #raycast.uz bs.data +scoreboard players operation #x bs.ctx /= #raycast.ux bs.data +scoreboard players operation #i bs.ctx /= #raycast.ux bs.data +scoreboard players operation #y bs.ctx /= #raycast.uy bs.data +scoreboard players operation #j bs.ctx /= #raycast.uy bs.data +scoreboard players operation #z bs.ctx /= #raycast.uz bs.data +scoreboard players operation #k bs.ctx /= #raycast.uz bs.data # when step is negative we need to reverse near and far points -execute if score #raycast.ux bs.data matches ..-1 run scoreboard players operation #raycast.min_x bs.data >< #raycast.max_x bs.data -execute if score #raycast.uy bs.data matches ..-1 run scoreboard players operation #raycast.min_y bs.data >< #raycast.max_y bs.data -execute if score #raycast.uz bs.data matches ..-1 run scoreboard players operation #raycast.min_z bs.data >< #raycast.max_z bs.data +execute if score #raycast.ux bs.data matches ..-1 run scoreboard players operation #x bs.ctx >< #i bs.ctx +execute if score #raycast.uy bs.data matches ..-1 run scoreboard players operation #y bs.ctx >< #j bs.ctx +execute if score #raycast.uz bs.data matches ..-1 run scoreboard players operation #z bs.ctx >< #k bs.ctx # compute near and far points for AABB collision -scoreboard players operation #raycast.tmin bs.data = #raycast.min_x bs.data -scoreboard players operation #raycast.tmax bs.data = #raycast.max_x bs.data -scoreboard players operation #raycast.tmin bs.data > #raycast.min_y bs.data -scoreboard players operation #raycast.tmin bs.data > #raycast.min_z bs.data -scoreboard players operation #raycast.tmax bs.data < #raycast.max_y bs.data -scoreboard players operation #raycast.tmax bs.data < #raycast.max_z bs.data +scoreboard players operation #raycast.tmin bs.data = #x bs.ctx +scoreboard players operation #raycast.tmax bs.data = #i bs.ctx +scoreboard players operation #raycast.tmin bs.data > #y bs.ctx +scoreboard players operation #raycast.tmin bs.data > #z bs.ctx +scoreboard players operation #raycast.tmax bs.data < #j bs.ctx +scoreboard players operation #raycast.tmax bs.data < #k bs.ctx # if tmin <= tmax, ray is intersecting with AABB, if tmax < 0, ray is intersecting AABB, but the whole AABB is behind execute if score #raycast.tmax bs.data matches 0.. \ diff --git a/datapacks/Bookshelf/data/bs.raycast/function/collide/shape.mcfunction b/datapacks/Bookshelf/data/bs.raycast/function/collide/shape.mcfunction index 30e256cf79..20f78e4656 100644 --- a/datapacks/Bookshelf/data/bs.raycast/function/collide/shape.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/function/collide/shape.mcfunction @@ -18,6 +18,6 @@ scoreboard players operation #raycast.distance bs.data = #raycast.tmin bs.data # get the normal of the surface that was hit data modify storage bs:out raycast.hit_normal set value [0,0,0] -execute if score #raycast.distance bs.data = #raycast.min_x bs.data store result storage bs:out raycast.hit_normal[0] int -1 run data get storage bs:data raycast.sx -execute if score #raycast.distance bs.data = #raycast.min_y bs.data store result storage bs:out raycast.hit_normal[1] int -1 run data get storage bs:data raycast.sy -execute if score #raycast.distance bs.data = #raycast.min_z bs.data store result storage bs:out raycast.hit_normal[2] int -1 run data get storage bs:data raycast.sz +execute if score #raycast.distance bs.data = #x bs.ctx store result storage bs:out raycast.hit_normal[0] int -1 run data get storage bs:data raycast.sx +execute if score #raycast.distance bs.data = #y bs.ctx store result storage bs:out raycast.hit_normal[1] int -1 run data get storage bs:data raycast.sy +execute if score #raycast.distance bs.data = #z bs.ctx store result storage bs:out raycast.hit_normal[2] int -1 run data get storage bs:data raycast.sz diff --git a/datapacks/Bookshelf/data/bs.raycast/function/collide/size.mcfunction b/datapacks/Bookshelf/data/bs.raycast/function/collide/size.mcfunction index 67e6c1bbe8..717801b35d 100644 --- a/datapacks/Bookshelf/data/bs.raycast/function/collide/size.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/function/collide/size.mcfunction @@ -18,8 +18,8 @@ scoreboard players operation #raycast.distance bs.data = #raycast.tmin bs.data # get the normal of the surface that was hit data modify storage bs:out raycast.hit_normal set value [0,0,0] -execute if score #raycast.distance bs.data = #raycast.min_x bs.data store result storage bs:out raycast.hit_normal[0] int -1 run data get storage bs:data raycast.sx -execute if score #raycast.distance bs.data = #raycast.min_y bs.data store result storage bs:out raycast.hit_normal[1] int -1 run data get storage bs:data raycast.sy -execute if score #raycast.distance bs.data = #raycast.min_z bs.data store result storage bs:out raycast.hit_normal[2] int -1 run data get storage bs:data raycast.sz +execute if score #raycast.distance bs.data = #x bs.ctx store result storage bs:out raycast.hit_normal[0] int -1 run data get storage bs:data raycast.sx +execute if score #raycast.distance bs.data = #y bs.ctx store result storage bs:out raycast.hit_normal[1] int -1 run data get storage bs:data raycast.sy +execute if score #raycast.distance bs.data = #z bs.ctx store result storage bs:out raycast.hit_normal[2] int -1 run data get storage bs:data raycast.sz function bs.raycast:collide/entity diff --git a/datapacks/Bookshelf/data/bs.raycast/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.raycast/tags/function/exclusive_load.json new file mode 100644 index 0000000000..d3292032e0 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.raycast/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.raycast:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.raycast/tags/function/load.json b/datapacks/Bookshelf/data/bs.raycast/tags/function/load.json index 571f885050..65d92b428c 100644 --- a/datapacks/Bookshelf/data/bs.raycast/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.raycast/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "#bs.hitbox:load", "bs.raycast:__load__" ] diff --git a/datapacks/Bookshelf/data/bs.raycast/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.raycast/test/__boot__.mcfunction index ace3c7b7ff..2b4381ea9b 100644 --- a/datapacks/Bookshelf/data/bs.raycast/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.raycast -# @beforebatch function #bs.raycast:load +# @beforebatch function #bs.raycast:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.raycast/test/entity/tagged_entities.mcfunction b/datapacks/Bookshelf/data/bs.raycast/test/entity/tagged_entities.mcfunction index 510e92f8da..135023c916 100644 --- a/datapacks/Bookshelf/data/bs.raycast/test/entity/tagged_entities.mcfunction +++ b/datapacks/Bookshelf/data/bs.raycast/test/entity/tagged_entities.mcfunction @@ -2,6 +2,6 @@ # @batch bs.raycast summon minecraft:armor_stand ~.5 ~ ~.5 -summon minecraft:armor_stand ~.5 ~ ~1.5 {UUID:[I;-1170214687,114379287,-1715952819,-561845151],Tags:["packtest"]} -execute positioned ~.5 ~ ~-.5 run function #bs.raycast:run {with:{blocks:false,entities:"packtest"}} +summon minecraft:armor_stand ~.5 ~ ~1.5 {UUID:[I;-1170214687,114379287,-1715952819,-561845151],Tags:["bs.packtest"]} +execute positioned ~.5 ~ ~-.5 run function #bs.raycast:run {with:{blocks:false,entities:"bs.packtest"}} assert data storage bs:out raycast{targeted_entity:[I;-1170214687,114379287,-1715952819,-561845151]} diff --git a/datapacks/Bookshelf/data/bs.schedule/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/__load__.mcfunction index c2a547521c..8db3770e3a 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/__load__.mcfunction @@ -16,10 +16,11 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] +scoreboard objectives add bs.schedule.id dummy [{"text":"BS ","color":"dark_gray"},{"text":"Schedule ID","color":"aqua"}] data modify storage bs:const schedule.units set value [ \ {name:"t",scale:1}, \ diff --git a/datapacks/Bookshelf/data/bs.schedule/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/__unload__.mcfunction index ce912faceb..826dc884f2 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/__unload__.mcfunction @@ -15,11 +15,12 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/schedule.html # ------------------------------------------------------------------------------------------------------------ -kill B5-0-0-0-2 +kill B5-0-0-0-1 forceload remove -30000000 1600 scoreboard objectives remove bs.ctx scoreboard objectives remove bs.data +scoreboard objectives remove bs.schedule.id data remove storage bs:data schedule data remove storage bs:const schedule diff --git a/datapacks/Bookshelf/data/bs.schedule/function/execute/callback.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/execute/callback.mcfunction index 2b3c526186..e02a21caa9 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/execute/callback.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/execute/callback.mcfunction @@ -17,4 +17,4 @@ data modify storage bs:data schedule.slice set value [] execute store result storage bs:ctx y int 1 run time query gametime function bs.schedule:execute/slice with storage bs:ctx -execute if data storage bs:data schedule.slice[-1] run function bs.schedule:execute/loop with storage bs:data schedule.slice[-1] +execute if data storage bs:data schedule.slice[-1] as B5-0-0-0-1 run function bs.schedule:execute/loop diff --git a/datapacks/Bookshelf/data/bs.schedule/function/execute/loop.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/execute/loop.mcfunction index 0f1ada0907..541333e9b8 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/execute/loop.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/execute/loop.mcfunction @@ -13,7 +13,10 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$$(command) +data modify entity @s {} merge from storage bs:data schedule.slice[-1] +execute if data storage bs:data schedule.slice[-1].esid run function bs.schedule:execute/run/with_entity with storage bs:data schedule.slice[-1] +execute unless data storage bs:data schedule.slice[-1].esid run function bs.schedule:execute/run/without_entity with storage bs:data schedule.slice[-1] data remove storage bs:data schedule.slice[-1] -execute if data storage bs:data schedule.slice[-1] run function bs.schedule:execute/loop with storage bs:data schedule.slice[-1] +execute if data storage bs:data schedule.slice[-1] run return run function bs.schedule:execute/loop +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.schedule/function/execute/run/with_entity.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/execute/run/with_entity.mcfunction new file mode 100644 index 0000000000..98080e7f97 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.schedule/function/execute/run/with_entity.mcfunction @@ -0,0 +1,16 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +$execute at @s in $(dimension) as @e[predicate=bs.schedule:target] run $(command) diff --git a/datapacks/Bookshelf/data/bs.schedule/function/execute/run/without_entity.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/execute/run/without_entity.mcfunction new file mode 100644 index 0000000000..33ced37088 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.schedule/function/execute/run/without_entity.mcfunction @@ -0,0 +1,16 @@ +# ------------------------------------------------------------------------------------------------------------ +# Copyright (c) 2024 Gunivers +# +# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). +# +# This source code is subject to the terms of the Mozilla Public License, v. 2.0. +# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +# Conditions: +# - You may use this file in compliance with the MPL v2.0 +# - Any modifications must be documented and disclosed under the same license +# +# For more details, refer to the MPL v2.0. +# ------------------------------------------------------------------------------------------------------------ + +$execute at @s in $(dimension) run $(command) diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_entity.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_entity.mcfunction deleted file mode 100644 index fb1b3e351e..0000000000 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_entity.mcfunction +++ /dev/null @@ -1,19 +0,0 @@ -# ------------------------------------------------------------------------------------------------------------ -# Copyright (c) 2024 Gunivers -# -# This file is part of the Bookshelf project (https://github.com/Gunivers/Bookshelf). -# -# This source code is subject to the terms of the Mozilla Public License, v. 2.0. -# If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# Conditions: -# - You may use this file in compliance with the MPL v2.0 -# - Any modifications must be documented and disclosed under the same license -# -# For more details, refer to the MPL v2.0. -# ------------------------------------------------------------------------------------------------------------ - -tag @s add bs.schedule.this -data modify entity B5-0-0-0-2 text set value '{"selector":"@n[tag=bs.schedule.this,sort=arbitrary]"}' -tag @s remove bs.schedule.this -function bs.schedule:schedule/context/format/entity with entity B5-0-0-0-2 diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_position.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_position.mcfunction index 04cb1206f1..d3742a07ba 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_position.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/schedule/context/get_position.mcfunction @@ -14,10 +14,6 @@ # ------------------------------------------------------------------------------------------------------------ tp @s ~ ~ ~ ~ ~ -data modify storage bs:ctx _ merge from entity @s -data modify storage bs:ctx _.x set from storage bs:ctx _.Pos[0] -data modify storage bs:ctx _.y set from storage bs:ctx _.Pos[1] -data modify storage bs:ctx _.z set from storage bs:ctx _.Pos[2] -data modify storage bs:ctx _.h set from storage bs:ctx _.Rotation[0] -data modify storage bs:ctx _.v set from storage bs:ctx _.Rotation[1] -kill @s +data modify storage bs:ctx _.Pos set from entity @s Pos +data modify storage bs:ctx _.Rotation set from entity @s Rotation +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/schedule.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/schedule/schedule.mcfunction index 481f9a430d..b47ced2cc1 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/schedule.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/schedule/schedule.mcfunction @@ -15,27 +15,25 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/schedule.html#schedule # ------------------------------------------------------------------------------------------------------------ -$data modify storage bs:ctx _ set value $(with) +data modify storage bs:ctx _ set value {time:1,unit:"tick"} +$data modify storage bs:ctx _ merge value $(with) # Handle the unit, return early on failure -scoreboard players set #s bs.ctx 1 execute if data storage bs:ctx _.unit run function bs.schedule:schedule/unit/handle with storage bs:ctx _ -execute if score #s bs.ctx matches 0 run return fail +execute if score #s bs.ctx matches 0 run return run function #bs.log:error {namespace:"bs.schedule", tag:"schedule", path:"#bs.schedule:schedule", message:'["Unit \\\'",{"storage":"bs:ctx","nbt":"_.unit"},"\\\' is not supported."]'} +data remove storage bs:ctx _.unit # Schedule the callback, update the gametime and add a unique id -execute store result storage bs:data schedule.entry.time int 1 run function bs.schedule:schedule/callback with storage bs:ctx _ -execute store result storage bs:data schedule.entry.suid int 1 run scoreboard players add #schedule.suid bs.data 1 +execute store result storage bs:ctx _.time int 1 run function bs.schedule:schedule/callback with storage bs:ctx _ +execute store result storage bs:ctx _.suid int 1 run scoreboard players add #schedule.suid bs.data 1 # Get the current context (entity location and selector) -execute store success score #s bs.ctx if entity @s function bs.schedule:schedule/context/get_dimension -execute summon minecraft:marker run function bs.schedule:schedule/context/get_position -execute if score #s bs.ctx matches 0 run function bs.schedule:schedule/context/format/command with storage bs:ctx _ -execute if score #s bs.ctx matches 1 run function bs.schedule:schedule/context/get_entity -execute if score #s bs.ctx matches 1 run function bs.schedule:schedule/context/format/as_command with storage bs:ctx _ +execute in minecraft:overworld as B5-0-0-0-1 run function bs.schedule:schedule/context/get_position +execute unless score @s bs.schedule.id matches -2147483648.. store result score @s bs.schedule.id run scoreboard players add #counter bs.schedule.id 1 +execute if entity @s store result storage bs:ctx _.esid int 1 run scoreboard players get @s bs.schedule.id # Add the command to the schedule queue -data modify storage bs:data schedule.entry.id set from storage bs:ctx _.id -data modify storage bs:data schedule.queue prepend from storage bs:data schedule.entry +data modify storage bs:data schedule.queue prepend from storage bs:ctx _ function #bs.log:info {namespace:"bs.schedule", tag:"schedule", path:"#bs.schedule:schedule", message:'"Command scheduled."'} -return run data get storage bs:data schedule.entry.suid 1 +return run scoreboard players get #schedule.suid bs.data diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/handle.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/handle.mcfunction index e696b604b5..fa76b55691 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/handle.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/handle.mcfunction @@ -14,5 +14,3 @@ # ------------------------------------------------------------------------------------------------------------ $execute store success score #s bs.ctx run function bs.schedule:schedule/unit/normalize with storage bs:const schedule.units[{name:'$(unit)'}] -execute if score #s bs.ctx matches 0 run function #bs.log:error {namespace:"bs.schedule", tag:"schedule", path:"#bs.schedule:schedule", message:'["Unit \\\'",{"storage":"bs:ctx","nbt":"_.unit"},"\\\' is not supported."]'} -data remove storage bs:ctx _.unit diff --git a/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/normalize.mcfunction b/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/normalize.mcfunction index f5bb713a4d..36a3093ee2 100644 --- a/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/normalize.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/function/schedule/unit/normalize.mcfunction @@ -13,4 +13,4 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ -$execute store result storage bs:ctx _.time int $(scale) run data get storage bs:ctx _.time +$return run execute store result storage bs:ctx _.time int $(scale) run data get storage bs:ctx _.time diff --git a/datapacks/Bookshelf/data/bs.schedule/predicate/target.json b/datapacks/Bookshelf/data/bs.schedule/predicate/target.json new file mode 100644 index 0000000000..d746adee2c --- /dev/null +++ b/datapacks/Bookshelf/data/bs.schedule/predicate/target.json @@ -0,0 +1,18 @@ +{ + "condition": "minecraft:entity_scores", + "entity": "this", + "scores": { + "bs.schedule.id": { + "min": { + "type": "minecraft:storage", + "storage": "bs:data", + "path": "schedule.slice[-1].esid" + }, + "max": { + "type": "minecraft:storage", + "storage": "bs:data", + "path": "schedule.slice[-1].esid" + } + } + } +} diff --git a/datapacks/Bookshelf/data/bs.schedule/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.schedule/tags/function/exclusive_load.json new file mode 100644 index 0000000000..159c6137a0 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.schedule/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.schedule:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.schedule/tags/function/load.json b/datapacks/Bookshelf/data/bs.schedule/tags/function/load.json index 03627772ca..e225e10095 100644 --- a/datapacks/Bookshelf/data/bs.schedule/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.schedule/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.schedule:__load__", { "id": "#bs.log:load", diff --git a/datapacks/Bookshelf/data/bs.schedule/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.schedule/test/__boot__.mcfunction index 4e54ce95c3..4882d08d7e 100644 --- a/datapacks/Bookshelf/data/bs.schedule/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.schedule/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.schedule -# @beforebatch function #bs.schedule:load +# @beforebatch function #bs.schedule:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.sidebar/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.sidebar/function/__load__.mcfunction index 46e4a350fb..9ceb5f5918 100644 --- a/datapacks/Bookshelf/data/bs.sidebar/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.sidebar/function/__load__.mcfunction @@ -16,7 +16,7 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] execute unless data storage bs:const log.messages[{namespaces: ["bs.sidebar"]}] run data modify storage bs:const log.messages[{namespaces: ["bs"]}].namespaces append value "bs.sidebar" diff --git a/datapacks/Bookshelf/data/bs.sidebar/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.sidebar/function/__unload__.mcfunction index 79e22ea20a..2588ecab3e 100644 --- a/datapacks/Bookshelf/data/bs.sidebar/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.sidebar/function/__unload__.mcfunction @@ -18,6 +18,6 @@ kill B5-0-0-0-2 forceload remove -30000000 1600 -scoreboard objectives remove bs.data +scoreboard objectives remove bs.ctx data remove storage bs:data sidebar diff --git a/datapacks/Bookshelf/data/bs.sidebar/function/create/create.mcfunction b/datapacks/Bookshelf/data/bs.sidebar/function/create/create.mcfunction index f1c31c6bde..fec7984667 100644 --- a/datapacks/Bookshelf/data/bs.sidebar/function/create/create.mcfunction +++ b/datapacks/Bookshelf/data/bs.sidebar/function/create/create.mcfunction @@ -18,34 +18,34 @@ $data modify storage bs:ctx _ set value {id:'$(objective)',name:'$(display_name)',contents:$(contents)} # check that the objective format is valid -execute store success score #success bs.data run function bs.sidebar:create/check/objective with storage bs:ctx _ -execute unless score #success bs.data matches 1 run return run function #bs.log:error { \ +execute store success score #s bs.ctx run function bs.sidebar:create/check/objective with storage bs:ctx _ +execute unless score #s bs.ctx matches 1 run return run function #bs.log:error { \ namespace: "bs.sidebar", \ path: "#bs.sidebar:create", \ tag: "create", \ - message: '[{"text":"The objective \'","color":"red"},{"storage":"bs:ctx","nbt":"_.id"},{"text":"\' contain invalid characters"}]', \ + message: '[{"text":"The objective [","color":"red"},{"storage":"bs:ctx","nbt":"_.id"},{"text":"] contain invalid characters."}]', \ } # check that the name format is valid -execute store success score #success bs.data run function bs.sidebar:create/check/name with storage bs:ctx _ -execute unless score #success bs.data matches 1 run return run function #bs.log:error { \ +execute store success score #s bs.ctx run function bs.sidebar:create/check/name with storage bs:ctx _ +execute unless score #s bs.ctx matches 1 run return run function #bs.log:error { \ namespace: "bs.sidebar", \ path: "#bs.sidebar:create", \ tag: "create", \ - message: '[{"text":"The name \'","color":"red"},{"storage":"bs:ctx","nbt":"_.name"},{"text":"\' must be a valid JSON text component."}]', \ + message: '[{"text":"The name [","color":"red"},{"storage":"bs:ctx","nbt":"_.name"},{"text":"] must be a valid JSON text component."}]', \ } # check that the contents have between 1 and 15 entries -execute store result score #sidebar.lines bs.data if data storage bs:ctx _.contents[] -execute unless score #sidebar.lines bs.data matches 1..15 run return run function #bs.log:error { \ +execute store result score #l bs.ctx if data storage bs:ctx _.contents[] +execute unless score #l bs.ctx matches 1..15 run return run function #bs.log:error { \ namespace: "bs.sidebar", \ path: "#bs.sidebar:create", \ tag: "create", \ - message: '[{"text":"The contents must have between 1 and 15 lines (","color":"red"},{"score":{"name":"#sidebar.lines","objective":"bs.data"}},{"text":" given)."}]', \ + message: '[{"text":"The contents must have between 1 and 15 lines (","color":"red"},{"score":{"name":"#l","objective":"bs.ctx"}},{"text":" given)."}]', \ } # start the recursion to create each line abort if a line failed execute as B5-0-0-0-2 run function bs.sidebar:create/recurse/start with storage bs:ctx _ data remove entity @s CustomName -execute if score #sidebar.lines bs.data = #sidebar.line bs.data run return 1 +execute if score #l bs.ctx = #i bs.ctx run return 1 return run function bs.sidebar:create/recurse/abort with storage bs:ctx _ diff --git a/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/abort.mcfunction b/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/abort.mcfunction index c0286d371f..d5519f4f9d 100644 --- a/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/abort.mcfunction +++ b/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/abort.mcfunction @@ -20,5 +20,5 @@ function #bs.log:error { \ namespace: "bs.sidebar", \ path: "#bs.sidebar:create", \ tag: "create", \ - message: '[{"text":"The line at position ","color":"red"},{"score":{"name":"#sidebar.line","objective":"bs.data"}},{"text":" must have valid JSON text components."}]', \ + message: '[{"text":"The line at position ","color":"red"},{"score":{"name":"#i","objective":"bs.ctx"}},{"text":" must have valid JSON text components."}]', \ } diff --git a/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/next.mcfunction b/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/next.mcfunction index 0123d5a2bf..5546586bfd 100644 --- a/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/next.mcfunction +++ b/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/next.mcfunction @@ -17,9 +17,9 @@ $scoreboard players set $$(line) $(id) -$(line) $scoreboard players display name $$(line) $(id) $(left) $scoreboard players display numberformat $$(line) $(id) fixed $(right) -$execute if score #sidebar.dynleft bs.data matches 1 run data modify storage bs:data sidebar[{id:'$(id)'}].dyn append value {cmd:'scoreboard players display name $$(line) $(id)',text:'$(dynleft)'} -$execute if score #sidebar.dynright bs.data matches 1 run data modify storage bs:data sidebar[{id:'$(id)'}].dyn append value {cmd:'scoreboard players display numberformat $$(line) $(id) fixed',text:'$(dynright)'} -execute store result storage bs:ctx _.line int 1 run scoreboard players add #sidebar.line bs.data 1 +$execute if score #l bs.ctx matches 1 run data modify storage bs:data sidebar[{id:'$(id)'}].dyn append value {cmd:'scoreboard players display name $$(line) $(id)',text:'$(dynleft)'} +$execute if score #r bs.ctx matches 1 run data modify storage bs:data sidebar[{id:'$(id)'}].dyn append value {cmd:'scoreboard players display numberformat $$(line) $(id) fixed',text:'$(dynright)'} +execute store result storage bs:ctx _.line int 1 run scoreboard players add #i bs.ctx 1 data remove storage bs:ctx _.contents[0] execute unless data storage bs:ctx _.contents[0] run return 1 @@ -29,13 +29,13 @@ data modify storage bs:ctx _.dynleft set from storage bs:ctx _.contents[0][0] data modify entity @s CustomName set from storage bs:ctx _.dynleft data modify entity @s text set from storage bs:ctx _.dynleft data modify storage bs:ctx _.left set from entity @s CustomName -execute store success score #sidebar.dynleft bs.data run data modify storage bs:ctx _.left set from entity @s text +execute store success score #l bs.ctx run data modify storage bs:ctx _.left set from entity @s text data modify storage bs:ctx _.dynright set value '""' data modify storage bs:ctx _.dynright set from storage bs:ctx _.contents[0][1] data modify entity @s CustomName set from storage bs:ctx _.dynright data modify entity @s text set from storage bs:ctx _.dynright data modify storage bs:ctx _.right set from entity @s CustomName -execute store success score #sidebar.dynright bs.data run data modify storage bs:ctx _.right set from entity @s text +execute store success score #r bs.ctx run data modify storage bs:ctx _.right set from entity @s text function bs.sidebar:create/recurse/next with storage bs:ctx _ diff --git a/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/start.mcfunction b/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/start.mcfunction index 382ba4228b..6a0f311158 100644 --- a/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/start.mcfunction +++ b/datapacks/Bookshelf/data/bs.sidebar/function/create/recurse/start.mcfunction @@ -17,20 +17,20 @@ $scoreboard objectives add $(id) dummy $scoreboard objectives modify $(id) displayname $(name) $data remove storage bs:data sidebar[{id:'$(id)'}] -execute store result storage bs:ctx _.line int 1 run scoreboard players set #sidebar.line bs.data 0 +execute store result storage bs:ctx _.line int 1 run scoreboard players set #i bs.ctx 0 data modify storage bs:ctx _.dynleft set from storage bs:ctx _.contents[0] data modify storage bs:ctx _.dynleft set from storage bs:ctx _.contents[0][0] data modify entity @s CustomName set from storage bs:ctx _.dynleft data modify entity @s text set from storage bs:ctx _.dynleft data modify storage bs:ctx _.left set from entity @s CustomName -execute store success score #sidebar.dynleft bs.data run data modify storage bs:ctx _.left set from entity @s text +execute store success score #l bs.ctx run data modify storage bs:ctx _.left set from entity @s text data modify storage bs:ctx _.dynright set value '""' data modify storage bs:ctx _.dynright set from storage bs:ctx _.contents[0][1] data modify entity @s CustomName set from storage bs:ctx _.dynright data modify entity @s text set from storage bs:ctx _.dynright data modify storage bs:ctx _.right set from entity @s CustomName -execute store success score #sidebar.dynright bs.data run data modify storage bs:ctx _.right set from entity @s text +execute store success score #r bs.ctx run data modify storage bs:ctx _.right set from entity @s text function bs.sidebar:create/recurse/next with storage bs:ctx _ diff --git a/datapacks/Bookshelf/data/bs.sidebar/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.sidebar/tags/function/exclusive_load.json new file mode 100644 index 0000000000..2622ac346f --- /dev/null +++ b/datapacks/Bookshelf/data/bs.sidebar/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.sidebar:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.sidebar/tags/function/load.json b/datapacks/Bookshelf/data/bs.sidebar/tags/function/load.json index b3526fe7f0..3751c5b28e 100644 --- a/datapacks/Bookshelf/data/bs.sidebar/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.sidebar/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.sidebar:__load__", { "id": "#bs.log:load", diff --git a/datapacks/Bookshelf/data/bs.time/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.time/tags/function/exclusive_load.json new file mode 100644 index 0000000000..5fe0e7389d --- /dev/null +++ b/datapacks/Bookshelf/data/bs.time/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.time:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.time/tags/function/load.json b/datapacks/Bookshelf/data/bs.time/tags/function/load.json index d05888bdd1..ab17e20c3a 100644 --- a/datapacks/Bookshelf/data/bs.time/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.time/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.time:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.time/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.time/test/__boot__.mcfunction index d74308e6cf..9a22a6c78c 100644 --- a/datapacks/Bookshelf/data/bs.time/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.time/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.time -# @beforebatch function #bs.time:load +# @beforebatch function #bs.time:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.tree/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.tree/tags/function/exclusive_load.json new file mode 100644 index 0000000000..f946fe860d --- /dev/null +++ b/datapacks/Bookshelf/data/bs.tree/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.tree:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.tree/tags/function/load.json b/datapacks/Bookshelf/data/bs.tree/tags/function/load.json index 6af66aecd8..3003b3f5bc 100644 --- a/datapacks/Bookshelf/data/bs.tree/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.tree/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.tree:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.vector/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/__load__.mcfunction index f972e9026d..c24c34f4a8 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/__load__.mcfunction @@ -16,13 +16,13 @@ # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} +execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} scoreboard objectives add bs.in dummy [{"text":"BS ","color":"dark_gray"},{"text":"Input","color":"aqua"}] scoreboard objectives add bs.out dummy [{"text":"BS ","color":"dark_gray"},{"text":"Output","color":"aqua"}] -scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] scoreboard objectives add bs.const dummy [{"text":"BS ","color":"dark_gray"},{"text":"Constants","color":"aqua"}] +scoreboard objectives add bs.ctx dummy [{"text":"BS ","color":"dark_gray"},{"text":"Context","color":"aqua"}] scoreboard players set -1 bs.const -1 scoreboard players set 2 bs.const 2 diff --git a/datapacks/Bookshelf/data/bs.vector/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/__unload__.mcfunction index 686a4b182a..e4f6323305 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/__unload__.mcfunction @@ -21,5 +21,5 @@ forceload remove -30000000 1600 scoreboard objectives remove bs.in scoreboard objectives remove bs.out -scoreboard objectives remove bs.data scoreboard objectives remove bs.const +scoreboard objectives remove bs.ctx diff --git a/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/basis_rot_3d.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/basis_rot_3d.mcfunction index bd65e6c4d1..3a10d0ab51 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/basis_rot_3d.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/basis_rot_3d.mcfunction @@ -15,37 +15,37 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#basis-rotation-3d # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #vector.scaling bs.data $(scaling) -scoreboard players set #vector.dscale bs.data 1000000000 -execute store result storage bs:ctx y double .000000001 run scoreboard players operation #vector.dscale bs.data /= #vector.scaling bs.data +$scoreboard players set #s bs.ctx $(scaling) +scoreboard players set #t bs.ctx 1000000000 +execute store result storage bs:ctx y double .000000001 run scoreboard players operation #t bs.ctx /= #s bs.ctx # sincos(h: Phi) & sincos(v: Theta) -execute as B5-0-0-0-1 run function bs.vector:convert/basis_rot_3d/sincos with storage bs:ctx +execute in minecraft:overworld as B5-0-0-0-1 run function bs.vector:convert/basis_rot_3d/sincos with storage bs:ctx # X' = Z * sin(h) + X * cos(h) scoreboard players operation $vector.basis_rot_3d.0 bs.out = $vector.basis_rot_3d.pos.2 bs.in -scoreboard players operation $vector.basis_rot_3d.0 bs.out *= #vector.sin.h bs.data -scoreboard players operation #vector.basis_rot_3d bs.data = $vector.basis_rot_3d.pos.0 bs.in -scoreboard players operation #vector.basis_rot_3d bs.data *= #vector.cos.h bs.data -scoreboard players operation $vector.basis_rot_3d.0 bs.out += #vector.basis_rot_3d bs.data +scoreboard players operation $vector.basis_rot_3d.0 bs.out *= #j bs.ctx +scoreboard players operation #t bs.ctx = $vector.basis_rot_3d.pos.0 bs.in +scoreboard players operation #t bs.ctx *= #i bs.ctx +scoreboard players operation $vector.basis_rot_3d.0 bs.out += #t bs.ctx scoreboard players operation $vector.basis_rot_3d.0 bs.out /= 1000 bs.const # Y' = (z * cos(h) - x * sin(h)) * sin(v) + y * cos(v) scoreboard players operation $vector.basis_rot_3d.1 bs.out = $vector.basis_rot_3d.pos.2 bs.in -scoreboard players operation $vector.basis_rot_3d.1 bs.out *= #vector.cos.h bs.data -scoreboard players operation #vector.basis_rot_3d bs.data = $vector.basis_rot_3d.pos.0 bs.in -scoreboard players operation #vector.basis_rot_3d bs.data *= #vector.sin.h bs.data -scoreboard players operation $vector.basis_rot_3d.1 bs.out -= #vector.basis_rot_3d bs.data +scoreboard players operation $vector.basis_rot_3d.1 bs.out *= #i bs.ctx +scoreboard players operation #t bs.ctx = $vector.basis_rot_3d.pos.0 bs.in +scoreboard players operation #t bs.ctx *= #j bs.ctx +scoreboard players operation $vector.basis_rot_3d.1 bs.out -= #t bs.ctx execute store result score $vector.basis_rot_3d.2 bs.out run scoreboard players operation $vector.basis_rot_3d.1 bs.out /= 1000 bs.const -scoreboard players operation $vector.basis_rot_3d.1 bs.out *= #vector.sin.v bs.data -scoreboard players operation #vector.basis_rot_3d bs.data = $vector.basis_rot_3d.pos.1 bs.in -scoreboard players operation #vector.basis_rot_3d bs.data *= #vector.cos.v bs.data -scoreboard players operation $vector.basis_rot_3d.1 bs.out += #vector.basis_rot_3d bs.data +scoreboard players operation $vector.basis_rot_3d.1 bs.out *= #l bs.ctx +scoreboard players operation #t bs.ctx = $vector.basis_rot_3d.pos.1 bs.in +scoreboard players operation #t bs.ctx *= #k bs.ctx +scoreboard players operation $vector.basis_rot_3d.1 bs.out += #t bs.ctx scoreboard players operation $vector.basis_rot_3d.1 bs.out /= 1000 bs.const # Z' = (z * cos(h) - x * sin(h)) * cos(v) - y * sin(v) -scoreboard players operation $vector.basis_rot_3d.2 bs.out *= #vector.cos.v bs.data -scoreboard players operation #vector.basis_rot_3d bs.data = $vector.basis_rot_3d.pos.1 bs.in -scoreboard players operation #vector.basis_rot_3d bs.data *= #vector.sin.v bs.data -scoreboard players operation $vector.basis_rot_3d.2 bs.out -= #vector.basis_rot_3d bs.data +scoreboard players operation $vector.basis_rot_3d.2 bs.out *= #k bs.ctx +scoreboard players operation #t bs.ctx = $vector.basis_rot_3d.pos.1 bs.in +scoreboard players operation #t bs.ctx *= #l bs.ctx +scoreboard players operation $vector.basis_rot_3d.2 bs.out -= #t bs.ctx scoreboard players operation $vector.basis_rot_3d.2 bs.out /= 1000 bs.const diff --git a/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/sincos.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/sincos.mcfunction index b7264eff5a..b4ac5b985a 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/sincos.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/convert/basis_rot_3d/sincos.mcfunction @@ -15,10 +15,10 @@ $execute store result entity @s Rotation[0] float $(y) run scoreboard players get $vector.basis_rot_3d.rot.0 bs.in execute at @s positioned 0.0 0.0 0.0 rotated ~ 0.0 run tp @s ^ ^ ^10.0 -execute store result score #vector.cos.h bs.data run data get entity @s Pos[2] 100 -execute store result score #vector.sin.h bs.data run data get entity @s Pos[0] -100 +execute store result score #i bs.ctx run data get entity @s Pos[2] 100 +execute store result score #j bs.ctx run data get entity @s Pos[0] -100 $execute store result entity @s Rotation[0] float $(y) run scoreboard players get $vector.basis_rot_3d.rot.1 bs.in execute at @s positioned 0.0 0.0 0.0 rotated ~ 0.0 run tp @s ^ ^ ^10.0 -execute store result score #vector.cos.v bs.data run data get entity @s Pos[2] 100 -execute store result score #vector.sin.v bs.data run data get entity @s Pos[0] -100 -execute in minecraft:overworld run tp @s -30000000 0 1600 +execute store result score #k bs.ctx run data get entity @s Pos[2] 100 +execute store result score #l bs.ctx run data get entity @s Pos[0] -100 +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/cartesian_to_spherical.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/cartesian_to_spherical.mcfunction index 7360a0d04f..3774c2d2db 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/cartesian_to_spherical.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/cartesian_to_spherical.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#cartesian-to-spherical # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.vector:convert/cartesian_to_spherical/compute +execute in minecraft:overworld as B5-0-0-0-1 run function bs.vector:convert/cartesian_to_spherical/compute $execute store result score $vector.cartesian_to_spherical.0 bs.out run data get entity B5-0-0-0-1 Rotation[0] $(scaling) $execute store result score $vector.cartesian_to_spherical.1 bs.out run data get entity B5-0-0-0-1 Rotation[1] $(scaling) execute store result score $vector.cartesian_to_spherical.2 bs.out as B5-0-0-0-2 run function bs.vector:length/compute with storage bs:ctx diff --git a/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/compute.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/compute.mcfunction index 183334b75c..33ca82a171 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/compute.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/convert/cartesian_to_spherical/compute.mcfunction @@ -16,4 +16,4 @@ execute store result entity @s Pos[0] double 0.001 store result storage bs:ctx x int 1 run scoreboard players get $vector.cartesian_to_spherical.0 bs.in execute store result entity @s Pos[1] double 0.001 store result storage bs:ctx y int 1 run scoreboard players get $vector.cartesian_to_spherical.1 bs.in execute store result entity @s Pos[2] double 0.001 store result storage bs:ctx z int 1 run scoreboard players get $vector.cartesian_to_spherical.2 bs.in -execute in minecraft:overworld positioned 0.0 0.0 0.0 facing entity @s feet run tp @s -30000000 0 1600 ~ ~ +execute positioned 0.0 0.0 0.0 facing entity @s feet run tp @s -30000000 0 1600 ~ ~ diff --git a/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/compute.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/compute.mcfunction index 5e04098bbb..5b808c35cf 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/compute.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/compute.mcfunction @@ -17,4 +17,4 @@ $execute store result entity @s Rotation[0] float $(y) run scoreboard players ge $execute store result entity @s Rotation[1] float $(y) run scoreboard players get $vector.spherical_to_cartesian.1 bs.in $execute rotated as @s positioned 0.0 0.0 0.0 run tp @s ^ ^ ^$(x) data modify storage bs:ctx _ set from entity @s Pos -execute in minecraft:overworld run tp @s -30000000 0 1600 +tp @s -30000000 0 1600 diff --git a/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/spherical_to_cartesian.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/spherical_to_cartesian.mcfunction index f4fe097c77..f6bba239d7 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/spherical_to_cartesian.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/convert/spherical_to_cartesian/spherical_to_cartesian.mcfunction @@ -15,11 +15,11 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#spherical-to-cartesian # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #vector.scaling bs.data $(scaling) -scoreboard players set #vector.dscale bs.data 1000000000 -execute store result storage bs:ctx y double .000000001 run scoreboard players operation #vector.dscale bs.data /= #vector.scaling bs.data +$scoreboard players set #s bs.ctx $(scaling) +scoreboard players set #t bs.ctx 1000000000 +execute store result storage bs:ctx y double .000000001 run scoreboard players operation #t bs.ctx /= #s bs.ctx execute store result storage bs:ctx x int 1 run scoreboard players get $vector.spherical_to_cartesian.2 bs.in -execute as B5-0-0-0-1 run function bs.vector:convert/spherical_to_cartesian/compute with storage bs:ctx +execute in minecraft:overworld as B5-0-0-0-1 run function bs.vector:convert/spherical_to_cartesian/compute with storage bs:ctx execute store result score $vector.spherical_to_cartesian.0 bs.out run data get storage bs:ctx _[0] execute store result score $vector.spherical_to_cartesian.1 bs.out run data get storage bs:ctx _[1] execute store result score $vector.spherical_to_cartesian.2 bs.out run data get storage bs:ctx _[2] diff --git a/datapacks/Bookshelf/data/bs.vector/function/cross_product.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/cross_product.mcfunction index 34c9b546bb..649ba8dc5b 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/cross_product.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/cross_product.mcfunction @@ -15,28 +15,28 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#cross-product # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #vector.scaling bs.data $(scaling) +$scoreboard players set #s bs.ctx $(scaling) # out.0 = u.1 * v.2 - u.2 * v.1 scoreboard players operation $vector.cross_product.0 bs.out = $vector.cross_product.u.1 bs.in scoreboard players operation $vector.cross_product.0 bs.out *= $vector.cross_product.v.2 bs.in -scoreboard players operation #vector.cross_product bs.data = $vector.cross_product.u.2 bs.in -scoreboard players operation #vector.cross_product bs.data *= $vector.cross_product.v.1 bs.in -scoreboard players operation $vector.cross_product.0 bs.out -= #vector.cross_product bs.data -scoreboard players operation $vector.cross_product.0 bs.out /= #vector.scaling bs.data +scoreboard players operation #t bs.ctx = $vector.cross_product.u.2 bs.in +scoreboard players operation #t bs.ctx *= $vector.cross_product.v.1 bs.in +scoreboard players operation $vector.cross_product.0 bs.out -= #t bs.ctx +scoreboard players operation $vector.cross_product.0 bs.out /= #s bs.ctx # out.1 = u.2 * v.0 - u.0 * v.2 scoreboard players operation $vector.cross_product.1 bs.out = $vector.cross_product.u.2 bs.in scoreboard players operation $vector.cross_product.1 bs.out *= $vector.cross_product.v.0 bs.in -scoreboard players operation #vector.cross_product bs.data = $vector.cross_product.u.0 bs.in -scoreboard players operation #vector.cross_product bs.data *= $vector.cross_product.v.2 bs.in -scoreboard players operation $vector.cross_product.1 bs.out -= #vector.cross_product bs.data -scoreboard players operation $vector.cross_product.1 bs.out /= #vector.scaling bs.data +scoreboard players operation #t bs.ctx = $vector.cross_product.u.0 bs.in +scoreboard players operation #t bs.ctx *= $vector.cross_product.v.2 bs.in +scoreboard players operation $vector.cross_product.1 bs.out -= #t bs.ctx +scoreboard players operation $vector.cross_product.1 bs.out /= #s bs.ctx # out.2 = u.0 * v.1 - u.1 * v.0 scoreboard players operation $vector.cross_product.2 bs.out = $vector.cross_product.u.0 bs.in scoreboard players operation $vector.cross_product.2 bs.out *= $vector.cross_product.v.1 bs.in -scoreboard players operation #vector.cross_product bs.data = $vector.cross_product.u.1 bs.in -scoreboard players operation #vector.cross_product bs.data *= $vector.cross_product.v.0 bs.in -scoreboard players operation $vector.cross_product.2 bs.out -= #vector.cross_product bs.data -scoreboard players operation $vector.cross_product.2 bs.out /= #vector.scaling bs.data +scoreboard players operation #t bs.ctx = $vector.cross_product.u.1 bs.in +scoreboard players operation #t bs.ctx *= $vector.cross_product.v.0 bs.in +scoreboard players operation $vector.cross_product.2 bs.out -= #t bs.ctx +scoreboard players operation $vector.cross_product.2 bs.out /= #s bs.ctx diff --git a/datapacks/Bookshelf/data/bs.vector/function/dot_product.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/dot_product.mcfunction index aabd497bc5..1e3e07d742 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/dot_product.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/dot_product.mcfunction @@ -15,14 +15,14 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#dot-product # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #vector.scaling bs.data $(scaling) +$scoreboard players set #s bs.ctx $(scaling) scoreboard players operation $vector.dot_product bs.out = $vector.dot_product.u.0 bs.in scoreboard players operation $vector.dot_product bs.out *= $vector.dot_product.v.0 bs.in -scoreboard players operation #vector.dot_product bs.data = $vector.dot_product.u.1 bs.in -scoreboard players operation #vector.dot_product bs.data *= $vector.dot_product.v.1 bs.in -scoreboard players operation $vector.dot_product bs.out += #vector.dot_product bs.data -scoreboard players operation #vector.dot_product bs.data = $vector.dot_product.u.2 bs.in -scoreboard players operation #vector.dot_product bs.data *= $vector.dot_product.v.2 bs.in -scoreboard players operation $vector.dot_product bs.out += #vector.dot_product bs.data -return run scoreboard players operation $vector.dot_product bs.out /= #vector.scaling bs.data +scoreboard players operation #t bs.ctx = $vector.dot_product.u.1 bs.in +scoreboard players operation #t bs.ctx *= $vector.dot_product.v.1 bs.in +scoreboard players operation $vector.dot_product bs.out += #t bs.ctx +scoreboard players operation #t bs.ctx = $vector.dot_product.u.2 bs.in +scoreboard players operation #t bs.ctx *= $vector.dot_product.v.2 bs.in +scoreboard players operation $vector.dot_product bs.out += #t bs.ctx +return run scoreboard players operation $vector.dot_product bs.out /= #s bs.ctx diff --git a/datapacks/Bookshelf/data/bs.vector/function/length_squared.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/length_squared.mcfunction index a526a8aa29..d44a9c8ac0 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/length_squared.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/length_squared.mcfunction @@ -15,14 +15,14 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#length # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #vector.scaling bs.data $(scaling) +$scoreboard players set #s bs.ctx $(scaling) scoreboard players operation $vector.length_squared bs.out = $vector.length_squared.0 bs.in scoreboard players operation $vector.length_squared bs.out *= $vector.length_squared.0 bs.in -scoreboard players operation #vector.length_squared bs.data = $vector.length_squared.1 bs.in -scoreboard players operation #vector.length_squared bs.data *= $vector.length_squared.1 bs.in -scoreboard players operation $vector.length_squared bs.out += #vector.length_squared bs.data -scoreboard players operation #vector.length_squared bs.data = $vector.length_squared.2 bs.in -scoreboard players operation #vector.length_squared bs.data *= $vector.length_squared.2 bs.in -scoreboard players operation $vector.length_squared bs.out += #vector.length_squared bs.data -return run scoreboard players operation $vector.length_squared bs.out /= #vector.scaling bs.data +scoreboard players operation #t bs.ctx = $vector.length_squared.1 bs.in +scoreboard players operation #t bs.ctx *= $vector.length_squared.1 bs.in +scoreboard players operation $vector.length_squared bs.out += #t bs.ctx +scoreboard players operation #t bs.ctx = $vector.length_squared.2 bs.in +scoreboard players operation #t bs.ctx *= $vector.length_squared.2 bs.in +scoreboard players operation $vector.length_squared bs.out += #t bs.ctx +return run scoreboard players operation $vector.length_squared bs.out /= #s bs.ctx diff --git a/datapacks/Bookshelf/data/bs.vector/function/normalize/compute.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/normalize/compute.mcfunction index c533fbab18..9894315868 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/normalize/compute.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/normalize/compute.mcfunction @@ -16,6 +16,6 @@ execute store result entity @s Pos[0] double 0.00000001 run scoreboard players get $vector.normalize.0 bs.in execute store result entity @s Pos[1] double 0.00000001 run scoreboard players get $vector.normalize.1 bs.in execute store result entity @s Pos[2] double 0.00000001 run scoreboard players get $vector.normalize.2 bs.in -execute in minecraft:overworld positioned 0.0 0.0 0.0 facing entity @s feet run tp @s ^ ^ ^1 +execute positioned 0.0 0.0 0.0 facing entity @s feet run tp @s ^ ^ ^1 data modify storage bs:ctx _ set from entity @s Pos -execute in minecraft:overworld run tp @s -30000000 0 1600 ~ ~ +tp @s -30000000 0 1600 ~ ~ diff --git a/datapacks/Bookshelf/data/bs.vector/function/normalize/normalize.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/normalize/normalize.mcfunction index ae19a8dc44..8085399551 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/normalize/normalize.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/normalize/normalize.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#normalize # ------------------------------------------------------------------------------------------------------------ -execute as B5-0-0-0-1 run function bs.vector:normalize/compute +execute in minecraft:overworld as B5-0-0-0-1 run function bs.vector:normalize/compute $execute store result score $vector.normalize.0 bs.out run data get storage bs:ctx _[0] $(scale) $execute store result score $vector.normalize.1 bs.out run data get storage bs:ctx _[1] $(scale) $execute store result score $vector.normalize.2 bs.out run data get storage bs:ctx _[2] $(scale) diff --git a/datapacks/Bookshelf/data/bs.vector/function/normalize_max_component.mcfunction b/datapacks/Bookshelf/data/bs.vector/function/normalize_max_component.mcfunction index ed2916a6a3..7b05896a37 100644 --- a/datapacks/Bookshelf/data/bs.vector/function/normalize_max_component.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/function/normalize_max_component.mcfunction @@ -15,7 +15,7 @@ # Documentation of the feature: https://bookshelf.docs.gunivers.net/en/latest/modules/vector.html#normalize # ------------------------------------------------------------------------------------------------------------ -$scoreboard players set #vector.scale bs.data $(scale) +$scoreboard players set #s bs.ctx $(scale) scoreboard players operation $vector.normalize_max_component.factor bs.out = $vector.normalize_max_component.0 bs.in execute if predicate bs.vector:normalize_max_component/check1 run scoreboard players operation $vector.normalize_max_component.factor bs.out = $vector.normalize_max_component.1 bs.in @@ -26,9 +26,9 @@ scoreboard players operation $vector.normalize_max_component.0 bs.out = $vector. scoreboard players operation $vector.normalize_max_component.1 bs.out = $vector.normalize_max_component.1 bs.in scoreboard players operation $vector.normalize_max_component.2 bs.out = $vector.normalize_max_component.2 bs.in -scoreboard players operation $vector.normalize_max_component.0 bs.out *= #vector.scale bs.data -scoreboard players operation $vector.normalize_max_component.1 bs.out *= #vector.scale bs.data -scoreboard players operation $vector.normalize_max_component.2 bs.out *= #vector.scale bs.data +scoreboard players operation $vector.normalize_max_component.0 bs.out *= #s bs.ctx +scoreboard players operation $vector.normalize_max_component.1 bs.out *= #s bs.ctx +scoreboard players operation $vector.normalize_max_component.2 bs.out *= #s bs.ctx scoreboard players operation $vector.normalize_max_component.0 bs.out /= $vector.normalize_max_component.factor bs.out scoreboard players operation $vector.normalize_max_component.1 bs.out /= $vector.normalize_max_component.factor bs.out diff --git a/datapacks/Bookshelf/data/bs.vector/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.vector/tags/function/exclusive_load.json new file mode 100644 index 0000000000..e03f8dd58b --- /dev/null +++ b/datapacks/Bookshelf/data/bs.vector/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.vector:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.vector/tags/function/load.json b/datapacks/Bookshelf/data/bs.vector/tags/function/load.json index c3949f686c..7be94f6372 100644 --- a/datapacks/Bookshelf/data/bs.vector/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.vector/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.vector:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.vector/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.vector/test/__boot__.mcfunction index 4435defb0c..902db8bfbc 100644 --- a/datapacks/Bookshelf/data/bs.vector/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.vector/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.vector -# @beforebatch function #bs.vector:load +# @beforebatch function #bs.vector:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.view/function/__load__.mcfunction b/datapacks/Bookshelf/data/bs.view/function/__load__.mcfunction index 38d31f5b69..30d565a3d4 100644 --- a/datapacks/Bookshelf/data/bs.view/function/__load__.mcfunction +++ b/datapacks/Bookshelf/data/bs.view/function/__load__.mcfunction @@ -13,9 +13,7 @@ # For more details, refer to the MPL v2.0. # ------------------------------------------------------------------------------------------------------------ forceload add -30000000 1600 -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} -execute unless entity B5-0-0-0-4 run summon minecraft:snowball -30000000 0 1600 {UUID:[I;181,0,0,4],Tags:["bs.entity","bs.persistent"],NoGravity:1b,Invulnerable:1b} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} scoreboard objectives add bs.data dummy [{"text":"BS ","color":"dark_gray"},{"text":"Data","color":"aqua"}] diff --git a/datapacks/Bookshelf/data/bs.view/function/__unload__.mcfunction b/datapacks/Bookshelf/data/bs.view/function/__unload__.mcfunction index 3cae57c6d7..2d7040f755 100644 --- a/datapacks/Bookshelf/data/bs.view/function/__unload__.mcfunction +++ b/datapacks/Bookshelf/data/bs.view/function/__unload__.mcfunction @@ -14,7 +14,6 @@ # ------------------------------------------------------------------------------------------------------------ kill B5-0-0-0-1 -kill B5-0-0-0-4 forceload remove -30000000 1600 scoreboard objectives remove bs.data diff --git a/datapacks/Bookshelf/data/bs.view/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.view/tags/function/exclusive_load.json new file mode 100644 index 0000000000..8c1ce9cb68 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.view/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.view:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.view/tags/function/load.json b/datapacks/Bookshelf/data/bs.view/tags/function/load.json index 7c32824565..1b9ed48375 100644 --- a/datapacks/Bookshelf/data/bs.view/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.view/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "#bs.raycast:load", "bs.view:__load__" ] diff --git a/datapacks/Bookshelf/data/bs.view/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.view/test/__boot__.mcfunction index 61e1912a40..2d8e9906a4 100644 --- a/datapacks/Bookshelf/data/bs.view/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.view/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.view -# @beforebatch function #bs.view:load +# @beforebatch function #bs.view:exclusive_load diff --git a/datapacks/Bookshelf/data/bs.view/test/as_aimed_entity.mcfunction b/datapacks/Bookshelf/data/bs.view/test/as_aimed_entity.mcfunction index 98ccbe9ba0..7a7b8ef3a9 100644 --- a/datapacks/Bookshelf/data/bs.view/test/as_aimed_entity.mcfunction +++ b/datapacks/Bookshelf/data/bs.view/test/as_aimed_entity.mcfunction @@ -4,5 +4,5 @@ fill ~-1 ~ ~-1 ~1 ~1 ~1 minecraft:air summon minecraft:armor_stand ~.5 ~ ~1.5 {Tags:["bs.raycast.is_solid"],NoGravity:1b} -function #bs.view:as_aimed_entity {run:"tag @s add found",with:{}} -assert entity @e[type=minecraft:armor_stand,tag=found] inside +function #bs.view:as_aimed_entity {run:"tag @s add bs.found",with:{}} +assert entity @e[type=minecraft:armor_stand,tag=bs.found] inside diff --git a/datapacks/Bookshelf/data/bs.view/test/as_looked_entity.mcfunction b/datapacks/Bookshelf/data/bs.view/test/as_looked_entity.mcfunction index 8c522a3e02..f7bb9e9310 100644 --- a/datapacks/Bookshelf/data/bs.view/test/as_looked_entity.mcfunction +++ b/datapacks/Bookshelf/data/bs.view/test/as_looked_entity.mcfunction @@ -4,5 +4,5 @@ fill ~-1 ~ ~-1 ~1 ~1 ~1 minecraft:air summon minecraft:armor_stand ~.5 ~ ~1.5 {Tags:["bs.view.is_lookable"],NoGravity:1b} -function #bs.view:as_looked_entity {run:"tag @s add found"} -assert entity @e[type=minecraft:armor_stand,tag=found] inside +function #bs.view:as_looked_entity {run:"tag @s add bs.found"} +assert entity @e[type=minecraft:armor_stand,tag=bs.found] inside diff --git a/datapacks/Bookshelf/data/bs.view/test/at_aimed_entity.mcfunction b/datapacks/Bookshelf/data/bs.view/test/at_aimed_entity.mcfunction index 6f512b3fec..b9e47fc3c0 100644 --- a/datapacks/Bookshelf/data/bs.view/test/at_aimed_entity.mcfunction +++ b/datapacks/Bookshelf/data/bs.view/test/at_aimed_entity.mcfunction @@ -4,5 +4,5 @@ fill ~-1 ~ ~-1 ~1 ~1 ~1 minecraft:air summon minecraft:armor_stand ~.5 ~ ~1.5 {Tags:["bs.raycast.is_solid"],NoGravity:1b} -function #bs.view:at_aimed_entity {run:"tag @e[distance=0] add found",with:{}} -assert entity @e[type=minecraft:armor_stand,tag=found] inside +function #bs.view:at_aimed_entity {run:"tag @e[distance=0] add bs.found",with:{}} +assert entity @e[type=minecraft:armor_stand,tag=bs.found] inside diff --git a/datapacks/Bookshelf/data/bs.view/test/at_looked_entity.mcfunction b/datapacks/Bookshelf/data/bs.view/test/at_looked_entity.mcfunction index 4325e75905..af64209a48 100644 --- a/datapacks/Bookshelf/data/bs.view/test/at_looked_entity.mcfunction +++ b/datapacks/Bookshelf/data/bs.view/test/at_looked_entity.mcfunction @@ -4,5 +4,5 @@ fill ~-1 ~ ~-1 ~1 ~1 ~1 minecraft:air summon minecraft:armor_stand ~.5 ~ ~1.5 {Tags:["bs.view.is_lookable"],NoGravity:1b} -function #bs.view:at_looked_entity {run:"tag @e[distance=0] add found"} -assert entity @e[type=minecraft:armor_stand,tag=found] inside +function #bs.view:at_looked_entity {run:"tag @e[distance=0] add bs.found"} +assert entity @e[type=minecraft:armor_stand,tag=bs.found] inside diff --git a/datapacks/Bookshelf/data/bs.weather/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.weather/tags/function/exclusive_load.json new file mode 100644 index 0000000000..8198a7f5c6 --- /dev/null +++ b/datapacks/Bookshelf/data/bs.weather/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.weather:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.weather/tags/function/load.json b/datapacks/Bookshelf/data/bs.weather/tags/function/load.json index 069f4c749a..eea34c9637 100644 --- a/datapacks/Bookshelf/data/bs.weather/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.weather/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.weather:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.xp/tags/function/exclusive_load.json b/datapacks/Bookshelf/data/bs.xp/tags/function/exclusive_load.json new file mode 100644 index 0000000000..3096102f2d --- /dev/null +++ b/datapacks/Bookshelf/data/bs.xp/tags/function/exclusive_load.json @@ -0,0 +1,6 @@ +{ + "values": [ + "#minecraft:unload", + "#bs.xp:load" + ] +} diff --git a/datapacks/Bookshelf/data/bs.xp/tags/function/load.json b/datapacks/Bookshelf/data/bs.xp/tags/function/load.json index f7db10b650..197f65e2e5 100644 --- a/datapacks/Bookshelf/data/bs.xp/tags/function/load.json +++ b/datapacks/Bookshelf/data/bs.xp/tags/function/load.json @@ -1,6 +1,5 @@ { "values": [ - "#minecraft:unload", "bs.xp:__load__" ] } diff --git a/datapacks/Bookshelf/data/bs.xp/test/__boot__.mcfunction b/datapacks/Bookshelf/data/bs.xp/test/__boot__.mcfunction index aad6e890c7..83668d3d69 100644 --- a/datapacks/Bookshelf/data/bs.xp/test/__boot__.mcfunction +++ b/datapacks/Bookshelf/data/bs.xp/test/__boot__.mcfunction @@ -1,2 +1,2 @@ # @batch bs.xp -# @beforebatch function #bs.xp:load +# @beforebatch function #bs.xp:exclusive_load diff --git a/datapacks/Bookshelf/data/minecraft/tags/function/unload.json b/datapacks/Bookshelf/data/minecraft/tags/function/unload.json index 9453fed60d..fad13aa623 100644 --- a/datapacks/Bookshelf/data/minecraft/tags/function/unload.json +++ b/datapacks/Bookshelf/data/minecraft/tags/function/unload.json @@ -16,6 +16,10 @@ "id": "#bs.color:unload", "required": false }, + { + "id": "#bs.generate:unload", + "required": false + }, { "id": "#bs.health:unload", "required": false diff --git a/datapacks/Bookshelf/pack.mcmeta b/datapacks/Bookshelf/pack.mcmeta index d260e6e3b0..93c4b13b82 100644 --- a/datapacks/Bookshelf/pack.mcmeta +++ b/datapacks/Bookshelf/pack.mcmeta @@ -1,6 +1,7 @@ { + "id": "bs", "pack": { - "pack_format": 48, + "pack_format": 57, "description": "Bookshelf - Library designed for mapmakers" } } diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 413d3e4011..6c589e779d 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -4,58 +4,70 @@ ## 📦 Bookshelf - 2.2.0 -### 🎉 Addition +```{epigraph} +**🪐 The dimensional update!** + +*This release features new modules for random distribution and terrain generation, refinements to existing modules, performance enhancements, and minor bug resolutions. Additionally, this update aims to ensure all functions work seamlessly across all dimensions.* +``` + +Bookshelf is now based on **Minecraft 1.21.2**. + +### 🎉 Added modules -- ([203](https://github.com/Gunivers/Bookshelf/issues/203)) Add functions `#bs.hitbox:is_entity_in_block` and `#bs.hitbox:is_entity_in_blocks`. -- ([233](https://github.com/Gunivers/Bookshelf/issues/233)) Add a function to remove a link `#bs.link:remove_link`. -- ([233](https://github.com/Gunivers/Bookshelf/issues/233)) Add a `bs.link:link_equal` predicate and new relationships functions: - - `#bs.link:as_children` - - `#bs.link:as_parent` - - `#bs.link:at_children` - - `#bs.link:at_parent` -- ([171](https://github.com/Gunivers/Bookshelf/issues/171)) Add history for log messages. -- ([187](https://github.com/Gunivers/Bookshelf/pull/222)) Add randomized fill function `#bs.block:fill_random`. -- ([1](https://github.com/Gunivers/Bookshelf/issues/1)) ([220](https://github.com/Gunivers/Bookshelf/issues/220)) Add `bs.random` module for random distributions and noise generation: - - Noise functions: white, simplex, and fractal - - Random distributions: uniform, binomial, geometric, and Poisson - - Random choice of an element from a list -- ([6](https://github.com/Gunivers/Bookshelf/issues/6)) Add `bs.generate` module for terrain generation: - - Includes only 2D shape algorithms for now, enabling texture and heightmap terrain generation. -- ([251](https://github.com/Gunivers/Bookshelf/pull/251)) Enhanced `bs.block` fill functions: the `from` and `to` inputs now support both a list of 3 elements `[x, y, z]`, and a stringified version of coordinates (e.g., `~ ~5 25`) -- ([258]https://github.com/Gunivers/Bookshelf/issues/258) Add `bs.block:emit_block_particles` feature. -- ([245](https://github.com/Gunivers/Bookshelf/issues/245)) Add piercing and callback arguments to `#bs.raycast:run`. +- **[#1](https://github.com/Gunivers/Bookshelf/issues/1)** / **[#220](https://github.com/Gunivers/Bookshelf/issues/220)** Added the `bs.random` module, which includes: + - Random distributions: uniform, binomial, geometric, and Poisson. + - Noise generation functions: white, simplex, and fractal. + - Random selection of an element from a list. + +- **[#6](https://github.com/Gunivers/Bookshelf/issues/6)** Added the `bs.generate` module for terrain generation. Currently supports 2D shape algorithms, enabling texture and heightmap-based terrain generation. + +### ✨ Added features + +- **[#222](https://github.com/Gunivers/Bookshelf/issues/222)** Added `#bs.block:fill_random` for filling regions with randomly selected blocks. +- **[#251](https://github.com/Gunivers/Bookshelf/issues/251)** Enhanced `bs.block` fill functions to accept `from` and `to` inputs as either `[x, y, z]` lists or as stringified coordinates (e.g., `~ ~5 25`). +- **[#258](https://github.com/Gunivers/Bookshelf/issues/258)** Added `#bs.block:emit_block_particle` to emit block particles in specific locations. +- **[#245](https://github.com/Gunivers/Bookshelf/issues/245)** Added `piercing` and callback options to `#bs.raycast:run`. +- **[#203](https://github.com/Gunivers/Bookshelf/issues/203)** Added `#bs.hitbox:is_entity_in_block` and `#bs.hitbox:is_entity_in_blocks` to verify if an entity is within a block. +- **[#233](https://github.com/Gunivers/Bookshelf/issues/233)** Introduced new link management functions: + - `#bs.link:remove_link` to remove specific links. + - `#bs.link:as_children`, `#bs.link:as_parent`, `#bs.link:at_children`, and `#bs.link:at_parent` to handle parent-child link relationships. +- **[#171](https://github.com/Gunivers/Bookshelf/issues/171)** Added logging functions `#bs.log:history` and `#bs.log:clear_history` for viewing and clearing log history. ### 🔁 Tweaks -- ([247](https://github.com/Gunivers/Bookshelf/pull/247)) Improve default log format. -- ([252](https://github.com/Gunivers/Bookshelf/pull/252)) Enhanced speed of `bs.hitbox` module. + +- **[#247](https://github.com/Gunivers/Bookshelf/pull/247)** Improved the default `bs.log` format for clarity. +- **[#252](https://github.com/Gunivers/Bookshelf/pull/252)** Optimized `bs.hitbox` module for improved performance. +- **[#265](https://github.com/Gunivers/Bookshelf/pull/265)** Optimized `bs.schedule` module for improved performance. +- **[#265](https://github.com/Gunivers/Bookshelf/pull/265)** Enabled `bs.move` module to function effectively at higher coordinate ranges. Collision detection has also been improved and should be more robust. +- **[#265](https://github.com/Gunivers/Bookshelf/pull/265)** Load tags do not load modules in isolation anymore. This can now be done using the `exclusive_load` tag. ### 🐛 Fixes -- ([243](https://github.com/Gunivers/Bookshelf/issues/243)) Fix `bs.health` and `bs.move` unload functions. -- ([254](https://github.com/Gunivers/Bookshelf/issues/254)) Fix interruptions in the execution loop caused by `#bs.schedule:schedule` callbacks. -- ([264](https://github.com/Gunivers/Bookshelf/pull/264)) Fix schedule module not working outside of overworld. -- ([255](https://github.com/Gunivers/Bookshelf/issues/255)) Fix `bs.move` local velocity collisions. -- ([254](https://github.com/Gunivers/Bookshelf/pull/262)) Fix collisions with paintings for `bs.raycast` and `bs.move`. -- ([256](https://github.com/Gunivers/Bookshelf/issues/256)) Fix XP progress functions at bounds (0% and 100%). +- **[#254](https://github.com/Gunivers/Bookshelf/issues/254)** Resolved execution loop interruptions caused by `#bs.schedule:schedule` callbacks. +- **[#243](https://github.com/Gunivers/Bookshelf/issues/243)** Fixed unload functions for `bs.health` and `bs.move`. +- **[#264](https://github.com/Gunivers/Bookshelf/issues/264)** Resolved compatibility issues with the schedule module outside the overworld. +- **[#255](https://github.com/Gunivers/Bookshelf/issues/255)** Fixed `bs.move` local velocity collisions. +- **[#262](https://github.com/Gunivers/Bookshelf/pull/262)** Resolved collision issues with paintings for `bs.raycast` and `bs.move`. +- **[#256](https://github.com/Gunivers/Bookshelf/issues/256)** Fixed XP progress boundary issues at 0% and 100%. +- **[#265](https://github.com/Gunivers/Bookshelf/pull/265)** Corrected hitbox for player in spectator mode. +- **[#270](https://github.com/Gunivers/Bookshelf/issues/270)** Enabled all modules to function across any dimension. -### 📄 Documentation -- ([244](https://github.com/Gunivers/Bookshelf/issues/244)) Merge the Inverse trigonometry section in `bs.math` with the Trigonometry one for better clarity. --- ## 📦 Bookshelf - 2.1.1 ### 🔁 Tweaks -- ([238](https://github.com/Gunivers/Bookshelf/pull/238)) Load tags now load modules in isolation. -- ([237](https://github.com/Gunivers/Bookshelf/pull/237)) Enhanced speed of `bs.block` module. -- ([218](https://github.com/Gunivers/Bookshelf/pull/218)) Enhanced speed of factorial function in `bs.math`. +- **[#238](https://github.com/Gunivers/Bookshelf/pull/238)** Load tags now load modules in isolation. +- **[#237](https://github.com/Gunivers/Bookshelf/pull/237)** Enhanced speed of `bs.block` module. +- **[#218](https://github.com/Gunivers/Bookshelf/pull/218)** Enhanced speed of factorial function in `bs.math`. ### 🐛 Fixes -- ([236](https://github.com/Gunivers/Bookshelf/issues/236)) Fix `bs.block`, `bs.id` and `bs.math` load functions. -- ([235](https://github.com/Gunivers/Bookshelf/issues/235)) Fix `bs.block` inputs that required extra escaping. +- **[#236](https://github.com/Gunivers/Bookshelf/issues/236)** Fix `bs.block`, `bs.id` and `bs.math` load functions. +- **[#235](https://github.com/Gunivers/Bookshelf/issues/235)** Fix `bs.block` inputs that required extra escaping. ### 📄 Documentation -- ([215](https://github.com/Gunivers/Bookshelf/issues/215)) There is now documentation about the documentation (kind of metadocumentation?). +- **[#215](https://github.com/Gunivers/Bookshelf/issues/215)** There is now documentation about the documentation (kind of metadocumentation?). --- @@ -64,27 +76,27 @@ Bookshelf is now based on **Minecraft 1.21**. ### 🎉 Addition -- ([187](https://github.com/Gunivers/Bookshelf/issues/187)) Add `#bs.block:map_type` and `#bs.block:mix_type` functions. +- **[#187](https://github.com/Gunivers/Bookshelf/issues/187)** Add `#bs.block:map_type` and `#bs.block:mix_type` functions. ### 🐛 Fixes -- ([211](https://github.com/Gunivers/Bookshelf/pull/211)) Add missing help function tag in `bs.link`. -- ([211](https://github.com/Gunivers/Bookshelf/pull/211)) Add missing help function tag in `bs.vector`. -- ([211](https://github.com/Gunivers/Bookshelf/pull/211)) Add missing help function tag in `bs.xp`. +- **[#211](https://github.com/Gunivers/Bookshelf/pull/211)** Add missing help function tag in `bs.link`. +- **[#211](https://github.com/Gunivers/Bookshelf/pull/211)** Add missing help function tag in `bs.vector`. +- **[#211](https://github.com/Gunivers/Bookshelf/pull/211)** Add missing help function tag in `bs.xp`. ### 📄 Documentation -- ([206](https://github.com/Gunivers/Bookshelf/issues/206)) Add new related datapacks and mods. -- ([208](https://github.com/Gunivers/Bookshelf/issues/208)) Add missing documentation for documentation for feature `bs.position:get_pos_and_rot`. -- ([208](https://github.com/Gunivers/Bookshelf/issues/208)) Add missing documentation for documentation for feature `bs.position:set_pos_and_rot`. -- ([208](https://github.com/Gunivers/Bookshelf/issues/208)) Add missing documentation for documentation for feature `bs.position:add_pos_and_rot`. +- **[#206](https://github.com/Gunivers/Bookshelf/issues/206)** Add new related datapacks and mods. +- **[#208](https://github.com/Gunivers/Bookshelf/issues/208)** Add missing documentation for documentation for feature `bs.position:get_pos_and_rot`. +- **[#208](https://github.com/Gunivers/Bookshelf/issues/208)** Add missing documentation for documentation for feature `bs.position:set_pos_and_rot`. +- **[#208](https://github.com/Gunivers/Bookshelf/issues/208)** Add missing documentation for documentation for feature `bs.position:add_pos_and_rot`. ### 📋 Conventions -- ([#200](https://github.com/Gunivers/Bookshelf/issues/200)) We throw away the old feature function header to a new one with only the licence. This header is now mandatory for all functions. All the metadata that was present inside the old one have been moved to the feature function tag. -- ([#52](https://github.com/Gunivers/Bookshelf/issues/52), [#175](https://github.com/Gunivers/Bookshelf/issues/175)) Each module has now its own metadata that should be specified manually. The metadata of the features and modules are used to generate more metadata, including the dependencies. These metadata can be used by bots like the incomming Bookshelf Manager. More information [here](project:contribute/metadata.md). +- **[#200](https://github.com/Gunivers/Bookshelf/issues/200)** We throw away the old feature function header to a new one with only the licence. This header is now mandatory for all functions. All the metadata that was present inside the old one have been moved to the feature function tag. +- **[#52](https://github.com/Gunivers/Bookshelf/issues/52)** / **[#175](https://github.com/Gunivers/Bookshelf/issues/175)** Each module has now its own metadata that should be specified manually. The metadata of the features and modules are used to generate more metadata, including the dependencies. These metadata can be used by bots like the incomming Bookshelf Manager. More information [here](project:contribute/metadata.md). ### ⚙️ Github and CI - Added a template for pull requests. - Added templates for issues. -- ([#199](https://github.com/Gunivers/Bookshelf/pull/199)) The different metadata (the manually specified one and the generated one) are now automatically verified at each commit inside a pull request. This prevents them from being forgotten. More information [here](project:contribute/contribution-validation.md). +- **[#199](https://github.com/Gunivers/Bookshelf/pull/199)** The different metadata (the manually specified one and the generated one) are now automatically verified at each commit inside a pull request. This prevents them from being forgotten. More information [here](project:contribute/contribution-validation.md). --- diff --git a/docs/contribute/shared-data.md b/docs/contribute/shared-data.md index 9ae31e65aa..e3066d23b5 100644 --- a/docs/contribute/shared-data.md +++ b/docs/contribute/shared-data.md @@ -13,7 +13,7 @@ In order to reduce the footprint of the library here are some shared objectives | Objectives | Description | |------------|-------------| | `bs.const` | Contain constant values. Scoreholder format: `` | -| `bs.data` | Global score storage. Scoreholder format: `#..` | +| `bs.data` | Global score storage. Scoreholder format: `#.` | | `bs.in` | Default score for inputs. Scoreholder format: `$..` | | `bs.out` | Default score for outputs. Scoreholder format: `$.` or `$..` | | `bs.ctx` | Fast contextual scoreboard. Scoreholder format: `#` | @@ -25,7 +25,7 @@ In order to reduce the footprint of the library here are some shared objectives | Namespaces | Description | |------------|-------------| | `bs:const` | Contain constant data. Path format: `.` | -| `bs:data` | Global data storage. Path format: `..` | +| `bs:data` | Global data storage. Path format: `.` | | `bs:in` | Default storage for inputs. Path format: `..` | | `bs:out` | Default storage for outputs. Path format: `.` or `..` | | `bs:ctx` | Fast contextual storage. Only path accepted are `x`, `y`, `z` for numbers (store) and `_` for other data. | @@ -50,15 +50,15 @@ These commands can be used at load time to create global entities that can be us ```mcfunction # The most useful entity, used for position, arithmetic, and much more... -execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent"]} +execute unless entity B5-0-0-0-1 run summon minecraft:marker -30000000 0 1600 {UUID:[I;181,0,0,1],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"]} # An entity that can be used to interpret text or compute transformations -execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-2 run summon minecraft:text_display -30000000 0 1600 {UUID:[I;181,0,0,2],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} # An entity that can be used to manipulate loots or compute transformations -execute unless entity B5-0-0-0-3 run summon minecraft:item_display -30000000 0 1600 {UUID:[I;181,0,0,3],Tags:["bs.entity","bs.persistent"],view_range:0f} +execute unless entity B5-0-0-0-3 run summon minecraft:item_display -30000000 0 1600 {UUID:[I;181,0,0,3],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],view_range:0f} # An entity used as an UUID pointer (modify Owner then execute on origin) -execute unless entity B5-0-0-0-4 run summon minecraft:snowball -30000000 0 1600 {UUID:[I;181,0,0,4],Tags:["bs.entity","bs.persistent"],NoGravity:1b,Invulnerable:1b} +execute unless entity B5-0-0-0-4 run summon minecraft:snowball -30000000 0 1600 {UUID:[I;181,0,0,4],Tags:["bs.entity","bs.persistent","smithed.entity","smithed.strict"],NoGravity:1b,Invulnerable:1b} ``` diff --git a/docs/modules/block.md b/docs/modules/block.md index aec0606f3f..0c7d4c7687 100644 --- a/docs/modules/block.md +++ b/docs/modules/block.md @@ -854,41 +854,41 @@ function #bs.block:spawn_solid_block_display ``` :::: -::::{tab-item} Block particles +::::{tab-item} Block particle -```{function} #bs.block:emit_block_particles +```{function} #bs.block:emit_block_particle -Emit block particles of the given block. +Emit block particle of the given block. :Inputs: - **Execution `at ` or `positioned `**: Position where the particles will be emitted. + **Execution `at ` or `positioned `**: Position where the particle will be emitted. - **Storage `bs:in block.emit_block_particles`**: + **Storage `bs:in block.emit_block_particle`**: :::{treeview} - - {nbt}`compound` Block particles data + - {nbt}`compound` Block particle data - {nbt}`string` **type**: Block type (similar to block output). - {nbt}`compound` **properties**: Block properties (similar to block output). - - {nbt}`string` **delta**: X Y Z coordinates, the motion value of the particles. Similar to the /particle command. - - {nbt}`int` **speed**: Speed of the particles. Similar to the /particle command. - - {nbt}`int` **count**: Number of particles. Similar to the /particle command. + - {nbt}`string` **delta**: X Y Z coordinates, the motion value of the particle. Similar to the /particle command. + - {nbt}`int` **speed**: Speed of the particle. Similar to the /particle command. + - {nbt}`int` **count**: Number of particle. Similar to the /particle command. ::: :Outputs: - **State**: The particles are emitted. + **State**: The particle is emitted. ``` -*Emit the particles of the block at 0 0 0:* +*Emit the particle of the block at 0 0 0:* ```mcfunction # Get block data execute positioned 0 0 0 run function #bs.block:get_block # Setup the input -data modify storage bs:in block.emit_block_particles set from storage bs:out block -data modify storage bs:in block.emit_block_particles merge value { delta: "0 0 0", speed: 5, count: 30 } +data modify storage bs:in block.emit_block_particle set from storage bs:out block +data modify storage bs:in block.emit_block_particle merge value { delta: "0 0 0", speed: 5, count: 30 } -# Emit the block particles -function #bs.block:emit_block_particles +# Emit the block particle +function #bs.block:emit_block_particle ``` :::: diff --git a/docs/modules/hitbox.md b/docs/modules/hitbox.md index 9464329d7a..e5ac56d386 100644 --- a/docs/modules/hitbox.md +++ b/docs/modules/hitbox.md @@ -261,6 +261,13 @@ Determines if the entity's hitbox is intangible, meaning it won't interact physi Identifies if the entity has a non-standard hitbox shape, differing from the typical cubic or rectangular hitbox. +::: +:::{tab-item} Is sized + +**`#bs.hitbox:is_sized`** + +Identifies if the entity has a rectangular hitbox size. + ::: :::: diff --git a/docs/modules/move.md b/docs/modules/move.md index 973ec75f86..d37d2638b2 100644 --- a/docs/modules/move.md +++ b/docs/modules/move.md @@ -226,7 +226,7 @@ By modifying the `on_collision` input key, you have the freedom to specify the f ### How it works? -Upon collision, you have the freedom to update both the velocity score that will be used in the next tick `@s bs.vel.[x,y,z]` and the remaining velocity `$move.vel_remaining.[x,y,z] bs.data`, which is always scaled by 1000. Since the module will attempt to continue moving based on the remaining velocity, it's crucial to avoid introducing a race condition. +Upon collision, you have the freedom to update both the velocity score that will be used in the next tick `@s bs.vel.[x,y,z]` and the remaining velocity `$move.vel_remaining.[x,y,z] bs.data`. Since the module will attempt to continue moving based on the remaining velocity, it's crucial to avoid introducing a race condition. The simplest collision resolution is to stop the movement. diff --git a/generated/command_storage_bs.dat b/generated/command_storage_bs.dat index bb5656dc39630e44cb1f3284d26d0991399ba8c2..2eb709b5aaf4fd3f8f54e5a28efc5dfe18e2f450 100644 GIT binary patch literal 34777 zcmV*;Krz1`iwFo9!Ww4+|6^}$ZDDR?UvqSCa$#p>Ut)7EWMOmw?7atj97nP(NR7N1 zN|Z>EA}LXnH159HT@WNFX?L~Wo44K@Y@tyA`m)j8uMIJnU%%xm;zXRtY+8*T^?d?} zIwv#IM!LwzkFH$#=*m0C#isb^$_JChd{fRh>yNIyTm5srseT{L7LzB{@6F}1tiIno zpU%t4syNyF+r^}qOpC+ite8Jpe{kiUni1jCO?gi7x39c=x>{_PSL**hy7GHLo38rE z&DSPM{S_kmOn|f5bbH>%ndM`O#u=c)nN{(}~l-5yu9u@T3^pj}Rwf+*FBnV-&kUv>FO|{r?fPuBSe(<03WA@}o)8S% z4KF!tyDT$oTUIb^H{^KOwiGjL10@((8zvjJC1?iL0St8O_ULF1}f->A5 zA6Jw8!+ss=m7%4WG6V{r=}(H;L@X{{1ZVmk!nI%3={JkhRk1v~Jlqsj-W~1daZvji z4j;lN#dcP$KjzL5E+8Djdnk(cX?ZAiJRFEmohD~hE576lNyKsLq;NhSS964QIjj2T zWU*Y1IxS@2cnl2QEe7IoSuWSJVr)Ap5_Stq0;%6R+~e^W^du2d@JENg zT+F7`=zn}@=k@vYCN-IKKBNty{?)eXDSy{mDuahZn#;?mlvVZrx|koU!pI@gN>Rj& z#%QFcNVG9Bsa`QPJZOs%4LPc>C_Q;OO=4Jcm%RiumZ$XNmn04{-AfG>gC(NH%Z4&xF? z!chZlSfUXz&^FK>jACESPiBjYabCbc8+#8z?B5AaHA#OWYabLv9<`C2L4|bOk3wvw zRdeZ+k;QCMk!A+tLKncDqh#>RxZv?X{9i5InLQq4{s6SyR^OfsaPd)3_Vn7}ej_tFf$m){V{F@eNzFMq&z)W@|g#cVq6 zEfEZ(9xz@+$HnT&;i7l~IyGcq5dkA1Y`L1Q&x_S`?6M)l6*e;X-oSBLRMP@>3X(&_ zy#b%dr-Ut^ZsKM!aY{&-LEC8qtk1l*BQVo;dW_FD8_LOa<>oGfhqFzWmk@teEfI3W zJ3LoB@)F`V+oP=9J3LoB^7uAATkpga+@?>gZ|-_b+;B*dP=i|%AG0JE*QjY4j#(Zp zs^Feo&8yBA^J6JIgJ&z);pK=g&&#Soq{V9<7cY1@^?ka~vQs2p-#sZu>U332pHor= ziA(KC{Je7H&Wh!9EyX5TcwXtSf&tOrEC?B9Knynr#5A#QbxKhMI8HMa&Zo;xXQ3!g zmwCsyCP|Bxe_%KwcwpEee7{$2bK1|i-|K8_excFBWwCLGT!EP(x5xMz?s!$4R;{@_ zJ$2S_3dA+s2nJ)yYFbUIpOmwuZX_|qj440~n*VCL?DkEhxR7C*zh>~}-)lYA{1M0I zuW;V{9c4{XZ2nv^i{dTkle1!OH<4lrRuWQz3|0N{v{Ek@W}umW$P<@XRDe zkoTyXqgMF@!yYwYQE~b^ficAvXSf3>Ch+ComWy?L%IzPSXEAY6K$v_ZZ3v)bM+DqR z(*!=C4?MH^lp^7PZb@95pOmY)qs_a|sLkuoyn(O+tHtShSzLJgBoae4F<^Xq z^K?2pb}cRv9NgYC91!`bpvrAB=X(=1e&>aAS`{PHp%TNw88F_8nt44t;8q~Eq7mc= z+_?VmAw1wFYYj0cJY5xYe;zp^IFIZQegIq%o|ZG`0C)iK0JsJC_*>zZeEV6WIH3?I zpBS|yzWt0iPK*@Jm-33nx1R|Om+~Hsk3tPQwf*dpa1^p6uE`s2xczJysL6p5bnlu- zwx1$b z=-SjWu=4_g*A3gnjwx6-iM?xaDO%h#GGFlmwY^{TX93Pn%JoJrJ-oHlE&&?x*#Y=) zGlsJ^UuhZ+Hy#aS|H)$qrY1Y^o7Cj;Az6QLf}Jnc>q|FL+3Y4sd2Fuqhd`=!A_6LX zP2fsj^SEIYFL?#(7B|W;NZ&DaQGZYQej4yWZ@jgVS(TuLNZM7a>-3HvdG*tRfKWpdwEneO=VQB z{6q*l{mbB?@^g87CMD={HW)H+CIyUCYj@Vn369^|`TF^5pPFjz?piu#rCNKmuFfU< ztvzFn{hb>oueI~_b_O-o+R55GgXg#Qcpd(gOAlMSS(9@H-`AK;XP1YIlf%tfdHA%L z&B{w>U&AHgzJ?|7`9{NC7RSzfLqIrE^-wU5PtOBK5*jt*_=pCBZA0QaU5Mj^M&W$v zp=f-ki_mcC;nAWNah~?a;F4^MIM4RS&~U?@F3Yfu{yfhgLqjAxT@o|1u^tPeUL2Qf zk6dCV>K@~3o%7Fwb3N@FweKg&VFb6756) zT%!}6Y_X~a8(gOZICfHn^Lp-SFo_EpSkJ)VcV&PGGq@Zg-j(r*e9hGH-RWDJhHEB| z#(QzcwsW@x2Ya#M@R?gr-Oi>N%|IUpi^QgF`#Hc}E96~VnMwVgvqGs^z#F1!BCX+1OPIOpY9WUFn zL~%CEKvc&gn2cS_#283oxAU^EBxhD0+Sz!>z#0NZLRffb(lT6ObQlvIWjUQc;fnx` zVkZ+QAJ1A6-xNa}$1{a<1+Qp)Q;g71!Fx2m=xErfO)-~*iw;W)nn}$KH^nT&G!xAT zx>rM#!wCaT_ZmRHFV=9#mYc+IUu?km;5&HmKrizN4i3JC!!>N+KP|~Z4V(6s_CrX9 z#a=EM4{WmipxkxBM1J&KlIazO#CIo0uD-?+&89BdA9W!;b>C^<-+%`JQoN`zTDp2>gW*w2ZE219zq-sG zk}@JR&qai!WJcTf5_m>iJQyT9TJzEX)Ix%m%&g-IJR~I>i|i9)wDL-H7~;! zPo}Q(T$*gkniq{zE!{XXi#X|2x?Y-6ykrA%-4`WjkqT|t#tTV6;ip9dv-24O6_jSC z(}^B00!lFNZkh5XnU8XZtvw0uFR8R;(vuCTv$ab$cg=%nzc+MlV35O2Mn9h0tQO1S zbUR*m%i$(fp3}ZUQZ!|3xz4st%u1)xZlZ*wWX~E_mdT!l%%t+Oi;RfFcfWe7oWl?} zStYAxYe0`dF)OJ+R?X~7)Oya>VPe4K`8kX-0#E!mEsL2hAdbCF;e3Q% z6&Ht|N9>q_yE#bVrUW(9-foWwXiA_7u_SvWc4th}S#!L4MFgjCxKFQdByT!DsTMijAx4^pvk{NRrv~+Mr8$6b-^b7>P7MUg zofyd;X+NVABc~^Rp;2boZhD}H@so)4WIKD}oJ92B@g$=8&Wm+j7Kin9Pk-M{qgbp0 z<*mLVovwtE@F8sVJrpGTY_V!C?Tk@V)FgaFBLVfm(cBGk1xVBi7|=jKb3=ledTZ1O z7*Vbm*5}nSI(q%U5Ku8_0v~zS=T#3oJ3K1Z#mrm$A&w)D!jod!$txE#;6zM|b2Zn| z+~G7$LpA5o_>8+_8@VwBXWU5PQ>>mTWpNm%SQ6$l;C7dVnC&YNXTT#E=-S10*0{0u zbZw6%f=k^`Fr%t_EEV-)I-^mym>+e81w~p@n*BzvNF`{BbO8AVQRAF#oaDO*ZV+_{ zch$9CF6O7D-EAr?nd0G1Bpjsnyq5$mjQ7rM&QA~F1w)f z-3;uBj_sJcaM*P0EQccNO_j4veO~``F&=YA1T(-W0&nkj^3OnQ?>Xkdo9TRmiy01M zSxJ~zuj;JMcdTBoi{1cOA4pIXClCCbLJT3y)qYIDfhgf%|Egq;_B-}7PQM*%of{g3 zrcY5*IP|$fF{W=Wrt8L;@6+njT6drmhsl*w(9k;8?g`~`zt zltsN`&MRrB5KXf3L-2E76HuiohluCCK9QTQ8@{QkTr!%jb8^sbQq`2nHSH#|YHqth zsG29$5l{ks8dO1=X7p*g*uR$Sa!DqcF^jLGF3QcJUWhXg*HI%F%%>VVAnLgoU^AZ* zFkf?aEbh735OB?@34yX!Jnp%e@r<(ectPzq^pxjfpM|Hc4lC$ltu0!^bIz##e7ppBv?`P9x$EM_jtS+!Q@mQ{%3Vo2fKvZ|+X z%PPx2%PL^-5f+HtvWgOMg!PGBv3LBGWfh^JV)tl#P1vzR%PNn9YeK`}t+b;O%PNgx zD-|ejrQIE+qwQwndR9doTdBf@n76c;_DT;IgE)#&IEWErQG3@%OW`n%WD@3C>8`@i ztRQaQA(l9Zao*t8av}nI#oLwSJxr@bg$(+*ZL0LTn-#S55GUS}T`^)Cc2+(e^^)@) zw{4s6yoiQd6|{&fgL>a`(++N1v>XO{4qsBWJzQs?S+NXyE#DQEx^S!H=906n@+R6| zccMev9^&LgD5ZqFY;u?!;Uu!sZ7b5OAWn8#T`@O|c0XP$yyFUu;_xF-A>emfK&RJ< z0F9ymfr5bRsMBTq48+bff;{=1E+@&?sCo2$L<0fsCMpx4P$OVOLBN-GkdP8MjEz;o zAmgSpI7lG@Zk|+?IEeY0J+`NWC0V%ga#$ev3wR?yiX#{r3=9~r|8BS=^{-K^e}VG4 z8Ac^iH;7~1C>+Fmu16**!H0~SF~82gq5guDj5N(S#Byl7=!Q{{6dmH`>WsvB6X-@A z(gZYW?9E1$3+ToIB0!^NB|M@a;0`$tl424ZdzSXMux`GOPe7FDOs>CWp4JXOBsTk1 zT5`$$o^VE^{X=R;TO}u(jj!7TY)H^OzNf2_lEE|Ebs6HnG_#bGaz614=>W#@Pr^dR z+psEaCn`(^z-Cn{V32VGXDdnsMa@KNL_vT!&uiw{dZ*-YS&XJnc~m?lWK>AUeHj9u z^iavjVxk{y!VC(dan_Mn7@TSfgHU

gJHFWdUqvZvqAxH|-ox2?=ns-yv~cuanDS zo>#A&iScWAp_03e;J*`z68PwlQXd}36pmc=iNot zNdhW%5=Mn|;57TFSgqOgyu;k-d5!V@*G;im{{tBNpM*iipVBWGsj}RGj}|K-Kb5RR zL)(GxCo8Yf-H+bmU@f0BvE>scB;tp}vj{33xn!L3aWYqG!xD`tHAAp(YDfY|y6byZ z*V0lXG$FGj-oK5$CK&c_rlr4+JtV7o%;e%Sf^vB+4y#30i-v%;s0q9aS?`^!3vniP zA;RP(@A*7nB_DCIB{7i!Ffpo4 ztRWnG1~wxIsK(NePj(u6N4)$6rAno))fSSC4~xBZebHzN1CT1tk;d zaZse;fXLhK3R6jpDQKI56rM%7vSC^DIG9Dl0g-pfGDpcwk#Ov@B#`5`Yhvf*|KFL}lUY~`<>#&62ceUV7RVD=c zEEMdpK=55unV#Gf3AK_X@$7bLGm%}Nh1qpjAov@rIz7p08XgCEG?0DIQJOq{?_oYg# zS15~9r^FP9B{qU0_V-nC^5OKQ4nCylbN4OfXQhz-s*i{I}Onug**VA zh8Q10@9Rz8PVF>iDV$1zbqyIh_XWnkn!5SWpBOW>`(=dG*oft_OqGdsr`<}${?Y^)9r zqYMdy49^x)R!V?VTS}*5M7J@10ttrQ&GQHdQJ)o;x<3#MqaHAbTC7p0^OJJDNxaqM zl5n+aNxTpCqq^G%6^MOs1bH9qIHV71lvseqeLM0z{dHT+rR)e&btN78`!`i4GeK=i|dq|T&$PHYF4f%<$PmHFN0?m z{~nK5+j!|k&96d+nN4d(P^7Kb^yPFmD^}!X0Ev4q0}MD9)44RKVh|@T(Oogu?cCl~ z(h4-5_XdzF>5fB`v_^@Iw$t#wRu0#u%jNi{oXAI#Www1Ri>p*5%Pgj8#;K-5P9@(xbk}N8it}?#iNIo0x=*?xkSQS09PKZ8eWJy;QZ8_`p>?yeD%L`cDHhYu}2rWlvaKmmDo z2vcS@!7)ed$jPW}H0;moRQQ2RONm@0O~) zYbgtpqU4@tJQ3(7<;zvMUe~^zmvRR!gNN$E>P`t|n@!#NPzArsZ z!$#}Tc-FhQYBKALhgo-dApTpsz3t1-A)?0ciI9T(&bG9lge)e`!wHkuLN{+p)&k>U zEx0^h2IA@7L>X`%DvMRMr{Ky5V(rApVva&ftyWh=7Nc znjj>72;S0~!2<*Zxbc=IaS(IMj1oLUhG0%#6#*pOc2qIQiYd6(3f{PfocZs(M+D3n zeF6SMJt=cCMNyoT@vPi-)EF;1hk`{HJYo(-=fA`q5zONt?2YaZT}u~fNk~y*=>nF6 zAGyw@hyaZe=TeRUWB(!JXP|F65+}d!Tz>L3N~|v&0iIQZkicPT6Jcd|_6AZ&fKz*g zxUBl_>X(&9$tii9k6|K3@_{%#!FI&J(XEu=L*9XJocyu>`^iU~o{z@W(06^m8Z=7I z!D0dZI@TAUQMLvS1@ww#RvZONsYRJms!$=|W3V%xAD8Rq!lDon;Kt5a;vnX((O>6_ zbupbNSt*ja_+dyO)zO-M>1mW{Tr0rpO%Xo>iN>|De+AxX+BvBd5i;<69T-7Yn!D{R zD-twW89-hW{Q%(CghtumVFkz){^ICpCJm&NtQ?}*GjNHJg4@Wq)fH24W`q=w=M8v5 z7KiC@8MeUjeF4@2EdyI1FoG(qi0XYyT7`^gs?a5JEmiY<=_!)AG;2s)1&?zIUj-x1 z=Ok9lH$Ypirt9-!HHGY@X}DDOXo2jZ4_P&nrWx4|4P<}qu{YD1&UTVz?j&0l@1V!i z#R^AO4jcPh0rP?_=f{WQl|@#tgoXv{(LnZn$0@0=B(j*eOGcQykWW{|JSb##SY%R@F!+FQzs z){z_$jQ1f$07-X<&mbu*!NHS1!vT@F@Dh@I$X%}4c)#-;(fVCIkBW{`7?t;vaoOkh z6U6zlF`Nc0%gt(fGVN>{$TYwu;WWUKc;6Uy;oT)!4iWo?PlOcwIpM_KG~ZnU;EQ*0 z0Nwz-aHIhSRBV8Z%7?rmgul$lVw!^?p9zV$=LK*k7#Tcc_3iO8#Ct<;29Jsl2IIR9 zy?J7nbxx0DI;SB8nI31lwnt>}Or|{^Ux$%td&n@B_TgmxhOv|<(;bcCbVs0EKxZRQ z1ZWfm2$a`Wz2>9CZw3!*%jNMV$``RI5;oD~;#Hn=xDq3RIVs6pCa=#Ii_O`gQ;jK- zu|zi{kovvh^1{vJqL(zvKC8!^S2zlJl4>&PVAown3mkn8L5`FEzTEd%v6FhJNBK$Kz#hBsK*u;-jn_|>ja zcD@nzBz!5G^(4k4kBo;4ia(`ag;vSffuDGOJ51J}GhRYw6Y*q#)YH>p%Knn`?ypMP zP9c&HE{BQxK7JRMjS$HM<#2;zweIX~Q%qNZm!JVBUV>U&i1|e8nQ>vK1ceOLGr$00 z-_VmcB{5Ai7O4&mWZMT9X?Y?}9&B{Q7>7n$3Wt4nNUn@K{)wCtl;9YDr^pGi)s7-G zTN*am5-_i!{*;c@5aPtklPl)C@KjDo%%kE?0HZ=W?vislm4Xz>92FT7NWJAb{*V$Q z0&`H3YNb-su~zDFjLTZ&aAh{0V=-lB8PtK7E9~3g{7T8pA>wYEPYhCkr&u%vjA&Be z5+Mcm_-U3(KnBmai1c{8F%R2KtT7vcdEG=2cu|{kEmqW&h(+xaAqC&Z=UOTenOvNj zP%ba_VVjK=yCGn)YXTn<`m--KBp^=w)1~yrc>2ZkhGkIybgA*jIq_oSPe8@-hf!1M z;Eg(u>Zc>wuy4DkVM=~X!F4-QK;GBvG)#$1vhXzDVS!+9FR0})&~r@a#{NU%EKEtu zCF2twInm7d*#H0jzQ2yY_pX%%ZC zAvx#q>ePVdom#O0E#jI7Q5YAJaz8r1QVGdo@to#Y@+{8FXF^hYF24C2HuRjL;4 zNf)a{&cs?IOx}#)D26p-Lc?b4(fE9Z$&D%I93qzY4Lt#4c_lP+fzhFX>_4PVzEl#j z+4%Twz~-&bo`bR0$C<|ckZ|hZUqzAWnR0q&k2-zG5AKGqD2@CM4o7 zIfqs%F*}9u&v7euT%ne4AZ1=moQxIXCyA0ZQfkZ zPS988uxqm_mh!drkYP@-G(!mcJzT14Pl5trmSHYcX$Ax6qw-P@MSn4(!2HGmunW2 z-lPc2`6j$CjiLh_hd71vw$p9u25rYOu^f*ZmVwO&7+hF4YYT)~1_}cP2(zY3 zevM}Eh$&Q9m)umzPsR@Xgeg>*tiVvoPuDI1Ql?O0$|5r*KWRIKNSZ>0iStdC{A6Wv z15>ClDc{*wfQs47eXcE!y4!n~SM?M^#!DXMb0~REUasogc2mQg+y>O$9@&K4%6Lg` z9ZH_ZnX6#SG(9~$UQL&?vN%zmAQK#GIW=-X+I{oB5i8m(=1%X3UWKK@7^{>UGO|4F zKpW~^g=e&(fV$hurO<|Cyrc~|lsvaTSGB6@XXZ4!ncN+pONExKVwTbqoJ==FSM^!m z=n0%5_7tU0u}^@UTB-@OF5__o`lcyB#pVGaPO~t&R@LGisHSd2Q)1q_!-H_v7BTct$@C zsJp!}4Eb zb6uAL!MZM$1R?2D@U2sB$_WYza5Jh&9K^_1!RnWLt87at95!!?2^eI^70P+JIlEkM z4kxp1HI4T6K^+PzC8P*>pXnYwD^{oF;lMxI9y>kSCE*;~l0d3xvghUTbbIcKO|r20 zJ1m~v^?BW@6WMi1_EIa7K&t0HukKTk`@IgQ?)Pe3h`B~R$w@&WBk&~W2s8fRq#OqN zp5&a^L$_>FQVucg=*>w1anUAa$CSv?nc~)GoXv9wnme5kpv*P^qCVeD-05iW;aaXZc<)o`nV%pzRP6}8V=MdBWo}3i8 z-kPN3h`{|lIg*&4CMhhz3H?1eBD37-Ncp=2$amP|q%7fDN2V!{n&Ys?Nk{BlMdMP~4l9#`TL)@FvJgk4hXaV6F* zzQl;YJ+8!44%W3}O5`0QZac#Cje$#!q5+e6hkoAe}xnEr*eAybX<@*-{JsT=En_^OTzw>ei?_wrdxKQrEvOHdczu{`df|}!IS>AdtR!_&? z;oX}@g1I-Z2p~zhG3Z{DmYOHPts4Y^^9DP)Eaq7amJ-b>*d_7?+wkKC>rl)IVNG#s zPaQ3t7pFm)B5seS1kTH}T2x(Tl_@1+nfgRtrVT$XQ-^|O+E7wT;B-}%c}jpYQ3((x zR|0K-SP6I>yBw}LDJAgF^+>QdoE7sbZJrV^1oH}$B7meniVe^DfzHEtP|2q^smP@B z)-6Ig1)f91g{mOBMQ@TEcd&fAUm#hX?OQigPJytFcgH2BCLFWrdESJB5>eOqM6PQZ zeynR83hJ7M;%4@$AT1Wdq}6_IqJ+;7*Z1-)_q3dE3SM@ZTr_N>T)rCUgE)nlWSLE- zj^!4mw9#D^^V6W^9-LoI6sg!z`!sCs`ea5{-9km&iLz!;d?R zLop6=Yf7q?>pQ`-yjl*ZX7`Lxc`bJ#;#zh|-Yw@Dsb$#qp}EfBdD}>-{C=hBPG&;} zo?+DtH=EJ`eX*Uj(QFp0$(d)wZWzW5Y0YRrkaGhzd?wqCI4!2AF5O7_d_G2Cx zh&wG_%H^fSv-)@=XL`z+<|3reyu`P_ff9D)01N zh`7_cB<%DZ$<6p@Xld-&unhp(u(g1Q@e7P`wJK+Bj2&QOtN{_@^(w||8lR3O;UZ0( z77>x&fET=46Z&exIKCUqVPk13V36?*y#}UarD^7j)1iTEQUAT&(Q2{Sc$cOT$M&Oe z5F_-=Sy?=-4<%Qnql6TQI&=gf_FInepvpx=uyZ>}07>`w{VP>h89W^PTpozOOYRFP z*(nm9p;!_~{ULEJNJ-BnqgNwNhSdBabr(n_C!1}qMsqeK=#R+@Kq^J~bX+(`bV$>; z!5tu#nj9id#j{c%>|Kw_@^CIJ$bAT{WP3=&`z2`kvOJqUEj=wiAV$l#2t@jYB5aiI zAeg!N-C^dq=BA$Hovaq?O;vQ$N$E`T1j?i6PFgRDm1mT%QJg0V6a>hV$BQa6heyqA zkfZJT%saod6ysTCpiE0FkgKxb#-l|08Mhni&myi{=n#6mnB+QyR&eIErmsMTIHK}o zXgKqL>o&ZEJMPkXFX1XQ?@;MBx|kl%VO$r}3eG&mflP?Q0`C!7h2|YJfB>;|=Lpbf z-md#?wE7x1s$Huu1!rz^-`1-Zvn}haT0G7!+qT{cjms>H^lQ&k$x+qArm z^FFyF=g#|pkiDmO8*YEd9Wd|q2jICoXi#Ee=gE84NuhbWR=2GuyjhSB#B=wEZtLm( zxWVE~_Z676H3L0VuGO6$3UKC19|}sXi=Bc(Ja=7v8zvs@$WR`86Ayu*UCn@rsPDi8 ztkDW%%syl$U>yYUeqqJ|Kgj|!N$xS8wR%HAys ziD6L;7({)`*X(2b5dl@3CZr@`5k&-F5-G0FQK!4rARw%U9)fspI7)nsnxe+qYD7W6 zb*sI{_!(&YN)I3}mR51Q#UdaqmLB4%?sc`BY6W7dM-XDa28w!&+C^|3)*-w@b-LN@ zP!huqHDJ6ndWGzkh61rPMi62*GyF+0Kc1CzeK5fO`k;k{jJwYIK#QQLyFPFQm>E9L zgogd~fh*%PX`>}$_W<1XO%+R{{%Nsj)Ln6;1T>0`3ec##;z*TyI~>q*2iRY6xH9~e zf)K`EyLlZV@4JgXOftTm}NaljWZysn~K=>rde^mbaXM| zsEZX2V!m`}LJe>jhn1kq-|+_@)=LeC*P0q-Sgl!7p!1utW_`AuJ*h7eF8)TxBh7K2 z+LRn2@*8K&awNtSys3v2kY|RhL>3*6$s%%i7MnpS&Z0vx{ttix@~-KN^{a)q8!#fc z8_*#<6OAU0GvQD$6G-9p)DBj0J$W3gC&K}e{#fS7%^_MFbB~xx0W0bpqMw39vEvvS zSF=OGYDNmkbH-3dWRhjv*H{(^wnMEWH$_709ZTZH+lpM}OTuciB#?Sj zjoRzY;mLM2FDBli7jg4uxWt8+dwO^R0WN~WlOO44>eZqru3yIiz^%*{fEeX2?W&m0 zYg@-+=I!t*)a>w%s1Wci_?Q|=hbM*W9oI07k15RnVRA!wTf3mq+2OF+P8Kl8xb3rK zj$(?L$^ixBU6TgA^W*Jw<20lZ!G_c!JQK%dQM<1(bstkO6G#Dh-*BcZxHQc=tFknZ zeFxc2%Sdp{%N@u8k@o_s%x?zIKB4XKc%N(NC({+=H)NP6(=`KxeNBlnr%9Ie1!h=@ zT%Ijf^Ej7^;pTE=Byu?tqg)!6n@i0~VRpE3^bPxSR=gUaY#P=rbh`pAGX0U5c5Hs*)5Ml z^5HiwO5o#;93+}sN&dJ)X!-My`&$1iRgH2pcstA%?(2)tW@tp|ncN+R-233j-i%k6 zj9l`rBjJ60dkzN_Ohz7cw_(alg6MatB>2?b#t<(FqRXU`;8S-~@b~q|64XJGm930H zW>Dx!R<_~OrS)F$`F4G_S}e{F zk7kR>6IYkIG*l=aP00RUXK~<3PiFyceEmxt#DJSWKZ7Zf=P)ogbAvjYZO=VF{|Xn; z{D5{&lg)PR+BtQAwR5Tg5#t~9EMUDoEmrlJif7@VKywX!03r6PQu=t3V?X1C95~YX zqrMnEDQ457`gYjy;d-*2Jvm&L^R@d_B4^^oaKaRc_!HO?7w5}bH+ihEr(*JXt~Ef1eof3BSZ zSD-QKYb{Rk7TrI=Dc=yq;j(sk<(=|bN~WxTp$lkoR*YWxobTv7qWLbO`>P(B8@SS< z=jYWhr?q>MWnaxQEFt*c0Ox<6$N)Fa{{k`h<&d+i8c02my8^SAr~?TT5~1oqT)=g{ z+d9)%Z~skQboD!ewckS(ZGdCZDICPyRqhqnW$o<$Xt8**J}YM@&baTAaNM^fA@$!v zr;v-)c71pBIUw@; zgtG`KI+JVOOJ!V0$`2_&5i%{gWZxr3MqT_N=^{cVC!6hi#BkY=pnHL@2$_@&o_QuY zL%f_J*FRlHKqF!f=~_fY`WW03ugc;{J@!@;ztIIlL@@4&6+uY)5r&9WS=O1XXvf|V zp<(;D

KIKWU|SyedxXcQ=IyilR~!C>OAtp3bIJfJW`Tf&mQ#%!*4WB#IgVBMJhf z-~T7o)L~PviJolzmjjSsUJg(MkR+S;v~kbj3(Vk|?&9%yN&bCtel#svNoo{JQlKE< zj%||db9h2bf|J>_e}>caws{(1F(t2&|BR+pO+$@DIh4HSj-uKo8;Y`&yoUd?p3e;J zrhP+DHpV0?y9@jb11dCGD>|3FYiEFR?izGd&JHE7Tl@^B5XEI{D%n3^=$S$|9AgTB z93k@G#-|qR9qf7&ZMoREPc3TPKD8)tA?DxFv-#ucdRflb?rdISIGZ0Z5%s^T$M)k@ zGXrqO_7TCcy+a_<+u9O&xma!Lz5P{j?%iu}D0nW26d~^yy-#*htj=fRc)*8nZ?cC( zy#Jow#Fbl;@L2@<_u+bLz5O$rR*UkvcfD1i=6dUh3IYECY+N_{wNJ}&`-p*N<9Yxg zc74Nkz1Ev66m@Rr_NWl>AL`0Fznqk_>Gs^IECFF<^$^6XwmpykzVIAi4uIV#tpSMf zy3EeBd#cDOXa!6tlJy_! zWVNai1MPPVEi=)@}>%7|)dA^8k$T4AtI$qGSB$>FK(-aAF() zjIjkojQ^?D&i}l9QVPpq7eVdZAtKWMOl!4jjt^15eQ}t&N*MAPiE*H~vvxBO3 z9c@Aj&fGF${p+`f(RU+5KRb4CR*a~P-T5(XL9 z@xkE}A%TIYtVU48{$J`X(AjiWOq?yy{yXk`H{W@5%W^TlbfW9OV|2}Th)$kKO*fNz zQmS@=1KgZxNgTw8>C|emE|n`sg5fl5z#8H#GaM&-FOwKzx%Pu zzFw^eh<+FlqaRvCMEYN2@2Unvw|BMQZSShSi|GCvT_+7ZZ@ox+CNqd*cTl(x^WW-o zrNPJZvRV%mr`wr#b=4)|xsoLbss9p;Wfo8Clr5+A^vW}qk+_KFztholE?nF7g%gd! zMKu4t?p*Ul?I%f2mKlhhYXn8?|AU??FOI6U+taZX`w&i*dq~9lKkAk8vY1ti>CV%5 z{kpKTQua8wQZ^hR@_&N;mYP~q4kyKGS$aq74#nJ>1B#IMKRbR{Dn>C|Ge0Z?>iS`6 zQ6b=ef#rs3fF59$8`vcOSFnWHOeaq+dCNxJSi(pg#N5DS@SWrV6;b?eU_sK2my@cy zdKM%aw#D0xwo1AD@6bdS(|NrogJ?h zo;fw4S<9yu67v2}J$G&g9F!ChGG&MXbX80}ztG)hoa@)0MO^=vPVe9!K|OvF5pb@r z2}08Ut#?cZo_%X2$;y`b{}2}y7rq@D;#e0wE+qWFTAR1#CayLYkd3#6M7)PsFY9G- zF+VKkwK;=ZFF>$mBnd*&{|EPUC&kIhVs>1qd+(mELd`wh5fuUoI3sE{s3t|FdN0@B zp`am{4RS>gl8#_W<``0P*euC>lgWvfoAudhT0U{zDI0>Ho1P#f9mAGjSyXy|^2GJl zr9iVKIDjJd67q3gcQAAb9}!GG6hTNjfd)38o>U9b!}8Q^U_nct?lT; z?lbDc`m>1Z3|_R_thSR)y?3Q1fFT1f-2g)fo9gj!yD}}6I5-{} zju83JkiU_-7MtrK!{kphK-llaI&oaMo3Blz`m2cOiJoXSYQ9|)tNBSx!D5mWG)kSJ z72mX|mbkS7bq(DRw^n=t7h=x!=uy#@7ry`1p7@DZxRdx1 z7h)E8<8HO7X6~X}Gtl0+>p>CwQZJvMR?{GF`P_fU<#Y30ME9?>j;MDC9UakqMjcUq z7ICevRFS<~lh!XX(ifiJms>fnsD+t^{=z%QOY7N@u6a2s>xC)XS2{$z<{|K<5AiQ@ zZt~J6Qm<}K`0D1iFL#dqT2>q{ZT<8rmx3>ORr|8m<<5@4i`z_ib(=9Satq1XuyQXE z?y}8w<@M|q`n#AfatrjGe<@Ob3!i_jM#$w%cbhA(ZWH;%?|#4Z4f|Jp0`VFSSzgw8 z(aSyMdhO?kFY}P}1t0Ccl;dY|^8I2C%>A?a7jeMS z7rk6ls8?ak^-`?RUXcaet1}6Fk%o*f#nSS{8-%`8qtzE=SoYU;4d+S9fjVrQG^>S$AAs^rrD*XGsB438D%~#_K_Blx$UA{nv zoW57k7vf8l`7wQw{#%VF))(Nt)i|Ynem}Oa$OZ4q@*w=HaF6^V{XM^2&(ts8llE(O zEdDaRrvFMD!@o@5_pk27l2`Y}%d2}8=e0d6^x9r+dTozlz2=w4UgtY+ulixWSNgKy z%YBgP;g!T!{Rrhtc}eqCJURN(A8CE@@5;WE=Wk!p z)4i|fUEAry75kfrj`O)6+U5XXEd9K_tRa|kUbBH-SoCh!t#rVg~kG-~eX zj3@}WpBryad{CNyj^Az-fF zyOHLoJa*K(0#Ut>posmBHe+gs7!f(a(2QxoAnI#+bP*A|2u@`?1R}j|h7-Ru6o{oU zf)M-XFp`M4eF%@adx)pH8$A3}D-csXf)M)+J7S3FDT>WppuAX`;leK#0b#N95X5`S z9T`OI5djBFO-M;<`g9~o5PV5Jfp@5OMDRP5#IQpR7_SB_C?CRVAcgZei~xST0y4%O z9mI>GRnmS@NDPZ&z<83eCVdE#oUXlAC6goz%p|$TAZoi}I4b7CBbD8fZ5*NwB(m&i zaUtt-Z`q+mnVnci5{Uu?!3si)felheh#MS4*aZYFw+@fXO+^B-a3!H7;a;dC$B%&L zsMqN%M;#vLNJRp&oYjOD=4^U8(r7fi09&2U3a~-r0u&K|6n{mbW%;|Cj>IUkl-yQ} z#Bv)>j$9EL@6O%Wz`An_$K6>*!K=?HQryLitB)5Wt~jWa292eN2za4&qX;Xs7LE%| zM!~b=vQ`dI)xWt9HrAAS#Xn}$N=`E^C#%i$u)9EiP z!E?W$1A~xjigz}B>Yaj*2(HaKL`3=}Ov=jga4v2Z_>h^Dbr8h+ZEzXxbS19+=MZtX z*e8k<+^ACU$K)M2m5zLRlbTFAr0EZ-i*PDQ*=+yLpUZ{>{gAi~r_z&4_V4_8WJt|j zazRd|B1OXEXiEaA_xSBNB{+kJR*pGUaLaL`)$0el`wRp-(USy_bR9irOvI@T1C3$c z07C3S7xymHR5k(}b-BVp%s2E#p{lGj4UIxG+UJ+%lA)5xVRKiG%a9tos0TCes`H2# zE#D##>1UcydTvPu0Jnl$K*V?*W32rnx-oWujj;wqj9*kSerJ}+r?aB&JDX}uFD8r4 zW_YG7kJ?Dhpu$}0J}#nZGP0O>y@fC#5ubu{Y3B--axRMB!AqsIuc{AMC)C_*PocSzq!P_QbA@IAA^G?8mIJMj3?6D|mj{{q&TK^Fw9J5tEt63p9pA!61x-Z` z5$9Ask(Wfbfss=Z0ToMvQ6U}Q+pP_nkW4N*2cTR?iu9@N#T%#BxzJZAw}{!F`Bpw9q}UXE5@ zn12F?>`uR8J8U8=z5^wa`0r6X(+y(Buob3y+yLiudbI}bKELgO$v1ElfZ zW&v2$bTQ}k0}_mAMu>V+1z>}ssypAI(oba~rRpk(Ap7?qdE)y6DcH_OdgfjdgV@(n z4X;oK5g)aT>uyOy%~cf`P?hX;7?5hBaKgOeei-rN1PX;XETAB9aUM3jv}hYO!`N#h z&}7KduNCh`+)KUc0SzL=*Nx09cjN6X4J3um%aB?6J;^Aani$+4dYB%B!-Dgm zp6Pxb$7U6GFqvLqtByx0&*YuXdKD@1dDRk5r`zH?U$+v56Q#m;?nc@!PsgxNs-DZL zwjPfJJo9kMVfUe!)ZrjQ<*ke2<8#kxC5gkD$6$fJ*g-qG@o@t{$S?1hp>)a5z?HLj z7mz==^&6;%1UY0B-2T&bNY04xj+9gf^NR;EqeeMtW5~qD=M0V=+JzEa$PMJWTA$;2 zzBU#M>I5<0t1F`uOX#zM8xL#Try?Yo(=h4Ga0fGB6OSv%C>)RKnaq&j9iM#ky)=0) z`E{e@>{wfmn8Aj=Nxu3dC3ce|$}|7u2{w;UA_7BuK2AiWDY8icY59o@?VtEbZ4ey+ zyB-iz9T)5^vBYOs95Fh&lg25*OBnWdtb$mVK;JqN^>%E44V6}@E9-_tssXkE0JP6`cLLo+6vF9K0@b~#tyDjjew+z!8_*l< zQeQ8aYLdeQygdlC)Yn`VU2~qxGV4@!YW*Nt-x%Aqj?0lRgZPZp{~C;MG)kp(X#X8R z{)L_$T8nXoSs=NC^pn`fFZZ4~xg%5PW!@MU49#tOVop7;F7+rPVEVVnM#K7|l(T>O zaVZ6op{>77BBqd{HU@A7Zo}bE^*;lwP)6XSzg`|_a`KSDJ$bAD&mo=d5ou|uxQVn3 zl3TIa>xX)=fR@%+T8AyrrQ^uKBbii>S)`t{6;K#-v|DI&!S!^-MxuJfOK6~af|GKl zdkwREa+`$00{4o<6F6nQUVlIDXcSQ^GcjeQd}e`r#GapV4Xx_i@aRzF^FCp6mvyw{ z=x-z+dG;-%#9B=oVJ{0k`I4secknkdl|I5@y5_ikD@6tL#*wrkmRYkq(+XK?3s&F= zZitZnyMNZEmfI~@j*KOsGz};GM7CxwoJq!(s0=8bxE2ml%8Zg>u$@+7AU_OU@&8p! zkrIV<_9Jb2uJs3XW}z8GuZAZLOu;m3F9AZ5bK70XLJd|)Y;<*o4nIA=F}ASndk*p-GbQ^W}jo^+?IOn*mC`j;$x_$W!m3+#PQy>JAF6NJHS# z5KWV@m~5diz>0EiSLxGPo#t9GpBe64F*$$_4%<6^Udy3I5^0ZX6sQ7fHK{CV%n0-M zve_+p>#PqQXA_~sf^OL8jIe9PX_ga5LcR3xA!T&+Get$MS?Tu};Imw)gfzXm@Nz?n z!D7dCozE*0xiS#=er9I?pFMTx6h;Zj5O@A(HZSZHahz#7(E>`Zapo#%XQzx}G1K

oxK_7v7;o_K7*OhX4@ADg=kCa;$I};d1&0pg$$fNORgk_^>c^$;o^yg*rDYX-VN1AICD*}3OqHFaKf^HCDm8s6Fd~U+@2Dzl;B{d@fFAHoyp}p~7ph1BKpTJO(1$T5 zKLeyE0?AE#Ul}gW6mw0|{)s@^Q=PyezE=3}%O3euq2SRrECT)T1LJ?lQQx;(J4t>k zC2oGyfX!e9L}lq$A%jy{ZvXYiKw$wRf{Ly=KYEcGG01UvWcNqmxwRoS8Au!v7Sg`_ z3`o+u#5GwqtnlY~QXfmy3=GO|-o42(mhbz>8gO4p04|;X<#%~Hj6p%g5{DTJF4!nE z(RptDpe8)2Ao_~_Q3 z zP8+Z7n}iX$W})o`h!08=hQ$z6j6fJOvt~4Lg-f)k#g&faA92})Q|%-n8fb&nVHj(2sRVb@8Hv|<|?sT@hDcMy2N7^3}`)mP+ZF{+{kFKBL7TE$n zs1>}j72)s=*N){k7=MS(XMR15XJ45oZe}-u;a>|YfrX}B=edtaTbmg( zpUOtm6hkw_7{kpqB!U;V#CE1Zg{Fa1h(oz~l8aJkz(Pwo^a7mdy7gh{4+W`7@Z@X4 ztg}sxdDyBzhZ5-iVI5x|htB)A1yH5LG5pIIRjXl7VbpgD8~T+feQ?f{M<*20T8d5s zJssn}{S&lE7p8BMl|yqdab#635AL!Rzf?#}hUYy3y80_)il~Ea%$w-6gX~(ApsWIRSBA5EY{%|-$V zI_YAH7C%94qu|J=SQnnT03^aSNT=jL5Gr{K}6@8>dlcx`G z*jS}%*Y$w`D}Ge4@ILh<#&Vt!u0bWUCBc)FZe0)+`e)(rmId3{z7By4ecT^dOl+?; zhG&Q1=V?H;i0Hy^-o#cw4)tr=duU5H<%=mvqXBA}oy>X9H?=v^T!#89+Ibne@P^~} zaF7Svc~P#_w;JS=n92$MlAs5`fnK*aA51f(n2Cvdo3!Z=7Y0GNilN`tR%J2o+F;geb-WT(cx+p5~vs^g2d zF0%o=euA&+IXziBoOz77XbkVmaQ)7Q?PP zj`0W==5_a``Va$aGxnh8CKHVc(?d@sPw9GutlIqt_n&c|^A8}!W*l<&?{m4~P$LHS zN(k8=k)(PuQ)P=C)cvsmi%!Z(C4*GKn^rmpj*sRLAPkUnhV+O zSoDO)LBfmV?y|m}@EouV?qB#mQYDKY3hF6|hMGDK>IQ0vXemMDoQ%gm_MW4o&4lt! ztRp2sn=-VdbUTxk=N49c1cb*M+KL%4dveDg=(w<6bSIDk1bTHzZ~>ziHl z;-xYM2{U21*Mw$p7f2w^qFR&uQ|GP#u4#F`LLZgNS4*3DNHiQcBe&fvNkeO!1ldxH zk5D%JcDZ8+Lgg!<&HS99o8{jB=XOGAWxp3*#%*MwmQx zxOn1M$o21f5H#qfs%4v8jRR>ST~<^Vs5?n>OlQ-G5YdT;w7tOg+1R0wECEC+(Se6+a+_Z7c^ zW83DPNh)j2IddylI&z&_Q6gB4GTr~~92{uHW99dcg+YN%{$9oBF> z5kW(BWp^mL)m8RQOh?7F={$g=0q@-j%#2I81Qq0)Yv(D?nhm!dbJ1K zHBSq1rpABTWfB6;4U-}_Va?p5kcY6lWD2#U5AEPaI#?$hN1W3U5Ns0(Y~v01EK##+ zL-efHhm+giFWbFdIbZk3EU2s2_k`cggadsg_&gcr6QqZziKv7vyX1LY7|;_&*$H!i z--BZ)ubW&J!xNXQ+KXMTgqM{BT>ke~2MqX=rCSkyvGB%RvYvW4GCM6Yxymto=Ixu% z@xlf+#7h7R;Crg0qzC^2j{l%2XT_|=eX7RAz~glyf#@Fs*=V$L$~YN+q43;j zvYyn6kr$j3y!L_7Yf~EXS6qrJQ$x^AwqTf<@63eZcvhTf_%@vBgBg0X1on=V4TC_< ze@AG?-xA!v6vihgj(ICiiiYYvW+h>87Ho&UK`k+AB7yU@ zrzxw3Fo&BCvXpE_(O&$jHBsTG4`n#?wj&+7?znUbBCzoaLubuUMnx0`rzaiH!DOmp z8eUNvkARubW?gjRk(HB1b}+O`P!g&XE0%)M-(I3jO4_1~HGy=vOI47PDPAwd9tf}e zLwgkRgQ`=V&UES~UlHFIf(Al+_Pi*%q4caem5w95PlM9~Uz-yLDeQxi|J@}S{CCJW zXbeS_E3e8wOVx#)GT7=^MDtT?D&@g-8QBBe|<*u z55b7^{LE+M3_U+I^gYWw`98z;26~{m;x#fc+xI&}b0r`06O@Cm^Glz)NB{)#;FWPK zQ+D}q0%qy}igD56pHeYH?cfB;RvA*mm>>VmYi7z`BAg5VO+@17Ls^y{aC$;2D=PX0R{cWKb$LDNDki*YxwmO60CEN|azpQm~Tjyb+qY#@N86(y$C1bOM)`S{u z%}Yb6%q(7LdM9p~reCOO8M{mmFY_28R67*=NAE##VcGjBJ|$+2JJDxEJAE6F-c4oI zMbEustkp1>V0e@QBvoWY;@FcG0b6oS_wzQf>7Z1Gni-77Ln%DVQ$k|-EwQM;^_DV8 zp9!F+B!&0Unn68Znb}&oVbQvc%+E{z#2kAdZCbA{Ndhhp{nG!z zGx6!RVPM;J&%eR*#}pUV!LcoFPGYgmW^sd9uNv#P3j2>1GZ-{;HZ?$9-4jIj&=o6j znOs+UVz}#&^aQO?m{`eSqC?l(EcATP`3PTL8X=|_n(mtmvp~^*HZZrkZCQ*ACGQ}R zxQue(*bfA^U)9TQY}Rkl{;iHfp}u^2Ny&!ZDqz9WS)Euue0GNXlkVtF=09T+kl#G{ zknHF8$+Ix>eZE6*p&Ieh zz=%}I(VnavJN+mCNPBK&&ao*w5&oeKk-~Gmr(8861EYbG1?t%~;(6rQ@eOH}`iuH|<|W_M^){qsipiqJ3>G3f4?w zoO4)|m&=3_+uQ(ZSvex4F7)@KHHp#@Ek=db12Hm6U`m;NjWl5a;n0~^>>3qt_lJTxykP(I zm0M_v>UXU+;qg%NtoQlph!kdx;Z5II@o-yMpM2K6uUYm=$X2)|pCQtKHStE7xR*%?AH1`$;P=Mvg?sPqIRR6)pRc$h8ev!HA=1q9?A{9V-1iAF;;&o zJLr&OB2VAuyi&Dtj|{F*5g{7BDo1D(^2K_>?h38Nm4aYH9jIvy_+OqX%nMH)>~Gld zt9JOh^|ui1vrTRNdDyz=#HC@J=&=Bc236z@B`%(06YEun~}JxR4JNTc`D`d&@1 z_sn%3rwp$)%ZW&ws=I<(xSPnZ!8`GyuUcFPK3h~K7kN_Eh==$CJF>LoY}Tg5M8|tP zp`fk@H|1Q-pN}1Cu<($!5iU#4O(0{E{ZK(Uh5xbXvwgR#rSUkz2sO4nD4?m{Ec*r~ z9HQp|9^|I<%th8yn;q97Xlsd_8xxb{0vT~{sAr9;Ui6j-a<#o9Ze?F#S;#iu_+lE*q$J8?wfJm`{QID`d(6h5S<(cc!mMQ(O z_u}M&{d~IN?|&TzkEtRqC*)CvU&H%am254nc^AIZm;~IZj9GKH^J-&eNk;hFC(Q{f zMwVa$ttKroUH`M1Y!>ArUnh;lV1MgF4kq+|krSu@L}TT`swKcuR->&~$A| z1f#K~W~LFSK_!vUo1oYaK%~0A6rqZ$&pfHO=b1IQ9jzlT{{rmn7_ZtZRdzbu;x@UC z-e|q|NHji$q|UC$dZd zVV55|B_Z#(Hw^SW;a;SvmE?$^Hrp@wKCdaVj;${-C}j4?@qKt$SvO3y5Pu+oNc!2k zd-DK2hPvXxIl8|IKmaP%61W*9d2Vi1y+@Ak-ZC!O z_fepC(!=*Y7QF{2MZETCmR8In7kM2jS8{ix2&laQj;e=Oj&)oDdFfxt0rMF8_9|N_ zr8LXm%Nzq7byoO&f8yIv&vcM7`*+xC%AG)u=jv|~2g?&@6!T`l{+{lG{oTJO)lE_S zsn1ME1N7NU>MG)q+D1`0wF29Iyl|gD#_VZ1r#9ecXMxuZ++7HxckBj}YWX9A*_6@C ziTGm3A=)P!bO82*w^P&{mnUi!I7Ah4CB)w2V2DjGXGi?UhU^Et647DGA?@6};B29r(1kO z$Q8;|PF?!}Ny|wCj#vM9!kO^3c5R0|COVDUdTk*Ok0cZcg6quJ@rBr2wA3@EXbHg)5wU^cW8ReEC ze=&L0J|zt|M9eJOr}+Jp;1biTyEiTFg>d$J01*~tM~(^eZHv9xv>A}qq%nwLO)Rl% zX{gU_DP&ke2}L(Hc2JROCo>&E%|Q$3gTBA(sPO!aJN!K&s8#T_pn$403vY*uT9Hdl zVz~TtuGNl+C92qcawka{wOsYJAcMYC$nm?nq{MF92ha?e;VAU*v^0PGTUeVngojm? z&v$%=$jP*M07XcpM^6i7QWe34*+M}yYp4~P3RaRf#IgNXV*y^gLI&ee#j6!Ydbgm* z{k3GpE150faGd+h$9ua%X!>czLzEZLQPXd7=lmniylFOpPWzaLjz2Zpcq2nD&Yr2U z0Kb%LUp}ryxel)7*n!|%W^X?qVoD0x)+s3tFGH4Fx*e~lTc@ss{JcHR<*ehGS6vBZ zWa%5`zjo2szn~a0`?)Y!i$EyKcJjIs&Uk_+c2?nB-C=L7@414GBjl~g$TBNwS=_5$ z2H^JLbBJt~uVQJLSP!1Cvt!*7-<bw)D72di|@2#87*<498!m#x5F+PqzT| z5vEOP)xiTW4T7wvMV!i}-cK8`CZ3d*wn#w!qbe8;pA|qxHTJ7kGiAc1 zQp_d`Dv^j`e<=ugcb8?=v;_&lwWUIEU2vYtEJ4HJ^y1ky+o8Mp3m<{@^EBpuLJVLU z@+}k-=)=D5lcTc#6rdUay)R^pncB;`FBF2hqZ1Q7zk@MKmw*s{jfkM_1_qRv0xi!| z6)&=yClCnfpL+a`hzLA)km<6w$SD)D6sfN;C_*J@DF6lTvfmw1j^oXZj6FYSL#02T zV)rel!WyLRty$SO#4~u`FRDxrm{i&O22ab>vvkfz{Q`|bgb!}&TP2y(U(B4y0?nKV z`rHO$nudq}6pni=1~M$;nTc=Y?nHAbxx*i%7g3`%^&F^{VynieM#5WyRS4q8iZgxh z4?zcj@L>E35!@9IqGvS$yQsf0pE0;Sw3Qa4+Cv3RX$SO($0Vn4aG3Jq^J(kS7)`AM z_Uqm~fhD*6l)W+w2S`V1g0OA}qn*-IFwV4{R%xU-n}9ap5TxZ%%W?nQ5@S#WAoxmC zNfO@9#{av#fpE_%`$Wnd=+~GXWtGDTyPj6qq9%ZoRf6Z4xTF2>FsrZ6o?rJ2KtEff|Au>@%&L@F$?G@aF!4 z;opuIPsUO-!|*65ZwpfI2isERT2lY5JsTsBuA}-Zpnrk*k0B!{GJLkddZe|1h-7mMVHELw@P72 z#M|@bvmRjDuQJb$%)R`Ne&-4R24Ke#cyy25dkuiuYW=>9N6_`k2KBc9Ue}L6xO+2% z0Uo{W%UF0>@2{t5p|9`Zr-=`~3gL6`J&z6-)u6RbQ|RC7V7GmSEWMtMo75|eAudyxUxsCGj`sD|hg$WHcQ-lz+&9m2VU0Ux z$>|CQHK<(Xe*t9F@l*@TELUX}B<9v_;-?~3VI`HEo;F0a=Gz#3I*_Zqwf#N|U(Eq? zOwL8j+K_qQH#TIdz zG;|lu8*IO{d;x6zWYtf;5wZW=WSBiGb_Q_sg=Fp}967P5=$M~i5;X^G`p%YhMmaa0 zDHfmaCdmV)Pn{ccRocq3W}!ly8~O4Ti*Zy|%ylx$%FGt@=2cdHt5|qCALdhicfc8Uz%TM2GqAv}yg;98y_SO5AiPf? zy{{Gp9{p4a?iWP65ndxnAWy1xLxU%(U84-Cl!ivl42nJ{wWxYCyDF6SGm1N8+;<%vWQ8yio%!X62_~%`tdD zCw_{coZl&M8CTGTvkyY=>k=k(GCJIi!{@=PV;AuX+%uzVDZyv>!lKRSNzY^$g6{{E z_YUNNrz1kk^}p~k13&V3fPE8(6?;C)yc6&r7%}b`%~SK2EhV1AF&yLkGWp3tu)h{Y zp_Lj1%{^>JiaX2aTY>(Rd`5VU;g??Zd0F1f&@QPgTl$5&e*ONKqQ@Y+|JDw7)E#FqV{ zT#S6z1K}}KREUGt*uyzL^go9hi_J$3eeQM$lqC|>r^8)m{-9|+*L6tU5lHPj`B>4{ zhxGfm`IoI*LoYU3m6s><5WDU?22Zbg^|7AEZKDz7^w`DXE~%$W{xt#9B;Mnz?V#h$ zPp=#Ac0c4StLJOb_0M;mvqVwO<)Z=!!1)*OtjtI2ZjCrvf=HgU`8yUWJ5tr!3-zqQ z?3(MQ0w@a~FGHcCKy>-wwvF~#Bkq0xDZ0!*_13LI8Vr!dOL*ZQa;f}d^}7a2z&1BY zG8JOzg+JxC()n&p>a)a>%Jy#Pn$m;pH)~*w)`(;l2vBdoWc7P{!eJio&kb@RYSuo; z&Tc&s2=4y^ehL>P|o@NVH1J@X2&!VxgoD^&ysmeFbs)q<~S5@9w&r}z&vyJrKpI4zmibOxd z2LHya<&|*=RqTtwy6}M6eDu1m4i^tw#0_#|BY_jC?!F=P@~Q$713E9gnU_@!9-$3h zX4Qiiwn_6N)&$|Z^nqbv@SQ3IK&3D$*axK8Omk=u1Z-N(VScLOmPcBD{#R#8V zjUD9La#&~=7n%`qj!l?!(bI5#3)yZtL@m49a-XxNrHgkyYLIf;C;%fheoJ9W$NBV* z@C^hZ63%PQ1kSAi&2sj%l%Od~`q=@1KMNJK8ozZP1wh@5lIm_2{-R#79RIlH;!kEq zn$utFzdBue)EAtsNjqMtMOr|k_NHuwyVi%RZaFFsE$kI%%f z$%})%t{QGOD=c;i<=}Vq4_7$@2zlQrXTVn=%F@Td%enp<99g=&Jts_l{t0L>cPDB_ zR-YOxKAc#F?wm@JDfFs_^FP-o_yC2KlSOd8@j=VL#XZ?UmbACD%?T19?Jb=RK=Ks~ zd>$TrN4CLA1a2DfLwIk?7Wm*IZyVg6dk&C`Y%dgmc?h{Lexn7@Oi{pFZy-#LdKQ1A!Am6HR|Fv$)d&cDDL)p+w0n8oAEw6(=Toyzcn!9 zH|*%)r%}N%Z%9dY+8wSUfiC{MiZM0nTGYo$#03A?+%+rEl)vkQEp)|KPI9nSkNf`- z-~n?&fyw{=*Z&=4nZdOF-A@nSW{V~~QvhZti;d-7>a+?Kr&wq4#kp%89 zoK@xdXzR$R;p{iTeoFxu7d^j^!Y|V~7gfw*8skq;;ic`jp~rbU6W50)Yk)&Qk!jl4 zSIJwdj1D?l*-Jlnj#m4%e8lUm^~Sg0L$l%s&tz=oa_%$!G0=N@cKztyr%e5K(+r=m zUPA6(LV)5EDwNj&gx3Nm`SH^jtJ>&Rz3OOIRXmLj@^icy?yLBQ*R;bx=X1tCf!qHT z91}PQc;A?=JEX*2HkP-vO+96sl)wLI;N^SY_SvzR`+K8-;NnYh>Q_&IqAASp+$16J zgLWyj@$$BUcSG8ZP?WRrE?6XCQ*szm_R#5D5>I~IF40Bu1GE_ENP)l#^(nFfg?Ck+ zW3d3s$Cs_-HYZlP$=tJ>)EmF9?U%MF#o}5(V-p;&!k}EiQv*7687S|ziq}rN6leGd zxJqB}0=PYi=&wW1YES>I@)?d~uN=M$XDUBcES`^-`$K4jSxS=LaM@Eaw-~|V^ep;Ms+{@CspK!#nO7*Yel@T3YtCj)_fC~{&CvvT%e3Gq za=q4l_w%0mL`NqUniA$32tMe)pQ{)~g#QDw{~!Ri&r1#KpcYmrw1j^oh7yLL=#5w) zjo7*5Ea<~J@MgCRo(!tula|OeX*9HgWC0v60$EGA#0LmE!X=>`7(`tm3NhB-`F|tk zB3YM!*E_y=^Q}&0;a82nde(AltDcMP_3a0pcBEPt$@2ss|Hh-YC`s7(x5ZlpK45h%R(#eGII%<$?xP0nz8dk+2fhpZMy4PQ!TP$Go$j- zyEZ=Of4}wg37jOKu zJhOW^SqV`^{=KNib5@fTDf!B;j;Abu+~jw-Pg(J>{Bk1B8{uK(fTgkF)0Rcg5$YBC zN_mLgS5m+j5PPviDW)LH$t1K)TKwm*cj|{nk7M2T;X!ZJ4-dhABhbmwbyBK#o@3+e z!vlkqgijr(I(f&tn(VeJ zI6BT89?Sw?PUPPRb#l~;lnR>X_`v`0z#%0eNXN-h(DANid^BKEvU1li;`!UQSG~(% zQx#zE-Ghp!N2l`D)jiyC+AsXB@)-E1_r62q)gSn12eusldg$hDP%$cYeReP^@_Rp} zeD4ionn$w7isVmDUGZmHN3vJ5;@9MmBM2X@8{gz&-wb2eqQC$Qn!oYC^xK&b3h;pt`DY+ z|MJ>i$wpUVptx%&(@VR1EOgV?h4Td|LraN>QFY$2 zYBR_?Z!$yE?C>+X27$@Yh-+3?|Mc7#jDR}e?a2}Xw;<@o@=Rx-!ggkt?j588Vk#D2U>8wyFi* zCc8r=eiKAs!d!F4fV`l(qJ-B7|LJ?PuLoph9Z@gFStTx;fhQ^(kYXwrXGh1i+$SJY zmhTyp9i;^9$7ES%V_n5H?8lHGdF#4|30dkKpWH70^)GX+V9`h#L|5$6hwX03IN&oaQCtW)4qtU9Y}UPZvCU=ES&yRo z;zP@X!wO3rnLc*YklyKmC1oyeNOb@ zpiLQkWY_jgubTDCji622W5Nqpo@f2#^;T$}?J2&MSJ$iFsb(i+*Dhen{pAL@{pjOM zT<7^MvS;(n>TnhGG`}m~&2ZH=-`|zSzr04v{5b7fzF)QHyZ2E#$fGNdQ}@w2F5X6)8f zEZbqXx=oiCI`_jLC&S0m(UUl-Xc+HA3a`wkW)I*0`gy4}?{nA&XTCnlaImgUUYWYh z=b6t&>LQs;>jmgP=S|OO1sOS6n;1*R9=Mxr7x)D6i&num2nKWs27p1rVTcmt=1E9} z9^`&yU}!8maq@ofC+tn{l6W9#sB6z#AUqYaXf~@Ddm7DD$M>``3)fgBh za}k<()Sc!IZ54&$zT**C;y?Jw?814>n7PTi|DQu$4t05CU98UX#;#ukB1)3(dwtAt0silwnf|@jr#dKg#j@jcj$YfSw65E!_xRau>Kd$=ERbI zT^=%s^|=m8U`Ieh<%eRr#j2>TLn}%Gu8C9di;xW^K_90Uo6MiMZIoHT!a2ZPf)C~l zAZ87`9=W54xvjf(Ls3OS2^P+o0#9oCJqg562wat``(g6>qt9Kie>$(!{F{*ZU&8#q z2~Q1@p{O#UK63^AFh%`Y?59kDr#1DI1Y%4Cu3H8DVMYBBr@NlgIv8sLH*y^AJDJum zJv^%y0d94>;Md0W&|8)0F#XJiza}qj%3AprWUt>$wX&$+zW>qrtR=4L_FOUbTRd;- zK66>udu+R`_S}3@>$LP+?8r?DxULDsn-e9xp%4o)h*LI_kcO!x7IAr8&qSUXz6LJ{ z#$EOrRvg*ag3v5+h=ZWqB|T`CXxxgEX7zi!DG8-vjF;(e%p4hs($$%49zFy5J03DTrZ36z2_RuKj_@YSit;04U=}~x z^{E-F!TomX{s%73f{tK=*~LYU5h)1kq+yTA{g2#=y!d@m_Uyn>92g2cG!tx^g*t&8 z))!j2W?ZydB}&@S(&%%{PYlL96q0gd;ul_Gy1}BKu18dgT%`saEXohtAf9|N7QKkY zvz~#?($sy>{_%jN&C`kONsYbfypbaaA(So|N zLbOwNCoIx=e%`3^$P8S?3caJ>BDKD`zcP>sKT+tfy$dV~L9Qo+OtbKj=Akib=-}dt zlu0|NlNNY2c(W*@l7@+66(ni8uxhMeay>5G*`!bKX|phPlD@Ir3*LEOn!zW_Y`AbZ zDPL5Bw8xF|4)R8PdTiNB#07&e*2ShBr^^?YvqdH+K<2Ziqe#&%rQDRO;#^?Y8zd%; zXIIY-I>d?AqeXi}cv;Ya4nS}rLc-q2_|GfH`p3cAUqE06oni$7JLnZUMZnBfHDN@NQ#KVfLM_wPJbCafUDP|Bq=6XbkWYL8lM(zr zzqnGWH2i*7K`xUTuv1pppo%`~JujqhLmm5B1u?j_k?Cq27j0kTGv}x+q)#0PegDDO ze=zqC^!)Ow<g;a(FebC|s4i~o*q+v0a$|qLR=~G)x~auG2psi28lIGQIZl&# ze(DlGx@NpybW==bgvO1eyiY597a`}wROp>#;ZJbiC>6Zt zW&bGdn@fzF%Fi`zgE^j6U{w*ReF`#14EXTF?h4w!BR@ajE5~mtXfC^|q3BQv?pMuh zE~_UT+r&^UaOSM64*%U(c92jaxU^jO-~gFa>aG2_rq5q>wI)HOqMkk{*_g`#24|HZ ze+{;(fOm)kZ~4n(=&bQ4uhFKC3|Dhs+xO$85C&Bc1KFXV1hD0q!2(YD67f@6+VWoL zhr=nN`p7d#p%VXlD&O_GVHo*R?I2QK`mvCOZP~rIq&7t1EziYWDI*)=S}xU+vQ-_ zVx2dO6jUh7I8LYZ5olf_G^hxw<}h!CoJuAINbD!G0qW=cR@N);}csy^Kkb*JliXKZ{2FU7rXWEDXpE@a47kyZXL=bC9 zH4!CKzT27yvwD9GZ59H2V`XI_W7+%<-i1ACB?J43_+a>nu0Hys(Rd1{^b)iHbc9PD z*iv>ppCMtm_g}a&roMeeGvHpx-CH5VI~7-mT@9=YdS3n5jjLOD-of@|X#zw<%~-No z6z?aRElKGk30JnHUIZH=5qAldtv@pv%nLo`8}H!u@wmkzHvk|A(?Tz}BNIwkUbsEf znsX|nJ)|hcg#*^*tN^+DLEWxAkgdb`>DXSXId~-<>u7KPCMnAi%hcMzMGp$7NEt~R zxLxU6D9*NE*c;cNv_4$N{M`YI_?7#bZZ-*Mr}CT%kt4+f5e+@80-lwJYMQCsfh)8= z)j}=nq!HeN`0wpSDs4fC0~0NxLYHmXALTyH*Fs*+)1B9r0^i(o1-_{#S~aW}onkb# z>ZQkR*@(q*2tSRv?N+(|d+@J-lM)>?6l=%8XB=6x&?&e&=LIcfpLP$SPw4Gi{H@Q= zs>4Mq)j*>HQ`16yjI5zNWW-f@tvTjZQGq~HHeusJZFwsj(fh4J?KfL82F-g=>Zuw4 zzKD$+0$J8&7OoeRq|jY-*0VTMcu8EZ#r=`0lZb3amlN}7CQlmUYG$iWzPPfEwx@y8 z+(}PD2EWHEtrS}eS<7b=9ayrd#mkca4e>Qi!p<5xm~)TBk91cb>-lMn10}i`9x$Py z*=<(lXaV2;EA2#gO@%42Cu6)F?udlx7_B<+4@#<2np*D=jLc;vaMMID%gv;eBWc=! zwuZfn)Rjye!>u%CQtXKjw*1|NN46->ND-6yswjSyQhS05o)z#NNGRvFRdC{7e>pQR zkO!um`9newaqO8>cVvGfgcIj(=pJbx^g;K~BDfbq%_7!;dSQv!c;=6og}yMvrz5vP ztRdXe_t-~l0LT(`m$*-DD-*8%AHWZM&ZIKopUnRO^aafnD#KIfZ@e-}m_>>#;aF@g zB5g!(B;KHey($`It@l)}P0KVXF3UOLe@Be}LK$$jJ|`M!VfeFhRXos0`<$vUFwb5k zL`K@AS;!Z&WfYVjvRK~cK#y3{SMXOFPyRFmjj8SNL^7WN?%LHR;r%p2qb;1Y+-7vw zfx+JWpk9mZCObtNFNJvAnZK-f3?+NE!FatjE|aj4%@2_j5S-pYlTxHEZ<4ouQK?S| z<^<^aX8pS-b zU^b>aq5uF{^BVRA>tg(7#zbPYKR8W_3qiM9y$NS*Wfcjs#1cIwF*WmTcM@RMp<@G08jrT zizSG7rN*;Fi7b6m56xG_Sj3V1RhmhfLVN${UulwfB~+x7d`i+NwLhn7HUD{QY--ZL zxAtdjjEwPr1-Jx9`$!E}VVd!GWm;TfS6MBEc&;SPm)J`VLlvHt6xt%}rv90Ny$}0L zfhYqKH|jWA`eC$6Tby#poOawDDQG_BPz+|=9YugH9A0FJPlHJs({;$>B4o6RD{xe2 z9%4Y-J|u&mBKe#K;)^x)Gk(kJo?ByLrmFclEPM6KzrubQL0Fe$8>@L_R`M10Q)U&# zNPGoLkgzpPW)t>CTmh~5$vRk7j*F%$8%XO0o)F}jMaG%}nOUns{1PjKk=xXbhV_nj zF4KH>bS~3=Cl~euue)cych7vk|7X63G|T98(aO_HWwl;$Jy()uC0TM9ueqL;6zGet z8=t*jZhH29={$QsDi7CavTXGsRaWb<*K;Ll{*Wby@$l@OBsw9Un1p5opjkO0pFIJXBRU}OTETLTg>HUZ^6 zA{p%_giaH}re+b@)GQ)Svq($`Pv6p2km=^oL7h1S0oXCw7eLoJ(%FVVPs--+uaV2w9T#3tpgIwO#qO z&E@#XDsC(c#~DlT;i?Pc_r(fpnl~UP7AXT@+2;tipM~bgpmzeP8@xTu*SWl;-1h z#)6FYD%UySV)>%RD9=BC$Nzp`U!E@kho4Lrd=DdUVuR}MqvEeMRldMVlE=wBiQbxD z>2L0uRaBn?swkLEqA8y#?KAL-bBwKQOc5D{QT$gg={jV zZ&}*s>x16K!rA1GCJ77E_LW2DE6%j==L=-+YsdAa&b9Psy{W+GVo5Y(ypHc>QkJ2c z`VU9Y8~T%gFXbLMgF&0#X;a0FJ{X_rUC&Y_`9e17Q!1ctkcs`>AKP?tFo69jo20S- zV2+l~pXd$cw>J8JBGCH%^*T^A?{%6BR_OwrQ@X0ZB@K&Ko1|;HjQdPb;5#iDokio`PZNL-=ABrrb1SP9be}r2HSKs)w|(-4mfg+o`3LlwwP?X zu=*Lw8s~|VjQVqGaQ?LoCtlJtPF7Q#^)DUOY8+5M?4<}nLm+ciyN39*;z;RR8isU3 z1ut3niDt&=st+4jUZqPK1QV`M{j|3}1q+5WjMk46%n0~HM$UKUho5XI(z zeAlXrTJ=M^<-1nB;Tymdt%6CKfAY!Oyb0LjhD(n$rb)^+um@o!^Y!B+rpCVgPn$|w zOgwU%S*BJ>8h)--C|6hSWjy!RJ%FS4!06}fSy8r+H literal 33989 zcmX`SV{|258?7DN=8kO}9UC1R9eXDo+qP}ncG9tJ+v>P;^1R=7&c8Kk)Yv~(RjoPi zYtBs+2?N8v{cHyI^~>JY*2vDp!0ETWqmj9(fw2>#iP3M6%kFSrU9Ncs%8dlqi4+E{ z2J(rNtF<03X(^ect5j~L_ncI3gS3fbinT&B*Is=wr+;so&Gt*>ypT=mu|m@~TnS4j zAdtIY!C*?%UT#O@p&B&+%*y>ix|>+D1vMT$2B9v;>bIGrinn(MR(yf#fBJfp6X(wx z<_DHM+8861zFJWcb8XydiV^3PM^N|0qWEI2an>8s6#p!sm%>|u zeId~3Vke7^f#7RK~4eg=yE3(JAF%;wzqUGw~3S1eLzZ3pgkus=>I8QAM zOq8zQ^lBxqL?vt#zSSeI9Um?@FR5ITkRDEwFcAiI=Zbe1%#`<#MzAqyGbDXJvf^aW zx)wM+-uBZyTc$T1L-8L@U-Kdh*|wXoBux zY>0;2vsFGWzl3>bBA)wXVnKpF`yV3BVw9s|CkUTw^fecqsR{~&Cn`?Z!|ILz_Jr@BNU@(`1 zBDaCa#ADk@&t|Km&TPwd=(gU1!Db6ik*0}Hnb|^NLAi{GbGrPrw^#J|$05SxcO?m= zZJQu(Mbu}Y58-)pesLNn1YGN*8)~oj_O5hIa@G1OzABk;@(>w5Jrd$y|ZZ^iDU(fW7uOM zwXuXb`@9PII&QjZZ8{#{aToz$>oOMEBqM219UH4xT>z|9gP6uPiGWI$TX6VsJSY6u zxjzR3yPN*qDUs`AvN~uE;lv)QAeq^(|3k^i4Bq~Xnwah8H;MtTdem?OKQ|szmua^I z@QixaFeYb7BE0YqIsuy`8C8XfyxL$=L5l)@5|cmeyu14;y+0=iqrbKvlmGgfk}DC? z0h-i+GPJE`0Xoa9%Pb(u(LgSis_~(p(J*hS8=B<#2BMU8K6ktpIf68HU1~Z{ga;r& zqkd4)`8Ygk%vmhO7U-TYySq+}%g@H-#*gx)A?qp!Lp{+Fo)KW1Or56Q(WKu#&(2oO z&E5lL|F3FA+)5b@)d8^vHooX?&5=`pTVGLeSylrLrHWiyN;X4(bZ{}OkGwgkiM%^2 z97ZmoGq2s&J#x+Fs3sGH3oB+Q(0O6M;9pYX;L(ePu3WcsqEVW2q8WsTTX(<{E_gIx z+pph7AE-;m-_O#>;}{UDsvO-0!bK##??30DEcf~vA`v~uocBWj4^3!Ccym#7-+w!i z-KXb=g~Sa{lVQ4Qqsj;b;~0G+0u7En2NyqO9Rgbyd*ICxmzbj*G0Wz}jv@a=;d-hu zE8uSmOo)~}^R}4e@cvnUl^Yx{hlwFNC>e=O4-V5z#IPGq1IZvJC-cj8pR$&!87Lp* z7|H&&pW-2<(L`xxo0c3qEG*k8pKZWV`HCxq*_%Qv(7G|7AQs#1iq*}+wxcWPWx*;u zj%<6ceLp@GrB|ECZ0UdNk=C;{52}(~PH$sxr=4H>A)*mMc$*0?SrqMU67mZU)Ats0 z(AR6pdd{4g0O>tk{&#;u{g{{gsw!SF?XF|sT|nwXx1yQ0OTh%9H|<4F2|=+TH41@u+$yi`g>R z>w4!K&nQ^^Y&XW5(ov8s9bU8}9me>Ol7gjGjUGvq>CQriCKVj_w3W}8!Kxf^O2iQs zEU=2vK0-&3T!f0uSlEG$qG{n7BosF4OYNODpLk2!5MrG%-Y@WDewA3K^iLo}bs&>R ze+lZ@OP?ymfTj8^yTAU?rYlEiyZsrp-t{lt6{V#woM!b0+5}$yYz)=6O2%<_i9*qe z8{WpR<*zd+KS1o)g4nB(9 z2K?L;b?cK~#v7pI*TPWQi6KB~BI64p0?`OEKN{iz*#>a~*#z_YSA7fL^I4_LP7N`R zSeP=@nu{tqD7EKBQ)}V%o<8e9b2IlszgVZTF~bOJP9nRX(X|({F_Yq-L4ebLTN7^b zu4QcI_Kf5DgIg=fbT=50xr10LO^2K?($feZOq)ET?^%sK*3*a$a9!EP-?K71uhKIo z2>*;nfR!7i<9LdHrR2aWA;V0=F1L?gEzCw^BV2>2SP6S3GQ)!*UQMke=!QRU;o>5- zQj+2yh>i2HQKxsA7O+EE@5;a^9+@d|tkETGdxQO{<+pI)*q$JZY|qdvA0Xl70w%bH za8@;=krA>GEeXEnd%x;mIfnI7!rtyhy-bv4V%~UkKfs{M*-7&gkV*F`Px|Cc3P$TK zzbj+#(Dn=CAb;M~T^E~EXLeFpo%nnJ^bm^GF8Lh=Z`4Fb7stg{M^TZIqL<%~8!rUz zBzoZzW0~9@k=M_Q(SmDzO*cWNfVRd-!sm8Q z{hxo+@`)=OuO57X8Ru6fSK0j!o}OJuU*pB0-CI>-Jb^dXa(@yd1J~~Q&ztz&)a59T zf*Wi15*!Q$6WY4x98QMgf7!#pm{$Pcj_>ZYP^3f(%>YERh7Gn-UZwCrb_4{8v-KN=2-*6#@WpMJ`1~8!vY1%ujnVuxTni96VF35 zHmzqIgNrOos-xd(!e22kZOd~IJ?V9OKO|#m+S2_nd{e!W z^Os%Sy;h%o^FjS2CvZs_;xhBBAwVGb6Rid7RIFP+4cE~&Pfcs;@3;k2m!mt>8WV_P z0C$FFeo0@~;=xVPn!a%>S^k(#t$8wo)?1-NS$P7-VfUWOf5`tn4Uwt2QZ~Br%meBB zfBaf=2=Eta&G|{rrt}kE-Wd78#{2NnwWW98$Nb6qwtq!Z$p$I|xd*h}dtZM8-l0jc zz}mwA7cZwW1c3n9x9eR+=JNa++y(*tp0;;e-crbTg4uOn6OId}(3}xhwdt-#iDxo) z5I2sPwK#%b+cuMB`a)zsxVzO&v79-n;Hp9F@(g;|zF|#;FtmAQieA6nC+jR2REgmj zt$@(5R*+%ikd3y>ErmJV>!b)y#%QwZ3I)|m2QF5(>lo&y@rUZ3LuJHus+ApaMGg=h zyB}j~+X?|KS-GpPM_w!R1`rOZwQfd})_+(nHX6LB~HfUs1C z%ADsVYx&oj1M6!#o8qCYt$3)cUvsm_a4(vEFiL!CcOx8pu1$_ot1bJqu8lXR)jWLP zCe6Pr2AVm&vu+4S%CXfY{Z!%M?vaKonIl3^IZyYZmAuC}h}+6L*omXe!s{YzRteFA z-7bUca&b9cR%GE@m{zUY_Lk#KcUQqAW?}IQR67vZvmL!m|2lWyzO>yrE8Pw}pvaE#zaW8=FzNOS` zW4P-*5(-fO_wXMK+8Nix?ki?#2$rE}-em5b>vRp3?cm0(g|CM4-N9s>fwh zt*Y?q2L_W>R7wq?(9msBMMwL9ytc+Gv?vN;st}HZMr-b`8mRsp7Bb~n%<|AdXl+~` z1>FV2B$D*l^uFYl{9S^rrgQa@$Jj>QaANVrz9(g8!?E~-sw@{tFR4ODk{x{^2Gg4V zCb1B#c995vOZXD1(o6by$eQ@FA99je$wWAi1Wd-zwN=i2XI#=)twc_4|DV$@>H9!SIk5>LdVL<-<}84}iM`dEwy z&rk2>48?k!Od$mDxDhO{#iJvfrO3p9vs<-DL9?g9(amQ_(n8_Pu#-=kx)~kwM6m|s z-M2DCW)G0X6w2>;h3I3PK-x1ZNY0I|-CrB2-n8&g@SCE2@Suvhd{Vl0-#gBnHX`u$; zBWR381~K@6+9KkQOl{6dbT8P+R(e*!16n~Eu)xjFzXU#puNYe?9^*P6SCY@MKi6id z#H5j-0`^=E9bI5atOSUajFEb0`*Q%4*vG~*6iDlU_KVEAaUrRi`%Iv-b99O+ZNz$+pdp-Fi!>&teuv;D- z3d1fa!tW~^0ZUR=&yJQ6w6WrAsx;*#fs}C%&YamQoynPwfdI;Cnkk>cl_E5D`3}%m zC}nhW8|HgG2(B>RAjxd)Y4e4|`EcH5Q08-0c!+aDLF;KJ^NFKLzC?-5GVpLoy_1%o{ zX?RWBC_ zJlt!mxpN;bx>k0U7#)J*@&~i2&qG-~yhKcyZA~*3xhcHNQUQM$jyxdZBvn1b=xCn# zY5J6<#i8X>N^+Iq97z9oi;c~fjf-c60oATkLrSJ6xT6jPxg|TzHTRzIV*@)WLIz_+ zW+DyRg*>2;Z_+#XeP&nYvTYAAU=`2k!!IghtUu;{!JX3;-M(lsu%Xhp!wdeIfqT_u z`@yP~@vRYzfM|nYkd{{rchxSq{xbeuolH_^mS33=IJXQ6ad_#66%tT0MCo_U(KkF> zUior%Dp3TC7)MNLhh6mNgiinBTV&=i=!77Jo;hIE(!Ukx`U1V(w|y^DF36TSy6Ozq5oibg0V zLj7_k9o)c$(j*EvoIy1YqZ!8V65ca^XE-_9k%oWCf_-1!%W{5nLCMSFj6A&=*#@<{7u1eAr!IAs&qIreIz1)Nz5_^n^m? z@2kgRjPLSO5dSgZfzNJ(v-g2=UDrEL-UOFDE=k8FOt|2Pc{WmS|2U_ktfJ^Bp|Pfq zvP0B$RHPGp|1gfS7`w~LF)gctykh?9ajt?`fm2A2r8R0mAY-Zv9U^)^idczc*Onnq zrCH2RLfKFFN1wcEBdafz@fSc?|3jfWVc&X@zg#fS-_OM$5mxCxS3tZgTiIF+f%MBf znR&GB>eQNsyl*Nn8x5Mpps{o_sg4{TTNDW%!WR_vw3s_!5BDF`!A@_c|LF4ywU4j= zy?tXk^=Ru4g5KzXACo5@4RL5*qY(A?y|3VS(Gp`)3vz7~p?`Yixd`Lz3zZKtIr4Oc zON+umqBGPE`~v(u4==?cq#Z8X7ix_Py@_(MsOQpkeLZ;uY<#6`qAD8>6Fxr|qP8DH z7q4q+6*%#UIAB+m^6X#!mD0*U&DhwQhJDSaA&(sWKIF*;jY3Zh3XXC$gj~@^k%Q_p zgQPNy1HwK-ppMgA8G?TuD8aKr0STEIJ%; zgauU1lnl&H$pTEO1GYA{0*`f;|2c(4>Jl8KiiHOqKau&B7?`v1E08>IpV&y18hX7q zbl7<8@)*hK>KO0fptjL_?FAfXBsb{CpWJ!m)v}h&fY@z95+SuJG0Ba98*IAT1%ap> zBSV2)w)zuvN{szbF?KJt7+uy3udK=Bb+fCXqzsbPQVeoX@~vlZD{D&{v<@9DG@=~| z19XHDu7&xX5r5#4>*V1+Yk;HsNXrjWt&wB7%hjN2_VzyeAE%1#DwV?WrYQAgYVU z2CA_Wpt$GK3noosz?zfGf|VOIiu<8un(SfK5AHM2Gsr9t0HAeN9o+PqZTrs88|!Mm z-^3kYi9H1yX`WW%M#WFHM)fD|)rycoaha(pF%N?MirfbhK0Rk`@4)p?dmh1bUZQ#P zz0lv9BDWk2Z3~*P{etk2eDo+@L>#G9T;d`}hSFUf*?(nJSImu^39(>&3^~%Mc;p8~ z5n`bldVx)8RQ!RVon4Hvt?s2WXtvjlbyI{`wa*fT6z5ZJf3rD4q4#gB5Kp9IXt)PY zTAfPw(5@~U>#_;4us6@zgA8*``BfRvs#(8`iXV_F+GmE3k+ zws8SsBsWl0mg77gJOR0k~hDTp=d($DB%m0wXLL zM>zi7v*uy()y8EgyOcMHTXBgRrVcueK8(2U@CB__uBViY_0)j@;D?GU=a=&QSYuck z6~ak{a}8(5Ji6XyGX`azcXN5f-g=n!qJ_ZT?g?xpe%ANw@K*Ludk4AiSp`ZNEK&ni zo$yBPz683{a>!4Y@bF9IWG>EP?qW;Qh=Oh)`OQ&KqtXx{Mm(D^|K_H6RS(vHd;; z&LeqXKm;UWqCmpXs2|a220dG7Ym>#t=!6 z)d{Si5Lx5zCu{HL&)Sq1X=p;`+Z0GwXv0c$Pe7aF8JkLnF;nM=p3@KIjU`P14%7Gy3^Fut(elbL1i*!_^ppOzN*t zC&nGb6RHUNxDTC`b^aO?o|R|nnABo$WaVvX_DP^$uP+yP^h;DB+^CO3Yl_NQ%1xn; z&JisVkVR#)+PN#{Ra~&Rf{cD{FhANayH%%xMf%G+xQErXF%7Cvv)@r|#q@jZPZ4!H z0@h4mwmh#v(u66YjWeUG9;;g!s$LGtR}a<>Zn5-TROr4QAk5bfzpv+!9g(kE@<8oI zuGwS>7rFBKUihQcMRqYYS5z!|4?Q0OIlEe}7v`I_ioz!P22a~a`9S^|tlhnL!w-XI zLbvTpUxf;S4Q{J_&h&bvL92O9VE9_$P6;%Kutn!6UZ+L9A@UBpR{b*M|Hb0LUz1m0 zCcSW3)giz1uGC&$!Ipz4eReDSLCBWa=b4QPI+Jn=e@rBNNPI(c4Z;;4IEueT)Mu3b zuI((w9BO(=_^tlQGXVV<8jB<7SXR-gkI-;3u;nO0tq=c}&@35cjH~>rikI3U2?+GI zoNl6b{|jnj??P%B0?0n>b5X8wIMh64G}B>J!oALfRKCTR8M% z(z{Uee<|C~hM(jIhqhA0OUmXx7nVuoB6NMU?D0b2;j~TdzK}+^+6VFxFt~0Ia8Y@* zQxuBon6McYHp2fXJf<#vVWU~A?I1_hPA_jANC}0Kst5|SRyxF}`}GbtW-wJ|-$dX> zAIwNeA_sp1;5~Oyk}{rzC;9*|QM>5sVo%g~pFvR;g88zC+7-v|-{Fdr;#6E49Dvf( z0FrDv8j|i9batrl_NR76h_y^C*64N=Nu}95JK09Q|7ESfUn~B(C547b4&jM?@J9=N zo!!ZCqXP|U!|l4G$5UbcsbRd7**YTuyiuRips9ysF)VbhdYDA6`>}#FsAvRc&W51Z z!==pee}~1&W@e#yhRliHh<@B$jiQh`YjP8j;GBv_D9ZhBL#nWvp;IJp6jHy}`NsKX z;|WmZaFE17q@Sg35oqZ9`xj^iLF3y<(Gt8y^(5E4dLKk6-b4jrBkEysl4oWf9Gh{7 zVmluUS%o^uvvL{2UDu}s8#>j;NsLRM!j%GqsP>66eVXOLyn3k>`aDBYV;-aYA_M}J zUv-0qf%MwMcE_1U1_`DbZ;8WEHxYo^_TXOany7q zF8_x%W2~!kPlsH5T_mMO^1Vr4G7jqGn#l2+nt=KA`AI?)b}fnj;?2SHWb&;XqXa^M z?so5Oy3=wm&J4kZ2fy9@*vd@$*aW8a|Fy<3jszHp54y=|h#zu099x~8 z|5AC2R#b~(cnKd-9W?&rIna|e3!_3W0-zzv{!Pu&AW)lYk%{*bWTW4FzM~7Z36a90 z4#m%Mbq+PIH12{S4YqMWqbV8=PK#~M!NqcsQ5qE%07pRi>jwy@3AfAun*X*S-Vn?c z-#`c6f27d;f#8_?$$c3r1~lD#h#gPLgBTh5C#s-S?ShrRG+$Sq;`fSu9y_y&Es`bX z0UY+i2Bgx2yQ^-(8mdx{csu%)$i$JRvk{1bmAiIHf&VlXGekxG*{y2DyDTdZ1G^JO zP%{|$_l>lU8khbj-NOPaKc?=x8h7uU}QT;~Ve zOlDqDE~g{*5AA3`Y%d=7g>!IF7^}R0e`n8k{)x0=l-Tm<<403HYi7Tu>|jvxRp*9z8y)qTy|cwBqtE5 zIBdmW#65HHmHZ@4q~|wt)g;CdiL!J@cnnBvZ~uzpF8Vp|IQ9|-LiI3xL_knKjj417 zl5DGxAV zdF9b!zYvN-N=XR5E$v}XWXjl!3unlHMZ}&0Fj#;%jf&y>vC4zL$o0hKak>Nq!iOiB z+72Enb%F!Y%%~_zgqjVFQK*buej3aH1nX-@(_b)Q6J39C6B=!$&DP<2vfCLmx3dfr zAP(IFW<_b#HAL82_X+Su|B0S6%V3gZMl*3j*=)aG&S6}5XIU1szsL#BzoC!^70ZuUvV+x#vFLNx-Mlw>;T>!7948M&tnCDo1mps?X4zQ@X8q%p!6E+iA|+;Ra! ziBs_B4v&w+1Nkc!jtDY61S*`S6xMr~MOHpwlRO~gGPb4ky+@7YX2s^@Kj;LKA;zDX z?xzz~L0jb(k{mMGb+61Z7&C1F=TnTc8pj`&&D6*D;oEUWNGa^1Fz*nI#Lb~>{>&51 z*m3OOL0kQzcuAP34)3z)Zp|I&(Rtb_Mt02>62w)XHSx@Y%me@3(;Nyz%}|oYC-vP> zc+S%E#z@=UeKh4Jp6?{tZMDWq+~$SZc;)1mi6{UkDCG`*=vlaGgz_F?t-ApU^qrVe zu)bvwK=P6OKG+P-5xJB87&X-e{M+|Pe7#?+Jw@Al1V#3K{wcovnZ_tX*t5MTu z-OL|g(leF2g+kYAQFFa(GPUQ8Ye@nO5yVP9RHadE!PT{GIXx3!evPB!aqEQp^ zdy^kT^`k4bdQzc6#ZIOo074V6wN5*HtgL<#sM+rGb2NkAmX~Ag>N&v#XU%bl-nYyM zh^#ESC)S)LI1W}kPZ;&jp9hIJ{ujKJ?eD{qbM)Nsh?V22;h)_ zMKJEUmbRQUSX4*-A--*bj!o&ZB9Ti8!WCYDUHo{pGrINCDeg0y4Q|e<=FYVWsw)(0 zbV*WR<@y-S9&+N!tGrnfMwLL4V<<#wO32_S;=DAn$sou?N1Rh=3@1nALMLfyo}u4e zOr;RyKU0$kRSMh;V!DXW|*{#E=?sWPpPO6Wo@X zBC^9u5f>|-mGN(&lLOepqQh^@iTNVoXLUk66o$50qH>|1K$%^rtM~*mFy!|GDdRnl zqB;mFg!hB6Nw{s&Bl|>RA^s?p1~Fo6trC7K1vi{h0w6WERusLN#P=G7y(&B@mvk8P z=RS`?n|T7y4r>4mMNAzvAQU6LU-r*)n2x6BY&@2WG|($nv-Jgy3@r8rHIu-`VkC(g zOLWsUNCWqbF9lUh)*;Af5&T=}?3y5`E)Bn|G1RYChKPIoPRO)+Dcn#LXAE!1*aPh`i@ySB zMe(1`Ck~W*L=%7^_ zJtfLM=v-;`YcCVJ;JeW8lZ`e)mw5wEY{`nx-;+!Dk`Zy;Le$tctz=xU*F5IU8Z#Iq zN^@k}jMDN_ISN64Of#(B;#ODN)u{HV+2D-1uIvWySH@Q)yKHn)^97Gd5B(Y5q z3gwPXEpYy@$?+gySJY9knl(sD9J}PVo`qH=c#Il{_D&@QJTk&UdrLaf{lk5`;sqGt zg9r?03m?8f9=B;Gp>vHO)$uI*joz6hA0S4@hNd{gQz}M=$=UadDpZSlm@*^XR5`A` z*uvqM@aJ)5B~`IcWdV8F;~08;Z(N(wrqs8+4TtK#s0oH(1e~<7X3j;&#LuWnAPbNP zg-1VQ4kAjeP*JOFsbGoE@O_%4yekm^3O-i-6UkUV5xsN6d)~{?b564IYiuzy3>t6lU=snI z);$vyEqAV8PzpP#sk{l;o0~>BiZ^$ILHM-dOdEXz;21`$<2e2$`Q_(~a`+yc4*fw2 zKZ(&k;ugOF+sDx0S2rp!^kCbZoLTF~yaU*mpQG_?r6CWIukRPeMyjV@{Zx%`a}R5n3)xgyJ3(FN7hnVbkjkkhH0~GevT6Ym&Z6j9L+3N+q7$h zfypcmbu0JOyGqga*E|Oe+O+p805rIu>V`VQ5GiHbxj-ikISAV_Z{u}~xaf%bui}Bj zwBy73s>;PuQs@!c82Wn84v75mHuugGS6b8~Y6FW3o}tS(^7Y;wf028$7~2#8Y4ui_ znlJNRr^j>FAfN$_HZBBXKd<5bd9|$o-LwVzSA(Di!M8XMl7hQGf=uzh2cb~6FXdff zR+E=2Q+ORQh`C#Z-4qqpr%q5q-f27=0G3t7{gYu?j;v|;e?RnedW@!xJT&%wC-?;v zL!ke51R00O#%pkllHVt$WJP|5We6w6zR7SrUb16N`9BZspQX0_sB7L=FJgS{kQk$v zIYPm+4J6PFoxyCO6`>fTlirqP=T2AR$Ux#0(L;M|Y0}ylrGhG6sXYT( z1^!EGTqJu!w#G94#39u`Rp-*A_VO&h>XyaeO#X6YVypVFz&CU$mVhMxlG?|_g3DFI zq3QZ9Q{OnRg=X@STso>|mj$Y|r9R}sE+5g@UKoigsaNHI@=z>_Zsj+~T@4}nFGuLL zPT7k4qq1Bp#G6AF?za!y3ccb=V(F9kz*_BZ!FhsbBgrvTQX+1r6f%~QU3q~bKYlh- zii%SQIn4OM%2hcTASPi%xGxAsoU5oomBD1!mLF*UmLJkyvIRR(7dA8?Ss3n1;mQQl zmnt@JXUsvkNGO%Z(J5?sWRt8!rZ0mx^fZ-t?vh*bPwra&uDJx=a$SV_!5M_xpqOAi!8j`5 zXS;0 z%B2+H03A>j%lQTG;p!KhIv5S{4XF8ei0pz*9jz?*+H>61V-&;)zl=Wt%B#F^^3&Ar z8gwQhfXE5))2++zEd=2~xYf+Bu9il5nSHFGz7K&;d17JB7;oh#%ceF`lo$iFv8wE# zqjkAfxOUBQXt;ejjvWKEL_rETOGU9!d-Eba3cbsat+^@jb@2kD$H>7bo;U=*2<&@N z7q4Ll8TeE&_%iH`8^KTH-V0^0+R!TpgdvYvJC~7zIFFa?NVJzOGOF-n^#q|C6zv|u zd!-BC;tFLuD0_J8z5E^++Y*VSoUtv(ac>x-y(zEY;ZX{EK6Jsw))NPje&a*s*36PF z(lB5uZGhsI9nxI{afn<6jG!|gfX&YWphe;8;ac!-C&xF(C{QPHX2;6WX?Ap!+t(_a| zyp~_)=<9ckhH^YpYZ!3|i7;8cDUmI|Y_7lP6&z{fBP>)pXVv}tGmE$Hjc4gwJCWDn zG;0(i#Jx-Q-MOh}bwzjl;@+KUyt&8fg${xVxaVIBdvFA4DGvtUTvq4$9h-9a1vFC@ zir?Xg&G&~L1~7tO&|lE7%^$S6+QB-PGE97Gl$(+uDgKfGAF)!>l@C z?-q>TiBEJG|5t%$Ty)r|@I}x+%F)Ohj97_YGAC02lL@9&_<04KN1 z0$*BJnF-?~vHVM4E_>?5-p=&xB%(tt_uHzslX*)ANW9XX-ktDRa4}4Iu7CzW(pK6Lzh`N?@jg3|r3+n=74faa7DJUQIKW>E- zP5d%yDg3_h+l~!cy)15)fIf1vEy! z)B(lGAXq~;#kuZl@c(bO^F8#)4!G|m1TFeP2Z~H%U3_!>BA?SiM7VMwKE}^okx8VX zL<>u+HpkVWM3lO?diY##&J4_L^BW&7{n@9RWGLzq$B!F-#?0)gNb%3C$kGY&u;USs zh)p8Pk*^H4M5YoH1i~+_Z;@kh18rGZLS9J}oq<=%Z!zU8L#eA(!wq7J3rL_>HT@2) zgm(MMiVnY{c@O}i$qv~aSQw3tsW3>JyFx#QGD;Wz7eCBdW;Nufx+lpGp; z!Sa;~35y#ZGkZs6(dEQA{kFS7^xwHBKW`R^zV_%-t{rh6C`;&X22xgUun14(l;+d% zYrcDo){rak7;t)%k21BTxdQI;ofHgG>WB)NJl#GoFIHR?P`u{tfB5Vu%ruO7@zhoj z2-Glfb1%8-=x-JJ<@|c@cOUVF`>%9hQVH31n-EjCkY=}XRDa#ND82;w_y|&~C^#Y* zXp~SKW?aVp#`BU;_K#hz3-#l=ZU{uzr6sJ4`HF;=mJ~`9d{3LMlFGKJh~io@`XgV` zI=GoW3q6-qe7_Qs1t5F^ERi~@Fu#Xn7iM8TS3+JZ^Uwq?dLJ<8;Qaz;!^>REM*<9j z7@(4H49Y8;pr7Uq-HMLR!`iqvi1NW-P%(damam^1tC9ytU0IBJ_&UZGzwDXgpL#3J zHw(qtnE2SP{dS`^NaD`)u88<^8PuO*-V3-N?C`lU_^U-D;+}8Lwki*dft;wBe+7g1 zLIlX~KgI2<$D>7Fw8-C{_vS6TY1nWzWRJ>S&s6h|=g<7$K)>Kx5;OG{&5!EJ2ZbB6 zyFf`?y>Fb`7j*y_&exNF%TR8KPGg;2SZJvZp3)!cA%ci1Lx~NVaor!E)3H+=!B?*) z@V@`SGJYP_2_2LbqE5{D`29M44bnaf8MzHTG^lelgJ~vB9C;`&>p+NhwKBZO<2t?; zXnw^rs#m_9vEuB~VP>e*l@h!&ut(t#bO3$4)29v{Lu9y4d0 zp+Vtt-Qn*3BJuYxtAbKG{AX|)JvQd{Gb$^3?4Rpqtewxv+SJ6_l z4?hy~?tX0eb)Df)H_#`6eD??MwIcSl_5_UQ{@H*DstRc!@_JM}zWc(S1O%^2JNj_B zeqQW+>KX^WY>8SI@_P>Q<#ZtmTfQ~P9Wc&~lpvfQ=A-&k`p`9TmG z_+9k)lF0pQL&`K$`6LW%$Z^A#(L>AmtC%%a4r}9%=KhdAbC? zYQ2Uj%Laq7;q~TmH)HzzRD533j2Ni~6r=s?d0jP!P~E!KT$JfA345~V_jxSDoiBQ9 zs@6yWPuTEdYnFt87UCn;FtW1t0Q3*m$jy_G|HB_Eeh-g+A-?@T?xNqo1q&0$~$3qS0Qu{CjP5Zus&mE zI`-T)*V2j4OMpjvk{{Vnq;Z;;f&B2(e!b47nMEc7CY^QYvVr=KKJ~%1IeXAWuDJeJ zC*#erOs_{R8EGC#6|BhoSAHux7ymoIR6;Vt!xyZbt_%l2pNI~kk}Br;fIHK;~-~K;`N$E6DRVGZH((83@Lq5BV7YrmfF)Cj$Ja?s*M!u|sag z0GBkff_Y=9&mQJAhEHE`8mvB=P8DS_!7@Tq>X3)hp-;(5$_y>rsE*Fx-h=gqS3MK1 zCEkKiPN4At* zJyU6^?ZJmOn(fcqEo;Xe_hv5epL&z2?T{W%29fhS{n)aVxQ>EzgU90+8)81MojbK& zga6dB*}K*s;<3G`6%}bb0%9ezVym2K5YyV1pVCEe4iXaEA9E#p0 z2ngvn7>rjs7q}DJ3D*w!o^ibDcMF;~q@IC2%XmHN_t5RpIlFpEGp6?{?=0+;m0njm zEBd@%FV>FVy(fEC^$Lc*Yd9M0s%^!%ZME|2kEtbVxHTVh=plK4ujJ^zB93r*1wK6K zsd*o@+8La5?`b$aygKXd_)t7g@7(IW?daP0@2H;!?$U_mk|5Db_cjr&n zz=1zmg1Wmqfay*;6|E(+nYWGrdHOS`(>=bb$HcS0YEK%mZXJR1{D*YE`*75UJZo1L z!Si%P--`wnU#n>}6_;XRsM8CUg;oA^20Iq(EdwmOr-Hk>H=MYMiLK(gGWzTN{s6Q0 z?slq{mGjA-{NrzB6!X8g?O-==Cd;m#R>|$v0|xs`+bpiXkF)qbJ7@AeB~Kl>LY~z( zBi-xf_WD-`!nJ>4i&x$dmaM(kE}8{X{z7dRcy1|vb|*Z;8H^0Z)PB%Rrha*x(7BsD zatOq|nd$p_gU@XC+?RS9T!;?YA6Fl7y%aoJdvU!-3!wk&*b()8VCp;Jx4TL0`wlRL zNms2d-VfUYvi@H%re8WBE|2J|eNPlGW zBl%Db?x~qg3nRXC6w3+iTA*Z>%U z2am6V{C@nAw+*#`MHo`M1QEGzjUM}f4+r$zBy~Uuwa+%+2spEQFLCng%_)lRrj&DE3kwXX$2e!zPFu4JK*{`yBeYL5uL1@@0Kw`K} zuOL}aww5z`#(#A=^$ibHU_qUpwx`%bkKzlrF~iQiLBy}0oA6cmhQlUdL+s@65gK~( z&9UR_BlBqfvoG>&*)P@k!Zy+0{6Z)+UF`5m)NOK0v}Yw%VV&k zsd+hUpZ^bi5by9^PZB%E!fCCD>BhCm2hzfixl5zpC8m+bqxqdK~FTI1Q7RN>k!l#R2XbstnTzLE*Z&kxMt zl%pFvUbMo=pN={VXcM;FJdWaKUfixu;P}%F1jy#;kY8R3iTjLZAFpm~`w@XMmb01> zqkdf4T#x01L<22Mn^f44JZLM z)~yqRj{CzZ=ROjx6aT|=4uJwp6PRyoJ5RUpm|TITB;;Gm2A!VtyIq=91iy3&U-BX0 zz)buKD{vy$5Ohm>>mZn@0~8QM?5MZTUeaCR1c}=?FTO2Ts$o*{QNQXY{VmC_r2jaW ztpo102?^uD2@0@vl_~;lvqI)}rAp`P+~{GpIcDn4*v@m-qRx!nNDI6xtH6F3R>6H+y))e>D^v!PVw|A$K{ z|J37ztKdW7jdUTxw8QIpX(tyTW>8e1?v_npA{hf_@q^EQ6>%OPcU zI_icju8Iq!yK7`a4_Ulo`O66{1kJ-^HGn$MwS9X^E|wAAqTI}1(5nR2-waqh`M}jI z-HVmxyuPvG_|ceMrzM=zz4tGa0B4t_~BSAGE*P>?DMwt2^m&b&^PaFck$|4my`F+|(?C^2& zyXBCmoKLVbAOXoBj)ZDUn>(sgu+cYa8SWRs&|jt$b91!}#UMqA9SHtiX%zp%lQlKn zbsKs$(?(k1drZ`}CN=ijmt@i1JUx&2F6sI!IE5@XM#4!m8Fr_AE8Bc@z=v?UYa1j=M5;S zT>yu4mPXTB@pw5kg|WCdY3=Fh@68}^Lrn3_KQbuXH+_Z1cU3XEOZrtVymcgo(900p z{u_wxSxA%VtN!0Tr4>!jLzKHtGs~#Zw)oT~ge1$1e)D_Vnd^k^%_6iBIPqkc-`WPS zoUV7D{B55V9<>jA>$Up!pCbBve1dkIGTGG};d`h%Q0Q7av#oG=<9o)NS3|s##wq@- zaDJcz*8vPyQjs*LcM%wIRD)TVDtD84*wl!ylu8+-e&lV^*RrzlU3_Qxs?3L-h}s)v zxcv4;hHhOqlh_AGTJ<=h(V|d)2@P+ta%LzGOa*wS45i{HqcOf)3&@1myH#}J<}Av# zsNeNeKB^yuw>H=lg&B}I`64|32ukZd?J^J+W=uwsB+I*gL=P?$&PA{;^f3s{8bL@2$Eg)j8eo`#hh6{A=_wO$kOT6&wnI zLn%w|lB+5P$Kz-3xfT_u_^T=(W~a6;PR-#I;oklQvJxrAB(TuY^mc&wfkg0AGIuI4 z@&p4CKkP!{_FGUC)T=Cv)d9<-btM;zZg>8T_0I(a{fd7g+T|^uphfq;BBUB@e*z6| zLUBh7`jOJ%jP)%x_Vu&aic-CV9mGD+(yY5i2-8s$rGk+*5+lK^jUe}Qji)l@igIHO zKv{#4r)(_H@ROu)&_Mn~3WPY#|Mi)y;3!Z00wN6TfhA4pA1T2_A*9fyIlZhix8@yu zPJ?6`hgc;h0XuKcXu^Nn=%CB3BnVVs^WdylG{!L!86lvE6n|}{oR&Tv8f)?e3>qwy zAfYkw4I-}DP*?)h#Wvq<0)j9MC{XejpEUx2GV*k+^l$OT6zzrzcG)z;?%nc1`PzFLIg zBsh#rvFjkZ9D@Bjc*~{=I>(hGw&ve)#_Vw7!<$@8m8h4S)w->E6h%&J;spc-6h%Q#t?S50t_@c<@H}?|9Fy3&Yu}4YV**Waqy|!CTtL<%WfPGKy`DV~J zhC@%K^j!pkL$egPMnNd0XMmY7+*44?7Hm06ZR%~l=Xh*n*zq4}Us@3kXB<371Pgh> zo$De5dy{PnJ)4*mPc^_WNC!^!T+H8fM1ie83chz}X6c|Qk26isHJI8PWR;?PuZKl} z1d5rUmPs_LUmfbTQ2~Qw4Fp)#>mhk%KQpX-4)P5DtoUyW!*Gwr5SAlS6!ktd1dnn_8pWWo{F=Vh zsdNXECwoX(n1~X*|CB!w#2|B9QkJF|c*=7trV}MYf0Cp`kGK^&mnj{Oml|5X$egHj zzFe26ypJL=FD#D#^}^$~61^Ntr-qm0xeA)(*LcrGmJ+2$>viFX{0^Sz44Ka04`Fdv z9o}7umSDUaF6uede)h7Zh}@r-8ydQ%kI(CzE zRFO9j2D_mI0@=*%Ne^Y}M)1cq4Cu?iJu|8Jx77WFA#c0NvQa4_WNPIY-nYf~9^cG# z;dK0ce07TKQU8|UBiv((Q2c0DGGC9D+FO6s%gM8~aQrNtk&fg6{+e6b9iro6se6R@ zPi?l09W)F#kDY9geKQ9Olw9>w_x6SeTXJkVbl9kyv4K0$tNeVr z=d7Q9AO8TaFJ$u>fG%6~M4z>^ zSP5Oj*8dFg)Wd%aL1e#5kjSJ@=higoMFITOV?j>$uv^Y^FcC$=BJ9VZ2^o)AU+Vwe zNWOPS7c$Ulv4_7S9nrs{GGY&=MmUKo@loJAQ9oZY|6Csj!$}HzbO^K1D@-j%)~#5}XEpm|B+Y$Zf1(~vA3Ud|rqd8b7#4d5958uX;VZDlU_+MpGzC2zA;+)u@^9p5qqvia+ z?#St*>!jXx`3h7xVDJ0&2YF*@GzCQwA*mIT9($scMFL4+e?61F1~Gj}nJ4OuAT*-j zM7(H@k*0Bgg$}6Hw41}&V{y~ic7Cc)*zp3t>g&eVpgB@|f*f!X-mLW-yk4sWm>h#@ zqnh;2ACyNaCjutmhq1C6s6zGs4gquZZD*4?nyS(QJ`pIo^}58f>6n2I>+;~S&g)U; zv=lv)wJif4A+J>u)W+Z0_ESlK^rDH~6>kN)lrs?zhMebVImT?>WhZyR_c#0L!r5-1 zz4*n-=sN6(}4?AJbw5gcF1#9$@?#!>p6joXLDB>T$%!Q61Drz+45~jEkljo8tS<1r%;aqm%Z}~twqOKBG z$Z7Q`Jo%tBHmFQR{n_)1#jJ5A9o~Hg&V2qPEnc zSvoRvOuaTE^0rjNS$f`@Uo{VLNiKyHH`OkduJf_NAsFTxacQ$gV0sh7K!nv!05cm0 zbmr`yw)7FJ_#lBSs9B3)*KLzUgbAaDhi_P@!8<%_P)w7D1`XMPqp~M;0&Mn8z@2+X zRsF0*BPdIt5abdn1_7*hpfUOr;dH{t$p$-%(7iQ!@9^Bm$!EarJ!cyRtl&eoPkN~5 zNdC>AOROajSzfbD*SER6@F4&L-U(z=-9rsw`ebdCPofo@6%;cfD|Vyj-~eYfUP_V< z8N72AIlOLyNO#n1r`1gI<(;eq#8Xq58W!OdB1K78xgy|bNVsLS-f$Ve=(pbOw8L;W#TIqU5@oOm8DF2NDKWK@_jNp%erQi7c+fbM^ zJQQTQ(-$1ZzHO8zhN(t_Dj>_>8xS zjgIE9j{R|YhvSx}t1zGq z3Ox{KwXWvU=qHjjWN$H)P6Y)f#C&6elvOt5&~}C-D4%&AFZs~HI9lJXB3jL+^8bum zu+GT^mnQA({PYKw3eHnv#AA$Pabv-VuFOS@4n)9N^jJVhd@f3`sOd(T=!G@W z>=tDof-6rQYE!{MxW)ek?eM5p+acS9i+_(_koMl zlDG<><*(QTX!$#z_*)Z!H#|@%0FSa^pgyyH?EV68RAM2{f4diql=7X%cNPi7h9jIJ9s zm6+B}JpOK3!Ak@dUi;GevmPo3?0wpS!lSo+-QxH-qTMKC34#ZBX2cHazv2vP!azym z2Z6^w!U=c|V@ec=EoYkB`RH@S#Mw$_IBo{;-;4^Ep?@-))DhJHXq9qw>9a`V5mr7I9&Pn4#t0S%Ig0Nroe^wD9pe*CdkHl zlz3(gf9vrzJT!|nJT&+O)ab6EYc{7iC>1=C=)pE?-g{l@v(6pLmYcm2Lp>wMA`2vN zk8ax<$$wRrD>$jr3v$3KRrT;J%5$cHbjY;7Hx&oMFc!-&@=WHwlH6$}>3*n~FpRvn z9V)i}4rOgZShsrklXL1{j>@x1HJLmmiVPp9zw46YQ60}_hHoJgr33)Yp>a@Fqh2X^ z!?tOkSP>0s$OQ}$@m6rP{1b36mRTkq-qqgZ)@F5UV*Ky^$8El_lz2pB%^(_d-ntn@613qa^|ZW zhat`t^sOpW&%_ha=cnwt!h*Z-zIn=2n-M6Aq&6K6$k5BL!|7k!HiUG(W`ePMR*B$3 zzag9-!GKPyJxD~iC0P;tDz);}L_MnYoqa`($RCV$9@DaxK%Zt#ma~a^4u~e|K=^b3 zHQ7ySQgWKqln2>3E!;Ds`3dYj55dL;?-c|sk+D3&ceRybL$6|QRa?(iAm)kjbE;j4 z{cGmZpTnUT?LU`PN-nO`7}8~Ak$r@#n3h_q3dqddT-)8)*z+;@R^9(Idm*ue)@)*ziO$% zVFe3xw!;GT_y~LRQp1AeEDbY2XVd3WjadDOxkA-g(98L|xx5gkFi+DRQ0iMvu{}$W z9DoImL2%wgx-|bdc2fA;h#pt~j-&2&a7t__sW7!$ERnCb!~w28kf+lQDD(-YyudI} zx_2v<5^grAy98x!pisa!SV@?N3}HOg2q5--aPh{uBMEatA_>DF0=os6Fm*6_>KhM$ zs|j3DH!^9V9%v=xUvnv;#Y3oJ(bz%$L9%*P@X2?p_XFG?^0_DX*s)dyR~lGiKajC3 z4PwxupjHU(hk^=IZ-BC|qizIeF5P5gVvYpt4(@_h`9yrjE%3iU2qF0h(cQ_+cC|~9 zkmSJ047nimU-tNSga(y}eQxR9;a5ID5=k5Sxzk6dei*j7svUJkm%Xva=MS+Su$x{l zg-^9LGJ#W(vTJOg6koHd3A>LJBwiAOSC8yT1vBv=a1Nx3NKu3rPaT(ls(_KvDNIgc?<-Xml{w5Ax76Y0r zvxexp2}zEC<^?+7v>Y4~GY52h)!@=^829kdjW6`=TbVR5p)5R(B37wpGi~}=>-fR> z1Zw_24hO*@vk3AJDTE%cy34@Z(1FOi6NV;jaDa^ScVjA9-<0}?eSJ=BxlClE@ZInm zNGTH?=@|1R+CwuP1Mft-;(8}fcC7%istHKgp+D}Ev)J5NY(`=|+MIy;Xx)1rDaP45 z|GrAID<4t%t~fd7n`j(OhQ0l}sIA{%8&MqL&k6q6#!$*KpMjQm^hCTq5D5Aj5&#ZlR3|Jij` zbRCWIC0{VS051wkN7u5JGGxEuDXMl}(GD2aL{|R8ekr?~Yj;L#{U`5CBS#UmsWUBR z=Q8UcqeS6tXpTqyl2!a+-ayFmE=$BDm3-A9+5yndyc(~2oXG;Wm?;K`$eRnz+9VOP z7XCGu3*E82?5UQ$_>B1YinrHkKHITPDQodPw9`B&BpQ%8Eeu}l@Vq+Fxs#q#ulvN& zqRWoMch^#H=?|Ddp3KkD!g@J(6y}oOFubk9vSQqKr!C^x7$_?>J9CA1kf!mU9f)V( zFR*eO-b|I#=Ok@pcYgSnOA!LZ-aVuLduGW6Ce(%QxaWPteT9#J<95O@&9kPZ?g`+B8SUcN zAFI;Cr(EjM;`7cb@Rk!vq@%l^U7A-DV(<`0#0AD9XS$Wq`*0{!)%n6%-?j^$vgx11 zo9GF`+x=#awo+Oz_br`G;##3k3ml~7b3({U`eBq|x>&DDQNoOrVH}_LYQxEiitPe- z_Z)&C*2;=XLMXwao7Vh$c^2)XG!U64cnUFlOBfW?Iuv%}CQ29zdJs!n2T;W4qX_qA zKwYR-v$-HPN|eH(9*u;Q=J`dUKR9v)$SXv3>M!q!ny6-+``}V1e0ZolE&&RoPWUmB zRbikAQ9CkQxY*KSf`hN)sH@zC|Fe&wX0{%|G@*UHXJRX+#3y$nXb9Pf@1b;yV>vm z+;MP3z=hdix-J}a1VVka{Px!h1)|opns~7)r)h=UmmTa_yQj>ggk8}RAhP8Nh+F!} z&I4O{?=zB{Ql~TNCp9R}LtP>j_CMrY^TsPd)EwJ>jgPjOe^9_&ZN*74QCfhZ_y*ht z9Q{d405e`&Ks%6@Ix`mzk}}v}7vC=36&41a$;%TK=;bcHt8@`snkXV%V<15qaD^vh zDn{z0ABS;?X9L9ct|3QQOH2Gi_G-JaB-)>iFv+`p3qs(=US7a-rGpO3BE4Z%>X)&@ z{fSkT2E;PSp{&=+A&R{T?`l&vv#{Y?q9oP*dZ995%GSo2_%ZDu^s7bkB(FqFIcoJr zz$65hhng(mw(sI6{OIF%5|J!l3&Aytw{N7+RIR|BoS8OEYTOLB?TDgDqRu%q}3*zeR`XYq!my z*x5;Fdha@Z=f!=k*trQQUf8)=_}aOtsMOgh5x2e$y?S+l$GNz!g0;3DcktvoDEaW1 zjPv9=dE?c-1Ky+vWRxBZf%QgJE*SOFtjn*=iRGIn{vaHX2&Qs_e&QUE zM4{am;z)Z!)ML@|twK;?!_7{0 zs~A4)`giSs4B>ncFU2ENiywSjxCk#BRrv9%mBlP@7oIUgLAbEzpW>5N2{uUjH9;I8 z+tMgU)rV>u(hcNQhS5G;T0rl$9WG4OLR{Zu;(VDadj9Gv;pTlaEQ^wVuZo9IL78@b z$r!|#i@{qaD70ANuRFS4$o=i2gW%b}I55801@>Tl9yooB1m0*^i13lrAIX`2&<5R0 z?sf3gUehlre1v`#RzrI)*8^(J6}|zgii2A%fF*8lq50pmj@_V=Ez!bgO_{yyaLMUv zzqy$~E-Rr6xS4LxDyO!&yPgP{6C})!W%TGn)^!r?1@>NNPfV>sHVjN$Uo!gY7ec1p zapS3b2uaW!$qpqDFBh`(_L}7FUJr5p%fZNl$^yh;vCV>RMltlbUCE5X0uvY&fq>Jr zq^WB8?AzC4s_#9rJy#<^rrqBG6_5vra@Ax0S}6kp_L^^MRbet^u5k=NHt z*B!XOgSd2@J(}bYVtYRxo;?i`zbyvoHK0$pqK1YH58W0QzasOMx;!-y7o1XC#ya&+ zdMrj+I2@XaiL<7(nyK+1iWaKOZi0u0sw%PIq!G&CsCMoK#fgOFJ|qVgDa;Yfi8*67 zck`T3Xn1iI<~y;ONc~$Ky)9%(Ac*JFB@$V&Q0ydSRd+4l*X%zJvb5smGbf8G-mFmCyMK8+T}c2L zx3;=2aqcr8Z`eXm2LN5zm?(&M&TFce|>E zt^&LeZseCW$8%#|T8`@K5Ej&w$pLB2VuXzIZk|zQn>-NGO}?c6QIz3GH(ncIt%>yQ z;cRnQTv=MA1mSEYyr(Q%PAc^T`#Hz+9hjABJKa*gv0u?iWM+)hM%#Q?E_AfB18L4n zsH;weE zY~B3pp?W$;Hm5R-G)qOnA1%|$6>+owY~lV)C1Lk%?w<$gAO=m?54~3HIGv{OE+$l$ zh(|o`?Aa!kVfLiI*t}62mksM*VN+15szd_Po8`{7gvNLB8c%LpBv$4}$pp}lWd!^7 z`BK;dY(sgdUbUGlbHmD61L3!(e&vU;>nCzosbZQtkyFpp!-Wl!-wC$;OvUf|V;XjJ zkmvN=26BDf2mzYk%cZNZ&;>cMQE^E)3f+^ile&t-sgM;hSZ55P%W8SnAn>xwWXt=E zh)0)T6AGN4VdF3jxGX-7Z0RWIQ@(aj%$H9~{800fey;!?(YT^Ci@`hyv_Hn})2Wsl zd`48)`ntb2K$+c5bw}($JFaGDVP)ecm_}oP;OfvbtQ{a>0Q))|bMkU9abjoI6ydM* z=WHI7LjCQDi~-XLCjKC+!avBluxP|`$X^Cax^P#~qTz1G78Y9s&Z@&G@p6_JY^7nJ zflkqUWc7EQ#pMj0YlW~UFMeGa2zgzO?OqJm| z*J^We@4-X34aD_%5p1)_#MMBNHA@aQc($ZwDWU5_>;?1q3t+Ql&Oof>{o};*V_BzB zqU+~`hy}q%(z|Ifg{}b^v>S`yd|nM54fTwG-SgdBMO3)VXt>^L^R?9$0Hc|a|0MAl z=wUe=@3i~3DmFz2(c@B~z@RmHmnDLxZUmq#b5WX`)3s@mG<5wCn`Q*-$_Qz~SmsjS z7b4MKEPJDUKk8TWTzfKQ{A^|ETT-*XR(A_qhk&Spb|G|P^&D1wixfbpMe>ZW>oL44 zxX7aAakK@}GouEVda(0#^m?E*Mq=7eM_=mJvRLZH;S6L7546t#O5={hfpKOFK0NU~9! z*tF09Khf)Z!&A|Y+UlO)+B_m0E>0z*|5l+;e0_VB420T&vaiPf%?S^1ctf0uB6)qp z9mR+qKPl5(R}0N`^Eds@VaQ4tyFiO^5=k4XPeLg;^NQ?oehgCdKt9Eo-%_U)g+BGL z^{CddrS&n!?aoLg3J8oL9;gkX)($V-?^u7gdg)DSc1_nS`&#*^d40=rtLk8_@^k+h z)0(Hg!c)_bmZP#)4N`-6J|Am5v99I%xE|BGd-5`T(n|W$QVB1s;J5JmDtvjVR(Z66 zv}?qqF|$e#xXYN#eeoFCxgZNFKRR$MoM-2U8|A-@U+#u4-L_Cl36aqGGFDpd{(Oj_ z`nVtSx_jj)<2l7Xvf1Pq9yHcyYJHlx9OnDlq+aIUNjY@0&Mq$>#BwtC#b$agn9lvw zNW8u%3RWxMOYyncQW$La)O7){U4<@w&X{$$9rV8r>z!`bC|^a7-4s}&q_uq6h<`~W zbiHBnuQvilt(#&o8@gdf`7Ptw`9B*kGQC`It8`qaw&jj8C&w+?+~MHHR3BnqmyLVZ z8p@ParfuT|i%vC(ORuCfZ-GQXl!0i+|x)^O2hQ;Y#^!mDsyo0oQT3 zVfb0-i(F<*+?=B)cJXlAE=OZWpwhm&NeQoG+-kNXQ9DM>#08i#m><=c&KzufWqvYG z-DI>;5eOLtm$Bv#N^R0vc>Mx54tGv<$~u-9X!wocn+~&Ool%aBrwS=&vq>=-Ir9gW zO686!#Q8F?2bN-@`LfJ>2Kg>7rDbsnU+JI0GMXwy!)koi@sA>9FxMDIIpd=zj*gzA z3G-fn69JnT6Bf;37O)#nr~>TDX%I*Nxew&utE+XDe*VMY>rcZbDpkPhVY^>Z#QTyg zwXsmS6E0cs=dzw_jsHU%4AP}1w3|cJ5*t0q#vRh-?sWyZh4}M`)bnw*WFDUt3MPs7 zIjJ`fNyie|20QdqXYiX)pWAw{oOB<#ZXdZ&-_u$!e|j*#C$t|9Qr9-w`zXo#sMPa( z>~#>^?ljr%v~FKcSTH^t^!663PVuXS`0LFKgz(WziB!AQ{AHVk$k$7YRJ+;yWvhh< z`fGvI+enemei3Ttv1iI-t<2ks3^mtWvCf)LhU>OWyIsTM+n}XNl&n+YRH$XcQ!#J6 zGP@97?qIcD9ir#$=#{7(UUW*iA=f!gNAZI(KZ92~Ug}4+qkdpE&cEN;`mgc$U&D8c zD^N72Uy;mxu4kSb-K)ADzFy5F3m(RA(@HUuS_Y(; z0t#2%E!cF^qpJt4-*av9w!~+&HM(hk7^4dR~4pCX)T{mvA02FCJ#zq5|8J6Yy5}g9=)60o9LS#>pr#rI%^;6 zChdN9#j+aCZZ@)#x$T!aFD;x@H|^!ewlapRn~zoAGX>{u*w*$rX#I$7MPtgCbdiFY zi7X4d%LY#8^N=rvP&L;0e~RZF9SGp9*D?pLgml^0Iv~Gy?}*VhFhC^q#BLukb%)UD zzA5lmyoPIa?7As+fCxtJn-{&#$Ac&o0Caora`bm0I)#pph0sp8Y;T=VmB8mIB+Z55TC7ndJ_r#ycSjQ)(( zrZ*J>%>~qh7#{|ga?0j){Ys4$^E$x_Z8iG10;kR83!F~HI6@8Kyp~N7)({=FVn#eD z+J43O#u|AJd=18u&eC^y55I7a{$JgpY3m4~`mr8gyXgVX`)*~%F8qF8yvtN&uL3Po z&M=m|?1kLvS#koci~Je~s$Z7xKXddN`HO8;vTh*ALanCR8CiHw#jHR57VuOae(vG2 zi9=SnWCeLq(}QH1<#nqO7+3R&d;J{&VdUGX`oUX!re zDy{ydrCuY`c1mtUQvnIJJq0Jj{oG`0UKvDR5t@XJRVj8QMn-*G@7Schj{Br&}UPWL@pP6-c0)9pqx?REW{l*NfIX;0QBG@pT+J{9Ikzush6@ zwODnFhj15*-0r-!rFh4sZOgyHs(igHpvg`eH!i+%FVWz)^>gL^Y&=*k`tdZnzC9ol zO6PM|UyDOFxCg%9+`S5$p3`pEafIU+8an$UCb+WwZ`ILVOun10IgXA@dI)!whCA&z z&4xfdBD`w0AF}z=3wwa80dmPDUAwBoXa9<&%ga;z=Et0XrgKNk8WaurLA~SNS&;6L zWYJvbGDMF{jck`xyb?NCmUj$E@gGR87vlKLHtgg57zxKy=iG#=g#8bPn=N8)@PkBm zRx`AGCOo`n2Rz)h8auUf9G{66}b5l{_fvYy4Q4)gM_U{)a*h0F5c)xT#Y=u_XJE-~R6I$E(BE`(b=K8Pk{3F`D;!r}DW2Q_cIVyt_jp*zhnD|s+ZQsc{?@@)Hc>S6wBkjvAIX{zOyQvJm6XU!|4MjIKa z_a4G&@a3|P-9NNIe-#A{KX>7B{Xmq4PyVGCr$JXC*#zNgc7pZvM12gyDlz#gG4nXz zka0|wam?GF{S94@OS!tcjvQk#zxXok7}t0+tQWBjZhHHH&bz>W9oPRy2Y~Cqzt*|o zx?yVS1)!?>H1(RUU;F^o%+CI>v!_^&kt7i)pycHXhNjn!K7kMCX;l)FV z;5rv1Han^IBKUW7x8N?Y>b7-ktkK-~b@L*k%L>Jx=JirlWLqTZ8aT}AXZ+d;95$n4 z8~=M{qjJyNvGLwICRx_#b7q4ooEs4&esN5os0`*_TkcBWnskYz0A42iy;SErp@`Ih zX!Y9QvC1*_II%pbp!kKrcS>D4de22X(ds}eP##bf9O2VAc%ni6JmmJ%p958MpR&^j za8J*iox6DLTlQJyiZ)?I>qWH&Dh7|$-s)eewi#rlbThu4VSapzN_F)b9uMXUnZ_tp zhH15GU#SW$T&0*^z(qw1KEP>k`ZI1Cb#rny`4i*VS*oG%3M|Vuxapq!SMhod?T1+I zyv%g+C-TgRs+rUm=COBB{cd^ZC-?<`BABs1iPU;3j z>H1=fZji6&n4J=zvnpsAez@EKYM*zTvTE17xaF|8hq6kl&MJNeWS)GLS>ibNB!P!X z;)Rhf(4fWs&@4mLzXpIcJ|dAy`($Cq738 ziBHGHVj#HD?I7sV=$6td!E(81Z+?kvFj14uXi>(xIUD+FEy99u5S9Nc z+U6m4*yM7T*sN0N%U^t4gn>@t@%pF;Xp# z#@@nXrI#5n=EHXOL_Nzy#6R#M?tr!ZtKW^x+mTw9Ngx_`k{75~Q56FP0F@ zE$$-W%Ov4@+TG$5bH@Hsvu<|@x!vU?b(+6ws4eT_9vjn`p@d!0vHdd{8q(T4R15U0 zFzh0>x{+bDepo!4H_GTTXsrw}U`nM3jAQ?`aKa@h<46rlctV~^F905Mn+>zS!bN4D zrihN*EOo$o>N0Disi{BnkR>F0(^~1+qiPZSs`9A9$IE==wrHYGNI_0HnbKwzPP9z` zA)lypzLsrMpGVGo8i5U!ymD2jW3P==3q9!R6#wILTZp6|UIZcdDP8Q_J1qBa1*^rb&UUgul@56|Jv2FHoBi{Q}=Uy{l{QV z)&>3NxwYSonb}(;Kli%c`|9fF-t^St{~2<}1MFm<0Y{v4-d8=UfHBi9H)cnzbf4!f z=zd%YW;{NsbgCM=0M9Zw{AFSbYR3eq(3o{&!iQeDluOZWKezm+GKhg=izVv?#!03_ z;4afFpASlXz%RSQR7yyq?jn+PE+!YHy?wE*=3m&S+W~apU z?I{IYKW?$skBdw9OFOq=C%<;??6>vJn~m+qKS!TSZah!TU4Yi^2i)n8$}3=q&#)6d zC^xT%u^sGt(3ZT{XRFoI%Tbk%-=*i<;89g4dRqJA$i~A|e(LSGkREeHz%n zKA1EMn=m5+c_Oh?8JKP1Bg9Q`5j}t8-<9VB>3HjK$)n3lOEz4Po8alQWRtwmaEV^4 zpbE^q+~sSuR~$KsZ@dSFXW+lx@=9)wzMtR99$p>F7In|hk-n^wK)Y(Lv3M32zNPlc zO633_)iAD_ugYF*DmC+S#h%7W5ZtsrWyAlS0-x1vWsf%pGH=_iKxS)jt*Pa-g?;0?hi{^sdvcH_^Swyq_Tc4b__UO+tffN4d|Y zd0mN^UGhGqZ^iI`>f*J($k4eyBrqHLJ!npSo^H9mm3ysURA1UOcegcf0tafkBk(k- zXW{MMew>67Ywpb^J!RwshB*IQDXm_#zsjY!`TM@P`78HWZgOu`V!c$PmiRAT$O%HT z2js8oOL&vGC$4j*m&tGly&JsP{Y55SSV zG6mE`tQsdcD_GA)>T0In=mqFM{hglC3c#CXj$n-^u;4lKNqB^NMQNp*0fl%4g@8e! zkVo+emL#IY#ly2?!J?04HKp@-_7RHkJBkep+n{Gkm2NCC@Pb%LT)^>Fz(s?f3kSXv z6yIKjhzHiqjE3D}O!;Dowj}$cM;?WVxJw~T+Am)*Q0#EarDdcP3;3FWXsVxV$#{AW z2VBMIVM0(`l^i&2v(RrA96I2fQZjgy-|Ps#krDQXE^Zm4O_Y`aKd}h>L^Hf^%MXAt zni#kSF&NoPiAI)B<@_;X!bXEQV=Z^xFL&Fk1B2Vs^%q*%|FH?@EoZ>wyoY?PTKR3>i%j}F*dOgUb!EQdd#AH4cvY1fp84A4a)?LS4(K-)$H zL#NquWYIM6raLjsx+K0A!kuA1t7O2M7R*shSv?%lmg1;suu$(xq#3G3llJs}E6*bU zp@USHfq=#^@LyDq^=E`spH3#(K>@2EmqM}+1zB<;h2|Lkc2*h>uC4F?AT0q($Jpch zmjrQ*dgSfz$@!543;+Y;%_6?91#-wYxqyKf%!pq?F|{_JHiwvUqBNkE+k#>uEugj? z*t7!AEGZ^JfM>v_5O`)K9%XeOgysep!uTo>*&o`6@sT@dB4iNdJG0l2#~{jYzo>g2 zQeRcOwXM0eI-=>jFt53FVMcq_p8nxR@rdVmUHik$OU5$G)!S9)Wy;+ej~*s&Nr0@3g~U&I*y4rs~yU-9F=rthpU5I;&wS!tB->t9?lPw?1(cmySfu zoR~`rBJ?B8zVyXfo3qkx>fA@wZpxX{$7zY%$EoK;YgH0qsD76q2Q{B)PeZi%z!r~$ zsv%=cgEY{i70sJsE_!@(`GjbEkrR|a0klSG0Z{_e_HCEv`Xd%wn+f-vo=sWMSUUfJ zF{D?iurJkxRf@95=ODMFiv8$hfy7c+-$>z2R?u=nlzvP+r#Cnx8^6FClwOqYZ>Q{c z@XW={UMpsyc6OM-lF7%*9jid4$@hb24!wixPN~zrtd3^4rKc_5hR`QhmCr~hz)I?* zdi_0~TYoW7>&CN0*J?0r8ZjwTOIRQ7xlc5dQ4gus^g$6#BzuwuBri zSD)tya3?AQ>wfOy>W4FR(TO+Loam`oBj88Co7J(NKxz^9c?~0(EHy|p*94TGqX$C; zeef19iKWRlh^18s!2Wj2mA!Y%9dp#N%`dG&mub|?;OtzVAY7a1m0V_nnf&jN!&uh) z@f8-RF4D*!9<_sR@kvY+s8{e3d4Bxb(qqB5^M*PGi*?KK!~0`<4E){BWG%uyU`evX z->(MErKfwzQoO)a0_VH7mB<2rU;4t=?=ryy0e+dwS-`;gaZNW*jWbz#tIZRWO74P2I=O+mQKF6;COi{|Q&Q$+4N&Q))UlgJ1VUWCJ*vtYtdW(yZ^iE|L(u# zI~(x+mtPc&Ux4Kze1Xisd3SHfcz0_vM{QR*34*t7X4HBcu69;7Zd1khs;ZDSns+1Z zVIa0YQWI8zIGn*C%Avyxxem`y7(#Meo)wQ3Bpv-KST&2r+D|7q%Tx#wB^%)~TF9-1 z#=`b|rv%MP&s7pi;1|keMs_wmzCHTxY#TTQXY&afKqoyTvYD&AKkjkvF>73FONu%~YBIQ;DirI2js4 zqi7L7WW@*PH4?VN_#+jkm??ox9zi(Wr(lU-7+ho663$U3c2TubfEbyjj9RXPv!VNU zU5EEsUJz9Km?h2cVad9+pw7czQo9N=vnBc>;d1LjVf?QaLSd0inLp*62krnR2{)FUx7a!a;$%dr4uM4KlzpZkdN^kG#XIqa2O&`i*ehwWmYlPRM z(}+!>Q(Z2kBr`2b?#{1c|9Zzh&4CWyC2X%t7t$VmTF~32iims0OC~swN`A%rqIl=m z`mBRnN(30IB>kMT??w(JsvlWVB*<)}9H=f8%-wLe5ia81Y^}MlJ<)Ev(S@CGx|Eu5017gB7TDF{2*P^FacOg5>-rqoF1X;P zTV+|{J$IJ&9PL@0-_`wjVxk;xk@*NCK8E{{=t-$V$n4FPx?(9snzEfSdtInkw#Wn4 zN+ltZu?-Es?vLoQaA0@z`#Nc$ZLiHW-jIEa3ztQ|(Ghc4%6j5BxFI`=iX}%;OIR$ zfjOaAD$3E list[str]: dirs.extend(gather_dependencies(dep)) return dirs - return gather_dependencies(module) + return list(set(gather_dependencies(module))) if __name__ == "__main__": @@ -79,6 +78,4 @@ def gather_dependencies(mod: str) -> list[str]: if args.datapacks: create_datapacks_archive(manifest, target, suffix) if args.modules: - (target / "modules").mkdir(parents=True, exist_ok=True) - create_modules_archive(manifest, target / "modules", suffix) - shutil.make_archive(target / f"bookshelf-modules{suffix}", "zip", target / "modules") + create_modules_archive(manifest, target, suffix)