react-native-games 1.6.0 → 1.8.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 (1182) hide show
  1. package/README.md +127 -72
  2. package/lib/module/games/balloon-blaster/BalloonBlaster.js +1 -1
  3. package/lib/module/games/balloon-blaster/BalloonBlaster.js.map +1 -1
  4. package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js +1 -1
  5. package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js.map +1 -1
  6. package/lib/module/games/balloon-blaster/BalloonBlasterService.js +1 -1
  7. package/lib/module/games/balloon-blaster/BalloonBlasterService.js.map +1 -1
  8. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +1 -1
  9. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js.map +1 -1
  10. package/lib/module/games/balloon-blaster/components/BalloonComponent.js +1 -1
  11. package/lib/module/games/balloon-blaster/components/BalloonComponent.js.map +1 -1
  12. package/lib/module/games/balloon-blaster/components/GameArea.js +1 -1
  13. package/lib/module/games/balloon-blaster/components/GameArea.js.map +1 -1
  14. package/lib/module/games/balloon-blaster/components/GameBackground.js +1 -1
  15. package/lib/module/games/balloon-blaster/components/GameBackground.js.map +1 -1
  16. package/lib/module/games/balloon-blaster/components/ScoreBoard.js +1 -1
  17. package/lib/module/games/balloon-blaster/components/ScoreBoard.js.map +1 -1
  18. package/lib/module/games/bike-racing/BikeRacing.js +1 -1
  19. package/lib/module/games/bike-racing/BikeRacing.js.map +1 -1
  20. package/lib/module/games/bike-racing/BikeRacingConstants.js +1 -1
  21. package/lib/module/games/bike-racing/BikeRacingConstants.js.map +1 -1
  22. package/lib/module/games/bike-racing/BikeRacingService.js +1 -1
  23. package/lib/module/games/bike-racing/BikeRacingService.js.map +1 -1
  24. package/lib/module/games/bike-racing/BikeRacingStore.js +1 -1
  25. package/lib/module/games/bike-racing/BikeRacingStore.js.map +1 -1
  26. package/lib/module/games/bike-racing/components/BikeComponent.js +1 -1
  27. package/lib/module/games/bike-racing/components/BikeComponent.js.map +1 -1
  28. package/lib/module/games/bike-racing/components/GameBackground.js +1 -1
  29. package/lib/module/games/bike-racing/components/GameBackground.js.map +1 -1
  30. package/lib/module/games/bike-racing/components/ScoreBoard.js +1 -1
  31. package/lib/module/games/bike-racing/components/ScoreBoard.js.map +1 -1
  32. package/lib/module/games/block-blast/BlockBlast.js +1 -1
  33. package/lib/module/games/block-blast/BlockBlast.js.map +1 -1
  34. package/lib/module/games/block-blast/BlockBlastConstants.js +1 -1
  35. package/lib/module/games/block-blast/BlockBlastConstants.js.map +1 -1
  36. package/lib/module/games/block-blast/BlockBlastService.js +1 -1
  37. package/lib/module/games/block-blast/BlockBlastService.js.map +1 -1
  38. package/lib/module/games/block-blast/BlockBlastStore.js +1 -1
  39. package/lib/module/games/block-blast/BlockBlastStore.js.map +1 -1
  40. package/lib/module/games/block-blast/components/BlastAnimation.js +1 -1
  41. package/lib/module/games/block-blast/components/BlastAnimation.js.map +1 -1
  42. package/lib/module/games/block-blast/components/BlockPieceComponent.js +1 -1
  43. package/lib/module/games/block-blast/components/BlockPieceComponent.js.map +1 -1
  44. package/lib/module/games/block-blast/components/GameArea.js +1 -1
  45. package/lib/module/games/block-blast/components/GameArea.js.map +1 -1
  46. package/lib/module/games/block-blast/components/GameBackground.js +1 -1
  47. package/lib/module/games/block-blast/components/GameBackground.js.map +1 -1
  48. package/lib/module/games/block-blast/components/GridComponent.js +1 -1
  49. package/lib/module/games/block-blast/components/GridComponent.js.map +1 -1
  50. package/lib/module/games/block-blast/components/ScoreBoard.js +1 -1
  51. package/lib/module/games/block-blast/components/ScoreBoard.js.map +1 -1
  52. package/lib/module/games/bubble-shooter/BubbleShooter.js +1 -1
  53. package/lib/module/games/bubble-shooter/BubbleShooter.js.map +1 -1
  54. package/lib/module/games/bubble-shooter/BubbleShooterConstants.js +1 -1
  55. package/lib/module/games/bubble-shooter/BubbleShooterConstants.js.map +1 -1
  56. package/lib/module/games/bubble-shooter/BubbleShooterService.js +1 -1
  57. package/lib/module/games/bubble-shooter/BubbleShooterService.js.map +1 -1
  58. package/lib/module/games/bubble-shooter/BubbleShooterStore.js +1 -1
  59. package/lib/module/games/bubble-shooter/BubbleShooterStore.js.map +1 -1
  60. package/lib/module/games/bubble-shooter/components/GameArea.js +1 -1
  61. package/lib/module/games/bubble-shooter/components/GameArea.js.map +1 -1
  62. package/lib/module/games/bubble-shooter/components/GameBackground.js +1 -1
  63. package/lib/module/games/bubble-shooter/components/GameBackground.js.map +1 -1
  64. package/lib/module/games/bubble-shooter/components/ScoreBoard.js +1 -1
  65. package/lib/module/games/bubble-shooter/components/ScoreBoard.js.map +1 -1
  66. package/lib/module/games/candy-crush/CandyCrush.js +1 -1
  67. package/lib/module/games/candy-crush/CandyCrush.js.map +1 -1
  68. package/lib/module/games/candy-crush/CandyCrushConstants.js +1 -1
  69. package/lib/module/games/candy-crush/CandyCrushConstants.js.map +1 -1
  70. package/lib/module/games/candy-crush/CandyCrushService.js +1 -1
  71. package/lib/module/games/candy-crush/CandyCrushService.js.map +1 -1
  72. package/lib/module/games/candy-crush/CandyCrushStore.js +1 -1
  73. package/lib/module/games/candy-crush/CandyCrushStore.js.map +1 -1
  74. package/lib/module/games/candy-crush/components/BlastAnimation.js +1 -1
  75. package/lib/module/games/candy-crush/components/BlastAnimation.js.map +1 -1
  76. package/lib/module/games/candy-crush/components/CandyItem.js +1 -1
  77. package/lib/module/games/candy-crush/components/CandyItem.js.map +1 -1
  78. package/lib/module/games/candy-crush/components/GameBackground.js +1 -1
  79. package/lib/module/games/candy-crush/components/GameBackground.js.map +1 -1
  80. package/lib/module/games/candy-crush/components/GameGrid.js +1 -1
  81. package/lib/module/games/candy-crush/components/GameGrid.js.map +1 -1
  82. package/lib/module/games/candy-crush/components/ScoreBoard.js +1 -1
  83. package/lib/module/games/candy-crush/components/ScoreBoard.js.map +1 -1
  84. package/lib/module/games/car-racing/CarRacing.js +1 -1
  85. package/lib/module/games/car-racing/CarRacing.js.map +1 -1
  86. package/lib/module/games/car-racing/CarRacingConstants.js +1 -1
  87. package/lib/module/games/car-racing/CarRacingConstants.js.map +1 -1
  88. package/lib/module/games/car-racing/CarRacingService.js +1 -1
  89. package/lib/module/games/car-racing/CarRacingService.js.map +1 -1
  90. package/lib/module/games/car-racing/CarRacingStore.js +1 -1
  91. package/lib/module/games/car-racing/CarRacingStore.js.map +1 -1
  92. package/lib/module/games/car-racing/components/CarComponent.js +1 -1
  93. package/lib/module/games/car-racing/components/CarComponent.js.map +1 -1
  94. package/lib/module/games/car-racing/components/GameBackground.js +1 -1
  95. package/lib/module/games/car-racing/components/GameBackground.js.map +1 -1
  96. package/lib/module/games/car-racing/components/ScoreBoard.js +1 -1
  97. package/lib/module/games/car-racing/components/ScoreBoard.js.map +1 -1
  98. package/lib/module/games/colors-sort/ColorsSort.js +1 -1
  99. package/lib/module/games/colors-sort/ColorsSort.js.map +1 -1
  100. package/lib/module/games/colors-sort/ColorsSortConstants.js +1 -1
  101. package/lib/module/games/colors-sort/ColorsSortConstants.js.map +1 -1
  102. package/lib/module/games/colors-sort/ColorsSortService.js +1 -1
  103. package/lib/module/games/colors-sort/ColorsSortService.js.map +1 -1
  104. package/lib/module/games/colors-sort/ColorsSortStore.js +1 -1
  105. package/lib/module/games/colors-sort/ColorsSortStore.js.map +1 -1
  106. package/lib/module/games/colors-sort/components/ColorContainer.js +1 -1
  107. package/lib/module/games/colors-sort/components/ColorContainer.js.map +1 -1
  108. package/lib/module/games/colors-sort/components/GameBackground.js +1 -1
  109. package/lib/module/games/colors-sort/components/GameBackground.js.map +1 -1
  110. package/lib/module/games/colors-sort/components/ScoreBoard.js +1 -1
  111. package/lib/module/games/colors-sort/components/ScoreBoard.js.map +1 -1
  112. package/lib/module/games/connect-em-all/ConnectEmAll.js +1 -0
  113. package/lib/module/games/connect-em-all/ConnectEmAll.js.map +1 -0
  114. package/lib/module/games/connect-em-all/ConnectEmAllConstants.js +1 -0
  115. package/lib/module/games/connect-em-all/ConnectEmAllConstants.js.map +1 -0
  116. package/lib/module/games/connect-em-all/ConnectEmAllService.js +1 -0
  117. package/lib/module/games/connect-em-all/ConnectEmAllService.js.map +1 -0
  118. package/lib/module/games/connect-em-all/ConnectEmAllStore.js +1 -0
  119. package/lib/module/games/connect-em-all/ConnectEmAllStore.js.map +1 -0
  120. package/lib/module/games/connect-em-all/components/GameBackground.js +1 -0
  121. package/lib/module/games/connect-em-all/components/GameBackground.js.map +1 -0
  122. package/lib/module/games/connect-em-all/components/GameBoard.js +1 -0
  123. package/lib/module/games/connect-em-all/components/GameBoard.js.map +1 -0
  124. package/lib/module/games/connect-em-all/components/ScoreBoard.js +1 -0
  125. package/lib/module/games/connect-em-all/components/ScoreBoard.js.map +1 -0
  126. package/lib/module/games/dino-jump/DinoJump.js +1 -1
  127. package/lib/module/games/dino-jump/DinoJump.js.map +1 -1
  128. package/lib/module/games/dino-jump/DinoJumpConstants.js +1 -1
  129. package/lib/module/games/dino-jump/DinoJumpConstants.js.map +1 -1
  130. package/lib/module/games/dino-jump/DinoJumpService.js +1 -1
  131. package/lib/module/games/dino-jump/DinoJumpService.js.map +1 -1
  132. package/lib/module/games/dino-jump/DinoJumpStore.js +1 -1
  133. package/lib/module/games/dino-jump/DinoJumpStore.js.map +1 -1
  134. package/lib/module/games/dino-jump/components/DinoSprite.js +1 -1
  135. package/lib/module/games/dino-jump/components/DinoSprite.js.map +1 -1
  136. package/lib/module/games/dino-jump/components/GameArea.js +1 -1
  137. package/lib/module/games/dino-jump/components/GameArea.js.map +1 -1
  138. package/lib/module/games/dino-jump/components/GameBackground.js +1 -1
  139. package/lib/module/games/dino-jump/components/GameBackground.js.map +1 -1
  140. package/lib/module/games/dino-jump/components/ObstacleSprite.js +1 -1
  141. package/lib/module/games/dino-jump/components/ObstacleSprite.js.map +1 -1
  142. package/lib/module/games/dino-jump/components/ScoreBoard.js +1 -1
  143. package/lib/module/games/dino-jump/components/ScoreBoard.js.map +1 -1
  144. package/lib/module/games/dino-jump/components/StarSprite.js +1 -1
  145. package/lib/module/games/dino-jump/components/StarSprite.js.map +1 -1
  146. package/lib/module/games/dots-and-boxes/DotsAndBoxes.js +1 -0
  147. package/lib/module/games/dots-and-boxes/DotsAndBoxes.js.map +1 -0
  148. package/lib/module/games/dots-and-boxes/DotsAndBoxesConstants.js +1 -0
  149. package/lib/module/games/dots-and-boxes/DotsAndBoxesConstants.js.map +1 -0
  150. package/lib/module/games/dots-and-boxes/DotsAndBoxesService.js +1 -0
  151. package/lib/module/games/dots-and-boxes/DotsAndBoxesService.js.map +1 -0
  152. package/lib/module/games/dots-and-boxes/DotsAndBoxesStore.js +1 -0
  153. package/lib/module/games/dots-and-boxes/DotsAndBoxesStore.js.map +1 -0
  154. package/lib/module/games/dots-and-boxes/components/GameBackground.js +1 -0
  155. package/lib/module/games/dots-and-boxes/components/GameBackground.js.map +1 -0
  156. package/lib/module/games/dots-and-boxes/components/GameBoard.js +1 -0
  157. package/lib/module/games/dots-and-boxes/components/GameBoard.js.map +1 -0
  158. package/lib/module/games/dots-and-boxes/components/ScoreBoard.js +1 -0
  159. package/lib/module/games/dots-and-boxes/components/ScoreBoard.js.map +1 -0
  160. package/lib/module/games/flappy-bird/FlappyBird.js +1 -1
  161. package/lib/module/games/flappy-bird/FlappyBird.js.map +1 -1
  162. package/lib/module/games/flappy-bird/FlappyBirdConstants.js +1 -1
  163. package/lib/module/games/flappy-bird/FlappyBirdConstants.js.map +1 -1
  164. package/lib/module/games/flappy-bird/FlappyBirdStore.js +1 -1
  165. package/lib/module/games/flappy-bird/FlappyBirdStore.js.map +1 -1
  166. package/lib/module/games/flappy-bird/components/Bird.js +1 -1
  167. package/lib/module/games/flappy-bird/components/Bird.js.map +1 -1
  168. package/lib/module/games/flappy-bird/components/GameArea.js +1 -1
  169. package/lib/module/games/flappy-bird/components/GameArea.js.map +1 -1
  170. package/lib/module/games/flappy-bird/components/GameBackground.js +1 -1
  171. package/lib/module/games/flappy-bird/components/GameBackground.js.map +1 -1
  172. package/lib/module/games/flappy-bird/components/Pipes.js +1 -1
  173. package/lib/module/games/flappy-bird/components/Pipes.js.map +1 -1
  174. package/lib/module/games/flappy-bird/components/ScoreBoard.js +1 -1
  175. package/lib/module/games/flappy-bird/components/ScoreBoard.js.map +1 -1
  176. package/lib/module/games/fruit-merger/FruitMerger.js +1 -1
  177. package/lib/module/games/fruit-merger/FruitMerger.js.map +1 -1
  178. package/lib/module/games/fruit-merger/FruitMergerConstants.js +1 -1
  179. package/lib/module/games/fruit-merger/FruitMergerConstants.js.map +1 -1
  180. package/lib/module/games/fruit-merger/FruitMergerService.js +1 -1
  181. package/lib/module/games/fruit-merger/FruitMergerService.js.map +1 -1
  182. package/lib/module/games/fruit-merger/FruitMergerStore.js +1 -1
  183. package/lib/module/games/fruit-merger/FruitMergerStore.js.map +1 -1
  184. package/lib/module/games/fruit-merger/components/FruitItem.js +1 -1
  185. package/lib/module/games/fruit-merger/components/FruitItem.js.map +1 -1
  186. package/lib/module/games/fruit-merger/components/GameArea.js +1 -1
  187. package/lib/module/games/fruit-merger/components/GameArea.js.map +1 -1
  188. package/lib/module/games/fruit-merger/components/GameBackground.js +1 -1
  189. package/lib/module/games/fruit-merger/components/GameBackground.js.map +1 -1
  190. package/lib/module/games/fruit-merger/components/ScoreBoard.js +1 -1
  191. package/lib/module/games/fruit-merger/components/ScoreBoard.js.map +1 -1
  192. package/lib/module/games/fruit-ninja/FruitNinja.js +1 -1
  193. package/lib/module/games/fruit-ninja/FruitNinja.js.map +1 -1
  194. package/lib/module/games/fruit-ninja/FruitNinjaConstants.js +1 -1
  195. package/lib/module/games/fruit-ninja/FruitNinjaConstants.js.map +1 -1
  196. package/lib/module/games/fruit-ninja/FruitNinjaService.js +1 -1
  197. package/lib/module/games/fruit-ninja/FruitNinjaService.js.map +1 -1
  198. package/lib/module/games/fruit-ninja/FruitNinjaStore.js +1 -1
  199. package/lib/module/games/fruit-ninja/FruitNinjaStore.js.map +1 -1
  200. package/lib/module/games/fruit-ninja/components/FruitComponent.js +1 -1
  201. package/lib/module/games/fruit-ninja/components/FruitComponent.js.map +1 -1
  202. package/lib/module/games/fruit-ninja/components/GameArea.js +1 -1
  203. package/lib/module/games/fruit-ninja/components/GameArea.js.map +1 -1
  204. package/lib/module/games/fruit-ninja/components/GameBackground.js +1 -1
  205. package/lib/module/games/fruit-ninja/components/GameBackground.js.map +1 -1
  206. package/lib/module/games/fruit-ninja/components/ScoreBoard.js +1 -1
  207. package/lib/module/games/fruit-ninja/components/ScoreBoard.js.map +1 -1
  208. package/lib/module/games/game-2048/Game2048.js +1 -1
  209. package/lib/module/games/game-2048/Game2048.js.map +1 -1
  210. package/lib/module/games/game-2048/Game2048Constants.js +1 -1
  211. package/lib/module/games/game-2048/Game2048Constants.js.map +1 -1
  212. package/lib/module/games/game-2048/Game2048Service.js +1 -1
  213. package/lib/module/games/game-2048/Game2048Service.js.map +1 -1
  214. package/lib/module/games/game-2048/Game2048Store.js +1 -1
  215. package/lib/module/games/game-2048/Game2048Store.js.map +1 -1
  216. package/lib/module/games/game-2048/components/GameBackground.js +1 -1
  217. package/lib/module/games/game-2048/components/GameBackground.js.map +1 -1
  218. package/lib/module/games/game-2048/components/GameGrid.js +1 -1
  219. package/lib/module/games/game-2048/components/GameGrid.js.map +1 -1
  220. package/lib/module/games/game-2048/components/GameTile.js +1 -1
  221. package/lib/module/games/game-2048/components/GameTile.js.map +1 -1
  222. package/lib/module/games/game-2048/components/ScoreBoard.js +1 -1
  223. package/lib/module/games/game-2048/components/ScoreBoard.js.map +1 -1
  224. package/lib/module/games/ludo-king/LudoKing.js +1 -0
  225. package/lib/module/games/ludo-king/LudoKing.js.map +1 -0
  226. package/lib/module/games/ludo-king/LudoKingConstants.js +1 -0
  227. package/lib/module/games/ludo-king/LudoKingConstants.js.map +1 -0
  228. package/lib/module/games/ludo-king/LudoKingService.js +1 -0
  229. package/lib/module/games/ludo-king/LudoKingService.js.map +1 -0
  230. package/lib/module/games/ludo-king/LudoKingStore.js +1 -0
  231. package/lib/module/games/ludo-king/LudoKingStore.js.map +1 -0
  232. package/lib/module/games/ludo-king/components/Dice.js +1 -0
  233. package/lib/module/games/ludo-king/components/Dice.js.map +1 -0
  234. package/lib/module/games/ludo-king/components/GameBackground.js +1 -0
  235. package/lib/module/games/ludo-king/components/GameBackground.js.map +1 -0
  236. package/lib/module/games/ludo-king/components/GameBoard.js +1 -0
  237. package/lib/module/games/ludo-king/components/GameBoard.js.map +1 -0
  238. package/lib/module/games/ludo-king/components/ScoreBoard.js +1 -0
  239. package/lib/module/games/ludo-king/components/ScoreBoard.js.map +1 -0
  240. package/lib/module/games/maze-runner/MazeRunner.js +1 -1
  241. package/lib/module/games/maze-runner/MazeRunner.js.map +1 -1
  242. package/lib/module/games/maze-runner/MazeRunnerConstants.js +1 -1
  243. package/lib/module/games/maze-runner/MazeRunnerConstants.js.map +1 -1
  244. package/lib/module/games/maze-runner/MazeRunnerStore.js +1 -0
  245. package/lib/module/games/maze-runner/MazeRunnerStore.js.map +1 -0
  246. package/lib/module/games/maze-runner/components/EnhancedBallComponent.js +1 -1
  247. package/lib/module/games/maze-runner/components/EnhancedBallComponent.js.map +1 -1
  248. package/lib/module/games/maze-runner/components/EnhancedGameArea.js +1 -1
  249. package/lib/module/games/maze-runner/components/EnhancedGameArea.js.map +1 -1
  250. package/lib/module/games/maze-runner/components/GameBackground.js +1 -1
  251. package/lib/module/games/maze-runner/components/GameBackground.js.map +1 -1
  252. package/lib/module/games/maze-runner/components/ScoreBoard.js +1 -1
  253. package/lib/module/games/maze-runner/components/ScoreBoard.js.map +1 -1
  254. package/lib/module/games/maze-runner/components/SkiaPipeComponent.js +1 -1
  255. package/lib/module/games/maze-runner/components/SkiaPipeComponent.js.map +1 -1
  256. package/lib/module/games/maze-runner/components/StaticGameBackground.js +1 -1
  257. package/lib/module/games/maze-runner/components/StaticGameBackground.js.map +1 -1
  258. package/lib/module/games/maze-runner/components/WallComponent.js +1 -1
  259. package/lib/module/games/maze-runner/components/WallComponent.js.map +1 -1
  260. package/lib/module/games/number-search/NumberSearch.js +1 -0
  261. package/lib/module/games/number-search/NumberSearch.js.map +1 -0
  262. package/lib/module/games/number-search/NumberSearchConstants.js +1 -0
  263. package/lib/module/games/number-search/NumberSearchConstants.js.map +1 -0
  264. package/lib/module/games/number-search/NumberSearchService.js +1 -0
  265. package/lib/module/games/number-search/NumberSearchService.js.map +1 -0
  266. package/lib/module/games/number-search/NumberSearchStore.js +1 -0
  267. package/lib/module/games/number-search/NumberSearchStore.js.map +1 -0
  268. package/lib/module/games/number-search/components/GameBackground.js +1 -0
  269. package/lib/module/games/number-search/components/GameBackground.js.map +1 -0
  270. package/lib/module/games/number-search/components/GameBoard.js +1 -0
  271. package/lib/module/games/number-search/components/GameBoard.js.map +1 -0
  272. package/lib/module/games/number-search/components/NumberList.js +1 -0
  273. package/lib/module/games/number-search/components/NumberList.js.map +1 -0
  274. package/lib/module/games/number-search/components/ScoreBoard.js +1 -0
  275. package/lib/module/games/number-search/components/ScoreBoard.js.map +1 -0
  276. package/lib/module/games/nuts-and-bolts/NutsAndBolts.js +1 -0
  277. package/lib/module/games/nuts-and-bolts/NutsAndBolts.js.map +1 -0
  278. package/lib/module/games/nuts-and-bolts/NutsAndBoltsConstants.js +1 -0
  279. package/lib/module/games/nuts-and-bolts/NutsAndBoltsConstants.js.map +1 -0
  280. package/lib/module/games/nuts-and-bolts/NutsAndBoltsService.js +1 -0
  281. package/lib/module/games/nuts-and-bolts/NutsAndBoltsService.js.map +1 -0
  282. package/lib/module/games/nuts-and-bolts/NutsAndBoltsStore.js +1 -0
  283. package/lib/module/games/nuts-and-bolts/NutsAndBoltsStore.js.map +1 -0
  284. package/lib/module/games/nuts-and-bolts/components/GameBackground.js +1 -0
  285. package/lib/module/games/nuts-and-bolts/components/GameBackground.js.map +1 -0
  286. package/lib/module/games/nuts-and-bolts/components/GameBoard.js +1 -0
  287. package/lib/module/games/nuts-and-bolts/components/GameBoard.js.map +1 -0
  288. package/lib/module/games/nuts-and-bolts/components/ScoreBoard.js +1 -0
  289. package/lib/module/games/nuts-and-bolts/components/ScoreBoard.js.map +1 -0
  290. package/lib/module/games/pac-man/PacMan.js +1 -0
  291. package/lib/module/games/pac-man/PacMan.js.map +1 -0
  292. package/lib/module/games/pac-man/PacManConstants.js +1 -0
  293. package/lib/module/games/pac-man/PacManConstants.js.map +1 -0
  294. package/lib/module/games/pac-man/PacManService.js +1 -0
  295. package/lib/module/games/pac-man/PacManService.js.map +1 -0
  296. package/lib/module/games/pac-man/PacManStore.js +1 -0
  297. package/lib/module/games/pac-man/PacManStore.js.map +1 -0
  298. package/lib/module/games/pac-man/components/GameBackground.js +1 -0
  299. package/lib/module/games/pac-man/components/GameBackground.js.map +1 -0
  300. package/lib/module/games/pac-man/components/GameCanvas.js +1 -0
  301. package/lib/module/games/pac-man/components/GameCanvas.js.map +1 -0
  302. package/lib/module/games/pac-man/components/ScoreBoard.js +1 -0
  303. package/lib/module/games/pac-man/components/ScoreBoard.js.map +1 -0
  304. package/lib/module/games/perfect-circle/PerfectCircle.js +1 -1
  305. package/lib/module/games/perfect-circle/PerfectCircle.js.map +1 -1
  306. package/lib/module/games/perfect-circle/PerfectCircleConstants.js +1 -1
  307. package/lib/module/games/perfect-circle/PerfectCircleConstants.js.map +1 -1
  308. package/lib/module/games/perfect-circle/PerfectCircleService.js +1 -1
  309. package/lib/module/games/perfect-circle/PerfectCircleService.js.map +1 -1
  310. package/lib/module/games/perfect-circle/PerfectCircleStore.js +1 -1
  311. package/lib/module/games/perfect-circle/PerfectCircleStore.js.map +1 -1
  312. package/lib/module/games/perfect-circle/components/DrawingCanvas.js +1 -1
  313. package/lib/module/games/perfect-circle/components/DrawingCanvas.js.map +1 -1
  314. package/lib/module/games/perfect-circle/components/GameBackground.js +1 -1
  315. package/lib/module/games/perfect-circle/components/GameBackground.js.map +1 -1
  316. package/lib/module/games/perfect-circle/components/ScoreBoard.js +1 -1
  317. package/lib/module/games/perfect-circle/components/ScoreBoard.js.map +1 -1
  318. package/lib/module/games/popit-fidget/PopitFidget.js +1 -1
  319. package/lib/module/games/popit-fidget/PopitFidget.js.map +1 -1
  320. package/lib/module/games/popit-fidget/PopitFidgetConstants.js +1 -1
  321. package/lib/module/games/popit-fidget/PopitFidgetConstants.js.map +1 -1
  322. package/lib/module/games/popit-fidget/PopitFidgetService.js +1 -1
  323. package/lib/module/games/popit-fidget/PopitFidgetService.js.map +1 -1
  324. package/lib/module/games/popit-fidget/PopitFidgetStore.js +1 -1
  325. package/lib/module/games/popit-fidget/PopitFidgetStore.js.map +1 -1
  326. package/lib/module/games/popit-fidget/components/BubbleComponent.js +1 -1
  327. package/lib/module/games/popit-fidget/components/BubbleComponent.js.map +1 -1
  328. package/lib/module/games/popit-fidget/components/FidgetGrid.js +1 -1
  329. package/lib/module/games/popit-fidget/components/FidgetGrid.js.map +1 -1
  330. package/lib/module/games/popit-fidget/components/GameBackground.js +1 -1
  331. package/lib/module/games/popit-fidget/components/GameBackground.js.map +1 -1
  332. package/lib/module/games/popit-fidget/components/ScoreBoard.js +1 -1
  333. package/lib/module/games/popit-fidget/components/ScoreBoard.js.map +1 -1
  334. package/lib/module/games/sliding-numbers/SlidingNumbers.js +1 -1
  335. package/lib/module/games/sliding-numbers/SlidingNumbers.js.map +1 -1
  336. package/lib/module/games/sliding-numbers/SlidingNumbersConstants.js +1 -1
  337. package/lib/module/games/sliding-numbers/SlidingNumbersConstants.js.map +1 -1
  338. package/lib/module/games/sliding-numbers/SlidingNumbersService.js +1 -1
  339. package/lib/module/games/sliding-numbers/SlidingNumbersService.js.map +1 -1
  340. package/lib/module/games/sliding-numbers/SlidingNumbersStore.js +1 -1
  341. package/lib/module/games/sliding-numbers/SlidingNumbersStore.js.map +1 -1
  342. package/lib/module/games/sliding-numbers/components/GameBackground.js +1 -1
  343. package/lib/module/games/sliding-numbers/components/GameBackground.js.map +1 -1
  344. package/lib/module/games/sliding-numbers/components/NumbersGrid.js +1 -1
  345. package/lib/module/games/sliding-numbers/components/NumbersGrid.js.map +1 -1
  346. package/lib/module/games/sliding-numbers/components/NumbersTile.js +1 -1
  347. package/lib/module/games/sliding-numbers/components/NumbersTile.js.map +1 -1
  348. package/lib/module/games/sliding-numbers/components/ScoreBoard.js +1 -1
  349. package/lib/module/games/sliding-numbers/components/ScoreBoard.js.map +1 -1
  350. package/lib/module/games/snake-3d/Snake3D.js +1 -0
  351. package/lib/module/games/snake-3d/Snake3D.js.map +1 -0
  352. package/lib/module/games/snake-3d/Snake3DConstants.js +1 -0
  353. package/lib/module/games/snake-3d/Snake3DConstants.js.map +1 -0
  354. package/lib/module/games/snake-3d/Snake3DService.js +1 -0
  355. package/lib/module/games/snake-3d/Snake3DService.js.map +1 -0
  356. package/lib/module/games/snake-3d/Snake3DStore.js +1 -0
  357. package/lib/module/games/snake-3d/Snake3DStore.js.map +1 -0
  358. package/lib/module/games/snake-3d/components/GameBackground.js +1 -0
  359. package/lib/module/games/snake-3d/components/GameBackground.js.map +1 -0
  360. package/lib/module/games/snake-3d/components/GameGrid.js +1 -0
  361. package/lib/module/games/snake-3d/components/GameGrid.js.map +1 -0
  362. package/lib/module/games/snake-3d/components/ScoreBoard.js +1 -0
  363. package/lib/module/games/snake-3d/components/ScoreBoard.js.map +1 -0
  364. package/lib/module/games/space-fighter/SpaceFighter.js +1 -1
  365. package/lib/module/games/space-fighter/SpaceFighter.js.map +1 -1
  366. package/lib/module/games/space-fighter/SpaceFighterConstants.js +1 -1
  367. package/lib/module/games/space-fighter/SpaceFighterConstants.js.map +1 -1
  368. package/lib/module/games/space-fighter/SpaceFighterService.js +1 -1
  369. package/lib/module/games/space-fighter/SpaceFighterService.js.map +1 -1
  370. package/lib/module/games/space-fighter/SpaceFighterStore.js +1 -1
  371. package/lib/module/games/space-fighter/SpaceFighterStore.js.map +1 -1
  372. package/lib/module/games/space-fighter/components/AsteroidComponent.js +1 -1
  373. package/lib/module/games/space-fighter/components/AsteroidComponent.js.map +1 -1
  374. package/lib/module/games/space-fighter/components/GameArea.js +1 -1
  375. package/lib/module/games/space-fighter/components/GameArea.js.map +1 -1
  376. package/lib/module/games/space-fighter/components/GameBackground.js +1 -1
  377. package/lib/module/games/space-fighter/components/GameBackground.js.map +1 -1
  378. package/lib/module/games/space-fighter/components/ScoreBoard.js +1 -1
  379. package/lib/module/games/space-fighter/components/ScoreBoard.js.map +1 -1
  380. package/lib/module/games/space-fighter/components/Spacecraft3D.js +1 -1
  381. package/lib/module/games/space-fighter/components/Spacecraft3D.js.map +1 -1
  382. package/lib/module/games/space-fighter/components/SpacecraftPath.js +1 -1
  383. package/lib/module/games/space-fighter/components/SpacecraftPath.js.map +1 -1
  384. package/lib/module/games/spider-solitaire/SpiderSolitaire.js +1 -0
  385. package/lib/module/games/spider-solitaire/SpiderSolitaire.js.map +1 -0
  386. package/lib/module/games/spider-solitaire/SpiderSolitaireConstants.js +1 -0
  387. package/lib/module/games/spider-solitaire/SpiderSolitaireConstants.js.map +1 -0
  388. package/lib/module/games/spider-solitaire/SpiderSolitaireService.js +1 -0
  389. package/lib/module/games/spider-solitaire/SpiderSolitaireService.js.map +1 -0
  390. package/lib/module/games/spider-solitaire/SpiderSolitaireStore.js +1 -0
  391. package/lib/module/games/spider-solitaire/SpiderSolitaireStore.js.map +1 -0
  392. package/lib/module/games/spider-solitaire/components/Card.js +1 -0
  393. package/lib/module/games/spider-solitaire/components/Card.js.map +1 -0
  394. package/lib/module/games/spider-solitaire/components/CardPile.js +1 -0
  395. package/lib/module/games/spider-solitaire/components/CardPile.js.map +1 -0
  396. package/lib/module/games/spider-solitaire/components/GameBackground.js +1 -0
  397. package/lib/module/games/spider-solitaire/components/GameBackground.js.map +1 -0
  398. package/lib/module/games/spider-solitaire/components/ScoreBoard.js +1 -0
  399. package/lib/module/games/spider-solitaire/components/ScoreBoard.js.map +1 -0
  400. package/lib/module/games/tank-1990/Tank1990.js +1 -0
  401. package/lib/module/games/tank-1990/Tank1990.js.map +1 -0
  402. package/lib/module/games/tank-1990/Tank1990Constants.js +1 -0
  403. package/lib/module/games/tank-1990/Tank1990Constants.js.map +1 -0
  404. package/lib/module/games/tank-1990/Tank1990Service.js +1 -0
  405. package/lib/module/games/tank-1990/Tank1990Service.js.map +1 -0
  406. package/lib/module/games/tank-1990/Tank1990Store.js +1 -0
  407. package/lib/module/games/tank-1990/Tank1990Store.js.map +1 -0
  408. package/lib/module/games/tank-1990/components/Controls.js +1 -0
  409. package/lib/module/games/tank-1990/components/Controls.js.map +1 -0
  410. package/lib/module/games/tank-1990/components/GameBackground.js +1 -0
  411. package/lib/module/games/tank-1990/components/GameBackground.js.map +1 -0
  412. package/lib/module/games/tank-1990/components/GameBoard.js +1 -0
  413. package/lib/module/games/tank-1990/components/GameBoard.js.map +1 -0
  414. package/lib/module/games/tank-1990/components/ScoreBoard.js +1 -0
  415. package/lib/module/games/tank-1990/components/ScoreBoard.js.map +1 -0
  416. package/lib/module/games/tic-tac-toe/TicTacToe.js +1 -0
  417. package/lib/module/games/tic-tac-toe/TicTacToe.js.map +1 -0
  418. package/lib/module/games/tic-tac-toe/TicTacToeConstants.js +1 -0
  419. package/lib/module/games/tic-tac-toe/TicTacToeConstants.js.map +1 -0
  420. package/lib/module/games/tic-tac-toe/TicTacToeService.js +1 -0
  421. package/lib/module/games/tic-tac-toe/TicTacToeService.js.map +1 -0
  422. package/lib/module/games/tic-tac-toe/TicTacToeStore.js +1 -0
  423. package/lib/module/games/tic-tac-toe/TicTacToeStore.js.map +1 -0
  424. package/lib/module/games/tic-tac-toe/components/GameBackground.js +1 -0
  425. package/lib/module/games/tic-tac-toe/components/GameBackground.js.map +1 -0
  426. package/lib/module/games/tic-tac-toe/components/GameBoard.js +1 -0
  427. package/lib/module/games/tic-tac-toe/components/GameBoard.js.map +1 -0
  428. package/lib/module/games/tic-tac-toe/components/ScoreBoard.js +1 -0
  429. package/lib/module/games/tic-tac-toe/components/ScoreBoard.js.map +1 -0
  430. package/lib/module/games/tile-home/TileHome.js +1 -0
  431. package/lib/module/games/tile-home/TileHome.js.map +1 -0
  432. package/lib/module/games/tile-home/TileHomeConstants.js +1 -0
  433. package/lib/module/games/tile-home/TileHomeConstants.js.map +1 -0
  434. package/lib/module/games/tile-home/TileHomeService.js +1 -0
  435. package/lib/module/games/tile-home/TileHomeService.js.map +1 -0
  436. package/lib/module/games/tile-home/TileHomeStore.js +1 -0
  437. package/lib/module/games/tile-home/TileHomeStore.js.map +1 -0
  438. package/lib/module/games/tile-home/components/AnimatingTile.js +1 -0
  439. package/lib/module/games/tile-home/components/AnimatingTile.js.map +1 -0
  440. package/lib/module/games/tile-home/components/FlyingTile.js +1 -0
  441. package/lib/module/games/tile-home/components/FlyingTile.js.map +1 -0
  442. package/lib/module/games/tile-home/components/GameBackground.js +1 -0
  443. package/lib/module/games/tile-home/components/GameBackground.js.map +1 -0
  444. package/lib/module/games/tile-home/components/GameBoard.js +1 -0
  445. package/lib/module/games/tile-home/components/GameBoard.js.map +1 -0
  446. package/lib/module/games/tile-home/components/ScoreBoard.js +1 -0
  447. package/lib/module/games/tile-home/components/ScoreBoard.js.map +1 -0
  448. package/lib/module/games/tile-home/components/TileItem.js +1 -0
  449. package/lib/module/games/tile-home/components/TileItem.js.map +1 -0
  450. package/lib/module/games/tile-home/components/TileSlot.js +1 -0
  451. package/lib/module/games/tile-home/components/TileSlot.js.map +1 -0
  452. package/lib/module/games/whack-a-mole/WhackAMole.js +1 -1
  453. package/lib/module/games/whack-a-mole/WhackAMole.js.map +1 -1
  454. package/lib/module/games/whack-a-mole/WhackAMoleConstants.js +1 -1
  455. package/lib/module/games/whack-a-mole/WhackAMoleConstants.js.map +1 -1
  456. package/lib/module/games/whack-a-mole/WhackAMoleService.js +1 -1
  457. package/lib/module/games/whack-a-mole/WhackAMoleStore.js +1 -1
  458. package/lib/module/games/whack-a-mole/WhackAMoleStore.js.map +1 -1
  459. package/lib/module/games/whack-a-mole/components/GameBackground.js +1 -1
  460. package/lib/module/games/whack-a-mole/components/GameBackground.js.map +1 -1
  461. package/lib/module/games/whack-a-mole/components/GameGrid.js +1 -1
  462. package/lib/module/games/whack-a-mole/components/GameGrid.js.map +1 -1
  463. package/lib/module/games/whack-a-mole/components/GameHole.js +1 -1
  464. package/lib/module/games/whack-a-mole/components/GameHole.js.map +1 -1
  465. package/lib/module/games/whack-a-mole/components/MoleCharacter.js +1 -1
  466. package/lib/module/games/whack-a-mole/components/MoleCharacter.js.map +1 -1
  467. package/lib/module/games/whack-a-mole/components/ScoreBoard.js +1 -1
  468. package/lib/module/games/whack-a-mole/components/ScoreBoard.js.map +1 -1
  469. package/lib/module/games/word-search/WordSearch.js +1 -0
  470. package/lib/module/games/word-search/WordSearch.js.map +1 -0
  471. package/lib/module/games/word-search/WordSearchConstants.js +1 -0
  472. package/lib/module/games/word-search/WordSearchConstants.js.map +1 -0
  473. package/lib/module/games/word-search/WordSearchService.js +1 -0
  474. package/lib/module/games/word-search/WordSearchService.js.map +1 -0
  475. package/lib/module/games/word-search/WordSearchStore.js +1 -0
  476. package/lib/module/games/word-search/WordSearchStore.js.map +1 -0
  477. package/lib/module/games/word-search/components/GameBackground.js +1 -0
  478. package/lib/module/games/word-search/components/GameBackground.js.map +1 -0
  479. package/lib/module/games/word-search/components/GameBoard.js +1 -0
  480. package/lib/module/games/word-search/components/GameBoard.js.map +1 -0
  481. package/lib/module/games/word-search/components/ScoreBoard.js +1 -0
  482. package/lib/module/games/word-search/components/ScoreBoard.js.map +1 -0
  483. package/lib/module/games/word-search/components/WordList.js +1 -0
  484. package/lib/module/games/word-search/components/WordList.js.map +1 -0
  485. package/lib/module/helpers/AnimationFrame.js +1 -1
  486. package/lib/module/helpers/AnimationFrame.js.map +1 -1
  487. package/lib/module/helpers/AnimationTracker.js +1 -1
  488. package/lib/module/helpers/AnimationTracker.js.map +1 -1
  489. package/lib/module/helpers/ErrorHandler.js +1 -1
  490. package/lib/module/helpers/ErrorHandler.js.map +1 -1
  491. package/lib/module/helpers/GameControlButton.js +1 -1
  492. package/lib/module/helpers/GameControlButton.js.map +1 -1
  493. package/lib/module/helpers/GameOverModal.js +1 -1
  494. package/lib/module/helpers/GameOverModal.js.map +1 -1
  495. package/lib/module/helpers/GameSettingsModal.js +1 -1
  496. package/lib/module/helpers/GameSettingsModal.js.map +1 -1
  497. package/lib/module/helpers/ParticleBlast.js +1 -1
  498. package/lib/module/helpers/ParticleBlast.js.map +1 -1
  499. package/lib/module/helpers/ScoreBoardContainer.js +1 -1
  500. package/lib/module/helpers/ScoreBoardContainer.js.map +1 -1
  501. package/lib/module/helpers/assets/apple-fruit.js +1 -0
  502. package/lib/module/helpers/assets/apple-fruit.js.map +1 -0
  503. package/lib/module/helpers/assets/avocado-item.js +1 -0
  504. package/lib/module/helpers/assets/avocado-item.js.map +1 -0
  505. package/lib/module/helpers/assets/banana-fruit.js +1 -0
  506. package/lib/module/helpers/assets/banana-fruit.js.map +1 -0
  507. package/lib/module/helpers/assets/bomb-item.js +1 -0
  508. package/lib/module/helpers/assets/bomb-item.js.map +1 -0
  509. package/lib/module/helpers/assets/broccoli-item.js +1 -0
  510. package/lib/module/helpers/assets/broccoli-item.js.map +1 -0
  511. package/lib/module/helpers/assets/cherries-fruit.js +1 -0
  512. package/lib/module/helpers/assets/cherries-fruit.js.map +1 -0
  513. package/lib/module/helpers/assets/donut-item.js +1 -0
  514. package/lib/module/helpers/assets/donut-item.js.map +1 -0
  515. package/lib/module/helpers/assets/dragonfruit-item.js +1 -0
  516. package/lib/module/helpers/assets/dragonfruit-item.js.map +1 -0
  517. package/lib/module/helpers/assets/fries-item.js +1 -0
  518. package/lib/module/helpers/assets/fries-item.js.map +1 -0
  519. package/lib/module/helpers/assets/fruit-helpers.js +1 -0
  520. package/lib/module/helpers/assets/fruit-helpers.js.map +1 -0
  521. package/lib/module/helpers/assets/grapes-fruit.js +1 -0
  522. package/lib/module/helpers/assets/grapes-fruit.js.map +1 -0
  523. package/lib/module/helpers/assets/icecream-item.js +1 -0
  524. package/lib/module/helpers/assets/icecream-item.js.map +1 -0
  525. package/lib/module/helpers/assets/index.js +1 -0
  526. package/lib/module/helpers/assets/index.js.map +1 -0
  527. package/lib/module/helpers/assets/kiwi-fruit.js +1 -0
  528. package/lib/module/helpers/assets/kiwi-fruit.js.map +1 -0
  529. package/lib/module/helpers/assets/mango-fruit.js +1 -0
  530. package/lib/module/helpers/assets/mango-fruit.js.map +1 -0
  531. package/lib/module/helpers/assets/orange-fruit.js +1 -0
  532. package/lib/module/helpers/assets/orange-fruit.js.map +1 -0
  533. package/lib/module/helpers/assets/papaya-fruit.js +1 -0
  534. package/lib/module/helpers/assets/papaya-fruit.js.map +1 -0
  535. package/lib/module/helpers/assets/papaya-full-fruit.js +1 -0
  536. package/lib/module/helpers/assets/papaya-full-fruit.js.map +1 -0
  537. package/lib/module/helpers/assets/peach-fruit.js +1 -0
  538. package/lib/module/helpers/assets/peach-fruit.js.map +1 -0
  539. package/lib/module/helpers/assets/pineapple-fruit.js +1 -0
  540. package/lib/module/helpers/assets/pineapple-fruit.js.map +1 -0
  541. package/lib/module/helpers/assets/pomegranate-fruit.js +1 -0
  542. package/lib/module/helpers/assets/pomegranate-fruit.js.map +1 -0
  543. package/lib/module/helpers/assets/pumpkin-fruit.js +1 -0
  544. package/lib/module/helpers/assets/pumpkin-fruit.js.map +1 -0
  545. package/lib/module/helpers/assets/raspberry-item.js +1 -0
  546. package/lib/module/helpers/assets/raspberry-item.js.map +1 -0
  547. package/lib/module/helpers/assets/star-item.js +1 -0
  548. package/lib/module/helpers/assets/star-item.js.map +1 -0
  549. package/lib/module/helpers/assets/strawberry-fruit.js +1 -0
  550. package/lib/module/helpers/assets/strawberry-fruit.js.map +1 -0
  551. package/lib/module/helpers/assets/watermelon-fruit.js +1 -0
  552. package/lib/module/helpers/assets/watermelon-fruit.js.map +1 -0
  553. package/lib/module/helpers/index.js +1 -1
  554. package/lib/module/helpers/index.js.map +1 -1
  555. package/lib/module/index.js +1 -1
  556. package/lib/module/index.js.map +1 -1
  557. package/lib/module/services/GamesConstants.js +1 -1
  558. package/lib/module/services/GamesConstants.js.map +1 -1
  559. package/lib/module/services/GamesService.js +1 -1
  560. package/lib/module/services/GamesService.js.map +1 -1
  561. package/lib/module/services/HapticsService.js +1 -1
  562. package/lib/module/services/HapticsService.js.map +1 -1
  563. package/lib/module/services/ScoringService.js +1 -1
  564. package/lib/module/services/ScoringService.js.map +1 -1
  565. package/lib/module/services/SoundsService.js +1 -1
  566. package/lib/module/services/SoundsService.js.map +1 -1
  567. package/lib/module/services/ThemeUtils.js +1 -0
  568. package/lib/module/services/ThemeUtils.js.map +1 -0
  569. package/lib/module/services/UtilsService.js +1 -1
  570. package/lib/module/services/UtilsService.js.map +1 -1
  571. package/lib/module/types.d.js +1 -0
  572. package/lib/module/types.d.js.map +1 -0
  573. package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts.map +1 -1
  574. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts +21 -25
  575. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts.map +1 -1
  576. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts +27 -1
  577. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts.map +1 -1
  578. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts +4 -0
  579. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts.map +1 -1
  580. package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts +1 -1
  581. package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts.map +1 -1
  582. package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts +8 -1
  583. package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts.map +1 -1
  584. package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts.map +1 -1
  585. package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts.map +1 -1
  586. package/lib/typescript/src/games/bike-racing/BikeRacing.d.ts.map +1 -1
  587. package/lib/typescript/src/games/bike-racing/BikeRacingConstants.d.ts +28 -61
  588. package/lib/typescript/src/games/bike-racing/BikeRacingConstants.d.ts.map +1 -1
  589. package/lib/typescript/src/games/bike-racing/BikeRacingService.d.ts +19 -0
  590. package/lib/typescript/src/games/bike-racing/BikeRacingService.d.ts.map +1 -1
  591. package/lib/typescript/src/games/bike-racing/BikeRacingStore.d.ts +1 -13
  592. package/lib/typescript/src/games/bike-racing/BikeRacingStore.d.ts.map +1 -1
  593. package/lib/typescript/src/games/bike-racing/components/BikeComponent.d.ts +3 -2
  594. package/lib/typescript/src/games/bike-racing/components/BikeComponent.d.ts.map +1 -1
  595. package/lib/typescript/src/games/bike-racing/components/GameBackground.d.ts +1 -2
  596. package/lib/typescript/src/games/bike-racing/components/GameBackground.d.ts.map +1 -1
  597. package/lib/typescript/src/games/bike-racing/components/ScoreBoard.d.ts.map +1 -1
  598. package/lib/typescript/src/games/block-blast/BlockBlast.d.ts.map +1 -1
  599. package/lib/typescript/src/games/block-blast/BlockBlastConstants.d.ts +30 -67
  600. package/lib/typescript/src/games/block-blast/BlockBlastConstants.d.ts.map +1 -1
  601. package/lib/typescript/src/games/block-blast/BlockBlastService.d.ts.map +1 -1
  602. package/lib/typescript/src/games/block-blast/BlockBlastStore.d.ts.map +1 -1
  603. package/lib/typescript/src/games/block-blast/components/BlastAnimation.d.ts.map +1 -1
  604. package/lib/typescript/src/games/block-blast/components/BlockPieceComponent.d.ts +1 -1
  605. package/lib/typescript/src/games/block-blast/components/BlockPieceComponent.d.ts.map +1 -1
  606. package/lib/typescript/src/games/block-blast/components/GameArea.d.ts.map +1 -1
  607. package/lib/typescript/src/games/block-blast/components/GameBackground.d.ts +1 -1
  608. package/lib/typescript/src/games/block-blast/components/GameBackground.d.ts.map +1 -1
  609. package/lib/typescript/src/games/block-blast/components/GridComponent.d.ts +2 -4
  610. package/lib/typescript/src/games/block-blast/components/GridComponent.d.ts.map +1 -1
  611. package/lib/typescript/src/games/block-blast/components/ScoreBoard.d.ts.map +1 -1
  612. package/lib/typescript/src/games/bubble-shooter/BubbleShooter.d.ts +1 -1
  613. package/lib/typescript/src/games/bubble-shooter/BubbleShooter.d.ts.map +1 -1
  614. package/lib/typescript/src/games/bubble-shooter/BubbleShooterConstants.d.ts +22 -51
  615. package/lib/typescript/src/games/bubble-shooter/BubbleShooterConstants.d.ts.map +1 -1
  616. package/lib/typescript/src/games/bubble-shooter/BubbleShooterService.d.ts +5 -4
  617. package/lib/typescript/src/games/bubble-shooter/BubbleShooterService.d.ts.map +1 -1
  618. package/lib/typescript/src/games/bubble-shooter/BubbleShooterStore.d.ts.map +1 -1
  619. package/lib/typescript/src/games/bubble-shooter/components/GameArea.d.ts +1 -1
  620. package/lib/typescript/src/games/bubble-shooter/components/GameArea.d.ts.map +1 -1
  621. package/lib/typescript/src/games/bubble-shooter/components/GameBackground.d.ts.map +1 -1
  622. package/lib/typescript/src/games/bubble-shooter/components/ScoreBoard.d.ts.map +1 -1
  623. package/lib/typescript/src/games/candy-crush/CandyCrush.d.ts.map +1 -1
  624. package/lib/typescript/src/games/candy-crush/CandyCrushConstants.d.ts +22 -50
  625. package/lib/typescript/src/games/candy-crush/CandyCrushConstants.d.ts.map +1 -1
  626. package/lib/typescript/src/games/candy-crush/CandyCrushService.d.ts +1 -1
  627. package/lib/typescript/src/games/candy-crush/CandyCrushService.d.ts.map +1 -1
  628. package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts +1 -2
  629. package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts.map +1 -1
  630. package/lib/typescript/src/games/candy-crush/components/BlastAnimation.d.ts.map +1 -1
  631. package/lib/typescript/src/games/candy-crush/components/CandyItem.d.ts +2 -1
  632. package/lib/typescript/src/games/candy-crush/components/CandyItem.d.ts.map +1 -1
  633. package/lib/typescript/src/games/candy-crush/components/GameBackground.d.ts.map +1 -1
  634. package/lib/typescript/src/games/candy-crush/components/GameGrid.d.ts +1 -1
  635. package/lib/typescript/src/games/candy-crush/components/GameGrid.d.ts.map +1 -1
  636. package/lib/typescript/src/games/candy-crush/components/ScoreBoard.d.ts.map +1 -1
  637. package/lib/typescript/src/games/car-racing/CarRacing.d.ts.map +1 -1
  638. package/lib/typescript/src/games/car-racing/CarRacingConstants.d.ts +28 -61
  639. package/lib/typescript/src/games/car-racing/CarRacingConstants.d.ts.map +1 -1
  640. package/lib/typescript/src/games/car-racing/CarRacingService.d.ts +19 -0
  641. package/lib/typescript/src/games/car-racing/CarRacingService.d.ts.map +1 -1
  642. package/lib/typescript/src/games/car-racing/CarRacingStore.d.ts +1 -13
  643. package/lib/typescript/src/games/car-racing/CarRacingStore.d.ts.map +1 -1
  644. package/lib/typescript/src/games/car-racing/components/CarComponent.d.ts +2 -1
  645. package/lib/typescript/src/games/car-racing/components/CarComponent.d.ts.map +1 -1
  646. package/lib/typescript/src/games/car-racing/components/GameBackground.d.ts +1 -2
  647. package/lib/typescript/src/games/car-racing/components/GameBackground.d.ts.map +1 -1
  648. package/lib/typescript/src/games/car-racing/components/ScoreBoard.d.ts.map +1 -1
  649. package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts.map +1 -1
  650. package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts +19 -24
  651. package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts.map +1 -1
  652. package/lib/typescript/src/games/colors-sort/ColorsSortService.d.ts +4 -8
  653. package/lib/typescript/src/games/colors-sort/ColorsSortService.d.ts.map +1 -1
  654. package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts +1 -2
  655. package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts.map +1 -1
  656. package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts +1 -2
  657. package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts.map +1 -1
  658. package/lib/typescript/src/games/colors-sort/components/GameBackground.d.ts.map +1 -1
  659. package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts +1 -1
  660. package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts.map +1 -1
  661. package/lib/typescript/src/games/connect-em-all/ConnectEmAll.d.ts +4 -0
  662. package/lib/typescript/src/games/connect-em-all/ConnectEmAll.d.ts.map +1 -0
  663. package/lib/typescript/src/games/connect-em-all/ConnectEmAllConstants.d.ts +26 -0
  664. package/lib/typescript/src/games/connect-em-all/ConnectEmAllConstants.d.ts.map +1 -0
  665. package/lib/typescript/src/games/connect-em-all/ConnectEmAllService.d.ts +20 -0
  666. package/lib/typescript/src/games/connect-em-all/ConnectEmAllService.d.ts.map +1 -0
  667. package/lib/typescript/src/games/connect-em-all/ConnectEmAllStore.d.ts +41 -0
  668. package/lib/typescript/src/games/connect-em-all/ConnectEmAllStore.d.ts.map +1 -0
  669. package/lib/typescript/src/games/connect-em-all/components/GameBackground.d.ts +8 -0
  670. package/lib/typescript/src/games/connect-em-all/components/GameBackground.d.ts.map +1 -0
  671. package/lib/typescript/src/games/connect-em-all/components/GameBoard.d.ts +8 -0
  672. package/lib/typescript/src/games/connect-em-all/components/GameBoard.d.ts.map +1 -0
  673. package/lib/typescript/src/games/connect-em-all/components/ScoreBoard.d.ts.map +1 -0
  674. package/lib/typescript/src/games/dino-jump/DinoJump.d.ts.map +1 -1
  675. package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts +20 -34
  676. package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts.map +1 -1
  677. package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts +6 -6
  678. package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts.map +1 -1
  679. package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts +27 -35
  680. package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts.map +1 -1
  681. package/lib/typescript/src/games/dino-jump/components/DinoSprite.d.ts.map +1 -1
  682. package/lib/typescript/src/games/dino-jump/components/GameArea.d.ts +1 -1
  683. package/lib/typescript/src/games/dino-jump/components/GameArea.d.ts.map +1 -1
  684. package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts.map +1 -1
  685. package/lib/typescript/src/games/dino-jump/components/ObstacleSprite.d.ts +7 -1
  686. package/lib/typescript/src/games/dino-jump/components/ObstacleSprite.d.ts.map +1 -1
  687. package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts.map +1 -1
  688. package/lib/typescript/src/games/dino-jump/components/StarSprite.d.ts.map +1 -1
  689. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxes.d.ts +4 -0
  690. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxes.d.ts.map +1 -0
  691. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesConstants.d.ts +31 -0
  692. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesConstants.d.ts.map +1 -0
  693. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesService.d.ts +41 -0
  694. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesService.d.ts.map +1 -0
  695. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesStore.d.ts +30 -0
  696. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesStore.d.ts.map +1 -0
  697. package/lib/typescript/src/games/dots-and-boxes/components/GameBackground.d.ts +8 -0
  698. package/lib/typescript/src/games/dots-and-boxes/components/GameBackground.d.ts.map +1 -0
  699. package/lib/typescript/src/games/dots-and-boxes/components/GameBoard.d.ts +8 -0
  700. package/lib/typescript/src/games/dots-and-boxes/components/GameBoard.d.ts.map +1 -0
  701. package/lib/typescript/src/games/dots-and-boxes/components/ScoreBoard.d.ts +7 -0
  702. package/lib/typescript/src/games/dots-and-boxes/components/ScoreBoard.d.ts.map +1 -0
  703. package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts.map +1 -1
  704. package/lib/typescript/src/games/flappy-bird/FlappyBirdConstants.d.ts +17 -58
  705. package/lib/typescript/src/games/flappy-bird/FlappyBirdConstants.d.ts.map +1 -1
  706. package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts +16 -4
  707. package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts.map +1 -1
  708. package/lib/typescript/src/games/flappy-bird/components/Bird.d.ts +1 -6
  709. package/lib/typescript/src/games/flappy-bird/components/Bird.d.ts.map +1 -1
  710. package/lib/typescript/src/games/flappy-bird/components/GameArea.d.ts +1 -1
  711. package/lib/typescript/src/games/flappy-bird/components/GameArea.d.ts.map +1 -1
  712. package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts.map +1 -1
  713. package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts.map +1 -1
  714. package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts.map +1 -1
  715. package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts.map +1 -1
  716. package/lib/typescript/src/games/fruit-merger/FruitMergerConstants.d.ts +23 -32
  717. package/lib/typescript/src/games/fruit-merger/FruitMergerConstants.d.ts.map +1 -1
  718. package/lib/typescript/src/games/fruit-merger/FruitMergerService.d.ts +0 -1
  719. package/lib/typescript/src/games/fruit-merger/FruitMergerService.d.ts.map +1 -1
  720. package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts +12 -0
  721. package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts.map +1 -1
  722. package/lib/typescript/src/games/fruit-merger/components/FruitItem.d.ts +1 -1
  723. package/lib/typescript/src/games/fruit-merger/components/FruitItem.d.ts.map +1 -1
  724. package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts +3 -2
  725. package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts.map +1 -1
  726. package/lib/typescript/src/games/fruit-merger/components/GameBackground.d.ts.map +1 -1
  727. package/lib/typescript/src/games/fruit-merger/components/ScoreBoard.d.ts.map +1 -1
  728. package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts.map +1 -1
  729. package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts +34 -26
  730. package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts.map +1 -1
  731. package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts +23 -5
  732. package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts.map +1 -1
  733. package/lib/typescript/src/games/fruit-ninja/FruitNinjaStore.d.ts.map +1 -1
  734. package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts +3 -3
  735. package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts.map +1 -1
  736. package/lib/typescript/src/games/fruit-ninja/components/GameArea.d.ts +6 -1
  737. package/lib/typescript/src/games/fruit-ninja/components/GameArea.d.ts.map +1 -1
  738. package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts.map +1 -1
  739. package/lib/typescript/src/games/fruit-ninja/components/ScoreBoard.d.ts.map +1 -1
  740. package/lib/typescript/src/games/game-2048/Game2048.d.ts.map +1 -1
  741. package/lib/typescript/src/games/game-2048/Game2048Constants.d.ts +16 -35
  742. package/lib/typescript/src/games/game-2048/Game2048Constants.d.ts.map +1 -1
  743. package/lib/typescript/src/games/game-2048/Game2048Service.d.ts +3 -10
  744. package/lib/typescript/src/games/game-2048/Game2048Service.d.ts.map +1 -1
  745. package/lib/typescript/src/games/game-2048/Game2048Store.d.ts +3 -8
  746. package/lib/typescript/src/games/game-2048/Game2048Store.d.ts.map +1 -1
  747. package/lib/typescript/src/games/game-2048/components/GameBackground.d.ts.map +1 -1
  748. package/lib/typescript/src/games/game-2048/components/GameGrid.d.ts +0 -1
  749. package/lib/typescript/src/games/game-2048/components/GameGrid.d.ts.map +1 -1
  750. package/lib/typescript/src/games/game-2048/components/GameTile.d.ts.map +1 -1
  751. package/lib/typescript/src/games/game-2048/components/ScoreBoard.d.ts.map +1 -1
  752. package/lib/typescript/src/games/ludo-king/LudoKing.d.ts +4 -0
  753. package/lib/typescript/src/games/ludo-king/LudoKing.d.ts.map +1 -0
  754. package/lib/typescript/src/games/ludo-king/LudoKingConstants.d.ts +49 -0
  755. package/lib/typescript/src/games/ludo-king/LudoKingConstants.d.ts.map +1 -0
  756. package/lib/typescript/src/games/ludo-king/LudoKingService.d.ts +34 -0
  757. package/lib/typescript/src/games/ludo-king/LudoKingService.d.ts.map +1 -0
  758. package/lib/typescript/src/games/ludo-king/LudoKingStore.d.ts +35 -0
  759. package/lib/typescript/src/games/ludo-king/LudoKingStore.d.ts.map +1 -0
  760. package/lib/typescript/src/games/ludo-king/components/Dice.d.ts +8 -0
  761. package/lib/typescript/src/games/ludo-king/components/Dice.d.ts.map +1 -0
  762. package/lib/typescript/src/games/ludo-king/components/GameBackground.d.ts +8 -0
  763. package/lib/typescript/src/games/ludo-king/components/GameBackground.d.ts.map +1 -0
  764. package/lib/typescript/src/games/ludo-king/components/GameBoard.d.ts +8 -0
  765. package/lib/typescript/src/games/ludo-king/components/GameBoard.d.ts.map +1 -0
  766. package/lib/typescript/src/games/ludo-king/components/ScoreBoard.d.ts +7 -0
  767. package/lib/typescript/src/games/ludo-king/components/ScoreBoard.d.ts.map +1 -0
  768. package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts.map +1 -1
  769. package/lib/typescript/src/games/maze-runner/MazeRunnerConstants.d.ts +20 -37
  770. package/lib/typescript/src/games/maze-runner/MazeRunnerConstants.d.ts.map +1 -1
  771. package/lib/typescript/src/games/maze-runner/MazeRunnerStore.d.ts +63 -0
  772. package/lib/typescript/src/games/maze-runner/MazeRunnerStore.d.ts.map +1 -0
  773. package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts +1 -1
  774. package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts.map +1 -1
  775. package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts +24 -2
  776. package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts.map +1 -1
  777. package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts.map +1 -1
  778. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts +16 -1
  779. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts.map +1 -1
  780. package/lib/typescript/src/games/maze-runner/components/SkiaPipeComponent.d.ts.map +1 -1
  781. package/lib/typescript/src/games/maze-runner/components/StaticGameBackground.d.ts +1 -1
  782. package/lib/typescript/src/games/maze-runner/components/StaticGameBackground.d.ts.map +1 -1
  783. package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts +1 -1
  784. package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts.map +1 -1
  785. package/lib/typescript/src/games/number-search/NumberSearch.d.ts +4 -0
  786. package/lib/typescript/src/games/number-search/NumberSearch.d.ts.map +1 -0
  787. package/lib/typescript/src/games/number-search/NumberSearchConstants.d.ts +66 -0
  788. package/lib/typescript/src/games/number-search/NumberSearchConstants.d.ts.map +1 -0
  789. package/lib/typescript/src/games/number-search/NumberSearchService.d.ts +35 -0
  790. package/lib/typescript/src/games/number-search/NumberSearchService.d.ts.map +1 -0
  791. package/lib/typescript/src/games/number-search/NumberSearchStore.d.ts +66 -0
  792. package/lib/typescript/src/games/number-search/NumberSearchStore.d.ts.map +1 -0
  793. package/lib/typescript/src/games/number-search/components/GameBackground.d.ts +8 -0
  794. package/lib/typescript/src/games/number-search/components/GameBackground.d.ts.map +1 -0
  795. package/lib/typescript/src/games/number-search/components/GameBoard.d.ts +8 -0
  796. package/lib/typescript/src/games/number-search/components/GameBoard.d.ts.map +1 -0
  797. package/lib/typescript/src/games/number-search/components/NumberList.d.ts +3 -0
  798. package/lib/typescript/src/games/number-search/components/NumberList.d.ts.map +1 -0
  799. package/lib/typescript/src/games/number-search/components/ScoreBoard.d.ts +7 -0
  800. package/lib/typescript/src/games/number-search/components/ScoreBoard.d.ts.map +1 -0
  801. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBolts.d.ts +4 -0
  802. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBolts.d.ts.map +1 -0
  803. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsConstants.d.ts +38 -0
  804. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsConstants.d.ts.map +1 -0
  805. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsService.d.ts +68 -0
  806. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsService.d.ts.map +1 -0
  807. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsStore.d.ts +45 -0
  808. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsStore.d.ts.map +1 -0
  809. package/lib/typescript/src/games/nuts-and-bolts/components/GameBackground.d.ts +7 -0
  810. package/lib/typescript/src/games/nuts-and-bolts/components/GameBackground.d.ts.map +1 -0
  811. package/lib/typescript/src/games/nuts-and-bolts/components/GameBoard.d.ts +8 -0
  812. package/lib/typescript/src/games/nuts-and-bolts/components/GameBoard.d.ts.map +1 -0
  813. package/lib/typescript/src/games/nuts-and-bolts/components/ScoreBoard.d.ts +7 -0
  814. package/lib/typescript/src/games/nuts-and-bolts/components/ScoreBoard.d.ts.map +1 -0
  815. package/lib/typescript/src/games/{snake/Snake.d.ts → pac-man/PacMan.d.ts} +2 -2
  816. package/lib/typescript/src/games/pac-man/PacMan.d.ts.map +1 -0
  817. package/lib/typescript/src/games/pac-man/PacManConstants.d.ts +181 -0
  818. package/lib/typescript/src/games/pac-man/PacManConstants.d.ts.map +1 -0
  819. package/lib/typescript/src/games/pac-man/PacManService.d.ts +68 -0
  820. package/lib/typescript/src/games/pac-man/PacManService.d.ts.map +1 -0
  821. package/lib/typescript/src/games/pac-man/PacManStore.d.ts +71 -0
  822. package/lib/typescript/src/games/pac-man/PacManStore.d.ts.map +1 -0
  823. package/lib/typescript/src/games/pac-man/components/GameBackground.d.ts +5 -0
  824. package/lib/typescript/src/games/pac-man/components/GameBackground.d.ts.map +1 -0
  825. package/lib/typescript/src/games/pac-man/components/GameCanvas.d.ts +3 -0
  826. package/lib/typescript/src/games/pac-man/components/GameCanvas.d.ts.map +1 -0
  827. package/lib/typescript/src/games/pac-man/components/ScoreBoard.d.ts +7 -0
  828. package/lib/typescript/src/games/pac-man/components/ScoreBoard.d.ts.map +1 -0
  829. package/lib/typescript/src/games/perfect-circle/PerfectCircle.d.ts +1 -1
  830. package/lib/typescript/src/games/perfect-circle/PerfectCircle.d.ts.map +1 -1
  831. package/lib/typescript/src/games/perfect-circle/PerfectCircleConstants.d.ts +14 -33
  832. package/lib/typescript/src/games/perfect-circle/PerfectCircleConstants.d.ts.map +1 -1
  833. package/lib/typescript/src/games/perfect-circle/PerfectCircleService.d.ts.map +1 -1
  834. package/lib/typescript/src/games/perfect-circle/PerfectCircleStore.d.ts.map +1 -1
  835. package/lib/typescript/src/games/perfect-circle/components/DrawingCanvas.d.ts.map +1 -1
  836. package/lib/typescript/src/games/perfect-circle/components/GameBackground.d.ts.map +1 -1
  837. package/lib/typescript/src/games/perfect-circle/components/ScoreBoard.d.ts.map +1 -1
  838. package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts.map +1 -1
  839. package/lib/typescript/src/games/popit-fidget/PopitFidgetConstants.d.ts +18 -16
  840. package/lib/typescript/src/games/popit-fidget/PopitFidgetConstants.d.ts.map +1 -1
  841. package/lib/typescript/src/games/popit-fidget/PopitFidgetService.d.ts +1 -1
  842. package/lib/typescript/src/games/popit-fidget/PopitFidgetService.d.ts.map +1 -1
  843. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts.map +1 -1
  844. package/lib/typescript/src/games/popit-fidget/components/BubbleComponent.d.ts +2 -2
  845. package/lib/typescript/src/games/popit-fidget/components/BubbleComponent.d.ts.map +1 -1
  846. package/lib/typescript/src/games/popit-fidget/components/FidgetGrid.d.ts.map +1 -1
  847. package/lib/typescript/src/games/popit-fidget/components/GameBackground.d.ts.map +1 -1
  848. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts.map +1 -1
  849. package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts.map +1 -1
  850. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersConstants.d.ts +16 -18
  851. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersConstants.d.ts.map +1 -1
  852. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersService.d.ts +7 -7
  853. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersService.d.ts.map +1 -1
  854. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts +3 -5
  855. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts.map +1 -1
  856. package/lib/typescript/src/games/sliding-numbers/components/GameBackground.d.ts +1 -1
  857. package/lib/typescript/src/games/sliding-numbers/components/GameBackground.d.ts.map +1 -1
  858. package/lib/typescript/src/games/sliding-numbers/components/NumbersGrid.d.ts +0 -1
  859. package/lib/typescript/src/games/sliding-numbers/components/NumbersGrid.d.ts.map +1 -1
  860. package/lib/typescript/src/games/sliding-numbers/components/NumbersTile.d.ts.map +1 -1
  861. package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts.map +1 -1
  862. package/lib/typescript/src/games/snake-3d/Snake3D.d.ts +4 -0
  863. package/lib/typescript/src/games/snake-3d/Snake3D.d.ts.map +1 -0
  864. package/lib/typescript/src/games/{snake/SnakeConstants.d.ts → snake-3d/Snake3DConstants.d.ts} +22 -23
  865. package/lib/typescript/src/games/snake-3d/Snake3DConstants.d.ts.map +1 -0
  866. package/lib/typescript/src/games/{snake/SnakeService.d.ts → snake-3d/Snake3DService.d.ts} +4 -4
  867. package/lib/typescript/src/games/snake-3d/Snake3DService.d.ts.map +1 -0
  868. package/lib/typescript/src/games/{snake/SnakeStore.d.ts → snake-3d/Snake3DStore.d.ts} +10 -12
  869. package/lib/typescript/src/games/snake-3d/Snake3DStore.d.ts.map +1 -0
  870. package/lib/typescript/src/games/snake-3d/components/GameBackground.d.ts.map +1 -0
  871. package/lib/typescript/src/games/snake-3d/components/GameGrid.d.ts.map +1 -0
  872. package/lib/typescript/src/games/snake-3d/components/ScoreBoard.d.ts +7 -0
  873. package/lib/typescript/src/games/snake-3d/components/ScoreBoard.d.ts.map +1 -0
  874. package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts.map +1 -1
  875. package/lib/typescript/src/games/space-fighter/SpaceFighterConstants.d.ts +27 -62
  876. package/lib/typescript/src/games/space-fighter/SpaceFighterConstants.d.ts.map +1 -1
  877. package/lib/typescript/src/games/space-fighter/SpaceFighterService.d.ts +9 -2
  878. package/lib/typescript/src/games/space-fighter/SpaceFighterService.d.ts.map +1 -1
  879. package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts +4 -0
  880. package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts.map +1 -1
  881. package/lib/typescript/src/games/space-fighter/components/AsteroidComponent.d.ts.map +1 -1
  882. package/lib/typescript/src/games/space-fighter/components/GameArea.d.ts.map +1 -1
  883. package/lib/typescript/src/games/space-fighter/components/GameBackground.d.ts.map +1 -1
  884. package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts +1 -1
  885. package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts.map +1 -1
  886. package/lib/typescript/src/games/space-fighter/components/Spacecraft3D.d.ts.map +1 -1
  887. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaire.d.ts +4 -0
  888. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaire.d.ts.map +1 -0
  889. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireConstants.d.ts +49 -0
  890. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireConstants.d.ts.map +1 -0
  891. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireService.d.ts +24 -0
  892. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireService.d.ts.map +1 -0
  893. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireStore.d.ts +72 -0
  894. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireStore.d.ts.map +1 -0
  895. package/lib/typescript/src/games/spider-solitaire/components/Card.d.ts +11 -0
  896. package/lib/typescript/src/games/spider-solitaire/components/Card.d.ts.map +1 -0
  897. package/lib/typescript/src/games/spider-solitaire/components/CardPile.d.ts +13 -0
  898. package/lib/typescript/src/games/spider-solitaire/components/CardPile.d.ts.map +1 -0
  899. package/lib/typescript/src/games/spider-solitaire/components/GameBackground.d.ts +7 -0
  900. package/lib/typescript/src/games/spider-solitaire/components/GameBackground.d.ts.map +1 -0
  901. package/lib/typescript/src/games/spider-solitaire/components/ScoreBoard.d.ts +7 -0
  902. package/lib/typescript/src/games/spider-solitaire/components/ScoreBoard.d.ts.map +1 -0
  903. package/lib/typescript/src/games/tank-1990/Tank1990.d.ts +4 -0
  904. package/lib/typescript/src/games/tank-1990/Tank1990.d.ts.map +1 -0
  905. package/lib/typescript/src/games/tank-1990/Tank1990Constants.d.ts +85 -0
  906. package/lib/typescript/src/games/tank-1990/Tank1990Constants.d.ts.map +1 -0
  907. package/lib/typescript/src/games/tank-1990/Tank1990Service.d.ts +81 -0
  908. package/lib/typescript/src/games/tank-1990/Tank1990Service.d.ts.map +1 -0
  909. package/lib/typescript/src/games/tank-1990/Tank1990Store.d.ts +47 -0
  910. package/lib/typescript/src/games/tank-1990/Tank1990Store.d.ts.map +1 -0
  911. package/lib/typescript/src/games/tank-1990/components/Controls.d.ts +3 -0
  912. package/lib/typescript/src/games/tank-1990/components/Controls.d.ts.map +1 -0
  913. package/lib/typescript/src/games/tank-1990/components/GameBackground.d.ts +7 -0
  914. package/lib/typescript/src/games/tank-1990/components/GameBackground.d.ts.map +1 -0
  915. package/lib/typescript/src/games/tank-1990/components/GameBoard.d.ts +3 -0
  916. package/lib/typescript/src/games/tank-1990/components/GameBoard.d.ts.map +1 -0
  917. package/lib/typescript/src/games/tank-1990/components/ScoreBoard.d.ts +7 -0
  918. package/lib/typescript/src/games/tank-1990/components/ScoreBoard.d.ts.map +1 -0
  919. package/lib/typescript/src/games/tic-tac-toe/TicTacToe.d.ts +4 -0
  920. package/lib/typescript/src/games/tic-tac-toe/TicTacToe.d.ts.map +1 -0
  921. package/lib/typescript/src/games/tic-tac-toe/TicTacToeConstants.d.ts +42 -0
  922. package/lib/typescript/src/games/tic-tac-toe/TicTacToeConstants.d.ts.map +1 -0
  923. package/lib/typescript/src/games/tic-tac-toe/TicTacToeService.d.ts +1 -0
  924. package/lib/typescript/src/games/tic-tac-toe/TicTacToeService.d.ts.map +1 -0
  925. package/lib/typescript/src/games/tic-tac-toe/TicTacToeStore.d.ts +56 -0
  926. package/lib/typescript/src/games/tic-tac-toe/TicTacToeStore.d.ts.map +1 -0
  927. package/lib/typescript/src/games/tic-tac-toe/components/GameBackground.d.ts +7 -0
  928. package/lib/typescript/src/games/tic-tac-toe/components/GameBackground.d.ts.map +1 -0
  929. package/lib/typescript/src/games/tic-tac-toe/components/GameBoard.d.ts +12 -0
  930. package/lib/typescript/src/games/tic-tac-toe/components/GameBoard.d.ts.map +1 -0
  931. package/lib/typescript/src/games/tic-tac-toe/components/ScoreBoard.d.ts +7 -0
  932. package/lib/typescript/src/games/tic-tac-toe/components/ScoreBoard.d.ts.map +1 -0
  933. package/lib/typescript/src/games/tile-home/TileHome.d.ts +4 -0
  934. package/lib/typescript/src/games/tile-home/TileHome.d.ts.map +1 -0
  935. package/lib/typescript/src/games/tile-home/TileHomeConstants.d.ts +76 -0
  936. package/lib/typescript/src/games/tile-home/TileHomeConstants.d.ts.map +1 -0
  937. package/lib/typescript/src/games/tile-home/TileHomeService.d.ts +2 -0
  938. package/lib/typescript/src/games/tile-home/TileHomeService.d.ts.map +1 -0
  939. package/lib/typescript/src/games/tile-home/TileHomeStore.d.ts +52 -0
  940. package/lib/typescript/src/games/tile-home/TileHomeStore.d.ts.map +1 -0
  941. package/lib/typescript/src/games/tile-home/components/AnimatingTile.d.ts +10 -0
  942. package/lib/typescript/src/games/tile-home/components/AnimatingTile.d.ts.map +1 -0
  943. package/lib/typescript/src/games/tile-home/components/FlyingTile.d.ts +17 -0
  944. package/lib/typescript/src/games/tile-home/components/FlyingTile.d.ts.map +1 -0
  945. package/lib/typescript/src/games/tile-home/components/GameBackground.d.ts +8 -0
  946. package/lib/typescript/src/games/tile-home/components/GameBackground.d.ts.map +1 -0
  947. package/lib/typescript/src/games/tile-home/components/GameBoard.d.ts +8 -0
  948. package/lib/typescript/src/games/tile-home/components/GameBoard.d.ts.map +1 -0
  949. package/lib/typescript/src/games/tile-home/components/ScoreBoard.d.ts +7 -0
  950. package/lib/typescript/src/games/tile-home/components/ScoreBoard.d.ts.map +1 -0
  951. package/lib/typescript/src/games/tile-home/components/TileItem.d.ts +12 -0
  952. package/lib/typescript/src/games/tile-home/components/TileItem.d.ts.map +1 -0
  953. package/lib/typescript/src/games/tile-home/components/TileSlot.d.ts +8 -0
  954. package/lib/typescript/src/games/tile-home/components/TileSlot.d.ts.map +1 -0
  955. package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts.map +1 -1
  956. package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts +20 -46
  957. package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts.map +1 -1
  958. package/lib/typescript/src/games/whack-a-mole/WhackAMoleStore.d.ts +2 -4
  959. package/lib/typescript/src/games/whack-a-mole/WhackAMoleStore.d.ts.map +1 -1
  960. package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts.map +1 -1
  961. package/lib/typescript/src/games/whack-a-mole/components/GameGrid.d.ts +1 -1
  962. package/lib/typescript/src/games/whack-a-mole/components/GameGrid.d.ts.map +1 -1
  963. package/lib/typescript/src/games/whack-a-mole/components/GameHole.d.ts +1 -1
  964. package/lib/typescript/src/games/whack-a-mole/components/GameHole.d.ts.map +1 -1
  965. package/lib/typescript/src/games/whack-a-mole/components/ScoreBoard.d.ts.map +1 -1
  966. package/lib/typescript/src/games/word-search/WordSearch.d.ts +4 -0
  967. package/lib/typescript/src/games/word-search/WordSearch.d.ts.map +1 -0
  968. package/lib/typescript/src/games/word-search/WordSearchConstants.d.ts +66 -0
  969. package/lib/typescript/src/games/word-search/WordSearchConstants.d.ts.map +1 -0
  970. package/lib/typescript/src/games/word-search/WordSearchService.d.ts +35 -0
  971. package/lib/typescript/src/games/word-search/WordSearchService.d.ts.map +1 -0
  972. package/lib/typescript/src/games/word-search/WordSearchStore.d.ts +66 -0
  973. package/lib/typescript/src/games/word-search/WordSearchStore.d.ts.map +1 -0
  974. package/lib/typescript/src/games/word-search/components/GameBackground.d.ts +8 -0
  975. package/lib/typescript/src/games/word-search/components/GameBackground.d.ts.map +1 -0
  976. package/lib/typescript/src/games/word-search/components/GameBoard.d.ts +8 -0
  977. package/lib/typescript/src/games/word-search/components/GameBoard.d.ts.map +1 -0
  978. package/lib/typescript/src/games/word-search/components/ScoreBoard.d.ts +7 -0
  979. package/lib/typescript/src/games/word-search/components/ScoreBoard.d.ts.map +1 -0
  980. package/lib/typescript/src/games/word-search/components/WordList.d.ts +3 -0
  981. package/lib/typescript/src/games/word-search/components/WordList.d.ts.map +1 -0
  982. package/lib/typescript/src/helpers/AnimationFrame.d.ts.map +1 -1
  983. package/lib/typescript/src/helpers/AnimationTracker.d.ts.map +1 -1
  984. package/lib/typescript/src/helpers/ErrorHandler.d.ts.map +1 -1
  985. package/lib/typescript/src/helpers/GameControlButton.d.ts.map +1 -1
  986. package/lib/typescript/src/helpers/GameOverModal.d.ts.map +1 -1
  987. package/lib/typescript/src/helpers/GameSettingsModal.d.ts.map +1 -1
  988. package/lib/typescript/src/helpers/ParticleBlast.d.ts.map +1 -1
  989. package/lib/typescript/src/helpers/ScoreBoardContainer.d.ts.map +1 -1
  990. package/lib/typescript/src/helpers/assets/apple-fruit.d.ts +5 -0
  991. package/lib/typescript/src/helpers/assets/apple-fruit.d.ts.map +1 -0
  992. package/lib/typescript/src/helpers/assets/avocado-item.d.ts +5 -0
  993. package/lib/typescript/src/helpers/assets/avocado-item.d.ts.map +1 -0
  994. package/lib/typescript/src/helpers/assets/banana-fruit.d.ts +5 -0
  995. package/lib/typescript/src/helpers/assets/banana-fruit.d.ts.map +1 -0
  996. package/lib/typescript/src/helpers/assets/bomb-item.d.ts +5 -0
  997. package/lib/typescript/src/helpers/assets/bomb-item.d.ts.map +1 -0
  998. package/lib/typescript/src/helpers/assets/broccoli-item.d.ts +5 -0
  999. package/lib/typescript/src/helpers/assets/broccoli-item.d.ts.map +1 -0
  1000. package/lib/typescript/src/helpers/assets/cherries-fruit.d.ts +5 -0
  1001. package/lib/typescript/src/helpers/assets/cherries-fruit.d.ts.map +1 -0
  1002. package/lib/typescript/src/helpers/assets/donut-item.d.ts +5 -0
  1003. package/lib/typescript/src/helpers/assets/donut-item.d.ts.map +1 -0
  1004. package/lib/typescript/src/helpers/assets/dragonfruit-item.d.ts +5 -0
  1005. package/lib/typescript/src/helpers/assets/dragonfruit-item.d.ts.map +1 -0
  1006. package/lib/typescript/src/helpers/assets/fries-item.d.ts +5 -0
  1007. package/lib/typescript/src/helpers/assets/fries-item.d.ts.map +1 -0
  1008. package/lib/typescript/src/helpers/{AbstractFruits.d.ts → assets/fruit-helpers.d.ts} +6 -59
  1009. package/lib/typescript/src/helpers/assets/fruit-helpers.d.ts.map +1 -0
  1010. package/lib/typescript/src/helpers/assets/grapes-fruit.d.ts +5 -0
  1011. package/lib/typescript/src/helpers/assets/grapes-fruit.d.ts.map +1 -0
  1012. package/lib/typescript/src/helpers/assets/icecream-item.d.ts +5 -0
  1013. package/lib/typescript/src/helpers/assets/icecream-item.d.ts.map +1 -0
  1014. package/lib/typescript/src/helpers/assets/index.d.ts +32 -0
  1015. package/lib/typescript/src/helpers/assets/index.d.ts.map +1 -0
  1016. package/lib/typescript/src/helpers/assets/kiwi-fruit.d.ts +5 -0
  1017. package/lib/typescript/src/helpers/assets/kiwi-fruit.d.ts.map +1 -0
  1018. package/lib/typescript/src/helpers/assets/mango-fruit.d.ts +5 -0
  1019. package/lib/typescript/src/helpers/assets/mango-fruit.d.ts.map +1 -0
  1020. package/lib/typescript/src/helpers/assets/orange-fruit.d.ts +5 -0
  1021. package/lib/typescript/src/helpers/assets/orange-fruit.d.ts.map +1 -0
  1022. package/lib/typescript/src/helpers/assets/papaya-fruit.d.ts +5 -0
  1023. package/lib/typescript/src/helpers/assets/papaya-fruit.d.ts.map +1 -0
  1024. package/lib/typescript/src/helpers/assets/papaya-full-fruit.d.ts +5 -0
  1025. package/lib/typescript/src/helpers/assets/papaya-full-fruit.d.ts.map +1 -0
  1026. package/lib/typescript/src/helpers/assets/peach-fruit.d.ts +5 -0
  1027. package/lib/typescript/src/helpers/assets/peach-fruit.d.ts.map +1 -0
  1028. package/lib/typescript/src/helpers/assets/pineapple-fruit.d.ts +5 -0
  1029. package/lib/typescript/src/helpers/assets/pineapple-fruit.d.ts.map +1 -0
  1030. package/lib/typescript/src/helpers/assets/pomegranate-fruit.d.ts +5 -0
  1031. package/lib/typescript/src/helpers/assets/pomegranate-fruit.d.ts.map +1 -0
  1032. package/lib/typescript/src/helpers/assets/pumpkin-fruit.d.ts +5 -0
  1033. package/lib/typescript/src/helpers/assets/pumpkin-fruit.d.ts.map +1 -0
  1034. package/lib/typescript/src/helpers/assets/raspberry-item.d.ts +5 -0
  1035. package/lib/typescript/src/helpers/assets/raspberry-item.d.ts.map +1 -0
  1036. package/lib/typescript/src/helpers/assets/star-item.d.ts +5 -0
  1037. package/lib/typescript/src/helpers/assets/star-item.d.ts.map +1 -0
  1038. package/lib/typescript/src/helpers/assets/strawberry-fruit.d.ts +5 -0
  1039. package/lib/typescript/src/helpers/assets/strawberry-fruit.d.ts.map +1 -0
  1040. package/lib/typescript/src/helpers/assets/watermelon-fruit.d.ts +5 -0
  1041. package/lib/typescript/src/helpers/assets/watermelon-fruit.d.ts.map +1 -0
  1042. package/lib/typescript/src/helpers/index.d.ts +1 -1
  1043. package/lib/typescript/src/helpers/index.d.ts.map +1 -1
  1044. package/lib/typescript/src/index.d.ts +25 -14
  1045. package/lib/typescript/src/index.d.ts.map +1 -1
  1046. package/lib/typescript/src/services/GamesConstants.d.ts +19 -264
  1047. package/lib/typescript/src/services/GamesConstants.d.ts.map +1 -1
  1048. package/lib/typescript/src/services/GamesService.d.ts.map +1 -1
  1049. package/lib/typescript/src/services/SoundsService.d.ts +74 -0
  1050. package/lib/typescript/src/services/SoundsService.d.ts.map +1 -1
  1051. package/lib/typescript/src/services/ThemeUtils.d.ts +5 -0
  1052. package/lib/typescript/src/services/ThemeUtils.d.ts.map +1 -0
  1053. package/lib/typescript/src/services/UtilsService.d.ts +21 -3
  1054. package/lib/typescript/src/services/UtilsService.d.ts.map +1 -1
  1055. package/package.json +55 -46
  1056. package/lib/module/games/balloon-blaster/components/index.js +0 -1
  1057. package/lib/module/games/balloon-blaster/components/index.js.map +0 -1
  1058. package/lib/module/games/bike-racing/components/index.js +0 -1
  1059. package/lib/module/games/bike-racing/components/index.js.map +0 -1
  1060. package/lib/module/games/bike-racing/index.js +0 -1
  1061. package/lib/module/games/bike-racing/index.js.map +0 -1
  1062. package/lib/module/games/block-blast/components/index.js +0 -1
  1063. package/lib/module/games/block-blast/components/index.js.map +0 -1
  1064. package/lib/module/games/block-blast/index.js +0 -1
  1065. package/lib/module/games/block-blast/index.js.map +0 -1
  1066. package/lib/module/games/bubble-shooter/components/index.js +0 -1
  1067. package/lib/module/games/bubble-shooter/components/index.js.map +0 -1
  1068. package/lib/module/games/bubble-shooter/index.js +0 -1
  1069. package/lib/module/games/bubble-shooter/index.js.map +0 -1
  1070. package/lib/module/games/candy-crush/components/index.js +0 -1
  1071. package/lib/module/games/candy-crush/components/index.js.map +0 -1
  1072. package/lib/module/games/candy-crush/index.js +0 -1
  1073. package/lib/module/games/candy-crush/index.js.map +0 -1
  1074. package/lib/module/games/car-racing/components/index.js +0 -1
  1075. package/lib/module/games/car-racing/components/index.js.map +0 -1
  1076. package/lib/module/games/colors-sort/components/index.js +0 -1
  1077. package/lib/module/games/colors-sort/components/index.js.map +0 -1
  1078. package/lib/module/games/dino-jump/components/index.js +0 -1
  1079. package/lib/module/games/dino-jump/components/index.js.map +0 -1
  1080. package/lib/module/games/flappy-bird/components/index.js +0 -1
  1081. package/lib/module/games/flappy-bird/components/index.js.map +0 -1
  1082. package/lib/module/games/fruit-merger/components/index.js +0 -1
  1083. package/lib/module/games/fruit-merger/components/index.js.map +0 -1
  1084. package/lib/module/games/fruit-ninja/components/index.js +0 -1
  1085. package/lib/module/games/fruit-ninja/components/index.js.map +0 -1
  1086. package/lib/module/games/game-2048/components/index.js +0 -1
  1087. package/lib/module/games/game-2048/components/index.js.map +0 -1
  1088. package/lib/module/games/maze-runner/MazeRunnerService.js +0 -1
  1089. package/lib/module/games/maze-runner/MazeRunnerService.js.map +0 -1
  1090. package/lib/module/games/maze-runner/components/index.js +0 -1
  1091. package/lib/module/games/maze-runner/components/index.js.map +0 -1
  1092. package/lib/module/games/perfect-circle/index.js +0 -1
  1093. package/lib/module/games/perfect-circle/index.js.map +0 -1
  1094. package/lib/module/games/popit-fidget/components/index.js +0 -1
  1095. package/lib/module/games/popit-fidget/components/index.js.map +0 -1
  1096. package/lib/module/games/sliding-numbers/components/index.js +0 -1
  1097. package/lib/module/games/sliding-numbers/components/index.js.map +0 -1
  1098. package/lib/module/games/snake/Snake.js +0 -1
  1099. package/lib/module/games/snake/Snake.js.map +0 -1
  1100. package/lib/module/games/snake/SnakeConstants.js +0 -1
  1101. package/lib/module/games/snake/SnakeConstants.js.map +0 -1
  1102. package/lib/module/games/snake/SnakeService.js +0 -1
  1103. package/lib/module/games/snake/SnakeService.js.map +0 -1
  1104. package/lib/module/games/snake/SnakeStore.js +0 -1
  1105. package/lib/module/games/snake/SnakeStore.js.map +0 -1
  1106. package/lib/module/games/snake/components/GameBackground.js +0 -1
  1107. package/lib/module/games/snake/components/GameBackground.js.map +0 -1
  1108. package/lib/module/games/snake/components/GameGrid.js +0 -1
  1109. package/lib/module/games/snake/components/GameGrid.js.map +0 -1
  1110. package/lib/module/games/snake/components/ScoreBoard.js +0 -1
  1111. package/lib/module/games/snake/components/ScoreBoard.js.map +0 -1
  1112. package/lib/module/games/snake/components/index.js +0 -1
  1113. package/lib/module/games/snake/components/index.js.map +0 -1
  1114. package/lib/module/games/snake/index.js +0 -1
  1115. package/lib/module/games/snake/index.js.map +0 -1
  1116. package/lib/module/games/space-fighter/components/index.js +0 -1
  1117. package/lib/module/games/space-fighter/components/index.js.map +0 -1
  1118. package/lib/module/games/whack-a-mole/components/index.js +0 -1
  1119. package/lib/module/games/whack-a-mole/components/index.js.map +0 -1
  1120. package/lib/module/helpers/AbstractFruits.js +0 -1
  1121. package/lib/module/helpers/AbstractFruits.js.map +0 -1
  1122. package/lib/typescript/src/games/balloon-blaster/components/index.d.ts +0 -5
  1123. package/lib/typescript/src/games/balloon-blaster/components/index.d.ts.map +0 -1
  1124. package/lib/typescript/src/games/bike-racing/components/index.d.ts +0 -4
  1125. package/lib/typescript/src/games/bike-racing/components/index.d.ts.map +0 -1
  1126. package/lib/typescript/src/games/bike-racing/index.d.ts +0 -5
  1127. package/lib/typescript/src/games/bike-racing/index.d.ts.map +0 -1
  1128. package/lib/typescript/src/games/block-blast/components/index.d.ts +0 -6
  1129. package/lib/typescript/src/games/block-blast/components/index.d.ts.map +0 -1
  1130. package/lib/typescript/src/games/block-blast/index.d.ts +0 -5
  1131. package/lib/typescript/src/games/block-blast/index.d.ts.map +0 -1
  1132. package/lib/typescript/src/games/bubble-shooter/components/index.d.ts +0 -4
  1133. package/lib/typescript/src/games/bubble-shooter/components/index.d.ts.map +0 -1
  1134. package/lib/typescript/src/games/bubble-shooter/index.d.ts +0 -3
  1135. package/lib/typescript/src/games/bubble-shooter/index.d.ts.map +0 -1
  1136. package/lib/typescript/src/games/candy-crush/components/index.d.ts +0 -6
  1137. package/lib/typescript/src/games/candy-crush/components/index.d.ts.map +0 -1
  1138. package/lib/typescript/src/games/candy-crush/index.d.ts +0 -4
  1139. package/lib/typescript/src/games/candy-crush/index.d.ts.map +0 -1
  1140. package/lib/typescript/src/games/car-racing/components/index.d.ts +0 -4
  1141. package/lib/typescript/src/games/car-racing/components/index.d.ts.map +0 -1
  1142. package/lib/typescript/src/games/colors-sort/components/index.d.ts +0 -4
  1143. package/lib/typescript/src/games/colors-sort/components/index.d.ts.map +0 -1
  1144. package/lib/typescript/src/games/dino-jump/components/index.d.ts +0 -7
  1145. package/lib/typescript/src/games/dino-jump/components/index.d.ts.map +0 -1
  1146. package/lib/typescript/src/games/flappy-bird/components/index.d.ts +0 -6
  1147. package/lib/typescript/src/games/flappy-bird/components/index.d.ts.map +0 -1
  1148. package/lib/typescript/src/games/fruit-merger/components/index.d.ts +0 -5
  1149. package/lib/typescript/src/games/fruit-merger/components/index.d.ts.map +0 -1
  1150. package/lib/typescript/src/games/fruit-ninja/components/index.d.ts +0 -5
  1151. package/lib/typescript/src/games/fruit-ninja/components/index.d.ts.map +0 -1
  1152. package/lib/typescript/src/games/game-2048/components/index.d.ts +0 -5
  1153. package/lib/typescript/src/games/game-2048/components/index.d.ts.map +0 -1
  1154. package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts +0 -85
  1155. package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts.map +0 -1
  1156. package/lib/typescript/src/games/maze-runner/components/index.d.ts +0 -6
  1157. package/lib/typescript/src/games/maze-runner/components/index.d.ts.map +0 -1
  1158. package/lib/typescript/src/games/perfect-circle/index.d.ts +0 -3
  1159. package/lib/typescript/src/games/perfect-circle/index.d.ts.map +0 -1
  1160. package/lib/typescript/src/games/popit-fidget/components/index.d.ts +0 -5
  1161. package/lib/typescript/src/games/popit-fidget/components/index.d.ts.map +0 -1
  1162. package/lib/typescript/src/games/sliding-numbers/components/index.d.ts +0 -5
  1163. package/lib/typescript/src/games/sliding-numbers/components/index.d.ts.map +0 -1
  1164. package/lib/typescript/src/games/snake/Snake.d.ts.map +0 -1
  1165. package/lib/typescript/src/games/snake/SnakeConstants.d.ts.map +0 -1
  1166. package/lib/typescript/src/games/snake/SnakeService.d.ts.map +0 -1
  1167. package/lib/typescript/src/games/snake/SnakeStore.d.ts.map +0 -1
  1168. package/lib/typescript/src/games/snake/components/GameBackground.d.ts.map +0 -1
  1169. package/lib/typescript/src/games/snake/components/GameGrid.d.ts.map +0 -1
  1170. package/lib/typescript/src/games/snake/components/ScoreBoard.d.ts.map +0 -1
  1171. package/lib/typescript/src/games/snake/components/index.d.ts +0 -4
  1172. package/lib/typescript/src/games/snake/components/index.d.ts.map +0 -1
  1173. package/lib/typescript/src/games/snake/index.d.ts +0 -4
  1174. package/lib/typescript/src/games/snake/index.d.ts.map +0 -1
  1175. package/lib/typescript/src/games/space-fighter/components/index.d.ts +0 -7
  1176. package/lib/typescript/src/games/space-fighter/components/index.d.ts.map +0 -1
  1177. package/lib/typescript/src/games/whack-a-mole/components/index.d.ts +0 -6
  1178. package/lib/typescript/src/games/whack-a-mole/components/index.d.ts.map +0 -1
  1179. package/lib/typescript/src/helpers/AbstractFruits.d.ts.map +0 -1
  1180. /package/lib/typescript/src/games/{snake → connect-em-all}/components/ScoreBoard.d.ts +0 -0
  1181. /package/lib/typescript/src/games/{snake → snake-3d}/components/GameBackground.d.ts +0 -0
  1182. /package/lib/typescript/src/games/{snake → snake-3d}/components/GameGrid.d.ts +0 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # 🎮 react-native-games
