@nodecraft/rendermite 1.11.0 → 1.11.2

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.
Files changed (259) hide show
  1. package/README.md +48 -16
  2. package/assets/builtin/mobheads/items/frostbite.json +6 -0
  3. package/assets/builtin/mobheads/models/item/frostbite.json +6 -0
  4. package/assets/mod-models/README.md +24 -0
  5. package/dist/atlas/registry.d.ts +5 -6
  6. package/dist/atlas/registry.js +1 -2
  7. package/dist/atlas/sources.d.ts +2 -2
  8. package/dist/atlas/sources.js +1 -2
  9. package/dist/{atlas-pack-BUadroKy.d.ts → atlas-pack-Dxl3kwT2.d.ts} +1 -1
  10. package/dist/{biomes-BGOF6gRM.js → biomes-DTmzQfnL.js} +1 -1
  11. package/dist/{biomes-CnnhDCnk.d.ts → biomes-_HZ93QNR.d.ts} +1 -1
  12. package/dist/{blend-mJAeQB3C.d.ts → blend-DnogOnaU.d.ts} +1 -1
  13. package/dist/{block-behaviour-D1qC9_cc.d.ts → block-behaviour-D6NwU9bV.d.ts} +7 -7
  14. package/dist/{block-entities-C807EY2I.js → block-entities-Dp3rMxWq.js} +1 -1
  15. package/dist/{block-overrides-BhuJIxKC.js → block-overrides-DMzzzeq_.js} +1 -1
  16. package/dist/blocks/atlas-pack.d.ts +1 -1
  17. package/dist/blocks/atlas-pack.js +1 -2
  18. package/dist/blocks/biomes.d.ts +1 -1
  19. package/dist/blocks/biomes.js +1 -2
  20. package/dist/blocks/block-behaviour.d.ts +1 -1
  21. package/dist/blocks/block-behaviour.js +1 -2
  22. package/dist/blocks/block-entities.d.ts +12 -13
  23. package/dist/blocks/block-entities.js +1 -2
  24. package/dist/blocks/block-overrides.d.ts +7 -8
  25. package/dist/blocks/block-overrides.js +1 -2
  26. package/dist/blocks/blockstate-eval.d.ts +1 -1
  27. package/dist/blocks/blockstate-eval.js +1 -2
  28. package/dist/blocks/cli.d.ts +2 -3
  29. package/dist/blocks/cli.js +1 -2
  30. package/dist/blocks/datapack.d.ts +1 -1
  31. package/dist/blocks/datapack.js +1 -2
  32. package/dist/blocks/ender-storage.d.ts +4 -5
  33. package/dist/blocks/ender-storage.js +1 -2
  34. package/dist/blocks/entities.d.ts +8 -9
  35. package/dist/blocks/entities.js +1 -2
  36. package/dist/blocks/entity-geo.d.ts +4 -5
  37. package/dist/blocks/entity-geo.js +1 -2
  38. package/dist/blocks/entity-models.d.ts +8 -9
  39. package/dist/blocks/entity-models.js +1 -2
  40. package/dist/blocks/entity-sizes.d.ts +4 -4
  41. package/dist/blocks/entity-sizes.js +1 -2
  42. package/dist/blocks/export.d.ts +1 -1
  43. package/dist/blocks/export.js +1 -2
  44. package/dist/blocks/game-rules.js +1 -2
  45. package/dist/blocks/geo-blocks.d.ts +5 -6
  46. package/dist/blocks/geo-blocks.js +1 -2
  47. package/dist/blocks/item-sprites.d.ts +9 -10
  48. package/dist/blocks/item-sprites.js +1 -2
  49. package/dist/blocks/light-bytecode.d.ts +1 -1
  50. package/dist/blocks/light-bytecode.js +1 -2
  51. package/dist/blocks/light-eval.d.ts +1 -1
  52. package/dist/blocks/light-eval.js +1 -2
  53. package/dist/blocks/light.d.ts +8 -9
  54. package/dist/blocks/light.js +1 -2
  55. package/dist/blocks/names.d.ts +1 -1
  56. package/dist/blocks/names.js +1 -2
  57. package/dist/blocks/obj-mesh.d.ts +1 -1
  58. package/dist/blocks/obj-mesh.js +1 -2
  59. package/dist/blocks/pack-format.d.ts +1 -1
  60. package/dist/blocks/pack-format.js +1 -2
  61. package/dist/blocks/sprite-sheet.d.ts +11 -12
  62. package/dist/blocks/sprite-sheet.js +1 -2
  63. package/dist/blocks/states.js +1 -2
  64. package/dist/blocks/tints.d.ts +1 -1
  65. package/dist/blocks/tints.js +1 -2
  66. package/dist/{blockstate-DVb8Mhxc.js → blockstate-D5FgI-Qv.js} +3 -4
  67. package/dist/{blockstate-eval-BzznRcVY.d.ts → blockstate-eval-C-ZSx78w.d.ts} +3 -2
  68. package/dist/{blockstate-eval-CV_LwUwj.js → blockstate-eval-Cu-9TWH0.js} +3 -4
  69. package/dist/builtin.d.ts +5 -6
  70. package/dist/builtin.js +1 -2
  71. package/dist/{classfile-BJSs3JH0.js → classfile-YGjbyMPk.js} +3 -4
  72. package/dist/{cli-BsEk_aEv.js → cli-CeEAmdX9.js} +5 -5
  73. package/dist/cli.js +8 -8
  74. package/dist/{datapack-D6eH46ay.js → datapack-BZpO7nv-.js} +8 -9
  75. package/dist/{datapack-CmEg0Vko.d.ts → datapack-DhBAuxw5.d.ts} +1 -1
  76. package/dist/{definition-ColsvWrH.js → definition-Dab22cHd.js} +1 -1
  77. package/dist/{descriptor-Dz2cR-BH.js → descriptor-CJLtRmBc.js} +3 -3
  78. package/dist/{discovery-DWe_kX8W.d.ts → discovery-2Qk3x25z.d.ts} +1 -1
  79. package/dist/{discovery-CD0QqxSF.js → discovery-CMHJfdHQ.js} +13 -15
  80. package/dist/dynamic/generators.d.ts +1 -1
  81. package/dist/dynamic/generators.js +1 -2
  82. package/dist/{encode-TzYXOEId.js → encode-BIAWeZy2.js} +2 -3
  83. package/dist/{encode-BNEYHHR0.d.ts → encode-DZSVif8a.d.ts} +1 -1
  84. package/dist/{ender-storage-CKDiYgYc.js → ender-storage-COyXL-I4.js} +1 -1
  85. package/dist/entities/classfile.js +1 -2
  86. package/dist/entities/geo-model.d.ts +3 -4
  87. package/dist/entities/geo-model.js +1 -2
  88. package/dist/entities/inherit.d.ts +4 -5
  89. package/dist/entities/inherit.js +1 -2
  90. package/dist/entities/jar-classes.js +1 -2
  91. package/dist/entities/link.d.ts +9 -10
  92. package/dist/entities/link.js +1 -2
  93. package/dist/entities/mappings.js +1 -2
  94. package/dist/entities/merge.d.ts +7 -8
  95. package/dist/entities/merge.js +1 -2
  96. package/dist/entities/model-bytecode.d.ts +5 -6
  97. package/dist/entities/model-bytecode.js +1 -2
  98. package/dist/entities/model-code.js +1 -2
  99. package/dist/{entities-rQ4TZjEo.js → entities-4UMp3qXG.js} +4 -5
  100. package/dist/{entity-fallback-BEzCbJq0.js → entity-fallback-ZfurtmEQ.js} +9 -11
  101. package/dist/{entity-geo-DcrcN8TE.js → entity-geo-vJTSO0bB.js} +2 -2
  102. package/dist/{entity-models-D6AMLAy6.js → entity-models-CleLnlV4.js} +9 -10
  103. package/dist/{entity-sizes-Dmr4w0vu.js → entity-sizes-CC6-7DBz.js} +1 -1
  104. package/dist/{entity-textures-DG6NUNyp.js → entity-textures-BS5dI5dz.js} +15 -19
  105. package/dist/{export-CnKiSTiu.d.ts → export-BL_3VVZI.d.ts} +1 -1
  106. package/dist/{export-BdHar0ND.js → export-BPH-b4LT.js} +25 -27
  107. package/dist/{face-uWXECGNr.d.ts → face-BOsq7v9f.d.ts} +4 -4
  108. package/dist/{face-D6SfTISC.js → face-DtbBpvbY.js} +2 -2
  109. package/dist/{game-rules-Dehe210A.js → game-rules-DrYU_6hd.js} +14 -16
  110. package/dist/{generators-D6giKoab.js → generators-7b5w6s0L.js} +1 -1
  111. package/dist/{generators-hu_vk10m.d.ts → generators-P1goUyvI.d.ts} +1 -1
  112. package/dist/{geo-BOYYFFQn.js → geo-CZHkm59F.js} +10 -12
  113. package/dist/{geo-DsWwuC5o.d.ts → geo-Ci_PGkFI.d.ts} +5 -5
  114. package/dist/{geo-blocks-BQqFfAQT.js → geo-blocks-BYSBc8uq.js} +1 -1
  115. package/dist/{geometry-bUDBhncX.js → geometry-BGTvfmbS.js} +1 -2
  116. package/dist/{geometry--UzHu1Vh.d.ts → geometry-Btiz31vH.d.ts} +1 -1
  117. package/dist/index.d.ts +22 -22
  118. package/dist/index.js +19 -19
  119. package/dist/{inherit-DJ45bOB_.js → inherit-LSSIV8N2.js} +2 -2
  120. package/dist/{item-sprites-CwiEBEAJ.js → item-sprites-Cip695Kk.js} +3 -3
  121. package/dist/{item-styles-BAeneY1R.js → item-styles-D-7N6j1i.js} +1 -1
  122. package/dist/items/blockstate.d.ts +5 -6
  123. package/dist/items/blockstate.js +1 -2
  124. package/dist/items/definition.js +1 -2
  125. package/dist/items/discovery.d.ts +1 -1
  126. package/dist/items/discovery.js +1 -2
  127. package/dist/{jar-DvofBm71.js → jar-Df0Xhw7X.js} +1 -1
  128. package/dist/{jar-4Jg7ufWK.d.ts → jar-IHoEeMdV.d.ts} +1 -1
  129. package/dist/{jar-classes-0wqWbTax.js → jar-classes-C5P3F18e.js} +1 -1
  130. package/dist/{legacy-reshape-CcdstKyI.js → legacy-reshape-ClEZFEVT.js} +6 -8
  131. package/dist/{light-Culwie4W.js → light-Bj0iD-ok.js} +20 -23
  132. package/dist/{light-bytecode-Bx3XLTRI.js → light-bytecode-B4_sP6ri.js} +6 -5
  133. package/dist/{light-eval-Cl2L3RBz.d.ts → light-eval-DJA58Kdg.d.ts} +2 -2
  134. package/dist/{lighting-3FGRC3Af.d.ts → lighting-DYkS-NlV.d.ts} +2 -2
  135. package/dist/{lighting--5myudVu.js → lighting-f_oZTiOx.js} +2 -2
  136. package/dist/{link-IDjVJ2Ij.js → link-CxzBRqeB.js} +4 -5
  137. package/dist/{loader-qOH0Jynq.js → loader-Ckhy0t8m.js} +3 -4
  138. package/dist/{loader-C4gsX_wO.d.ts → loader-CrPTL0zk.d.ts} +1 -1
  139. package/dist/{loader-BYyPIs9f.d.ts → loader-mGAKSRp6.d.ts} +2 -2
  140. package/dist/{manager-D6zXmFrO.js → manager-B1VPl4UQ.js} +4 -5
  141. package/dist/{manager-Ct0dEOMg.d.ts → manager-Ey26G_3e.d.ts} +1 -1
  142. package/dist/{model-bytecode-CXYAZ5dX.js → model-bytecode-Cp4LGfjI.js} +5 -6
  143. package/dist/{model-code-C5Au_FKU.js → model-code-B11iaTy1.js} +1 -1
  144. package/dist/models/loader.d.ts +1 -1
  145. package/dist/models/loader.js +1 -2
  146. package/dist/models/types.d.ts +1 -1
  147. package/dist/{models-BsYA-NZg.js → models-CvFehP26.js} +1 -1
  148. package/dist/mods/models.d.ts +3 -4
  149. package/dist/mods/models.js +1 -2
  150. package/dist/mods/prepare.d.ts +1 -1
  151. package/dist/mods/prepare.js +1 -2
  152. package/dist/mods/synthesize.d.ts +5 -6
  153. package/dist/mods/synthesize.js +1 -2
  154. package/dist/mods/tints.d.ts +7 -8
  155. package/dist/mods/tints.js +1 -2
  156. package/dist/{names-D1abAVIB.d.ts → names-D30ZIXkK.d.ts} +1 -1
  157. package/dist/{obj-NxBaySXt.js → obj-BWsU8pYz.js} +16 -18
  158. package/dist/{obj-mesh-BBSLG2Fv.js → obj-mesh-WShUgD4g.js} +1 -1
  159. package/dist/{obj-mesh-CzL0lOlJ.d.ts → obj-mesh-yN3ttPYf.d.ts} +2 -2
  160. package/dist/output/encode.d.ts +1 -1
  161. package/dist/output/encode.js +1 -2
  162. package/dist/output/item-styles.d.ts +3 -4
  163. package/dist/output/item-styles.js +1 -2
  164. package/dist/output/minify.js +1 -2
  165. package/dist/output/stylesheet.d.ts +1 -1
  166. package/dist/output/stylesheet.js +1 -2
  167. package/dist/pack.d.ts +6 -6
  168. package/dist/pack.js +1 -1
  169. package/dist/{pipeline-CCfkRth7.js → pipeline-DV4hIRMp.js} +12 -12
  170. package/dist/{pipeline-DuPF3sap.d.ts → pipeline-DmLQ49DB.d.ts} +4 -4
  171. package/dist/{pool-CKGp1qup.js → pool-Co7kPWwN.js} +1 -1
  172. package/dist/{prepare-DkJkZXuQ.js → prepare-BC5PYUmn.js} +7 -8
  173. package/dist/{prepare-Ce5SpR7Y.d.ts → prepare-BpwBH_m9.d.ts} +1 -1
  174. package/dist/{prepare-BPzsZI_S.d.ts → prepare-CZu44oTS.d.ts} +1 -1
  175. package/dist/{prepare-sj36BP90.js → prepare-DJnJQYtn.js} +9 -10
  176. package/dist/{rasterizer-M9Y7mn-W.js → rasterizer-B3tOyG4B.js} +5 -6
  177. package/dist/{rasterizer-DjnurUgD.d.ts → rasterizer-UBaTPhH4.d.ts} +1 -1
  178. package/dist/{registry-DafxsAhG.js → registry-CNFi94eo.js} +5 -7
  179. package/dist/render/blend.d.ts +1 -1
  180. package/dist/render/blend.js +1 -2
  181. package/dist/render/compose.d.ts +4 -5
  182. package/dist/render/compose.js +1 -2
  183. package/dist/render/entity-fallback.d.ts +12 -13
  184. package/dist/render/entity-fallback.js +1 -2
  185. package/dist/render/face.d.ts +1 -1
  186. package/dist/render/face.js +1 -2
  187. package/dist/render/fluid-bucket.d.ts +4 -5
  188. package/dist/render/fluid-bucket.js +1 -2
  189. package/dist/render/geo.d.ts +1 -1
  190. package/dist/render/geo.js +1 -2
  191. package/dist/render/geometry.d.ts +1 -1
  192. package/dist/render/geometry.js +1 -2
  193. package/dist/render/legacy-tints.d.ts +4 -5
  194. package/dist/render/legacy-tints.js +1 -2
  195. package/dist/render/lighting.d.ts +1 -1
  196. package/dist/render/lighting.js +1 -2
  197. package/dist/render/obj.d.ts +10 -10
  198. package/dist/render/obj.js +1 -2
  199. package/dist/render/pipeline.d.ts +1 -1
  200. package/dist/render/pipeline.js +1 -2
  201. package/dist/render/rasterizer.d.ts +1 -1
  202. package/dist/render/rasterizer.js +1 -2
  203. package/dist/render/renderer.d.ts +1 -1
  204. package/dist/render/renderer.js +1 -2
  205. package/dist/render/tints.d.ts +1 -1
  206. package/dist/render/tints.js +1 -2
  207. package/dist/render/vector.js +1 -2
  208. package/dist/{renderer-QgROYvPv.d.ts → renderer-DZSDiXL0.d.ts} +6 -6
  209. package/dist/resources/cache.d.ts +2 -3
  210. package/dist/resources/cache.js +1 -2
  211. package/dist/resources/cached.d.ts +3 -4
  212. package/dist/resources/cached.js +1 -2
  213. package/dist/resources/descriptor.d.ts +1 -1
  214. package/dist/resources/descriptor.js +1 -2
  215. package/dist/resources/entity-textures.d.ts +19 -20
  216. package/dist/resources/entity-textures.js +1 -2
  217. package/dist/resources/jar.d.ts +1 -1
  218. package/dist/resources/jar.js +1 -2
  219. package/dist/resources/locator.js +1 -2
  220. package/dist/resources/manager.d.ts +1 -1
  221. package/dist/resources/manager.js +1 -2
  222. package/dist/resources/read-ahead.d.ts +2 -3
  223. package/dist/resources/read-ahead.js +1 -2
  224. package/dist/resources/synthetic.d.ts +1 -1
  225. package/dist/resources/synthetic.js +1 -2
  226. package/dist/resources/zip-reader.d.ts +2 -3
  227. package/dist/resources/zip-reader.js +1 -2
  228. package/dist/{run-Bf5TLTJw.js → run-5Rc8hTHT.js} +15 -11
  229. package/dist/{run-CxB1qabg.d.ts → run-CfvR5OAR.d.ts} +3 -3
  230. package/dist/run.d.ts +1 -1
  231. package/dist/run.js +2 -2
  232. package/dist/{sources-DYY5Qu-t.js → sources-BsEa9YPc.js} +1 -1
  233. package/dist/{sources-sFtealLJ.d.ts → sources-ByuTQR_o.d.ts} +7 -3
  234. package/dist/{sprite-sheet-BWsLl0Vd.js → sprite-sheet-BQsUioOJ.js} +6 -7
  235. package/dist/{stylesheet-C61VrCAV.js → stylesheet-Cin7eCyU.js} +6 -7
  236. package/dist/{stylesheet-DxHkk4qA.d.ts → stylesheet-XJ-kH6kk.d.ts} +1 -1
  237. package/dist/{synthesize-jTjVjPAt.js → synthesize-DNvUwWhZ.js} +3 -4
  238. package/dist/{synthetic-CWtFtAkR.d.ts → synthetic-C8_0G5iP.d.ts} +1 -1
  239. package/dist/{synthetic-rc9BPT4P.js → synthetic-y9Mr-wB2.js} +0 -0
  240. package/dist/textures/loader.d.ts +1 -1
  241. package/dist/textures/loader.js +1 -2
  242. package/dist/textures/overlay.d.ts +3 -4
  243. package/dist/textures/overlay.js +1 -2
  244. package/dist/{tints-B0a1K11c.d.ts → tints-BNS9JGf7.d.ts} +2 -2
  245. package/dist/{tints-DwFmEkf3.d.ts → tints-CvHlfvDC.d.ts} +2 -2
  246. package/dist/{tints-B3WQcPtx.js → tints-Cw5okshA.js} +1 -1
  247. package/dist/{tints-CZeyKzMv.js → tints-DhSA5SCg.js} +3 -3
  248. package/dist/{types-qlp3I8_-.d.ts → types-BQQzfHEY.d.ts} +4 -0
  249. package/dist/versions/download.d.ts +2 -3
  250. package/dist/versions/download.js +1 -2
  251. package/dist/versions/legacy-reshape.d.ts +3 -4
  252. package/dist/versions/legacy-reshape.js +1 -2
  253. package/dist/versions/prepare.d.ts +1 -1
  254. package/dist/versions/prepare.js +1 -2
  255. package/dist/workers/pool.d.ts +6 -7
  256. package/dist/workers/pool.js +1 -2
  257. package/dist/workers/render-worker.d.ts +6 -7
  258. package/dist/workers/render-worker.js +2 -2
  259. package/package.json +9 -9
