sapdon 2.0.2 → 2.1.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.
Files changed (283) hide show
  1. package/LICENSE +1 -1
  2. package/doc/BlockAPI.md +145 -0
  3. package/doc/api.md +1 -1
  4. package/doc/hello_sapdon/a9aad643f5609da73404d1f7f35fd5d0.png +0 -0
  5. package/doc/hello_sapdon/sapdon/344/275/277/347/224/250/346/225/231/347/250/213.md +159 -0
  6. package/examples/guidebook/build.config +33 -0
  7. package/examples/guidebook/dev/guidebook_BP/items/sapdon_test_guidebook.json +19 -0
  8. package/examples/{masterball/dev/masterball_BP/masterball_BP_1_20_20 → guidebook/dev/guidebook_BP}/manifest.json +63 -59
  9. package/examples/guidebook/dev/guidebook_BP/scripts/custom_components/cropComponent.js +50 -0
  10. package/examples/guidebook/dev/guidebook_BP/scripts/custom_components/items/gui_book.js +37 -0
  11. package/examples/guidebook/dev/guidebook_BP/scripts/custom_components/registry.js +20 -0
  12. package/examples/guidebook/dev/guidebook_BP/scripts/index.js +3 -0
  13. package/examples/guidebook/dev/guidebook_RP/blocks.json +3 -0
  14. package/examples/guidebook/dev/guidebook_RP/manifest.json +44 -0
  15. package/examples/guidebook/dev/guidebook_RP/models/blocks/crop.geo.json +48 -0
  16. package/examples/{masterball/dev/masterball_RP/masterball_RP_1_20_20.zip → guidebook/dev/guidebook_RP/pack_icon.png} +0 -0
  17. package/examples/guidebook/dev/guidebook_RP/textures/blocks/test_log_oak.png +0 -0
  18. package/examples/guidebook/dev/guidebook_RP/textures/blocks/test_log_top.png +0 -0
  19. package/examples/guidebook/dev/guidebook_RP/textures/flipbook_textures.json +1 -0
  20. package/examples/guidebook/dev/guidebook_RP/textures/item_texture.json +9 -0
  21. package/examples/guidebook/dev/guidebook_RP/textures/items/masterball.png +0 -0
  22. package/examples/guidebook/dev/guidebook_RP/textures/terrain_texture.json +14 -0
  23. package/examples/guidebook/dev/guidebook_RP/ui/_ui_defs.json +6 -0
  24. package/examples/guidebook/dev/guidebook_RP/ui/guidebook.json +581 -0
  25. package/examples/guidebook/dev/guidebook_RP/ui/server_form.json +91 -0
  26. package/examples/guidebook/main.mjs +66 -0
  27. package/examples/guidebook/mod.info +7 -0
  28. package/examples/{masterball/dev/masterball_BP/masterball_BP_1_20_20.zip → guidebook/pack_icon.png} +0 -0
  29. package/examples/guidebook/res/models/blocks/crop.geo.json +48 -0
  30. package/examples/guidebook/res/textures/blocks/test_log_oak.png +0 -0
  31. package/examples/guidebook/res/textures/blocks/test_log_top.png +0 -0
  32. package/examples/guidebook/res/textures/items/masterball.png +0 -0
  33. package/examples/guidebook/scripts/custom_components/cropComponent.js +50 -0
  34. package/examples/guidebook/scripts/custom_components/items/gui_book.js +37 -0
  35. package/examples/guidebook/scripts/custom_components/registry.js +20 -0
  36. package/examples/guidebook/scripts/index.js +3 -0
  37. package/examples/hello_sapdon/build.config +29 -0
  38. package/examples/hello_sapdon/main.mjs +3 -0
  39. package/examples/hello_sapdon/mod.info +7 -0
  40. package/examples/hello_sapdon/pack_icon.png +0 -0
  41. package/examples/hello_sapdon/res/models/blocks/crop.geo.json +48 -0
  42. package/examples/hello_sapdon/res/textures/blocks/test_log_oak.png +0 -0
  43. package/examples/hello_sapdon/res/textures/blocks/test_log_top.png +0 -0
  44. package/examples/hello_sapdon/res/textures/items/masterball.png +0 -0
  45. package/examples/hello_sapdon/scripts/custom_components/cropComponent.js +50 -0
  46. package/examples/hello_sapdon/scripts/custom_components/items/gui_book.js +37 -0
  47. package/examples/hello_sapdon/scripts/custom_components/registry.js +25 -0
  48. package/examples/hello_sapdon/scripts/index.js +0 -0
  49. package/examples/masterball/build.config +1 -0
  50. package/examples/masterball/dev/masterball_1_20_30.mcaddon +0 -0
  51. package/examples/masterball/dev/masterball_BP/entities/sapdon_projectile_masterball.json +56 -55
  52. package/examples/masterball/dev/masterball_BP/manifest.json +59 -59
  53. package/examples/masterball/dev/masterball_BP/pack_icon.png +0 -0
  54. package/examples/masterball/dev/masterball_BP/recipes/masterball.json +25 -0
  55. package/examples/masterball/dev/masterball_BP_1_20_30.mcpack +0 -0
  56. package/examples/masterball/dev/masterball_RP/attachables/sapdon_caught_masterball.json +19 -0
  57. package/examples/masterball/dev/masterball_RP/manifest.json +43 -43
  58. package/examples/masterball/dev/masterball_RP/pack_icon.png +0 -0
  59. package/examples/masterball/dev/masterball_RP/textures/flipbook_textures.json +1 -0
  60. package/examples/masterball/dev/masterball_RP/ui/_ui_defs.json +3 -0
  61. package/examples/masterball/dev/masterball_RP_1_20_30.mcpack +0 -0
  62. package/examples/masterball/main.mjs +18 -1
  63. package/examples/masterball/pack_icon.png +0 -0
  64. package/examples/mob_chest/build.config +29 -0
  65. package/examples/mob_chest/dev/mob_chest_BP/blocks/mob_chest_chest.json +56 -0
  66. package/examples/mob_chest/dev/mob_chest_BP/entities/mob_chest_chest_entity.json +79 -0
  67. package/examples/mob_chest/dev/mob_chest_BP/manifest.json +64 -0
  68. package/examples/mob_chest/dev/mob_chest_BP/pack_icon.png +0 -0
  69. package/examples/mob_chest/dev/mob_chest_BP/scripts/custom_components/block/block_with_entity.js +46 -0
  70. package/examples/mob_chest/dev/mob_chest_BP/scripts/custom_components/block/cropComponent.js +50 -0
  71. package/examples/mob_chest/dev/mob_chest_BP/scripts/custom_components/items/gui_book.js +37 -0
  72. package/examples/mob_chest/dev/mob_chest_BP/scripts/custom_components/registry.js +25 -0
  73. package/examples/mob_chest/dev/mob_chest_BP/scripts/index.js +4 -0
  74. package/examples/mob_chest/dev/mob_chest_RP/animation_controllers/mob_chest.animation_controllers.json +30 -0
  75. package/examples/mob_chest/dev/mob_chest_RP/animations/animation_item.animation.json +34 -0
  76. package/examples/mob_chest/dev/mob_chest_RP/animations/large_item.animation.json +27 -0
  77. package/examples/mob_chest/dev/mob_chest_RP/animations/mob_chest.animation.json +64 -0
  78. package/examples/mob_chest/dev/mob_chest_RP/blocks.json +13 -0
  79. package/examples/mob_chest/dev/mob_chest_RP/entity/mob_chest_chest_entity.json +32 -0
  80. package/examples/mob_chest/dev/mob_chest_RP/manifest.json +44 -0
  81. package/examples/mob_chest/dev/mob_chest_RP/models/blocks/crop.geo.json +48 -0
  82. package/examples/mob_chest/dev/mob_chest_RP/models/blocks/cube.geo.json +35 -0
  83. package/examples/mob_chest/dev/mob_chest_RP/models/blocks/empty.geo.json +35 -0
  84. package/examples/mob_chest/dev/mob_chest_RP/models/entity/mob_chest.geo.json +98 -0
  85. package/examples/mob_chest/dev/mob_chest_RP/pack_icon.png +0 -0
  86. package/examples/mob_chest/dev/mob_chest_RP/textures/blocks/entity/double_normal.png +0 -0
  87. package/examples/mob_chest/dev/mob_chest_RP/textures/blocks/entity/none.png +0 -0
  88. package/examples/mob_chest/dev/mob_chest_RP/textures/blocks/entity/normal.png +0 -0
  89. package/examples/mob_chest/dev/mob_chest_RP/textures/blocks/test_log_oak.png +0 -0
  90. package/examples/mob_chest/dev/mob_chest_RP/textures/blocks/test_log_top.png +0 -0
  91. package/examples/mob_chest/dev/mob_chest_RP/textures/flipbook_textures.json +1 -0
  92. package/examples/mob_chest/dev/mob_chest_RP/textures/item_texture.json +9 -0
  93. package/examples/mob_chest/dev/mob_chest_RP/textures/items/masterball.png +0 -0
  94. package/examples/mob_chest/dev/mob_chest_RP/textures/terrain_texture.json +23 -0
  95. package/examples/mob_chest/dev/mob_chest_RP/ui/_ui_defs.json +3 -0
  96. package/examples/mob_chest/main.mjs +31 -0
  97. package/examples/mob_chest/mod.info +7 -0
  98. package/examples/mob_chest/pack_icon.png +0 -0
  99. package/examples/mob_chest/res/animation_controllers/mob_chest.animation_controllers.json +30 -0
  100. package/examples/mob_chest/res/animations/animation_item.animation.json +34 -0
  101. package/examples/mob_chest/res/animations/large_item.animation.json +27 -0
  102. package/examples/mob_chest/res/animations/mob_chest.animation.json +64 -0
  103. package/examples/mob_chest/res/models/blocks/crop.geo.json +48 -0
  104. package/examples/mob_chest/res/models/blocks/cube.geo.json +35 -0
  105. package/examples/mob_chest/res/models/blocks/empty.geo.json +35 -0
  106. package/examples/mob_chest/res/models/entity/mob_chest.geo.json +98 -0
  107. package/examples/mob_chest/res/textures/blocks/entity/double_normal.png +0 -0
  108. package/examples/mob_chest/res/textures/blocks/entity/none.png +0 -0
  109. package/examples/mob_chest/res/textures/blocks/entity/normal.png +0 -0
  110. package/examples/mob_chest/res/textures/blocks/test_log_oak.png +0 -0
  111. package/examples/mob_chest/res/textures/blocks/test_log_top.png +0 -0
  112. package/examples/mob_chest/res/textures/items/masterball.png +0 -0
  113. package/examples/mob_chest/resource/cube.bbmodel +1 -0
  114. package/examples/mob_chest/resource/flipbook_item.bbmodel +1 -0
  115. package/examples/mob_chest/resource/flipbook_item.geo.bbmodel +1 -0
  116. package/examples/mob_chest/resource/flipbook_item.geo.json +3124 -0
  117. package/examples/mob_chest/resource/mob_chest.bbmodel +1 -0
  118. package/examples/mob_chest/scripts/custom_components/block/block_with_entity.js +46 -0
  119. package/examples/mob_chest/scripts/custom_components/block/cropComponent.js +50 -0
  120. package/examples/mob_chest/scripts/custom_components/items/gui_book.js +37 -0
  121. package/examples/mob_chest/scripts/custom_components/registry.js +25 -0
  122. package/examples/mob_chest/scripts/index.js +4 -0
  123. package/examples/test/build.config +29 -0
  124. package/examples/test/dev/test_BP/blocks/sapdon_ore_cinnabar.json +15 -15
  125. package/examples/test/dev/test_BP/blocks/sapdon_test_block.json +15 -15
  126. package/examples/test/dev/test_BP/blocks/sapdon_test_crop.json +191 -191
  127. package/examples/test/dev/test_BP/blocks/sapdon_wire.json +102 -102
  128. package/examples/test/dev/test_BP/entities/sapdon_test_projectile.json +56 -55
  129. package/examples/test/dev/test_BP/feature_rules/ore_cinnabar_orefeatre_rule.json +52 -52
  130. package/examples/test/dev/test_BP/feature_rules/overworld_underground_titanite_ore_feature.json +52 -52
  131. package/examples/test/dev/test_BP/features/ore_cinnabar_ore_feature.json +16 -16
  132. package/examples/test/dev/test_BP/features/titanite_ore_feature.json +22 -22
  133. package/examples/test/dev/test_BP/items/sapdon_chest.json +22 -22
  134. package/examples/test/dev/test_BP/items/sapdon_test_book.json +19 -0
  135. package/examples/test/dev/test_BP/items/sapdon_test_food.json +25 -25
  136. package/examples/test/dev/test_BP/items/sapdon_test_item.json +30 -30
  137. package/examples/test/dev/test_BP/manifest.json +63 -59
  138. package/examples/test/dev/test_BP/recipes/sapdon_test_furnace.json +12 -12
  139. package/examples/test/dev/test_BP/scripts/custom_components/cropComponent.js +1 -10
  140. package/examples/test/dev/test_BP/scripts/custom_components/items/gui_book.js +37 -0
  141. package/examples/test/dev/test_BP/scripts/custom_components/registry.js +20 -0
  142. package/examples/test/dev/test_BP/scripts/index.js +4 -3
  143. package/examples/test/dev/test_RP/attachables/sapdon_chest.json +24 -24
  144. package/examples/test/dev/test_RP/blocks.json +42 -42
  145. package/examples/test/dev/test_RP/entity/sapdon_test_projectile.json +27 -27
  146. package/examples/test/dev/test_RP/manifest.json +43 -43
  147. package/examples/test/dev/test_RP/models/blocks/arcane_workbench.geo.json +105 -105
  148. package/examples/test/dev/test_RP/models/blocks/jar_normal.geo.json +46 -46
  149. package/examples/test/dev/test_RP/models/blocks/jar_normal_0.geo.json +58 -58
  150. package/examples/test/dev/test_RP/models/blocks/jar_normal_1.geo.json +58 -58
  151. package/examples/test/dev/test_RP/models/blocks/jar_normal_2.geo.json +58 -58
  152. package/examples/test/dev/test_RP/models/blocks/jar_normal_3.geo.json +58 -58
  153. package/examples/test/dev/test_RP/models/blocks/wire.geo.json +153 -153
  154. package/examples/test/dev/test_RP/textures/item_texture.json +788 -788
  155. package/examples/test/dev/test_RP/textures/items/seals/seal_breaker.png.mcmeta +5 -5
  156. package/examples/test/dev/test_RP/textures/items/seals/seal_butcher.png.mcmeta +5 -5
  157. package/examples/test/dev/test_RP/textures/items/seals/seal_empty.png.mcmeta +5 -5
  158. package/examples/test/dev/test_RP/textures/items/seals/seal_empty_advanced.png.mcmeta +5 -5
  159. package/examples/test/dev/test_RP/textures/items/seals/seal_fill.png.mcmeta +5 -5
  160. package/examples/test/dev/test_RP/textures/items/seals/seal_fill_advanced.png.mcmeta +5 -5
  161. package/examples/test/dev/test_RP/textures/items/seals/seal_guard.png.mcmeta +5 -5
  162. package/examples/test/dev/test_RP/textures/items/seals/seal_guard_advanced.png.mcmeta +5 -5
  163. package/examples/test/dev/test_RP/textures/items/seals/seal_harvest.png.mcmeta +5 -5
  164. package/examples/test/dev/test_RP/textures/items/seals/seal_lumber.png.mcmeta +5 -5
  165. package/examples/test/dev/test_RP/textures/items/seals/seal_pickup.png.mcmeta +5 -5
  166. package/examples/test/dev/test_RP/textures/items/seals/seal_pickup_advanced.png.mcmeta +5 -5
  167. package/examples/test/dev/test_RP/textures/items/seals/seal_provider.png.mcmeta +5 -5
  168. package/examples/test/dev/test_RP/textures/items/seals/seal_use.png.mcmeta +5 -5
  169. package/examples/test/dev/test_RP/textures/items/wand/cap_thaumium.png.mcmeta +11 -11
  170. package/examples/test/dev/test_RP/textures/items/wand/cap_void.png.mcmeta +11 -11
  171. package/examples/test/dev/test_RP/textures/items/wand/focus_pech.png.mcmeta +2 -2
  172. package/examples/test/dev/test_RP/textures/items/wand/focus_portablehole.png.mcmeta +2 -2
  173. package/examples/test/dev/test_RP/textures/items/wand/focus_primal.png.mcmeta +2 -2
  174. package/examples/test/dev/test_RP/textures/items/wand/focus_shard.png.mcmeta +2 -2
  175. package/examples/test/dev/test_RP/textures/items/wand/focus_warding.png.mcmeta +2 -2
  176. package/examples/test/dev/test_RP/textures/items/wand/rod_primal_mat.png.mcmeta +44 -44
  177. package/examples/test/dev/test_RP/textures/terrain_texture.json +136 -136
  178. package/examples/test/dev/test_RP/ui/_ui_defs.json +6 -0
  179. package/examples/test/dev/test_RP/ui/guidebook.json +446 -0
  180. package/examples/test/dev/test_RP/ui/server_form.json +91 -0
  181. package/examples/test/main.mjs +46 -1
  182. package/examples/test/res/models/blocks/arcane_workbench.geo.json +105 -105
  183. package/examples/test/res/models/blocks/jar_normal.geo.json +46 -46
  184. package/examples/test/res/models/blocks/jar_normal_0.geo.json +58 -58
  185. package/examples/test/res/models/blocks/jar_normal_1.geo.json +58 -58
  186. package/examples/test/res/models/blocks/jar_normal_2.geo.json +58 -58
  187. package/examples/test/res/models/blocks/jar_normal_3.geo.json +58 -58
  188. package/examples/test/res/models/blocks/wire.geo.json +153 -153
  189. package/examples/test/res/textures/items/seals/seal_breaker.png.mcmeta +5 -5
  190. package/examples/test/res/textures/items/seals/seal_butcher.png.mcmeta +5 -5
  191. package/examples/test/res/textures/items/seals/seal_empty.png.mcmeta +5 -5
  192. package/examples/test/res/textures/items/seals/seal_empty_advanced.png.mcmeta +5 -5
  193. package/examples/test/res/textures/items/seals/seal_fill.png.mcmeta +5 -5
  194. package/examples/test/res/textures/items/seals/seal_fill_advanced.png.mcmeta +5 -5
  195. package/examples/test/res/textures/items/seals/seal_guard.png.mcmeta +5 -5
  196. package/examples/test/res/textures/items/seals/seal_guard_advanced.png.mcmeta +5 -5
  197. package/examples/test/res/textures/items/seals/seal_harvest.png.mcmeta +5 -5
  198. package/examples/test/res/textures/items/seals/seal_lumber.png.mcmeta +5 -5
  199. package/examples/test/res/textures/items/seals/seal_pickup.png.mcmeta +5 -5
  200. package/examples/test/res/textures/items/seals/seal_pickup_advanced.png.mcmeta +5 -5
  201. package/examples/test/res/textures/items/seals/seal_provider.png.mcmeta +5 -5
  202. package/examples/test/res/textures/items/seals/seal_use.png.mcmeta +5 -5
  203. package/examples/test/res/textures/items/wand/cap_thaumium.png.mcmeta +11 -11
  204. package/examples/test/res/textures/items/wand/cap_void.png.mcmeta +11 -11
  205. package/examples/test/res/textures/items/wand/focus_pech.png.mcmeta +2 -2
  206. package/examples/test/res/textures/items/wand/focus_portablehole.png.mcmeta +2 -2
  207. package/examples/test/res/textures/items/wand/focus_primal.png.mcmeta +2 -2
  208. package/examples/test/res/textures/items/wand/focus_shard.png.mcmeta +2 -2
  209. package/examples/test/res/textures/items/wand/focus_warding.png.mcmeta +2 -2
  210. package/examples/test/res/textures/items/wand/rod_primal_mat.png.mcmeta +44 -44
  211. package/examples/test/scripts/custom_components/cropComponent.js +1 -10
  212. package/examples/test/scripts/custom_components/items/gui_book.js +37 -0
  213. package/examples/test/scripts/custom_components/registry.js +20 -0
  214. package/examples/test/scripts/index.js +4 -3
  215. package/log.md +8 -0
  216. package/package.json +4 -1
  217. package/src/cli/build.js +210 -210
  218. package/src/cli/load.js +116 -112
  219. package/src/cli/tools/textureSet.js +114 -114
  220. package/src/cli/utils.js +82 -82
  221. package/src/core/addon/controllers/animation_controller.js +80 -0
  222. package/src/core/addon/entity/entity.js +52 -51
  223. package/src/core/block/GeometryBlock.js +8 -0
  224. package/src/core/block/OreBlock.js +1 -0
  225. package/src/core/block/TileBlock.js +117 -0
  226. package/src/core/block/block.js +106 -106
  227. package/src/core/block/blockComponent.js +557 -557
  228. package/src/core/block/cropBlock.js +1 -1
  229. package/src/core/entity/BasicEntity.js +195 -166
  230. package/src/core/entity/bundles/BasicBundle.js +51 -0
  231. package/src/core/factory/BlockFactory.js +166 -158
  232. package/src/core/factory/EntityFactory.js +82 -82
  233. package/src/core/factory/ItemFactory.js +120 -95
  234. package/src/core/factory/RecipeFactory.js +46 -46
  235. package/src/core/index.js +2 -1
  236. package/src/core/item/Item.js +96 -96
  237. package/src/core/item/ItemComponents.js +251 -235
  238. package/src/core/item/armor.js +117 -89
  239. package/src/core/item/attachable.js +33 -33
  240. package/src/core/item/food.js +61 -61
  241. package/src/core/registry.js +16 -16
  242. package/src/core/ui/Properties/{Grid.js → GridProp.js} +2 -2
  243. package/src/core/ui/Properties/Sound.js +72 -0
  244. package/src/core/ui/elements/Button.js +111 -0
  245. package/src/core/ui/elements/CollectionPanel.js +61 -0
  246. package/src/core/ui/elements/Grid.js +24 -0
  247. package/src/core/ui/elements/Image.js +4 -0
  248. package/src/core/ui/elements/Label.js +10 -2
  249. package/src/core/ui/elements/Panel.js +7 -0
  250. package/src/core/ui/elements/ScrollingPanel.js +68 -0
  251. package/src/core/ui/elements/StackPanel.js +40 -0
  252. package/src/core/ui/elements/UIElement.js +43 -2
  253. package/src/core/ui/registry/UISystemRegistry.js +35 -0
  254. package/src/core/ui/systems/UISystem.js +9 -5
  255. package/src/core/ui/systems/guidebook.js +299 -0
  256. package/src/core/ui/systems/server_form.js +94 -83
  257. package/src/templates/test_sapdon/build.config +28 -28
  258. package/src/templates/test_sapdon/res/animations/animation_item.animation.json +34 -0
  259. package/src/templates/test_sapdon/res/animations/large_item.animation.json +27 -0
  260. package/src/templates/test_sapdon/res/models/entity/animation/animation_item.geo.json +26 -0
  261. package/src/templates/test_sapdon/res/models/entity/animation/large_item.geo.json +28 -0
  262. package/src/templates/test_sapdon/res/textures/blocks/none.png +0 -0
  263. package/src/templates/test_sapdon/scripts/custom_components/cropComponent.js +50 -0
  264. package/src/templates/test_sapdon/scripts/custom_components/items/gui_book.js +37 -0
  265. package/src/templates/test_sapdon/scripts/custom_components/registry.js +25 -0
  266. package/examples/masterball/dev/masterball[1.20.20+].mcaddon.zip +0 -0
  267. package/examples/masterball/dev/masterball_BP/masterball_BP_1_20_20/entities/sapdon_projectile_masterball.json +0 -56
  268. package/examples/masterball/dev/masterball_BP/masterball_BP_1_20_20/items/sapdon_caught_masterball.json +0 -32
  269. package/examples/masterball/dev/masterball_BP/masterball_BP_1_20_20/items/sapdon_uncaught_masterball.json +0 -31
  270. package/examples/masterball/dev/masterball_BP/masterball_BP_1_20_20/scripts/index.js +0 -159
  271. package/examples/test/dev/test_BP/biomes/test_biome.json +0 -48
  272. package/examples/test/dev/test_BP/blocks/sapdon_block.json +0 -111
  273. package/examples/test/dev/test_BP/entities/sapdon_body.json +0 -118
  274. package/examples/test/dev/test_BP/entities/sapdon_test_entity_ctrl1.json +0 -55
  275. package/examples/test/dev/test_BP/entities/sapdon_test_entity_ctrl2.json +0 -61
  276. package/examples/test/dev/test_BP/entities/sapdon_test_entity_header.json +0 -408
  277. package/examples/test/dev/test_RP/entity/sapdon_body.json +0 -44
  278. package/examples/test/dev/test_RP/entity/sapdon_test_entity_ctrl1.json +0 -38
  279. package/examples/test/dev/test_RP/entity/sapdon_test_entity_ctrl2.json +0 -38
  280. package/examples/test/dev/test_RP/entity/sapdon_test_entity_header.json +0 -44
  281. package/src/cli/build.config +0 -4
  282. package/src/core/ui/registry/ServerUISystem.js +0 -19
  283. /package/examples/{masterball/dev/masterball_BP/masterball_BP_1_20_20 → guidebook/dev/guidebook_BP}/pack_icon.png +0 -0
