react-native-games 0.8.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. package/README.md +474 -176
  2. package/lib/module/games/balloon-blaster/BalloonBlaster.js +9 -14
  3. package/lib/module/games/balloon-blaster/BalloonBlaster.js.map +1 -1
  4. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +1 -1
  5. package/lib/module/games/balloon-blaster/components/GameArea.js +1 -1
  6. package/lib/module/games/balloon-blaster/components/GameArea.js.map +1 -1
  7. package/lib/module/games/balloon-blaster/components/GameBackground.js +24 -17
  8. package/lib/module/games/balloon-blaster/components/GameBackground.js.map +1 -1
  9. package/lib/module/games/balloon-blaster/components/ScoreBoard.js +47 -47
  10. package/lib/module/games/balloon-blaster/components/ScoreBoard.js.map +1 -1
  11. package/lib/module/games/candy-crush/CandyCrush.js +16 -6
  12. package/lib/module/games/candy-crush/CandyCrush.js.map +1 -1
  13. package/lib/module/games/candy-crush/CandyCrushStore.js +4 -6
  14. package/lib/module/games/candy-crush/CandyCrushStore.js.map +1 -1
  15. package/lib/module/games/candy-crush/components/ScoreBoard.js +32 -65
  16. package/lib/module/games/candy-crush/components/ScoreBoard.js.map +1 -1
  17. package/lib/module/games/{color-sort/ColorSort.js → colors-sort/ColorsSort.js} +37 -24
  18. package/lib/module/games/colors-sort/ColorsSort.js.map +1 -0
  19. package/lib/module/games/{color-sort/ColorSortConstants.js → colors-sort/ColorsSortConstants.js} +11 -7
  20. package/lib/module/games/colors-sort/ColorsSortConstants.js.map +1 -0
  21. package/lib/module/games/{color-sort/ColorSortService.js → colors-sort/ColorsSortService.js} +1 -1
  22. package/lib/module/games/colors-sort/ColorsSortService.js.map +1 -0
  23. package/lib/module/games/{color-sort/ColorSortStore.js → colors-sort/ColorsSortStore.js} +20 -21
  24. package/lib/module/games/colors-sort/ColorsSortStore.js.map +1 -0
  25. package/lib/module/games/{color-sort → colors-sort}/components/ColorContainer.js +4 -4
  26. package/lib/module/games/colors-sort/components/ColorContainer.js.map +1 -0
  27. package/lib/module/games/{color-sort → colors-sort}/components/GameBackground.js +1 -1
  28. package/lib/module/games/colors-sort/components/GameBackground.js.map +1 -0
  29. package/lib/module/games/{color-sort → colors-sort}/components/ScoreBoard.js +14 -22
  30. package/lib/module/games/colors-sort/components/ScoreBoard.js.map +1 -0
  31. package/lib/module/games/colors-sort/components/index.js.map +1 -0
  32. package/lib/module/games/dino-jump/DinoJump.js +23 -23
  33. package/lib/module/games/dino-jump/DinoJump.js.map +1 -1
  34. package/lib/module/games/dino-jump/DinoJumpConstants.js +16 -6
  35. package/lib/module/games/dino-jump/DinoJumpConstants.js.map +1 -1
  36. package/lib/module/games/dino-jump/DinoJumpService.js +14 -12
  37. package/lib/module/games/dino-jump/DinoJumpService.js.map +1 -1
  38. package/lib/module/games/dino-jump/DinoJumpStore.js +14 -20
  39. package/lib/module/games/dino-jump/DinoJumpStore.js.map +1 -1
  40. package/lib/module/games/dino-jump/components/DinoSprite.js +15 -6
  41. package/lib/module/games/dino-jump/components/DinoSprite.js.map +1 -1
  42. package/lib/module/games/dino-jump/components/GameBackground.js +65 -42
  43. package/lib/module/games/dino-jump/components/GameBackground.js.map +1 -1
  44. package/lib/module/games/dino-jump/components/ScoreBoard.js +48 -50
  45. package/lib/module/games/dino-jump/components/ScoreBoard.js.map +1 -1
  46. package/lib/module/games/flappy-bird/FlappyBird.js +9 -14
  47. package/lib/module/games/flappy-bird/FlappyBird.js.map +1 -1
  48. package/lib/module/games/flappy-bird/FlappyBirdConstants.js +1 -1
  49. package/lib/module/games/flappy-bird/FlappyBirdStore.js +53 -29
  50. package/lib/module/games/flappy-bird/FlappyBirdStore.js.map +1 -1
  51. package/lib/module/games/flappy-bird/components/GameArea.js +3 -2
  52. package/lib/module/games/flappy-bird/components/GameArea.js.map +1 -1
  53. package/lib/module/games/flappy-bird/components/GameBackground.js +10 -43
  54. package/lib/module/games/flappy-bird/components/GameBackground.js.map +1 -1
  55. package/lib/module/games/flappy-bird/components/Pipes.js +65 -68
  56. package/lib/module/games/flappy-bird/components/Pipes.js.map +1 -1
  57. package/lib/module/games/flappy-bird/components/ScoreBoard.js +23 -22
  58. package/lib/module/games/flappy-bird/components/ScoreBoard.js.map +1 -1
  59. package/lib/module/games/fruit-merger/FruitMerger.js +13 -5
  60. package/lib/module/games/fruit-merger/FruitMerger.js.map +1 -1
  61. package/lib/module/games/fruit-merger/FruitMergerConstants.js +4 -4
  62. package/lib/module/games/fruit-merger/FruitMergerStore.js +5 -8
  63. package/lib/module/games/fruit-merger/FruitMergerStore.js.map +1 -1
  64. package/lib/module/games/fruit-merger/components/GameArea.js +5 -25
  65. package/lib/module/games/fruit-merger/components/GameArea.js.map +1 -1
  66. package/lib/module/games/fruit-merger/components/GameBackground.js +40 -19
  67. package/lib/module/games/fruit-merger/components/GameBackground.js.map +1 -1
  68. package/lib/module/games/fruit-merger/components/ScoreBoard.js +9 -17
  69. package/lib/module/games/fruit-merger/components/ScoreBoard.js.map +1 -1
  70. package/lib/module/games/fruit-ninja/FruitNinja.js +9 -14
  71. package/lib/module/games/fruit-ninja/FruitNinja.js.map +1 -1
  72. package/lib/module/games/fruit-ninja/FruitNinjaStore.js +1 -1
  73. package/lib/module/games/fruit-ninja/components/GameArea.js +1 -1
  74. package/lib/module/games/fruit-ninja/components/GameArea.js.map +1 -1
  75. package/lib/module/games/fruit-ninja/components/GameBackground.js +70 -45
  76. package/lib/module/games/fruit-ninja/components/GameBackground.js.map +1 -1
  77. package/lib/module/games/fruit-ninja/components/ScoreBoard.js +47 -46
  78. package/lib/module/games/fruit-ninja/components/ScoreBoard.js.map +1 -1
  79. package/lib/module/games/game-2048/Game2048.js +81 -52
  80. package/lib/module/games/game-2048/Game2048.js.map +1 -1
  81. package/lib/module/games/game-2048/Game2048Constants.js +18 -18
  82. package/lib/module/games/game-2048/Game2048Constants.js.map +1 -1
  83. package/lib/module/games/game-2048/Game2048Store.js +10 -12
  84. package/lib/module/games/game-2048/Game2048Store.js.map +1 -1
  85. package/lib/module/games/game-2048/components/ScoreBoard.js +25 -43
  86. package/lib/module/games/game-2048/components/ScoreBoard.js.map +1 -1
  87. package/lib/module/games/maze-runner/MazeRunner.js +22 -14
  88. package/lib/module/games/maze-runner/MazeRunner.js.map +1 -1
  89. package/lib/module/games/maze-runner/MazeRunnerService.js +19 -17
  90. package/lib/module/games/maze-runner/MazeRunnerService.js.map +1 -1
  91. package/lib/module/games/maze-runner/components/ScoreBoard.js +32 -42
  92. package/lib/module/games/maze-runner/components/ScoreBoard.js.map +1 -1
  93. package/lib/module/games/popit-fidget/PopitFidget.js +27 -38
  94. package/lib/module/games/popit-fidget/PopitFidget.js.map +1 -1
  95. package/lib/module/games/popit-fidget/PopitFidgetStore.js +6 -44
  96. package/lib/module/games/popit-fidget/PopitFidgetStore.js.map +1 -1
  97. package/lib/module/games/popit-fidget/components/ScoreBoard.js +31 -45
  98. package/lib/module/games/popit-fidget/components/ScoreBoard.js.map +1 -1
  99. package/lib/module/games/sliding-numbers/SlidingNumbers.js +18 -20
  100. package/lib/module/games/sliding-numbers/SlidingNumbers.js.map +1 -1
  101. package/lib/module/games/sliding-numbers/SlidingNumbersStore.js +4 -5
  102. package/lib/module/games/sliding-numbers/SlidingNumbersStore.js.map +1 -1
  103. package/lib/module/games/sliding-numbers/components/ScoreBoard.js +26 -28
  104. package/lib/module/games/sliding-numbers/components/ScoreBoard.js.map +1 -1
  105. package/lib/module/games/snake/Snake.js +23 -26
  106. package/lib/module/games/snake/Snake.js.map +1 -1
  107. package/lib/module/games/snake/SnakeConstants.js +2 -2
  108. package/lib/module/games/snake/SnakeStore.js +4 -6
  109. package/lib/module/games/snake/SnakeStore.js.map +1 -1
  110. package/lib/module/games/snake/components/ScoreBoard.js +10 -16
  111. package/lib/module/games/snake/components/ScoreBoard.js.map +1 -1
  112. package/lib/module/games/space-fighter/SpaceFighter.js +16 -17
  113. package/lib/module/games/space-fighter/SpaceFighter.js.map +1 -1
  114. package/lib/module/games/space-fighter/SpaceFighterService.js +7 -6
  115. package/lib/module/games/space-fighter/SpaceFighterService.js.map +1 -1
  116. package/lib/module/games/space-fighter/SpaceFighterStore.js +25 -11
  117. package/lib/module/games/space-fighter/SpaceFighterStore.js.map +1 -1
  118. package/lib/module/games/space-fighter/components/GameArea.js +1 -7
  119. package/lib/module/games/space-fighter/components/GameArea.js.map +1 -1
  120. package/lib/module/games/space-fighter/components/ScoreBoard.js +47 -48
  121. package/lib/module/games/space-fighter/components/ScoreBoard.js.map +1 -1
  122. package/lib/module/games/whack-a-mole/WhackAMole.js +12 -5
  123. package/lib/module/games/whack-a-mole/WhackAMole.js.map +1 -1
  124. package/lib/module/games/whack-a-mole/WhackAMoleStore.js +1 -1
  125. package/lib/module/games/whack-a-mole/components/GameBackground.js +37 -30
  126. package/lib/module/games/whack-a-mole/components/GameBackground.js.map +1 -1
  127. package/lib/module/games/whack-a-mole/components/ScoreBoard.js +32 -38
  128. package/lib/module/games/whack-a-mole/components/ScoreBoard.js.map +1 -1
  129. package/lib/module/helpers/AnimationFrame.js.map +1 -0
  130. package/lib/module/helpers/AnimationTracker.js.map +1 -0
  131. package/lib/module/helpers/ErrorHandler.js.map +1 -0
  132. package/lib/module/helpers/GameControlButton.js.map +1 -0
  133. package/lib/module/helpers/GameOverModal.js.map +1 -0
  134. package/lib/module/{shared/helpers → helpers}/GameSettingsModal.js +2 -2
  135. package/lib/module/helpers/GameSettingsModal.js.map +1 -0
  136. package/lib/module/helpers/ParticleBlast.js.map +1 -0
  137. package/lib/module/helpers/ScoreBoardContainer.js +34 -0
  138. package/lib/module/helpers/ScoreBoardContainer.js.map +1 -0
  139. package/lib/module/{shared/helpers → helpers}/index.js +1 -1
  140. package/lib/module/helpers/index.js.map +1 -0
  141. package/lib/module/index.js +2 -1
  142. package/lib/module/index.js.map +1 -1
  143. package/lib/module/services/GamesConstants.js +49 -10
  144. package/lib/module/services/GamesConstants.js.map +1 -1
  145. package/lib/module/services/GamesService.js +108 -82
  146. package/lib/module/services/GamesService.js.map +1 -1
  147. package/lib/module/services/SoundsService.js +1 -1
  148. package/lib/module/services/SoundsService.js.map +1 -1
  149. package/lib/module/services/UtilsService.js +32 -0
  150. package/lib/module/services/UtilsService.js.map +1 -0
  151. package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts +1 -1
  152. package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts.map +1 -1
  153. package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts +1 -0
  154. package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts.map +1 -1
  155. package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts +5 -1
  156. package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts.map +1 -1
  157. package/lib/typescript/src/games/candy-crush/CandyCrush.d.ts +1 -1
  158. package/lib/typescript/src/games/candy-crush/CandyCrush.d.ts.map +1 -1
  159. package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts.map +1 -1
  160. package/lib/typescript/src/games/candy-crush/components/ScoreBoard.d.ts +4 -1
  161. package/lib/typescript/src/games/candy-crush/components/ScoreBoard.d.ts.map +1 -1
  162. package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts +4 -0
  163. package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts.map +1 -0
  164. package/lib/typescript/src/games/{color-sort/ColorSortConstants.d.ts → colors-sort/ColorsSortConstants.d.ts} +8 -6
  165. package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts.map +1 -0
  166. package/lib/typescript/src/games/{color-sort/ColorSortService.d.ts → colors-sort/ColorsSortService.d.ts} +1 -1
  167. package/lib/typescript/src/games/colors-sort/ColorsSortService.d.ts.map +1 -0
  168. package/lib/typescript/src/games/{color-sort/ColorSortStore.d.ts → colors-sort/ColorsSortStore.d.ts} +6 -6
  169. package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts.map +1 -0
  170. package/lib/typescript/src/games/{color-sort → colors-sort}/components/ColorContainer.d.ts +1 -1
  171. package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts.map +1 -0
  172. package/lib/typescript/src/games/colors-sort/components/GameBackground.d.ts.map +1 -0
  173. package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts +7 -0
  174. package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts.map +1 -0
  175. package/lib/typescript/src/games/colors-sort/components/index.d.ts.map +1 -0
  176. package/lib/typescript/src/games/dino-jump/DinoJump.d.ts +1 -1
  177. package/lib/typescript/src/games/dino-jump/DinoJump.d.ts.map +1 -1
  178. package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts +6 -4
  179. package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts.map +1 -1
  180. package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts +4 -4
  181. package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts.map +1 -1
  182. package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts +3 -3
  183. package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts.map +1 -1
  184. package/lib/typescript/src/games/dino-jump/components/DinoSprite.d.ts.map +1 -1
  185. package/lib/typescript/src/games/dino-jump/components/GameArea.d.ts +1 -1
  186. package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts +1 -0
  187. package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts.map +1 -1
  188. package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts +5 -1
  189. package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts.map +1 -1
  190. package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts +1 -1
  191. package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts.map +1 -1
  192. package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts +1 -1
  193. package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts.map +1 -1
  194. package/lib/typescript/src/games/flappy-bird/components/GameArea.d.ts +1 -1
  195. package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts +1 -0
  196. package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts.map +1 -1
  197. package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts +1 -0
  198. package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts.map +1 -1
  199. package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts +5 -1
  200. package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts.map +1 -1
  201. package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts +1 -1
  202. package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts.map +1 -1
  203. package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts +1 -1
  204. package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts.map +1 -1
  205. package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts +1 -1
  206. package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts.map +1 -1
  207. package/lib/typescript/src/games/fruit-merger/components/GameBackground.d.ts +1 -0
  208. package/lib/typescript/src/games/fruit-merger/components/GameBackground.d.ts.map +1 -1
  209. package/lib/typescript/src/games/fruit-merger/components/ScoreBoard.d.ts +5 -1
  210. package/lib/typescript/src/games/fruit-merger/components/ScoreBoard.d.ts.map +1 -1
  211. package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts +1 -1
  212. package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts.map +1 -1
  213. package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts +1 -0
  214. package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts.map +1 -1
  215. package/lib/typescript/src/games/fruit-ninja/components/ScoreBoard.d.ts +5 -1
  216. package/lib/typescript/src/games/fruit-ninja/components/ScoreBoard.d.ts.map +1 -1
  217. package/lib/typescript/src/games/game-2048/Game2048.d.ts +1 -1
  218. package/lib/typescript/src/games/game-2048/Game2048.d.ts.map +1 -1
  219. package/lib/typescript/src/games/game-2048/Game2048Store.d.ts +3 -3
  220. package/lib/typescript/src/games/game-2048/Game2048Store.d.ts.map +1 -1
  221. package/lib/typescript/src/games/game-2048/components/ScoreBoard.d.ts +5 -1
  222. package/lib/typescript/src/games/game-2048/components/ScoreBoard.d.ts.map +1 -1
  223. package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts +1 -1
  224. package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts.map +1 -1
  225. package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts +1 -0
  226. package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts.map +1 -1
  227. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts +1 -0
  228. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts.map +1 -1
  229. package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts +1 -1
  230. package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts.map +1 -1
  231. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts +2 -5
  232. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts.map +1 -1
  233. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts +2 -2
  234. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts.map +1 -1
  235. package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts +1 -1
  236. package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts.map +1 -1
  237. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts.map +1 -1
  238. package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts +5 -1
  239. package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts.map +1 -1
  240. package/lib/typescript/src/games/snake/Snake.d.ts +1 -1
  241. package/lib/typescript/src/games/snake/Snake.d.ts.map +1 -1
  242. package/lib/typescript/src/games/snake/SnakeConstants.d.ts +2 -2
  243. package/lib/typescript/src/games/snake/SnakeStore.d.ts.map +1 -1
  244. package/lib/typescript/src/games/snake/components/ScoreBoard.d.ts +5 -1
  245. package/lib/typescript/src/games/snake/components/ScoreBoard.d.ts.map +1 -1
  246. package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts +1 -1
  247. package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts.map +1 -1
  248. package/lib/typescript/src/games/space-fighter/SpaceFighterService.d.ts.map +1 -1
  249. package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts +2 -0
  250. package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts.map +1 -1
  251. package/lib/typescript/src/games/space-fighter/components/GameArea.d.ts.map +1 -1
  252. package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts +5 -1
  253. package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts.map +1 -1
  254. package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts +1 -1
  255. package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts.map +1 -1
  256. package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts +1 -0
  257. package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts.map +1 -1
  258. package/lib/typescript/src/games/whack-a-mole/components/ScoreBoard.d.ts +1 -0
  259. package/lib/typescript/src/games/whack-a-mole/components/ScoreBoard.d.ts.map +1 -1
  260. package/lib/typescript/src/helpers/AnimationFrame.d.ts.map +1 -0
  261. package/lib/typescript/src/helpers/AnimationTracker.d.ts.map +1 -0
  262. package/lib/typescript/src/helpers/ErrorHandler.d.ts.map +1 -0
  263. package/lib/typescript/src/helpers/GameControlButton.d.ts.map +1 -0
  264. package/lib/typescript/src/helpers/GameOverModal.d.ts.map +1 -0
  265. package/lib/typescript/src/{shared/helpers → helpers}/GameSettingsModal.d.ts +1 -1
  266. package/lib/typescript/src/helpers/GameSettingsModal.d.ts.map +1 -0
  267. package/lib/typescript/src/helpers/ParticleBlast.d.ts.map +1 -0
  268. package/lib/typescript/src/helpers/ScoreBoardContainer.d.ts +9 -0
  269. package/lib/typescript/src/helpers/ScoreBoardContainer.d.ts.map +1 -0
  270. package/lib/typescript/src/{shared/helpers → helpers}/index.d.ts +2 -1
  271. package/lib/typescript/src/helpers/index.d.ts.map +1 -0
  272. package/lib/typescript/src/index.d.ts +2 -1
  273. package/lib/typescript/src/index.d.ts.map +1 -1
  274. package/lib/typescript/src/services/GamesConstants.d.ts +8 -2
  275. package/lib/typescript/src/services/GamesConstants.d.ts.map +1 -1
  276. package/lib/typescript/src/services/GamesService.d.ts +3 -33
  277. package/lib/typescript/src/services/GamesService.d.ts.map +1 -1
  278. package/lib/typescript/src/services/SoundsService.d.ts +1 -1
  279. package/lib/typescript/src/services/UtilsService.d.ts +38 -0
  280. package/lib/typescript/src/services/UtilsService.d.ts.map +1 -0
  281. package/package.json +1 -1
  282. package/lib/module/games/color-sort/ColorSort.js.map +0 -1
  283. package/lib/module/games/color-sort/ColorSortConstants.js.map +0 -1
  284. package/lib/module/games/color-sort/ColorSortService.js.map +0 -1
  285. package/lib/module/games/color-sort/ColorSortStore.js.map +0 -1
  286. package/lib/module/games/color-sort/components/ColorContainer.js.map +0 -1
  287. package/lib/module/games/color-sort/components/GameBackground.js.map +0 -1
  288. package/lib/module/games/color-sort/components/ScoreBoard.js.map +0 -1
  289. package/lib/module/games/color-sort/components/index.js.map +0 -1
  290. package/lib/module/shared/helpers/AnimationFrame.js.map +0 -1
  291. package/lib/module/shared/helpers/AnimationTracker.js.map +0 -1
  292. package/lib/module/shared/helpers/ErrorHandler.js.map +0 -1
  293. package/lib/module/shared/helpers/GameControlButton.js.map +0 -1
  294. package/lib/module/shared/helpers/GameOverModal.js.map +0 -1
  295. package/lib/module/shared/helpers/GameSettingsModal.js.map +0 -1
  296. package/lib/module/shared/helpers/ParticleBlast.js.map +0 -1
  297. package/lib/module/shared/helpers/ResponsiveScoreBoard.js +0 -81
  298. package/lib/module/shared/helpers/ResponsiveScoreBoard.js.map +0 -1
  299. package/lib/module/shared/helpers/index.js.map +0 -1
  300. package/lib/typescript/src/games/color-sort/ColorSort.d.ts +0 -4
  301. package/lib/typescript/src/games/color-sort/ColorSort.d.ts.map +0 -1
  302. package/lib/typescript/src/games/color-sort/ColorSortConstants.d.ts.map +0 -1
  303. package/lib/typescript/src/games/color-sort/ColorSortService.d.ts.map +0 -1
  304. package/lib/typescript/src/games/color-sort/ColorSortStore.d.ts.map +0 -1
  305. package/lib/typescript/src/games/color-sort/components/ColorContainer.d.ts.map +0 -1
  306. package/lib/typescript/src/games/color-sort/components/GameBackground.d.ts.map +0 -1
  307. package/lib/typescript/src/games/color-sort/components/ScoreBoard.d.ts +0 -3
  308. package/lib/typescript/src/games/color-sort/components/ScoreBoard.d.ts.map +0 -1
  309. package/lib/typescript/src/games/color-sort/components/index.d.ts.map +0 -1
  310. package/lib/typescript/src/shared/helpers/AnimationFrame.d.ts.map +0 -1
  311. package/lib/typescript/src/shared/helpers/AnimationTracker.d.ts.map +0 -1
  312. package/lib/typescript/src/shared/helpers/ErrorHandler.d.ts.map +0 -1
  313. package/lib/typescript/src/shared/helpers/GameControlButton.d.ts.map +0 -1
  314. package/lib/typescript/src/shared/helpers/GameOverModal.d.ts.map +0 -1
  315. package/lib/typescript/src/shared/helpers/GameSettingsModal.d.ts.map +0 -1
  316. package/lib/typescript/src/shared/helpers/ParticleBlast.d.ts.map +0 -1
  317. package/lib/typescript/src/shared/helpers/ResponsiveScoreBoard.d.ts +0 -42
  318. package/lib/typescript/src/shared/helpers/ResponsiveScoreBoard.d.ts.map +0 -1
  319. package/lib/typescript/src/shared/helpers/index.d.ts.map +0 -1
  320. /package/lib/module/games/{color-sort → colors-sort}/components/index.js +0 -0
  321. /package/lib/module/{shared/helpers → helpers}/AnimationFrame.js +0 -0
  322. /package/lib/module/{shared/helpers → helpers}/AnimationTracker.js +0 -0
  323. /package/lib/module/{shared/helpers → helpers}/ErrorHandler.js +0 -0
  324. /package/lib/module/{shared/helpers → helpers}/GameControlButton.js +0 -0
  325. /package/lib/module/{shared/helpers → helpers}/GameOverModal.js +0 -0
  326. /package/lib/module/{shared/helpers → helpers}/ParticleBlast.js +0 -0
  327. /package/lib/typescript/src/games/{color-sort → colors-sort}/components/GameBackground.d.ts +0 -0
  328. /package/lib/typescript/src/games/{color-sort → colors-sort}/components/index.d.ts +0 -0
  329. /package/lib/typescript/src/{shared/helpers → helpers}/AnimationFrame.d.ts +0 -0
  330. /package/lib/typescript/src/{shared/helpers → helpers}/AnimationTracker.d.ts +0 -0
  331. /package/lib/typescript/src/{shared/helpers → helpers}/ErrorHandler.d.ts +0 -0
  332. /package/lib/typescript/src/{shared/helpers → helpers}/GameControlButton.d.ts +0 -0
  333. /package/lib/typescript/src/{shared/helpers → helpers}/GameOverModal.d.ts +0 -0
  334. /package/lib/typescript/src/{shared/helpers → helpers}/ParticleBlast.d.ts +0 -0
