react-native-games 0.3.0 → 0.4.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 (387) hide show
  1. package/README.md +45 -32
  2. package/lib/module/games/balloon-blaster/BalloonBlaster.js +160 -75
  3. package/lib/module/games/balloon-blaster/BalloonBlaster.js.map +1 -1
  4. package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js +183 -0
  5. package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js.map +1 -0
  6. package/lib/module/games/balloon-blaster/BalloonBlasterService.js +152 -55
  7. package/lib/module/games/balloon-blaster/BalloonBlasterService.js.map +1 -1
  8. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +108 -92
  9. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js.map +1 -1
  10. package/lib/module/games/balloon-blaster/components/BalloonComponent.js +48 -65
  11. package/lib/module/games/balloon-blaster/components/BalloonComponent.js.map +1 -1
  12. package/lib/module/games/balloon-blaster/components/GameArea.js +7 -2
  13. package/lib/module/games/balloon-blaster/components/GameArea.js.map +1 -1
  14. package/lib/module/games/balloon-blaster/components/GameBackground.js +8 -83
  15. package/lib/module/games/balloon-blaster/components/GameBackground.js.map +1 -1
  16. package/lib/module/games/balloon-blaster/components/ParticleSystem.js +9 -6
  17. package/lib/module/games/balloon-blaster/components/ParticleSystem.js.map +1 -1
  18. package/lib/module/games/balloon-blaster/components/ScoreBoard.js +8 -16
  19. package/lib/module/games/balloon-blaster/components/ScoreBoard.js.map +1 -1
  20. package/lib/module/games/balloon-blaster/components/index.js +0 -1
  21. package/lib/module/games/balloon-blaster/components/index.js.map +1 -1
  22. package/lib/module/games/{fruit-slicer/FruitSlicer.js → fruit-ninja/FruitNinja.js} +68 -54
  23. package/lib/module/games/fruit-ninja/FruitNinja.js.map +1 -0
  24. package/lib/module/games/fruit-ninja/FruitNinjaConstants.js +151 -0
  25. package/lib/module/games/fruit-ninja/FruitNinjaConstants.js.map +1 -0
  26. package/lib/module/games/{fruit-slicer/FruitSlicerService.js → fruit-ninja/FruitNinjaService.js} +13 -12
  27. package/lib/module/games/fruit-ninja/FruitNinjaService.js.map +1 -0
  28. package/lib/module/games/fruit-ninja/FruitNinjaStore.js +166 -0
  29. package/lib/module/games/fruit-ninja/FruitNinjaStore.js.map +1 -0
  30. package/lib/module/games/{fruit-slicer → fruit-ninja}/components/FruitComponent.js +1 -1
  31. package/lib/module/games/fruit-ninja/components/FruitComponent.js.map +1 -0
  32. package/lib/module/games/fruit-ninja/components/GameArea.js.map +1 -0
  33. package/lib/module/games/{fruit-slicer → fruit-ninja}/components/GameBackground.js +198 -169
  34. package/lib/module/games/fruit-ninja/components/GameBackground.js.map +1 -0
  35. package/lib/module/games/fruit-ninja/components/GameOverModal.js.map +1 -0
  36. package/lib/module/games/fruit-ninja/components/ParticleSystem.js.map +1 -0
  37. package/lib/module/games/{fruit-slicer → fruit-ninja}/components/ScoreBoard.js +8 -17
  38. package/lib/module/games/fruit-ninja/components/ScoreBoard.js.map +1 -0
  39. package/lib/module/games/{fruit-slicer → fruit-ninja}/components/SliceTrail.js +1 -1
  40. package/lib/module/games/fruit-ninja/components/SliceTrail.js.map +1 -0
  41. package/lib/module/games/{fruit-slicer → fruit-ninja}/components/index.js +0 -1
  42. package/lib/module/games/fruit-ninja/components/index.js.map +1 -0
  43. package/lib/module/games/maze-runner/MazeRunner.js +109 -91
  44. package/lib/module/games/maze-runner/MazeRunner.js.map +1 -1
  45. package/lib/module/games/maze-runner/MazeRunnerConstants.js +105 -0
  46. package/lib/module/games/maze-runner/MazeRunnerConstants.js.map +1 -0
  47. package/lib/module/games/maze-runner/MazeRunnerService.js +37 -14
  48. package/lib/module/games/maze-runner/MazeRunnerService.js.map +1 -1
  49. package/lib/module/games/maze-runner/components/EnhancedGameArea.js +5 -9
  50. package/lib/module/games/maze-runner/components/EnhancedGameArea.js.map +1 -1
  51. package/lib/module/games/maze-runner/components/GameBackground.js +151 -192
  52. package/lib/module/games/maze-runner/components/GameBackground.js.map +1 -1
  53. package/lib/module/games/maze-runner/components/ScoreBoard.js +8 -23
  54. package/lib/module/games/maze-runner/components/ScoreBoard.js.map +1 -1
  55. package/lib/module/games/maze-runner/components/index.js +0 -1
  56. package/lib/module/games/maze-runner/components/index.js.map +1 -1
  57. package/lib/module/games/popit-fidget/PopitFidget.js +293 -0
  58. package/lib/module/games/popit-fidget/PopitFidget.js.map +1 -0
  59. package/lib/module/games/popit-fidget/PopitFidgetConstants.js +116 -0
  60. package/lib/module/games/popit-fidget/PopitFidgetConstants.js.map +1 -0
  61. package/lib/module/games/popit-fidget/PopitFidgetService.js +191 -0
  62. package/lib/module/games/popit-fidget/PopitFidgetService.js.map +1 -0
  63. package/lib/module/games/popit-fidget/PopitFidgetStore.js +190 -0
  64. package/lib/module/games/popit-fidget/PopitFidgetStore.js.map +1 -0
  65. package/lib/module/games/popit-fidget/components/BubbleComponent.js +196 -0
  66. package/lib/module/games/popit-fidget/components/BubbleComponent.js.map +1 -0
  67. package/lib/module/games/popit-fidget/components/FidgetGrid.js +165 -0
  68. package/lib/module/games/popit-fidget/components/FidgetGrid.js.map +1 -0
  69. package/lib/module/games/popit-fidget/components/GameBackground.js +174 -0
  70. package/lib/module/games/popit-fidget/components/GameBackground.js.map +1 -0
  71. package/lib/module/games/popit-fidget/components/GameOverModal.js +132 -0
  72. package/lib/module/games/popit-fidget/components/GameOverModal.js.map +1 -0
  73. package/lib/module/games/popit-fidget/components/ParticleSystem.js +89 -0
  74. package/lib/module/games/popit-fidget/components/ParticleSystem.js.map +1 -0
  75. package/lib/module/games/popit-fidget/components/ScoreBoard.js +68 -0
  76. package/lib/module/games/popit-fidget/components/ScoreBoard.js.map +1 -0
  77. package/lib/module/games/popit-fidget/components/index.js +9 -0
  78. package/lib/module/games/popit-fidget/components/index.js.map +1 -0
  79. package/lib/module/games/{space-traveller/SpaceTraveller.js → space-fighter/SpaceFighter.js} +94 -70
  80. package/lib/module/games/space-fighter/SpaceFighter.js.map +1 -0
  81. package/lib/module/games/space-fighter/SpaceFighterConstants.js +110 -0
  82. package/lib/module/games/space-fighter/SpaceFighterConstants.js.map +1 -0
  83. package/lib/module/games/{space-traveller/SpaceTravellerService.js → space-fighter/SpaceFighterService.js} +18 -10
  84. package/lib/module/games/space-fighter/SpaceFighterService.js.map +1 -0
  85. package/lib/module/games/space-fighter/SpaceFighterStore.js +143 -0
  86. package/lib/module/games/space-fighter/SpaceFighterStore.js.map +1 -0
  87. package/lib/module/games/space-fighter/components/AsteroidComponent.js.map +1 -0
  88. package/lib/module/games/space-fighter/components/GameArea.js.map +1 -0
  89. package/lib/module/games/space-fighter/components/GameBackground.js.map +1 -0
  90. package/lib/module/games/space-fighter/components/GameOverModal.js.map +1 -0
  91. package/lib/module/games/space-fighter/components/ParticleComponent.js.map +1 -0
  92. package/lib/module/games/{space-traveller → space-fighter}/components/ScoreBoard.js +11 -19
  93. package/lib/module/games/space-fighter/components/ScoreBoard.js.map +1 -0
  94. package/lib/module/games/space-fighter/components/SettingsModal.js.map +1 -0
  95. package/lib/module/games/space-fighter/components/Spacecraft3D.js.map +1 -0
  96. package/lib/module/games/{space-traveller → space-fighter}/components/SpacecraftPath.js +1 -1
  97. package/lib/module/games/space-fighter/components/SpacecraftPath.js.map +1 -0
  98. package/lib/module/games/{space-traveller → space-fighter}/components/index.js +0 -1
  99. package/lib/module/games/space-fighter/components/index.js.map +1 -0
  100. package/lib/module/games/whack-a-mole/WhackAMole.js +273 -0
  101. package/lib/module/games/whack-a-mole/WhackAMole.js.map +1 -0
  102. package/lib/module/games/whack-a-mole/WhackAMoleConstants.js +117 -0
  103. package/lib/module/games/whack-a-mole/WhackAMoleConstants.js.map +1 -0
  104. package/lib/module/games/whack-a-mole/WhackAMoleService.js +120 -0
  105. package/lib/module/games/whack-a-mole/WhackAMoleService.js.map +1 -0
  106. package/lib/module/games/whack-a-mole/WhackAMoleStore.js +159 -0
  107. package/lib/module/games/whack-a-mole/WhackAMoleStore.js.map +1 -0
  108. package/lib/module/games/{cat-popper → whack-a-mole}/components/GameBackground.js +31 -91
  109. package/lib/module/games/whack-a-mole/components/GameBackground.js.map +1 -0
  110. package/lib/module/games/whack-a-mole/components/GameGrid.js +97 -0
  111. package/lib/module/games/whack-a-mole/components/GameGrid.js.map +1 -0
  112. package/lib/module/games/{cat-popper → whack-a-mole}/components/GameHole.js +67 -54
  113. package/lib/module/games/whack-a-mole/components/GameHole.js.map +1 -0
  114. package/lib/module/games/{cat-popper → whack-a-mole}/components/GameOverModal.js +2 -2
  115. package/lib/module/games/whack-a-mole/components/GameOverModal.js.map +1 -0
  116. package/lib/module/games/{cat-popper/components/CatCharacter.js → whack-a-mole/components/MoleCharacter.js} +75 -115
  117. package/lib/module/games/whack-a-mole/components/MoleCharacter.js.map +1 -0
  118. package/lib/module/games/{cat-popper → whack-a-mole}/components/ScoreBoard.js +8 -16
  119. package/lib/module/games/whack-a-mole/components/ScoreBoard.js.map +1 -0
  120. package/lib/module/games/{cat-popper → whack-a-mole}/components/index.js +1 -2
  121. package/lib/module/games/whack-a-mole/components/index.js.map +1 -0
  122. package/lib/module/index.js +4 -3
  123. package/lib/module/index.js.map +1 -1
  124. package/lib/module/services/GamesConstants.js +36 -506
  125. package/lib/module/services/GamesConstants.js.map +1 -1
  126. package/lib/module/services/GamesService.js +22 -14
  127. package/lib/module/services/GamesService.js.map +1 -1
  128. package/lib/module/services/HapticsService.js +77 -0
  129. package/lib/module/services/HapticsService.js.map +1 -0
  130. package/lib/module/services/SoundsService.js +171 -0
  131. package/lib/module/services/SoundsService.js.map +1 -0
  132. package/lib/module/{games/balloon-blaster/components/GameControls.js → shared/helpers/GameControlButton.js} +39 -58
  133. package/lib/module/shared/helpers/GameControlButton.js.map +1 -0
  134. package/lib/module/shared/helpers/ResponsiveScoreBoard.js +81 -0
  135. package/lib/module/shared/helpers/ResponsiveScoreBoard.js.map +1 -0
  136. package/lib/module/shared/helpers/index.js +5 -0
  137. package/lib/module/shared/helpers/index.js.map +1 -0
  138. package/lib/module/shared/settings/SettingsService.js +18 -12
  139. package/lib/module/shared/settings/SettingsService.js.map +1 -1
  140. package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts.map +1 -1
  141. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts +143 -0
  142. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts.map +1 -0
  143. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts +3 -1
  144. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts.map +1 -1
  145. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts +12 -2
  146. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts.map +1 -1
  147. package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts.map +1 -1
  148. package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts.map +1 -1
  149. package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts.map +1 -1
  150. package/lib/typescript/src/games/balloon-blaster/components/ParticleSystem.d.ts.map +1 -1
  151. package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts.map +1 -1
  152. package/lib/typescript/src/games/balloon-blaster/components/index.d.ts +0 -1
  153. package/lib/typescript/src/games/balloon-blaster/components/index.d.ts.map +1 -1
  154. package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts +16 -0
  155. package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts.map +1 -0
  156. package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts +112 -0
  157. package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts.map +1 -0
  158. package/lib/typescript/src/games/{fruit-slicer/FruitSlicerService.d.ts → fruit-ninja/FruitNinjaService.d.ts} +4 -4
  159. package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts.map +1 -0
  160. package/lib/typescript/src/games/{fruit-slicer/FruitSlicerStore.d.ts → fruit-ninja/FruitNinjaStore.d.ts} +12 -4
  161. package/lib/typescript/src/games/fruit-ninja/FruitNinjaStore.d.ts.map +1 -0
  162. package/lib/typescript/src/games/{fruit-slicer → fruit-ninja}/components/FruitComponent.d.ts +1 -1
  163. package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts.map +1 -0
  164. package/lib/typescript/src/games/{fruit-slicer → fruit-ninja}/components/GameArea.d.ts +1 -1
  165. package/lib/typescript/src/games/fruit-ninja/components/GameArea.d.ts.map +1 -0
  166. package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts.map +1 -0
  167. package/lib/typescript/src/games/fruit-ninja/components/GameOverModal.d.ts.map +1 -0
  168. package/lib/typescript/src/games/{fruit-slicer → fruit-ninja}/components/ParticleSystem.d.ts +1 -1
  169. package/lib/typescript/src/games/fruit-ninja/components/ParticleSystem.d.ts.map +1 -0
  170. package/lib/typescript/src/games/fruit-ninja/components/ScoreBoard.d.ts.map +1 -0
  171. package/lib/typescript/src/games/fruit-ninja/components/SliceTrail.d.ts.map +1 -0
  172. package/lib/typescript/src/games/{fruit-slicer → fruit-ninja}/components/index.d.ts +0 -1
  173. package/lib/typescript/src/games/fruit-ninja/components/index.d.ts.map +1 -0
  174. package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts +1 -9
  175. package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts.map +1 -1
  176. package/lib/typescript/src/games/maze-runner/MazeRunnerConstants.d.ts +41 -0
  177. package/lib/typescript/src/games/maze-runner/MazeRunnerConstants.d.ts.map +1 -0
  178. package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts +4 -2
  179. package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts.map +1 -1
  180. package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts.map +1 -1
  181. package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts +2 -1
  182. package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts.map +1 -1
  183. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts.map +1 -1
  184. package/lib/typescript/src/games/maze-runner/components/index.d.ts +0 -1
  185. package/lib/typescript/src/games/maze-runner/components/index.d.ts.map +1 -1
  186. package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts +11 -0
  187. package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts.map +1 -0
  188. package/lib/typescript/src/games/popit-fidget/PopitFidgetConstants.d.ts +45 -0
  189. package/lib/typescript/src/games/popit-fidget/PopitFidgetConstants.d.ts.map +1 -0
  190. package/lib/typescript/src/games/popit-fidget/PopitFidgetService.d.ts +54 -0
  191. package/lib/typescript/src/games/popit-fidget/PopitFidgetService.d.ts.map +1 -0
  192. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts +40 -0
  193. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts.map +1 -0
  194. package/lib/typescript/src/games/popit-fidget/components/BubbleComponent.d.ts +12 -0
  195. package/lib/typescript/src/games/popit-fidget/components/BubbleComponent.d.ts.map +1 -0
  196. package/lib/typescript/src/games/popit-fidget/components/FidgetGrid.d.ts +12 -0
  197. package/lib/typescript/src/games/popit-fidget/components/FidgetGrid.d.ts.map +1 -0
  198. package/lib/typescript/src/games/popit-fidget/components/GameBackground.d.ts +9 -0
  199. package/lib/typescript/src/games/popit-fidget/components/GameBackground.d.ts.map +1 -0
  200. package/lib/typescript/src/games/popit-fidget/components/GameOverModal.d.ts +9 -0
  201. package/lib/typescript/src/games/popit-fidget/components/GameOverModal.d.ts.map +1 -0
  202. package/lib/typescript/src/games/popit-fidget/components/ParticleSystem.d.ts +9 -0
  203. package/lib/typescript/src/games/popit-fidget/components/ParticleSystem.d.ts.map +1 -0
  204. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts +8 -0
  205. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts.map +1 -0
  206. package/lib/typescript/src/games/popit-fidget/components/index.d.ts +7 -0
  207. package/lib/typescript/src/games/popit-fidget/components/index.d.ts.map +1 -0
  208. package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts +9 -0
  209. package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts.map +1 -0
  210. package/lib/typescript/src/games/space-fighter/SpaceFighterConstants.d.ts +71 -0
  211. package/lib/typescript/src/games/space-fighter/SpaceFighterConstants.d.ts.map +1 -0
  212. package/lib/typescript/src/games/{space-traveller/SpaceTravellerService.d.ts → space-fighter/SpaceFighterService.d.ts} +7 -4
  213. package/lib/typescript/src/games/space-fighter/SpaceFighterService.d.ts.map +1 -0
  214. package/lib/typescript/src/games/{space-traveller/SpaceTravellerStore.d.ts → space-fighter/SpaceFighterStore.d.ts} +12 -4
  215. package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts.map +1 -0
  216. package/lib/typescript/src/games/{space-traveller → space-fighter}/components/AsteroidComponent.d.ts +1 -1
  217. package/lib/typescript/src/games/space-fighter/components/AsteroidComponent.d.ts.map +1 -0
  218. package/lib/typescript/src/games/{space-traveller → space-fighter}/components/GameArea.d.ts +1 -1
  219. package/lib/typescript/src/games/space-fighter/components/GameArea.d.ts.map +1 -0
  220. package/lib/typescript/src/games/space-fighter/components/GameBackground.d.ts.map +1 -0
  221. package/lib/typescript/src/games/space-fighter/components/GameOverModal.d.ts.map +1 -0
  222. package/lib/typescript/src/games/{space-traveller → space-fighter}/components/ParticleComponent.d.ts +1 -1
  223. package/lib/typescript/src/games/space-fighter/components/ParticleComponent.d.ts.map +1 -0
  224. package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts.map +1 -0
  225. package/lib/typescript/src/games/space-fighter/components/SettingsModal.d.ts.map +1 -0
  226. package/lib/typescript/src/games/{space-traveller → space-fighter}/components/Spacecraft3D.d.ts +1 -1
  227. package/lib/typescript/src/games/space-fighter/components/Spacecraft3D.d.ts.map +1 -0
  228. package/lib/typescript/src/games/space-fighter/components/SpacecraftPath.d.ts.map +1 -0
  229. package/lib/typescript/src/games/{space-traveller → space-fighter}/components/index.d.ts +0 -1
  230. package/lib/typescript/src/games/space-fighter/components/index.d.ts.map +1 -0
  231. package/lib/typescript/src/games/{cat-popper/CatPopper.d.ts → whack-a-mole/WhackAMole.d.ts} +4 -4
  232. package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts.map +1 -0
  233. package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts +79 -0
  234. package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts.map +1 -0
  235. package/lib/typescript/src/games/whack-a-mole/WhackAMoleService.d.ts +33 -0
  236. package/lib/typescript/src/games/whack-a-mole/WhackAMoleService.d.ts.map +1 -0
  237. package/lib/typescript/src/games/whack-a-mole/WhackAMoleStore.d.ts +41 -0
  238. package/lib/typescript/src/games/whack-a-mole/WhackAMoleStore.d.ts.map +1 -0
  239. package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts.map +1 -0
  240. package/lib/typescript/src/games/{cat-popper → whack-a-mole}/components/GameGrid.d.ts +2 -2
  241. package/lib/typescript/src/games/whack-a-mole/components/GameGrid.d.ts.map +1 -0
  242. package/lib/typescript/src/games/{cat-popper → whack-a-mole}/components/GameHole.d.ts +3 -2
  243. package/lib/typescript/src/games/whack-a-mole/components/GameHole.d.ts.map +1 -0
  244. package/lib/typescript/src/games/{fruit-slicer → whack-a-mole}/components/GameOverModal.d.ts.map +1 -1
  245. package/lib/typescript/src/games/whack-a-mole/components/MoleCharacter.d.ts +7 -0
  246. package/lib/typescript/src/games/whack-a-mole/components/MoleCharacter.d.ts.map +1 -0
  247. package/lib/typescript/src/games/whack-a-mole/components/ScoreBoard.d.ts.map +1 -0
  248. package/lib/typescript/src/games/{cat-popper → whack-a-mole}/components/index.d.ts +1 -2
  249. package/lib/typescript/src/games/whack-a-mole/components/index.d.ts.map +1 -0
  250. package/lib/typescript/src/index.d.ts +4 -3
  251. package/lib/typescript/src/index.d.ts.map +1 -1
  252. package/lib/typescript/src/services/GamesConstants.d.ts +30 -318
  253. package/lib/typescript/src/services/GamesConstants.d.ts.map +1 -1
  254. package/lib/typescript/src/services/GamesService.d.ts +1 -0
  255. package/lib/typescript/src/services/GamesService.d.ts.map +1 -1
  256. package/lib/typescript/src/services/HapticsService.d.ts +16 -0
  257. package/lib/typescript/src/services/HapticsService.d.ts.map +1 -0
  258. package/lib/typescript/src/services/SoundsService.d.ts +154 -0
  259. package/lib/typescript/src/services/SoundsService.d.ts.map +1 -0
  260. package/lib/typescript/src/shared/helpers/GameControlButton.d.ts +17 -0
  261. package/lib/typescript/src/shared/helpers/GameControlButton.d.ts.map +1 -0
  262. package/lib/typescript/src/shared/helpers/ResponsiveScoreBoard.d.ts +42 -0
  263. package/lib/typescript/src/shared/helpers/ResponsiveScoreBoard.d.ts.map +1 -0
  264. package/lib/typescript/src/shared/helpers/index.d.ts +4 -0
  265. package/lib/typescript/src/shared/helpers/index.d.ts.map +1 -0
  266. package/lib/typescript/src/shared/settings/SettingsService.d.ts +2 -1
  267. package/lib/typescript/src/shared/settings/SettingsService.d.ts.map +1 -1
  268. package/package.json +9 -6
  269. package/lib/module/games/balloon-blaster/components/GameControls.js.map +0 -1
  270. package/lib/module/games/cat-popper/CatPopper.js +0 -230
  271. package/lib/module/games/cat-popper/CatPopper.js.map +0 -1
  272. package/lib/module/games/cat-popper/CatPopperService.js +0 -100
  273. package/lib/module/games/cat-popper/CatPopperService.js.map +0 -1
  274. package/lib/module/games/cat-popper/CatPopperStore.js +0 -113
  275. package/lib/module/games/cat-popper/CatPopperStore.js.map +0 -1
  276. package/lib/module/games/cat-popper/components/CatCharacter.js.map +0 -1
  277. package/lib/module/games/cat-popper/components/GameBackground.js.map +0 -1
  278. package/lib/module/games/cat-popper/components/GameControls.js +0 -230
  279. package/lib/module/games/cat-popper/components/GameControls.js.map +0 -1
  280. package/lib/module/games/cat-popper/components/GameGrid.js +0 -66
  281. package/lib/module/games/cat-popper/components/GameGrid.js.map +0 -1
  282. package/lib/module/games/cat-popper/components/GameHole.js.map +0 -1
  283. package/lib/module/games/cat-popper/components/GameOverModal.js.map +0 -1
  284. package/lib/module/games/cat-popper/components/ScoreBoard.js.map +0 -1
  285. package/lib/module/games/cat-popper/components/index.js.map +0 -1
  286. package/lib/module/games/fruit-slicer/FruitSlicer.js.map +0 -1
  287. package/lib/module/games/fruit-slicer/FruitSlicerService.js.map +0 -1
  288. package/lib/module/games/fruit-slicer/FruitSlicerStore.js +0 -156
  289. package/lib/module/games/fruit-slicer/FruitSlicerStore.js.map +0 -1
  290. package/lib/module/games/fruit-slicer/components/FruitComponent.js.map +0 -1
  291. package/lib/module/games/fruit-slicer/components/GameArea.js.map +0 -1
  292. package/lib/module/games/fruit-slicer/components/GameBackground.js.map +0 -1
  293. package/lib/module/games/fruit-slicer/components/GameControls.js +0 -230
  294. package/lib/module/games/fruit-slicer/components/GameControls.js.map +0 -1
  295. package/lib/module/games/fruit-slicer/components/GameOverModal.js.map +0 -1
  296. package/lib/module/games/fruit-slicer/components/ParticleSystem.js.map +0 -1
  297. package/lib/module/games/fruit-slicer/components/ScoreBoard.js.map +0 -1
  298. package/lib/module/games/fruit-slicer/components/SliceTrail.js.map +0 -1
  299. package/lib/module/games/fruit-slicer/components/index.js.map +0 -1
  300. package/lib/module/games/maze-runner/components/GameControls.js +0 -129
  301. package/lib/module/games/maze-runner/components/GameControls.js.map +0 -1
  302. package/lib/module/games/space-traveller/SpaceTraveller.js.map +0 -1
  303. package/lib/module/games/space-traveller/SpaceTravellerService.js.map +0 -1
  304. package/lib/module/games/space-traveller/SpaceTravellerStore.js +0 -139
  305. package/lib/module/games/space-traveller/SpaceTravellerStore.js.map +0 -1
  306. package/lib/module/games/space-traveller/components/AsteroidComponent.js.map +0 -1
  307. package/lib/module/games/space-traveller/components/GameArea.js.map +0 -1
  308. package/lib/module/games/space-traveller/components/GameBackground.js.map +0 -1
  309. package/lib/module/games/space-traveller/components/GameControls.js +0 -177
  310. package/lib/module/games/space-traveller/components/GameControls.js.map +0 -1
  311. package/lib/module/games/space-traveller/components/GameOverModal.js.map +0 -1
  312. package/lib/module/games/space-traveller/components/ParticleComponent.js.map +0 -1
  313. package/lib/module/games/space-traveller/components/ScoreBoard.js.map +0 -1
  314. package/lib/module/games/space-traveller/components/SettingsModal.js.map +0 -1
  315. package/lib/module/games/space-traveller/components/Spacecraft3D.js.map +0 -1
  316. package/lib/module/games/space-traveller/components/SpacecraftPath.js.map +0 -1
  317. package/lib/module/games/space-traveller/components/index.js.map +0 -1
  318. package/lib/typescript/src/games/balloon-blaster/components/GameControls.d.ts +0 -10
  319. package/lib/typescript/src/games/balloon-blaster/components/GameControls.d.ts.map +0 -1
  320. package/lib/typescript/src/games/cat-popper/CatPopper.d.ts.map +0 -1
  321. package/lib/typescript/src/games/cat-popper/CatPopperService.d.ts +0 -32
  322. package/lib/typescript/src/games/cat-popper/CatPopperService.d.ts.map +0 -1
  323. package/lib/typescript/src/games/cat-popper/CatPopperStore.d.ts +0 -21
  324. package/lib/typescript/src/games/cat-popper/CatPopperStore.d.ts.map +0 -1
  325. package/lib/typescript/src/games/cat-popper/components/CatCharacter.d.ts +0 -7
  326. package/lib/typescript/src/games/cat-popper/components/CatCharacter.d.ts.map +0 -1
  327. package/lib/typescript/src/games/cat-popper/components/GameBackground.d.ts.map +0 -1
  328. package/lib/typescript/src/games/cat-popper/components/GameControls.d.ts +0 -10
  329. package/lib/typescript/src/games/cat-popper/components/GameControls.d.ts.map +0 -1
  330. package/lib/typescript/src/games/cat-popper/components/GameGrid.d.ts.map +0 -1
  331. package/lib/typescript/src/games/cat-popper/components/GameHole.d.ts.map +0 -1
  332. package/lib/typescript/src/games/cat-popper/components/GameOverModal.d.ts.map +0 -1
  333. package/lib/typescript/src/games/cat-popper/components/ScoreBoard.d.ts.map +0 -1
  334. package/lib/typescript/src/games/cat-popper/components/index.d.ts.map +0 -1
  335. package/lib/typescript/src/games/fruit-slicer/FruitSlicer.d.ts +0 -16
  336. package/lib/typescript/src/games/fruit-slicer/FruitSlicer.d.ts.map +0 -1
  337. package/lib/typescript/src/games/fruit-slicer/FruitSlicerService.d.ts.map +0 -1
  338. package/lib/typescript/src/games/fruit-slicer/FruitSlicerStore.d.ts.map +0 -1
  339. package/lib/typescript/src/games/fruit-slicer/components/FruitComponent.d.ts.map +0 -1
  340. package/lib/typescript/src/games/fruit-slicer/components/GameArea.d.ts.map +0 -1
  341. package/lib/typescript/src/games/fruit-slicer/components/GameBackground.d.ts.map +0 -1
  342. package/lib/typescript/src/games/fruit-slicer/components/GameControls.d.ts +0 -10
  343. package/lib/typescript/src/games/fruit-slicer/components/GameControls.d.ts.map +0 -1
  344. package/lib/typescript/src/games/fruit-slicer/components/ParticleSystem.d.ts.map +0 -1
  345. package/lib/typescript/src/games/fruit-slicer/components/ScoreBoard.d.ts.map +0 -1
  346. package/lib/typescript/src/games/fruit-slicer/components/SliceTrail.d.ts.map +0 -1
  347. package/lib/typescript/src/games/fruit-slicer/components/index.d.ts.map +0 -1
  348. package/lib/typescript/src/games/maze-runner/components/GameControls.d.ts +0 -10
  349. package/lib/typescript/src/games/maze-runner/components/GameControls.d.ts.map +0 -1
  350. package/lib/typescript/src/games/space-traveller/SpaceTraveller.d.ts +0 -17
  351. package/lib/typescript/src/games/space-traveller/SpaceTraveller.d.ts.map +0 -1
  352. package/lib/typescript/src/games/space-traveller/SpaceTravellerService.d.ts.map +0 -1
  353. package/lib/typescript/src/games/space-traveller/SpaceTravellerStore.d.ts.map +0 -1
  354. package/lib/typescript/src/games/space-traveller/components/AsteroidComponent.d.ts.map +0 -1
  355. package/lib/typescript/src/games/space-traveller/components/GameArea.d.ts.map +0 -1
  356. package/lib/typescript/src/games/space-traveller/components/GameBackground.d.ts.map +0 -1
  357. package/lib/typescript/src/games/space-traveller/components/GameControls.d.ts +0 -10
  358. package/lib/typescript/src/games/space-traveller/components/GameControls.d.ts.map +0 -1
  359. package/lib/typescript/src/games/space-traveller/components/GameOverModal.d.ts.map +0 -1
  360. package/lib/typescript/src/games/space-traveller/components/ParticleComponent.d.ts.map +0 -1
  361. package/lib/typescript/src/games/space-traveller/components/ScoreBoard.d.ts.map +0 -1
  362. package/lib/typescript/src/games/space-traveller/components/SettingsModal.d.ts.map +0 -1
  363. package/lib/typescript/src/games/space-traveller/components/Spacecraft3D.d.ts.map +0 -1
  364. package/lib/typescript/src/games/space-traveller/components/SpacecraftPath.d.ts.map +0 -1
  365. package/lib/typescript/src/games/space-traveller/components/index.d.ts.map +0 -1
  366. /package/lib/module/games/{fruit-slicer → fruit-ninja}/components/GameArea.js +0 -0
  367. /package/lib/module/games/{fruit-slicer → fruit-ninja}/components/GameOverModal.js +0 -0
  368. /package/lib/module/games/{fruit-slicer → fruit-ninja}/components/ParticleSystem.js +0 -0
  369. /package/lib/module/games/{space-traveller → space-fighter}/components/AsteroidComponent.js +0 -0
  370. /package/lib/module/games/{space-traveller → space-fighter}/components/GameArea.js +0 -0
  371. /package/lib/module/games/{space-traveller → space-fighter}/components/GameBackground.js +0 -0
  372. /package/lib/module/games/{space-traveller → space-fighter}/components/GameOverModal.js +0 -0
  373. /package/lib/module/games/{space-traveller → space-fighter}/components/ParticleComponent.js +0 -0
  374. /package/lib/module/games/{space-traveller → space-fighter}/components/SettingsModal.js +0 -0
  375. /package/lib/module/games/{space-traveller → space-fighter}/components/Spacecraft3D.js +0 -0
  376. /package/lib/typescript/src/games/{cat-popper → fruit-ninja}/components/GameBackground.d.ts +0 -0
  377. /package/lib/typescript/src/games/{cat-popper → fruit-ninja}/components/GameOverModal.d.ts +0 -0
  378. /package/lib/typescript/src/games/{fruit-slicer → fruit-ninja}/components/ScoreBoard.d.ts +0 -0
  379. /package/lib/typescript/src/games/{fruit-slicer → fruit-ninja}/components/SliceTrail.d.ts +0 -0
  380. /package/lib/typescript/src/games/{fruit-slicer → space-fighter}/components/GameBackground.d.ts +0 -0
  381. /package/lib/typescript/src/games/{fruit-slicer → space-fighter}/components/GameOverModal.d.ts +0 -0
  382. /package/lib/typescript/src/games/{cat-popper → space-fighter}/components/ScoreBoard.d.ts +0 -0
  383. /package/lib/typescript/src/games/{space-traveller → space-fighter}/components/SettingsModal.d.ts +0 -0
  384. /package/lib/typescript/src/games/{space-traveller → space-fighter}/components/SpacecraftPath.d.ts +0 -0
  385. /package/lib/typescript/src/games/{space-traveller → whack-a-mole}/components/GameBackground.d.ts +0 -0
  386. /package/lib/typescript/src/games/{space-traveller → whack-a-mole}/components/GameOverModal.d.ts +0 -0
  387. /package/lib/typescript/src/games/{space-traveller → whack-a-mole}/components/ScoreBoard.d.ts +0 -0
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
 