@@ -0,0 +1,48 @@
1
+ {
2
+ "format_version": "1.21.20",
3
+ "minecraft:geometry": [
4
+ {
5
+ "description": {
6
+ "identifier": "geometry.crop",
7
+ "texture_width": 16,
8
+ "texture_height": 16
9
+ },
10
+ "bones": [
11
+ {
12
+ "name": "crop",
13
+ "pivot": [0, 0, 0],
14
+ "cubes": [
15
+ {
16
+ "origin": [-8, -1, -4],
17
+ "size": [16, 16, 0],
18
+ "uv": {
19
+ "south": { "uv": [0, 0], "uv_size": [16, 16] }
20
+ }
21
+ },
22
+ {
23
+ "origin": [-8, -1, 4],
24
+ "size": [16, 16, 0],
25
+ "uv": {
26
+ "north": { "uv": [0, 0], "uv_size": [16, 16] }
27
+ }
28
+ },
29
+ {
30
+ "origin": [4, -1, -8],
31
+ "size": [0, 16, 16],
32
+ "uv": {
33
+ "east": { "uv": [16, 0], "uv_size": [-16, 16] }
34
+ }
35
+ },
36
+ {
37
+ "origin": [-4, -1, -8],
38
+ "size": [0, 16, 16],
39
+ "uv": {
40
+ "west": { "uv": [16, 0], "uv_size": [-16, 16] }
41
+ }
42
+ }
43
+ ]
44
+ }
45
+ ]
46
+ }
47
+ ]
48
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "resource_pack_name": "guidebook",
3
+ "texture_name": "atlas.items",
4
+ "texture_data": {
5
+ "masterball": {
6
+ "textures": "textures/items/masterball"
7
+ }
8
+ }
9
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "texture_name": "atlas.terrain",
3
+ "resource_pack_name": "guidebook",
4
+ "padding": 8,
5
+ "num_mip_levels": 4,
6
+ "texture_data": {
7
+ "test_log_oak": {
8
+ "textures": "textures/blocks/test_log_oak"
9
+ },
10
+ "test_log_top": {
11
+ "textures": "textures/blocks/test_log_top"
12
+ }
13
+ }
14
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "ui_defs": [
3
+ "ui/server_form.json",
4
+ "ui/guidebook.json"
5
+ ]
6
+ }
@@ -0,0 +1,581 @@
1
+ {
2
+ "namespace": "sapdon_guidebook",
3
+ "form_button_template@common.button": {
4
+ "type": "button",
5
+ "bindings": [
6
+ {
7
+ "binding_type": "collection_details",
8
+ "binding_collection_name": "form_buttons"
9
+ },
10
+ {
11
+ "binding_type": "collection",
12
+ "binding_collection_name": "form_buttons",
13
+ "binding_name": "#form_button_text"
14
+ },
15
+ {
16
+ "binding_type": "view",
17
+ "source_property_name": "($binding_button_text = #form_button_text)",
18
+ "target_property_name": "#visible"
19
+ }
20
+ ],
21
+ "controls": [
22
+ {
23
+ "default": {
24
+ "type": "image",
25
+ "texture": "$default_texture"
26
+ }
27
+ },
28
+ {
29
+ "hover": {
30
+ "type": "image",
31
+ "texture": "$hover_texture"
32
+ }
33
+ },
34
+ {
35
+ "pressed": {
36
+ "type": "image",
37
+ "texture": "$pressed_texture"
38
+ }
39
+ }
40
+ ],
41
+ "$default_texture|default": "",
42
+ "$hover_texture|default": "",
43
+ "$pressed_texture|default": "",
44
+ "$binding_button_text|default": ""
45
+ },
46
+ "form_button_factory": {
47
+ "type": "collection_panel",
48
+ "collection_name": "form_buttons",
49
+ "bindings": [
50
+ {
51
+ "binding_name": "#form_button_length",
52
+ "binding_name_override": "#collection_length"
53
+ }
54
+ ],
55
+ "factory": {
56
+ "name": "buttons",
57
+ "control_name": "$button_control"
58
+ },
59
+ "controls": [
60
+ {
61
+ "debug_board": {
62
+ "type": "image",
63
+ "texture": "textures/ui/focus_border_white",
64
+ "nineslice_size": 1,
65
+ "size": [
66
+ "100%",
67
+ "100%"
68
+ ]
69
+ }
70
+ }
71
+ ]
72
+ },
73
+ "page_template": {
74
+ "type": "stack_panel",
75
+ "orientation": "horizontal",
76
+ "size": [
77
+ "90%",
78
+ "90%"
79
+ ],
80
+ "bindings": [
81
+ {
82
+ "binding_type": "view",
83
+ "source_property_name": "($binding_text = #form_text)",
84
+ "target_property_name": "#visible"
85
+ }
86
+ ],
87
+ "controls": [
88
+ {
89
+ "stack0": {
90
+ "type": "panel",
91
+ "size": [
92
+ "50%",
93
+ "100%"
94
+ ],
95
+ "controls": [
96
+ {
97
+ "page_left@$page_left_content": {}
98
+ }
99
+ ]
100
+ }
101
+ },
102
+ {
103
+ "stack1": {
104
+ "type": "panel",
105
+ "size": [
106
+ "50%",
107
+ "100%"
108
+ ],
109
+ "controls": [
110
+ {
111
+ "page_right@$page_right_content": {}
112
+ }
113
+ ]
114
+ }
115
+ }
116
+ ],
117
+ "$page_left_content | default": "",
118
+ "$page_right_content | default": ""
119
+ },
120
+ "guidebook_root_panel": {
121
+ "type": "panel",
122
+ "size": [
123
+ 320,
124
+ 207
125
+ ],
126
+ "controls": [
127
+ {
128
+ "book_background@book.book_background": {}
129
+ },
130
+ {
131
+ "book_page_stack_panel": {
132
+ "type": "stack_panel",
133
+ "orientation": "horizontal",
134
+ "size": [
135
+ 320,
136
+ 207
137
+ ],
138
+ "controls": [
139
+ {
140
+ "stack0": {
141
+ "type": "panel",
142
+ "size": "$page_size",
143
+ "controls": [
144
+ {
145
+ "book_left_panel": {
146
+ "type": "panel",
147
+ "controls": [
148
+ {
149
+ "page_crease_image@book.page_crease_left_image": {
150
+ "size": [
151
+ "100% - 40px",
152
+ "100% - 14px"
153
+ ],
154
+ "offset": [
155
+ 0,
156
+ -2
157
+ ]
158
+ }
159
+ },
160
+ {
161
+ "page_edge_image@book.page_edge_left_image": {
162
+ "size": [
163
+ "100% - 7px",
164
+ "100% - 16px"
165
+ ],
166
+ "offset": [
167
+ 7,
168
+ -1
169
+ ]
170
+ }
171
+ }
172
+ ]
173
+ }
174
+ }
175
+ ]
176
+ }
177
+ },
178
+ {
179
+ "stack1": {
180
+ "type": "panel",
181
+ "size": "$page_size",
182
+ "controls": [
183
+ {
184
+ "book_right_panel": {
185
+ "type": "panel",
186
+ "controls": [
187
+ {
188
+ "page_crease_image@book.page_crease_right_image": {
189
+ "size": [
190
+ "100% - 40px",
191
+ "100% - 14px"
192
+ ],
193
+ "offset": [
194
+ 0,
195
+ -2
196
+ ]
197
+ }
198
+ },
199
+ {
200
+ "page_edge_image@book.page_edge_right_image": {
201
+ "size": [
202
+ "100% - 7px",
203
+ "100% - 16px"
204
+ ],
205
+ "offset": [
206
+ -7,
207
+ -1
208
+ ]
209
+ }
210
+ }
211
+ ]
212
+ }
213
+ }
214
+ ]
215
+ }
216
+ }
217
+ ],
218
+ "$page_size": [
219
+ 160,
220
+ 207
221
+ ]
222
+ }
223
+ },
224
+ {
225
+ "page_content_root": {
226
+ "type": "panel",
227
+ "size": [
228
+ "90%",
229
+ "90%"
230
+ ],
231
+ "layer": 5,
232
+ "controls": [
233
+ {
234
+ "label_text_panel": {
235
+ "type": "panel",
236
+ "size": [
237
+ 32,
238
+ 8
239
+ ],
240
+ "anchor_from": "bottom_middle",
241
+ "anchor_to": "bottom_middle",
242
+ "controls": [
243
+ {
244
+ "page_content": {
245
+ "type": "label",
246
+ "text": "#form_text",
247
+ "color": [
248
+ 0,
249
+ 0,
250
+ 0
251
+ ]
252
+ }
253
+ }
254
+ ]
255
+ }
256
+ },
257
+ {
258
+ "page_index_0@page_template": {
259
+ "$binding_text": "page_index0",
260
+ "$page_left_content": "none",
261
+ "$page_right_content": "directory"
262
+ }
263
+ },
264
+ {
265
+ "page_index_1@page_template": {
266
+ "$binding_text": "page_index1",
267
+ "$page_left_content": "page_left_content1",
268
+ "$page_right_content": "right_content1"
269
+ }
270
+ },
271
+ {
272
+ "page_index_2@page_template": {
273
+ "$binding_text": "page_index2",
274
+ "$page_left_content": "right_content2",
275
+ "$page_right_content": "page_left_content2"
276
+ }
277
+ }
278
+ ]
279
+ }
280
+ },
281
+ {
282
+ "close_button": {
283
+ "type": "button",
284
+ "size": [
285
+ 14,
286
+ 14
287
+ ],
288
+ "anchor_from": "top_right",
289
+ "anchor_to": "top_right",
290
+ "button_mappings": [
291
+ {
292
+ "ignored": false,
293
+ "from_button_id": "button.menu_select",
294
+ "to_button_id": "button.menu_exit",
295
+ "mapping_type": "pressed",
296
+ "scope": null,
297
+ "input_mode_condition": null,
298
+ "ignore_input_scope": false,
299
+ "consume_event": false,
300
+ "handle_select": false,
301
+ "handle_deselect": false,
302
+ "button_up_right_of_first_refusal": false
303
+ }
304
+ ],
305
+ "controls": [
306
+ {
307
+ "default@book.close_button_default": {}
308
+ },
309
+ {
310
+ "hover@book.close_button_hover": {}
311
+ },
312
+ {
313
+ "pressed@book.close_button_pressed": {}
314
+ }
315
+ ]
316
+ }
317
+ },
318
+ {
319
+ "prev_button_panel": {
320
+ "type": "panel",
321
+ "size": [
322
+ 24,
323
+ 24
324
+ ],
325
+ "offset": [
326
+ 7,
327
+ -9
328
+ ],
329
+ "anchor_from": "bottom_left",
330
+ "anchor_to": "bottom_left",
331
+ "layer": 5,
332
+ "controls": [
333
+ {
334
+ "prev_button@form_button_factory": {
335
+ "$binding_button_text": "test1",
336
+ "$button_control": "sapdon_guidebook.form_button_template",
337
+ "$pressed_button_name": "button.form_button_click",
338
+ "$default_texture": "textures/ui/book_pageleft_default",
339
+ "$hover_texture": "textures/ui/book_pageleft_hover",
340
+ "$pressed_texture": "textures/ui/book_pageleft_pressed"
341
+ }
342
+ }
343
+ ]
344
+ }
345
+ },
346
+ {
347
+ "next_button_panel": {
348
+ "type": "panel",
349
+ "size": [
350
+ 24,
351
+ 24
352
+ ],
353
+ "offset": [
354
+ -7,
355
+ -9
356
+ ],
357
+ "anchor_from": "bottom_right",
358
+ "anchor_to": "bottom_right",
359
+ "layer": 5,
360
+ "controls": [
361
+ {
362
+ "next_button@form_button_factory": {
363
+ "$binding_button_text": "test2",
364
+ "$button_control": "sapdon_guidebook.form_button_template",
365
+ "$pressed_button_name": "button.form_button_click",
366
+ "$default_texture": "textures/ui/book_pageright_default",
367
+ "$hover_texture": "textures/ui/book_pageright_hover",
368
+ "$pressed_texture": "textures/ui/book_pageright_pressed"
369
+ }
370
+ }
371
+ ]
372
+ }
373
+ }
374
+ ]
375
+ },
376
+ "none": {
377
+ "type": "panel"
378
+ },
379
+ "directory": {
380
+ "type": "stack_panel",
381
+ "orientation": "vertical",
382
+ "size": [
383
+ "100%",
384
+ "100%"
385
+ ],
386
+ "controls": [
387
+ {
388
+ "stack0": {
389
+ "type": "panel",
390
+ "size": [
391
+ "100%",
392
+ "10%"
393
+ ],
394
+ "controls": [
395
+ {
396
+ "book_name@how_to_play_common.header": {
397
+ "$text": "通用手册"
398
+ }
399
+ }
400
+ ]
401
+ }
402
+ },
403
+ {
404
+ "stack1": {
405
+ "type": "panel",
406
+ "size": [
407
+ "100%",
408
+ "10%"
409
+ ],
410
+ "controls": [
411
+ {
412
+ "title_content": {
413
+ "type": "label",
414
+ "color": [
415
+ 0,
416
+ 0,
417
+ 0
418
+ ],
419
+ "text": "目录"
420
+ }
421
+ }
422
+ ]
423
+ }
424
+ },
425
+ {
426
+ "stack2": {
427
+ "type": "panel",
428
+ "size": [
429
+ "100%",
430
+ "20%"
431
+ ],
432
+ "controls": [
433
+ {
434
+ "item0": {
435
+ "type": "stack_panel",
436
+ "orientation": "horizontal",
437
+ "size": [
438
+ "100%",
439
+ "100%"
440
+ ],
441
+ "controls": [
442
+ {
443
+ "stack0": {
444
+ "type": "panel",
445
+ "size": [
446
+ "20%",
447
+ "100%"
448
+ ],
449
+ "controls": [
450
+ {
451
+ "icon0": {
452
+ "type": "image",
453
+ "texture": "textures/items/diamond"
454
+ }
455
+ }
456
+ ]
457
+ }
458
+ },
459
+ {
460
+ "stack1": {
461
+ "type": "panel",
462
+ "size": [
463
+ "80%",
464
+ "100%"
465
+ ],
466
+ "controls": [
467
+ {
468
+ "label0": {
469
+ "type": "label",
470
+ "color": [
471
+ 0,
472
+ 0,
473
+ 0
474
+ ],
475
+ "text": "介绍"
476
+ }
477
+ }
478
+ ]
479
+ }
480
+ }
481
+ ]
482
+ }
483
+ }
484
+ ]
485
+ }
486
+ },
487
+ {
488
+ "stack3": {
489
+ "type": "panel",
490
+ "size": [
491
+ "100%",
492
+ "20%"
493
+ ],
494
+ "controls": [
495
+ {
496
+ "item1": {
497
+ "type": "stack_panel",
498
+ "orientation": "horizontal",
499
+ "size": [
500
+ "100%",
501
+ "100%"
502
+ ],
503
+ "controls": [
504
+ {
505
+ "stack0": {
506
+ "type": "panel",
507
+ "size": [
508
+ "20%",
509
+ "100%"
510
+ ],
511
+ "controls": [
512
+ {
513
+ "icon1": {
514
+ "type": "image",
515
+ "texture": "textures/items/apple"
516
+ }
517
+ }
518
+ ]
519
+ }
520
+ },
521
+ {
522
+ "stack1": {
523
+ "type": "panel",
524
+ "size": [
525
+ "80%",
526
+ "100%"
527
+ ],
528
+ "controls": [
529
+ {
530
+ "label1": {
531
+ "type": "label",
532
+ "color": [
533
+ 0,
534
+ 0,
535
+ 0
536
+ ],
537
+ "text": "使用方法"
538
+ }
539
+ }
540
+ ]
541
+ }
542
+ }
543
+ ]
544
+ }
545
+ }
546
+ ]
547
+ }
548
+ }
549
+ ]
550
+ },
551
+ "page_left_content1": {
552
+ "type": "image",
553
+ "texture": "textures/items/diamond_sword"
554
+ },
555
+ "right_content1": {
556
+ "type": "label",
557
+ "color": [
558
+ 0,
559
+ 0,
560
+ 0
561
+ ],
562
+ "text": "这是第一页右边的内容"
563
+ },
564
+ "right_content2": {
565
+ "type": "label",
566
+ "color": [
567
+ 0,
568
+ 0,
569
+ 0
570
+ ],
571
+ "text": "这是第二页左边的内容",
572
+ "size": [
573
+ 100,
574
+ 32
575
+ ]
576
+ },
577
+ "page_left_content2": {
578
+ "type": "image",
579
+ "texture": "textures/items/diamond"
580
+ }
581
+ }