@@ -7,9 +7,9 @@ import { useSpaceFighterStore } from "./SpaceFighterStore.js";
7
7
  import { createSpaceFighterService } from "./SpaceFighterService.js";
8
8
  import { getDifficultySettings } from "./SpaceFighterConstants.js";
9
9
  import { ScoreBoard, GameArea, GameBackground } from "./components/index.js";
10
- import { GameControlButton, GameOverModal, useGameErrorHandler, GameErrorType } from "../../shared/helpers/index.js";
11
- import { GameSettingsModal } from "../../shared/helpers/index.js";
12
- import { GAME_IDS, DEFAULT_GAME_SETTINGS } from "../../services/GamesService.js";
10
+ import { GameControlButton, GameOverModal, useGameErrorHandler, GameErrorType } from "../../helpers/index.js";
11
+ import { GameSettingsModal } from "../../helpers/index.js";
12
+ import { GAME_IDS, DEFAULT_GAME_SETTINGS } from "../../services/UtilsService.js";
13
13
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
14
  const {
15
15
  width,
@@ -30,6 +30,7 @@ export const SpaceFighter = ({
30
30
  const score = useSpaceFighterStore(state => state.score);
31
31
 
32
32
  // Get store actions independently (these don't cause re-renders)
33
+ const setOffset = useSpaceFighterStore(state => state.setOffset);
33
34
  const startGame = useSpaceFighterStore(state => state.startGame);
34
35
  const stopGame = useSpaceFighterStore(state => state.stopGame);
35
36
  const resetGame = useSpaceFighterStore(state => state.resetGame);
@@ -39,6 +40,14 @@ export const SpaceFighter = ({
39
40
  const updateAsteroid = useSpaceFighterStore(state => state.updateAsteroid);
40
41
  const updateSpacecraft = useSpaceFighterStore(state => state.updateSpacecraft);
41
42
 
43
+ // Get offset from settings
44
+ const offset = settings?.offset ?? 0;
45
+
46
+ // Update offset in store when it changes
47
+ useEffect(() => {
48
+ setOffset(offset);
49
+ }, [offset, setOffset]);
50
+
42
51
  // Error handling for the game
43
52
  const {
44
53
  wrapFunction,
@@ -75,11 +84,10 @@ export const SpaceFighter = ({
75
84
 
76
85
  // Game control functions with error handling and memoization
77
86
  const handleStartGame = useCallback(() => wrapFunction(() => {
78
- startGame(); // Store uses fixed 60s duration internally
87
+ startGame(); // Store uses fixed 60s duration internally and sets spacecraft position
79
88
  if (gameService) {
80
89
  gameService.updateDifficultySettings(difficultySettings.asteroidSpeed, difficultySettings.asteroidSpawnInterval);
81
- const initialSpacecraft = gameService.getInitialSpacecraft();
82
- updateSpacecraft(initialSpacecraft);
90
+ // Don't reset spacecraft position - store handles it with correct offset
83
91
  gameService.startGameTimer(decrementTime);
84
92
  gameService.startAsteroidSpawning(addAsteroids);
85
93
  gameService.startPhysicsLoop(updateSpacecraft, updateAsteroid, removeAsteroid, () => useSpaceFighterStore.getState().spacecraft, () => useSpaceFighterStore.getState().asteroids);
@@ -136,9 +144,8 @@ export const SpaceFighter = ({
136
144
  style: styles.container,
137
145
  children: /*#__PURE__*/_jsx(GestureHandlerRootView, {
138
146
  children: /*#__PURE__*/_jsxs(GameBackground, {
139
- children: [/*#__PURE__*/_jsx(GameArea, {}), /*#__PURE__*/_jsx(View, {
140
- style: styles.scoreboardContainer,
141
- children: /*#__PURE__*/_jsx(ScoreBoard, {})
147
+ children: [/*#__PURE__*/_jsx(GameArea, {}), /*#__PURE__*/_jsx(ScoreBoard, {
148
+ offset: offset
142
149
  }), /*#__PURE__*/_jsx(GameControlButton, {
143
150
  ...gameControlButtonProps
144
151
  }), /*#__PURE__*/_jsx(GameOverModal, {
@@ -153,14 +160,6 @@ export const SpaceFighter = ({
153
160
  const styles = StyleSheet.create({
154
161
  container: {
155
162
  flex: 1
156
- },
157
- scoreboardContainer: {
158
- position: 'absolute',
159
- top: 0,
160
- left: 20,
161
- right: 20,
162
- zIndex: 100,
163
- pointerEvents: 'none' // Allow touches to pass through to spacecraft below
164
163
  }
165
164
  });
166
165
  //# sourceMappingURL=SpaceFighter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useCallback","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","useSpaceFighterStore","createSpaceFighterService","getDifficultySettings","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useGameErrorHandler","GameErrorType","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","width","height","get","SpaceFighter","settings","onSettingsChange","difficulty","isPlaying","state","gameOver","score","startGame","stopGame","resetGame","decrementTime","addAsteroids","removeAsteroid","updateAsteroid","updateSpacecraft","wrapFunction","safeExecute","SPACE_FIGHTER","gameService","INITIALIZATION_ERROR","handleResetGame","cleanup","difficultySettings","handleStartGame","updateDifficultySettings","asteroidSpeed","asteroidSpawnInterval","initialSpacecraft","getInitialSpacecraft","startGameTimer","startAsteroidSpawning","startPhysicsLoop","getState","spacecraft","asteroids","handleStopGame","UNKNOWN_ERROR","gameControlButtonProps","onStartGame","onStopGame","startButtonText","stopButtonText","startButtonSubtext","stopButtonSubtext","startButtonColor","stopButtonColor","startButtonBorderColor","stopButtonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonColor","buttonBorderColor","gameSettingsModalProps","gameId","style","styles","container","children","scoreboardContainer","create","flex","position","top","left","right","zIndex","pointerEvents"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighter.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useCallback","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","useSpaceFighterStore","createSpaceFighterService","getDifficultySettings","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useGameErrorHandler","GameErrorType","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","width","height","get","SpaceFighter","settings","onSettingsChange","difficulty","isPlaying","state","gameOver","score","setOffset","startGame","stopGame","resetGame","decrementTime","addAsteroids","removeAsteroid","updateAsteroid","updateSpacecraft","offset","wrapFunction","safeExecute","SPACE_FIGHTER","gameService","INITIALIZATION_ERROR","handleResetGame","cleanup","difficultySettings","handleStartGame","updateDifficultySettings","asteroidSpeed","asteroidSpawnInterval","startGameTimer","startAsteroidSpawning","startPhysicsLoop","getState","spacecraft","asteroids","handleStopGame","UNKNOWN_ERROR","initialSpacecraft","getInitialSpacecraft","gameControlButtonProps","onStartGame","onStopGame","startButtonText","stopButtonText","startButtonSubtext","stopButtonSubtext","startButtonColor","stopButtonColor","startButtonBorderColor","stopButtonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonColor","buttonBorderColor","gameSettingsModalProps","gameId","style","styles","container","children","create","flex"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighter.tsx"],"mappings":"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","ignoreList":[]}
@@ -114,8 +114,9 @@ class SpaceFighterGameService {
114
114
  ...spacecraft
115
115
  };
116
116
 
117
- // Spacecraft never moves vertically - Y position is always locked to initial position
118
- newSpacecraft.y = this.height * 0.70; // Force Y position to always be at correct location (higher up)
117
+ // Spacecraft never moves vertically - Y position is always locked to current position
118
+ // The store manages the Y position based on offset, so we just maintain it
119
+ newSpacecraft.y = spacecraft.y; // Keep Y position as set by store
119
120
  newSpacecraft.velocityY = 0;
120
121
 
121
122
  // Only allow horizontal movement when being controlled
@@ -168,7 +169,8 @@ class SpaceFighterGameService {
168
169
  return {
169
170
  ...spacecraft,
170
171
  x: constrainedX,
171
- // Y position stays exactly the same - no vertical movement
172
+ y: spacecraft.y,
173
+ // Explicitly maintain Y position - no vertical movement
172
174
  velocityX: 0,
173
175
  velocityY: 0,
174
176
  isControlled: true
@@ -304,14 +306,13 @@ class SpaceFighterGameService {
304
306
  const elapsed = currentTime - this.lastCollisionTime;
305
307
  return Math.max(0, GAME_CONFIG.COLLISION_COOLDOWN - elapsed);
306
308
  }
307
-
308
309
  // Initial Spacecraft Position - Centered horizontally, positioned at bottom above start button
309
310
  getInitialSpacecraft() {
310
311
  return {
311
312
  x: this.width / 2,
312
313
  // Ensure exact center
313
- y: this.height * 0.70,
314
- // Position higher up for better gameplay
314
+ y: this.height * 0.77,
315
+ // Fixed position at 77% from top
315
316
  velocityX: 0,
316
317
  velocityY: 0,
317
318
  size: GAME_CONFIG.SPACECRAFT_SIZE,
@@ -1 +1 @@
1
- {"version":3,"names":["SPACE_FIGHTER_GAME_CONFIG","GAME_CONFIG","SPACE_FIGHTER_COLORS","COLORS","SpaceFighterGameService","gameTimer","asteroidSpawnTimer","physicsTimer","particles","lastCollisionTime","currentAsteroidSpeed","ASTEROID_SPEED","currentSpawnInterval","ASTEROID_SPAWN_INTERVAL","constructor","screenWidth","screenHeight","width","height","startGame","cleanup","clearInterval","startGameTimer","decrementTime","setInterval","updateDifficultySettings","asteroidSpeed","spawnInterval","startAsteroidSpawning","spawnAsteroid","initialAsteroids","generateAsteroidPair","asteroids","startPhysicsLoop","updateSpacecraft","updateAsteroid","removeAsteroid","getSpacecraft","getAsteroids","updatePhysics","pairId","Date","now","Math","random","minGapX","maxGapX","ASTEROID_GAP","gapX","leftAsteroid","id","x","y","ASTEROID_WIDTH","type","passed","spawnTime","rightAsteroid","spacecraft","newSpacecraft","velocityY","isControlled","velocityX","size","i","length","asteroid","newY","updateParticles","controlSpacecraft","targetX","_targetY","minX","maxX","constrainedX","max","min","releaseSpacecraft","checkCollision","currentTime","COLLISION_COOLDOWN","collision","spacecraftAsteroidCollision","asteroidId","spacecraftLeft","spacecraftRight","spacecraftTop","spacecraftBottom","asteroidLeft","asteroidRight","asteroidTop","asteroidBottom","checkAsteroidPass","passedAsteroids","push","createCollisionParticles","particle","color","SPACECRAFT","life","maxLife","bigParticle","activeParticles","getParticles","isInCollisionImmunity","getRemainingImmunityTime","elapsed","getInitialSpacecraft","SPACECRAFT_SIZE","createSpaceFighterService"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighterService.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["SPACE_FIGHTER_GAME_CONFIG","GAME_CONFIG","SPACE_FIGHTER_COLORS","COLORS","SpaceFighterGameService","gameTimer","asteroidSpawnTimer","physicsTimer","particles","lastCollisionTime","currentAsteroidSpeed","ASTEROID_SPEED","currentSpawnInterval","ASTEROID_SPAWN_INTERVAL","constructor","screenWidth","screenHeight","width","height","startGame","cleanup","clearInterval","startGameTimer","decrementTime","setInterval","updateDifficultySettings","asteroidSpeed","spawnInterval","startAsteroidSpawning","spawnAsteroid","initialAsteroids","generateAsteroidPair","asteroids","startPhysicsLoop","updateSpacecraft","updateAsteroid","removeAsteroid","getSpacecraft","getAsteroids","updatePhysics","pairId","Date","now","Math","random","minGapX","maxGapX","ASTEROID_GAP","gapX","leftAsteroid","id","x","y","ASTEROID_WIDTH","type","passed","spawnTime","rightAsteroid","spacecraft","newSpacecraft","velocityY","isControlled","velocityX","size","i","length","asteroid","newY","updateParticles","controlSpacecraft","targetX","_targetY","minX","maxX","constrainedX","max","min","releaseSpacecraft","checkCollision","currentTime","COLLISION_COOLDOWN","collision","spacecraftAsteroidCollision","asteroidId","spacecraftLeft","spacecraftRight","spacecraftTop","spacecraftBottom","asteroidLeft","asteroidRight","asteroidTop","asteroidBottom","checkAsteroidPass","passedAsteroids","push","createCollisionParticles","particle","color","SPACECRAFT","life","maxLife","bigParticle","activeParticles","getParticles","isInCollisionImmunity","getRemainingImmunityTime","elapsed","getInitialSpacecraft","SPACECRAFT_SIZE","createSpaceFighterService"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighterService.ts"],"mappings":"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","ignoreList":[]}
@@ -4,11 +4,17 @@ import { create } from 'zustand';
4
4
  import { subscribeWithSelector } from 'zustand/middleware';
5
5
  import { Dimensions } from 'react-native';
6
6
  import { GAME_CONFIG } from "./SpaceFighterService.js";
7
- import { immerMiddleware } from "../../services/GamesService.js";
7
+ import { immerMiddleware } from "../../services/UtilsService.js";
8
8
  const {
9
9
  width,
10
10
  height
11
11
  } = Dimensions.get('window');
12
+
13
+ // Helper function to get spacecraft Y position based on offset
14
+ const getSpacecraftYPosition = (offset = 0) => {
15
+ const yPercent = offset > 0 ? 0.77 : 0.68;
16
+ return height * yPercent;
17
+ };
12
18
  // Optimized store with selective subscriptions for low-end devices
13
19
  export const useSpaceFighterStore = create()(subscribeWithSelector(immerMiddleware((set, _get) => ({
14
20
  // Initial state
@@ -22,8 +28,8 @@ export const useSpaceFighterStore = create()(subscribeWithSelector(immerMiddlewa
22
28
  spacecraft: {
23
29
  x: width / 2,
24
30
  // Center horizontally
25
- y: height * 0.78,
26
- // Position at bottom above start button (moved up)
31
+ y: getSpacecraftYPosition(0),
32
+ // Dynamic position based on offset
27
33
  velocityX: 0,
28
34
  velocityY: 0,
29
35
  size: GAME_CONFIG.SPACECRAFT_SIZE,
@@ -31,7 +37,15 @@ export const useSpaceFighterStore = create()(subscribeWithSelector(immerMiddlewa
31
37
  },
32
38
  spacecraftPath: [],
33
39
  isControllingSpacecraft: false,
40
+ offset: 0,
34
41
  // Actions
42
+ setOffset: offset => {
43
+ set(draft => {
44
+ draft.offset = offset;
45
+ // Update spacecraft Y position when offset changes
46
+ draft.spacecraft.y = getSpacecraftYPosition(offset);
47
+ });
48
+ },
35
49
  startGame: _gameDuration => {
36
50
  // Always use fixed duration regardless of difficulty or passed duration
37
51
  const duration = 60;
@@ -48,8 +62,8 @@ export const useSpaceFighterStore = create()(subscribeWithSelector(immerMiddlewa
48
62
  draft.spacecraft = {
49
63
  x: width / 2,
50
64
  // Center horizontally
51
- y: height * 0.70,
52
- // Position higher up for better gameplay
65
+ y: getSpacecraftYPosition(draft.offset),
66
+ // Dynamic position based on offset
53
67
  velocityX: 0,
54
68
  velocityY: 0,
55
69
  size: GAME_CONFIG.SPACECRAFT_SIZE,
@@ -71,8 +85,8 @@ export const useSpaceFighterStore = create()(subscribeWithSelector(immerMiddlewa
71
85
  draft.spacecraft = {
72
86
  x: width / 2,
73
87
  // Center horizontally
74
- y: height * 0.70,
75
- // Position higher up for better gameplay
88
+ y: getSpacecraftYPosition(draft.offset),
89
+ // Dynamic position based on offset
76
90
  velocityX: 0,
77
91
  velocityY: 0,
78
92
  size: GAME_CONFIG.SPACECRAFT_SIZE,
@@ -94,8 +108,8 @@ export const useSpaceFighterStore = create()(subscribeWithSelector(immerMiddlewa
94
108
  draft.spacecraft = {
95
109
  x: width / 2,
96
110
  // Center horizontally
97
- y: height * 0.70,
98
- // Position higher up for better gameplay
111
+ y: getSpacecraftYPosition(draft.offset),
112
+ // Dynamic position based on offset
99
113
  velocityX: 0,
100
114
  velocityY: 0,
101
115
  size: GAME_CONFIG.SPACECRAFT_SIZE,
@@ -175,8 +189,8 @@ export const useSpaceFighterStore = create()(subscribeWithSelector(immerMiddlewa
175
189
  draft.spacecraft = {
176
190
  x: width / 2,
177
191
  // Center horizontally
178
- y: height * 0.70,
179
- // Position higher up for better gameplay
192
+ y: getSpacecraftYPosition(draft.offset),
193
+ // Dynamic position based on offset
180
194
  velocityX: 0,
181
195
  velocityY: 0,
182
196
  size: GAME_CONFIG.SPACECRAFT_SIZE,
@@ -1 +1 @@
1
- {"version":3,"names":["create","subscribeWithSelector","Dimensions","GAME_CONFIG","immerMiddleware","width","height","get","useSpaceFighterStore","set","_get","score","timeLeft","isPlaying","gameOver","lives","asteroids","spacecraft","x","y","velocityX","velocityY","size","SPACECRAFT_SIZE","isControlled","spacecraftPath","isControllingSpacecraft","startGame","_gameDuration","duration","draft","stopGame","resetGame","updateScore","points","decrementTime","newTimeLeft","addAsteroids","push","removeAsteroid","asteroidId","filter","a","id","updateAsteroid","updates","i","length","Object","assign","updateSpacecraft","setSpacecraftPath","path","setIsControllingSpacecraft","isControlling","markAsteroidPassed","pairId","passed","loseLife","newLives"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighterStore.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["create","subscribeWithSelector","Dimensions","GAME_CONFIG","immerMiddleware","width","height","get","getSpacecraftYPosition","offset","yPercent","useSpaceFighterStore","set","_get","score","timeLeft","isPlaying","gameOver","lives","asteroids","spacecraft","x","y","velocityX","velocityY","size","SPACECRAFT_SIZE","isControlled","spacecraftPath","isControllingSpacecraft","setOffset","draft","startGame","_gameDuration","duration","stopGame","resetGame","updateScore","points","decrementTime","newTimeLeft","addAsteroids","push","removeAsteroid","asteroidId","filter","a","id","updateAsteroid","updates","i","length","Object","assign","updateSpacecraft","setSpacecraftPath","path","setIsControllingSpacecraft","isControlling","markAsteroidPassed","pairId","passed","loseLife","newLives"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighterStore.ts"],"mappings":"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","ignoreList":[]}
@@ -7,7 +7,7 @@ import { useSpaceFighterStore } from "../SpaceFighterStore.js";
7
7
  import { createSpaceFighterService } from "../SpaceFighterService.js";
8
8
  import { playSound, GAME_SOUNDS } from "../../../services/SoundsService.js";
9
9
  import { playHaptic, HapticType } from "../../../services/HapticsService.js";
10
- import { ParticleBlast } from "../../../shared/helpers/index.js";
10
+ import { ParticleBlast } from "../../../helpers/index.js";
11
11
  import { AsteroidComponent } from "./AsteroidComponent.js";
12
12
  import { Spacecraft3D } from "./Spacecraft3D.js";
13
13
  import { SpacecraftPath } from "./SpacecraftPath.js";
@@ -38,12 +38,6 @@ export const GameArea = /*#__PURE__*/React.memo(() => {
38
38
  // Game service ref
39
39
  const gameService = useRef(createSpaceFighterService(width, height)).current;
40
40
 
41
- // Initialize spacecraft position on mount
42
- useEffect(() => {
43
- const initialSpacecraft = gameService.getInitialSpacecraft();
44
- updateSpacecraft(initialSpacecraft);
45
- }, [gameService, updateSpacecraft]);
46
-
47
41
  // Spacecraft control refs
48
42
  const currentSpacecraftPath = useRef([]);
49
43
  const initialSpacecraftPosition = useRef(null);
@@ -1 +1 @@
1
- {"version":3,"names":["React","useRef","useEffect","useCallback","useState","useMemo","View","Text","StyleSheet","Dimensions","Gesture","GestureDetector","useSpaceFighterStore","createSpaceFighterService","playSound","GAME_SOUNDS","playHaptic","HapticType","ParticleBlast","AsteroidComponent","Spacecraft3D","SpacecraftPath","jsx","_jsx","jsxs","_jsxs","width","height","get","GameArea","memo","asteroids","state","spacecraft","spacecraftPath","isControllingSpacecraft","isPlaying","updateSpacecraft","setSpacecraftPath","setIsControllingSpacecraft","markAsteroidPassed","loseLife","gameService","current","initialSpacecraft","getInitialSpacecraft","currentSpacecraftPath","initialSpacecraftPosition","initialTouchPosition","pendingSpacecraftUpdate","animationFrameId","lastCollisionTime","activeBlasts","setActiveBlasts","particleColors","playSuccessSound","SPACE_FIGHTER","SUCCESS","LIGHT","playCollisionSound","COLLISION","HEAVY","handleSpacecraftControlStart","x","y","currentSpacecraft","getState","controlledSpacecraft","controlSpacecraft","processPendingSpacecraftUpdate","push","length","shift","handleSpacecraftControlMove","requestAnimationFrame","handleSpacecraftControlEnd","cancelAnimationFrame","releasedSpacecraft","releaseSpacecraft","setTimeout","interval","setInterval","currentAsteroids","collision","checkCollision","now","Date","blastId","prev","id","filter","blast","passedAsteroids","checkAsteroidPass","forEach","pairId","clearInterval","panGesture","Pan","onStart","event","absoluteX","absoluteY","onUpdate","dx","newX","newY","onEnd","onFinalize","runOnJS","style","styles","gameArea","children","path","map","asteroid","colors","particleCount","duration","isControlled","gesture","gestureOverlay","instructionsContainer","instructionsEmoji","instructionsTitle","instructionsSubtitle","create","flex","position","top","left","right","bottom","backgroundColor","zIndex","opacity","alignItems","justifyContent","textAlign","fontSize","marginBottom","color","fontWeight","marginTop"],"sourceRoot":"../../../../../src","sources":["games/space-fighter/components/GameArea.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useRef","useEffect","useCallback","useState","useMemo","View","Text","StyleSheet","Dimensions","Gesture","GestureDetector","useSpaceFighterStore","createSpaceFighterService","playSound","GAME_SOUNDS","playHaptic","HapticType","ParticleBlast","AsteroidComponent","Spacecraft3D","SpacecraftPath","jsx","_jsx","jsxs","_jsxs","width","height","get","GameArea","memo","asteroids","state","spacecraft","spacecraftPath","isControllingSpacecraft","isPlaying","updateSpacecraft","setSpacecraftPath","setIsControllingSpacecraft","markAsteroidPassed","loseLife","gameService","current","currentSpacecraftPath","initialSpacecraftPosition","initialTouchPosition","pendingSpacecraftUpdate","animationFrameId","lastCollisionTime","activeBlasts","setActiveBlasts","particleColors","playSuccessSound","SPACE_FIGHTER","SUCCESS","LIGHT","playCollisionSound","COLLISION","HEAVY","handleSpacecraftControlStart","x","y","currentSpacecraft","getState","controlledSpacecraft","controlSpacecraft","processPendingSpacecraftUpdate","push","length","shift","handleSpacecraftControlMove","requestAnimationFrame","handleSpacecraftControlEnd","cancelAnimationFrame","releasedSpacecraft","releaseSpacecraft","setTimeout","interval","setInterval","currentAsteroids","collision","checkCollision","now","Date","blastId","prev","id","filter","blast","passedAsteroids","checkAsteroidPass","forEach","pairId","clearInterval","panGesture","Pan","onStart","event","absoluteX","absoluteY","onUpdate","dx","newX","newY","onEnd","onFinalize","runOnJS","style","styles","gameArea","children","path","map","asteroid","colors","particleCount","duration","isControlled","gesture","gestureOverlay","instructionsContainer","instructionsEmoji","instructionsTitle","instructionsSubtitle","create","flex","position","top","left","right","bottom","backgroundColor","zIndex","opacity","alignItems","justifyContent","textAlign","fontSize","marginBottom","color","fontWeight","marginTop"],"sourceRoot":"../../../../../src","sources":["games/space-fighter/components/GameArea.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,73 +3,72 @@
3
3
  import React from 'react';
4
4
  import { View, Text, StyleSheet } from 'react-native';
5
5
  import { useSpaceFighterStore } from "../SpaceFighterStore.js";
6
- import { RESPONSIVE_SCOREBOARD_CONTAINER, RESPONSIVE_SCOREBOARD_FONTS } from "../../../shared/helpers/index.js";
6
+ import { ScoreBoardContainer } from "../../../helpers/index.js";
7
7
 
8
8
  // Self-contained ScoreBoard component that reads directly from store
9
9
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
- export const ScoreBoard = /*#__PURE__*/React.memo(() => {
10
+ export const ScoreBoard = /*#__PURE__*/React.memo(({
11
+ offset = 0
12
+ }) => {
11
13
  // Read state directly from store to minimize re-renders
12
14
  const score = useSpaceFighterStore(state => state.score);
13
15
  const timeLeft = useSpaceFighterStore(state => state.timeLeft);
14
16
  const currentLives = useSpaceFighterStore(state => state.lives);
15
17
  const maxLives = 3;
16
- return /*#__PURE__*/_jsxs(View, {
17
- style: [styles.scoreBoard, {
18
- zIndex: 1000
19
- }],
20
- children: [/*#__PURE__*/_jsxs(View, {
21
- style: styles.scoreItem,
22
- children: [/*#__PURE__*/_jsx(Text, {
23
- style: styles.scoreLabel,
24
- children: "Score"
25
- }), /*#__PURE__*/_jsx(Text, {
26
- style: styles.scoreValue,
27
- children: score
18
+ return /*#__PURE__*/_jsx(ScoreBoardContainer, {
19
+ offset: offset,
20
+ backgroundColor: "rgba(147, 112, 219, 0.4)",
21
+ borderColor: "rgba(139, 92, 246, 0.3)",
22
+ children: /*#__PURE__*/_jsxs(View, {
23
+ style: styles.scoreBoard,
24
+ children: [/*#__PURE__*/_jsxs(View, {
25
+ style: styles.scoreItem,
26
+ children: [/*#__PURE__*/_jsx(Text, {
27
+ style: styles.scoreLabel,
28
+ children: "Score"
29
+ }), /*#__PURE__*/_jsx(Text, {
30
+ style: styles.scoreValue,
31
+ children: score
32
+ })]
33
+ }), /*#__PURE__*/_jsxs(View, {
34
+ style: styles.scoreItem,
35
+ children: [/*#__PURE__*/_jsx(Text, {
36
+ style: styles.scoreLabel,
37
+ children: "Time"
38
+ }), /*#__PURE__*/_jsx(Text, {
39
+ style: styles.timeValue,
40
+ children: timeLeft
41
+ })]
42
+ }), /*#__PURE__*/_jsxs(View, {
43
+ style: styles.scoreItem,
44
+ children: [/*#__PURE__*/_jsx(Text, {
45
+ style: styles.scoreLabel,
46
+ children: "Lives"
47
+ }), /*#__PURE__*/_jsx(View, {
48
+ style: styles.livesContainer,
49
+ children: Array.from({
50
+ length: maxLives
51
+ }, (_, i) => /*#__PURE__*/_jsx(Text, {
52
+ style: [styles.lifeIcon, i < currentLives ? styles.lifeActive : styles.lifeInactive],
53
+ children: i < currentLives ? '❤️' : '🖤'
54
+ }, i))
55
+ })]
28
56
  })]
29
- }), /*#__PURE__*/_jsxs(View, {
30
- style: styles.scoreItem,
31
- children: [/*#__PURE__*/_jsx(Text, {
32
- style: styles.scoreLabel,
33
- children: "Time"
34
- }), /*#__PURE__*/_jsx(Text, {
35
- style: styles.timeValue,
36
- children: timeLeft
37
- })]
38
- }), /*#__PURE__*/_jsxs(View, {
39
- style: styles.scoreItem,
40
- children: [/*#__PURE__*/_jsx(Text, {
41
- style: styles.scoreLabel,
42
- children: "Lives"
43
- }), /*#__PURE__*/_jsx(View, {
44
- style: styles.livesContainer,
45
- children: Array.from({
46
- length: maxLives
47
- }, (_, i) => /*#__PURE__*/_jsx(Text, {
48
- style: [styles.lifeIcon, i < currentLives ? styles.lifeActive : styles.lifeInactive],
49
- children: i < currentLives ? '❤️' : '🖤'
50
- }, i))
51
- })]
52
- })]
57
+ })
53
58
  });
54
59
  });
55
60
  const styles = StyleSheet.create({
56
61
  scoreBoard: {
57
- ...RESPONSIVE_SCOREBOARD_CONTAINER,
58
62
  flexDirection: 'row',
59
63
  justifyContent: 'space-between',
60
- alignItems: 'center',
61
- backgroundColor: 'rgba(147, 112, 219, 0.4)',
62
- // Matches start/stop button purple color with 0.4 opacity
63
- marginBottom: 20,
64
- borderWidth: 2,
65
- borderColor: 'rgba(139, 92, 246, 0.3)' // Purple space border
64
+ alignItems: 'center'
66
65
  },
67
66
  scoreItem: {
68
67
  alignItems: 'center',
69
68
  flex: 1
70
69
  },
71
70
  scoreLabel: {
72
- fontSize: RESPONSIVE_SCOREBOARD_FONTS.labelSize,
71
+ fontSize: 18,
73
72
  fontWeight: 'bold',
74
73
  color: '#e2e8f0',
75
74
  // Light space gray
@@ -82,7 +81,7 @@ const styles = StyleSheet.create({
82
81
  textShadowRadius: 2
83
82
  },
84
83
  scoreValue: {
85
- fontSize: RESPONSIVE_SCOREBOARD_FONTS.valueSize,
84
+ fontSize: 30,
86
85
  fontWeight: 'bold',
87
86
  color: '#fbbf24',
88
87
  // Bright yellow for score
@@ -94,7 +93,7 @@ const styles = StyleSheet.create({
94
93
  textShadowRadius: 2
95
94
  },
96
95
  timeValue: {
97
- fontSize: RESPONSIVE_SCOREBOARD_FONTS.timeSize,
96
+ fontSize: 30,
98
97
  fontWeight: 'bold',
99
98
  color: '#34d399',
100
99
  // Bright green for time
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","StyleSheet","useSpaceFighterStore","RESPONSIVE_SCOREBOARD_CONTAINER","RESPONSIVE_SCOREBOARD_FONTS","jsx","_jsx","jsxs","_jsxs","ScoreBoard","memo","score","state","timeLeft","currentLives","lives","maxLives","style","styles","scoreBoard","zIndex","children","scoreItem","scoreLabel","scoreValue","timeValue","livesContainer","Array","from","length","_","i","lifeIcon","lifeActive","lifeInactive","create","flexDirection","justifyContent","alignItems","backgroundColor","marginBottom","borderWidth","borderColor","flex","fontSize","labelSize","fontWeight","color","textShadowColor","textShadowOffset","width","height","textShadowRadius","valueSize","timeSize","marginHorizontal"],"sourceRoot":"../../../../../src","sources":["games/space-fighter/components/ScoreBoard.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Text","StyleSheet","useSpaceFighterStore","ScoreBoardContainer","jsx","_jsx","jsxs","_jsxs","ScoreBoard","memo","offset","score","state","timeLeft","currentLives","lives","maxLives","backgroundColor","borderColor","children","style","styles","scoreBoard","scoreItem","scoreLabel","scoreValue","timeValue","livesContainer","Array","from","length","_","i","lifeIcon","lifeActive","lifeInactive","create","flexDirection","justifyContent","alignItems","flex","fontSize","fontWeight","color","marginBottom","textShadowColor","textShadowOffset","width","height","textShadowRadius","marginHorizontal"],"sourceRoot":"../../../../../src","sources":["games/space-fighter/components/ScoreBoard.tsx"],"mappings":"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","ignoreList":[]}