kiwiengine 0.5.2 → 0.5.4

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 +2 -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 +2 -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
package/README.ko.md CHANGED
@@ -411,10 +411,10 @@ world.gravity = 800
411
411
  Collider로 물리 바디를 만들고 **렌더/좌표를 동기화**합니다.
412
412
 
413
413
  ```ts
414
- import { PhysicsObject, ColliderType } from 'kiwiengine'
414
+ import { PhysicsObject, RigidbodyType } from 'kiwiengine'
415
415
 
416
416
  const ball = new PhysicsObject({
417
- collider: { type: ColliderType.Circle, radius: 20 },
417
+ rigidbody: { type: RigidbodyType.Circle, radius: 20 },
418
418
  x: 0, y: 200, velocityY: -600, useYSort: true
419
419
  })
420
420
  // 프로퍼티 동기화
package/README.md CHANGED
@@ -430,10 +430,10 @@ world.gravity = 800
430
430
  Creates a physics body from a **collider** and keeps its render transform in sync.
431
431
 
432
432
  ```ts
433
- import { PhysicsObject, ColliderType } from 'kiwiengine'
433
+ import { PhysicsObject, RigidbodyType } from 'kiwiengine'
434
434
 
435
435
  const ball = new PhysicsObject({
436
- collider: { type: ColliderType.Circle, radius: 20 },
436
+ rigidbody: { type: RigidbodyType.Circle, radius: 20 },
437
437
  x: 0, y: 200, velocityY: -600, useYSort: true,
438
438
  })
439
439
 