package/dist/index.d.ts CHANGED
@@ -1,26 +1,26 @@
1
1
  import { n as ResourceLocator, t as InvalidResourceLocatorError } from "./locator-jDbdUeTd.js";
2
- import { a as ResourceManager, i as ResourceKindName, n as LayeredResourceManager, r as ResourceKind, t as FolderResourceManager } from "./manager-Ct0dEOMg.js";
3
- import { a as TextureMeta, i as TextureLoader, o as TextureResolutionError, r as Texture, t as AnimatedTexture } from "./loader-C4gsX_wO.js";
4
- import { d as parseAtlasSources, n as AtlasSource, r as AtlasSourceError, s as ResolvedSprite, t as AtlasResolver, u as createAtlasResolver } from "./sources-sFtealLJ.js";
5
- import { a as PackedRect, i as PackedPage, n as PackOptions, o as packAtlas, r as PackedAtlas, t as PackEntry } from "./atlas-pack-BUadroKy.js";
6
- import { c as buildBiomeClimates, i as LEGACY_BIOMES, l as parseBiomeClimate, n as BiomeClimatePack, o as PRE_JAR_BIOMES, r as DEFAULT_WATER_COLOR, s as VANILLA_BIOME_CLIMATES, t as BiomeClimate, u as vanillaBiomesFor } from "./biomes-CnnhDCnk.js";
7
- import { a as BlockStateMultipartCase, d as matchesCondition, f as parseBlockState, i as BlockStateError, l as collectModels, n as BlockProperties, o as BlockStateVariantCase, p as weightedVariantIndex, r as BlockStateDefinition, s as MultipartCondition, t as BlockModelVariant, u as evaluateBlockState } from "./blockstate-eval-BzznRcVY.js";
8
- import { a as resolveTexture, n as ModelResolutionError, o as salvageJson, r as ResolvedModel, t as ModelLoader } from "./loader-BYyPIs9f.js";
9
- import { i as buildObjMesh, n as ObjMesh, r as ObjMeshError, t as MeshGroup } from "./obj-mesh-CzL0lOlJ.js";
10
- import { a as buildBlockTints, i as UNREGISTERED_TINTS, n as BlockTintPack, t as BlockTint } from "./tints-DwFmEkf3.js";
11
- import { i as exportBlockPack, n as BlockPackResult, r as ExportBlockPackOptions, t as BlockPackFailure } from "./export-CnKiSTiu.js";
12
- import { s as builtinDynamicResources } from "./generators-hu_vk10m.js";
13
- import { d as toFloatTexture, n as FloatTexture, u as toByteTexture } from "./blend-mJAeQB3C.js";
14
- import { a as LightingProfileName, i as LightingProfile, r as LightSource, u as lightsForProfile } from "./lighting-3FGRC3Af.js";
15
- import { a as RenderedFrames, c as renderModel, i as RenderOptions, l as renderModelFrames, o as boxDownscale, r as ItemRenderError, s as pointResize } from "./renderer-QgROYvPv.js";
2
+ import { a as ResourceManager, i as ResourceKindName, n as LayeredResourceManager, r as ResourceKind, t as FolderResourceManager } from "./manager-Ey26G_3e.js";
3
+ import { a as TextureMeta, i as TextureLoader, o as TextureResolutionError, r as Texture, t as AnimatedTexture } from "./loader-CrPTL0zk.js";
4
+ import { c as ResolvedSprite, d as createAtlasResolver, f as parseAtlasSources, i as AtlasSourceError, n as AtlasSource, t as AtlasResolver } from "./sources-ByuTQR_o.js";
5
+ import { a as PackedRect, i as PackedPage, n as PackOptions, o as packAtlas, r as PackedAtlas, t as PackEntry } from "./atlas-pack-Dxl3kwT2.js";
6
+ import { c as buildBiomeClimates, i as LEGACY_BIOMES, l as parseBiomeClimate, n as BiomeClimatePack, o as PRE_JAR_BIOMES, r as DEFAULT_WATER_COLOR, s as VANILLA_BIOME_CLIMATES, t as BiomeClimate, u as vanillaBiomesFor } from "./biomes-_HZ93QNR.js";
7
+ import { a as BlockStateMultipartCase, d as matchesCondition, f as parseBlockState, i as BlockStateError, l as collectModels, n as BlockProperties, o as BlockStateVariantCase, p as weightedVariantIndex, r as BlockStateDefinition, s as MultipartCondition, t as BlockModelVariant, u as evaluateBlockState } from "./blockstate-eval-C-ZSx78w.js";
8
+ import { a as resolveTexture, n as ModelResolutionError, o as salvageJson, r as ResolvedModel, t as ModelLoader } from "./loader-mGAKSRp6.js";
9
+ import { i as buildObjMesh, n as ObjMesh, r as ObjMeshError, t as MeshGroup } from "./obj-mesh-yN3ttPYf.js";
10
+ import { a as buildBlockTints, i as UNREGISTERED_TINTS, n as BlockTintPack, t as BlockTint } from "./tints-CvHlfvDC.js";
11
+ import { i as exportBlockPack, n as BlockPackResult, r as ExportBlockPackOptions, t as BlockPackFailure } from "./export-BL_3VVZI.js";
12
+ import { s as builtinDynamicResources } from "./generators-P1goUyvI.js";
13
+ import { d as toFloatTexture, n as FloatTexture, u as toByteTexture } from "./blend-DnogOnaU.js";
14
+ import { a as LightingProfileName, i as LightingProfile, r as LightSource, u as lightsForProfile } from "./lighting-DYkS-NlV.js";
15
+ import { a as RenderedFrames, c as renderModel, i as RenderOptions, l as renderModelFrames, o as boxDownscale, r as ItemRenderError, s as pointResize } from "./renderer-DZSDiXL0.js";
16
16
  import { c as defaultProperties, i as ItemRenderInstruction, l as evaluateItemModel, n as InvalidItemDefinitionError, o as TintDefinition, r as ItemProperties, s as UNKNOWN_MODEL } from "./definition-ricL7Jqf.js";
