react-native-games 1.4.0 → 1.6.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 (508) hide show
  1. package/lib/module/games/balloon-blaster/BalloonBlaster.js +1 -1
  2. package/lib/module/games/balloon-blaster/BalloonBlaster.js.map +1 -1
  3. package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js +1 -1
  4. package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js.map +1 -1
  5. package/lib/module/games/balloon-blaster/BalloonBlasterService.js +1 -1
  6. package/lib/module/games/balloon-blaster/BalloonBlasterService.js.map +1 -1
  7. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +1 -1
  8. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js.map +1 -1
  9. package/lib/module/games/balloon-blaster/components/BalloonComponent.js +1 -1
  10. package/lib/module/games/balloon-blaster/components/BalloonComponent.js.map +1 -1
  11. package/lib/module/games/balloon-blaster/components/GameArea.js +1 -1
  12. package/lib/module/games/balloon-blaster/components/GameArea.js.map +1 -1
  13. package/lib/module/games/balloon-blaster/components/GameBackground.js +1 -1
  14. package/lib/module/games/balloon-blaster/components/GameBackground.js.map +1 -1
  15. package/lib/module/games/balloon-blaster/components/ScoreBoard.js +1 -1
  16. package/lib/module/games/balloon-blaster/components/ScoreBoard.js.map +1 -1
  17. package/lib/module/games/balloon-blaster/components/index.js +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/BikeRacingService.js +1 -1
  22. package/lib/module/games/bike-racing/BikeRacingService.js.map +1 -1
  23. package/lib/module/games/bike-racing/BikeRacingStore.js +1 -1
  24. package/lib/module/games/bike-racing/BikeRacingStore.js.map +1 -1
  25. package/lib/module/games/bike-racing/components/BikeComponent.js +1 -1
  26. package/lib/module/games/bike-racing/components/BikeComponent.js.map +1 -1
  27. package/lib/module/games/bike-racing/components/GameBackground.js +1 -1
  28. package/lib/module/games/bike-racing/components/GameBackground.js.map +1 -1
  29. package/lib/module/games/bike-racing/components/ScoreBoard.js +1 -1
  30. package/lib/module/games/bike-racing/components/ScoreBoard.js.map +1 -1
  31. package/lib/module/games/bike-racing/components/index.js +1 -1
  32. package/lib/module/games/bike-racing/index.js +1 -1
  33. package/lib/module/games/block-blast/BlockBlast.js +1 -1
  34. package/lib/module/games/block-blast/BlockBlast.js.map +1 -1
  35. package/lib/module/games/block-blast/BlockBlastConstants.js +1 -1
  36. package/lib/module/games/block-blast/BlockBlastConstants.js.map +1 -1
  37. package/lib/module/games/block-blast/BlockBlastService.js +1 -1
  38. package/lib/module/games/block-blast/BlockBlastService.js.map +1 -1
  39. package/lib/module/games/block-blast/BlockBlastStore.js +1 -1
  40. package/lib/module/games/block-blast/BlockBlastStore.js.map +1 -1
  41. package/lib/module/games/block-blast/components/BlastAnimation.js +1 -0
  42. package/lib/module/games/block-blast/components/BlastAnimation.js.map +1 -0
  43. package/lib/module/games/block-blast/components/BlockPieceComponent.js +1 -1
  44. package/lib/module/games/block-blast/components/BlockPieceComponent.js.map +1 -1
  45. package/lib/module/games/block-blast/components/GameArea.js +1 -1
  46. package/lib/module/games/block-blast/components/GameArea.js.map +1 -1
  47. package/lib/module/games/block-blast/components/GameBackground.js +1 -1
  48. package/lib/module/games/block-blast/components/GameBackground.js.map +1 -1
  49. package/lib/module/games/block-blast/components/GridComponent.js +1 -1
  50. package/lib/module/games/block-blast/components/GridComponent.js.map +1 -1
  51. package/lib/module/games/block-blast/components/ScoreBoard.js +1 -1
  52. package/lib/module/games/block-blast/components/index.js +1 -1
  53. package/lib/module/games/block-blast/index.js +1 -1
  54. package/lib/module/games/bubble-shooter/BubbleShooter.js +1 -1
  55. package/lib/module/games/bubble-shooter/BubbleShooter.js.map +1 -1
  56. package/lib/module/games/bubble-shooter/BubbleShooterConstants.js +1 -1
  57. package/lib/module/games/bubble-shooter/BubbleShooterConstants.js.map +1 -1
  58. package/lib/module/games/bubble-shooter/BubbleShooterService.js +1 -1
  59. package/lib/module/games/bubble-shooter/BubbleShooterService.js.map +1 -1
  60. package/lib/module/games/bubble-shooter/BubbleShooterStore.js +1 -1
  61. package/lib/module/games/bubble-shooter/BubbleShooterStore.js.map +1 -1
  62. package/lib/module/games/bubble-shooter/components/GameArea.js +1 -1
  63. package/lib/module/games/bubble-shooter/components/GameArea.js.map +1 -1
  64. package/lib/module/games/bubble-shooter/components/GameBackground.js +1 -1
  65. package/lib/module/games/bubble-shooter/components/GameBackground.js.map +1 -1
  66. package/lib/module/games/bubble-shooter/components/ScoreBoard.js +1 -1
  67. package/lib/module/games/bubble-shooter/components/ScoreBoard.js.map +1 -1
  68. package/lib/module/games/bubble-shooter/components/index.js +1 -1
  69. package/lib/module/games/bubble-shooter/index.js +1 -1
  70. package/lib/module/games/candy-crush/CandyCrush.js +1 -1
  71. package/lib/module/games/candy-crush/CandyCrush.js.map +1 -1
  72. package/lib/module/games/candy-crush/CandyCrushConstants.js +1 -1
  73. package/lib/module/games/candy-crush/CandyCrushService.js +1 -1
  74. package/lib/module/games/candy-crush/CandyCrushStore.js +1 -1
  75. package/lib/module/games/candy-crush/CandyCrushStore.js.map +1 -1
  76. package/lib/module/games/candy-crush/components/BlastAnimation.js +1 -0
  77. package/lib/module/games/candy-crush/components/BlastAnimation.js.map +1 -0
  78. package/lib/module/games/candy-crush/components/CandyItem.js +1 -1
  79. package/lib/module/games/candy-crush/components/CandyItem.js.map +1 -1
  80. package/lib/module/games/candy-crush/components/GameBackground.js +1 -1
  81. package/lib/module/games/candy-crush/components/GameGrid.js +1 -1
  82. package/lib/module/games/candy-crush/components/GameGrid.js.map +1 -1
  83. package/lib/module/games/candy-crush/components/ScoreBoard.js +1 -1
  84. package/lib/module/games/candy-crush/components/index.js +1 -1
  85. package/lib/module/games/candy-crush/components/index.js.map +1 -1
  86. package/lib/module/games/candy-crush/index.js +1 -1
  87. package/lib/module/games/car-racing/CarRacing.js +1 -1
  88. package/lib/module/games/car-racing/CarRacing.js.map +1 -1
  89. package/lib/module/games/car-racing/CarRacingConstants.js +1 -1
  90. package/lib/module/games/car-racing/CarRacingService.js +1 -1
  91. package/lib/module/games/car-racing/CarRacingService.js.map +1 -1
  92. package/lib/module/games/car-racing/CarRacingStore.js +1 -1
  93. package/lib/module/games/car-racing/CarRacingStore.js.map +1 -1
  94. package/lib/module/games/car-racing/components/CarComponent.js +1 -1
  95. package/lib/module/games/car-racing/components/CarComponent.js.map +1 -1
  96. package/lib/module/games/car-racing/components/GameBackground.js +1 -1
  97. package/lib/module/games/car-racing/components/GameBackground.js.map +1 -1
  98. package/lib/module/games/car-racing/components/ScoreBoard.js +1 -1
  99. package/lib/module/games/car-racing/components/ScoreBoard.js.map +1 -1
  100. package/lib/module/games/car-racing/components/index.js +1 -1
  101. package/lib/module/games/colors-sort/ColorsSort.js +1 -1
  102. package/lib/module/games/colors-sort/ColorsSort.js.map +1 -1
  103. package/lib/module/games/colors-sort/ColorsSortConstants.js +1 -1
  104. package/lib/module/games/colors-sort/ColorsSortConstants.js.map +1 -1
  105. package/lib/module/games/colors-sort/ColorsSortService.js +1 -1
  106. package/lib/module/games/colors-sort/ColorsSortStore.js +1 -1
  107. package/lib/module/games/colors-sort/ColorsSortStore.js.map +1 -1
  108. package/lib/module/games/colors-sort/components/ColorContainer.js +1 -1
  109. package/lib/module/games/colors-sort/components/ColorContainer.js.map +1 -1
  110. package/lib/module/games/colors-sort/components/GameBackground.js +1 -1
  111. package/lib/module/games/colors-sort/components/GameBackground.js.map +1 -1
  112. package/lib/module/games/colors-sort/components/ScoreBoard.js +1 -1
  113. package/lib/module/games/colors-sort/components/ScoreBoard.js.map +1 -1
  114. package/lib/module/games/colors-sort/components/index.js +1 -1
  115. package/lib/module/games/dino-jump/DinoJump.js +1 -1
  116. package/lib/module/games/dino-jump/DinoJump.js.map +1 -1
  117. package/lib/module/games/dino-jump/DinoJumpConstants.js +1 -1
  118. package/lib/module/games/dino-jump/DinoJumpConstants.js.map +1 -1
  119. package/lib/module/games/dino-jump/DinoJumpService.js +1 -1
  120. package/lib/module/games/dino-jump/DinoJumpService.js.map +1 -1
  121. package/lib/module/games/dino-jump/DinoJumpStore.js +1 -1
  122. package/lib/module/games/dino-jump/DinoJumpStore.js.map +1 -1
  123. package/lib/module/games/dino-jump/components/DinoSprite.js +1 -1
  124. package/lib/module/games/dino-jump/components/DinoSprite.js.map +1 -1
  125. package/lib/module/games/dino-jump/components/GameArea.js +1 -1
  126. package/lib/module/games/dino-jump/components/GameBackground.js +1 -1
  127. package/lib/module/games/dino-jump/components/GameBackground.js.map +1 -1
  128. package/lib/module/games/dino-jump/components/ObstacleSprite.js +1 -1
  129. package/lib/module/games/dino-jump/components/ObstacleSprite.js.map +1 -1
  130. package/lib/module/games/dino-jump/components/ScoreBoard.js +1 -1
  131. package/lib/module/games/dino-jump/components/ScoreBoard.js.map +1 -1
  132. package/lib/module/games/dino-jump/components/StarSprite.js +1 -1
  133. package/lib/module/games/dino-jump/components/index.js +1 -1
  134. package/lib/module/games/flappy-bird/FlappyBird.js +1 -1
  135. package/lib/module/games/flappy-bird/FlappyBird.js.map +1 -1
  136. package/lib/module/games/flappy-bird/FlappyBirdConstants.js +1 -1
  137. package/lib/module/games/flappy-bird/FlappyBirdConstants.js.map +1 -1
  138. package/lib/module/games/flappy-bird/FlappyBirdStore.js +1 -1
  139. package/lib/module/games/flappy-bird/FlappyBirdStore.js.map +1 -1
  140. package/lib/module/games/flappy-bird/components/Bird.js +1 -1
  141. package/lib/module/games/flappy-bird/components/Bird.js.map +1 -1
  142. package/lib/module/games/flappy-bird/components/GameArea.js +1 -1
  143. package/lib/module/games/flappy-bird/components/GameArea.js.map +1 -1
  144. package/lib/module/games/flappy-bird/components/GameBackground.js +1 -1
  145. package/lib/module/games/flappy-bird/components/GameBackground.js.map +1 -1
  146. package/lib/module/games/flappy-bird/components/Pipes.js +1 -1
  147. package/lib/module/games/flappy-bird/components/Pipes.js.map +1 -1
  148. package/lib/module/games/flappy-bird/components/ScoreBoard.js +1 -1
  149. package/lib/module/games/flappy-bird/components/ScoreBoard.js.map +1 -1
  150. package/lib/module/games/flappy-bird/components/index.js +1 -1
  151. package/lib/module/games/fruit-merger/FruitMerger.js +1 -1
  152. package/lib/module/games/fruit-merger/FruitMerger.js.map +1 -1
  153. package/lib/module/games/fruit-merger/FruitMergerConstants.js +1 -1
  154. package/lib/module/games/fruit-merger/FruitMergerConstants.js.map +1 -1
  155. package/lib/module/games/fruit-merger/FruitMergerService.js +1 -1
  156. package/lib/module/games/fruit-merger/FruitMergerStore.js +1 -1
  157. package/lib/module/games/fruit-merger/FruitMergerStore.js.map +1 -1
  158. package/lib/module/games/fruit-merger/components/FruitItem.js +1 -1
  159. package/lib/module/games/fruit-merger/components/FruitItem.js.map +1 -1
  160. package/lib/module/games/fruit-merger/components/GameArea.js +1 -1
  161. package/lib/module/games/fruit-merger/components/GameArea.js.map +1 -1
  162. package/lib/module/games/fruit-merger/components/GameBackground.js +1 -1
  163. package/lib/module/games/fruit-merger/components/GameBackground.js.map +1 -1
  164. package/lib/module/games/fruit-merger/components/ScoreBoard.js +1 -1
  165. package/lib/module/games/fruit-merger/components/index.js +1 -1
  166. package/lib/module/games/fruit-ninja/FruitNinja.js +1 -1
  167. package/lib/module/games/fruit-ninja/FruitNinja.js.map +1 -1
  168. package/lib/module/games/fruit-ninja/FruitNinjaConstants.js +1 -1
  169. package/lib/module/games/fruit-ninja/FruitNinjaConstants.js.map +1 -1
  170. package/lib/module/games/fruit-ninja/FruitNinjaService.js +1 -1
  171. package/lib/module/games/fruit-ninja/FruitNinjaService.js.map +1 -1
  172. package/lib/module/games/fruit-ninja/FruitNinjaStore.js +1 -1
  173. package/lib/module/games/fruit-ninja/FruitNinjaStore.js.map +1 -1
  174. package/lib/module/games/fruit-ninja/components/FruitComponent.js +1 -1
  175. package/lib/module/games/fruit-ninja/components/FruitComponent.js.map +1 -1
  176. package/lib/module/games/fruit-ninja/components/GameArea.js +1 -1
  177. package/lib/module/games/fruit-ninja/components/GameArea.js.map +1 -1
  178. package/lib/module/games/fruit-ninja/components/GameBackground.js +1 -1
  179. package/lib/module/games/fruit-ninja/components/GameBackground.js.map +1 -1
  180. package/lib/module/games/fruit-ninja/components/ScoreBoard.js +1 -1
  181. package/lib/module/games/fruit-ninja/components/index.js +1 -1
  182. package/lib/module/games/game-2048/Game2048.js +1 -1
  183. package/lib/module/games/game-2048/Game2048.js.map +1 -1
  184. package/lib/module/games/game-2048/Game2048Constants.js +1 -1
  185. package/lib/module/games/game-2048/Game2048Service.js +1 -1
  186. package/lib/module/games/game-2048/Game2048Store.js +1 -1
  187. package/lib/module/games/game-2048/Game2048Store.js.map +1 -1
  188. package/lib/module/games/game-2048/components/GameBackground.js +1 -1
  189. package/lib/module/games/game-2048/components/GameBackground.js.map +1 -1
  190. package/lib/module/games/game-2048/components/GameGrid.js +1 -1
  191. package/lib/module/games/game-2048/components/GameGrid.js.map +1 -1
  192. package/lib/module/games/game-2048/components/GameTile.js +1 -1
  193. package/lib/module/games/game-2048/components/GameTile.js.map +1 -1
  194. package/lib/module/games/game-2048/components/ScoreBoard.js +1 -1
  195. package/lib/module/games/game-2048/components/ScoreBoard.js.map +1 -1
  196. package/lib/module/games/game-2048/components/index.js +1 -1
  197. package/lib/module/games/maze-runner/MazeRunner.js +1 -1
  198. package/lib/module/games/maze-runner/MazeRunner.js.map +1 -1
  199. package/lib/module/games/maze-runner/MazeRunnerConstants.js +1 -1
  200. package/lib/module/games/maze-runner/MazeRunnerConstants.js.map +1 -1
  201. package/lib/module/games/maze-runner/MazeRunnerService.js +1 -1
  202. package/lib/module/games/maze-runner/MazeRunnerService.js.map +1 -1
  203. package/lib/module/games/maze-runner/components/EnhancedBallComponent.js +1 -1
  204. package/lib/module/games/maze-runner/components/EnhancedBallComponent.js.map +1 -1
  205. package/lib/module/games/maze-runner/components/EnhancedGameArea.js +1 -1
  206. package/lib/module/games/maze-runner/components/EnhancedGameArea.js.map +1 -1
  207. package/lib/module/games/maze-runner/components/GameBackground.js +1 -1
  208. package/lib/module/games/maze-runner/components/GameBackground.js.map +1 -1
  209. package/lib/module/games/maze-runner/components/ScoreBoard.js +1 -1
  210. package/lib/module/games/maze-runner/components/ScoreBoard.js.map +1 -1
  211. package/lib/module/games/maze-runner/components/SkiaPipeComponent.js +1 -1
  212. package/lib/module/games/maze-runner/components/StaticGameBackground.js +1 -1
  213. package/lib/module/games/maze-runner/components/WallComponent.js +1 -1
  214. package/lib/module/games/maze-runner/components/WallComponent.js.map +1 -1
  215. package/lib/module/games/maze-runner/components/index.js +1 -1
  216. package/lib/module/games/perfect-circle/PerfectCircle.js +1 -1
  217. package/lib/module/games/perfect-circle/PerfectCircle.js.map +1 -1
  218. package/lib/module/games/perfect-circle/PerfectCircleConstants.js +1 -1
  219. package/lib/module/games/perfect-circle/PerfectCircleConstants.js.map +1 -1
  220. package/lib/module/games/perfect-circle/PerfectCircleService.js +1 -1
  221. package/lib/module/games/perfect-circle/PerfectCircleService.js.map +1 -1
  222. package/lib/module/games/perfect-circle/PerfectCircleStore.js +1 -1
  223. package/lib/module/games/perfect-circle/PerfectCircleStore.js.map +1 -1
  224. package/lib/module/games/perfect-circle/components/DrawingCanvas.js +1 -1
  225. package/lib/module/games/perfect-circle/components/DrawingCanvas.js.map +1 -1
  226. package/lib/module/games/perfect-circle/components/GameBackground.js +1 -1
  227. package/lib/module/games/perfect-circle/components/GameBackground.js.map +1 -1
  228. package/lib/module/games/perfect-circle/components/ScoreBoard.js +1 -1
  229. package/lib/module/games/perfect-circle/index.js +1 -1
  230. package/lib/module/games/popit-fidget/PopitFidget.js +1 -1
  231. package/lib/module/games/popit-fidget/PopitFidget.js.map +1 -1
  232. package/lib/module/games/popit-fidget/PopitFidgetConstants.js +1 -1
  233. package/lib/module/games/popit-fidget/PopitFidgetService.js +1 -1
  234. package/lib/module/games/popit-fidget/PopitFidgetService.js.map +1 -1
  235. package/lib/module/games/popit-fidget/PopitFidgetStore.js +1 -1
  236. package/lib/module/games/popit-fidget/PopitFidgetStore.js.map +1 -1
  237. package/lib/module/games/popit-fidget/components/BubbleComponent.js +1 -1
  238. package/lib/module/games/popit-fidget/components/BubbleComponent.js.map +1 -1
  239. package/lib/module/games/popit-fidget/components/FidgetGrid.js +1 -1
  240. package/lib/module/games/popit-fidget/components/FidgetGrid.js.map +1 -1
  241. package/lib/module/games/popit-fidget/components/GameBackground.js +1 -1
  242. package/lib/module/games/popit-fidget/components/GameBackground.js.map +1 -1
  243. package/lib/module/games/popit-fidget/components/ScoreBoard.js +1 -1
  244. package/lib/module/games/popit-fidget/components/ScoreBoard.js.map +1 -1
  245. package/lib/module/games/popit-fidget/components/index.js +1 -1
  246. package/lib/module/games/sliding-numbers/SlidingNumbers.js +1 -1
  247. package/lib/module/games/sliding-numbers/SlidingNumbers.js.map +1 -1
  248. package/lib/module/games/sliding-numbers/SlidingNumbersConstants.js +1 -1
  249. package/lib/module/games/sliding-numbers/SlidingNumbersService.js +1 -1
  250. package/lib/module/games/sliding-numbers/SlidingNumbersStore.js +1 -1
  251. package/lib/module/games/sliding-numbers/SlidingNumbersStore.js.map +1 -1
  252. package/lib/module/games/sliding-numbers/components/GameBackground.js +1 -1
  253. package/lib/module/games/sliding-numbers/components/GameBackground.js.map +1 -1
  254. package/lib/module/games/sliding-numbers/components/NumbersGrid.js +1 -1
  255. package/lib/module/games/sliding-numbers/components/NumbersGrid.js.map +1 -1
  256. package/lib/module/games/sliding-numbers/components/NumbersTile.js +1 -1
  257. package/lib/module/games/sliding-numbers/components/NumbersTile.js.map +1 -1
  258. package/lib/module/games/sliding-numbers/components/ScoreBoard.js +1 -1
  259. package/lib/module/games/sliding-numbers/components/ScoreBoard.js.map +1 -1
  260. package/lib/module/games/sliding-numbers/components/index.js +1 -1
  261. package/lib/module/games/snake/Snake.js +1 -1
  262. package/lib/module/games/snake/Snake.js.map +1 -1
  263. package/lib/module/games/snake/SnakeConstants.js +1 -1
  264. package/lib/module/games/snake/SnakeService.js +1 -1
  265. package/lib/module/games/snake/SnakeStore.js +1 -1
  266. package/lib/module/games/snake/SnakeStore.js.map +1 -1
  267. package/lib/module/games/snake/components/GameBackground.js +1 -1
  268. package/lib/module/games/snake/components/GameBackground.js.map +1 -1
  269. package/lib/module/games/snake/components/GameGrid.js +1 -1
  270. package/lib/module/games/snake/components/GameGrid.js.map +1 -1
  271. package/lib/module/games/snake/components/ScoreBoard.js +1 -1
  272. package/lib/module/games/snake/components/index.js +1 -1
  273. package/lib/module/games/snake/index.js +1 -1
  274. package/lib/module/games/space-fighter/SpaceFighter.js +1 -1
  275. package/lib/module/games/space-fighter/SpaceFighter.js.map +1 -1
  276. package/lib/module/games/space-fighter/SpaceFighterConstants.js +1 -1
  277. package/lib/module/games/space-fighter/SpaceFighterConstants.js.map +1 -1
  278. package/lib/module/games/space-fighter/SpaceFighterService.js +1 -1
  279. package/lib/module/games/space-fighter/SpaceFighterStore.js +1 -1
  280. package/lib/module/games/space-fighter/SpaceFighterStore.js.map +1 -1
  281. package/lib/module/games/space-fighter/components/AsteroidComponent.js +1 -1
  282. package/lib/module/games/space-fighter/components/GameArea.js +1 -1
  283. package/lib/module/games/space-fighter/components/GameArea.js.map +1 -1
  284. package/lib/module/games/space-fighter/components/GameBackground.js +1 -1
  285. package/lib/module/games/space-fighter/components/GameBackground.js.map +1 -1
  286. package/lib/module/games/space-fighter/components/ScoreBoard.js +1 -1
  287. package/lib/module/games/space-fighter/components/ScoreBoard.js.map +1 -1
  288. package/lib/module/games/space-fighter/components/Spacecraft3D.js +1 -1
  289. package/lib/module/games/space-fighter/components/Spacecraft3D.js.map +1 -1
  290. package/lib/module/games/space-fighter/components/SpacecraftPath.js +1 -1
  291. package/lib/module/games/space-fighter/components/index.js +1 -1
  292. package/lib/module/games/whack-a-mole/WhackAMole.js +1 -1
  293. package/lib/module/games/whack-a-mole/WhackAMole.js.map +1 -1
  294. package/lib/module/games/whack-a-mole/WhackAMoleConstants.js +1 -1
  295. package/lib/module/games/whack-a-mole/WhackAMoleConstants.js.map +1 -1
  296. package/lib/module/games/whack-a-mole/WhackAMoleService.js +1 -1
  297. package/lib/module/games/whack-a-mole/WhackAMoleStore.js +1 -1
  298. package/lib/module/games/whack-a-mole/WhackAMoleStore.js.map +1 -1
  299. package/lib/module/games/whack-a-mole/components/GameBackground.js +1 -1
  300. package/lib/module/games/whack-a-mole/components/GameBackground.js.map +1 -1
  301. package/lib/module/games/whack-a-mole/components/GameGrid.js +1 -1
  302. package/lib/module/games/whack-a-mole/components/GameHole.js +1 -1
  303. package/lib/module/games/whack-a-mole/components/GameHole.js.map +1 -1
  304. package/lib/module/games/whack-a-mole/components/MoleCharacter.js +1 -1
  305. package/lib/module/games/whack-a-mole/components/MoleCharacter.js.map +1 -1
  306. package/lib/module/games/whack-a-mole/components/ScoreBoard.js +1 -1
  307. package/lib/module/games/whack-a-mole/components/ScoreBoard.js.map +1 -1
  308. package/lib/module/games/whack-a-mole/components/index.js +1 -1
  309. package/lib/module/helpers/AbstractFruits.js +1 -0
  310. package/lib/module/helpers/AbstractFruits.js.map +1 -0
  311. package/lib/module/helpers/AnimationFrame.js +1 -1
  312. package/lib/module/helpers/AnimationTracker.js +1 -1
  313. package/lib/module/helpers/ErrorHandler.js +1 -1
  314. package/lib/module/helpers/GameControlButton.js +1 -1
  315. package/lib/module/helpers/GameControlButton.js.map +1 -1
  316. package/lib/module/helpers/GameOverModal.js +1 -1
  317. package/lib/module/helpers/GameSettingsModal.js +1 -1
  318. package/lib/module/helpers/ParticleBlast.js +1 -1
  319. package/lib/module/helpers/ScoreBoardContainer.js +1 -1
  320. package/lib/module/helpers/ScoreBoardContainer.js.map +1 -1
  321. package/lib/module/helpers/index.js +1 -1
  322. package/lib/module/helpers/index.js.map +1 -1
  323. package/lib/module/index.js +1 -1
  324. package/lib/module/services/GamesConstants.js +1 -1
  325. package/lib/module/services/GamesService.js +1 -1
  326. package/lib/module/services/GamesService.js.map +1 -1
  327. package/lib/module/services/HapticsService.js +1 -1
  328. package/lib/module/services/ScoringService.js +1 -1
  329. package/lib/module/services/SoundsService.js +1 -1
  330. package/lib/module/services/UtilsService.js +1 -1
  331. package/lib/module/services/UtilsService.js.map +1 -1
  332. package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts.map +1 -1
  333. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts +5 -1
  334. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts.map +1 -1
  335. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts.map +1 -1
  336. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts.map +1 -1
  337. package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts.map +1 -1
  338. package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts.map +1 -1
  339. package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts.map +1 -1
  340. package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts.map +1 -1
  341. package/lib/typescript/src/games/bike-racing/BikeRacing.d.ts.map +1 -1
  342. package/lib/typescript/src/games/bike-racing/BikeRacingService.d.ts +6 -2
  343. package/lib/typescript/src/games/bike-racing/BikeRacingService.d.ts.map +1 -1
  344. package/lib/typescript/src/games/bike-racing/BikeRacingStore.d.ts +9 -0
  345. package/lib/typescript/src/games/bike-racing/BikeRacingStore.d.ts.map +1 -1
  346. package/lib/typescript/src/games/bike-racing/components/BikeComponent.d.ts.map +1 -1
  347. package/lib/typescript/src/games/bike-racing/components/GameBackground.d.ts.map +1 -1
  348. package/lib/typescript/src/games/bike-racing/components/ScoreBoard.d.ts.map +1 -1
  349. package/lib/typescript/src/games/block-blast/BlockBlast.d.ts.map +1 -1
  350. package/lib/typescript/src/games/block-blast/BlockBlastConstants.d.ts +2 -2
  351. package/lib/typescript/src/games/block-blast/BlockBlastConstants.d.ts.map +1 -1
  352. package/lib/typescript/src/games/block-blast/BlockBlastService.d.ts.map +1 -1
  353. package/lib/typescript/src/games/block-blast/BlockBlastStore.d.ts +13 -1
  354. package/lib/typescript/src/games/block-blast/BlockBlastStore.d.ts.map +1 -1
  355. package/lib/typescript/src/games/block-blast/components/BlastAnimation.d.ts +12 -0
  356. package/lib/typescript/src/games/block-blast/components/BlastAnimation.d.ts.map +1 -0
  357. package/lib/typescript/src/games/block-blast/components/BlockPieceComponent.d.ts +1 -4
  358. package/lib/typescript/src/games/block-blast/components/BlockPieceComponent.d.ts.map +1 -1
  359. package/lib/typescript/src/games/block-blast/components/GameArea.d.ts.map +1 -1
  360. package/lib/typescript/src/games/block-blast/components/GameBackground.d.ts.map +1 -1
  361. package/lib/typescript/src/games/block-blast/components/GridComponent.d.ts +4 -2
  362. package/lib/typescript/src/games/block-blast/components/GridComponent.d.ts.map +1 -1
  363. package/lib/typescript/src/games/bubble-shooter/BubbleShooter.d.ts.map +1 -1
  364. package/lib/typescript/src/games/bubble-shooter/BubbleShooterConstants.d.ts +12 -6
  365. package/lib/typescript/src/games/bubble-shooter/BubbleShooterConstants.d.ts.map +1 -1
  366. package/lib/typescript/src/games/bubble-shooter/BubbleShooterService.d.ts +1 -0
  367. package/lib/typescript/src/games/bubble-shooter/BubbleShooterService.d.ts.map +1 -1
  368. package/lib/typescript/src/games/bubble-shooter/BubbleShooterStore.d.ts +5 -1
  369. package/lib/typescript/src/games/bubble-shooter/BubbleShooterStore.d.ts.map +1 -1
  370. package/lib/typescript/src/games/bubble-shooter/components/GameArea.d.ts.map +1 -1
  371. package/lib/typescript/src/games/bubble-shooter/components/GameBackground.d.ts.map +1 -1
  372. package/lib/typescript/src/games/bubble-shooter/components/ScoreBoard.d.ts.map +1 -1
  373. package/lib/typescript/src/games/candy-crush/CandyCrushConstants.d.ts +1 -1
  374. package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts +8 -0
  375. package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts.map +1 -1
  376. package/lib/typescript/src/games/candy-crush/components/BlastAnimation.d.ts +16 -0
  377. package/lib/typescript/src/games/candy-crush/components/BlastAnimation.d.ts.map +1 -0
  378. package/lib/typescript/src/games/candy-crush/components/CandyItem.d.ts.map +1 -1
  379. package/lib/typescript/src/games/candy-crush/components/GameGrid.d.ts.map +1 -1
  380. package/lib/typescript/src/games/candy-crush/components/index.d.ts +1 -0
  381. package/lib/typescript/src/games/candy-crush/components/index.d.ts.map +1 -1
  382. package/lib/typescript/src/games/car-racing/CarRacing.d.ts.map +1 -1
  383. package/lib/typescript/src/games/car-racing/CarRacingService.d.ts +6 -2
  384. package/lib/typescript/src/games/car-racing/CarRacingService.d.ts.map +1 -1
  385. package/lib/typescript/src/games/car-racing/CarRacingStore.d.ts +9 -0
  386. package/lib/typescript/src/games/car-racing/CarRacingStore.d.ts.map +1 -1
  387. package/lib/typescript/src/games/car-racing/components/CarComponent.d.ts +0 -1
  388. package/lib/typescript/src/games/car-racing/components/CarComponent.d.ts.map +1 -1
  389. package/lib/typescript/src/games/car-racing/components/GameBackground.d.ts.map +1 -1
  390. package/lib/typescript/src/games/car-racing/components/ScoreBoard.d.ts.map +1 -1
  391. package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts.map +1 -1
  392. package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts +1 -0
  393. package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts.map +1 -1
  394. package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts +5 -1
  395. package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts.map +1 -1
  396. package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts +1 -1
  397. package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts.map +1 -1
  398. package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts.map +1 -1
  399. package/lib/typescript/src/games/dino-jump/DinoJump.d.ts.map +1 -1
  400. package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts +9 -7
  401. package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts.map +1 -1
  402. package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts +1 -1
  403. package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts +1 -0
  404. package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts.map +1 -1
  405. package/lib/typescript/src/games/dino-jump/components/DinoSprite.d.ts.map +1 -1
  406. package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts.map +1 -1
  407. package/lib/typescript/src/games/dino-jump/components/ObstacleSprite.d.ts.map +1 -1
  408. package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts.map +1 -1
  409. package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts.map +1 -1
  410. package/lib/typescript/src/games/flappy-bird/FlappyBirdConstants.d.ts +6 -0
  411. package/lib/typescript/src/games/flappy-bird/FlappyBirdConstants.d.ts.map +1 -1
  412. package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts +8 -4
  413. package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts.map +1 -1
  414. package/lib/typescript/src/games/flappy-bird/components/Bird.d.ts.map +1 -1
  415. package/lib/typescript/src/games/flappy-bird/components/GameArea.d.ts.map +1 -1
  416. package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts.map +1 -1
  417. package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts.map +1 -1
  418. package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts.map +1 -1
  419. package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts.map +1 -1
  420. package/lib/typescript/src/games/fruit-merger/FruitMergerConstants.d.ts +21 -20
  421. package/lib/typescript/src/games/fruit-merger/FruitMergerConstants.d.ts.map +1 -1
  422. package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts.map +1 -1
  423. package/lib/typescript/src/games/fruit-merger/components/FruitItem.d.ts +1 -2
  424. package/lib/typescript/src/games/fruit-merger/components/FruitItem.d.ts.map +1 -1
  425. package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts.map +1 -1
  426. package/lib/typescript/src/games/fruit-merger/components/GameBackground.d.ts.map +1 -1
  427. package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts +15 -45
  428. package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts.map +1 -1
  429. package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts +9 -33
  430. package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts.map +1 -1
  431. package/lib/typescript/src/games/fruit-ninja/FruitNinjaStore.d.ts +0 -11
  432. package/lib/typescript/src/games/fruit-ninja/FruitNinjaStore.d.ts.map +1 -1
  433. package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts +0 -1
  434. package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts.map +1 -1
  435. package/lib/typescript/src/games/fruit-ninja/components/GameArea.d.ts.map +1 -1
  436. package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts.map +1 -1
  437. package/lib/typescript/src/games/game-2048/Game2048.d.ts.map +1 -1
  438. package/lib/typescript/src/games/game-2048/Game2048Store.d.ts +20 -0
  439. package/lib/typescript/src/games/game-2048/Game2048Store.d.ts.map +1 -1
  440. package/lib/typescript/src/games/game-2048/components/GameBackground.d.ts.map +1 -1
  441. package/lib/typescript/src/games/game-2048/components/GameGrid.d.ts.map +1 -1
  442. package/lib/typescript/src/games/game-2048/components/GameTile.d.ts.map +1 -1
  443. package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts.map +1 -1
  444. package/lib/typescript/src/games/maze-runner/MazeRunnerConstants.d.ts +2 -2
  445. package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts.map +1 -1
  446. package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts +1 -1
  447. package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts.map +1 -1
  448. package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts.map +1 -1
  449. package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts +1 -1
  450. package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts.map +1 -1
  451. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts +1 -0
  452. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts.map +1 -1
  453. package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts +1 -1
  454. package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts.map +1 -1
  455. package/lib/typescript/src/games/perfect-circle/PerfectCircle.d.ts.map +1 -1
  456. package/lib/typescript/src/games/perfect-circle/PerfectCircleConstants.d.ts +1 -0
  457. package/lib/typescript/src/games/perfect-circle/PerfectCircleConstants.d.ts.map +1 -1
  458. package/lib/typescript/src/games/perfect-circle/PerfectCircleService.d.ts +5 -3
  459. package/lib/typescript/src/games/perfect-circle/PerfectCircleService.d.ts.map +1 -1
  460. package/lib/typescript/src/games/perfect-circle/PerfectCircleStore.d.ts +16 -0
  461. package/lib/typescript/src/games/perfect-circle/PerfectCircleStore.d.ts.map +1 -1
  462. package/lib/typescript/src/games/perfect-circle/components/GameBackground.d.ts.map +1 -1
  463. package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts.map +1 -1
  464. package/lib/typescript/src/games/popit-fidget/PopitFidgetConstants.d.ts +2 -2
  465. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts +4 -2
  466. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts.map +1 -1
  467. package/lib/typescript/src/games/popit-fidget/components/BubbleComponent.d.ts.map +1 -1
  468. package/lib/typescript/src/games/popit-fidget/components/FidgetGrid.d.ts.map +1 -1
  469. package/lib/typescript/src/games/popit-fidget/components/GameBackground.d.ts.map +1 -1
  470. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts +2 -1
  471. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts.map +1 -1
  472. package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts.map +1 -1
  473. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersService.d.ts +1 -1
  474. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts +10 -0
  475. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts.map +1 -1
  476. package/lib/typescript/src/games/sliding-numbers/components/GameBackground.d.ts.map +1 -1
  477. package/lib/typescript/src/games/sliding-numbers/components/NumbersGrid.d.ts.map +1 -1
  478. package/lib/typescript/src/games/sliding-numbers/components/NumbersTile.d.ts.map +1 -1
  479. package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts.map +1 -1
  480. package/lib/typescript/src/games/snake/Snake.d.ts.map +1 -1
  481. package/lib/typescript/src/games/snake/SnakeStore.d.ts +16 -0
  482. package/lib/typescript/src/games/snake/SnakeStore.d.ts.map +1 -1
  483. package/lib/typescript/src/games/snake/components/GameBackground.d.ts.map +1 -1
  484. package/lib/typescript/src/games/snake/components/GameGrid.d.ts.map +1 -1
  485. package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts.map +1 -1
  486. package/lib/typescript/src/games/space-fighter/SpaceFighterConstants.d.ts +4 -4
  487. package/lib/typescript/src/games/space-fighter/components/GameArea.d.ts.map +1 -1
  488. package/lib/typescript/src/games/space-fighter/components/GameBackground.d.ts.map +1 -1
  489. package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts.map +1 -1
  490. package/lib/typescript/src/games/space-fighter/components/Spacecraft3D.d.ts.map +1 -1
  491. package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts.map +1 -1
  492. package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts +8 -3
  493. package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts.map +1 -1
  494. package/lib/typescript/src/games/whack-a-mole/WhackAMoleStore.d.ts.map +1 -1
  495. package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts.map +1 -1
  496. package/lib/typescript/src/games/whack-a-mole/components/GameHole.d.ts.map +1 -1
  497. package/lib/typescript/src/games/whack-a-mole/components/MoleCharacter.d.ts.map +1 -1
  498. package/lib/typescript/src/helpers/AbstractFruits.d.ts +207 -0
  499. package/lib/typescript/src/helpers/AbstractFruits.d.ts.map +1 -0
  500. package/lib/typescript/src/helpers/GameControlButton.d.ts +4 -7
  501. package/lib/typescript/src/helpers/GameControlButton.d.ts.map +1 -1
  502. package/lib/typescript/src/helpers/ParticleBlast.d.ts +1 -1
  503. package/lib/typescript/src/helpers/ParticleBlast.d.ts.map +1 -1
  504. package/lib/typescript/src/helpers/index.d.ts +1 -0
  505. package/lib/typescript/src/helpers/index.d.ts.map +1 -1
  506. package/lib/typescript/src/services/UtilsService.d.ts +2 -0
  507. package/lib/typescript/src/services/UtilsService.d.ts.map +1 -1
  508. package/package.json +7 -3