3
- import React, { useEffect } from 'react';
4
- import { Dimensions } from 'react-native';
3
+ import React from 'react';
4
+ import { Dimensions, View } from 'react-native';
5
5
  import { Canvas, LinearGradient, Rect, Circle, Path, Skia, vec, Group, Shadow } from '@shopify/react-native-skia';
6
- import { useSharedValue, useAnimatedStyle, withRepeat, withTiming, withSequence, interpolate, Extrapolation } from 'react-native-reanimated';
7
- import Animated from 'react-native-reanimated';
8
6
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
7
  const {
10
8
  width,
@@ -13,45 +11,11 @@ const {
13
11
  export const GameBackground = ({
14
12
  children
15
13
  }) => {
16
- // Animated values for dynamic background effects
17
- const cloudFloat = useSharedValue(0);
18
- const sunGlow = useSharedValue(0);
19
- const sunRotation = useSharedValue(0);
20
- const balloonFloat = useSharedValue(0);
21
- useEffect(() => {
22
- // Cloud floating animation
23
- cloudFloat.value = withRepeat(withTiming(1, {
24
- duration: 8000
25
- }), -1, false);
26
-
27
- // Sun glow pulsing
28
- sunGlow.value = withRepeat(withSequence(withTiming(1, {
29
- duration: 2000
30
- }), withTiming(0.7, {
31
- duration: 2000
32
- })), -1, false);
33
-
34
- // Sun rotation animation (slow continuous rotation)
35
- sunRotation.value = withRepeat(withTiming(360, {
36
- duration: 30000
37
- }), -1, false);
38
-
39
- // Background balloon floating animation
40
- balloonFloat.value = withRepeat(withSequence(withTiming(1, {
41
- duration: 4000
42
- }), withTiming(0, {
43
- duration: 4000
44
- })), -1, false);
45
- }, []);
46
- const animatedBackgroundStyle = useAnimatedStyle(() => {
47
- return {
48
- transform: []
49
- };
50
- });
51
- return /*#__PURE__*/_jsxs(Animated.View, {
52
- style: [{
14
+ // Static background - all animations removed for better performance
15
+ return /*#__PURE__*/_jsxs(View, {
16
+ style: {
53
17
  flex: 1
54
- }, animatedBackgroundStyle],
18
+ },
55
19
  children: [/*#__PURE__*/_jsxs(Canvas, {
56
20
  style: {
57
21
  position: 'absolute',
@@ -73,17 +37,6 @@ export const GameBackground = ({
73
37
  colors: ['#87CEEB', '#B0E0E6', '#E0F6FF', '#F0F8FF', '#FFF8DC']
74
38
  })
75
39
  }), /*#__PURE__*/_jsxs(Group, {
76
- transform: [{
77
- translateX: width * 0.8
78
- }, {
79
- translateY: height * 0.15
80
- }, {
81
- rotate: sunRotation.value * Math.PI / 180
82
- }, {
83
- translateX: -width * 0.8
84
- }, {
85
- translateY: -height * 0.15
86
- }],
87
40
  children: [/*#__PURE__*/_jsxs(Circle, {
88
41
  cx: width * 0.8,
89
42
  cy: height * 0.15,
@@ -95,7 +48,7 @@ export const GameBackground = ({
95
48
  }), /*#__PURE__*/_jsx(Shadow, {
96
49
  dx: 0,
97
50
  dy: 0,
98
- blur: interpolate(sunGlow.value, [0.7, 1], [25, 40], Extrapolation.CLAMP),
51
+ blur: 30,
99
52
  color: "#FFD700"
100
53
  })]
101
54
  }), /*#__PURE__*/_jsx(Circle, {
@@ -128,7 +81,7 @@ export const GameBackground = ({
128
81
  style: "stroke",
129
82
  strokeWidth: rayWidth,
130
83
  color: "#FFD700",
131
- opacity: interpolate(sunGlow.value, [0.7, 1], [0.6, 0.9], Extrapolation.CLAMP)
84
+ opacity: 0.75
132
85
  }, index);
133
86
  }), /*#__PURE__*/_jsx(Circle, {
134
87
  cx: width * 0.8,
@@ -143,9 +96,6 @@ export const GameBackground = ({
143
96
  })]
144
97
  }), /*#__PURE__*/_jsxs(Group, {
145
98
  children: [/*#__PURE__*/_jsxs(Group, {
146
- transform: [{
147
- translateX: interpolate(cloudFloat.value, [0, 1], [-4, 4], Extrapolation.CLAMP)
148
- }],
149
99
  children: [/*#__PURE__*/_jsx(Circle, {
150
100
  cx: width * 0.12,
151
101
  cy: height * 0.24,
@@ -208,9 +158,6 @@ export const GameBackground = ({
208
158
  })
209
159
  })]
210
160
  }), /*#__PURE__*/_jsxs(Group, {
211
- transform: [{
212
- translateX: interpolate(cloudFloat.value, [0, 1], [3, -3], Extrapolation.CLAMP)
213
- }],
214
161
  children: [/*#__PURE__*/_jsx(Circle, {
215
162
  cx: width * 0.62,
216
163
  cy: height * 0.27,
@@ -249,9 +196,6 @@ export const GameBackground = ({
249
196
  })
250
197
  })]
251
198
  }), /*#__PURE__*/_jsxs(Group, {
252
- transform: [{
253
- translateX: interpolate(cloudFloat.value, [0, 1], [1.5, -1.5], Extrapolation.CLAMP)
254
- }],
255
199
  children: [/*#__PURE__*/_jsx(Circle, {
256
200
  cx: width * 0.84,
257
201
  cy: height * 0.19,
@@ -292,9 +236,6 @@ export const GameBackground = ({
292
236
  })]
293
237
  }), /*#__PURE__*/_jsxs(Group, {
294
238
  children: [/*#__PURE__*/_jsxs(Group, {
295
- transform: [{
296
- translateY: interpolate(balloonFloat.value, [0, 1], [-3, 3], Extrapolation.CLAMP)
297
- }],
298
239
  children: [/*#__PURE__*/_jsx(Circle, {
299
240
  cx: width * 0.15,
300
241
  cy: height * 0.35,
@@ -354,9 +295,6 @@ export const GameBackground = ({
354
295
  opacity: 0.4
355
296
  })]
356
297
  }), /*#__PURE__*/_jsxs(Group, {
357
- transform: [{
358
- translateY: interpolate(balloonFloat.value, [0, 1], [2, -2], Extrapolation.CLAMP)
359
- }],
360
298
  children: [/*#__PURE__*/_jsx(Circle, {
361
299
  cx: width * 0.45,
362
300
  cy: height * 0.28,
@@ -397,9 +335,6 @@ export const GameBackground = ({
397
335
  opacity: 0.3
398
336
  })]
399
337
  }), /*#__PURE__*/_jsxs(Group, {
400
- transform: [{
401
- translateY: interpolate(balloonFloat.value, [0, 1], [-2, 2], Extrapolation.CLAMP)
402
- }],
403
338
  children: [/*#__PURE__*/_jsx(Circle, {
404
339
  cx: width * 0.75,
405
340
  cy: height * 0.33,
@@ -440,9 +375,6 @@ export const GameBackground = ({
440
375
  opacity: 0.25
441
376
  })]
442
377
  }), /*#__PURE__*/_jsxs(Group, {
443
- transform: [{
444
- translateY: interpolate(balloonFloat.value, [0, 1], [1, -1], Extrapolation.CLAMP)
445
- }],
446
378
  children: [/*#__PURE__*/_jsx(Circle, {
447
379
  cx: width * 0.85,
448
380
  cy: height * 0.20,
@@ -530,13 +462,6 @@ export const GameBackground = ({
530
462
  end: vec(0, height),
531
463
  colors: ['#F0F8FF', '#E6F3FF', '#DDE9FF']
532
464
  })
533
- }), /*#__PURE__*/_jsx(Rect, {
534
- x: 0,
535
- y: height * 0.85,
536
- width: width,
537
- height: 2,
538
- color: "#B0C4DE",
539
- opacity: 0.6
540
465
  })]
541
466
  }), children]
542
467
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","Dimensions","Canvas","LinearGradient","Rect","Circle","Path","Skia","vec","Group","Shadow","useSharedValue","useAnimatedStyle","withRepeat","withTiming","withSequence","interpolate","Extrapolation","Animated","jsx","_jsx","jsxs","_jsxs","width","height","get","GameBackground","children","cloudFloat","sunGlow","sunRotation","balloonFloat","value","duration","animatedBackgroundStyle","transform","View","style","flex","position","top","left","right","bottom","x","y","start","end","colors","translateX","translateY","rotate","Math","PI","cx","cy","r","dx","dy","blur","CLAMP","color","Array","from","length","_","index","angle","radian","isLongRay","rayLength","rayWidth","startDistance","startX","cos","startY","sin","endX","endY","rayPath","Make","moveTo","lineTo","path","strokeWidth","opacity","i","size","streamerPath","quadTo"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Dimensions","View","Canvas","LinearGradient","Rect","Circle","Path","Skia","vec","Group","Shadow","jsx","_jsx","jsxs","_jsxs","width","height","get","GameBackground","children","style","flex","position","top","left","right","bottom","x","y","start","end","colors","cx","cy","r","dx","dy","blur","color","Array","from","length","_","index","angle","radian","Math","PI","isLongRay","rayLength","rayWidth","startDistance","startX","cos","startY","sin","endX","endY","rayPath","Make","moveTo","lineTo","path","strokeWidth","opacity","i","size","streamerPath","quadTo"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
@@ -8,7 +8,7 @@ const {
8
8
  width,
9
9
  height
10
10
  } = Dimensions.get('window');
11
- export const ParticleSystem = ({
11
+ export const ParticleSystem = /*#__PURE__*/React.memo(({
12
12
  particles
13
13
  }) => {
14
14
  if (particles.length === 0) return null;
@@ -24,21 +24,24 @@ export const ParticleSystem = ({
24
24
  },
25
25
  children: /*#__PURE__*/_jsx(Group, {
26
26
  children: particles.map(particle => {
27
- // Improved alpha calculation for better visibility
28
- const alpha = Math.max(0.1, 1 - particle.lifetime / particle.maxLifetime);
27
+ // Enhanced alpha calculation for maximum visibility
28
+ const alpha = Math.max(0.5, 1 - particle.lifetime / particle.maxLifetime); // Higher minimum alpha
29
29
  const alphaHex = Math.floor(alpha * 255).toString(16).padStart(2, '0');
30
+
31
+ // Larger particles with minimum size guarantee
32
+ const particleSize = Math.max(4, particle.size * alpha); // Increased minimum size
33
+
30
34
  return /*#__PURE__*/_jsx(Circle, {
31
35
  cx: particle.position.x,
32
36
  cy: particle.position.y,
33
- r: Math.max(2, particle.size * alpha) // Ensure minimum size
34
- ,
37
+ r: particleSize,
35
38
  color: `${particle.color}${alphaHex}`
36
39
  }, particle.id);
37
40
  })
38
41
  })
39
42
  })
40
43
  });
41
- };
44
+ });
42
45
  const styles = StyleSheet.create({
43
46
  absoluteContainer: {
44
47
  position: 'absolute',
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Dimensions","StyleSheet","Canvas","SkiaCanvas","Circle","Group","jsx","_jsx","width","height","get","ParticleSystem","particles","length","style","styles","absoluteContainer","children","map","particle","alpha","Math","max","lifetime","maxLifetime","alphaHex","floor","toString","padStart","cx","position","x","cy","y","r","size","color","id","create","top","left","right","bottom","pointerEvents"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/ParticleSystem.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AAC3D,SAASC,MAAM,IAAIC,UAAU,EAAEC,MAAM,EAAEC,KAAK,QAAQ,4BAA4B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGjF,MAAM;EAAEC,KAAK;EAAEC;AAAO,CAAC,GAAGT,UAAU,CAACU,GAAG,CAAC,QAAQ,CAAC;AAMlD,OAAO,MAAMC,cAA6C,GAAGA,CAAC;EAAEC;AAAU,CAAC,KAAK;EAC9E,IAAIA,SAAS,CAACC,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACEN,IAAA,CAACR,IAAI;IAACe,KAAK,EAAE,CAACC,MAAM,CAACC,iBAAiB,EAAE;MAAER,KAAK;MAAEC;IAAO,CAAC,CAAE;IAAAQ,QAAA,eACzDV,IAAA,CAACJ,UAAU;MAACW,KAAK,EAAE;QAAEN,KAAK;QAAEC;MAAO,CAAE;MAAAQ,QAAA,eACnCV,IAAA,CAACF,KAAK;QAAAY,QAAA,EACHL,SAAS,CAACM,GAAG,CAACC,QAAQ,IAAI;UACzB;UACA,MAAMC,KAAK,GAAGC,IAAI,CAACC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAIH,QAAQ,CAACI,QAAQ,GAAGJ,QAAQ,CAACK,WAAY,CAAC;UAC3E,MAAMC,QAAQ,GAAGJ,IAAI,CAACK,KAAK,CAACN,KAAK,GAAG,GAAG,CAAC,CAACO,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;UAEtE,oBACErB,IAAA,CAACH,MAAM;YAELyB,EAAE,EAAEV,QAAQ,CAACW,QAAQ,CAACC,CAAE;YACxBC,EAAE,EAAEb,QAAQ,CAACW,QAAQ,CAACG,CAAE;YACxBC,CAAC,EAAEb,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEH,QAAQ,CAACgB,IAAI,GAAGf,KAAK,CAAE,CAAC;YAAA;YACvCgB,KAAK,EAAE,GAAGjB,QAAQ,CAACiB,KAAK,GAAGX,QAAQ;UAAG,GAJjCN,QAAQ,CAACkB,EAKf,CAAC;QAEN,CAAC;MAAC,CACG;IAAC,CACE;EAAC,CACT,CAAC;AAEX,CAAC;AAED,MAAMtB,MAAM,GAAGd,UAAU,CAACqC,MAAM,CAAC;EAC/BtB,iBAAiB,EAAE;IACjBc,QAAQ,EAAE,UAAU;IACpBS,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Dimensions","StyleSheet","Canvas","SkiaCanvas","Circle","Group","jsx","_jsx","width","height","get","ParticleSystem","memo","particles","length","style","styles","absoluteContainer","children","map","particle","alpha","Math","max","lifetime","maxLifetime","alphaHex","floor","toString","padStart","particleSize","size","cx","position","x","cy","y","r","color","id","create","top","left","right","bottom","pointerEvents"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/ParticleSystem.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AAC3D,SAASC,MAAM,IAAIC,UAAU,EAAEC,MAAM,EAAEC,KAAK,QAAQ,4BAA4B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGjF,MAAM;EAAEC,KAAK;EAAEC;AAAO,CAAC,GAAGT,UAAU,CAACU,GAAG,CAAC,QAAQ,CAAC;AAMlD,OAAO,MAAMC,cAA6C,gBAAGb,KAAK,CAACc,IAAI,CAAC,CAAC;EAAEC;AAAU,CAAC,KAAK;EACzF,IAAIA,SAAS,CAACC,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;EAEvC,oBACEP,IAAA,CAACR,IAAI;IAACgB,KAAK,EAAE,CAACC,MAAM,CAACC,iBAAiB,EAAE;MAAET,KAAK;MAAEC;IAAO,CAAC,CAAE;IAAAS,QAAA,eACzDX,IAAA,CAACJ,UAAU;MAACY,KAAK,EAAE;QAAEP,KAAK;QAAEC;MAAO,CAAE;MAAAS,QAAA,eACnCX,IAAA,CAACF,KAAK;QAAAa,QAAA,EACHL,SAAS,CAACM,GAAG,CAACC,QAAQ,IAAI;UACzB;UACA,MAAMC,KAAK,GAAGC,IAAI,CAACC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAIH,QAAQ,CAACI,QAAQ,GAAGJ,QAAQ,CAACK,WAAY,CAAC,CAAC,CAAC;UAC7E,MAAMC,QAAQ,GAAGJ,IAAI,CAACK,KAAK,CAACN,KAAK,GAAG,GAAG,CAAC,CAACO,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;;UAEtE;UACA,MAAMC,YAAY,GAAGR,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEH,QAAQ,CAACW,IAAI,GAAGV,KAAK,CAAC,CAAC,CAAC;;UAEzD,oBACEd,IAAA,CAACH,MAAM;YAEL4B,EAAE,EAAEZ,QAAQ,CAACa,QAAQ,CAACC,CAAE;YACxBC,EAAE,EAAEf,QAAQ,CAACa,QAAQ,CAACG,CAAE;YACxBC,CAAC,EAAEP,YAAa;YAChBQ,KAAK,EAAE,GAAGlB,QAAQ,CAACkB,KAAK,GAAGZ,QAAQ;UAAG,GAJjCN,QAAQ,CAACmB,EAKf,CAAC;QAEN,CAAC;MAAC,CACG;IAAC,CACE;EAAC,CACT,CAAC;AAEX,CAAC,CAAC;AAEF,MAAMvB,MAAM,GAAGf,UAAU,CAACuC,MAAM,CAAC;EAC/BvB,iBAAiB,EAAE;IACjBgB,QAAQ,EAAE,UAAU;IACpBQ,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import React from 'react';
4
4
  import { View, Text, StyleSheet } from 'react-native';
5
5
  import { GAME_CONFIG } from "../BalloonBlasterService.js";
6
+ import { RESPONSIVE_SCOREBOARD_CONTAINER, RESPONSIVE_SCOREBOARD_FONTS } from "../../../shared/helpers/index.js";
6
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
8
  export const ScoreBoard = ({
8
9
  score,
@@ -48,43 +49,34 @@ export const ScoreBoard = ({
48
49
  };
49
50
  const styles = StyleSheet.create({
50
51
  scoreBoard: {
52
+ ...RESPONSIVE_SCOREBOARD_CONTAINER,
51
53
  flexDirection: 'row',
52
54
  justifyContent: 'space-between',
53
55
  alignItems: 'center',
54
- backgroundColor: 'rgba(135, 206, 235, 0.4)',
55
- // Sky blue background for balloon theme
56
+ backgroundColor: 'rgba(59, 130, 246, 0.4)',
57
+ // Matches start button blue color with 0.4 opacity
56
58
  borderRadius: 16,
57
59
  padding: 20,
58
- margin: 20,
59
60
  borderWidth: 2,
60
- borderColor: 'rgba(255, 255, 255, 0.6)',
61
- // White border for balloon theme
62
- shadowColor: '#000',
63
- shadowOffset: {
64
- width: 0,
65
- height: 4
66
- },
67
- shadowOpacity: 0.25,
68
- shadowRadius: 6,
69
- elevation: 8
61
+ borderColor: 'rgba(255, 255, 255, 0.6)' // White border for balloon theme
70
62
  },
71
63
  scoreSection: {
72
64
  alignItems: 'center',
73
65
  flex: 1
74
66
  },
75
67
  scoreLabel: {
76
- fontSize: 18,
68
+ fontSize: RESPONSIVE_SCOREBOARD_FONTS.labelSize,
77
69
  fontWeight: 'bold',
78
70
  color: '#ffffff',
79
71
  marginBottom: 4
80
72
  },
81
73
  scoreValue: {
82
- fontSize: 30,
74
+ fontSize: RESPONSIVE_SCOREBOARD_FONTS.valueSize,
83
75
  fontWeight: 'bold',
84
76
  color: '#1e40af' // Blue color for balloon theme
85
77
  },
86
78
  timeValue: {
87
- fontSize: 30,
79
+ fontSize: RESPONSIVE_SCOREBOARD_FONTS.timeSize,
88
80
  fontWeight: 'bold',
89
81
  color: '#1e40af' // Blue color for balloon theme
90
82
  },
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","StyleSheet","GAME_CONFIG","jsx","_jsx","jsxs","_jsxs","ScoreBoard","score","timeLeft","lives","style","styles","scoreBoard","children","scoreSection","scoreLabel","scoreValue","timeValue","livesRow","Array","from","length","MAX_LIVES","map","_","index","heartIcon","heartActive","heartInactive","create","flexDirection","justifyContent","alignItems","backgroundColor","borderRadius","padding","margin","borderWidth","borderColor","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","flex","fontSize","fontWeight","color","marginBottom","marginHorizontal","opacity","textShadowColor","textShadowOffset","textShadowRadius"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/ScoreBoard.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Text","StyleSheet","GAME_CONFIG","RESPONSIVE_SCOREBOARD_CONTAINER","RESPONSIVE_SCOREBOARD_FONTS","jsx","_jsx","jsxs","_jsxs","ScoreBoard","score","timeLeft","lives","style","styles","scoreBoard","children","scoreSection","scoreLabel","scoreValue","timeValue","livesRow","Array","from","length","MAX_LIVES","map","_","index","heartIcon","heartActive","heartInactive","create","flexDirection","justifyContent","alignItems","backgroundColor","borderRadius","padding","borderWidth","borderColor","flex","fontSize","labelSize","fontWeight","color","marginBottom","valueSize","timeSize","marginHorizontal","opacity","textShadowColor","textShadowOffset","width","height","textShadowRadius"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/ScoreBoard.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,6 @@
3
3
  export { BalloonComponent } from "./BalloonComponent.js";
4
4
  export { GameArea } from "./GameArea.js";
5
5
  export { GameBackground } from "./GameBackground.js";
6
- export { GameControls } from "./GameControls.js";
7
6
  export { GameOverModal } from "./GameOverModal.js";
8
7
  export { ParticleSystem } from "./ParticleSystem.js";
9
8
  export { ScoreBoard } from "./ScoreBoard.js";
@@ -1 +1 @@
1
- {"version":3,"names":["BalloonComponent","GameArea","GameBackground","GameControls","GameOverModal","ParticleSystem","ScoreBoard","SliceTrail"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/index.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,QAAQ,QAAQ,eAAY;AACrC,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,YAAY,QAAQ,mBAAgB;AAC7C,SAASC,aAAa,QAAQ,oBAAiB;AAC/C,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,UAAU,QAAQ,iBAAc;AACzC,SAASC,UAAU,QAAQ,iBAAc","ignoreList":[]}
1
+ {"version":3,"names":["BalloonComponent","GameArea","GameBackground","GameOverModal","ParticleSystem","ScoreBoard","SliceTrail"],"sourceRoot":"../../../../../src","sources":["games/balloon-blaster/components/index.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,uBAAoB;AACrD,SAASC,QAAQ,QAAQ,eAAY;AACrC,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,aAAa,QAAQ,oBAAiB;AAC/C,SAASC,cAAc,QAAQ,qBAAkB;AACjD,SAASC,UAAU,QAAQ,iBAAc;AACzC,SAASC,UAAU,QAAQ,iBAAc","ignoreList":[]}
@@ -4,15 +4,17 @@ import React, { useEffect, useRef } from 'react';
4
4
  import { View, Dimensions, StyleSheet, Modal } from 'react-native';
5
5
  import { runOnJS } from 'react-native-reanimated';
6
6
  import { Gesture, GestureDetector, GestureHandlerRootView } from 'react-native-gesture-handler';
7
- import * as Speech from 'expo-speech';
8
- import * as Haptics from 'expo-haptics';
9
- import { useFruitSlicerStore } from "./FruitSlicerStore.js";
10
- import { createFruitSlicerService, GAME_CONFIG } from "./FruitSlicerService.js";
11
- import { ScoreBoard, GameArea, GameControls, GameOverModal, GameBackground } from "./components/index.js";
7
+ import { playSound, GAME_SOUNDS } from "../../services/SoundsService.js";
8
+ import { playHaptic, HapticType } from "../../services/HapticsService.js";
9
+ import { useFruitNinjaStore } from "./FruitNinjaStore.js";
10
+ import { createFruitNinjaService, GAME_CONFIG } from "./FruitNinjaService.js";
11
+ import { ScoreBoard, GameArea, GameOverModal, GameBackground } from "./components/index.js";
12
+ import { GameControlButton } from "../../shared/helpers/index.js";
12
13
  // Define game-specific types and constants locally
13
14
 
14
- const DEFAULT_FRUIT_SLICER_SETTINGS = {
15
- gameDuration: 120,
15
+ const DEFAULT_FRUIT_NINJA_SETTINGS = {
16
+ gameDuration: 60,
17
+ // Fixed 60 seconds for all games
16
18
  difficulty: 'medium',
17
19
  soundEnabled: true,
18
20
  hapticEnabled: true
@@ -31,8 +33,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
31
33
  const {
32
34
  height
33
35
  } = Dimensions.get('window');
34
- export const FruitSlicer = ({
35
- settings: externalSettings = DEFAULT_FRUIT_SLICER_SETTINGS,
36
+ export const FruitNinja = ({
37
+ settings: externalSettings = DEFAULT_FRUIT_NINJA_SETTINGS,
36
38
  onSettingsChange,
37
39
  showSettingsModal = false,
38
40
  onToggleSettingsModal
@@ -84,21 +86,21 @@ export const FruitSlicer = ({
84
86
  resetCombo,
85
87
  loseLife,
86
88
  addLife
87
- } = useFruitSlicerStore();
89
+ } = useFruitNinjaStore();
88
90
 
89
91
  // Simple animation tracking without shared values
90
92
  const fruitAnimations = useRef(new Map()).current;
91
93
  const particleAnimations = useRef(new Map()).current;
92
94
 
93
95
  // Game service
94
- const gameService = useRef(createFruitSlicerService(fruitAnimations, particleAnimations)).current;
96
+ const gameService = useRef(createFruitNinjaService(fruitAnimations, particleAnimations)).current;
95
97
 
96
98
  // Slice path tracking
97
99
  const currentSlicePath = useRef([]);
98
100
 
99
101
  // Helper functions for gesture handling
100
102
  const checkFruitIntersections = slicePath => {
101
- const currentFruits = useFruitSlicerStore.getState().fruits;
103
+ const currentFruits = useFruitNinjaStore.getState().fruits;
102
104
  currentFruits.forEach(fruit => {
103
105
  if (!fruit.isSliced && gameService.checkFruitSlice(fruit, slicePath)) {
104
106
  handleFruitSlice(fruit.id);
@@ -114,47 +116,29 @@ export const FruitSlicer = ({
114
116
 
115
117
  // Sound and haptic feedback
116
118
  const playSliceSound = _fruitType => {
117
- if (settings.soundEnabled) {
118
- Speech.speak('Swoosh!', {
119
- pitch: 1.5,
120
- rate: 2.5,
121
- volume: 0.6
122
- });
123
- }
119
+ playSound(GAME_SOUNDS.FRUIT_NINJA.SLICE, settings.soundEnabled);
124
120
  // Always provide haptic feedback for better game feel
125
- Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light);
121
+ playHaptic(HapticType.LIGHT, settings.hapticEnabled);
126
122
  };
127
123
  const playBombSound = () => {
128
- if (settings.soundEnabled) {
129
- Speech.speak('Boom!', {
130
- pitch: 0.8,
131
- rate: 1.5,
132
- volume: 0.8
133
- });
134
- }
124
+ playSound(GAME_SOUNDS.FRUIT_NINJA.BOMB, settings.soundEnabled);
135
125
  // Always provide haptic feedback for bombs
136
- Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Heavy);
126
+ playHaptic(HapticType.HEAVY, settings.hapticEnabled);
137
127
  };
138
128
 
139
129
  // const playComboSound = (_comboCount: number) => {
140
- // if (settings.soundEnabled) {
141
- // Speech.speak(`${_comboCount} combo!`, {
142
- // pitch: 1.8,
143
- // rate: 2.0,
144
- // volume: 0.7
145
- // });
146
- // }
130
+ // playSound(GAME_SOUNDS.FRUIT_NINJA.COMBO, settings.soundEnabled);
147
131
  // // Always provide haptic feedback for combos
148
- // Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Medium);
132
+ // playHaptic(HapticType.MEDIUM, settings.hapticEnabled);
149
133
  // };
150
134
 
151
135
  // Game control functions
152
136
  const handleStartGame = () => {
153
- startGame(settings.gameDuration);
137
+ startGame(); // Store uses fixed 60s duration internally
154
138
  gameService.resetAnimations();
155
139
  gameService.startGameTimer(decrementTime);
156
140
  gameService.startFruitSpawning(spawnFruit, getDifficultySpawnInterval(settings.difficulty));
157
- gameService.startPhysicsLoop(updateFruit, removeFruit, () => useFruitSlicerStore.getState().fruits);
141
+ gameService.startPhysicsLoop(updateFruit, removeFruit, () => useFruitNinjaStore.getState().fruits);
158
142
  };
159
143
  const handleStopGame = () => {
160
144
  stopGame();
@@ -181,7 +165,7 @@ export const FruitSlicer = ({
181
165
  // Fruit slicing logic
182
166
  const handleFruitSlice = fruitId => {
183
167
  // Double-check game state to prevent race conditions
184
- const currentState = useFruitSlicerStore.getState();
168
+ const currentState = useFruitNinjaStore.getState();
185
169
  if (!currentState.isPlaying || currentState.gameOver) return;
186
170
  const fruit = fruits.find(f => f.id === fruitId);
187
171
  if (!fruit || fruit.isSliced) return;
@@ -192,7 +176,7 @@ export const FruitSlicer = ({
192
176
  playBombSound();
193
177
 
194
178
  // Check current state again before losing life
195
- const stateBeforeLoss = useFruitSlicerStore.getState();
179
+ const stateBeforeLoss = useFruitNinjaStore.getState();
196
180
  if (stateBeforeLoss.lives > 0 && stateBeforeLoss.isPlaying && !stateBeforeLoss.gameOver) {
197
181
  loseLife();
198
182
  resetCombo();
@@ -251,7 +235,7 @@ export const FruitSlicer = ({
251
235
  }]);
252
236
 
253
237
  // Light haptic feedback on slice start
254
- Haptics.impactAsync(Haptics.ImpactFeedbackStyle.Light);
238
+ playHaptic(HapticType.LIGHT, settings.hapticEnabled);
255
239
  };
256
240
  const handleGestureUpdate = event => {
257
241
  if (!isPlaying) return;
@@ -336,7 +320,7 @@ export const FruitSlicer = ({
336
320
  if (!isPlaying || gameOver) return;
337
321
  const interval = setInterval(() => {
338
322
  // Check if game is still active before processing
339
- const currentState = useFruitSlicerStore.getState();
323
+ const currentState = useFruitNinjaStore.getState();
340
324
  if (!currentState.isPlaying || currentState.gameOver) {
341
325
  return;
342
326
  }
@@ -345,7 +329,7 @@ export const FruitSlicer = ({
345
329
  // Fruit fell off screen without being sliced
346
330
  if (!fruit.isBomb && !fruit.isBonus && !fruit.isFreeze) {
347
331
  // Only lose life for regular fruits and if game is still active
348
- const livesBeforeLoss = useFruitSlicerStore.getState().lives;
332
+ const livesBeforeLoss = useFruitNinjaStore.getState().lives;
349
333
  if (livesBeforeLoss > 0) {
350
334
  loseLife();
351
335
  // The useEffect will handle cleanup when gameOver becomes true
@@ -365,11 +349,7 @@ export const FruitSlicer = ({
365
349
  children: /*#__PURE__*/_jsx(View, {
366
350
  style: styles.container,
367
351
  children: /*#__PURE__*/_jsxs(GameBackground, {
368
- children: [/*#__PURE__*/_jsx(ScoreBoard, {
369
- score: score,
370
- timeLeft: timeLeft,
371
- lives: lives
372
- }), /*#__PURE__*/_jsx(GestureDetector, {
352
+ children: [/*#__PURE__*/_jsx(GestureDetector, {
373
353
  gesture: panGesture,
374
354
  children: /*#__PURE__*/_jsx(GameArea, {
375
355
  fruits: fruits,
@@ -379,11 +359,29 @@ export const FruitSlicer = ({
379
359
  particles: gameService.getParticles(),
380
360
  onFruitSlice: handleFruitSlice
381
361
  })
382
- }), /*#__PURE__*/_jsx(GameControls, {
383
- isPlaying: isPlaying,
384
- gameOver: gameOver,
385
- onStartGame: handleStartGame,
386
- onStopGame: handleStopGame
362
+ }), /*#__PURE__*/_jsx(View, {
363
+ style: styles.scoreboardContainer,
364
+ children: /*#__PURE__*/_jsx(ScoreBoard, {
365
+ score: score,
366
+ timeLeft: timeLeft,
367
+ lives: lives
368
+ })
369
+ }), /*#__PURE__*/_jsx(View, {
370
+ style: styles.controlButtonContainer,
371
+ children: /*#__PURE__*/_jsx(GameControlButton, {
372
+ isPlaying: isPlaying,
373
+ gameOver: gameOver,
374
+ onStartGame: handleStartGame,
375
+ onStopGame: handleStopGame,
376
+ startButtonText: "START SLICING",
377
+ stopButtonText: "STOP GAME",
378
+ startButtonSubtext: "Slice fruits to score!",
379
+ stopButtonSubtext: "End current game",
380
+ startButtonColor: "#10b981",
381
+ stopButtonColor: "#dc2626",
382
+ startButtonBorderColor: "#34d399",
383
+ stopButtonBorderColor: "#f87171"
384
+ })
387
385
  }), /*#__PURE__*/_jsx(GameOverModal, {
388
386
  isVisible: gameOver,
389
387
  score: score,
@@ -406,6 +404,22 @@ export const FruitSlicer = ({
406
404
  const styles = StyleSheet.create({
407
405
  container: {
408
406
  flex: 1
407
+ },
408
+ scoreboardContainer: {
409
+ position: 'absolute',
410
+ top: 0,
411
+ left: 20,
412
+ right: 20,
413
+ zIndex: 100,
414
+ pointerEvents: 'none' // Allow touches to pass through to fruits below
415
+ },
416
+ controlButtonContainer: {
417
+ position: 'absolute',
418
+ bottom: 20,
419
+ left: 20,
420
+ right: 20,
421
+ zIndex: 100,
422
+ pointerEvents: 'box-none' // Allow touches on button but pass through elsewhere
409
423
  }
410
424
  });
411
- //# sourceMappingURL=FruitSlicer.js.map
425
+ //# sourceMappingURL=FruitNinja.js.map