17
- import { i as discoverItems, n as ItemDiscoveryOptions, o as resolveItem, r as ItemResolutionError, t as DiscoveredItem } from "./discovery-DWe_kX8W.js";
18
- import { a as resolveTint, i as parseTintValue, n as InvalidTinterDefinitionError, o as resolveTints, t as DYE_COLORS } from "./tints-B0a1K11c.js";
19
- import { i as EncodedIcon, n as EncodeOptions, o as encodeAnimatedIcon, r as EncodedAnimatedIcon, s as encodeIcon, t as AnimatedEncodeOptions } from "./encode-BNEYHHR0.js";
17
+ import { i as discoverItems, n as ItemDiscoveryOptions, o as resolveItem, r as ItemResolutionError, t as DiscoveredItem } from "./discovery-2Qk3x25z.js";
18
+ import { a as resolveTint, i as parseTintValue, n as InvalidTinterDefinitionError, o as resolveTints, t as DYE_COLORS } from "./tints-BNS9JGf7.js";
19
+ import { i as EncodedIcon, n as EncodeOptions, o as encodeAnimatedIcon, r as EncodedAnimatedIcon, s as encodeIcon, t as AnimatedEncodeOptions } from "./encode-DZSVif8a.js";
20
20
  import { t as minifyStylesheet } from "./minify-CIV6enbr.js";