2
2
 
3
- **react-native-games** is a collection of high-performance games for your React Native projects. Built with modern React Native technologies including Skia, Reanimated, Gesture Handler and TypeScript for smooth 60fps gameplay across iOS, Android, and Web platforms.
3
+ **react-native-games** is a collection of 30 high-performance games for your React Native projects. Built with modern React Native technologies including Skia, Reanimated, Gesture Handler and TypeScript for smooth 60fps gameplay across iOS and Android platforms.
4
4
 
5
5
  <div style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 20px 0;">
6
6
 
@@ -60,27 +60,38 @@
60
60
 
61
61
  ## 🎯 Available Games
62
62
 
63
- | Screenshot | Game Details |
64
- |------------|--------------|
65
- | <img src="https://cdn.worklage.com/playtura/screenshots/block-blast.png" alt="Block Blast" width="120"/> | **🧩 Block Blast**<br/>Place blocks on grid to clear lines - strategic puzzle challenge!<br/><br/>• Tetris-style block placement puzzle<br/>• Clear lines horizontally or vertically<br/>• Strategic planning required for high scores<br/>• Difficulty affects available block shapes |
66
- | <img src="https://cdn.worklage.com/playtura/screenshots/bubble-shooter.png" alt="Bubble Shooter" width="120"/> | **🎯 Bubble Shooter**<br/>Match 3+ bubbles of the same color - classic puzzle fun!<br/><br/>• Aim and shoot bubbles to match colors<br/>• Clear clusters of 3 or more bubbles<br/>• Physics-based bubble bouncing<br/>• Difficulty affects bubble speed and patterns |
67
- | <img src="https://cdn.worklage.com/playtura/screenshots/car-racing.png" alt="Car Racing" width="120"/> | **🏎️ Car Racing**<br/>Dodge traffic and race through lanes - test your reflexes!<br/><br/>• Lane-based racing with traffic dodging<br/>• Swipe to change lanes quickly<br/>• Collect coins and power-ups<br/>• Difficulty affects traffic density and speed |
68
- | <img src="https://cdn.worklage.com/playtura/screenshots/fruit-ninja.png" alt="Fruit Ninja" width="120"/> | **🍎 Fruit Ninja**<br/>Slice flying fruits with finger swipes - avoid the bombs!<br/><br/>• Swipe-based fruit slicing mechanics<br/>• Physics-based particle effects and combos<br/>• Avoid bombs for survival<br/>• Difficulty affects fruit spawn rate and bomb frequency |
69
- | <img src="https://cdn.worklage.com/playtura/screenshots/popit-fidget.png" alt="Popit Fidget" width="120"/> | **🫧 Popit Fidget**<br/>Pop satisfying bubbles in this relaxing fidget toy simulation!<br/><br/>• Relaxing bubble popping experience<br/>• Satisfying sound effects and haptics<br/>• Rainbow gradient background<br/>• Different bubble patterns and colors |
70
- | <img src="https://cdn.worklage.com/playtura/screenshots/flappy-bird.png" alt="Flappy Bird" width="120"/> | **🐦 Flappy Bird**<br/>Tap to flap and navigate through pipes - classic arcade challenge!<br/><br/>• Classic tap-to-flap mechanics<br/>• Gravity physics and collision detection<br/>• Navigate through pipe gaps<br/>• Difficulty affects pipe gap size and speed |
71
- | <img src="https://cdn.worklage.com/playtura/screenshots/colors-sort.png" alt="Colors Sort" width="120"/> | **🎨 Colors Sort**<br/>Sort colored liquids into matching tubes - challenging logic puzzle!<br/><br/>• Pour liquids between tubes<br/>• Match all colors in separate tubes<br/>• Satisfying pour animations<br/>• Difficulty affects number of tubes and colors |
72
- | <img src="https://cdn.worklage.com/playtura/screenshots/dino-jump.png" alt="Dino Jump" width="120"/> | **🦖 Dino Jump**<br/>Jump over obstacles and collect stars for lives - endless runner!<br/><br/>• Chrome dino-inspired endless runner<br/>• Tap to jump over obstacles<br/>• Collect stars for extra lives (max 3)<br/>• Difficulty affects obstacle spawn rate and speed |
73
- | <img src="https://cdn.worklage.com/playtura/screenshots/candy-crush.png" alt="Candy Crush" width="120"/> | **🍬 Candy Crush**<br/>Match colorful candies in rows to score points - sweet puzzle fun!<br/><br/>• Match-3 puzzle mechanics<br/>• Create special candies with 4+ matches<br/>• Cascading combos and animations<br/>• Difficulty affects level objectives |
74
- | <img src="https://cdn.worklage.com/playtura/screenshots/whack-a-mole.png" alt="Whack A Mole" width="120"/> | **🐱 Whack A Mole**<br/>Whack cute cats popping from holes - test your lightning reflexes!<br/><br/>• Fast-paced whacking action<br/>• Grid sizes: easy/medium 3x3, hard 4x4<br/>• Cat spawn intervals vary by difficulty<br/>• Difficulty affects speed and grid size |
75
- | <img src="https://cdn.worklage.com/playtura/screenshots/balloon-blaster.png" alt="Balloon Blaster" width="120"/> | **🎈 Balloon Blaster**<br/>Pop rising balloons before they escape - quick taps and swipes win!<br/><br/>• Swipe or tap to pop balloons<br/>• Balloons rise from bottom to top<br/>• Particle effects on pop<br/>• Difficulty affects balloon speed and spawn rate |
76
- | <img src="https://cdn.worklage.com/playtura/screenshots/space-fighter.png" alt="Space Fighter" width="120"/> | **🚀 Space Fighter**<br/>Pilot your spaceship through asteroid fields - endless space survival!<br/><br/>• Drag controls for spacecraft movement<br/>• Dodge asteroids in endless space<br/>• 1-second collision immunity<br/>• Difficulty affects asteroid speed and frequency |
77
- | <img src="https://cdn.worklage.com/playtura/screenshots/bike-racing.png" alt="Bike Racing" width="120"/> | **🏍️ Bike Racing**<br/>Race on bikes through traffic - faster and more challenging!<br/><br/>• High-speed bike racing<br/>• Lane-based traffic dodging<br/>• Faster than car racing<br/>• Difficulty affects traffic and speed |
78
- | <img src="https://cdn.worklage.com/playtura/screenshots/maze-runner.png" alt="Maze Runner" width="120"/> | **🧩 Maze Runner**<br/>Navigate ball through procedural mazes - tilt and physics controls!<br/><br/>• Procedurally generated mazes<br/>• Tilt-based physics controls<br/>• Grid sizes: easy 8x8, medium 10x10, hard 12x12<br/>• Difficulty affects maze complexity |
79
- | <img src="https://cdn.worklage.com/playtura/screenshots/sliding-numbers.png" alt="Sliding Numbers" width="120"/> | **🔢 Sliding Numbers**<br/>Slide numbered tiles to solve puzzles - classic sliding puzzle game!<br/><br/>• Classic 15-puzzle mechanics<br/>• Grid sizes: easy 3x3, medium 4x4, hard 5x5<br/>• Timer challenge mode<br/>• Smooth tile sliding animations |
80
- | <img src="https://cdn.worklage.com/playtura/screenshots/game-2048.png" alt="2048" width="120"/> | **🎮 2048**<br/>Merge matching tiles to reach 2048 and beyond - addictive puzzle!<br/><br/>• Swipe to merge matching tiles<br/>• Reach 2048 tile to win<br/>• Continue for higher scores<br/>• Difficulty affects starting values |
81
- | <img src="https://cdn.worklage.com/playtura/screenshots/fruit-merger.png" alt="Fruit Merger" width="120"/> | **🍉 Fruit Merger**<br/>Drop and merge fruits to create bigger ones - reach the watermelon!<br/><br/>• Physics-based fruit dropping<br/>• Merge fruits to evolve them<br/>• Reach watermelon for victory<br/>• Combo system for multiple merges |
82
- | <img src="https://cdn.worklage.com/playtura/screenshots/snake.png" alt="Snake & Eggs" width="120"/> | **🐍 Snake & Eggs**<br/>Eat eggs to grow longer and avoid walls - classic snake gameplay!<br/><br/>• Classic snake mechanics<br/>• Swipe or tap to change direction<br/>• Grow by eating eggs<br/>• Difficulty affects snake speed |
83
- | <img src="https://cdn.worklage.com/playtura/screenshots/perfect-circle.png" alt="Perfect Circle" width="120"/> | **⭕ Perfect Circle**<br/>Draw the most perfect circle you can - test your precision!<br/><br/>• Draw circles with your finger<br/>• Precision scoring system<br/>• Challenge your drawing skills<br/>• Difficulty affects scoring strictness |
63
+ | Screenshot | Game Details |
64
+ | ---------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
65
+ | <img src="https://cdn.worklage.com/playtura/screenshots/block-blast.png" alt="Block Blast" width="120"/> | **🧩 Block Blast**<br/>Place blocks on grid to clear lines - strategic puzzle challenge!<br/><br/>• Tetris-style block placement puzzle<br/>• Clear lines horizontally or vertically<br/>• Strategic planning required for high scores<br/>• Difficulty affects available block shapes |
66
+ | <img src="https://cdn.worklage.com/playtura/screenshots/bubble-shooter.png" alt="Bubble Shooter" width="120"/> | **🎯 Bubble Shooter**<br/>Match 3+ bubbles of the same color - classic puzzle fun!<br/><br/>• Aim and shoot bubbles to match colors<br/>• Clear clusters of 3 or more bubbles<br/>• Physics-based bubble bouncing<br/>• Difficulty affects bubble speed and patterns |
67
+ | <img src="https://cdn.worklage.com/playtura/screenshots/car-racing.png" alt="Car Racing" width="120"/> | **🏎️ Car Racing**<br/>Dodge traffic and race through lanes - test your reflexes!<br/><br/>• Lane-based racing with traffic dodging<br/>• Swipe to change lanes quickly<br/>• Collect coins and power-ups<br/>• Difficulty affects traffic density and speed |
68
+ | <img src="https://cdn.worklage.com/playtura/screenshots/fruit-ninja.png" alt="Fruit Ninja" width="120"/> | **🍎 Fruit Ninja**<br/>Slice flying fruits with finger swipes - avoid the bombs!<br/><br/>• Swipe-based fruit slicing mechanics<br/>• Physics-based particle effects and combos<br/>• Avoid bombs for survival<br/>• Difficulty affects fruit spawn rate and bomb frequency |
69
+ | <img src="https://cdn.worklage.com/playtura/screenshots/popit-fidget.png" alt="Popit Fidget" width="120"/> | **🫧 Popit Fidget**<br/>Pop satisfying bubbles in this relaxing fidget toy simulation!<br/><br/>• Relaxing bubble popping experience<br/>• Satisfying sound effects and haptics<br/>• Rainbow gradient background<br/>• Different bubble patterns and colors |
70
+ | <img src="https://cdn.worklage.com/playtura/screenshots/flappy-bird.png" alt="Flappy Bird" width="120"/> | **🐦 Flappy Bird**<br/>Tap to flap and navigate through pipes - classic arcade challenge!<br/><br/>• Classic tap-to-flap mechanics<br/>• Gravity physics and collision detection<br/>• Navigate through pipe gaps<br/>• Difficulty affects pipe gap size and speed |
71
+ | <img src="https://cdn.worklage.com/playtura/screenshots/colors-sort.png" alt="Colors Sort" width="120"/> | **🎨 Colors Sort**<br/>Sort colored liquids into matching tubes - challenging logic puzzle!<br/><br/>• Pour liquids between tubes<br/>• Match all colors in separate tubes<br/>• Satisfying pour animations<br/>• Difficulty affects number of tubes and colors |
72
+ | <img src="https://cdn.worklage.com/playtura/screenshots/dino-jump.png" alt="Dino Jump" width="120"/> | **🦖 Dino Jump**<br/>Jump over obstacles and collect stars for lives - endless runner!<br/><br/>• Chrome dino-inspired endless runner<br/>• Tap to jump over obstacles<br/>• Collect stars for extra lives (max 3)<br/>• Difficulty affects obstacle spawn rate and speed |
73
+ | <img src="https://cdn.worklage.com/playtura/screenshots/candy-crush.png" alt="Candy Crush" width="120"/> | **🍬 Candy Crush**<br/>Match colorful candies in rows to score points - sweet puzzle fun!<br/><br/>• Match-3 puzzle mechanics<br/>• Create special candies with 4+ matches<br/>• Cascading combos and animations<br/>• Difficulty affects level objectives |
74
+ | <img src="https://cdn.worklage.com/playtura/screenshots/whack-a-mole.png" alt="Whack A Mole" width="120"/> | **🐱 Whack A Mole**<br/>Whack cute cats popping from holes - test your lightning reflexes!<br/><br/>• Fast-paced whacking action<br/>• Grid sizes: easy/medium 3x3, hard 4x4<br/>• Cat spawn intervals vary by difficulty<br/>• Difficulty affects speed and grid size |
75
+ | <img src="https://cdn.worklage.com/playtura/screenshots/balloon-blaster.png" alt="Balloon Blaster" width="120"/> | **🎈 Balloon Blaster**<br/>Pop rising balloons before they escape - quick taps and swipes win!<br/><br/>• Swipe or tap to pop balloons<br/>• Balloons rise from bottom to top<br/>• Particle effects on pop<br/>• Difficulty affects balloon speed and spawn rate |
76
+ | <img src="https://cdn.worklage.com/playtura/screenshots/space-fighter.png" alt="Space Fighter" width="120"/> | **🚀 Space Fighter**<br/>Pilot your spaceship through asteroid fields - endless space survival!<br/><br/>• Drag controls for spacecraft movement<br/>• Dodge asteroids in endless space<br/>• 1-second collision immunity<br/>• Difficulty affects asteroid speed and frequency |
77
+ | <img src="https://cdn.worklage.com/playtura/screenshots/bike-racing.png" alt="Bike Racing" width="120"/> | **🏍️ Bike Racing**<br/>Race on bikes through traffic - faster and more challenging!<br/><br/>• High-speed bike racing<br/>• Lane-based traffic dodging<br/>• Faster than car racing<br/>• Difficulty affects traffic and speed |
78
+ | <img src="https://cdn.worklage.com/playtura/screenshots/maze-runner.png" alt="Maze Runner" width="120"/> | **🧩 Maze Runner**<br/>Navigate ball through procedural mazes - tilt and physics controls!<br/><br/>• Procedurally generated mazes<br/>• Tilt-based physics controls<br/>• Grid sizes: easy 8x8, medium 10x10, hard 12x12<br/>• Difficulty affects maze complexity |
79
+ | <img src="https://cdn.worklage.com/playtura/screenshots/sliding-numbers.png" alt="Sliding Numbers" width="120"/> | **🔢 Sliding Numbers**<br/>Slide numbered tiles to solve puzzles - classic sliding puzzle game!<br/><br/>• Classic 15-puzzle mechanics<br/>• Grid sizes: easy 3x3, medium 4x4, hard 5x5<br/>• Timer challenge mode<br/>• Smooth tile sliding animations |
80
+ | <img src="https://cdn.worklage.com/playtura/screenshots/game-2048.png" alt="2048" width="120"/> | **🎮 2048**<br/>Merge matching tiles to reach 2048 and beyond - addictive puzzle!<br/><br/>• Swipe to merge matching tiles<br/>• Reach 2048 tile to win<br/>• Continue for higher scores<br/>• Difficulty affects starting values |
81
+ | <img src="https://cdn.worklage.com/playtura/screenshots/fruit-merger.png" alt="Fruit Merger" width="120"/> | **🍉 Fruit Merger**<br/>Drop and merge fruits to create bigger ones - reach the watermelon!<br/><br/>• Physics-based fruit dropping<br/>• Merge fruits to evolve them<br/>• Reach watermelon for victory<br/>• Combo system for multiple merges |
82
+ | <img src="https://cdn.worklage.com/playtura/screenshots/snake.png" alt="Snake & Eggs" width="120"/> | **🐍 Snake & Eggs**<br/>Eat eggs to grow longer and avoid walls - classic snake gameplay!<br/><br/>• Classic snake mechanics<br/>• Swipe or tap to change direction<br/>• Grow by eating eggs<br/>• Difficulty affects snake speed |
83
+ | <img src="https://cdn.worklage.com/playtura/screenshots/perfect-circle.png" alt="Perfect Circle" width="120"/> | **⭕ Perfect Circle**<br/>Draw the most perfect circle you can - test your precision!<br/><br/>• Draw circles with your finger<br/>• Precision scoring system<br/>• Challenge your drawing skills<br/>• Difficulty affects scoring strictness |
84
+ | <img src="https://cdn.worklage.com/playtura/screenshots/tank-1990.png" alt="Tank 1990" width="120"/> | **🪖 Tank 1990**<br/>Classic tank battle - destroy enemies and defend your base!<br/><br/>• Retro-style tank combat<br/>• Destructible terrain and barriers<br/>• Defend your base from enemy waves<br/>• Difficulty affects enemy count and speed |
85
+ | <img src="https://cdn.worklage.com/playtura/screenshots/ludo-king.png" alt="Ludo King" width="120"/> | **🎲 Ludo King**<br/>Classic board game - roll dice and race your tokens home!<br/><br/>• Classic Ludo board game<br/>• Play against AI opponents<br/>• Roll dice and move tokens strategically<br/>• Difficulty affects AI intelligence |
86
+ | <img src="https://cdn.worklage.com/playtura/screenshots/dots-and-boxes.png" alt="Dots and Boxes" width="120"/> | **🔲 Dots and Boxes**<br/>Connect dots to complete boxes - classic strategy game vs AI!<br/><br/>• Classic pen-and-paper strategy game<br/>• Play against smart AI opponent<br/>• Complete boxes by connecting dots<br/>• Difficulty affects AI strategy |
87
+ | <img src="https://cdn.worklage.com/playtura/screenshots/number-search.png" alt="Number Search" width="120"/> | **🔢 Number Search**<br/>Find hidden numbers in the grid - swipe to select digits!<br/><br/>• Number-based word search variant<br/>• Swipe to find hidden number sequences<br/>• Timed challenge mode<br/>• Difficulty affects grid size and number count |
88
+ | <img src="https://cdn.worklage.com/playtura/screenshots/nuts-and-bolts.png" alt="Nuts and Bolts" width="120"/> | **🔩 Nuts and Bolts**<br/>Unscrew bolts and remove planks to solve puzzles!<br/><br/>• Physics-based bolt unscrewing puzzles<br/>• Remove planks in the correct order<br/>• Satisfying unscrewing mechanics<br/>• Difficulty affects puzzle complexity |
89
+ | <img src="https://cdn.worklage.com/playtura/screenshots/connect-em-all.png" alt="Connect Em All" width="120"/> | **🔗 Connect Em All**<br/>Connect matching colored dots to score points!<br/><br/>• Connect dots of the same color<br/>• Draw paths without crossing lines<br/>• Fill the entire board for bonus points<br/>• Difficulty affects grid size and color count |
90
+ | <img src="https://cdn.worklage.com/playtura/screenshots/word-search.png" alt="Word Search" width="120"/> | **📝 Word Search**<br/>Find hidden words in the grid - swipe to select letters!<br/><br/>• Classic word search puzzle<br/>• Swipe to find hidden words<br/>• Multiple word categories<br/>• Difficulty affects grid size and word count |
91
+ | <img src="https://cdn.worklage.com/playtura/screenshots/tile-home.png" alt="Tile Home" width="120"/> | **🀄 Tile Home**<br/>Match 3 tiles of the same type - classic mahjong-style puzzle!<br/><br/>• Mahjong-style tile matching<br/>• Match 3 identical tiles to clear them<br/>• Strategic tile selection<br/>• Difficulty affects tile variety and layout |
92
+ | <img src="https://cdn.worklage.com/playtura/screenshots/pac-man.png" alt="Pac-Man" width="120"/> | **👾 Pac-Man**<br/>Classic arcade game - eat dots, avoid ghosts, and clear the maze!<br/><br/>• Classic Pac-Man maze gameplay<br/>• Eat dots and avoid ghost enemies<br/>• Power pellets to chase ghosts<br/>• Difficulty affects ghost speed and AI |
93
+ | <img src="https://cdn.worklage.com/playtura/screenshots/spider-solitaire.png" alt="Spider Solitaire" width="120"/> | **🕷️ Spider Solitaire**<br/>Classic Spider Solitaire - build sequences and clear the tableau!<br/><br/>• Classic Spider Solitaire card game<br/>• Build descending card sequences<br/>• Multiple suit difficulty levels<br/>• Undo and hint system |
94
+ | <img src="https://cdn.worklage.com/playtura/screenshots/tic-tac-toe.png" alt="Tic Tac Toe" width="120"/> | **❌ Tic Tac Toe**<br/>Classic X and O game - play against a smart robot!<br/><br/>• Classic tic-tac-toe gameplay<br/>• Play against AI with varying intelligence<br/>• Clean grid-based interface<br/>• Difficulty affects AI strategy |
84
95
 
