@nodecraft/rendermite 0.0.1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +25 -0
- package/README.md +91 -0
- package/assets/README.md +17 -0
- package/assets/builtin/minecraft/atlases/misc.json +24 -0
- package/assets/builtin/minecraft/items/black_banner.json +12 -0
- package/assets/builtin/minecraft/items/black_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/blue_banner.json +12 -0
- package/assets/builtin/minecraft/items/blue_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/brown_banner.json +12 -0
- package/assets/builtin/minecraft/items/brown_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/chest.json +6 -0
- package/assets/builtin/minecraft/items/conduit.json +6 -0
- package/assets/builtin/minecraft/items/copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/creeper_head.json +6 -0
- package/assets/builtin/minecraft/items/cyan_banner.json +12 -0
- package/assets/builtin/minecraft/items/cyan_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/decorated_pot.json +6 -0
- package/assets/builtin/minecraft/items/dragon_head.json +6 -0
- package/assets/builtin/minecraft/items/ender_chest.json +6 -0
- package/assets/builtin/minecraft/items/exposed_copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/exposed_copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/gray_banner.json +12 -0
- package/assets/builtin/minecraft/items/gray_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/green_banner.json +12 -0
- package/assets/builtin/minecraft/items/green_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/light_blue_banner.json +12 -0
- package/assets/builtin/minecraft/items/light_blue_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/light_gray_banner.json +12 -0
- package/assets/builtin/minecraft/items/light_gray_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/lime_banner.json +12 -0
- package/assets/builtin/minecraft/items/lime_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/magenta_banner.json +12 -0
- package/assets/builtin/minecraft/items/magenta_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/orange_banner.json +12 -0
- package/assets/builtin/minecraft/items/orange_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/oxidized_copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/oxidized_copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/piglin_head.json +6 -0
- package/assets/builtin/minecraft/items/pink_banner.json +12 -0
- package/assets/builtin/minecraft/items/pink_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/player_head.json +6 -0
- package/assets/builtin/minecraft/items/purple_banner.json +12 -0
- package/assets/builtin/minecraft/items/purple_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/rc_filled_map_base.json +6 -0
- package/assets/builtin/minecraft/items/rc_filled_map_overlay.json +7 -0
- package/assets/builtin/minecraft/items/rc_firework_star_base.json +6 -0
- package/assets/builtin/minecraft/items/rc_firework_star_overlay.json +6 -0
- package/assets/builtin/minecraft/items/rc_potion_bottle.json +6 -0
- package/assets/builtin/minecraft/items/rc_potion_bottle_lingering.json +6 -0
- package/assets/builtin/minecraft/items/rc_potion_bottle_splash.json +6 -0
- package/assets/builtin/minecraft/items/rc_potion_content.json +6 -0
- package/assets/builtin/minecraft/items/rc_tipped_arrow_base.json +6 -0
- package/assets/builtin/minecraft/items/rc_tipped_arrow_head.json +6 -0
- package/assets/builtin/minecraft/items/red_banner.json +12 -0
- package/assets/builtin/minecraft/items/red_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/shield.json +6 -0
- package/assets/builtin/minecraft/items/shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/skeleton_skull.json +6 -0
- package/assets/builtin/minecraft/items/trapped_chest.json +6 -0
- package/assets/builtin/minecraft/items/waxed_copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/waxed_copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/waxed_exposed_copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/waxed_exposed_copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/waxed_oxidized_copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/waxed_oxidized_copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/waxed_weathered_copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/waxed_weathered_copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/weathered_copper_chest.json +6 -0
- package/assets/builtin/minecraft/items/weathered_copper_golem_statue.json +6 -0
- package/assets/builtin/minecraft/items/white_banner.json +12 -0
- package/assets/builtin/minecraft/items/white_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/wither_skeleton_skull.json +6 -0
- package/assets/builtin/minecraft/items/yellow_banner.json +12 -0
- package/assets/builtin/minecraft/items/yellow_shulker_box.json +6 -0
- package/assets/builtin/minecraft/items/zombie_head.json +6 -0
- package/assets/builtin/minecraft/models/item/generated.json +30 -0
- package/assets/builtin/minecraft/textures/item/empty.png +0 -0
- package/assets/builtin/minecraft/textures/item/unknown.png +0 -0
- package/assets/builtin/mobheads/items/allay.json +6 -0
- package/assets/builtin/mobheads/items/armadillo.json +6 -0
- package/assets/builtin/mobheads/items/axolotl.json +6 -0
- package/assets/builtin/mobheads/items/bat.json +6 -0
- package/assets/builtin/mobheads/items/bee.json +6 -0
- package/assets/builtin/mobheads/items/blaze.json +6 -0
- package/assets/builtin/mobheads/items/bogged.json +6 -0
- package/assets/builtin/mobheads/items/breeze.json +6 -0
- package/assets/builtin/mobheads/items/camel.json +6 -0
- package/assets/builtin/mobheads/items/camel_husk.json +6 -0
- package/assets/builtin/mobheads/items/cat.json +6 -0
- package/assets/builtin/mobheads/items/cave_spider.json +6 -0
- package/assets/builtin/mobheads/items/chicken.json +6 -0
- package/assets/builtin/mobheads/items/cod.json +6 -0
- package/assets/builtin/mobheads/items/copper_golem.json +6 -0
- package/assets/builtin/mobheads/items/cow.json +6 -0
- package/assets/builtin/mobheads/items/creaking.json +6 -0
- package/assets/builtin/mobheads/items/creeper.json +6 -0
- package/assets/builtin/mobheads/items/dolphin.json +6 -0
- package/assets/builtin/mobheads/items/donkey.json +6 -0
- package/assets/builtin/mobheads/items/drowned.json +6 -0
- package/assets/builtin/mobheads/items/elder_guardian.json +6 -0
- package/assets/builtin/mobheads/items/ender_dragon.json +6 -0
- package/assets/builtin/mobheads/items/enderman.json +6 -0
- package/assets/builtin/mobheads/items/endermite.json +6 -0
- package/assets/builtin/mobheads/items/evoker.json +6 -0
- package/assets/builtin/mobheads/items/fox.json +6 -0
- package/assets/builtin/mobheads/items/frog.json +6 -0
- package/assets/builtin/mobheads/items/ghast.json +6 -0
- package/assets/builtin/mobheads/items/giant.json +6 -0
- package/assets/builtin/mobheads/items/glow_squid.json +6 -0
- package/assets/builtin/mobheads/items/goat.json +6 -0
- package/assets/builtin/mobheads/items/guardian.json +6 -0
- package/assets/builtin/mobheads/items/happy_ghast.json +6 -0
- package/assets/builtin/mobheads/items/hoglin.json +6 -0
- package/assets/builtin/mobheads/items/horse.json +6 -0
- package/assets/builtin/mobheads/items/husk.json +6 -0
- package/assets/builtin/mobheads/items/illusioner.json +6 -0
- package/assets/builtin/mobheads/items/iron_golem.json +6 -0
- package/assets/builtin/mobheads/items/llama.json +6 -0
- package/assets/builtin/mobheads/items/magma_cube.json +6 -0
- package/assets/builtin/mobheads/items/mannequin.json +6 -0
- package/assets/builtin/mobheads/items/mooshroom.json +6 -0
- package/assets/builtin/mobheads/items/mule.json +6 -0
- package/assets/builtin/mobheads/items/nautilus.json +6 -0
- package/assets/builtin/mobheads/items/ocelot.json +6 -0
- package/assets/builtin/mobheads/items/panda.json +6 -0
- package/assets/builtin/mobheads/items/parched.json +6 -0
- package/assets/builtin/mobheads/items/parrot.json +6 -0
- package/assets/builtin/mobheads/items/phantom.json +6 -0
- package/assets/builtin/mobheads/items/pig.json +6 -0
- package/assets/builtin/mobheads/items/piglin.json +6 -0
- package/assets/builtin/mobheads/items/piglin_brute.json +6 -0
- package/assets/builtin/mobheads/items/pillager.json +6 -0
- package/assets/builtin/mobheads/items/player.json +6 -0
- package/assets/builtin/mobheads/items/polar_bear.json +6 -0
- package/assets/builtin/mobheads/items/pufferfish.json +6 -0
- package/assets/builtin/mobheads/items/rabbit.json +6 -0
- package/assets/builtin/mobheads/items/ravager.json +6 -0
- package/assets/builtin/mobheads/items/salmon.json +6 -0
- package/assets/builtin/mobheads/items/sheep.json +6 -0
- package/assets/builtin/mobheads/items/shulker.json +6 -0
- package/assets/builtin/mobheads/items/silverfish.json +6 -0
- package/assets/builtin/mobheads/items/skeleton.json +6 -0
- package/assets/builtin/mobheads/items/skeleton_horse.json +6 -0
- package/assets/builtin/mobheads/items/slime.json +6 -0
- package/assets/builtin/mobheads/items/sniffer.json +6 -0
- package/assets/builtin/mobheads/items/snow_golem.json +6 -0
- package/assets/builtin/mobheads/items/spider.json +6 -0
- package/assets/builtin/mobheads/items/squid.json +6 -0
- package/assets/builtin/mobheads/items/stray.json +6 -0
- package/assets/builtin/mobheads/items/strider.json +6 -0
- package/assets/builtin/mobheads/items/sulfur_cube.json +6 -0
- package/assets/builtin/mobheads/items/tadpole.json +6 -0
- package/assets/builtin/mobheads/items/trader_llama.json +6 -0
- package/assets/builtin/mobheads/items/tropical_fish.json +14 -0
- package/assets/builtin/mobheads/items/turtle.json +6 -0
- package/assets/builtin/mobheads/items/vex.json +6 -0
- package/assets/builtin/mobheads/items/villager.json +6 -0
- package/assets/builtin/mobheads/items/vindicator.json +6 -0
- package/assets/builtin/mobheads/items/wandering_trader.json +6 -0
- package/assets/builtin/mobheads/items/warden.json +6 -0
- package/assets/builtin/mobheads/items/witch.json +6 -0
- package/assets/builtin/mobheads/items/wither.json +6 -0
- package/assets/builtin/mobheads/items/wither_skeleton.json +6 -0
- package/assets/builtin/mobheads/items/wolf.json +6 -0
- package/assets/builtin/mobheads/items/zoglin.json +6 -0
- package/assets/builtin/mobheads/items/zombie.json +6 -0
- package/assets/builtin/mobheads/items/zombie_horse.json +6 -0
- package/assets/builtin/mobheads/items/zombie_nautilus.json +6 -0
- package/assets/builtin/mobheads/items/zombie_villager.json +6 -0
- package/assets/builtin/mobheads/items/zombified_piglin.json +6 -0
- package/assets/builtin/mobheads/models/item/allay.json +6 -0
- package/assets/builtin/mobheads/models/item/armadillo.json +41 -0
- package/assets/builtin/mobheads/models/item/axolotl.json +36 -0
- package/assets/builtin/mobheads/models/item/base/camel.json +59 -0
- package/assets/builtin/mobheads/models/item/base/cat.json +52 -0
- package/assets/builtin/mobheads/models/item/base/cow.json +56 -0
- package/assets/builtin/mobheads/models/item/base/donkey.json +68 -0
- package/assets/builtin/mobheads/models/item/base/guardian.json +272 -0
- package/assets/builtin/mobheads/models/item/base/head_32_32.json +19 -0
- package/assets/builtin/mobheads/models/item/base/head_64_32.json +34 -0
- package/assets/builtin/mobheads/models/item/base/head_64_64.json +34 -0
- package/assets/builtin/mobheads/models/item/base/head_64_64_overlay.json +34 -0
- package/assets/builtin/mobheads/models/item/base/head_display.json +8 -0
- package/assets/builtin/mobheads/models/item/base/hoglin.json +81 -0
- package/assets/builtin/mobheads/models/item/base/horse.json +80 -0
- package/assets/builtin/mobheads/models/item/base/llama.json +64 -0
- package/assets/builtin/mobheads/models/item/base/nautilus.json +213 -0
- package/assets/builtin/mobheads/models/item/base/piglin.json +80 -0
- package/assets/builtin/mobheads/models/item/base/spider.json +32 -0
- package/assets/builtin/mobheads/models/item/base/squid.json +116 -0
- package/assets/builtin/mobheads/models/item/base/villager.json +43 -0
- package/assets/builtin/mobheads/models/item/bat.json +41 -0
- package/assets/builtin/mobheads/models/item/bee.json +59 -0
- package/assets/builtin/mobheads/models/item/blaze.json +6 -0
- package/assets/builtin/mobheads/models/item/bogged.json +113 -0
- package/assets/builtin/mobheads/models/item/breeze.json +49 -0
- package/assets/builtin/mobheads/models/item/camel.json +6 -0
- package/assets/builtin/mobheads/models/item/camel_husk.json +6 -0
- package/assets/builtin/mobheads/models/item/cat.json +6 -0
- package/assets/builtin/mobheads/models/item/cave_spider.json +6 -0
- package/assets/builtin/mobheads/models/item/chicken.json +62 -0
- package/assets/builtin/mobheads/models/item/cod.json +98 -0
- package/assets/builtin/mobheads/models/item/copper_golem.json +85 -0
- package/assets/builtin/mobheads/models/item/cow.json +6 -0
- package/assets/builtin/mobheads/models/item/creaking.json +120 -0
- package/assets/builtin/mobheads/models/item/creeper.json +6 -0
- package/assets/builtin/mobheads/models/item/dolphin.json +33 -0
- package/assets/builtin/mobheads/models/item/donkey.json +6 -0
- package/assets/builtin/mobheads/models/item/drowned.json +8 -0
- package/assets/builtin/mobheads/models/item/elder_guardian.json +6 -0
- package/assets/builtin/mobheads/models/item/ender_dragon.json +113 -0
- package/assets/builtin/mobheads/models/item/enderman.json +41 -0
- package/assets/builtin/mobheads/models/item/endermite.json +59 -0
- package/assets/builtin/mobheads/models/item/evoker.json +6 -0
- package/assets/builtin/mobheads/models/item/fox.json +55 -0
- package/assets/builtin/mobheads/models/item/frog.json +159 -0
- package/assets/builtin/mobheads/models/item/ghast.json +131 -0
- package/assets/builtin/mobheads/models/item/giant.json +6 -0
- package/assets/builtin/mobheads/models/item/glow_squid.json +6 -0
- package/assets/builtin/mobheads/models/item/goat.json +56 -0
- package/assets/builtin/mobheads/models/item/guardian.json +6 -0
- package/assets/builtin/mobheads/models/item/happy_ghast.json +131 -0
- package/assets/builtin/mobheads/models/item/hoglin.json +6 -0
- package/assets/builtin/mobheads/models/item/horse.json +6 -0
- package/assets/builtin/mobheads/models/item/husk.json +6 -0
- package/assets/builtin/mobheads/models/item/illusioner.json +6 -0
- package/assets/builtin/mobheads/models/item/iron_golem.json +34 -0
- package/assets/builtin/mobheads/models/item/llama.json +7 -0
- package/assets/builtin/mobheads/models/item/magma_cube.json +100 -0
- package/assets/builtin/mobheads/models/item/mooshroom.json +6 -0
- package/assets/builtin/mobheads/models/item/mule.json +6 -0
- package/assets/builtin/mobheads/models/item/nautilus.json +6 -0
- package/assets/builtin/mobheads/models/item/ocelot.json +6 -0
- package/assets/builtin/mobheads/models/item/panda.json +61 -0
- package/assets/builtin/mobheads/models/item/parched.json +6 -0
- package/assets/builtin/mobheads/models/item/parrot.json +73 -0
- package/assets/builtin/mobheads/models/item/phantom.json +33 -0
- package/assets/builtin/mobheads/models/item/pig.json +35 -0
- package/assets/builtin/mobheads/models/item/piglin.json +6 -0
- package/assets/builtin/mobheads/models/item/piglin_brute.json +6 -0
- package/assets/builtin/mobheads/models/item/pillager.json +6 -0
- package/assets/builtin/mobheads/models/item/player.json +6 -0
- package/assets/builtin/mobheads/models/item/polar_bear.json +61 -0
- package/assets/builtin/mobheads/models/item/pufferfish.json +113 -0
- package/assets/builtin/mobheads/models/item/rabbit.json +50 -0
- package/assets/builtin/mobheads/models/item/ravager.json +75 -0
- package/assets/builtin/mobheads/models/item/salmon.json +80 -0
- package/assets/builtin/mobheads/models/item/sheep.json +34 -0
- package/assets/builtin/mobheads/models/item/shulker.json +109 -0
- package/assets/builtin/mobheads/models/item/silverfish.json +148 -0
- package/assets/builtin/mobheads/models/item/skeleton.json +6 -0
- package/assets/builtin/mobheads/models/item/skeleton_horse.json +6 -0
- package/assets/builtin/mobheads/models/item/slime.json +69 -0
- package/assets/builtin/mobheads/models/item/sniffer.json +85 -0
- package/assets/builtin/mobheads/models/item/snow_golem.json +24 -0
- package/assets/builtin/mobheads/models/item/spider.json +6 -0
- package/assets/builtin/mobheads/models/item/squid.json +6 -0
- package/assets/builtin/mobheads/models/item/stray.json +8 -0
- package/assets/builtin/mobheads/models/item/strider.json +101 -0
- package/assets/builtin/mobheads/models/item/sulfur_cube.json +38 -0
- package/assets/builtin/mobheads/models/item/tadpole.json +31 -0
- package/assets/builtin/mobheads/models/item/trader_llama.json +7 -0
- package/assets/builtin/mobheads/models/item/tropical_fish.json +141 -0
- package/assets/builtin/mobheads/models/item/turtle.json +23 -0
- package/assets/builtin/mobheads/models/item/vex.json +23 -0
- package/assets/builtin/mobheads/models/item/villager.json +6 -0
- package/assets/builtin/mobheads/models/item/vindicator.json +6 -0
- package/assets/builtin/mobheads/models/item/wandering_trader.json +6 -0
- package/assets/builtin/mobheads/models/item/warden.json +92 -0
- package/assets/builtin/mobheads/models/item/witch.json +110 -0
- package/assets/builtin/mobheads/models/item/wither.json +22 -0
- package/assets/builtin/mobheads/models/item/wither_skeleton.json +6 -0
- package/assets/builtin/mobheads/models/item/wolf.json +59 -0
- package/assets/builtin/mobheads/models/item/zoglin.json +6 -0
- package/assets/builtin/mobheads/models/item/zombie.json +6 -0
- package/assets/builtin/mobheads/models/item/zombie_horse.json +6 -0
- package/assets/builtin/mobheads/models/item/zombie_nautilus.json +6 -0
- package/assets/builtin/mobheads/models/item/zombie_villager.json +6 -0
- package/assets/builtin/mobheads/models/item/zombified_piglin.json +6 -0
- package/assets/builtin/renderchest/atlases/items.json +9 -0
- package/assets/builtin/renderchest/items/empty.json +5 -0
- package/assets/builtin/renderchest/items/unknown.json +6 -0
- package/assets/builtin/renderchest/models/item/banner.json +50 -0
- package/assets/builtin/renderchest/models/item/chest/chest.json +6 -0
- package/assets/builtin/renderchest/models/item/chest/copper_chest.json +6 -0
- package/assets/builtin/renderchest/models/item/chest/ender_chest.json +6 -0
- package/assets/builtin/renderchest/models/item/chest/exposed_copper_chest.json +6 -0
- package/assets/builtin/renderchest/models/item/chest/oxidized_copper_chest.json +6 -0
- package/assets/builtin/renderchest/models/item/chest/trapped_chest.json +6 -0
- package/assets/builtin/renderchest/models/item/chest/weathered_copper_chest.json +6 -0
- package/assets/builtin/renderchest/models/item/chest.json +47 -0
- package/assets/builtin/renderchest/models/item/conduit.json +24 -0
- package/assets/builtin/renderchest/models/item/copper_golem_statue/copper_golem_statue.json +6 -0
- package/assets/builtin/renderchest/models/item/copper_golem_statue/exposed_copper_golem_statue.json +6 -0
- package/assets/builtin/renderchest/models/item/copper_golem_statue/oxidized_copper_golem_statue.json +6 -0
- package/assets/builtin/renderchest/models/item/copper_golem_statue/weathered_copper_golem_statue.json +6 -0
- package/assets/builtin/renderchest/models/item/copper_golem_statue.json +132 -0
- package/assets/builtin/renderchest/models/item/decorated_pot.json +69 -0
- package/assets/builtin/renderchest/models/item/decorated_pot_base.json +37 -0
- package/assets/builtin/renderchest/models/item/decorated_pot_overlay.json +14 -0
- package/assets/builtin/renderchest/models/item/empty.json +6 -0
- package/assets/builtin/renderchest/models/item/filled_map/base.json +6 -0
- package/assets/builtin/renderchest/models/item/filled_map/overlay.json +6 -0
- package/assets/builtin/renderchest/models/item/firework_star/base.json +6 -0
- package/assets/builtin/renderchest/models/item/firework_star/overlay.json +6 -0
- package/assets/builtin/renderchest/models/item/potion/arrow_base.json +6 -0
- package/assets/builtin/renderchest/models/item/potion/arrow_head.json +6 -0
- package/assets/builtin/renderchest/models/item/potion/bottle.json +6 -0
- package/assets/builtin/renderchest/models/item/potion/bottle_lingering.json +6 -0
- package/assets/builtin/renderchest/models/item/potion/bottle_splash.json +6 -0
- package/assets/builtin/renderchest/models/item/potion/content.json +6 -0
- package/assets/builtin/renderchest/models/item/shield.json +41 -0
- package/assets/builtin/renderchest/models/item/shulker_box/black_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/blue_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/brown_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/cyan_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/gray_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/green_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/light_blue_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/light_gray_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/lime_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/magenta_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/orange_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/pink_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/purple_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/red_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/white_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box/yellow_shulker_box.json +6 -0
- package/assets/builtin/renderchest/models/item/shulker_box.json +98 -0
- package/assets/builtin/renderchest/models/item/unknown.json +6 -0
- package/assets/builtin/renderchest/textures/item/empty.png +0 -0
- package/assets/builtin/renderchest/textures/item/unknown.png +0 -0
- package/assets/builtin-bed-compat/minecraft/models/item/black_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/blue_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/brown_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/cyan_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/gray_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/green_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/light_blue_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/light_gray_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/lime_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/magenta_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/orange_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/pink_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/purple_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/red_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/white_bed.json +6 -0
- package/assets/builtin-bed-compat/minecraft/models/item/yellow_bed.json +6 -0
- package/assets/builtin-bed-compat/renderchest/models/item/bed.json +72 -0
- package/assets/builtin-legacy/minecraft/atlases/misc.json +19 -0
- package/assets/builtin-legacy/minecraft/models/item/black_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/black_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/black_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/blue_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/blue_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/blue_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/brown_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/brown_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/brown_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/chest.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/conduit.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/creeper_head.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/cyan_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/cyan_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/cyan_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/decorated_pot.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/dragon_head.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/empty.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/ender_chest.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/gray_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/gray_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/gray_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/green_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/green_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/green_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/light_blue_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/light_blue_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/light_blue_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/light_gray_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/light_gray_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/light_gray_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/lime_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/lime_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/lime_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/magenta_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/magenta_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/magenta_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/orange_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/orange_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/orange_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/piglin_head.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/pink_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/pink_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/pink_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/player_head.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/purple_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/purple_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/purple_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_amethyst_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_base.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_copper_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_diamond_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_emerald_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_gold_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_iron_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_lapis_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_netherite_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_overlay.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_quartz_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_boots_redstone_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_amethyst_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_base.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_copper_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_diamond_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_emerald_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_gold_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_iron_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_lapis_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_netherite_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_overlay.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_quartz_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_chestplate_redstone_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_amethyst_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_base.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_copper_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_diamond_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_emerald_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_gold_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_iron_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_lapis_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_netherite_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_overlay.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_quartz_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_helmet_redstone_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_amethyst_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_base.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_copper_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_diamond_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_emerald_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_gold_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_iron_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_lapis_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_netherite_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_overlay.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_quartz_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_leather_leggings_redstone_trim.json +7 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_angler_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_archer_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_arms_up_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_blade_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_brewer_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_brick.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_burn_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_danger_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_explorer_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_friend_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_heart_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_heartbreak_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_howl_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_miner_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_mourner_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_plenty_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_prize_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_sheaf_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_shelter_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_skull_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_b_snort_pottery_sherd.json +9 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_angler_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_archer_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_arms_up_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_blade_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_brewer_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_brick.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_burn_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_danger_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_explorer_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_friend_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_heart_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_heartbreak_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_howl_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_miner_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_mourner_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_plenty_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_prize_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_sheaf_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_shelter_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_skull_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_pot_o_snort_pottery_sherd.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_potion_bottle.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_potion_bottle_lingering.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_potion_bottle_splash.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_potion_content.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_tipped_arrow_base.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/rc_tipped_arrow_head.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/red_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/red_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/red_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/shield.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/skeleton_skull.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/trapped_chest.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/unknown.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/white_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/white_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/white_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/wither_skeleton_skull.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/yellow_banner.json +3 -0
- package/assets/builtin-legacy/minecraft/models/item/yellow_bed.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/yellow_shulker_box.json +6 -0
- package/assets/builtin-legacy/minecraft/models/item/zombie_head.json +3 -0
- package/assets/builtin-legacy/mobheads/models/item/allay.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/armadillo.json +41 -0
- package/assets/builtin-legacy/mobheads/models/item/axolotl.json +36 -0
- package/assets/builtin-legacy/mobheads/models/item/base/cat.json +52 -0
- package/assets/builtin-legacy/mobheads/models/item/base/cow.json +43 -0
- package/assets/builtin-legacy/mobheads/models/item/base/donkey.json +68 -0
- package/assets/builtin-legacy/mobheads/models/item/base/guardian.json +272 -0
- package/assets/builtin-legacy/mobheads/models/item/base/head_32_32.json +19 -0
- package/assets/builtin-legacy/mobheads/models/item/base/head_64_32.json +19 -0
- package/assets/builtin-legacy/mobheads/models/item/base/head_64_64.json +19 -0
- package/assets/builtin-legacy/mobheads/models/item/base/head_display.json +8 -0
- package/assets/builtin-legacy/mobheads/models/item/base/hoglin.json +81 -0
- package/assets/builtin-legacy/mobheads/models/item/base/horse.json +80 -0
- package/assets/builtin-legacy/mobheads/models/item/base/llama.json +64 -0
- package/assets/builtin-legacy/mobheads/models/item/base/piglin.json +80 -0
- package/assets/builtin-legacy/mobheads/models/item/base/spider.json +32 -0
- package/assets/builtin-legacy/mobheads/models/item/base/squid.json +116 -0
- package/assets/builtin-legacy/mobheads/models/item/base/villager.json +43 -0
- package/assets/builtin-legacy/mobheads/models/item/bat.json +41 -0
- package/assets/builtin-legacy/mobheads/models/item/bee.json +59 -0
- package/assets/builtin-legacy/mobheads/models/item/blaze.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/breeze.json +49 -0
- package/assets/builtin-legacy/mobheads/models/item/camel.json +62 -0
- package/assets/builtin-legacy/mobheads/models/item/cat.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/cave_spider.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/chicken.json +46 -0
- package/assets/builtin-legacy/mobheads/models/item/cod.json +98 -0
- package/assets/builtin-legacy/mobheads/models/item/cow.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/creeper.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/dolphin.json +33 -0
- package/assets/builtin-legacy/mobheads/models/item/donkey.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/drowned.json +35 -0
- package/assets/builtin-legacy/mobheads/models/item/elder_guardian.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/ender_dragon.json +113 -0
- package/assets/builtin-legacy/mobheads/models/item/enderman.json +41 -0
- package/assets/builtin-legacy/mobheads/models/item/endermite.json +59 -0
- package/assets/builtin-legacy/mobheads/models/item/evoker.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/fox.json +55 -0
- package/assets/builtin-legacy/mobheads/models/item/frog.json +159 -0
- package/assets/builtin-legacy/mobheads/models/item/ghast.json +131 -0
- package/assets/builtin-legacy/mobheads/models/item/giant.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/glow_squid.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/goat.json +56 -0
- package/assets/builtin-legacy/mobheads/models/item/guardian.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/hoglin.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/horse.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/husk.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/illusioner.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/iron_golem.json +34 -0
- package/assets/builtin-legacy/mobheads/models/item/llama.json +7 -0
- package/assets/builtin-legacy/mobheads/models/item/magma_cube.json +52 -0
- package/assets/builtin-legacy/mobheads/models/item/mooshroom.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/mule.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/ocelot.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/panda.json +61 -0
- package/assets/builtin-legacy/mobheads/models/item/parrot.json +73 -0
- package/assets/builtin-legacy/mobheads/models/item/phantom.json +33 -0
- package/assets/builtin-legacy/mobheads/models/item/pig.json +35 -0
- package/assets/builtin-legacy/mobheads/models/item/piglin.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/piglin_brute.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/pillager.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/player.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/polar_bear.json +61 -0
- package/assets/builtin-legacy/mobheads/models/item/pufferfish.json +113 -0
- package/assets/builtin-legacy/mobheads/models/item/rabbit.json +59 -0
- package/assets/builtin-legacy/mobheads/models/item/ravager.json +75 -0
- package/assets/builtin-legacy/mobheads/models/item/salmon.json +80 -0
- package/assets/builtin-legacy/mobheads/models/item/sheep.json +34 -0
- package/assets/builtin-legacy/mobheads/models/item/shulker.json +109 -0
- package/assets/builtin-legacy/mobheads/models/item/silverfish.json +148 -0
- package/assets/builtin-legacy/mobheads/models/item/skeleton.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/skeleton_horse.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/slime.json +69 -0
- package/assets/builtin-legacy/mobheads/models/item/sniffer.json +85 -0
- package/assets/builtin-legacy/mobheads/models/item/snow_golem.json +24 -0
- package/assets/builtin-legacy/mobheads/models/item/spider.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/squid.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/stray.json +35 -0
- package/assets/builtin-legacy/mobheads/models/item/strider.json +101 -0
- package/assets/builtin-legacy/mobheads/models/item/tadpole.json +31 -0
- package/assets/builtin-legacy/mobheads/models/item/trader_llama.json +7 -0
- package/assets/builtin-legacy/mobheads/models/item/tropical_fish.json +141 -0
- package/assets/builtin-legacy/mobheads/models/item/turtle.json +23 -0
- package/assets/builtin-legacy/mobheads/models/item/vex.json +23 -0
- package/assets/builtin-legacy/mobheads/models/item/villager.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/vindicator.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/wandering_trader.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/warden.json +92 -0
- package/assets/builtin-legacy/mobheads/models/item/witch.json +110 -0
- package/assets/builtin-legacy/mobheads/models/item/wither.json +22 -0
- package/assets/builtin-legacy/mobheads/models/item/wither_skeleton.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/wolf.json +59 -0
- package/assets/builtin-legacy/mobheads/models/item/zoglin.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/zombie.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/zombie_horse.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/zombie_villager.json +6 -0
- package/assets/builtin-legacy/mobheads/models/item/zombified_piglin.json +6 -0
- package/assets/builtin-legacy/renderchest/atlases/items.json +9 -0
- package/assets/builtin-legacy/renderchest/models/item/banner.json +53 -0
- package/assets/builtin-legacy/renderchest/models/item/bed.json +72 -0
- package/assets/builtin-legacy/renderchest/models/item/chest.json +49 -0
- package/assets/builtin-legacy/renderchest/models/item/conduit.json +24 -0
- package/assets/builtin-legacy/renderchest/models/item/decorated_pot.json +69 -0
- package/assets/builtin-legacy/renderchest/models/item/decorated_pot_base.json +34 -0
- package/assets/builtin-legacy/renderchest/models/item/decorated_pot_overlay.json +14 -0
- package/assets/builtin-legacy/renderchest/models/item/empty.json +6 -0
- package/assets/builtin-legacy/renderchest/models/item/shield.json +38 -0
- package/assets/builtin-legacy/renderchest/models/item/shulker_box.json +103 -0
- package/assets/builtin-legacy/renderchest/models/item/unknown.json +6 -0
- package/assets/builtin-legacy/renderchest/textures/item/empty.png +0 -0
- package/assets/builtin-legacy/renderchest/textures/item/unknown.png +0 -0
- package/dist/atlas/registry.d.ts +8 -0
- package/dist/atlas/registry.js +2 -0
- package/dist/atlas/sources.d.ts +2 -0
- package/dist/atlas/sources.js +2 -0
- package/dist/blend-CHP2-j9U.js +90 -0
- package/dist/blend-Qvrn6YgK.d.ts +36 -0
- package/dist/builtin-C8GZEN40.js +16 -0
- package/dist/builtin.d.ts +5 -0
- package/dist/builtin.js +2 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +174 -0
- package/dist/compose-cph4bfdr.js +27 -0
- package/dist/definition-3MBm8ar_.js +117 -0
- package/dist/definition-BwX6Xxv0.d.ts +34 -0
- package/dist/discovery-BzaOti7l.js +91 -0
- package/dist/discovery-CmNYzKPr.d.ts +18 -0
- package/dist/download-D9aARBFp.js +34 -0
- package/dist/dynamic/generators.d.ts +2 -0
- package/dist/dynamic/generators.js +2 -0
- package/dist/encode-BDB_VIHN.d.ts +31 -0
- package/dist/encode-BdTHbOp-.js +86 -0
- package/dist/entity-fallback-CodtI6v8.js +265 -0
- package/dist/face-DC6cNMdz.d.ts +24 -0
- package/dist/face-Wfia-_Yx.js +92 -0
- package/dist/fluid-bucket-D-GpUQjg.js +88 -0
- package/dist/generators-CCB8h0mP.d.ts +23 -0
- package/dist/generators-CcVRG30y.js +145 -0
- package/dist/geo-B5VqGulc.js +333 -0
- package/dist/geometry-BSVmKx5b.d.ts +28 -0
- package/dist/geometry-uIDha8S4.js +229 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.js +20 -0
- package/dist/item-styles-DJ3LWZS2.js +174 -0
- package/dist/items/definition.d.ts +2 -0
- package/dist/items/definition.js +2 -0
- package/dist/items/discovery.d.ts +2 -0
- package/dist/items/discovery.js +2 -0
- package/dist/jar-6T3xdgaL.d.ts +21 -0
- package/dist/jar-Bt3i0ls4.js +119 -0
- package/dist/legacy-reshape-CewShfF3.js +203 -0
- package/dist/legacy-tints-B09J0Rxh.js +169 -0
- package/dist/lighting--5myudVu.js +83 -0
- package/dist/lighting-3FGRC3Af.d.ts +42 -0
- package/dist/loader-C-eqwp3M.js +359 -0
- package/dist/loader-CBzn3Koc.js +228 -0
- package/dist/loader-TFFNV4Jl.d.ts +88 -0
- package/dist/loader-lCkMRDH4.d.ts +69 -0
- package/dist/locator-jDbdUeTd.d.ts +24 -0
- package/dist/locator-ycZzh_6z.js +54 -0
- package/dist/manager-CoZaeQTu.d.ts +88 -0
- package/dist/manager-dfI7b9N4.js +150 -0
- package/dist/minify-CIV6enbr.d.ts +11 -0
- package/dist/minify-bjMRmr5J.js +31 -0
- package/dist/models/loader.d.ts +2 -0
- package/dist/models/loader.js +2 -0
- package/dist/models/types.d.ts +2 -0
- package/dist/models/types.js +11 -0
- package/dist/mods/prepare.d.ts +2 -0
- package/dist/mods/prepare.js +2 -0
- package/dist/mods/synthesize.d.ts +10 -0
- package/dist/mods/synthesize.js +2 -0
- package/dist/output/encode.d.ts +2 -0
- package/dist/output/encode.js +2 -0
- package/dist/output/item-styles.d.ts +10 -0
- package/dist/output/item-styles.js +2 -0
- package/dist/output/minify.d.ts +2 -0
- package/dist/output/minify.js +2 -0
- package/dist/output/stylesheet.d.ts +2 -0
- package/dist/output/stylesheet.js +2 -0
- package/dist/prepare-Bvc5ve2m.js +68 -0
- package/dist/prepare-DROxBZp1.js +112 -0
- package/dist/prepare-DnnGGv9k.d.ts +25 -0
- package/dist/prepare-wfWtaz_X.d.ts +45 -0
- package/dist/rasterizer-ABgsWTYN.js +139 -0
- package/dist/rasterizer-CVOlRsuw.d.ts +41 -0
- package/dist/registry-C9E7jyzG.js +28 -0
- package/dist/render/blend.d.ts +2 -0
- package/dist/render/blend.js +2 -0
- package/dist/render/compose.d.ts +6 -0
- package/dist/render/compose.js +2 -0
- package/dist/render/entity-fallback.d.ts +30 -0
- package/dist/render/entity-fallback.js +2 -0
- package/dist/render/face.d.ts +2 -0
- package/dist/render/face.js +2 -0
- package/dist/render/fluid-bucket.d.ts +14 -0
- package/dist/render/fluid-bucket.js +2 -0
- package/dist/render/geo.d.ts +54 -0
- package/dist/render/geo.js +2 -0
- package/dist/render/geometry.d.ts +2 -0
- package/dist/render/geometry.js +2 -0
- package/dist/render/legacy-tints.d.ts +12 -0
- package/dist/render/legacy-tints.js +2 -0
- package/dist/render/lighting.d.ts +2 -0
- package/dist/render/lighting.js +2 -0
- package/dist/render/obj.d.ts +24 -0
- package/dist/render/obj.js +2 -0
- package/dist/render/rasterizer.d.ts +2 -0
- package/dist/render/rasterizer.js +2 -0
- package/dist/render/renderer.d.ts +2 -0
- package/dist/render/renderer.js +2 -0
- package/dist/render/tints.d.ts +2 -0
- package/dist/render/tints.js +2 -0
- package/dist/render/vector.d.ts +2 -0
- package/dist/render/vector.js +2 -0
- package/dist/renderer-CmOz6WI9.js +507 -0
- package/dist/renderer-DQfv6axF.d.ts +44 -0
- package/dist/resources/jar.d.ts +2 -0
- package/dist/resources/jar.js +2 -0
- package/dist/resources/locator.d.ts +2 -0
- package/dist/resources/locator.js +2 -0
- package/dist/resources/manager.d.ts +2 -0
- package/dist/resources/manager.js +2 -0
- package/dist/resources/synthetic.d.ts +2 -0
- package/dist/resources/synthetic.js +2 -0
- package/dist/run-CEaRhk4A.js +298 -0
- package/dist/run-D2XL05Zl.d.ts +54 -0
- package/dist/run.d.ts +3 -0
- package/dist/run.js +3 -0
- package/dist/sources-Bxk-WOzH.js +202 -0
- package/dist/sources-DH9dk3KF.d.ts +104 -0
- package/dist/stylesheet-CovT3B2S.js +71 -0
- package/dist/stylesheet-i-t_7sZ7.d.ts +53 -0
- package/dist/synthesize-CRgSEmEp.js +128 -0
- package/dist/synthetic-CDsj--li.d.ts +34 -0
- package/dist/synthetic-DC2bSnGe.js +0 -0
- package/dist/textures/loader.d.ts +2 -0
- package/dist/textures/loader.js +2 -0
- package/dist/tints-FQlxTzUL.js +108 -0
- package/dist/tints-Fr6WoPaU.d.ts +22 -0
- package/dist/types-COGbtA1t.d.ts +69 -0
- package/dist/vector-CCxLae_T.js +190 -0
- package/dist/vector-DRKRi4--.d.ts +43 -0
- package/dist/versions/download.d.ts +9 -0
- package/dist/versions/download.js +2 -0
- package/dist/versions/legacy-reshape.d.ts +9 -0
- package/dist/versions/legacy-reshape.js +2 -0
- package/dist/versions/prepare.d.ts +2 -0
- package/dist/versions/prepare.js +2 -0
- package/dist/workers/pool.d.ts +23 -0
- package/dist/workers/pool.js +67 -0
- package/package.json +71 -22
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { n as ResourceLocator } from "./locator-ycZzh_6z.js";
|
|
2
|
+
//#region src/render/fluid-bucket.ts
|
|
3
|
+
/**
|
|
4
|
+
* Paint bucket contents for fluid_container loader models. Forge draws these
|
|
5
|
+
* with a fluid sprite behind a mask texture we don't ship, but vanilla always
|
|
6
|
+
* has both `bucket` and `water_bucket` sprites — their pixel diff IS the fill
|
|
7
|
+
* region, and the fluid's average color (from its conventional still texture)
|
|
8
|
+
* shaded by the water sprite's own shading paints it convincingly.
|
|
9
|
+
*/
|
|
10
|
+
/** Conventional homes for a fluid's still texture, most common first. */
|
|
11
|
+
const STILL_TEXTURE_PATTERNS = [
|
|
12
|
+
(name) => `block/fluid/${name}_still`,
|
|
13
|
+
(name) => `block/${name}_still`,
|
|
14
|
+
(name) => `fluid/${name}_still`,
|
|
15
|
+
(name) => `block/fluid/${name}`,
|
|
16
|
+
(name) => `blocks/fluids/${name}_still`,
|
|
17
|
+
(name) => `blocks/${name}_still`
|
|
18
|
+
];
|
|
19
|
+
/** The particle texture declared by the fluid's block model, if any. */
|
|
20
|
+
async function particleTexture(fluid, textures, resources) {
|
|
21
|
+
const raw = await resources.getResource("model", new ResourceLocator(fluid.namespace, `block/${fluid.path}`));
|
|
22
|
+
if (!raw) return null;
|
|
23
|
+
try {
|
|
24
|
+
const particle = JSON.parse(raw.toString("utf8")).textures?.particle;
|
|
25
|
+
const locator = typeof particle === "string" && !particle.startsWith("#") ? ResourceLocator.tryParse(particle) : null;
|
|
26
|
+
return locator ? await textures.load(locator) : null;
|
|
27
|
+
} catch {
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/** Average color of a texture's opaque pixels, or null if fully transparent. */
|
|
32
|
+
function averageColor(texture) {
|
|
33
|
+
let red = 0;
|
|
34
|
+
let green = 0;
|
|
35
|
+
let blue = 0;
|
|
36
|
+
let count = 0;
|
|
37
|
+
for (let offset = 0; offset < texture.data.length; offset += 4) {
|
|
38
|
+
if (texture.data[offset + 3] <= 128) continue;
|
|
39
|
+
red += texture.data[offset];
|
|
40
|
+
green += texture.data[offset + 1];
|
|
41
|
+
blue += texture.data[offset + 2];
|
|
42
|
+
count++;
|
|
43
|
+
}
|
|
44
|
+
return count === 0 ? null : [
|
|
45
|
+
red / count,
|
|
46
|
+
green / count,
|
|
47
|
+
blue / count
|
|
48
|
+
];
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Paint the fluid into a bucket sprite IN PLACE (pass a copy, never a cached
|
|
52
|
+
* texture) at native sprite resolution. The unpainted sprite doubles as the
|
|
53
|
+
* empty-bucket reference: fill pixels are where water_bucket is opaque and the
|
|
54
|
+
* bucket is not, and each pixel's condition reads state that painting never
|
|
55
|
+
* touches. Returns false when the fluid can't be resolved — the plain bucket
|
|
56
|
+
* stays, which is the old behavior.
|
|
57
|
+
*/
|
|
58
|
+
async function paintBucketFluid(bucket, fluid, textures, resources) {
|
|
59
|
+
const fluidLocator = ResourceLocator.tryParse(fluid);
|
|
60
|
+
if (!fluidLocator) return false;
|
|
61
|
+
let still = null;
|
|
62
|
+
for (const pattern of STILL_TEXTURE_PATTERNS) {
|
|
63
|
+
still = await textures.load(new ResourceLocator(fluidLocator.namespace, pattern(fluidLocator.path)));
|
|
64
|
+
if (still) break;
|
|
65
|
+
}
|
|
66
|
+
still ??= resources ? await particleTexture(fluidLocator, textures, resources) : null;
|
|
67
|
+
const color = still ? averageColor(still) : null;
|
|
68
|
+
if (!color) return false;
|
|
69
|
+
const water = await textures.load(ResourceLocator.parse("minecraft:item/water_bucket"));
|
|
70
|
+
if (!water || water.width !== bucket.width || water.height !== bucket.height) return false;
|
|
71
|
+
const luminance = (offset) => .299 * water.data[offset] + .587 * water.data[offset + 1] + .114 * water.data[offset + 2];
|
|
72
|
+
const isFill = (offset) => water.data[offset + 3] > 128 && (bucket.data[offset + 3] <= 128 || Math.abs(water.data[offset] - bucket.data[offset]) + Math.abs(water.data[offset + 1] - bucket.data[offset + 1]) + Math.abs(water.data[offset + 2] - bucket.data[offset + 2]) > 60);
|
|
73
|
+
let peakLuma = 1;
|
|
74
|
+
for (let offset = 0; offset < water.data.length; offset += 4) if (isFill(offset)) peakLuma = Math.max(peakLuma, luminance(offset));
|
|
75
|
+
let painted = false;
|
|
76
|
+
for (let offset = 0; offset < water.data.length; offset += 4) {
|
|
77
|
+
if (!isFill(offset)) continue;
|
|
78
|
+
const shade = luminance(offset) / peakLuma;
|
|
79
|
+
bucket.data[offset] = Math.min(255, color[0] * shade);
|
|
80
|
+
bucket.data[offset + 1] = Math.min(255, color[1] * shade);
|
|
81
|
+
bucket.data[offset + 2] = Math.min(255, color[2] * shade);
|
|
82
|
+
bucket.data[offset + 3] = 255;
|
|
83
|
+
painted = true;
|
|
84
|
+
}
|
|
85
|
+
return painted;
|
|
86
|
+
}
|
|
87
|
+
//#endregion
|
|
88
|
+
export { paintBucketFluid as t };
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { n as MapResourceManager } from "./synthetic-CDsj--li.js";
|
|
2
|
+
//#region src/dynamic/generators.d.ts
|
|
3
|
+
declare const TRIM_MATERIALS: readonly ["quartz", "iron", "gold", "diamond", "netherite", "redstone", "copper", "emerald", "lapis", "amethyst", "resin"];
|
|
4
|
+
/** Materials with a darker variant used when the trim matches the armor metal. */
|
|
5
|
+
declare const TRIM_DARKER_MATERIALS: Set<string>;
|
|
6
|
+
declare const ARMOR_ITEM_TYPES: readonly ["boots", "leggings", "chestplate", "helmet"];
|
|
7
|
+
declare const POTTERY_SHERDS: readonly ["brick", "angler", "archer", "arms_up", "blade", "brewer", "burn", "danger", "explorer", "friend", "heart", "heartbreak", "howl", "miner", "mourner", "plenty", "prize", "sheaf", "shelter", "skull", "snort", "flow", "guster", "scrape"];
|
|
8
|
+
interface DynamicItem {
|
|
9
|
+
/** Item id including the synthetic namespace, e.g. `_armor_trims:helmet_trim_gold`. */
|
|
10
|
+
id: string;
|
|
11
|
+
}
|
|
12
|
+
interface DynamicResources {
|
|
13
|
+
layer: MapResourceManager;
|
|
14
|
+
items: DynamicItem[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Materials whose trim sprites exist for the target version are discovered by
|
|
18
|
+
* the caller (via the atlas resolver); this generates the full matrix and lets
|
|
19
|
+
* missing sprites fail per item.
|
|
20
|
+
*/
|
|
21
|
+
declare function builtinDynamicResources(): DynamicResources;
|
|
22
|
+
//#endregion
|
|
23
|
+
export { TRIM_DARKER_MATERIALS as a, POTTERY_SHERDS as i, DynamicItem as n, TRIM_MATERIALS as o, DynamicResources as r, builtinDynamicResources as s, ARMOR_ITEM_TYPES as t };
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { n as MapResourceManager } from "./synthetic-DC2bSnGe.js";
|
|
2
|
+
//#region src/dynamic/generators.ts
|
|
3
|
+
/**
|
|
4
|
+
* Dynamic resources ported from renderchest's DynamicResourceGenerators, built
|
|
5
|
+
* as plain model/item layers instead of code-backed namespaces: decorated pot
|
|
6
|
+
* variants, leather armor trim layers, armor trim sprites (resolved by the
|
|
7
|
+
* paletted_permutations atlas), and charged crossbows. The synthetic namespace
|
|
8
|
+
* names (underscore prefix) match upstream so the CSS contract stays stable.
|
|
9
|
+
*/
|
|
10
|
+
const TRIM_MATERIALS = [
|
|
11
|
+
"quartz",
|
|
12
|
+
"iron",
|
|
13
|
+
"gold",
|
|
14
|
+
"diamond",
|
|
15
|
+
"netherite",
|
|
16
|
+
"redstone",
|
|
17
|
+
"copper",
|
|
18
|
+
"emerald",
|
|
19
|
+
"lapis",
|
|
20
|
+
"amethyst",
|
|
21
|
+
"resin"
|
|
22
|
+
];
|
|
23
|
+
/** Materials with a darker variant used when the trim matches the armor metal. */
|
|
24
|
+
const TRIM_DARKER_MATERIALS = /* @__PURE__ */ new Set([
|
|
25
|
+
"iron",
|
|
26
|
+
"gold",
|
|
27
|
+
"diamond",
|
|
28
|
+
"netherite"
|
|
29
|
+
]);
|
|
30
|
+
const ARMOR_ITEM_TYPES = [
|
|
31
|
+
"boots",
|
|
32
|
+
"leggings",
|
|
33
|
+
"chestplate",
|
|
34
|
+
"helmet"
|
|
35
|
+
];
|
|
36
|
+
const POTTERY_SHERDS = [
|
|
37
|
+
"brick",
|
|
38
|
+
"angler",
|
|
39
|
+
"archer",
|
|
40
|
+
"arms_up",
|
|
41
|
+
"blade",
|
|
42
|
+
"brewer",
|
|
43
|
+
"burn",
|
|
44
|
+
"danger",
|
|
45
|
+
"explorer",
|
|
46
|
+
"friend",
|
|
47
|
+
"heart",
|
|
48
|
+
"heartbreak",
|
|
49
|
+
"howl",
|
|
50
|
+
"miner",
|
|
51
|
+
"mourner",
|
|
52
|
+
"plenty",
|
|
53
|
+
"prize",
|
|
54
|
+
"sheaf",
|
|
55
|
+
"shelter",
|
|
56
|
+
"skull",
|
|
57
|
+
"snort",
|
|
58
|
+
"flow",
|
|
59
|
+
"guster",
|
|
60
|
+
"scrape"
|
|
61
|
+
];
|
|
62
|
+
function sherdTextureName(sherd) {
|
|
63
|
+
return sherd === "brick" ? "brick" : `${sherd}_pottery_sherd`;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Materials whose trim sprites exist for the target version are discovered by
|
|
67
|
+
* the caller (via the atlas resolver); this generates the full matrix and lets
|
|
68
|
+
* missing sprites fail per item.
|
|
69
|
+
*/
|
|
70
|
+
function builtinDynamicResources() {
|
|
71
|
+
const layer = new MapResourceManager();
|
|
72
|
+
const items = [];
|
|
73
|
+
for (const type of ARMOR_ITEM_TYPES) for (const material of TRIM_MATERIALS) {
|
|
74
|
+
const variants = TRIM_DARKER_MATERIALS.has(material) ? [material, `${material}_darker`] : [material];
|
|
75
|
+
for (const variant of variants) {
|
|
76
|
+
const name = `${type}_trim_${variant}`;
|
|
77
|
+
layer.set("model", `_armor_trims:item/${name}`, JSON.stringify({
|
|
78
|
+
parent: "minecraft:item/generated",
|
|
79
|
+
textures: { layer0: `minecraft:trims/items/${type}_trim_${variant}` }
|
|
80
|
+
}));
|
|
81
|
+
layer.set("itemDefinition", `_armor_trims:${name}`, JSON.stringify({ model: {
|
|
82
|
+
type: "minecraft:model",
|
|
83
|
+
model: `_armor_trims:item/${name}`
|
|
84
|
+
} }));
|
|
85
|
+
items.push({ id: `_armor_trims:${name}` });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
for (const type of ARMOR_ITEM_TYPES) {
|
|
89
|
+
const entries = [[`leather_${type}_base`, { layer0: `minecraft:item/leather_${type}` }], [`leather_${type}_overlay`, { layer0: `minecraft:item/leather_${type}_overlay` }]];
|
|
90
|
+
for (const material of TRIM_MATERIALS) entries.push([`leather_${type}_${material}_trim`, {
|
|
91
|
+
layer0: `minecraft:item/leather_${type}_overlay`,
|
|
92
|
+
layer1: `minecraft:trims/items/${type}_trim_${material}`
|
|
93
|
+
}]);
|
|
94
|
+
for (const [name, textures] of entries) {
|
|
95
|
+
layer.set("model", `_leather_armor:item/${name}`, JSON.stringify({
|
|
96
|
+
parent: "minecraft:item/generated",
|
|
97
|
+
textures
|
|
98
|
+
}));
|
|
99
|
+
layer.set("itemDefinition", `_leather_armor:${name}`, JSON.stringify({ model: {
|
|
100
|
+
type: "minecraft:model",
|
|
101
|
+
model: `_leather_armor:item/${name}`
|
|
102
|
+
} }));
|
|
103
|
+
items.push({ id: `_leather_armor:${name}` });
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
for (const sherd of POTTERY_SHERDS) {
|
|
107
|
+
const texture = sherdTextureName(sherd);
|
|
108
|
+
layer.set("model", `_decorated_pot:pot_b_${sherd}`, JSON.stringify({
|
|
109
|
+
parent: "renderchest:item/decorated_pot",
|
|
110
|
+
textures: {
|
|
111
|
+
north: "#brick",
|
|
112
|
+
south: "#brick",
|
|
113
|
+
east: "#brick",
|
|
114
|
+
west: `#${texture}`
|
|
115
|
+
}
|
|
116
|
+
}));
|
|
117
|
+
layer.set("itemDefinition", `_decorated_pot:pot_b_${sherd}`, JSON.stringify({ model: {
|
|
118
|
+
type: "minecraft:model",
|
|
119
|
+
model: `_decorated_pot:pot_b_${sherd}`
|
|
120
|
+
} }));
|
|
121
|
+
items.push({ id: `_decorated_pot:pot_b_${sherd}` });
|
|
122
|
+
layer.set("model", `_decorated_pot:pot_o_${sherd}`, JSON.stringify({
|
|
123
|
+
parent: "renderchest:item/decorated_pot_overlay",
|
|
124
|
+
textures: { south: `#${texture}` }
|
|
125
|
+
}));
|
|
126
|
+
layer.set("itemDefinition", `_decorated_pot:pot_o_${sherd}`, JSON.stringify({ model: {
|
|
127
|
+
type: "minecraft:model",
|
|
128
|
+
model: `_decorated_pot:pot_o_${sherd}`
|
|
129
|
+
} }));
|
|
130
|
+
items.push({ id: `_decorated_pot:pot_o_${sherd}` });
|
|
131
|
+
}
|
|
132
|
+
for (const [name, model] of [["arrow", "minecraft:item/crossbow_arrow"], ["rocket", "minecraft:item/crossbow_firework"]]) {
|
|
133
|
+
layer.set("itemDefinition", `_crossbow:${name}`, JSON.stringify({ model: {
|
|
134
|
+
type: "minecraft:model",
|
|
135
|
+
model
|
|
136
|
+
} }));
|
|
137
|
+
items.push({ id: `_crossbow:${name}` });
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
layer,
|
|
141
|
+
items
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
//#endregion
|
|
145
|
+
export { builtinDynamicResources as a, TRIM_MATERIALS as i, POTTERY_SHERDS as n, TRIM_DARKER_MATERIALS as r, ARMOR_ITEM_TYPES as t };
|
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
import { n as ResourceLocator } from "./locator-ycZzh_6z.js";
|
|
2
|
+
import { n as displayMatrix } from "./vector-CCxLae_T.js";
|
|
3
|
+
import { s as toFloatTexture } from "./blend-CHP2-j9U.js";
|
|
4
|
+
import { t as combineFaceBuffers } from "./compose-cph4bfdr.js";
|
|
5
|
+
import { n as renderFace, t as faceMaxZ } from "./face-Wfia-_Yx.js";
|
|
6
|
+
import { c as lightsForProfile } from "./lighting--5myudVu.js";
|
|
7
|
+
//#region src/render/geo.ts
|
|
8
|
+
/**
|
|
9
|
+
* Bedrock-format geometry (`.geo.json`) rendering, best-effort. GeckoLib mods
|
|
10
|
+
* ship their item/entity geometry in this format and register the renderer in
|
|
11
|
+
* Java code — the old pipeline extracted these files and never read them, so
|
|
12
|
+
* every GeckoLib item was a guaranteed miss. Cubes + bone hierarchy convert
|
|
13
|
+
* into the same face geometry the JSON-element pipeline rasterizes; the model
|
|
14
|
+
* is auto-fitted into the unit cube and given the standard block gui pose.
|
|
15
|
+
*/
|
|
16
|
+
/** Handles both the modern (1.12+) and legacy (`geometry.name` keyed) layouts. */
|
|
17
|
+
function parseGeo(json) {
|
|
18
|
+
const modern = json["minecraft:geometry"]?.[0];
|
|
19
|
+
if (modern?.bones) return {
|
|
20
|
+
textureWidth: modern.description?.texture_width ?? 64,
|
|
21
|
+
textureHeight: modern.description?.texture_height ?? 64,
|
|
22
|
+
bones: modern.bones
|
|
23
|
+
};
|
|
24
|
+
for (const [key, value] of Object.entries(json)) {
|
|
25
|
+
if (!(key.startsWith("geometry.") && value && typeof value === "object")) continue;
|
|
26
|
+
const legacy = value;
|
|
27
|
+
if (legacy.bones) return {
|
|
28
|
+
textureWidth: legacy.texturewidth ?? 64,
|
|
29
|
+
textureHeight: legacy.textureheight ?? 64,
|
|
30
|
+
bones: legacy.bones
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
function rotatePoint(point, pivot, rotation) {
|
|
36
|
+
const toRadians = Math.PI / 180;
|
|
37
|
+
let [x, y, z] = [
|
|
38
|
+
point[0] - pivot[0],
|
|
39
|
+
point[1] - pivot[1],
|
|
40
|
+
point[2] - pivot[2]
|
|
41
|
+
];
|
|
42
|
+
const [rx, ry, rz] = [
|
|
43
|
+
-rotation[0] * toRadians,
|
|
44
|
+
-rotation[1] * toRadians,
|
|
45
|
+
rotation[2] * toRadians
|
|
46
|
+
];
|
|
47
|
+
[x, y] = [x * Math.cos(rz) - y * Math.sin(rz), x * Math.sin(rz) + y * Math.cos(rz)];
|
|
48
|
+
[x, z] = [x * Math.cos(ry) + z * Math.sin(ry), -x * Math.sin(ry) + z * Math.cos(ry)];
|
|
49
|
+
[y, z] = [y * Math.cos(rx) - z * Math.sin(rx), y * Math.sin(rx) + z * Math.cos(rx)];
|
|
50
|
+
return [
|
|
51
|
+
x + pivot[0],
|
|
52
|
+
y + pivot[1],
|
|
53
|
+
z + pivot[2]
|
|
54
|
+
];
|
|
55
|
+
}
|
|
56
|
+
/** Standard Minecraft box unwrap for `uv: [u, v]` cubes. */
|
|
57
|
+
function boxFaces(origin, size, u, v) {
|
|
58
|
+
const [ox, oy, oz] = origin;
|
|
59
|
+
const [sx, sy, sz] = size;
|
|
60
|
+
const x1 = ox + sx;
|
|
61
|
+
const y1 = oy + sy;
|
|
62
|
+
const z1 = oz + sz;
|
|
63
|
+
const corner = (x, y, z) => [
|
|
64
|
+
x,
|
|
65
|
+
y,
|
|
66
|
+
z
|
|
67
|
+
];
|
|
68
|
+
return [
|
|
69
|
+
{
|
|
70
|
+
direction: "up",
|
|
71
|
+
corners: [
|
|
72
|
+
corner(ox, y1, oz),
|
|
73
|
+
corner(x1, y1, oz),
|
|
74
|
+
corner(x1, y1, z1),
|
|
75
|
+
corner(ox, y1, z1)
|
|
76
|
+
],
|
|
77
|
+
uv: [
|
|
78
|
+
u + sz,
|
|
79
|
+
v,
|
|
80
|
+
u + sz + sx,
|
|
81
|
+
v + sz
|
|
82
|
+
]
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
direction: "down",
|
|
86
|
+
corners: [
|
|
87
|
+
corner(ox, oy, z1),
|
|
88
|
+
corner(x1, oy, z1),
|
|
89
|
+
corner(x1, oy, oz),
|
|
90
|
+
corner(ox, oy, oz)
|
|
91
|
+
],
|
|
92
|
+
uv: [
|
|
93
|
+
u + sz + sx,
|
|
94
|
+
v,
|
|
95
|
+
u + sz + sx + sx,
|
|
96
|
+
v + sz
|
|
97
|
+
]
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
direction: "north",
|
|
101
|
+
corners: [
|
|
102
|
+
corner(x1, y1, oz),
|
|
103
|
+
corner(ox, y1, oz),
|
|
104
|
+
corner(ox, oy, oz),
|
|
105
|
+
corner(x1, oy, oz)
|
|
106
|
+
],
|
|
107
|
+
uv: [
|
|
108
|
+
u + sz,
|
|
109
|
+
v + sz,
|
|
110
|
+
u + sz + sx,
|
|
111
|
+
v + sz + sy
|
|
112
|
+
]
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
direction: "south",
|
|
116
|
+
corners: [
|
|
117
|
+
corner(ox, y1, z1),
|
|
118
|
+
corner(x1, y1, z1),
|
|
119
|
+
corner(x1, oy, z1),
|
|
120
|
+
corner(ox, oy, z1)
|
|
121
|
+
],
|
|
122
|
+
uv: [
|
|
123
|
+
u + sz + sx + sz,
|
|
124
|
+
v + sz,
|
|
125
|
+
u + sz + sx + sz + sx,
|
|
126
|
+
v + sz + sy
|
|
127
|
+
]
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
direction: "east",
|
|
131
|
+
corners: [
|
|
132
|
+
corner(x1, y1, z1),
|
|
133
|
+
corner(x1, y1, oz),
|
|
134
|
+
corner(x1, oy, oz),
|
|
135
|
+
corner(x1, oy, z1)
|
|
136
|
+
],
|
|
137
|
+
uv: [
|
|
138
|
+
u,
|
|
139
|
+
v + sz,
|
|
140
|
+
u + sz,
|
|
141
|
+
v + sz + sy
|
|
142
|
+
]
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
direction: "west",
|
|
146
|
+
corners: [
|
|
147
|
+
corner(ox, y1, oz),
|
|
148
|
+
corner(ox, y1, z1),
|
|
149
|
+
corner(ox, oy, z1),
|
|
150
|
+
corner(ox, oy, oz)
|
|
151
|
+
],
|
|
152
|
+
uv: [
|
|
153
|
+
u + sz + sx,
|
|
154
|
+
v + sz,
|
|
155
|
+
u + sz + sx + sz,
|
|
156
|
+
v + sz + sy
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
];
|
|
160
|
+
}
|
|
161
|
+
/** Convert a parsed geo into face geometry, unit-cube fitted with gui pose. */
|
|
162
|
+
function geoToFaces(geo) {
|
|
163
|
+
const bonesByName = /* @__PURE__ */ new Map();
|
|
164
|
+
for (const bone of geo.bones) if (bone.name) bonesByName.set(bone.name, bone);
|
|
165
|
+
const boneChain = (bone) => {
|
|
166
|
+
const chain = [];
|
|
167
|
+
let current = bone;
|
|
168
|
+
while (current) {
|
|
169
|
+
chain.push(current);
|
|
170
|
+
current = current.parent ? bonesByName.get(current.parent) : void 0;
|
|
171
|
+
if (chain.length > 32) break;
|
|
172
|
+
}
|
|
173
|
+
return chain;
|
|
174
|
+
};
|
|
175
|
+
const faces = [];
|
|
176
|
+
const min = [
|
|
177
|
+
Infinity,
|
|
178
|
+
Infinity,
|
|
179
|
+
Infinity
|
|
180
|
+
];
|
|
181
|
+
const max = [
|
|
182
|
+
-Infinity,
|
|
183
|
+
-Infinity,
|
|
184
|
+
-Infinity
|
|
185
|
+
];
|
|
186
|
+
for (const bone of geo.bones) {
|
|
187
|
+
const chain = boneChain(bone);
|
|
188
|
+
for (const cube of bone.cubes ?? []) {
|
|
189
|
+
if (!cube.origin || !cube.size) continue;
|
|
190
|
+
const inflate = cube.inflate ?? 0;
|
|
191
|
+
const origin = [
|
|
192
|
+
cube.origin[0] - inflate,
|
|
193
|
+
cube.origin[1] - inflate,
|
|
194
|
+
cube.origin[2] - inflate
|
|
195
|
+
];
|
|
196
|
+
const size = [
|
|
197
|
+
cube.size[0] + inflate * 2,
|
|
198
|
+
cube.size[1] + inflate * 2,
|
|
199
|
+
cube.size[2] + inflate * 2
|
|
200
|
+
];
|
|
201
|
+
const uvBase = Array.isArray(cube.uv) ? cube.uv : null;
|
|
202
|
+
const perFace = !Array.isArray(cube.uv) && cube.uv ? cube.uv : null;
|
|
203
|
+
for (const spec of boxFaces(origin, size, uvBase?.[0] ?? 0, uvBase?.[1] ?? 0)) {
|
|
204
|
+
let uvRect = spec.uv;
|
|
205
|
+
if (perFace) {
|
|
206
|
+
const entry = perFace[spec.direction];
|
|
207
|
+
if (!entry) continue;
|
|
208
|
+
const uvSize = entry.uv_size ?? [size[0], size[1]];
|
|
209
|
+
uvRect = [
|
|
210
|
+
entry.uv[0],
|
|
211
|
+
entry.uv[1],
|
|
212
|
+
entry.uv[0] + uvSize[0],
|
|
213
|
+
entry.uv[1] + uvSize[1]
|
|
214
|
+
];
|
|
215
|
+
}
|
|
216
|
+
let corners = spec.corners.map((point) => [...point]);
|
|
217
|
+
if (cube.rotation && cube.pivot) corners = corners.map((point) => rotatePoint(point, cube.pivot, cube.rotation));
|
|
218
|
+
for (const link of chain) if (link.rotation && link.pivot) corners = corners.map((point) => rotatePoint(point, link.pivot, link.rotation));
|
|
219
|
+
corners = corners.map((point) => [
|
|
220
|
+
-point[0],
|
|
221
|
+
point[1],
|
|
222
|
+
point[2]
|
|
223
|
+
]);
|
|
224
|
+
for (const point of corners) for (let axis = 0; axis < 3; axis++) {
|
|
225
|
+
min[axis] = Math.min(min[axis], point[axis]);
|
|
226
|
+
max[axis] = Math.max(max[axis], point[axis]);
|
|
227
|
+
}
|
|
228
|
+
faces.push({
|
|
229
|
+
direction: spec.direction,
|
|
230
|
+
vertices: corners,
|
|
231
|
+
uv1: [uvRect[0] / geo.textureWidth, uvRect[1] / geo.textureHeight],
|
|
232
|
+
uv2: [uvRect[2] / geo.textureWidth, uvRect[3] / geo.textureHeight],
|
|
233
|
+
textureRef: "#geo",
|
|
234
|
+
rotation: 0,
|
|
235
|
+
tintIndex: null,
|
|
236
|
+
shadeDirectionOverride: null
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
const extent = Math.max(max[0] - min[0], max[1] - min[1], max[2] - min[2]);
|
|
242
|
+
if (!Number.isFinite(extent) || extent <= 0) return [];
|
|
243
|
+
const scale = 1 / extent;
|
|
244
|
+
const center = [
|
|
245
|
+
(min[0] + max[0]) / 2,
|
|
246
|
+
(min[1] + max[1]) / 2,
|
|
247
|
+
(min[2] + max[2]) / 2
|
|
248
|
+
];
|
|
249
|
+
for (const face of faces) for (const vertex of face.vertices) for (let axis = 0; axis < 3; axis++) vertex[axis] = (vertex[axis] - center[axis]) * scale + .5;
|
|
250
|
+
return faces;
|
|
251
|
+
}
|
|
252
|
+
/** Conventional locations GeckoLib mods keep item geometry and textures. */
|
|
253
|
+
async function findGeoForItem(resources, id) {
|
|
254
|
+
const locator = ResourceLocator.parse(id);
|
|
255
|
+
const geoPaths = [
|
|
256
|
+
`geo/${locator.path}.geo.json`,
|
|
257
|
+
`geo/item/${locator.path}.geo.json`,
|
|
258
|
+
`geckolib/geo/${locator.path}.geo.json`,
|
|
259
|
+
`models/geo/${locator.path}.geo.json`
|
|
260
|
+
];
|
|
261
|
+
if (!(await Promise.all(geoPaths.map((path) => resources.hasResource("raw", new ResourceLocator(locator.namespace, path))))).includes(true)) {
|
|
262
|
+
const name = locator.path.split("/").pop();
|
|
263
|
+
const matches = (await resources.listResources("raw", locator.namespace)).map((candidate) => candidate.path).filter((path) => path.endsWith(`/${name}.geo.json`) && /(?:^|\/)(?:geo|geckolib)\//.test(path)).toSorted((a, b) => a.length - b.length);
|
|
264
|
+
geoPaths.push(...matches);
|
|
265
|
+
}
|
|
266
|
+
for (const geoPath of geoPaths) {
|
|
267
|
+
const raw = await resources.getResource("raw", new ResourceLocator(locator.namespace, geoPath));
|
|
268
|
+
if (!raw) continue;
|
|
269
|
+
let geo;
|
|
270
|
+
try {
|
|
271
|
+
geo = parseGeo(JSON.parse(raw.toString("utf8")));
|
|
272
|
+
} catch {
|
|
273
|
+
continue;
|
|
274
|
+
}
|
|
275
|
+
if (!geo) continue;
|
|
276
|
+
const mirrored = geoPath.replace(/(^|\/)(geo|geckolib\/geo|models\/geo)\//, "$1").replace(/^\//, "").replace(/\.geo\.json$/, "");
|
|
277
|
+
for (const texturePath of [
|
|
278
|
+
mirrored,
|
|
279
|
+
`item/${locator.path}`,
|
|
280
|
+
`items/${locator.path}`,
|
|
281
|
+
`geo/${locator.path}`
|
|
282
|
+
]) {
|
|
283
|
+
const texture = new ResourceLocator(locator.namespace, texturePath);
|
|
284
|
+
if (await resources.hasResource("texture", texture)) return {
|
|
285
|
+
geo,
|
|
286
|
+
texture
|
|
287
|
+
};
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
return null;
|
|
291
|
+
}
|
|
292
|
+
/** Render a parsed geo with the standard block gui pose. */
|
|
293
|
+
async function renderGeo(geo, texture, textures, options) {
|
|
294
|
+
const faces = geoToFaces(geo);
|
|
295
|
+
if (faces.length === 0) return null;
|
|
296
|
+
const loaded = await textures.load(texture);
|
|
297
|
+
if (!loaded) return null;
|
|
298
|
+
const float = toFloatTexture(loaded);
|
|
299
|
+
const lights = lightsForProfile(options.lightingProfile);
|
|
300
|
+
const renderSize = options.size * options.quality;
|
|
301
|
+
const transformation = displayMatrix([
|
|
302
|
+
30,
|
|
303
|
+
225,
|
|
304
|
+
0
|
|
305
|
+
], [
|
|
306
|
+
0,
|
|
307
|
+
0,
|
|
308
|
+
0
|
|
309
|
+
], [
|
|
310
|
+
.9,
|
|
311
|
+
.9,
|
|
312
|
+
.9
|
|
313
|
+
]);
|
|
314
|
+
const renderable = faces.map((geometry) => {
|
|
315
|
+
return {
|
|
316
|
+
geometry,
|
|
317
|
+
texture: float,
|
|
318
|
+
light: lights.side,
|
|
319
|
+
tint: null,
|
|
320
|
+
maxZ: faceMaxZ(geometry)
|
|
321
|
+
};
|
|
322
|
+
});
|
|
323
|
+
renderable.sort((a, b) => a.maxZ - b.maxZ);
|
|
324
|
+
const buffers = [];
|
|
325
|
+
for (const face of renderable) {
|
|
326
|
+
const buffer = renderFace(face, renderSize, renderSize, transformation);
|
|
327
|
+
if (buffer) buffers.push(buffer);
|
|
328
|
+
}
|
|
329
|
+
if (buffers.length === 0) return null;
|
|
330
|
+
return combineFaceBuffers(renderSize, renderSize, buffers);
|
|
331
|
+
}
|
|
332
|
+
//#endregion
|
|
333
|
+
export { renderGeo as i, geoToFaces as n, parseGeo as r, findGeoForItem as t };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { a as FaceDirectionName, o as ModelElementJson, r as ElementRotationJson } from "./types-COGbtA1t.js";
|
|
2
|
+
import { n as Vec3 } from "./vector-DRKRi4--.js";
|
|
3
|
+
//#region src/render/geometry.d.ts
|
|
4
|
+
interface FaceGeometry {
|
|
5
|
+
direction: FaceDirectionName;
|
|
6
|
+
/** Shared, possibly rotation-mutated corner vectors, in quad order v0..v3. */
|
|
7
|
+
vertices: [Vec3, Vec3, Vec3, Vec3];
|
|
8
|
+
/** Normalized UV rect corners (0–1). */
|
|
9
|
+
uv1: [number, number];
|
|
10
|
+
uv2: [number, number];
|
|
11
|
+
textureRef: string;
|
|
12
|
+
/** Degrees 0/90/180/270 — rotates the UV corner assignment. */
|
|
13
|
+
rotation: number;
|
|
14
|
+
tintIndex: number | null;
|
|
15
|
+
shadeDirectionOverride: Vec3 | null;
|
|
16
|
+
}
|
|
17
|
+
declare const FACE_NORMALS: Record<FaceDirectionName, Vec3>;
|
|
18
|
+
declare function buildElementFaces(element: ModelElementJson): FaceGeometry[];
|
|
19
|
+
/**
|
|
20
|
+
* Element rotation mutates the shared corner vectors in place, after face/UV
|
|
21
|
+
* construction. Supports the vanilla {origin, axis, angle} form and the newer
|
|
22
|
+
* per-axis {origin, x?, y?, z?} form (applied X, then Y, then Z). `rotation_rc`
|
|
23
|
+
* takes precedence when present (renderchest escape hatch). No angle restriction,
|
|
24
|
+
* no rescale — matching upstream.
|
|
25
|
+
*/
|
|
26
|
+
declare function applyElementRotation(rotation: ElementRotationJson | undefined, corners: Vec3[]): void;
|
|
27
|
+
//#endregion
|
|
28
|
+
export { buildElementFaces as i, FaceGeometry as n, applyElementRotation as r, FACE_NORMALS as t };
|