21
- import { a as compareVersions, o as eraForVersion, s as prepareVersionResources } from "./prepare-Ce5SpR7Y.js";
22
- import { i as prepareModResources } from "./prepare-BPzsZI_S.js";
23
- import { i as itemClass, n as StylesheetOptions, r as generateStylesheet, t as ItemStyle } from "./stylesheet-DxHkk4qA.js";
24
- import { i as run, n as RunOptions, r as RunResult, t as ItemFailure } from "./run-CxB1qabg.js";
25
- import { n as UnsafeJarError, r as isUnsafeEntryPath, t as JarResourceManager } from "./jar-4Jg7ufWK.js";
21
+ import { a as compareVersions, o as eraForVersion, s as prepareVersionResources } from "./prepare-BpwBH_m9.js";
22
+ import { i as prepareModResources } from "./prepare-CZu44oTS.js";
23
+ import { i as itemClass, n as StylesheetOptions, r as generateStylesheet, t as ItemStyle } from "./stylesheet-XJ-kH6kk.js";
24
+ import { i as run, n as RunOptions, r as RunResult, t as ItemFailure } from "./run-CfvR5OAR.js";
25
+ import { n as UnsafeJarError, r as isUnsafeEntryPath, t as JarResourceManager } from "./jar-IHoEeMdV.js";
26
26
  export { type AnimatedEncodeOptions, AnimatedTexture, type AtlasResolver, type AtlasSource, AtlasSourceError, type BiomeClimate, type BiomeClimatePack, type BlockModelVariant, type BlockPackFailure, type BlockPackResult, type BlockProperties, type BlockStateDefinition, BlockStateError, type BlockStateMultipartCase, type BlockStateVariantCase, type BlockTint, type BlockTintPack, DEFAULT_WATER_COLOR, DYE_COLORS, type DiscoveredItem, type EncodeOptions, type EncodedAnimatedIcon, type EncodedIcon, type ExportBlockPackOptions, type FloatTexture, FolderResourceManager, InvalidItemDefinitionError, InvalidResourceLocatorError, InvalidTinterDefinitionError, type ItemDiscoveryOptions, type ItemFailure, type ItemProperties, ItemRenderError, type ItemRenderInstruction, ItemResolutionError, type ItemStyle, JarResourceManager, LEGACY_BIOMES, LayeredResourceManager, type LightSource, LightingProfile, type LightingProfileName, type MeshGroup, ModelLoader, ModelResolutionError, type MultipartCondition, type ObjMesh, ObjMeshError, PRE_JAR_BIOMES, type PackEntry, type PackOptions, type PackedAtlas, type PackedPage, type PackedRect, type RenderOptions, type RenderedFrames, type ResolvedModel, type ResolvedSprite, ResourceKind, type ResourceKindName, ResourceLocator, type ResourceManager, type RunOptions, type RunResult, type StylesheetOptions, type Texture, TextureLoader, type TextureMeta, TextureResolutionError, type TintDefinition, UNKNOWN_MODEL, UNREGISTERED_TINTS, UnsafeJarError, VANILLA_BIOME_CLIMATES, boxDownscale, buildBiomeClimates, buildBlockTints, buildObjMesh, builtinDynamicResources, collectModels, compareVersions, createAtlasResolver, defaultProperties, discoverItems, encodeAnimatedIcon, encodeIcon, eraForVersion, evaluateBlockState, evaluateItemModel, exportBlockPack, generateStylesheet, isUnsafeEntryPath, itemClass, lightsForProfile, matchesCondition, minifyStylesheet, packAtlas, parseAtlasSources, parseBiomeClimate, parseBlockState, parseTintValue, pointResize, prepareModResources, prepareVersionResources, renderModel, renderModelFrames, resolveItem, resolveTexture, resolveTint, resolveTints, run, salvageJson, toByteTexture, toFloatTexture, vanillaBiomesFor, weightedVariantIndex };
package/dist/index.js CHANGED
@@ -1,26 +1,26 @@
1
1
  import { n as ResourceLocator, t as InvalidResourceLocatorError } from "./locator-COMEtEn9.js";
2
- import { n as LayeredResourceManager, r as ResourceKind, t as FolderResourceManager } from "./manager-D6zXmFrO.js";
3
- import { n as UnsafeJarError, r as isUnsafeEntryPath, t as JarResourceManager } from "./jar-DvofBm71.js";
4
- import { a as prepareVersionResources, i as eraForVersion, r as compareVersions } from "./prepare-DkJkZXuQ.js";
5
- import { a as buildBiomeClimates, i as VANILLA_BIOME_CLIMATES, n as LEGACY_BIOMES, o as parseBiomeClimate, r as PRE_JAR_BIOMES, s as vanillaBiomesFor, t as DEFAULT_WATER_COLOR } from "./biomes-BGOF6gRM.js";
6
- import { a as parseBlockState, i as matchesCondition, n as collectModels, o as weightedVariantIndex, r as evaluateBlockState, t as BlockStateError } from "./blockstate-eval-CV_LwUwj.js";
2
+ import { n as LayeredResourceManager, r as ResourceKind, t as FolderResourceManager } from "./manager-B1VPl4UQ.js";
3
+ import { n as UnsafeJarError, r as isUnsafeEntryPath, t as JarResourceManager } from "./jar-Df0Xhw7X.js";
4
+ import { a as prepareVersionResources, i as eraForVersion, r as compareVersions } from "./prepare-BC5PYUmn.js";
5
+ import { a as buildBiomeClimates, i as VANILLA_BIOME_CLIMATES, n as LEGACY_BIOMES, o as parseBiomeClimate, r as PRE_JAR_BIOMES, s as vanillaBiomesFor, t as DEFAULT_WATER_COLOR } from "./biomes-DTmzQfnL.js";
6
+ import { a as parseBlockState, i as matchesCondition, n as collectModels, o as weightedVariantIndex, r as evaluateBlockState, t as BlockStateError } from "./blockstate-eval-Cu-9TWH0.js";
7
7
  import { c as toByteTexture, l as toFloatTexture } from "./blend-KXMclcHk.js";
