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
@@ -1 +1 @@
1
- "use strict";import t,{useMemo as e,useCallback as r,useEffect as i}from"react";import{View as o,StyleSheet as n,Dimensions as s}from"react-native";import a,{useAnimatedStyle as c,withSpring as l,useSharedValue as d,withSequence as h}from"react-native-reanimated";import{NumbersTile as m}from"./NumbersTile.js";import{useTiles as u,useGridSize as f,useEmptyPosition as g,useSlidingNumbersStore as w}from"../SlidingNumbersStore.js";import{SLIDING_NUMBERS_GAME_CONFIG as p,SLIDING_NUMBERS_ANIMATION_CONFIG as b}from"../SlidingNumbersConstants.js";import{jsx as j}from"react/jsx-runtime";export const NumbersGrid=t.memo(({difficulty:t})=>{const n=u(),S=f(),C=g(),F=w(t=>t.isPlaying),M=w(t=>t.isCompleted),N=w(t=>t.moveTile),v=w(t=>t.checkCompletion),x=d(1),G=e(()=>{const t=p.TILE_GAP,e=2*(t+8),{width:r}=s.get("window"),i=Math.max(45,Math.min(80,Math.floor((r-e-40-t*(S-1))/S))),o=i*S+t*(S-1),n=o+e;return{width:n,height:n,contentWidth:o,contentHeight:o,tileSize:i,gap:t}},[S]),z=e(()=>{const t=[];for(let e=0;S>e;e++){t[e]=[];for(let r=0;S>r;r++){const i=t[e];i&&(i[r]=null)}}return n.forEach(e=>{const{row:r,col:i}=e.position;r>=0&&S>r&&i>=0&&S>i&&t[r]&&(t[r][i]=e)}),t},[n,S]),I=r(e=>{F&&!M&&N(e)&&v(t)},[F,M,N,v,t]),O=r(t=>{if(!t||0===t.value||!F||M)return!1;const e=Math.abs(t.position.row-C.row),r=Math.abs(t.position.col-C.col);return 1===e&&0===r||0===e&&1===r},[C,F,M]),R=c(()=>({transform:[{scale:x.value}]}));i(()=>{M&&(x.value=h(l(1.1,b.COMPLETION_CELEBRATION),l(1,b.COMPLETION_CELEBRATION)))},[M,x]);const $=e(()=>[y.gridContainer,{width:G.width,height:G.height},R],[G.width,G.height,R]),k=e(()=>[y.tileSlot,{width:G.tileSize,height:G.tileSize}],[G.tileSize]);return j(a.View,{style:$,children:z.map((t,e)=>j(o,{style:y.row,children:t.map((t,r)=>j(o,{style:k,children:t&&0!==t.value&&j(m,{tile:t,onPress:I,isMovable:O(t),tileSize:G.tileSize})},`${e}-${r}`))},e))})});const y=n.create({gridContainer:{backgroundColor:"#FFFFFF",borderRadius:20,padding:p.TILE_GAP+8,shadowColor:"#000",shadowOffset:{width:0,height:4},shadowOpacity:.1,shadowRadius:8,elevation:8,alignSelf:"center"},row:{flexDirection:"row",justifyContent:"center",alignItems:"center"},tileSlot:{justifyContent:"center",alignItems:"center",margin:p.TILE_GAP/2}});NumbersGrid.displayName="NumbersGrid";
1
+ "use strict";import React,{useEffect,useMemo,useCallback}from"react";import{View,StyleSheet}from"react-native";import Animated,{useAnimatedStyle,withSpring,useSharedValue,withSequence}from"react-native-reanimated";import{NumbersTile}from"./NumbersTile.js";import{useTiles,useGridSize,useEmptyPosition,useSlidingNumbersStore}from"../SlidingNumbersStore.js";import{SLIDING_NUMBERS_GAME_CONFIG,SLIDING_NUMBERS_ANIMATION_CONFIG,SLIDING_NUMBERS_COLORS}from"../SlidingNumbersConstants.js";import{getGameDimensions,isTablet}from"../../../services/UtilsService.js";import{jsx as _jsx}from"react/jsx-runtime";export const NumbersGrid=React.memo(()=>{const e=useTiles(),t=useGridSize(),i=useEmptyPosition(),s=useSlidingNumbersStore(e=>e.isPlaying),r=useSlidingNumbersStore(e=>e.isCompleted),o=useSlidingNumbersStore(e=>e.moveTile),l=useSlidingNumbersStore(e=>e.checkCompletion),n=useSharedValue(1),a=useMemo(()=>{const e=isTablet?6:SLIDING_NUMBERS_GAME_CONFIG.TILE_GAP,i=2*(e+8),{width:s}=getGameDimensions(),r=s-i-e*(t-1),o=Math.floor(r/t),l=isTablet?60:45,n=isTablet?120:80,a=Math.max(l,Math.min(n,o)),S=a*t+e*(t-1),m=S+i;return{width:m,height:m,contentWidth:S,contentHeight:S,tileSize:a,gap:e}},[t]),S=useMemo(()=>{const i=[];for(let e=0;e<t;e++){i[e]=[];for(let s=0;s<t;s++){const t=i[e];t&&(t[s]=null)}}return e.forEach(e=>{const{row:s,col:r}=e.position;s>=0&&s<t&&r>=0&&r<t&&i[s]&&(i[s][r]=e)}),i},[e,t]),m=useCallback(e=>{s&&!r&&o(e)&&l()},[s,r,o,l]),u=useCallback(e=>{if(!e||0===e.value||!s||r)return!1;const t=Math.abs(e.position.row-i.row),o=Math.abs(e.position.col-i.col);return 1===t&&0===o||0===t&&1===o},[s,r,i]),N=useAnimatedStyle(()=>({transform:[{scale:n.value}]}));useEffect(()=>{r&&(n.value=withSequence(withSpring(1.1,SLIDING_NUMBERS_ANIMATION_CONFIG.COMPLETION_CELEBRATION),withSpring(1,SLIDING_NUMBERS_ANIMATION_CONFIG.COMPLETION_CELEBRATION)))},[r,n]);const d=useMemo(()=>[styles.gridContainer,{width:a.width,height:a.height},N],[a.width,a.height,N]),h=useMemo(()=>[styles.tileSlot,{width:a.tileSize,height:a.tileSize}],[a.tileSize]);return _jsx(Animated.View,{style:d,children:S.map((e,t)=>_jsx(View,{style:styles.row,children:e.map((e,i)=>_jsx(View,{style:h,children:e&&0!==e.value&&_jsx(NumbersTile,{tile:e,onPress:m,isMovable:u(e),tileSize:a.tileSize})},`${t}-${i}`))},t))})});const styles=StyleSheet.create({gridContainer:{backgroundColor:`${SLIDING_NUMBERS_COLORS.PRIMARY}30`,borderRadius:isTablet?24:20,padding:isTablet?14:SLIDING_NUMBERS_GAME_CONFIG.TILE_GAP+8,borderWidth:2,borderColor:`${SLIDING_NUMBERS_COLORS.PRIMARY}50`,shadowColor:"#000",shadowOffset:{width:0,height:4},shadowOpacity:.2,shadowRadius:8,elevation:8,alignSelf:"center"},row:{flexDirection:"row",justifyContent:"center",alignItems:"center"},tileSlot:{justifyContent:"center",alignItems:"center",margin:isTablet?3:SLIDING_NUMBERS_GAME_CONFIG.TILE_GAP/2}});NumbersGrid.displayName="NumbersGrid";
@@ -1 +1 @@
1
- {"version":3,"names":["React","useMemo","useCallback","useEffect","View","StyleSheet","Dimensions","Animated","useAnimatedStyle","withSpring","useSharedValue","withSequence","NumbersTile","useTiles","useGridSize","useEmptyPosition","useSlidingNumbersStore","SLIDING_NUMBERS_GAME_CONFIG","SLIDING_NUMBERS_ANIMATION_CONFIG","jsx","_jsx","NumbersGrid","memo","difficulty","tiles","gridSize","emptyPosition","isPlaying","state","isCompleted","moveTile","checkCompletion","completionScale","gridDimensions","gap","TILE_GAP","padding","width","screenWidth","get","maxAvailableWidth","availableForTiles","optimalTileSize","Math","floor","minTileSize","maxTileSize","tileSize","max","min","tilesWidth","gapsWidth","contentSize","totalSize","height","contentWidth","contentHeight","gridLayout","layout","row","col","rowArray","forEach","tile","position","handleTilePress","tileId","success","isTileMovable","value","rowDiff","abs","colDiff","animatedGridStyle","transform","scale","COMPLETION_CELEBRATION","gridContainerStyle","styles","gridContainer","tileSlotStyle","tileSlot","style","children","map","rowIndex","colIndex","onPress","isMovable","create","backgroundColor","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","alignSelf","flexDirection","justifyContent","alignItems","margin","displayName"],"sourceRoot":"../../../../../src","sources":["games/sliding-numbers/components/NumbersGrid.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useMemo","useCallback","View","StyleSheet","Animated","useAnimatedStyle","withSpring","useSharedValue","withSequence","NumbersTile","useTiles","useGridSize","useEmptyPosition","useSlidingNumbersStore","SLIDING_NUMBERS_GAME_CONFIG","SLIDING_NUMBERS_ANIMATION_CONFIG","SLIDING_NUMBERS_COLORS","getGameDimensions","isTablet","jsx","_jsx","NumbersGrid","memo","tiles","gridSize","emptyPosition","isPlaying","state","isCompleted","moveTile","checkCompletion","completionScale","gridDimensions","gap","TILE_GAP","padding","width","screenWidth","maxAvailableWidth","availableForTiles","optimalTileSize","Math","floor","minTileSize","maxTileSize","tileSize","max","min","tilesWidth","gapsWidth","contentSize","totalSize","height","contentWidth","contentHeight","gridLayout","layout","row","col","rowArray","forEach","tile","position","handleTilePress","tileId","success","isTileMovable","value","rowDiff","abs","colDiff","animatedGridStyle","transform","scale","COMPLETION_CELEBRATION","gridContainerStyle","styles","gridContainer","tileSlotStyle","tileSlot","style","children","map","rowIndex","colIndex","onPress","isMovable","create","backgroundColor","PRIMARY","borderRadius","borderWidth","borderColor","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","alignSelf","flexDirection","justifyContent","alignItems","margin","displayName"],"sourceRoot":"../../../../../src","sources":["games/sliding-numbers/components/NumbersGrid.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import t,{useCallback as e,useMemo as r}from"react";import{StyleSheet as o,TouchableOpacity as i,Text as n}from"react-native";import s,{useSharedValue as a,useAnimatedStyle as l,withSpring as m,runOnJS as c}from"react-native-reanimated";import{SLIDING_NUMBERS_COLORS as d,SLIDING_NUMBERS_GAME_CONFIG as u,SLIDING_NUMBERS_ANIMATION_CONFIG as h,NUMBER_WORDS as b}from"../SlidingNumbersConstants.js";import{jsx as f,jsxs as g}from"react/jsx-runtime";const p=s.createAnimatedComponent(i);export const NumbersTile=t.memo(({tile:t,onPress:o,isMovable:i,tileSize:s})=>{const u=a(1),S=a(0===t.value?0:1),y=e(()=>{0!==t.value&&i&&(u.value=m(.95,h.TILE_PRESS,()=>{u.value=m(1,h.TILE_PRESS)}),c(o)(t.id))},[t.value,t.id,i,o,u]),z=l(()=>({transform:[{scale:u.value}],opacity:S.value}));if(0===t.value)return null;const{tileColor:C,numberWord:x}=r(()=>{const e=(t.value-1)%d.TILE_COLORS.length;return{tileColor:d.TILE_COLORS[e]||d.TILE_COLORS[0],numberWord:b[t.value]||""}},[t.value]),{numberFontSize:F,wordFontSize:j}=r(()=>({numberFontSize:Math.max(16,.4*s),wordFontSize:Math.max(8,.15*s)}),[s]),v=r(()=>[w.tile,{width:s,height:s,backgroundColor:C,borderColor:t.isCorrect?"transparent":"#FF4444",borderWidth:t.isCorrect?0:2},z],[s,C,t.isCorrect,z]),W=r(()=>[w.number,{fontSize:F}],[F]),N=r(()=>[w.word,{fontSize:j}],[j]);return g(p,{style:v,onPress:y,activeOpacity:.8,disabled:!i||0===t.value,children:[f(n,{style:W,children:t.value}),f(n,{style:N,children:x})]})},(t,e)=>t.tile.id===e.tile.id&&t.tile.value===e.tile.value&&t.tile.isCorrect===e.tile.isCorrect&&t.tile.position.row===e.tile.position.row&&t.tile.position.col===e.tile.position.col&&t.isMovable===e.isMovable&&t.tileSize===e.tileSize);const w=o.create({tile:{margin:u.TILE_GAP/2,justifyContent:"center",alignItems:"center",borderRadius:16,shadowColor:"#000",shadowOffset:{width:0,height:3},shadowOpacity:.15,shadowRadius:6,elevation:6},number:{fontWeight:"bold",color:"#000000",textAlign:"center",marginBottom:2},word:{fontWeight:"normal",color:"#000000",textAlign:"center"}});NumbersTile.displayName="NumbersTile";
1
+ "use strict";import React,{useMemo,useCallback}from"react";import{StyleSheet,TouchableOpacity,Text}from"react-native";import Animated,{useSharedValue,useAnimatedStyle,withSpring,runOnJS}from"react-native-reanimated";import{SLIDING_NUMBERS_COLORS,SLIDING_NUMBERS_GAME_CONFIG,SLIDING_NUMBERS_ANIMATION_CONFIG,NUMBER_WORDS}from"../SlidingNumbersConstants.js";import{isTablet}from"../../../services/UtilsService.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const AnimatedTouchableOpacity=Animated.createAnimatedComponent(TouchableOpacity);export const NumbersTile=React.memo(({tile:e,onPress:t,isMovable:r,tileSize:a})=>{const i=useSharedValue(1),s=useSharedValue(0===e.value?0:1),o=useCallback(()=>{0!==e.value&&r&&(i.value=withSpring(.95,SLIDING_NUMBERS_ANIMATION_CONFIG.TILE_PRESS,()=>{i.value=withSpring(1,SLIDING_NUMBERS_ANIMATION_CONFIG.TILE_PRESS)}),runOnJS(t)(e.id))},[e.value,e.id,r,t,i]),l=useAnimatedStyle(()=>({transform:[{scale:i.value}],opacity:s.value}));if(0===e.value)return null;const{tileColor:n,numberWord:u}=useMemo(()=>{const t=(e.value-1)%SLIDING_NUMBERS_COLORS.TILE_COLORS.length;return{tileColor:SLIDING_NUMBERS_COLORS.TILE_COLORS[t]||SLIDING_NUMBERS_COLORS.TILE_COLORS[0],numberWord:NUMBER_WORDS[e.value]||""}},[e.value]),S=useMemo(()=>[styles.tile,{width:a,height:a,backgroundColor:n,borderColor:e.isCorrect?"transparent":"#FF4444",borderWidth:e.isCorrect?0:2},l],[a,n,e.isCorrect,l]),m=useMemo(()=>[styles.number,{fontSize:Math.max(16,.4*a)}],[a]),d=useMemo(()=>[styles.word,{fontSize:Math.max(8,.15*a)}],[a]);return _jsxs(AnimatedTouchableOpacity,{style:S,onPress:o,activeOpacity:.8,disabled:!r||0===e.value,children:[_jsx(Text,{style:m,children:e.value}),_jsx(Text,{style:d,children:u})]})});const styles=StyleSheet.create({tile:{margin:isTablet?3:SLIDING_NUMBERS_GAME_CONFIG.TILE_GAP/2,justifyContent:"center",alignItems:"center",borderRadius:isTablet?20:16,shadowColor:"#000",shadowOffset:{width:0,height:3},shadowOpacity:.15,shadowRadius:6,elevation:6},number:{fontWeight:"bold",color:"#000000",textAlign:"center",marginBottom:2},word:{fontWeight:"normal",color:"#000000",textAlign:"center"}});NumbersTile.displayName="NumbersTile";
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useMemo","StyleSheet","TouchableOpacity","Text","Animated","useSharedValue","useAnimatedStyle","withSpring","runOnJS","SLIDING_NUMBERS_COLORS","SLIDING_NUMBERS_GAME_CONFIG","SLIDING_NUMBERS_ANIMATION_CONFIG","NUMBER_WORDS","jsx","_jsx","jsxs","_jsxs","AnimatedTouchableOpacity","createAnimatedComponent","NumbersTile","memo","tile","onPress","isMovable","tileSize","scale","opacity","value","handlePress","TILE_PRESS","id","animatedStyle","transform","tileColor","numberWord","colorIndex","TILE_COLORS","length","color","word","numberFontSize","wordFontSize","Math","max","tileStyle","styles","width","height","backgroundColor","borderColor","isCorrect","borderWidth","numberStyle","number","fontSize","wordStyle","style","activeOpacity","disabled","children","prevProps","nextProps","position","row","col","create","margin","TILE_GAP","justifyContent","alignItems","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","fontWeight","textAlign","marginBottom","displayName"],"sourceRoot":"../../../../../src","sources":["games/sliding-numbers/components/NumbersTile.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useMemo","useCallback","StyleSheet","TouchableOpacity","Text","Animated","useSharedValue","useAnimatedStyle","withSpring","runOnJS","SLIDING_NUMBERS_COLORS","SLIDING_NUMBERS_GAME_CONFIG","SLIDING_NUMBERS_ANIMATION_CONFIG","NUMBER_WORDS","isTablet","jsx","_jsx","jsxs","_jsxs","AnimatedTouchableOpacity","createAnimatedComponent","NumbersTile","memo","tile","onPress","isMovable","tileSize","scale","opacity","value","handlePress","TILE_PRESS","id","animatedStyle","transform","tileColor","numberWord","colorIndex","TILE_COLORS","length","tileStyle","styles","width","height","backgroundColor","borderColor","isCorrect","borderWidth","numberStyle","number","fontSize","Math","max","wordStyle","word","style","activeOpacity","disabled","children","create","margin","TILE_GAP","justifyContent","alignItems","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","fontWeight","color","textAlign","marginBottom","displayName"],"sourceRoot":"../../../../../src","sources":["games/sliding-numbers/components/NumbersTile.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import e,{useMemo as o}from"react";import{View as r,Text as t,StyleSheet as i}from"react-native";import{useTimeLeft as n}from"../SlidingNumbersStore.js";import{ScoreBoardContainer as s}from"../../../helpers/index.js";import{jsx as c,jsxs as l}from"react/jsx-runtime";const a=e=>`${Math.floor(e/60)}:${(""+e%60).padStart(2,"0")}`;export const ScoreBoard=e.memo(({offset:e=0})=>{const i=n(),m=o(()=>a(i),[i]),d=o(()=>[f.timeValue,{color:"#3b82f6"}],[]);return c(s,{offset:e,backgroundColor:"rgba(245, 245, 220, 0.6)",borderColor:"rgba(255, 255, 255, 0.3)",children:c(r,{style:f.scoreBoard,children:l(r,{style:f.scoreSection,children:[c(t,{style:f.scoreLabel,children:"Time Left"}),c(t,{style:d,children:m})]})})})});const f=i.create({scoreBoard:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},scoreSection:{alignItems:"center",flex:1},scoreLabel:{fontSize:16,fontWeight:"bold",color:"#4a5568",marginBottom:4},timeValue:{fontSize:25,fontWeight:"bold"},hintText:{fontSize:18,fontWeight:"600",color:"#10b981"}});ScoreBoard.displayName="ScoreBoard";
1
+ "use strict";import{c as _c}from"react/compiler-runtime";import React,{useMemo}from"react";import{View,Text,StyleSheet}from"react-native";import{useTimeElapsed}from"../SlidingNumbersStore.js";import{SLIDING_NUMBERS_COLORS}from"../SlidingNumbersConstants.js";import{ScoreBoardContainer}from"../../../helpers/index.js";import{formatTime}from"../../../services/UtilsService.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export const ScoreBoard=React.memo(e=>{const $=_c(9),{offset:t}=e,o=void 0===t?0:t,r=useTimeElapsed();let s;$[0]!==r?(s=formatTime(r),$[0]=r,$[1]=s):s=$[1];const i=s;let l;$[2]===Symbol.for("react.memo_cache_sentinel")?(l=[styles.timeValue,{color:SLIDING_NUMBERS_COLORS.SCORE_TEXT}],$[2]=l):l=$[2];const n=l;let m,S,a;return $[3]===Symbol.for("react.memo_cache_sentinel")?(m=_jsx(Text,{style:styles.scoreLabel,children:"Timer"}),$[3]=m):m=$[3],$[4]!==i?(S=_jsx(View,{style:styles.scoreBoard,children:_jsxs(View,{style:styles.scoreSection,children:[m,_jsx(Text,{style:n,children:i})]})}),$[4]=i,$[5]=S):S=$[5],$[6]!==o||$[7]!==S?(a=_jsx(ScoreBoardContainer,{offset:o,backgroundColor:SLIDING_NUMBERS_COLORS.SCORE_BACKGROUND,borderColor:SLIDING_NUMBERS_COLORS.SCORE_BORDER,children:S}),$[6]=o,$[7]=S,$[8]=a):a=$[8],a});const styles=StyleSheet.create({scoreBoard:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},scoreSection:{alignItems:"center",flex:1},scoreLabel:{fontSize:16,fontWeight:"bold",color:SLIDING_NUMBERS_COLORS.SCORE_TEXT,marginBottom:4},timeValue:{fontSize:25,fontWeight:"bold"},hintText:{fontSize:18,fontWeight:"600",color:SLIDING_NUMBERS_COLORS.SCORE_TEXT}});ScoreBoard.displayName="ScoreBoard";
@@ -1 +1 @@
1
- {"version":3,"names":["React","useMemo","View","Text","StyleSheet","useTimeLeft","ScoreBoardContainer","jsx","_jsx","jsxs","_jsxs","formatTime","seconds","minutes","Math","floor","remainingSeconds","toString","padStart","ScoreBoard","memo","offset","timeLeft","formattedTime","timeValueStyle","styles","timeValue","color","backgroundColor","borderColor","children","style","scoreBoard","scoreSection","scoreLabel","create","flexDirection","justifyContent","alignItems","flex","fontSize","fontWeight","marginBottom","hintText","displayName"],"sourceRoot":"../../../../../src","sources":["games/sliding-numbers/components/ScoreBoard.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AACrD,SAASC,WAAW,QAAQ,2BAAwB;AACpD,SAASC,mBAAmB,QAAQ,2BAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMvD;AACA,MAAMC,UAAU,GAAIC,OAAe,IAAa;EAC9C,MAAMC,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACH,OAAO,GAAG,EAAE,CAAC;EACxC,MAAMI,gBAAgB,GAAGJ,OAAO,GAAG,EAAE;EACrC,OAAO,GAAGC,OAAO,IAAIG,gBAAgB,CAACC,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;AACrE,CAAC;AAED,OAAO,MAAMC,UAAqC,gBAAGnB,KAAK,CAACoB,IAAI,CAAC,CAAC;EAACC,MAAM,GAAG;AAAC,CAAC,KAAK;EAChF,MAAMC,QAAQ,GAAGjB,WAAW,CAAC,CAAC;;EAE9B;EACA,MAAMkB,aAAa,GAAGtB,OAAO,CAAC,MAAMU,UAAU,CAACW,QAAQ,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;;EAErE;EACA,MAAME,cAAc,GAAGvB,OAAO,CAAC,MAAM,CAACwB,MAAM,CAACC,SAAS,EAAE;IAAEC,KAAK,EAAE;EAAU,CAAC,CAAC,EAAE,EAAE,CAAC;EAElF,oBACEnB,IAAA,CAACF,mBAAmB;IAClBe,MAAM,EAAEA,MAAO;IACfO,eAAe,EAAC,0BAA0B;IAC1CC,WAAW,EAAC,0BAA0B;IAAAC,QAAA,eAEtCtB,IAAA,CAACN,IAAI;MAAC6B,KAAK,EAAEN,MAAM,CAACO,UAAW;MAAAF,QAAA,eAC/BpB,KAAA,CAACR,IAAI;QAAC6B,KAAK,EAAEN,MAAM,CAACQ,YAAa;QAAAH,QAAA,gBAC/BtB,IAAA,CAACL,IAAI;UAAC4B,KAAK,EAAEN,MAAM,CAACS,UAAW;UAAAJ,QAAA,EAAC;QAAS,CAAM,CAAC,eAChDtB,IAAA,CAACL,IAAI;UAAC4B,KAAK,EAAEP,cAAe;UAAAM,QAAA,EACzBP;QAAa,CACV,CAAC;MAAA,CACH;IAAC,CACH;EAAC,CACc,CAAC;AAE1B,CAAC,CAAC;AAEF,MAAME,MAAM,GAAGrB,UAAU,CAAC+B,MAAM,CAAC;EAC/BH,UAAU,EAAE;IACVI,aAAa,EAAE,KAAK;IACpBC,cAAc,EAAE,eAAe;IAC/BC,UAAU,EAAE;EACd,CAAC;EACDL,YAAY,EAAE;IACZK,UAAU,EAAE,QAAQ;IACpBC,IAAI,EAAE;EACR,CAAC;EACDL,UAAU,EAAE;IACVM,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBd,KAAK,EAAE,SAAS;IAAE;IAClBe,YAAY,EAAE;EAChB,CAAC;EACDhB,SAAS,EAAE;IACTc,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EACd,CAAC;EACDE,QAAQ,EAAE;IACRH,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBd,KAAK,EAAE,SAAS,CAAE;EACpB;AACF,CAAC,CAAC;AAEFR,UAAU,CAACyB,WAAW,GAAG,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["React","useMemo","View","Text","StyleSheet","useTimeElapsed","SLIDING_NUMBERS_COLORS","ScoreBoardContainer","formatTime","jsx","_jsx","jsxs","_jsxs","ScoreBoard","memo","t0","$","_c","offset","t1","undefined","timeElapsed","t2","formattedTime","t3","Symbol","for","styles","timeValue","color","SCORE_TEXT","timeValueStyle","t4","style","scoreLabel","children","t5","scoreBoard","scoreSection","t6","backgroundColor","SCORE_BACKGROUND","borderColor","SCORE_BORDER","create","flexDirection","justifyContent","alignItems","flex","fontSize","fontWeight","marginBottom","hintText","displayName"],"sourceRoot":"../../../../../src","sources":["games/sliding-numbers/components/ScoreBoard.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ "use strict";import React,{useCallback,useMemo}from"react";import{View,StyleSheet}from"react-native";import{GestureHandlerRootView,Gesture,GestureDetector}from"react-native-gesture-handler";import{runOnJS}from"react-native-reanimated";import{GameControlButton,GameOverModal,GameSettingsModal}from"../../helpers/index.js";import{DEFAULT_GAME_SETTINGS,GAME_IDS}from"../../services/UtilsService.js";import{GameBackground}from"./components/GameBackground.js";import{GameGrid}from"./components/GameGrid.js";import{ScoreBoard}from"./components/ScoreBoard.js";import{useScore,useGameActions,useGameState,useSnake3DStore}from"./Snake3DStore.js";import{SNAKE_3D_COLORS}from"./Snake3DConstants.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const scoreFormatterFn=e=>`${e}`;export const Snake3D=({settings:e,onSettingsChange:t,onEndGame:r,onReplayGame:n,onShare:o,onShowLeaderboard:a})=>{const s=useScore(),{isPlaying:i,isGameOver:u}=useGameState(),{startGame:l,stopGame:S,resetGame:m,initializeGame:_,updateSettings:G,changeDirection:d}=useGameActions(),O=React.useRef(!1),E=React.useRef(r);E.current=r;const R=useCallback(e=>{if(E.current&&!O.current){const t=useSnake3DStore.getState().score;E.current({status:e,score:t.toString()}),O.current=!0}},[]),p=React.useRef({enableSounds:!0,enableHaptics:!0});React.useEffect(()=>{const t=e?.enableSounds??!0,r=e?.enableHaptics??!0;p.current.enableSounds===t&&p.current.enableHaptics===r||(p.current={enableSounds:t,enableHaptics:r},G(t,r))},[G,e?.enableSounds,e?.enableHaptics]),React.useEffect(()=>(_(),()=>{useSnake3DStore.getState().isPlaying&&!O.current&&R("cancel"),S()}),[_,S]),React.useEffect(()=>{u&&!O.current&&R("lose"),u||(O.current=!1)},[u,R]);const f=useCallback(()=>{O.current=!1,l()},[l]),C=useCallback(()=>{n?.(),m()},[m,n]),b=useCallback(()=>{R("cancel"),S()},[R,S]),g=useCallback(e=>{try{if(!i)return;requestAnimationFrame(()=>{try{d(e)}catch(e){}})}catch(e){}},[i,d]),D=useMemo(()=>Gesture.Pan().onEnd(e=>{const t=Math.abs(e.translationX),r=Math.abs(e.translationY);(t>30||r>30)&&(t>r?e.translationX>0?runOnJS(g)("RIGHT"):runOnJS(g)("LEFT"):e.translationY>0?runOnJS(g)("DOWN"):runOnJS(g)("UP"))}),[g]),A=useMemo(()=>({isPlaying:i,gameOver:u,onStartGame:f,onStopGame:b,onShare:o,onShowLeaderboard:a,startButtonSubtext:"Swipe to move or turn.",buttonColor:SNAKE_3D_COLORS.BUTTON_COLOR,buttonBorderColor:SNAKE_3D_COLORS.BUTTON_BORDER}),[i,u,f,b,o,a]),j=useMemo(()=>({isVisible:u,score:s,onPlayAgain:C,buttonText:"Play Again!",primaryColor:SNAKE_3D_COLORS.GAME_OVER_BG,borderColor:SNAKE_3D_COLORS.GAME_OVER_BORDER,buttonColor:SNAKE_3D_COLORS.GAME_OVER_BUTTON,buttonBorderColor:SNAKE_3D_COLORS.GAME_OVER_BUTTON_BORDER,buttonTextColor:SNAKE_3D_COLORS.GAME_OVER_BUTTON_TEXT,scoreFormatter:scoreFormatterFn}),[u,s,C]),T=useMemo(()=>({gameId:GAME_IDS.SNAKE_3D,settings:e||DEFAULT_GAME_SETTINGS,onSettingsChange:t}),[e,t]),x=e?.offset??0,M=useMemo(()=>[styles.gridContainer,{paddingTop:x}],[x]);return _jsx(GameBackground,{children:_jsxs(GestureHandlerRootView,{style:styles.container,children:[_jsx(GestureDetector,{gesture:D,children:_jsx(View,{style:styles.container,children:_jsx(View,{style:M,children:_jsx(GameGrid,{})})})}),_jsx(ScoreBoard,{offset:x}),_jsx(GameControlButton,{...A}),_jsx(GameOverModal,{...j}),_jsx(GameSettingsModal,{...T})]})})};Snake3D.displayName="Snake3D";const styles=StyleSheet.create({container:{flex:1},gridContainer:{flex:1,justifyContent:"center",alignItems:"center"}});
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useCallback","useMemo","View","StyleSheet","GestureHandlerRootView","Gesture","GestureDetector","runOnJS","GameControlButton","GameOverModal","GameSettingsModal","DEFAULT_GAME_SETTINGS","GAME_IDS","GameBackground","GameGrid","ScoreBoard","useScore","useGameActions","useGameState","useSnake3DStore","SNAKE_3D_COLORS","jsx","_jsx","jsxs","_jsxs","scoreFormatterFn","s","Snake3D","settings","onSettingsChange","onEndGame","onReplayGame","onShare","onShowLeaderboard","score","isPlaying","isGameOver","startGame","stopGame","resetGame","initializeGame","updateSettings","changeDirection","gameReportedRef","useRef","onEndGameRef","current","reportGameEnd","status","currentScore","getState","toString","prevSettingsRef","enableSounds","enableHaptics","useEffect","state","handleStartGame","handleResetGame","handleStopGame","handleSwipe","direction","requestAnimationFrame","error","console","panGesture","Pan","onEnd","event","threshold","absX","Math","abs","translationX","absY","translationY","gameControlButtonProps","gameOver","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","scoreFormatter","gameSettingsModalProps","gameId","SNAKE_3D","offset","gridContainerStyle","styles","gridContainer","paddingTop","children","style","container","gesture","displayName","create","flex","justifyContent","alignItems"],"sourceRoot":"../../../../src","sources":["games/snake-3d/Snake3D.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ "use strict";import{createGameTheme}from"../../services/ThemeUtils.js";import{getGameDimensions}from"../../services/UtilsService.js";const{width:width}=getGameDimensions(),PRIMARY_COLOR="#ffffff",BACKGROUND_COLOR="#3a3a5e";export const SNAKE_3D_THEME=createGameTheme("#ffffff","#3a3a5e");export const SNAKE_3D_GAME_CONFIG={GRID_SIZE:20,CELL_SIZE:Math.floor(width/20),GAME_SPEED:{easy:400,medium:300,hard:200},POINTS_PER_FOOD:50,POINTS_PER_SPECIAL_FOOD:100,DIFFICULTY_MULTIPLIER:{easy:1,medium:2,hard:3},SPECIAL_FOOD_CHANCE:.15,SPECIAL_FOOD_DURATION:5e3,INITIAL_SNAKE_LENGTH:3};export const SNAKE_3D_COLORS={BACKGROUND:"#3a3a5e",PRIMARY:"#ffffff",GRID_BACKGROUND:"rgba(255, 255, 255, 0.15)",GRID_BORDER:"rgba(255, 255, 255, 0.3)",GRID_LINE:"rgba(255, 255, 255, 0.1)",SNAKE_HEAD:"#00ff88",SNAKE_BODY:"#00cc6a",SNAKE_TAIL:"#00994d",SNAKE_OUTLINE:"#004d26",FOOD_NORMAL:"#ff4757",FOOD_SPECIAL:"#ffa502",FOOD_GLOW:"rgba(255, 71, 87, 0.5)",SCORE_BACKGROUND:SNAKE_3D_THEME.sectionBackgroundColor,SCORE_BORDER:SNAKE_3D_THEME.buttonSelectedColor,SCORE_TEXT:SNAKE_3D_THEME.headerTextColor,BUTTON_COLOR:SNAKE_3D_THEME.headerBackgroundColor,BUTTON_BORDER:SNAKE_3D_THEME.buttonSelectedColor,GAME_OVER_BG:SNAKE_3D_THEME.buttonSelectedColor,GAME_OVER_BORDER:SNAKE_3D_THEME.buttonSelectedColor,GAME_OVER_BUTTON:"#ffffff",GAME_OVER_BUTTON_BORDER:"#ffffff",GAME_OVER_BUTTON_TEXT:"#000000",COLLISION_COLOR:"#ff4757"};export const DIRECTIONS={UP:{x:0,y:-1},DOWN:{x:0,y:1},LEFT:{x:-1,y:0},RIGHT:{x:1,y:0}};export const SNAKE_3D_SOUNDS={EAT:{text:"Nom!",pitch:1.2,rate:1.5},SPECIAL:{text:"Bonus!",pitch:1.5,rate:2},COLLISION:{text:"Ouch!",pitch:.8,rate:1.2},WIN:{text:"Victory!",pitch:1.6,rate:1.8},LOSE:{text:"Game Over",pitch:.8,rate:1.2}};
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createGameTheme","getGameDimensions","width","PRIMARY_COLOR","BACKGROUND_COLOR","SNAKE_3D_THEME","SNAKE_3D_GAME_CONFIG","GRID_SIZE","CELL_SIZE","Math","floor","GAME_SPEED","easy","medium","hard","POINTS_PER_FOOD","POINTS_PER_SPECIAL_FOOD","DIFFICULTY_MULTIPLIER","SPECIAL_FOOD_CHANCE","SPECIAL_FOOD_DURATION","INITIAL_SNAKE_LENGTH","SNAKE_3D_COLORS","BACKGROUND","PRIMARY","GRID_BACKGROUND","GRID_BORDER","GRID_LINE","SNAKE_HEAD","SNAKE_BODY","SNAKE_TAIL","SNAKE_OUTLINE","FOOD_NORMAL","FOOD_SPECIAL","FOOD_GLOW","SCORE_BACKGROUND","sectionBackgroundColor","SCORE_BORDER","buttonSelectedColor","SCORE_TEXT","headerTextColor","BUTTON_COLOR","headerBackgroundColor","BUTTON_BORDER","GAME_OVER_BG","GAME_OVER_BORDER","GAME_OVER_BUTTON","GAME_OVER_BUTTON_BORDER","GAME_OVER_BUTTON_TEXT","COLLISION_COLOR","DIRECTIONS","UP","x","y","DOWN","LEFT","RIGHT","SNAKE_3D_SOUNDS","EAT","text","pitch","rate","SPECIAL","COLLISION","WIN","LOSE"],"sourceRoot":"../../../../src","sources":["games/snake-3d/Snake3DConstants.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ "use strict";import{SNAKE_3D_GAME_CONFIG,DIRECTIONS}from"./Snake3DConstants.js";export class Snake3DService{nextId=1;initializeSnake(){const e=Math.floor(SNAKE_3D_GAME_CONFIG.GRID_SIZE/2),t=Math.floor(SNAKE_3D_GAME_CONFIG.GRID_SIZE/2),n=[];for(let r=0;r<SNAKE_3D_GAME_CONFIG.INITIAL_SNAKE_LENGTH;r++)n.push({id:this.nextId++,x:e-r,y:t});return n}generateFood(e,t=!1){let n,r=0;do{n={x:Math.floor(Math.random()*SNAKE_3D_GAME_CONFIG.GRID_SIZE),y:Math.floor(Math.random()*SNAKE_3D_GAME_CONFIG.GRID_SIZE)},r++}while(r<100&&this.isPositionOnSnake(n,e));const i={id:this.nextId++,x:n.x,y:n.y,isSpecial:t};return t&&(i.expiresAt=Date.now()+SNAKE_3D_GAME_CONFIG.SPECIAL_FOOD_DURATION),i}isPositionOnSnake(e,t){return t.some(t=>t.x===e.x&&t.y===e.y)}moveSnake(e,t){const n=e[0];if(!n)return e;const r=DIRECTIONS[t],i=[{id:this.nextId++,x:n.x+r.x,y:n.y+r.y},...e];return i.pop(),i}checkWallCollision(e){return e.x<0||e.x>=SNAKE_3D_GAME_CONFIG.GRID_SIZE||e.y<0||e.y>=SNAKE_3D_GAME_CONFIG.GRID_SIZE}checkSelfCollision(e){const t=e[0];if(!t)return!1;for(let n=1;n<e.length;n++){const r=e[n];if(r&&t.x===r.x&&t.y===r.y)return!0}return!1}checkFoodCollision(e,t){return e.x===t.x&&e.y===t.y}growSnake(e){const t=e[e.length-1];if(!t)return e;const n={id:this.nextId++,x:t.x,y:t.y};return[...e,n]}isValidDirectionChange(e,t){return{UP:"DOWN",DOWN:"UP",LEFT:"RIGHT",RIGHT:"LEFT"}[e]!==t}getOppositeDirection(e){return{UP:"DOWN",DOWN:"UP",LEFT:"RIGHT",RIGHT:"LEFT"}[e]}resetIdCounter(){this.nextId=1}isSpecialFoodExpired(e){return!(!e.isSpecial||!e.expiresAt)&&Date.now()>e.expiresAt}calculateScore(e){return(e?SNAKE_3D_GAME_CONFIG.POINTS_PER_SPECIAL_FOOD:SNAKE_3D_GAME_CONFIG.POINTS_PER_FOOD)*SNAKE_3D_GAME_CONFIG.DIFFICULTY_MULTIPLIER.medium}}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["SNAKE_3D_GAME_CONFIG","DIRECTIONS","Snake3DService","nextId","initializeSnake","centerX","Math","floor","GRID_SIZE","centerY","snake","i","INITIAL_SNAKE_LENGTH","push","id","x","y","generateFood","isSpecial","position","attempts","maxAttempts","random","isPositionOnSnake","food","expiresAt","Date","now","SPECIAL_FOOD_DURATION","some","segment","moveSnake","direction","head","directionVector","newHead","newSnake","pop","checkWallCollision","checkSelfCollision","length","checkFoodCollision","growSnake","tail","newSegment","isValidDirectionChange","currentDirection","newDirection","opposites","UP","DOWN","LEFT","RIGHT","getOppositeDirection","resetIdCounter","isSpecialFoodExpired","calculateScore","isSpecialFood","baseScore","POINTS_PER_SPECIAL_FOOD","POINTS_PER_FOOD","multiplier","DIFFICULTY_MULTIPLIER","medium"],"sourceRoot":"../../../../src","sources":["games/snake-3d/Snake3DService.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ "use strict";import{create}from"zustand";import{subscribeWithSelector}from"zustand/middleware";import{useShallow}from"zustand/react/shallow";import{immerMiddleware}from"../../services/UtilsService.js";import{Snake3DService}from"./Snake3DService.js";import{SNAKE_3D_GAME_CONFIG,SNAKE_3D_SOUNDS}from"./Snake3DConstants.js";import{playSound}from"../../services/SoundsService.js";import{playHaptic,HapticType}from"../../services/HapticsService.js";const gameService=new Snake3DService;export const useSnake3DStore=create()(subscribeWithSelector(immerMiddleware((e,i)=>({snake:gameService.initializeSnake(),food:null,direction:"RIGHT",nextDirection:"RIGHT",score:0,timeLeft:300,isPlaying:!1,isGameOver:!1,isPaused:!1,enableSounds:!0,enableHaptics:!0,moveTimer:null,countdownTimer:null,startGame:()=>{const n=i();n.moveTimer&&clearInterval(n.moveTimer),n.countdownTimer&&clearInterval(n.countdownTimer);const t=gameService.generateFood(n.snake,!1),o=SNAKE_3D_GAME_CONFIG.GAME_SPEED.medium,a=setInterval(()=>{const e=i();e.isPlaying&&!e.isPaused&&e.gameLoop()},o),r=setInterval(()=>{const e=i();e.isPlaying&&!e.isPaused&&e.decrementTime()},1e3);e(e=>{e.isPlaying=!0,e.isPaused=!1,e.food=t,e.moveTimer=a,e.countdownTimer=r})},stopGame:()=>{const n=i();n.moveTimer&&clearInterval(n.moveTimer),n.countdownTimer&&clearInterval(n.countdownTimer),playHaptic(HapticType.LIGHT,n.enableHaptics),e(e=>{e.isPlaying=!1,e.isGameOver=!1,e.isPaused=!1,e.moveTimer=null,e.countdownTimer=null}),n.initializeGame()},pauseGame:()=>{e(e=>{e.isPaused=!0})},resumeGame:()=>{e(e=>{e.isPaused=!1})},resetGame:()=>{i().initializeGame()},initializeGame:()=>{const n=i();n.moveTimer&&clearInterval(n.moveTimer),n.countdownTimer&&clearInterval(n.countdownTimer),gameService.resetIdCounter();const t=gameService.initializeSnake();e(e=>{e.snake=t,e.food=null,e.direction="RIGHT",e.nextDirection="RIGHT",e.score=0,e.timeLeft=300,e.isPlaying=!1,e.isGameOver=!1,e.isPaused=!1,e.moveTimer=null,e.countdownTimer=null})},changeDirection:n=>{const t=i();t.isPlaying&&!t.isPaused&&gameService.isValidDirectionChange(t.direction,n)&&e(e=>{e.nextDirection=n})},gameLoop:()=>{const n=i();!n.isPlaying||n.isPaused||n.isGameOver||e(e=>{e.direction=e.nextDirection;const i=gameService.moveSnake(e.snake,e.direction),n=i[0];if(n){if(gameService.checkWallCollision(n))return e.isGameOver=!0,e.isPlaying=!1,e.moveTimer&&(clearInterval(e.moveTimer),e.moveTimer=null),e.countdownTimer&&(clearInterval(e.countdownTimer),e.countdownTimer=null),playSound(SNAKE_3D_SOUNDS.COLLISION,e.enableSounds),void playHaptic(HapticType.HEAVY,e.enableHaptics);if(gameService.checkSelfCollision(i))return e.isGameOver=!0,e.isPlaying=!1,e.moveTimer&&(clearInterval(e.moveTimer),e.moveTimer=null),e.countdownTimer&&(clearInterval(e.countdownTimer),e.countdownTimer=null),playSound(SNAKE_3D_SOUNDS.COLLISION,e.enableSounds),void playHaptic(HapticType.HEAVY,e.enableHaptics);if(e.food&&gameService.checkFoodCollision(n,e.food)){const n=gameService.growSnake(i);e.snake=n;const t=gameService.calculateScore(e.food.isSpecial);e.score+=t;const o=e.food.isSpecial?SNAKE_3D_SOUNDS.SPECIAL:SNAKE_3D_SOUNDS.EAT;playSound(o,e.enableSounds),playHaptic(e.food.isSpecial?HapticType.HEAVY:HapticType.MEDIUM,e.enableHaptics);const a=Math.random()<SNAKE_3D_GAME_CONFIG.SPECIAL_FOOD_CHANCE;e.food=gameService.generateFood(n,a)}else e.snake=i;e.food&&gameService.isSpecialFoodExpired(e.food)&&(e.food=gameService.generateFood(e.snake,!1))}})},updateSettings:(i,n)=>{e(e=>{e.enableSounds=i,e.enableHaptics=n})},decrementTime:()=>{e(e=>{e.timeLeft>0?e.timeLeft--:(e.isGameOver=!0,e.isPlaying=!1,e.moveTimer&&(clearInterval(e.moveTimer),e.moveTimer=null),e.countdownTimer&&(clearInterval(e.countdownTimer),e.countdownTimer=null))})}}))));export const useSnake=()=>useSnake3DStore(_temp);export const useFood=()=>useSnake3DStore(_temp2);export const useScore=()=>useSnake3DStore(_temp3);export const useTimeLeft=()=>useSnake3DStore(_temp4);export const useIsPlaying=()=>useSnake3DStore(_temp5);export const useIsGameOver=()=>useSnake3DStore(_temp6);export const useIsPaused=()=>useSnake3DStore(_temp7);export const useGameActions=()=>useSnake3DStore(useShallow(_temp8));export const useGameState=()=>useSnake3DStore(useShallow(_temp9));function _temp(e){return e.snake}function _temp2(e){return e.food}function _temp3(e){return e.score}function _temp4(e){return e.timeLeft}function _temp5(e){return e.isPlaying}function _temp6(e){return e.isGameOver}function _temp7(e){return e.isPaused}function _temp8(e){return{startGame:e.startGame,stopGame:e.stopGame,resetGame:e.resetGame,pauseGame:e.pauseGame,resumeGame:e.resumeGame,initializeGame:e.initializeGame,changeDirection:e.changeDirection,updateSettings:e.updateSettings}}function _temp9(e){return{isPlaying:e.isPlaying,isGameOver:e.isGameOver,isPaused:e.isPaused}}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["create","subscribeWithSelector","useShallow","immerMiddleware","Snake3DService","SNAKE_3D_GAME_CONFIG","SNAKE_3D_SOUNDS","playSound","playHaptic","HapticType","gameService","useSnake3DStore","set","get","snake","initializeSnake","food","direction","nextDirection","score","timeLeft","isPlaying","isGameOver","isPaused","enableSounds","enableHaptics","moveTimer","countdownTimer","startGame","state","clearInterval","initialFood","generateFood","gameSpeed","GAME_SPEED","medium","setInterval","currentState","gameLoop","decrementTime","stopGame","LIGHT","draft","initializeGame","pauseGame","resumeGame","resetGame","resetIdCounter","newSnake","timeLimit","changeDirection","newDirection","isValidDirectionChange","moveSnake","head","checkWallCollision","COLLISION","HEAVY","checkSelfCollision","checkFoodCollision","grownSnake","growSnake","points","calculateScore","isSpecial","sound","SPECIAL","EAT","MEDIUM","Math","random","SPECIAL_FOOD_CHANCE","isSpecialFoodExpired","updateSettings","useSnake","_temp","useFood","_temp2","useScore","_temp3","useTimeLeft","_temp4","useIsPlaying","_temp5","useIsGameOver","_temp6","useIsPaused","_temp7","useGameActions","_temp8","useGameState","_temp9"],"sourceRoot":"../../../../src","sources":["games/snake-3d/Snake3DStore.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ "use strict";import{c as _c}from"react/compiler-runtime";import React from"react";import{Canvas,Rect,LinearGradient,vec,Circle,RoundedRect}from"@shopify/react-native-skia";import{Dimensions,View,StyleSheet}from"react-native";import{Fragment as _Fragment,jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const{width:width,height:height}=Dimensions.get("window"),SNAKE_NEON_COLORS=["#00ff88","#00ffaa","#00cc6a","#00dd77","#00ff99","#00ee77","#00bb55","#00aa44"],FLOATING_ELEMENTS_DATA=(()=>{const t=[],e=t=>{const e=43758.5453*Math.sin(12.9898*t+78.233*t);return e-Math.floor(e)};for(let r=0;r<20;r++){const i=width/20*r,h=height/20*r,o=e(2*r),a=e(3*r),n=e(5*r),s=i+60*Math.sin(.5*r)+80*o,_=h+70*Math.cos(.7*r)+100*a,l=15+25*n,d=r%SNAKE_NEON_COLORS.length,N=.15+.1*Math.sin(r),m=Math.max(l/2,Math.min(width-l,s)),O=Math.max(l/2,Math.min(height-l,_)),S=`${SNAKE_NEON_COLORS[d]}${Math.floor(255*N).toString(16).padStart(2,"0")}`;t.push({type:r%3==0?"circle":"rect",key:`element-${r}`,x:m,y:O,size:l,color:S})}return t})(),GRID_LINES_V=Array.from({length:Math.floor(width/70)},(t,e)=>70*e),GRID_LINES_H=Array.from({length:Math.floor(height/70)},(t,e)=>70*e),FloatingElements=React.memo(()=>{const $=_c(1);let t;return $[0]===Symbol.for("react.memo_cache_sentinel")?(t=_jsx(_Fragment,{children:FLOATING_ELEMENTS_DATA.map(_temp)}),$[0]=t):t=$[0],t});FloatingElements.displayName="FloatingElements";const GridPattern=React.memo(()=>{const $=_c(1);let t;return $[0]===Symbol.for("react.memo_cache_sentinel")?(t=_jsxs(_Fragment,{children:[GRID_LINES_V.map(_temp2),GRID_LINES_H.map(_temp3)]}),$[0]=t):t=$[0],t});GridPattern.displayName="GridPattern";const styles=StyleSheet.create({container:{flex:1},canvas:{position:"absolute",top:0,left:0,right:0,bottom:0,width:width,height:height}});export const GameBackground=React.memo(t=>{const $=_c(5),{children:e}=t;let r,i,h,o;return $[0]===Symbol.for("react.memo_cache_sentinel")?(r=_jsx(Rect,{x:0,y:0,width:width,height:height,children:_jsx(LinearGradient,{start:vec(0,0),end:vec(width,height),colors:["#1a1a2e","#252541","#1e3a3a","#1a2e1a","#1a1a2e"]})}),$[0]=r):r=$[0],$[1]===Symbol.for("react.memo_cache_sentinel")?(i=_jsx(Rect,{x:0,y:0,width:width,height:height,children:_jsx(LinearGradient,{start:vec(0,0),end:vec(width/2,height/2),colors:[`${SNAKE_NEON_COLORS[0]}15`,"transparent",`${SNAKE_NEON_COLORS[1]}10`,"transparent",`${SNAKE_NEON_COLORS[4]}15`,"transparent"]})}),$[1]=i):i=$[1],$[2]===Symbol.for("react.memo_cache_sentinel")?(h=_jsxs(Canvas,{style:styles.canvas,children:[r,i,_jsx(Rect,{x:0,y:0,width:width,height:height,children:_jsx(LinearGradient,{start:vec(width,0),end:vec(0,height),colors:[`${SNAKE_NEON_COLORS[2]}12`,"transparent",`${SNAKE_NEON_COLORS[5]}10`,"transparent",`${SNAKE_NEON_COLORS[3]}12`,"transparent"]})}),_jsx(FloatingElements,{}),_jsx(Circle,{cx:.12*width,cy:.15*height,r:35,color:`${SNAKE_NEON_COLORS[0]}30`}),_jsx(RoundedRect,{x:.82*width,y:.78*height,width:45,height:45,r:12,color:`${SNAKE_NEON_COLORS[1]}35`}),_jsx(Circle,{cx:.85*width,cy:.2*height,r:28,color:`${SNAKE_NEON_COLORS[2]}30`}),_jsx(RoundedRect,{x:.08*width,y:.75*height,width:50,height:50,r:15,color:`${SNAKE_NEON_COLORS[3]}35`}),_jsx(Circle,{cx:.5*width,cy:.1*height,r:25,color:`${SNAKE_NEON_COLORS[4]}28`}),_jsx(RoundedRect,{x:.1*width,y:.45*height,width:40,height:40,r:10,color:`${SNAKE_NEON_COLORS[5]}32`}),_jsx(Circle,{cx:.88*width,cy:.55*height,r:30,color:`${SNAKE_NEON_COLORS[6]}30`}),_jsx(RoundedRect,{x:.55*width,y:.85*height,width:35,height:35,r:8,color:`${SNAKE_NEON_COLORS[7]}33`}),_jsx(Circle,{cx:.3*width,cy:.3*height,r:20,color:`${SNAKE_NEON_COLORS[0]}25`}),_jsx(Circle,{cx:.7*width,cy:.4*height,r:24,color:`${SNAKE_NEON_COLORS[1]}28`}),_jsx(Circle,{cx:.4*width,cy:.65*height,r:18,color:`${SNAKE_NEON_COLORS[2]}26`}),_jsx(GridPattern,{})]}),$[2]=h):h=$[2],$[3]!==e?(o=_jsxs(View,{style:styles.container,children:[h,e]}),$[3]=e,$[4]=o):o=$[4],o});function _temp(t){const{type:e,key:r,x:i,y:h,size:o,color:a}=t;return"circle"===e?_jsx(Circle,{cx:i+o/2,cy:h+o/2,r:o/2,color:a},r):_jsx(RoundedRect,{x:i,y:h,width:o,height:o,r:.3*o,color:a},r)}function _temp2(t,e){return _jsx(Rect,{x:t,y:0,width:1,height:height,color:"rgba(0, 255, 136, 0.04)"},`grid-v-${e}`)}function _temp3(t,e){return _jsx(Rect,{x:0,y:t,width:width,height:1,color:"rgba(0, 255, 136, 0.04)"},`grid-h-${e}`)}GameBackground.displayName="GameBackground";
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Canvas","Rect","LinearGradient","vec","Circle","RoundedRect","Dimensions","View","StyleSheet","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","width","height","get","SNAKE_NEON_COLORS","FLOATING_ELEMENTS_DATA","elements","elementCount","seededRandom","seed","x","Math","sin","floor","i","baseX","baseY","randX","randY","randSize","y","cos","size","colorIndex","length","opacity","elementX","max","min","elementY","colorHex","toString","padStart","push","type","key","color","GRID_LINES_V","Array","from","_","GRID_LINES_H","FloatingElements","memo","$","_c","t0","Symbol","for","children","map","_temp","displayName","GridPattern","_temp2","_temp3","styles","create","container","flex","canvas","position","top","left","right","bottom","GameBackground","t1","start","end","colors","t2","t3","style","cx","cy","r","t4","i_0"],"sourceRoot":"../../../../../src","sources":["games/snake-3d/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ "use strict";import{c as _c}from"react/compiler-runtime";import React,{useMemo}from"react";import{View,StyleSheet}from"react-native";import{Canvas,RoundedRect,Circle,Group,Shadow}from"@shopify/react-native-skia";import{useSnake,useFood}from"../Snake3DStore.js";import{SNAKE_3D_GAME_CONFIG,SNAKE_3D_COLORS}from"../Snake3DConstants.js";import{jsx as _jsx,Fragment as _Fragment,jsxs as _jsxs}from"react/jsx-runtime";const CELL_SIZE=SNAKE_3D_GAME_CONFIG.CELL_SIZE,GRID_SIZE=SNAKE_3D_GAME_CONFIG.GRID_SIZE,CANVAS_SIZE=CELL_SIZE*GRID_SIZE,SEG_INSET=Math.round(.12*CELL_SIZE),SEG_SIZE=CELL_SIZE-2*SEG_INSET,SEG_R_HEAD=Math.round(.44*CELL_SIZE),SEG_R_BODY=Math.round(.33*CELL_SIZE),HIGHLIGHT_R=Math.round(.22*CELL_SIZE),GRID_R=Math.round(.67*CELL_SIZE),SHADOW_BLUR=Math.round(.22*CELL_SIZE),SHADOW_DY=Math.round(.14*CELL_SIZE),EDGE_W=Math.max(2,Math.round(.11*CELL_SIZE)),GRID_LINE_INDICES=Array.from({length:GRID_SIZE+1},(_,e)=>e),VERTICAL_LINES_DATA=GRID_LINE_INDICES.map(_=>({key:`v-${_}`,x:_===GRID_SIZE?CANVAS_SIZE-EDGE_W:_*CELL_SIZE,width:0===_||_===GRID_SIZE?EDGE_W:1})),HORIZONTAL_LINES_DATA=GRID_LINE_INDICES.map(_=>({key:`h-${_}`,y:_===GRID_SIZE?CANVAS_SIZE-EDGE_W:_*CELL_SIZE,height:0===_||_===GRID_SIZE?EDGE_W:1})),GridBackground=React.memo(()=>{const $=_c(1);let _;return $[0]===Symbol.for("react.memo_cache_sentinel")?(_=_jsxs(_Fragment,{children:[_jsx(RoundedRect,{x:1,y:1,width:CANVAS_SIZE-2,height:CANVAS_SIZE-2,r:GRID_R,color:SNAKE_3D_COLORS.GRID_BACKGROUND,children:_jsx(Shadow,{dx:0,dy:SHADOW_DY,blur:SHADOW_BLUR,color:"rgba(0, 0, 0, 0.3)"})}),_jsx(RoundedRect,{x:1,y:1,width:CANVAS_SIZE-2,height:CANVAS_SIZE-2,r:GRID_R,color:SNAKE_3D_COLORS.GRID_BORDER,style:"stroke",strokeWidth:EDGE_W})]}),$[0]=_):_=$[0],_});GridBackground.displayName="GridBackground";const GridLines=React.memo(()=>{const $=_c(1);let _;return $[0]===Symbol.for("react.memo_cache_sentinel")?(_=_jsxs(_Fragment,{children:[VERTICAL_LINES_DATA.map(_temp),HORIZONTAL_LINES_DATA.map(_temp2)]}),$[0]=_):_=$[0],_});GridLines.displayName="GridLines";export const GameGrid=React.memo(()=>{const $=_c(28),_=useSnake(),e=useFood();let E;$[0]===Symbol.for("react.memo_cache_sentinel")?(E={width:CANVAS_SIZE,height:CANVAS_SIZE},$[0]=E):E=$[0];const S=E;let r;$[1]===Symbol.for("react.memo_cache_sentinel")?(r=[styles.gridContainer,{width:CANVAS_SIZE,height:CANVAS_SIZE}],$[1]=r):r=$[1];const t=r;let o;_:{if(!e){o=null;break _}const _=e.x*CELL_SIZE+CELL_SIZE/2,E=e.y*CELL_SIZE+CELL_SIZE/2,S=e.isSpecial?"rgba(255, 165, 2, 0.3)":SNAKE_3D_COLORS.FOOD_GLOW,r=e.isSpecial?SNAKE_3D_COLORS.FOOD_SPECIAL:SNAKE_3D_COLORS.FOOD_NORMAL;let t,I,L;$[2]!==_||$[3]!==E||$[4]!==S?(t=_jsx(Circle,{cx:_,cy:E,r:.6*CELL_SIZE,color:S}),$[2]=_,$[3]=E,$[4]=S,$[5]=t):t=$[5],$[6]===Symbol.for("react.memo_cache_sentinel")?(I=_jsx(Shadow,{dx:0,dy:SHADOW_DY,blur:SHADOW_BLUR,color:"rgba(0, 0, 0, 0.4)"}),$[6]=I):I=$[6],$[7]!==r||$[8]!==_||$[9]!==E?(L=_jsx(Circle,{cx:_,cy:E,r:.4*CELL_SIZE,color:r,children:I}),$[7]=r,$[8]=_,$[9]=E,$[10]=L):L=$[10];const n=_-.1*CELL_SIZE,s=E-.1*CELL_SIZE;let i,a;$[11]!==n||$[12]!==s?(i=_jsx(Circle,{cx:n,cy:s,r:.15*CELL_SIZE,color:"rgba(255, 255, 255, 0.6)"}),$[11]=n,$[12]=s,$[13]=i):i=$[13],$[14]!==t||$[15]!==L||$[16]!==i?(a=_jsxs(Group,{children:[t,L,i]}),$[14]=t,$[15]=L,$[16]=i,$[17]=a):a=$[17],o=a}const I=o,L=_.length;let n;if($[18]!==_||$[19]!==L){let e;$[21]!==L?(e=(_,e)=>{const E=0===e,S=e===L-1,r=E?SNAKE_3D_COLORS.SNAKE_HEAD:S?SNAKE_3D_COLORS.SNAKE_TAIL:SNAKE_3D_COLORS.SNAKE_BODY,t=_.x*CELL_SIZE,o=_.y*CELL_SIZE;return _jsxs(Group,{children:[_jsx(RoundedRect,{x:t+SEG_INSET,y:o+SEG_INSET,width:SEG_SIZE,height:SEG_SIZE,r:E?SEG_R_HEAD:SEG_R_BODY,color:r,children:_jsx(Shadow,{dx:0,dy:SHADOW_DY,blur:SHADOW_BLUR,color:"rgba(0, 0, 0, 0.3)"})}),_jsx(RoundedRect,{x:t+.2*CELL_SIZE,y:o+.2*CELL_SIZE,width:.3*CELL_SIZE,height:.3*CELL_SIZE,r:HIGHLIGHT_R,color:"rgba(255, 255, 255, 0.3)"}),E&&_jsxs(_Fragment,{children:[_jsx(Circle,{cx:t+.35*CELL_SIZE,cy:o+.4*CELL_SIZE,r:.08*CELL_SIZE,color:"#000000"}),_jsx(Circle,{cx:t+.65*CELL_SIZE,cy:o+.4*CELL_SIZE,r:.08*CELL_SIZE,color:"#000000"})]})]},_.id)},$[21]=L,$[22]=e):e=$[22],n=_.map(e),$[18]=_,$[19]=L,$[20]=n}else n=$[20];const s=n;let i,a,C;return $[23]===Symbol.for("react.memo_cache_sentinel")?(i=_jsx(GridBackground,{}),a=_jsx(GridLines,{}),$[23]=i,$[24]=a):(i=$[23],a=$[24]),$[25]!==I||$[26]!==s?(C=_jsx(View,{style:styles.container,children:_jsx(View,{style:t,children:_jsx(Canvas,{style:S,children:_jsxs(Group,{children:[i,a,I,s]})})})}),$[25]=I,$[26]=s,$[27]=C):C=$[27],C});GameGrid.displayName="GameGrid";const styles=StyleSheet.create({container:{flex:1,justifyContent:"center",alignItems:"center"},gridContainer:{}});function _temp(_){const{key:e,x:E,width:S}=_;return _jsx(RoundedRect,{x:E,y:0,width:S,height:CANVAS_SIZE,r:0,color:SNAKE_3D_COLORS.GRID_LINE},e)}function _temp2(_){const{key:e,y:E,height:S}=_;return _jsx(RoundedRect,{x:0,y:E,width:CANVAS_SIZE,height:S,r:0,color:SNAKE_3D_COLORS.GRID_LINE},e)}
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useMemo","View","StyleSheet","Canvas","RoundedRect","Circle","Group","Shadow","useSnake","useFood","SNAKE_3D_GAME_CONFIG","SNAKE_3D_COLORS","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","CELL_SIZE","GRID_SIZE","CANVAS_SIZE","SEG_INSET","Math","round","SEG_SIZE","SEG_R_HEAD","SEG_R_BODY","HIGHLIGHT_R","GRID_R","SHADOW_BLUR","SHADOW_DY","EDGE_W","max","GRID_LINE_INDICES","Array","from","length","_","i","VERTICAL_LINES_DATA","map","key","x","width","HORIZONTAL_LINES_DATA","y","height","GridBackground","memo","$","_c","t0","Symbol","for","children","color","GRID_BACKGROUND","dx","GRID_BORDER","style","displayName","GridLines","_temp","_temp2","GameGrid","snake","food","canvasStyle","t1","styles","gridContainer","gridContainerStyle","t2","bb0","centerX","centerY","glowColor","isSpecial","FOOD_GLOW","bodyColor","FOOD_SPECIAL","FOOD_NORMAL","t3","r","t4","t5","t6","t7","t8","cx","cy","t9","foodElement","snakeLength","segment","index","isHead","isTail","segmentColor","SNAKE_HEAD","SNAKE_TAIL","SNAKE_BODY","segX","segY","id","snakeElements","container","create","flex","justifyContent","alignItems","GRID_LINE","key_0"],"sourceRoot":"../../../../../src","sources":["games/snake-3d/components/GameGrid.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1 @@
1
+ "use strict";import{c as _c}from"react/compiler-runtime";import React from"react";import{View,Text,StyleSheet}from"react-native";import{useScore,useTimeLeft}from"../Snake3DStore.js";import{SNAKE_3D_COLORS}from"../Snake3DConstants.js";import{ScoreBoardContainer}from"../../../helpers/index.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";export const ScoreBoard=React.memo(e=>{const $=_c(14),{offset:t}=e,r=void 0===t?0:t,o=useScore(),s=useTimeLeft(),l=Math.floor(s/60),n=s%60;let i;$[0]!==n?(i=n.toString().padStart(2,"0"),$[0]=n,$[1]=i):i=$[1];const a=`${l}:${i}`;let m,S,_,f,x,d;return $[2]===Symbol.for("react.memo_cache_sentinel")?(m=_jsx(Text,{style:styles.label,children:"Score"}),$[2]=m):m=$[2],$[3]!==o?(S=_jsxs(View,{style:styles.scoreItem,children:[m,_jsx(Text,{style:styles.value,children:o})]}),$[3]=o,$[4]=S):S=$[4],$[5]===Symbol.for("react.memo_cache_sentinel")?(_=_jsx(Text,{style:styles.label,children:"Time"}),$[5]=_):_=$[5],$[6]!==a?(f=_jsxs(View,{style:styles.scoreItem,children:[_,_jsx(Text,{style:styles.value,children:a})]}),$[6]=a,$[7]=f):f=$[7],$[8]!==S||$[9]!==f?(x=_jsxs(View,{style:styles.scoreContainer,children:[S,f]}),$[8]=S,$[9]=f,$[10]=x):x=$[10],$[11]!==r||$[12]!==x?(d=_jsx(ScoreBoardContainer,{offset:r,backgroundColor:SNAKE_3D_COLORS.SCORE_BACKGROUND,borderColor:SNAKE_3D_COLORS.SCORE_BACKGROUND,children:x}),$[11]=r,$[12]=x,$[13]=d):d=$[13],d});ScoreBoard.displayName="ScoreBoard";const styles=StyleSheet.create({scoreContainer:{flex:1,flexDirection:"row",justifyContent:"space-around",alignItems:"center"},scoreItem:{alignItems:"center"},label:{fontSize:16,color:SNAKE_3D_COLORS.SCORE_TEXT,marginBottom:4},value:{fontSize:25,color:SNAKE_3D_COLORS.SCORE_TEXT,fontWeight:"bold"}});
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","View","Text","StyleSheet","useScore","useTimeLeft","SNAKE_3D_COLORS","ScoreBoardContainer","jsx","_jsx","jsxs","_jsxs","ScoreBoard","memo","t0","$","_c","offset","t1","undefined","score","timeLeft","minutes","Math","floor","seconds","t2","toString","padStart","formattedTime","t3","Symbol","for","style","styles","label","children","t4","scoreItem","value","t5","t6","t7","scoreContainer","t8","backgroundColor","SCORE_BACKGROUND","borderColor","displayName","create","flex","flexDirection","justifyContent","alignItems","fontSize","color","SCORE_TEXT","marginBottom","fontWeight"],"sourceRoot":"../../../../../src","sources":["games/snake-3d/components/ScoreBoard.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import t,{useEffect as o,useCallback as e,useMemo as r}from"react";import{View as n,StyleSheet as i,Dimensions as s}from"react-native";import{GestureHandlerRootView as a}from"react-native-gesture-handler";import{useSpaceFighterStore as c}from"./SpaceFighterStore.js";import{createSpaceFighterService as f}from"./SpaceFighterService.js";import{getDifficultySettings as m}from"./SpaceFighterConstants.js";import{ScoreBoard as l,GameArea as p,GameBackground as d}from"./components/index.js";import{GameControlButton as g,GameOverModal as h,useGameErrorHandler as u,GameErrorType as b}from"../../helpers/index.js";import{GameSettingsModal as S}from"../../helpers/index.js";import{GAME_IDS as x,DEFAULT_GAME_SETTINGS as j}from"../../services/UtilsService.js";import{jsx as C,jsxs as v}from"react/jsx-runtime";const{width:w,height:y}=s.get("window");export const SpaceFighter=({settings:i=j,onSettingsChange:s,onEndGame:B,onShare:G,onShowLeaderboard:A})=>{const{difficulty:E}=r(()=>i||j,[i]),L=c(t=>t.isPlaying),P=c(t=>t.gameOver),T=c(t=>t.score),I=t.useRef(!1),N=e(t=>{if(B&&!I.current){const o=c.getState();B({status:t,score:o.score.toString()}),I.current=!0}},[B]),O=c(t=>t.setOffset),U=c(t=>t.startGame),V=c(t=>t.stopGame),k=c(t=>t.resetGame),q=c(t=>t.decrementTime),z=c(t=>t.addAsteroids),D=c(t=>t.removeAsteroid),H=c(t=>t.updateAsteroid),J=c(t=>t.updateSpacecraft),K=i?.offset??0;o(()=>{O(K)},[K,O]);const{wrapFunction:M,safeExecute:Q}=u(x.SPACE_FIGHTER),R=r(()=>Q(()=>f(w,y),f(w,y),b.INITIALIZATION_ERROR),[Q]);o(()=>()=>{Z(),R&&R.cleanup()},[R]),o(()=>{if(P&&!I.current){const t=c.getState().lives>0?"win":"lose";N(t)}P||(I.current=!1)},[P,N]),o(()=>{P&&R&&R.cleanup()},[P,R]);const W=r(()=>m(E),[E]),X=e(()=>M(()=>{I.current=!1,U(W.gameDuration),R&&(R.updateDifficultySettings(W.asteroidSpeed,W.asteroidSpawnInterval),R.startGameTimer(q),R.startAsteroidSpawning(z),R.startPhysicsLoop(J,H,D,()=>c.getState().spacecraft,()=>c.getState().asteroids))},b.INITIALIZATION_ERROR)(),[M,U,R,W,J,q,z,H,D]),Y=e(()=>M(()=>{N("cancel"),V(),R&&R.cleanup()},b.UNKNOWN_ERROR)(),[M,V,R,N]),Z=e(()=>M(()=>{if(R&&R.cleanup(),k(),R){const t=R.getInitialSpacecraft();J(t)}},b.UNKNOWN_ERROR)(),[M,R,k,J]),$=r(()=>({isPlaying:L,gameOver:P,onStartGame:X,onStopGame:Y,onShare:G,onShowLeaderboard:A,startButtonSubtext:"Navigate through space!",buttonColor:"#9370db",buttonBorderColor:"#ba68c8"}),[L,P,X,Y,G,A]),_=r(()=>({isVisible:P,score:T,onPlayAgain:Z,buttonText:"Fly Again!",primaryColor:"rgba(147, 112, 219, 0.5)",borderColor:"rgba(147, 112, 219, 0.5)",buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:"#9370db"}),[P,T,Z]),tt=r(()=>({gameId:x.SPACE_FIGHTER,settings:i||j,onSettingsChange:s}),[i,s]);return C(n,{style:F.container,children:C(a,{children:v(d,{children:[C(p,{}),C(l,{offset:K}),C(g,{...$}),C(h,{..._}),C(S,{...tt})]})})})};const F=i.create({container:{flex:1}});
1
+ "use strict";import React,{useEffect,useRef}from"react";import{View,StyleSheet,Dimensions}from"react-native";import{GestureHandlerRootView}from"react-native-gesture-handler";import{useSpaceFighterStore}from"./SpaceFighterStore.js";import{createSpaceFighterService}from"./SpaceFighterService.js";import{SPACE_FIGHTER_GAME_CONFIG,SPACE_FIGHTER_COLORS}from"./SpaceFighterConstants.js";import{ScoreBoard}from"./components/ScoreBoard.js";import{GameArea}from"./components/GameArea.js";import{GameBackground}from"./components/GameBackground.js";import{GameControlButton,GameOverModal,useGameErrorHandler,GameErrorType}from"../../helpers/index.js";import{GameSettingsModal}from"../../helpers/index.js";import{GAME_IDS,DEFAULT_GAME_SETTINGS}from"../../services/UtilsService.js";import{jsx as _jsx,jsxs as _jsxs}from"react/jsx-runtime";const{width:width,height:height}=Dimensions.get("window");export const SpaceFighter=({settings:e=DEFAULT_GAME_SETTINGS,onSettingsChange:t,onEndGame:r,onReplayGame:o,onShare:a,onShowLeaderboard:s})=>{const S=useSpaceFighterStore(e=>e.isPlaying),i=useSpaceFighterStore(e=>e.gameOver),n=useSpaceFighterStore(e=>e.score),u=useRef(r);u.current=r;const E=React.useRef(!1),_=React.useCallback(e=>{if(u.current&&!E.current){const t=useSpaceFighterStore.getState();u.current({status:e,score:t.score.toString()}),E.current=!0}},[]),m=useSpaceFighterStore(e=>e.setOffset),p=useSpaceFighterStore(e=>e.startGame),R=useSpaceFighterStore(e=>e.stopGame),G=useSpaceFighterStore(e=>e.resetGame),g=useSpaceFighterStore(e=>e.decrementTime),l=useSpaceFighterStore(e=>e.addAsteroids),h=useSpaceFighterStore(e=>e.batchUpdateAsteroids),A=useSpaceFighterStore(e=>e.updateSpacecraft),T=e?.offset??0;useEffect(()=>{m(T)},[T,m]);const{wrapFunction:O,safeExecute:F}=useGameErrorHandler(GAME_IDS.SPACE_FIGHTER),d=useRef(null);d.current||(d.current=F(()=>createSpaceFighterService(width,height),createSpaceFighterService(width,height),GameErrorType.INITIALIZATION_ERROR));const f=d.current;useEffect(()=>()=>{useSpaceFighterStore.getState().isPlaying&&!E.current&&_("cancel"),N(),f&&f.cleanup()},[f]),useEffect(()=>{if(i&&!E.current){const e=useSpaceFighterStore.getState().lives<=0?"lose":"win";_(e)}i||(E.current=!1)},[i,_]),useEffect(()=>{i&&f&&f.cleanup()},[i,f]);const C=React.useCallback(()=>O(()=>{E.current=!1,p(SPACE_FIGHTER_GAME_CONFIG.GAME_DURATION),f&&(f.updateDifficultySettings(SPACE_FIGHTER_GAME_CONFIG.ASTEROID_SPEED,SPACE_FIGHTER_GAME_CONFIG.ASTEROID_SPAWN_INTERVAL),f.startGameTimer(g),f.startAsteroidSpawning(l),f.startPhysicsLoop(A,(e,t)=>useSpaceFighterStore.getState().updateAsteroid(e,t),e=>useSpaceFighterStore.getState().removeAsteroid(e),()=>useSpaceFighterStore.getState().spacecraft,()=>useSpaceFighterStore.getState().asteroids,h))},GameErrorType.INITIALIZATION_ERROR)(),[O,p,f,g,l,A,h]),I=React.useCallback(()=>O(()=>{_("cancel"),R(),f&&f.cleanup()},GameErrorType.UNKNOWN_ERROR)(),[O,_,R,f]),N=React.useCallback(()=>O(()=>{if(o?.(),f&&f.cleanup(),G(),f){const e=f.getInitialSpacecraft();A(e)}},GameErrorType.UNKNOWN_ERROR)(),[O,f,G,A,o]),M=React.useMemo(()=>({isPlaying:S,gameOver:i,onStartGame:C,onStopGame:I,onShare:a,onShowLeaderboard:s,startButtonSubtext:"Navigate through space!",buttonColor:SPACE_FIGHTER_COLORS.BUTTON_COLOR,buttonBorderColor:SPACE_FIGHTER_COLORS.BUTTON_BORDER}),[S,i,C,I,a,s]),j=React.useMemo(()=>({isVisible:i,score:n,onPlayAgain:N,buttonText:"Fly Again!",primaryColor:SPACE_FIGHTER_COLORS.GAME_OVER_BG,borderColor:SPACE_FIGHTER_COLORS.GAME_OVER_BORDER,buttonColor:SPACE_FIGHTER_COLORS.GAME_OVER_BUTTON,buttonBorderColor:SPACE_FIGHTER_COLORS.GAME_OVER_BUTTON_BORDER,buttonTextColor:SPACE_FIGHTER_COLORS.GAME_OVER_BUTTON_TEXT}),[i,n,N]),x=React.useMemo(()=>({gameId:GAME_IDS.SPACE_FIGHTER,settings:e||DEFAULT_GAME_SETTINGS,onSettingsChange:t}),[e,t]);return _jsx(View,{style:styles.container,children:_jsx(GestureHandlerRootView,{style:styles.gestureRoot,children:_jsxs(GameBackground,{children:[_jsx(GameArea,{}),_jsx(ScoreBoard,{offset:T}),_jsx(GameControlButton,{...M}),_jsx(GameOverModal,{...j}),_jsx(GameSettingsModal,{...x})]})})})};const styles=StyleSheet.create({container:{flex:1},gestureRoot:{flex:1}});
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useCallback","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","useSpaceFighterStore","createSpaceFighterService","getDifficultySettings","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useGameErrorHandler","GameErrorType","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","width","height","get","SpaceFighter","settings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","difficulty","isPlaying","state","gameOver","score","gameReportedRef","useRef","reportGameEnd","status","current","currentState","getState","toString","setOffset","startGame","stopGame","resetGame","decrementTime","addAsteroids","removeAsteroid","updateAsteroid","updateSpacecraft","offset","wrapFunction","safeExecute","SPACE_FIGHTER","gameService","INITIALIZATION_ERROR","handleResetGame","cleanup","lives","difficultySettings","handleStartGame","gameDuration","updateDifficultySettings","asteroidSpeed","asteroidSpawnInterval","startGameTimer","startAsteroidSpawning","startPhysicsLoop","spacecraft","asteroids","handleStopGame","UNKNOWN_ERROR","initialSpacecraft","getInitialSpacecraft","gameControlButtonProps","onStartGame","onStopGame","startButtonSubtext","buttonColor","buttonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonTextColor","gameSettingsModalProps","gameId","style","styles","container","children","create","flex"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighter.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useRef","View","StyleSheet","Dimensions","GestureHandlerRootView","useSpaceFighterStore","createSpaceFighterService","SPACE_FIGHTER_GAME_CONFIG","SPACE_FIGHTER_COLORS","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useGameErrorHandler","GameErrorType","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","width","height","get","SpaceFighter","settings","onSettingsChange","onEndGame","onReplayGame","onShare","onShowLeaderboard","isPlaying","state","gameOver","score","onEndGameRef","current","gameReportedRef","reportGameEnd","useCallback","status","currentState","getState","toString","setOffset","startGame","stopGame","resetGame","decrementTime","addAsteroids","batchUpdateAsteroids","updateSpacecraft","offset","wrapFunction","safeExecute","SPACE_FIGHTER","gameServiceRef","INITIALIZATION_ERROR","gameService","handleResetGame","cleanup","lives","handleStartGame","GAME_DURATION","updateDifficultySettings","ASTEROID_SPEED","ASTEROID_SPAWN_INTERVAL","startGameTimer","startAsteroidSpawning","startPhysicsLoop","id","updates","updateAsteroid","removeAsteroid","spacecraft","asteroids","handleStopGame","UNKNOWN_ERROR","initialSpacecraft","getInitialSpacecraft","gameControlButtonProps","useMemo","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","style","styles","container","children","gestureRoot","create","flex"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighter.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAChD,SAASC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AAC3D,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,SAASC,oBAAoB,QAAQ,wBAAqB;AAC1D,SAASC,yBAAyB,QAAQ,0BAAuB;AACjE,SAASC,yBAAyB,EAAEC,oBAAoB,QAAQ,4BAAyB;AACzF,SAASC,UAAU,QAAQ,4BAAyB;AACpD,SAASC,QAAQ,QAAQ,0BAAuB;AAChD,SAASC,cAAc,QAAQ,gCAA6B;AAC5D,SAASC,iBAAiB,EAAEC,aAAa,EAAEC,mBAAmB,EAAEC,aAAa,QAAQ,wBAAe;AACpG,SAASC,iBAAiB,QAAQ,wBAAe;AACjD,SAASC,QAAQ,EAAkBC,qBAAqB,QAAQ,gCAA6B;;AAE7F;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AACA,MAAM;EAAEC,KAAK;EAAEC;AAAO,CAAC,GAAGrB,UAAU,CAACsB,GAAG,CAAC,QAAQ,CAAC;AAElD,OAAO,MAAMC,YAAiC,GAAGA,CAAC;EAAEC,QAAQ,GAAGT,qBAAqB;EAAEU,gBAAgB;EAAEC,SAAS;EAAEC,YAAY;EAAEC,OAAO;EAAEC;AAAkB,CAAC,KAAK;EAChK;EACA,MAAMC,SAAS,GAAG5B,oBAAoB,CAAC6B,KAAK,IAAIA,KAAK,CAACD,SAAS,CAAC;EAChE,MAAME,QAAQ,GAAG9B,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACC,QAAQ,CAAC;EAC9D,MAAMC,KAAK,GAAG/B,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACE,KAAK,CAAC;;EAExD;EACA,MAAMC,YAAY,GAAGrC,MAAM,CAAC6B,SAAS,CAAC;EACtCQ,YAAY,CAACC,OAAO,GAAGT,SAAS;;EAEhC;EACA,MAAMU,eAAe,GAAGzC,KAAK,CAACE,MAAM,CAAU,KAAK,CAAC;;EAEpD;EACA,MAAMwC,aAAa,GAAG1C,KAAK,CAAC2C,WAAW,CAAEC,MAAiC,IAAK;IAC7E,IAAIL,YAAY,CAACC,OAAO,IAAI,CAACC,eAAe,CAACD,OAAO,EAAE;MACpD,MAAMK,YAAY,GAAGtC,oBAAoB,CAACuC,QAAQ,CAAC,CAAC;MACpDP,YAAY,CAACC,OAAO,CAAC;QACnBI,MAAM;QACNN,KAAK,EAAEO,YAAY,CAACP,KAAK,CAACS,QAAQ,CAAC;MACrC,CAAC,CAAC;MACFN,eAAe,CAACD,OAAO,GAAG,IAAI;IAChC;EACF,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,MAAMQ,SAAS,GAAGzC,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACY,SAAS,CAAC;EAChE,MAAMC,SAAS,GAAG1C,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACa,SAAS,CAAC;EAChE,MAAMC,QAAQ,GAAG3C,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACc,QAAQ,CAAC;EAC9D,MAAMC,SAAS,GAAG5C,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACe,SAAS,CAAC;EAChE,MAAMC,aAAa,GAAG7C,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACgB,aAAa,CAAC;EACxE,MAAMC,YAAY,GAAG9C,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACiB,YAAY,CAAC;EACtE,MAAMC,oBAAoB,GAAG/C,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACkB,oBAAoB,CAAC;EACtF,MAAMC,gBAAgB,GAAGhD,oBAAoB,CAAC6B,OAAK,IAAIA,OAAK,CAACmB,gBAAgB,CAAC;;EAE9E;EACA,MAAMC,MAAM,GAAG3B,QAAQ,EAAE2B,MAAM,IAAI,CAAC;;EAEpC;EACAvD,SAAS,CAAC,MAAM;IACd+C,SAAS,CAACQ,MAAM,CAAC;EACnB,CAAC,EAAE,CAACA,MAAM,EAAER,SAAS,CAAC,CAAC;;EAEvB;EACA,MAAM;IAAES,YAAY;IAAEC;EAAY,CAAC,GAAG1C,mBAAmB,CAACG,QAAQ,CAACwC,aAAa,CAAC;;EAEjF;EACA,MAAMC,cAAc,GAAG1D,MAAM,CAAsD,IAAI,CAAC;EACxF,IAAI,CAAC0D,cAAc,CAACpB,OAAO,EAAE;IAC3BoB,cAAc,CAACpB,OAAO,GAAGkB,WAAW,CAClC,MAAMlD,yBAAyB,CAACiB,KAAK,EAAEC,MAAM,CAAC,EAC9ClB,yBAAyB,CAACiB,KAAK,EAAEC,MAAM,CAAC,EACxCT,aAAa,CAAC4C,oBAChB,CAAC;EACH;EACA,MAAMC,WAAW,GAAGF,cAAc,CAACpB,OAAO;;EAE1C;EACAvC,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX,MAAMmC,QAAK,GAAG7B,oBAAoB,CAACuC,QAAQ,CAAC,CAAC;MAC7C,IAAIV,QAAK,CAACD,SAAS,IAAI,CAACM,eAAe,CAACD,OAAO,EAAE;QAC/CE,aAAa,CAAC,QAAQ,CAAC;MACzB;MACAqB,eAAe,CAAC,CAAC;MACjB,IAAID,WAAW,EAAE;QACfA,WAAW,CAACE,OAAO,CAAC,CAAC;MACvB;IACF,CAAC;EACH,CAAC,EAAE,CAACF,WAAW,CAAC,CAAC;;EAEjB;EACA7D,SAAS,CAAC,MAAM;IACd,IAAIoC,QAAQ,IAAI,CAACI,eAAe,CAACD,OAAO,EAAE;MACxC,MAAMK,cAAY,GAAGtC,oBAAoB,CAACuC,QAAQ,CAAC,CAAC;MACpD,MAAMF,QAAM,GAAGC,cAAY,CAACoB,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,KAAK;MACvDvB,aAAa,CAACE,QAAM,CAAC;IACvB;;IAEA;IACA,IAAI,CAACP,QAAQ,EAAE;MACbI,eAAe,CAACD,OAAO,GAAG,KAAK;IACjC;EACF,CAAC,EAAE,CAACH,QAAQ,EAAEK,aAAa,CAAC,CAAC;;EAE7B;EACAzC,SAAS,CAAC,MAAM;IACd,IAAIoC,QAAQ,IAAIyB,WAAW,EAAE;MAC3B;MACAA,WAAW,CAACE,OAAO,CAAC,CAAC;IACvB;EACF,CAAC,EAAE,CAAC3B,QAAQ,EAAEyB,WAAW,CAAC,CAAC;;EAE3B;EACA,MAAMI,eAAe,GAAGlE,KAAK,CAAC2C,WAAW,CACvC,MACEc,YAAY,CAAC,MAAM;IACjBhB,eAAe,CAACD,OAAO,GAAG,KAAK,CAAC,CAAC;IACjCS,SAAS,CAACxC,yBAAyB,CAAC0D,aAAa,CAAC,CAAC,CAAC;IACpD,IAAIL,WAAW,EAAE;MACfA,WAAW,CAACM,wBAAwB,CAAC3D,yBAAyB,CAAC4D,cAAc,EAAE5D,yBAAyB,CAAC6D,uBAAuB,CAAC;MACjI;MACAR,WAAW,CAACS,cAAc,CAACnB,aAAa,CAAC;MACzCU,WAAW,CAACU,qBAAqB,CAACnB,YAAY,CAAC;MAC/CS,WAAW,CAACW,gBAAgB,CAC1BlB,gBAAgB;MAChB;MACA,CAACmB,EAAE,EAAEC,OAAO,KAAKpE,oBAAoB,CAACuC,QAAQ,CAAC,CAAC,CAAC8B,cAAc,CAACF,EAAE,EAAEC,OAAO,CAAC,EAC5ED,IAAE,IAAInE,oBAAoB,CAACuC,QAAQ,CAAC,CAAC,CAAC+B,cAAc,CAACH,IAAE,CAAC,EACxD,MAAMnE,oBAAoB,CAACuC,QAAQ,CAAC,CAAC,CAACgC,UAAU,EAChD,MAAMvE,oBAAoB,CAACuC,QAAQ,CAAC,CAAC,CAACiC,SAAS,EAC/CzB,oBACF,CAAC;IACH;EACF,CAAC,EAAErC,aAAa,CAAC4C,oBAAoB,CAAC,CAAC,CAAC,EAC1C,CAACJ,YAAY,EAAER,SAAS,EAAEa,WAAW,EAAEV,aAAa,EAAEC,YAAY,EAAEE,gBAAgB,EAAED,oBAAoB,CAC5G,CAAC;EAED,MAAM0B,cAAc,GAAGhF,KAAK,CAAC2C,WAAW,CACtC,MACEc,YAAY,CAAC,MAAM;IACjBf,aAAa,CAAC,QAAQ,CAAC;IAEvBQ,QAAQ,CAAC,CAAC;IACV,IAAIY,WAAW,EAAE;MACfA,WAAW,CAACE,OAAO,CAAC,CAAC;IACvB;EACF,CAAC,EAAE/C,aAAa,CAACgE,aAAa,CAAC,CAAC,CAAC,EACnC,CAACxB,YAAY,EAAEf,aAAa,EAAEQ,QAAQ,EAAEY,WAAW,CACrD,CAAC;EAED,MAAMC,eAAe,GAAG/D,KAAK,CAAC2C,WAAW,CACvC,MACEc,YAAY,CAAC,MAAM;IACjBzB,YAAY,GAAG,CAAC;IAChB,IAAI8B,WAAW,EAAE;MACfA,WAAW,CAACE,OAAO,CAAC,CAAC;IACvB;IACAb,SAAS,CAAC,CAAC;IACX,IAAIW,WAAW,EAAE;MACf,MAAMoB,iBAAiB,GAAGpB,WAAW,CAACqB,oBAAoB,CAAC,CAAC;MAC5D5B,gBAAgB,CAAC2B,iBAAiB,CAAC;IACrC;EACF,CAAC,EAAEjE,aAAa,CAACgE,aAAa,CAAC,CAAC,CAAC,EACnC,CAACxB,YAAY,EAAEK,WAAW,EAAEX,SAAS,EAAEI,gBAAgB,EAAEvB,YAAY,CACvE,CAAC;;EAED;EACA,MAAMoD,sBAAsB,GAAGpF,KAAK,CAACqF,OAAO,CAC1C,OAAO;IACLlD,SAAS;IACTE,QAAQ;IACRiD,WAAW,EAAEpB,eAAe;IAC5BqB,UAAU,EAAEP,cAAc;IAC1B/C,OAAO;IACPC,iBAAiB;IACjBsD,kBAAkB,EAAE,yBAAyB;IAC7CC,WAAW,EAAE/E,oBAAoB,CAACgF,YAAY;IAC9CC,iBAAiB,EAAEjF,oBAAoB,CAACkF;EAC1C,CAAC,CAAC,EACF,CAACzD,SAAS,EAAEE,QAAQ,EAAE6B,eAAe,EAAEc,cAAc,EAAE/C,OAAO,EAAEC,iBAAiB,CACnF,CAAC;EAED,MAAM2D,kBAAkB,GAAG7F,KAAK,CAACqF,OAAO,CACtC,OAAO;IACLS,SAAS,EAAEzD,QAAQ;IACnBC,KAAK;IACLyD,WAAW,EAAEhC,eAAe;IAC5BiC,UAAU,EAAE,YAAY;IACxBC,YAAY,EAAEvF,oBAAoB,CAACwF,YAAY;IAC/CC,WAAW,EAAEzF,oBAAoB,CAAC0F,gBAAgB;IAClDX,WAAW,EAAE/E,oBAAoB,CAAC2F,gBAAgB;IAClDV,iBAAiB,EAAEjF,oBAAoB,CAAC4F,uBAAuB;IAC/DC,eAAe,EAAE7F,oBAAoB,CAAC8F;EACxC,CAAC,CAAC,EACF,CAACnE,QAAQ,EAAEC,KAAK,EAAEyB,eAAe,CACnC,CAAC;EAED,MAAM0C,sBAAsB,GAAGzG,KAAK,CAACqF,OAAO,CAC1C,OAAO;IACLqB,MAAM,EAAEvF,QAAQ,CAACwC,aAAa;IAC9B9B,QAAQ,EAAEA,QAAQ,IAAIT,qBAAqB;IAC3CU;EACF,CAAC,CAAC,EACF,CAACD,QAAQ,EAAEC,gBAAgB,CAC7B,CAAC;EAED,oBACER,IAAA,CAACnB,IAAI;IAACwG,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5BxF,IAAA,CAAChB,sBAAsB;MAACqG,KAAK,EAAEC,MAAM,CAACG,WAAY;MAAAD,QAAA,eAChDtF,KAAA,CAACX,cAAc;QAAAiG,QAAA,gBAEbxF,IAAA,CAACV,QAAQ,IAAE,CAAC,eAEZU,IAAA,CAACX,UAAU;UAAC6C,MAAM,EAAEA;QAAO,CAAE,CAAC,eAG9BlC,IAAA,CAACR,iBAAiB;UAAA,GAAKsE;QAAsB,CAAG,CAAC,eAEjD9D,IAAA,CAACP,aAAa;UAAA,GAAK8E;QAAkB,CAAG,CAAC,eAGzCvE,IAAA,CAACJ,iBAAiB;UAAA,GAAKuF;QAAsB,CAAG,CAAC;MAAA,CACnC;IAAC,CACK;EAAC,CACrB,CAAC;AAEX,CAAC;AAED,MAAMG,MAAM,GAAGxG,UAAU,CAAC4G,MAAM,CAAC;EAC/BH,SAAS,EAAE;IACTI,IAAI,EAAE;EACR,CAAC;EACDF,WAAW,EAAE;IACXE,IAAI,EAAE;EACR;AACF,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";export const SPACE_FIGHTER_DIFFICULTY_CONFIG={easy:{gameDuration:60,asteroidSpawnInterval:4e3,asteroidSpeed:1.5},medium:{gameDuration:120,asteroidSpawnInterval:3e3,asteroidSpeed:2},hard:{gameDuration:180,asteroidSpawnInterval:2e3,asteroidSpeed:3}};export const getDifficultySettings=e=>SPACE_FIGHTER_DIFFICULTY_CONFIG[e];export const DEFAULT_SPACE_FIGHTER_SETTINGS={difficulty:"medium",soundEnabled:!0,hapticEnabled:!0,gameDuration:SPACE_FIGHTER_DIFFICULTY_CONFIG.medium.gameDuration,asteroidSpawnInterval:SPACE_FIGHTER_DIFFICULTY_CONFIG.medium.asteroidSpawnInterval,asteroidSpeed:SPACE_FIGHTER_DIFFICULTY_CONFIG.medium.asteroidSpeed};export const SPACE_FIGHTER_GAME_CONFIG={GAME_DURATION:120,SPACECRAFT_SIZE:28,SPACECRAFT_SPEED:3,ASTEROID_WIDTH:80,ASTEROID_GAP:120,ASTEROID_SPAWN_INTERVAL:3e3,ASTEROID_SPEED:2,GRAVITY:.3,BOUNCE_DAMPING:.7,FRICTION:.98,MAX_VELOCITY:8,COLLISION_TOLERANCE:2,COLLISION_COOLDOWN:2e3};export const SPACE_FIGHTER_COLORS={BACKGROUND:"#0a0a1a",SPACECRAFT:"#00d4ff",ASTEROID:"#8b4513",ASTEROID_SHADOW:"#654321",SCORE:"#ffd700",UI:"#9370db",STARS:"#ffffff"};export const SPACE_FIGHTER_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#9370db",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(147, 112, 219, 0.15)",sectionTitleColor:"#9370db",buttonSelectedColor:"#9370db",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(147, 112, 219, 0.3)",switchTrackColorTrue:"#9370db",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const SPACE_FIGHTER_DIFFICULTY_DESCRIPTIONS={easy:"Slow asteroids, relaxed gameplay",medium:"Normal asteroid speed, balanced challenge",hard:"Fast asteroids, quick reflexes needed!"};
1
+ "use strict";import{Dimensions}from"react-native";import{createGameTheme}from"../../services/ThemeUtils.js";import{isTablet}from"../../services/UtilsService.js";const PRIMARY_COLOR="#ffffff",BACKGROUND_COLOR="#3a3a5e";export const SPACE_FIGHTER_THEME=createGameTheme("#ffffff","#3a3a5e");const{width:SCREEN_WIDTH,height:SCREEN_HEIGHT}=Dimensions.get("window"),BASE_WIDTH=390,BASE_HEIGHT=844,SCALE_X=SCREEN_WIDTH/390,SCALE_Y=SCREEN_HEIGHT/844;export const SPACE_FIGHTER_GAME_CONFIG={GAME_DURATION:120,SPACECRAFT_SIZE:Math.round((isTablet?22:28)*SCALE_X),SPACECRAFT_SPEED:3,ASTEROID_WIDTH:Math.round((isTablet?60:80)*SCALE_Y),ASTEROID_GAP:Math.round(120*SCALE_X),ASTEROID_SPAWN_INTERVAL:Math.round(1/SCALE_Y*(isTablet?1800:1500)),ASTEROID_SPEED:+(3.5*SCALE_Y).toFixed(2),GRAVITY:.3,BOUNCE_DAMPING:.7,FRICTION:.98,MAX_VELOCITY:8,COLLISION_TOLERANCE:2,COLLISION_COOLDOWN:2e3};export const SPACE_FIGHTER_COLORS={BACKGROUND:"#3a3a5e",PRIMARY:"#ffffff",SPACECRAFT:"#00d4ff",ASTEROID:"#8b4513",ASTEROID_SHADOW:"#654321",STARS:"#ffffff",SCORE_BACKGROUND:SPACE_FIGHTER_THEME.sectionBackgroundColor,SCORE_BORDER:SPACE_FIGHTER_THEME.buttonSelectedColor,SCORE_TEXT:SPACE_FIGHTER_THEME.headerTextColor,BUTTON_COLOR:SPACE_FIGHTER_THEME.headerBackgroundColor,BUTTON_BORDER:SPACE_FIGHTER_THEME.buttonSelectedColor,UI:"#ffffff",GAME_OVER_BG:SPACE_FIGHTER_THEME.buttonSelectedColor,GAME_OVER_BORDER:SPACE_FIGHTER_THEME.buttonSelectedColor,GAME_OVER_BUTTON:"#ffffff",GAME_OVER_BUTTON_BORDER:"#ffffff",GAME_OVER_BUTTON_TEXT:"#000000"};
@@ -1 +1 @@
1
- {"version":3,"names":["SPACE_FIGHTER_DIFFICULTY_CONFIG","easy","gameDuration","asteroidSpawnInterval","asteroidSpeed","medium","hard","getDifficultySettings","difficulty","DEFAULT_SPACE_FIGHTER_SETTINGS","soundEnabled","hapticEnabled","SPACE_FIGHTER_GAME_CONFIG","GAME_DURATION","SPACECRAFT_SIZE","SPACECRAFT_SPEED","ASTEROID_WIDTH","ASTEROID_GAP","ASTEROID_SPAWN_INTERVAL","ASTEROID_SPEED","GRAVITY","BOUNCE_DAMPING","FRICTION","MAX_VELOCITY","COLLISION_TOLERANCE","COLLISION_COOLDOWN","SPACE_FIGHTER_COLORS","BACKGROUND","SPACECRAFT","ASTEROID","ASTEROID_SHADOW","SCORE","UI","STARS","SPACE_FIGHTER_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","SPACE_FIGHTER_DIFFICULTY_DESCRIPTIONS"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighterConstants.ts"],"mappings":";;AAEA;;AAUA;AACA,OAAO,MAAMA,+BAA+B,GAAG;EAC7CC,IAAI,EAAE;IACJC,YAAY,EAAE,EAAE;IAAE;IAClBC,qBAAqB,EAAE,IAAI;IAAE;IAC7BC,aAAa,EAAE,GAAG,CAAE;EACtB,CAAC;EACDC,MAAM,EAAE;IACNH,YAAY,EAAE,GAAG;IAAE;IACnBC,qBAAqB,EAAE,IAAI;IAAE;IAC7BC,aAAa,EAAE,CAAC,CAAE;EACpB,CAAC;EACDE,IAAI,EAAE;IACJJ,YAAY,EAAE,GAAG;IAAE;IACnBC,qBAAqB,EAAE,IAAI;IAAE;IAC7BC,aAAa,EAAE,CAAC,CAAE;EACpB;AACF,CAAU;;AAEV;AACA,OAAO,MAAMG,qBAAqB,GAAIC,UAAsC,IAAK;EAC/E,OAAOR,+BAA+B,CAACQ,UAAU,CAAC;AACpD,CAAC;;AAED;AACA,OAAO,MAAMC,8BAAoD,GAAG;EAClED,UAAU,EAAE,QAAQ;EACpBE,YAAY,EAAE,IAAI;EAClBC,aAAa,EAAE,IAAI;EACnBT,YAAY,EAAEF,+BAA+B,CAACK,MAAM,CAACH,YAAY;EACjEC,qBAAqB,EAAEH,+BAA+B,CAACK,MAAM,CAACF,qBAAqB;EACnFC,aAAa,EAAEJ,+BAA+B,CAACK,MAAM,CAACD;AACxD,CAAC;;AAED;AACA,OAAO,MAAMQ,yBAAyB,GAAG;EACvCC,aAAa,EAAE,GAAG;EAAE;EACpBC,eAAe,EAAE,EAAE;EAAE;EACrBC,gBAAgB,EAAE,CAAC;EACnBC,cAAc,EAAE,EAAE;EAClBC,YAAY,EAAE,GAAG;EAAE;EACnBC,uBAAuB,EAAE,IAAI;EAAE;EAC/BC,cAAc,EAAE,CAAC;EACjBC,OAAO,EAAE,GAAG;EACZC,cAAc,EAAE,GAAG;EACnBC,QAAQ,EAAE,IAAI;EACdC,YAAY,EAAE,CAAC;EACfC,mBAAmB,EAAE,CAAC;EACtBC,kBAAkB,EAAE,IAAI,CAAC;AAC3B,CAAU;AAEV,OAAO,MAAMC,oBAAoB,GAAG;EAClCC,UAAU,EAAE,SAAS;EAAE;EACvBC,UAAU,EAAE,SAAS;EAAE;EACvBC,QAAQ,EAAE,SAAS;EAAE;EACrBC,eAAe,EAAE,SAAS;EAAE;EAC5BC,KAAK,EAAE,SAAS;EAAE;EAClBC,EAAE,EAAE,SAAS;EAAE;EACfC,KAAK,EAAE,SAAS,CAAC;AACnB,CAAU;;AAEV;AACA,OAAO,MAAMC,mBAAsC,GAAG;EACpDC,eAAe,EAAE,oBAAoB;EAAE;EACvCC,qBAAqB,EAAE,SAAS;EAAE;EAClCC,eAAe,EAAE,SAAS;EAC1BC,sBAAsB,EAAE,2BAA2B;EAAE;EACrDC,iBAAiB,EAAE,SAAS;EAAE;EAC9BC,mBAAmB,EAAE,SAAS;EAAE;EAChCC,qBAAqB,EAAE,0BAA0B;EACjDC,uBAAuB,EAAE,SAAS;EAClCC,yBAAyB,EAAE,0BAA0B;EAAE;EACvDC,qBAAqB,EAAE,0BAA0B;EACjDC,oBAAoB,EAAE,SAAS;EAAE;EACjCC,gBAAgB,EAAE,SAAS;EAC3BC,aAAa,EAAE,0BAA0B,CAAE;AAC7C,CAAC;;AAED;AACA,OAAO,MAAMC,qCAAqC,GAAG;EACnD/C,IAAI,EAAE,kCAAkC;EACxCI,MAAM,EAAE,2CAA2C;EACnDC,IAAI,EAAE;AACR,CAAU","ignoreList":[]}
1
+ {"version":3,"names":["Dimensions","createGameTheme","isTablet","PRIMARY_COLOR","BACKGROUND_COLOR","SPACE_FIGHTER_THEME","width","SCREEN_WIDTH","height","SCREEN_HEIGHT","get","BASE_WIDTH","BASE_HEIGHT","SCALE_X","SCALE_Y","SPACE_FIGHTER_GAME_CONFIG","GAME_DURATION","SPACECRAFT_SIZE","Math","round","SPACECRAFT_SPEED","ASTEROID_WIDTH","ASTEROID_GAP","ASTEROID_SPAWN_INTERVAL","ASTEROID_SPEED","toFixed","GRAVITY","BOUNCE_DAMPING","FRICTION","MAX_VELOCITY","COLLISION_TOLERANCE","COLLISION_COOLDOWN","SPACE_FIGHTER_COLORS","BACKGROUND","PRIMARY","SPACECRAFT","ASTEROID","ASTEROID_SHADOW","STARS","SCORE_BACKGROUND","sectionBackgroundColor","SCORE_BORDER","buttonSelectedColor","SCORE_TEXT","headerTextColor","BUTTON_COLOR","headerBackgroundColor","BUTTON_BORDER","UI","GAME_OVER_BG","GAME_OVER_BORDER","GAME_OVER_BUTTON","GAME_OVER_BUTTON_BORDER","GAME_OVER_BUTTON_TEXT"],"sourceRoot":"../../../../src","sources":["games/space-fighter/SpaceFighterConstants.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SAASC,eAAe,QAAQ,8BAA2B;AAC3D,SAASC,QAAQ,QAAQ,gCAA6B;;AAEtD;AACA,MAAMC,aAAa,GAAG,SAAS;AAC/B,MAAMC,gBAAgB,GAAG,SAAS;;AAElC;AACA,OAAO,MAAMC,mBAAmB,GAAGJ,eAAe,CAACE,aAAa,EAAEC,gBAAgB,CAAC;;AAEnF;AACA,MAAM;EAAEE,KAAK,EAAEC,YAAY;EAAEC,MAAM,EAAEC;AAAc,CAAC,GAAGT,UAAU,CAACU,GAAG,CAAC,QAAQ,CAAC;;AAE/E;AACA,MAAMC,UAAU,GAAG,GAAG;AACtB,MAAMC,WAAW,GAAG,GAAG;AACvB,MAAMC,OAAO,GAAGN,YAAY,GAAGI,UAAU;AACzC,MAAMG,OAAO,GAAGL,aAAa,GAAGG,WAAW;;AAE3C;AACA,OAAO,MAAMG,yBAAyB,GAAG;EACvCC,aAAa,EAAE,GAAG;EAAE;EACpBC,eAAe,EAAEC,IAAI,CAACC,KAAK,CAAC,CAACjB,QAAQ,GAAG,EAAE,GAAG,EAAE,IAAIW,OAAO,CAAC;EAC3DO,gBAAgB,EAAE,CAAC;EACnBC,cAAc,EAAEH,IAAI,CAACC,KAAK,CAAC,CAACjB,QAAQ,GAAG,EAAE,GAAG,EAAE,IAAIY,OAAO,CAAC;EAAE;EAC5DQ,YAAY,EAAEJ,IAAI,CAACC,KAAK,CAAC,GAAG,GAAGN,OAAO,CAAC;EAAE;EACzCU,uBAAuB,EAAEL,IAAI,CAACC,KAAK,CAAC,CAACjB,QAAQ,GAAG,IAAI,GAAG,IAAI,KAAK,CAAC,GAAGY,OAAO,CAAC,CAAC;EAAE;EAC/EU,cAAc,EAAE,CAAC,CAAC,GAAG,GAAGV,OAAO,EAAEW,OAAO,CAAC,CAAC,CAAC;EAAE;EAC7CC,OAAO,EAAE,GAAG;EACZC,cAAc,EAAE,GAAG;EACnBC,QAAQ,EAAE,IAAI;EACdC,YAAY,EAAE,CAAC;EACfC,mBAAmB,EAAE,CAAC;EACtBC,kBAAkB,EAAE,IAAI,CAAC;AAC3B,CAAC;AAED,OAAO,MAAMC,oBAAoB,GAAG;EAClCC,UAAU,EAAE7B,gBAAgB;EAC5B8B,OAAO,EAAE/B,aAAa;EACtBgC,UAAU,EAAE,SAAS;EACrBC,QAAQ,EAAE,SAAS;EACnBC,eAAe,EAAE,SAAS;EAC1BC,KAAK,EAAE,SAAS;EAChBC,gBAAgB,EAAElC,mBAAmB,CAACmC,sBAAsB;EAC5DC,YAAY,EAAEpC,mBAAmB,CAACqC,mBAAmB;EACrDC,UAAU,EAAEtC,mBAAmB,CAACuC,eAAe;EAC/CC,YAAY,EAAExC,mBAAmB,CAACyC,qBAAqB;EACvDC,aAAa,EAAE1C,mBAAmB,CAACqC,mBAAmB;EACtDM,EAAE,EAAE7C,aAAa;EACjB8C,YAAY,EAAE5C,mBAAmB,CAACqC,mBAAmB;EACrDQ,gBAAgB,EAAE7C,mBAAmB,CAACqC,mBAAmB;EACzDS,gBAAgB,EAAEhD,aAAa;EAC/BiD,uBAAuB,EAAEjD,aAAa;EACtCkD,qBAAqB,EAAE;AACzB,CAAU","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import{SPACE_FIGHTER_GAME_CONFIG as t,SPACE_FIGHTER_COLORS as i}from"./SpaceFighterConstants.js";export{t as GAME_CONFIG,i as COLORS};class e{gameTimer=null;asteroidSpawnTimer=null;physicsTimer=null;particles=[];lastCollisionTime=0;currentAsteroidSpeed=t.ASTEROID_SPEED;currentSpawnInterval=t.ASTEROID_SPAWN_INTERVAL;constructor(t,i){this.width=t,this.height=i}startGame(){this.cleanup()}cleanup(){this.gameTimer&&(clearInterval(this.gameTimer),this.gameTimer=null),this.asteroidSpawnTimer&&(clearInterval(this.asteroidSpawnTimer),this.asteroidSpawnTimer=null),this.physicsTimer&&(clearInterval(this.physicsTimer),this.physicsTimer=null),this.particles=[],this.lastCollisionTime=0}startGameTimer(t){this.gameTimer=setInterval(t,1e3)}updateDifficultySettings(t,i){this.currentAsteroidSpeed=t,this.currentSpawnInterval=i}startAsteroidSpawning(t){const i=this.generateAsteroidPair();t(i),this.asteroidSpawnTimer=setInterval(()=>{const i=this.generateAsteroidPair();t(i)},this.currentSpawnInterval)}startPhysicsLoop(t,i,e,s,r){this.physicsTimer=setInterval(()=>{this.updatePhysics(t,i,e,s,r)},16)}generateAsteroidPair(){const i=`asteroid_pair_${Date.now()}_${Math.random()}`,e=.1*this.width,s=.9*this.width-t.ASTEROID_GAP,r=Math.random()*(s-e)+e;return[{id:i+"_left",x:0,y:-250,width:r,height:t.ASTEROID_WIDTH,type:"left",pairId:i,passed:!1,spawnTime:Date.now()},{id:i+"_right",x:r+t.ASTEROID_GAP,y:-250,width:this.width-(r+t.ASTEROID_GAP),height:t.ASTEROID_WIDTH,type:"right",pairId:i,passed:!1,spawnTime:Date.now()}]}updatePhysics(t,i,e,s,r){const a=s(),o=r();let n={...a};n.y=a.y,n.velocityY=0,n.isControlled||(n.velocityX=0),n.x>n.size/2||(n.x=n.size/2,n.velocityX=0),n.x<this.width-n.size/2||(n.x=this.width-n.size/2,n.velocityX=0),t(n);for(let t=0;t<o.length;t++){const s=o[t];if(!s)continue;const r=s.y+this.currentAsteroidSpeed;r>this.height?e(s.id):i(s.id,{y:r})}this.updateParticles()}controlSpacecraft(t,i,e){const s=t.size/2,r=this.width-t.size/2,a=Math.max(s,Math.min(r,i));return{...t,x:a,y:t.y,velocityX:0,velocityY:0,isControlled:!0}}releaseSpacecraft(t){return{...t,isControlled:!1}}checkCollision(i,e){const s=Date.now();if(s-this.lastCollisionTime<t.COLLISION_COOLDOWN)return{collision:!1};for(const t of e)if(this.spacecraftAsteroidCollision(i,t))return this.lastCollisionTime=s,{collision:!0,asteroidId:t.id};return{collision:!1}}spacecraftAsteroidCollision(t,i){const e=t.x-t.size/2,s=t.x+t.size/2,r=t.y-t.size/2,a=t.y+t.size/2,o=i.x,n=i.x+i.width,l=i.y,h=i.y+i.height;return s>o&&n>e&&a>l&&h>r}checkAsteroidPass(t,i){const e=[];for(let s=0;s<i.length;s++){const r=i[s];r&&!r.passed&&t.y>r.y+r.height&&e.push(r.pairId)}return e}createCollisionParticles(t,e){for(let s=0;15>s;s++){const r={id:`particle_${Date.now()}_${s}`,x:t,y:e,velocityX:15*(Math.random()-.5),velocityY:15*(Math.random()-.5),color:5>s?"#ff6600":10>s?i.SPACECRAFT:"#ffff00",life:1200,maxLife:1200,size:8+12*Math.random()};this.particles.push(r)}for(let i=0;5>i;i++){const s={id:`big_particle_${Date.now()}_${i}`,x:t+20*(Math.random()-.5),y:e+20*(Math.random()-.5),velocityX:8*(Math.random()-.5),velocityY:8*(Math.random()-.5),color:"#ff0000",life:1500,maxLife:1500,size:15+10*Math.random()};this.particles.push(s)}}updateParticles(){const t=[];for(let i=0;i<this.particles.length;i++){const e=this.particles[i];e&&(e.x+=e.velocityX,e.y+=e.velocityY,e.velocityY+=.2,e.life-=16,e.life>0&&t.push(e))}this.particles=t}getParticles(){return this.particles}isInCollisionImmunity(){return Date.now()-this.lastCollisionTime<t.COLLISION_COOLDOWN}getRemainingImmunityTime(){const i=Date.now()-this.lastCollisionTime;return Math.max(0,t.COLLISION_COOLDOWN-i)}getInitialSpacecraft(){return{x:this.width/2,y:.77*this.height,velocityX:0,velocityY:0,size:t.SPACECRAFT_SIZE,isControlled:!1}}}export const createSpaceFighterService=(t,i)=>new e(t,i);
1
+ "use strict";import{SPACE_FIGHTER_GAME_CONFIG as GAME_CONFIG,SPACE_FIGHTER_COLORS as COLORS}from"./SpaceFighterConstants.js";export{GAME_CONFIG,COLORS};class SpaceFighterGameService{gameTimer=null;asteroidSpawnTimer=null;physicsTimer=null;particles=[];lastCollisionTime=0;currentAsteroidSpeed=GAME_CONFIG.ASTEROID_SPEED;currentSpawnInterval=GAME_CONFIG.ASTEROID_SPAWN_INTERVAL;lastPhysicsTime=0;constructor(t,i){this.width=t,this.height=i}startGame(){this.cleanup()}cleanup(){this.gameTimer&&(clearInterval(this.gameTimer),this.gameTimer=null),this.asteroidSpawnTimer&&(clearInterval(this.asteroidSpawnTimer),this.asteroidSpawnTimer=null),this.physicsTimer&&(clearInterval(this.physicsTimer),this.physicsTimer=null),this.particles=[],this.lastCollisionTime=0}startGameTimer(t){this.gameTimer=setInterval(t,1e3)}updateDifficultySettings(t,i){this.currentAsteroidSpeed=t,this.currentSpawnInterval=i}startAsteroidSpawning(t){const i=this.generateAsteroidPair();t(i),this.asteroidSpawnTimer=setInterval(()=>{const i=this.generateAsteroidPair();t(i)},this.currentSpawnInterval)}startPhysicsLoop(t,i,e,s,r,a){this.lastPhysicsTime=Date.now(),this.physicsTimer=setInterval(()=>{const n=Date.now(),o=Math.min(n-this.lastPhysicsTime,64);this.lastPhysicsTime=n,this.updatePhysics(t,i,e,s,r,a,o)},16)}generateAsteroidPair(){const t=`asteroid_pair_${Date.now()}_${Math.random()}`,i=GAME_CONFIG.ASTEROID_GAP,e=this.width/2,s=.15*this.width,r=e+2*(Math.random()-.5)*s-i/2,a=Math.round(.08*this.width),n=Math.max(a,Math.min(r,this.width-i-a)),o=-Math.round(.3*this.height);return[{id:`${t}_left`,x:0,y:o,width:n,height:GAME_CONFIG.ASTEROID_WIDTH,type:"left",pairId:t,passed:!1,spawnTime:Date.now()},{id:`${t}_right`,x:n+i,y:o,width:this.width-(n+i),height:GAME_CONFIG.ASTEROID_WIDTH,type:"right",pairId:t,passed:!1,spawnTime:Date.now()}]}updatePhysics(t,i,e,s,r,a,n=16){const o=n/16,h=s(),l=r();let d={...h};if(d.y=h.y,d.velocityY=0,d.isControlled||(d.velocityX=0),d.x<=d.size/2&&(d.x=d.size/2,d.velocityX=0),d.x>=this.width-d.size/2&&(d.x=this.width-d.size/2,d.velocityX=0),t(d),a&&l.length>0){const t=[],i=[];for(let e=0;e<l.length;e++){const s=l[e];if(!s)continue;const r=s.y+this.currentAsteroidSpeed*o;r>this.height?i.push(s.id):t.push({id:s.id,y:r})}a(t,i)}else for(let t=0;t<l.length;t++){const s=l[t];if(!s)continue;const r=s.y+this.currentAsteroidSpeed*o;r>this.height?e(s.id):i(s.id,{y:r})}this.updateParticles()}controlSpacecraft(t,i,e){const s=t.size/2,r=this.width-t.size/2,a=Math.max(s,Math.min(r,i));return{...t,x:a,y:t.y,velocityX:0,velocityY:0,isControlled:!0}}releaseSpacecraft(t){return{...t,isControlled:!1}}checkCollision(t,i){const e=Date.now();if(e-this.lastCollisionTime<GAME_CONFIG.COLLISION_COOLDOWN)return{collision:!1};for(const s of i)if(this.spacecraftAsteroidCollision(t,s))return this.lastCollisionTime=e,{collision:!0,asteroidId:s.id};return{collision:!1}}spacecraftAsteroidCollision(t,i){const e=t.x-t.size/2,s=t.x+t.size/2,r=t.y-t.size/2,a=t.y+t.size/2,n=i.x,o=i.x+i.width,h=i.y,l=i.y+i.height;return s>n&&e<o&&a>h&&r<l}checkAsteroidPass(t,i){const e=[];for(let s=0;s<i.length;s++){const r=i[s];r&&!r.passed&&t.y>r.y+r.height&&e.push(r.pairId)}return e}createCollisionParticles(t,i){for(let e=0;e<15;e++){const s={id:`particle_${Date.now()}_${e}`,x:t,y:i,velocityX:15*(Math.random()-.5),velocityY:15*(Math.random()-.5),color:e<5?"#ff6600":e<10?COLORS.SPACECRAFT:"#ffff00",life:1200,maxLife:1200,size:8+12*Math.random()};this.particles.push(s)}for(let e=0;e<5;e++){const s={id:`big_particle_${Date.now()}_${e}`,x:t+20*(Math.random()-.5),y:i+20*(Math.random()-.5),velocityX:8*(Math.random()-.5),velocityY:8*(Math.random()-.5),color:"#ff0000",life:1500,maxLife:1500,size:15+10*Math.random()};this.particles.push(s)}}updateParticles(){let t=0;for(let i=0;i<this.particles.length;i++){const e=this.particles[i];e&&(e.x+=e.velocityX,e.y+=e.velocityY,e.velocityY+=.2,e.life-=16,e.life>0&&(this.particles[t]=e,t++))}this.particles.length=t}getParticles(){return this.particles}isInCollisionImmunity(){return Date.now()-this.lastCollisionTime<GAME_CONFIG.COLLISION_COOLDOWN}getRemainingImmunityTime(){const t=Date.now()-this.lastCollisionTime;return Math.max(0,GAME_CONFIG.COLLISION_COOLDOWN-t)}getInitialSpacecraft(){return{x:this.width/2,y:.77*this.height,velocityX:0,velocityY:0,size:GAME_CONFIG.SPACECRAFT_SIZE,isControlled:!1}}}export const createSpaceFighterService=(t,i)=>new SpaceFighterGameService(t,i);