@@ -0,0 +1,107 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--Created using Glyph Designer - http://71squared.com/glyphdesigner-->
3
+ <font>
4
+ <info face="Peaberry" size="16" bold="0" italic="0" charset="" unicode="0" stretchH="100" smooth="1" aa="1" padding="0,0,0,0" spacing="2,2"/>
5
+ <common lineHeight="25" base="13" scaleW="215" scaleH="245" pages="1" packed="0"/>
6
+ <pages>
7
+ <page id="0" file="WhitePeaberry.png"/>
8
+ </pages>
9
+ <chars count="95">
10
+ <char id="32" x="20" y="208" width="0" height="0" xoffset="0" yoffset="27" xadvance="5" page="0" chnl="0" letter="space"/>
11
+ <char id="33" x="198" y="2" width="14" height="23" xoffset="-2" yoffset="5" xadvance="7" page="0" chnl="0" letter="!"/>
12
+ <char id="34" x="109" y="188" width="17" height="15" xoffset="-3" yoffset="5" xadvance="9" page="0" chnl="0" letter="&quot;"/>
13
+ <char id="35" x="149" y="29" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="#"/>
14
+ <char id="36" x="178" y="2" width="18" height="23" xoffset="-3" yoffset="5" xadvance="10" page="0" chnl="0" letter="$"/>
15
+ <char id="37" x="126" y="29" width="21" height="21" xoffset="-4" yoffset="6" xadvance="12" page="0" chnl="0" letter="%"/>
16
+ <char id="38" x="134" y="53" width="19" height="21" xoffset="-3" yoffset="6" xadvance="11" page="0" chnl="0" letter="&amp;"/>
17
+ <char id="39" x="77" y="188" width="14" height="16" xoffset="0" yoffset="5" xadvance="9" page="0" chnl="0" letter="'"/>
18
+ <char id="40" x="56" y="2" width="15" height="25" xoffset="-2" yoffset="5" xadvance="8" page="0" chnl="0" letter="("/>
19
+ <char id="41" x="73" y="2" width="15" height="25" xoffset="-2" yoffset="5" xadvance="8" page="0" chnl="0" letter=")"/>
20
+ <char id="42" x="134" y="145" width="18" height="19" xoffset="-2" yoffset="5" xadvance="11" page="0" chnl="0" letter="*"/>
21
+ <char id="43" x="45" y="168" width="18" height="18" xoffset="-2" yoffset="7" xadvance="11" page="0" chnl="0" letter="+"/>
22
+ <char id="44" x="93" y="188" width="14" height="16" xoffset="-3" yoffset="14" xadvance="6" page="0" chnl="0" letter=","/>
23
+ <char id="45" x="2" y="208" width="16" height="12" xoffset="-1" yoffset="12" xadvance="10" page="0" chnl="0" letter="-"/>
24
+ <char id="46" x="167" y="188" width="14" height="14" xoffset="-3" yoffset="13" xadvance="6" page="0" chnl="0" letter="."/>
25
+ <char id="47" x="42" y="29" width="16" height="22" xoffset="-4" yoffset="5" xadvance="7" page="0" chnl="0" letter="/"/>
26
+ <char id="48" x="176" y="53" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="0"/>
27
+ <char id="49" x="2" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="1"/>
28
+ <char id="50" x="22" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="2"/>
29
+ <char id="51" x="42" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="3"/>
30
+ <char id="52" x="62" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="4"/>
31
+ <char id="53" x="82" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="5"/>
32
+ <char id="54" x="102" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="6"/>
33
+ <char id="55" x="122" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="7"/>
34
+ <char id="56" x="142" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="8"/>
35
+ <char id="57" x="162" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="9"/>
36
+ <char id="58" x="118" y="145" width="14" height="20" xoffset="-3" yoffset="8" xadvance="6" page="0" chnl="0" letter=":"/>
37
+ <char id="59" x="78" y="29" width="14" height="22" xoffset="-3" yoffset="8" xadvance="6" page="0" chnl="0" letter=";"/>
38
+ <char id="60" x="42" y="145" width="17" height="21" xoffset="-3" yoffset="5" xadvance="9" page="0" chnl="0" letter="&lt;"/>
39
+ <char id="61" x="58" y="188" width="17" height="16" xoffset="-3" yoffset="8" xadvance="9" page="0" chnl="0" letter="="/>
40
+ <char id="62" x="61" y="145" width="17" height="21" xoffset="-3" yoffset="5" xadvance="9" page="0" chnl="0" letter="&gt;"/>
41
+ <char id="63" x="136" y="2" width="18" height="24" xoffset="-3" yoffset="5" xadvance="10" page="0" chnl="0" letter="?"/>
42
+ <char id="64" x="171" y="29" width="20" height="21" xoffset="-4" yoffset="8" xadvance="11" page="0" chnl="0" letter="@"/>
43
+ <char id="65" x="193" y="29" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="A"/>
44
+ <char id="66" x="182" y="76" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="B"/>
45
+ <char id="67" x="2" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="C"/>
46
+ <char id="68" x="22" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="D"/>
47
+ <char id="69" x="42" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="E"/>
48
+ <char id="70" x="62" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="F"/>
49
+ <char id="71" x="82" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="G"/>
50
+ <char id="72" x="102" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="H"/>
51
+ <char id="73" x="122" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="I"/>
52
+ <char id="74" x="142" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="J"/>
53
+ <char id="75" x="155" y="53" width="19" height="21" xoffset="-3" yoffset="6" xadvance="11" page="0" chnl="0" letter="K"/>
54
+ <char id="76" x="162" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="L"/>
55
+ <char id="77" x="2" y="53" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="M"/>
56
+ <char id="78" x="182" y="99" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="N"/>
57
+ <char id="79" x="24" y="53" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="O"/>
58
+ <char id="80" x="2" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="P"/>
59
+ <char id="81" x="156" y="2" width="20" height="23" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="Q"/>
60
+ <char id="82" x="22" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="R"/>
61
+ <char id="83" x="42" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="S"/>
62
+ <char id="84" x="62" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="T"/>
63
+ <char id="85" x="82" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="U"/>
64
+ <char id="86" x="46" y="53" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="V"/>
65
+ <char id="87" x="68" y="53" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="W"/>
66
+ <char id="88" x="90" y="53" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="X"/>
67
+ <char id="89" x="112" y="53" width="20" height="21" xoffset="-4" yoffset="6" xadvance="11" page="0" chnl="0" letter="Y"/>
68
+ <char id="90" x="102" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="Z"/>
69
+ <char id="91" x="90" y="2" width="14" height="25" xoffset="-3" yoffset="5" xadvance="6" page="0" chnl="0" letter="["/>
70
+ <char id="92" x="60" y="29" width="16" height="22" xoffset="-4" yoffset="5" xadvance="7" page="0" chnl="0" letter="\"/>
71
+ <char id="93" x="106" y="2" width="14" height="25" xoffset="-3" yoffset="5" xadvance="6" page="0" chnl="0" letter="]"/>
72
+ <char id="94" x="154" y="145" width="20" height="18" xoffset="-4" yoffset="5" xadvance="11" page="0" chnl="0" letter="^"/>
73
+ <char id="95" x="183" y="188" width="18" height="12" xoffset="-3" yoffset="18" xadvance="10" page="0" chnl="0" letter="_"/>
74
+ <char id="96" x="150" y="188" width="15" height="14" xoffset="-4" yoffset="5" xadvance="6" page="0" chnl="0" letter="`"/>
75
+ <char id="97" x="24" y="168" width="19" height="18" xoffset="-4" yoffset="9" xadvance="10" page="0" chnl="0" letter="a"/>
76
+ <char id="98" x="122" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="b"/>
77
+ <char id="99" x="2" y="188" width="17" height="18" xoffset="-3" yoffset="9" xadvance="9" page="0" chnl="0" letter="c"/>
78
+ <char id="100" x="142" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="d"/>
79
+ <char id="101" x="21" y="188" width="17" height="18" xoffset="-3" yoffset="9" xadvance="9" page="0" chnl="0" letter="e"/>
80
+ <char id="102" x="162" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="f"/>
81
+ <char id="103" x="2" y="29" width="18" height="22" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="g"/>
82
+ <char id="104" x="182" y="122" width="18" height="21" xoffset="-3" yoffset="6" xadvance="10" page="0" chnl="0" letter="h"/>
83
+ <char id="105" x="94" y="29" width="14" height="22" xoffset="-1" yoffset="5" xadvance="8" page="0" chnl="0" letter="i"/>
84
+ <char id="106" x="2" y="2" width="16" height="25" xoffset="-2" yoffset="5" xadvance="9" page="0" chnl="0" letter="j"/>
85
+ <char id="107" x="80" y="145" width="17" height="21" xoffset="-2" yoffset="6" xadvance="10" page="0" chnl="0" letter="k"/>
86
+ <char id="108" x="110" y="29" width="14" height="22" xoffset="-1" yoffset="5" xadvance="8" page="0" chnl="0" letter="l"/>
87
+ <char id="109" x="176" y="145" width="20" height="18" xoffset="-4" yoffset="9" xadvance="11" page="0" chnl="0" letter="m"/>
88
+ <char id="110" x="65" y="168" width="18" height="18" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="n"/>
89
+ <char id="111" x="85" y="168" width="18" height="18" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="o"/>
90
+ <char id="112" x="2" y="145" width="18" height="21" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="p"/>
91
+ <char id="113" x="22" y="145" width="18" height="21" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="q"/>
92
+ <char id="114" x="105" y="168" width="18" height="18" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="r"/>
93
+ <char id="115" x="40" y="188" width="16" height="18" xoffset="-2" yoffset="9" xadvance="9" page="0" chnl="0" letter="s"/>
94
+ <char id="116" x="99" y="145" width="17" height="21" xoffset="-3" yoffset="6" xadvance="9" page="0" chnl="0" letter="t"/>
95
+ <char id="117" x="125" y="168" width="18" height="18" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="u"/>
96
+ <char id="118" x="145" y="168" width="18" height="18" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="v"/>
97
+ <char id="119" x="2" y="168" width="20" height="18" xoffset="-4" yoffset="9" xadvance="11" page="0" chnl="0" letter="w"/>
98
+ <char id="120" x="165" y="168" width="18" height="18" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="x"/>
99
+ <char id="121" x="22" y="29" width="18" height="22" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="y"/>
100
+ <char id="122" x="185" y="168" width="18" height="18" xoffset="-3" yoffset="9" xadvance="10" page="0" chnl="0" letter="z"/>
101
+ <char id="123" x="20" y="2" width="16" height="25" xoffset="-4" yoffset="5" xadvance="7" page="0" chnl="0" letter="{"/>
102
+ <char id="124" x="122" y="2" width="12" height="25" xoffset="-3" yoffset="5" xadvance="4" page="0" chnl="0" letter="|"/>
103
+ <char id="125" x="38" y="2" width="16" height="25" xoffset="-4" yoffset="5" xadvance="7" page="0" chnl="0" letter="}"/>
104
+ <char id="126" x="128" y="188" width="20" height="14" xoffset="-4" yoffset="10" xadvance="11" page="0" chnl="0" letter="~"/>
105
+ </chars>
106
+ <kernings count="0"/>
107
+ </font>
@@ -0,0 +1,246 @@
1
+ {
2
+ "frames": {
3
+ "idle-1": {
4
+ "x": 0,
5
+ "y": 0,
6
+ "w": 100,
7
+ "h": 100
8
+ },
9
+ "idle-2": {
10
+ "x": 100,
11
+ "y": 0,
12
+ "w": 100,
13
+ "h": 100
14
+ },
15
+ "idle-3": {
16
+ "x": 200,
17
+ "y": 0,
18
+ "w": 100,
19
+ "h": 100
20
+ },
21
+ "idle-4": {
22
+ "x": 300,
23
+ "y": 0,
24
+ "w": 100,
25
+ "h": 100
26
+ },
27
+ "idle-5": {
28
+ "x": 400,
29
+ "y": 0,
30
+ "w": 100,
31
+ "h": 100
32
+ },
33
+ "idle-6": {
34
+ "x": 500,
35
+ "y": 0,
36
+ "w": 100,
37
+ "h": 100
38
+ },
39
+ "walk-1": {
40
+ "x": 0,
41
+ "y": 100,
42
+ "w": 100,
43
+ "h": 100
44
+ },
45
+ "walk-2": {
46
+ "x": 100,
47
+ "y": 100,
48
+ "w": 100,
49
+ "h": 100
50
+ },
51
+ "walk-3": {
52
+ "x": 200,
53
+ "y": 100,
54
+ "w": 100,
55
+ "h": 100
56
+ },
57
+ "walk-4": {
58
+ "x": 300,
59
+ "y": 100,
60
+ "w": 100,
61
+ "h": 100
62
+ },
63
+ "walk-5": {
64
+ "x": 400,
65
+ "y": 100,
66
+ "w": 100,
67
+ "h": 100
68
+ },
69
+ "walk-6": {
70
+ "x": 500,
71
+ "y": 100,
72
+ "w": 100,
73
+ "h": 100
74
+ },
75
+ "walk-7": {
76
+ "x": 600,
77
+ "y": 100,
78
+ "w": 100,
79
+ "h": 100
80
+ },
81
+ "walk-8": {
82
+ "x": 700,
83
+ "y": 100,
84
+ "w": 100,
85
+ "h": 100
86
+ },
87
+ "attack1-1": {
88
+ "x": 0,
89
+ "y": 200,
90
+ "w": 100,
91
+ "h": 100
92
+ },
93
+ "attack1-2": {
94
+ "x": 100,
95
+ "y": 200,
96
+ "w": 100,
97
+ "h": 100
98
+ },
99
+ "attack1-3": {
100
+ "x": 200,
101
+ "y": 200,
102
+ "w": 100,
103
+ "h": 100
104
+ },
105
+ "attack1-4": {
106
+ "x": 300,
107
+ "y": 200,
108
+ "w": 100,
109
+ "h": 100
110
+ },
111
+ "attack1-5": {
112
+ "x": 400,
113
+ "y": 200,
114
+ "w": 100,
115
+ "h": 100
116
+ },
117
+ "attack1-6": {
118
+ "x": 500,
119
+ "y": 200,
120
+ "w": 100,
121
+ "h": 100
122
+ },
123
+ "attack2-1": {
124
+ "x": 0,
125
+ "y": 300,
126
+ "w": 100,
127
+ "h": 100
128
+ },
129
+ "attack2-2": {
130
+ "x": 100,
131
+ "y": 300,
132
+ "w": 100,
133
+ "h": 100
134
+ },
135
+ "attack2-3": {
136
+ "x": 200,
137
+ "y": 300,
138
+ "w": 100,
139
+ "h": 100
140
+ },
141
+ "attack2-4": {
142
+ "x": 300,
143
+ "y": 300,
144
+ "w": 100,
145
+ "h": 100
146
+ },
147
+ "attack2-5": {
148
+ "x": 400,
149
+ "y": 300,
150
+ "w": 100,
151
+ "h": 100
152
+ },
153
+ "attack2-6": {
154
+ "x": 500,
155
+ "y": 300,
156
+ "w": 100,
157
+ "h": 100
158
+ },
159
+ "die-1": {
160
+ "x": 0,
161
+ "y": 600,
162
+ "w": 100,
163
+ "h": 100
164
+ },
165
+ "die-2": {
166
+ "x": 100,
167
+ "y": 600,
168
+ "w": 100,
169
+ "h": 100
170
+ },
171
+ "die-3": {
172
+ "x": 200,
173
+ "y": 600,
174
+ "w": 100,
175
+ "h": 100
176
+ },
177
+ "die-4": {
178
+ "x": 300,
179
+ "y": 600,
180
+ "w": 100,
181
+ "h": 100
182
+ }
183
+ },
184
+ "animations": {
185
+ "idle": {
186
+ "frames": [
187
+ "idle-1",
188
+ "idle-2",
189
+ "idle-3",
190
+ "idle-4",
191
+ "idle-5",
192
+ "idle-6"
193
+ ],
194
+ "fps": 10,
195
+ "loop": true
196
+ },
197
+ "walk": {
198
+ "frames": [
199
+ "walk-1",
200
+ "walk-2",
201
+ "walk-3",
202
+ "walk-4",
203
+ "walk-5",
204
+ "walk-6",
205
+ "walk-7",
206
+ "walk-8"
207
+ ],
208
+ "fps": 10,
209
+ "loop": true
210
+ },
211
+ "attack1": {
212
+ "frames": [
213
+ "attack1-1",
214
+ "attack1-2",
215
+ "attack1-3",
216
+ "attack1-4",
217
+ "attack1-5",
218
+ "attack1-6"
219
+ ],
220
+ "fps": 10,
221
+ "loop": false
222
+ },
223
+ "attack2": {
224
+ "frames": [
225
+ "attack2-1",
226
+ "attack2-2",
227
+ "attack2-3",
228
+ "attack2-4",
229
+ "attack2-5",
230
+ "attack2-6"
231
+ ],
232
+ "fps": 10,
233
+ "loop": false
234
+ },
235
+ "die": {
236
+ "frames": [
237
+ "die-1",
238
+ "die-2",
239
+ "die-3",
240
+ "die-4"
241
+ ],
242
+ "fps": 10,
243
+ "loop": false
244
+ }
245
+ }
246
+ }