85
96
  ## 📦 Installation
86
97
 
@@ -154,7 +165,7 @@ export default function FruitNinjaScreen() {
154
165
  };
155
166
 
156
167
  const handleToggleSettingsModal = () => {
157
- setSettings({...settings, isVisible: !settings.isVisible});
168
+ setSettings({ ...settings, isVisible: !settings.isVisible });
158
169
  };
159
170
 
160
171
  useLayoutEffect(() => {
@@ -163,7 +174,7 @@ export default function FruitNinjaScreen() {
163
174
  <TouchableOpacity className="p-2" onPress={handleToggleSettingsModal}>
164
175
  <Ionicons name="settings-outline" size={24} color={colors.text} />
165
176
  </TouchableOpacity>
166
- ),
177
+ )
167
178
  });
168
179
  }, [navigation, handleToggleSettingsModal]);
169
180
 
@@ -199,15 +210,23 @@ import {
199
210
  SlidingNumbers,
200
211
  Game2048,
201
212
  FruitMerger,
202
- Snake,
203
- PerfectCircle
213
+ Snake3D,
214
+ PerfectCircle,
215
+ Tank1990,
216
+ LudoKing,
217
+ DotsAndBoxes,
218
+ NumberSearch,
219
+ NutsAndBolts,
220
+ ConnectEmAll,
221
+ WordSearch,
222
+ TileHome,
223
+ PacMan,
224
+ SpiderSolitaire,
225
+ TicTacToe
204
226
  } from 'react-native-games';