8
- import { c as lightsForProfile, r as LightingProfile } from "./lighting--5myudVu.js";
9
- import { a as salvageJson, i as resolveTexture, n as ModelResolutionError, t as ModelLoader } from "./loader-qOH0Jynq.js";
10
- import { a as ItemRenderError, c as renderModel, l as renderModelFrames, o as boxDownscale, s as pointResize } from "./obj-NxBaySXt.js";
11
- import { a as defaultProperties, i as UNKNOWN_MODEL, n as InvalidItemDefinitionError, o as evaluateItemModel } from "./definition-ColsvWrH.js";
12
- import { i as resolveItem, n as discoverItems, t as ItemResolutionError } from "./discovery-CD0QqxSF.js";
13
- import { a as resolveTints, i as resolveTint, n as InvalidTinterDefinitionError, r as parseTintValue, t as DYE_COLORS } from "./tints-B3WQcPtx.js";
14
- import { n as buildObjMesh, t as ObjMeshError } from "./obj-mesh-BBSLG2Fv.js";
8
+ import { c as lightsForProfile, r as LightingProfile } from "./lighting-f_oZTiOx.js";
9
+ import { a as salvageJson, i as resolveTexture, n as ModelResolutionError, t as ModelLoader } from "./loader-Ckhy0t8m.js";
10
+ import { a as ItemRenderError, c as renderModel, l as renderModelFrames, o as boxDownscale, s as pointResize } from "./obj-BWsU8pYz.js";
11
+ import { a as defaultProperties, i as UNKNOWN_MODEL, n as InvalidItemDefinitionError, o as evaluateItemModel } from "./definition-Dab22cHd.js";
12
+ import { i as resolveItem, n as discoverItems, t as ItemResolutionError } from "./discovery-CMHJfdHQ.js";
13
+ import { a as resolveTints, i as resolveTint, n as InvalidTinterDefinitionError, r as parseTintValue, t as DYE_COLORS } from "./tints-Cw5okshA.js";
14
+ import { n as buildObjMesh, t as ObjMeshError } from "./obj-mesh-WShUgD4g.js";
15
15
  import { t as packAtlas } from "./atlas-pack-CoOih7By.js";
16
16
  import { n as buildBlockTints, t as UNREGISTERED_TINTS } from "./tints-Cl0r-Ol3.js";
17
- import { o as createAtlasResolver, s as parseAtlasSources, t as AtlasSourceError } from "./sources-DYY5Qu-t.js";
17
+ import { o as createAtlasResolver, s as parseAtlasSources, t as AtlasSourceError } from "./sources-BsEa9YPc.js";
18
18
  import { n as TextureLoader, r as TextureResolutionError, t as AnimatedTexture } from "./loader-CsgtBuBo.js";
19
- import { t as exportBlockPack } from "./export-BdHar0ND.js";
20
- import { n as prepareModResources } from "./prepare-sj36BP90.js";
21
- import { n as encodeIcon, t as encodeAnimatedIcon } from "./encode-TzYXOEId.js";
22
- import { a as builtinDynamicResources } from "./generators-D6giKoab.js";
19
+ import { t as exportBlockPack } from "./export-BPH-b4LT.js";
20
+ import { n as prepareModResources } from "./prepare-DJnJQYtn.js";
21
+ import { n as encodeIcon, t as encodeAnimatedIcon } from "./encode-BIAWeZy2.js";
22
+ import { a as builtinDynamicResources } from "./generators-7b5w6s0L.js";
23
23
  import { t as minifyStylesheet } from "./minify-bjMRmr5J.js";
24
- import { n as itemClass, t as generateStylesheet } from "./stylesheet-C61VrCAV.js";
25
- import { t as run } from "./run-Bf5TLTJw.js";
24
+ import { n as itemClass, t as generateStylesheet } from "./stylesheet-Cin7eCyU.js";
25
+ import { t as run } from "./run-5Rc8hTHT.js";
26
26
  export { AnimatedTexture, AtlasSourceError, BlockStateError, DEFAULT_WATER_COLOR, DYE_COLORS, FolderResourceManager, InvalidItemDefinitionError, InvalidResourceLocatorError, InvalidTinterDefinitionError, ItemRenderError, ItemResolutionError, JarResourceManager, LEGACY_BIOMES, LayeredResourceManager, LightingProfile, ModelLoader, ModelResolutionError, ObjMeshError, PRE_JAR_BIOMES, ResourceKind, ResourceLocator, TextureLoader, TextureResolutionError, UNKNOWN_MODEL, UNREGISTERED_TINTS, UnsafeJarError, VANILLA_BIOME_CLIMATES, boxDownscale, buildBiomeClimates, buildBlockTints, buildObjMesh, builtinDynamicResources, collectModels, compareVersions, createAtlasResolver, defaultProperties, discoverItems, encodeAnimatedIcon, encodeIcon, eraForVersion, evaluateBlockState, evaluateItemModel, exportBlockPack, generateStylesheet, isUnsafeEntryPath, itemClass, lightsForProfile, matchesCondition, minifyStylesheet, packAtlas, parseAtlasSources, parseBiomeClimate, parseBlockState, parseTintValue, pointResize, prepareModResources, prepareVersionResources, renderModel, renderModelFrames, resolveItem, resolveTexture, resolveTint, resolveTints, run, salvageJson, toByteTexture, toFloatTexture, vanillaBiomesFor, weightedVariantIndex };
@@ -1,6 +1,6 @@
1
- import { t as parseClassFile } from "./classfile-BJSs3JH0.js";
1
+ import { t as parseClassFile } from "./classfile-YGjbyMPk.js";
2
2
  import { a as mergeModels, i as dedupeCubes } from "./merge-DeHruviG.js";
3
- import { n as extractModel } from "./model-bytecode-CXYAZ5dX.js";
3
+ import { n as extractModel } from "./model-bytecode-Cp4LGfjI.js";
4
4
  //#region src/entities/inherit.ts
5
5
  /**
6
6
  * A model class read together with its ancestors.
@@ -1,6 +1,6 @@
1
- import { i as resolveTexture } from "./loader-qOH0Jynq.js";
2
- import { i as resolveItem, r as langRegistry } from "./discovery-CD0QqxSF.js";
3
- import { a as resolveTints } from "./tints-B3WQcPtx.js";
1
+ import { i as resolveTexture } from "./loader-Ckhy0t8m.js";
2
+ import { i as resolveItem, r as langRegistry } from "./discovery-CMHJfdHQ.js";
3
+ import { a as resolveTints } from "./tints-Cw5okshA.js";
4
4
  //#region src/blocks/item-sprites.ts
5
5
  /**
6
6
  * Flat item sprites, for the items a world holds that are not blocks.
@@ -1,4 +1,4 @@
1
- import { i as TRIM_MATERIALS, n as POTTERY_SHERDS, r as TRIM_DARKER_MATERIALS, t as ARMOR_ITEM_TYPES } from "./generators-D6giKoab.js";
1
+ import { i as TRIM_MATERIALS, n as POTTERY_SHERDS, r as TRIM_DARKER_MATERIALS, t as ARMOR_ITEM_TYPES } from "./generators-7b5w6s0L.js";
2
2
  //#region src/output/item-styles.ts
3
3
  /**
4
4
  * Per-item CSS style classification, ported from upstream's ItemStyleGenerators
@@ -1,8 +1,8 @@
1
1
  import { n as ResourceLocator } from "../locator-jDbdUeTd.js";
2
- import { a as ResourceManager } from "../manager-Ct0dEOMg.js";
2
+ import { a as ResourceManager } from "../manager-Ey26G_3e.js";
3
3
  import { t as Mat4 } from "../vector-DRKRi4--.js";
4
4
  //#region src/items/blockstate.d.ts
5
- interface ResolvedBlockState {
5
+ export interface ResolvedBlockState {
6
6
  model: ResourceLocator;
7
7
  /** Blockstate rotations, in degrees; the item transform has to replay them. */
8
8
  xRotation: number;
