kiwiengine 0.5.2 → 0.5.3

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 (325) hide show
  1. package/README.ko.md +2 -2
  2. package/README.md +2 -2
  3. package/examples/auto-battle/assets/bgm/battle.mp3 +0 -0
  4. package/examples/auto-battle/assets/bitmap-fonts/white-peaberry.fnt +107 -0
  5. package/examples/auto-battle/assets/bitmap-fonts/white-peaberry.png +0 -0
  6. package/examples/auto-battle/assets/joystick/joystick.png +0 -0
  7. package/examples/auto-battle/assets/joystick/knob.png +0 -0
  8. package/examples/auto-battle/assets/sfx/hero/die/die.wav +0 -0
  9. package/examples/auto-battle/assets/sfx/hero/heal/heal.wav +0 -0
  10. package/examples/auto-battle/assets/sfx/hero/hit/hit1.wav +0 -0
  11. package/examples/auto-battle/assets/sfx/hero/hit/hit2.wav +0 -0
  12. package/examples/auto-battle/assets/sfx/hero/hit/hit3.wav +0 -0
  13. package/examples/auto-battle/assets/sfx/hero/miss/miss1.wav +0 -0
  14. package/examples/auto-battle/assets/sfx/hero/miss/miss2.wav +0 -0
  15. package/examples/auto-battle/assets/sfx/hero/miss/miss3.wav +0 -0
  16. package/examples/auto-battle/assets/sfx/orc/die/die.wav +0 -0
  17. package/examples/auto-battle/assets/sfx/orc/hit/hit1.wav +0 -0
  18. package/examples/auto-battle/assets/sfx/orc/hit/hit2.wav +0 -0
  19. package/examples/auto-battle/assets/sfx/orc/hit/hit3.wav +0 -0
  20. package/examples/auto-battle/assets/sfx/orc/miss/miss1.wav +0 -0
  21. package/examples/auto-battle/assets/sfx/orc/miss/miss2.wav +0 -0
  22. package/examples/auto-battle/assets/sfx/orc/miss/miss3.wav +0 -0
  23. package/examples/auto-battle/assets/spritesheets/hero-atlas.json +246 -0
  24. package/examples/auto-battle/assets/spritesheets/hero.png +0 -0
  25. package/examples/auto-battle/assets/spritesheets/orc-atlas.json +246 -0
  26. package/examples/auto-battle/assets/spritesheets/orc.png +0 -0
  27. package/examples/auto-battle/assets/spritesheets/potion-atlas.json +68 -0
  28. package/examples/auto-battle/assets/spritesheets/potion.png +0 -0
  29. package/examples/auto-battle/dist/game.js +2 -0
  30. package/examples/auto-battle/dist/game.js.LICENSE.txt +35 -0
  31. package/examples/auto-battle/hud/damage-text.ts +46 -0
  32. package/examples/auto-battle/hud/heal-text.ts +46 -0
  33. package/examples/auto-battle/hud/hp-bar.ts +38 -0
  34. package/examples/auto-battle/index.ts +41 -0
  35. package/examples/auto-battle/objects/character.ts +95 -0
  36. package/examples/auto-battle/objects/hero.ts +119 -0
  37. package/examples/auto-battle/objects/orc.ts +107 -0
  38. package/examples/auto-battle/objects/potion.ts +27 -0
  39. package/examples/auto-battle/stage.ts +366 -0
  40. package/examples/battle-benchmark-matterjs/assets/bgm/battle.mp3 +0 -0
  41. package/examples/battle-benchmark-matterjs/assets/bitmap-fonts/white-peaberry.fnt +107 -0
  42. package/examples/battle-benchmark-matterjs/assets/bitmap-fonts/white-peaberry.png +0 -0
  43. package/examples/battle-benchmark-matterjs/assets/joystick/joystick.png +0 -0
  44. package/examples/battle-benchmark-matterjs/assets/joystick/knob.png +0 -0
  45. package/examples/battle-benchmark-matterjs/assets/sfx/hero/die/die.wav +0 -0
  46. package/examples/battle-benchmark-matterjs/assets/sfx/hero/heal/heal.wav +0 -0
  47. package/examples/battle-benchmark-matterjs/assets/sfx/hero/hit/hit1.wav +0 -0
  48. package/examples/battle-benchmark-matterjs/assets/sfx/hero/hit/hit2.wav +0 -0
  49. package/examples/battle-benchmark-matterjs/assets/sfx/hero/hit/hit3.wav +0 -0
  50. package/examples/battle-benchmark-matterjs/assets/sfx/hero/miss/miss1.wav +0 -0
  51. package/examples/battle-benchmark-matterjs/assets/sfx/hero/miss/miss2.wav +0 -0
  52. package/examples/battle-benchmark-matterjs/assets/sfx/hero/miss/miss3.wav +0 -0
  53. package/examples/battle-benchmark-matterjs/assets/sfx/orc/die/die.wav +0 -0
  54. package/examples/battle-benchmark-matterjs/assets/sfx/orc/hit/hit1.wav +0 -0
  55. package/examples/battle-benchmark-matterjs/assets/sfx/orc/hit/hit2.wav +0 -0
  56. package/examples/battle-benchmark-matterjs/assets/sfx/orc/hit/hit3.wav +0 -0
  57. package/examples/battle-benchmark-matterjs/assets/sfx/orc/miss/miss1.wav +0 -0
  58. package/examples/battle-benchmark-matterjs/assets/sfx/orc/miss/miss2.wav +0 -0
  59. package/examples/battle-benchmark-matterjs/assets/sfx/orc/miss/miss3.wav +0 -0
  60. package/examples/battle-benchmark-matterjs/assets/spritesheets/hero-atlas.json +246 -0
  61. package/examples/battle-benchmark-matterjs/assets/spritesheets/hero.png +0 -0
  62. package/examples/battle-benchmark-matterjs/assets/spritesheets/orc-atlas.json +246 -0
  63. package/examples/battle-benchmark-matterjs/assets/spritesheets/orc.png +0 -0
  64. package/examples/battle-benchmark-matterjs/assets/spritesheets/potion-atlas.json +68 -0
  65. package/examples/battle-benchmark-matterjs/assets/spritesheets/potion.png +0 -0
  66. package/examples/battle-benchmark-matterjs/dist/game.js +2 -0
  67. package/examples/battle-benchmark-matterjs/dist/game.js.LICENSE.txt +35 -0
  68. package/examples/battle-benchmark-matterjs/hud/damage-text.ts +46 -0
  69. package/examples/battle-benchmark-matterjs/hud/heal-text.ts +46 -0
  70. package/examples/battle-benchmark-matterjs/hud/hp-bar.ts +38 -0
  71. package/examples/battle-benchmark-matterjs/index.html +24 -0
  72. package/examples/battle-benchmark-matterjs/index.ts +41 -0
  73. package/examples/battle-benchmark-matterjs/objects/character.ts +95 -0
  74. package/examples/battle-benchmark-matterjs/objects/hero.ts +111 -0
  75. package/examples/battle-benchmark-matterjs/objects/orc.ts +107 -0
  76. package/examples/battle-benchmark-matterjs/objects/potion.ts +27 -0
  77. package/examples/battle-benchmark-matterjs/stage.ts +177 -0
  78. package/examples/battle-benchmark-separation/assets/bgm/battle.mp3 +0 -0
  79. package/examples/battle-benchmark-separation/assets/bitmap-fonts/white-peaberry.fnt +107 -0
  80. package/examples/battle-benchmark-separation/assets/bitmap-fonts/white-peaberry.png +0 -0
  81. package/examples/battle-benchmark-separation/assets/joystick/joystick.png +0 -0
  82. package/examples/battle-benchmark-separation/assets/joystick/knob.png +0 -0
  83. package/examples/battle-benchmark-separation/assets/sfx/hero/die/die.wav +0 -0
  84. package/examples/battle-benchmark-separation/assets/sfx/hero/heal/heal.wav +0 -0
  85. package/examples/battle-benchmark-separation/assets/sfx/hero/hit/hit1.wav +0 -0
  86. package/examples/battle-benchmark-separation/assets/sfx/hero/hit/hit2.wav +0 -0
  87. package/examples/battle-benchmark-separation/assets/sfx/hero/hit/hit3.wav +0 -0
  88. package/examples/battle-benchmark-separation/assets/sfx/hero/miss/miss1.wav +0 -0
  89. package/examples/battle-benchmark-separation/assets/sfx/hero/miss/miss2.wav +0 -0
  90. package/examples/battle-benchmark-separation/assets/sfx/hero/miss/miss3.wav +0 -0
  91. package/examples/battle-benchmark-separation/assets/sfx/orc/die/die.wav +0 -0
  92. package/examples/battle-benchmark-separation/assets/sfx/orc/hit/hit1.wav +0 -0
  93. package/examples/battle-benchmark-separation/assets/sfx/orc/hit/hit2.wav +0 -0
  94. package/examples/battle-benchmark-separation/assets/sfx/orc/hit/hit3.wav +0 -0
  95. package/examples/battle-benchmark-separation/assets/sfx/orc/miss/miss1.wav +0 -0
  96. package/examples/battle-benchmark-separation/assets/sfx/orc/miss/miss2.wav +0 -0
  97. package/examples/battle-benchmark-separation/assets/sfx/orc/miss/miss3.wav +0 -0
  98. package/examples/battle-benchmark-separation/assets/spritesheets/hero-atlas.json +246 -0
  99. package/examples/battle-benchmark-separation/assets/spritesheets/hero.png +0 -0
  100. package/examples/battle-benchmark-separation/assets/spritesheets/orc-atlas.json +246 -0
  101. package/examples/battle-benchmark-separation/assets/spritesheets/orc.png +0 -0
  102. package/examples/battle-benchmark-separation/assets/spritesheets/potion-atlas.json +68 -0
  103. package/examples/battle-benchmark-separation/assets/spritesheets/potion.png +0 -0
  104. package/examples/battle-benchmark-separation/dist/game.js +2 -0
  105. package/examples/battle-benchmark-separation/dist/game.js.LICENSE.txt +35 -0
  106. package/examples/battle-benchmark-separation/hud/damage-text.ts +46 -0
  107. package/examples/battle-benchmark-separation/hud/heal-text.ts +46 -0
  108. package/examples/battle-benchmark-separation/hud/hp-bar.ts +38 -0
  109. package/examples/battle-benchmark-separation/index.html +24 -0
  110. package/examples/battle-benchmark-separation/index.ts +41 -0
  111. package/examples/battle-benchmark-separation/objects/character.ts +225 -0
  112. package/examples/battle-benchmark-separation/objects/hero.ts +110 -0
  113. package/examples/battle-benchmark-separation/objects/orc.ts +213 -0
  114. package/examples/battle-benchmark-separation/objects/potion.ts +27 -0
  115. package/examples/battle-benchmark-separation/stage.ts +178 -0
  116. package/examples/battle-benchmark-separation2/assets/bgm/battle.mp3 +0 -0
  117. package/examples/battle-benchmark-separation2/assets/bitmap-fonts/white-peaberry.fnt +107 -0
  118. package/examples/battle-benchmark-separation2/assets/bitmap-fonts/white-peaberry.png +0 -0
  119. package/examples/battle-benchmark-separation2/assets/joystick/joystick.png +0 -0
  120. package/examples/battle-benchmark-separation2/assets/joystick/knob.png +0 -0
  121. package/examples/battle-benchmark-separation2/assets/sfx/hero/die/die.wav +0 -0
  122. package/examples/battle-benchmark-separation2/assets/sfx/hero/heal/heal.wav +0 -0
  123. package/examples/battle-benchmark-separation2/assets/sfx/hero/hit/hit1.wav +0 -0
  124. package/examples/battle-benchmark-separation2/assets/sfx/hero/hit/hit2.wav +0 -0
  125. package/examples/battle-benchmark-separation2/assets/sfx/hero/hit/hit3.wav +0 -0
  126. package/examples/battle-benchmark-separation2/assets/sfx/hero/miss/miss1.wav +0 -0
  127. package/examples/battle-benchmark-separation2/assets/sfx/hero/miss/miss2.wav +0 -0
  128. package/examples/battle-benchmark-separation2/assets/sfx/hero/miss/miss3.wav +0 -0
  129. package/examples/battle-benchmark-separation2/assets/sfx/orc/die/die.wav +0 -0
  130. package/examples/battle-benchmark-separation2/assets/sfx/orc/hit/hit1.wav +0 -0
  131. package/examples/battle-benchmark-separation2/assets/sfx/orc/hit/hit2.wav +0 -0
  132. package/examples/battle-benchmark-separation2/assets/sfx/orc/hit/hit3.wav +0 -0
  133. package/examples/battle-benchmark-separation2/assets/sfx/orc/miss/miss1.wav +0 -0
  134. package/examples/battle-benchmark-separation2/assets/sfx/orc/miss/miss2.wav +0 -0
  135. package/examples/battle-benchmark-separation2/assets/sfx/orc/miss/miss3.wav +0 -0
  136. package/examples/battle-benchmark-separation2/assets/spritesheets/hero-atlas.json +246 -0
  137. package/examples/battle-benchmark-separation2/assets/spritesheets/hero.png +0 -0
  138. package/examples/battle-benchmark-separation2/assets/spritesheets/orc-atlas.json +246 -0
  139. package/examples/battle-benchmark-separation2/assets/spritesheets/orc.png +0 -0
  140. package/examples/battle-benchmark-separation2/assets/spritesheets/potion-atlas.json +68 -0
  141. package/examples/battle-benchmark-separation2/assets/spritesheets/potion.png +0 -0
  142. package/examples/battle-benchmark-separation2/dist/game.js +2 -0
  143. package/examples/battle-benchmark-separation2/dist/game.js.LICENSE.txt +35 -0
  144. package/examples/battle-benchmark-separation2/hud/damage-text.ts +46 -0
  145. package/examples/battle-benchmark-separation2/hud/heal-text.ts +46 -0
  146. package/examples/battle-benchmark-separation2/hud/hp-bar.ts +38 -0
  147. package/examples/battle-benchmark-separation2/index.html +24 -0
  148. package/examples/battle-benchmark-separation2/index.ts +41 -0
  149. package/examples/battle-benchmark-separation2/objects/character.ts +195 -0
  150. package/examples/battle-benchmark-separation2/objects/hero.ts +110 -0
  151. package/examples/battle-benchmark-separation2/objects/orc.ts +213 -0
  152. package/examples/battle-benchmark-separation2/objects/potion.ts +27 -0
  153. package/examples/battle-benchmark-separation2/stage.ts +178 -0
  154. package/examples/dom-sprite-test/index.ts +6 -9
  155. package/examples/simple-battle/assets/spritesheets/hero-atlas.json +180 -223
  156. package/examples/simple-battle/assets/spritesheets/orc-atlas.json +180 -223
  157. package/examples/simple-battle/assets/spritesheets/potion-atlas.json +46 -61
  158. package/examples/simple-battle/hud/damage-text.ts +1 -0
  159. package/examples/simple-battle/hud/heal-text.ts +1 -0
  160. package/examples/simple-battle/objects/character.ts +3 -3
  161. package/examples/simple-battle/objects/hero.ts +3 -5
  162. package/examples/simple-battle/objects/orc.ts +3 -5
  163. package/examples/simple-battle/objects/potion.ts +0 -2
  164. package/examples/simple-battle/stage.ts +2 -4
  165. package/examples/sprite-test/index.ts +6 -9
  166. package/examples/webpack.config.js +4 -1
  167. package/lib/asset/loaders/audio.js +4 -1
  168. package/lib/asset/loaders/audio.js.map +1 -1
  169. package/lib/asset/loaders/binary.js +4 -1
  170. package/lib/asset/loaders/binary.js.map +1 -1
  171. package/lib/asset/loaders/bitmap-font.js +24 -21
  172. package/lib/asset/loaders/bitmap-font.js.map +1 -1
  173. package/lib/asset/loaders/font.js +3 -0
  174. package/lib/asset/loaders/font.js.map +1 -1
  175. package/lib/asset/loaders/spritesheet.js +12 -1
  176. package/lib/asset/loaders/spritesheet.js.map +1 -1
  177. package/lib/asset/loaders/text.js +3 -0
  178. package/lib/asset/loaders/text.js.map +1 -1
  179. package/lib/asset/loaders/texture.js +21 -26
  180. package/lib/asset/loaders/texture.js.map +1 -1
  181. package/lib/asset/preload.js.map +1 -1
  182. package/lib/collision/check-collision.js +16 -16
  183. package/lib/collision/check-collision.js.map +1 -1
  184. package/lib/dom/dom-animated-sprite.js +21 -36
  185. package/lib/dom/dom-animated-sprite.js.map +1 -1
  186. package/lib/dom/dom-game-object.js +9 -7
  187. package/lib/dom/dom-game-object.js.map +1 -1
  188. package/lib/dom/dom-particle.js.map +1 -1
  189. package/lib/index.js +1 -0
  190. package/lib/index.js.map +1 -1
  191. package/lib/node/core/dirty-number.js +0 -19
  192. package/lib/node/core/dirty-number.js.map +1 -1
  193. package/lib/node/core/renderable.js +7 -0
  194. package/lib/node/core/renderable.js.map +1 -1
  195. package/lib/node/core/transform.js +22 -11
  196. package/lib/node/core/transform.js.map +1 -1
  197. package/lib/node/ext/animated-sprite.js +3 -22
  198. package/lib/node/ext/animated-sprite.js.map +1 -1
  199. package/lib/node/ext/bitmap-text.js +7 -3
  200. package/lib/node/ext/bitmap-text.js.map +1 -1
  201. package/lib/node/ext/circle.js +18 -3
  202. package/lib/node/ext/circle.js.map +1 -1
  203. package/lib/node/ext/deplay.js +2 -0
  204. package/lib/node/ext/deplay.js.map +1 -1
  205. package/lib/node/ext/dom-container.js +2 -2
  206. package/lib/node/ext/dom-container.js.map +1 -1
  207. package/lib/node/ext/interval.js +2 -0
  208. package/lib/node/ext/interval.js.map +1 -1
  209. package/lib/node/ext/particle.js.map +1 -1
  210. package/lib/node/ext/rectangle.js +24 -4
  211. package/lib/node/ext/rectangle.js.map +1 -1
  212. package/lib/node/physics/physics-object.js +9 -29
  213. package/lib/node/physics/physics-object.js.map +1 -1
  214. package/lib/node/physics/physics-world.js +2 -0
  215. package/lib/node/physics/physics-world.js.map +1 -1
  216. package/lib/node/physics/rigidbodies.js +7 -0
  217. package/lib/node/physics/rigidbodies.js.map +1 -0
  218. package/lib/renderer/renderer.js +3 -2
  219. package/lib/renderer/renderer.js.map +1 -1
  220. package/lib/types/animation-atlas.js +2 -0
  221. package/lib/types/animation-atlas.js.map +1 -0
  222. package/lib/types/asset/loaders/audio.d.ts +1 -0
  223. package/lib/types/asset/loaders/audio.d.ts.map +1 -1
  224. package/lib/types/asset/loaders/binary.d.ts +1 -0
  225. package/lib/types/asset/loaders/binary.d.ts.map +1 -1
  226. package/lib/types/asset/loaders/bitmap-font.d.ts +1 -0
  227. package/lib/types/asset/loaders/bitmap-font.d.ts.map +1 -1
  228. package/lib/types/asset/loaders/font.d.ts +1 -0
  229. package/lib/types/asset/loaders/font.d.ts.map +1 -1
  230. package/lib/types/asset/loaders/spritesheet.d.ts +11 -3
  231. package/lib/types/asset/loaders/spritesheet.d.ts.map +1 -1
  232. package/lib/types/asset/loaders/text.d.ts +1 -0
  233. package/lib/types/asset/loaders/text.d.ts.map +1 -1
  234. package/lib/types/asset/loaders/texture.d.ts +1 -1
  235. package/lib/types/asset/loaders/texture.d.ts.map +1 -1
  236. package/lib/types/asset/preload.d.ts +2 -2
  237. package/lib/types/asset/preload.d.ts.map +1 -1
  238. package/lib/types/atlas copy.js +2 -0
  239. package/lib/types/atlas copy.js.map +1 -0
  240. package/lib/types/atlas.js +2 -0
  241. package/lib/types/atlas.js.map +1 -0
  242. package/lib/types/dom/dom-animated-sprite.d.ts +4 -10
  243. package/lib/types/dom/dom-animated-sprite.d.ts.map +1 -1
  244. package/lib/types/dom/dom-game-object.d.ts +1 -1
  245. package/lib/types/dom/dom-game-object.d.ts.map +1 -1
  246. package/lib/types/dom/dom-particle.d.ts.map +1 -1
  247. package/lib/types/index.d.ts +1 -0
  248. package/lib/types/index.d.ts.map +1 -1
  249. package/lib/types/node/core/dirty-number.d.ts +0 -8
  250. package/lib/types/node/core/dirty-number.d.ts.map +1 -1
  251. package/lib/types/node/core/renderable.d.ts +1 -0
  252. package/lib/types/node/core/renderable.d.ts.map +1 -1
  253. package/lib/types/node/core/transform.d.ts +4 -2
  254. package/lib/types/node/core/transform.d.ts.map +1 -1
  255. package/lib/types/node/ext/animated-sprite.d.ts +4 -10
  256. package/lib/types/node/ext/animated-sprite.d.ts.map +1 -1
  257. package/lib/types/node/ext/bitmap-text.d.ts.map +1 -1
  258. package/lib/types/node/ext/circle.d.ts +3 -3
  259. package/lib/types/node/ext/circle.d.ts.map +1 -1
  260. package/lib/types/node/ext/deplay.d.ts.map +1 -1
  261. package/lib/types/node/ext/dom-container.d.ts +1 -1
  262. package/lib/types/node/ext/dom-container.d.ts.map +1 -1
  263. package/lib/types/node/ext/interval.d.ts.map +1 -1
  264. package/lib/types/node/ext/particle.d.ts.map +1 -1
  265. package/lib/types/node/ext/rectangle.d.ts +4 -4
  266. package/lib/types/node/ext/rectangle.d.ts.map +1 -1
  267. package/lib/types/node/physics/physics-object.d.ts +2 -2
  268. package/lib/types/node/physics/physics-object.d.ts.map +1 -1
  269. package/lib/types/node/physics/physics-world.d.ts.map +1 -1
  270. package/lib/types/node/physics/rigidbodies.d.ts +23 -0
  271. package/lib/types/node/physics/rigidbodies.d.ts.map +1 -0
  272. package/lib/types/renderer/renderer.d.ts.map +1 -1
  273. package/lib/types/sprite-atlas.js +2 -0
  274. package/lib/types/sprite-atlas.js.map +1 -0
  275. package/lib/types/types/animation-atlas.d.ts +14 -0
  276. package/lib/types/types/animation-atlas.d.ts.map +1 -0
  277. package/lib/types/types/atlas copy.d.ts +12 -0
  278. package/lib/types/types/atlas copy.d.ts.map +1 -0
  279. package/lib/types/types/atlas.d.ts +16 -0
  280. package/lib/types/types/atlas.d.ts.map +1 -0
  281. package/lib/types/types/sprite-atlas.d.ts +13 -0
  282. package/lib/types/types/sprite-atlas.d.ts.map +1 -0
  283. package/package.json +1 -1
  284. package/src/asset/loaders/audio.ts +5 -2
  285. package/src/asset/loaders/binary.ts +5 -1
  286. package/src/asset/loaders/bitmap-font.ts +33 -27
  287. package/src/asset/loaders/font.ts +4 -0
  288. package/src/asset/loaders/spritesheet.ts +18 -5
  289. package/src/asset/loaders/text.ts +4 -0
  290. package/src/asset/loaders/texture.ts +19 -27
  291. package/src/asset/preload.ts +4 -8
  292. package/src/collision/check-collision.ts +16 -16
  293. package/src/dom/dom-animated-sprite.ts +24 -45
  294. package/src/dom/dom-game-object.ts +9 -6
  295. package/src/dom/dom-particle.ts +1 -1
  296. package/src/index.ts +1 -0
  297. package/src/node/core/dirty-number.ts +0 -24
  298. package/src/node/core/renderable.ts +7 -0
  299. package/src/node/core/transform.ts +23 -11
  300. package/src/node/ext/animated-sprite.ts +9 -29
  301. package/src/node/ext/bitmap-text.ts +7 -3
  302. package/src/node/ext/circle.ts +18 -3
  303. package/src/node/ext/deplay.ts +1 -0
  304. package/src/node/ext/dom-container.ts +2 -2
  305. package/src/node/ext/interval.ts +1 -0
  306. package/src/node/ext/particle.ts +1 -1
  307. package/src/node/ext/rectangle.ts +24 -4
  308. package/src/node/physics/physics-object.ts +11 -40
  309. package/src/node/physics/physics-world.ts +1 -0
  310. package/src/node/physics/rigidbodies.ts +14 -0
  311. package/src/renderer/renderer.ts +4 -3
  312. package/src/types/atlas.ts +17 -0
  313. package/examples/flappy-cat/assets/bgm/bgm.ogg +0 -0
  314. package/examples/flappy-cat/assets/images/base.png +0 -0
  315. package/examples/flappy-cat/assets/images/bg.png +0 -0
  316. package/examples/flappy-cat/assets/images/cat.png +0 -0
  317. package/examples/flappy-cat/assets/images/pipe-green.png +0 -0
  318. package/examples/flappy-cat/assets/images/pipe-red.png +0 -0
  319. package/examples/flappy-cat/assets/sfx/die.wav +0 -0
  320. package/examples/flappy-cat/assets/sfx/hit.wav +0 -0
  321. package/examples/flappy-cat/assets/sfx/point.wav +0 -0
  322. package/examples/flappy-cat/assets/sfx/wing.wav +0 -0
  323. package/examples/flappy-cat/dist/game.js +0 -0
  324. package/examples/flappy-cat/index.ts +0 -0
  325. /package/examples/{flappy-cat → auto-battle}/index.html +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"dom-particle.d.ts","sourceRoot":"","sources":["../../../src/dom/dom-particle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAIvE,KAAK,WAAW,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/C,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,MAAM,CAAA;IAEf,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,aAAa,EAAE,WAAW,CAAA;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,OAAO,CAAA;IAEzB,SAAS,CAAC,EAAE,WAAW,CAAA;CACxB,GAAG,oBAAoB,CAAA;AAkBxB,qBAAa,iBAAkB,SAAQ,aAAa;;gBAgBtC,OAAO,EAAE,wBAAwB;IA2BvC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IAwC9C,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM;IAwBlB,MAAM;CAIhB"}