205
227
 
206
228
  // All games accept the same props:
207
- <GameComponent
208
- settings={settings}
209
- onSettingsChange={handleSettingsChange}
210
- />
229
+ <GameComponent settings={settings} onSettingsChange={handleSettingsChange} />;
211
230
  ```
212
231
 
213
232
  ### Game Settings & Configuration
@@ -216,10 +235,10 @@ All games use the unified `GameSettings` interface:
216
235
 
217
236
  ```tsx
218
237
  interface GameSettings {
219
- isVisible: boolean; // Settings modal visibility
238
+ isVisible: boolean; // Settings modal visibility
220
239
  difficulty: 'easy' | 'medium' | 'hard';
221
- enableSounds: boolean; // Audio feedback
222
- enableHaptics: boolean; // Haptic feedback
240
+ enableSounds: boolean; // Audio feedback
241
+ enableHaptics: boolean; // Haptic feedback
223
242
  }
224
243
 
225
244
  // Default settings for all games
@@ -228,7 +247,7 @@ const DEFAULT_GAME_SETTINGS = {
228
247
  difficulty: 'medium',
229
248
  enableSounds: true,
230
249
  enableHaptics: true,
231
- offset: 0,
250
+ offset: 0
232
251
  };
233
252
  ```
234
253
 
@@ -264,7 +283,7 @@ import {
264
283
  type GameDefinition,
265
284
  type GameComponent,
266
285
 
267
- // All Game Components (19 total)
286
+ // All Game Components (30 total)
268
287
  BlockBlast,
269
288
  BubbleShooter,
270
289
  CarRacing,
@@ -282,8 +301,19 @@ import {
282
301
  SlidingNumbers,
283
302
  Game2048,
284
303
  FruitMerger,
285
- Snake,
286
- PerfectCircle
304
+ Snake3D,
305
+ PerfectCircle,
306
+ Tank1990,
307
+ LudoKing,
308
+ DotsAndBoxes,
309
+ NumberSearch,
310
+ NutsAndBolts,
311
+ ConnectEmAll,
312
+ WordSearch,
313
+ TileHome,
314
+ PacMan,
315
+ SpiderSolitaire,
316
+ TicTacToe
287
317
  } from 'react-native-games';
288
318
  ```