@@ -12,12 +12,11 @@ interface ResolvedBlockState {
12
12
  * The block model an item's blockstate names for its default state, or null
13
13
  * when the item has no blockstate or it states nothing usable.
14
14
  */
15
- declare function defaultBlockStateModel(resources: ResourceManager, id: string): Promise<ResolvedBlockState | null>;
15
+ export declare function defaultBlockStateModel(resources: ResourceManager, id: string): Promise<ResolvedBlockState | null>;
16
16
  /**
17
17
  * The blockstate's own x/y rotation as an item transform. Vanilla applies these
18
18
  * about the block's centre, and the game bakes them into the model before the
19
19
  * display transform, so they compose the same way here.
20
20
  */
21
- declare function blockStateTransform(state: ResolvedBlockState): Mat4;
22
- //#endregion
23
- export { ResolvedBlockState, blockStateTransform, defaultBlockStateModel };
21
+ export declare function blockStateTransform(state: ResolvedBlockState): Mat4;
22
+ //#endregion
@@ -1,2 +1 @@
1
- import { n as defaultBlockStateModel, t as blockStateTransform } from "../blockstate-DVb8Mhxc.js";
2
- export { blockStateTransform, defaultBlockStateModel };
1
+ export { t as blockStateTransform, n as defaultBlockStateModel } from "../blockstate-D5FgI-Qv.js";
@@ -1,2 +1 @@
1
- import { a as defaultProperties, i as UNKNOWN_MODEL, n as InvalidItemDefinitionError, o as evaluateItemModel, r as STRING_DEFAULTS, t as CONDITION_DEFAULTS } from "../definition-ColsvWrH.js";
2
- export { CONDITION_DEFAULTS, InvalidItemDefinitionError, STRING_DEFAULTS, UNKNOWN_MODEL, defaultProperties, evaluateItemModel };
1
+ export { t as CONDITION_DEFAULTS, n as InvalidItemDefinitionError, r as STRING_DEFAULTS, i as UNKNOWN_MODEL, a as defaultProperties, o as evaluateItemModel } from "../definition-Dab22cHd.js";
@@ -1,2 +1,2 @@
1
- import { a as langRegistry, i as discoverItems, n as ItemDiscoveryOptions, o as resolveItem, r as ItemResolutionError, t as DiscoveredItem } from "../discovery-DWe_kX8W.js";
1
+ import { a as langRegistry, i as discoverItems, n as ItemDiscoveryOptions, o as resolveItem, r as ItemResolutionError, t as DiscoveredItem } from "../discovery-2Qk3x25z.js";
2
2
  export { DiscoveredItem, ItemDiscoveryOptions, ItemResolutionError, discoverItems, langRegistry, resolveItem };
@@ -1,2 +1 @@
1
- import { i as resolveItem, n as discoverItems, r as langRegistry, t as ItemResolutionError } from "../discovery-CD0QqxSF.js";
2
- export { ItemResolutionError, discoverItems, langRegistry, resolveItem };
1
+ export { t as ItemResolutionError, n as discoverItems, r as langRegistry, i as resolveItem } from "../discovery-CMHJfdHQ.js";
@@ -1,5 +1,5 @@
1
1
  import { n as ResourceLocator } from "./locator-COMEtEn9.js";
2
- import { r as ResourceKind } from "./manager-D6zXmFrO.js";
2
+ import { r as ResourceKind } from "./manager-B1VPl4UQ.js";
3
3
  import { t as openZip } from "./zip-reader-onwEVMea.js";
4
4
  //#region src/resources/jar.ts
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  import { n as ResourceLocator } from "./locator-jDbdUeTd.js";
2
- import { a as ResourceManager, i as ResourceKindName, s as ResourceDescriptor } from "./manager-Ct0dEOMg.js";
2
+ import { a as ResourceManager, i as ResourceKindName, s as ResourceDescriptor } from "./manager-Ey26G_3e.js";
3
3
  //#region src/resources/jar.d.ts
4
4
  /** Jar entries that could escape the archive get the whole jar rejected. */
5
5
  declare function isUnsafeEntryPath(entryPath: string): boolean;
@@ -1,5 +1,5 @@
1
1
  import { t as openZip } from "./zip-reader-onwEVMea.js";
2
- import { n as UnsafeJarError, r as isUnsafeEntryPath } from "./jar-DvofBm71.js";
2
+ import { n as UnsafeJarError, r as isUnsafeEntryPath } from "./jar-Df0Xhw7X.js";
3
3
  //#region src/entities/jar-classes.ts
4
4
  /**
5
5
  * Reading `.class` entries out of a jar.
@@ -1,11 +1,10 @@
1
- import { n as MapResourceManager } from "./synthetic-rc9BPT4P.js";
1
+ import { n as MapResourceManager } from "./synthetic-y9Mr-wB2.js";
2
2
  import sharp from "sharp";
3
3
  import { open } from "yauzl";
4
4
  //#region src/versions/legacy-reshape.ts
5
5
  /**
6
- * Pre-1.6 texture recovery, ported from the ui pipeline's legacy-assets.ts:
7
- * 1.5.x jars keep individually-named textures at the archive root under old
8
- * names (`oreDiamond.png`); ≤1.4.7 has only stitched sheets (terrain.png,
6
+ * Pre-1.6 texture recovery: 1.5.x jars keep individually-named textures at the
7
+ * archive root under old names (`oreDiamond.png`); ≤1.4.7 has only stitched sheets (terrain.png,
9
8
  * gui/items.png) whose cell identity lived in hardcoded Java. Both are
10
9
  * recovered by pixel-matching against the 1.6.4 reference art (the version
11
10
  * whose names the donor block models reference), emitting the pre-1.13 plural
@@ -108,10 +107,9 @@ function matchTile(pixels, references, taken) {
108
107
  let bestDistance = Infinity;
109
108
  for (const [name, reference] of references) {
110
109
  const distance = pixelDistance(pixels, reference);
111
- if (distance < bestDistance) {
112
- bestDistance = distance;
113
- bestName = name;
114
- }
110
+ if (distance >= bestDistance) continue;
111
+ bestDistance = distance;
112
+ bestName = name;
115
113
  }
116
114
  if (bestName !== null && bestDistance <= MATCH_TOLERANCE && !taken.has(bestName)) return bestName;
117
115
  return null;
@@ -1,10 +1,10 @@
1
- import { r as compareVersions } from "./prepare-DkJkZXuQ.js";
2
- import { t as parseClassFile } from "./classfile-BJSs3JH0.js";
1
+ import { r as compareVersions } from "./prepare-BC5PYUmn.js";
2
+ import { t as parseClassFile } from "./classfile-YGjbyMPk.js";
3
3
  import { c as resolveMappings, s as remapDescriptor, t as MappingsUnavailableError } from "./mappings-CTB7_uZa.js";
4
4
  import { t as readAhead } from "./read-ahead-BlSzTexs.js";
5
5
  import { t as blockBehaviour } from "./block-behaviour-DVjqeSkv.js";
6
- import { i as overrideOf, n as constantFluidOf, t as alwaysInvisible } from "./block-overrides-BhuJIxKC.js";
7
- import { t as extractBlockLight } from "./light-bytecode-Bx3XLTRI.js";
6
+ import { i as overrideOf, n as constantFluidOf, t as alwaysInvisible } from "./block-overrides-DMzzzeq_.js";
7
+ import { t as extractBlockLight } from "./light-bytecode-B4_sP6ri.js";
8
8
  //#region src/blocks/light.ts
9
9
  /**
10
10
  * Block light emission for the exported pack: `light.json`.
@@ -53,10 +53,9 @@ function findPropsClasses(roots, remapClass, resolve) {
53
53
  const reference = classFile.reference(index);
54
54
  if (!reference) continue;
55
55
  if (reference.descriptor === `(${TO_INT_FUNCTION})L${reference.owner};` && !reference.owner.startsWith("java/")) found.add(reference.owner);
56
- if (reference.name === "<init>") {
57
- const match = /L([^;]+);\)V$/.exec(reference.descriptor);
58
- if (match && !match[1].startsWith("java/")) lastParams.set(match[1], (lastParams.get(match[1]) ?? 0) + 1);
59
- }
56
+ if (reference.name !== "<init>") continue;
57
+ const match = /L([^;]+);\)V$/.exec(reference.descriptor);
58
+ if (match && !match[1].startsWith("java/")) lastParams.set(match[1], (lastParams.get(match[1]) ?? 0) + 1);
60
59
  }
61
60
  for (const name of found) {
62
61
  const classFile = resolve(name);
@@ -65,10 +64,9 @@ function findPropsClasses(roots, remapClass, resolve) {
65
64
  }
66
65
  for (const known of ["net/minecraft/world/level/block/state/BlockBehaviour$Properties", "net/minecraft/world/level/block/Block$Properties"]) {
67
66
  const internal = remapClass(known);
68
- if (resolve(internal)) {
69
- found.add(internal);
70
- found.add(known);
71
- }
67
+ if (!resolve(internal)) continue;
68
+ found.add(internal);
69
+ found.add(known);
72
70
  }
73
71
  if (found.size === 0) {
74
72
  const commonest = [...lastParams].toSorted((left, right) => right[1] - left[1])[0];
@@ -344,10 +342,9 @@ async function collectBlockLight(options) {
344
342
  for (const [name, registration] of extraction.registrations) {
345
343
  if (name.includes(":") || registration.vanilla || listed.has(`${namespace}:${name}`)) continue;
346
344
  const answer = extraction.lightOf(`${namespace}:${name}`);
347
- if ("light" in answer && answer.light !== 0) {
348
- light[`${namespace}:${name}`] = answer.light;
349
- notes.push(`${namespace}:${name} emits but ships no blockstate; kept from its registration alone`);
350
- }
345
+ if (!("light" in answer) || answer.light === 0) continue;
346
+ light[`${namespace}:${name}`] = answer.light;
347
+ notes.push(`${namespace}:${name} emits but ships no blockstate; kept from its registration alone`);
351
348
  }
352
349
  }
353
350
  const behaviour = {};
@@ -364,13 +361,12 @@ async function collectBlockLight(options) {
364
361
  fluid: (method) => constantFluidOf(overrides, method),
365
362
  invisible: (method) => alwaysInvisible(overrides, method)
366
363
  }) : null;
367
- if (read) {
368
- behaviour[id] = read.behaviour;
369
- for (const reason of read.failures) behaviourFailures.push({
370
- id,
371
- reason
372
- });
373
- }
364
+ if (!read) continue;
365
+ behaviour[id] = read.behaviour;
366
+ for (const reason of read.failures) behaviourFailures.push({
367
+ id,
368
+ reason
369
+ });
374
370
  }
375
371
  return {
376
372
  light,
@@ -476,6 +472,7 @@ const VANILLA_LIGHT = {
476
472
  sculk_catalyst: 6,
477
473
  amethyst_cluster: 5,
478
474
  large_amethyst_bud: 4,
475
+ ice_crystal: 4,
479
476
  magma_block: 3,
480
477
  medium_amethyst_bud: 2,
481
478
  firefly_bush: 2,
@@ -1,5 +1,5 @@
1
- import { r as parseDescriptor } from "./model-bytecode-CXYAZ5dX.js";
2
- import { n as instructions } from "./entity-sizes-Dmr4w0vu.js";
1
+ import { r as parseDescriptor } from "./model-bytecode-Cp4LGfjI.js";
2
+ import { n as instructions } from "./entity-sizes-CC6-7DBz.js";
3
3
  import { n as statedMapColor } from "./block-behaviour-DVjqeSkv.js";
4
4
  //#region src/blocks/light-bytecode.ts
5
5
  /**
@@ -798,7 +798,7 @@ var Interpreter = class Interpreter {
798
798
  kind: "array",
799
799
  items: receiver.items.filter((item) => {
800
800
  const verdict = this.invokeLambda(args[0], [item]);
801
- return verdict?.kind === "number" ? verdict.value !== 0 : true;
801
+ return verdict?.kind !== "number" || verdict.value !== 0;
802
802
  })
803
803
  };
804
804
  if ([
@@ -901,7 +901,9 @@ var Interpreter = class Interpreter {
901
901
  return;
902
902
  }
903
903
  }
904
- const registered = returns.startsWith("L") && source.resolve(returns.slice(1, -1))?.superClass === "java/lang/Record" ? null : this.detectRegistration(args, `${remapped.owner}.${remapped.name}${remapped.descriptor}`);
904
+ const returnsRecord = returns.startsWith("L") && source.resolve(returns.slice(1, -1))?.superClass === "java/lang/Record";
905
+ const returnsProps = returns.startsWith("L") && this.isPropsType(returns.slice(1, -1));
906
+ const registered = returnsRecord || returnsProps ? null : this.detectRegistration(args, `${remapped.owner}.${remapped.name}${remapped.descriptor}`);
905
907
  if (registered) {
906
908
  this.push(returns === "V" ? null : returns.startsWith("L") ? {
907
909
  kind: "object",
@@ -979,7 +981,6 @@ var Interpreter = class Interpreter {
979
981
  return;
980
982
  }
981
983
  }
982
- const returnsProps = returns.startsWith("L") && this.isPropsType(returns.slice(1, -1));
983
984
  if (returnsProps && !hasReceiver && args.some((arg) => arg.kind === "object" && (arg.handle.isProps || arg.handle.props))) {
984
985
  this.push(this.opaqueResult(returns, args));
985
986
  return;
@@ -1,5 +1,5 @@
1
- import { n as BlockProperties } from "./blockstate-eval-BzznRcVY.js";
2
- import { j as BlockPackLight } from "./block-behaviour-D1qC9_cc.js";
1
+ import { n as BlockProperties } from "./blockstate-eval-C-ZSx78w.js";
2
+ import { j as BlockPackLight } from "./block-behaviour-D6NwU9bV.js";
3
3
  //#region src/blocks/light-eval.d.ts
4
4
  /**
5
5
  * The light a block emits in the given state, 0–15.
@@ -14,8 +14,8 @@ declare class DiffuseLightSource implements LightSource {
14
14
  declare function guiFrontLight(): LightSource;
15
15
  declare function guiSideLight(): LightSource;
16
16
  /**
17
- * Legacy single-direction light used by the tags the published corpus was rendered
18
- * with (v2.5.2 through v5.1.0): darkness = max(0, (dot(n, dir) + 1)/2 - baseLight),
17
+ * Legacy single-direction light used by renderchest tags v2.5.2 through v5.1.0
18
+ * (docs/renderchest-compat.md): darkness = max(0, (dot(n, dir) + 1)/2 - baseLight),
19
19
  * front light entirely inactive. Kept for golden-image comparison, not default output.
20
20
  */
21
21
  declare class LegacyLightSource implements LightSource {
@@ -31,8 +31,8 @@ function guiSideLight() {
31
31
  return new DiffuseLightSource(BASE_DIRECTION_0, BASE_DIRECTION_1, transform);
32
32
  }
33
33
  /**
34
- * Legacy single-direction light used by the tags the published corpus was rendered
35
- * with (v2.5.2 through v5.1.0): darkness = max(0, (dot(n, dir) + 1)/2 - baseLight),
34
+ * Legacy single-direction light used by renderchest tags v2.5.2 through v5.1.0
35
+ * (docs/renderchest-compat.md): darkness = max(0, (dot(n, dir) + 1)/2 - baseLight),
36
36
  * front light entirely inactive. Kept for golden-image comparison, not default output.
37
37
  */
38
38
  var LegacyLightSource = class {
@@ -1,4 +1,4 @@
1
- import { t as parseClassFile } from "./classfile-BJSs3JH0.js";
1
+ import { t as parseClassFile } from "./classfile-YGjbyMPk.js";
2
2
  //#region src/entities/link.ts
3
3
  /**
4
4
  * Which class holds a given entity's geometry.
@@ -168,10 +168,9 @@ function modelsNamedBy(file, mappings) {
168
168
  for (const [index, constant] of file.constants.entries()) {
169
169
  if (constant?.tag !== "class") continue;
170
170
  const original = mappings.originalOf.get(file.utf8(index).replaceAll("/", "."));
171
- if (original && /Model[A-Z]?$/.test(original) && /\.client\.(?:model|renderer)[.$]/.test(original)) {
172
- const simple = original.split(/[.$]/).pop() ?? "";
173
- if (!ABSTRACT_MODELS.has(simple)) found.add(original);
174
- }
171
+ if (!original || !/Model[A-Z]?$/.test(original) || !/\.client\.(?:model|renderer)[.$]/.test(original)) continue;
172
+ const simple = original.split(/[.$]/).pop() ?? "";
173
+ if (!ABSTRACT_MODELS.has(simple)) found.add(original);
175
174
  }
176
175
  return [...found];
177
176
  }
@@ -632,10 +632,9 @@ var ModelLoader = class {
632
632
  for (const [name, value] of Object.entries(json.textures ?? {})) textures[name] = typeof value === "object" && value !== null ? String(value.sprite ?? "") : value;
633
633
  Object.assign(display, json.display);
634
634
  if (json.gui_light !== void 0) guiLight = json.gui_light;
635
- if (json.elements !== void 0) {
636
- elements = normalizeElements(json.elements);
637
- elementsGuiLight = guiLight;
638
- }
635
+ if (json.elements === void 0) continue;
636
+ elements = normalizeElements(json.elements);
637
+ elementsGuiLight = guiLight;
639
638
  }
640
639
  let obj;
641
640
  for (const entry of chain) {
@@ -1,5 +1,5 @@
1
1
  import { n as ResourceLocator } from "./locator-jDbdUeTd.js";
2
- import { a as ResourceManager } from "./manager-Ct0dEOMg.js";
2
+ import { a as ResourceManager } from "./manager-Ey26G_3e.js";
3
3
  //#region src/textures/loader.d.ts
4
4
  /** Structural interface for atlas resolvers (avoids a circular module edge). */
5
5
  interface AtlasResolverLike {
@@ -1,6 +1,6 @@
1
1
  import { n as ResourceLocator } from "./locator-jDbdUeTd.js";
2
- import { a as ResourceManager } from "./manager-Ct0dEOMg.js";
3
- import { c as ModelJson, n as DisplayTransformJson, o as ModelElementJson, t as DisplayPosition } from "./types-qlp3I8_-.js";
2
+ import { a as ResourceManager } from "./manager-Ey26G_3e.js";
3
+ import { c as ModelJson, n as DisplayTransformJson, o as ModelElementJson, t as DisplayPosition } from "./types-BQQzfHEY.js";
4
4
  //#region src/models/loader.d.ts
5
5
  /**
6
6
  * A model with its parent chain flattened: textures merged child-over-parent,
@@ -69,7 +69,7 @@ const ResourceKind = {
69
69
  /**
70
70
  * Reads a resource pack laid out on disk. Accepts both layouts in the wild:
71
71
  * `<root>/assets/<ns>/…` (an extracted jar/pack) and `<root>/<ns>/…`
72
- * (what renderchest's --assets and the ui pipeline pass).
72
+ * (what renderchest's --assets takes).
73
73
  */
74
74
  var FolderResourceManager = class {
75
75
  /** What `root` was before the `assets/` layout was detected, so `data/` is reachable too. */
@@ -176,10 +176,9 @@ var LayeredResourceManager = class {
176
176
  const merged = [];
177
177
  for (const layer of this.layers) for (const locator of await layer.listResources(kind, namespace)) {
178
178
  const key = locator.toString();
179
- if (!seen.has(key)) {
180
- seen.add(key);
181
- merged.push(locator);
182
- }
179
+ if (seen.has(key)) continue;
180
+ seen.add(key);
181
+ merged.push(locator);
183
182
  }
184
183
  return merged;
185
184
  }
@@ -108,7 +108,7 @@ interface ResourceManager {
108
108
  /**
109
109
  * Reads a resource pack laid out on disk. Accepts both layouts in the wild:
110
110
  * `<root>/assets/<ns>/…` (an extracted jar/pack) and `<root>/<ns>/…`
111
- * (what renderchest's --assets and the ui pipeline pass).
111
+ * (what renderchest's --assets takes).
112
112
  */
113
113
  declare class FolderResourceManager implements ResourceManager {
114
114
  /** What `root` was before the `assets/` layout was detected, so `data/` is reachable too. */
@@ -1,4 +1,4 @@
1
- import { t as parseClassFile } from "./classfile-BJSs3JH0.js";
1
+ import { t as parseClassFile } from "./classfile-YGjbyMPk.js";
2
2
  import { a as mergeModels, r as cubesOf, t as buildsOwnMesh } from "./merge-DeHruviG.js";
3
3
  //#region src/entities/model-bytecode.ts
4
4
  /**
@@ -843,14 +843,13 @@ function extractModel(bytes, following) {
843
843
  const roots = shared.handles.filter((handle) => !adopted.has(handle) && !handle.consumed && (handle.cubes.length > 0 || handle.children.length > 0));
844
844
  if (roots.length === 0) continue;
845
845
  const orphans = roots.filter((root) => root.orphaned).length;
846
+ const modelNotes = [...shared.notes];
847
+ if (orphans > 0) modelNotes.push(`${orphans} disconnected roots: built for a parent in another class, so each sits at the model origin`);
848
+ if (shared.branched) modelNotes.push("a conditional was taken; the shape is one of the variants this builder makes");
846
849
  const model = {
847
850
  textureSize: shared.textureSize,
848
851
  parts: roots.map((root) => toPart(root)),
849
- notes: [
850
- ...shared.notes,
851
- ...orphans > 0 ? [`${orphans} disconnected roots: built for a parent in another class, so each sits at the model origin`] : [],
852
- ...shared.branched ? ["a conditional was taken; the shape is one of the variants this builder makes"] : []
853
- ]
852
+ notes: modelNotes
854
853
  };
855
854
  candidates.push({
856
855
  model,
@@ -1,4 +1,4 @@
1
- import { t as parseClassFile } from "./classfile-BJSs3JH0.js";
1
+ import { t as parseClassFile } from "./classfile-YGjbyMPk.js";
2
2
  import { t as readAhead } from "./read-ahead-BlSzTexs.js";
3
3
  //#region src/entities/model-code.ts
4
4
  /**
@@ -1,2 +1,2 @@
1
- import { a as resolveTexture, i as flattenLoaderModel, n as ModelResolutionError, o as salvageJson, r as ResolvedModel, t as ModelLoader } from "../loader-BYyPIs9f.js";
1
+ import { a as resolveTexture, i as flattenLoaderModel, n as ModelResolutionError, o as salvageJson, r as ResolvedModel, t as ModelLoader } from "../loader-mGAKSRp6.js";
2
2
  export { ModelLoader, ModelResolutionError, ResolvedModel, flattenLoaderModel, resolveTexture, salvageJson };
@@ -1,2 +1 @@
1
- import { a as salvageJson, i as resolveTexture, n as ModelResolutionError, r as flattenLoaderModel, t as ModelLoader } from "../loader-qOH0Jynq.js";
2
- export { ModelLoader, ModelResolutionError, flattenLoaderModel, resolveTexture, salvageJson };
1
+ export { t as ModelLoader, n as ModelResolutionError, r as flattenLoaderModel, i as resolveTexture, a as salvageJson } from "../loader-Ckhy0t8m.js";
@@ -1,2 +1,2 @@
1
- import { a as FaceDirectionName, c as ModelJson, i as FaceDirection, l as Vec3, n as DisplayTransformJson, o as ModelElementJson, r as ElementRotationJson, s as ModelFaceJson, t as DisplayPosition, u as Vec4 } from "../types-qlp3I8_-.js";
1
+ import { a as FaceDirectionName, c as ModelJson, i as FaceDirection, l as Vec3, n as DisplayTransformJson, o as ModelElementJson, r as ElementRotationJson, s as ModelFaceJson, t as DisplayPosition, u as Vec4 } from "../types-BQQzfHEY.js";
2
2
  export { DisplayPosition, DisplayTransformJson, ElementRotationJson, FaceDirection, FaceDirectionName, ModelElementJson, ModelFaceJson, ModelJson, Vec3, Vec4 };
@@ -1,5 +1,5 @@
1
1
  import { r as modModelPackPath } from "./builtin-WkWjATeh.js";
2
- import { t as FolderResourceManager } from "./manager-D6zXmFrO.js";
2
+ import { t as FolderResourceManager } from "./manager-B1VPl4UQ.js";
3
3
  //#region src/mods/models.ts
4
4
  /**
5
5
  * Geometry for mod items the game draws in code. A `builtin/entity` item model
@@ -1,5 +1,4 @@
1
- import { a as ResourceManager } from "../manager-Ct0dEOMg.js";
1
+ import { a as ResourceManager } from "../manager-Ey26G_3e.js";
2
2
  //#region src/mods/models.d.ts
3
- declare function curatedModelOverrides(): ResourceManager;
4
- //#endregion
5
- export { curatedModelOverrides };
3
+ export declare function curatedModelOverrides(): ResourceManager;
4
+ //#endregion
@@ -1,2 +1 @@
1
- import { t as curatedModelOverrides } from "../models-BsYA-NZg.js";
2
- export { curatedModelOverrides };
1
+ export { t as curatedModelOverrides } from "../models-CvFehP26.js";
@@ -1,2 +1,2 @@
1
- import { i as prepareModResources, n as ModPreparation, r as PrepareModsOptions, t as LOADER_NAMESPACES } from "../prepare-BPzsZI_S.js";
1
+ import { i as prepareModResources, n as ModPreparation, r as PrepareModsOptions, t as LOADER_NAMESPACES } from "../prepare-CZu44oTS.js";
2
2
  export { LOADER_NAMESPACES, ModPreparation, PrepareModsOptions, prepareModResources };
@@ -1,2 +1 @@
1
- import { n as prepareModResources, t as LOADER_NAMESPACES } from "../prepare-sj36BP90.js";
2
- export { LOADER_NAMESPACES, prepareModResources };
1
+ export { t as LOADER_NAMESPACES, n as prepareModResources } from "../prepare-DJnJQYtn.js";
@@ -1,10 +1,9 @@
1
- import { a as ResourceManager } from "../manager-Ct0dEOMg.js";
2
- import { n as MapResourceManager } from "../synthetic-CWtFtAkR.js";
1
+ import { a as ResourceManager } from "../manager-Ey26G_3e.js";
2
+ import { n as MapResourceManager } from "../synthetic-C8_0G5iP.js";
3
3
  //#region src/mods/synthesize.d.ts
4
- interface SynthesisResult {
4
+ export interface SynthesisResult {
5
5
  models: MapResourceManager;
6
6
  synthesized: number;
7
7
  }
8
- declare function synthesizeItemModels(resources: ResourceManager, namespace: string): Promise<SynthesisResult>;
9
- //#endregion
10
- export { SynthesisResult, synthesizeItemModels };
8
+ export declare function synthesizeItemModels(resources: ResourceManager, namespace: string): Promise<SynthesisResult>;
9
+ //#endregion
@@ -1,2 +1 @@
1
- import { t as synthesizeItemModels } from "../synthesize-jTjVjPAt.js";
2
- export { synthesizeItemModels };
1
+ export { t as synthesizeItemModels } from "../synthesize-DNvUwWhZ.js";