@@ -1 +1 @@
1
- "use strict";import React,{useCallback,useMemo}from 'react';import{View,StyleSheet,TouchableOpacity}from 'react-native';import{GestureHandlerRootView}from 'react-native-gesture-handler';import{useFruits,useCurrentFruit,useNextFruitType,useFruitMergerStore,useIsPlaying}from "../FruitMergerStore.js";import{FruitItem}from "./FruitItem.js";import{FRUIT_MERGER_GAME_CONFIG,FRUIT_TYPES}from "../FruitMergerConstants.js";import{playSound,GAME_SOUNDS}from "../../../services/SoundsService.js";import{playHaptic,HapticType}from "../../../services/HapticsService.js";import{jsx as _jsx,jsxs as _jsxs}from "react/jsx-runtime";export const GameArea = React.memo(({settings})=>{const fruits = useFruits();const currentFruit = useCurrentFruit();const nextFruitType = useNextFruitType();const isPlaying = useIsPlaying();const dropCurrentFruit = useFruitMergerStore(state => state.dropCurrentFruit);const updateCurrentFruitPosition = useFruitMergerStore(state => state.updateCurrentFruitPosition);const nextFruitData = useMemo(()=> FRUIT_TYPES[nextFruitType],[nextFruitType]);if(!nextFruitData){return null;}const handleTap = useCallback(()=>{if(!isPlaying || !currentFruit)return;dropCurrentFruit();playSound(GAME_SOUNDS.FRUIT_MERGER.DROP,settings.enableSounds);playHaptic(HapticType.LIGHT,settings.enableHaptics);},[isPlaying,currentFruit,dropCurrentFruit,settings.enableSounds,settings.enableHaptics]);const lastUpdateRef = React.useRef(0);const handleDrag = useCallback(x =>{const now = Date.now();if(now - lastUpdateRef.current > 16){updateCurrentFruitPosition(x);lastUpdateRef.current = now;}},[updateCurrentFruitPosition]);return _jsx(View,{style:styles.container,children:_jsx(GestureHandlerRootView,{children:_jsx(TouchableOpacity,{style:styles.container,activeOpacity:1,onPress:handleTap,children:_jsxs(View,{style:styles.gameContainer,children:[currentFruit && _jsx(FruitItem,{fruit:currentFruit,onDrag:handleDrag,isDraggable:true},currentFruit.id),fruits.map(fruit => _jsx(FruitItem,{fruit:fruit,isDraggable:false},fruit.id))]})})})});});const styles = StyleSheet.create({container:{flex:1,justifyContent:'center',alignItems:'center'},gameContainer:{width:FRUIT_MERGER_GAME_CONFIG.CONTAINER_WIDTH,height:FRUIT_MERGER_GAME_CONFIG.CONTAINER_HEIGHT,backgroundColor:'rgba(255,248,231,0.65)',borderRadius:15,borderWidth:5,borderColor:'#8B4513',overflow:'hidden',position:'relative'},nextFruitPreview:{position:'absolute',top:-80,alignItems:'center'},previewLabel:{fontSize:12,fontWeight:'700',color:'#4CAF50',marginBottom:6},previewFruit:{borderRadius:1000,justifyContent:'center',alignItems:'center',borderWidth:2,borderColor:'#4CAF50'},emoji:{textAlign:'center'}});GameArea.displayName = 'GameArea';
1
+ "use strict";import r,{useCallback as t,useMemo as e,useRef as o}from"react";import{View as i,StyleSheet as n}from"react-native";import{useSharedValue as s,runOnJS as a}from"react-native-reanimated";import{Gesture as c,GestureDetector as m,GestureHandlerRootView as l}from"react-native-gesture-handler";import{Canvas as u,Circle as d}from"@shopify/react-native-skia";import{useFruits as f,useCurrentFruit as g,useFruitMergerStore as h,useIsPlaying as p}from"../FruitMergerStore.js";import{FruitItem as v}from"./FruitItem.js";import{FRUIT_MERGER_GAME_CONFIG as b,FRUIT_TYPES as j}from"../FruitMergerConstants.js";import{playSound as y,GAME_SOUNDS as C}from"../../../services/SoundsService.js";import{playHaptic as x,HapticType as F}from"../../../services/HapticsService.js";import{jsx as A,jsxs as w}from"react/jsx-runtime";const M=r.memo(({currentFruit:r})=>{const t=j[r.typeId]?.size||40,e=r.y+t/2+15,o=(b.PLAY_AREA_HEIGHT-10-e)/12;return A(u,{style:I.trajectoryCanvas,pointerEvents:"none",children:Array.from({length:12},(t,i)=>{const n=e+i*o,s=.6-.04*i,a=4-.2*i;return A(d,{cx:r.x,cy:n,r:Math.max(a,1.5),color:`rgba(139, 69, 19, ${Math.max(s,.15)})`},i)})})},(r,t)=>r.currentFruit.x===t.currentFruit.x&&r.currentFruit.y===t.currentFruit.y&&r.currentFruit.typeId===t.currentFruit.typeId);M.displayName="TrajectoryDots";export const GameArea=r.memo(({settings:r})=>{const n=f(),u=g(),d=p(),S=h(r=>r.dropCurrentFruit),D=h(r=>r.updateCurrentFruitPosition),G=o(0),W=s(0),k=o(r);k.current=r;const z=t(()=>{d&&u&&(S(),y(C.FRUIT_MERGER.DROP,k.current.enableSounds),x(F.LIGHT,k.current.enableHaptics))},[d,u,S]),B=t(r=>{const t=Date.now();t-G.current>16&&(D(r),G.current=t)},[D]),R=e(()=>c.Pan().onStart(()=>{const r=u;r&&(W.value=r.x)}).onUpdate(r=>{if(!u)return;const t=j[u.typeId];if(!t)return;const e=W.value+r.translationX,o=t.size/2,i=Math.max(o,Math.min(b.PLAY_AREA_WIDTH-o,e));a(B)(i)}).onEnd(()=>{a(z)()}),[u,B,z,W]),E=e(()=>c.Tap().onEnd(()=>{a(z)()}),[z]),H=e(()=>c.Race(R,E),[R,E]);return A(i,{style:I.container,children:A(l,{style:I.container,children:A(m,{gesture:H,children:w(i,{style:I.gameContainer,children:[u&&A(M,{currentFruit:u}),u&&A(v,{fruit:u,isDraggable:!1},u.id),n.map(r=>A(v,{fruit:r,isDraggable:!1},r.id))]})})})})});const I=n.create({container:{flex:1,justifyContent:"center",alignItems:"center"},gameContainer:{width:b.CONTAINER_WIDTH,height:b.CONTAINER_HEIGHT,backgroundColor:"rgba(255, 248, 231, 0.65)",borderRadius:15,borderWidth:5,borderColor:"#8B4513",overflow:"hidden",position:"relative"},trajectoryCanvas:{position:"absolute",top:0,left:0,width:b.CONTAINER_WIDTH,height:b.CONTAINER_HEIGHT,zIndex:0},nextFruitPreview:{position:"absolute",top:-80,alignItems:"center"},previewLabel:{fontSize:12,fontWeight:"700",color:"#4CAF50",marginBottom:6},previewFruit:{borderRadius:1e3,justifyContent:"center",alignItems:"center",borderWidth:2,borderColor:"#4CAF50"},emoji:{textAlign:"center"}});GameArea.displayName="GameArea";
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useMemo","View","StyleSheet","TouchableOpacity","GestureHandlerRootView","useFruits","useCurrentFruit","useNextFruitType","useFruitMergerStore","useIsPlaying","FruitItem","FRUIT_MERGER_GAME_CONFIG","FRUIT_TYPES","playSound","GAME_SOUNDS","playHaptic","HapticType","jsx","_jsx","jsxs","_jsxs","GameArea","memo","settings","fruits","currentFruit","nextFruitType","isPlaying","dropCurrentFruit","state","updateCurrentFruitPosition","nextFruitData","handleTap","FRUIT_MERGER","DROP","enableSounds","LIGHT","enableHaptics","lastUpdateRef","useRef","handleDrag","x","now","Date","current","style","styles","container","children","activeOpacity","onPress","gameContainer","fruit","onDrag","isDraggable","id","map","create","flex","justifyContent","alignItems","width","CONTAINER_WIDTH","height","CONTAINER_HEIGHT","backgroundColor","borderRadius","borderWidth","borderColor","overflow","position","nextFruitPreview","top","previewLabel","fontSize","fontWeight","color","marginBottom","previewFruit","emoji","textAlign","displayName"],"sourceRoot":"../../../../../src","sources":["games/fruit-merger/components/GameArea.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AACnD,SAASC,IAAI,EAAEC,UAAU,EAAEC,gBAAgB,QAAQ,cAAc;AACjE,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,SAASC,SAAS,EAAEC,eAAe,EAAEC,gBAAgB,EAAEC,mBAAmB,EAAEC,YAAY,QAAQ,wBAAqB;AACrH,SAASC,SAAS,QAAQ,gBAAa;AACvC,SAASC,wBAAwB,EAAEC,WAAW,QAAQ,4BAAyB;AAC/E,SAASC,SAAS,EAAEC,WAAW,QAAQ,oCAAiC;AACxE,SAASC,UAAU,EAAEC,UAAU,QAAQ,qCAAkC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAO1E,OAAO,MAAMC,QAAiC,gBAAGvB,KAAK,CAACwB,IAAI,CAAC,CAAC;EAAEC;AAAS,CAAC,KAAK;EAC5E,MAAMC,MAAM,GAAGnB,SAAS,CAAC,CAAC;EAC1B,MAAMoB,YAAY,GAAGnB,eAAe,CAAC,CAAC;EACtC,MAAMoB,aAAa,GAAGnB,gBAAgB,CAAC,CAAC;EACxC,MAAMoB,SAAS,GAAGlB,YAAY,CAAC,CAAC;EAChC,MAAMmB,gBAAgB,GAAGpB,mBAAmB,CAACqB,KAAK,IAAIA,KAAK,CAACD,gBAAgB,CAAC;EAC7E,MAAME,0BAA0B,GAAGtB,mBAAmB,CAACqB,KAAK,IAAIA,KAAK,CAACC,0BAA0B,CAAC;;EAEjG;EACA,MAAMC,aAAa,GAAG/B,OAAO,CAAC,MAAMY,WAAW,CAACc,aAAa,CAAC,EAAE,CAACA,aAAa,CAAC,CAAC;EAEhF,IAAI,CAACK,aAAa,EAAE;IAClB,OAAO,IAAI;EACb;EAEA,MAAMC,SAAS,GAAGjC,WAAW,CAAC,MAAM;IAClC,IAAI,CAAC4B,SAAS,IAAI,CAACF,YAAY,EAAE;IACjCG,gBAAgB,CAAC,CAAC;IAClBf,SAAS,CAACC,WAAW,CAACmB,YAAY,CAACC,IAAI,EAAEX,QAAQ,CAACY,YAAY,CAAC;IAC/DpB,UAAU,CAACC,UAAU,CAACoB,KAAK,EAAEb,QAAQ,CAACc,aAAa,CAAC;EACtD,CAAC,EAAE,CAACV,SAAS,EAAEF,YAAY,EAAEG,gBAAgB,EAAEL,QAAQ,CAACY,YAAY,EAAEZ,QAAQ,CAACc,aAAa,CAAC,CAAC;EAE9F,MAAMC,aAAa,GAAGxC,KAAK,CAACyC,MAAM,CAAC,CAAC,CAAC;EAErC,MAAMC,UAAU,GAAGzC,WAAW,CAAE0C,CAAS,IAAK;IAC5C;IACA,MAAMC,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAC,CAAC;IACtB,IAAIA,GAAG,GAAGJ,aAAa,CAACM,OAAO,GAAG,EAAE,EAAE;MACpCd,0BAA0B,CAACW,CAAC,CAAC;MAC7BH,aAAa,CAACM,OAAO,GAAGF,GAAG;IAC7B;EACF,CAAC,EAAE,CAACZ,0BAA0B,CAAC,CAAC;EAEhC,oBACEZ,IAAA,CAACjB,IAAI;IAAC4C,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5B9B,IAAA,CAACd,sBAAsB;MAAA4C,QAAA,eACvB9B,IAAA,CAACf,gBAAgB;QACf0C,KAAK,EAAEC,MAAM,CAACC,SAAU;QACxBE,aAAa,EAAE,CAAE;QACjBC,OAAO,EAAElB,SAAU;QAAAgB,QAAA,eAEnB5B,KAAA,CAACnB,IAAI;UAAC4C,KAAK,EAAEC,MAAM,CAACK,aAAc;UAAAH,QAAA,GACjCvB,YAAY,iBACXP,IAAA,CAACR,SAAS;YAER0C,KAAK,EAAE3B,YAAa;YACpB4B,MAAM,EAAEb,UAAW;YACnBc,WAAW,EAAE;UAAK,GAHb7B,YAAY,CAAC8B,EAInB,CACF,EAEA/B,MAAM,CAACgC,GAAG,CAAEJ,KAAK,iBAChBlC,IAAA,CAACR,SAAS;YAER0C,KAAK,EAAEA,KAAM;YACbE,WAAW,EAAE;UAAM,GAFdF,KAAK,CAACG,EAGZ,CACF,CAAC;QAAA,CACE;MAAC,CACW;IAAC,CACK;EAAC,CACrB,CAAC;AAEX,CAAC,CAAC;AAEF,MAAMT,MAAM,GAAG5C,UAAU,CAACuD,MAAM,CAAC;EAC/BV,SAAS,EAAE;IACTW,IAAI,EAAE,CAAC;IACPC,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EACd,CAAC;EACDT,aAAa,EAAE;IACbU,KAAK,EAAElD,wBAAwB,CAACmD,eAAe;IAC/CC,MAAM,EAAEpD,wBAAwB,CAACqD,gBAAgB;IACjDC,eAAe,EAAE,2BAA2B;IAC5CC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,CAAC;IACdC,WAAW,EAAE,SAAS;IACtBC,QAAQ,EAAE,QAAQ;IAClBC,QAAQ,EAAE;EACZ,CAAC;EACDC,gBAAgB,EAAE;IAChBD,QAAQ,EAAE,UAAU;IACpBE,GAAG,EAAE,CAAC,EAAE;IACRZ,UAAU,EAAE;EACd,CAAC;EACDa,YAAY,EAAE;IACZC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,KAAK;IACjBC,KAAK,EAAE,SAAS;IAChBC,YAAY,EAAE;EAChB,CAAC;EACDC,YAAY,EAAE;IACZZ,YAAY,EAAE,IAAI;IAClBP,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBO,WAAW,EAAE,CAAC;IACdC,WAAW,EAAE;EACf,CAAC;EACDW,KAAK,EAAE;IACLC,SAAS,EAAE;EACb;AACF,CAAC,CAAC;AAEF3D,QAAQ,CAAC4D,WAAW,GAAG,UAAU","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useMemo","useRef","View","StyleSheet","useSharedValue","runOnJS","Gesture","GestureDetector","GestureHandlerRootView","Canvas","Circle","useFruits","useCurrentFruit","useFruitMergerStore","useIsPlaying","FruitItem","FRUIT_MERGER_GAME_CONFIG","FRUIT_TYPES","playSound","GAME_SOUNDS","playHaptic","HapticType","jsx","_jsx","jsxs","_jsxs","TrajectoryDots","memo","currentFruit","fruitSize","typeId","size","startY","y","endY","PLAY_AREA_HEIGHT","spacing","style","styles","trajectoryCanvas","pointerEvents","children","Array","from","length","_","i","opacity","radius","cx","x","cy","r","Math","max","color","prevProps","nextProps","displayName","GameArea","settings","fruits","isPlaying","dropCurrentFruit","state","updateCurrentFruitPosition","lastUpdateRef","startX","settingsRef","current","handleTap","FRUIT_MERGER","DROP","enableSounds","LIGHT","enableHaptics","handleDrag","now","Date","panGesture","Pan","onStart","fruit","value","onUpdate","event","fruitData","newX","translationX","clampedX","min","PLAY_AREA_WIDTH","onEnd","tapGesture","Tap","composedGesture","Race","container","gesture","gameContainer","isDraggable","id","map","create","flex","justifyContent","alignItems","width","CONTAINER_WIDTH","height","CONTAINER_HEIGHT","backgroundColor","borderRadius","borderWidth","borderColor","overflow","position","top","left","zIndex","nextFruitPreview","previewLabel","fontSize","fontWeight","marginBottom","previewFruit","emoji","textAlign"],"sourceRoot":"../../../../../src","sources":["games/fruit-merger/components/GameArea.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import React from 'react';import{View,Dimensions}from 'react-native';import{Canvas,LinearGradient,Rect,Circle,Path,Skia,vec,Group,Shadow}from '@shopify/react-native-skia';import{jsx as _jsx,jsxs as _jsxs}from "react/jsx-runtime";const{width,height}= Dimensions.get('window');const buttonAreaHeight = 250;const grassStartY = height - buttonAreaHeight;const createStaticGrassPath =()=>{const path = Skia.Path.Make();const segmentWidth = width / 8;path.moveTo(0,grassStartY);for(let i = 0;i < 8;i++){const x = i * segmentWidth;const y = grassStartY + Math.sin(i * 0.5)* 8;const controlX = x + segmentWidth / 2;const controlY = y + Math.cos(i * 0.3)* 6;path.quadTo(controlX,controlY,x + segmentWidth,y);}path.lineTo(width,height);path.lineTo(0,height);path.close();return path;};const createStaticSunRays =()=>{return Array.from({length:16},(_,index)=>{const angle = 360 / 16 * index;const radian = angle * Math.PI / 180;const isLongRay = index % 2 === 0;const rayLength = isLongRay ? 25:15;const rayWidth = isLongRay ? 4:2;const startDistance = 45;const startX = width * 0.8 + Math.cos(radian)* startDistance;const startY = height * 0.15 + Math.sin(radian)* startDistance;const endX = width * 0.8 + Math.cos(radian)*(startDistance + rayLength);const endY = height * 0.15 + Math.sin(radian)*(startDistance + rayLength);const rayPath = Skia.Path.Make();rayPath.moveTo(startX,startY);rayPath.lineTo(endX,endY);return{path:rayPath,width:rayWidth};});};const createStaticFlowerPositions =()=>{return Array.from({length:12},(_,i)=>({x:width / 12 * i + i % 3 * 15 + 20,y:grassStartY - 10 - i % 4 * 8}));};const staticGrassPath = createStaticGrassPath();const staticSunRays = createStaticSunRays();const flowerPositions = createStaticFlowerPositions();export const GameBackground =({children,offset = 0})=>{const sunY = height * 0.15 + offset * 0.5;const cloud1Y = height * 0.24 + offset * 0.5;const cloud2Y = height * 0.27 + offset * 0.2;return _jsxs(View,{style:{flex:1},children:[_jsxs(Canvas,{style:{position:'absolute',top:0,left:0,right:0,bottom:0,width,height},children:[_jsx(Rect,{x:0,y:0,width:width,height:grassStartY,children:_jsx(LinearGradient,{start:vec(0,0),end:vec(0,grassStartY),colors:['#87CEEB','#98D8E8','#B0E0E6']})}),_jsx(Rect,{x:0,y:grassStartY,width:width,height:buttonAreaHeight,children:_jsx(LinearGradient,{start:vec(0,grassStartY),end:vec(0,height),colors:['#8B4513','#A0522D','#654321']})}),_jsxs(Group,{children:[_jsxs(Circle,{cx:width * 0.8,cy:sunY,r:40,children:[_jsx(LinearGradient,{start:vec(-40,-40),end:vec(40,40),colors:['#FFFF99','#FFD700','#FFA500','#FF8C00']}),_jsx(Shadow,{dx:0,dy:0,blur:32,color:"#FFD700"})]}),_jsx(Circle,{cx:width * 0.8 - 8,cy:sunY - 8,r:15,children:_jsx(LinearGradient,{start:vec(-15,-15),end:vec(15,15),colors:['#FFFFFF','#FFFF99']})}),staticSunRays.map((_,index)=>{const angle = 360 / 16 * index;const radian = angle * Math.PI / 180;const isLongRay = index % 2 === 0;const rayLength = isLongRay ? 25:15;const rayWidth = isLongRay ? 4:2;const startDistance = 45;const startX = width * 0.8 + Math.cos(radian)* startDistance;const startY = sunY + Math.sin(radian)* startDistance;const endX = width * 0.8 + Math.cos(radian)*(startDistance + rayLength);const endY = sunY + Math.sin(radian)*(startDistance + rayLength);const rayPath = Skia.Path.Make();rayPath.moveTo(startX,startY);rayPath.lineTo(endX,endY);return _jsx(Path,{path:rayPath,style:"stroke",strokeWidth:rayWidth,color:"#FFD700",opacity:0.75},index);}),_jsx(Circle,{cx:width * 0.8,cy:sunY,r:60,opacity:0.1,children:_jsx(LinearGradient,{start:vec(-60,-60),end:vec(60,60),colors:['#FFD700','transparent']})})]}),_jsxs(Group,{children:[_jsxs(Group,{children:[_jsx(Circle,{cx:width * 0.12,cy:cloud1Y,r:16,color:"#F0F8FF",opacity:0.35,children:_jsx(Shadow,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.05)"})}),_jsx(Circle,{cx:width * 0.18,cy:cloud1Y -(height * 0.24 - height * 0.21),r:22,color:"#FFFFFF",opacity:0.45,children:_jsx(Shadow,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.05)"})}),_jsx(Circle,{cx:width * 0.25,cy:cloud1Y -(height * 0.24 - height * 0.19),r:26,color:"#F8F8FF",opacity:0.55,children:_jsx(Shadow,{dx:2,dy:3,blur:12,color:"rgba(0,0,0,0.06)"})}),_jsx(Circle,{cx:width * 0.32,cy:cloud1Y -(height * 0.24 - height * 0.21),r:20,color:"#FFFFFF",opacity:0.50,children:_jsx(Shadow,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.05)"})}),_jsx(Circle,{cx:width * 0.37,cy:cloud1Y,r:14,color:"#F0F8FF",opacity:0.40,children:_jsx(Shadow,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.04)"})})]}),_jsxs(Group,{children:[_jsx(Circle,{cx:width * 0.62,cy:cloud2Y,r:15,color:"#F0F8FF",opacity:0.40,children:_jsx(Shadow,{dx:1,dy:2,blur:10,color:"rgba(0,0,0,0.04)"})}),_jsx(Circle,{cx:width * 0.69,cy:cloud2Y -(height * 0.27 - height * 0.24),r:19,color:"#FFFFFF",opacity:0.50,children:_jsx(Shadow,{dx:1,dy:2,blur:10,color:"rgba(0,0,0,0.05)"})}),_jsx(Circle,{cx:width * 0.76,cy:cloud2Y -(height * 0.27 - height * 0.26),r:13,color:"#F8F8FF",opacity:0.45,children:_jsx(Shadow,{dx:1,dy:2,blur:10,color:"rgba(0,0,0,0.04)"})})]})]}),_jsxs(Path,{path:staticGrassPath,children:[_jsx(LinearGradient,{start:vec(0,grassStartY - 20),end:vec(0,grassStartY + 20),colors:['#32CD32','#228B22','#006400']}),_jsx(Shadow,{dx:0,dy:-2,blur:4,color:"rgba(0,0,0,0.2)"})]}),Array.from({length:25},(_,i)=>{const x = width / 25 * i + i % 3 * 5;const grassHeight = 15 + i % 4 * 5;const grassType = i % 3;const bladePath = Skia.Path.Make();bladePath.moveTo(x,grassStartY);if(grassType === 0){bladePath.quadTo(x + 1,grassStartY - grassHeight * 0.6,x + 1,grassStartY - grassHeight);return _jsx(Path,{path:bladePath,style:"stroke",strokeWidth:1.5,color:"#16a34a",opacity:0.8},`grass-${i}`);}else if(grassType === 1){bladePath.quadTo(x + 2,grassStartY - grassHeight * 0.4,x + 3,grassStartY - grassHeight);return _jsx(Path,{path:bladePath,style:"stroke",strokeWidth:2,color:"#15803d",opacity:0.7},`grass-${i}`);}else{const midHeight = grassHeight * 0.5;bladePath.quadTo(x + 1,grassStartY - midHeight,x + 2,grassStartY - grassHeight);return _jsx(Path,{path:bladePath,style:"stroke",strokeWidth:2.5,color:"#166534",opacity:0.6},`grass-${i}`);}}),_jsxs(Group,{children:[_jsxs(Group,{children:[_jsxs(Rect,{x:width * 0.05,y:grassStartY - 150,width:20,height:150,children:[_jsx(LinearGradient,{start:vec(0,0),end:vec(20,0),colors:['#654321','#8B4513','#A0522D','#8B4513']}),_jsx(Shadow,{dx:3,dy:0,blur:6,color:"rgba(0,0,0,0.4)"})]}),_jsx(Circle,{cx:width * 0.05 + 10,cy:grassStartY - 150,r:38,color:"#1B5E20",opacity:0.9,children:_jsx(Shadow,{dx:4,dy:4,blur:10,color:"rgba(0,0,0,0.3)"})}),_jsx(Circle,{cx:width * 0.05 + 18,cy:grassStartY - 180,r:32,color:"#2E7D32",opacity:0.8}),_jsx(Circle,{cx:width * 0.05 + 25,cy:grassStartY - 140,r:28,color:"#388E3C",opacity:0.7}),_jsx(Circle,{cx:width * 0.05 + 2,cy:grassStartY - 120,r:30,color:"#2E7D32",opacity:0.75})]}),_jsxs(Group,{children:[_jsxs(Rect,{x:width * 0.88,y:grassStartY - 200,width:18,height:200,children:[_jsx(LinearGradient,{start:vec(0,0),end:vec(18,0),colors:['#4A2C2A','#654321','#8B4513','#654321']}),_jsx(Shadow,{dx:-3,dy:0,blur:6,color:"rgba(0,0,0,0.4)"})]}),_jsx(Circle,{cx:width * 0.88 + 9,cy:grassStartY - 120,r:35,color:"#0D4F0C",opacity:0.95,children:_jsx(Shadow,{dx:-4,dy:4,blur:10,color:"rgba(0,0,0,0.3)"})}),_jsx(Circle,{cx:width * 0.88 + 9,cy:grassStartY - 180,r:32,color:"#1B5E20",opacity:0.9}),_jsx(Circle,{cx:width * 0.88 + 9,cy:grassStartY - 240,r:28,color:"#2E7D32",opacity:0.9})]})]}),_jsxs(Group,{children:[_jsxs(Group,{children:[_jsx(Circle,{cx:width * 0.15,cy:grassStartY - 60,r:26,color:"#1B5E20",opacity:0.95,children:_jsx(Shadow,{dx:3,dy:3,blur:8,color:"rgba(0,0,0,0.3)"})}),_jsx(Circle,{cx:width * 0.18,cy:grassStartY - 90,r:22,color:"#2E7D32",opacity:0.9}),_jsx(Circle,{cx:width * 0.21,cy:grassStartY - 70,r:18,color:"#388E3C",opacity:0.8})]}),_jsxs(Group,{children:[_jsx(Circle,{cx:width * 0.72,cy:grassStartY - 35,r:28,color:"#0D4F0C",opacity:0.95,children:_jsx(Shadow,{dx:-2,dy:3,blur:8,color:"rgba(0,0,0,0.3)"})}),_jsx(Circle,{cx:width * 0.75,cy:grassStartY - 70,r:24,color:"#1B5E20",opacity:0.9}),_jsx(Circle,{cx:width * 0.69,cy:grassStartY - 25,r:22,color:"#2E7D32",opacity:0.85})]})]}),_jsx(Group,{children:flowerPositions.map((pos,i)=>{const colors = ['#FF6B6B','#FF69B4','#9370DB','#4169E1','#FF8C00','#32CD32'];const color = colors[i % colors.length];const size = 3 + i % 3;return _jsxs(Group,{children:[_jsx(Circle,{cx:pos.x,cy:pos.y,r:size,color:color,opacity:0.8,children:_jsx(Shadow,{dx:0,dy:1,blur:1,color:"rgba(0,0,0,0.2)"})}),_jsx(Circle,{cx:pos.x,cy:pos.y,r:size * 0.4,color:"#FFD700",opacity:0.9})]},`flower-${i}`);})})]}),children]});};GameBackground.displayName = 'GameBackground';
1
+ "use strict";import r from"react";import{View as c,Dimensions as o}from"react-native";import{Canvas as t,LinearGradient as l,Rect as i,Circle as a,Path as d,Skia as e,vec as y,Group as h,Shadow as n}from"@shopify/react-native-skia";import{jsx as F,jsxs as s}from"react/jsx-runtime";const{width:x,height:p}=o.get("window"),b=250,g=p-b,u=()=>{const r=e.Path.Make(),c=x/8;r.moveTo(0,g);for(let o=0;8>o;o++){const t=o*c,l=g+8*Math.sin(.5*o),i=t+c/2,a=l+6*Math.cos(.3*o);r.quadTo(i,a,t+c,l)}return r.lineTo(x,p),r.lineTo(0,p),r.close(),r},B=()=>Array.from({length:16},(r,c)=>{const o=22.5*c*Math.PI/180,t=c%2==0,l=t?25:15,i=t?4:2,a=.8*x+45*Math.cos(o),d=.15*p+45*Math.sin(o),y=.8*x+Math.cos(o)*(45+l),h=.15*p+Math.sin(o)*(45+l),n=e.Path.Make();return n.moveTo(a,d),n.lineTo(y,h),{path:n,width:i}}),D=()=>Array.from({length:12},(r,c)=>({x:x/12*c+c%3*15+20,y:g-10-c%4*8})),E=u(),f=B(),m=D();export const GameBackground=r.memo(({children:r,offset:o=0})=>{const u=.15*p+.5*o,B=.24*p+.5*o,D=.27*p+.2*o;return s(c,{style:{flex:1},children:[s(t,{style:{position:"absolute",top:0,left:0,right:0,bottom:0,width:x,height:p},children:[F(i,{x:0,y:0,width:x,height:g,children:F(l,{start:y(0,0),end:y(0,g),colors:["#87CEEB","#98D8E8","#B0E0E6"]})}),F(i,{x:0,y:g,width:x,height:b,children:F(l,{start:y(0,g),end:y(0,p),colors:["#8B4513","#A0522D","#654321"]})}),s(h,{children:[s(a,{cx:.8*x,cy:u,r:40,children:[F(l,{start:y(-40,-40),end:y(40,40),colors:["#FFFF99","#FFD700","#FFA500","#FF8C00"]}),F(n,{dx:0,dy:0,blur:32,color:"#FFD700"})]}),F(a,{cx:.8*x-8,cy:u-8,r:15,children:F(l,{start:y(-15,-15),end:y(15,15),colors:["#FFFFFF","#FFFF99"]})}),f.map((r,c)=>{const o=22.5*c*Math.PI/180,t=c%2==0,l=t?25:15,i=t?4:2,a=.8*x+45*Math.cos(o),y=u+45*Math.sin(o),h=.8*x+Math.cos(o)*(45+l),n=u+Math.sin(o)*(45+l),s=e.Path.Make();return s.moveTo(a,y),s.lineTo(h,n),F(d,{path:s,style:"stroke",strokeWidth:i,color:"#FFD700",opacity:.75},c)}),F(a,{cx:.8*x,cy:u,r:60,opacity:.1,children:F(l,{start:y(-60,-60),end:y(60,60),colors:["#FFD700","transparent"]})})]}),s(h,{children:[s(h,{children:[F(a,{cx:.12*x,cy:B,r:16,color:"#F0F8FF",opacity:.35,children:F(n,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.05)"})}),F(a,{cx:.18*x,cy:B-(.24*p-.21*p),r:22,color:"#FFFFFF",opacity:.45,children:F(n,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.05)"})}),F(a,{cx:.25*x,cy:B-(.24*p-.19*p),r:26,color:"#F8F8FF",opacity:.55,children:F(n,{dx:2,dy:3,blur:12,color:"rgba(0,0,0,0.06)"})}),F(a,{cx:.32*x,cy:B-(.24*p-.21*p),r:20,color:"#FFFFFF",opacity:.5,children:F(n,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.05)"})}),F(a,{cx:.37*x,cy:B,r:14,color:"#F0F8FF",opacity:.4,children:F(n,{dx:1,dy:2,blur:12,color:"rgba(0,0,0,0.04)"})})]}),s(h,{children:[F(a,{cx:.62*x,cy:D,r:15,color:"#F0F8FF",opacity:.4,children:F(n,{dx:1,dy:2,blur:10,color:"rgba(0,0,0,0.04)"})}),F(a,{cx:.69*x,cy:D-(.27*p-.24*p),r:19,color:"#FFFFFF",opacity:.5,children:F(n,{dx:1,dy:2,blur:10,color:"rgba(0,0,0,0.05)"})}),F(a,{cx:.76*x,cy:D-(.27*p-.26*p),r:13,color:"#F8F8FF",opacity:.45,children:F(n,{dx:1,dy:2,blur:10,color:"rgba(0,0,0,0.04)"})})]})]}),s(d,{path:E,children:[F(l,{start:y(0,g-20),end:y(0,g+20),colors:["#32CD32","#228B22","#006400"]}),F(n,{dx:0,dy:-2,blur:4,color:"rgba(0,0,0,0.2)"})]}),Array.from({length:25},(r,c)=>{const o=x/25*c+c%3*5,t=15+c%4*5,l=c%3,i=e.Path.Make();if(i.moveTo(o,g),0===l)return i.quadTo(o+1,g-.6*t,o+1,g-t),F(d,{path:i,style:"stroke",strokeWidth:1.5,color:"#16a34a",opacity:.8},"grass-"+c);if(1===l)return i.quadTo(o+2,g-.4*t,o+3,g-t),F(d,{path:i,style:"stroke",strokeWidth:2,color:"#15803d",opacity:.7},"grass-"+c);{const r=.5*t;return i.quadTo(o+1,g-r,o+2,g-t),F(d,{path:i,style:"stroke",strokeWidth:2.5,color:"#166534",opacity:.6},"grass-"+c)}}),s(h,{children:[s(h,{children:[s(i,{x:.05*x,y:g-150,width:20,height:150,children:[F(l,{start:y(0,0),end:y(20,0),colors:["#654321","#8B4513","#A0522D","#8B4513"]}),F(n,{dx:3,dy:0,blur:6,color:"rgba(0,0,0,0.4)"})]}),F(a,{cx:.05*x+10,cy:g-150,r:38,color:"#1B5E20",opacity:.9,children:F(n,{dx:4,dy:4,blur:10,color:"rgba(0,0,0,0.3)"})}),F(a,{cx:.05*x+18,cy:g-180,r:32,color:"#2E7D32",opacity:.8}),F(a,{cx:.05*x+25,cy:g-140,r:28,color:"#388E3C",opacity:.7}),F(a,{cx:.05*x+2,cy:g-120,r:30,color:"#2E7D32",opacity:.75})]}),s(h,{children:[s(i,{x:.88*x,y:g-200,width:18,height:200,children:[F(l,{start:y(0,0),end:y(18,0),colors:["#4A2C2A","#654321","#8B4513","#654321"]}),F(n,{dx:-3,dy:0,blur:6,color:"rgba(0,0,0,0.4)"})]}),F(a,{cx:.88*x+9,cy:g-120,r:35,color:"#0D4F0C",opacity:.95,children:F(n,{dx:-4,dy:4,blur:10,color:"rgba(0,0,0,0.3)"})}),F(a,{cx:.88*x+9,cy:g-180,r:32,color:"#1B5E20",opacity:.9}),F(a,{cx:.88*x+9,cy:g-240,r:28,color:"#2E7D32",opacity:.9})]})]}),s(h,{children:[s(h,{children:[F(a,{cx:.15*x,cy:g-60,r:26,color:"#1B5E20",opacity:.95,children:F(n,{dx:3,dy:3,blur:8,color:"rgba(0,0,0,0.3)"})}),F(a,{cx:.18*x,cy:g-90,r:22,color:"#2E7D32",opacity:.9}),F(a,{cx:.21*x,cy:g-70,r:18,color:"#388E3C",opacity:.8})]}),s(h,{children:[F(a,{cx:.72*x,cy:g-35,r:28,color:"#0D4F0C",opacity:.95,children:F(n,{dx:-2,dy:3,blur:8,color:"rgba(0,0,0,0.3)"})}),F(a,{cx:.75*x,cy:g-70,r:24,color:"#1B5E20",opacity:.9}),F(a,{cx:.69*x,cy:g-25,r:22,color:"#2E7D32",opacity:.85})]})]}),F(h,{children:m.map((r,c)=>{const o=["#FF6B6B","#FF69B4","#9370DB","#4169E1","#FF8C00","#32CD32"],t=o[c%o.length],l=3+c%3;return s(h,{children:[F(a,{cx:r.x,cy:r.y,r:l,color:t,opacity:.8,children:F(n,{dx:0,dy:1,blur:1,color:"rgba(0,0,0,0.2)"})}),F(a,{cx:r.x,cy:r.y,r:.4*l,color:"#FFD700",opacity:.9})]},"flower-"+c)})})]}),r]})});GameBackground.displayName="GameBackground";
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Dimensions","Canvas","LinearGradient","Rect","Circle","Path","Skia","vec","Group","Shadow","jsx","_jsx","jsxs","_jsxs","width","height","get","buttonAreaHeight","grassStartY","createStaticGrassPath","path","Make","segmentWidth","moveTo","i","x","y","Math","sin","controlX","controlY","cos","quadTo","lineTo","close","createStaticSunRays","Array","from","length","_","index","angle","radian","PI","isLongRay","rayLength","rayWidth","startDistance","startX","startY","endX","endY","rayPath","createStaticFlowerPositions","staticGrassPath","staticSunRays","flowerPositions","GameBackground","children","offset","sunY","cloud1Y","cloud2Y","style","flex","position","top","left","right","bottom","start","end","colors","cx","cy","r","dx","dy","blur","color","map","strokeWidth","opacity","grassHeight","grassType","bladePath","midHeight","pos","size","displayName"],"sourceRoot":"../../../../../src","sources":["games/fruit-merger/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Dimensions","Canvas","LinearGradient","Rect","Circle","Path","Skia","vec","Group","Shadow","jsx","_jsx","jsxs","_jsxs","width","height","get","buttonAreaHeight","grassStartY","createStaticGrassPath","path","Make","segmentWidth","moveTo","i","x","y","Math","sin","controlX","controlY","cos","quadTo","lineTo","close","createStaticSunRays","Array","from","length","_","index","angle","radian","PI","isLongRay","rayLength","rayWidth","startDistance","startX","startY","endX","endY","rayPath","createStaticFlowerPositions","staticGrassPath","staticSunRays","flowerPositions","GameBackground","memo","children","offset","sunY","cloud1Y","cloud2Y","style","flex","position","top","left","right","bottom","start","end","colors","cx","cy","r","dx","dy","blur","color","map","strokeWidth","opacity","grassHeight","grassType","bladePath","midHeight","pos","size","displayName"],"sourceRoot":"../../../../../src","sources":["games/fruit-merger/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import React,{useMemo}from 'react';import{View,Text,StyleSheet}from 'react-native';import{useTime}from "../FruitMergerStore.js";import{FRUIT_MERGER_COLORS}from "../FruitMergerConstants.js";import{formatTime}from "../FruitMergerService.js";import{ScoreBoardContainer}from "../../../helpers/index.js";import{jsx as _jsx,jsxs as _jsxs}from "react/jsx-runtime";export const ScoreBoard = React.memo(({offset = 0})=>{const time = useTime();const formattedTime = useMemo(()=> formatTime(time),[time]);return _jsx(ScoreBoardContainer,{offset:offset,backgroundColor:FRUIT_MERGER_COLORS.SCORE_BACKGROUND,borderColor:FRUIT_MERGER_COLORS.SCORE_BORDER,children:_jsx(View,{style:styles.scoreBoard,children:_jsxs(View,{style:styles.scoreItem,children:[_jsx(Text,{style:styles.scoreLabel,children:"TIME"}),_jsx(Text,{style:styles.scoreValue,children:formattedTime})]})})});});const styles = StyleSheet.create({scoreBoard:{flexDirection:'row',justifyContent:'space-around',alignItems:'center'},scoreItem:{alignItems:'center',flex:1},scoreLabel:{fontSize:16,fontWeight:'700',color:FRUIT_MERGER_COLORS.SCORE_TEXT,marginBottom:4,letterSpacing:1},scoreValue:{fontSize:25,fontWeight:'900',color:FRUIT_MERGER_COLORS.SCORE_TEXT}});ScoreBoard.displayName = 'ScoreBoard';
1
+ "use strict";import r,{useMemo as e}from"react";import{View as o,Text as t,StyleSheet as s}from"react-native";import{useTime as i}from"../FruitMergerStore.js";import{FRUIT_MERGER_COLORS as n}from"../FruitMergerConstants.js";import{formatTime as c}from"../FruitMergerService.js";import{ScoreBoardContainer as l}from"../../../helpers/index.js";import{jsx as a,jsxs as m}from"react/jsx-runtime";export const ScoreBoard=r.memo(({offset:r=0})=>{const s=i(),d=e(()=>c(s),[s]);return a(l,{offset:r,backgroundColor:n.SCORE_BACKGROUND,borderColor:n.SCORE_BORDER,children:a(o,{style:f.scoreBoard,children:m(o,{style:f.scoreItem,children:[a(t,{style:f.scoreLabel,children:"TIME"}),a(t,{style:f.scoreValue,children:d})]})})})});const f=s.create({scoreBoard:{flexDirection:"row",justifyContent:"space-around",alignItems:"center"},scoreItem:{alignItems:"center",flex:1},scoreLabel:{fontSize:16,fontWeight:"700",color:n.SCORE_TEXT,marginBottom:4,letterSpacing:1},scoreValue:{fontSize:25,fontWeight:"900",color:n.SCORE_TEXT}});ScoreBoard.displayName="ScoreBoard";
@@ -1 +1 @@
1
- "use strict";export{ScoreBoard}from "./ScoreBoard.js";export{FruitItem}from "./FruitItem.js";export{GameArea}from "./GameArea.js";export{GameBackground}from "./GameBackground.js";
1
+ "use strict";export{ScoreBoard}from"./ScoreBoard.js";export{FruitItem}from"./FruitItem.js";export{GameArea}from"./GameArea.js";export{GameBackground}from"./GameBackground.js";
@@ -1 +1 @@
1
- "use strict";import React,{useEffect,useRef}from 'react';import{View,StyleSheet}from 'react-native';import{GestureHandlerRootView}from 'react-native-gesture-handler';import{useFruitNinjaStore,registerGameService}from "./FruitNinjaStore.js";import{createFruitNinjaService,getDifficultySpawnInterval}from "./FruitNinjaService.js";import{ScoreBoard,GameArea,GameBackground}from "./components/index.js";import{GameControlButton,GameOverModal,useAnimationTrackers,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";export const FruitNinja =({settings,onSettingsChange,onEndGame})=>{const isPlaying = useFruitNinjaStore(state => state.isPlaying);const gameOver = useFruitNinjaStore(state => state.gameOver);const score = useFruitNinjaStore(state => state.score);const startGame = useFruitNinjaStore(state => state.startGame);const stopGame = useFruitNinjaStore(state => state.stopGame);const resetGame = useFruitNinjaStore(state => state.resetGame);const decrementTime = useFruitNinjaStore(state => state.decrementTime);const addFruit = useFruitNinjaStore(state => state.addFruit);const removeFruit = useFruitNinjaStore(state => state.removeFruit);const updateFruit = useFruitNinjaStore(state => state.updateFruit);const gameReportedRef = useRef(false);const reportGameEnd = status =>{if(onEndGame && !gameReportedRef.current){const currentState = useFruitNinjaStore.getState();onEndGame({status,score:currentState.score.toString()});gameReportedRef.current = true;}};const{fruitAnimations,particleAnimations}= useAnimationTrackers(['fruitAnimations','particleAnimations']);const{wrapFunction,safeExecute}= useGameErrorHandler(GAME_IDS.FRUIT_NINJA);const gameService = useRef(safeExecute(()=> createFruitNinjaService(fruitAnimations,particleAnimations),createFruitNinjaService(fruitAnimations,particleAnimations),GameErrorType.INITIALIZATION_ERROR)).current;useEffect(()=>{registerGameService(gameService);return()=>{handleResetGame();};},[gameService]);useEffect(()=>{if(gameOver && !gameReportedRef.current){const currentState = useFruitNinjaStore.getState();const status = currentState.lives <= 0 ? 'lose':'win';reportGameEnd(status);}if(!gameOver){gameReportedRef.current = false;}},[gameOver]);const handleStartGame = wrapFunction(()=>{gameReportedRef.current = false;startGame();if(gameService){gameService.resetAnimations();gameService.startGameTimer(decrementTime);gameService.startFruitSpawning(spawnFruit,getDifficultySpawnInterval(settings?.difficulty || 'medium'));gameService.startPhysicsLoop(updateFruit,removeFruit,()=> useFruitNinjaStore.getState().fruits);}},GameErrorType.INITIALIZATION_ERROR);const handleStopGame = wrapFunction(()=>{reportGameEnd('cancel');stopGame();if(gameService){gameService.cleanup();gameService.resetAnimations();}},GameErrorType.UNKNOWN_ERROR);const handleResetGame = wrapFunction(()=>{if(gameService){gameService.cleanup();}resetGame();if(gameService){gameService.resetAnimations();}},GameErrorType.UNKNOWN_ERROR);const spawnFruit = fruit =>{addFruit(fruit);};const offset = settings?.offset ?? 0;return _jsx(View,{style:styles.container,children:_jsx(GestureHandlerRootView,{children:_jsxs(GameBackground,{offset:offset,children:[_jsx(GameArea,{}),_jsx(ScoreBoard,{offset:offset}),_jsx(GameControlButton,{isPlaying:isPlaying,gameOver:gameOver,onStartGame:handleStartGame,onStopGame:handleStopGame,startButtonText:"START SLICING",stopButtonText:"STOP GAME",startButtonSubtext:"Slice fruits to score!",stopButtonSubtext:"End current game",startButtonColor:"#10b981",stopButtonColor:"#dc2626",startButtonBorderColor:"#34d399",stopButtonBorderColor:"#f87171"}),_jsx(GameOverModal,{isVisible:gameOver,score:score,onPlayAgain:handleResetGame,buttonText:"Slice Again!",primaryColor:"rgba(16,185,129,0.5)",borderColor:"rgba(16,185,129,0.5)",buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:"#10b981"}),_jsx(GameSettingsModal,{gameId:GAME_IDS.FRUIT_NINJA,settings:settings || DEFAULT_GAME_SETTINGS,onSettingsChange:onSettingsChange})]})})});};const styles = StyleSheet.create({container:{flex:1}});
1
+ "use strict";import o,{useEffect as t,useRef as r}from"react";import{View as e,StyleSheet as n}from"react-native";import{GestureHandlerRootView as i}from"react-native-gesture-handler";import{useFruitNinjaStore as s,registerGameService as a}from"./FruitNinjaStore.js";import{createFruitNinjaService as f,getDifficultySpawnInterval as m,getDifficultyFruitsPerSpawn as c,getDifficultyDuration as l}from"./FruitNinjaService.js";import{ScoreBoard as u,GameArea as d,GameBackground as p}from"./components/index.js";import{GameControlButton as b,GameOverModal as g,useAnimationTrackers as S,useGameErrorHandler as h,GameErrorType as j}from"../../helpers/index.js";import{GameSettingsModal as x}from"../../helpers/index.js";import{GAME_IDS as C,DEFAULT_GAME_SETTINGS as v}from"../../services/UtilsService.js";import{jsx as w,jsxs as y}from"react/jsx-runtime";export const FruitNinja=({settings:o,onSettingsChange:n,onEndGame:F,onShare:B,onShowLeaderboard:G})=>{const N=s(o=>o.isPlaying),E=s(o=>o.gameOver),L=s(o=>o.score),P=s(o=>o.startGame),T=s(o=>o.stopGame),I=s(o=>o.resetGame),O=s(o=>o.decrementTime),U=s(o=>o.addFruit),V=s(o=>o.removeFruit),k=s(o=>o.updateFruit),q=r(!1),z=o=>{if(F&&!q.current){const t=s.getState();F({status:o,score:t.score.toString()}),q.current=!0}},{fruitAnimations:D}=S(["fruitAnimations"]),{wrapFunction:H,safeExecute:J}=h(C.FRUIT_NINJA),K=r(J(()=>f(D),f(D),j.INITIALIZATION_ERROR)).current;t(()=>(a(K),()=>{R()}),[K]),t(()=>{if(E&&!q.current){const o=s.getState().lives>0?"win":"lose";z(o)}E||(q.current=!1)},[E]);const M=H(()=>{q.current=!1;const t=o?.difficulty||"medium";P(l(t)),K&&(K.resetAnimations(),K.startGameTimer(O),K.startFruitSpawning(W,m(t),c(t)),K.startPhysicsLoop(k,V,()=>s.getState().fruits))},j.INITIALIZATION_ERROR),Q=H(()=>{z("cancel"),T(),K&&(K.cleanup(),K.resetAnimations())},j.UNKNOWN_ERROR),R=H(()=>{K&&K.cleanup(),I(),K&&K.resetAnimations()},j.UNKNOWN_ERROR),W=o=>{U(o)},X=o?.offset??0;return w(e,{style:A.container,children:w(i,{children:y(p,{offset:X,children:[w(d,{}),w(u,{offset:X}),w(b,{isPlaying:N,gameOver:E,onStartGame:M,onStopGame:Q,onShare:B,onShowLeaderboard:G,startButtonSubtext:"Slice fruits to score!",buttonColor:"#10b981",buttonBorderColor:"#34d399"}),w(g,{isVisible:E,score:L,onPlayAgain:R,buttonText:"Slice Again!",primaryColor:"rgba(16, 185, 129, 0.5)",borderColor:"rgba(16, 185, 129, 0.5)",buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:"#10b981"}),w(x,{gameId:C.FRUIT_NINJA,settings:o||v,onSettingsChange:n})]})})})};const A=n.create({container:{flex:1}});
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useRef","View","StyleSheet","GestureHandlerRootView","useFruitNinjaStore","registerGameService","createFruitNinjaService","getDifficultySpawnInterval","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useAnimationTrackers","useGameErrorHandler","GameErrorType","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","FruitNinja","settings","onSettingsChange","onEndGame","isPlaying","state","gameOver","score","startGame","stopGame","resetGame","decrementTime","addFruit","removeFruit","updateFruit","gameReportedRef","reportGameEnd","status","current","currentState","getState","toString","fruitAnimations","particleAnimations","wrapFunction","safeExecute","FRUIT_NINJA","gameService","INITIALIZATION_ERROR","handleResetGame","lives","handleStartGame","resetAnimations","startGameTimer","startFruitSpawning","spawnFruit","difficulty","startPhysicsLoop","fruits","handleStopGame","cleanup","UNKNOWN_ERROR","fruit","offset","style","styles","container","children","onStartGame","onStopGame","startButtonText","stopButtonText","startButtonSubtext","stopButtonSubtext","startButtonColor","stopButtonColor","startButtonBorderColor","stopButtonBorderColor","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonColor","buttonBorderColor","buttonTextColor","gameId","create","flex"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinja.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useEffect","useRef","View","StyleSheet","GestureHandlerRootView","useFruitNinjaStore","registerGameService","createFruitNinjaService","getDifficultySpawnInterval","getDifficultyFruitsPerSpawn","getDifficultyDuration","ScoreBoard","GameArea","GameBackground","GameControlButton","GameOverModal","useAnimationTrackers","useGameErrorHandler","GameErrorType","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","FruitNinja","settings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","isPlaying","state","gameOver","score","startGame","stopGame","resetGame","decrementTime","addFruit","removeFruit","updateFruit","gameReportedRef","reportGameEnd","status","current","currentState","getState","toString","fruitAnimations","wrapFunction","safeExecute","FRUIT_NINJA","gameService","INITIALIZATION_ERROR","handleResetGame","lives","handleStartGame","difficulty","resetAnimations","startGameTimer","startFruitSpawning","spawnFruit","startPhysicsLoop","fruits","handleStopGame","cleanup","UNKNOWN_ERROR","fruit","offset","style","styles","container","children","onStartGame","onStopGame","startButtonSubtext","buttonColor","buttonBorderColor","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonTextColor","gameId","create","flex"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinja.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";export const FRUIT_NINJA_GAME_CONFIG ={GAME_DURATION:60,MAX_LIVES:3,FRUIT_SPAWN_INTERVAL:1500,FRUIT_FALL_SPEED:2,GRAVITY:0.12,INITIAL_VELOCITY_Y:-10,INITIAL_VELOCITY_X_RANGE:1.5,FRUIT_SIZE:60,SLICE_TRAIL_LENGTH:10,SLICE_TRAIL_WIDTH:8,COMBO_TIMEOUT:2000,PARTICLE_COUNT:6,PARTICLE_LIFETIME:1000};export const FRUIT_NINJA_ANIMATION_CONFIG ={FRUIT_SPRING:{damping:15,stiffness:200},SLICE_SPRING:{damping:20,stiffness:300},PARTICLE_SPRING:{damping:25,stiffness:400}};export const FRUIT_NINJA_COLORS ={BACKGROUND:'#87CEEB',SCORE_BOARD:'#4169E1',SLICE_TRAIL:'#FFD700',PARTICLE_COLORS:['#FF6B6B','#4ECDC4','#45B7D1','#96CEB4','#FFEAA7','#DDA0DD'],PARTICLE_GLOW:'rgba(255,255,255,0.9)',COMBO_TEXT:'#FF4757',LIVES_COLOR:'#FF6B6B',SCORE:'#FFFFFF',UI:'#FF6347',BUTTON_ACTIVE:'#FF7F50',BUTTON_INACTIVE:'#FFA07A',TEXT_PRIMARY:'#FFFFFF',TEXT_SECONDARY:'#F0F8FF',WHITE:'#FFFFFF',START_BUTTON:'#4CAF50',GAME_OVER_OVERLAY:'rgba(0,0,0,0.85)'};export const FRUIT_TYPES = [{emoji:'🍎',points:10,name:'apple'},{emoji:'🍊',points:10,name:'orange'},{emoji:'🍌',points:15,name:'banana'},{emoji:'🍇',points:20,name:'grapes'},{emoji:'🥝',points:25,name:'kiwi'},{emoji:'🍓',points:15,name:'strawberry'},{emoji:'🥭',points:30,name:'mango'},{emoji:'🍑',points:25,name:'cherry'},{emoji:'🍒',points:35,name:'cherries'},{emoji:'🥥',points:40,name:'coconut'}];export const FRUIT_SPECIAL_ITEMS = [{emoji:'💣',points:-50,name:'bomb',isBomb:true},{emoji:'⭐',points:50,name:'star',isBonus:true},{emoji:'❄️',points:0,name:'freeze',isFreeze:true}];export const FRUIT_NINJA_THEME ={backgroundColor:'rgba(0,0,0,0.7)',headerBackgroundColor:'#10b981',headerTextColor:'#ffffff',sectionBackgroundColor:'rgba(16,185,129,0.15)',sectionTitleColor:'#10b981',buttonSelectedColor:'#10b981',buttonUnselectedColor:'rgba(255,255,255,0.2)',buttonSelectedTextColor:'#ffffff',buttonUnselectedTextColor:'rgba(255,255,255,0.7)',switchTrackColorFalse:'rgba(16,185,129,0.3)',switchTrackColorTrue:'#10b981',switchThumbColor:'#ffffff',infoTextColor:'rgba(255,255,255,0.9)'};export const FRUIT_NINJA_DIFFICULTY_DESCRIPTIONS ={easy:'Fruits spawn slower,more forgiving',medium:'Balanced gameplay and fruit speed',hard:'Fast fruits,quick reflexes needed!'};
1
+ "use strict";export const FRUIT_NINJA_GAME_CONFIG={GAME_DURATION:60,MAX_LIVES:3,FRUIT_SPAWN_INTERVAL:1500,FRUIT_FALL_SPEED:2,GRAVITY:.12,INITIAL_VELOCITY_Y:-10,INITIAL_VELOCITY_X_RANGE:1.5,FRUIT_SIZE:60};export const FRUIT_TYPES=[{emoji:"\ud83c\udf4e",points:10,name:"apple"},{emoji:"\ud83c\udf4a",points:10,name:"orange"},{emoji:"\ud83c\udf4c",points:15,name:"banana"},{emoji:"\ud83c\udf47",points:20,name:"grapes"},{emoji:"\ud83e\udd5d",points:25,name:"kiwi"},{emoji:"\ud83c\udf53",points:15,name:"strawberry"},{emoji:"\ud83e\udd6d",points:30,name:"mango"},{emoji:"\ud83c\udf51",points:25,name:"peach"},{emoji:"\ud83c\udf52",points:35,name:"cherries"},{emoji:"\ud83c\udf4d",points:40,name:"pineapple"},{emoji:"\ud83c\udf49",points:45,name:"watermelon"},{emoji:"\ud83e\uded2",points:50,name:"pomegranate"},{emoji:"\ud83e\udd6d",points:35,name:"papaya"}];export const FRUIT_SPECIAL_ITEMS=[{emoji:"\ud83d\udca3",points:-50,name:"bomb",isBomb:!0},{emoji:"\u2b50",points:50,name:"star",isBonus:!0}];export const FRUIT_NINJA_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#10b981",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(16, 185, 129, 0.15)",sectionTitleColor:"#10b981",buttonSelectedColor:"#10b981",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(16, 185, 129, 0.3)",switchTrackColorTrue:"#10b981",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const FRUIT_NINJA_DIFFICULTY_DESCRIPTIONS={easy:"Fruits spawn slower, more forgiving",medium:"Balanced gameplay and fruit speed",hard:"Fast fruits, quick reflexes needed!"};
@@ -1 +1 @@
1
- {"version":3,"names":["FRUIT_NINJA_GAME_CONFIG","GAME_DURATION","MAX_LIVES","FRUIT_SPAWN_INTERVAL","FRUIT_FALL_SPEED","GRAVITY","INITIAL_VELOCITY_Y","INITIAL_VELOCITY_X_RANGE","FRUIT_SIZE","SLICE_TRAIL_LENGTH","SLICE_TRAIL_WIDTH","COMBO_TIMEOUT","PARTICLE_COUNT","PARTICLE_LIFETIME","FRUIT_NINJA_ANIMATION_CONFIG","FRUIT_SPRING","damping","stiffness","SLICE_SPRING","PARTICLE_SPRING","FRUIT_NINJA_COLORS","BACKGROUND","SCORE_BOARD","SLICE_TRAIL","PARTICLE_COLORS","PARTICLE_GLOW","COMBO_TEXT","LIVES_COLOR","SCORE","UI","BUTTON_ACTIVE","BUTTON_INACTIVE","TEXT_PRIMARY","TEXT_SECONDARY","WHITE","START_BUTTON","GAME_OVER_OVERLAY","FRUIT_TYPES","emoji","points","name","FRUIT_SPECIAL_ITEMS","isBomb","isBonus","isFreeze","FRUIT_NINJA_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","FRUIT_NINJA_DIFFICULTY_DESCRIPTIONS","easy","medium","hard"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinjaConstants.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FRUIT_NINJA_GAME_CONFIG","GAME_DURATION","MAX_LIVES","FRUIT_SPAWN_INTERVAL","FRUIT_FALL_SPEED","GRAVITY","INITIAL_VELOCITY_Y","INITIAL_VELOCITY_X_RANGE","FRUIT_SIZE","FRUIT_TYPES","emoji","points","name","FRUIT_SPECIAL_ITEMS","isBomb","isBonus","FRUIT_NINJA_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","FRUIT_NINJA_DIFFICULTY_DESCRIPTIONS","easy","medium","hard"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinjaConstants.ts"],"mappings":";;AAEA;AACA,OAAO,MAAMA,uBAAuB,GAAG;EACrCC,aAAa,EAAE,EAAE;EAAE;EACnBC,SAAS,EAAE,CAAC;EACZC,oBAAoB,EAAE,IAAI;EAAE;EAC5BC,gBAAgB,EAAE,CAAC;EAAE;EACrBC,OAAO,EAAE,IAAI;EAAE;EACfC,kBAAkB,EAAE,CAAC,EAAE;EAAE;EACzBC,wBAAwB,EAAE,GAAG;EAAE;EAC/BC,UAAU,EAAE;AACd,CAAU;;AAEV;AACA,OAAO,MAAMC,WAAW,GAAG,CACzB;EAAEC,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAQ,CAAC,EAC1C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAS,CAAC,EAC3C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAS,CAAC,EAC3C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAS,CAAC,EAC3C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAO,CAAC,EACzC;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAa,CAAC,EAC/C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAQ,CAAC,EAC1C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAQ,CAAC,EAC1C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAW,CAAC,EAC7C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAY,CAAC,EAC9C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAa,CAAC,EAC/C;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAc,CAAC,EAChD;EAAEF,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE;AAAS,CAAC,CACnC;AAEV,OAAO,MAAMC,mBAAmB,GAAG,CACjC;EAAEH,KAAK,EAAE,IAAI;EAAEC,MAAM,EAAE,CAAC,EAAE;EAAEC,IAAI,EAAE,MAAM;EAAEE,MAAM,EAAE;AAAK,CAAC,EACxD;EAAEJ,KAAK,EAAE,GAAG;EAAEC,MAAM,EAAE,EAAE;EAAEC,IAAI,EAAE,MAAM;EAAEG,OAAO,EAAE;AAAK,CAAC,CAC/C;;AAEV;AACA,OAAO,MAAMC,iBAAoC,GAAG;EAClDC,eAAe,EAAE,oBAAoB;EAAE;EACvCC,qBAAqB,EAAE,SAAS;EAAE;EAClCC,eAAe,EAAE,SAAS;EAC1BC,sBAAsB,EAAE,0BAA0B;EAAE;EACpDC,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,yBAAyB;EAChDC,oBAAoB,EAAE,SAAS;EAAE;EACjCC,gBAAgB,EAAE,SAAS;EAC3BC,aAAa,EAAE,0BAA0B,CAAE;AAC7C,CAAC;;AAED;AACA,OAAO,MAAMC,mCAAmC,GAAG;EACjDC,IAAI,EAAE,qCAAqC;EAC3CC,MAAM,EAAE,mCAAmC;EAC3CC,IAAI,EAAE;AACR,CAAU","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import{Dimensions}from 'react-native';import{FRUIT_NINJA_GAME_CONFIG as GAME_CONFIG,FRUIT_NINJA_ANIMATION_CONFIG as ANIMATION_CONFIG,FRUIT_NINJA_COLORS as COLORS,FRUIT_TYPES,FRUIT_SPECIAL_ITEMS as SPECIAL_ITEMS}from "./FruitNinjaConstants.js";const{width,height}= Dimensions.get('window');export{GAME_CONFIG,ANIMATION_CONFIG,COLORS,FRUIT_TYPES,SPECIAL_ITEMS};export const DEFAULT_FRUIT_NINJA_SETTINGS ={gameDuration:60,difficulty:'medium',soundEnabled:true,hapticEnabled:true};export const getDifficultySpawnInterval = difficulty =>{const intervals ={easy:2000,medium:1500,hard:1000};return intervals[difficulty];};export class FruitNinjaService{gameTimerRef = null;fruitSpawnRef = null;animationRef = null;comboTimeoutRef = null;particles = [];constructor(fruitAnimations,particleAnimations){this.fruitAnimations = fruitAnimations;this.particleAnimations = particleAnimations;}startGameTimer(onTick){this.clearGameTimer();this.gameTimerRef = setInterval(onTick,1000);}startFruitSpawning(spawnFruit,customSpawnInterval){this.clearFruitSpawn();const spawnInterval = customSpawnInterval || GAME_CONFIG.FRUIT_SPAWN_INTERVAL;const spawnLoop =()=>{const fruit = this.createRandomFruit();spawnFruit(fruit);const nextSpawnTime = spawnInterval +(Math.random()- 0.5)* 400;this.fruitSpawnRef = setTimeout(spawnLoop,Math.max(300,nextSpawnTime));};this.fruitSpawnRef = setTimeout(spawnLoop,1000);}startPhysicsLoop(updateFruit,removeFruit,getFruits){const updateLoop =()=>{const fruits = getFruits();fruits.forEach(fruit =>{if(fruit.isSliced)return;const newVelocityY = fruit.velocity.y + GAME_CONFIG.GRAVITY;let newX = fruit.position.x + fruit.velocity.x;const newY = fruit.position.y + newVelocityY;const newRotation = fruit.rotation + fruit.rotationSpeed;if(newY > height + 100){removeFruit(fruit.id);return;}let newVelocityX = fruit.velocity.x;if(newY < -50){const adjustedVelocityY = Math.max(newVelocityY,0.5);updateFruit(fruit.id,{position:{x:newX,y:-50},velocity:{x:newVelocityX,y:adjustedVelocityY},rotation:newRotation});return;}if(newX <= 0){newX = 0;newVelocityX = Math.abs(newVelocityX)* 0.8;}if(newX >= width - GAME_CONFIG.FRUIT_SIZE){newX = width - GAME_CONFIG.FRUIT_SIZE;newVelocityX = -Math.abs(newVelocityX)* 0.8;}updateFruit(fruit.id,{position:{x:newX,y:newY},velocity:{x:newVelocityX,y:newVelocityY},rotation:newRotation});});this.updateParticles();this.animationRef = requestAnimationFrame(updateLoop);};this.animationRef = requestAnimationFrame(updateLoop);}createRandomFruit(){const isSpecial = Math.random()< 0.5;const type = isSpecial ? SPECIAL_ITEMS[Math.floor(Math.random()* SPECIAL_ITEMS.length)]:FRUIT_TYPES[Math.floor(Math.random()* FRUIT_TYPES.length)];if(!type){const defaultType = FRUIT_TYPES[0];const spawnX = Math.random()*(width - GAME_CONFIG.FRUIT_SIZE);const spawnY = height - 50;const velocityX =(Math.random()- 0.5)* GAME_CONFIG.INITIAL_VELOCITY_X_RANGE;const velocityY = GAME_CONFIG.INITIAL_VELOCITY_Y - 3;return{id:`fruit_${Date.now()}_${Math.random()}`,type:defaultType,position:{x:spawnX,y:spawnY},velocity:{x:velocityX,y:velocityY},rotation:0,rotationSpeed:(Math.random()- 0.5)* 0.2,isSliced:false,spawnTime:Date.now(),isBomb:Boolean(defaultType.isBomb),isBonus:Boolean(defaultType.isBonus),isFreeze:Boolean(defaultType.isFreeze)};}const spawnX = Math.random()*(width - GAME_CONFIG.FRUIT_SIZE);const spawnY = height - 50;const velocityX =(Math.random()- 0.5)* GAME_CONFIG.INITIAL_VELOCITY_X_RANGE;const velocityY = GAME_CONFIG.INITIAL_VELOCITY_Y - 3 +(Math.random()- 0.5)* 2;return{id:`fruit_${Date.now()}_${Math.random()}`,type,position:{x:spawnX,y:spawnY},velocity:{x:velocityX,y:velocityY},rotation:0,rotationSpeed:(Math.random()- 0.5)* 0.2,isSliced:false,spawnTime:Date.now(),isBomb:Boolean(type.isBomb),isBonus:Boolean(type.isBonus),isFreeze:Boolean(type.isFreeze)};}createSliceParticles(fruit){const particles = [];for(let i = 0;i < GAME_CONFIG.PARTICLE_COUNT;i++){const angle = i / GAME_CONFIG.PARTICLE_COUNT * Math.PI * 2;const speed = 3 + Math.random()* 4;particles.push({id:`particle_${fruit.id}_${Date.now()}_${Math.random()}_${i}`,position:{...fruit.position},velocity:{x:Math.cos(angle)* speed,y:Math.sin(angle)* speed - 2},color:COLORS.PARTICLE_COLORS[Math.floor(Math.random()* COLORS.PARTICLE_COLORS.length)] || '#ff6b6b',size:4 + Math.random()* 6,lifetime:0,maxLifetime:GAME_CONFIG.PARTICLE_LIFETIME});}this.particles.push(...particles);return particles;}updateParticles(){this.particles = this.particles.filter(particle =>{particle.lifetime += 16;if(particle.lifetime >= particle.maxLifetime){return false;}particle.position.x += particle.velocity.x;particle.position.y += particle.velocity.y;particle.velocity.y += 0.1;return true;});}getParticles(){return this.particles;}checkFruitSlice(fruit,slicePath){if(fruit.isSliced || slicePath.length < 2)return false;const fruitCenter ={x:fruit.position.x + GAME_CONFIG.FRUIT_SIZE / 2,y:fruit.position.y + GAME_CONFIG.FRUIT_SIZE / 2};const fruitRadius = GAME_CONFIG.FRUIT_SIZE / 2;for(let i = 0;i < slicePath.length - 1;i++){const p1 = slicePath[i];const p2 = slicePath[i + 1];if(!p1 || !p2)continue;const distance = this.distanceFromPointToLine(fruitCenter,p1,p2);if(distance <= fruitRadius){return true;}}return false;}distanceFromPointToLine(point,lineStart,lineEnd){const A = point.x - lineStart.x;const B = point.y - lineStart.y;const C = lineEnd.x - lineStart.x;const D = lineEnd.y - lineStart.y;const dot = A * C + B * D;const lenSq = C * C + D * D;if(lenSq === 0)return Math.sqrt(A * A + B * B);let param = dot / lenSq;param = Math.max(0,Math.min(1,param));const xx = lineStart.x + param * C;const yy = lineStart.y + param * D;const dx = point.x - xx;const dy = point.y - yy;return Math.sqrt(dx * dx + dy * dy);}resetAnimations(){this.fruitAnimations.clear();this.particleAnimations.clear();this.particles = [];}cleanup(){this.clearGameTimer();this.clearFruitSpawn();this.clearAnimationLoop();this.clearComboTimeout();this.particles = [];}clearGameTimer(){if(this.gameTimerRef){clearInterval(this.gameTimerRef);this.gameTimerRef = null;}}clearFruitSpawn(){if(this.fruitSpawnRef){clearTimeout(this.fruitSpawnRef);this.fruitSpawnRef = null;}}clearAnimationLoop(){if(this.animationRef){cancelAnimationFrame(this.animationRef);this.animationRef = null;}}clearComboTimeout(){if(this.comboTimeoutRef){clearTimeout(this.comboTimeoutRef);this.comboTimeoutRef = null;}}}export const createFruitNinjaService =(fruitAnimations,particleAnimations)=>{return new FruitNinjaService(fruitAnimations,particleAnimations);};
1
+ "use strict";import{Dimensions as t}from"react-native";import{FRUIT_NINJA_GAME_CONFIG as i,FRUIT_TYPES as e,FRUIT_SPECIAL_ITEMS as s}from"./FruitNinjaConstants.js";const{width:a,height:n}=t.get("window");export{i as GAME_CONFIG};export const DEFAULT_FRUIT_NINJA_SETTINGS={gameDuration:60,difficulty:"medium",soundEnabled:!0,hapticEnabled:!0};export const getDifficultySpawnInterval=t=>({easy:2500,medium:1800,hard:1500}[t]);export const getDifficultyFruitsPerSpawn=t=>({easy:2,medium:2,hard:2}[t]);export const getDifficultyDuration=t=>({easy:60,medium:180,hard:300}[t]);export class FruitNinjaService{gameTimerRef=null;fruitSpawnRef=null;staggeredSpawnRefs=[];animationRef=null;isSpawningActive=!1;constructor(t){this.fruitAnimations=t}startGameTimer(t){this.clearGameTimer(),this.gameTimerRef=setInterval(t,1e3)}startFruitSpawning(t,e,s=1){this.clearFruitSpawn(),this.isSpawningActive=!0;const a=e||i.FRUIT_SPAWN_INTERVAL,n=()=>{if(!this.isSpawningActive)return;for(let i=0;s>i;i++){const e=setTimeout(()=>{if(!this.isSpawningActive)return;const i=this.createRandomFruit();t(i)},700*i);this.staggeredSpawnRefs.push(e)}const i=a+400*(Math.random()-.5);this.fruitSpawnRef=setTimeout(n,Math.max(500,i))};this.fruitSpawnRef=setTimeout(n,1e3)}startPhysicsLoop(t,e,s){const o=()=>{s().forEach(s=>{if(s.isSliced)return;const o=s.velocity.y+i.GRAVITY;let r=s.position.x+s.velocity.x;const h=s.position.y+o,c=s.rotation+s.rotationSpeed;if(h>n+100)return void e(s.id);let u=s.velocity.x;if(-50>h){const i=Math.max(o,.5);return void t(s.id,{position:{x:r,y:-50},velocity:{x:u,y:i},rotation:c})}r>0||(r=0,u=.8*Math.abs(u)),r<a-i.FRUIT_SIZE||(r=a-i.FRUIT_SIZE,u=.8*-Math.abs(u)),t(s.id,{position:{x:r,y:h},velocity:{x:u,y:o},rotation:c})}),this.animationRef=requestAnimationFrame(o)};this.animationRef=requestAnimationFrame(o)}createRandomFruit(){const t=Math.random();let o;if(o=.18>t?s.find(t=>t.isBomb)||s[0]:.25>t?s.find(t=>t.isBonus)||s[1]:e[Math.floor(Math.random()*e.length)],!o){const t=e[0],s=Math.random()*(a-i.FRUIT_SIZE),o=n-50,r=(Math.random()-.5)*i.INITIAL_VELOCITY_X_RANGE,h=i.INITIAL_VELOCITY_Y-3;return{id:`fruit_${Date.now()}_${Math.random()}`,type:t,position:{x:s,y:o},velocity:{x:r,y:h},rotation:0,rotationSpeed:.2*(Math.random()-.5),isSliced:!1,spawnTime:Date.now(),isBomb:!!t.isBomb,isBonus:!!t.isBonus}}const r=Math.random()*(a-i.FRUIT_SIZE),h=n-50,c=(Math.random()-.5)*i.INITIAL_VELOCITY_X_RANGE,u=i.INITIAL_VELOCITY_Y-3+2*(Math.random()-.5);return{id:`fruit_${Date.now()}_${Math.random()}`,type:o,position:{x:r,y:h},velocity:{x:c,y:u},rotation:0,rotationSpeed:.2*(Math.random()-.5),isSliced:!1,spawnTime:Date.now(),isBomb:!!o.isBomb,isBonus:!!o.isBonus}}resetAnimations(){this.fruitAnimations.clear()}cleanup(){this.clearGameTimer(),this.clearFruitSpawn(),this.clearAnimationLoop()}clearGameTimer(){this.gameTimerRef&&(clearInterval(this.gameTimerRef),this.gameTimerRef=null)}clearFruitSpawn(){this.isSpawningActive=!1,this.fruitSpawnRef&&(clearTimeout(this.fruitSpawnRef),this.fruitSpawnRef=null),this.staggeredSpawnRefs.forEach(t=>clearTimeout(t)),this.staggeredSpawnRefs=[]}clearAnimationLoop(){this.animationRef&&(cancelAnimationFrame(this.animationRef),this.animationRef=null)}}export const createFruitNinjaService=t=>new FruitNinjaService(t);
@@ -1 +1 @@
1
- {"version":3,"names":["Dimensions","FRUIT_NINJA_GAME_CONFIG","GAME_CONFIG","FRUIT_NINJA_ANIMATION_CONFIG","ANIMATION_CONFIG","FRUIT_NINJA_COLORS","COLORS","FRUIT_TYPES","FRUIT_SPECIAL_ITEMS","SPECIAL_ITEMS","width","height","get","DEFAULT_FRUIT_NINJA_SETTINGS","gameDuration","difficulty","soundEnabled","hapticEnabled","getDifficultySpawnInterval","intervals","easy","medium","hard","FruitNinjaService","gameTimerRef","fruitSpawnRef","animationRef","comboTimeoutRef","particles","constructor","fruitAnimations","particleAnimations","startGameTimer","onTick","clearGameTimer","setInterval","startFruitSpawning","spawnFruit","customSpawnInterval","clearFruitSpawn","spawnInterval","FRUIT_SPAWN_INTERVAL","spawnLoop","fruit","createRandomFruit","nextSpawnTime","Math","random","setTimeout","max","startPhysicsLoop","updateFruit","removeFruit","getFruits","updateLoop","fruits","forEach","isSliced","newVelocityY","velocity","y","GRAVITY","newX","position","x","newY","newRotation","rotation","rotationSpeed","id","newVelocityX","adjustedVelocityY","abs","FRUIT_SIZE","updateParticles","requestAnimationFrame","isSpecial","type","floor","length","defaultType","spawnX","spawnY","velocityX","INITIAL_VELOCITY_X_RANGE","velocityY","INITIAL_VELOCITY_Y","Date","now","spawnTime","isBomb","Boolean","isBonus","isFreeze","createSliceParticles","i","PARTICLE_COUNT","angle","PI","speed","push","cos","sin","color","PARTICLE_COLORS","size","lifetime","maxLifetime","PARTICLE_LIFETIME","filter","particle","getParticles","checkFruitSlice","slicePath","fruitCenter","fruitRadius","p1","p2","distance","distanceFromPointToLine","point","lineStart","lineEnd","A","B","C","D","dot","lenSq","sqrt","param","min","xx","yy","dx","dy","resetAnimations","clear","cleanup","clearAnimationLoop","clearComboTimeout","clearInterval","clearTimeout","cancelAnimationFrame","createFruitNinjaService"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinjaService.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Dimensions","FRUIT_NINJA_GAME_CONFIG","GAME_CONFIG","FRUIT_TYPES","FRUIT_SPECIAL_ITEMS","SPECIAL_ITEMS","width","height","get","DEFAULT_FRUIT_NINJA_SETTINGS","gameDuration","difficulty","soundEnabled","hapticEnabled","getDifficultySpawnInterval","intervals","easy","medium","hard","getDifficultyFruitsPerSpawn","fruitsPerSpawn","getDifficultyDuration","durations","FruitNinjaService","gameTimerRef","fruitSpawnRef","staggeredSpawnRefs","animationRef","isSpawningActive","constructor","fruitAnimations","startGameTimer","onTick","clearGameTimer","setInterval","startFruitSpawning","spawnFruit","customSpawnInterval","clearFruitSpawn","spawnInterval","FRUIT_SPAWN_INTERVAL","spawnLoop","i","timeoutRef","setTimeout","fruit","createRandomFruit","push","nextSpawnTime","Math","random","max","startPhysicsLoop","updateFruit","removeFruit","getFruits","updateLoop","fruits","forEach","isSliced","newVelocityY","velocity","y","GRAVITY","newX","position","x","newY","newRotation","rotation","rotationSpeed","id","newVelocityX","adjustedVelocityY","abs","FRUIT_SIZE","requestAnimationFrame","type","find","item","isBomb","isBonus","floor","length","defaultType","spawnX","spawnY","velocityX","INITIAL_VELOCITY_X_RANGE","velocityY","INITIAL_VELOCITY_Y","Date","now","spawnTime","Boolean","resetAnimations","clear","cleanup","clearAnimationLoop","clearInterval","clearTimeout","ref","cancelAnimationFrame","createFruitNinjaService"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinjaService.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import{create}from 'zustand';import{subscribeWithSelector}from 'zustand/middleware';import{GAME_CONFIG}from "./FruitNinjaService.js";import{immerMiddleware}from "../../services/UtilsService.js";export const useFruitNinjaStore = create()(subscribeWithSelector(immerMiddleware((set,get)=>({score:0,timeLeft:120,isPlaying:false,gameOver:false,combo:0,lives:GAME_CONFIG.MAX_LIVES,fruits:[],slicePath:[],isSlicing:false,startGame:_gameDuration =>{const duration = 120;set(draft =>{draft.score = 0;draft.timeLeft = duration;draft.isPlaying = true;draft.gameOver = false;draft.combo = 0;draft.lives = GAME_CONFIG.MAX_LIVES;draft.fruits = [];draft.slicePath = [];draft.isSlicing = false;});},stopGame:()=>{set(draft =>{draft.score = 0;draft.timeLeft = 120;draft.isPlaying = false;draft.gameOver = false;draft.combo = 0;draft.lives = GAME_CONFIG.MAX_LIVES;draft.fruits = [];draft.slicePath = [];draft.isSlicing = false;});},resetGame:()=>{set(draft =>{draft.score = 0;draft.timeLeft = 120;draft.isPlaying = false;draft.gameOver = false;draft.combo = 0;draft.lives = GAME_CONFIG.MAX_LIVES;draft.fruits = [];draft.slicePath = [];draft.isSlicing = false;});},sliceFruit:fruitId =>{const{fruits,isPlaying}= get();if(!isPlaying)return;let fruitIndex = -1;for(let i = 0;i < fruits.length;i++){if(fruits[i].id === fruitId){fruitIndex = i;break;}}if(fruitIndex === -1 || fruits[fruitIndex].isSliced)return;const points = 10;set(draft =>{draft.score = draft.score + points;if(draft.fruits[fruitIndex]){draft.fruits[fruitIndex].isSliced = true;draft.fruits[fruitIndex].sliceTime = Date.now();}});},updateScore:points =>{set(draft =>{draft.score = draft.score + points;});},decrementTime:()=>{set(draft =>{const newTimeLeft = draft.timeLeft - 1;if(newTimeLeft <= 0){draft.timeLeft = 0;draft.isPlaying = false;draft.gameOver = true;}else{draft.timeLeft = newTimeLeft;}});},addFruit:fruit =>{set(draft =>{draft.fruits.push(fruit);});},removeFruit:fruitId =>{set(draft =>{draft.fruits = draft.fruits.filter(f => f.id !== fruitId);});},updateFruit:(fruitId,updates)=>{set(draft =>{for(let i = 0;i < draft.fruits.length;i++){if(draft.fruits[i].id === fruitId){Object.assign(draft.fruits[i],updates);break;}}});},setSlicePath:path =>{set(draft =>{draft.slicePath = path;});},setIsSlicing:isSlicing =>{set(draft =>{draft.isSlicing = isSlicing;});},incrementCombo:()=>{set(draft =>{draft.combo = draft.combo + 1;});},resetCombo:()=>{set(draft =>{draft.combo = 0;});},loseLife:()=>{set(draft =>{const newLives = Math.max(0,draft.lives - 1);draft.lives = newLives;if(newLives <= 0){draft.isPlaying = false;draft.gameOver = true;}});},addLife:()=>{set(draft =>{draft.lives = Math.min(draft.lives + 1,GAME_CONFIG.MAX_LIVES);});}}))));let gameServiceInstance = null;export const registerGameService = gameService =>{gameServiceInstance = gameService;};useFruitNinjaStore.subscribe(state => state.gameOver,(gameOver,previousGameOver)=>{if(gameOver && !previousGameOver){setTimeout(()=>{if(gameServiceInstance){gameServiceInstance.cleanup();}const state = useFruitNinjaStore.getState();state.fruits.forEach(fruit =>{useFruitNinjaStore.getState().removeFruit(fruit.id);});},50);}});
1
+ "use strict";import{create as e}from"zustand";import{subscribeWithSelector as t}from"zustand/middleware";import{GAME_CONFIG as r}from"./FruitNinjaService.js";import{immerMiddleware as i}from"../../services/UtilsService.js";export const useFruitNinjaStore=e()(t(i((e,t)=>({score:0,timeLeft:180,isPlaying:!1,gameOver:!1,combo:0,lives:r.MAX_LIVES,fruits:[],startGame:t=>{const i=t||180;e(e=>{e.score=0,e.timeLeft=i,e.isPlaying=!0,e.gameOver=!1,e.combo=0,e.lives=r.MAX_LIVES,e.fruits=[]})},stopGame:()=>{e(e=>{e.score=0,e.timeLeft=180,e.isPlaying=!1,e.gameOver=!1,e.combo=0,e.lives=r.MAX_LIVES,e.fruits=[]})},resetGame:()=>{e(e=>{e.score=0,e.timeLeft=180,e.isPlaying=!1,e.gameOver=!1,e.combo=0,e.lives=r.MAX_LIVES,e.fruits=[]})},sliceFruit:r=>{const{fruits:i,isPlaying:s}=t();if(!s)return;let o=-1;for(let e=0;e<i.length;e++)if(i[e].id===r){o=e;break}-1===o||i[o].isSliced||e(e=>{e.score=e.score+10,e.fruits[o]&&(e.fruits[o].isSliced=!0,e.fruits[o].sliceTime=Date.now())})},updateScore:t=>{e(e=>{e.score=e.score+t})},decrementTime:()=>{e(e=>{const t=e.timeLeft-1;t>0?e.timeLeft=t:(e.timeLeft=0,e.isPlaying=!1,e.gameOver=!0)})},addFruit:t=>{e(e=>{e.fruits.push(t)})},removeFruit:t=>{e(e=>{e.fruits=e.fruits.filter(e=>e.id!==t)})},updateFruit:(t,r)=>{e(e=>{for(let i=0;i<e.fruits.length;i++)if(e.fruits[i].id===t){Object.assign(e.fruits[i],r);break}})},resetCombo:()=>{e(e=>{e.combo=0})},loseLife:()=>{e(e=>{const t=Math.max(0,e.lives-1);e.lives=t,t>0||(e.isPlaying=!1,e.gameOver=!0)})},addLife:()=>{e(e=>{e.lives=Math.min(e.lives+1,r.MAX_LIVES)})}}))));let s=null;export const registerGameService=e=>{s=e};useFruitNinjaStore.subscribe(e=>e.gameOver,(e,t)=>{e&&!t&&setTimeout(()=>{s&&s.cleanup(),useFruitNinjaStore.getState().fruits.forEach(e=>{useFruitNinjaStore.getState().removeFruit(e.id)})},50)});
@@ -1 +1 @@
1
- {"version":3,"names":["create","subscribeWithSelector","GAME_CONFIG","immerMiddleware","useFruitNinjaStore","set","get","score","timeLeft","isPlaying","gameOver","combo","lives","MAX_LIVES","fruits","slicePath","isSlicing","startGame","_gameDuration","duration","draft","stopGame","resetGame","sliceFruit","fruitId","fruitIndex","i","length","id","isSliced","points","sliceTime","Date","now","updateScore","decrementTime","newTimeLeft","addFruit","fruit","push","removeFruit","filter","f","updateFruit","updates","Object","assign","setSlicePath","path","setIsSlicing","incrementCombo","resetCombo","loseLife","newLives","Math","max","addLife","min","gameServiceInstance","registerGameService","gameService","subscribe","state","previousGameOver","setTimeout","cleanup","getState","forEach"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinjaStore.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["create","subscribeWithSelector","GAME_CONFIG","immerMiddleware","useFruitNinjaStore","set","get","score","timeLeft","isPlaying","gameOver","combo","lives","MAX_LIVES","fruits","startGame","gameDuration","duration","draft","stopGame","resetGame","sliceFruit","fruitId","fruitIndex","i","length","id","isSliced","points","sliceTime","Date","now","updateScore","decrementTime","newTimeLeft","addFruit","fruit","push","removeFruit","filter","f","updateFruit","updates","Object","assign","resetCombo","loseLife","newLives","Math","max","addLife","min","gameServiceInstance","registerGameService","gameService","subscribe","state","previousGameOver","setTimeout","cleanup","getState","forEach"],"sourceRoot":"../../../../src","sources":["games/fruit-ninja/FruitNinjaStore.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,SAAS;AAChC,SAASC,qBAAqB,QAAQ,oBAAoB;AAE1D,SAASC,WAAW,QAAQ,wBAAqB;AACjD,SAASC,eAAe,QAAQ,gCAA6B;AA6B7D;AACA,OAAO,MAAMC,kBAAkB,GAAGJ,MAAM,CAAkB,CAAC,CACzDC,qBAAqB,CACnBE,eAAe,CAAC,CAACE,GAAQ,EAAEC,GAAQ,MAAM;EAC3C;EACAC,KAAK,EAAE,CAAC;EACRC,QAAQ,EAAE,GAAG;EAAE;EACfC,SAAS,EAAE,KAAK;EAChBC,QAAQ,EAAE,KAAK;EACfC,KAAK,EAAE,CAAC;EACRC,KAAK,EAAEV,WAAW,CAACW,SAAS;EAC5BC,MAAM,EAAE,EAAE;EAEV;EACAC,SAAS,EAAGC,YAAqB,IAAK;IACpC;IACA,MAAMC,QAAQ,GAAGD,YAAY,IAAI,GAAG;IACpCX,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACX,KAAK,GAAG,CAAC;MACfW,KAAK,CAACV,QAAQ,GAAGS,QAAQ;MACzBC,KAAK,CAACT,SAAS,GAAG,IAAI;MACtBS,KAAK,CAACR,QAAQ,GAAG,KAAK;MACtBQ,KAAK,CAACP,KAAK,GAAG,CAAC;MACfO,KAAK,CAACN,KAAK,GAAGV,WAAW,CAACW,SAAS;MACnCK,KAAK,CAACJ,MAAM,GAAG,EAAE;IACnB,CAAC,CAAC;EACJ,CAAC;EAEDK,QAAQ,EAAEA,CAAA,KAAM;IACdd,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACX,KAAK,GAAG,CAAC;MACfW,KAAK,CAACV,QAAQ,GAAG,GAAG,CAAC,CAAC;MACtBU,KAAK,CAACT,SAAS,GAAG,KAAK;MACvBS,KAAK,CAACR,QAAQ,GAAG,KAAK;MACtBQ,KAAK,CAACP,KAAK,GAAG,CAAC;MACfO,KAAK,CAACN,KAAK,GAAGV,WAAW,CAACW,SAAS;MACnCK,KAAK,CAACJ,MAAM,GAAG,EAAE;IACnB,CAAC,CAAC;EACJ,CAAC;EAEDM,SAAS,EAAEA,CAAA,KAAM;IACff,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACX,KAAK,GAAG,CAAC;MACfW,KAAK,CAACV,QAAQ,GAAG,GAAG,CAAC,CAAC;MACtBU,KAAK,CAACT,SAAS,GAAG,KAAK;MACvBS,KAAK,CAACR,QAAQ,GAAG,KAAK;MACtBQ,KAAK,CAACP,KAAK,GAAG,CAAC;MACfO,KAAK,CAACN,KAAK,GAAGV,WAAW,CAACW,SAAS;MACnCK,KAAK,CAACJ,MAAM,GAAG,EAAE;IACnB,CAAC,CAAC;EACJ,CAAC;EAEDO,UAAU,EAAGC,OAAe,IAAK;IAC/B,MAAM;MAAER,MAAM;MAAEL;IAAU,CAAC,GAAGH,GAAG,CAAC,CAAC;IACnC,IAAI,CAACG,SAAS,EAAE;;IAEhB;IACA,IAAIc,UAAU,GAAG,CAAC,CAAC;IACnB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGV,MAAM,CAACW,MAAM,EAAED,CAAC,EAAE,EAAE;MACtC,IAAIV,MAAM,CAACU,CAAC,CAAC,CAACE,EAAE,KAAKJ,OAAO,EAAE;QAC5BC,UAAU,GAAGC,CAAC;QACd;MACF;IACF;IAEA,IAAID,UAAU,KAAK,CAAC,CAAC,IAAIT,MAAM,CAACS,UAAU,CAAC,CAACI,QAAQ,EAAE;;IAEtD;IACA,MAAMC,MAAM,GAAG,EAAE;IAEjBvB,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACX,KAAK,GAAGW,KAAK,CAACX,KAAK,GAAGqB,MAAM;MAClC;MACA,IAAIV,KAAK,CAACJ,MAAM,CAACS,UAAU,CAAC,EAAE;QAC5BL,KAAK,CAACJ,MAAM,CAACS,UAAU,CAAC,CAACI,QAAQ,GAAG,IAAI;QACxCT,KAAK,CAACJ,MAAM,CAACS,UAAU,CAAC,CAACM,SAAS,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;MACjD;IACF,CAAC,CAAC;EACJ,CAAC;EAEDC,WAAW,EAAGJ,MAAc,IAAK;IAC/BvB,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACX,KAAK,GAAGW,KAAK,CAACX,KAAK,GAAGqB,MAAM;IACpC,CAAC,CAAC;EACJ,CAAC;EAEDK,aAAa,EAAEA,CAAA,KAAM;IACnB5B,GAAG,CAAEa,KAAU,IAAK;MAClB,MAAMgB,WAAW,GAAGhB,KAAK,CAACV,QAAQ,GAAG,CAAC;MACtC,IAAI0B,WAAW,IAAI,CAAC,EAAE;QACpBhB,KAAK,CAACV,QAAQ,GAAG,CAAC;QAClBU,KAAK,CAACT,SAAS,GAAG,KAAK;QACvBS,KAAK,CAACR,QAAQ,GAAG,IAAI;MACvB,CAAC,MAAM;QACLQ,KAAK,CAACV,QAAQ,GAAG0B,WAAW;MAC9B;IACF,CAAC,CAAC;EACJ,CAAC;EAEDC,QAAQ,EAAGC,KAAY,IAAK;IAC1B/B,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACJ,MAAM,CAACuB,IAAI,CAACD,KAAK,CAAC;IAC1B,CAAC,CAAC;EACJ,CAAC;EAEDE,WAAW,EAAGhB,OAAe,IAAK;IAChCjB,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACJ,MAAM,GAAGI,KAAK,CAACJ,MAAM,CAACyB,MAAM,CAAEC,CAAM,IAAKA,CAAC,CAACd,EAAE,KAAKJ,OAAO,CAAC;IAClE,CAAC,CAAC;EACJ,CAAC;EAEDmB,WAAW,EAAEA,CAACnB,OAAe,EAAEoB,OAAuB,KAAK;IACzDrC,GAAG,CAAEa,KAAU,IAAK;MAClB;MACA,KAAK,IAAIM,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGN,KAAK,CAACJ,MAAM,CAACW,MAAM,EAAED,CAAC,EAAE,EAAE;QAC5C,IAAIN,KAAK,CAACJ,MAAM,CAACU,CAAC,CAAC,CAACE,EAAE,KAAKJ,OAAO,EAAE;UAClCqB,MAAM,CAACC,MAAM,CAAC1B,KAAK,CAACJ,MAAM,CAACU,CAAC,CAAC,EAAEkB,OAAO,CAAC;UACvC;QACF;MACF;IACF,CAAC,CAAC;EACJ,CAAC;EAEDG,UAAU,EAAEA,CAAA,KAAM;IAChBxC,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACP,KAAK,GAAG,CAAC;IACjB,CAAC,CAAC;EACJ,CAAC;EAEDmC,QAAQ,EAAEA,CAAA,KAAM;IACdzC,GAAG,CAAEa,KAAU,IAAK;MAClB,MAAM6B,QAAQ,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE/B,KAAK,CAACN,KAAK,GAAG,CAAC,CAAC;MAC7CM,KAAK,CAACN,KAAK,GAAGmC,QAAQ;MACtB,IAAIA,QAAQ,IAAI,CAAC,EAAE;QACjB7B,KAAK,CAACT,SAAS,GAAG,KAAK;QACvBS,KAAK,CAACR,QAAQ,GAAG,IAAI;MACvB;IACF,CAAC,CAAC;EACJ,CAAC;EAEDwC,OAAO,EAAEA,CAAA,KAAM;IACb7C,GAAG,CAAEa,KAAU,IAAK;MAClBA,KAAK,CAACN,KAAK,GAAGoC,IAAI,CAACG,GAAG,CAACjC,KAAK,CAACN,KAAK,GAAG,CAAC,EAAEV,WAAW,CAACW,SAAS,CAAC,CAAC,CAAC;IAClE,CAAC,CAAC;EACJ;AACF,CAAC,CAAC,CAAC,CAAC,CAAC;;AAEL;AACA,IAAIuC,mBAAwB,GAAG,IAAI;;AAEnC;AACA,OAAO,MAAMC,mBAAmB,GAAIC,WAAgB,IAAK;EACvDF,mBAAmB,GAAGE,WAAW;AACnC,CAAC;;AAED;AACA;AACAlD,kBAAkB,CAACmD,SAAS,CACzBC,KAAK,IAAKA,KAAK,CAAC9C,QAAQ,EACzB,CAACA,QAAQ,EAAE+C,gBAAgB,KAAK;EAC9B,IAAI/C,QAAQ,IAAI,CAAC+C,gBAAgB,EAAE;IACjC;IACAC,UAAU,CAAC,MAAM;MACf;MACA,IAAIN,mBAAmB,EAAE;QACvBA,mBAAmB,CAACO,OAAO,CAAC,CAAC;MAC/B;MAEA,MAAMH,KAAK,GAAGpD,kBAAkB,CAACwD,QAAQ,CAAC,CAAC;MAC3C;MACAJ,KAAK,CAAC1C,MAAM,CAAC+C,OAAO,CAACzB,KAAK,IAAI;QAC5BhC,kBAAkB,CAACwD,QAAQ,CAAC,CAAC,CAACtB,WAAW,CAACF,KAAK,CAACV,EAAE,CAAC;MACrD,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;EACV;AACF,CACF,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- "use strict";import React from 'react';import{View,TouchableOpacity,Text,StyleSheet}from 'react-native';import{GAME_CONFIG}from "../FruitNinjaService.js";import{jsx as _jsx,jsxs as _jsxs}from "react/jsx-runtime";export const FruitComponent =({fruit,onSlice})=>{const scale = fruit.isSliced ? 0:1;const opacity = fruit.isSliced ? 0:1;const style ={transform:[{translateX:fruit.position.x},{translateY:fruit.position.y},{rotate:`${fruit.rotation}rad`},{scale}],opacity,position:'absolute',width:GAME_CONFIG.FRUIT_SIZE,height:GAME_CONFIG.FRUIT_SIZE,zIndex:fruit.isBomb ? 10:5};const getBorderColor =()=>{if(fruit.isBomb)return '#ef4444';if(fruit.isBonus)return '#fbbf24';if(fruit.isFreeze)return '#60a5fa';return '#4ade80';};const getBackgroundColor =()=>{if(fruit.isBomb)return '#fee2e2';if(fruit.isBonus)return '#fef3c7';if(fruit.isFreeze)return '#dbeafe';return '#dcfce7';};return _jsx(View,{style:style,children:_jsxs(TouchableOpacity,{style:[styles.fruitButton,{width:GAME_CONFIG.FRUIT_SIZE,height:GAME_CONFIG.FRUIT_SIZE,borderColor:getBorderColor(),backgroundColor:getBackgroundColor()}],onPress:()=> onSlice?.(fruit.id),activeOpacity:0.8,children:[_jsx(Text,{style:styles.fruitEmoji,children:fruit.type.emoji}),(fruit.isBomb || fruit.isBonus || fruit.isFreeze)&& _jsx(View,{style:[styles.glowEffect,{backgroundColor:fruit.isBomb ? '#ff4757':fruit.isBonus ? '#ffa502':'#3742fa',shadowColor:fruit.isBomb ? '#ff4757':fruit.isBonus ? '#ffa502':'#3742fa',shadowOffset:{width:0,height:0},shadowOpacity:0.8,shadowRadius:10,elevation:10}]})]})});};const styles = StyleSheet.create({fruitButton:{justifyContent:'center',alignItems:'center',borderRadius:50,borderWidth:2,shadowColor:'#000',shadowOffset:{width:0,height:4},shadowOpacity:0.3,shadowRadius:8,elevation:8},fruitEmoji:{fontSize:32},glowEffect:{position:'absolute',top:0,left:0,right:0,bottom:0,borderRadius:50,opacity:0.3}});
1
+ "use strict";import t,{useMemo as e}from"react";import{View as o,TouchableOpacity as r,StyleSheet as s}from"react-native";import{GAME_CONFIG as i}from"../FruitNinjaService.js";import{SkiaFruit as a}from"../../../helpers/AbstractFruits.js";import{jsx as n,jsxs as c}from"react/jsx-runtime";export const FruitComponent=t.memo(({fruit:t,onSlice:s})=>{const l=t.isSliced?0:1,m=t.isSliced?0:1,p=e(()=>({transform:[{translateX:t.position.x},{translateY:t.position.y},{rotate:t.rotation+"rad"},{scale:l}],opacity:m,position:"absolute",width:i.FRUIT_SIZE,height:i.FRUIT_SIZE,zIndex:t.isBomb?10:5}),[t.position.x,t.position.y,t.rotation,t.isBomb,l,m]);return n(o,{style:p,children:c(r,{style:f.fruitButton,onPress:()=>s?.(t.id),activeOpacity:.8,children:[n(a,{name:t.type.name,size:i.FRUIT_SIZE}),(t.isBomb||t.isBonus)&&n(o,{style:[f.glowEffect,{shadowColor:t.isBomb?"#ff4757":"#ffa502",shadowOffset:{width:0,height:0},shadowOpacity:.8,shadowRadius:15,elevation:15}]})]})})});const f=s.create({fruitButton:{justifyContent:"center",alignItems:"center"},glowEffect:{position:"absolute",top:0,left:0,right:0,bottom:0,borderRadius:50,opacity:.3}});
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","TouchableOpacity","Text","StyleSheet","GAME_CONFIG","jsx","_jsx","jsxs","_jsxs","FruitComponent","fruit","onSlice","scale","isSliced","opacity","style","transform","translateX","position","x","translateY","y","rotate","rotation","width","FRUIT_SIZE","height","zIndex","isBomb","getBorderColor","isBonus","isFreeze","getBackgroundColor","children","styles","fruitButton","borderColor","backgroundColor","onPress","id","activeOpacity","fruitEmoji","type","emoji","glowEffect","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","create","justifyContent","alignItems","borderRadius","borderWidth","fontSize","top","left","right","bottom"],"sourceRoot":"../../../../../src","sources":["games/fruit-ninja/components/FruitComponent.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AAEvE,SAASC,WAAW,QAAQ,yBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAQnD,OAAO,MAAMC,cAA6C,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAQ,CAAC,KAAK;EACnF,MAAMC,KAAK,GAAGF,KAAK,CAACG,QAAQ,GAAG,CAAC,GAAG,CAAC;EACpC,MAAMC,OAAO,GAAGJ,KAAK,CAACG,QAAQ,GAAG,CAAC,GAAG,CAAC;EAEtC,MAAME,KAAK,GAAG;IACZC,SAAS,EAAE,CAAC;MAAEC,UAAU,EAAEP,KAAK,CAACQ,QAAQ,CAACC;IAAE,CAAC,EAAE;MAAEC,UAAU,EAAEV,KAAK,CAACQ,QAAQ,CAACG;IAAE,CAAC,EAAE;MAAEC,MAAM,EAAE,GAAGZ,KAAK,CAACa,QAAQ;IAAM,CAAC,EAAE;MAAEX;IAAM,CAAC,CAAC;IAC9HE,OAAO;IACPI,QAAQ,EAAE,UAAmB;IAC7BM,KAAK,EAAEpB,WAAW,CAACqB,UAAU;IAC7BC,MAAM,EAAEtB,WAAW,CAACqB,UAAU;IAC9BE,MAAM,EAAEjB,KAAK,CAACkB,MAAM,GAAG,EAAE,GAAG;EAC9B,CAAC;EAED,MAAMC,cAAc,GAAGA,CAAA,KAAM;IAC3B,IAAInB,KAAK,CAACkB,MAAM,EAAE,OAAO,SAAS,CAAC,CAAC;IACpC,IAAIlB,KAAK,CAACoB,OAAO,EAAE,OAAO,SAAS,CAAC,CAAC;IACrC,IAAIpB,KAAK,CAACqB,QAAQ,EAAE,OAAO,SAAS,CAAC,CAAC;IACtC,OAAO,SAAS,CAAC,CAAC;EACpB,CAAC;EAED,MAAMC,kBAAkB,GAAGA,CAAA,KAAM;IAC/B,IAAItB,KAAK,CAACkB,MAAM,EAAE,OAAO,SAAS,CAAC,CAAC;IACpC,IAAIlB,KAAK,CAACoB,OAAO,EAAE,OAAO,SAAS,CAAC,CAAC;IACrC,IAAIpB,KAAK,CAACqB,QAAQ,EAAE,OAAO,SAAS,CAAC,CAAC;IACtC,OAAO,SAAS,CAAC,CAAC;EACpB,CAAC;EAED,oBACEzB,IAAA,CAACN,IAAI;IAACe,KAAK,EAAEA,KAAM;IAAAkB,QAAA,eACjBzB,KAAA,CAACP,gBAAgB;MACfc,KAAK,EAAE,CACLmB,MAAM,CAACC,WAAW,EAClB;QACEX,KAAK,EAAEpB,WAAW,CAACqB,UAAU;QAC7BC,MAAM,EAAEtB,WAAW,CAACqB,UAAU;QAC9BW,WAAW,EAAEP,cAAc,CAAC,CAAC;QAC7BQ,eAAe,EAAEL,kBAAkB,CAAC;MACtC,CAAC,CACD;MACFM,OAAO,EAAEA,CAAA,KAAM3B,OAAO,GAAGD,KAAK,CAAC6B,EAAE,CAAE;MACnCC,aAAa,EAAE,GAAI;MAAAP,QAAA,gBACnB3B,IAAA,CAACJ,IAAI;QAACa,KAAK,EAAEmB,MAAM,CAACO,UAAW;QAAAR,QAAA,EAAEvB,KAAK,CAACgC,IAAI,CAACC;MAAK,CAAO,CAAC,EAGxD,CAACjC,KAAK,CAACkB,MAAM,IAAIlB,KAAK,CAACoB,OAAO,IAAIpB,KAAK,CAACqB,QAAQ,kBAC/CzB,IAAA,CAACN,IAAI;QACHe,KAAK,EAAE,CACLmB,MAAM,CAACU,UAAU,EACjB;UACEP,eAAe,EAAE3B,KAAK,CAACkB,MAAM,GAAG,SAAS,GAAGlB,KAAK,CAACoB,OAAO,GAAG,SAAS,GAAG,SAAS;UACjFe,WAAW,EAAEnC,KAAK,CAACkB,MAAM,GAAG,SAAS,GAAGlB,KAAK,CAACoB,OAAO,GAAG,SAAS,GAAG,SAAS;UAC7EgB,YAAY,EAAE;YAAEtB,KAAK,EAAE,CAAC;YAAEE,MAAM,EAAE;UAAE,CAAC;UACrCqB,aAAa,EAAE,GAAG;UAClBC,YAAY,EAAE,EAAE;UAChBC,SAAS,EAAE;QACb,CAAC;MACD,CACH,CACF;IAAA,CACe;EAAC,CACf,CAAC;AAEX,CAAC;AAED,MAAMf,MAAM,GAAG/B,UAAU,CAAC+C,MAAM,CAAC;EAC/Bf,WAAW,EAAE;IACXgB,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,CAAC;IACdT,WAAW,EAAE,MAAM;IACnBC,YAAY,EAAE;MAAEtB,KAAK,EAAE,CAAC;MAAEE,MAAM,EAAE;IAAE,CAAC;IACrCqB,aAAa,EAAE,GAAG;IAClBC,YAAY,EAAE,CAAC;IACfC,SAAS,EAAE;EACb,CAAC;EACDR,UAAU,EAAE;IACVc,QAAQ,EAAE;EACZ,CAAC;EACDX,UAAU,EAAE;IACV1B,QAAQ,EAAE,UAAU;IACpBsC,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTN,YAAY,EAAE,EAAE;IAChBvC,OAAO,EAAE;EACX;AACF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useMemo","View","TouchableOpacity","StyleSheet","GAME_CONFIG","SkiaFruit","jsx","_jsx","jsxs","_jsxs","FruitComponent","memo","fruit","onSlice","scale","isSliced","opacity","style","transform","translateX","position","x","translateY","y","rotate","rotation","width","FRUIT_SIZE","height","zIndex","isBomb","children","styles","fruitButton","onPress","id","activeOpacity","name","type","size","isBonus","glowEffect","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","create","justifyContent","alignItems","top","left","right","bottom","borderRadius"],"sourceRoot":"../../../../../src","sources":["games/fruit-ninja/components/FruitComponent.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,OAAO,QAAQ,OAAO;AACtC,SAASC,IAAI,EAAEC,gBAAgB,EAAEC,UAAU,QAAQ,cAAc;AAEjE,SAASC,WAAW,QAAQ,yBAAsB;AAClD,SAASC,SAAS,QAAQ,oCAAiC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAO5D,OAAO,MAAMC,cAA6C,gBAAGX,KAAK,CAACY,IAAI,CAAC,CAAC;EAAEC,KAAK;EAAEC;AAAQ,CAAC,KAAK;EAC9F,MAAMC,KAAK,GAAGF,KAAK,CAACG,QAAQ,GAAG,CAAC,GAAG,CAAC;EACpC,MAAMC,OAAO,GAAGJ,KAAK,CAACG,QAAQ,GAAG,CAAC,GAAG,CAAC;EAEtC,MAAME,KAAK,GAAGjB,OAAO,CAAC,OAAO;IAC3BkB,SAAS,EAAE,CAAC;MAAEC,UAAU,EAAEP,KAAK,CAACQ,QAAQ,CAACC;IAAE,CAAC,EAAE;MAAEC,UAAU,EAAEV,KAAK,CAACQ,QAAQ,CAACG;IAAE,CAAC,EAAE;MAAEC,MAAM,EAAE,GAAGZ,KAAK,CAACa,QAAQ;IAAM,CAAC,EAAE;MAAEX;IAAM,CAAC,CAAC;IAC9HE,OAAO;IACPI,QAAQ,EAAE,UAAmB;IAC7BM,KAAK,EAAEtB,WAAW,CAACuB,UAAU;IAC7BC,MAAM,EAAExB,WAAW,CAACuB,UAAU;IAC9BE,MAAM,EAAEjB,KAAK,CAACkB,MAAM,GAAG,EAAE,GAAG;EAC9B,CAAC,CAAC,EAAE,CAAClB,KAAK,CAACQ,QAAQ,CAACC,CAAC,EAAET,KAAK,CAACQ,QAAQ,CAACG,CAAC,EAAEX,KAAK,CAACa,QAAQ,EAAEb,KAAK,CAACkB,MAAM,EAAEhB,KAAK,EAAEE,OAAO,CAAC,CAAC;EAEvF,oBACET,IAAA,CAACN,IAAI;IAACgB,KAAK,EAAEA,KAAM;IAAAc,QAAA,eACjBtB,KAAA,CAACP,gBAAgB;MACfe,KAAK,EAAEe,MAAM,CAACC,WAAY;MAC1BC,OAAO,EAAEA,CAAA,KAAMrB,OAAO,GAAGD,KAAK,CAACuB,EAAE,CAAE;MACnCC,aAAa,EAAE,GAAI;MAAAL,QAAA,gBACnBxB,IAAA,CAACF,SAAS;QAACgC,IAAI,EAAEzB,KAAK,CAAC0B,IAAI,CAACD,IAAK;QAACE,IAAI,EAAEnC,WAAW,CAACuB;MAAW,CAAE,CAAC,EAGjE,CAACf,KAAK,CAACkB,MAAM,IAAIlB,KAAK,CAAC4B,OAAO,kBAC7BjC,IAAA,CAACN,IAAI;QACHgB,KAAK,EAAE,CACLe,MAAM,CAACS,UAAU,EACjB;UACEC,WAAW,EAAE9B,KAAK,CAACkB,MAAM,GAAG,SAAS,GAAG,SAAS;UACjDa,YAAY,EAAE;YAAEjB,KAAK,EAAE,CAAC;YAAEE,MAAM,EAAE;UAAE,CAAC;UACrCgB,aAAa,EAAE,GAAG;UAClBC,YAAY,EAAE,EAAE;UAChBC,SAAS,EAAE;QACb,CAAC;MACD,CACH,CACF;IAAA,CACe;EAAC,CACf,CAAC;AAEX,CAAC,CAAC;AAEF,MAAMd,MAAM,GAAG7B,UAAU,CAAC4C,MAAM,CAAC;EAC/Bd,WAAW,EAAE;IACXe,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE;EACd,CAAC;EACDR,UAAU,EAAE;IACVrB,QAAQ,EAAE,UAAU;IACpB8B,GAAG,EAAE,CAAC;IACNC,IAAI,EAAE,CAAC;IACPC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,YAAY,EAAE,EAAE;IAChBtC,OAAO,EAAE;EACX;AACF,CAAC,CAAC","ignoreList":[]}