1
+ {"version":3,"file":"dom-particle.d.ts","sourceRoot":"","sources":["../../../src/dom/dom-particle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAIvE,KAAK,WAAW,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/C,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,MAAM,CAAA;IAEf,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,aAAa,EAAE,WAAW,CAAA;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,OAAO,CAAA;IAEzB,SAAS,CAAC,EAAE,WAAW,CAAA;CACxB,GAAG,oBAAoB,CAAA;AAkBxB,qBAAa,iBAAkB,SAAQ,aAAa;;gBAgBtC,OAAO,EAAE,wBAAwB;IA2BvC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;cAwC3B,MAAM,CAAC,EAAE,EAAE,MAAM;IAwB3B,MAAM;CAIhB"}
@@ -17,6 +17,7 @@ export { SpineNode, SpineNodeOptions } from './node/ext/spine';
17
17
  export { SpriteNode, SpriteNodeOptions } from './node/ext/sprite';
18
18
  export { PhysicsObject, PhysicsObjectOptions } from './node/physics/physics-object';
19
19
  export { PhysicsWorld } from './node/physics/physics-world';
20
+ export { CircleRigidbody, PolygonRigidbody, RectangleRigidbody, Rigidbody, RigidbodyType } from './node/physics/rigidbodies';
20
21
  export { DomAnimatedSpriteNode } from './dom/dom-animated-sprite';
21
22
  export { DomParticleSystem, DomParticleSystemOptions } from './dom/dom-particle';
22
23
  export { domPreload } from './dom/dom-preload';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAGvE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAG1C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGnI,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAGjE,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAG3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAG3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAGvE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAG1C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGnI,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAA;AACpF,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAC9D,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAGjE,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAG5H,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAG3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA"}
@@ -6,12 +6,4 @@ export declare class DirtyNumber {
6
6
  set v(newValue: number);
7
7
  resetDirty(): void;
8
8
  }
9
- export declare class DirtyRadian extends DirtyNumber {
10
- #private;
11
- constructor(initialValue: number);
12
- get cos(): number;
13
- get sin(): number;
14
- set v(newValue: number);
15
- get v(): number;
16
- }
17
9
  //# sourceMappingURL=dirty-number.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dirty-number.d.ts","sourceRoot":"","sources":["../../../../src/node/core/dirty-number.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAW;;gBAIV,YAAY,EAAE,MAAM;IAKhC,IAAI,KAAK,YAA2B;IACpC,IAAI,CAAC,IAEW,MAAM,CAFQ;IAE9B,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAGrB;IAED,UAAU;CAGX;AAED,qBAAa,WAAY,SAAQ,WAAW;;gBAI9B,YAAY,EAAE,MAAM;IAMhC,IAAI,GAAG,WAAuB;IAC9B,IAAI,GAAG,WAAuB;IAE9B,IAAa,CAAC,CAAC,QAAQ,EAAE,MAAM,EAM9B;IAED,IAAa,CAAC,IARW,MAAM,CAQI;CACpC"}
1
+ {"version":3,"file":"dirty-number.d.ts","sourceRoot":"","sources":["../../../../src/node/core/dirty-number.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAW;;gBAIV,YAAY,EAAE,MAAM;IAKhC,IAAI,KAAK,YAA2B;IACpC,IAAI,CAAC,IAEW,MAAM,CAFQ;IAE9B,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAGrB;IAED,UAAU;CAGX"}
@@ -16,6 +16,7 @@ export declare abstract class RenderableNode<C extends PixiContainer, E extends
16
16
  add(...children: GameNode<EventMap>[]): void;
17
17
  remove(): void;
18
18
  _updateWorldTransform(): void;
19
+ _resetWorldTransformDirty(): void;
19
20
  set tint(t: number);
20
21
  get tint(): number;
21
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"renderable.d.ts","sourceRoot":"","sources":["../../../../src/node/core/renderable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,CAEzF;AAED,8BAAsB,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,CAAC,SAAS,QAAQ,CAAE,SAAQ,QAAQ,CAAC,CAAC,CAAC;;IAEnG,cAAc,EAAE,CAAC,CAAA;IAEjB,cAAc,iBAAuB;IACrC,UAAU,cAAqB;gBAEnB,aAAa,EAAE,CAAC;IAK5B,SAAS,KAAK,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAQpD;IAED,SAAS,KAAK,QAAQ,IAVW,QAAQ,GAAG,SAAS,CAYpD;IAEQ,GAAG,CAAC,GAAG,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;IAarC,MAAM;IAKf,qBAAqB;IAOrB,IAAI,IAAI,CAAC,CAAC,QAAA,EAAkC;IAC5C,IAAI,IAAI,WAAsC;CAC/C"}
1
+ {"version":3,"file":"renderable.d.ts","sourceRoot":"","sources":["../../../../src/node/core/renderable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAE5C,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,IAAI,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,CAEzF;AAED,8BAAsB,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,CAAC,SAAS,QAAQ,CAAE,SAAQ,QAAQ,CAAC,CAAC,CAAC;;IAEnG,cAAc,EAAE,CAAC,CAAA;IAEjB,cAAc,iBAAuB;IACrC,UAAU,cAAqB;gBAEnB,aAAa,EAAE,CAAC;IAK5B,SAAS,KAAK,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAQpD;IAED,SAAS,KAAK,QAAQ,IAVW,QAAQ,GAAG,SAAS,CAYpD;IAEQ,GAAG,CAAC,GAAG,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;IAarC,MAAM;IAKf,qBAAqB;IAMrB,yBAAyB;IAQzB,IAAI,IAAI,CAAC,CAAC,QAAA,EAAkC;IAC5C,IAAI,IAAI,WAAsC;CAC/C"}
@@ -1,4 +1,4 @@
1
- import { DirtyNumber, DirtyRadian } from './dirty-number';
1
+ import { DirtyNumber } from './dirty-number';
2
2
  export declare class LocalTransform {
3
3
  #private;
4
4
  x: number;
@@ -17,7 +17,9 @@ export declare class WorldTransform {
17
17
  y: DirtyNumber;
18
18
  scaleX: DirtyNumber;
19
19
  scaleY: DirtyNumber;
20
- rotation: DirtyRadian;
20
+ rotation: DirtyNumber;
21
+ cos: number;
22
+ sin: number;
21
23
  update(parent: WorldTransform, local: LocalTransform): void;
22
24
  get dirty(): boolean;
23
25
  resetDirty(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../../src/node/core/transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAEzD,qBAAa,cAAc;;IACzB,CAAC,SAAI;IACL,CAAC,SAAI;IACL,MAAM,SAAI;IACV,MAAM,SAAI;IACV,MAAM,SAAI;IACV,MAAM,SAAI;IAMV,IAAI,GAAG,WAAuB;IAC9B,IAAI,GAAG,WAAuB;IAC9B,IAAI,QAAQ,WAA4B;IAExC,IAAI,QAAQ,CAAC,CAAC,QAAA,EAMb;CACF;AAED,qBAAa,cAAc;IACzB,CAAC,cAA4C;IAC7C,CAAC,cAA4C;IAC7C,MAAM,cAAqB;IAC3B,MAAM,cAAqB;IAC3B,QAAQ,cAAqB;IAE7B,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc;IAoBpD,IAAI,KAAK,YAMR;IAED,UAAU;CAOX"}
1
+ {"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../../src/node/core/transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C,qBAAa,cAAc;;IACzB,CAAC,SAAI;IACL,CAAC,SAAI;IACL,MAAM,SAAI;IACV,MAAM,SAAI;IACV,MAAM,SAAI;IACV,MAAM,SAAI;IAMV,IAAI,GAAG,WAAuB;IAC9B,IAAI,GAAG,WAAuB;IAC9B,IAAI,QAAQ,WAA4B;IAExC,IAAI,QAAQ,CAAC,CAAC,QAAA,EAMb;CACF;AAED,qBAAa,cAAc;IACzB,CAAC,cAAuB;IACxB,CAAC,cAAuB;IACxB,MAAM,cAAqB;IAC3B,MAAM,cAAqB;IAC3B,QAAQ,cAAqB;IAC7B,GAAG,SAAI;IACP,GAAG,SAAI;IAEP,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc;IA8BpD,IAAI,KAAK,YAMR;IAED,UAAU;CAOX"}
@@ -1,12 +1,10 @@
1
1
  import { EventMap } from '@webtaku/event-emitter';
2
- import { SpritesheetData } from 'pixi.js';
2
+ import { Atlas } from '../../types/atlas';
3
3
  import { GameObject, GameObjectOptions } from '../core/game-object';
4
4
  export type AnimatedSpriteNodeOptions = {
5
5
  src: string;
6
- atlas: SpritesheetData;
6
+ atlas: Atlas;
7
7
  animation: string;
8
- fps: number;
9
- loop?: boolean;
10
8
  } & GameObjectOptions;
11
9
  export declare class AnimatedSpriteNode<E extends EventMap = EventMap> extends GameObject<E & {
12
10
  animationend: (animation: string) => void;
@@ -15,14 +13,10 @@ export declare class AnimatedSpriteNode<E extends EventMap = EventMap> extends G
15
13
  constructor(options: AnimatedSpriteNodeOptions);
16
14
  set src(src: string);
17
15
  get src(): string;
18
- set atlas(atlas: SpritesheetData);
19
- get atlas(): SpritesheetData;
16
+ set atlas(atlas: Atlas);
17
+ get atlas(): Atlas;
20
18
  set animation(animation: string);
21
19
  get animation(): string;
22
- set fps(fps: number);
23
- get fps(): number;
24
- set loop(loop: boolean);
25
- get loop(): boolean;
26
20
  remove(): void;
27
21
  }
28
22
  //# sourceMappingURL=animated-sprite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"animated-sprite.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/animated-sprite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAqD,eAAe,EAAE,MAAM,SAAS,CAAA;AAE5F,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,MAAM,yBAAyB,GAAG;IACtC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,eAAe,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,GAAG,iBAAiB,CAAA;AAErB,qBAAa,kBAAkB,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,UAAU,CAAC,CAAC,GAAG;IACpF,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1C,CAAC;;gBAWY,OAAO,EAAE,yBAAyB;IA6C9C,IAAI,GAAG,CAAC,GAAG,QAAA,EAMV;IAED,IAAI,GAAG,WAAuB;IAE9B,IAAI,KAAK,CAAC,KAAK,iBAAA,EAMd;IAED,IAAI,KAAK,oBAAyB;IAElC,IAAI,SAAS,CAAC,SAAS,QAAA,EAKtB;IAED,IAAI,SAAS,WAA6B;IAE1C,IAAI,GAAG,CAAC,GAAG,QAAA,EAKV;IAED,IAAI,GAAG,WAAuB;IAE9B,IAAI,IAAI,CAAC,IAAI,SAAA,EAKZ;IAED,IAAI,IAAI,YAAwB;IAEhC,MAAM;CAIP"}
1
+ {"version":3,"file":"animated-sprite.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/animated-sprite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAGjD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,MAAM,yBAAyB,GAAG;IACtC,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,iBAAiB,CAAA;AAErB,qBAAa,kBAAkB,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,UAAU,CAAC,CAAC,GAAG;IACpF,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;CAC1C,CAAC;;gBASY,OAAO,EAAE,yBAAyB;IA8C9C,IAAI,GAAG,CAAC,GAAG,QAAA,EAMV;IAED,IAAI,GAAG,WAAuB;IAE9B,IAAI,KAAK,CAAC,KAAK,OAAA,EAMd;IAED,IAAI,KAAK,UAAyB;IAElC,IAAI,SAAS,CAAC,SAAS,QAAA,EAKtB;IAED,IAAI,SAAS,WAA6B;IAE1C,MAAM;CAIP"}
@@ -1 +1 @@
1
- {"version":3,"file":"bitmap-text.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/bitmap-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAGjD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,iBAAiB,CAAA;AAErB,qBAAa,cAAc,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;;gBAKlE,OAAO,EAAE,qBAAqB;IA+E1C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAS1B,MAAM;CAIhB"}
1
+ {"version":3,"file":"bitmap-text.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/bitmap-text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAGjD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,iBAAiB,CAAA;AAErB,qBAAa,cAAc,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;;gBAMlE,OAAO,EAAE,qBAAqB;IAkF1C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAS1B,MAAM;CAIhB"}
@@ -9,11 +9,11 @@ export type CircleNodeOptions = {
9
9
  export declare class CircleNode extends TransformableNode<Graphics, EventMap> {
10
10
  #private;
11
11
  constructor(options: CircleNodeOptions);
12
- get radius(): number;
13
12
  set radius(v: number);
14
- get fill(): FillInput | undefined;
13
+ get radius(): number;
15
14
  set fill(v: FillInput | undefined);
16
- get stroke(): StrokeInput | undefined;
15
+ get fill(): FillInput | undefined;
17
16
  set stroke(v: StrokeInput | undefined);
17
+ get stroke(): StrokeInput | undefined;
18
18
  }
19
19
  //# sourceMappingURL=circle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"circle.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/circle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAEnF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,GAAG,wBAAwB,CAAA;AAE5B,qBAAa,UAAW,SAAQ,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC;;gBAKvD,OAAO,EAAE,iBAAiB;IAgBtC,IAAI,MAAM,WAA0B;IACpC,IAAI,MAAM,CAAC,CAAC,QAAA,EAAoC;IAEhD,IAAI,IAAI,0BAAwB;IAChC,IAAI,IAAI,CAAC,CAAC,uBAAA,EAAkC;IAE5C,IAAI,MAAM,4BAA0B;IACpC,IAAI,MAAM,CAAC,CAAC,yBAAA,EAAoC;CACjD"}
1
+ {"version":3,"file":"circle.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/circle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAEnF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,GAAG,wBAAwB,CAAA;AAE5B,qBAAa,UAAW,SAAQ,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC;;gBAKvD,OAAO,EAAE,iBAAiB;IAgBtC,IAAI,MAAM,CAAC,CAAC,QAAA,EAKX;IACD,IAAI,MAAM,WAA0B;IAEpC,IAAI,IAAI,CAAC,CAAC,uBAAA,EAKT;IACD,IAAI,IAAI,0BAAwB;IAEhC,IAAI,MAAM,CAAC,CAAC,yBAAA,EAKX;IACD,IAAI,MAAM,4BAA0B;CACrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"deplay.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/deplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,qBAAa,SAAU,SAAQ,QAAQ,CAAC,QAAQ,CAAC;;gBAKnC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;cAM5B,MAAM,CAAC,EAAE,EAAE,MAAM;CASrC"}
1
+ {"version":3,"file":"deplay.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/deplay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,qBAAa,SAAU,SAAQ,QAAQ,CAAC,QAAQ,CAAC;;gBAKnC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;cAM5B,MAAM,CAAC,EAAE,EAAE,MAAM;CAUrC"}
@@ -6,7 +6,7 @@ export declare class DomContainerNode extends GameObject {
6
6
  constructor(el: HTMLElement, options?: DomContainerNodeOptions);
7
7
  protected set renderer(renderer: Renderer | undefined);
8
8
  protected get renderer(): Renderer | undefined;
9
- protected update(dt: number): void;
9
+ _updateWorldTransform(): void;
10
10
  remove(): void;
11
11
  }
12
12
  //# sourceMappingURL=dom-container.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dom-container.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/dom-container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,MAAM,uBAAuB,GAAG,EAAE,GAAG,iBAAiB,CAAA;AAE5D,qBAAa,gBAAiB,SAAQ,UAAU;;gBAGlC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,uBAAuB;IA0B9D,cAAuB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAO7D;IAED,cAAuB,QAAQ,IATW,QAAQ,GAAG,SAAS,CAW7D;IAED,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAUzB,MAAM;CAIhB"}
1
+ {"version":3,"file":"dom-container.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/dom-container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,MAAM,uBAAuB,GAAG,EAAE,GAAG,iBAAiB,CAAA;AAE5D,qBAAa,gBAAiB,SAAQ,UAAU;;gBAGlC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,uBAAuB;IA0B9D,cAAuB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAO7D;IAED,cAAuB,QAAQ,IATW,QAAQ,GAAG,SAAS,CAW7D;IAEQ,qBAAqB;IAUrB,MAAM;CAIhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"interval.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/interval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,qBAAa,YAAa,SAAQ,QAAQ,CAAC,QAAQ,CAAC;;IAClD,QAAQ,EAAE,MAAM,CAAA;gBAIJ,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;cAM/B,MAAM,CAAC,EAAE,EAAE,MAAM;CASrC"}
1
+ {"version":3,"file":"interval.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/interval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C,qBAAa,YAAa,SAAQ,QAAQ,CAAC,QAAQ,CAAC;;IAClD,QAAQ,EAAE,MAAM,CAAA;gBAIJ,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;cAM/B,MAAM,CAAC,EAAE,EAAE,MAAM;CAUrC"}
@@ -1 +1 @@
1
- {"version":3,"file":"particle.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/particle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgD,MAAM,SAAS,CAAA;AAEnF,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,KAAK,WAAW,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/C,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAA;IAEf,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,aAAa,EAAE,WAAW,CAAA;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,OAAO,CAAA;IAEzB,SAAS,CAAC,EAAE,WAAW,CAAA;CACxB,GAAG,iBAAiB,CAAA;AAkBrB,qBAAa,cAAe,SAAQ,UAAU;;gBAgBhC,OAAO,EAAE,qBAAqB;IA0BpC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IAmC9C,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM;IAsBlB,MAAM;CAIhB"}
1
+ {"version":3,"file":"particle.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/particle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAgD,MAAM,SAAS,CAAA;AAEnF,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,KAAK,WAAW,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/C,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAA;IAEf,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAA;IACrB,aAAa,EAAE,WAAW,CAAA;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,OAAO,CAAA;IAEzB,SAAS,CAAC,EAAE,WAAW,CAAA;CACxB,GAAG,iBAAiB,CAAA;AAkBrB,qBAAa,cAAe,SAAQ,UAAU;;gBAgBhC,OAAO,EAAE,qBAAqB;IA0BpC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;cAmC3B,MAAM,CAAC,EAAE,EAAE,MAAM;IAsB3B,MAAM;CAIhB"}
@@ -10,13 +10,13 @@ export type RectangleNodeOptions = {
10
10
  export declare class RectangleNode extends TransformableNode<Graphics, EventMap> {
11
11
  #private;
12
12
  constructor(options: RectangleNodeOptions);
13
- get width(): number;
14
13
  set width(v: number);
15
- get height(): number;
14
+ get width(): number;
16
15
  set height(v: number);
17
- get fill(): FillInput | undefined;
16
+ get height(): number;
18
17
  set fill(v: FillInput | undefined);
19
- get stroke(): StrokeInput | undefined;
18
+ get fill(): FillInput | undefined;
20
19
  set stroke(v: StrokeInput | undefined);
20
+ get stroke(): StrokeInput | undefined;
21
21
  }
22
22
  //# sourceMappingURL=rectangle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rectangle.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/rectangle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAEnF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,GAAG,wBAAwB,CAAA;AAE5B,qBAAa,aAAc,SAAQ,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC;;gBAM1D,OAAO,EAAE,oBAAoB;IAsBzC,IAAI,KAAK,WAAyB;IAClC,IAAI,KAAK,CAAC,CAAC,QAAA,EAAmC;IAE9C,IAAI,MAAM,WAA0B;IACpC,IAAI,MAAM,CAAC,CAAC,QAAA,EAAoC;IAEhD,IAAI,IAAI,0BAAwB;IAChC,IAAI,IAAI,CAAC,CAAC,uBAAA,EAAkC;IAE5C,IAAI,MAAM,4BAA0B;IACpC,IAAI,MAAM,CAAC,CAAC,yBAAA,EAAoC;CACjD"}
1
+ {"version":3,"file":"rectangle.d.ts","sourceRoot":"","sources":["../../../../src/node/ext/rectangle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAEnF,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB,GAAG,wBAAwB,CAAA;AAE5B,qBAAa,aAAc,SAAQ,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC;;gBAM1D,OAAO,EAAE,oBAAoB;IAsBzC,IAAI,KAAK,CAAC,CAAC,QAAA,EAKV;IACD,IAAI,KAAK,WAAyB;IAElC,IAAI,MAAM,CAAC,CAAC,QAAA,EAKX;IACD,IAAI,MAAM,WAA0B;IAEpC,IAAI,IAAI,CAAC,CAAC,uBAAA,EAKT;IACD,IAAI,IAAI,0BAAwB;IAEhC,IAAI,MAAM,CAAC,CAAC,yBAAA,EAKX;IACD,IAAI,MAAM,4BAA0B;CACrC"}
@@ -1,10 +1,10 @@
1
1
  import { EventMap } from '@webtaku/event-emitter';
2
2
  import { Container as PixiContainer } from 'pixi.js';
3
- import { Collider } from '../../collision/colliders';
4
3
  import { GameNode } from '../core/game-node';
5
4
  import { RenderableNode } from '../core/renderable';
5
+ import { Rigidbody } from './rigidbodies';
6
6
  export type PhysicsObjectOptions = {
7
- collider: Collider;
7
+ rigidbody: Rigidbody;
8
8
  x?: number;
9
9
  y?: number;
10
10
  rotation?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"physics-object.d.ts","sourceRoot":"","sources":["../../../../src/node/physics/physics-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAEjD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAgB,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAoB,cAAc,EAAE,MAAM,oBAAoB,CAAA;AA6BrE,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,QAAQ,CAAA;IAClB,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,qBAAa,aAAa,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC;;gBAMpF,OAAO,EAAE,oBAAoB;IAoCzC,cAAuB,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,EASnE;IAED,cAAuB,MAAM,IAXS,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,CAanE;IAEQ,qBAAqB;IAyBrB,MAAM;IAKf,IAAI,CAAC,CAAC,CAAC,QAAA,EAAyF;IAChG,IAAI,CAAC,WAAyC;IAE9C,IAAI,CAAC,CAAC,CAAC,QAAA,EAAyF;IAChG,IAAI,CAAC,WAAyC;IAE9C,IAAI,QAAQ,CAAC,CAAC,QAAA,EAA+C;IAC7D,IAAI,QAAQ,WAAoC;IAEhD,IAAI,SAAS,CAAC,CAAC,QAAA,EAAyF;IACxG,IAAI,SAAS,WAAyC;IAEtD,IAAI,SAAS,CAAC,CAAC,QAAA,EAAyF;IACxG,IAAI,SAAS,WAAyC;IAEtD,IAAI,QAAQ,CAAC,CAAC,SAAA,EAAgD;IAC9D,IAAI,QAAQ,YAAuC;IAEnD,iBAAiB;CAGlB"}
1
+ {"version":3,"file":"physics-object.d.ts","sourceRoot":"","sources":["../../../../src/node/physics/physics-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAEjD,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAoB,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAGrE,OAAO,EAAE,SAAS,EAAiB,MAAM,eAAe,CAAA;AAExD,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,EAAE,SAAS,CAAA;IAEpB,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,CAAC,CAAC,EAAE,MAAM,CAAA;IACV,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,qBAAa,aAAa,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC;;gBAMpF,OAAO,EAAE,oBAAoB;IA+BzC,cAAuB,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,EASnE;IAED,cAAuB,MAAM,IAXS,QAAQ,CAAC,QAAQ,CAAC,GAAG,SAAS,CAanE;IAEQ,qBAAqB;IAyBrB,MAAM;IAKf,IAAI,CAAC,CAAC,CAAC,QAAA,EAAyF;IAChG,IAAI,CAAC,WAAyC;IAE9C,IAAI,CAAC,CAAC,CAAC,QAAA,EAAyF;IAChG,IAAI,CAAC,WAAyC;IAE9C,IAAI,QAAQ,CAAC,CAAC,QAAA,EAA+C;IAC7D,IAAI,QAAQ,WAAoC;IAEhD,IAAI,SAAS,CAAC,CAAC,QAAA,EAAyF;IACxG,IAAI,SAAS,WAAyC;IAEtD,IAAI,SAAS,CAAC,CAAC,QAAA,EAAyF;IACxG,IAAI,SAAS,WAAyC;IAEtD,IAAI,QAAQ,CAAC,CAAC,SAAA,EAAgD;IAC9D,IAAI,QAAQ,YAAuC;IAEnD,iBAAiB;CAGlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"physics-world.d.ts","sourceRoot":"","sources":["../../../../src/node/physics/physics-world.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,MAAM,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,qBAAa,YAAY,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC;;gBAGnF,OAAO,CAAC,EAAE,mBAAmB;IAUzC,IAAI,OAAO,CAAC,CAAC,QAAA,EAAsC;IACnD,IAAI,OAAO,WAA0C;IAErD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI;IACzB,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI;cAET,MAAM,CAAC,EAAE,EAAE,MAAM;IAO3B,MAAM;CAIhB"}
1
+ {"version":3,"file":"physics-world.d.ts","sourceRoot":"","sources":["../../../../src/node/physics/physics-world.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,MAAM,MAAM,WAAW,CAAA;AAC9B,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,qBAAa,YAAY,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,CAAE,SAAQ,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC;;gBAGnF,OAAO,CAAC,EAAE,mBAAmB;IAUzC,IAAI,OAAO,CAAC,CAAC,QAAA,EAAsC;IACnD,IAAI,OAAO,WAA0C;IAErD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI;IACzB,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI;cAET,MAAM,CAAC,EAAE,EAAE,MAAM;IAQ3B,MAAM;CAIhB"}
@@ -0,0 +1,23 @@
1
+ export declare enum RigidbodyType {
2
+ Rectangle = 0,
3
+ Circle = 1,
4
+ Polygon = 2
5
+ }
6
+ export type RectangleRigidbody = {
7
+ type: RigidbodyType.Rectangle;
8
+ width: number;
9
+ height: number;
10
+ };
11
+ export type CircleRigidbody = {
12
+ type: RigidbodyType.Circle;
13
+ radius: number;
14
+ };
15
+ export type PolygonRigidbody = {
16
+ type: RigidbodyType.Polygon;
17
+ vertices: {
18
+ x: number;
19
+ y: number;
20
+ }[];
21
+ };
22
+ export type Rigidbody = RectangleRigidbody | CircleRigidbody | PolygonRigidbody;
23
+ //# sourceMappingURL=rigidbodies.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rigidbodies.d.ts","sourceRoot":"","sources":["../../../../src/node/physics/rigidbodies.ts"],"names":[],"mappings":"AAAA,oBAAY,aAAa;IACvB,SAAS,IAAA;IACT,MAAM,IAAA;IACN,OAAO,IAAA;CACR;AAED,MAAM,MAAM,kBAAkB,GAAG;IAAE,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AACjG,MAAM,MAAM,eAAe,GAAG;IAAE,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAC5E,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC;IAAC,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,CAAA;AAEpG,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,eAAe,GACf,gBAAgB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../../src/renderer/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAyC,WAAW,EAAE,SAAS,IAAI,aAAa,EAA4B,MAAM,SAAS,CAAA;AAGlI,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAI1C,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,WAAW,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC/C,CAAA;AAED,qBAAa,QAAS,SAAQ,cAAc,CAAC,aAAa,EAAE;IAC1D,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CAChD,CAAC;;IAuBmB,SAAS,EAAE,WAAW;IApBzC,MAAM,SAAe;IACrB,UAAU,CAAC,EAAE,UAAU,CAAA;IASvB,YAAY,UAAQ;IAEpB,WAAW,SAAI;IACf,YAAY,SAAI;IAChB,UAAU,SAAI;IACd,SAAS,SAAI;IACb,aAAa,SAAI;IACjB,OAAO,SAAI;IACX,OAAO,SAAI;gBAEQ,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,eAAe;YAoCtD,IAAI;IAgFlB,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,MAAM;IAMnE,MAAM;IAQf,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;;;;CAK/C"}
1
+ {"version":3,"file":"renderer.d.ts","sourceRoot":"","sources":["../../../src/renderer/renderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAyC,WAAW,EAAE,SAAS,IAAI,aAAa,EAA4B,MAAM,SAAS,CAAA;AAGlI,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAI1C,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,eAAe,CAAC,EAAE,WAAW,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC/C,CAAA;AAED,qBAAa,QAAS,SAAQ,cAAc,CAAC,aAAa,EAAE;IAC1D,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;CAChD,CAAC;;IAuBmB,SAAS,EAAE,WAAW;IApBzC,MAAM,SAAe;IACrB,UAAU,CAAC,EAAE,UAAU,CAAA;IASvB,YAAY,UAAQ;IAEpB,WAAW,SAAI;IACf,YAAY,SAAI;IAChB,UAAU,SAAI;IACd,SAAS,SAAI;IACb,aAAa,SAAI;IACjB,OAAO,SAAI;IACX,OAAO,SAAI;gBAEQ,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,eAAe;YAoCtD,IAAI;IAiFlB,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,MAAM;IAMnE,MAAM;IAQf,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;;;;CAK/C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sprite-atlas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprite-atlas.js","sourceRoot":"","sources":["../../src/types/sprite-atlas.ts"],"names":[],"mappings":"","sourcesContent":["export type AnimationAtlas = {\n frames: Record<string, { x: number, y: number, w: number, h: number }>\n animations: Record<string, { frames: string[], loop?: boolean }>\n}\n"]}
@@ -0,0 +1,14 @@
1
+ export type AnimationAtlas = {
2
+ frames: Record<string, {
3
+ x: number;
4
+ y: number;
5
+ w: number;
6
+ h: number;
7
+ }>;
8
+ animations: Record<string, {
9
+ frames: string[];
10
+ fps: number;
11
+ loop?: boolean;
12
+ }>;
13
+ };
14
+ //# sourceMappingURL=animation-atlas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animation-atlas.d.ts","sourceRoot":"","sources":["../../../src/types/animation-atlas.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACtE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CAC9E,CAAA"}
@@ -0,0 +1,12 @@
1
+ export type Atlas = {
2
+ frames: Record<string, {
3
+ frame: {
4
+ x: number;
5
+ y: number;
6
+ w: number;
7
+ h: number;
8
+ };
9
+ }>;
10
+ animations: Record<string, string[]>;
11
+ };
12
+ //# sourceMappingURL=atlas%20copy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atlas copy.d.ts","sourceRoot":"","sources":["../../../src/types/atlas copy.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE;YAAE,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAC;YAAC,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,CAAA;IACjF,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CACrC,CAAA"}
@@ -0,0 +1,16 @@
1
+ export interface Frame {
2
+ x: number;
3
+ y: number;
4
+ w: number;
5
+ h: number;
6
+ }
7
+ export type Animation = {
8
+ frames: string[];
9
+ fps: number;
10
+ loop: boolean;
11
+ };
12
+ export type Atlas = {
13
+ frames: Record<string, Frame>;
14
+ animations: Record<string, Animation>;
15
+ };
16
+ //# sourceMappingURL=atlas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atlas.d.ts","sourceRoot":"","sources":["../../../src/types/atlas.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;CACtC,CAAA"}
@@ -0,0 +1,13 @@
1
+ export type AnimationAtlas = {
2
+ frames: Record<string, {
3
+ x: number;
4
+ y: number;
5
+ w: number;
6
+ h: number;
7
+ }>;
8
+ animations: Record<string, {
9
+ frames: string[];
10
+ loop?: boolean;
11
+ }>;
12
+ };
13
+ //# sourceMappingURL=sprite-atlas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sprite-atlas.d.ts","sourceRoot":"","sources":["../../../src/types/sprite-atlas.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACtE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CACjE,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiwiengine",
3
- "version": "0.5.2",
3
+ "version": "0.5.3",
4
4
  "types": "./lib/types/index.d.ts",
5
5
  "main": "./lib/index.js",
6
6
  "dependencies": {
@@ -10,9 +10,8 @@ class AudioLoader extends Loader<AudioBuffer> {
10
10
  return
11
11
  }
12
12
 
13
- const arrayBuffer = await response.arrayBuffer()
14
-
15
13
  try {
14
+ const arrayBuffer = await response.arrayBuffer()
16
15
  const audioBuffer = await audioContext.decodeAudioData(arrayBuffer)
17
16
 
18
17
  this.loadingPromises.delete(src)
@@ -34,6 +33,10 @@ class AudioLoader extends Loader<AudioBuffer> {
34
33
  this.loadingPromises.set(src, loadingPromise)
35
34
  return await loadingPromise
36
35
  }
36
+
37
+ override async load(src: string) {
38
+ return await super.load(src)
39
+ }
37
40
  }
38
41
 
39
42
  export const audioLoader = new AudioLoader()
@@ -10,7 +10,6 @@ class BinaryLoader extends Loader<Uint8Array> {
10
10
  }
11
11
 
12
12
  const arrayBuffer = await response.arrayBuffer()
13
- const data = new Uint8Array(arrayBuffer)
14
13
 
15
14
  this.loadingPromises.delete(src)
16
15
 
@@ -18,6 +17,7 @@ class BinaryLoader extends Loader<Uint8Array> {
18
17
  if (this.cachedAssets.has(src)) {
19
18
  console.error(`Binary data already exists: ${src}`)
20
19
  } else {
20
+ const data = new Uint8Array(arrayBuffer)
21
21
  this.cachedAssets.set(src, data)
22
22
  return data
23
23
  }
@@ -27,6 +27,10 @@ class BinaryLoader extends Loader<Uint8Array> {
27
27
  this.loadingPromises.set(src, loadingPromise)
28
28
  return await loadingPromise
29
29
  }
30
+
31
+ override async load(src: string) {
32
+ return await super.load(src)
33
+ }
30
34
  }
31
35
 
32
36
  export const binaryLoader = new BinaryLoader()
@@ -24,41 +24,43 @@ class BitmapFontLoader extends Loader<BitmapFont> {
24
24
  try {
25
25
  const text = await response.text()
26
26
 
27
- const parser = new DOMParser()
28
- const xmlDoc = parser.parseFromString(text, 'application/xml')
27
+ this.loadingPromises.delete(fnt)
29
28
 
30
- const infoEl = xmlDoc.getElementsByTagName('info')[0]
31
- const commonEl = xmlDoc.getElementsByTagName('common')[0]
32
- const charEls = xmlDoc.getElementsByTagName('char')
29
+ if (this.hasActiveRef(fnt)) {
30
+ if (this.cachedAssets.has(fnt)) {
31
+ textureLoader.release(src)
32
+ console.error(`Bitmap font already exists: ${fnt}`)
33
+ } else {
33
34
 
34
- const size = parseInt(infoEl.getAttribute('size') || '16', 10)
35
- const lineHeight = parseInt(commonEl.getAttribute('lineHeight') || '32', 10)
35
+ const parser = new DOMParser()
36
+ const xmlDoc = parser.parseFromString(text, 'application/xml')
36
37
 
37
- const chars: Record<number, Char> = {}
38
+ const infoEl = xmlDoc.getElementsByTagName('info')[0]
39
+ const commonEl = xmlDoc.getElementsByTagName('common')[0]
40
+ const charEls = xmlDoc.getElementsByTagName('char')
38
41
 
39
- for (let i = 0; i < charEls.length; i++) {
40
- const charEl = charEls[i]
42
+ const size = parseInt(infoEl.getAttribute('size') || '16', 10)
43
+ const lineHeight = parseInt(commonEl.getAttribute('lineHeight') || '32', 10)
41
44
 
42
- const id = parseInt(charEl.getAttribute('id')!, 10)
43
- const x = parseInt(charEl.getAttribute('x')!, 10)
44
- const y = parseInt(charEl.getAttribute('y')!, 10)
45
- const width = parseInt(charEl.getAttribute('width')!, 10)
46
- const height = parseInt(charEl.getAttribute('height')!, 10)
47
- const xoffset = parseInt(charEl.getAttribute('xoffset')!, 10)
48
- const yoffset = parseInt(charEl.getAttribute('yoffset')!, 10)
49
- const xadvance = parseInt(charEl.getAttribute('xadvance')!, 10)
45
+ const chars: Record<number, Char> = {}
50
46
 
51
- chars[id] = { x, y, width, height, xoffset, yoffset, xadvance }
52
- }
47
+ for (let i = 0; i < charEls.length; i++) {
48
+ const charEl = charEls[i]
53
49
 
54
- this.loadingPromises.delete(fnt)
50
+ const id = parseInt(charEl.getAttribute('id')!, 10)
51
+ const x = parseInt(charEl.getAttribute('x')!, 10)
52
+ const y = parseInt(charEl.getAttribute('y')!, 10)
53
+ const width = parseInt(charEl.getAttribute('width')!, 10)
54
+ const height = parseInt(charEl.getAttribute('height')!, 10)
55
+ const xoffset = parseInt(charEl.getAttribute('xoffset')!, 10)
56
+ const yoffset = parseInt(charEl.getAttribute('yoffset')!, 10)
57
+ const xadvance = parseInt(charEl.getAttribute('xadvance')!, 10)
58
+
59
+ chars[id] = { x, y, width, height, xoffset, yoffset, xadvance }
60
+ }
61
+
62
+ const bitmapFont = { src, chars, texture, size, lineHeight }
55
63
 
56
- const bitmapFont = { src, chars, texture, size, lineHeight }
57
- if (this.hasActiveRef(fnt)) {
58
- if (this.cachedAssets.has(fnt)) {
59
- textureLoader.release(src)
60
- console.error(`Bitmap font already exists: ${fnt}`)
61
- } else {
62
64
  this.cachedAssets.set(fnt, bitmapFont)
63
65
  return bitmapFont
64
66
  }
@@ -80,6 +82,10 @@ class BitmapFontLoader extends Loader<BitmapFont> {
80
82
  const src = this.#fntToSrc.get(fnt)
81
83
  if (src) textureLoader.release(src)
82
84
  }
85
+
86
+ override async load(fnt: string, src: string) {
87
+ return await super.load(fnt, src)
88
+ }
83
89
  }
84
90
 
85
91
  export const bitmapFontLoader = new BitmapFontLoader()
@@ -22,6 +22,10 @@ class FontFamilyLoader extends Loader<boolean> {
22
22
  this.loadingPromises.set(fontName, loadingPromise)
23
23
  return await loadingPromise
24
24
  }
25
+
26
+ override async load(fontName: string) {
27
+ return await super.load(fontName)
28
+ }
25
29
  }
26
30
 
27
31
  export const fontFamilyLoader = new FontFamilyLoader()
@@ -1,11 +1,12 @@
1
- import { Spritesheet, SpritesheetData } from 'pixi.js'
1
+ import { Dict, Spritesheet, SpritesheetFrameData } from 'pixi.js'
2
+ import { Atlas } from '../../types/atlas'
2
3
  import { Loader } from './loader'
3
4
  import { textureLoader } from './texture'
4
5
 
5
- const atlasIdCache = new WeakMap<SpritesheetData, Map<string, string>>()
6
+ const atlasIdCache = new WeakMap<Atlas, Map<string, string>>()
6
7
  let idCounter = 0
7
8
 
8
- export function getCachedAtlasId(src: string, atlas: SpritesheetData): string {
9
+ export function getCachedAtlasId(src: string, atlas: Atlas): string {
9
10
  let innerMap = atlasIdCache.get(atlas)
10
11
  if (!innerMap) {
11
12
  innerMap = new Map<string, string>()
@@ -22,7 +23,7 @@ export function getCachedAtlasId(src: string, atlas: SpritesheetData): string {
22
23
  class SpritesheetLoader extends Loader<Spritesheet> {
23
24
  #idToSrc = new Map<string, string>();
24
25
 
25
- protected override async doLoad(id: string, src: string, atlas: SpritesheetData) {
26
+ protected override async doLoad(id: string, src: string, atlas: Atlas) {
26
27
  this.#idToSrc.set(id, src)
27
28
 
28
29
  const loadingPromise = (async () => {
@@ -32,7 +33,15 @@ class SpritesheetLoader extends Loader<Spritesheet> {
32
33
  return
33
34
  }
34
35
 
35
- const spritesheet = new Spritesheet(texture, atlas)
36
+ const frames: Dict<SpritesheetFrameData> = {}
37
+ for (const [key, value] of Object.entries(atlas.frames)) {
38
+ frames[key] = { frame: value }
39
+ }
40
+ const animations: Dict<string[]> = {}
41
+ for (const [key, value] of Object.entries(atlas.animations)) {
42
+ animations[key] = value.frames
43
+ }
44
+ const spritesheet = new Spritesheet(texture, { frames, meta: { scale: 1 }, animations })
36
45
  await spritesheet.parse()
37
46
 
38
47
  this.loadingPromises.delete(id)
@@ -60,6 +69,10 @@ class SpritesheetLoader extends Loader<Spritesheet> {
60
69
  const src = this.#idToSrc.get(id)
61
70
  if (src) textureLoader.release(src)
62
71
  }
72
+
73
+ override async load(id: string, src: string, atlas: Atlas) {
74
+ return await super.load(id, src, atlas)
75
+ }
63
76
  }
64
77
 
65
78
  export const spritesheetLoader = new SpritesheetLoader()
@@ -26,6 +26,10 @@ class TextLoader extends Loader<string> {
26
26
  this.loadingPromises.set(src, loadingPromise)
27
27
  return await loadingPromise
28
28
  }
29
+
30
+ override async load(src: string) {
31
+ return await super.load(src)
32
+ }
29
33
  }
30
34
 
31
35
  export const textLoader = new TextLoader()