289
319
 
@@ -292,25 +322,36 @@ import {
292
322
  All available game identifiers:
293
323
 
294
324
  ```tsx
295
- GAME_IDS.BLOCK_BLAST // 'block-blast'
296
- GAME_IDS.BUBBLE_SHOOTER // 'bubble-shooter'
297
- GAME_IDS.CAR_RACING // 'car-racing'
298
- GAME_IDS.FRUIT_NINJA // 'fruit-ninja'
299
- GAME_IDS.POPIT_FIDGET // 'popit-fidget'
300
- GAME_IDS.FLAPPY_BIRD // 'flappy-bird'
301
- GAME_IDS.COLORS_SORT // 'colors-sort'
302
- GAME_IDS.DINO_JUMP // 'dino-jump'
303
- GAME_IDS.CANDY_CRUSH // 'candy-crush'
304
- GAME_IDS.WHACK_A_MOLE // 'whack-a-mole'
305
- GAME_IDS.BALLOON_BLASTER // 'balloon-blaster'
306
- GAME_IDS.SPACE_FIGHTER // 'space-fighter'
307
- GAME_IDS.BIKE_RACING // 'bike-racing'
308
- GAME_IDS.MAZE_RUNNER // 'maze-runner'
309
- GAME_IDS.SLIDING_NUMBERS // 'sliding-numbers'
310
- GAME_IDS.GAME_2048 // 'game-2048'
311
- GAME_IDS.FRUIT_MERGER // 'fruit-merger'
312
- GAME_IDS.SNAKE // 'snake'
313
- GAME_IDS.PERFECT_CIRCLE // 'perfect-circle'
325
+ GAME_IDS.BLOCK_BLAST; // 'block-blast'
326
+ GAME_IDS.BUBBLE_SHOOTER; // 'bubble-shooter'
327
+ GAME_IDS.CAR_RACING; // 'car-racing'
328
+ GAME_IDS.FRUIT_NINJA; // 'fruit-ninja'
329
+ GAME_IDS.POPIT_FIDGET; // 'popit-fidget'
330
+ GAME_IDS.FLAPPY_BIRD; // 'flappy-bird'
331
+ GAME_IDS.COLORS_SORT; // 'colors-sort'
332
+ GAME_IDS.DINO_JUMP; // 'dino-jump'
333
+ GAME_IDS.CANDY_CRUSH; // 'candy-crush'
334
+ GAME_IDS.WHACK_A_MOLE; // 'whack-a-mole'
335
+ GAME_IDS.BALLOON_BLASTER; // 'balloon-blaster'
336
+ GAME_IDS.SPACE_FIGHTER; // 'space-fighter'
337
+ GAME_IDS.BIKE_RACING; // 'bike-racing'
338
+ GAME_IDS.MAZE_RUNNER; // 'maze-runner'
339
+ GAME_IDS.SLIDING_NUMBERS; // 'sliding-numbers'
340
+ GAME_IDS.GAME_2048; // 'game-2048'
341
+ GAME_IDS.FRUIT_MERGER; // 'fruit-merger'
342
+ GAME_IDS.SNAKE_3D; // 'snake-3d'
343
+ GAME_IDS.PERFECT_CIRCLE; // 'perfect-circle'
344
+ GAME_IDS.SPIDER_SOLITAIRE; // 'spider-solitaire'
345
+ GAME_IDS.TIC_TAC_TOE; // 'tic-tac-toe'
346
+ GAME_IDS.PAC_MAN; // 'pac-man'
347
+ GAME_IDS.TILE_HOME; // 'tile-home'
348
+ GAME_IDS.WORD_SEARCH; // 'word-search'
349
+ GAME_IDS.CONNECT_EM_ALL; // 'connect-em-all'
350
+ GAME_IDS.NUTS_AND_BOLTS; // 'nuts-and-bolts'
351
+ GAME_IDS.NUMBER_SEARCH; // 'number-search'
352
+ GAME_IDS.DOTS_AND_BOXES; // 'dots-and-boxes'
353
+ GAME_IDS.LUDO_KING; // 'ludo-king'
354
+ GAME_IDS.TANK_1990; // 'tank-1990'
314
355
  ```
315
356
 
316
357
  ### DEFAULT_GAME_SETTINGS
@@ -319,17 +360,17 @@ Default configuration for all games:
319
360
 
320
361
  ```tsx
321
362
  const DEFAULT_GAME_SETTINGS = {
322
- isVisible: false, // Settings modal visibility
323
- difficulty: 'medium', // Game difficulty level
324
- enableSounds: true, // Audio feedback enabled
325
- enableHaptics: true, // Haptic feedback enabled
326
- offset: 0, // Top offset for notch/status bar
363
+ isVisible: false, // Settings modal visibility
364
+ difficulty: 'medium', // Game difficulty level
365
+ enableSounds: true, // Audio feedback enabled
366
+ enableHaptics: true, // Haptic feedback enabled
367
+ offset: 0 // Top offset for notch/status bar
327
368
  };
328
369
 
329
370
  // Example: Custom settings with offset
330
371
  const customSettings = {
331
372
  ...DEFAULT_GAME_SETTINGS,
332
- offset: 50, // Moves game elements 50px down from top
373
+ offset: 50 // Moves game elements 50px down from top
333
374
  };
334
375
  ```
335
376
 
@@ -340,10 +381,10 @@ Array of all game definitions with metadata:
340
381
  ```tsx
341
382
  // GAMES_LIST is an array of GameDefinition objects
342
383
  GAMES_LIST.forEach(game => {
343
- console.log(game.id); // GAME_IDS enum value
344
- console.log(game.title); // Display title
384
+ console.log(game.id); // GAME_IDS enum value
385
+ console.log(game.title); // Display title
345
386
  console.log(game.description); // Game description
346
- console.log(game.component); // React component
387
+ console.log(game.component); // React component
347
388
  });
348
389
 
349
390
  // Example: Find a specific game
@@ -359,7 +400,7 @@ Object mapping game IDs to their components:
359
400
  const GameComponent = GAMES_MAPPING[GAME_IDS.FRUIT_NINJA];
360
401
 
361
402
  // Render dynamically
362
- <GameComponent settings={settings} onSettingsChange={handleChange} />
403
+ <GameComponent settings={settings} onSettingsChange={handleChange} />;
363
404
  ```
364
405
 
365
406
  ### TypeScript Types
@@ -367,17 +408,27 @@ const GameComponent = GAMES_MAPPING[GAME_IDS.FRUIT_NINJA];
367
408
  ```tsx
368
409
  // Game settings interface
369
410
  interface GameSettings {
370
- isVisible: boolean; // Settings modal visibility
411
+ isVisible: boolean; // Settings modal visibility
371
412
  difficulty: 'easy' | 'medium' | 'hard';
372
- enableSounds: boolean; // Audio feedback
373
- enableHaptics: boolean; // Haptic feedback
374
- offset?: number; // Optional padding from top (default: 0)
413
+ enableSounds: boolean; // Audio feedback
414
+ enableHaptics: boolean; // Haptic feedback
415
+ offset?: number; // Optional padding from top (default: 0)
416
+ }
417
+
418
+ // Game completion metrics
419
+ interface GameCompletionMetrics {
420
+ status: 'win' | 'lose' | 'cancel';
421
+ score?: string;
375
422
  }
376
423
 
377
424
  // Game component props
378
425
  interface GameProps {
379
426
  settings?: GameSettings;
380
427
  onSettingsChange?: (settings: GameSettings) => void;
428
+ onEndGame?: (metrics: GameCompletionMetrics) => void;
429
+ onReplayGame?: () => void;
430
+ onShare?: () => void;
431
+ onShowLeaderboard?: () => void;
381
432
  }
382
433
  ```
383
434
 
@@ -386,19 +437,23 @@ interface GameProps {
386
437
  This library is available under a **dual licensing model**:
387
438
 
388
439
  ### 🆓 **Non-Commercial License (Free)**
440
+
389
441
  - ✅ **Personal projects** and learning
390
442
  - ✅ **Educational use** and research
391
443
  - ✅ **Open source projects** (non-commercial)
392
444
  - ✅ **Portfolio** and demonstration apps
393
445
 
394
446
  ### 💼 **Commercial License (Paid)**
447
+
395
448
  Required for commercial use including:
449
+
396
450
  - 🏢 **Commercial applications** and products
397
451
  - 💰 **Revenue-generating** projects
398
452
  - 🏪 **App Store** or **Play Store** apps with monetization
399
453
  - 🏭 **Enterprise** and business applications
400
454
 
401
455
  **Commercial licensing includes:**
456
+
402
457
  - Full commercial usage rights
403
458
  - Priority support and maintenance
404
459
  - Custom feature development consideration
@@ -420,8 +475,8 @@ See the complete [LICENSE](LICENSE) file for detailed terms and definitions.
420
475
  ## 📞 Support
421
476
 
422
477
  - 📧 **Email**: niranjan.devasani@gmail.com
423
- - 🐛 **Issues**: [GitHub Issues](https://github.com/ursnj/nayan-ui/issues)
424
- - 🌐 **Website**: [https://www.nayanui.com/games](https://www.nayanui.com/games)
478
+ - 🐛 **Issues**: [GitHub Issues](https://github.com/nicejmp1/react-native-games/issues)
479
+ - 🌐 **Website**: [https://www.playtura.in](https://www.playtura.in)
425
480
 
426
481
  ---
427
482
 
@@ -1 +1 @@
1
- "use strict";import o,{useEffect as t,useMemo as r,useCallback as e}from"react";import{View as n,StyleSheet as s}from"react-native";import{GestureHandlerRootView as a}from"react-native-gesture-handler";import{useBalloonBlasterStore as i}from"./BalloonBlasterStore.js";import{createBalloonBlasterService as l}from"./BalloonBlasterService.js";import{BALLOON_BLASTER_GAME_CONFIG as m}from"./BalloonBlasterConstants.js";import{ScoreBoard as f,GameArea as c,GameBackground as p}from"./components/index.js";import{GameControlButton as b,GameOverModal as d,useAnimationTrackers as u,useGameErrorHandler as g,GameErrorType as h}from"../../helpers/index.js";import{GameSettingsModal as x}from"../../helpers/index.js";import{GAME_IDS as S,DEFAULT_GAME_SETTINGS as B}from"../../services/UtilsService.js";import{jsx as j,jsxs as C}from"react/jsx-runtime";export const BalloonBlaster=o.memo(({settings:s,onSettingsChange:A,onEndGame:w,onShare:y,onShowLeaderboard:P})=>{const G=i(o=>o.isPlaying),T=i(o=>o.gameOver),E=i(o=>o.score),L=o.useRef(!1),F=o.useCallback(o=>{if(w&&!L.current){const t=i.getState();w({status:o,score:t.score.toString()}),L.current=!0}},[w]),I=i(o=>o.startGame),O=i(o=>o.stopGame),U=i(o=>o.resetGame),V=i(o=>o.decrementTime),k=i(o=>o.addBalloon),q=i(o=>o.removeBalloon),z=i(o=>o.updateBalloon),{balloonAnimations:D,particleAnimations:H}=u(["balloonAnimations","particleAnimations"]),{wrapFunction:J,safeExecute:K}=g(S.BALLOON_BLASTER),M=e(o=>{k(o)},[k]),N=e(J(()=>{U()},h.UNKNOWN_ERROR),[J,U]),Q=r(()=>K(()=>l(D,H),l(D,H),h.INITIALIZATION_ERROR),[D,H,K]),R=s?.difficulty||"medium",W=m.GAME_DURATION[R],X=e(J(()=>{L.current=!1,U(),i.getState().balloons.forEach(o=>q(o.id)),Q&&(Q.cleanup(),Q.resetAnimations()),setTimeout(()=>{I(W),Q&&(Q.startGameTimer(V),Q.startBalloonSpawning(M,600),Q.startPhysicsLoop(z,q,()=>i.getState().balloons))},50)},h.INITIALIZATION_ERROR),[J,U,q,Q,I,V,M,z,W]),Y=e(J(()=>{F("cancel"),O(),Q&&(Q.cleanup(),Q.resetAnimations())},h.UNKNOWN_ERROR),[J,O,Q,F]);t(()=>()=>{N()},[N]),t(()=>{if(T&&!L.current){const o=i.getState().lives>0?"win":"lose";F(o)}T||(L.current=!1)},[T,F]),t(()=>{T&&Q&&Q.cleanup()},[T,Q]);const Z=r(()=>({isPlaying:G,gameOver:T,onStartGame:X,onStopGame:Y,onShare:y,onShowLeaderboard:P,startButtonSubtext:"Pop balloons to score!",buttonColor:"#3b82f6",buttonBorderColor:"#60a5fa"}),[G,T,X,Y,y,P]),$=r(()=>({isVisible:T,score:E,onPlayAgain:N,buttonText:"Pop Again!",primaryColor:"rgba(59, 130, 246, 0.5)",borderColor:"rgba(59, 130, 246, 0.5)",buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:"#3b82f6"}),[T,E,N]),_=r(()=>({gameId:S.BALLOON_BLASTER,settings:s||B,onSettingsChange:A}),[s,A]),oo=s?.offset??0;return j(n,{style:v.container,children:j(a,{children:C(p,{offset:oo,children:[j(c,{}),j(f,{offset:oo}),j(b,{...Z}),j(d,{...$}),j(x,{..._})]})})})});const v=s.create({container:{flex:1}});
1
+ "use strict";import React,{useEffect,useRef,useMemo,useCallback}from"react";import{View,StyleSheet}from"react-native";import{GestureHandlerRootView}from"react-native-gesture-handler";import{useBalloonBlasterStore}from"./BalloonBlasterStore.js";import{BalloonBlasterService}from"./BalloonBlasterService.js";import{BALLOON_BLASTER_GAME_CONFIG,BALLOON_BLASTER_COLORS}from"./BalloonBlasterConstants.js";import{ScoreBoard}from"./components/ScoreBoard.js";import{GameArea}from"./components/GameArea.js";import{GameBackground}from"./components/GameBackground.js";import{GameControlButton,GameOverModal,useAnimationTrackers}from"../../helpers/index.js";import{GameSettingsModal}from"../../helpers/index.js";import{GAME_IDS,DEFAULT_GAME_SETTINGS}from"../../services/UtilsService.js";import{playSound,GAME_SOUNDS}from"../../services/SoundsService.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export const BalloonBlaster=({settings:e,onSettingsChange:o,onEndGame:t,onReplayGame:r,onShare:s,onShowLeaderboard:a})=>{const n=useBalloonBlasterStore(e=>e.isPlaying),l=useBalloonBlasterStore(e=>e.gameOver),i=useBalloonBlasterStore(e=>e.score),u=useBalloonBlasterStore(e=>e.lives),S=useRef(!1),B=useRef(t);B.current=t,useRef(e).current=e;const m=e?.enableSounds??!0,O=useCallback(e=>{if(B.current&&!S.current){const o=useBalloonBlasterStore.getState().score;B.current({status:e,score:o.toString()}),S.current=!0}},[]),_=useBalloonBlasterStore(e=>e.startGame),A=useBalloonBlasterStore(e=>e.resetGame),E=useBalloonBlasterStore(e=>e.decrementTime),{balloonAnimations:L,particleAnimations:R}=useAnimationTrackers(["balloonAnimations","particleAnimations"]),G=useMemo(()=>new BalloonBlasterService(L,R),[L,R]);useEffect(()=>()=>{useBalloonBlasterStore.getState().isPlaying&&!S.current&&O("cancel");try{G.cleanup()}catch{}try{A()}catch{}},[]),useEffect(()=>{!l||n||S.current||(u<=0?(playSound(GAME_SOUNDS.TIME_UP,m),O("lose")):(playSound(GAME_SOUNDS.WELL_DONE,m),O("win"))),l||(S.current=!1)},[l,n,u,m]),useEffect(()=>{let e=null;return n&&(e=setInterval(()=>{E()},1e3)),()=>{e&&clearInterval(e)}},[n,E]),useEffect(()=>{l&&G.cleanup()},[l,G]);const f=useCallback(()=>{S.current=!1,G.cleanup(),G.resetAnimations(),_(BALLOON_BLASTER_GAME_CONFIG.GAME_DURATION)},[G,_]),p=useCallback(()=>{O("cancel"),G.cleanup(),A()},[G,A]),T=useCallback(()=>{r?.(),G.cleanup(),G.resetAnimations(),A()},[G,A,r]),d=useMemo(()=>({isPlaying:n,gameOver:l,onStartGame:f,onStopGame:p,onShare:s,onShowLeaderboard:a,startButtonSubtext:"Pop balloons to score!",buttonColor:BALLOON_BLASTER_COLORS.BUTTON_COLOR,buttonBorderColor:BALLOON_BLASTER_COLORS.BUTTON_BORDER}),[n,l,f,p,s,a]),C=useMemo(()=>({isVisible:l,score:i,onPlayAgain:T,buttonText:"Pop Again!",primaryColor:BALLOON_BLASTER_COLORS.GAME_OVER_BG,borderColor:BALLOON_BLASTER_COLORS.GAME_OVER_BORDER,buttonColor:BALLOON_BLASTER_COLORS.GAME_OVER_BUTTON,buttonBorderColor:BALLOON_BLASTER_COLORS.GAME_OVER_BUTTON_BORDER,buttonTextColor:BALLOON_BLASTER_COLORS.GAME_OVER_BUTTON_TEXT}),[l,i,T]),g=useMemo(()=>({gameId:GAME_IDS.BALLOON_BLASTER,settings:e||DEFAULT_GAME_SETTINGS,onSettingsChange:o}),[e,o]),M=e?.offset??0;return _jsx(View,{style:styles.container,children:_jsx(GestureHandlerRootView,{style:styles.gestureRoot,children:_jsxs(GameBackground,{offset:M,children:[_jsx(GameArea,{service:G,enableSounds:e?.enableSounds,enableHaptics:e?.enableHaptics}),_jsx(ScoreBoard,{offset:M}),_jsx(GameControlButton,{...d}),_jsx(GameOverModal,{...C}),_jsx(GameSettingsModal,{...g})]})})})};const styles=StyleSheet.create({container:{flex:1},gestureRoot:{flex:1}});
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useMemo","useCallback","View","StyleSheet","GestureHandlerRootView","useBalloonBlasterStore","createBalloonBlasterService","BALLOON_BLASTER_GAME_CONFIG","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useAnimationTrackers","useGameErrorHandler","GameErrorType","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","BalloonBlaster","memo","settings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","isPlaying","state","gameOver","score","gameReportedRef","useRef","reportGameEnd","status","current","currentState","getState","toString","startGame","stopGame","resetGame","decrementTime","addBalloon","removeBalloon","updateBalloon","balloonAnimations","particleAnimations","wrapFunction","safeExecute","BALLOON_BLASTER","spawnBalloon","balloon","handleResetGame","UNKNOWN_ERROR","gameService","INITIALIZATION_ERROR","difficulty","gameDuration","GAME_DURATION","handleStartGame","currentBalloons","balloons","forEach","id","cleanup","resetAnimations","setTimeout","startGameTimer","startBalloonSpawning","startPhysicsLoop","handleStopGame","lives","gameControlButtonProps","onStartGame","onStopGame","startButtonSubtext","buttonColor","buttonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonTextColor","gameSettingsModalProps","gameId","offset","style","styles","container","children","create","flex"],"sourceRoot":"../../../../src","sources":["games/balloon-blaster/BalloonBlaster.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useRef","useMemo","useCallback","View","StyleSheet","GestureHandlerRootView","useBalloonBlasterStore","BalloonBlasterService","BALLOON_BLASTER_GAME_CONFIG","BALLOON_BLASTER_COLORS","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useAnimationTrackers","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","playSound","GAME_SOUNDS","jsx","_jsx","jsxs","_jsxs","BalloonBlaster","settings","onSettingsChange","onEndGame","onReplayGame","onShare","onShowLeaderboard","isPlaying","state","gameOver","score","lives","gameReportedRef","onEndGameRef","current","settingsRef","enableSounds","reportGameEnd","status","currentScore","getState","toString","startGame","resetGame","decrementTime","balloonAnimations","particleAnimations","service","cleanup","TIME_UP","WELL_DONE","timerInterval","setInterval","clearInterval","startGameHandler","resetAnimations","GAME_DURATION","stopGameHandler","resetGameHandler","gameControlButtonProps","onStartGame","onStopGame","startButtonSubtext","buttonColor","BUTTON_COLOR","buttonBorderColor","BUTTON_BORDER","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","GAME_OVER_BG","borderColor","GAME_OVER_BORDER","GAME_OVER_BUTTON","GAME_OVER_BUTTON_BORDER","buttonTextColor","GAME_OVER_BUTTON_TEXT","gameSettingsModalProps","gameId","BALLOON_BLASTER","offset","style","styles","container","children","gestureRoot","enableHaptics","create","flex"],"sourceRoot":"../../../../src","sources":["games/balloon-blaster/BalloonBlaster.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";export const BALLOON_BLASTER_GAME_CONFIG={GAME_DURATION:{easy:60,medium:120,hard:180},MAX_LIVES:3,BALLOON_SPAWN_INTERVAL:800,BALLOON_RISE_SPEED:.08,GRAVITY:-.003,INITIAL_VELOCITY_Y:-.2,INITIAL_VELOCITY_X_RANGE:.3,ROTATION_SPEED_RANGE:.02,BALLOON_SIZE:60,SLICE_TRAIL_LENGTH:10,COMBO_TIMEOUT:2e3,PARTICLE_COUNT:4,PARTICLE_LIFETIME:600};export const BALLOON_BLASTER_ANIMATION_CONFIG={BALLOON_SPRING:{damping:30,stiffness:50},POP_SPRING:{damping:20,stiffness:300},PARTICLE_SPRING:{damping:25,stiffness:400},SLICE_TIMING:{duration:200}};export const BALLOON_BLASTER_COLORS={BACKGROUND:"#87CEEB",SCORE_BOARD:"#4169E1",SLICE_TRAIL:"#FFD700",PARTICLE_COLORS:["#FF6B6B","#4ECDC4","#45B7D1","#96CEB4","#FFEAA7","#DDA0DD"],COMBO_TEXT:"#FF4757",LIVES_COLOR:"#FF6B6B",PARTICLE_GLOW:"rgba(255,255,255,0.9)",SCORE:"#FFFFFF",UI:"#FF6347",BUTTON_ACTIVE:"#FF7F50",BUTTON_INACTIVE:"#FFA07A",TEXT_PRIMARY:"#FFFFFF",TEXT_SECONDARY:"#F0F8FF",WHITE:"#FFFFFF",START_BUTTON:"#4CAF50",GAME_OVER_OVERLAY:"rgba(0, 0, 0, 0.85)"};export const BALLOON_TYPES=[{emoji:"\ud83c\udf88",points:10,name:"red balloon",color:"#FF0040",gradient:["#FF0040","#FF4080"]},{emoji:"\ud83c\udf88",points:10,name:"blue balloon",color:"#0080FF",gradient:["#0080FF","#40A0FF"]},{emoji:"\ud83c\udf88",points:15,name:"yellow balloon",color:"#FFD700",gradient:["#FFD700","#FFEB3B"]},{emoji:"\ud83c\udf88",points:20,name:"green balloon",color:"#00FF80",gradient:["#00FF80","#40FFA0"]},{emoji:"\ud83c\udf88",points:25,name:"purple balloon",color:"#8000FF",gradient:["#8000FF","#A040FF"]},{emoji:"\ud83c\udf88",points:15,name:"pink balloon",color:"#FF0080",gradient:["#FF0080","#FF40A0"]},{emoji:"\ud83c\udf88",points:30,name:"orange balloon",color:"#FF4000",gradient:["#FF4000","#FF8040"]},{emoji:"\ud83c\udf88",points:25,name:"cyan balloon",color:"#00FFFF",gradient:["#00FFFF","#40FFFF"]},{emoji:"\ud83c\udf88",points:35,name:"magenta balloon",color:"#FF00FF",gradient:["#FF00FF","#FF40FF"]},{emoji:"\ud83c\udf88",points:40,name:"gold balloon",color:"#FFB000",gradient:["#FFB000","#FFD700"]},{emoji:"\ud83c\udf88",points:45,name:"rainbow balloon",color:"#FF0080",gradient:["#FF0080","#8000FF","#0080FF","#00FF80"]},{emoji:"\ud83c\udf88",points:50,name:"neon balloon",color:"#00FF00",gradient:["#00FF00","#FFFF00"]}];export const BALLOON_SPECIAL_ITEMS=[{emoji:"\ud83d\udca3",points:-50,name:"bomb",isBomb:!0,color:"#FF4444"},{emoji:"\u2b50",points:50,name:"star",isBonus:!0,color:"#FFD700"}];export const BALLOON_BLASTER_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#3b82f6",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(59, 130, 246, 0.15)",sectionTitleColor:"#3b82f6",buttonSelectedColor:"#3b82f6",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(59, 130, 246, 0.3)",switchTrackColorTrue:"#3b82f6",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const BALLOON_BLASTER_DIFFICULTY_DESCRIPTIONS={easy:"Balloons spawn slower, more forgiving",medium:"Balanced gameplay and balloon speed",hard:"Fast balloons, quick reflexes needed!"};
1
+ "use strict";import{createGameTheme}from"../../services/ThemeUtils.js";import{isTablet}from"../../services/UtilsService.js";const PRIMARY_COLOR="#ffffff",BACKGROUND_COLOR="#3a3a5e";export const BALLOON_BLASTER_THEME=createGameTheme("#ffffff","#3a3a5e");export const BALLOON_BLASTER_GAME_CONFIG={GAME_DURATION:120,MAX_LIVES:3,BALLOON_SPAWN_INTERVAL:800,BALLOON_RISE_SPEED:2.5,GRAVITY:-.005,INITIAL_VELOCITY_Y:-1.2,INITIAL_VELOCITY_X_RANGE:.5,ROTATION_SPEED_RANGE:.02,BALLOON_SIZE:isTablet?92:60,SLICE_TRAIL_LENGTH:10,COMBO_TIMEOUT:2e3,PARTICLE_COUNT:4,PARTICLE_LIFETIME:600};export const BALLOON_BLASTER_ANIMATION_CONFIG={BALLOON_SPRING:{damping:30,stiffness:50},POP_SPRING:{damping:20,stiffness:300},PARTICLE_SPRING:{damping:25,stiffness:400},SLICE_TIMING:{duration:200}};export const BALLOON_BLASTER_COLORS={BACKGROUND:"#3a3a5e",PRIMARY:"#ffffff",SCORE_BOARD:"#3b82f6",SLICE_TRAIL:"#FFD700",PARTICLE_COLORS:["#FF6B6B","#4ECDC4","#45B7D1","#96CEB4","#FFEAA7","#DDA0DD"],COMBO_TEXT:"#FF4757",LIVES_COLOR:"#FF6B6B",PARTICLE_GLOW:"rgba(255,255,255,0.9)",SCORE_BACKGROUND:BALLOON_BLASTER_THEME.sectionBackgroundColor,SCORE_BORDER:BALLOON_BLASTER_THEME.buttonSelectedColor,SCORE_TEXT:BALLOON_BLASTER_THEME.headerTextColor,UI:"#ffffff",BUTTON_COLOR:BALLOON_BLASTER_THEME.headerBackgroundColor,BUTTON_BORDER:BALLOON_BLASTER_THEME.buttonSelectedColor,TEXT_PRIMARY:"#FFFFFF",TEXT_SECONDARY:"#F0F8FF",WHITE:"#FFFFFF",GAME_OVER_BG:BALLOON_BLASTER_THEME.buttonSelectedColor,GAME_OVER_BORDER:BALLOON_BLASTER_THEME.buttonSelectedColor,GAME_OVER_BUTTON:"#ffffff",GAME_OVER_BUTTON_BORDER:"#ffffff",GAME_OVER_BUTTON_TEXT:"#000000"};export const BALLOON_TYPES=[{emoji:"\ud83c\udf88",points:10,name:"red balloon",color:"#FF0040",gradient:["#FF0040","#FF4080"]},{emoji:"\ud83c\udf88",points:10,name:"blue balloon",color:"#0080FF",gradient:["#0080FF","#40A0FF"]},{emoji:"\ud83c\udf88",points:15,name:"yellow balloon",color:"#FFD700",gradient:["#FFD700","#FFEB3B"]},{emoji:"\ud83c\udf88",points:20,name:"green balloon",color:"#00FF80",gradient:["#00FF80","#40FFA0"]},{emoji:"\ud83c\udf88",points:25,name:"purple balloon",color:"#8000FF",gradient:["#8000FF","#A040FF"]},{emoji:"\ud83c\udf88",points:15,name:"pink balloon",color:"#FF0080",gradient:["#FF0080","#FF40A0"]},{emoji:"\ud83c\udf88",points:30,name:"orange balloon",color:"#FF4000",gradient:["#FF4000","#FF8040"]},{emoji:"\ud83c\udf88",points:25,name:"cyan balloon",color:"#00FFFF",gradient:["#00FFFF","#40FFFF"]},{emoji:"\ud83c\udf88",points:35,name:"magenta balloon",color:"#FF00FF",gradient:["#FF00FF","#FF40FF"]},{emoji:"\ud83c\udf88",points:40,name:"gold balloon",color:"#FFB000",gradient:["#FFB000","#FFD700"]},{emoji:"\ud83c\udf88",points:45,name:"rainbow balloon",color:"#FF0080",gradient:["#FF0080","#8000FF","#0080FF","#00FF80"]},{emoji:"\ud83c\udf88",points:50,name:"neon balloon",color:"#00FF00",gradient:["#00FF00","#FFFF00"]}];export const BALLOON_SPECIAL_ITEMS=[{emoji:"\ud83d\udca3",points:-50,name:"bomb",isBomb:!0,color:"#FF4444"},{emoji:"\u2b50",points:50,name:"star",isBonus:!0,color:"#FFD700"}];
@@ -1 +1 @@
1
- {"version":3,"names":["BALLOON_BLASTER_GAME_CONFIG","GAME_DURATION","easy","medium","hard","MAX_LIVES","BALLOON_SPAWN_INTERVAL","BALLOON_RISE_SPEED","GRAVITY","INITIAL_VELOCITY_Y","INITIAL_VELOCITY_X_RANGE","ROTATION_SPEED_RANGE","BALLOON_SIZE","SLICE_TRAIL_LENGTH","COMBO_TIMEOUT","PARTICLE_COUNT","PARTICLE_LIFETIME","BALLOON_BLASTER_ANIMATION_CONFIG","BALLOON_SPRING","damping","stiffness","POP_SPRING","PARTICLE_SPRING","SLICE_TIMING","duration","BALLOON_BLASTER_COLORS","BACKGROUND","SCORE_BOARD","SLICE_TRAIL","PARTICLE_COLORS","COMBO_TEXT","LIVES_COLOR","PARTICLE_GLOW","SCORE","UI","BUTTON_ACTIVE","BUTTON_INACTIVE","TEXT_PRIMARY","TEXT_SECONDARY","WHITE","START_BUTTON","GAME_OVER_OVERLAY","BALLOON_TYPES","emoji","points","name","color","gradient","BALLOON_SPECIAL_ITEMS","isBomb","isBonus","BALLOON_BLASTER_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","BALLOON_BLASTER_DIFFICULTY_DESCRIPTIONS"],"sourceRoot":"../../../../src","sources":["games/balloon-blaster/BalloonBlasterConstants.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createGameTheme","isTablet","PRIMARY_COLOR","BACKGROUND_COLOR","BALLOON_BLASTER_THEME","BALLOON_BLASTER_GAME_CONFIG","GAME_DURATION","MAX_LIVES","BALLOON_SPAWN_INTERVAL","BALLOON_RISE_SPEED","GRAVITY","INITIAL_VELOCITY_Y","INITIAL_VELOCITY_X_RANGE","ROTATION_SPEED_RANGE","BALLOON_SIZE","SLICE_TRAIL_LENGTH","COMBO_TIMEOUT","PARTICLE_COUNT","PARTICLE_LIFETIME","BALLOON_BLASTER_ANIMATION_CONFIG","BALLOON_SPRING","damping","stiffness","POP_SPRING","PARTICLE_SPRING","SLICE_TIMING","duration","BALLOON_BLASTER_COLORS","BACKGROUND","PRIMARY","SCORE_BOARD","SLICE_TRAIL","PARTICLE_COLORS","COMBO_TEXT","LIVES_COLOR","PARTICLE_GLOW","SCORE_BACKGROUND","sectionBackgroundColor","SCORE_BORDER","buttonSelectedColor","SCORE_TEXT","headerTextColor","UI","BUTTON_COLOR","headerBackgroundColor","BUTTON_BORDER","TEXT_PRIMARY","TEXT_SECONDARY","WHITE","GAME_OVER_BG","GAME_OVER_BORDER","GAME_OVER_BUTTON","GAME_OVER_BUTTON_BORDER","GAME_OVER_BUTTON_TEXT","BALLOON_TYPES","emoji","points","name","color","gradient","BALLOON_SPECIAL_ITEMS","isBomb","isBonus"],"sourceRoot":"../../../../src","sources":["games/balloon-blaster/BalloonBlasterConstants.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import{Dimensions as t}from"react-native";import{BALLOON_BLASTER_GAME_CONFIG as i,BALLOON_BLASTER_ANIMATION_CONFIG as e,BALLOON_BLASTER_COLORS as o,BALLOON_TYPES as s,BALLOON_SPECIAL_ITEMS as a}from"./BalloonBlasterConstants.js";const{width:n,height:r}=t.get("window");export{i as GAME_CONFIG,e as ANIMATION_CONFIG,o as COLORS,s as BALLOON_TYPES,a as SPECIAL_ITEMS};export class BalloonBlasterService{gameTimerRef=null;balloonSpawnRef=null;animationRef=null;comboTimeoutRef=null;particles=[];constructor(t,i){this.balloonAnimations=t,this.particleAnimations=i}startGameTimer(t){this.clearGameTimer(),this.gameTimerRef=setInterval(t,1e3)}startBalloonSpawning(t,e){this.clearBalloonSpawn();const o=e||i.BALLOON_SPAWN_INTERVAL,s=()=>{const i=this.createRandomBalloon();t(i);const e=150*(Math.random()-.5),a=o+e;this.balloonSpawnRef=setTimeout(s,Math.max(200,a))};for(let i=0;3>i;i++)setTimeout(()=>{const i=this.createRandomBalloon();t(i)},50*i);this.balloonSpawnRef=setTimeout(s,100)}startPhysicsLoop(t,e,o){let s=performance.now();const a=1e3/60,h=l=>{const c=l-s;if(a>c)return void(this.animationRef=requestAnimationFrame(h));s=l;const m=c/16.67;this.updateParticles(m);const u=o();for(let o=0;o<u.length;o++){const s=u[o];if(!s||s.isPopped)continue;const a=s.velocity.y+i.GRAVITY*m;let h=s.position.x+s.velocity.x*m;const l=s.position.y+a*m,c=s.rotation+s.rotationSpeed*m;if(-100>l){e(s.id);continue}if(l>r+100){e(s.id);continue}let M=s.velocity.x;h>0?h<n-i.BALLOON_SIZE||(h=n-i.BALLOON_SIZE,M=.8*-Math.abs(M)):(h=0,M=.8*Math.abs(M)),t(s.id,{position:{x:h,y:l},velocity:{x:M,y:a},rotation:c})}this.animationRef=requestAnimationFrame(h)};this.animationRef=requestAnimationFrame(h)}createRandomBalloon(){const t=(.1>Math.random()?a[Math.floor(Math.random()*a.length)]:s[Math.floor(Math.random()*s.length)])||s[0],e=i.BALLOON_SIZE,o=e/2,h=n-2*o-e,l=o+Math.random()*h,c=r-30,m=(Math.random()-.5)*i.INITIAL_VELOCITY_X_RANGE,u=i.INITIAL_VELOCITY_Y;return{id:`balloon_${Date.now()}_${Math.random()}`,type:t,position:{x:l,y:c},velocity:{x:m,y:u},rotation:0,rotationSpeed:(Math.random()-.5)*i.ROTATION_SPEED_RANGE,isPopped:!1,spawnTime:Date.now(),isBomb:"isBomb"in t&&t.isBomb,isBonus:"isBonus"in t&&t.isBonus}}createPopParticles(t){15>this.particles.length||this.particles.splice(0,Math.floor(this.particles.length/2));const e=[],s=Math.min(i.PARTICLE_COUNT,6),a=1.25*i.BALLOON_SIZE,n=t.position.x+i.BALLOON_SIZE/2,r=t.position.y+a/2;for(let a=0;s>a;a++){const h=a/s*Math.PI*2,l=5+4*Math.random();e.push({id:`particle_${t.id}_${a}_${Date.now()}_${Math.random()}`,position:{x:n,y:r},velocity:{x:Math.cos(h)*l,y:Math.sin(h)*l-3},color:o.PARTICLE_COLORS[a%o.PARTICLE_COLORS.length]||"#FF6B6B",size:4+3*Math.random(),lifetime:0,maxLifetime:Math.min(i.PARTICLE_LIFETIME,800)})}return this.particles=[...this.particles,...e],e}updateParticles(t=1){const i=16*t,e=.08*t,o=[];for(let s=0;s<this.particles.length;s++){const a=this.particles[s];if(!a)continue;const n={...a};n.lifetime+=i,n.lifetime<n.maxLifetime&&(n.position={x:n.position.x+n.velocity.x*t,y:n.position.y+n.velocity.y*t},n.velocity={x:n.velocity.x*Math.pow(.99,t),y:(n.velocity.y+e)*Math.pow(.99,t)},o.push(n))}this.particles=o}getParticles(){return this.particles}checkBalloonPop(t,e){if(t.isPopped||2>e.length)return!1;const o={x:t.position.x+i.BALLOON_SIZE/2,y:t.position.y+i.BALLOON_SIZE/2},s=i.BALLOON_SIZE/2;for(let t=0;t<e.length-1;t++){const i=e[t],a=e[t+1];if(i&&a&&s>=this.distanceFromPointToLine(o,i,a))return!0}return!1}distanceFromPointToLine(t,i,e){const o=t.x-i.x,s=t.y-i.y,a=e.x-i.x,n=e.y-i.y,r=o*a+s*n,h=a*a+n*n;if(0===h)return Math.sqrt(o*o+s*s);let l=r/h;l=Math.max(0,Math.min(1,l));const c=i.x+l*a,m=i.y+l*n,u=t.x-c,M=t.y-m;return Math.sqrt(u*u+M*M)}resetAnimations(){this.balloonAnimations.clear(),this.particleAnimations.clear(),this.particles=[]}cleanup(){this.clearGameTimer(),this.clearBalloonSpawn(),this.clearAnimationLoop(),this.clearComboTimeout(),this.particles=[]}clearGameTimer(){this.gameTimerRef&&(clearInterval(this.gameTimerRef),this.gameTimerRef=null)}clearBalloonSpawn(){this.balloonSpawnRef&&(clearTimeout(this.balloonSpawnRef),this.balloonSpawnRef=null)}clearAnimationLoop(){this.animationRef&&(cancelAnimationFrame(this.animationRef),this.animationRef=null)}clearComboTimeout(){this.comboTimeoutRef&&(clearTimeout(this.comboTimeoutRef),this.comboTimeoutRef=null)}}export const createBalloonBlasterService=(t,i)=>new BalloonBlasterService(t,i);
1
+ "use strict";import{BALLOON_BLASTER_GAME_CONFIG as GAME_CONFIG,BALLOON_BLASTER_ANIMATION_CONFIG as ANIMATION_CONFIG,BALLOON_BLASTER_COLORS as COLORS,BALLOON_TYPES,BALLOON_SPECIAL_ITEMS as SPECIAL_ITEMS}from"./BalloonBlasterConstants.js";import{Dimensions}from"react-native";const{width:width,height:height}=Dimensions.get("window");export{GAME_CONFIG,ANIMATION_CONFIG,COLORS,BALLOON_TYPES,SPECIAL_ITEMS};const POP_ANIM_DURATION=200,POP_REMOVAL_DELAY=250;export class BalloonBlasterService{gameTimerRef=null;balloonSpawnRef=null;animationRef=null;comboTimeoutRef=null;particles=[];balloonsRef=[];needsRedraw=!1;sharedValuesMap=new Map;onListChange=null;constructor(t,e){this.balloonAnimations=t,this.particleAnimations=e}registerSharedValues(t,e){this.sharedValuesMap.set(t,e)}unregisterSharedValues(t){this.sharedValuesMap.delete(t)}setOnListChange(t){this.onListChange=t}startGameTimer(t){this.clearGameTimer(),this.gameTimerRef=setInterval(t,1e3)}startBalloonSpawning(t,e){this.clearBalloonSpawn();const o=e||GAME_CONFIG.BALLOON_SPAWN_INTERVAL,i=()=>{const e=this.createRandomBalloon();t(e);const a=150*(Math.random()-.5),n=o+a;this.balloonSpawnRef=setTimeout(i,Math.max(200,n))};for(let e=0;e<3;e++)setTimeout(()=>{const e=this.createRandomBalloon();t(e)},50*e);this.balloonSpawnRef=setTimeout(i,100)}getBalloons(){return this.balloonsRef}getNeedsRedraw(){return this.needsRedraw}clearNeedsRedraw(){this.needsRedraw=!1}addBalloonToRef(t){this.balloonsRef.push(t),this.needsRedraw=!0,this.onListChange?.()}popBalloonInRef(t){for(let e=0;e<this.balloonsRef.length;e++){const o=this.balloonsRef[e];if(o&&o.id===t&&!o.isPopped)return o.isPopped=!0,o.popTime=performance.now(),this.needsRedraw=!0,o}return null}hitTestBalloon(t,e){const o=GAME_CONFIG.BALLOON_SIZE,i=1.25*o;for(let a=this.balloonsRef.length-1;a>=0;a--){const n=this.balloonsRef[a];if(!n||n.isPopped)continue;const s=t-(n.position.x+o/2),l=e-(n.position.y+i/2),r=o/2,h=i/2;if(s*s/(r*r)+l*l/(h*h)<=1)return n}return null}startRefPhysicsLoop(){let t=performance.now();const e=1e3/60,o=GAME_CONFIG.GRAVITY,i=GAME_CONFIG.BALLOON_SIZE,a=2*-i,n=width-i,s=performance.now,l=i=>{const r=i-t;if(r<e)return void(this.animationRef=requestAnimationFrame(l));t=i;const h=r/16.67;this.updateParticles(h);const m=this.balloonsRef;let p=0;const O=s();let L=!1;for(let t=0;t<m.length;t++){const e=m[t];if(!e)continue;const i=this.sharedValuesMap.get(e.id);if(e.isPopped){const t=O-(e.popTime||O);if(t>=250){this.sharedValuesMap.delete(e.id),L=!0;continue}const o=Math.min(1,t/200);e.scale=1-o,e.opacity=1-o,i&&(i.scale.value=e.scale,i.opacity.value=e.opacity),m[p++]=e;continue}const s=e.velocity.y+o*h;let l=e.position.x+e.velocity.x*h;const r=e.position.y+s*h;if(r<a){this.sharedValuesMap.delete(e.id),L=!0;continue}let A=e.velocity.x;l<=0?(l=0,A=.8*Math.abs(A)):l>=n&&(l=n,A=.8*-Math.abs(A)),e.position.x=l,e.position.y=r,e.velocity.x=A,e.velocity.y=s,e.rotation+=e.rotationSpeed*h,i&&(i.translateX.value=l,i.translateY.value=r,i.rotation.value=e.rotation),m[p++]=e}m.length=p,L&&this.onListChange?.(),this.animationRef=requestAnimationFrame(l)};this.animationRef=requestAnimationFrame(l)}createRandomBalloon(){const t=(Math.random()<.2?SPECIAL_ITEMS[Math.floor(Math.random()*SPECIAL_ITEMS.length)]:BALLOON_TYPES[Math.floor(Math.random()*BALLOON_TYPES.length)])||BALLOON_TYPES[0],e=GAME_CONFIG.BALLOON_SIZE,o=e/2,i=width-2*o-e,a=o+Math.random()*i,n=height+e,s=(Math.random()-.5)*GAME_CONFIG.INITIAL_VELOCITY_X_RANGE,l=GAME_CONFIG.INITIAL_VELOCITY_Y;return{id:`balloon_${Date.now()}_${Math.random()}`,type:t,position:{x:a,y:n},spawnX:a,spawnY:n,velocity:{x:s,y:l},rotation:0,rotationSpeed:(Math.random()-.5)*GAME_CONFIG.ROTATION_SPEED_RANGE,isPopped:!1,spawnTime:Date.now(),isBomb:"isBomb"in t&&t.isBomb,isBonus:"isBonus"in t&&t.isBonus,scale:1,opacity:1}}createPopParticles(t){this.particles.length>=15&&this.particles.splice(0,Math.floor(this.particles.length/2));const e=[],o=Math.min(GAME_CONFIG.PARTICLE_COUNT,6),i=1.25*GAME_CONFIG.BALLOON_SIZE,a=t.position.x+GAME_CONFIG.BALLOON_SIZE/2,n=t.position.y+i/2;for(let i=0;i<o;i++){const s=i/o*Math.PI*2,l=5+4*Math.random();e.push({id:`particle_${t.id}_${i}_${Date.now()}_${Math.random()}`,position:{x:a,y:n},velocity:{x:Math.cos(s)*l,y:Math.sin(s)*l-3},color:COLORS.PARTICLE_COLORS[i%COLORS.PARTICLE_COLORS.length]||"#FF6B6B",size:4+3*Math.random(),lifetime:0,maxLifetime:Math.min(GAME_CONFIG.PARTICLE_LIFETIME,800)})}return this.particles=[...this.particles,...e],e}updateParticles(t=1){const e=16*t,o=.08*t,i=Math.pow(.99,t);let a=0;for(let n=0;n<this.particles.length;n++){const s=this.particles[n];s&&(s.lifetime+=e,s.lifetime>=s.maxLifetime||(s.position.x+=s.velocity.x*t,s.position.y+=s.velocity.y*t,s.velocity.x*=i,s.velocity.y=(s.velocity.y+o)*i,this.particles[a]=s,a++))}this.particles.length=a}getParticles(){return this.particles}checkBalloonPop(t,e){if(t.isPopped||e.length<2)return!1;const o={x:t.position.x+GAME_CONFIG.BALLOON_SIZE/2,y:t.position.y+GAME_CONFIG.BALLOON_SIZE/2},i=GAME_CONFIG.BALLOON_SIZE/2;for(let t=0;t<e.length-1;t++){const a=e[t],n=e[t+1];if(a&&n&&this.distanceFromPointToLine(o,a,n)<=i)return!0}return!1}distanceFromPointToLine(t,e,o){const i=t.x-e.x,a=t.y-e.y,n=o.x-e.x,s=o.y-e.y,l=i*n+a*s,r=n*n+s*s;if(0===r)return Math.sqrt(i*i+a*a);let h=l/r;h=Math.max(0,Math.min(1,h));const m=e.x+h*n,p=e.y+h*s,O=t.x-m,L=t.y-p;return Math.sqrt(O*O+L*L)}resetAnimations(){this.balloonAnimations.clear(),this.particleAnimations.clear(),this.particles=[],this.balloonsRef=[],this.sharedValuesMap.clear(),this.needsRedraw=!0,this.onListChange?.()}cleanup(){this.clearGameTimer(),this.clearBalloonSpawn(),this.clearAnimationLoop(),this.clearComboTimeout(),this.particles=[],this.balloonsRef=[],this.sharedValuesMap.clear(),this.onListChange?.()}clearGameTimer(){this.gameTimerRef&&(clearInterval(this.gameTimerRef),this.gameTimerRef=null)}clearBalloonSpawn(){this.balloonSpawnRef&&(clearTimeout(this.balloonSpawnRef),this.balloonSpawnRef=null)}stopPhysicsLoop(){this.clearAnimationLoop()}clearAnimationLoop(){this.animationRef&&(cancelAnimationFrame(this.animationRef),this.animationRef=null)}clearComboTimeout(){this.comboTimeoutRef&&(clearTimeout(this.comboTimeoutRef),this.comboTimeoutRef=null)}}export const createBalloonBlasterService=(t,e)=>new BalloonBlasterService(t,e);