@nayan-ui/games 1.19.0 → 1.20.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 (1808) hide show
  1. package/README.md +53 -191
  2. package/lib/module/assets/fonts/Inter-SemiBold.ttf +0 -0
  3. package/lib/module/assets/models/explorer/explorer.glb +0 -0
  4. package/lib/module/assets/models/explorer/params.json +51 -0
  5. package/lib/module/assets/models/explorer/source.json +222 -0
  6. package/lib/module/assets/models/play-with-tua/play-with-tua.glb +0 -0
  7. package/lib/module/assets/models/play-with-tua/sources.json +141 -0
  8. package/lib/module/assets/sfx/balloon_pop.wav +0 -0
  9. package/lib/module/assets/sfx/blocked.wav +0 -0
  10. package/lib/module/assets/sfx/boing.wav +0 -0
  11. package/lib/module/assets/sfx/bonus.wav +0 -0
  12. package/lib/module/assets/sfx/boom.wav +0 -0
  13. package/lib/module/assets/sfx/bump.wav +0 -0
  14. package/lib/module/assets/sfx/cannon.wav +0 -0
  15. package/lib/module/assets/sfx/capture.wav +0 -0
  16. package/lib/module/assets/sfx/card_flip.wav +0 -0
  17. package/lib/module/assets/sfx/card_place.wav +0 -0
  18. package/lib/module/assets/sfx/catch.wav +0 -0
  19. package/lib/module/assets/sfx/chime.wav +0 -0
  20. package/lib/module/assets/sfx/chomp.wav +0 -0
  21. package/lib/module/assets/sfx/chomp_alt.wav +0 -0
  22. package/lib/module/assets/sfx/clack.wav +0 -0
  23. package/lib/module/assets/sfx/clang.wav +0 -0
  24. package/lib/module/assets/sfx/clash.wav +0 -0
  25. package/lib/module/assets/sfx/click.wav +0 -0
  26. package/lib/module/assets/sfx/coin.wav +0 -0
  27. package/lib/module/assets/sfx/combo.wav +0 -0
  28. package/lib/module/assets/sfx/crash.wav +0 -0
  29. package/lib/module/assets/sfx/crunch.wav +0 -0
  30. package/lib/module/assets/sfx/dance.wav +0 -0
  31. package/lib/module/assets/sfx/deselect.wav +0 -0
  32. package/lib/module/assets/sfx/dice_roll.wav +0 -0
  33. package/lib/module/assets/sfx/die.wav +0 -0
  34. package/lib/module/assets/sfx/draw.wav +0 -0
  35. package/lib/module/assets/sfx/drop.wav +0 -0
  36. package/lib/module/assets/sfx/eat.wav +0 -0
  37. package/lib/module/assets/sfx/engine.wav +0 -0
  38. package/lib/module/assets/sfx/error.wav +0 -0
  39. package/lib/module/assets/sfx/flag.wav +0 -0
  40. package/lib/module/assets/sfx/flap.wav +0 -0
  41. package/lib/module/assets/sfx/flip_disc.wav +0 -0
  42. package/lib/module/assets/sfx/footstep_run.wav +0 -0
  43. package/lib/module/assets/sfx/footstep_walk.wav +0 -0
  44. package/lib/module/assets/sfx/game_over.wav +0 -0
  45. package/lib/module/assets/sfx/gate.wav +0 -0
  46. package/lib/module/assets/sfx/hit.wav +0 -0
  47. package/lib/module/assets/sfx/hop.wav +0 -0
  48. package/lib/module/assets/sfx/hurt.wav +0 -0
  49. package/lib/module/assets/sfx/invalid.wav +0 -0
  50. package/lib/module/assets/sfx/jump.wav +0 -0
  51. package/lib/module/assets/sfx/ladder.wav +0 -0
  52. package/lib/module/assets/sfx/land.wav +0 -0
  53. package/lib/module/assets/sfx/laugh.wav +0 -0
  54. package/lib/module/assets/sfx/lose.wav +0 -0
  55. package/lib/module/assets/sfx/merge.wav +0 -0
  56. package/lib/module/assets/sfx/miss.wav +0 -0
  57. package/lib/module/assets/sfx/nitro.wav +0 -0
  58. package/lib/module/assets/sfx/pew.wav +0 -0
  59. package/lib/module/assets/sfx/place.wav +0 -0
  60. package/lib/module/assets/sfx/pling.wav +0 -0
  61. package/lib/module/assets/sfx/point.wav +0 -0
  62. package/lib/module/assets/sfx/pop.wav +0 -0
  63. package/lib/module/assets/sfx/pop_soft.wav +0 -0
  64. package/lib/module/assets/sfx/power_up.wav +0 -0
  65. package/lib/module/assets/sfx/reveal.wav +0 -0
  66. package/lib/module/assets/sfx/robot.wav +0 -0
  67. package/lib/module/assets/sfx/rotate.wav +0 -0
  68. package/lib/module/assets/sfx/run_steps.wav +0 -0
  69. package/lib/module/assets/sfx/select.wav +0 -0
  70. package/lib/module/assets/sfx/shuffle.wav +0 -0
  71. package/lib/module/assets/sfx/six.wav +0 -0
  72. package/lib/module/assets/sfx/slice.wav +0 -0
  73. package/lib/module/assets/sfx/slide.wav +0 -0
  74. package/lib/module/assets/sfx/snake.wav +0 -0
  75. package/lib/module/assets/sfx/snap.wav +0 -0
  76. package/lib/module/assets/sfx/splash.wav +0 -0
  77. package/lib/module/assets/sfx/star.wav +0 -0
  78. package/lib/module/assets/sfx/start.wav +0 -0
  79. package/lib/module/assets/sfx/swoosh.wav +0 -0
  80. package/lib/module/assets/sfx/tap.wav +0 -0
  81. package/lib/module/assets/sfx/thud.wav +0 -0
  82. package/lib/module/assets/sfx/thunk.wav +0 -0
  83. package/lib/module/assets/sfx/tick.wav +0 -0
  84. package/lib/module/assets/sfx/time_up.wav +0 -0
  85. package/lib/module/assets/sfx/tock.wav +0 -0
  86. package/lib/module/assets/sfx/walk_steps.wav +0 -0
  87. package/lib/module/assets/sfx/warning.wav +0 -0
  88. package/lib/module/assets/sfx/whack.wav +0 -0
  89. package/lib/module/assets/sfx/whoosh.wav +0 -0
  90. package/lib/module/assets/sfx/win.wav +0 -0
  91. package/lib/module/assets/sfx/zap.wav +0 -0
  92. package/lib/module/assets/textures/ad_bolt.png +0 -0
  93. package/lib/module/assets/textures/ad_bubbles.png +0 -0
  94. package/lib/module/assets/textures/ad_chevrons.png +0 -0
  95. package/lib/module/assets/textures/asphalt.png +0 -0
  96. package/lib/module/assets/textures/bark.jpg +0 -0
  97. package/lib/module/assets/textures/explorer-atlas.png +0 -0
  98. package/lib/module/assets/textures/facade.png +0 -0
  99. package/lib/module/assets/textures/grass.png +0 -0
  100. package/lib/module/assets/textures/leaves.png +0 -0
  101. package/lib/module/assets/textures/limestone.jpg +0 -0
  102. package/lib/module/assets/textures/meadow.jpg +0 -0
  103. package/lib/module/assets/textures/nature-sources.json +87 -0
  104. package/lib/module/assets/textures/pine.png +0 -0
  105. package/lib/module/assets/textures/river.jpg +0 -0
  106. package/lib/module/assets/textures/soft_glow.png +0 -0
  107. package/lib/module/games/arrows/Arrows.js +1 -1
  108. package/lib/module/games/arrows/ArrowsConstants.js +1 -1
  109. package/lib/module/games/arrows/ArrowsGame.js +1 -0
  110. package/lib/module/games/arrows/ArrowsScene.js +1 -0
  111. package/lib/module/games/balloon-blaster/BalloonBlaster.js +1 -1
  112. package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js +1 -1
  113. package/lib/module/games/balloon-blaster/BalloonBlasterGame.js +1 -0
  114. package/lib/module/games/balloon-blaster/BalloonBlasterPhysics.js +1 -0
  115. package/lib/module/games/balloon-blaster/BalloonBlasterScene.js +1 -0
  116. package/lib/module/games/bike-racing/BikeMeshes.js +1 -0
  117. package/lib/module/games/bike-racing/BikeRacing.js +1 -1
  118. package/lib/module/games/bike-racing/BikeRacingConstants.js +1 -1
  119. package/lib/module/games/bike-racing/BikeRacingGame.js +1 -0
  120. package/lib/module/games/bike-racing/BikeRacingScene.js +1 -0
  121. package/lib/module/games/block-blast/BlockBlast.js +1 -1
  122. package/lib/module/games/block-blast/BlockBlastConstants.js +1 -1
  123. package/lib/module/games/block-blast/BlockBlastGame.js +1 -0
  124. package/lib/module/games/block-blast/BlockBlastScene.js +1 -0
  125. package/lib/module/games/block-breaker/BlockBreaker.js +1 -1
  126. package/lib/module/games/block-breaker/BlockBreakerConstants.js +1 -1
  127. package/lib/module/games/block-breaker/BlockBreakerGame.js +1 -0
  128. package/lib/module/games/block-breaker/BlockBreakerScene.js +1 -0
  129. package/lib/module/games/bluk/Bluk.js +1 -1
  130. package/lib/module/games/bluk/BlukConstants.js +1 -1
  131. package/lib/module/games/bluk/BlukGame.js +1 -0
  132. package/lib/module/games/bluk/BlukRules.js +1 -0
  133. package/lib/module/games/bluk/BlukScene.js +1 -0
  134. package/lib/module/games/bubble-shooter/BubbleShooter.js +1 -1
  135. package/lib/module/games/bubble-shooter/BubbleShooterConstants.js +1 -1
  136. package/lib/module/games/bubble-shooter/BubbleShooterGame.js +1 -0
  137. package/lib/module/games/bubble-shooter/BubbleShooterScene.js +1 -0
  138. package/lib/module/games/candy-crush/CandyCrush.js +1 -1
  139. package/lib/module/games/candy-crush/CandyCrushConstants.js +1 -1
  140. package/lib/module/games/candy-crush/CandyCrushGame.js +1 -0
  141. package/lib/module/games/candy-crush/CandyCrushScene.js +1 -0
  142. package/lib/module/games/car-racing/CarMeshes.js +1 -0
  143. package/lib/module/games/car-racing/CarRacing.js +1 -1
  144. package/lib/module/games/car-racing/CarRacingConstants.js +1 -1
  145. package/lib/module/games/car-racing/CarRacingFacade.js +1 -0
  146. package/lib/module/games/car-racing/CarRacingGame.js +1 -0
  147. package/lib/module/games/car-racing/CarRacingScene.js +1 -0
  148. package/lib/module/games/car-racing/CarRacingScenery.js +1 -0
  149. package/lib/module/games/chameleon-run/ChameleonRun.js +1 -1
  150. package/lib/module/games/chameleon-run/ChameleonRunBackdrop.js +1 -0
  151. package/lib/module/games/chameleon-run/ChameleonRunConstants.js +1 -1
  152. package/lib/module/games/chameleon-run/ChameleonRunGame.js +1 -0
  153. package/lib/module/games/chameleon-run/ChameleonRunMeshes.js +1 -0
  154. package/lib/module/games/chameleon-run/ChameleonRunRules.js +1 -0
  155. package/lib/module/games/chameleon-run/ChameleonRunScene.js +1 -0
  156. package/lib/module/games/checkers/Checkers.js +1 -1
  157. package/lib/module/games/checkers/CheckersAI.js +1 -0
  158. package/lib/module/games/checkers/CheckersConstants.js +1 -1
  159. package/lib/module/games/checkers/CheckersGame.js +1 -0
  160. package/lib/module/games/checkers/CheckersRules.js +1 -0
  161. package/lib/module/games/checkers/CheckersScene.js +1 -0
  162. package/lib/module/games/color-switch/ColorSwitch.js +1 -1
  163. package/lib/module/games/color-switch/ColorSwitchConstants.js +1 -1
  164. package/lib/module/games/color-switch/ColorSwitchGame.js +1 -0
  165. package/lib/module/games/color-switch/ColorSwitchScene.js +1 -0
  166. package/lib/module/games/colors-sort/ColorsSort.js +1 -1
  167. package/lib/module/games/colors-sort/ColorsSortConstants.js +1 -1
  168. package/lib/module/games/colors-sort/ColorsSortGame.js +1 -0
  169. package/lib/module/games/colors-sort/ColorsSortScene.js +1 -0
  170. package/lib/module/games/connect-em-all/ConnectEmAll.js +1 -1
  171. package/lib/module/games/connect-em-all/ConnectEmAllConstants.js +1 -1
  172. package/lib/module/games/connect-em-all/ConnectEmAllGame.js +1 -0
  173. package/lib/module/games/connect-em-all/ConnectEmAllScene.js +1 -0
  174. package/lib/module/games/crossy-road/CrossyRoad.js +1 -1
  175. package/lib/module/games/crossy-road/CrossyRoadCamera.js +1 -0
  176. package/lib/module/games/crossy-road/CrossyRoadConstants.js +1 -1
  177. package/lib/module/games/crossy-road/CrossyRoadGame.js +1 -0
  178. package/lib/module/games/crossy-road/CrossyRoadMeshes.js +1 -0
  179. package/lib/module/games/crossy-road/CrossyRoadPerson.js +1 -0
  180. package/lib/module/games/crossy-road/CrossyRoadRules.js +1 -0
  181. package/lib/module/games/crossy-road/CrossyRoadScene.js +1 -0
  182. package/lib/module/games/dino-jump/DinoJump.js +1 -1
  183. package/lib/module/games/dino-jump/DinoJumpConstants.js +1 -1
  184. package/lib/module/games/dino-jump/DinoJumpGame.js +1 -0
  185. package/lib/module/games/dino-jump/DinoJumpScene.js +1 -0
  186. package/lib/module/games/dots-and-boxes/DotsAndBoxes.js +1 -1
  187. package/lib/module/games/dots-and-boxes/DotsAndBoxesConstants.js +1 -1
  188. package/lib/module/games/dots-and-boxes/DotsAndBoxesGame.js +1 -0
  189. package/lib/module/games/dots-and-boxes/DotsAndBoxesScene.js +1 -0
  190. package/lib/module/games/falling-sticks/FallingSticks.js +1 -1
  191. package/lib/module/games/falling-sticks/FallingSticksConstants.js +1 -1
  192. package/lib/module/games/falling-sticks/FallingSticksGame.js +1 -0
  193. package/lib/module/games/falling-sticks/FallingSticksRules.js +1 -0
  194. package/lib/module/games/falling-sticks/FallingSticksScene.js +1 -0
  195. package/lib/module/games/find-different-number/FindDifferentNumber.js +1 -1
  196. package/lib/module/games/find-different-number/FindDifferentNumberConstants.js +1 -1
  197. package/lib/module/games/find-different-number/FindDifferentNumberGame.js +1 -0
  198. package/lib/module/games/find-different-number/FindDifferentNumberRules.js +1 -0
  199. package/lib/module/games/find-different-number/FindDifferentNumberScene.js +1 -0
  200. package/lib/module/games/flappy-bird/FlappyBird.js +1 -1
  201. package/lib/module/games/flappy-bird/FlappyBirdConstants.js +1 -1
  202. package/lib/module/games/flappy-bird/FlappyBirdGame.js +1 -0
  203. package/lib/module/games/flappy-bird/FlappyBirdScene.js +1 -0
  204. package/lib/module/games/fruit-merger/FruitMerger.js +1 -1
  205. package/lib/module/games/fruit-merger/FruitMergerConstants.js +1 -1
  206. package/lib/module/games/fruit-merger/FruitMergerGame.js +1 -0
  207. package/lib/module/games/fruit-merger/FruitMergerRules.js +1 -0
  208. package/lib/module/games/fruit-merger/FruitMergerScene.js +1 -0
  209. package/lib/module/games/fruit-ninja/FruitNinja.js +1 -1
  210. package/lib/module/games/fruit-ninja/FruitNinjaConstants.js +1 -1
  211. package/lib/module/games/fruit-ninja/FruitNinjaGame.js +1 -0
  212. package/lib/module/games/fruit-ninja/FruitNinjaScene.js +1 -0
  213. package/lib/module/games/fruit-ninja/FruitNinjaWorld.js +1 -0
  214. package/lib/module/games/game-2048/Game2048.js +1 -1
  215. package/lib/module/games/game-2048/Game2048Constants.js +1 -1
  216. package/lib/module/games/game-2048/Game2048Game.js +1 -0
  217. package/lib/module/games/game-2048/Game2048Rules.js +1 -0
  218. package/lib/module/games/game-2048/Game2048Scene.js +1 -0
  219. package/lib/module/games/knife-hit/KnifeHit.js +1 -1
  220. package/lib/module/games/knife-hit/KnifeHitConstants.js +1 -1
  221. package/lib/module/games/knife-hit/KnifeHitGame.js +1 -0
  222. package/lib/module/games/knife-hit/KnifeHitScene.js +1 -0
  223. package/lib/module/games/ludo-king/LudoKing.js +1 -1
  224. package/lib/module/games/ludo-king/LudoKingConstants.js +1 -1
  225. package/lib/module/games/ludo-king/LudoKingGame.js +1 -0
  226. package/lib/module/games/ludo-king/LudoKingRules.js +1 -0
  227. package/lib/module/games/ludo-king/LudoKingScene.js +1 -0
  228. package/lib/module/games/maze-runner/MazeRunner.js +1 -1
  229. package/lib/module/games/maze-runner/MazeRunnerConstants.js +1 -1
  230. package/lib/module/games/maze-runner/MazeRunnerGame.js +1 -0
  231. package/lib/module/games/maze-runner/MazeRunnerRules.js +1 -0
  232. package/lib/module/games/maze-runner/MazeRunnerScene.js +1 -0
  233. package/lib/module/games/memory-match/MemoryMatch.js +1 -1
  234. package/lib/module/games/memory-match/MemoryMatchConstants.js +1 -1
  235. package/lib/module/games/memory-match/MemoryMatchGame.js +1 -0
  236. package/lib/module/games/memory-match/MemoryMatchRules.js +1 -0
  237. package/lib/module/games/memory-match/MemoryMatchScene.js +1 -0
  238. package/lib/module/games/mine-sweeper/MineSweeper.js +1 -1
  239. package/lib/module/games/mine-sweeper/MineSweeperConstants.js +1 -1
  240. package/lib/module/games/mine-sweeper/MineSweeperGame.js +1 -0
  241. package/lib/module/games/mine-sweeper/MineSweeperRules.js +1 -0
  242. package/lib/module/games/mine-sweeper/MineSweeperScene.js +1 -0
  243. package/lib/module/games/mob-control/MobControl.js +1 -1
  244. package/lib/module/games/mob-control/MobControlConstants.js +1 -1
  245. package/lib/module/games/mob-control/MobControlGame.js +1 -0
  246. package/lib/module/games/mob-control/MobControlMeshes.js +1 -0
  247. package/lib/module/games/mob-control/MobControlRenderer.js +1 -0
  248. package/lib/module/games/mob-control/MobControlRules.js +1 -0
  249. package/lib/module/games/mob-control/MobControlScene.js +1 -0
  250. package/lib/module/games/number-search/NumberSearch.js +1 -1
  251. package/lib/module/games/number-search/NumberSearchNumbers.js +1 -0
  252. package/lib/module/games/nuts-and-bolts/NutsAndBolts.js +1 -1
  253. package/lib/module/games/nuts-and-bolts/NutsAndBoltsConstants.js +1 -1
  254. package/lib/module/games/nuts-and-bolts/NutsAndBoltsGame.js +1 -0
  255. package/lib/module/games/nuts-and-bolts/NutsAndBoltsRules.js +1 -0
  256. package/lib/module/games/nuts-and-bolts/NutsAndBoltsScene.js +1 -0
  257. package/lib/module/games/pac-man/PacMan.js +1 -1
  258. package/lib/module/games/pac-man/PacManConstants.js +1 -1
  259. package/lib/module/games/pac-man/PacManGame.js +1 -0
  260. package/lib/module/games/pac-man/PacManRules.js +1 -0
  261. package/lib/module/games/pac-man/PacManScene.js +1 -0
  262. package/lib/module/games/paper-io/PaperIo.js +1 -1
  263. package/lib/module/games/paper-io/PaperIoConstants.js +1 -1
  264. package/lib/module/games/paper-io/PaperIoGame.js +1 -0
  265. package/lib/module/games/paper-io/PaperIoMeshes.js +1 -0
  266. package/lib/module/games/paper-io/PaperIoRules.js +1 -0
  267. package/lib/module/games/paper-io/PaperIoScene.js +1 -0
  268. package/lib/module/games/penguin-run/PenguinMeshes.js +1 -0
  269. package/lib/module/games/penguin-run/PenguinModel.js +1 -0
  270. package/lib/module/games/penguin-run/PenguinRun.js +1 -0
  271. package/lib/module/games/penguin-run/PenguinRunConstants.js +1 -0
  272. package/lib/module/games/penguin-run/PenguinRunGame.js +1 -0
  273. package/lib/module/games/penguin-run/PenguinRunScene.js +1 -0
  274. package/lib/module/games/perfect-circle/PerfectCircle.js +1 -1
  275. package/lib/module/games/perfect-circle/PerfectCircleConstants.js +1 -1
  276. package/lib/module/games/perfect-circle/PerfectCircleGame.js +1 -0
  277. package/lib/module/games/perfect-circle/PerfectCircleRules.js +1 -0
  278. package/lib/module/games/perfect-circle/PerfectCircleScene.js +1 -0
  279. package/lib/module/games/pipe-connect/PipeConnect.js +1 -1
  280. package/lib/module/games/pipe-connect/PipeConnectConstants.js +1 -1
  281. package/lib/module/games/pipe-connect/PipeConnectGame.js +1 -0
  282. package/lib/module/games/pipe-connect/PipeConnectRules.js +1 -0
  283. package/lib/module/games/pipe-connect/PipeConnectScene.js +1 -0
  284. package/lib/module/games/play-with-tua/PlayWithTua.js +1 -0
  285. package/lib/module/games/play-with-tua/PlayWithTuaConstants.js +1 -0
  286. package/lib/module/games/play-with-tua/PlayWithTuaGame.js +1 -0
  287. package/lib/module/games/play-with-tua/PlayWithTuaModel.js +1 -0
  288. package/lib/module/games/play-with-tua/PlayWithTuaScene.js +1 -0
  289. package/lib/module/games/popit-fidget/PopitFidget.js +1 -1
  290. package/lib/module/games/popit-fidget/PopitFidgetConstants.js +1 -1
  291. package/lib/module/games/popit-fidget/PopitFidgetGame.js +1 -0
  292. package/lib/module/games/popit-fidget/PopitFidgetScene.js +1 -0
  293. package/lib/module/games/reversi/Reversi.js +1 -1
  294. package/lib/module/games/reversi/ReversiConstants.js +1 -1
  295. package/lib/module/games/reversi/ReversiGame.js +1 -0
  296. package/lib/module/games/reversi/ReversiRules.js +1 -0
  297. package/lib/module/games/reversi/ReversiScene.js +1 -0
  298. package/lib/module/games/search-grid/SearchGrid.js +1 -0
  299. package/lib/module/games/search-grid/SearchGridConstants.js +1 -0
  300. package/lib/module/games/search-grid/SearchGridGame.js +1 -0
  301. package/lib/module/games/search-grid/SearchGridScene.js +1 -0
  302. package/lib/module/games/shared/BackdropCard.js +1 -0
  303. package/lib/module/games/shared/EngineBackdrop.js +1 -0
  304. package/lib/module/games/shared/EngineBlasts.js +1 -0
  305. package/lib/module/games/shared/EngineBlocks.js +1 -0
  306. package/lib/module/games/shared/EngineControlText.js +1 -0
  307. package/lib/module/games/shared/EngineDice.js +1 -0
  308. package/lib/module/games/shared/EngineFootprint.js +1 -0
  309. package/lib/module/games/shared/EngineFruits.js +1 -0
  310. package/lib/module/games/shared/EngineGameLoader.js +1 -0
  311. package/lib/module/games/shared/EngineGameScreen.js +1 -0
  312. package/lib/module/games/shared/EngineGameWidth.js +1 -0
  313. package/lib/module/games/shared/EngineGameWidth.web.js +1 -0
  314. package/lib/module/games/shared/EngineGlyphs.js +1 -0
  315. package/lib/module/games/shared/EngineHud.js +1 -0
  316. package/lib/module/games/shared/EngineLoading.js +1 -0
  317. package/lib/module/games/shared/EngineMeadow.js +1 -0
  318. package/lib/module/games/shared/EngineMeshCache.js +1 -0
  319. package/lib/module/games/shared/EngineMeshes.js +1 -0
  320. package/lib/module/games/shared/EngineRacingChase.js +1 -0
  321. package/lib/module/games/shared/EngineRacingHandling.js +1 -0
  322. package/lib/module/games/shared/EngineReadyContext.js +1 -0
  323. package/lib/module/games/shared/EngineTilt.js +1 -0
  324. package/lib/module/games/shared/EngineTouchSurface.js +1 -0
  325. package/lib/module/games/shared/EngineUtils.js +1 -0
  326. package/lib/module/games/shared/GameActivity.js +1 -0
  327. package/lib/module/games/shared/GameLoading.js +1 -0
  328. package/lib/module/games/shared/GameLoadingTransition.js +1 -0
  329. package/lib/module/games/shared/ProceduralCacheVersion.js +1 -0
  330. package/lib/module/games/shared/useEngineGame.js +1 -0
  331. package/lib/module/games/shared/useGameResource.js +1 -0
  332. package/lib/module/games/shared/useLiveState.js +1 -0
  333. package/lib/module/games/sliding-numbers/SlidingNumbers.js +1 -1
  334. package/lib/module/games/sliding-numbers/SlidingNumbersConstants.js +1 -1
  335. package/lib/module/games/sliding-numbers/SlidingNumbersGame.js +1 -0
  336. package/lib/module/games/sliding-numbers/SlidingNumbersRules.js +1 -0
  337. package/lib/module/games/sliding-numbers/SlidingNumbersScene.js +1 -0
  338. package/lib/module/games/snake-3d/Snake3D.js +1 -1
  339. package/lib/module/games/snake-3d/Snake3DConstants.js +1 -1
  340. package/lib/module/games/snake-3d/Snake3DGame.js +1 -0
  341. package/lib/module/games/snake-3d/Snake3DMotion.js +1 -0
  342. package/lib/module/games/snake-3d/Snake3DRules.js +1 -0
  343. package/lib/module/games/snake-3d/Snake3DScene.js +1 -0
  344. package/lib/module/games/snakes-and-ladders/SnakesAndLadders.js +1 -1
  345. package/lib/module/games/snakes-and-ladders/SnakesAndLaddersConstants.js +1 -1
  346. package/lib/module/games/snakes-and-ladders/SnakesAndLaddersGame.js +1 -0
  347. package/lib/module/games/snakes-and-ladders/SnakesAndLaddersScene.js +1 -0
  348. package/lib/module/games/space-fighter/SpaceFighter.js +1 -1
  349. package/lib/module/games/space-fighter/SpaceFighterConstants.js +1 -1
  350. package/lib/module/games/space-fighter/SpaceFighterGame.js +1 -0
  351. package/lib/module/games/space-fighter/SpaceFighterScene.js +1 -0
  352. package/lib/module/games/spider-solitaire/SpiderSolitaire.js +1 -1
  353. package/lib/module/games/spider-solitaire/SpiderSolitaireConstants.js +1 -1
  354. package/lib/module/games/spider-solitaire/SpiderSolitaireGame.js +1 -0
  355. package/lib/module/games/spider-solitaire/SpiderSolitaireRules.js +1 -0
  356. package/lib/module/games/spider-solitaire/SpiderSolitaireScene.js +1 -0
  357. package/lib/module/games/stack-tower/StackTower.js +1 -1
  358. package/lib/module/games/stack-tower/StackTowerConstants.js +1 -1
  359. package/lib/module/games/stack-tower/StackTowerGame.js +1 -0
  360. package/lib/module/games/stack-tower/StackTowerScene.js +1 -0
  361. package/lib/module/games/sudoku/Sudoku.js +1 -1
  362. package/lib/module/games/sudoku/SudokuConstants.js +1 -1
  363. package/lib/module/games/sudoku/SudokuGame.js +1 -0
  364. package/lib/module/games/sudoku/SudokuRules.js +1 -0
  365. package/lib/module/games/sudoku/SudokuScene.js +1 -0
  366. package/lib/module/games/tangram/Tangram.js +1 -1
  367. package/lib/module/games/tangram/TangramConstants.js +1 -1
  368. package/lib/module/games/tangram/TangramGame.js +1 -0
  369. package/lib/module/games/tangram/TangramRules.js +1 -0
  370. package/lib/module/games/tangram/TangramScene.js +1 -0
  371. package/lib/module/games/tank-1990/Tank1990.js +1 -1
  372. package/lib/module/games/tank-1990/Tank1990Constants.js +1 -1
  373. package/lib/module/games/tank-1990/Tank1990Game.js +1 -0
  374. package/lib/module/games/tank-1990/Tank1990Rules.js +1 -0
  375. package/lib/module/games/tank-1990/Tank1990Scene.js +1 -0
  376. package/lib/module/games/tic-tac-toe/TicTacToe.js +1 -1
  377. package/lib/module/games/tic-tac-toe/TicTacToeConstants.js +1 -1
  378. package/lib/module/games/tic-tac-toe/TicTacToeGame.js +1 -0
  379. package/lib/module/games/tic-tac-toe/TicTacToeRules.js +1 -0
  380. package/lib/module/games/tic-tac-toe/TicTacToeScene.js +1 -0
  381. package/lib/module/games/tile-home/TileHome.js +1 -1
  382. package/lib/module/games/tile-home/TileHomeConstants.js +1 -1
  383. package/lib/module/games/tile-home/TileHomeGame.js +1 -0
  384. package/lib/module/games/tile-home/TileHomeScene.js +1 -0
  385. package/lib/module/games/treasure-hunt/TreasureHunt.js +1 -0
  386. package/lib/module/games/treasure-hunt/TreasureHuntConstants.js +1 -0
  387. package/lib/module/games/treasure-hunt/TreasureHuntControls.js +1 -0
  388. package/lib/module/games/treasure-hunt/TreasureHuntGame.js +1 -0
  389. package/lib/module/games/treasure-hunt/TreasureHuntMeshes.js +1 -0
  390. package/lib/module/games/treasure-hunt/TreasureHuntModel.js +1 -0
  391. package/lib/module/games/treasure-hunt/TreasureHuntRules.js +1 -0
  392. package/lib/module/games/treasure-hunt/TreasureHuntScene.js +1 -0
  393. package/lib/module/games/whack-a-mole/WhackAMole.js +1 -1
  394. package/lib/module/games/whack-a-mole/WhackAMoleConstants.js +1 -1
  395. package/lib/module/games/whack-a-mole/WhackAMoleGame.js +1 -0
  396. package/lib/module/games/whack-a-mole/WhackAMoleScene.js +1 -0
  397. package/lib/module/games/word-search/WordSearch.js +1 -1
  398. package/lib/module/games/word-search/WordSearchWords.js +1 -0
  399. package/lib/module/helpers/GamePatternData.js +1 -0
  400. package/lib/module/helpers/GameSettingsModal.js +1 -1
  401. package/lib/module/helpers/GameTheme.js +1 -0
  402. package/lib/module/helpers/IconPaths.js +1 -0
  403. package/lib/module/helpers/index.js +1 -1
  404. package/lib/module/index.js +1 -1
  405. package/lib/module/services/GameAssetLoader.js +1 -0
  406. package/lib/module/services/GameAssets.js +1 -0
  407. package/lib/module/services/GameLoaders.js +1 -0
  408. package/lib/module/services/GamesConstants.js +1 -1
  409. package/lib/module/services/GamesMetadata.js +1 -1
  410. package/lib/module/services/GamesService.js +1 -1
  411. package/lib/module/services/HapticsService.js +1 -1
  412. package/lib/module/services/ScoringService.js +1 -1
  413. package/lib/module/services/SfxSources.js +1 -0
  414. package/lib/module/services/SoundsService.js +1 -1
  415. package/lib/module/services/ThemeService.js +1 -0
  416. package/lib/module/services/UtilsService.js +1 -1
  417. package/lib/module/services/index.js +1 -1
  418. package/lib/typescript/src/games/arrows/Arrows.d.ts +1 -3
  419. package/lib/typescript/src/games/arrows/ArrowsConstants.d.ts +48 -32
  420. package/lib/typescript/src/games/arrows/ArrowsGame.d.ts +60 -0
  421. package/lib/typescript/src/games/arrows/ArrowsScene.d.ts +67 -0
  422. package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts +1 -3
  423. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts +39 -131
  424. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterGame.d.ts +57 -0
  425. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterPhysics.d.ts +16 -0
  426. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterScene.d.ts +31 -0
  427. package/lib/typescript/src/games/bike-racing/BikeMeshes.d.ts +14 -0
  428. package/lib/typescript/src/games/bike-racing/BikeRacing.d.ts +2 -1
  429. package/lib/typescript/src/games/bike-racing/BikeRacingConstants.d.ts +38 -29
  430. package/lib/typescript/src/games/bike-racing/BikeRacingGame.d.ts +104 -0
  431. package/lib/typescript/src/games/bike-racing/BikeRacingScene.d.ts +25 -0
  432. package/lib/typescript/src/games/block-blast/BlockBlast.d.ts +1 -3
  433. package/lib/typescript/src/games/block-blast/BlockBlastConstants.d.ts +48 -30
  434. package/lib/typescript/src/games/block-blast/BlockBlastGame.d.ts +77 -0
  435. package/lib/typescript/src/games/block-blast/BlockBlastScene.d.ts +36 -0
  436. package/lib/typescript/src/games/block-breaker/BlockBreaker.d.ts +1 -3
  437. package/lib/typescript/src/games/block-breaker/BlockBreakerConstants.d.ts +88 -35
  438. package/lib/typescript/src/games/block-breaker/BlockBreakerGame.d.ts +82 -0
  439. package/lib/typescript/src/games/block-breaker/BlockBreakerScene.d.ts +48 -0
  440. package/lib/typescript/src/games/bluk/Bluk.d.ts +1 -3
  441. package/lib/typescript/src/games/bluk/BlukConstants.d.ts +65 -54
  442. package/lib/typescript/src/games/bluk/BlukGame.d.ts +65 -0
  443. package/lib/typescript/src/games/bluk/BlukRules.d.ts +51 -0
  444. package/lib/typescript/src/games/bluk/BlukScene.d.ts +54 -0
  445. package/lib/typescript/src/games/bubble-shooter/BubbleShooter.d.ts +1 -3
  446. package/lib/typescript/src/games/bubble-shooter/BubbleShooterConstants.d.ts +56 -24
  447. package/lib/typescript/src/games/bubble-shooter/BubbleShooterGame.d.ts +70 -0
  448. package/lib/typescript/src/games/bubble-shooter/BubbleShooterScene.d.ts +26 -0
  449. package/lib/typescript/src/games/candy-crush/CandyCrush.d.ts +1 -3
  450. package/lib/typescript/src/games/candy-crush/CandyCrushConstants.d.ts +63 -32
  451. package/lib/typescript/src/games/candy-crush/CandyCrushGame.d.ts +65 -0
  452. package/lib/typescript/src/games/candy-crush/CandyCrushScene.d.ts +28 -0
  453. package/lib/typescript/src/games/car-racing/CarMeshes.d.ts +44 -0
  454. package/lib/typescript/src/games/car-racing/CarRacing.d.ts +2 -1
  455. package/lib/typescript/src/games/car-racing/CarRacingConstants.d.ts +60 -29
  456. package/lib/typescript/src/games/car-racing/CarRacingFacade.d.ts +5 -0
  457. package/lib/typescript/src/games/car-racing/CarRacingGame.d.ts +96 -0
  458. package/lib/typescript/src/games/car-racing/CarRacingScene.d.ts +97 -0
  459. package/lib/typescript/src/games/car-racing/CarRacingScenery.d.ts +22 -0
  460. package/lib/typescript/src/games/chameleon-run/ChameleonRun.d.ts +1 -3
  461. package/lib/typescript/src/games/chameleon-run/ChameleonRunBackdrop.d.ts +14 -0
  462. package/lib/typescript/src/games/chameleon-run/ChameleonRunConstants.d.ts +44 -42
  463. package/lib/typescript/src/games/chameleon-run/ChameleonRunGame.d.ts +60 -0
  464. package/lib/typescript/src/games/chameleon-run/ChameleonRunMeshes.d.ts +20 -0
  465. package/lib/typescript/src/games/chameleon-run/ChameleonRunRules.d.ts +52 -0
  466. package/lib/typescript/src/games/chameleon-run/ChameleonRunScene.d.ts +44 -0
  467. package/lib/typescript/src/games/checkers/Checkers.d.ts +1 -3
  468. package/lib/typescript/src/games/checkers/CheckersAI.d.ts +11 -0
  469. package/lib/typescript/src/games/checkers/CheckersConstants.d.ts +32 -72
  470. package/lib/typescript/src/games/checkers/CheckersGame.d.ts +56 -0
  471. package/lib/typescript/src/games/checkers/CheckersRules.d.ts +48 -0
  472. package/lib/typescript/src/games/checkers/CheckersScene.d.ts +41 -0
  473. package/lib/typescript/src/games/color-switch/ColorSwitch.d.ts +1 -3
  474. package/lib/typescript/src/games/color-switch/ColorSwitchConstants.d.ts +27 -31
  475. package/lib/typescript/src/games/color-switch/ColorSwitchGame.d.ts +61 -0
  476. package/lib/typescript/src/games/color-switch/ColorSwitchScene.d.ts +43 -0
  477. package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts +1 -3
  478. package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts +37 -44
  479. package/lib/typescript/src/games/colors-sort/ColorsSortGame.d.ts +41 -0
  480. package/lib/typescript/src/games/colors-sort/ColorsSortScene.d.ts +33 -0
  481. package/lib/typescript/src/games/connect-em-all/ConnectEmAll.d.ts +1 -3
  482. package/lib/typescript/src/games/connect-em-all/ConnectEmAllConstants.d.ts +43 -17
  483. package/lib/typescript/src/games/connect-em-all/ConnectEmAllGame.d.ts +54 -0
  484. package/lib/typescript/src/games/connect-em-all/ConnectEmAllScene.d.ts +49 -0
  485. package/lib/typescript/src/games/crossy-road/CrossyRoad.d.ts +1 -3
  486. package/lib/typescript/src/games/crossy-road/CrossyRoadCamera.d.ts +14 -0
  487. package/lib/typescript/src/games/crossy-road/CrossyRoadConstants.d.ts +82 -50
  488. package/lib/typescript/src/games/crossy-road/CrossyRoadGame.d.ts +64 -0
  489. package/lib/typescript/src/games/crossy-road/CrossyRoadMeshes.d.ts +16 -0
  490. package/lib/typescript/src/games/crossy-road/CrossyRoadPerson.d.ts +10 -0
  491. package/lib/typescript/src/games/crossy-road/CrossyRoadRules.d.ts +36 -0
  492. package/lib/typescript/src/games/crossy-road/CrossyRoadScene.d.ts +38 -0
  493. package/lib/typescript/src/games/dino-jump/DinoJump.d.ts +1 -3
  494. package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts +48 -72
  495. package/lib/typescript/src/games/dino-jump/DinoJumpGame.d.ts +60 -0
  496. package/lib/typescript/src/games/dino-jump/DinoJumpScene.d.ts +35 -0
  497. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxes.d.ts +1 -3
  498. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesConstants.d.ts +31 -36
  499. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesGame.d.ts +44 -0
  500. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesScene.d.ts +31 -0
  501. package/lib/typescript/src/games/falling-sticks/FallingSticks.d.ts +1 -3
  502. package/lib/typescript/src/games/falling-sticks/FallingSticksConstants.d.ts +31 -43
  503. package/lib/typescript/src/games/falling-sticks/FallingSticksGame.d.ts +42 -0
  504. package/lib/typescript/src/games/falling-sticks/FallingSticksRules.d.ts +36 -0
  505. package/lib/typescript/src/games/falling-sticks/FallingSticksScene.d.ts +26 -0
  506. package/lib/typescript/src/games/find-different-number/FindDifferentNumber.d.ts +1 -3
  507. package/lib/typescript/src/games/find-different-number/FindDifferentNumberConstants.d.ts +33 -29
  508. package/lib/typescript/src/games/find-different-number/FindDifferentNumberGame.d.ts +43 -0
  509. package/lib/typescript/src/games/find-different-number/FindDifferentNumberRules.d.ts +8 -0
  510. package/lib/typescript/src/games/find-different-number/FindDifferentNumberScene.d.ts +31 -0
  511. package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts +1 -3
  512. package/lib/typescript/src/games/flappy-bird/FlappyBirdConstants.d.ts +39 -35
  513. package/lib/typescript/src/games/flappy-bird/FlappyBirdGame.d.ts +66 -0
  514. package/lib/typescript/src/games/flappy-bird/FlappyBirdScene.d.ts +41 -0
  515. package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts +1 -3
  516. package/lib/typescript/src/games/fruit-merger/FruitMergerConstants.d.ts +71 -44
  517. package/lib/typescript/src/games/fruit-merger/FruitMergerGame.d.ts +63 -0
  518. package/lib/typescript/src/games/fruit-merger/FruitMergerRules.d.ts +39 -0
  519. package/lib/typescript/src/games/fruit-merger/FruitMergerScene.d.ts +49 -0
  520. package/lib/typescript/src/games/fruit-ninja/FruitNinja.d.ts +1 -3
  521. package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts +51 -76
  522. package/lib/typescript/src/games/fruit-ninja/FruitNinjaGame.d.ts +76 -0
  523. package/lib/typescript/src/games/fruit-ninja/FruitNinjaScene.d.ts +52 -0
  524. package/lib/typescript/src/games/fruit-ninja/FruitNinjaWorld.d.ts +8 -0
  525. package/lib/typescript/src/games/game-2048/Game2048.d.ts +1 -3
  526. package/lib/typescript/src/games/game-2048/Game2048Constants.d.ts +25 -120
  527. package/lib/typescript/src/games/game-2048/Game2048Game.d.ts +45 -0
  528. package/lib/typescript/src/games/game-2048/Game2048Rules.d.ts +32 -0
  529. package/lib/typescript/src/games/game-2048/Game2048Scene.d.ts +34 -0
  530. package/lib/typescript/src/games/knife-hit/KnifeHit.d.ts +1 -3
  531. package/lib/typescript/src/games/knife-hit/KnifeHitConstants.d.ts +41 -49
  532. package/lib/typescript/src/games/knife-hit/KnifeHitGame.d.ts +49 -0
  533. package/lib/typescript/src/games/knife-hit/KnifeHitScene.d.ts +37 -0
  534. package/lib/typescript/src/games/ludo-king/LudoKing.d.ts +1 -3
  535. package/lib/typescript/src/games/ludo-king/LudoKingConstants.d.ts +50 -28
  536. package/lib/typescript/src/games/ludo-king/LudoKingGame.d.ts +40 -0
  537. package/lib/typescript/src/games/ludo-king/LudoKingRules.d.ts +42 -0
  538. package/lib/typescript/src/games/ludo-king/LudoKingScene.d.ts +53 -0
  539. package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts +1 -3
  540. package/lib/typescript/src/games/maze-runner/MazeRunnerConstants.d.ts +34 -10
  541. package/lib/typescript/src/games/maze-runner/MazeRunnerGame.d.ts +44 -0
  542. package/lib/typescript/src/games/maze-runner/MazeRunnerRules.d.ts +34 -0
  543. package/lib/typescript/src/games/maze-runner/MazeRunnerScene.d.ts +29 -0
  544. package/lib/typescript/src/games/memory-match/MemoryMatch.d.ts +1 -3
  545. package/lib/typescript/src/games/memory-match/MemoryMatchConstants.d.ts +42 -42
  546. package/lib/typescript/src/games/memory-match/MemoryMatchGame.d.ts +53 -0
  547. package/lib/typescript/src/games/memory-match/MemoryMatchRules.d.ts +14 -0
  548. package/lib/typescript/src/games/memory-match/MemoryMatchScene.d.ts +35 -0
  549. package/lib/typescript/src/games/mine-sweeper/MineSweeper.d.ts +1 -3
  550. package/lib/typescript/src/games/mine-sweeper/MineSweeperConstants.d.ts +43 -82
  551. package/lib/typescript/src/games/mine-sweeper/MineSweeperGame.d.ts +59 -0
  552. package/lib/typescript/src/games/mine-sweeper/MineSweeperRules.d.ts +18 -0
  553. package/lib/typescript/src/games/mine-sweeper/MineSweeperScene.d.ts +23 -0
  554. package/lib/typescript/src/games/mob-control/MobControl.d.ts +1 -3
  555. package/lib/typescript/src/games/mob-control/MobControlConstants.d.ts +99 -85
  556. package/lib/typescript/src/games/mob-control/MobControlGame.d.ts +45 -0
  557. package/lib/typescript/src/games/mob-control/MobControlMeshes.d.ts +2 -0
  558. package/lib/typescript/src/games/mob-control/MobControlRenderer.d.ts +20 -0
  559. package/lib/typescript/src/games/mob-control/MobControlRules.d.ts +68 -0
  560. package/lib/typescript/src/games/mob-control/MobControlScene.d.ts +58 -0
  561. package/lib/typescript/src/games/number-search/NumberSearch.d.ts +1 -3
  562. package/lib/typescript/src/games/number-search/NumberSearchNumbers.d.ts +1 -0
  563. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBolts.d.ts +1 -3
  564. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsConstants.d.ts +27 -79
  565. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsGame.d.ts +56 -0
  566. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsRules.d.ts +65 -0
  567. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsScene.d.ts +48 -0
  568. package/lib/typescript/src/games/pac-man/PacMan.d.ts +1 -3
  569. package/lib/typescript/src/games/pac-man/PacManConstants.d.ts +66 -106
  570. package/lib/typescript/src/games/pac-man/PacManGame.d.ts +48 -0
  571. package/lib/typescript/src/games/pac-man/PacManRules.d.ts +52 -0
  572. package/lib/typescript/src/games/pac-man/PacManScene.d.ts +44 -0
  573. package/lib/typescript/src/games/paper-io/PaperIo.d.ts +1 -3
  574. package/lib/typescript/src/games/paper-io/PaperIoConstants.d.ts +60 -40
  575. package/lib/typescript/src/games/paper-io/PaperIoGame.d.ts +49 -0
  576. package/lib/typescript/src/games/paper-io/PaperIoMeshes.d.ts +13 -0
  577. package/lib/typescript/src/games/paper-io/PaperIoRules.d.ts +71 -0
  578. package/lib/typescript/src/games/paper-io/PaperIoScene.d.ts +39 -0
  579. package/lib/typescript/src/games/penguin-run/PenguinMeshes.d.ts +9 -0
  580. package/lib/typescript/src/games/penguin-run/PenguinModel.d.ts +42 -0
  581. package/lib/typescript/src/games/penguin-run/PenguinRun.d.ts +1 -0
  582. package/lib/typescript/src/games/penguin-run/PenguinRunConstants.d.ts +58 -0
  583. package/lib/typescript/src/games/penguin-run/PenguinRunGame.d.ts +64 -0
  584. package/lib/typescript/src/games/penguin-run/PenguinRunScene.d.ts +65 -0
  585. package/lib/typescript/src/games/perfect-circle/PerfectCircle.d.ts +1 -3
  586. package/lib/typescript/src/games/perfect-circle/PerfectCircleConstants.d.ts +23 -45
  587. package/lib/typescript/src/games/perfect-circle/PerfectCircleGame.d.ts +40 -0
  588. package/lib/typescript/src/games/perfect-circle/PerfectCircleRules.d.ts +55 -0
  589. package/lib/typescript/src/games/perfect-circle/PerfectCircleScene.d.ts +32 -0
  590. package/lib/typescript/src/games/pipe-connect/PipeConnect.d.ts +1 -3
  591. package/lib/typescript/src/games/pipe-connect/PipeConnectConstants.d.ts +36 -32
  592. package/lib/typescript/src/games/pipe-connect/PipeConnectGame.d.ts +40 -0
  593. package/lib/typescript/src/games/pipe-connect/PipeConnectRules.d.ts +16 -0
  594. package/lib/typescript/src/games/pipe-connect/PipeConnectScene.d.ts +28 -0
  595. package/lib/typescript/src/games/play-with-tua/PlayWithTua.d.ts +2 -0
  596. package/lib/typescript/src/games/play-with-tua/PlayWithTuaConstants.d.ts +64 -0
  597. package/lib/typescript/src/games/play-with-tua/PlayWithTuaGame.d.ts +34 -0
  598. package/lib/typescript/src/games/play-with-tua/PlayWithTuaModel.d.ts +9 -0
  599. package/lib/typescript/src/games/play-with-tua/PlayWithTuaScene.d.ts +13 -0
  600. package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts +1 -4
  601. package/lib/typescript/src/games/popit-fidget/PopitFidgetConstants.d.ts +25 -36
  602. package/lib/typescript/src/games/popit-fidget/PopitFidgetGame.d.ts +37 -0
  603. package/lib/typescript/src/games/popit-fidget/PopitFidgetScene.d.ts +19 -0
  604. package/lib/typescript/src/games/reversi/Reversi.d.ts +1 -3
  605. package/lib/typescript/src/games/reversi/ReversiConstants.d.ts +31 -62
  606. package/lib/typescript/src/games/reversi/ReversiGame.d.ts +54 -0
  607. package/lib/typescript/src/games/reversi/ReversiRules.d.ts +22 -0
  608. package/lib/typescript/src/games/reversi/ReversiScene.d.ts +27 -0
  609. package/lib/typescript/src/games/search-grid/SearchGrid.d.ts +20 -0
  610. package/lib/typescript/src/games/search-grid/SearchGridConstants.d.ts +60 -0
  611. package/lib/typescript/src/games/search-grid/SearchGridGame.d.ts +52 -0
  612. package/lib/typescript/src/games/search-grid/SearchGridScene.d.ts +43 -0
  613. package/lib/typescript/src/games/shared/BackdropCard.d.ts +2 -0
  614. package/lib/typescript/src/games/shared/EngineBackdrop.d.ts +19 -0
  615. package/lib/typescript/src/games/shared/EngineBlasts.d.ts +26 -0
  616. package/lib/typescript/src/games/shared/EngineBlocks.d.ts +19 -0
  617. package/lib/typescript/src/games/shared/EngineControlText.d.ts +2 -0
  618. package/lib/typescript/src/games/shared/EngineDice.d.ts +24 -0
  619. package/lib/typescript/src/games/shared/EngineFootprint.d.ts +17 -0
  620. package/lib/typescript/src/games/shared/EngineFruits.d.ts +27 -0
  621. package/lib/typescript/src/games/shared/EngineGameLoader.d.ts +4 -0
  622. package/lib/typescript/src/games/shared/EngineGameScreen.d.ts +48 -0
  623. package/lib/typescript/src/games/shared/EngineGameWidth.d.ts +3 -0
  624. package/lib/typescript/src/games/shared/EngineGameWidth.web.d.ts +3 -0
  625. package/lib/typescript/src/games/shared/EngineGlyphs.d.ts +15 -0
  626. package/lib/typescript/src/games/shared/EngineHud.d.ts +138 -0
  627. package/lib/typescript/src/games/shared/EngineLoading.d.ts +77 -0
  628. package/lib/typescript/src/games/shared/EngineMeadow.d.ts +90 -0
  629. package/lib/typescript/src/games/shared/EngineMeshCache.d.ts +3 -0
  630. package/lib/typescript/src/games/shared/EngineMeshes.d.ts +3 -0
  631. package/lib/typescript/src/games/shared/EngineRacingChase.d.ts +11 -0
  632. package/lib/typescript/src/games/shared/EngineRacingHandling.d.ts +15 -0
  633. package/lib/typescript/src/games/shared/EngineReadyContext.d.ts +2 -0
  634. package/lib/typescript/src/games/shared/EngineTilt.d.ts +19 -0
  635. package/lib/typescript/src/games/shared/EngineTouchSurface.d.ts +20 -0
  636. package/lib/typescript/src/games/shared/EngineUtils.d.ts +18 -0
  637. package/lib/typescript/src/games/shared/GameActivity.d.ts +3 -0
  638. package/lib/typescript/src/games/shared/GameLoading.d.ts +14 -0
  639. package/lib/typescript/src/games/shared/GameLoadingTransition.d.ts +9 -0
  640. package/lib/typescript/src/games/shared/ProceduralCacheVersion.d.ts +1 -0
  641. package/lib/typescript/src/games/shared/useEngineGame.d.ts +69 -0
  642. package/lib/typescript/src/games/shared/useGameResource.d.ts +2 -0
  643. package/lib/typescript/src/games/shared/useLiveState.d.ts +4 -0
  644. package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts +1 -3
  645. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersConstants.d.ts +32 -40
  646. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersGame.d.ts +48 -0
  647. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersRules.d.ts +22 -0
  648. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersScene.d.ts +30 -0
  649. package/lib/typescript/src/games/snake-3d/Snake3D.d.ts +1 -3
  650. package/lib/typescript/src/games/snake-3d/Snake3DConstants.d.ts +31 -68
  651. package/lib/typescript/src/games/snake-3d/Snake3DGame.d.ts +42 -0
  652. package/lib/typescript/src/games/snake-3d/Snake3DMotion.d.ts +3 -0
  653. package/lib/typescript/src/games/snake-3d/Snake3DRules.d.ts +42 -0
  654. package/lib/typescript/src/games/snake-3d/Snake3DScene.d.ts +35 -0
  655. package/lib/typescript/src/games/snakes-and-ladders/SnakesAndLadders.d.ts +1 -3
  656. package/lib/typescript/src/games/snakes-and-ladders/SnakesAndLaddersConstants.d.ts +58 -50
  657. package/lib/typescript/src/games/snakes-and-ladders/SnakesAndLaddersGame.d.ts +45 -0
  658. package/lib/typescript/src/games/snakes-and-ladders/SnakesAndLaddersScene.d.ts +50 -0
  659. package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts +1 -3
  660. package/lib/typescript/src/games/space-fighter/SpaceFighterConstants.d.ts +33 -23
  661. package/lib/typescript/src/games/space-fighter/SpaceFighterGame.d.ts +58 -0
  662. package/lib/typescript/src/games/space-fighter/SpaceFighterScene.d.ts +51 -0
  663. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaire.d.ts +1 -3
  664. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireConstants.d.ts +52 -35
  665. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireGame.d.ts +67 -0
  666. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireRules.d.ts +39 -0
  667. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireScene.d.ts +60 -0
  668. package/lib/typescript/src/games/stack-tower/StackTower.d.ts +1 -3
  669. package/lib/typescript/src/games/stack-tower/StackTowerConstants.d.ts +31 -23
  670. package/lib/typescript/src/games/stack-tower/StackTowerGame.d.ts +58 -0
  671. package/lib/typescript/src/games/stack-tower/StackTowerScene.d.ts +27 -0
  672. package/lib/typescript/src/games/sudoku/Sudoku.d.ts +1 -3
  673. package/lib/typescript/src/games/sudoku/SudokuConstants.d.ts +50 -55
  674. package/lib/typescript/src/games/sudoku/SudokuGame.d.ts +56 -0
  675. package/lib/typescript/src/games/sudoku/SudokuRules.d.ts +23 -0
  676. package/lib/typescript/src/games/sudoku/SudokuScene.d.ts +44 -0
  677. package/lib/typescript/src/games/tangram/Tangram.d.ts +1 -3
  678. package/lib/typescript/src/games/tangram/TangramConstants.d.ts +33 -52
  679. package/lib/typescript/src/games/tangram/TangramGame.d.ts +68 -0
  680. package/lib/typescript/src/games/tangram/TangramRules.d.ts +61 -0
  681. package/lib/typescript/src/games/tangram/TangramScene.d.ts +42 -0
  682. package/lib/typescript/src/games/tank-1990/Tank1990.d.ts +1 -3
  683. package/lib/typescript/src/games/tank-1990/Tank1990Constants.d.ts +44 -127
  684. package/lib/typescript/src/games/tank-1990/Tank1990Game.d.ts +50 -0
  685. package/lib/typescript/src/games/tank-1990/Tank1990Rules.d.ts +67 -0
  686. package/lib/typescript/src/games/tank-1990/Tank1990Scene.d.ts +38 -0
  687. package/lib/typescript/src/games/tic-tac-toe/TicTacToe.d.ts +1 -3
  688. package/lib/typescript/src/games/tic-tac-toe/TicTacToeConstants.d.ts +35 -72
  689. package/lib/typescript/src/games/tic-tac-toe/TicTacToeGame.d.ts +54 -0
  690. package/lib/typescript/src/games/tic-tac-toe/TicTacToeRules.d.ts +10 -0
  691. package/lib/typescript/src/games/tic-tac-toe/TicTacToeScene.d.ts +26 -0
  692. package/lib/typescript/src/games/tile-home/TileHome.d.ts +1 -3
  693. package/lib/typescript/src/games/tile-home/TileHomeConstants.d.ts +72 -70
  694. package/lib/typescript/src/games/tile-home/TileHomeGame.d.ts +72 -0
  695. package/lib/typescript/src/games/tile-home/TileHomeScene.d.ts +28 -0
  696. package/lib/typescript/src/games/treasure-hunt/TreasureHunt.d.ts +3 -0
  697. package/lib/typescript/src/games/treasure-hunt/TreasureHuntConstants.d.ts +144 -0
  698. package/lib/typescript/src/games/treasure-hunt/TreasureHuntControls.d.ts +75 -0
  699. package/lib/typescript/src/games/treasure-hunt/TreasureHuntGame.d.ts +41 -0
  700. package/lib/typescript/src/games/treasure-hunt/TreasureHuntMeshes.d.ts +26 -0
  701. package/lib/typescript/src/games/treasure-hunt/TreasureHuntModel.d.ts +57 -0
  702. package/lib/typescript/src/games/treasure-hunt/TreasureHuntRules.d.ts +198 -0
  703. package/lib/typescript/src/games/treasure-hunt/TreasureHuntScene.d.ts +40 -0
  704. package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts +1 -3
  705. package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts +35 -45
  706. package/lib/typescript/src/games/whack-a-mole/WhackAMoleGame.d.ts +51 -0
  707. package/lib/typescript/src/games/whack-a-mole/WhackAMoleScene.d.ts +31 -0
  708. package/lib/typescript/src/games/word-search/WordSearch.d.ts +1 -3
  709. package/lib/typescript/src/games/word-search/WordSearchWords.d.ts +1 -0
  710. package/lib/typescript/src/helpers/GamePatternData.d.ts +46 -0
  711. package/lib/typescript/src/helpers/GameSettingsModal.d.ts +1 -1
  712. package/lib/typescript/src/helpers/GameTheme.d.ts +18 -0
  713. package/lib/typescript/src/helpers/IconPaths.d.ts +4 -0
  714. package/lib/typescript/src/helpers/index.d.ts +1 -19
  715. package/lib/typescript/src/index.d.ts +3 -0
  716. package/lib/typescript/src/services/GameAssetLoader.d.ts +32 -0
  717. package/lib/typescript/src/services/GameAssets.d.ts +11 -0
  718. package/lib/typescript/src/services/GameLoaders.d.ts +18 -0
  719. package/lib/typescript/src/services/GamesConstants.d.ts +11 -0
  720. package/lib/typescript/src/services/GamesMetadata.d.ts +2 -0
  721. package/lib/typescript/src/services/HapticsService.d.ts +1 -1
  722. package/lib/typescript/src/services/SfxSources.d.ts +79 -0
  723. package/lib/typescript/src/services/SoundsService.d.ts +487 -1566
  724. package/lib/typescript/src/services/ThemeService.d.ts +117 -0
  725. package/lib/typescript/src/services/UtilsService.d.ts +20 -2
  726. package/lib/typescript/src/services/index.d.ts +3 -0
  727. package/lib/web/assets/005ea2045b17-explorer.glb +0 -0
  728. package/lib/web/assets/01e2f0a0bbf6-hurt.wav +0 -0
  729. package/lib/web/assets/01fc0ecf658c-explorer-atlas.png +0 -0
  730. package/lib/web/assets/029329b2c7c0-asphalt.png +0 -0
  731. package/lib/web/assets/0376bda32be3-robot.wav +0 -0
  732. package/lib/web/assets/0719fb0bb38e-soft_glow.png +0 -0
  733. package/lib/web/assets/0b21278bffba-boing.wav +0 -0
  734. package/lib/web/assets/1333c9d1273c-flip_disc.wav +0 -0
  735. package/lib/web/assets/15785f62ee5f-time_up.wav +0 -0
  736. package/lib/web/assets/177f00502e08-bonus.wav +0 -0
  737. package/lib/web/assets/19e47dcfda1f-pling.wav +0 -0
  738. package/lib/web/assets/1a677e0f7f6c-laugh.wav +0 -0
  739. package/lib/web/assets/1ad2914478b1-eat.wav +0 -0
  740. package/lib/web/assets/1b0d703ddd1a-dance.wav +0 -0
  741. package/lib/web/assets/1e4330fddd74-chime.wav +0 -0
  742. package/lib/web/assets/2432a97b0af1-cannon.wav +0 -0
  743. package/lib/web/assets/2574370d6aa0-blocked.wav +0 -0
  744. package/lib/web/assets/2699065037ad-select.wav +0 -0
  745. package/lib/web/assets/28d30f53ad73-ladder.wav +0 -0
  746. package/lib/web/assets/2c1ec05270b2-point.wav +0 -0
  747. package/lib/web/assets/2e1dd99a0213-tick.wav +0 -0
  748. package/lib/web/assets/3084575cecdb-card_flip.wav +0 -0
  749. package/lib/web/assets/308bc31b6af5-engine.wav +0 -0
  750. package/lib/web/assets/336d63b739b5-combo.wav +0 -0
  751. package/lib/web/assets/3a369e2596e4-clash.wav +0 -0
  752. package/lib/web/assets/3a816e20212f-capture.wav +0 -0
  753. package/lib/web/assets/40240217810a-nitro.wav +0 -0
  754. package/lib/web/assets/46edaa54d1ea-crunch.wav +0 -0
  755. package/lib/web/assets/501994226995-coin.wav +0 -0
  756. package/lib/web/assets/5525d7f6a4b8-rotate.wav +0 -0
  757. package/lib/web/assets/5e816e1f0929-dice_roll.wav +0 -0
  758. package/lib/web/assets/60e2dec3cf41-deselect.wav +0 -0
  759. package/lib/web/assets/6ab86ea29e5c-six.wav +0 -0
  760. package/lib/web/assets/6da3b101926d-merge.wav +0 -0
  761. package/lib/web/assets/6e686dea513c-bark.jpg +0 -0
  762. package/lib/web/assets/6ff9a6a13714-limestone.jpg +0 -0
  763. package/lib/web/assets/735c4a1cd22e-invalid.wav +0 -0
  764. package/lib/web/assets/73f75c35ff5d-snake.wav +0 -0
  765. package/lib/web/assets/7506e3efe264-catch.wav +0 -0
  766. package/lib/web/assets/76493a2ada2d-ad_bolt.png +0 -0
  767. package/lib/web/assets/793abe620201-card_place.wav +0 -0
  768. package/lib/web/assets/7da09c57f52d-facade.png +0 -0
  769. package/lib/web/assets/7e1a902176f6-pine.png +0 -0
  770. package/lib/web/assets/7eb943b85c21-play-with-tua.glb +0 -0
  771. package/lib/web/assets/837d43c06dba-ad_bubbles.png +0 -0
  772. package/lib/web/assets/84f1a7dfa368-game_over.wav +0 -0
  773. package/lib/web/assets/850e26ce3b0a-flap.wav +0 -0
  774. package/lib/web/assets/854b31683cb2-draw.wav +0 -0
  775. package/lib/web/assets/8616150393b7-error.wav +0 -0
  776. package/lib/web/assets/87cc6d503ec6-river.jpg +0 -0
  777. package/lib/web/assets/88755845922c-hop.wav +0 -0
  778. package/lib/web/assets/8ec8f469492d-chomp_alt.wav +0 -0
  779. package/lib/web/assets/8f17f89b138c-pew.wav +0 -0
  780. package/lib/web/assets/9210a24472d1-place.wav +0 -0
  781. package/lib/web/assets/930d833ebf89-splash.wav +0 -0
  782. package/lib/web/assets/970f7c59265d-swoosh.wav +0 -0
  783. package/lib/web/assets/9900b8d1b6ad-flag.wav +0 -0
  784. package/lib/web/assets/9ab04403898b-clang.wav +0 -0
  785. package/lib/web/assets/9d8b97a10d45-drop.wav +0 -0
  786. package/lib/web/assets/9d9c02ddc7ed-boom.wav +0 -0
  787. package/lib/web/assets/9e1b5114d56d-pop_soft.wav +0 -0
  788. package/lib/web/assets/a01f22d6dbb3-thud.wav +0 -0
  789. package/lib/web/assets/a44a1cf1a1a8-bump.wav +0 -0
  790. package/lib/web/assets/a76940a48c68-hit.wav +0 -0
  791. package/lib/web/assets/a98ddb724460-leaves.png +0 -0
  792. package/lib/web/assets/aa0960e8bee6-footstep_run.wav +0 -0
  793. package/lib/web/assets/aa570c9d3e15-star.wav +0 -0
  794. package/lib/web/assets/aacb999f3c49-tock.wav +0 -0
  795. package/lib/web/assets/aae0c16c5e89-reveal.wav +0 -0
  796. package/lib/web/assets/ab37cd128509-click.wav +0 -0
  797. package/lib/web/assets/b0bc66f49005-warning.wav +0 -0
  798. package/lib/web/assets/b1edd756ac43-zap.wav +0 -0
  799. package/lib/web/assets/b3894545cf71-slice.wav +0 -0
  800. package/lib/web/assets/b3c6225d055a-meadow.jpg +0 -0
  801. package/lib/web/assets/b60ca65cdfcb-gate.wav +0 -0
  802. package/lib/web/assets/b8900bb2c5c7-win.wav +0 -0
  803. package/lib/web/assets/baff6feda846-lose.wav +0 -0
  804. package/lib/web/assets/bed31305d60d-ad_chevrons.png +0 -0
  805. package/lib/web/assets/c26f4a624e7d-shuffle.wav +0 -0
  806. package/lib/web/assets/c3a9edfad195-die.wav +0 -0
  807. package/lib/web/assets/c4aa9d773f2a-footstep_walk.wav +0 -0
  808. package/lib/web/assets/c5ab3ff0003f-crash.wav +0 -0
  809. package/lib/web/assets/c5eb07deddd4-start.wav +0 -0
  810. package/lib/web/assets/c6c58d9ae452-pop.wav +0 -0
  811. package/lib/web/assets/cea48c3cd9c7-balloon_pop.wav +0 -0
  812. package/lib/web/assets/d15591767778-tap.wav +0 -0
  813. package/lib/web/assets/d1781a52234f-slide.wav +0 -0
  814. package/lib/web/assets/d3bf2d9f793b-snap.wav +0 -0
  815. package/lib/web/assets/d8f59ebd3537-jump.wav +0 -0
  816. package/lib/web/assets/dafea2f28854-power_up.wav +0 -0
  817. package/lib/web/assets/e2e7f5ae2d1b-whoosh.wav +0 -0
  818. package/lib/web/assets/e2f90a23e1bd-chomp.wav +0 -0
  819. package/lib/web/assets/e454e56df89a-clack.wav +0 -0
  820. package/lib/web/assets/e8cbc2b88bc4-Inter-SemiBold.ttf +0 -0
  821. package/lib/web/assets/ed6496b891fc-land.wav +0 -0
  822. package/lib/web/assets/f21920200a81-thunk.wav +0 -0
  823. package/lib/web/assets/f753b43be89d-whack.wav +0 -0
  824. package/lib/web/assets/f798c4b5cf4d-miss.wav +0 -0
  825. package/lib/web/assets/fbe299716916-grass.png +0 -0
  826. package/lib/web/chunk-52ez2s9z.js +15 -0
  827. package/lib/web/chunk-8675t224.js +1 -0
  828. package/lib/web/index.js +2 -0
  829. package/lib/web/package.json +1 -0
  830. package/lib/web/services.js +2 -0
  831. package/package.json +94 -73
  832. package/src/assets/fonts/Inter-SemiBold.ttf +0 -0
  833. package/src/assets/models/explorer/explorer.glb +0 -0
  834. package/src/assets/models/explorer/params.json +51 -0
  835. package/src/assets/models/explorer/source.json +222 -0
  836. package/src/assets/models/play-with-tua/play-with-tua.glb +0 -0
  837. package/src/assets/models/play-with-tua/sources.json +141 -0
  838. package/src/assets/sfx/balloon_pop.wav +0 -0
  839. package/src/assets/sfx/blocked.wav +0 -0
  840. package/src/assets/sfx/boing.wav +0 -0
  841. package/src/assets/sfx/bonus.wav +0 -0
  842. package/src/assets/sfx/boom.wav +0 -0
  843. package/src/assets/sfx/bump.wav +0 -0
  844. package/src/assets/sfx/cannon.wav +0 -0
  845. package/src/assets/sfx/capture.wav +0 -0
  846. package/src/assets/sfx/card_flip.wav +0 -0
  847. package/src/assets/sfx/card_place.wav +0 -0
  848. package/src/assets/sfx/catch.wav +0 -0
  849. package/src/assets/sfx/chime.wav +0 -0
  850. package/src/assets/sfx/chomp.wav +0 -0
  851. package/src/assets/sfx/chomp_alt.wav +0 -0
  852. package/src/assets/sfx/clack.wav +0 -0
  853. package/src/assets/sfx/clang.wav +0 -0
  854. package/src/assets/sfx/clash.wav +0 -0
  855. package/src/assets/sfx/click.wav +0 -0
  856. package/src/assets/sfx/coin.wav +0 -0
  857. package/src/assets/sfx/combo.wav +0 -0
  858. package/src/assets/sfx/crash.wav +0 -0
  859. package/src/assets/sfx/crunch.wav +0 -0
  860. package/src/assets/sfx/dance.wav +0 -0
  861. package/src/assets/sfx/deselect.wav +0 -0
  862. package/src/assets/sfx/dice_roll.wav +0 -0
  863. package/src/assets/sfx/die.wav +0 -0
  864. package/src/assets/sfx/draw.wav +0 -0
  865. package/src/assets/sfx/drop.wav +0 -0
  866. package/src/assets/sfx/eat.wav +0 -0
  867. package/src/assets/sfx/engine.wav +0 -0
  868. package/src/assets/sfx/error.wav +0 -0
  869. package/src/assets/sfx/flag.wav +0 -0
  870. package/src/assets/sfx/flap.wav +0 -0
  871. package/src/assets/sfx/flip_disc.wav +0 -0
  872. package/src/assets/sfx/footstep_run.wav +0 -0
  873. package/src/assets/sfx/footstep_walk.wav +0 -0
  874. package/src/assets/sfx/game_over.wav +0 -0
  875. package/src/assets/sfx/gate.wav +0 -0
  876. package/src/assets/sfx/hit.wav +0 -0
  877. package/src/assets/sfx/hop.wav +0 -0
  878. package/src/assets/sfx/hurt.wav +0 -0
  879. package/src/assets/sfx/invalid.wav +0 -0
  880. package/src/assets/sfx/jump.wav +0 -0
  881. package/src/assets/sfx/ladder.wav +0 -0
  882. package/src/assets/sfx/land.wav +0 -0
  883. package/src/assets/sfx/laugh.wav +0 -0
  884. package/src/assets/sfx/lose.wav +0 -0
  885. package/src/assets/sfx/merge.wav +0 -0
  886. package/src/assets/sfx/miss.wav +0 -0
  887. package/src/assets/sfx/nitro.wav +0 -0
  888. package/src/assets/sfx/pew.wav +0 -0
  889. package/src/assets/sfx/place.wav +0 -0
  890. package/src/assets/sfx/pling.wav +0 -0
  891. package/src/assets/sfx/point.wav +0 -0
  892. package/src/assets/sfx/pop.wav +0 -0
  893. package/src/assets/sfx/pop_soft.wav +0 -0
  894. package/src/assets/sfx/power_up.wav +0 -0
  895. package/src/assets/sfx/reveal.wav +0 -0
  896. package/src/assets/sfx/robot.wav +0 -0
  897. package/src/assets/sfx/rotate.wav +0 -0
  898. package/src/assets/sfx/run_steps.wav +0 -0
  899. package/src/assets/sfx/select.wav +0 -0
  900. package/src/assets/sfx/shuffle.wav +0 -0
  901. package/src/assets/sfx/six.wav +0 -0
  902. package/src/assets/sfx/slice.wav +0 -0
  903. package/src/assets/sfx/slide.wav +0 -0
  904. package/src/assets/sfx/snake.wav +0 -0
  905. package/src/assets/sfx/snap.wav +0 -0
  906. package/src/assets/sfx/splash.wav +0 -0
  907. package/src/assets/sfx/star.wav +0 -0
  908. package/src/assets/sfx/start.wav +0 -0
  909. package/src/assets/sfx/swoosh.wav +0 -0
  910. package/src/assets/sfx/tap.wav +0 -0
  911. package/src/assets/sfx/thud.wav +0 -0
  912. package/src/assets/sfx/thunk.wav +0 -0
  913. package/src/assets/sfx/tick.wav +0 -0
  914. package/src/assets/sfx/time_up.wav +0 -0
  915. package/src/assets/sfx/tock.wav +0 -0
  916. package/src/assets/sfx/walk_steps.wav +0 -0
  917. package/src/assets/sfx/warning.wav +0 -0
  918. package/src/assets/sfx/whack.wav +0 -0
  919. package/src/assets/sfx/whoosh.wav +0 -0
  920. package/src/assets/sfx/win.wav +0 -0
  921. package/src/assets/sfx/zap.wav +0 -0
  922. package/src/assets/textures/ad_bolt.png +0 -0
  923. package/src/assets/textures/ad_bubbles.png +0 -0
  924. package/src/assets/textures/ad_chevrons.png +0 -0
  925. package/src/assets/textures/asphalt.png +0 -0
  926. package/src/assets/textures/bark.jpg +0 -0
  927. package/src/assets/textures/explorer-atlas.png +0 -0
  928. package/src/assets/textures/facade.png +0 -0
  929. package/src/assets/textures/grass.png +0 -0
  930. package/src/assets/textures/leaves.png +0 -0
  931. package/src/assets/textures/limestone.jpg +0 -0
  932. package/src/assets/textures/meadow.jpg +0 -0
  933. package/src/assets/textures/nature-sources.json +87 -0
  934. package/src/assets/textures/pine.png +0 -0
  935. package/src/assets/textures/river.jpg +0 -0
  936. package/src/assets/textures/soft_glow.png +0 -0
  937. package/src/games/arrows/Arrows.tsx +69 -0
  938. package/src/games/arrows/ArrowsConstants.ts +107 -0
  939. package/src/games/arrows/ArrowsGame.ts +735 -0
  940. package/src/games/arrows/ArrowsScene.ts +395 -0
  941. package/src/games/balloon-blaster/BalloonBlaster.tsx +75 -0
  942. package/src/games/balloon-blaster/BalloonBlasterConstants.ts +79 -0
  943. package/src/games/balloon-blaster/BalloonBlasterGame.ts +287 -0
  944. package/src/games/balloon-blaster/BalloonBlasterPhysics.ts +95 -0
  945. package/src/games/balloon-blaster/BalloonBlasterScene.ts +225 -0
  946. package/src/games/bike-racing/BikeMeshes.ts +273 -0
  947. package/src/games/bike-racing/BikeRacing.tsx +211 -0
  948. package/src/games/bike-racing/BikeRacingConstants.ts +103 -0
  949. package/src/games/bike-racing/BikeRacingGame.ts +557 -0
  950. package/src/games/bike-racing/BikeRacingScene.ts +119 -0
  951. package/src/games/block-blast/BlockBlast.tsx +73 -0
  952. package/src/games/block-blast/BlockBlastConstants.ts +179 -0
  953. package/src/games/block-blast/BlockBlastGame.ts +471 -0
  954. package/src/games/block-blast/BlockBlastScene.ts +156 -0
  955. package/src/games/block-breaker/BlockBreaker.tsx +79 -0
  956. package/src/games/block-breaker/BlockBreakerConstants.ts +139 -0
  957. package/src/games/block-breaker/BlockBreakerGame.ts +459 -0
  958. package/src/games/block-breaker/BlockBreakerScene.ts +257 -0
  959. package/src/games/bluk/Bluk.tsx +82 -0
  960. package/src/games/bluk/BlukConstants.ts +121 -0
  961. package/src/games/bluk/BlukGame.ts +323 -0
  962. package/src/games/bluk/BlukRules.ts +154 -0
  963. package/src/games/bluk/BlukScene.ts +514 -0
  964. package/src/games/bubble-shooter/BubbleShooter.tsx +76 -0
  965. package/src/games/bubble-shooter/BubbleShooterConstants.ts +103 -0
  966. package/src/games/bubble-shooter/BubbleShooterGame.ts +459 -0
  967. package/src/games/bubble-shooter/BubbleShooterScene.ts +158 -0
  968. package/src/games/candy-crush/CandyCrush.tsx +77 -0
  969. package/src/games/candy-crush/CandyCrushConstants.ts +94 -0
  970. package/src/games/candy-crush/CandyCrushGame.ts +477 -0
  971. package/src/games/candy-crush/CandyCrushScene.ts +209 -0
  972. package/src/games/car-racing/CarMeshes.ts +440 -0
  973. package/src/games/car-racing/CarRacing.tsx +211 -0
  974. package/src/games/car-racing/CarRacingConstants.ts +167 -0
  975. package/src/games/car-racing/CarRacingFacade.ts +40 -0
  976. package/src/games/car-racing/CarRacingGame.ts +539 -0
  977. package/src/games/car-racing/CarRacingScene.ts +1026 -0
  978. package/src/games/car-racing/CarRacingScenery.ts +265 -0
  979. package/src/games/chameleon-run/ChameleonRun.tsx +96 -0
  980. package/src/games/chameleon-run/ChameleonRunBackdrop.ts +186 -0
  981. package/src/games/chameleon-run/ChameleonRunConstants.ts +47 -0
  982. package/src/games/chameleon-run/ChameleonRunGame.ts +309 -0
  983. package/src/games/chameleon-run/ChameleonRunMeshes.ts +305 -0
  984. package/src/games/chameleon-run/ChameleonRunRules.ts +252 -0
  985. package/src/games/chameleon-run/ChameleonRunScene.ts +310 -0
  986. package/src/games/checkers/Checkers.tsx +83 -0
  987. package/src/games/checkers/CheckersAI.ts +255 -0
  988. package/src/games/checkers/CheckersConstants.ts +68 -0
  989. package/src/games/checkers/CheckersGame.ts +322 -0
  990. package/src/games/checkers/CheckersRules.ts +167 -0
  991. package/src/games/checkers/CheckersScene.ts +308 -0
  992. package/src/games/color-switch/ColorSwitch.tsx +75 -0
  993. package/src/games/color-switch/ColorSwitchConstants.ts +61 -0
  994. package/src/games/color-switch/ColorSwitchGame.ts +329 -0
  995. package/src/games/color-switch/ColorSwitchScene.ts +220 -0
  996. package/src/games/colors-sort/ColorsSort.tsx +82 -0
  997. package/src/games/colors-sort/ColorsSortConstants.ts +119 -0
  998. package/src/games/colors-sort/ColorsSortGame.ts +246 -0
  999. package/src/games/colors-sort/ColorsSortScene.ts +315 -0
  1000. package/src/games/connect-em-all/ConnectEmAll.tsx +70 -0
  1001. package/src/games/connect-em-all/ConnectEmAllConstants.ts +77 -0
  1002. package/src/games/connect-em-all/ConnectEmAllGame.ts +401 -0
  1003. package/src/games/connect-em-all/ConnectEmAllScene.ts +235 -0
  1004. package/src/games/crossy-road/CrossyRoad.tsx +74 -0
  1005. package/src/games/crossy-road/CrossyRoadCamera.ts +59 -0
  1006. package/src/games/crossy-road/CrossyRoadConstants.ts +132 -0
  1007. package/src/games/crossy-road/CrossyRoadGame.ts +293 -0
  1008. package/src/games/crossy-road/CrossyRoadMeshes.ts +195 -0
  1009. package/src/games/crossy-road/CrossyRoadPerson.ts +198 -0
  1010. package/src/games/crossy-road/CrossyRoadRules.ts +99 -0
  1011. package/src/games/crossy-road/CrossyRoadScene.ts +355 -0
  1012. package/src/games/dino-jump/DinoJump.tsx +77 -0
  1013. package/src/games/dino-jump/DinoJumpConstants.ts +80 -0
  1014. package/src/games/dino-jump/DinoJumpGame.ts +344 -0
  1015. package/src/games/dino-jump/DinoJumpScene.ts +686 -0
  1016. package/src/games/dots-and-boxes/DotsAndBoxes.tsx +83 -0
  1017. package/src/games/dots-and-boxes/DotsAndBoxesConstants.ts +77 -0
  1018. package/src/games/dots-and-boxes/DotsAndBoxesGame.ts +271 -0
  1019. package/src/games/dots-and-boxes/DotsAndBoxesScene.ts +249 -0
  1020. package/src/games/falling-sticks/FallingSticks.tsx +72 -0
  1021. package/src/games/falling-sticks/FallingSticksConstants.ts +62 -0
  1022. package/src/games/falling-sticks/FallingSticksGame.ts +220 -0
  1023. package/src/games/falling-sticks/FallingSticksRules.ts +145 -0
  1024. package/src/games/falling-sticks/FallingSticksScene.ts +245 -0
  1025. package/src/games/find-different-number/FindDifferentNumber.tsx +74 -0
  1026. package/src/games/find-different-number/FindDifferentNumberConstants.ts +74 -0
  1027. package/src/games/find-different-number/FindDifferentNumberGame.ts +174 -0
  1028. package/src/games/find-different-number/FindDifferentNumberRules.ts +43 -0
  1029. package/src/games/find-different-number/FindDifferentNumberScene.ts +193 -0
  1030. package/src/games/flappy-bird/FlappyBird.tsx +73 -0
  1031. package/src/games/flappy-bird/FlappyBirdConstants.ts +95 -0
  1032. package/src/games/flappy-bird/FlappyBirdGame.ts +375 -0
  1033. package/src/games/flappy-bird/FlappyBirdScene.ts +630 -0
  1034. package/src/games/fruit-merger/FruitMerger.tsx +73 -0
  1035. package/src/games/fruit-merger/FruitMergerConstants.ts +102 -0
  1036. package/src/games/fruit-merger/FruitMergerGame.ts +285 -0
  1037. package/src/games/fruit-merger/FruitMergerRules.ts +286 -0
  1038. package/src/games/fruit-merger/FruitMergerScene.ts +498 -0
  1039. package/src/games/fruit-ninja/FruitNinja.tsx +129 -0
  1040. package/src/games/fruit-ninja/FruitNinjaConstants.ts +107 -0
  1041. package/src/games/fruit-ninja/FruitNinjaGame.ts +391 -0
  1042. package/src/games/fruit-ninja/FruitNinjaScene.ts +319 -0
  1043. package/src/games/fruit-ninja/FruitNinjaWorld.ts +17 -0
  1044. package/src/games/game-2048/Game2048.tsx +84 -0
  1045. package/src/games/game-2048/Game2048Constants.ts +68 -0
  1046. package/src/games/game-2048/Game2048Game.ts +181 -0
  1047. package/src/games/game-2048/Game2048Rules.ts +101 -0
  1048. package/src/games/game-2048/Game2048Scene.ts +206 -0
  1049. package/src/games/knife-hit/KnifeHit.tsx +78 -0
  1050. package/src/games/knife-hit/KnifeHitConstants.ts +89 -0
  1051. package/src/games/knife-hit/KnifeHitGame.ts +264 -0
  1052. package/src/games/knife-hit/KnifeHitScene.ts +360 -0
  1053. package/src/games/ludo-king/LudoKing.tsx +86 -0
  1054. package/src/games/ludo-king/LudoKingConstants.ts +212 -0
  1055. package/src/games/ludo-king/LudoKingGame.ts +326 -0
  1056. package/src/games/ludo-king/LudoKingRules.ts +143 -0
  1057. package/src/games/ludo-king/LudoKingScene.ts +397 -0
  1058. package/src/games/maze-runner/MazeRunner.tsx +88 -0
  1059. package/src/games/maze-runner/MazeRunnerConstants.ts +65 -0
  1060. package/src/games/maze-runner/MazeRunnerGame.ts +176 -0
  1061. package/src/games/maze-runner/MazeRunnerRules.ts +161 -0
  1062. package/src/games/maze-runner/MazeRunnerScene.ts +245 -0
  1063. package/src/games/memory-match/MemoryMatch.tsx +77 -0
  1064. package/src/games/memory-match/MemoryMatchConstants.ts +105 -0
  1065. package/src/games/memory-match/MemoryMatchGame.ts +222 -0
  1066. package/src/games/memory-match/MemoryMatchRules.ts +38 -0
  1067. package/src/games/memory-match/MemoryMatchScene.ts +268 -0
  1068. package/src/games/mine-sweeper/MineSweeper.tsx +77 -0
  1069. package/src/games/mine-sweeper/MineSweeperConstants.ts +94 -0
  1070. package/src/games/mine-sweeper/MineSweeperGame.ts +234 -0
  1071. package/src/games/mine-sweeper/MineSweeperRules.ts +67 -0
  1072. package/src/games/mine-sweeper/MineSweeperScene.ts +262 -0
  1073. package/src/games/mob-control/MobControl.tsx +73 -0
  1074. package/src/games/mob-control/MobControlConstants.ts +106 -0
  1075. package/src/games/mob-control/MobControlGame.ts +176 -0
  1076. package/src/games/mob-control/MobControlMeshes.ts +85 -0
  1077. package/src/games/mob-control/MobControlRenderer.ts +108 -0
  1078. package/src/games/mob-control/MobControlRules.ts +522 -0
  1079. package/src/games/mob-control/MobControlScene.ts +399 -0
  1080. package/src/games/number-search/NumberSearch.tsx +18 -0
  1081. package/src/games/number-search/NumberSearchNumbers.ts +623 -0
  1082. package/src/games/nuts-and-bolts/NutsAndBolts.tsx +85 -0
  1083. package/src/games/nuts-and-bolts/NutsAndBoltsConstants.ts +75 -0
  1084. package/src/games/nuts-and-bolts/NutsAndBoltsGame.ts +298 -0
  1085. package/src/games/nuts-and-bolts/NutsAndBoltsRules.ts +474 -0
  1086. package/src/games/nuts-and-bolts/NutsAndBoltsScene.ts +498 -0
  1087. package/src/games/pac-man/PacMan.tsx +86 -0
  1088. package/src/games/pac-man/PacManConstants.ts +169 -0
  1089. package/src/games/pac-man/PacManGame.ts +406 -0
  1090. package/src/games/pac-man/PacManRules.ts +255 -0
  1091. package/src/games/pac-man/PacManScene.ts +387 -0
  1092. package/src/games/paper-io/PaperIo.tsx +91 -0
  1093. package/src/games/paper-io/PaperIoConstants.ts +86 -0
  1094. package/src/games/paper-io/PaperIoGame.ts +193 -0
  1095. package/src/games/paper-io/PaperIoMeshes.ts +233 -0
  1096. package/src/games/paper-io/PaperIoRules.ts +315 -0
  1097. package/src/games/paper-io/PaperIoScene.ts +310 -0
  1098. package/src/games/penguin-run/PenguinMeshes.ts +269 -0
  1099. package/src/games/penguin-run/PenguinModel.ts +712 -0
  1100. package/src/games/penguin-run/PenguinRun.tsx +77 -0
  1101. package/src/games/penguin-run/PenguinRunConstants.ts +69 -0
  1102. package/src/games/penguin-run/PenguinRunGame.ts +406 -0
  1103. package/src/games/penguin-run/PenguinRunScene.ts +949 -0
  1104. package/src/games/perfect-circle/PerfectCircle.tsx +74 -0
  1105. package/src/games/perfect-circle/PerfectCircleConstants.ts +52 -0
  1106. package/src/games/perfect-circle/PerfectCircleGame.ts +153 -0
  1107. package/src/games/perfect-circle/PerfectCircleRules.ts +111 -0
  1108. package/src/games/perfect-circle/PerfectCircleScene.ts +176 -0
  1109. package/src/games/pipe-connect/PipeConnect.tsx +69 -0
  1110. package/src/games/pipe-connect/PipeConnectConstants.ts +101 -0
  1111. package/src/games/pipe-connect/PipeConnectGame.ts +179 -0
  1112. package/src/games/pipe-connect/PipeConnectRules.ts +326 -0
  1113. package/src/games/pipe-connect/PipeConnectScene.ts +271 -0
  1114. package/src/games/play-with-tua/PlayWithTua.tsx +123 -0
  1115. package/src/games/play-with-tua/PlayWithTuaConstants.ts +70 -0
  1116. package/src/games/play-with-tua/PlayWithTuaGame.ts +167 -0
  1117. package/src/games/play-with-tua/PlayWithTuaModel.ts +42 -0
  1118. package/src/games/play-with-tua/PlayWithTuaScene.ts +36 -0
  1119. package/src/games/popit-fidget/PopitFidget.tsx +72 -0
  1120. package/src/games/popit-fidget/PopitFidgetConstants.ts +71 -0
  1121. package/src/games/popit-fidget/PopitFidgetGame.ts +148 -0
  1122. package/src/games/popit-fidget/PopitFidgetScene.ts +242 -0
  1123. package/src/games/reversi/Reversi.tsx +94 -0
  1124. package/src/games/reversi/ReversiConstants.ts +67 -0
  1125. package/src/games/reversi/ReversiGame.ts +266 -0
  1126. package/src/games/reversi/ReversiRules.ts +176 -0
  1127. package/src/games/reversi/ReversiScene.ts +240 -0
  1128. package/src/games/search-grid/SearchGrid.tsx +92 -0
  1129. package/src/games/search-grid/SearchGridConstants.ts +178 -0
  1130. package/src/games/search-grid/SearchGridGame.ts +209 -0
  1131. package/src/games/search-grid/SearchGridScene.ts +301 -0
  1132. package/src/games/shared/BackdropCard.tsx +54 -0
  1133. package/src/games/shared/EngineBackdrop.ts +300 -0
  1134. package/src/games/shared/EngineBlasts.ts +136 -0
  1135. package/src/games/shared/EngineBlocks.ts +91 -0
  1136. package/src/games/shared/EngineControlText.ts +17 -0
  1137. package/src/games/shared/EngineDice.ts +250 -0
  1138. package/src/games/shared/EngineFootprint.ts +35 -0
  1139. package/src/games/shared/EngineFruits.ts +1435 -0
  1140. package/src/games/shared/EngineGameLoader.tsx +88 -0
  1141. package/src/games/shared/EngineGameScreen.tsx +325 -0
  1142. package/src/games/shared/EngineGameWidth.ts +3 -0
  1143. package/src/games/shared/EngineGameWidth.web.ts +3 -0
  1144. package/src/games/shared/EngineGlyphs.ts +178 -0
  1145. package/src/games/shared/EngineHud.ts +815 -0
  1146. package/src/games/shared/EngineLoading.ts +477 -0
  1147. package/src/games/shared/EngineMeadow.ts +725 -0
  1148. package/src/games/shared/EngineMeshCache.ts +15 -0
  1149. package/src/games/shared/EngineMeshes.ts +10 -0
  1150. package/src/games/shared/EngineRacingChase.ts +21 -0
  1151. package/src/games/shared/EngineRacingHandling.ts +48 -0
  1152. package/src/games/shared/EngineReadyContext.ts +4 -0
  1153. package/src/games/shared/EngineTilt.ts +44 -0
  1154. package/src/games/shared/EngineTouchSurface.tsx +103 -0
  1155. package/src/games/shared/EngineUtils.ts +52 -0
  1156. package/src/games/shared/GameActivity.ts +13 -0
  1157. package/src/games/shared/GameLoading.tsx +202 -0
  1158. package/src/games/shared/GameLoadingTransition.tsx +61 -0
  1159. package/src/games/shared/ProceduralCacheVersion.ts +2 -0
  1160. package/src/games/shared/useEngineGame.ts +240 -0
  1161. package/src/games/shared/useGameResource.ts +21 -0
  1162. package/src/games/shared/useLiveState.ts +58 -0
  1163. package/src/games/sliding-numbers/SlidingNumbers.tsx +71 -0
  1164. package/src/games/sliding-numbers/SlidingNumbersConstants.ts +65 -0
  1165. package/src/games/sliding-numbers/SlidingNumbersGame.ts +192 -0
  1166. package/src/games/sliding-numbers/SlidingNumbersRules.ts +79 -0
  1167. package/src/games/sliding-numbers/SlidingNumbersScene.ts +193 -0
  1168. package/src/games/snake-3d/Snake3D.tsx +76 -0
  1169. package/src/games/snake-3d/Snake3DConstants.ts +61 -0
  1170. package/src/games/snake-3d/Snake3DGame.ts +192 -0
  1171. package/src/games/snake-3d/Snake3DMotion.ts +22 -0
  1172. package/src/games/snake-3d/Snake3DRules.ts +116 -0
  1173. package/src/games/snake-3d/Snake3DScene.ts +322 -0
  1174. package/src/games/snakes-and-ladders/SnakesAndLadders.tsx +87 -0
  1175. package/src/games/snakes-and-ladders/SnakesAndLaddersConstants.ts +136 -0
  1176. package/src/games/snakes-and-ladders/SnakesAndLaddersGame.ts +310 -0
  1177. package/src/games/snakes-and-ladders/SnakesAndLaddersScene.ts +515 -0
  1178. package/src/games/space-fighter/SpaceFighter.tsx +74 -0
  1179. package/src/games/space-fighter/SpaceFighterConstants.ts +86 -0
  1180. package/src/games/space-fighter/SpaceFighterGame.ts +292 -0
  1181. package/src/games/space-fighter/SpaceFighterScene.ts +550 -0
  1182. package/src/games/spider-solitaire/SpiderSolitaire.tsx +80 -0
  1183. package/src/games/spider-solitaire/SpiderSolitaireConstants.ts +107 -0
  1184. package/src/games/spider-solitaire/SpiderSolitaireGame.ts +387 -0
  1185. package/src/games/spider-solitaire/SpiderSolitaireRules.ts +123 -0
  1186. package/src/games/spider-solitaire/SpiderSolitaireScene.ts +352 -0
  1187. package/src/games/stack-tower/StackTower.tsx +76 -0
  1188. package/src/games/stack-tower/StackTowerConstants.ts +74 -0
  1189. package/src/games/stack-tower/StackTowerGame.ts +236 -0
  1190. package/src/games/stack-tower/StackTowerScene.ts +186 -0
  1191. package/src/games/sudoku/Sudoku.tsx +73 -0
  1192. package/src/games/sudoku/SudokuConstants.ts +127 -0
  1193. package/src/games/sudoku/SudokuGame.ts +250 -0
  1194. package/src/games/sudoku/SudokuRules.ts +125 -0
  1195. package/src/games/sudoku/SudokuScene.ts +304 -0
  1196. package/src/games/tangram/Tangram.tsx +79 -0
  1197. package/src/games/tangram/TangramConstants.ts +64 -0
  1198. package/src/games/tangram/TangramGame.ts +356 -0
  1199. package/src/games/tangram/TangramRules.ts +409 -0
  1200. package/src/games/tangram/TangramScene.ts +203 -0
  1201. package/src/games/tank-1990/Tank1990.tsx +78 -0
  1202. package/src/games/tank-1990/Tank1990Constants.ts +81 -0
  1203. package/src/games/tank-1990/Tank1990Game.ts +331 -0
  1204. package/src/games/tank-1990/Tank1990Rules.ts +390 -0
  1205. package/src/games/tank-1990/Tank1990Scene.ts +434 -0
  1206. package/src/games/tic-tac-toe/TicTacToe.tsx +98 -0
  1207. package/src/games/tic-tac-toe/TicTacToeConstants.ts +69 -0
  1208. package/src/games/tic-tac-toe/TicTacToeGame.ts +200 -0
  1209. package/src/games/tic-tac-toe/TicTacToeRules.ts +103 -0
  1210. package/src/games/tic-tac-toe/TicTacToeScene.ts +245 -0
  1211. package/src/games/tile-home/TileHome.tsx +92 -0
  1212. package/src/games/tile-home/TileHomeConstants.ts +139 -0
  1213. package/src/games/tile-home/TileHomeGame.ts +435 -0
  1214. package/src/games/tile-home/TileHomeScene.ts +154 -0
  1215. package/src/games/treasure-hunt/TreasureHunt.tsx +206 -0
  1216. package/src/games/treasure-hunt/TreasureHuntConstants.ts +266 -0
  1217. package/src/games/treasure-hunt/TreasureHuntControls.ts +280 -0
  1218. package/src/games/treasure-hunt/TreasureHuntGame.ts +402 -0
  1219. package/src/games/treasure-hunt/TreasureHuntMeshes.ts +422 -0
  1220. package/src/games/treasure-hunt/TreasureHuntModel.ts +506 -0
  1221. package/src/games/treasure-hunt/TreasureHuntRules.ts +1210 -0
  1222. package/src/games/treasure-hunt/TreasureHuntScene.ts +586 -0
  1223. package/src/games/whack-a-mole/WhackAMole.tsx +79 -0
  1224. package/src/games/whack-a-mole/WhackAMoleConstants.ts +94 -0
  1225. package/src/games/whack-a-mole/WhackAMoleGame.ts +233 -0
  1226. package/src/games/whack-a-mole/WhackAMoleScene.ts +349 -0
  1227. package/src/games/word-search/WordSearch.tsx +18 -0
  1228. package/src/games/word-search/WordSearchWords.ts +1642 -0
  1229. package/src/helpers/GamePatternData.ts +120 -0
  1230. package/src/helpers/GameSettingsModal.tsx +384 -0
  1231. package/src/helpers/GameTheme.tsx +37 -0
  1232. package/src/helpers/IconPaths.ts +6 -0
  1233. package/src/helpers/index.ts +2 -0
  1234. package/src/index.tsx +60 -0
  1235. package/src/services/GameAssetLoader.ts +111 -0
  1236. package/src/services/GameAssets.ts +149 -0
  1237. package/src/services/GameLoaders.ts +93 -0
  1238. package/src/services/GamesConstants.ts +193 -0
  1239. package/src/services/GamesMetadata.ts +711 -0
  1240. package/src/services/GamesService.ts +116 -0
  1241. package/src/services/HapticsService.ts +48 -0
  1242. package/src/services/ScoringService.ts +19 -0
  1243. package/src/services/SfxSources.ts +81 -0
  1244. package/src/services/SoundsService.ts +582 -0
  1245. package/src/services/ThemeService.ts +281 -0
  1246. package/src/services/UtilsService.ts +134 -0
  1247. package/src/services/index.ts +6 -0
  1248. package/lib/module/games/arrows/ArrowsService.js +0 -1
  1249. package/lib/module/games/arrows/ArrowsStore.js +0 -1
  1250. package/lib/module/games/arrows/components/ArrowsGrid.js +0 -1
  1251. package/lib/module/games/arrows/components/ScoreBoard.js +0 -1
  1252. package/lib/module/games/balloon-blaster/BalloonBlasterService.js +0 -1
  1253. package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +0 -1
  1254. package/lib/module/games/balloon-blaster/components/BalloonComponent.js +0 -1
  1255. package/lib/module/games/balloon-blaster/components/GameArea.js +0 -1
  1256. package/lib/module/games/balloon-blaster/components/GameBackground.js +0 -1
  1257. package/lib/module/games/balloon-blaster/components/ScoreBoard.js +0 -1
  1258. package/lib/module/games/bike-racing/BikeRacingService.js +0 -1
  1259. package/lib/module/games/bike-racing/BikeRacingStore.js +0 -1
  1260. package/lib/module/games/bike-racing/components/BikeComponent.js +0 -1
  1261. package/lib/module/games/bike-racing/components/GameBackground.js +0 -1
  1262. package/lib/module/games/bike-racing/components/ScoreBoard.js +0 -1
  1263. package/lib/module/games/block-blast/BlockBlastService.js +0 -1
  1264. package/lib/module/games/block-blast/BlockBlastStore.js +0 -1
  1265. package/lib/module/games/block-blast/components/BlockPieceComponent.js +0 -1
  1266. package/lib/module/games/block-blast/components/GameArea.js +0 -1
  1267. package/lib/module/games/block-blast/components/GridComponent.js +0 -1
  1268. package/lib/module/games/block-blast/components/ScoreBoard.js +0 -1
  1269. package/lib/module/games/block-breaker/BlockBreakerService.js +0 -1
  1270. package/lib/module/games/block-breaker/BlockBreakerStore.js +0 -1
  1271. package/lib/module/games/block-breaker/components/BlastAnimation.js +0 -1
  1272. package/lib/module/games/block-breaker/components/GameArea.js +0 -1
  1273. package/lib/module/games/block-breaker/components/ScoreBoard.js +0 -1
  1274. package/lib/module/games/bluk/BlukService.js +0 -1
  1275. package/lib/module/games/bluk/BlukStore.js +0 -1
  1276. package/lib/module/games/bluk/components/GameArea.js +0 -1
  1277. package/lib/module/games/bluk/components/GameBackground.js +0 -1
  1278. package/lib/module/games/bluk/components/ScoreBoard.js +0 -1
  1279. package/lib/module/games/bubble-shooter/BubbleShooterService.js +0 -1
  1280. package/lib/module/games/bubble-shooter/BubbleShooterStore.js +0 -1
  1281. package/lib/module/games/bubble-shooter/components/GameArea.js +0 -1
  1282. package/lib/module/games/bubble-shooter/components/ScoreBoard.js +0 -1
  1283. package/lib/module/games/candy-crush/CandyCrushService.js +0 -1
  1284. package/lib/module/games/candy-crush/CandyCrushStore.js +0 -1
  1285. package/lib/module/games/candy-crush/components/CandyItem.js +0 -1
  1286. package/lib/module/games/candy-crush/components/GameGrid.js +0 -1
  1287. package/lib/module/games/candy-crush/components/ScoreBoard.js +0 -1
  1288. package/lib/module/games/car-racing/CarRacingService.js +0 -1
  1289. package/lib/module/games/car-racing/CarRacingStore.js +0 -1
  1290. package/lib/module/games/car-racing/components/CarComponent.js +0 -1
  1291. package/lib/module/games/car-racing/components/GameBackground.js +0 -1
  1292. package/lib/module/games/car-racing/components/ScoreBoard.js +0 -1
  1293. package/lib/module/games/chameleon-run/ChameleonRunService.js +0 -1
  1294. package/lib/module/games/chameleon-run/ChameleonRunStore.js +0 -1
  1295. package/lib/module/games/chameleon-run/components/GameArea.js +0 -1
  1296. package/lib/module/games/chameleon-run/components/GameBackground.js +0 -1
  1297. package/lib/module/games/chameleon-run/components/ScoreBoard.js +0 -1
  1298. package/lib/module/games/checkers/CheckersService.js +0 -1
  1299. package/lib/module/games/checkers/CheckersStore.js +0 -1
  1300. package/lib/module/games/checkers/components/GameBoard.js +0 -1
  1301. package/lib/module/games/checkers/components/ScoreBoard.js +0 -1
  1302. package/lib/module/games/color-switch/ColorSwitchService.js +0 -1
  1303. package/lib/module/games/color-switch/ColorSwitchStore.js +0 -1
  1304. package/lib/module/games/color-switch/components/GameArea.js +0 -1
  1305. package/lib/module/games/color-switch/components/ScoreBoard.js +0 -1
  1306. package/lib/module/games/colors-sort/ColorsSortService.js +0 -1
  1307. package/lib/module/games/colors-sort/ColorsSortStore.js +0 -1
  1308. package/lib/module/games/colors-sort/components/ColorContainer.js +0 -1
  1309. package/lib/module/games/colors-sort/components/ScoreBoard.js +0 -1
  1310. package/lib/module/games/connect-em-all/ConnectEmAllService.js +0 -1
  1311. package/lib/module/games/connect-em-all/ConnectEmAllStore.js +0 -1
  1312. package/lib/module/games/connect-em-all/components/GameBoard.js +0 -1
  1313. package/lib/module/games/connect-em-all/components/ScoreBoard.js +0 -1
  1314. package/lib/module/games/crossy-road/CrossyRoadService.js +0 -1
  1315. package/lib/module/games/crossy-road/CrossyRoadStore.js +0 -1
  1316. package/lib/module/games/crossy-road/components/GameArea.js +0 -1
  1317. package/lib/module/games/crossy-road/components/ScoreBoard.js +0 -1
  1318. package/lib/module/games/dino-jump/DinoJumpService.js +0 -1
  1319. package/lib/module/games/dino-jump/DinoJumpStore.js +0 -1
  1320. package/lib/module/games/dino-jump/components/DinoSprite.js +0 -1
  1321. package/lib/module/games/dino-jump/components/GameArea.js +0 -1
  1322. package/lib/module/games/dino-jump/components/GameBackground.js +0 -1
  1323. package/lib/module/games/dino-jump/components/ObstacleSprite.js +0 -1
  1324. package/lib/module/games/dino-jump/components/ScoreBoard.js +0 -1
  1325. package/lib/module/games/dino-jump/components/StarSprite.js +0 -1
  1326. package/lib/module/games/dots-and-boxes/DotsAndBoxesService.js +0 -1
  1327. package/lib/module/games/dots-and-boxes/DotsAndBoxesStore.js +0 -1
  1328. package/lib/module/games/dots-and-boxes/components/GameBoard.js +0 -1
  1329. package/lib/module/games/dots-and-boxes/components/ScoreBoard.js +0 -1
  1330. package/lib/module/games/falling-sticks/FallingSticksService.js +0 -1
  1331. package/lib/module/games/falling-sticks/FallingSticksStore.js +0 -1
  1332. package/lib/module/games/falling-sticks/components/GameArea.js +0 -1
  1333. package/lib/module/games/falling-sticks/components/GameBackground.js +0 -1
  1334. package/lib/module/games/falling-sticks/components/ScoreBoard.js +0 -1
  1335. package/lib/module/games/find-different-number/FindDifferentNumberService.js +0 -1
  1336. package/lib/module/games/find-different-number/FindDifferentNumberStore.js +0 -1
  1337. package/lib/module/games/find-different-number/components/GameGrid.js +0 -1
  1338. package/lib/module/games/find-different-number/components/ScoreBoard.js +0 -1
  1339. package/lib/module/games/flappy-bird/FlappyBirdStore.js +0 -1
  1340. package/lib/module/games/flappy-bird/components/Bird.js +0 -1
  1341. package/lib/module/games/flappy-bird/components/GameArea.js +0 -1
  1342. package/lib/module/games/flappy-bird/components/GameBackground.js +0 -1
  1343. package/lib/module/games/flappy-bird/components/Pipes.js +0 -1
  1344. package/lib/module/games/flappy-bird/components/ScoreBoard.js +0 -1
  1345. package/lib/module/games/fruit-merger/FruitMergerService.js +0 -1
  1346. package/lib/module/games/fruit-merger/FruitMergerStore.js +0 -1
  1347. package/lib/module/games/fruit-merger/components/FruitItem.js +0 -1
  1348. package/lib/module/games/fruit-merger/components/GameArea.js +0 -1
  1349. package/lib/module/games/fruit-merger/components/ScoreBoard.js +0 -1
  1350. package/lib/module/games/fruit-ninja/FruitNinjaService.js +0 -1
  1351. package/lib/module/games/fruit-ninja/FruitNinjaStore.js +0 -1
  1352. package/lib/module/games/fruit-ninja/components/FruitComponent.js +0 -1
  1353. package/lib/module/games/fruit-ninja/components/GameArea.js +0 -1
  1354. package/lib/module/games/fruit-ninja/components/GameBackground.js +0 -1
  1355. package/lib/module/games/fruit-ninja/components/ScoreBoard.js +0 -1
  1356. package/lib/module/games/game-2048/Game2048Service.js +0 -1
  1357. package/lib/module/games/game-2048/Game2048Store.js +0 -1
  1358. package/lib/module/games/game-2048/components/GameGrid.js +0 -1
  1359. package/lib/module/games/game-2048/components/ScoreBoard.js +0 -1
  1360. package/lib/module/games/knife-hit/KnifeHitService.js +0 -1
  1361. package/lib/module/games/knife-hit/KnifeHitStore.js +0 -1
  1362. package/lib/module/games/knife-hit/components/GameArea.js +0 -1
  1363. package/lib/module/games/knife-hit/components/ScoreBoard.js +0 -1
  1364. package/lib/module/games/ludo-king/LudoKingService.js +0 -1
  1365. package/lib/module/games/ludo-king/LudoKingStore.js +0 -1
  1366. package/lib/module/games/ludo-king/components/Dice.js +0 -1
  1367. package/lib/module/games/ludo-king/components/GameBoard.js +0 -1
  1368. package/lib/module/games/ludo-king/components/ScoreBoard.js +0 -1
  1369. package/lib/module/games/maze-runner/MazeRunnerStore.js +0 -1
  1370. package/lib/module/games/maze-runner/components/EnhancedBallComponent.js +0 -1
  1371. package/lib/module/games/maze-runner/components/EnhancedGameArea.js +0 -1
  1372. package/lib/module/games/maze-runner/components/ScoreBoard.js +0 -1
  1373. package/lib/module/games/maze-runner/components/SkiaPipeComponent.js +0 -1
  1374. package/lib/module/games/maze-runner/components/WallComponent.js +0 -1
  1375. package/lib/module/games/memory-match/MemoryMatchService.js +0 -1
  1376. package/lib/module/games/memory-match/MemoryMatchStore.js +0 -1
  1377. package/lib/module/games/memory-match/components/Card.js +0 -1
  1378. package/lib/module/games/memory-match/components/GameBoard.js +0 -1
  1379. package/lib/module/games/memory-match/components/ScoreBoard.js +0 -1
  1380. package/lib/module/games/mine-sweeper/MineSweeperService.js +0 -1
  1381. package/lib/module/games/mine-sweeper/MineSweeperStore.js +0 -1
  1382. package/lib/module/games/mine-sweeper/components/GameArea.js +0 -1
  1383. package/lib/module/games/mine-sweeper/components/ScoreBoard.js +0 -1
  1384. package/lib/module/games/mob-control/MobControlService.js +0 -1
  1385. package/lib/module/games/mob-control/MobControlStore.js +0 -1
  1386. package/lib/module/games/mob-control/components/GameArea.js +0 -1
  1387. package/lib/module/games/mob-control/components/ScoreBoard.js +0 -1
  1388. package/lib/module/games/number-search/NumberSearchConstants.js +0 -1
  1389. package/lib/module/games/number-search/NumberSearchService.js +0 -1
  1390. package/lib/module/games/number-search/NumberSearchStore.js +0 -1
  1391. package/lib/module/games/number-search/components/GameBoard.js +0 -1
  1392. package/lib/module/games/number-search/components/NumberList.js +0 -1
  1393. package/lib/module/games/number-search/components/ScoreBoard.js +0 -1
  1394. package/lib/module/games/nuts-and-bolts/NutsAndBoltsService.js +0 -1
  1395. package/lib/module/games/nuts-and-bolts/NutsAndBoltsStore.js +0 -1
  1396. package/lib/module/games/nuts-and-bolts/components/GameBoard.js +0 -1
  1397. package/lib/module/games/nuts-and-bolts/components/ScoreBoard.js +0 -1
  1398. package/lib/module/games/pac-man/PacManService.js +0 -1
  1399. package/lib/module/games/pac-man/PacManStore.js +0 -1
  1400. package/lib/module/games/pac-man/components/GameCanvas.js +0 -1
  1401. package/lib/module/games/pac-man/components/ScoreBoard.js +0 -1
  1402. package/lib/module/games/paper-io/PaperIoService.js +0 -1
  1403. package/lib/module/games/paper-io/PaperIoStore.js +0 -1
  1404. package/lib/module/games/paper-io/components/GameArea.js +0 -1
  1405. package/lib/module/games/paper-io/components/ScoreBoard.js +0 -1
  1406. package/lib/module/games/perfect-circle/PerfectCircleService.js +0 -1
  1407. package/lib/module/games/perfect-circle/PerfectCircleStore.js +0 -1
  1408. package/lib/module/games/perfect-circle/components/DrawingCanvas.js +0 -1
  1409. package/lib/module/games/perfect-circle/components/ScoreBoard.js +0 -1
  1410. package/lib/module/games/pipe-connect/PipeConnectService.js +0 -1
  1411. package/lib/module/games/pipe-connect/PipeConnectStore.js +0 -1
  1412. package/lib/module/games/pipe-connect/components/GameArea.js +0 -1
  1413. package/lib/module/games/pipe-connect/components/ScoreBoard.js +0 -1
  1414. package/lib/module/games/popit-fidget/PopitFidgetService.js +0 -1
  1415. package/lib/module/games/popit-fidget/PopitFidgetStore.js +0 -1
  1416. package/lib/module/games/popit-fidget/components/BubbleComponent.js +0 -1
  1417. package/lib/module/games/popit-fidget/components/FidgetGrid.js +0 -1
  1418. package/lib/module/games/popit-fidget/components/ScoreBoard.js +0 -1
  1419. package/lib/module/games/reversi/ReversiStore.js +0 -1
  1420. package/lib/module/games/reversi/components/GameBoard.js +0 -1
  1421. package/lib/module/games/reversi/components/ScoreBoard.js +0 -1
  1422. package/lib/module/games/sliding-numbers/SlidingNumbersService.js +0 -1
  1423. package/lib/module/games/sliding-numbers/SlidingNumbersStore.js +0 -1
  1424. package/lib/module/games/sliding-numbers/components/NumbersGrid.js +0 -1
  1425. package/lib/module/games/sliding-numbers/components/ScoreBoard.js +0 -1
  1426. package/lib/module/games/snake-3d/Snake3DService.js +0 -1
  1427. package/lib/module/games/snake-3d/Snake3DStore.js +0 -1
  1428. package/lib/module/games/snake-3d/components/GameGrid.js +0 -1
  1429. package/lib/module/games/snake-3d/components/ScoreBoard.js +0 -1
  1430. package/lib/module/games/snakes-and-ladders/SnakesAndLaddersService.js +0 -1
  1431. package/lib/module/games/snakes-and-ladders/SnakesAndLaddersStore.js +0 -1
  1432. package/lib/module/games/snakes-and-ladders/components/Dice.js +0 -1
  1433. package/lib/module/games/snakes-and-ladders/components/GameBoard.js +0 -1
  1434. package/lib/module/games/snakes-and-ladders/components/ScoreBoard.js +0 -1
  1435. package/lib/module/games/space-fighter/SpaceFighterService.js +0 -1
  1436. package/lib/module/games/space-fighter/SpaceFighterStore.js +0 -1
  1437. package/lib/module/games/space-fighter/components/AsteroidComponent.js +0 -1
  1438. package/lib/module/games/space-fighter/components/GameArea.js +0 -1
  1439. package/lib/module/games/space-fighter/components/GameBackground.js +0 -1
  1440. package/lib/module/games/space-fighter/components/ScoreBoard.js +0 -1
  1441. package/lib/module/games/space-fighter/components/Spacecraft3D.js +0 -1
  1442. package/lib/module/games/space-fighter/components/SpacecraftPath.js +0 -1
  1443. package/lib/module/games/spider-solitaire/SpiderSolitaireService.js +0 -1
  1444. package/lib/module/games/spider-solitaire/SpiderSolitaireStore.js +0 -1
  1445. package/lib/module/games/spider-solitaire/components/Card.js +0 -1
  1446. package/lib/module/games/spider-solitaire/components/CardPile.js +0 -1
  1447. package/lib/module/games/spider-solitaire/components/ScoreBoard.js +0 -1
  1448. package/lib/module/games/stack-tower/StackTowerService.js +0 -1
  1449. package/lib/module/games/stack-tower/StackTowerStore.js +0 -1
  1450. package/lib/module/games/stack-tower/components/GameArea.js +0 -1
  1451. package/lib/module/games/stack-tower/components/ScoreBoard.js +0 -1
  1452. package/lib/module/games/sudoku/SudokuService.js +0 -1
  1453. package/lib/module/games/sudoku/SudokuStore.js +0 -1
  1454. package/lib/module/games/sudoku/components/GameArea.js +0 -1
  1455. package/lib/module/games/sudoku/components/ScoreBoard.js +0 -1
  1456. package/lib/module/games/tangram/TangramService.js +0 -1
  1457. package/lib/module/games/tangram/TangramStore.js +0 -1
  1458. package/lib/module/games/tangram/components/GameBoard.js +0 -1
  1459. package/lib/module/games/tangram/components/ScoreBoard.js +0 -1
  1460. package/lib/module/games/tank-1990/Tank1990Service.js +0 -1
  1461. package/lib/module/games/tank-1990/Tank1990Store.js +0 -1
  1462. package/lib/module/games/tank-1990/components/Controls.js +0 -1
  1463. package/lib/module/games/tank-1990/components/GameBoard.js +0 -1
  1464. package/lib/module/games/tank-1990/components/ScoreBoard.js +0 -1
  1465. package/lib/module/games/tic-tac-toe/TicTacToeService.js +0 -1
  1466. package/lib/module/games/tic-tac-toe/TicTacToeStore.js +0 -1
  1467. package/lib/module/games/tic-tac-toe/components/GameBoard.js +0 -1
  1468. package/lib/module/games/tic-tac-toe/components/ScoreBoard.js +0 -1
  1469. package/lib/module/games/tile-home/TileHomeService.js +0 -1
  1470. package/lib/module/games/tile-home/TileHomeStore.js +0 -1
  1471. package/lib/module/games/tile-home/components/AnimatingTile.js +0 -1
  1472. package/lib/module/games/tile-home/components/FlyingTile.js +0 -1
  1473. package/lib/module/games/tile-home/components/GameBoard.js +0 -1
  1474. package/lib/module/games/tile-home/components/ScoreBoard.js +0 -1
  1475. package/lib/module/games/tile-home/components/TileItem.js +0 -1
  1476. package/lib/module/games/tile-home/components/TileSlot.js +0 -1
  1477. package/lib/module/games/whack-a-mole/WhackAMoleService.js +0 -1
  1478. package/lib/module/games/whack-a-mole/WhackAMoleStore.js +0 -1
  1479. package/lib/module/games/whack-a-mole/components/GameBackground.js +0 -1
  1480. package/lib/module/games/whack-a-mole/components/GameGrid.js +0 -1
  1481. package/lib/module/games/whack-a-mole/components/GameHole.js +0 -1
  1482. package/lib/module/games/whack-a-mole/components/MoleCharacter.js +0 -1
  1483. package/lib/module/games/whack-a-mole/components/ScoreBoard.js +0 -1
  1484. package/lib/module/games/word-search/WordSearchConstants.js +0 -1
  1485. package/lib/module/games/word-search/WordSearchService.js +0 -1
  1486. package/lib/module/games/word-search/WordSearchStore.js +0 -1
  1487. package/lib/module/games/word-search/components/GameBoard.js +0 -1
  1488. package/lib/module/games/word-search/components/ScoreBoard.js +0 -1
  1489. package/lib/module/games/word-search/components/WordList.js +0 -1
  1490. package/lib/module/helpers/AnimatedScore.js +0 -1
  1491. package/lib/module/helpers/AnimationFrame.js +0 -1
  1492. package/lib/module/helpers/AnimationTracker.js +0 -1
  1493. package/lib/module/helpers/BlastAnimation.js +0 -1
  1494. package/lib/module/helpers/ErrorHandler.js +0 -1
  1495. package/lib/module/helpers/GameBackgroundPattern.js +0 -1
  1496. package/lib/module/helpers/GameControlButton.js +0 -1
  1497. package/lib/module/helpers/GameOverModal.js +0 -1
  1498. package/lib/module/helpers/GameTimer.js +0 -1
  1499. package/lib/module/helpers/Icons.js +0 -1
  1500. package/lib/module/helpers/ParticleBlast.js +0 -1
  1501. package/lib/module/helpers/ScoreBoardContainer.js +0 -1
  1502. package/lib/module/helpers/assets/apple-fruit.js +0 -1
  1503. package/lib/module/helpers/assets/avocado-item.js +0 -1
  1504. package/lib/module/helpers/assets/banana-fruit.js +0 -1
  1505. package/lib/module/helpers/assets/bomb-item.js +0 -1
  1506. package/lib/module/helpers/assets/broccoli-item.js +0 -1
  1507. package/lib/module/helpers/assets/cherries-fruit.js +0 -1
  1508. package/lib/module/helpers/assets/donut-item.js +0 -1
  1509. package/lib/module/helpers/assets/dragonfruit-item.js +0 -1
  1510. package/lib/module/helpers/assets/fries-item.js +0 -1
  1511. package/lib/module/helpers/assets/fruit-helpers.js +0 -1
  1512. package/lib/module/helpers/assets/grapes-fruit.js +0 -1
  1513. package/lib/module/helpers/assets/icecream-item.js +0 -1
  1514. package/lib/module/helpers/assets/index.js +0 -1
  1515. package/lib/module/helpers/assets/kiwi-fruit.js +0 -1
  1516. package/lib/module/helpers/assets/mango-fruit.js +0 -1
  1517. package/lib/module/helpers/assets/orange-fruit.js +0 -1
  1518. package/lib/module/helpers/assets/papaya-fruit.js +0 -1
  1519. package/lib/module/helpers/assets/papaya-full-fruit.js +0 -1
  1520. package/lib/module/helpers/assets/peach-fruit.js +0 -1
  1521. package/lib/module/helpers/assets/pineapple-fruit.js +0 -1
  1522. package/lib/module/helpers/assets/pomegranate-fruit.js +0 -1
  1523. package/lib/module/helpers/assets/pumpkin-fruit.js +0 -1
  1524. package/lib/module/helpers/assets/raspberry-item.js +0 -1
  1525. package/lib/module/helpers/assets/star-item.js +0 -1
  1526. package/lib/module/helpers/assets/strawberry-fruit.js +0 -1
  1527. package/lib/module/helpers/assets/watermelon-fruit.js +0 -1
  1528. package/lib/module/types.d.js +0 -1
  1529. package/lib/typescript/src/games/arrows/ArrowsService.d.ts +0 -6
  1530. package/lib/typescript/src/games/arrows/ArrowsStore.d.ts +0 -51
  1531. package/lib/typescript/src/games/arrows/components/ArrowsGrid.d.ts +0 -13
  1532. package/lib/typescript/src/games/arrows/components/ScoreBoard.d.ts +0 -6
  1533. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts +0 -80
  1534. package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts +0 -30
  1535. package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts +0 -9
  1536. package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts +0 -9
  1537. package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts +0 -7
  1538. package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts +0 -6
  1539. package/lib/typescript/src/games/bike-racing/BikeRacingService.d.ts +0 -44
  1540. package/lib/typescript/src/games/bike-racing/BikeRacingStore.d.ts +0 -68
  1541. package/lib/typescript/src/games/bike-racing/components/BikeComponent.d.ts +0 -12
  1542. package/lib/typescript/src/games/bike-racing/components/GameBackground.d.ts +0 -7
  1543. package/lib/typescript/src/games/bike-racing/components/ScoreBoard.d.ts +0 -6
  1544. package/lib/typescript/src/games/block-blast/BlockBlastService.d.ts +0 -16
  1545. package/lib/typescript/src/games/block-blast/BlockBlastStore.d.ts +0 -70
  1546. package/lib/typescript/src/games/block-blast/components/BlockPieceComponent.d.ts +0 -11
  1547. package/lib/typescript/src/games/block-blast/components/GameArea.d.ts +0 -11
  1548. package/lib/typescript/src/games/block-blast/components/GridComponent.d.ts +0 -8
  1549. package/lib/typescript/src/games/block-blast/components/ScoreBoard.d.ts +0 -6
  1550. package/lib/typescript/src/games/block-breaker/BlockBreakerService.d.ts +0 -88
  1551. package/lib/typescript/src/games/block-breaker/BlockBreakerStore.d.ts +0 -47
  1552. package/lib/typescript/src/games/block-breaker/components/BlastAnimation.d.ts +0 -15
  1553. package/lib/typescript/src/games/block-breaker/components/GameArea.d.ts +0 -8
  1554. package/lib/typescript/src/games/block-breaker/components/ScoreBoard.d.ts +0 -6
  1555. package/lib/typescript/src/games/bluk/BlukService.d.ts +0 -71
  1556. package/lib/typescript/src/games/bluk/BlukStore.d.ts +0 -52
  1557. package/lib/typescript/src/games/bluk/components/GameArea.d.ts +0 -17
  1558. package/lib/typescript/src/games/bluk/components/GameBackground.d.ts +0 -9
  1559. package/lib/typescript/src/games/bluk/components/ScoreBoard.d.ts +0 -6
  1560. package/lib/typescript/src/games/bubble-shooter/BubbleShooterService.d.ts +0 -35
  1561. package/lib/typescript/src/games/bubble-shooter/BubbleShooterStore.d.ts +0 -63
  1562. package/lib/typescript/src/games/bubble-shooter/components/GameArea.d.ts +0 -8
  1563. package/lib/typescript/src/games/bubble-shooter/components/ScoreBoard.d.ts +0 -6
  1564. package/lib/typescript/src/games/candy-crush/CandyCrushService.d.ts +0 -37
  1565. package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts +0 -53
  1566. package/lib/typescript/src/games/candy-crush/components/CandyItem.d.ts +0 -11
  1567. package/lib/typescript/src/games/candy-crush/components/GameGrid.d.ts +0 -2
  1568. package/lib/typescript/src/games/candy-crush/components/ScoreBoard.d.ts +0 -5
  1569. package/lib/typescript/src/games/car-racing/CarRacingService.d.ts +0 -44
  1570. package/lib/typescript/src/games/car-racing/CarRacingStore.d.ts +0 -68
  1571. package/lib/typescript/src/games/car-racing/components/CarComponent.d.ts +0 -12
  1572. package/lib/typescript/src/games/car-racing/components/GameBackground.d.ts +0 -7
  1573. package/lib/typescript/src/games/car-racing/components/ScoreBoard.d.ts +0 -6
  1574. package/lib/typescript/src/games/chameleon-run/ChameleonRunService.d.ts +0 -76
  1575. package/lib/typescript/src/games/chameleon-run/ChameleonRunStore.d.ts +0 -48
  1576. package/lib/typescript/src/games/chameleon-run/components/GameArea.d.ts +0 -8
  1577. package/lib/typescript/src/games/chameleon-run/components/GameBackground.d.ts +0 -7
  1578. package/lib/typescript/src/games/chameleon-run/components/ScoreBoard.d.ts +0 -6
  1579. package/lib/typescript/src/games/checkers/CheckersService.d.ts +0 -6
  1580. package/lib/typescript/src/games/checkers/CheckersStore.d.ts +0 -48
  1581. package/lib/typescript/src/games/checkers/components/GameBoard.d.ts +0 -6
  1582. package/lib/typescript/src/games/checkers/components/ScoreBoard.d.ts +0 -6
  1583. package/lib/typescript/src/games/color-switch/ColorSwitchService.d.ts +0 -63
  1584. package/lib/typescript/src/games/color-switch/ColorSwitchStore.d.ts +0 -43
  1585. package/lib/typescript/src/games/color-switch/components/GameArea.d.ts +0 -8
  1586. package/lib/typescript/src/games/color-switch/components/ScoreBoard.d.ts +0 -6
  1587. package/lib/typescript/src/games/colors-sort/ColorsSortService.d.ts +0 -61
  1588. package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts +0 -56
  1589. package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts +0 -7
  1590. package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts +0 -6
  1591. package/lib/typescript/src/games/connect-em-all/ConnectEmAllService.d.ts +0 -20
  1592. package/lib/typescript/src/games/connect-em-all/ConnectEmAllStore.d.ts +0 -48
  1593. package/lib/typescript/src/games/connect-em-all/components/GameBoard.d.ts +0 -7
  1594. package/lib/typescript/src/games/connect-em-all/components/ScoreBoard.d.ts +0 -6
  1595. package/lib/typescript/src/games/crossy-road/CrossyRoadService.d.ts +0 -89
  1596. package/lib/typescript/src/games/crossy-road/CrossyRoadStore.d.ts +0 -39
  1597. package/lib/typescript/src/games/crossy-road/components/GameArea.d.ts +0 -8
  1598. package/lib/typescript/src/games/crossy-road/components/ScoreBoard.d.ts +0 -6
  1599. package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts +0 -39
  1600. package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts +0 -97
  1601. package/lib/typescript/src/games/dino-jump/components/DinoSprite.d.ts +0 -2
  1602. package/lib/typescript/src/games/dino-jump/components/GameArea.d.ts +0 -7
  1603. package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts +0 -7
  1604. package/lib/typescript/src/games/dino-jump/components/ObstacleSprite.d.ts +0 -8
  1605. package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts +0 -6
  1606. package/lib/typescript/src/games/dino-jump/components/StarSprite.d.ts +0 -2
  1607. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesService.d.ts +0 -45
  1608. package/lib/typescript/src/games/dots-and-boxes/DotsAndBoxesStore.d.ts +0 -37
  1609. package/lib/typescript/src/games/dots-and-boxes/components/GameBoard.d.ts +0 -7
  1610. package/lib/typescript/src/games/dots-and-boxes/components/ScoreBoard.d.ts +0 -6
  1611. package/lib/typescript/src/games/falling-sticks/FallingSticksService.d.ts +0 -40
  1612. package/lib/typescript/src/games/falling-sticks/FallingSticksStore.d.ts +0 -31
  1613. package/lib/typescript/src/games/falling-sticks/components/GameArea.d.ts +0 -7
  1614. package/lib/typescript/src/games/falling-sticks/components/GameBackground.d.ts +0 -6
  1615. package/lib/typescript/src/games/falling-sticks/components/ScoreBoard.d.ts +0 -6
  1616. package/lib/typescript/src/games/find-different-number/FindDifferentNumberService.d.ts +0 -6
  1617. package/lib/typescript/src/games/find-different-number/FindDifferentNumberStore.d.ts +0 -36
  1618. package/lib/typescript/src/games/find-different-number/components/GameGrid.d.ts +0 -7
  1619. package/lib/typescript/src/games/find-different-number/components/ScoreBoard.d.ts +0 -6
  1620. package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts +0 -68
  1621. package/lib/typescript/src/games/flappy-bird/components/Bird.d.ts +0 -2
  1622. package/lib/typescript/src/games/flappy-bird/components/GameArea.d.ts +0 -7
  1623. package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts +0 -7
  1624. package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts +0 -8
  1625. package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts +0 -6
  1626. package/lib/typescript/src/games/fruit-merger/FruitMergerService.d.ts +0 -3
  1627. package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts +0 -66
  1628. package/lib/typescript/src/games/fruit-merger/components/FruitItem.d.ts +0 -8
  1629. package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts +0 -8
  1630. package/lib/typescript/src/games/fruit-merger/components/ScoreBoard.d.ts +0 -6
  1631. package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts +0 -73
  1632. package/lib/typescript/src/games/fruit-ninja/FruitNinjaStore.d.ts +0 -38
  1633. package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts +0 -8
  1634. package/lib/typescript/src/games/fruit-ninja/components/GameArea.d.ts +0 -7
  1635. package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts +0 -7
  1636. package/lib/typescript/src/games/fruit-ninja/components/ScoreBoard.d.ts +0 -6
  1637. package/lib/typescript/src/games/game-2048/Game2048Service.d.ts +0 -102
  1638. package/lib/typescript/src/games/game-2048/Game2048Store.d.ts +0 -44
  1639. package/lib/typescript/src/games/game-2048/components/GameGrid.d.ts +0 -2
  1640. package/lib/typescript/src/games/game-2048/components/ScoreBoard.d.ts +0 -6
  1641. package/lib/typescript/src/games/knife-hit/KnifeHitService.d.ts +0 -48
  1642. package/lib/typescript/src/games/knife-hit/KnifeHitStore.d.ts +0 -41
  1643. package/lib/typescript/src/games/knife-hit/components/GameArea.d.ts +0 -8
  1644. package/lib/typescript/src/games/knife-hit/components/ScoreBoard.d.ts +0 -6
  1645. package/lib/typescript/src/games/ludo-king/LudoKingService.d.ts +0 -33
  1646. package/lib/typescript/src/games/ludo-king/LudoKingStore.d.ts +0 -34
  1647. package/lib/typescript/src/games/ludo-king/components/Dice.d.ts +0 -7
  1648. package/lib/typescript/src/games/ludo-king/components/GameBoard.d.ts +0 -7
  1649. package/lib/typescript/src/games/ludo-king/components/ScoreBoard.d.ts +0 -6
  1650. package/lib/typescript/src/games/maze-runner/MazeRunnerStore.d.ts +0 -62
  1651. package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts +0 -10
  1652. package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts +0 -33
  1653. package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts +0 -24
  1654. package/lib/typescript/src/games/maze-runner/components/SkiaPipeComponent.d.ts +0 -24
  1655. package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts +0 -9
  1656. package/lib/typescript/src/games/memory-match/MemoryMatchService.d.ts +0 -6
  1657. package/lib/typescript/src/games/memory-match/MemoryMatchStore.d.ts +0 -42
  1658. package/lib/typescript/src/games/memory-match/components/Card.d.ts +0 -6
  1659. package/lib/typescript/src/games/memory-match/components/GameBoard.d.ts +0 -6
  1660. package/lib/typescript/src/games/memory-match/components/ScoreBoard.d.ts +0 -6
  1661. package/lib/typescript/src/games/mine-sweeper/MineSweeperService.d.ts +0 -22
  1662. package/lib/typescript/src/games/mine-sweeper/MineSweeperStore.d.ts +0 -73
  1663. package/lib/typescript/src/games/mine-sweeper/components/GameArea.d.ts +0 -8
  1664. package/lib/typescript/src/games/mine-sweeper/components/ScoreBoard.d.ts +0 -6
  1665. package/lib/typescript/src/games/mob-control/MobControlService.d.ts +0 -74
  1666. package/lib/typescript/src/games/mob-control/MobControlStore.d.ts +0 -66
  1667. package/lib/typescript/src/games/mob-control/components/GameArea.d.ts +0 -11
  1668. package/lib/typescript/src/games/mob-control/components/ScoreBoard.d.ts +0 -6
  1669. package/lib/typescript/src/games/number-search/NumberSearchConstants.d.ts +0 -63
  1670. package/lib/typescript/src/games/number-search/NumberSearchService.d.ts +0 -34
  1671. package/lib/typescript/src/games/number-search/NumberSearchStore.d.ts +0 -70
  1672. package/lib/typescript/src/games/number-search/components/GameBoard.d.ts +0 -7
  1673. package/lib/typescript/src/games/number-search/components/NumberList.d.ts +0 -2
  1674. package/lib/typescript/src/games/number-search/components/ScoreBoard.d.ts +0 -6
  1675. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsService.d.ts +0 -67
  1676. package/lib/typescript/src/games/nuts-and-bolts/NutsAndBoltsStore.d.ts +0 -45
  1677. package/lib/typescript/src/games/nuts-and-bolts/components/GameBoard.d.ts +0 -7
  1678. package/lib/typescript/src/games/nuts-and-bolts/components/ScoreBoard.d.ts +0 -6
  1679. package/lib/typescript/src/games/pac-man/PacManService.d.ts +0 -73
  1680. package/lib/typescript/src/games/pac-man/PacManStore.d.ts +0 -89
  1681. package/lib/typescript/src/games/pac-man/components/GameCanvas.d.ts +0 -2
  1682. package/lib/typescript/src/games/pac-man/components/ScoreBoard.d.ts +0 -6
  1683. package/lib/typescript/src/games/paper-io/PaperIoService.d.ts +0 -70
  1684. package/lib/typescript/src/games/paper-io/PaperIoStore.d.ts +0 -51
  1685. package/lib/typescript/src/games/paper-io/components/GameArea.d.ts +0 -8
  1686. package/lib/typescript/src/games/paper-io/components/ScoreBoard.d.ts +0 -6
  1687. package/lib/typescript/src/games/perfect-circle/PerfectCircleService.d.ts +0 -15
  1688. package/lib/typescript/src/games/perfect-circle/PerfectCircleStore.d.ts +0 -55
  1689. package/lib/typescript/src/games/perfect-circle/components/DrawingCanvas.d.ts +0 -8
  1690. package/lib/typescript/src/games/perfect-circle/components/ScoreBoard.d.ts +0 -6
  1691. package/lib/typescript/src/games/pipe-connect/PipeConnectService.d.ts +0 -17
  1692. package/lib/typescript/src/games/pipe-connect/PipeConnectStore.d.ts +0 -31
  1693. package/lib/typescript/src/games/pipe-connect/components/GameArea.d.ts +0 -7
  1694. package/lib/typescript/src/games/pipe-connect/components/ScoreBoard.d.ts +0 -6
  1695. package/lib/typescript/src/games/popit-fidget/PopitFidgetService.d.ts +0 -30
  1696. package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts +0 -33
  1697. package/lib/typescript/src/games/popit-fidget/components/BubbleComponent.d.ts +0 -10
  1698. package/lib/typescript/src/games/popit-fidget/components/FidgetGrid.d.ts +0 -10
  1699. package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts +0 -6
  1700. package/lib/typescript/src/games/reversi/ReversiStore.d.ts +0 -46
  1701. package/lib/typescript/src/games/reversi/components/GameBoard.d.ts +0 -6
  1702. package/lib/typescript/src/games/reversi/components/ScoreBoard.d.ts +0 -6
  1703. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersService.d.ts +0 -6
  1704. package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts +0 -38
  1705. package/lib/typescript/src/games/sliding-numbers/components/NumbersGrid.d.ts +0 -7
  1706. package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts +0 -6
  1707. package/lib/typescript/src/games/snake-3d/Snake3DService.d.ts +0 -29
  1708. package/lib/typescript/src/games/snake-3d/Snake3DStore.d.ts +0 -49
  1709. package/lib/typescript/src/games/snake-3d/components/GameGrid.d.ts +0 -2
  1710. package/lib/typescript/src/games/snake-3d/components/ScoreBoard.d.ts +0 -6
  1711. package/lib/typescript/src/games/snakes-and-ladders/SnakesAndLaddersService.d.ts +0 -22
  1712. package/lib/typescript/src/games/snakes-and-ladders/SnakesAndLaddersStore.d.ts +0 -40
  1713. package/lib/typescript/src/games/snakes-and-ladders/components/Dice.d.ts +0 -7
  1714. package/lib/typescript/src/games/snakes-and-ladders/components/GameBoard.d.ts +0 -2
  1715. package/lib/typescript/src/games/snakes-and-ladders/components/ScoreBoard.d.ts +0 -6
  1716. package/lib/typescript/src/games/space-fighter/SpaceFighterService.d.ts +0 -117
  1717. package/lib/typescript/src/games/space-fighter/SpaceFighterStore.d.ts +0 -54
  1718. package/lib/typescript/src/games/space-fighter/components/AsteroidComponent.d.ts +0 -9
  1719. package/lib/typescript/src/games/space-fighter/components/GameArea.d.ts +0 -9
  1720. package/lib/typescript/src/games/space-fighter/components/GameBackground.d.ts +0 -6
  1721. package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts +0 -6
  1722. package/lib/typescript/src/games/space-fighter/components/Spacecraft3D.d.ts +0 -11
  1723. package/lib/typescript/src/games/space-fighter/components/SpacecraftPath.d.ts +0 -9
  1724. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireService.d.ts +0 -23
  1725. package/lib/typescript/src/games/spider-solitaire/SpiderSolitaireStore.d.ts +0 -71
  1726. package/lib/typescript/src/games/spider-solitaire/components/Card.d.ts +0 -10
  1727. package/lib/typescript/src/games/spider-solitaire/components/CardPile.d.ts +0 -12
  1728. package/lib/typescript/src/games/spider-solitaire/components/ScoreBoard.d.ts +0 -6
  1729. package/lib/typescript/src/games/stack-tower/StackTowerService.d.ts +0 -51
  1730. package/lib/typescript/src/games/stack-tower/StackTowerStore.d.ts +0 -52
  1731. package/lib/typescript/src/games/stack-tower/components/GameArea.d.ts +0 -8
  1732. package/lib/typescript/src/games/stack-tower/components/ScoreBoard.d.ts +0 -6
  1733. package/lib/typescript/src/games/sudoku/SudokuService.d.ts +0 -24
  1734. package/lib/typescript/src/games/sudoku/SudokuStore.d.ts +0 -65
  1735. package/lib/typescript/src/games/sudoku/components/GameArea.d.ts +0 -8
  1736. package/lib/typescript/src/games/sudoku/components/ScoreBoard.d.ts +0 -6
  1737. package/lib/typescript/src/games/tangram/TangramService.d.ts +0 -6
  1738. package/lib/typescript/src/games/tangram/TangramStore.d.ts +0 -34
  1739. package/lib/typescript/src/games/tangram/components/GameBoard.d.ts +0 -7
  1740. package/lib/typescript/src/games/tangram/components/ScoreBoard.d.ts +0 -6
  1741. package/lib/typescript/src/games/tank-1990/Tank1990Service.d.ts +0 -80
  1742. package/lib/typescript/src/games/tank-1990/Tank1990Store.d.ts +0 -48
  1743. package/lib/typescript/src/games/tank-1990/components/Controls.d.ts +0 -2
  1744. package/lib/typescript/src/games/tank-1990/components/GameBoard.d.ts +0 -2
  1745. package/lib/typescript/src/games/tank-1990/components/ScoreBoard.d.ts +0 -6
  1746. package/lib/typescript/src/games/tic-tac-toe/TicTacToeService.d.ts +0 -0
  1747. package/lib/typescript/src/games/tic-tac-toe/TicTacToeStore.d.ts +0 -51
  1748. package/lib/typescript/src/games/tic-tac-toe/components/GameBoard.d.ts +0 -6
  1749. package/lib/typescript/src/games/tic-tac-toe/components/ScoreBoard.d.ts +0 -6
  1750. package/lib/typescript/src/games/tile-home/TileHomeService.d.ts +0 -1
  1751. package/lib/typescript/src/games/tile-home/TileHomeStore.d.ts +0 -57
  1752. package/lib/typescript/src/games/tile-home/components/AnimatingTile.d.ts +0 -9
  1753. package/lib/typescript/src/games/tile-home/components/FlyingTile.d.ts +0 -16
  1754. package/lib/typescript/src/games/tile-home/components/GameBoard.d.ts +0 -7
  1755. package/lib/typescript/src/games/tile-home/components/ScoreBoard.d.ts +0 -6
  1756. package/lib/typescript/src/games/tile-home/components/TileItem.d.ts +0 -11
  1757. package/lib/typescript/src/games/tile-home/components/TileSlot.d.ts +0 -7
  1758. package/lib/typescript/src/games/whack-a-mole/WhackAMoleService.d.ts +0 -32
  1759. package/lib/typescript/src/games/whack-a-mole/WhackAMoleStore.d.ts +0 -39
  1760. package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts +0 -7
  1761. package/lib/typescript/src/games/whack-a-mole/components/GameGrid.d.ts +0 -10
  1762. package/lib/typescript/src/games/whack-a-mole/components/GameHole.d.ts +0 -11
  1763. package/lib/typescript/src/games/whack-a-mole/components/MoleCharacter.d.ts +0 -6
  1764. package/lib/typescript/src/games/whack-a-mole/components/ScoreBoard.d.ts +0 -6
  1765. package/lib/typescript/src/games/word-search/WordSearchConstants.d.ts +0 -63
  1766. package/lib/typescript/src/games/word-search/WordSearchService.d.ts +0 -34
  1767. package/lib/typescript/src/games/word-search/WordSearchStore.d.ts +0 -70
  1768. package/lib/typescript/src/games/word-search/components/GameBoard.d.ts +0 -7
  1769. package/lib/typescript/src/games/word-search/components/ScoreBoard.d.ts +0 -6
  1770. package/lib/typescript/src/games/word-search/components/WordList.d.ts +0 -2
  1771. package/lib/typescript/src/helpers/AnimatedScore.d.ts +0 -36
  1772. package/lib/typescript/src/helpers/AnimationFrame.d.ts +0 -40
  1773. package/lib/typescript/src/helpers/AnimationTracker.d.ts +0 -44
  1774. package/lib/typescript/src/helpers/BlastAnimation.d.ts +0 -16
  1775. package/lib/typescript/src/helpers/ErrorHandler.d.ts +0 -123
  1776. package/lib/typescript/src/helpers/GameBackgroundPattern.d.ts +0 -7
  1777. package/lib/typescript/src/helpers/GameControlButton.d.ts +0 -11
  1778. package/lib/typescript/src/helpers/GameOverModal.d.ts +0 -15
  1779. package/lib/typescript/src/helpers/GameTimer.d.ts +0 -26
  1780. package/lib/typescript/src/helpers/Icons.d.ts +0 -12
  1781. package/lib/typescript/src/helpers/ParticleBlast.d.ts +0 -11
  1782. package/lib/typescript/src/helpers/ScoreBoardContainer.d.ts +0 -85
  1783. package/lib/typescript/src/helpers/assets/apple-fruit.d.ts +0 -4
  1784. package/lib/typescript/src/helpers/assets/avocado-item.d.ts +0 -4
  1785. package/lib/typescript/src/helpers/assets/banana-fruit.d.ts +0 -4
  1786. package/lib/typescript/src/helpers/assets/bomb-item.d.ts +0 -4
  1787. package/lib/typescript/src/helpers/assets/broccoli-item.d.ts +0 -4
  1788. package/lib/typescript/src/helpers/assets/cherries-fruit.d.ts +0 -4
  1789. package/lib/typescript/src/helpers/assets/donut-item.d.ts +0 -4
  1790. package/lib/typescript/src/helpers/assets/dragonfruit-item.d.ts +0 -4
  1791. package/lib/typescript/src/helpers/assets/fries-item.d.ts +0 -4
  1792. package/lib/typescript/src/helpers/assets/fruit-helpers.d.ts +0 -154
  1793. package/lib/typescript/src/helpers/assets/grapes-fruit.d.ts +0 -4
  1794. package/lib/typescript/src/helpers/assets/icecream-item.d.ts +0 -4
  1795. package/lib/typescript/src/helpers/assets/index.d.ts +0 -31
  1796. package/lib/typescript/src/helpers/assets/kiwi-fruit.d.ts +0 -4
  1797. package/lib/typescript/src/helpers/assets/mango-fruit.d.ts +0 -4
  1798. package/lib/typescript/src/helpers/assets/orange-fruit.d.ts +0 -4
  1799. package/lib/typescript/src/helpers/assets/papaya-fruit.d.ts +0 -4
  1800. package/lib/typescript/src/helpers/assets/papaya-full-fruit.d.ts +0 -4
  1801. package/lib/typescript/src/helpers/assets/peach-fruit.d.ts +0 -4
  1802. package/lib/typescript/src/helpers/assets/pineapple-fruit.d.ts +0 -4
  1803. package/lib/typescript/src/helpers/assets/pomegranate-fruit.d.ts +0 -4
  1804. package/lib/typescript/src/helpers/assets/pumpkin-fruit.d.ts +0 -4
  1805. package/lib/typescript/src/helpers/assets/raspberry-item.d.ts +0 -4
  1806. package/lib/typescript/src/helpers/assets/star-item.d.ts +0 -4
  1807. package/lib/typescript/src/helpers/assets/strawberry-fruit.d.ts +0 -4
  1808. package/lib/typescript/src/helpers/assets/watermelon-fruit.d.ts +0 -4
@@ -1 +0,0 @@
1
- "use strict";const _0x318b0f=_0xf6bd;function _0xf6bd(t,o){t-=487;const W=_0x55e5();let e=W[t];if(void 0===_0xf6bd.POscIs){const t=function(t,o){let W,e,r=[],n=0,d="";for(t=function(t){let o="",W="";for(let W,e,r=0,n=0;e=t.charAt(n++);~e&&(W=r%4?64*W+e:e,r++%4)?o+=String.fromCharCode(255&W>>(-2*r&6)):0)e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(e);for(let t=0,e=o.length;t<e;t++)W+="%"+("00"+o.charCodeAt(t).toString(16)).slice(-2);return decodeURIComponent(W)}(t),e=0;e<256;e++)r[e]=e;for(e=0;e<256;e++)n=(n+r[e]+o.charCodeAt(e%o.length))%256,W=r[e],r[e]=r[n],r[n]=W;e=0,n=0;for(let o=0;o<t.length;o++)e=(e+1)%256,n=(n+r[e])%256,W=r[e],r[e]=r[n],r[n]=W,d+=String.fromCharCode(t.charCodeAt(o)^r[(r[e]+r[n])%256]);return d};_0xf6bd.xFkUCS=t,_0xf6bd.hJZelP={},_0xf6bd.POscIs=!0}const r=W[0];_0xf6bd.FQShLB!==r&&(_0xf6bd.hJZelP={},_0xf6bd.FQShLB=r);const n=_0xf6bd.hJZelP[t];return void 0===n?(void 0===_0xf6bd.rswCJi&&(_0xf6bd.rswCJi=!0),e=_0xf6bd.xFkUCS(e,o),_0xf6bd.hJZelP[t]=e):e=n,e}!function(){const t=_0xf6bd,o=_0x55e5();for(;;)try{if(655693==-parseInt(t(500,"G)KU"))/1+-parseInt(t(589,"r3T!"))/2+-parseInt(t(535,"7LWi"))/3*(-parseInt(t(495,"z0cG"))/4)+-parseInt(t(496,"G)KU"))/5*(-parseInt(t(544,"eE]O"))/6)+parseInt(t(538,"Sbwf"))/7+parseInt(t(505,"O(qa"))/8+-parseInt(t(534,"XLdI"))/9)break;o.push(o.shift())}catch(t){o.push(o.shift())}}();import _0x57f3d3,{useEffect,useRef,useCallback}from"react";import{TouchableOpacity}from"react-native";import{Canvas,vec,Path,Skia,Oval,Circle,LinearGradient,Group}from"@shopify/react-native-skia";import _0x48f954,{useSharedValue,useAnimatedStyle,withSpring,withTiming}from"react-native-reanimated";import{GAME_CONFIG,ANIMATION_CONFIG}from"../BalloonBlasterService.js";import{lighten,darken}from"../../../services/GamesConstants.js";import{jsx as _0x32fd88,jsxs as _0x21ba5a}from"react/jsx-runtime";const BALLOON_HEIGHT_MULTIPLIER=1.25,BALLOON_WIDTH=GAME_CONFIG[_0x318b0f(503,"ODx6")],SCALE=BALLOON_WIDTH/60,STRING_LENGTH=Math[_0x318b0f(595,"ODx6")](30*SCALE),DANGER_CIRCLE_RADIUS=Math.round(10*SCALE),GLOW_RADIUS_MULTIPLIER=.6,GLOW_OPACITY=.35,BALLOON_HEIGHT=1.25*GAME_CONFIG[_0x318b0f(592,"udBT")],TOTAL_HEIGHT=BALLOON_HEIGHT+STRING_LENGTH,CENTER=vec(BALLOON_WIDTH/2,BALLOON_HEIGHT/2),_0x1bf964={};_0x1bf964[_0x318b0f(508,"ODx6")]=_0x318b0f(603,"z0cG"),_0x1bf964[_0x318b0f(536,"O(qa")]=_0x318b0f(555,"QKRq"),_0x1bf964[_0x318b0f(561,"udBT")]=_0x318b0f(539,"xxwd"),_0x1bf964[_0x318b0f(564,"hw8v")]="#000000";const BOMB_COLORS=_0x1bf964,_0xf63a57={};_0xf63a57[_0x318b0f(492,"ccev")]=_0x318b0f(497,"O(qa"),_0xf63a57[_0x318b0f(591,"grbN")]=_0x318b0f(602,"hw8v"),_0xf63a57.highlight=_0x318b0f(490,"KGD("),_0xf63a57[_0x318b0f(553,"4Xqv")]=_0x318b0f(513,"KGD(");const BONUS_COLORS=_0xf63a57,colorCache=new Map,getBalloonColors=t=>{const o=_0x318b0f,W={nMfbv:function(t,o,W){return t(o,W)}};if(t[o(569,"(ija")])return BOMB_COLORS;if(t[o(521,"V#93")])return BONUS_COLORS;const e=t.type[o(514,"ccev")]||o(578,"YMCU");let r=colorCache[o(548,"KGD(")](e);return!r&&(r={primary:e,secondary:lighten(e,.3),highlight:W[o(588,")(6o")](lighten,e,.5),shadow:W[o(600,"r3T!")](darken,e,.3)},colorCache[o(537,"O(qa")](e,r)),r},KNOT_PATH=(()=>{const t=_0x318b0f,o={};o[t(550,"4tLm")]=function(t,o){return t-o},o[t(598,"]*Q2")]=function(t,o){return t+o};const W=o,e=Skia.Path[t(574,"SA*j")](),r=CENTER.x,n=BALLOON_HEIGHT-2;return e.moveTo(W[t(581,"4Xqv")](r,4),n),e.quadTo(r-2,n+5,r,n+7),e.quadTo(W[t(570,"0(3X")](r,2),n+5,r+4,n),e[t(509,"ODx6")](),e})(),BOMB_DANGER_PATH=(()=>{const t=_0x318b0f,o=Skia.Path[t(574,"SA*j")]();return o[t(606,"G)KU")](CENTER.x,CENTER.y-5),o[t(504,"oG$6")](CENTER.x,CENTER.y+1),o})(),generateStringPath=t=>{const o=_0x318b0f,W={qTWNf:function(t,o){return t/o},urNFr:function(t,o){return t<=o},fYQtG:function(t,o){return t*o},aJuDO:function(t,o){return t(o)},oxjOl:function(t,o){return t+o}},e=Skia[o(524,"Edj[")][o(519,"J%qy")](),r=CENTER.x,n=BALLOON_HEIGHT-2,d=t[o(612,"H4z]")]("")[o(556,"ODx6")]((t,W)=>t+W[o(549,"hw8v")](0),0),_=t=>(d+17*t)%100/100;e.moveTo(r,n);const O=W.qTWNf(STRING_LENGTH,2);for(let t=1;W[o(590,"mQn*")](t,2);t++){const d=n+O*t,a=2+W.fYQtG(W[o(617,"XGwD")](_,t),2),x=(_(W[o(593,"bsR5")](t,10))-.5)*a,f=W[o(542,"KGD(")](r,x),i=r+(_(W[o(586,"ccev")](t,20))-.5)*a*.5,s=d-W[o(571,"ccev")](O,.5);e[o(599,"8&mt")](i,s,f,d)}return e},_0x534b02={};_0x534b02[_0x318b0f(573,"WUd@")]="absolute",_0x534b02.width=BALLOON_WIDTH,_0x534b02[_0x318b0f(507,"udBT")]=BALLOON_WIDTH,_0x534b02[_0x318b0f(501,"%p(f")]=5;const CONTAINER_STYLE_NORMAL=_0x534b02,_0x380c8={};function _0x55e5(){const t=["WQizd8keW7NcGGq","WRehcCkAW70","CHRcRfK6","W6dcS8oIqmow","W5BdIZ8Cl8o+WPpcJGLCvSkY","WOddTIXvz8k/nG","zXtcRemT","WQ1/W5eFWQq","W4GwWRNcKhm","o8opWRFdM34","WOtdICo4iCkoAIZcJCoHWR8ikcNdIW","nSkkWONdRa","W6KkWPdcH8oHqG","W6JdR0Ctr8kwcG","WRldUSova8kYsqpcPSoxWRC","WRHyzCkpBNZcQvC","WP/cT8kfmW","mmkQDCkQWQS","x8kFgmo0d8kUvq","pCohWRpdOh8","WP0FW5S","WR5wESktFW","W6xcOKhdVSkLlW","i8oRWQVdLN4","W7VdG8o9iSo8WPTE","l8oMpx5iWR1NW7j8","WQTtW4xdL8k2abqqWQ4uAYKika","W5xdLCoCdtb0WPq","W7BdOHuWbmofWQBcTt0","W7BdOGi","WQFcICkpFSkHW58Do8oeyg0OqG","hmokWPS2eguK","W5FdKCkzW4moWRxdLamHfCk2WQy4","W7hdS3yvxCkkfSoy","W4ZdJquImW","W6hdGIjXlGikW6e","W4KcWO02W4RdOmoq","hbFdVCkHtq","W7KZW5W3gW","WQeFh8kfW70","W4tdKbS","WOhcJSobWOH4W6RcGde2iW","W57cTCoZBCob","W5JdHmo5gmob","fCkQdSkRt8oUaf4","W6TRWOvIWOD5","dCkkWO7dVmox","WPvLWP4cESoOCG","WQaoaSkCW7VcLq","pSktW47cPe7dMa","W5GqW6aAoH3cO8k7iYpcR8k1","W6xcHX5uiG","c8kXn8kWwG","W5yEWRlcJxRdSuldVCoZ","WOJdTvJdRmkhW6K","pJFcNNNcJrRdGW","WPhcJSobWP5uW7i","W5S0W4exeG","WQxdVCogh8kKsXy","WR/cPmkynSoOWOldUW","acVcSSkJra","p8kfW6xcReVdJG","WRfJxCkkyW","yIlcKvGy","bt7cRmk5sGHxW6RcRG","bIxcRCk/vqr7W6u","amopWRddIW","h8kSlmk2wSoWeq","WOJdKmoLdq","WOhdQSk+oSkdlH88qLBdQYRdIX4","W4vUW4r+W6xcKra","W644W4G2mG","W4v7rmkkWPL/","W7zTWP1LWPi","W4VcVSk9nN5gWO8","WPhdIutdUSkhW78L","xCoIW7WNWQ4","smkwW4P3tq","AWpcQMmZ","jIlcTSkyta","WQJdHCosd8k3","wetcP8oGhw7cUtdcIxhcHf4r","fCkWu8kIWRq","WOhdMvxdP8kmW7uWk14","W7W2WPNcQvNdL2VdISouWPP5ka","WO7cVb3dTCoV","WQDhD8kfC2hcVW","WQaee8khW7W","mCoUnMnb","WPlcOCkQj8oq","bCknfCkOrG","W5pcUmkEpurC","bdVdT8k2xG","WOldK0xdOCkwW7G+nW","W4hcOmoMWR95WRBcPG","W5zoi03dQMvH","W6JdR1utwCkthmos","WPhcKSosWPvqW6a","CbVdNf3dRu0","WOCqnXldRW","stddL8ksBH7dHW","W7KZW504cYVcMmkC","Bb7cQuS3oW","WR/dM8oZfq9ZrJ4","WRRdRCkJWPC0","W5CSW5bTWRGbsCky","W48RWQFcGSo5","sCoGBSo3dmkVvxxdTCovW7ZcRSkT","W4FcSSoUESot","W63cM3BdLCkh","W7y1hYZdGCo3","WOGQWPKyW44","WQhdJSo4kXPxWOlcPSo5dbLgWOlcSa","W7K/mSklg2O","WOBdUKLbx2hdMq","WOddSYKRASk2qG","W5CeWOxcIMBdQeddSq","DaNcQue+puW","WR4Oes3dUG","W7/cIHPp","W4riEKtcVguYW6ddGmoFW7ZcPsu","kepcKWhcJbldH8kmW5jHW7NdKmop","WQBdGtaBxCkrW7C","cSk4mSkXwG","WQe1W5i3W542g8kNf1qMvuK","letcNG3cIXFdG8kkW6DjW7ZdS8og","W6JcPHLeiSk0","W5CyWRz7W6FcNbrOiSkgDWFcKG","WPaQkSkLW5FcVZnFC8kEWPW1","F8oaWPyGW7NcSq","WRZcSubUxmkzW7FcJqXJBmkLwa","trZdGNBdLa","W5ysWRZcGN7dRa"];return(_0x55e5=function(){return t})()}_0x380c8[_0x318b0f(523,"0(3X")]=_0x318b0f(611,"XV65"),_0x380c8[_0x318b0f(619,"eE]O")]=BALLOON_WIDTH,_0x380c8.height=BALLOON_WIDTH,_0x380c8[_0x318b0f(562,"grbN")]=10;const CONTAINER_STYLE_BOMB=_0x380c8,_0x370971={};_0x370971[_0x318b0f(585,"xxwd")]=BALLOON_WIDTH,_0x370971[_0x318b0f(610,"ccev")]=TOTAL_HEIGHT;const TOUCH_STYLE=_0x370971,_0x2a134e={};_0x2a134e[_0x318b0f(616,"4tLm")]=BALLOON_WIDTH,_0x2a134e[_0x318b0f(557,"(ija")]=TOTAL_HEIGHT;const CANVAS_STYLE=_0x2a134e,BalloonComponentInner=({balloon:t,onPop:o})=>{const W="qljX",e="]*Q2",r="WUd@",n=_0x318b0f,d={PhhNm:function(t,o,W){return t(o,W)},nEpxe:function(t,o){return t(o)},UIVaw:function(t,o){return t(o)},edaoM:function(t,o,W){return t(o,W)},KWSQq:function(t,o,W){return t(o,W)},JtFUS:function(t,o){return t*o},NFiMb:function(t,o){return t*o},pihNd:n(605,"hw8v")},_=d[n(531,"SA*j")](useSharedValue,t.position.x),O=useSharedValue(t.position.y),a=useSharedValue(t.rotation),x=useSharedValue(t.isPopped?0:1),f=useSharedValue(t[n(604,"V#93")]?0:1),i=useRef(generateStringPath(t.id)),s=useRef(t.id),C=d[n(614,"XLdI")](useRef,o);C[n(575,"]*Q2")]=o,d[n(579,W)](useEffect,()=>{const o=n;_[o(596,"b(r*")]=t[o(613,"&7dL")].x,O[o(554,"J%qy")]=t[o(601,"grbN")].y,a[o(498,"]*Q2")]=t[o(543,")8M*")]},[t[n(541,"V#93")].x,t.position.y,t[n(609,"qljX")]]),useEffect(()=>{const o=n;t[o(491,"udBT")]?(x[o(545,"r3T!")]=d[o(587,r)](withTiming,0,ANIMATION_CONFIG[o(558,"qljX")]),f[o(517,"SA*j")]=withTiming(0,ANIMATION_CONFIG[o(512,"O(qa")])):(x[o(596,"b(r*")]=d[o(506,"G)KU")](withSpring,1,ANIMATION_CONFIG[o(487,"7LWi")]),f[o(568,r)]=d[o(525,"mQn*")](withSpring,1,ANIMATION_CONFIG[o(518,")(6o")]))},[t[n(552,e)]]);const L=useAnimatedStyle(()=>{const t=n,o={};o[t(522,")(6o")]=_[t(568,"WUd@")];const W={};W.translateY=O[t(516,"udBT")];const e={};e.rotate=a[t(529,"0(3X")]+t(528,")tey");const r={};r.scale=x[t(516,"udBT")];const d={};return d.transform=[o,W,e,r],d[t(594,"0(3X")]=f[t(510,"ccev")],d}),T=t[n(488,"kXQw")]?CONTAINER_STYLE_BOMB:CONTAINER_STYLE_NORMAL,N=getBalloonColors(t),h=i.current,S=useCallback(()=>{const t=n;C[t(583,"grbN")]?.(s[t(566,")(6o")])},[]),k={};k.cx=CENTER.x,k.cy=CENTER.y,k.r=DANGER_CIRCLE_RADIUS,k.color=n(526,e);const u={};u.path=BOMB_DANGER_PATH,u.color="#FFFFFF",u[n(547,"ODx6")]=n(580,"OWA@"),u.strokeWidth=2.5,u[n(572,"WUd@")]=n(607,"z0cG");const I={};return I.cx=CENTER.x,I.cy=CENTER.y+4,I.r=1.5,I[n(584,"2QSK")]=n(608,"r3T!"),_0x32fd88(_0x48f954[n(576,"XV65")],{style:[T,L],children:_0x32fd88(TouchableOpacity,{onPress:S,activeOpacity:.8,style:TOUCH_STYLE,children:_0x21ba5a(Canvas,{style:CANVAS_STYLE,pointerEvents:"none",children:[d.edaoM(_0x32fd88,Group,{children:d[n(493,"z0cG")](_0x32fd88,Oval,{x:0,y:0,width:BALLOON_WIDTH,height:BALLOON_HEIGHT,children:d[n(511,"4tLm")](_0x32fd88,LinearGradient,{start:d[n(565,W)](vec,.2*BALLOON_WIDTH,0),end:vec(d.JtFUS(BALLOON_WIDTH,.8),BALLOON_HEIGHT),colors:[N[n(533,"b(r*")],N[n(567,"Edj[")],N.shadow]})})}),_0x32fd88(Oval,{x:.15*BALLOON_WIDTH,y:.1*BALLOON_HEIGHT,width:.35*BALLOON_WIDTH,height:.25*BALLOON_HEIGHT,color:n(560,"]*Q2"),opacity:.4}),_0x32fd88(Circle,{cx:d[n(551,"Sbwf")](BALLOON_WIDTH,.3),cy:.2*BALLOON_HEIGHT,r:d.NFiMb(BALLOON_WIDTH,.08),color:n(559,"%p(f"),opacity:.65}),_0x32fd88(Oval,{x:.25*BALLOON_WIDTH,y:d[n(597,"d%]k")](BALLOON_HEIGHT,.75),width:.5*BALLOON_WIDTH,height:.15*BALLOON_HEIGHT,color:N.shadow,opacity:.3}),!t[n(530,"XGwD")]&&!t[n(532,"Sbwf")]&&KNOT_PATH&&_0x32fd88(Path,{path:KNOT_PATH,color:N[n(520,"XLdI")]}),t[n(618,"NBH0")]&&_0x21ba5a(Group,{children:[_0x32fd88(Circle,k),_0x32fd88(Path,u),d[n(515,"YMCU")](_0x32fd88,Circle,I)]}),!t[n(582,"8&mt")]&&_0x32fd88(Path,{path:h,color:n(563,"G)KU"),style:d[n(527,"SA*j")],strokeWidth:1.5,strokeCap:n(546,W)}),t[n(489,"f]Vq")]&&_0x32fd88(Circle,{cx:CENTER.x,cy:CENTER.y,r:d.JtFUS(BALLOON_WIDTH,.6),color:"#FFFF00",opacity:.35})]})})})};export const BalloonComponent=_0x57f3d3[_0x318b0f(494,"%p(f")](BalloonComponentInner);
@@ -1 +0,0 @@
1
- "use strict";const _0x43b294=_0x5384;function _0x5384(e,t){e-=210;const W=_0x2f3a();let o=W[e];if(void 0===_0x5384.jnblhK){const e=function(e,t){let W,o,r=[],n=0,a="";for(e=function(e){let t="",W="";for(let W,o,r=0,n=0;o=e.charAt(n++);~o&&(W=r%4?64*W+o:o,r++%4)?t+=String.fromCharCode(255&W>>(-2*r&6)):0)o="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(o);for(let e=0,o=t.length;e<o;e++)W+="%"+("00"+t.charCodeAt(e).toString(16)).slice(-2);return decodeURIComponent(W)}(e),o=0;o<256;o++)r[o]=o;for(o=0;o<256;o++)n=(n+r[o]+t.charCodeAt(o%t.length))%256,W=r[o],r[o]=r[n],r[n]=W;o=0,n=0;for(let t=0;t<e.length;t++)o=(o+1)%256,n=(n+r[o])%256,W=r[o],r[o]=r[n],r[n]=W,a+=String.fromCharCode(e.charCodeAt(t)^r[(r[o]+r[n])%256]);return a};_0x5384.fCbdHl=e,_0x5384.tYwPyQ={},_0x5384.jnblhK=!0}const r=W[0];_0x5384.vVSshc!==r&&(_0x5384.tYwPyQ={},_0x5384.vVSshc=r);const n=_0x5384.tYwPyQ[e];return void 0===n?(void 0===_0x5384.MXfiZy&&(_0x5384.MXfiZy=!0),o=_0x5384.fCbdHl(o,t),_0x5384.tYwPyQ[e]=o):o=n,o}!function(){const e=_0x5384,t=_0x2f3a();for(;;)try{if(624340==-parseInt(e(277,"MH$o"))/1+parseInt(e(265,"3(T)"))/2*(parseInt(e(296,"*4YP"))/3)+-parseInt(e(377,"PEsF"))/4+-parseInt(e(427,"DHG("))/5*(-parseInt(e(213,"VpFB"))/6)+-parseInt(e(342,"TBHt"))/7+-parseInt(e(243,"zalN"))/8+-parseInt(e(291,"]qQc"))/9*(-parseInt(e(351,"6ZHn"))/10))break;t.push(t.shift())}catch(e){t.push(t.shift())}}();import _0x339537,{useCallback,useRef,useState,useEffect,useMemo}from"react";import{View,StyleSheet}from"react-native";import{Gesture,GestureDetector}from"react-native-gesture-handler";import _0x4720c8,{useSharedValue,useAnimatedStyle}from"react-native-reanimated";function _0x2f3a(){const e=["W6NdRSop","WQBdRmkDW7NcTM3dMq","rCoCW4/dHrevWPe","y1hcJSkWWQujbSk/W6S","sCkfW7H4W5FcUKK","WPldJHRdIJZcP8kfWPBdUG","WPutbCoyovddPa","WPbhW45zW6mK","W7TRyq","WQi4W5LcWQ8kn1G","WRddQCklW6RcP2BdVSoBBvm5","W7lcG8kw","rY4ffLe","pCk0uSoTfSkjW4q","WQaVW5HFWQyrnW","een2yga","W7xcN8kJW43cJmoB","W555W6RdU8k0WP0","W73dSd3cQc3dPG","t8kEW6j8W5tcPfu","wehcJSkmwYix","dLH+ztFdRmkohSoR","W4DFW6JdSmkJ","pSkuCWK","W7PTWPBdU8keW7GLW4hcGqC2WORcLHOg","b8keFCo0iq","W5RcPSoZlmoIW5tcSJe","WPfDW6TEW6iVWOK3pG","uqRdNNPv","tSomW5tdKbWp","W7BdOmolWRddVrBdVSkR","fmoHW5BdJ8osW4qvoq","WPtdQmkDW6pcNG","WQ3dSmkiW6pcV2RdISoqDG","rbOIjdHSfSkjAa","vXBdM2PPWOS","emk0WQJdJu0","vCoGaGiY","W5hdImo+WR/cOCkrW54","FbtdLMT0","jahdGmkBs8kst8oWWRdcRhtcU8kW","W4BdTmonWOtcJW","auz3Ba","W5pcOSk7rKXkjZlcUu/cK8knW5O","W5pcRqdcVCk9","W4JcQXFcRmkzACkwWPy","k8kmWRSE","W58QWOO8W4X7WQOWWRvu","WRO/xd/dVcHZ","wSkBW75MW5m","rmogW4xcMHOuWOSq","WPVcOmowCGpcTW","stboEmkoEqu","BmkcF8kAqmoZWQC","W7RdOCkcmv4","WReZW4DHWQOyk0K","gMxcU8kLCwDtgW","WRxdO8kzW4JcOa","aq/dMSomWQVcNG","WRe1W59dWQC","W40ic3X4","WPGUW55xWP8","W4ZcL0ZcM3FdLmoCWQRdGuzNqr8","WOhdUSoOdtWtDHtcS3G","W6H8Dd7cJXOcvNxcGq","p8kxWOldMKu","W5JdLCocWR/cSG","CNNcTSoCW47dJuS","p8kUtmoGgCkVW7SfW7lcRCkbsMeWW74","WPHcgCogW7BdSeG","gSkXW5DtW7dcJNy","WRJcQmoFxZ4","umk9ahVdNa","W7hcJCkr","uSoqW43dKG","uMRcQ8oz","WO3dGrJdMIS","aCoNeW","W6CHufddNSkX","pGKtW448WPzJ","oCkGumoxhq","WOpcJCk+W7tdT8ojWP9fdmkAWQFdLmof","WQ7dMmozWPFdL8kjWPLLWRrdhf3dQa","WPldKZBdGcpcGG","sSk1bfC","BYKcguJcK8oWCSkiv8kiWO4","WOhdP8o7drOszG","W4hdNSoTWQhcOq","fHhcHMJcICoSASkozCk0WOCR","W4VcVmo1p8oZW5pcQq","lCk2WQZdMvfWWO5rE0O","W6H8Dd7cJXOcvNxcGa","fdxdHmoRWPm","W6qMqL3dHCkVWQlcJG","W4RdHmoaWRFcPq","vmkwW6nYW5/cPNZcOfvx","W4hdLmopo0HmiG","WQFdJa/dUmkCWPRdUG","uvBdMshdQmkWx8kKDCkAWPGeWP8zWP4","WPxdUSoGcXO","tXddUgftWPhdIa","W58YaZ4kW4e","xWZdMwjk","WOKXW75yWOK","cSogWQuNW5pcQxVcPMLN","cCklWP0","Cg7cUmoyW5ZdI1CAWRC2mt3dKf4hW5BdSfaWW40","W4pcOra","W6bQWPODW7npCW","E8oXcH0sc2Dr","mgZdRdjqW7mh","WPu/wZy","W6ldU8osWOpdUq","fmkqBc7dIwCqvmoDW6/cIa","W4vuW6ddK8k4WOmz","W6BdN8kPW47cLJVcLq","W6XTagRcONnrn8oWuHbF","W5jQWPhdTmkD","W57dVCkomLldSCoi","W5vjWRFdMa","f8oRW4BdICoiW4KBjqi","W547WOS2W5nD","W446WOSRW51wWRe","WRu7W4zyWQy","W73dUd7cGcVdRmowWQ0","WQ0mW5PqWR3dL8kU","rCkRWPzlWOP3W6q","eCkwWRLYda","cqKOW5uj","BConW4tdNIa","WQtcSCo0DbKaW7NdULTRWPHZW4K","nXqVW44V","oMRdNc9yW78","W5avW63cTcPSWOi","jSkYBmoogCk6W74eW7O","WP1OuMOOW5ZcI8krWRTX","W797zYlcMrGx","W7pcTshcKCk/","WONdIrNdOYFcH8kbWO0","W5/cOCoUoCoZ","W5/dKSo6WQJcKmkq","W6Gvgw1I","iCkUuSoh","W7hcJCktW4xcImoxW71DWPi","W6pdRmk4dez7WQhdKwv9WQbzW4RcPmoh","WO/cPSopAai","zCotW6ddJ0y","W7O9mKLbCW","WPhdTcNcU8k6rmksWQC","W6bRWPpdMCkU","W4jCWPBdRSk5","W7W0p19bsq","WO3cU8otAWFcT8kf","W4a1et8PW5/cTCkc","y1/cISkYWPGi","fmkqBd/dNgOixG","W5ldImkeifO","W5r0pSoJW5NdGNC","B8o4bHWYcG","h2j+uhW","W6LkWQddP8kz","aaFdHSooWPBcNWXTlmoY","W4ldJ8oLWQdcPCknW5m","W6pdQSkTl00","amoNfmkStsmNr8o2BG","W4pcPqNcRmkuCSkvWPi","W44xdG","WQCkW6PnWRBdJmkP","W43cTZtcPSkLCmkvWPC","sSk7bvNdTKxdNKqyymkTWPRcPMui","jmkSWPW3W7uaWPRcQCoZW7/dT8k1vmo3WO0","W7DHWRNdSCkh","W4FcTGhcQmkHzCkIWPlcNfNdRSouxKLwsSoOw8k0","W5lcPqJcVmkW","lX0f","W4Kkd01W","WQS7rbZdVqT0hCo9xbrDW7TzWR0","bhBdQZv5","WQW0W69dWQC","WO8fjmoyouhdTSoDWRC","xHGViMNcHa","p8onCshcGd7cPuGwwSkuWOtcKq","vrpdLMDj","D1/cN8k7WRS","bf9GzM0YuG","WO1gW61yW70QWO8Rl8kc","W50VaZ4XW5K","W7DIWPiAW7jiCMxdR8olBCkvWPG","lGGoW4WjWPbUWQuQWP0/cLFdK8o/","fY/dMSonWPRcIq","WPeaW4NdRCk+WQeEW6a","pbGfW744WPr7WRKSWPaykwRdMCoP","W5bjW7tdUG","nmo6W5pdPXCtgq","h8oNcSkM","dcfoACk3BWJdRmkswZVdLCk4WPddN8osACktEG","W6NcGSktW4FcHSoqW5PgWODAa0ldSmoii8o+qsJdRqRcMSoP","W4pcPmorhSo3","W4nvW7a","xG06","aCoQbSkTvHC","WPpdHr3dIcBcLa","ACkwW6v9","WQhcU8o8C2vDWPddLgfK","W6BdOHhcOY/dQq","y8ooW7tdJ1fgpmoTW4ddSW","rqePpwVcTCozrCkV","W4ldSdJcQq","vmovjI4e","WQnWW7rrW6a","j2VdVY5gW7esfHFcIG","cSo7k8kZwa","W6BcIYNcIW","CMtcRmoyW5VdLL0g","WOFcGIlcJmoLnmoe","W7BcVrtcM8kV","Au5zWOLOW4KHWQ8sWRKechC","W60/W65NWPRcISky","W4/cRmoZhSoIW5ZcQtO","W41dW4BdSmk/WPap","e8oMa8klwaWKrCo7B8kxCf3dVSk2","W5yiFxJdVSkjWOpcV8k9WPpcMcKDqtS","W69Ryq"];return(_0x2f3a=function(){return e})()}import{Canvas,Oval,Circle,Path,Skia,vec,LinearGradient,RadialGradient,Group}from"@shopify/react-native-skia";import{useBalloonBlasterStore,useIsPlaying,useGameOver}from"../BalloonBlasterStore.js";import{GAME_CONFIG}from"../BalloonBlasterService.js";import{playSound,GAME_SOUNDS}from"../../../services/SoundsService.js";import{playHaptic,HapticType}from"../../../services/HapticsService.js";import{ParticleBlast}from"../../../helpers/index.js";import{lighten,darken}from"../../../services/GamesConstants.js";import{setGameInterval,clearGameInterval}from"../../../helpers/GameTimer.js";import{jsx as _0xb0915d,jsxs as _0xb14eb3}from"react/jsx-runtime";const PARTICLE_COUNT=6,PARTICLE_DURATION=600,BALLOON_SIZE=GAME_CONFIG[_0x43b294(246,"mLbi")],BALLOON_HEIGHT=1.25*BALLOON_SIZE,TOTAL_HEIGHT=BALLOON_HEIGHT+Math[_0x43b294(220,"e[7$")](BALLOON_SIZE/60*30),BALLOON_WIDTH_OFFSET=BALLOON_SIZE/2,BALLOON_HEIGHT_OFFSET=BALLOON_HEIGHT/2,SCALE=BALLOON_SIZE/60,STRING_LENGTH=Math[_0x43b294(306,"%Dz&")](30*SCALE),DANGER_CIRCLE_RADIUS=Math.round(10*SCALE),CENTER_X=BALLOON_SIZE/2,CENTER_Y=BALLOON_HEIGHT/2,PAD=6,PADDED_W=BALLOON_SIZE+12,PADDED_H=TOTAL_HEIGHT+12,_0x5a3281={};_0x5a3281[_0x43b294(374,"FA20")]=_0x43b294(393,"e[7$"),_0x5a3281[_0x43b294(399,"aelK")]=PADDED_W,_0x5a3281[_0x43b294(413,"ENXr")]=PADDED_H,_0x5a3281[_0x43b294(256,"3(T)")]=-6,_0x5a3281[_0x43b294(304,"zalN")]=-6,_0x5a3281[_0x43b294(350,"i(aY")]=5;const CONTAINER_STYLE_NORMAL=_0x5a3281,_0x5b171b={};_0x5b171b[_0x43b294(415,"LmWp")]=_0x43b294(217,"fz*i"),_0x5b171b[_0x43b294(428,"Q^85")]=PADDED_W,_0x5b171b[_0x43b294(362,")ZJL")]=PADDED_H,_0x5b171b[_0x43b294(322,"i(aY")]=-6,_0x5b171b[_0x43b294(387,"ItNC")]=-6,_0x5b171b[_0x43b294(401,"6ZHn")]=10;const CONTAINER_STYLE_BOMB=_0x5b171b,_0x421046={};_0x421046.width=PADDED_W,_0x421046.height=PADDED_H;const TOUCH_STYLE=_0x421046,_0x473e8d={};_0x473e8d[_0x43b294(412,"oG*l")]=PADDED_W,_0x473e8d[_0x43b294(413,"ENXr")]=PADDED_H;const CANVAS_STYLE=_0x473e8d,_0x8bdc0a={};_0x8bdc0a[_0x43b294(366,"&P3G")]=6;const _0x5b143b={};_0x5b143b[_0x43b294(346,"^H)u")]=6;const CANVAS_GROUP_TRANSFORM=[_0x8bdc0a,_0x5b143b],_0x58159e={};_0x58159e[_0x43b294(323,"1a8D")]="#1a1a1a",_0x58159e[_0x43b294(281,"LmWp")]="#333333",_0x58159e[_0x43b294(411,"^H)u")]="#555555",_0x58159e.shadow=_0x43b294(269,"e[7$"),_0x58159e[_0x43b294(285,"h(eK")]=_0x43b294(279,"%Dz&"),_0x58159e[_0x43b294(389,")ZJL")]=_0x43b294(258,"WEjB");const BOMB_COLORS=_0x58159e,_0x179887={};_0x179887[_0x43b294(313,"%Dz&")]=_0x43b294(257,"DHG("),_0x179887.secondary=_0x43b294(378,"Zk7J"),_0x179887[_0x43b294(417,"m52]")]=_0x43b294(354,"&P3G"),_0x179887[_0x43b294(319,"]rX%")]=_0x43b294(214,"c@ud"),_0x179887[_0x43b294(299,")ZJL")]=_0x43b294(276,"m52]"),_0x179887[_0x43b294(389,")ZJL")]=_0x43b294(375,"Q^85");const BONUS_COLORS=_0x179887,colorCache=new Map,getBalloonColors=e=>{const t=_0x43b294,W={WouuL:function(e,t,W){return e(t,W)},OMcFL:function(e,t,W){return e(t,W)}};if(e[t(391,"^H)u")])return BOMB_COLORS;if(e[t(390,"&2GI")])return BONUS_COLORS;const o=e[t(235,"ENXr")].color||t(287,"UA@0");let r=colorCache[t(392,"e^$Y")](o);return!r&&(r={primary:o,secondary:lighten(o,.3),highlight:W[t(338,"CBMf")](lighten,o,.6),shadow:W.OMcFL(darken,o,.4),rimLight:W[t(332,"tjk4")](lighten,o,.45),innerGlow:lighten(o,.15)},colorCache[t(360,"mLbi")](o,r)),r},HIGHLIGHT_GRADIENT=[_0x43b294(231,"3(T)"),"#FFFFFF00"],KNOT_PATH=(()=>{const e=_0x43b294,t={};t[e(289,"PEsF")]=function(e,t){return e-t},t.QqrhM=function(e,t){return e-t},t.GHVzQ=function(e,t){return e+t};const W=t,o=Skia.Path[e(272,"MH$o")](),r=CENTER_X,n=W.TuIiP(BALLOON_HEIGHT,2);return o[e(315,"ItNC")](r-4,n),o[e(419,"oG*l")](W[e(416,"m52]")](r,2),n+5,r,W[e(264,"Zk7J")](n,7)),o[e(347,"*4YP")](r+2,n+5,r+4,n),o[e(210,"3(T)")](),o})(),BOMB_DANGER_PATH=(()=>{const e=_0x43b294,t={};t[e(233,"TBHt")]=function(e,t){return e-t},t[e(396,"mLbi")]=function(e,t){return e+t};const W=t,o=Skia[e(363,"3(T)")][e(368,"h(eK")]();return o.moveTo(CENTER_X,W[e(310,"tjk4")](CENTER_Y,5)),o.lineTo(CENTER_X,W[e(278,"tjk4")](CENTER_Y,1)),o})(),stringPathCache=new Map,getStringPath=e=>{const t=_0x43b294,W={ySpBl:function(e,t){return e+t},PWwPz:function(e,t){return e(t)},YqcND:function(e,t){return e+t},vZFxX:function(e,t){return e+t}};let o=stringPathCache[t(268,"Q^85")](e);if(o)return o;o=Skia.Path[t(430,"UA@0")]();const r=CENTER_X,n=BALLOON_HEIGHT-2,a=e[t(343,"oG*l")]("").reduce((e,W)=>e+W[t(224,"DHG(")](0),0),d=e=>(a+17*e)%100/100;o.moveTo(r,n);const _=STRING_LENGTH/2;for(let e=1;e<=2;e++){const a=n+_*e,i=W[t(253,"i(aY")](2,2*d(e)),O=(W.PWwPz(d,e+10)-.5)*i,s=W.YqcND(r,O),l=r+(d(W.vZFxX(e,20))-.5)*i*.5,x=a-.5*_;o.quadTo(l,x,s,a)}return stringPathCache[t(383,"e^$Y")](e,o),o};export const GameArea=_0x339537[_0x43b294(280,"tjk4")](({service:e,enableSounds:t=!0,enableHaptics:W=!0})=>{const o="]rX%",r="0vze",n="6ZHn",a=_0x43b294,d={vMGAW:function(e,t){return e<t},zaEYw:function(e,t){return e*t},VWvuG:function(e,t){return e!==t},PuREp:function(e,t){return e+t},kmVSa:function(e,t){return e(t)},QfzPR:function(e,t){return e(t)},LCLcI:function(e,t,W){return e(t,W)}},_=d[a(358,"(8Og")](useRef,t),i=useRef(W);_[a(345,"aelK")]=t,i[a(297,"e^$Y")]=W;const[O,s]=d[a(321,"tjk4")](useState,0),l=useRef([]),[,x]=useState(0);useEffect(()=>{const t=a,W={WqEXj:t(420,"]Hki"),rCzQR:function(e,t){return e(t)}};return e[t(337,"MH$o")](()=>{const e=t;if(e(421,"]rX%")!==W[e(298,"Q^85")]){const t=_0x38ad6a[e(236,"FA20")][e(407,"WlI9")]();return t[e(301,"1a8D")](_0x5c7f73,_0x54628a-5),t[e(219,"i(aY")](_0x7f7116,_0x8656ea+1),t}W[e(376,"WEjB")](s,e=>e+1)}),()=>{e[t(305,"]qQc")](()=>{})}},[e]);const u=useIsPlaying(),S=useGameOver();useEffect(()=>{const t=a;if(u&&!S)return e[t(356,"VpFB")](),()=>{e[t(259,"$aPZ")]()}},[u,S,e]),useEffect(()=>{if(!u||S)return;for(let t=0;d.vMGAW(t,3);t++)setTimeout(()=>{const t=_0x5384;if(useBalloonBlasterStore[t(379,"(8Og")]().isPlaying){const W=e[t(333,"Q^85")]();e[t(381,"r@)l")](W)}},d.zaEYw(t,100));const t=setGameInterval(()=>{const t=_0x5384;if("sfPku"!==t(370,"^H)u")){if(useBalloonBlasterStore[t(316,"WlI9")]().isPlaying){const W=e.createRandomBalloon();e[t(352,"PEsF")](W)}}else _0x579b43(_0x3cf3f2[t(382,"%oWQ")][t(373,"Q^85")],_0x373b25[t(271,"CBMf")]),W=_0x9e3af1,o=_0x594abc[t(409,"c@ud")],r=_0xf13386.current,W(o,r),_0x2c7645[t(429,"Q^85")](),_0x3ec6ef[t(325,"r@)l")]();var W,o,r},GAME_CONFIG.BALLOON_SPAWN_INTERVAL);return()=>clearGameInterval(t)},[u,S,e]);const L=useCallback(t=>{const W=a,O=useBalloonBlasterStore[W(379,"(8Og")]();if(!O[W(295,"c@ud")]||O[W(270,o)])return;const s=e[W(229,"c@ud")](t);if(s&&(s[W(365,"h(eK")]?(playSound(GAME_SOUNDS[W(408,"tjk4")][W(245,"TBHt")],_[W(250,"(8Og")]),playHaptic(HapticType[W(369,o)],i[W(386,"ENXr")]),O[W(314,"*4YP")](),O[W(431,r)]()):s[W(380,n)]?d[W(222,"Zk7J")]("EaeYX",W(232,"%Dz&"))?_0x409085[W(349,"PEsF")]():(playSound(GAME_SOUNDS[W(331,"UA@0")][W(266,"]Hki")],_.current),playHaptic(HapticType.LIGHT,i[W(398,"e[7$")]),O[W(275,n)]()):(playSound(GAME_SOUNDS[W(330,"TBHt")][W(327,"crt@")],_[W(283,r)]),playHaptic(HapticType.LIGHT,i.current),O[W(394,"m52]")](100)),d[W(302,"crt@")](l.current.length,8))){const e=W(312,"crt@")+Date[W(395,"zalN")]()+"_"+Math[W(402,"h(eK")](),t=s[W(254,"%oWQ")].x+BALLOON_WIDTH_OFFSET,o=d.PuREp(s[W(415,"LmWp")].y,BALLOON_HEIGHT_OFFSET),r={};r.id=e,r.x=t,r.y=o,l[W(247,"DHG(")]=[...l[W(422,"1a8D")],r],x(e=>e+1)}},[e]),C=useRef(new Map),k=useCallback(e=>{const t=a;let W=C.current[t(359,"6ZHn")](e);return!W&&(W=()=>{const W=t;l[W(294,"*]Fj")]=l[W(345,"aelK")][W(212,"%Dz&")](t=>t.id!==e),C[W(386,"ENXr")][W(308,"crt@")](e),x(e=>e+1)},C.current[t(238,"r@)l")](e,W)),W},[]),N=d[a(288,"u#ZE")](useMemo,()=>[...e[a(274,"WlI9")]()],[e,O]);return _0xb14eb3(View,{style:styles[a(326,"Q^85")],pointerEvents:a(211,"ENXr"),children:[N[a(234,"zalN")](t=>_0xb0915d(BalloonItem,{balloon:t,service:e,onTap:L},t.id)),l[a(286,"Zk7J")][a(384,"rClv")](e=>_0xb0915d(ParticleBlast,{x:e.x,y:e.y,particleCount:6,duration:600,onComplete:k(e.id)},e.id))]})});const BalloonItem=_0x339537[_0x43b294(355,"r@)l")](({balloon:e,service:t,onTap:W})=>{const o="1a8D",r=_0x43b294,n={xHlDt:function(e,t){return e(t)},GWnmb:function(e,t){return e(t)},jhNrv:function(e,t,W){return e(t,W)},tIAIK:r(303,"c@ud"),WRQaE:r(405,"mLbi"),xyLza:function(e,t,W){return e(t,W)},USnsj:function(e,t){return e-t},KdyiT:function(e,t){return e*t},yoclw:function(e,t,W){return e(t,W)},pzvCs:function(e,t){return e*t},ftmRp:function(e,t){return e*t},OvoFj:r(300,"(8Og"),BAHcr:function(e,t,W){return e(t,W)},ZwleI:r(307,"&P3G"),SPUPM:function(e,t){return e+t},fSOmg:r(318,"fkzZ"),zpLYr:r(404,"fz*i")},a=n[r(320,"aelK")](useSharedValue,e[r(341,"mLbi")]),d=n.xHlDt(useSharedValue,e.spawnY),_=n.GWnmb(useSharedValue,e[r(414,"rClv")]),i=useSharedValue(e[r(329,"Q^85")]?0:1),O=useSharedValue(e.isPopped?0:1);useEffect(()=>{const W=r,o={};return o[W(225,"e^$Y")]=a,o[W(252,"e^$Y")]=d,o[W(410,"(8Og")]=_,o[W(324,"]qQc")]=i,o[W(230,"fkzZ")]=O,t[W(267,"FA20")](e.id,o),()=>{t[W(357,"zalN")](e.id)}},[e.id,t,a,d,_,i,O]);const s={};s[r(371,"CBMf")]=a[r(284,"e[7$")];const l={};l[r(251,"]Hki")]=d[r(237,")ZJL")];const x={};x.rotate=_[r(237,")ZJL")]+r(335,"PEsF");const u={};u[r(248,o)]=i[r(241,"c@ud")];const S=useAnimatedStyle(()=>({transform:[s,l,x,u],opacity:O[r(334,"Q^85")]})),L=e[r(293,"CBMf")]?CONTAINER_STYLE_BOMB:CONTAINER_STYLE_NORMAL,C=useRef(e.id),k=useRef(W);k[r(297,"e^$Y")]=W;const N=n[r(215,"]qQc")](useMemo,()=>Gesture.Tap()[r(339,"e[7$")](()=>{const e=r;k[e(385,"m52]")](C[e(240,"PEsF")])})[r(397,"c@ud")](!0),[]),E=useMemo(()=>getBalloonColors(e),[e[r(400,"zalN")],e[r(261,"oG*l")],e[r(353,"6ZHn")][r(406,"6ZHn")]]),m=useMemo(()=>getStringPath(e.id),[e.id]);return _0xb0915d(_0x4720c8.View,{style:[L,S],children:n[r(292,"PEsF")](_0xb0915d,GestureDetector,{gesture:N,children:_0xb0915d(View,{style:TOUCH_STYLE,children:_0xb0915d(Canvas,{style:CANVAS_STYLE,pointerEvents:n[r(425,"1a8D")],children:_0xb14eb3(Group,{transform:CANVAS_GROUP_TRANSFORM,children:[_0xb0915d(Oval,{x:.1*BALLOON_SIZE,y:.05*BALLOON_HEIGHT+3,width:.8*BALLOON_SIZE,height:.9*BALLOON_HEIGHT,color:"#000000",opacity:.12,children:_0xb0915d(RadialGradient,{c:vec(CENTER_X,CENTER_Y+3),r:.5*BALLOON_SIZE,colors:[n[r(336,"crt@")],r(418,"aelK")]})}),_0xb0915d(Oval,{x:0,y:0,width:BALLOON_SIZE,height:BALLOON_HEIGHT,children:_0xb0915d(LinearGradient,{start:vec(0,0),end:n[r(372,"r@)l")](vec,BALLOON_SIZE,BALLOON_HEIGHT),colors:[E[r(216,"e[7$")],E[r(228,"FA20")],E[r(361,"r@)l")]]})}),_0xb0915d(Oval,{x:2,y:2,width:n.USnsj(BALLOON_SIZE,4),height:BALLOON_HEIGHT-4,children:_0xb0915d(LinearGradient,{start:vec(.15*BALLOON_SIZE,0),end:vec(n[r(290,"ENXr")](BALLOON_SIZE,.85),BALLOON_HEIGHT),colors:[E.highlight,E[r(340,"&2GI")],E[r(388,"3(T)")],E[r(262,"*4YP")]]})}),_0xb0915d(Oval,{x:.12*BALLOON_SIZE,y:.08*BALLOON_HEIGHT,width:.76*BALLOON_SIZE,height:.6*BALLOON_HEIGHT,children:_0xb0915d(RadialGradient,{c:vec(.85*CENTER_X,.3*BALLOON_HEIGHT),r:.45*BALLOON_SIZE,colors:[E[r(367,"mLbi")]+"60",E.innerGlow+"00"]})}),n[r(344,"ItNC")](_0xb0915d,Oval,{x:.18*BALLOON_SIZE,y:.08*BALLOON_HEIGHT,width:.38*BALLOON_SIZE,height:n[r(218,"m52]")](BALLOON_HEIGHT,.28),color:r(260,"DHG("),opacity:.55,children:_0xb0915d(RadialGradient,{c:vec(n[r(273,"rClv")](BALLOON_SIZE,.35),.18*BALLOON_HEIGHT),r:.22*BALLOON_SIZE,colors:HIGHLIGHT_GRADIENT})}),n[r(255,o)](_0xb0915d,Circle,{cx:.28*BALLOON_SIZE,cy:.16*BALLOON_HEIGHT,r:.05*BALLOON_SIZE,color:n.OvoFj,opacity:.9}),_0xb0915d(Oval,{x:.3*BALLOON_SIZE,y:.78*BALLOON_HEIGHT,width:.4*BALLOON_SIZE,height:.12*BALLOON_HEIGHT,color:"white",opacity:.15}),_0xb0915d(Path,{path:KNOT_PATH,color:E[r(239,"%oWQ")]}),e[r(244,")ZJL")]&&n[r(263,"oG*l")](_0xb14eb3,Group,{children:[_0xb0915d(Circle,{cx:CENTER_X,cy:CENTER_Y,r:DANGER_CIRCLE_RADIUS,color:"#FF0000"}),n[r(317,"]qQc")](_0xb0915d,Path,{path:BOMB_DANGER_PATH,color:r(318,"fkzZ"),style:"stroke",strokeWidth:2.5,strokeCap:n[r(423,"oG*l")]}),_0xb0915d(Circle,{cx:CENTER_X,cy:n[r(221,"crt@")](CENTER_Y,4),r:1.5,color:n[r(226,"]Hki")]})]}),_0xb0915d(Path,{path:m,color:"#8B7355",style:r(282,"0vze"),strokeWidth:1.5,strokeCap:n.ZwleI}),e[r(328,"Zk7J")]&&n[r(227,"1a8D")](_0xb0915d,Circle,{cx:CENTER_X,cy:CENTER_Y,r:.45*BALLOON_SIZE,color:n[r(311,"tjk4")],opacity:.35})]})})})})})},(e,t)=>e[_0x43b294(432,"MH$o")].id===t.balloon.id),_0x42ef69={};_0x42ef69[_0x43b294(426,"aelK")]=1,_0x42ef69.overflow=_0x43b294(403,"3(T)");const _0x5a5bea={};_0x5a5bea.gameArea=_0x42ef69;const styles=StyleSheet.create(_0x5a5bea);
@@ -1 +0,0 @@
1
- "use strict";const _0x1444f8=_0x26a9;!function(){const t=_0x26a9,o=_0x507b();for(;;)try{if(780352==parseInt(t(274,"NoQb"))/1+parseInt(t(372,")e[k"))/2+parseInt(t(376,"voX!"))/3*(parseInt(t(218,"rjCB"))/4)+parseInt(t(263,"lwiA"))/5+-parseInt(t(325,"[L@A"))/6*(parseInt(t(266,"[L@A"))/7)+parseInt(t(273,"XIdA"))/8*(-parseInt(t(242,"iCMN"))/9)+-parseInt(t(289,"*xBf"))/10)break;o.push(o.shift())}catch(t){o.push(o.shift())}}();import{c as _0x510e74}from"react/compiler-runtime";import _0x573a62,{useMemo}from"react";import{Dimensions,View}from"react-native";import{Canvas,LinearGradient,Rect,Circle,Path,Skia,vec,Group}from"@shopify/react-native-skia";function _0x507b(){const t=["hbbeFCoPbCkjaCovbKRcM8kHW5DfWORdLCorW4BdK8kNWRi","iCkuWPSRWRTFvW","sIjqkKDyW6vIyY1yWQK","WO0nWRdcNmkS","C0yjeSkph8oIW48Gya","rJlcTCkxxuhdUW","W7zfACknsCkRW7OuWRe","amkriCk1W7ldH3BcOCoTCfbzWPm","W5TPW6PLW68","W7BcOmolFG","A8oEjqBcP2G","wmkuWRO8WP4","m8oJW6TDWQO0idpdHgy","W6u0rZxcOCkkWPP+tXZcQd4","Ds7dK2e5","WPJdGSodg8krWQW4","WQ8BWR0","WOdcJCoAE3i","W5awrWVdMq","W6XkWOldKdO","WP97W45iW6ZdGSkC","vmkKWReesWyHrGZcSbqFWRJcKaVdGcRdU8k+W6vIW4i","wLeztb4","cNTW","wLyKvq","mGWuuMxcKSkLxhrtWOVcNSok","W4NdP8kzp8knW50XW4rMWOJcLCoDoSo3WQ7cUMFcPq/dIW","gvqTArW","vri9W7NcTSkVW5zAzudcL0pdIG","gx81W4lcNmoqW7RcJ0/cO2FcKa","BSk3WRSzWQu","WO3cTfZcK8oa","twzry0CrWOfYaZa4","DfbWCW","amkgiCkRW6m","W5dcJ8k5oCoiW6BcLSkl","s0jOW5qRW6lcHG","eujPWQ7cRCkQW5mmbtJdOa7cP8oSW5SYf8olWP/cNW","WPdcOCkwe8oQW5ldGW","tehdSCoVW7u","wJWFWQuTW6FdPHFcGG11W4K","W5JdRSkbW4FcMW","W5eSvsNdTmoWbSoUWPNcGZXxAW","auysWONcG8kdW43dSCkMWQnIW4z5WOldHmkRWPtcHSomW5hcRSoV","B0JdJ8ooW5q","WRKDWRJcLSkRWOdcQG","dxm1W5lcLSov","thvyW6vy","eIBcNSkIxMVdOa","vmkKWReesWuKqWZcSXeAWRJcKaVdGcRdU8k+W6z/","WPjBWPJcTKK","d8kqW7r6W5W","BIlcMmk3W59IWP4","yCk9WQ4","WR1VW5FcPctdNSopWQ8","gColrHC","C8oat8kDW5a","W4D6W6PQW6pdRSkN","WOvKo3ZdHG","W7RdG8ksW4/cPmofeNSGymk6ghW","W4NdKSkigmoN","hWxdVmkvWQu","f2OaFb8zW4W","W5lcGCkwpSof","qNldGCoGdYdcItareSo+xYC","BthcQG8Zxv0","W6FdPCkYA8kI","oHJcNbi","dr9pCmkLrSoBxW","WQGpW6eOWQ4","hHhcU8kKFG","lCkBC8kwxa","g3bpW6jOWPBdNWJcPa1iW78A","W7FcRXJcUwe","WQCjW6mIWOHj","pblcJsHWqWddJSoWWQddSN/cGrjbW4FdSSk1WOdcMNpcVmoEW5nW","CK8mh8kbbG","gxGsCbOyW4fR","CfnadZNdKmoi","pSkek8kI","tuhdUa","W4dcJ8kXmCodW6pcV8kant7dTG","BmklB8kcW48","fI3cPcPq","CvPfaJFdIq","lCk5umkjCa","WOSzr8ksW5fptmoIk2Kq","lmoLzGddRa","egfwW69eW6Lq","W4qwh3BdQq","aqDhF8kOqmoh","WOSewW","qerXWRTI","b1mrWOBdMmocWPJcS8oVW7WU","tuVdT8oRW6q","C1HGBYq","hbjhF8k1gSotvmkuwcZdImoSWOyCW5/cPSksWO3cICoMW7lcNhyX","W61BWPFdRIFdG8offq","b8opraRdPSoD","WP3cSLpcI8oaW5pcObhdJCo7y8oY","r8kAefddNSogWOfflse","zvrt","dKbMWQa","meCvf2BdM8kJDGK","sSkMWRurmvvWgLxdSq","W7tcRq3cVq","DgbFcZ8","iamwkbpdOSot","WQGmW53cI3RdRSoWpaBcLW4","WRzSW6NcOJe","FhnqW6fB","W7PxWRH+W68tCmoinSkcWQxcG8kU","vSkAzchcV8o1WOm","WRKbWRJcGmkW","chSIW7RcNmomW4/cMKm","cYrwW696W5novq","yxavuJ4","u1PvaW","W61tWONdKtRdVW","waNdJh0EWOK","d8o2zIBdPa","W4dcHmkXoCoj","DSo2jCoTW54oW6WQtmoDnW","hhuP","W7/dVmk3FmkJWQpcNq","qu53WR9ZWOSbcYRdRtu","W5BdOCkl","W4NdOCkceSoaWOrMWPW/","xLGG","kaJcTSk1ua","qNbPhIy","sepdUSosW59Vvtm","W7LwWOVdGq","ncVdJCkyWPq","q0ddHmouW4O","lr/cHsDGhWJdHq","mgvGW6Ll","WRNcQCocweZdKSkJfq","fZ7cOaDZ","aeirWOtdJG","ymoDbqZcS28v","BLPr","W6JcQr/cOvymWO/dHIH/","W7XcW6/dHmo3W4ddG3C8tSooWQFdVq","mf5MW7fi","lCkUq8kkFSoRCSouW53cHL8","W6C3WRxdVHRdG8o/WRdcSCkL","W5jWW4dcNh3cUfe","sXbcW5JcM8khWPJcJmoNW5yPWPK","tSk0W5hdI1e","aHpcOq1j","jZXnvSkl","l8okWONcThpcQq","sxqJBIq","WPC5xG","WQKAWRxcNCk2","WPBcU37cMSolW5xcLWldSa","W5ifWRhdOaVcUfe","D1jLDYK","tSkKvSkhW7a","pbBcLrXTcrNdGW","wwq7tWe","i2GUmSoxwmkg","wumXtXVcRML7WQWDWQhcOxa","auGxWOddN8oGWPJcPCoJW6CP"];return(_0x507b=function(){return t})()}import{jsx as _0x50601b,jsxs as _0x13944c}from"react/jsx-runtime";const{width:width,height:height}=Dimensions.get(_0x1444f8(307,"br5m")),_0x5f0307={};_0x5f0307[_0x1444f8(228,"AF3a")]=1;const CONTAINER_STYLE=_0x5f0307,_0x4d7d0c={};function _0x26a9(t,o){t-=218;const e=_0x507b();let W=e[t];if(void 0===_0x26a9.RLUlWz){const t=function(t,o){let e,W,r=[],n=0,i="";for(t=function(t){let o="",e="";for(let e,W,r=0,n=0;W=t.charAt(n++);~W&&(e=r%4?64*e+W:W,r++%4)?o+=String.fromCharCode(255&e>>(-2*r&6)):0)W="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(W);for(let t=0,W=o.length;t<W;t++)e+="%"+("00"+o.charCodeAt(t).toString(16)).slice(-2);return decodeURIComponent(e)}(t),W=0;W<256;W++)r[W]=W;for(W=0;W<256;W++)n=(n+r[W]+o.charCodeAt(W%o.length))%256,e=r[W],r[W]=r[n],r[n]=e;W=0,n=0;for(let o=0;o<t.length;o++)W=(W+1)%256,n=(n+r[W])%256,e=r[W],r[W]=r[n],r[n]=e,i+=String.fromCharCode(t.charCodeAt(o)^r[(r[W]+r[n])%256]);return i};_0x26a9.xOIVVZ=t,_0x26a9.BaonrP={},_0x26a9.RLUlWz=!0}const r=e[0];_0x26a9.guGdAE!==r&&(_0x26a9.BaonrP={},_0x26a9.guGdAE=r);const n=_0x26a9.BaonrP[t];return void 0===n?(void 0===_0x26a9.PjVLsL&&(_0x26a9.PjVLsL=!0),W=_0x26a9.xOIVVZ(W,o),_0x26a9.BaonrP[t]=W):W=n,W}_0x4d7d0c[_0x1444f8(233,"dV*V")]=_0x1444f8(338,"lwiA"),_0x4d7d0c[_0x1444f8(224,"2f[z")]=0,_0x4d7d0c[_0x1444f8(316,"^xz0")]=0,_0x4d7d0c[_0x1444f8(300,"QOcR")]=0,_0x4d7d0c.bottom=0,_0x4d7d0c[_0x1444f8(356,"HMkU")]=width,_0x4d7d0c.height=height;const CANVAS_STYLE=_0x4d7d0c,SKY_GRADIENT_COLORS=[_0x1444f8(253,"QB41"),_0x1444f8(373,"^xz0"),_0x1444f8(368,"USEd"),_0x1444f8(276,"7ixP"),_0x1444f8(243,"QB41"),"#FFF5E0"],HAZE_COLOR="rgba(255,248,230,0.25)",HILL_FAR_COLOR=_0x1444f8(304,"QBvR"),HILL_MID_COLOR=_0x1444f8(310,"O5rj"),HILL_NEAR_COLOR=_0x1444f8(287,"7ixP"),sunCoreColors=[_0x1444f8(299,"akK6"),_0x1444f8(262,"XIdA"),_0x1444f8(297,"I(om"),"#FFA500",_0x1444f8(349,"$CZl")],outerGlowColors=[_0x1444f8(298,"*xBf"),_0x1444f8(282,"O5rj"),_0x1444f8(354,"QBvR")],CLOUD_SHADOW=_0x1444f8(261,"W]g]"),CLOUD_BODY="rgba(255,255,255,0.8)",CLOUD_HIGHLIGHT="rgba(255,255,255,0.95)",buildHillPath=(t,o,e,W)=>{const r=_0x1444f8,n={};n[r(321,"7ixP")]=function(t,o){return t<=o};const i=n;let d=r(270,"7ixP")+height;for(let n=0;i[r(279,"nrns")](n,30);n++){const i=width/30*n,a=t-o*Math.sin(e*i/width*Math.PI*2+W);d+=r(284,"2f[z")+i+" "+a}return d+=r(250,"6(1P")+width+" "+height+" Z",d},hillFarPath=buildHillPath(.82*height,30,1.5,0),hillMidPath=buildHillPath(.86*height,22,2.2,1.2),hillNearPath=buildHillPath(.9*height,16,3,2.5),_0xd19917={length:12},staticSunRays=Array.from(_0xd19917,(t,o)=>{const e=_0x1444f8,W={};W[e(240,"I(om")]=function(t,o){return t*o},W.iuqhj=function(t,o){return t/o},W[e(225,"[L@A")]=function(t,o){return t%o},W.zXFEc=function(t,o){return t===o},W.Ceihf=function(t,o){return t===o},W[e(278,"dV*V")]=function(t,o){return t===o};const r=W,n=r[e(344,"^q08")](r[e(343,"$1h7")](360,12),o),i=r[e(229,"rGt&")](n,Math.PI)/180,d=r[e(348,"^xz0")](o,3),a=0===d?30:r[e(381,"^xz0")](d,1)?20:12,x=r[e(371,"voX!")](d,0)?4:1===d?3:2,f=0===d?.7:r[e(247,"W]g]")](d,1)?.55:.4,h={};return h[e(248,"iIwN")]=i,h[e(375,"br5m")]=a,h[e(256,"^q08")]=x,h[e(268,")B$z")]=48,h[e(351,"W]g]")]=f,h}),_0x49fffc={};_0x49fffc.x=.15*width,_0x49fffc.y=.28*height,_0x49fffc[_0x1444f8(353,"$CZl")]=1;const _0x47e0d6={};_0x47e0d6.x=.45*width,_0x47e0d6.y=.28*height,_0x47e0d6[_0x1444f8(355,"QOcR")]=.8;const _0xdf292c={};_0xdf292c.x=.55*width,_0xdf292c.y=.38*height,_0xdf292c[_0x1444f8(350,"6(1P")]=1.5;const _0x860a27={};_0x860a27.x=.28*width,_0x860a27.y=.35*height,_0x860a27[_0x1444f8(235,"QBvR")]=.9;const cloudData=[_0x49fffc,_0x47e0d6,_0xdf292c,_0x860a27][_0x1444f8(237,"USEd")]((t,o)=>({id:o,shadowLeftX:t.x-20*t[_0x1444f8(269,"YENj")]+3,shadowCenterX:t.x+3,shadowRightX:t.x+20*t.scale+3,shadowY:t.y+4*t[_0x1444f8(355,"QOcR")],shadowTopY:t.y-5*t[_0x1444f8(254,"HMkU")]+4*t[_0x1444f8(295,")B$z")],leftX:t.x-20*t[_0x1444f8(292,"WgZk")],centerX:t.x,rightX:t.x+20*t[_0x1444f8(334,"cP@Q")],topY:t.y-5*t[_0x1444f8(350,"6(1P")],centerY:t.y,hlLeftX:t.x-18*t.scale-2,hlCenterX:t.x-2,hlRightX:t.x+18*t[_0x1444f8(346,"rUVZ")]-2,hlTopY:t.y-7*t[_0x1444f8(382,"akK6")],hlCenterY:t.y-3*t[_0x1444f8(317,"pQMu")],leftRadius:15*t[_0x1444f8(382,"akK6")],centerRadius:20*t[_0x1444f8(308,"voX!")],rightRadius:15*t.scale,hlLeftR:12*t[_0x1444f8(353,"$CZl")],hlCenterR:16*t[_0x1444f8(334,"cP@Q")],hlRightR:12*t[_0x1444f8(292,"WgZk")]}));export const GameBackground=_0x573a62[_0x1444f8(363,"*xBf")](t=>{const o="2f[z",e="USEd",W="IB]!",r=_0x1444f8,n={XaNyW:function(t,o){return t*o},oRKrE:function(t,o){return t===o},DSLZO:function(t,o){return t*o},Wjwdo:function(t,o,e){return t(o,e)},AKHup:function(t,o,e){return t(o,e)},afFki:function(t,o,e){return t(o,e)},pfIqq:function(t,o){return t*o},KZHmU:function(t,o){return t!==o},sABsI:function(t,o){return t!==o},uajyS:function(t,o){return t!==o},EKKsW:function(t,o){return t-o},Oggul:function(t,o){return t!==o},Gxinh:function(t,o){return t+o},QYrzK:function(t,o,e){return t(o,e)},cCsSK:function(t,o){return t*o},LdMFM:r(293,"lwiA"),sSkrn:r(357,"W]g]")},i=_0x510e74(42),{children:d,offset:a}=t,x=n[r(331,"[L@A")](a,void 0)?0:a,f=.18*height+n.DSLZO(x,.9);let h;i[0]!==f?(h=staticSunRays.map(t=>{const o=r,e=.8*width+Math.cos(t[o(359,"^xz0")])*t[o(259,"2f[z")],W=f+Math[o(341,"QOcR")](t[o(337,"Evz!")])*t[o(320,"a&!u")],i=n[o(232,"I(om")](width,.8)+n[o(319,"NoQb")](Math[o(314,"XIdA")](t[o(345,"USEd")]),t.startDistance+t[o(223,"7ixP")]),d=f+Math[o(352,"a[BC")](t.radian)*(t[o(333,"I(om")]+t.rayLength),a=Skia[o(378,"USEd")][o(340,")B$z")]();a.moveTo(e,W),a[o(335,")e[k")](i,d);const x={};return x.path=a,x[o(241,"rUVZ")]=t[o(358,"AF3a")],x[o(220,"yAiR")]=t.opacity,x}),i[0]=f,i[1]=h):h=i[1];const _=h;let s,l,u,C,k;if(i[2]===Symbol[r(362,"USEd")](r(336,"^q08"))){s=_0x50601b(Rect,{x:0,y:0,width:width,height:height,children:n.Wjwdo(_0x50601b,LinearGradient,{start:vec(0,0),end:vec(0,height),colors:SKY_GRADIENT_COLORS})});const t={x:0};t.y=.75*height,t[r(327,"yAiR")]=width,t.height=80,t[r(330,")e[k")]=HAZE_COLOR,l=_0x50601b(Rect,t);const W={};W[r(285,o)]=hillFarPath,W[r(330,")e[k")]=HILL_FAR_COLOR,u=n[r(226,e)](_0x50601b,Path,W);const d={};d[r(366,"cP@Q")]=hillMidPath,d.color=HILL_MID_COLOR,C=_0x50601b(Path,d);const a={};a.path=hillNearPath,a.color=HILL_NEAR_COLOR,k=_0x50601b(Path,a),i[2]=s,i[3]=l,i[4]=u,i[5]=C,i[6]=k}else{const t=r(364,e).split("|");let o=0;for(;;){switch(t[o++]){case"0":u=i[4];continue;case"1":k=i[6];continue;case"2":C=i[5];continue;case"3":s=i[2];continue;case"4":l=i[3];continue}break}}const O=f-70;let R;i[7]!==O?(R=vec(.8*width-70,O),i[7]=O,i[8]=R):R=i[8];const S=f+70;let m,L,P,I;if(i[9]!==S?(m=n[r(324,"akK6")](vec,n[r(283,"2f[z")](width,.8)+70,S),i[9]=S,i[10]=m):m=i[10],n.KZHmU(i[11],m)||n.sABsI(i[12],R)){const t={};t[r(374,W)]=R,t.end=m,t[r(271,"LUPQ")]=outerGlowColors,L=_0x50601b(LinearGradient,t),i[11]=m,i[12]=R,i[13]=L}else L=i[13];if(i[14]!==f||n[r(332,"rUVZ")](i[15],L)){const t={};t.cx=.8*width,t.cy=f,t.r=70,t[r(231,"^q08")]=L,P=_0x50601b(Circle,t),i[14]=f,i[15]=L,i[16]=P}else P=i[16];if(n[r(367,"ruzJ")](i[17],f)){const t={};t.cx=.8*width,t.cy=f,t.r=52,t.color=r(258,"Evz!"),t[r(318,"YENj")]=.18,I=_0x50601b(Circle,t),i[17]=f,i[18]=I}else I=i[18];const G=n[r(275,"BgyQ")](f,40);let b;n[r(305,"6[zR")](i[19],G)?(b=vec(.8*width-40,G),i[19]=G,i[20]=b):b=i[20];const g=f+40;let p,w,y,A,B,Q,H,N;if(i[21]!==g?(p=vec(n[r(264,"IB]!")](.8*width,40),g),i[21]=g,i[22]=p):p=i[22],i[23]!==b||i[24]!==p){const t={};t.start=b,t[r(277,W)]=p,t.colors=sunCoreColors,w=n[r(302,"a&!u")](_0x50601b,LinearGradient,t),i[23]=b,i[24]=p,i[25]=w}else w=i[25];if(i[26]!==f||n[r(255,"$1h7")](i[27],w)?(y=_0x50601b(Circle,{cx:n[r(249,"2f[z")](width,.8),cy:f,r:40,children:w}),i[26]=f,i[27]=w,i[28]=y):y=i[28],i[29]!==_?(A=_[r(222,"7ixP")](_temp),i[29]=_,i[30]=A):A=i[30],i[31]!==P||i[32]!==I||i[33]!==y||i[34]!==A){const t=n[r(246,"^q08")][r(280,"AF3a")]("|");let o=0;for(;;){switch(t[o++]){case"0":i[31]=P;continue;case"1":i[32]=I;continue;case"2":i[34]=A;continue;case"3":i[35]=B;continue;case"4":i[33]=y;continue;case"5":const t={};t[r(296,"akK6")]=[P,I,y,A],B=_0x13944c(Group,t);continue}break}}else B=i[35];if(i[36]===Symbol[r(219,"br5m")](n[r(257,o)])?(Q=cloudData.map(_temp2),i[36]=Q):Q=i[36],i[37]!==B){const t={};t[r(312,"5)[q")]=CANVAS_STYLE,t.children=[s,l,u,C,k,B,Q],H=n.AKHup(_0x13944c,Canvas,t),i[37]=B,i[38]=H}else H=i[38];if(i[39]!==d||i[40]!==H){const t={};t[r(322,"rGt&")]=CONTAINER_STYLE,t[r(329,"W]g]")]=[H,d],N=_0x13944c(View,t),i[39]=d,i[40]=H,i[41]=N}else N=i[41];return N});function _temp(t,o){const e="^q08",W=_0x1444f8,r={YILLw:function(t,o,e,W){return t(o,e,W)},QUcTr:"stroke",ZFgQc:W(326,e)};return r[W(234,e)](_0x50601b,Path,{path:t[W(294,"HMkU")],style:r.QUcTr,strokeWidth:t[W(347,"a[BC")],color:r[W(272,"XIdA")],opacity:t[W(323,"lwiA")]},o)}function _temp2(t){const o=_0x1444f8,e={aNLvj:function(t,o,e){return t(o,e)},KGEoQ:function(t,o,e){return t(o,e)},OoGnA:function(t,o,e){return t(o,e)}},W={};W.cx=t[o(342,"akK6")],W.cy=t[o(339,"USEd")],W.r=t[o(238,"cP@Q")],W.color=CLOUD_SHADOW;const r={};r.cx=t[o(303,"nrns")],r.cy=t[o(265,"Evz!")],r.r=t[o(290,"br5m")],r[o(251,"IB]!")]=CLOUD_SHADOW;const n={};n.cx=t.shadowRightX,n.cy=t[o(306,"IB]!")],n.r=t[o(260,"QBvR")],n.color=CLOUD_SHADOW;const i={};i.cx=t[o(291,"XIdA")],i.cy=t.centerY,i.r=t[o(365,"O5rj")],i[o(230,"6[zR")]=CLOUD_BODY;const d={};d.cx=t.centerX,d.cy=t[o(328,"^q08")],d.r=t[o(360,"WgZk")],d[o(311,"QB41")]=CLOUD_BODY;const a={};a.cx=t[o(379,"AF3a")],a.cy=t[o(309,"[L@A")],a.r=t[o(221,"$CZl")],a[o(370,"iCMN")]=CLOUD_BODY;const x={};x.cx=t[o(236,"LUPQ")],x.cy=t.hlCenterY,x.r=t[o(313,"nOF(")],x.color=CLOUD_HIGHLIGHT;const f={};f.cx=t[o(267,"c]Gu")],f.cy=t[o(380,"BgyQ")],f.r=t.hlCenterR,f.color=CLOUD_HIGHLIGHT;const h={};return h.cx=t[o(315,"iCMN")],h.cy=t[o(252,"WgZk")],h.r=t[o(227,"6[zR")],h.color=CLOUD_HIGHLIGHT,_0x13944c(Group,{children:[e[o(245,"X8FK")](_0x50601b,Circle,W),_0x50601b(Circle,r),_0x50601b(Circle,n),e[o(377,"2f[z")](_0x50601b,Circle,i),e.OoGnA(_0x50601b,Circle,d),_0x50601b(Circle,a),e[o(288,"lwiA")](_0x50601b,Circle,x),_0x50601b(Circle,f),_0x50601b(Circle,h)]},t.id)}
@@ -1 +0,0 @@
1
- "use strict";const _0x21d71e=_0x2b76;function _0x2b76(e,o){e-=139;const t=_0x551a();let r=t[e];if(void 0===_0x2b76.QTmvam){const e=function(e,o){let t,r,n=[],s=0,W="";for(e=function(e){let o="",t="";for(let t,r,n=0,s=0;r=e.charAt(s++);~r&&(t=n%4?64*t+r:r,n++%4)?o+=String.fromCharCode(255&t>>(-2*n&6)):0)r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(r);for(let e=0,r=o.length;e<r;e++)t+="%"+("00"+o.charCodeAt(e).toString(16)).slice(-2);return decodeURIComponent(t)}(e),r=0;r<256;r++)n[r]=r;for(r=0;r<256;r++)s=(s+n[r]+o.charCodeAt(r%o.length))%256,t=n[r],n[r]=n[s],n[s]=t;r=0,s=0;for(let o=0;o<e.length;o++)r=(r+1)%256,s=(s+n[r])%256,t=n[r],n[r]=n[s],n[s]=t,W+=String.fromCharCode(e.charCodeAt(o)^n[(n[r]+n[s])%256]);return W};_0x2b76.hBMejX=e,_0x2b76.mHewVY={},_0x2b76.QTmvam=!0}const n=t[0];_0x2b76.XNcBgt!==n&&(_0x2b76.mHewVY={},_0x2b76.XNcBgt=n);const s=_0x2b76.mHewVY[e];return void 0===s?(void 0===_0x2b76.ineGYO&&(_0x2b76.ineGYO=!0),r=_0x2b76.hBMejX(r,o),_0x2b76.mHewVY[e]=r):r=s,r}!function(){const e=_0x2b76,o=_0x551a();for(;;)try{if(886943==-parseInt(e(156,"uWL6"))/1*(-parseInt(e(145,"D)N0"))/2)+-parseInt(e(152,"AdNy"))/3+-parseInt(e(160,"ncOw"))/4*(parseInt(e(150,"o)%l"))/5)+parseInt(e(141,"SYxL"))/6+parseInt(e(155,"(9y("))/7+-parseInt(e(171,"uWL6"))/8+parseInt(e(159,"6ClB"))/9)break;o.push(o.shift())}catch(e){o.push(o.shift())}}();import{c as _0x53668a}from"react/compiler-runtime";import _0x2b6bc9 from"react";import{View}from"react-native";import{useScore,useTimeLeft,useLives}from"../BalloonBlasterStore.js";import{GAME_CONFIG}from"../BalloonBlasterService.js";import{ScoreBoardContainer,ScoreValue,ScoreLives,ScoreTimer,scoreBoardStyles as _0x4e3ae9}from"../../../helpers/index.js";import{jsx as _0x4cc32e,jsxs as _0x2e9c20}from"react/jsx-runtime";export const ScoreBoard=_0x2b6bc9[_0x21d71e(162,"(9#T")](e=>{const o=_0x21d71e,t={PBfIT:function(e,o){return e(o)},xlErz:function(e,o){return e===o},SalOh:function(e){return e()},OTFCx:function(e,o){return e!==o}},r=t[o(161,"WYhk")](_0x53668a,13),{offset:n}=e,s=t[o(146,"FXhX")](n,void 0)?0:n,W=useScore(),i=t[o(169,"KrP9")](useLives),a=useTimeLeft();let m,x,f,u,d;if(r[0]!==W){const e={};e[o(158,"VlBt")]=W,m=_0x4cc32e(ScoreValue,e),r[0]=W,r[1]=m}else m=r[1];if(r[2]!==i){const e={};e[o(154,")Wk[")]=i,e.maxLives=GAME_CONFIG[o(172,"eXEm")],x=_0x4cc32e(ScoreLives,e),r[2]=i,r[3]=x}else x=r[3];if(t[o(149,"ZQM$")](r[4],a)){const e={};e[o(163,"L*1o")]=a,f=_0x4cc32e(ScoreTimer,e),r[4]=a,r[5]=f}else f=r[5];if(r[6]!==m||r[7]!==x||r[8]!==f){const e=o(140,"71@O")[o(147,"eXKV")]("|");let t=0;for(;;){switch(e[t++]){case"0":const e={};e[o(164,"o)%l")]=_0x4e3ae9[o(148,"(9y(")],e[o(165,"o)%l")]=[m,x,f],u=_0x2e9c20(View,e);continue;case"1":r[9]=u;continue;case"2":r[8]=f;continue;case"3":r[6]=m;continue;case"4":r[7]=x;continue}break}}else u=r[9];if(r[10]!==s||r[11]!==u){const e={};e[o(166,"i7Uc")]=s,e[o(157,"JG82")]=u,d=_0x4cc32e(ScoreBoardContainer,e),r[10]=s,r[11]=u,r[12]=d}else d=r[12];return d});function _0x551a(){const e=["W4pdPvBdJrRcLHjcWQen","W7pdP3xcMfG","DCkPWOfxoW","W4P0tq","ECowEsG3","W6tdHaPiW6LVWPK5CNNcJW","W7jaWQ4/daW9bmoVW5i","W7jbWQi8s1y9fmoHW5tdQqK","WQNcGSoLySkWWQ8ZeCoIW4ZcNqldVwO","W5G+uCoOW60","WOePc0NcPCkPvSkkbCohimopW4G","W6yOchm8nXnfda","o8kTW6mxWP3dTaK+","WPxdRtlcKmoI","WRVdN8kuBmoMW6GsfKfGWOxdLsFcKW","WQmRkXDaWQlcNbpdPW","WPf4W6VdOmo1","WRquit4","gmo8w8kGWRXbW6C","WQlcIuCxWRK","WRlcLvCxWRHTWQSc","W6L2W44wkSk4","xmovWODCaqVcLCkTW5tcRHC","WQGzW6ldJx3dPmkhWOK/uW","o8ode8k3W5m","WP4DWQ9mCbldRxu8ECoHWO1m","W6eTaJ5lyMa0mIrhW5ZcTem","WO3cVhJcSCocjSoSW6FcQq","pGRcRSk1kmkrg8ouf8k0zupcUSo9","wd3cVXH4imk5W4aE","o0fsdCkhcLFcM8kxWQ7dP8oaWOG","W6ybomkrB8oPmConbCk3ydVcGG","W6WlmCohd8k3u8osjG","lJ/cVteVtwZcHmocASkNWOO"];return(_0x551a=function(){return e})()}ScoreBoard.displayName=_0x21d71e(168,"81By");
@@ -1 +0,0 @@
1
- "use strict";const _0xc1b46b=_0x23aa;!function(){const W=_0x23aa,t=_0x43d5();for(;;)try{if(598699==parseInt(W(639,"L*%q"))/1+-parseInt(W(515,"7bb3"))/2+parseInt(W(543,"n@)*"))/3+parseInt(W(589,"x(Ak"))/4*(parseInt(W(526,"73*1"))/5)+parseInt(W(504,"myEM"))/6*(parseInt(W(659,"Yhj4"))/7)+parseInt(W(627,"12ar"))/8+parseInt(W(519,"oIac"))/9*(-parseInt(W(624,"Yp#v"))/10))break;t.push(t.shift())}catch(W){t.push(t.shift())}}();import{useBikeRacingStore}from"./BikeRacingStore.js";function _0x43d5(){const W=["CN7dU0aR","sCoBhxGV","WQXZWPVdTa","qNJdPCkLBcFcHCopD8kdbeaeW4riW5urFSkLW6C","W5dcNxdcLwH2ghtcQSoFjKFcNsxcRCkttq","wI4rb1tcKxlcKCowA8oZWPXAnCor","WR3cGb/dICoY","W78gW5HdbZhcQCkrWQVdRIdcLmo5z8of","oSkWj8kCk8opWRzOWPZdL8ocWQhcOG","nCoIW4L4W5BcVXC9wW","W6FdImkPsSkVW5/cTCoskmkHmWX5aCoo","cKldUmotWOJcGCoO","qfmbWPvB","W4JcRJ1UWQC","W5NcRXO9WP4yWOXYzSkzCKxdUW","WQFdMNTBW6XTW7z/BmksEx3dU0bF","W7qfWP3cKmozWQ48iSkUoeFcHmkh","W6GrWP3cJa","W5ZcTGf0WQa8agq3W7WKW6jbW6PAW7xcP8ofka","W5fRWOlcUNJcGCoEWQfqgSoBWOnGW70C","WOJcKdu9ybtdVSkv","C0KVWP1S","WQhdHhLmWOhcRCogWQNdSCoZnmo2dwddMftcSa","FIa0","waiaWO5yzCk0W5m/W43cTrRdPmkgWP7cIq4","DW02mh3cGv3cU8o7tmo7WRL7omkfW4GgFGS","WRyVB8kaWQzxW5hdNfRdHq","WRNdULnSW50","W4D3WOpcUMlcKCoP","sxb+WQJdId8","WOyJW5SdW7W","W6RdLmkYpGLucXaxbSo/W4qEcmkAWPFdJG","W4D0WORcT2xcL8oWWQ9tpmoNWPHTW60wBCoJ","WRpdKhXRWO7cKmoqWRpdPSo+mSoFdG","h8oDW7Skkq","WQRcHsmdW4FcQ2dcGublDSkoWPRdPK0","F13dIG","WPXpqmkeW7xdHqfEWQldRW5PvSk9sw4DW4C","WR3cJY7dVSoH","WPJdTeL2W4HCW6m","fehdRG","WR3cOYBdMCoBW7rpWO8FqG","W4tdGctcICoT","xGddSmkHWOPFvq","uMf2WR3dLatcLvJdU8oWvSkDgJnbWPRcLKmXlSkf","WPtdS1xcK8o4DXpcRuy","W70+WQ5UiCoTAmoEW4WWWRFcPwNdMqW","m8oZW6PGW5BcPri2DqnRWR7cSZvSWRhcPG","WOFdULT7W4XnW5zFy8kYruFdLwT4","W7a1WRz/p8oMyCosW5q6WQO","FmkEWO3cSKDnBSknwe7cVmojlhuFWO/cOhW","W63dI8kUAmkV","qay9AvDRyr0orG","WQxdMcVdPYpcPwW","W6qLhCkPDJrQWOZdSHq","CfVdR3uU","WRZdJ3fSW6e","m8k0i8kwk8oiW7nZWOhdNCobWOe","xqNdPq","qq7dOSkSWO5oycqwhdvMruRcOmkxWPrlgmoaWPq","W6z/WPTJW5pdK8orwCkdza","W7JcNdLRWP0opu4","WRFdIxfWWQpcSmoEWQZdU8o7na","W7mMxSkQvmoanIeTaaqqWQJcMq","WP0yW4NdPLGJWR4","WOBdT18","vexdHKWW","WQxcGtK0W5/cR1FcIW","W7CgWP3cKmo+WR8XkSkccg3cHSkxyhhcNmoH","WP5crCkvW4tdIGXcWPtdRs13u8km","W5uzWOLPfmopumo+","W4n6WOVcVKdcI8o2WRa","WRGUW5aJW4ZdTmo3yCkrqNCUW7m","CqKUnMhcTW","A8ovcw8pW6uFjSohWQyA","BIKLaftcMCkK","WP/cJrtdRSoHW5W","e8otW4PaW7BcHtiwyZr4WPdcKrvhWP3cMHlcSmk5W5FdIhy","wu0yrCk0W5G","EG4Xj3tcSvlcSCozqCodWQr2cCkt","W4iqWPXdbCoCFq","C8ooomkp","WOZdKxzMW5HPiSoArCot","WOdcJHtdQCoLW5TIWQqjyCouz8oTghVdMM5h","W6ZcNdLOWOuome4lW7O","rmoapWavgmop","W5aby8kzyCoR","W6q8d8k4","q3JdRmkVAG","zWKVpgpcT3hcTSo6xCoBWRrZdW","WOdcGJFdVmo3W4S","s3BdOvOL","tSkCWOP/","WPtcHIK5rHBdV8kvWRVcI3VcVftcHbS","sqinWOzIzSk4W5K1","ACkHWQWJWOtdTHOyFsjmWQm","BXqgl1W","EI3dG8kFWQP5uWCxlrLuDfFcH8kUWRq","o0VcO8oPW5NcO8onomkYwZRcLa","W4T5WPxcR23cH8o1WQvTf8oXWOrOW6Ok","mCklC8otfsf9h3tdUa","W4mAW7OFW5a","WRqSB8kDWOXdW68","WQ/dGM5OWOhcVmoEWQxdGCoVmmoebu/dK0pcOCoeWRBdUZC","AYSSr2S","tXqECwrZzHCg","WQX3WPVdTSoPW70","WQKVEmkbWRLDW5BdLLRdG8kPFZxcJ8oZW5S","WO7dJdhdMdeIrMVcJmo9f1ZcQq","WP8BW4NdU3i3WPdcMmkvcW","lv90AYBdO03cH8obymo3WOy","uCoyaSkekq","uSkrWOvJWRuOWRW","W7SNlmkXydu","BhSTD8kb","WOhcGXa","W5CHW79emHpcKCkX","W7ZdI8kJy8ksWQyUdmkonq","WONcTY89W7S","W7CtqSkOEW","AZVdL8kzWR8","DGaNmMC","WO/dOK5iWQhcNmo+WOxdJCoDgmo4lLNcJW","zHJdUSk+WOxdRW","W5/dHJpcMmojW53dUSoG","W5nYWOlcR2q","quKcuCk5W4G","yLJdHCkftaFcGG","W4ddVmkxoGq","dCkyAKW5a8oMW7K6iW","eLz/ktu5pb8YwGpcU3G","W4ShW4CDW7O","CeZdN8kJtxBcR8kSW4zexmkCDmkmkr5s","WRVcLmo3mmoUW7aSnmkQbmkKca","WPODW4ZdQ1u","xrZdVCkXWOXi","W5VdIc7cMCoPW5hdN8oQvt9vW7n2WRrt","W7RdHCk7wSkDW4ZcVmosha","WRpdHwLFWOhcS8oEWQldS8o8oSoa","W5r3WOFcOMNcLSoo","W4RdO8krE8krW6VcKmoZlmkb","zCoFlK8bW7OcnmonWQur","W6NdGCk2","uxL2WRBdHtNcOa","CmopkSkvodnBj2y","WPFcIZzTWOLMW5JdKW","qCksWOH2WRKPWOWhFMFcMmoeW7/dJCkZiCoj","W77cRNRcJuW","W7aMW44","wuakt8k0W45F","WOSvW5VdQ28WWPJcJ8kFeG","zeRdL8k7ta","WQNdMG3dQshcVhxcMKzedq","WPbcx8kCW73dLqruWP/dNabXvmknt3qw","W6qZWPiRWR7dUSkKCmoh","BCougq","mdacWPzKsINcTG","rHyIo2O","WPpcHtDNWRC","A8oFbe0mW6ickmokWOWnWOWkW7jFWP8","WP/cGaBdPmoHW4Pg","W7VdMSk7sCkGW7pcU8oedmkOkrn1","W500W4mCW5yl","W4eiWPXifmoHrSoOW6CtWP3cGKNdLu1jW5pdR1ZcTYK","W64OW4RcVIZcJG","WQRdKsddOtNcUa","j8ooW43cL3zivCkhyG","iSopW4ZdVX4zmmkszhJcR8okaW","WQGHFCkqWQ9dW5BdGLRdPCkuFrW","W74tW74VW6mGWPGtW5/dHJ7dVeXZWQC","v3r7WRRdHq","W4CFamkHW4tdGdPuWPG","sqinWOz+Cmk7W480W7O","W7NdL8k/kWvvkG","WOFdULT7W4XnW5zFymkQxupdKKfLW7BcTCo7W4pcQ8kE","WP84W6WbW6q","zW0Sn3RcVW","qNLYWQ7dJJ7cHW","WOBdIZFdLeb8fwxcSmox","W5ldHYNcKmoKW4ddTCoQvXvoW6fYWR50sW","W4hdHIhcMCokW5ldUSo2xcC"];return(_0x43d5=function(){return W})()}import{BIKE_RACING_GAME_CONFIG,BIKE_RACING_COLORS,getLanePosition}from"./BikeRacingConstants.js";import{getGameDimensions}from"../../services/UtilsService.js";import{setGameInterval,clearGameInterval}from"../../helpers/GameTimer.js";const{width:width,height:height}=getGameDimensions(),sharedValuesMap=new Map;export function registerObstacleSharedValues(W,t){sharedValuesMap[_0x23aa(587,"2$Yz")](W,t)}export function unregisterObstacleSharedValues(W){sharedValuesMap.delete(W)}function _0x23aa(W,t){W-=485;const o=_0x43d5();let e=o[W];if(void 0===_0x23aa.hWNdDr){const W=function(W,t){let o,e,d=[],a=0,n="";for(W=function(W){let t="",o="";for(let o,e,d=0,a=0;e=W.charAt(a++);~e&&(o=d%4?64*o+e:e,d++%4)?t+=String.fromCharCode(255&o>>(-2*d&6)):0)e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(e);for(let W=0,e=t.length;W<e;W++)o+="%"+("00"+t.charCodeAt(W).toString(16)).slice(-2);return decodeURIComponent(o)}(W),e=0;e<256;e++)d[e]=e;for(e=0;e<256;e++)a=(a+d[e]+t.charCodeAt(e%t.length))%256,o=d[e],d[e]=d[a],d[a]=o;e=0,a=0;for(let t=0;t<W.length;t++)e=(e+1)%256,a=(a+d[e])%256,o=d[e],d[e]=d[a],d[a]=o,n+=String.fromCharCode(W.charCodeAt(t)^d[(d[e]+d[a])%256]);return n};_0x23aa.JXnZUY=W,_0x23aa.dIxSrM={},_0x23aa.hWNdDr=!0}const d=o[0];_0x23aa.LKotjQ!==d&&(_0x23aa.dIxSrM={},_0x23aa.LKotjQ=d);const a=_0x23aa.dIxSrM[W];return void 0===a?(void 0===_0x23aa.VwAEqV&&(_0x23aa.VwAEqV=!0),e=_0x23aa.JXnZUY(e,t),_0x23aa.dIxSrM[W]=e):e=a,e}let playerXSharedValue=null;export function registerPlayerSharedValue(W){playerXSharedValue=W}export function unregisterPlayerSharedValue(){playerXSharedValue=null}let roadOffsetSharedValue=null;export function registerRoadOffsetSharedValue(W){roadOffsetSharedValue=W}export function unregisterRoadOffsetSharedValue(){roadOffsetSharedValue=null}export class BikeRacingService{[_0xc1b46b(566,"oIac")]=null;[_0xc1b46b(527,"GQ(Y")]=null;[_0xc1b46b(533,"73*1")]=0;[_0xc1b46b(485,"G*xq")]=BIKE_RACING_GAME_CONFIG[_0xc1b46b(611,"]QRu")];[_0xc1b46b(522,"n@)*")]=BIKE_RACING_GAME_CONFIG[_0xc1b46b(606,"Yp#v")];[_0xc1b46b(494,"byy7")]=new Map;[_0xc1b46b(516,"$1ra")]=0;[_0xc1b46b(626,"2$Yz")]=16.67;[_0xc1b46b(628,"dd5!")]=[];[_0xc1b46b(631,"$1ra")]=getLanePosition(1,width);[_0xc1b46b(641,"byy7")]=height-BIKE_RACING_GAME_CONFIG[_0xc1b46b(532,"TIJh")]-BIKE_RACING_GAME_CONFIG.BIKE_HEIGHT;playerW=BIKE_RACING_GAME_CONFIG[_0xc1b46b(488,"G*xq")];[_0xc1b46b(614,"s]gr")]=BIKE_RACING_GAME_CONFIG[_0xc1b46b(578,"J@mq")];roadOffset=0;constructor(W,t){const o=_0xc1b46b;W&&(this.roadSpeed=W),t&&(this[o(588,"2$Yz")]=t)}[_0xc1b46b(486,"sBm5")](W,t){const o=_0xc1b46b;this[o(489,"$&!p")]=W,this[o(619,"!RR&")]=t}[_0xc1b46b(492,"W9m0")](){const W=_0xc1b46b;this[W(604,"SMLC")](),this[W(597,"GuAc")]=0,this[W(560,"2qUa")].clear(),this[W(622,"po[C")]=[],this[W(520,"7UBh")]=0;const t=useBikeRacingStore.getState();this[W(540,"UZ1o")]=t.playerBike.x,this[W(497,"UY2*")]=t[W(583,"&Y@7")].y,this[W(573,"y[Bi")](),this.lastFrameTime=performance[W(644,"!RR&")](),this[W(600,"dd5!")]()}gameLoop=()=>{const W=_0xc1b46b;if(!useBikeRacingStore[W(645,"jhWo")]()[W(574,"Y)&e")])return void(this.animationFrameId=null);const t=performance[W(496,"jnU(")](),o=Math[W(565,"TIJh")](t-this[W(601,"x(Ak")],50);this[W(545,"GuAc")]=t,this[W(548,"dd5!")](o),this[W(507,"$&!p")]={Oivok:function(W,t){return W(t)}}[W(529,"P2&h")](requestAnimationFrame,this[W(493,"*6dY")])};[_0xc1b46b(549,"po[C")](){this[_0xc1b46b(525,"y[Bi")]()}updateGameState(W){const t="PA1)",o=_0xc1b46b,e={};e[o(542,"xiv$")]=function(W,t){return W*t},e[o(647,t)]=function(W,t){return W-t},e[o(648,"n1Id")]=function(W,t){return W>=t},e[o(584,"P2&h")]=function(W,t){return W>t},e[o(559,"x(Ak")]=function(W,t){return W+t};const d=e,a=W/this.TARGET_FRAME_TIME,n=d.WWpVN(this[o(623,"7UBh")],a);this[o(555,"$1ra")]=(this[o(528,"GQ(Y")]+n)%600,roadOffsetSharedValue&&(roadOffsetSharedValue[o(563,"u1x#")]=this[o(638,"K[O$")]);const r=[],i=[];let s=!1;const h=[];for(let W=d[o(505,"SMLC")](this[o(577,"n@)*")][o(510,"wopf")],1);d[o(523,"x(Ak")](W,0);W--){const t=this[o(539,"G*xq")][W],e=t.y+n;t.y=e;const a=sharedValuesMap[o(490,"05tO")](t.id);a&&(a.y[o(518,"y[Bi")]=e),d[o(633,"Yhj4")](e,d[o(535,"!RR&")](height,50))?(r.push(t.id),this[o(539,"G*xq")].splice(W,1),this[o(501,"oIac")][o(602,"L*%q")](t.id)):(!t.passed&&e>this[o(568,"n@)*")]+this[o(508,"!RR&")]&&(t[o(512,"jnU(")]=!0,i[o(546,"GuAc")](t.id),s=!0),this[o(591,"sBm5")](t)&&h[o(610,"W9m0")](t))}(i[o(615,"n1Id")]>0||r[o(513,"gre8")]>0)&&useBikeRacingStore.getState()[o(554,"L*%q")](i,r);for(const W of h)this[o(564,t)](W);s&&this[o(642,"&Y@7")]&&this.onPass()}willCollide(W){const t=_0xc1b46b,o={};o[t(625,"SMLC")]=function(W,t){return W-t},o.iRKcp=function(W,t){return W<t},o[t(556,"]QRu")]=function(W,t){return W+t},o[t(640,"W9m0")]=function(W,t){return W+t};const e=o,d=this[t(561,"dd5!")][t(503,"$&!p")](W.id);if(d&&e[t(585,"]QRu")](Date[t(594,"n@)*")](),d)<1e3)return!1;const a=BIKE_RACING_GAME_CONFIG[t(547,"xiv$")];return e[t(595,"P2&h")](this[t(656,"TIJh")],W.x+W[t(571,"GQ(Y")]-a)&&e.gddNZ(this.playerX,this[t(491,"y[Bi")])>W.x+a&&this[t(609,"J@mq")]<W.y+W[t(655,"UY2*")]-a&&this.playerY+this[t(593,"K[O$")]>e[t(567,"!RR&")](W.y,a)}[_0xc1b46b(665,"GQ(Y")](W){const t="dd5!",o=_0xc1b46b,e={CjpXB:function(W,t){return W+t}};e[o(649,"2$Yz")]=function(W,t){return W!==t};const d=e;this[o(553,"7UBh")][o(552,"SMLC")](W.id,Date[o(569,"UZ1o")]());const a=(this.playerX+this[o(487,t)]/2+W.x+W[o(654,t)]/2)/2,n=d[o(530,"$&!p")](this[o(572,"2$Yz")]+this[o(521,"2qUa")]/2+W.y,W.height/2)/2,r=useBikeRacingStore[o(590,"xiv$")]();r[o(551,"sBm5")](a,n),r[o(653,"GQ(Y")](),r[o(618,"L*%q")](W.id);const i=this[o(608,"L*%q")].findIndex(t=>t.id===W.id);d[o(643,"UY2*")](i,-1)&&this.obstaclePhysics[o(664,"2$Yz")](i,1),this.onCollision&&this[o(500,"gre8")]()}[_0xc1b46b(511,"J@mq")](){const W=_0xc1b46b;this[W(579,"7bb3")]={QLHSC:function(W,t,o){return W(t,o)}}[W(617,"TIJh")](setGameInterval,()=>{this[W(562,"sBm5")]()},this[W(632,"sBm5")]),this[W(509,"G*xq")]()}spawnObstacle(){const W="!RR&",t=_0xc1b46b,o=useBikeRacingStore[t(596,"PA1)")]();if(!o[t(634,"Yhj4")])return;const e=this[t(581,"Yhj4")](0,BIKE_RACING_GAME_CONFIG[t(570,W)]),d=getLanePosition(e,width),a=[BIKE_RACING_COLORS[t(534,"L*%q")],BIKE_RACING_COLORS[t(651,"sBm5")],BIKE_RACING_COLORS.OBSTACLE_BIKE_3],n=a[this.fastRandom(0,a[t(635,"18[6")])]||BIKE_RACING_COLORS[t(575,"J@mq")],r="obstacle-"+this[t(576,"Yp#v")]++,i=-BIKE_RACING_GAME_CONFIG[t(544,"n@)*")],s={};s.id=r,s.x=d,s.y=i,s[t(531,"18[6")]=e,s[t(663,"K[O$")]=BIKE_RACING_GAME_CONFIG.OBSTACLE_WIDTH,s[t(558,"y[Bi")]=BIKE_RACING_GAME_CONFIG[t(517,"wopf")],s[t(580,"05tO")]=n,s[t(605,W)]=!1,this[t(539,"G*xq")][t(616,"&Y@7")](s);const h={};h.id=r,h.x=d,h.y=i,h[t(621,"byy7")]=e,h[t(499,"6Yhh")]=BIKE_RACING_GAME_CONFIG[t(592,"n1Id")],h[t(652,"12ar")]=BIKE_RACING_GAME_CONFIG[t(536,"jhWo")],h[t(506,"*6dY")]=n,h[t(607,"UY2*")]=!1;const C=h;o[t(603,"$&!p")](C)}[_0xc1b46b(498,"K[O$")](W,t){const o=_0xc1b46b,e={};e[o(630,"wopf")]=function(W,t){return W+t},e.IGIhd=function(W,t){return W-t};const d=e;return d[o(550,"myEM")](Math.floor(Math[o(524,"L*%q")]()*d[o(657,"2qUa")](t,W)),W)}[_0xc1b46b(636,"$1ra")](W){const t=_0xc1b46b,o={zQidU:function(W,t){return W-t},zVjfX:function(W,t,o){return W(t,o)}},e=useBikeRacingStore[t(599,"J@mq")]();if(!e[t(538,"Yp#v")])return;const d=Math.max(0,Math.min(o.zQidU(BIKE_RACING_GAME_CONFIG.ROAD_LANES,1),W)),a=o[t(660,"wopf")](getLanePosition,d,width);this.playerX=a,playerXSharedValue&&(playerXSharedValue[t(620,"P2&h")]=a),e[t(598,"oIac")](W)}[_0xc1b46b(613,"xiv$")](W){this.playerY=W}[_0xc1b46b(557,"dd5!")](){const W=_0xc1b46b,t={AQylE:function(W,t){return W(t)}},o=W(502,"x(Ak").split("|");let e=0;for(;;){switch(o[e++]){case"0":this[W(566,"oIac")]&&(t[W(541,"myEM")](clearGameInterval,this[W(612,"!RR&")]),this.obstacleSpawnTimer=null);continue;case"1":this.animationFrameId&&(t[W(495,"73*1")](cancelAnimationFrame,this.animationFrameId),this[W(507,"$&!p")]=null);continue;case"2":this.obstaclePhysics=[];continue;case"3":this[W(646,"05tO")]=0;continue;case"4":this[W(661,"6Yhh")][W(650,"L*%q")]();continue}break}}destroy(){this[_0xc1b46b(582,"gre8")](),sharedValuesMap.clear(),playerXSharedValue=null,roadOffsetSharedValue=null}}
@@ -1 +0,0 @@
1
- "use strict";const _0x9d7664=_0x3f07;!function(){const e=_0x3f07,t=_0x2fe7();for(;;)try{if(315010==-parseInt(e(268,"lxSV"))/1+parseInt(e(324,"Lk3T"))/2*(parseInt(e(228,"eXk@"))/3)+parseInt(e(301,"rICJ"))/4*(-parseInt(e(296,"*BGq"))/5)+parseInt(e(267,"iQP$"))/6+parseInt(e(302,"gRVy"))/7+parseInt(e(217,"Oi#)"))/8*(parseInt(e(238,"$Z^b"))/9)+parseInt(e(286,"3lmY"))/10*(parseInt(e(276,"iQP$"))/11))break;t.push(t.shift())}catch(e){t.push(t.shift())}}();import{create}from"zustand";import{subscribeWithSelector}from"zustand/middleware";import{immerMiddleware,getGameDimensions}from"../../services/UtilsService.js";import{BIKE_RACING_GAME_CONFIG,getLanePosition}from"./BikeRacingConstants.js";const{width:width,height:height}=getGameDimensions();export const useBikeRacingStore=create()(subscribeWithSelector(immerMiddleware((e,t)=>({score:0,timeLeft:BIKE_RACING_GAME_CONFIG.GAME_DURATION,isPlaying:!1,gameOver:!1,lives:3,obstacles:[],playerBike:{x:getLanePosition(1,width),y:height-BIKE_RACING_GAME_CONFIG[_0x9d7664(254,"zpiS")]-BIKE_RACING_GAME_CONFIG.BIKE_HEIGHT,lane:1,width:BIKE_RACING_GAME_CONFIG[_0x9d7664(283,"]w)v")],height:BIKE_RACING_GAME_CONFIG[_0x9d7664(216,"oQf1")]},roadOffset:0,particleEffects:[],offset:0,gameDuration:BIKE_RACING_GAME_CONFIG[_0x9d7664(309,"4Fas")],setOffset:t=>{e(e=>{const o=_0x3f07;e[o(319,"uvJV")]=t,e[o(328,"rICJ")].y=height-BIKE_RACING_GAME_CONFIG[o(242,"Lk3T")]-BIKE_RACING_GAME_CONFIG[o(256,"RQgw")]})},startGame:(t,o)=>{const W=_0x9d7664,n={Hrzei:function(e,t,o){return e(t,o)},GFJjd:function(e,t){return e===t}},d=t||BIKE_RACING_GAME_CONFIG[W(243,"3lmY")];e(e=>{const t=W,r={MRqdG:function(e,t,o){return n[_0x3f07(305,"Oi#)")](e,t,o)}};n[t(313,"rICJ")](t(250,"51@h"),"yMFIm")?(_0x13778b[t(284,"3lmY")]=0,_0x167f99[t(266,"N(V*")]=_0x3f7a37[t(229,"aV^@")],_0x2508bc[t(279,"raTH")]=!1,_0xffaef5[t(290,"Lk3T")]=!1,_0x335f17[t(244,"kNxf")]=3,_0x11c3c3.obstacles=[],_0x5a77ff.roadOffset=0,_0x258fb9[t(215,"n5zT")]={x:r[t(226,"Zy$@")](_0x6742f9,1,_0x5beab3),y:_0x86ddfc-_0x19c3c4[t(291,"$VHT")]-_0x26d322[t(322,"4Fas")],lane:1,width:_0x58efde[t(282,"K8p)")],height:_0x536af0[t(312,"iQP$")]}):(e[t(246,"%#f5")]=0,e[t(249,"geo5")]=d,e[t(261,"rFqe")]=d,e[t(317,"RQgw")]=!0,e[t(262,"Xwca")]=!1,e[t(281,"*#Jd")]=3,e.obstacles=[],e[t(311,"aV^@")]=0,void 0!==o&&(e[t(299,"*BGq")]=o),e.playerBike={x:getLanePosition(1,width),y:height-BIKE_RACING_GAME_CONFIG[t(254,"zpiS")]-BIKE_RACING_GAME_CONFIG[t(326,"lxSV")],lane:1,width:BIKE_RACING_GAME_CONFIG[t(307,"zDPu")],height:BIKE_RACING_GAME_CONFIG.BIKE_HEIGHT})})},stopGame:()=>{e(e=>{const t=_0x3f07;e[t(245,"zpiS")]=0,e.timeLeft=e[t(269,"Lk3T")],e.isPlaying=!1,e[t(258,"]w)v")]=!1,e[t(259,"zDPu")]=3,e[t(236,"RQgw")]=[],e[t(287,"LkpT")]=0,e[t(285,"zDPu")]={x:getLanePosition(1,width),y:height-BIKE_RACING_GAME_CONFIG[t(251,"*#Jd")]-BIKE_RACING_GAME_CONFIG[t(255,"BicN")],lane:1,width:BIKE_RACING_GAME_CONFIG.BIKE_WIDTH,height:BIKE_RACING_GAME_CONFIG[t(264,"dHk6")]}})},resetGame:()=>{const t=_0x9d7664,o={tulvg:t(247,"rFqe"),snCjN:function(e,t,o){return e(t,o)}};e(e=>{const W=t;if("auKst"===o[W(271,"lxSV")])return _0x4ecc89[W(237,"$VHT")];e[W(303,"qHOR")]=0,e.timeLeft=e[W(231,"1bWT")],e[W(289,"IHLs")]=!1,e.gameOver=!1,e[W(220,"51@h")]=3,e[W(273,"iQP$")]=[],e.roadOffset=0,e[W(211,"lxSV")]={x:o[W(214,"d2i9")](getLanePosition,1,width),y:height-BIKE_RACING_GAME_CONFIG[W(318,"$Z^b")]-BIKE_RACING_GAME_CONFIG[W(272,"$VHT")],lane:1,width:BIKE_RACING_GAME_CONFIG[W(325,"tqGk")],height:BIKE_RACING_GAME_CONFIG[W(306,"K8p)")]}})},updateScore:t=>{const o=_0x9d7664;({EAWSM:function(e,t){return e(t)}})[o(295,"ND0s")](e,e=>{const W=o;e.score=e[W(263,"Lk3T")]+t})},decrementTime:()=>{const t=_0x9d7664;({ChzPM:function(e,t){return e(t)}})[t(292,"RQgw")](e,e=>{const o=t,W=e[o(293,"*#Jd")]-1;W<=0?(e[o(300,"d2i9")]=0,e[o(210,"Xwca")]=!1,e[o(232,"ND0s")]=!0):e[o(280,"n5zT")]=W})},addObstacle:t=>{e(e=>{const o=_0x3f07;e.obstacles[o(323,"rICJ")](t)})},removeObstacle:t=>{const o=_0x9d7664;({ycwAH:function(e,t){return e(t)}})[o(235,"Lk3T")](e,e=>{const W=o;e[W(327,"zDPu")]=e.obstacles[W(218,"$Z^b")](e=>e.id!==t)})},movePlayerBike:t=>{e(e=>{const o=_0x3f07,W=Math[o(288,"]w)v")](0,Math[o(225,"N(V*")](BIKE_RACING_GAME_CONFIG[o(248,"gRVy")]-1,t));e[o(233,"geo5")][o(239,"*#Jd")]=W,e.playerBike.x=getLanePosition(W,width)})},loseLife:()=>{e(e=>{const t=_0x3f07,o=e[t(223,"Voea")]-1;o<=0?(e.lives=0,e[t(252,"Oi#)")]=!1,e[t(314,"4Fas")]=!0):e[t(219,"$Z^b")]=o})},clearObstacles:()=>{e(e=>{e.obstacles=[]})},addParticleEffect:(t,o)=>{e(e=>{const W=_0x3f07;e[W(294,"$VHT")][W(253,"Uuf5")]({id:W(234,"LkpT")+Date.now()+"-"+Math[W(241,"kNxf")](),x:t,y:o})})},removeParticleEffect:t=>{e(e=>{const o=_0x3f07;e[o(316,"kNxf")]=e[o(213,"uvJV")][o(270,"Oi#)")](e=>e.id!==t)})},batchScoreAndRemove:(t,o)=>{const W=_0x9d7664,n={PrLwM:function(e,t){return e>t},BQAGo:function(e,t){return e(t)}};n[W(257,"3lmY")](e,e=>{const d=W;if(t.length>0){const o=new Set(t);for(let t=0;t<e.obstacles.length;t++)o[d(308,"*#Jd")](e[d(321,"rICJ")][t].id)&&!e[d(304,"rFqe")][t][d(224,"qGut")]&&(e[d(230,"eXk@")][t][d(320,"3lmY")]=!0,e.score+=BIKE_RACING_GAME_CONFIG[d(260,"tqGk")])}if(n.PrLwM(o[d(310,"rICJ")],0)){const t=new Set(o);e[d(265,"l@Y#")]=e.obstacles[d(298,"iQP$")](e=>!t[d(297,"KGWS")](e.id))}})}}))));function _0x3f07(e,t){e-=210;const o=_0x2fe7();let W=o[e];if(void 0===_0x3f07.HBKPHT){const e=function(e,t){let o,W,n=[],d=0,r="";for(e=function(e){let t="",o="";for(let o,W,n=0,d=0;W=e.charAt(d++);~W&&(o=n%4?64*o+W:W,n++%4)?t+=String.fromCharCode(255&o>>(-2*n&6)):0)W="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(W);for(let e=0,W=t.length;e<W;e++)o+="%"+("00"+t.charCodeAt(e).toString(16)).slice(-2);return decodeURIComponent(o)}(e),W=0;W<256;W++)n[W]=W;for(W=0;W<256;W++)d=(d+n[W]+t.charCodeAt(W%t.length))%256,o=n[W],n[W]=n[d],n[d]=o;W=0,d=0;for(let t=0;t<e.length;t++)W=(W+1)%256,d=(d+n[W])%256,o=n[W],n[W]=n[d],n[d]=o,r+=String.fromCharCode(e.charCodeAt(t)^n[(n[W]+n[d])%256]);return r};_0x3f07.hOCYBd=e,_0x3f07.LfxeOF={},_0x3f07.HBKPHT=!0}const n=o[0];_0x3f07.hVChnq!==n&&(_0x3f07.LfxeOF={},_0x3f07.hVChnq=n);const d=_0x3f07.LfxeOF[e];return void 0===d?(void 0===_0x3f07.ualWEu&&(_0x3f07.ualWEu=!0),W=_0x3f07.hOCYBd(W,t),_0x3f07.LfxeOF[e]=W):W=d,W}export const useScore=()=>({vcVAS:function(e,t){return e(t)}}[_0x9d7664(240,"51@h")](useBikeRacingStore,_temp));export const useTimeLeft=()=>useBikeRacingStore(_temp2);export const useLives=()=>useBikeRacingStore(_temp3);export const useIsPlaying=()=>useBikeRacingStore(_temp4);export const useGameOver=()=>useBikeRacingStore(_temp5);export const useObstacles=()=>useBikeRacingStore(_temp6);export const usePlayerBike=()=>useBikeRacingStore(_temp7);export const useParticleEffects=()=>useBikeRacingStore(_temp8);function _temp(e){return e[_0x9d7664(263,"Lk3T")]}function _temp2(e){return e.timeLeft}function _temp3(e){return e[_0x9d7664(222,"tqGk")]}function _0x2fe7(){const e=["W6pcQmkeW74+pG","ux1weSkjW4/cUSk9BG","W4xcIr/cGmo6WQJcVY4vW4v6","tMPwdG","rWlcUG16f2BdQG","WQxdSwXmWO50e8k9Fv0","k8k1fMFdTSkQW5pdUSo/kcG","BZThkHOVWPpcJSkn","tNneh8knW57cLmkXDNe","W6jFt3hcSX1YohS","gCkqpfVdJmkqW5tdMSotbq","WO/cTmoRB8oIW57dOmkKW5i","nX3cNvjmW4RcN2SyueKylZL4","kmkjW5OOW5m","h0BcINRcOCoNWR8RW7tcOG","W4TjcZzpW5S1WOpdRb13","kXpdTSo2WOyoW4tdLSo1","txPbsc3cVq","r3PBwtS","WPRdNSkHwXC","W77cPhBcK2FdN8kxra","WOVdKvfSWQi","WQhcNWHKWPq","mSo8nmoFgSof","F8oSW7C","CbpdP3L0","DuJcJK1hW47cSxy","dXCUjgicgXyDW6TN","F3hdRtBcV8ooiw4GimkDW64","vefKytOXmYKy","WQn4rJhdKCoCW7niW7rMW4PP","WOBdH8oZfM4tAZa","W4pcGKhcKvZdRg5vcmkb","WRu/WOHRxCkcW7riWOC","dfxcRcDq","WPq6W5b+W6hcImk5WRdcKG","xmoPoZGVW7unFXZdJG","gIuzdh/cGWNdJLlcImkT","vCoBxr4","WOddLmkbFZC","fWJdH10OWPu","jxRcMJ9DiNVdKaHMkxFcLSoPh8k3bdyfxW","W5tcImk6W4GehSokFJZdH8odW7vN","cqddN1W0","k8kLW442fW","WOpdNmkBohq","WOddT0JcRuy","tsjdksFcGCo3WPKKrW","W4FcH03cJxxdU0Pi","WP/dPSkqvqO","ACo2CIldIYxdHhdcIWnsCmoxWR4fjwavsmoB","DLNcKmoIWOaGW5tdI8oG","nJOxW5O","cmkkW6aDn8oudmknWQPXWQpdOHJcTCoJW40veaRcVG","bqjbW7r6crNcMaeNWRS","WRKrW6HpW5/cO8kqWPZcPSoRW6u","W5hcMmk2W4O0","W7mHW6tdUfFdVhJdMG","BdbcoWG","WRFdT25hWOvWbCkPBeD9qhlcQX3cK8opWRCNW4bou8kNbmoFWO0","WQJdThhcM3RdKSkIACoNW4qpW74","W6XnCNJcNrj+ja","bLxcTbr9","eSk8FCoYpwykWRjBWPDh","omoYlXfYWPNcRZf4","zSoSW7tcGdCPEmoz","WQddJCojWPPlx8kqWRtdHHb7WPe","xCopzbBcNmovW6xdISoxgdBdNa","eLFcTGnCbvBdSZnBeLy","EupcRmo6WOqR","hCkjmvtdJG","BSomeqqvW48kxZddO8oL","W73cNmkoW5CBbmk+WQVdVW","WR0YEeaPWQjaWQhdGcvewx4","W7NdGKCWW543W7dcRCoYW5RcIW","WQpdJ8kxW44Jh8kvWOi","iayZW5FcKSkqESoO","WPNdJmkKjNdcKCkMv3i","W7Sdvmogs3vfW6hcOG","g0pcHMBcImoWWPS2","vCotrr7dVq","wSkwWQ/cImkQW7/cMmotW7e5","W5yjW4ldMeFdNvtdRbmT","W6dcQSkyW78+","CdvvjX4+WR3cGSkvcW","WQFdU8opWR5IA8kVrXBdO8oTW7j8","WRCXWPT7E8khW75EW48R","W7KHW7e","WPdcLX5fnIBdHSorWOG","eLFcTGnxbKhdOa","FmojgXGpW5uqvdJdV8oLBqeVWQhcI1NdTb/dIq","WRGWW5LAW40","tCotxH7dGHldVuy","xmoKkduJW6qJCZldJCoxrY8eWP8","WQtdP8ojigW","W7lcU8kbWOtdU1tdNSkUW5aRamoi","WQCWAW","W7tcL8krW5CFfq","WQNdR8oqW4dcRbu","l8koW7qNW5essc0","dY1rnCklW4VcJmkR","lLO3wehdTmkeWPGYyx5IeG","WOpdPcZdUCk8","WQddT2/cIL/dHmk8BCoG","v1JcUSoRWOG","wSkwWQ/cImkQW6dcLmoEW6i5WRi","qHb/gYqBWRBcR8kQjG","uCoBqa","W4dcGrNcGmo6WQtcRZutW5LNvSkc","uNPlaCkCW4q","AN/dOtFcTmoDnxWXpq","W5dcT8k2W6yLl8kxWOFdIZ1I","EvLVdmkm","W6dcOtNcOmoQWPBcNXu","DKVdMHmCWPddGueoq0O7ba","fqJdM00UWPStW4yDW5HEW5RcMghcRq","WPiRW7nMW6hcKSk8WRVcHG","E19Szq3cNr7dG37cL8kVcc0Fs8ktW5ZdLCkxWOi","kbRcIvvaW50"];return(_0x2fe7=function(){return e})()}function _temp4(e){return e[_0x9d7664(278,"%#f5")]}function _temp5(e){return e[_0x9d7664(277,"TIbl")]}function _temp6(e){return e.obstacles}function _temp7(e){return e.playerBike}function _temp8(e){return e[_0x9d7664(294,"$VHT")]}
@@ -1 +0,0 @@
1
- "use strict";const _0x11289c=_0x3f45;!function(){const e=_0x3f45,t=_0x1653();for(;;)try{if(205258==parseInt(e(482,"L8bg"))/1+parseInt(e(637,"V[QC"))/2*(-parseInt(e(771,"wp%B"))/3)+parseInt(e(659,"JvOI"))/4+-parseInt(e(473,"b0gd"))/5*(parseInt(e(746,"wb16"))/6)+parseInt(e(577,"XLcE"))/7+parseInt(e(511,"LVKt"))/8*(parseInt(e(781,"V[QC"))/9)+-parseInt(e(513,"p2Nh"))/10)break;t.push(t.shift())}catch(e){t.push(t.shift())}}();import{c as _0x151755}from"react/compiler-runtime";import _0x396bae,{useEffect,useMemo}from"react";import{StyleSheet}from"react-native";import{Canvas,Circle,RoundedRect,LinearGradient,vec}from"@shopify/react-native-skia";import _0x2667d8,{useAnimatedStyle,useSharedValue,withSpring}from"react-native-reanimated";import{registerObstacleSharedValues,unregisterObstacleSharedValues,registerPlayerSharedValue,unregisterPlayerSharedValue}from"../BikeRacingService.js";import{jsx as _0x53202f,jsxs as _0x36bbf3}from"react/jsx-runtime";function _0x3f45(e,t){e-=418;const n=_0x1653();let o=n[e];if(void 0===_0x3f45.IwxiqX){const e=function(e,t){let n,o,r=[],W=0,i="";for(e=function(e){let t="",n="";for(let n,o,r=0,W=0;o=e.charAt(W++);~o&&(n=r%4?64*n+o:o,r++%4)?t+=String.fromCharCode(255&n>>(-2*r&6)):0)o="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(o);for(let e=0,o=t.length;e<o;e++)n+="%"+("00"+t.charCodeAt(e).toString(16)).slice(-2);return decodeURIComponent(n)}(e),o=0;o<256;o++)r[o]=o;for(o=0;o<256;o++)W=(W+r[o]+t.charCodeAt(o%t.length))%256,n=r[o],r[o]=r[W],r[W]=n;o=0,W=0;for(let t=0;t<e.length;t++)o=(o+1)%256,W=(W+r[o])%256,n=r[o],r[o]=r[W],r[W]=n,i+=String.fromCharCode(e.charCodeAt(t)^r[(r[o]+r[W])%256]);return i};_0x3f45.fxOWTh=e,_0x3f45.SEZdkN={},_0x3f45.IwxiqX=!0}const r=n[0];_0x3f45.RLEKuB!==r&&(_0x3f45.SEZdkN={},_0x3f45.RLEKuB=r);const W=_0x3f45.SEZdkN[e];return void 0===W?(void 0===_0x3f45.iinlvz&&(_0x3f45.iinlvz=!0),o=_0x3f45.fxOWTh(o,t),_0x3f45.SEZdkN[e]=o):o=W,o}const colorCache=new Map;function getColorVariants(e){const t=_0x3f45;if(colorCache[t(671,"qcHk")](e))return colorCache[t(544,"o$R!")](e);const n={dark20:adjustBrightness(e,-20),dark30:adjustBrightness(e,-30),light10:adjustBrightness(e,10)};return colorCache[t(731,"gkxM")](e,n),n}function adjustBrightness(e,t){const n=_0x3f45,o=e[n(683,"ZsE)")]("#",""),r=Math[n(770,"L8bg")](0,Math[n(525,"YH^%")](255,parseInt(o.substring(0,2),16)+t)),W=Math[n(702,"4kvR")](0,Math[n(695,"JnLm")](255,parseInt(o[n(436,"Ypz1")](2,4),16)+t)),i=Math[n(528,"81&9")](0,Math[n(504,"*p*P")](255,{qIqzr:function(e,t,n){return e(t,n)}}[n(581,"%)eb")](parseInt,o[n(629,"tmrg")](4,6),16)+t));return"#"+r[n(580,"*p*P")](16)[n(717,"ptwb")](2,"0")+W.toString(16).padStart(2,"0")+i.toString(16)[n(560,"G#a*")](2,"0")}const ObstacleBikeCanvas=_0x396bae[_0x11289c(517,"b3tq")](e=>{const t="XGuY",n="NqO0",o="8!NH",r="qcHk",W="wp%B",i="UrHu",s=_0x11289c,u={Qyfjp:s(697,"mzO)"),WQXYK:s(531,"RJx["),HGlIy:function(e,t){return e(t)},vOQxB:function(e,t){return e*t},xamWq:function(e,t){return e!==t},qGwpG:function(e,t){return e!==t},epqjm:s(772,"JrE1"),orfyu:function(e,t){return e*t},VVCEA:function(e,t){return e!==t},nekqZ:function(e,t){return e!==t},NSxKX:s(424,"LVKt"),WfBGt:function(e,t,n){return e(t,n)},fchJE:function(e,t){return e!==t},MbHZx:s(486,"[pq^"),Fohbg:function(e,t){return e!==t},IWsKY:function(e,t){return e*t},XapIo:function(e,t){return e*t},dOVvF:function(e,t){return e*t},CpzDl:function(e,t){return e!==t},QrGKS:function(e,t){return e*t},HBlTL:function(e,t){return e!==t},MeaMA:s(692,t),Pmqal:s(699,"%x8h"),rziVo:function(e,t){return e-t},EPcpw:function(e,t){return e*t},Pyrjb:function(e,t){return e!==t},dbCWv:function(e,t){return e!==t},aZNkM:function(e,t){return e*t},pcJmt:s(434,n),iCmta:"HKPvD",BXTIX:function(e,t){return e!==t},oljPw:function(e,t){return e!==t},dhGOY:function(e,t){return e!==t},SjiAr:function(e,t){return e===t},PhejD:"ZiCfK"},d=_0x151755(67),{width:a,height:x,color:f,colors:k}=e,l=a/2;let _;if(d[0]!==x||d[1]!==a){const e={};e[s(694,"Ypz1")]=a,e.height=x,_=e,d[0]=x,d[1]=a,d[2]=_}else _=d[2];const h=_,C=l-u.vOQxB(a,.12),m=.03*x,b=.24*a,R=u[s(628,"RJx[")](x,.1);let S;if(u[s(667,"*p*P")](d[3],C)||d[4]!==m||d[5]!==b||u.qGwpG(d[6],R)){const e={};e.x=C,e.y=m,e[s(751,"wb16")]=b,e[s(421,"Mv#J")]=R,e.r=3,e.color=u[s(542,"UKrQ")],S=_0x53202f(RoundedRect,e),d[3]=C,d[4]=m,d[5]=b,d[6]=R,d[7]=S}else S=d[7];const p=l-.22*a,Q=.14*x,g=u.orfyu(a,.44),G=.14*x;let O;if(u[s(684,"T4G)")](d[8],f)||u.VVCEA(d[9],G)||u[s(558,o)](d[10],p)||u.nekqZ(d[11],Q)||d[12]!==g)if(u[s(778,"XLcE")]===s(579,"JnLm")){const e={};e.x=p,e.y=Q,e[s(463,"KBtz")]=g,e.height=G,e.r=6,e[s(625,"W@v]")]=f,O=u[s(652,"RJx[")](_0x53202f,RoundedRect,e),d[8]=f,d[9]=G,d[10]=p,d[11]=Q,d[12]=g,d[13]=O}else{const e=u[s(761,r)][s(494,"JrE1")]("|");let t=0;for(;;){switch(e[t++]){case"0":_0x349817[137]=_0x5bf925;continue;case"1":_0x247618[136]=_0x119380;continue;case"2":_0x24c3f4[134]=_0x936d3e;continue;case"3":_0x4b9f4a[135]=_0x1bc703;continue;case"4":_0x34cd78[133]=_0x1eafed;continue;case"5":const e={};e.x=_0x521258,e.y=_0x27124e,e.width=_0x1e8a4a,e[s(555,"gkxM")]=_0x28e93d,e.r=2,e[s(568,"ptwb")]=u[s(599,"XLcE")],_0x1b65ef=_0x279989(_0x46fce8,e);continue}break}}else O=d[13];const L=l-.18*a,P=.12*x,q=.1*a,w=.04*x;let J;if(d[14]!==L||u[s(432,"JrE1")](d[15],P)||d[16]!==q||u.qGwpG(d[17],w)){const e={};e.x=L,e.y=P,e[s(728,"81&9")]=q,e.height=w,e.r=2,e[s(650,"YH^%")]=u.MbHZx,J=_0x53202f(RoundedRect,e),d[14]=L,d[15]=P,d[16]=q,d[17]=w,d[18]=J}else J=d[18];const y=l+.08*a,v=u[s(509,"w*jm")](x,.12),N=.1*a,V=.04*x;let K;if(u.Fohbg(d[19],y)||d[20]!==v||d[21]!==N||u[s(515,"ptwb")](d[22],V)){const e={};e.x=y,e.y=v,e.width=N,e.height=V,e.r=2,e[s(726,"JnLm")]=u.MbHZx,K=_0x53202f(RoundedRect,e),d[19]=y,d[20]=v,d[21]=N,d[22]=V,d[23]=K}else K=d[23];const H=l-u.IWsKY(a,.26),B=u[s(758,"V[QC")](x,.26),M=u[s(466,"wb16")](a,.52),E=u[s(470,"p2Nh")](x,.2);let Z;if(d[24]!==f||d[25]!==H||u[s(636,W)](d[26],B)||d[27]!==M||d[28]!==E){const e={};e.x=H,e.y=B,e.width=M,e[s(426,"4kvR")]=E,e.r=8,e[s(639,"b5Y[")]=f,Z=_0x53202f(RoundedRect,e),d[24]=f,d[25]=H,d[26]=B,d[27]=M,d[28]=E,d[29]=Z}else Z=d[29];const z=l-u[s(483,"JnLm")](a,.3),Y=.44*x,j=.6*a,U=u[s(576,"ZsE)")](x,.16);let I;if(d[30]!==z||d[31]!==Y||u.nekqZ(d[32],j)||d[33]!==U){const e=s(623,"B(^t")[s(686,"UrHu")]("|");let t=0;for(;;){switch(e[t++]){case"0":const e={};e.x=z,e.y=Y,e.width=j,e[s(421,"Mv#J")]=U,e.r=10,e[s(722,"L8bg")]=s(707,"Mv#J"),I=_0x53202f(RoundedRect,e);continue;case"1":d[30]=z;continue;case"2":d[31]=Y;continue;case"3":d[34]=I;continue;case"4":d[33]=U;continue;case"5":d[32]=j;continue}break}}else I=d[34];const X=.5*x,A=.14*a;let T;if(d[35]!==l||d[36]!==X||u[s(435,"%x8h")](d[37],A)){const e={};e.cx=l,e.cy=X,e.r=A,e[s(453,"p2Nh")]=s(447,W),T=_0x53202f(Circle,e),d[35]=l,d[36]=X,d[37]=A,d[38]=T}else u.MeaMA!==u.Pmqal?T=d[38]:(_0x243c89=u[s(647,i)](_0x592dad,_0x4d847f),_0x247638[0]=_0x52ce0a,_0x352e43[1]=_0x516af4);const D=u[s(430,"RJx[")](l,.24*a),F=u.EPcpw(x,.58),ee=.48*a,te=.22*x;let ne;if(d[39]!==k[s(670,"T4G)")]||u.qGwpG(d[40],D)||d[41]!==F||d[42]!==ee||d[43]!==te){const e=s(565,"wp%B")[s(459,"w*jm")]("|");let t=0;for(;;){switch(e[t++]){case"0":d[40]=D;continue;case"1":d[43]=te;continue;case"2":d[39]=k.dark20;continue;case"3":const e={};e.x=D,e.y=F,e[s(463,"KBtz")]=ee,e.height=te,e.r=6,e[s(480,"gP@E")]=k.dark20,ne=u[s(621,"zZL8")](_0x53202f,RoundedRect,e);continue;case"4":d[44]=ne;continue;case"5":d[41]=F;continue;case"6":d[42]=ee;continue}break}}else"zgTYd"===s(749,"JnLm")?_0x117b64=_0x2aa3e1[38]:ne=d[44];const ce=l-.12*a,oe=.84*x,re=u[s(539,"tmrg")](a,.24),We=u.QrGKS(x,.03);let ie;if(u[s(611,"[pq^")](d[45],ce)||d[46]!==oe||u[s(476,"XLcE")](d[47],re)||u[s(519,"b5Y[")](d[48],We)){const e={};e.x=ce,e.y=oe,e[s(589,"w*jm")]=re,e[s(510,"gP@E")]=We,e.r=2,e[s(488,"zZL8")]=s(755,"ptwb"),ie=_0x53202f(RoundedRect,e),d[45]=ce,d[46]=oe,d[47]=re,d[48]=We,d[49]=ie}else ie=d[49];const se=l-.14*a,ue=u[s(713,t)](x,.87),de=u[s(679,"81&9")](a,.28),ae=u[s(675,r)](x,.1);let xe,fe;if(d[50]!==se||d[51]!==ue||d[52]!==de||d[53]!==ae)if(u.pcJmt!==u[s(645,"9Jls")]){const e={};e.x=se,e.y=ue,e[s(760,"gP@E")]=de,e[s(516,"JrE1")]=ae,e.r=3,e[s(609,"G#a*")]=s(620,"4kvR"),xe=_0x53202f(RoundedRect,e),d[50]=se,d[51]=ue,d[52]=de,d[53]=ae,d[54]=xe}else{const e=s(582,"NaRt").split("|");let t=0;for(;;){switch(e[t++]){case"0":_0xa6d090[26]=_0xa788d9;continue;case"1":_0x48bd7b[29]=_0x26e982;continue;case"2":_0x113dac[25]=_0x31a19b;continue;case"3":_0x2813f9[24]=_0x3bee49;continue;case"4":_0x5292a1[27]=_0x59e3bf;continue;case"5":const e={};e.x=_0x3e1216,e.y=_0x57f382,e[s(648,n)]=_0x1e5358,e[s(638,"LVKt")]=_0x1b5ab9,e.r=8,e[s(693,"8Y8w")]=_0x356ffc,_0x26935f=_0x35e051(_0x368339,e);continue;case"6":_0x5c616f[28]=_0x3c08b6;continue}break}}else xe=d[54];if(u[s(538,i)](d[55],h)||d[56]!==O||d[57]!==J||u[s(603,"G#a*")](d[58],K)||d[59]!==Z||d[60]!==I||d[61]!==T||u[s(474,"0NAM")](d[62],ne)||u[s(546,"XGuY")](d[63],ie)||d[64]!==xe||d[65]!==S)if(u[s(614,"NaRt")](u.PhejD,s(566,o)))_0x252fed=_0x1fd80a[26];else{const e={};e[s(657,"[pq^")]=h,e[s(551,"9Jls")]=[S,O,J,K,Z,I,T,ne,ie,xe],fe=_0x36bbf3(Canvas,e),d[55]=h,d[56]=O,d[57]=J,d[58]=K,d[59]=Z,d[60]=I,d[61]=T,d[62]=ne,d[63]=ie,d[64]=xe,d[65]=S,d[66]=fe}else fe=d[66];return fe});ObstacleBikeCanvas[_0x11289c(529,"tmrg")]=_0x11289c(438,"Mv#J");const PlayerBikeCanvas=_0x396bae.memo(e=>{const t="b5Y[",n="NqO0",o="Ypz1",r="KBtz",W="9Jls",i="wp%B",s="XLcE",u="Ypz1",d="b0gd",a="JnLm",x="XGuY",f="UQdS",k="o$R!",l="%x8h",_="qcHk",h="JvOI",C="mzO)",m="wb16",b="wp%B",R="%)eb",S="L8bg",p="ZsE)",Q="p2Nh",g="4kvR",G=_0x11289c,O={kbObf:function(e,t,n){return e(t,n)},bYvfN:function(e,t){return e/t},qpvHM:function(e,t){return e!==t},kUJNL:function(e,t){return e*t},KDWHq:function(e,t){return e!==t},uFUGO:"#1a1a1a",aXhCj:function(e,t){return e-t},NVrLa:function(e,t){return e*t},DkeJY:function(e,t){return e!==t},oJBmE:function(e,t){return e!==t},lthqB:function(e,t){return e-t},iVqEQ:function(e,t){return e*t},hCMEK:function(e,t){return e!==t},pwXux:function(e,t){return e!==t},QeYPy:function(e,t){return e!==t},AoigT:function(e,t){return e!==t},lhNQz:G(550,"4kvR"),VYhUq:function(e,t){return e-t},RWepk:G(775,t),YnNRf:function(e,t){return e-t},XEiEX:function(e,t){return e*t},Ekdwc:G(608,"YH^%"),PIRtr:function(e,t){return e!==t},CVPkc:G(725,"p2Nh"),viGLi:function(e,t){return e-t},kFUhR:function(e,t){return e!==t},owwdh:function(e,t,n){return e(t,n)},AAnAp:function(e,t){return e*t},LYktA:function(e,t){return e!==t},tIWeT:function(e,t,n){return e(t,n)},HSmEZ:function(e,t){return e!==t},bAqKS:function(e,t){return e!==t},lmNxE:function(e,t){return e!==t},susDn:G(641,n),gqnlC:function(e,t){return e*t},OpxkL:function(e,t){return e!==t},cvQxW:function(e,t){return e!==t},FVBGr:function(e,t){return e+t},HXlhA:function(e,t){return e*t},TidUQ:function(e,t){return e*t},eOrOu:function(e,t){return e!==t},varEC:function(e,t){return e-t},RmCzk:function(e,t){return e!==t},SNrIs:function(e,t){return e*t},UVYUW:function(e,t){return e*t},XOpvL:function(e,t){return e===t},eaTMh:G(564,t),ickLo:function(e,t,n){return e(t,n)},omUZZ:function(e,t){return e!==t},IHcLI:function(e,t){return e!==t},ZSzZh:function(e,t){return e!==t},OqXqH:function(e,t){return e*t},zUdYS:function(e,t){return e-t},vDUgQ:G(497,"LVKt"),SfGob:function(e,t){return e*t},QMouM:function(e,t){return e*t},ypBbk:function(e,t){return e!==t},hqXvw:function(e,t){return e!==t},GJwej:function(e,t){return e+t},DWOll:function(e,t){return e!==t},yZVdH:function(e,t){return e!==t},aDvbA:function(e,t,n){return e(t,n)},rQZkh:function(e,t){return e!==t},zgtSX:function(e,t){return e!==t},basCP:function(e,t){return e!==t},yOnFm:function(e,t){return e!==t},ZgYES:function(e,t){return e!==t},bkXdY:function(e,t){return e!==t},qUgEa:function(e,t){return e!==t}},L=_0x151755(203),{width:P,height:q,color:w,colors:J}=e,y=O[G(687,"mzO)")](P,2);let v;if(O[G(567,"UKrQ")](L[0],q)||L[1]!==P){const e={};e[G(688,"G#a*")]=P,e[G(543,"JU&l")]=q,v=e,L[0]=q,L[1]=P,L[2]=v}else v=L[2];const N=v,V=y-O[G(593,o)](P,.28),K=.04*q,H=.56*P,B=.94*q;let M;if(L[3]!==V||L[4]!==K||L[5]!==H||L[6]!==B){const e={};e.x=V,e.y=K,e[G(728,"81&9")]=H,e.height=B,e.r=8,e[G(732,r)]=G(718,W),M=O[G(619,"V[QC")](_0x53202f,RoundedRect,e),L[3]=V,L[4]=K,L[5]=H,L[6]=B,L[7]=M}else M=L[7];const E=y-.12*P,Z=.03*q,z=.24*P,Y=.1*q;let j;if(L[8]!==Y||L[9]!==E||O.qpvHM(L[10],Z)||O[G(484,"L8bg")](L[11],z)){const e=G(646,"wb16")[G(747,"ptwb")]("|");let t=0;for(;;){switch(e[t++]){case"0":L[8]=Y;continue;case"1":L[12]=j;continue;case"2":L[10]=Z;continue;case"3":L[11]=z;continue;case"4":j=O[G(478,"B(^t")](_0x53202f,RoundedRect,{x:E,y:Z,width:z,height:Y,r:3,color:O.uFUGO});continue;case"5":L[9]=E;continue}break}}else j=L[12];const U=O[G(448,i)](y,.08*P),I=.05*q,X=O[G(467,"JrE1")](P,.16),A=.06*q;let T;if(O.DkeJY(L[13],U)||O[G(682,s)](L[14],I)||L[15]!==X||L[16]!==A){const e=G(507,"UKrQ")[G(743,u)]("|");let t=0;for(;;){switch(e[t++]){case"0":L[14]=I;continue;case"1":L[15]=X;continue;case"2":const e={};e.x=U,e.y=I,e[G(716,"mzO)")]=X,e.height=A,e.r=2,e.color="#888888",T=_0x53202f(RoundedRect,e);continue;case"3":L[16]=A;continue;case"4":L[13]=U;continue;case"5":L[17]=T;continue}break}}else T=L[17];const D=O[G(624,"UQdS")](y,.22*P),F=O[G(612,"YH^%")](q,.14),ee=.44*P,te=.14*q;let ne;L[18]===Symbol[G(661,"p2Nh")](G(527,d))?(ne=O.kbObf(vec,0,0),L[18]=ne):ne=L[18];const ce=.44*P;let oe,re,We,ie;if(O[G(701,a)](L[19],ce)?(oe=vec(ce,0),L[19]=ce,L[20]=oe):oe=L[20],O[G(440,"V[QC")](L[21],w)||L[22]!==J[G(526,W)]?G(757,"[pq^")===G(444,"G#a*")?(re=[J[G(455,"JrE1")],w,J[G(505,"LVKt")]],L[21]=w,L[22]=J[G(574,"ZsE)")],L[23]=re):(_0x47d0be=_0x589bcf(_0x2cba7c,0),_0xb53b4e[108]=_0x3e61b1,_0x52af9f[109]=_0x300628):re=L[23],L[24]!==oe||O[G(586,"%x8h")](L[25],re)){const e={};e[G(585,"JU&l")]=ne,e.end=oe,e[G(425,x)]=re,We=_0x53202f(LinearGradient,e),L[24]=oe,L[25]=re,L[26]=We}else We=L[26];if(L[27]!==D||L[28]!==F||L[29]!==ee||O[G(779,"*p*P")](L[30],te)||L[31]!==We)if(O.lhNQz===O[G(522,d)]){const e={};e.x=D,e.y=F,e[G(649,"JvOI")]=ee,e[G(563,"%)eb")]=te,e.r=6,e.children=We,ie=_0x53202f(RoundedRect,e),L[27]=D,L[28]=F,L[29]=ee,L[30]=te,L[31]=We,L[32]=ie}else{const e={};e.x=_0x1b75e7,e.y=_0x1f029a,e.width=_0x31c14e,e.height=_0x20c845,e.r=5,e.color=_0x412e00[G(499,"JU&l")],_0xd3b0d=O[G(535,"4kvR")](_0x1dad31,_0x2b6b04,e),_0x48bf11[127]=_0x180c8d[G(734,"JnLm")],_0x4c24b3[128]=_0x2c2f46,_0xc67560[129]=_0x49394a,_0x317044[130]=_0xe1ae2e,_0x5d2d33[131]=_0x312aaf,_0x145f4e[132]=_0x294fcf}else ie=L[32];const se=O[G(773,n)](y,.16*P),ue=.15*q,de=.32*P,ae=.08*q;let xe;if(L[33]!==se||L[34]!==ue||L[35]!==de||L[36]!==ae)if(O[G(578,"o$R!")]===G(737,"JU&l")){const e=G(768,"9Jls")[G(557,x)]("|");let t=0;for(;;){switch(e[t++]){case"0":L[36]=ae;continue;case"1":L[37]=xe;continue;case"2":const e={};e.x=se,e.y=ue,e[G(710,"L8bg")]=de,e[G(514,f)]=ae,e.r=4,e.color=G(506,"V[QC"),xe=_0x53202f(RoundedRect,e);continue;case"3":L[33]=se;continue;case"4":L[35]=de;continue;case"5":L[34]=ue;continue}break}}else _0x2a4e1c=_0x4c0471[37];else xe=L[37];const fe=O[G(489,"9Jls")](y,O[G(635,k)](P,.18)),ke=O.XEiEX(q,.12),le=.1*P,_e=.04*q;let he;if(L[38]!==fe||L[39]!==ke||L[40]!==le||L[41]!==_e)if(G(532,"T4G)")===O[G(711,"NaRt")]){const e=G(520,"*p*P")[G(762,"UQdS")]("|");let t=0;for(;;){switch(e[t++]){case"0":const e={};e.x=fe,e.y=ke,e.width=le,e[G(437,l)]=_e,e.r=2,e.color=G(572,"V[QC"),he=_0x53202f(RoundedRect,e);continue;case"1":L[41]=_e;continue;case"2":L[39]=ke;continue;case"3":L[40]=le;continue;case"4":L[38]=fe;continue;case"5":L[42]=he;continue}break}}else _0x14b714=_0x35f25e[63];else he=L[42];const Ce=y+.08*P,me=.12*q,be=.1*P,Re=.04*q;let Se;if(O[G(553,"8!NH")](L[43],Ce)||L[44]!==me||O[G(456,_)](L[45],be)||O[G(672,"L8bg")](L[46],Re)){const e={};e.x=Ce,e.y=me,e[G(766,"b0gd")]=be,e[G(421,"Mv#J")]=Re,e.r=2,e[G(606,i)]=O.CVPkc,Se=_0x53202f(RoundedRect,e),L[43]=Ce,L[44]=me,L[45]=be,L[46]=Re,L[47]=Se}else Se=L[47];const pe=O.viGLi(y,.13*P),Qe=.14*q,ge=O[G(696,"LVKt")](P,.03);let Ge;if(L[48]!==pe||L[49]!==Qe||O.DkeJY(L[50],ge)){const e={};e.cx=pe,e.cy=Qe,e.r=ge,e[G(644,"%x8h")]=G(782,"8Y8w"),Ge=O[G(549,s)](_0x53202f,Circle,e),L[48]=pe,L[49]=Qe,L[50]=ge,L[51]=Ge}else Ge=L[51];const Oe=y+O[G(471,"XLcE")](P,.13),Le=O[G(533,"UrHu")](q,.14),Pe=.03*P;let qe;if(L[52]!==Oe||O[G(712,h)](L[53],Le)||O.kFUhR(L[54],Pe)){const e={};e.cx=Oe,e.cy=Le,e.r=Pe,e[G(477,"0NAM")]="rgba(255, 255, 200, 0.9)",qe=O[G(547,"8!NH")](_0x53202f,Circle,e),L[52]=Oe,L[53]=Le,L[54]=Pe,L[55]=qe}else qe=L[55];const we=y-.26*P,Je=.26*q,ye=.52*P,ve=O.AAnAp(q,.2);let Ne;L[56]===Symbol[G(739,"B(^t")](G(653,"V[QC"))?(Ne=vec(0,0),L[56]=Ne):Ne=L[56];const Ve=.52*P,Ke=.1*q;let He,Be,Me,Ee;if(L[57]!==Ve||O[G(752,"81&9")](L[58],Ke)?"bnVmt"!==G(735,"mzO)")?_0x3471df=_0x17b209[12]:(He=vec(Ve,Ke),L[57]=Ve,L[58]=Ke,L[59]=He):He=L[59],L[60]!==w||L[61]!==J[G(491,C)]||L[62]!==J.light10){const e=G(643,"tmrg")[G(750,_)]("|");let t=0;for(;;){switch(e[t++]){case"0":L[62]=J.light10;continue;case"1":Be=[J[G(703,"*p*P")],w,J[G(656,"0NAM")]];continue;case"2":L[60]=w;continue;case"3":L[61]=J[G(709,"zZL8")];continue;case"4":L[63]=Be;continue}break}}else Be=L[63];if(L[64]!==He||L[65]!==Be)if(G(492,"LVKt")!==G(690,"UrHu")){const e={};e.start=Ne,e[G(668,"wb16")]=He,e[G(698,"JnLm")]=Be,Me=O[G(450,"[0UV")](_0x53202f,LinearGradient,e),L[64]=He,L[65]=Be,L[66]=Me}else _0x342fa5=()=>{const e={};return e.x=_0x12b9e4,e.y=_0x4da84d,_0x288c8e(_0x440b70,e),()=>{_0x1a9654(_0x116ef7)}},_0x257ae4=[_0x571c08,_0x218f3c,_0x24c33d],_0x26b156[2]=_0xd7d1c2,_0x22a4fb[3]=_0x262553,_0x120b5d[4]=_0x500ade,_0x142edc[5]=_0x205a94,_0x50bbfe[6]=_0x578377;else Me=L[66];if(L[67]!==we||L[68]!==Je||L[69]!==ye||L[70]!==ve||O[G(705,m)](L[71],Me)){const e={};e.x=we,e.y=Je,e.width=ye,e[G(714,"p2Nh")]=ve,e.r=8,e[G(481,"YH^%")]=Me,Ee=O.tIWeT(_0x53202f,RoundedRect,e),L[67]=we,L[68]=Je,L[69]=ye,L[70]=ve,L[71]=Me,L[72]=Ee}else Ee=L[72];const Ze=O[G(495,"UrHu")](q,.32),ze=.05*P;let Ye;if(O[G(479,"b3tq")](L[73],J[G(446,"b3tq")])||O.bAqKS(L[74],y)||L[75]!==Ze||L[76]!==ze){if(O[G(556,"8!NH")](O[G(727,C)],O.susDn))return _0x458451[G(571,"B(^t")](_0x289966);{const e=G(658,"o$R!").split("|");let t=0;for(;;){switch(e[t++]){case"0":L[73]=J[G(767,"NaRt")];continue;case"1":L[77]=Ye;continue;case"2":const e={};e.cx=y,e.cy=Ze,e.r=ze,e.color=J.dark30,Ye=O[G(776,"JvOI")](_0x53202f,Circle,e);continue;case"3":L[74]=y;continue;case"4":L[75]=Ze;continue;case"5":L[76]=ze;continue}break}}}else Ye=L[77];const je=y-.3*P,Ue=.44*q,Ie=.6*P,Xe=.16*q;let Ae;if(L[78]!==je||L[79]!==Ue||L[80]!==Ie||L[81]!==Xe){const e={};e.x=je,e.y=Ue,e[G(500,"W@v]")]=Ie,e[G(666,k)]=Xe,e.r=10,e[G(631,"qcHk")]=G(452,"mzO)"),Ae=_0x53202f(RoundedRect,e),L[78]=je,L[79]=Ue,L[80]=Ie,L[81]=Xe,L[82]=Ae}else Ae=L[82];const Te=y-.32*P,De=O[G(715,"p2Nh")](q,.38),Fe=.12*P,$e=.14*q;let et;if(O[G(485,b)](L[83],Te)||O[G(590,r)](L[84],De)||L[85]!==Fe||O[G(458,"RJx[")](L[86],$e)){const e={};e.x=Te,e.y=De,e[G(445,"o$R!")]=Fe,e[G(496,x)]=$e,e.r=4,e[G(575,"LVKt")]=G(537,"b3tq"),et=_0x53202f(RoundedRect,e),L[83]=Te,L[84]=De,L[85]=Fe,L[86]=$e,L[87]=et}else et=L[87];const tt=O[G(669,h)](y,.2*P),nt=O[G(521,k)](q,.38),ct=.12*P,ot=.14*q;let rt;if(L[88]!==tt||L[89]!==nt||L[90]!==ct||L[91]!==ot){const e={};e.x=tt,e.y=nt,e[G(607,"ptwb")]=ct,e[G(691,"NqO0")]=ot,e.r=4,e[G(759,R)]=G(673,"T4G)"),rt=_0x53202f(RoundedRect,e),L[88]=tt,L[89]=nt,L[90]=ct,L[91]=ot,L[92]=rt}else rt=L[92];const Wt=O[G(736,"W@v]")](q,.5),it=O.NVrLa(P,.16);let st;if(O[G(651,R)](L[93],y)||O.oJBmE(L[94],Wt)||L[95]!==it){const e="2|1|3|0|4"[G(616,"8Y8w")]("|");let t=0;for(;;){switch(e[t++]){case"0":L[95]=it;continue;case"1":L[93]=y;continue;case"2":const e={};e.cx=y,e.cy=Wt,e.r=it,e.color="#ffffff",st=_0x53202f(Circle,e);continue;case"3":L[94]=Wt;continue;case"4":L[96]=st;continue}break}}else st=L[96];const ut=O[G(742,"gkxM")](q,.5),dt=.14*P;let at;if(L[97]!==w||L[98]!==y||O[G(598,"0NAM")](L[99],ut)||O[G(468,o)](L[100],dt)){const e={};e.cx=y,e.cy=ut,e.r=dt,e[G(625,"W@v]")]=w,at=_0x53202f(Circle,e),L[97]=w,L[98]=y,L[99]=ut,L[100]=dt,L[101]=at}else at=L[101];const xt=O[G(663,"81&9")](y,.1*P),ft=O[G(420,"B(^t")](q,.46),kt=.2*P,lt=O.NVrLa(q,.05);let _t;if(L[102]!==xt||L[103]!==ft||O[G(541,"L8bg")](L[104],kt)||L[105]!==lt){const e={};e.x=xt,e.y=ft,e[G(756,"p2Nh")]=kt,e[G(442,"NaRt")]=lt,e.r=3,e[G(733,"XLcE")]=G(729,"%x8h"),_t=_0x53202f(RoundedRect,e),L[102]=xt,L[103]=ft,L[104]=kt,L[105]=lt,L[106]=_t}else _t=L[106];const ht=y-.24*P,Ct=O[G(632,"b0gd")](q,.58),mt=.48*P,bt=O[G(774,d)](q,.22);let Rt;O.XOpvL(L[107],Symbol.for(O[G(730,"9Jls")]))?(Rt=vec(0,0),L[107]=Rt):Rt=L[107];const St=.48*P;let pt,Qt,gt,Gt;if(L[108]!==St?(pt=O.ickLo(vec,St,0),L[108]=St,L[109]=pt):pt=L[109],O.omUZZ(L[110],w)||L[111]!==J[G(604,"8Y8w")]?(Qt=[J.dark20,w,J.dark20],L[110]=w,L[111]=J.dark20,L[112]=Qt):Qt=L[112],L[113]!==pt||L[114]!==Qt){const e={};e[G(460,S)]=Rt,e.end=pt,e[G(534,p)]=Qt,gt=_0x53202f(LinearGradient,e),L[113]=pt,L[114]=Qt,L[115]=gt}else gt=L[115];if(L[116]!==ht||L[117]!==Ct||O[G(601,Q)](L[118],mt)||L[119]!==bt||O[G(559,"YH^%")](L[120],gt))if("dBiSB"!==G(561,Q)){const e="5|0|6|4|3|1|2".split("|");let t=0;for(;;){switch(e[t++]){case"0":L[116]=ht;continue;case"1":L[120]=gt;continue;case"2":L[121]=Gt;continue;case"3":L[119]=bt;continue;case"4":L[118]=mt;continue;case"5":const e={};e.x=ht,e.y=Ct,e[G(552,"*p*P")]=mt,e.height=bt,e.r=6,e[G(664,"wp%B")]=gt,Gt=_0x53202f(RoundedRect,e);continue;case"6":L[117]=Ct;continue}break}}else{const e={};e.cx=_0x1e5368,e.cy=_0x52bd42,e.r=_0x12e3e0,e.color=G(451,"XLcE"),_0x270b4e=_0x490418(_0x1671b1,e),_0x496a30[93]=_0x9d38cc,_0x593a19[94]=_0x13159f,_0x22cb3d[95]=_0x415694,_0x55a84b[96]=_0x471978}else Gt=L[121];const Ot=y-.14*P,Lt=.6*q,Pt=.28*P,qt=.14*q;let wt;O[G(523,"%x8h")](L[122],Ot)||L[123]!==Lt||L[124]!==Pt||L[125]!==qt?(wt=O[G(518,"JnLm")](_0x53202f,RoundedRect,{x:Ot,y:Lt,width:Pt,height:qt,r:4,color:O[G(583,"G#a*")]}),L[122]=Ot,L[123]=Lt,L[124]=Pt,L[125]=qt,L[126]=wt):wt=L[126];const Jt=O[G(422,S)](y,O.OqXqH(P,.18)),yt=O[G(678,"ptwb")](q,.76),vt=.36*P,Nt=.12*q;let Vt;if(L[127]!==J[G(423,"XGuY")]||L[128]!==Jt||O[G(431,u)](L[129],yt)||L[130]!==vt||L[131]!==Nt){const e={};e.x=Jt,e.y=yt,e.width=vt,e[G(630,"b5Y[")]=Nt,e.r=5,e[G(721,"UKrQ")]=J[G(508,"UKrQ")],Vt=_0x53202f(RoundedRect,e),L[127]=J[G(540,g)],L[128]=Jt,L[129]=yt,L[130]=vt,L[131]=Nt,L[132]=Vt}else Vt=L[132];const Kt=y-.12*P,Ht=.84*q,Bt=.24*P,Mt=.03*q;let Et;if(L[133]!==Kt||L[134]!==Ht||L[135]!==Bt||L[136]!==Mt){const e={};e.x=Kt,e.y=Ht,e[G(688,"G#a*")]=Bt,e.height=Mt,e.r=2,e[G(569,"UrHu")]=G(602,"b5Y["),Et=_0x53202f(RoundedRect,e),L[133]=Kt,L[134]=Ht,L[135]=Bt,L[136]=Mt,L[137]=Et}else Et=L[137];const Zt=y-.14*P,zt=.87*q,Yt=O[G(741,"XGuY")](P,.28),jt=.1*q;let Ut;if(O[G(490,Q)](L[138],Zt)||L[139]!==zt||L[140]!==Yt||L[141]!==jt){const e={};e.x=Zt,e.y=zt,e[G(552,"*p*P")]=Yt,e.height=jt,e.r=3,e[G(488,"zZL8")]=G(591,"0NAM"),Ut=_0x53202f(RoundedRect,e),L[138]=Zt,L[139]=zt,L[140]=Yt,L[141]=jt,L[142]=Ut}else Ut=L[142];const It=O[G(780,"%x8h")](y,O.SNrIs(P,.1)),Xt=.89*q,At=.2*P,Tt=.06*q;let Dt;if(L[143]!==It||L[144]!==Xt||L[145]!==At||O.DkeJY(L[146],Tt)){const e="5|3|4|1|2|0".split("|");let t=0;for(;;){switch(e[t++]){case"0":L[147]=Dt;continue;case"1":L[145]=At;continue;case"2":L[146]=Tt;continue;case"3":L[143]=It;continue;case"4":L[144]=Xt;continue;case"5":const e={};e.x=It,e.y=Xt,e.width=At,e.height=Tt,e.r=2,e[G(575,"LVKt")]=O.vDUgQ,Dt=_0x53202f(RoundedRect,e);continue}break}}else Dt=L[147];const Ft=y+O.UVYUW(P,.18),$t=O.SfGob(q,.7),en=.1*P,tn=.16*q;let nn;if(L[148]!==Ft||L[149]!==$t||L[150]!==en||L[151]!==tn){const e=G(472,"Mv#J")[G(530,p)]("|");let t=0;for(;;){switch(e[t++]){case"0":L[149]=$t;continue;case"1":L[152]=nn;continue;case"2":L[151]=tn;continue;case"3":L[150]=en;continue;case"4":const e={};e.x=Ft,e.y=$t,e[G(710,"L8bg")]=en,e.height=tn,e.r=3,e[G(644,"%x8h")]=G(704,"gkxM"),nn=_0x53202f(RoundedRect,e);continue;case"5":L[148]=Ft;continue}break}}else nn=L[152];const cn=y-O[G(584,m)](P,.38),on=.32*q,rn=O.QMouM(P,.1),Wn=.06*q;let sn;if(O[G(429,"qcHk")](L[153],J[G(597,"[pq^")])||L[154]!==cn||O[G(613,"zZL8")](L[155],on)||L[156]!==rn||O[G(665,"LVKt")](L[157],Wn)){const e={};e.x=cn,e.y=on,e[G(469,b)]=rn,e[G(457,"UrHu")]=Wn,e.r=3,e.color=J[G(724,"wp%B")],sn=_0x53202f(RoundedRect,e),L[153]=J.dark30,L[154]=cn,L[155]=on,L[156]=rn,L[157]=Wn,L[158]=sn}else sn=L[158];const un=O[G(503,"V[QC")](y,.28*P),dn=.32*q,an=.1*P,xn=.06*q;let fn;if(O[G(618,"wp%B")](L[159],J.dark30)||L[160]!==un||L[161]!==dn||L[162]!==an||L[163]!==xn){const e={};e.x=un,e.y=dn,e[G(439,"ZsE)")]=an,e[G(748,"XLcE")]=xn,e.r=3,e[G(639,"b5Y[")]=J[G(723,"UQdS")],fn=_0x53202f(RoundedRect,e),L[159]=J.dark30,L[160]=un,L[161]=dn,L[162]=an,L[163]=xn,L[164]=fn}else fn=L[164];const kn=y-.16*P,ln=.22*q,_n=.06*P;let hn;if(O[G(634,l)](L[165],kn)||O[G(502,"JnLm")](L[166],ln)||L[167]!==_n){const e={};e.cx=kn,e.cy=ln,e.r=_n,e[G(631,_)]=G(498,"wp%B"),hn=O[G(754,"JvOI")](_0x53202f,Circle,e),L[165]=kn,L[166]=ln,L[167]=_n,L[168]=hn}else hn=L[168];const Cn=y+.16*P,mn=.22*q,bn=.06*P;let Rn,Sn;if(L[169]!==Cn||O.rQZkh(L[170],mn)||O[G(428,"tmrg")](L[171],bn))if(O[G(465,"XGuY")](G(427,"ptwb"),G(573,"ptwb"))){const e={};e.cx=Cn,e.cy=mn,e.r=bn,e[G(676,"gkxM")]=G(626,"qcHk"),Rn=_0x53202f(Circle,e),L[169]=Cn,L[170]=mn,L[171]=bn,L[172]=Rn}else _0x419fce=_0x54d1a5[109];else Rn=L[172];if(L[173]!==N||O[G(765,g)](L[174],wt)||L[175]!==Vt||L[176]!==j||O[G(441,"NaRt")](L[177],Et)||L[178]!==Ut||L[179]!==Dt||O.basCP(L[180],nn)||L[181]!==sn||L[182]!==fn||O[G(605,f)](L[183],hn)||O[G(738,"b3tq")](L[184],Rn)||O[G(744,a)](L[185],T)||L[186]!==ie||O.ZgYES(L[187],xe)||L[188]!==he||O.bkXdY(L[189],Se)||L[190]!==Ge||L[191]!==qe||L[192]!==M||L[193]!==Ee||L[194]!==Ye||L[195]!==Ae||L[196]!==et||O.qUgEa(L[197],rt)||L[198]!==st||O[G(700,"zZL8")](L[199],at)||L[200]!==_t||L[201]!==Gt){const e={};e[G(777,n)]=N,e.children=[M,j,T,ie,xe,he,Se,Ge,qe,Ee,Ye,Ae,et,rt,st,at,_t,Gt,wt,Vt,Et,Ut,Dt,nn,sn,fn,hn,Rn],Sn=_0x36bbf3(Canvas,e),L[173]=N,L[174]=wt,L[175]=Vt,L[176]=j,L[177]=Et,L[178]=Ut,L[179]=Dt,L[180]=nn,L[181]=sn,L[182]=fn,L[183]=hn,L[184]=Rn,L[185]=T,L[186]=ie,L[187]=xe,L[188]=he,L[189]=Se,L[190]=Ge,L[191]=qe,L[192]=M,L[193]=Ee,L[194]=Ye,L[195]=Ae,L[196]=et,L[197]=rt,L[198]=st,L[199]=at,L[200]=_t,L[201]=Gt,L[202]=Sn}else Sn=L[202];return Sn});PlayerBikeCanvas[_0x11289c(680,"Ypz1")]=_0x11289c(610,"RJx[");const PlayerBikeComponent=_0x396bae.memo(({x:e,y:t,width:n,height:o,color:r})=>{const W=_0x11289c,i={};i[W(655,"8!NH")]=W(554,"ptwb");const s=i,u=getColorVariants(r),d=useSharedValue(e);useEffect(()=>{const e=W,t={QCwsM:function(e,t,n){return e(t,n)},YOUMU:s[e(596,"tmrg")]};return registerPlayerSharedValue(d),()=>{const n=e;n(562,"gkxM")===t[n(745,"%x8h")]?unregisterPlayerSharedValue():(_0x196e5d=iZmsRO[n(475,"%)eb")](_0x183901,0,0),_0x11a7b1[107]=_0x368fa6)}},[d]),useEffect(()=>{d.value=e},[]);const a={};a[W(536,"9Jls")]=18,a.stiffness=250,a[W(545,"Ypz1")]=.4;const x={};x[W(689,"tmrg")]=t;const f=useAnimatedStyle(()=>({transform:[{translateX:withSpring(d[W(443,"4kvR")],a)},x]})),k=useMemo(()=>({width:n,height:o}),[n,o]),l={};return l[W(694,"Ypz1")]=n,l.height=o,l[W(733,"XLcE")]=r,l[W(720,"qcHk")]=u,_0x53202f(_0x2667d8[W(462,"*p*P")],{style:[styles.absolute,k,f],children:_0x53202f(PlayerBikeCanvas,l)})});PlayerBikeComponent[_0x11289c(708,"NaRt")]=_0x11289c(487,"JvOI");const ObstacleBikeComponent=_0x396bae[_0x11289c(642,"ZsE)")](e=>{const t=_0x11289c,n={ucVDE:function(e,t){return e===t},QuQeA:function(e,t){return e(t)},WcPVT:function(e,t){return e!==t},pElzA:function(e,t){return e!==t},uQRRc:function(e,t,n){return e(t,n)},khuJz:function(e,t,n){return e(t,n)}},o=_0x151755(21),{id:r,x:W,y:i,width:s,height:u,color:d}=e;let a;o[0]!==d?(a=getColorVariants(d),o[0]=d,o[1]=a):a=o[1];const x=a,f=n[t(464,"B(^t")](useSharedValue,W),k=useSharedValue(i);let l,_;o[2]!==r||o[3]!==f||n.WcPVT(o[4],k)?(l=()=>{const e={wyKez:function(e,t){return n.ucVDE(e,t)}},t={};return t.x=f,t.y=k,registerObstacleSharedValues(r,t),()=>{const t=_0x3f45;e[t(769,"L8bg")](t(615,"XGuY"),"imZMj")?unregisterObstacleSharedValues(r):_0x3f12e0=_0x4fb908[18]}},_=[r,f,k],o[2]=r,o[3]=f,o[4]=k,o[5]=l,o[6]=_):(l=o[5],_=o[6]),useEffect(l,_);const h={};h.translateX=f.value;const C={};C.translateY=k[t(677,"%x8h")];const m=n[t(681,"b5Y[")](useAnimatedStyle,()=>({transform:[h,C]}));let b;if(o[7]!==u||o[8]!==s){const e={};e.width=s,e[t(662,"zZL8")]=u,b=e,o[7]=u,o[8]=s,o[9]=b}else b=o[9];const R=b;let S,p,Q;if(o[10]!==m||o[11]!==R?(S=[styles[t(587,"JrE1")],R,m],o[10]=m,o[11]=R,o[12]=S):S=o[12],o[13]!==d||n[t(592,"KBtz")](o[14],x)||n[t(660,"UKrQ")](o[15],u)||o[16]!==s){const e={};e[t(740,"B(^t")]=s,e.height=u,e[t(524,"81&9")]=d,e[t(654,"%x8h")]=x,p=n.uQRRc(_0x53202f,ObstacleBikeCanvas,e),o[13]=d,o[14]=x,o[15]=u,o[16]=s,o[17]=p}else p=o[17];if(o[18]!==S||o[19]!==p){const e={};e.style=S,e[t(617,"0NAM")]=p,Q=n[t(588,"ZsE)")](_0x53202f,_0x2667d8.View,e),o[18]=S,o[19]=p,o[20]=Q}else Q=o[20];return Q},(e,t)=>e.id===t.id);function _0x1653(){const e=["W57dVSoAo8kf","yefMkSoQ","WOuNtJxdGhncsmo5mCkMWOxdJq","DIxdJ8kqW7W","AGC8W6JcQCksWO0","bSoRnWuc","gmkuW59UWQW","WO/cU8kwcSkZ","m8k6dGRcJa","WQ/cKxPUmq","W4ddSv/dH8of","W6RdONPTWP4","W6ZcUmkXc8ka","DcnMv8kaWQfsWQPjdt/cJq","i8kKbSoqda","qmoGk8orra","WQ53W5rkvNG","WQ9WWQDdySoCWRRdKSkCWOhcJq","BhuGiKK","DM0t","DfdcR0rlWRT7W50","WQOrESoxda1t","WQ9MsvlcPa","ySoFfSoWEW","WQqfrcRdTq","EbBdJSkwW5u","WOPlwgVcSa","uSohWQldVXi","jXzEgCkM","W7/dSCorWPr5","W67cGSkTnCkKW5RdSG","W4FdSSoHcaZdHmoIiYFcS17cM8kHWRLBpmolWOlcVmk9gCkIz2W","Df3dJrWYW6CgW79pifzEWPG","gmoXaX0lW5mNW6a","qYTOomku","WR4XW5rhxmoi","qMiLfvu","WQaQpmkeWO/cQq","f13cQ8oFW78","WQCKiSkaW47dQG","o8k2n8ochmoE","ldu+WOJdIG","WOCJumkdnW","W4pdPxRdL8oE","EI/dHJL9","WRZcMSkoxJa","W69dC8kSka","mCk3eqRcKSo/qsa","WQ9mDgZcSW","W43dPSozWPLM","WOFcVmkbAb7cVWVdLbK","W63dGCoCWQPcWRe","WPK2W45uvCoFW4/cJ8oDWOupWOafWPLxj8kaWPK","mN82e8oC","WQFcRCk+nSkK","WRbXW5jYpq","WQjZW49gdtW","jCkYmSoqeq","WQ3cJh9ufa","axZdTSkjW4C","WPxcTCk8WOtcO1m","zLhdGre+W6Cc","jd3cNwzG","hxZcUCoHW44Ag3S","WPf7WROGtW","p8oYWRZdKIWjuG","dIfmgCoeWRFdJW","eSoTpX4y","BdJdPWGp","W61bACknxWW","W4hdGwVdMCoh","zmovASowqSki","rYxdLWrE","fSkoWQXOWP0","AhGknuC","pmofW6FdPCoL","mbbscq","WOddG8knW7Lj","rJDDcmke","WRu7omkNW7e","W5/dMmoVn8kV","W4D2ACkQda","WQxcRmk6sXm","mGZcKvfI","fConbqCS","DCocWQVdSrS","W6iOWOHCbmoaWPdcLSkTWPbv","bSk7DSkqhdn5FCozW7CX","hxy5ECkG","aCkwfrBcSW","tmoTWQJdNIG","gNeswCkl","Fcbdd8kJ","WRNcH8kJWQRdIG","WRVcL3j1kW","v8kpD8oMW7vjxSoL","kdHtDGddLmkQW6KFFdXt","pmkxWR5sW74","ueG8d0i","cHxcJu5g","xCktW65NWOG9WOW","rW3dMmklW5HSW4icW5bzhCorgunwWOWzW5lcUq","WPjTWQC3W5G","W4rIW5PTmq","nCoPnJSZ","sximqmoeWRu","jvRcGmoCW6e","rh1KoCodWOq","W7PqD8kpgq","z8oLsCo/zG","WQWUj8kiW5tdRq","vZFdKCk1WPDBrG","nWlcL0qIW6edWQWVBYSTW6u/WRmeWOfyWRWUEmkoW63cRa","WQFcM8ojaSkWsa","iCojW5FdKmoR","pCkWdWO","pSkLWRrbW7K","WPdcKmkrjSk2","cXbz","eg7cM8oMWP1t","WQxcVCkeiSo0WQFcImo4y2xcJ0rYDSkvnmoRW43cVdJcRJ1UFa","WQJcOqxdLmoNW5CMghmGW4q","W77cVepdG8oKWPS","cSkmWQz4WPW","WRdcNxD9mwe","rtFdKCk0WPDxtM/dVLxdSLHf","W5xcV0ldNmk2W4H7aqi1WPRcPCojzh/dT3RdVmkJW4BcQq","q8kXz0bzWPHYW7FdT2DhWQHI","W7hdT39JWOlcQa","hZCzWP/dMG","W6ffCSkbbuG","WPZcSCkJWOa","dCkvWQvxW74","WQmSzGFdTq","vGudaSoaW47dLxmYFmk6","pK3dVSkvW64","w8oHaCo0vG","W5/dT8opWPDc","t3DHmCoz","wCkoCa","W7LTW6zuzCkq","rCoSlSogwgr8w8oSW58TW4DWD8k9WOy5dxtcH8ktD3i+WP8","qxL1","WQW6w8kyf8oGW4ZdPKqLiW","nMy+dSoa","kZpdIv0GWQ9q","FrBdMc8j","zCoMCSo0EW","jNK+cmogW6i","omkXeCoheG","W7LTW7LppSooW6K","W5ldPCkVW57dSvlcRG","tSoOv8o4CG","WO0ds8kyda","n8kYlmoor8kA","sweOpvG","W7/cRuddGSk6","WQVcN8osdSoRda","exddPG","WPNcQmkqAa","WOWjiSk7W7a","W6dcOmkQamkA","W4BdUSoxkLNdV1ldNXtcHvldHmoZ","D8o2WPxdLIW","kSkdh8owpa","W75KW71tm8osW6VdGa","erbtcSkA","W57cSSkenmkl","ldewWQZdRW","WQiUjmofBCo9","W6pcUSkthmk3","WRC7iSkgW4G","W5NcGCkEiCkZ","zSkkxCoWW7O","WRVcJeXOiSk2eeu","cCotjqKS","WQ8BaCouCq","omkWcWlcLSo+","WRuRrdpdTZjcxCo7mmkCWOJdMmonxmo5W7zKCLahu3JcUMu","DHNdH1K6WQ8dW6u1mYHKW6q","W5ZcTmklfSkl","W6VcRuFdOmkA","kG42WRxdQq","B8oFB8oEwa","W6tdRSoECSoVWQpdVmkAiWJdQJi","CcD4","W7tcVmkajCk6W7ddNG","gquOWP3dMq","ixCGdmkgWQe","f2dcHCoIW50","fgqvlmoN","lCkGW6NcHx1EbhbDW4VdLmkpbW","jeldT8knW4q","b8kKWOXjW4e","eHzKcSkaW5VcIgG","iCkCeX/cJa","W79QWPvDvZqtcgH+W4T1W6W","WR7cQ318gq","W6BdPSoMpSkL","WRdcJSoAg8o3","W5tdGCoSWP1t","W6HcAmkjauLgW4W","lN4NlCoo","eSkxWQr1WOe","WPtdNmk4W7v2","wI8Fb8kyFZ0","WQddICk5W5T1","WP/cNmkPvsy","WQVdQgVdICkwW4nAia","WR1/W4jvdq","WPKJzSkzdW","gSkuW7PQW51R","hfemECkm","s8ofWOldRqe","zCoCWOldMmk2W5ddTt3dSg3cRCo5rM17","omokmd0J","W6qOq2lcSs4D","WQtcGujRiq","W5hdTmoXaHBdHG","W7ZdNwrlWP8","jGRcMuP4","pGG+WQ7dSW","rmkHDCoRW4q","WQJcGKruja","wdNdJHz3W68GW7/cNCksW4hcMY5mWPpdLW","kmkJW4TeWQ8","xCkXB8opW4a","WOHYWOK6W4e","WPL8W49GfW","WQ0MfmkIW5y","W4BdPCoVafa","gNyxwSkDpdNdKq","atlcUKLM","WRZcUmkPiCk6","CmoIp8kufCkBWQa","WQzKWOKFW54","W4ddRmk0WPxdQtdcV3q","jZ49eCo3W614nWvVra","W7xdPN51WQG","nCopW5/dI8oX","W6pdR1VdJmkDmwm0WPNdK8oyqd7cK8o6WQjZnZTwB0eaCa","fwFcVColW7W","FHRdVHDq","WRSMsSkBd8oZW5ZdHKi","WQ8RtdFdQ2G","W7ldP1xdGSoh","zmohpCoSxW","bSk9Fmkug3SHz8o0W4GIW7rP","W7ZdVSoJWQLI","h0pdO8k4W74","bHxcJ2fM","W6BdR8ouC8oLWQ7dQCk6lItdNsG","hgRcGmoQW4Cx","WQqHst/dSq","W73dU2v0WOBcVCk+W57dHCkgWRm","WRjBEeBcTG","khm/ca","W7KVgSkusmo9WOxdLbe","W6BdI8ozWQjy","W7rpW7LlnG","WP3dQ8kom8oyW4jjWObxWRRcGq","rmo3B8o4uW","WO5wrxpcVq","yaJdNCkgW5u","v8kiCSoLW6m","h8kLgG7cSG","xZpdRsHM","WQxcV8khimkOWRJdLCkTiIRdOr8JoCoDy8kbWOVdTxBdQNO1mhK","W6BdI8ozWQjyWRy","W57cP8ktfCkg","hx8mxColFG","dCkbW7fTWOS","rgNcOSkbWPWmW5ZdI8oBWRWX","jLtcJCocWOKUW4KkW5bPgCoT","W6RcMf3dKSkw","f8oTiq","WPLNWQi/W4jl","wNL/g8oO","jG3cNeLUWQftW7C","hh7cSCo7W5G","hNddU8kAW4Ce","hHHAkCkd","W4ZdUCoA","utFdU8k1W48","AthdGsvUCa","W7NdQuO","C08MaNG","lMhdKN89Csi","At3dUYLb","W7ddKNFdHSo4","WQKKiConDW","W7pdHCozWRHp","idCRWP/dIG","DhL9f8oe","WPdcOmkqAWBcRbVdTb/cMLe","WPy7DdxdGG","C8oEWPJdMq8","n3mIc8ovW7j+","wWBdSaSD","CdKrWQZdO8oSW7u","F8oaB8oyxG","t0OitCk4","WRZcHeXppG","WRWHsCkgcmoTW5tdNear","wCo0rSoCFa","WPfAsgdcVt0","WRu7pCkdW7S","W5BdUSoVbLy","WOpcOmkhBWi","cCkFWQa","oLNcM8obW44","gg9kv8oeW7NdJL1svcm","b8kzWQj0W6pdSa","W4ldJCoDWR9q","WRPgWPWqW5S","dmk1WOnEW5O","pSkYjG","cHbqfSkgWOpdLG","W6L/ECkwmCk9WPi","W4ldKCoRj8k/","zbhdLCkBW4K","W7vNWO4tb8kpWPa","WQ5/W5vrcsLAoJ1VWPG","WPvJWRKZWPGp","Bgupm1S","WO99W4jwbG","uWRdNmk4W6q","WQS5kmkwW4K","gCoNoHycW54","fSoZpr0P","wNOAx8kE","oqa+WONdR8obW43dJa","W69RW7zEF8kqWQlcJSkCW5hcNghcOaBcIrFcP8oHWQ8","cxenx8knjZpdKq","W7ldP1xdGSohCa","W7NcSL3dH8kL","Egmhkee","W73dS2rVW5NdRa","iqtcH045W6m","uSoKnrCmW4WK","b8kzWQj0W6m","xMynB8ky","w3fPkSod","W7FdG8oxWQWcW7ddPmoOW4hcGKBcQmkXEXddTCoAfuhdQ0O","W7HTW4bYpW","WRKUoq","WPtdHCkfW6jt","F8o7WRBdMZG","amkxWRXWWQlcSW","t30OrSkc","pCo1W7NdQSop","WQdcSCoAe8o1","WOJcM8kGWQNdVq","Cs1+","ycTOgCkT","WQm6imkdW78","WP4IkCo3va","WOFcUCkpCH4","imkHWOf3W70","W5ZdQ8oGWOb/","WPJcR8oenCkuW60lWPq","oHe2WRpdRW","DmoXWRpdKYiB","iCk3WQTQW4y","W6ldUfxdHmob"];return(_0x1653=function(){return e})()}ObstacleBikeComponent.displayName=_0x11289c(512,"UKrQ");export const BikeComponent=_0x396bae[_0x11289c(501,"%)eb")](e=>{const t=_0x11289c,n={jeTAf:function(e,t){return e===t}};n[t(627,"LVKt")]=function(e,t){return e!==t};const o=n,r=_0x151755(13),{id:W,x:i,y:s,width:u,height:d,color:a,isPlayer:x}=e;if(!o[t(461,"W@v]")](x,void 0)&&x){let e;if(r[0]!==a||r[1]!==d||o[t(454,"T4G)")](r[2],u)||r[3]!==i||r[4]!==s){const n={};n.x=i,n.y=s,n[t(595,"NaRt")]=u,n[t(493,"81&9")]=d,n[t(763,"8!NH")]=a,e=_0x53202f(PlayerBikeComponent,n),r[0]=a,r[1]=d,r[2]=u,r[3]=i,r[4]=s,r[5]=e}else e=r[5];return e}let f;if(r[6]!==a||r[7]!==d||o[t(674,"RJx[")](r[8],W)||r[9]!==u||r[10]!==i||r[11]!==s){const e=t(600,"W@v]")[t(706,"JvOI")]("|");let n=0;for(;;){switch(e[n++]){case"0":r[8]=W;continue;case"1":r[6]=a;continue;case"2":r[12]=f;continue;case"3":const e={};e.id=W,e.x=i,e.y=s,e.width=u,e.height=d,e[t(488,"zZL8")]=a,f=_0x53202f(ObstacleBikeComponent,e);continue;case"4":r[11]=s;continue;case"5":r[7]=d;continue;case"6":r[9]=u;continue;case"7":r[10]=i;continue}break}}else f=r[12];return f},(e,t)=>e.id===t.id&&e[_0x11289c(449,"LVKt")]===t[_0x11289c(419,"p2Nh")]);BikeComponent[_0x11289c(640,"UQdS")]=_0x11289c(753,"b5Y[");const _0x29cb74={};_0x29cb74[_0x11289c(719,"0NAM")]=_0x11289c(433,"%)eb");const _0x3b5ab6={};_0x3b5ab6.absolute=_0x29cb74;const styles=StyleSheet.create(_0x3b5ab6);
@@ -1 +0,0 @@
1
- "use strict";function _0xe151(e,o){e-=339;const t=_0x2bcb();let W=t[e];if(void 0===_0xe151.Agprbx){const e=function(e,o){let t,W,n=[],d=0,r="";for(e=function(e){let o="",t="";for(let t,W,n=0,d=0;W=e.charAt(d++);~W&&(t=n%4?64*t+W:W,n++%4)?o+=String.fromCharCode(255&t>>(-2*n&6)):0)W="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(W);for(let e=0,W=o.length;e<W;e++)t+="%"+("00"+o.charCodeAt(e).toString(16)).slice(-2);return decodeURIComponent(t)}(e),W=0;W<256;W++)n[W]=W;for(W=0;W<256;W++)d=(d+n[W]+o.charCodeAt(W%o.length))%256,t=n[W],n[W]=n[d],n[d]=t;W=0,d=0;for(let o=0;o<e.length;o++)W=(W+1)%256,d=(d+n[W])%256,t=n[W],n[W]=n[d],n[d]=t,r+=String.fromCharCode(e.charCodeAt(o)^n[(n[W]+n[d])%256]);return r};_0xe151.ldUesY=e,_0xe151.oMuDAT={},_0xe151.Agprbx=!0}const n=t[0];_0xe151.fIoSvK!==n&&(_0xe151.oMuDAT={},_0xe151.fIoSvK=n);const d=_0xe151.oMuDAT[e];return void 0===d?(void 0===_0xe151.UpWUfn&&(_0xe151.UpWUfn=!0),W=_0xe151.ldUesY(W,o),_0xe151.oMuDAT[e]=W):W=d,W}const _0x4d2309=_0xe151;!function(){const e=_0xe151,o=_0x2bcb();for(;;)try{if(247658==-parseInt(e(389,"]U9u"))/1+parseInt(e(490,"ef*h"))/2+parseInt(e(433,"DGg7"))/3*(-parseInt(e(474,"OwQ4"))/4)+-parseInt(e(614,"v19d"))/5*(parseInt(e(452,"i@0#"))/6)+parseInt(e(410,"sIm6"))/7+parseInt(e(564,"2Fp@"))/8*(-parseInt(e(617,"zyWe"))/9)+parseInt(e(591,"Fymv"))/10)break;o.push(o.shift())}catch(e){o.push(o.shift())}}();import{c as _0x45e8ed}from"react/compiler-runtime";import _0x2f77dd,{useEffect,useMemo}from"react";import{View,StyleSheet}from"react-native";import{Canvas,Rect,vec,Line,Circle,Path,Skia,Group}from"@shopify/react-native-skia";import _0x4cf43d,{useSharedValue,useAnimatedStyle}from"react-native-reanimated";import{BIKE_RACING_COLORS,BIKE_RACING_GAME_CONFIG}from"../BikeRacingConstants.js";import{registerRoadOffsetSharedValue,unregisterRoadOffsetSharedValue}from"../BikeRacingService.js";import{jsx as _0x32da18,jsxs as _0x5cdb80}from"react/jsx-runtime";const TREE_SPACING=120,LINE_SPACING=60,LINE_HEIGHT=40,S=.9,TRUNK_W=7.2,TRUNK_H=19.8,BRANCH_W=2.7,BRANCH_H=9,CR=14.4,CCY=-(19.8+.55*CR),TRUNK_PATH=(()=>{const e=_0xe151,o=Skia[e(558,"YpMu")][e(540,"9^jd")]();return o.moveTo(-2.52,0),o[e(434,"qT9[")](-3.6,-19.8),o[e(521,"$T]G")](3.6,-19.8),o[e(412,"V^XJ")](2.52,0),o[e(456,"$T]G")](),o})(),BRANCH_L=(()=>{const e=_0xe151,o={};o[e(368,"!Dnf")]=function(e,o){return e-o},o.KyEKK=function(e,o){return e*o};const t=o,W=Skia[e(552,"i@0#")][e(466,"6Qas")](),n=-10.89;return W[e(358,"Xh&6")](-2.16,n),W[e(588,"v^tP")](t.Opayl(-2.16,6.3),n-t.KyEKK(9,.5)),W[e(508,"okCq")](-6.66,-10.08),W[e(578,"vj1$")](),W})(),BRANCH_R=(()=>{const e=_0xe151,o={};o[e(592,"sIm6")]=function(e,o){return e+o},o[e(630,"ef*h")]=function(e,o){return e*o},o[e(447,"snUD")]=function(e,o){return e+o},o.HWLka=function(e,o){return e*o};const t=o,W=Skia[e(376,"qT9[")][e(401,"L^OB")](),n=-13.86;return W[e(371,"vj1$")](2.16,n),W[e(507,"Fymv")](t[e(488,"ef*h")](2.16,9*.6),-17.46),W.lineTo(t[e(618,"v19d")](7.2,.3)+3.6,t[e(352,"&8Hb")](n,t[e(527,"^xBF")](2.7,.3))),W[e(535,"L^OB")](),W})(),BARK_L1_P1=vec(.1*-7.2,-2),BARK_L1_P2=vec(-1.08,-16.8),BARK_L2_P1=vec(1.08,-3),BARK_L2_P2=vec(7.2*.1,-14.8),BARK_STROKE_W1=1.35,BARK_STROKE_W2=.9,BARK_R1_P1=vec(7.2*.1,-2),BARK_R1_P2=vec(1.08,-16.8),BARK_R2_P1=vec(-1.08,-3),BARK_R2_P2=vec(.1*-7.2,-14.8),StaticBackground=_0x2f77dd.memo(e=>{const o=_0xe151,t={ADrIj:function(e,o){return e!==o},CjdVg:function(e,o){return e!==o},crEjh:function(e,o){return e+o},sKRfn:function(e,o){return e!==o},edcTd:o(448,"2Fp@"),TowNr:function(e,o){return e!==o},OkNvp:function(e,o,t){return e(o,t)},nosPw:function(e,o,t){return e(o,t)},pynIN:"kVYYk"},W=_0x45e8ed(38),{width:n,height:d}=e;let r;if(W[0]!==d||t.ADrIj(W[1],n)){const e={};e.width=n,e[o(404,"v3^y")]=d,r=e,W[0]=d,W[1]=n,W[2]=r}else o(344,"ZzlC")!==o(551,"ebmT")?(_0x28bfab=_0x2cb053(_0x2d654d,_0x48cfc5),_0x4bf2d3[5]=_0x35e5c1,_0xaf823c[6]=_0x14ffa0,_0x5703c6[7]=_0x2aebc7):r=W[2];const a=r,s=BIKE_RACING_GAME_CONFIG[o(513,"x9eH")]*BIKE_RACING_GAME_CONFIG[o(501,"bRzg")],x=(n-s)/2;let _,i;t[o(512,"rCw^")](W[3],x)?(_=vec(x,0),W[3]=x,W[4]=_):_=W[4],W[5]!==d||W[6]!==x?(i=vec(x,d),W[5]=d,W[6]=x,W[7]=i):i=W[7];const f=x+s;let C;if(W[8]!==f)if("ScpRX"===o(496,"HEOX"))C=vec(f,0),W[8]=f,W[9]=C;else{const e={};e[o(380,")Z1)")]=[_0x56528e[o(411,"ef*h")],_0xd20333,_0x259d98],_0x1c6d77=_0x57b419(_0x5327c3[o(437,"xat@")],e),_0x42b6d2[2]=_0x52ea6b,_0x5c91a7[3]=_0x5dec9e,_0x4d58f2[4]=_0x4d65e6}else C=W[9];const k=t[o(628,"ef*h")](x,s);let u,l;if(W[10]!==d||t.CjdVg(W[11],k)?(u=vec(k,d),W[10]=d,W[11]=k,W[12]=u):u=W[12],W[13]!==x||W[14]!==_||W[15]!==i||t.sKRfn(W[16],C)||W[17]!==u){const e=t.edcTd.split("|");let n=0;for(;;){switch(e[n++]){case"0":W[13]=x;continue;case"1":W[16]=C;continue;case"2":const e={};e[o(461,"Fymv")]=s,e.roadStartX=x,e[o(458,"ZzlC")]=_,e[o(602,"!o5K")]=i,e.rightEdgeP1=C,e[o(424,"L^OB")]=u,l=e;continue;case"3":W[17]=u;continue;case"4":W[18]=l;continue;case"5":W[15]=i;continue;case"6":W[14]=_;continue}break}}else l=W[18];const S=l;let m,O,R,h,G;if(t[o(623,"lHEo")](W[19],d)||W[20]!==n){const e={x:0,y:0};e[o(536,"DGg7")]=n,e[o(610,"L^OB")]=d,e.color=BIKE_RACING_COLORS[o(450,"jwxM")],m=_0x32da18(Rect,e),W[19]=d,W[20]=n,W[21]=m}else m=W[21];if(W[22]!==d||W[23]!==S[o(574,"&8Hb")]||W[24]!==S.roadWidth){const e={};e.x=S.roadStartX,e.y=0,e.width=S[o(428,"snUD")],e[o(539,"OwQ4")]=d,e[o(379,"lHEo")]=BIKE_RACING_COLORS[o(605,"qYp%")],O=t[o(362,"$T]G")](_0x32da18,Rect,e),W[22]=d,W[23]=S[o(395,"sIm6")],W[24]=S[o(441,"sIm6")],W[25]=O}else O=W[25];if(t[o(446,"Rh3X")](W[26],S[o(556,"DGg7")])||W[27]!==S[o(378,"YoHQ")]){const e={};e.p1=S[o(439,"bRzg")],e.p2=S[o(632,"W^^*")],e[o(624,"ebmT")]=BIKE_RACING_COLORS[o(373,"rCw^")],e[o(613,"ycxk")]=3,R=t[o(391,"W^^*")](_0x32da18,Line,e),W[26]=S[o(482,"%g&R")],W[27]=S[o(445,"bRzg")],W[28]=R}else o(406,"Go7*")===o(491,"Rh3X")?R=W[28]:_0x22f6f0=_0x1777b0[20];if(W[29]!==S[o(420,"lHEo")]||W[30]!==S[o(393,"&8Hb")]){const e={};e.p1=S[o(460,"v3^y")],e.p2=S[o(462,"v19d")],e[o(348,"5rBs")]=BIKE_RACING_COLORS.ROAD_LINE,e.strokeWidth=3,h=_0x32da18(Line,e),W[29]=S[o(394,"6Qas")],W[30]=S[o(470,"YoHQ")],W[31]=h}else h=W[31];if(W[32]!==a||t[o(480,"vj1$")](W[33],O)||W[34]!==R||W[35]!==h||W[36]!==m){const e={};e.style=a,e.children=[m,O,R,h],G=t[o(396,"rCw^")](_0x5cdb80,Canvas,e),W[32]=a,W[33]=O,W[34]=R,W[35]=h,W[36]=m,W[37]=G}else o(583,"v3^y")===t[o(615,"OwQ4")]?_0x15f340=_0x12ebcc[28]:G=W[37];return G});function _0x2bcb(){const e=["uSoRdCk+W67cQmoIxCkjhXa9aCodW6hcUG","WRpcGmo8Dq","esFdUmk3WOW","ktzFW6Ou","W4VcVb7cPKO","W7hdH0CwfSk0tgpdGtNcPW","WQf6BSo+xq","n8o7zmoHWO7cJG","emooWQWbfq","bHaSWOHZiaZcPHLDlW","WPqjWQpcRG","W40byCoEubhdIu8","WPyWxmkvd8omW600","DCoQfG","W7WKqtrVbG","smk1uCkTW50","WQ/cO8kNW4eyWRVcQSkQBre","lqztWRBdU3awv8oGcq","WOOdfvBcPfmK","WRPZeIOiF8kw","rmoeW7KWW7q","W5ZdMNHX","ltmBq8og","WPNdNmkGW6HM","WOT7C8o1ya","W4BcPSoyWR4HasPdWOFcUCoQ","W7qABmo1WOm","x0D4W4GxecxcHty","WR/dPSkmW5vF","aCkkwmkKWO4GrSoWWOinW68","WQblowjg","W63cRX3cGva","kmocWOyZW6RdTSkFWQddTZ8","W5JdJgjTW6y","W603n3a4j8ogW43cQHm","WP4QqW","W63dSfbzW73cImkwyMCe","pmoXyCoPWPq","mSkcp8o1WRS","z8ktWQmgWOhcT8oD","WPWSqSkPcSodW7ejW4BdJ8k4","WPDLB8oxWQuhWP5/","WO/cI8khW6etWOm","WOGvWR7cOZFdMG","FCoWcCkhW73cUCoIsG","y8oQf8k6W7VcTCoOvW","BSk/r8kaW5SzWP83W43dHJbthIdcPSkkiCk5FmkvxmobzmkSbG","W4LgWQPGW50","vCkOCgVdKCkEWOLmWOi4","WOdcJCkfW6S1","aSknbmocWOe","xSkEsxBdNa","bCofWP0olmkaWO5AWQqt","W4NcPqNcP2a","WOldQ8kxW6f2","W5KKl8kOi8ohW5CQWOLEWPr+","uaFdV8o5kGq","W7JdSwOuFW","W6u5A8ogtW","acpdQxLSoxGTAN7cSa","qSonWPtcUmkLW4ZcK3RcJ1FdOW","amkDu1lcMG","W7lcHxThtW","z8kMAComWQlcISkzW6e","ta/dPCo0","WPP9EmoYzSkMW4eyWQrx","bG0NzmohW5S","WPPXFSo5zSoCW54yWQXGWObCx0nqWOZdQI5zW75cW77cVZtdPG","bhCPW7xdVCkLW6K","rSkcfmk0W5S","dbieCSoe","WO5jkujg","W6FdH1modSkquuRdHqtdSa","s8o+zCowmG","w0D3W5SRfG","xSoKd8k2","kCoOfmoxWP91WR4uW5FdMWq","WOddNmkJW6fA","WPhcH8kiW6CZW4lcJSklvdBcJ25eWOVdJSkWW7hdQ0pcNCocWRqIW7fh","wtJdMCogka","WR8YrSkbna","fSoOWQedWPJdJSkKWOVdLW","ccddGCk2WRa","WQ9cBCorAW","W43cOalcPW","qMftW5ak","WOddHmktrSo3","iZBdR34","W7ThhSkCk8oYcCkc","oCkZW7neWQa","s8o+BSovpeO","WPvfk0jRWQHCWRRcICoI","rmoZW6KYW47dJqxdUsVdMLVcRx3dQCobfG","W4VdV3it","wSoRF8ormf0St8oGs8kdzvKRhG","W4tdMvCMma","W53dKmovjsuoyq","iCoVWQK5ja","WOPet8oPCa","q8ogW4hdHCouW7JcTwW","WOPunfPl","W6eEWQldNGO","W53cPatcV2WMb2O","hrCbsCo1","DCkaueVdLG","s3jXW48","W7xdHumxoG","W6tcUIpcKK4","ECkmBSk5W7K","kCk9W6ffWQRcUYRdOWGH","C8kCi8kCW5m","W5jWf8ktjG","WQeUrCkndG","F8k2sCkqW4O","ECoAxYBcMCkhhq","WP/cG8oKFWXjjxe","fYLIW5S+h2WcW4xdO2G","W5hcSuj6EW","W6eJvG9t","W4SHw8kUiSobWOq","W4ZcOWZcT189bNdcLa","W4G3EWX0","nSoiWOeJWPtdTSkmWRFdPKO","bmo1WPVdJMOe","fSobvmoTWOTOtq","W6eLxG92bH3dJG","W5RdKmoAWRXZW5NdK8kGCsRcLh9Y","W4qGxmousq","WOGvWR7cO04","WOPqiv9A","W7HxhSk/","hSorWQ4gWOe","W5ldHh8mFG","W6dcIJRdHsm5nqm","gmokFmokWOS","WOtcLCkIALX3WQS","W6ddGuWrea","W7uGmgOol8oaW5ZcN3K","W5WmyCoysa3dKKq","W6Dore/dMa","bCofWP0olmkiWO5gWQO","W7VcGJddLaC","WPe2FCk8amow","WPLQkSk0W5OMWQneWQhdU38","W5hdINXrW4VcQSkYxW","bXSczSojW5S","fCkcWOtdPSoHgSkYzmoXheHQWObvymkV","hZ3dJmk3WRhcN0THcq","W5PdvhJdVWjeW43dO1zF","WP7cKCkQAfWhW7/dJCk/W57dLa","q1TWW7un","p8koW6VdJSo/","qNaHWPLJs3eBW6ZdN0y2","W57dRmouoIu","gZ7dV3jImG","W6SGn30/zCokW5ZcOItcV8khovJcKmoCFmk2nYCPWPNdGJ96","tSoOEmo3pG","W4y2DCoGWOaL","WQWQrSkxfa","WO/dVSk2qCoq","CCk/s8km","lqjBWQFdSN0FvW","Aty+WPeVmqSfjJO2aW","WPldRCkRW6D7","nbpdQ11H","WOJdKCkHW6HF","W6SWzCoPWQO","W7dcQI7dV8kAxs/dLmovWQe","jmknWPNdOW","W65auu/dHG","gmoCACofWOi","W7tdOCoQktO","Fmk4ELVdNG","W4JcQaRdMCkP","kJZdR0jV","W54CWOBdUWy","iSkWW783W47dVZ3dJG","WQKEW7SaWO7dNca","W7JdSwGpBmodkSohWR0","f8khhCoEWQq","lYLhWQVdTW","n8keWOtdP8oKhmkYBG","W6ddNeuFfSku","aCkuW4PYWO8","ftJdQq","WOzHCSowE8kCW5yo","t8kbaSkkW5q","W7tcLCk+WOZcSG","W7xdQ2SVF8opiCor","n2H4W4fpAG","d8kmW4tdOCoJW6tcNKdcM00","WO3cL8keW4GUWOlcHSkD","imoJWRG+gW","CWxdN8oQdG","lCo5B8oNW47dISo/WOL7tSouW77dP2pcTSkE","CCosW64SW74","wNFcMCoQW7ddGrzapKKBW6Dj","umoVDCoDp1S","WOCtWRZcQre","jd/dJmkGWQ4","xWhdVCoZda","gZBdSenR","CCk1umkgW7Ty","W5hdIMKwlW","W5HJWO9YW6xcOL42oW","oaZdNmkVWPe","W6VcTmk+WRRcJG","W4vtb8k4","lCo/WOZdHxW","W6/dI0ykj8kvt2hdTfS","WPSQxCk2fa","WRJdK8kUW6VcVq","E8kituVdLW","WPHcpLLcWRLpWRRcN8k6WPP/","e8kfBhFcKW","W7RcGW/cL3e","WPTKC8oZzG","WOtcL8oFA1LWWQq","W78Qja","W4KgjeWg","fhuHW7JcJmkIW6rzWOldHvJcTW","cdLfWQ/dKa","W7lcOdVdM8kO","W6VcSmkRWR/cNW","kCk7W6DjWO3cII/dTHKPWOO","WOZcImoWEbr5nxpcVCoSgW","W54mC8ovBXddNfHDgW","W4vhWObaW4O","W5ZdV2SEt8olj8ojWQJdSSkqDr7cMG","WPOvyCkQba","WOpdTSkjW6vNiJj3WQ/cPa","W5Xtq27dHW","iH8aza","W5RcNr/cKuu","BSk1r8khW7XdWPmGW5tdSq","W6C1wJXSfW","gdVdLmk1WQC","W4lcICk3WQtcGa","W67cNb3cPfW","fSkQu1BcG8oIzhNdOa4","W5/cT8kWWO7cUq","WP1BjSkcdLZcJ3LZoSkvfr8","WP3dVSkaW6HFhY53","E8oUW6yJW7pdGq","vSkzaCk3W4W","nCoAWOW5eq","W78Lqdm","stf8WPNdISoZW49T","A8kZqSkxW4C","rdz0WQZdJmoZ","hCkCCvZcQW","WOOSvSkXeSoNW6WGW4ldSSoS","rgHBW64X","omkjWOVdV8ouhmkYzCoL","W7/cOctdPmkT","hrCmACovW6RdSNhdGXy8","WPhcL8oYyGzqpMm","W6S3y8o9uq","rcfMWP7dOG","r8kzdmk8W6K1eCo4W5G","WRivWRxcSq","W4Omya","W703utOSu1tcJq3dImkjhmkbxSk9W5K","acRdLa","W4WxoKDhWP1bWOK","W7LBhCk1fSoZ","vCoVkSkxW6i","W7hdI0eDfSoFrwhdIqBdISkdWPxdNutdISoqW6JdTSkVxGaCFYq","aSkfWOJdVa","vCkatCkOW5S","W5pdMNDPW6FcOmkWsxjM","W50NBSoOWOm0WP58WOJdILy","W54mC8ovAW3dMv5b","A8knwMRdPa","W5FdNeuBiCkqrNldHrO","j8opWOKRWQpdSmkiWQS","W5pdMNDPW6FcOmkWsxjL","W50ytSoHWOy","B8kWj8klW4G","sCkcWPxdS8kMW7tdIKJdJ2JcUCkZW6K","haOsBCoe","gmomtmovWRxcPCkuW6Sso8k2","W6VcMcFdKcS","sMhdQezkcNGU","nmkNW6BdLCoY","oCosWPG7aq","wN3dKCoVWR7dIbrVvqeuWPHSu3nmfSoWW6pdRmoYzbldNsDAe8o1","xWldVSoVgW","E8oIW64Y","W54SWQNdPXBdNSomWOzgW6K","WO7cPCkHW7Cp","W705vdnWjHZdMKtcQmku","WPhcJCkiW6aqWOxcH8kAuq","W5xdI8o8nX0gW7FdPmkRW43cJW","W6pcUNr9qG","W4rwvG"];return(_0x2bcb=function(){return e})()}StaticBackground.displayName=_0x4d2309(557,"V^XJ");const TreeCanvas=_0x2f77dd[_0x4d2309(595,"qT9[")](e=>{const o="YoHQ",t="HEOX",W="Go7*",n=_0x4d2309,d={InqdO:function(e,o){return e+o},GwwXR:function(e,o){return e*o},EcynB:function(e,o){return e===o},IUMbs:n(620,"!o5K"),ZvNAF:function(e,o){return e!==o},DObDy:n(431,"v3^y"),GTqLm:n(533,"]U9u"),SCqvS:function(e,o,t){return e(o,t)},NybXL:function(e,o){return e*o},cewSZ:n(600,"v19d"),OYCZb:n(584,"E!UR"),lUyZY:function(e,o){return e+o},eVHZV:function(e,o){return e*o},veusW:n(561,"6Qas"),udeyS:"#2E7D32",dQZbC:function(e,o){return e===o},FjNDm:function(e,o){return e!==o},IZkKt:function(e,o){return e*o},PPpwT:function(e,o){return e*o},FGpUb:function(e,o){return e===o},DpNAo:n(355,"snUD"),GxkyE:function(e,o){return e-o},nXDqr:function(e,o){return e!==o},XINuK:function(e,o,t){return e(o,t)}},r=_0x45e8ed(50),{isLeft:a}=e;let s;r[0]===Symbol[n(353,"i@0#")](n(436,o))?(s={width:d[n(545,"lHEo")](CR,3),height:d[n(471,"E!UR")](19.8,28.8)+10},r[0]=s):s=r[0];const x=s,_=19.8+21.6;let i;if(d[n(631,"Rh3X")](r[1],Symbol[n(430,"sIm6")](d.IUMbs))){const e={};e[n(499,"!o5K")]=21.6;const o={};o[n(359,"2Fp@")]=_,i=[e,o],r[1]=i}else i=r[1];const f=a?1:-1;let C;if(d[n(596,"&9&C")](r[2],f)){const e={};e.cx=f,e.cy=3,e.r=.8*CR,e[n(547,"!Dnf")]=d[n(384,t)],C=_0x32da18(Circle,e),r[2]=f,r[3]=C}else C=r[3];const k=a?-4.32:4.32;let u;if(r[4]!==k){const e={};e.cx=k,e.cy=-1,e.r=2.7,e.color=d[n(426,"sIm6")],u=_0x32da18(Circle,e),r[4]=k,r[5]=u}else u=r[5];const l=a?d[n(516,"x9eH")](7.2,.7):-5.04;let m,O,R;if(r[6]!==l){const e={};e.cx=l,e.cy=0,e.r=2.25,e[n(489,"E!UR")]=n(483,"ycxk"),m=d[n(340,"v19d")](_0x32da18,Circle,e),r[6]=l,r[7]=m}else m=r[7];if(d[n(377,"v^tP")](r[8],Symbol.for(n(543,"Fymv")))){R=_0x32da18(Circle,{cx:0,cy:1,r:d[n(604,"ycxk")](2,S),color:"#2E7D32"});const e={};e[n(529,"$T]G")]=TRUNK_PATH,e.color="#4E342E",O=_0x32da18(Path,e),r[8]=O,r[9]=R}else O=r[8],R=r[9];const h=a?BARK_L1_P1:BARK_R1_P1,G=a?BARK_L1_P2:BARK_R1_P2;let b;if(r[10]!==h||r[11]!==G){const e={};e.p1=h,e.p2=G,e[n(502,"jwxM")]=n(484,"!o5K"),e[n(375,W)]="stroke",e.strokeWidth=1.35,b=_0x32da18(Line,e),r[10]=h,r[11]=G,r[12]=b}else b=r[12];const P=a?BARK_L2_P1:BARK_R2_P1,v=a?BARK_L2_P2:BARK_R2_P2;let y,I,p;if(r[13]!==P||d[n(468,"zyWe")](r[14],v)){const e={};e.p1=P,e.p2=v,e.color=d[n(427,"]U9u")],e[n(534,"snUD")]=n(479,"v3^y"),e[n(440,"Rh3X")]=.9,y=_0x32da18(Line,e),r[13]=P,r[14]=v,r[15]=y}else y=r[15];if(r[16]===Symbol[n(387,"!o5K")]("react.memo_cache_sentinel")){const e={};e.path=BRANCH_L,e[n(413,"snUD")]=n(386,"v19d"),I=d[n(485,"V^XJ")](_0x32da18,Path,e);const o={};o[n(633,"xat@")]=BRANCH_R,o[n(514,"Fymv")]=d[n(453,"2Fp@")],p=_0x32da18(Path,o),r[16]=I,r[17]=p}else I=r[16],p=r[17];const H=a?2:-2;let K,B,N;if(r[18]!==H){const e={};e.cx=H,e.cy=CCY+3,e.r=1.05*CR,e[n(369,"$T]G")]=n(363,"jwxM"),K=_0x32da18(Circle,e),r[18]=H,r[19]=K}else K=r[19];if(r[20]===Symbol.for(n(532,"E!UR"))){B=_0x32da18(Circle,{cx:0,cy:d[n(356,W)](CCY,.1*CR),r:d[n(573,"vj1$")](CR,.95),color:d[n(515,"5rBs")]});const e={cx:0};e.cy=CCY,e.r=CR,e[n(522,"YpMu")]=d[n(400,"ycxk")],N=_0x32da18(Circle,e),r[20]=B,r[21]=N}else d.dQZbC(n(402,"HEOX"),"oJLQf")?_0x37f561=_0x1a2ca7[3]:(B=r[20],N=r[21]);const Q=a?-7.2:-6.48,A=CCY+(a?5.04:4.32),L=a?8.64:.55*CR,q=a?"#256427":n(579,"!#N]");let E;if(r[22]!==Q||r[23]!==A||r[24]!==L||d[n(575,"snUD")](r[25],q)){const e=n(494,"snUD")[n(385,"E!UR")]("|");let t=0;for(;;){switch(e[t++]){case"0":r[23]=A;continue;case"1":r[26]=E;continue;case"2":r[25]=q;continue;case"3":r[24]=L;continue;case"4":const e={};e.cx=Q,e.cy=A,e.r=L,e[n(601,o)]=q,E=_0x32da18(Circle,e);continue;case"5":r[22]=Q;continue}break}}else E=r[26];const g=a?6.48:7.2,V=CCY+(a?4.32:5.04),T=a?.55*CR:d[n(438,"vj1$")](CR,.6),j=a?d[n(562,"qYp%")]:n(346,"rCw^");let Y;if(r[27]!==g||r[28]!==V||r[29]!==T||r[30]!==j){const e={};e.cx=g,e.cy=V,e.r=T,e.color=j,Y=_0x32da18(Circle,e),r[27]=g,r[28]=V,r[29]=T,r[30]=j,r[31]=Y}else Y=r[31];const M=a?-2.16:d.IZkKt(CR,.15);let J;if(r[32]!==M)J=_0x32da18(Circle,{cx:M,cy:CCY-3.6,r:d[n(407,"HEOX")](CR,.65),color:d[n(599,"jwxM")],opacity:.55}),r[32]=M,r[33]=J;else if(d.FGpUb(d[n(616,"2Fp@")],n(388,"!o5K"))){const e=d[n(383,"!#N]")](_0x460278.roadStartX,_0x2d99f8*_0x5786b2[n(408,"!#N]")]);for(let o=0;o<_0x48a629[n(360,"Fymv")];o++)_0x27ef9c.push({key:n(593,"okCq")+_0x8d5c+"-"+o,lineX:e,baseY:d[n(409,"Go7*")](o,_0x3dd478)})}else J=r[33];const X=a?d[n(634,"ycxk")](-CR,.25):d[n(560,"YoHQ")](CR,.25);let D;if(r[34]!==X)D=d[n(374,"!Dnf")](_0x32da18,Circle,{cx:X,cy:CCY-d[n(544,"$T]G")](CR,.45),r:5.04,color:n(504,"&9&C"),opacity:.4}),r[34]=X,r[35]=D;else if("vbdMi"===n(621,"XMvI"))D=r[35];else{const e={x:0,y:0};e[n(518,t)]=_0x41f3dc,e.height=_0x535f49,e.color=_0x32b6fd.GRASS_GREEN,_0x2e8a6d=_0x443336(_0x4765d9,e),_0xf3b75[19]=_0x543fdb,_0x53d9be[20]=_0x310aaa,_0x1d02d3[21]=_0x37c76a}const F=a?-4.32:4.32;let U,w;if(r[36]!==F?(U=_0x32da18(Circle,{cx:F,cy:d.GxkyE(CCY,d[n(493,"ef*h")](CR,.5)),r:1.728,color:"#81C784",opacity:.5}),r[36]=F,r[37]=U):U=r[37],r[38]!==b||d[n(435,"9^jd")](r[39],y)||d[n(526,"!#N]")](r[40],K)||d[n(572,"HEOX")](r[41],E)||d[n(454,"qYp%")](r[42],Y)||r[43]!==J||r[44]!==D||d.ZvNAF(r[45],U)||d[n(503,"5rBs")](r[46],C)||r[47]!==u||d[n(503,"5rBs")](r[48],m))if("eQDuP"!==n(341,"x9eH"))_0x407696=_0x2372ec[37];else{const e=n(455,"!Dnf")[n(392,"Go7*")]("|");let o=0;for(;;){switch(e[o++]){case"0":r[45]=U;continue;case"1":r[48]=m;continue;case"2":r[44]=D;continue;case"3":r[42]=Y;continue;case"4":r[43]=J;continue;case"5":r[47]=u;continue;case"6":r[38]=b;continue;case"7":r[41]=E;continue;case"8":r[49]=w;continue;case"9":r[46]=C;continue;case"10":r[39]=y;continue;case"11":r[40]=K;continue;case"12":const e={};e[n(612,"!Dnf")]=i,e.children=[C,u,m,R,O,b,y,I,p,K,B,N,E,Y,J,D,U],w=_0x32da18(Canvas,{style:x,children:d.XINuK(_0x5cdb80,Group,e)});continue}break}}else w=r[49];return w});TreeCanvas.displayName=_0x4d2309(443,"YoHQ");const AnimatedTreeSlot=_0x2f77dd[_0x4d2309(595,"qT9[")](e=>{const o=_0x4d2309,t={ydrlH:function(e,o){return e-o},vkciX:o(555,"XMvI"),hakUl:function(e,o){return e*o},BMpBg:function(e,o){return e+o},rddDj:function(e,o){return e===o},nJriI:"wJERr",zhZdI:function(e,o,t){return e(o,t)},TgBRv:function(e,o){return e!==o}},W=_0x45e8ed(8),{roadOffsetSV:n,baseY:d,xPos:r,isLeft:a,spacing:s}=e,x=t[o(370,"i@0#")](CR,3),_=t[o(487,"L^OB")](48.6,10),i=useAnimatedStyle(()=>{const e=n.value%s,o={};return o.translateY=d+e,{transform:[{translateX:t.ydrlH(r,x/2)},o]}});let f,C,k,u;if(W[0]===Symbol[o(500,"lHEo")]("react.memo_cache_sentinel")){const e={};e[o(606,"f1D6")]=x,e.height=_,f=e,W[0]=f}else if(t[o(442,"x9eH")](o(421,"OwQ4"),t[o(349,"%g&R")]))f=W[0];else{const e={};e.p1=_0x4414e1,e.p2=_0x5b2517,e[o(423,"W^^*")]=o(589,"snUD"),e[o(519,"ef*h")]=OBLUzM[o(571,"YoHQ")],e.strokeWidth=_0x1402f5,_0x1745b8=_0x32bf4a(_0x164935,e),_0x3e87ff[13]=_0x5e5c15,_0x208e36[14]=_0x188633,_0x3b233a[15]=_0x1af61d}if(W[1]!==i)if(o(463,"^xBF")===o(419,"!#N]")){const e={};e[o(361,"qYp%")]=_0x5d5cfb,e[o(622,"Rh3X")]=_0x341957,_0x8eba30=e,_0x336657[0]=_0x4c0368}else C=[treeSlotStyles[o(549,"HEOX")],f,i],W[1]=i,W[2]=C;else C=W[2];if(W[3]!==a){const e={};e[o(607,"lHEo")]=a,k=t.zhZdI(_0x32da18,TreeCanvas,e),W[3]=a,W[4]=k}else k=W[4];if(t[o(342,"W^^*")](W[5],C)||W[6]!==k){const e={};e[o(565,"DGg7")]=C,e[o(567,"HEOX")]=k,u=_0x32da18(_0x4cf43d[o(429,"okCq")],e),W[5]=C,W[6]=k,W[7]=u}else u=W[7];return u});AnimatedTreeSlot[_0x4d2309(581,"zyWe")]=_0x4d2309(465,"9^jd");const AnimatedLaneLine=_0x2f77dd[_0x4d2309(625,"vj1$")](e=>{const o=_0x4d2309,t={};t[o(498,"bRzg")]=function(e,o){return e+o},t[o(550,"OwQ4")]=function(e,o){return e!==o},t.fUfjY=o(473,"qYp%");const W=t,n=_0x45e8ed(5),{roadOffsetSV:d,lineX:r,baseY:a}=e,s=useAnimatedStyle(()=>{const e=o,t=d.value%60;return{transform:[{translateY:W[e(451,"f1D6")](a,t)}]}}),x=r-1.5;let _,i;if(n[0]!==x){const e={};e[o(457,"V^XJ")]=x,e[o(366,"XMvI")]=40,_=e,n[0]=x,n[1]=_}else W[o(542,"ef*h")](W[o(364,"V^XJ")],o(629,"i@0#"))?_0x294b9b=_0x9f00ec[31]:_=n[1];if(n[2]!==s||n[3]!==_){const e={};e.style=[treeSlotStyles[o(626,"%g&R")],_,s],i=_0x32da18(_0x4cf43d.View,e),n[2]=s,n[3]=_,n[4]=i}else i=n[4];return i});AnimatedLaneLine[_0x4d2309(537,"YoHQ")]=_0x4d2309(611,"xat@");const _0x5b3954={};_0x5b3954[_0x4d2309(603,"sIm6")]=_0x4d2309(580,"6Qas");const _0x41d4b8={};_0x41d4b8[_0x4d2309(510,"9^jd")]=_0x4d2309(476,"sIm6"),_0x41d4b8[_0x4d2309(417,"vj1$")]=3,_0x41d4b8[_0x4d2309(559,"XMvI")]=BIKE_RACING_COLORS[_0x4d2309(546,"&9&C")];const _0x5f349a={};_0x5f349a.slot=_0x5b3954,_0x5f349a[_0x4d2309(598,"f1D6")]=_0x41d4b8;const treeSlotStyles=StyleSheet[_0x4d2309(418,"]U9u")](_0x5f349a),GameBackgroundComponent=e=>{const o="E!UR",t="lHEo",W="DGg7",n=_0x4d2309,d={GBdCd:function(e,o,t){return e(o,t)},RdIhM:function(e,o){return e(o)},kcuVU:function(e,o){return e*o},YktTh:function(e,o){return e+o},bPPsb:function(e,o){return e!==o},IZyws:function(e,o){return e!==o},upsuB:function(e,o){return e!==o},GgHWp:"SWmMY",rijHT:function(e,o){return e!==o},IZpmn:function(e,o){return e!==o}},r=d[n(372,"YoHQ")](_0x45e8ed,31),{width:a,height:s}=e,x=useSharedValue(0);let _,i;if(r[0]!==x)if(n(467,"!Dnf")!==n(548,o))_=()=>(registerRoadOffsetSharedValue(x),_temp),i=[x],r[0]=x,r[1]=_,r[2]=i;else{const e={};e.p1=_0x2e5c47,e.p2=_0x1ccbd4,e[n(367,"okCq")]="#6D4C41",e[n(405,"!Dnf")]="stroke",e[n(524,"i@0#")]=_0x33c098,_0x4de006=_0x5a83cf(_0x5ab232,e),_0x397b77[10]=_0x505e33,_0x52cc5a[11]=_0x57a4f2,_0x26da77[12]=_0x25e720}else _=r[1],i=r[2];d[n(339,"jwxM")](useEffect,_,i);const f=d[n(582,"^xBF")](BIKE_RACING_GAME_CONFIG[n(481,"Fymv")],BIKE_RACING_GAME_CONFIG[n(517,"qYp%")]),C=(a-f)/2,k=C,u=d.YktTh(Math.ceil(s/60),2),l=Math[n(486,"bRzg")](s/120)+2,S=.5*k,m=d[n(343,"i@0#")](C,f)+.5*k;let O;if(r[3]!==k||d[n(414,"qYp%")](r[4],C)||r[5]!==u||r[6]!==l||r[7]!==S||r[8]!==m){const e={};e[n(585,"HEOX")]=f,e[n(403,"vj1$")]=C,e.grassWidth=k,e[n(609,"bRzg")]=u,e[n(357,"YpMu")]=l,e[n(492,"OwQ4")]=S,e[n(399,"ef*h")]=m,O=e,r[3]=k,r[4]=C,r[5]=u,r[6]=l,r[7]=S,r[8]=m,r[9]=O}else O=r[9];const R=O;let h;if(r[10]!==R.leftTreeX||d[n(523,"sIm6")](r[11],R[n(509,"9^jd")])||r[12]!==R[n(530,"E!UR")]){h=[];for(let e=0;e<R[n(590,"v3^y")];e++)h[n(415,"v3^y")]({key:n(497,"&9&C")+e,baseY:d[n(495,"DGg7")](120*e,80),xPos:R.leftTreeX,isLeft:!0}),h.push({key:"right-tree-"+e,baseY:d[n(577,"lHEo")](120*e+80,60),xPos:R.rightTreeX,isLeft:!1});r[10]=R[n(422,"xat@")],r[11]=R[n(416,"]U9u")],r[12]=R.rightTreeX,r[13]=h}else h=r[13];const G=h;let b;if(r[14]!==R[n(553,"qT9[")]||d[n(597,"YpMu")](r[15],R.roadStartX)){let e;b=[],r[17]===Symbol[n(478,"9^jd")](n(511,"vj1$"))?(e=[1,2],r[17]=e):e=r[17];for(const o of e){const e=R[n(587,"&9&C")]+o*BIKE_RACING_GAME_CONFIG.LANE_WIDTH;for(let t=0;t<R[n(354,"E!UR")];t++)b[n(475,"okCq")]({key:"line-"+o+"-"+t,lineX:e,baseY:d.kcuVU(t,60)})}r[14]=R[n(477,t)],r[15]=R.roadStartX,r[16]=b}else b=r[16];const P=b;let v,y,I,p;if(d[n(469,"HEOX")](r[18],s)||d[n(398,t)](r[19],a))if(n(566,"ZzlC")!==d[n(586,"v3^y")]){const e="0|3|1|5|2|6|4"[n(594,W)]("|");let o=0;for(;;){switch(e[o++]){case"0":const e={};e[n(538,"XMvI")]=_0xdfc732,e[n(444,"&9&C")]=[_0x243f38,_0x284a21,_0x3869cf,_0x13fa12],_0x6b6034=THavDU[n(576,"qT9[")](_0x4610c6,_0x227b8e,e);continue;case"1":_0x2a6626[33]=_0x38d18d;continue;case"2":_0x28e012[35]=_0xadcc91;continue;case"3":_0x1b0f75[32]=_0x22accc;continue;case"4":_0x427585[37]=_0x4ecb70;continue;case"5":_0x399f68[34]=_0x5a91be;continue;case"6":_0x97481[36]=_0x20bb57;continue}break}}else{const e={};e.width=a,e[n(472,"jwxM")]=s,v=_0x32da18(View,{style:StyleSheet[n(382,W)],children:_0x32da18(StaticBackground,e)}),r[18]=s,r[19]=a,r[20]=v}else v=r[20];if(r[21]!==x||d[n(568,"L^OB")](r[22],G)?(y=G.map(e=>_0x32da18(AnimatedTreeSlot,{roadOffsetSV:x,baseY:e[n(554,"&8Hb")],xPos:e[n(570,"OwQ4")],isLeft:e[n(531,"L^OB")],spacing:120},e.key)),r[21]=x,r[22]=G,r[23]=y):y=r[23],r[24]!==P||d[n(563,o)](r[25],x)?(I=P[n(464,"ycxk")](e=>_0x32da18(AnimatedLaneLine,{roadOffsetSV:x,lineX:e[n(569,"x9eH")],baseY:e[n(381,"x9eH")]},e[n(432,"!Dnf")])),r[24]=P,r[25]=x,r[26]=I):I=r[26],r[27]!==I||r[28]!==v||d[n(390,"%g&R")](r[29],y)){const e={};e[n(449,"L^OB")]=bgStyles.container,e[n(350,"xat@")]=[v,y,I],p=_0x5cdb80(View,e),r[27]=I,r[28]=v,r[29]=y,r[30]=p}else p=r[30];return p},_0x16d7a4={flex:1};_0x16d7a4[_0x4d2309(425,"6Qas")]=_0x4d2309(619,"i@0#");const _0x2e9f1a={};_0x2e9f1a[_0x4d2309(347,"YpMu")]=_0x16d7a4;const bgStyles=StyleSheet[_0x4d2309(351,"YoHQ")](_0x2e9f1a);export const GameBackground=_0x2f77dd.memo(GameBackgroundComponent);function _temp(){({mGHsH:function(e){return e()}})[_0x4d2309(459,"Fymv")](unregisterRoadOffsetSharedValue)}GameBackground[_0x4d2309(505,"lHEo")]=_0x4d2309(397,"YpMu");
@@ -1 +0,0 @@
1
- "use strict";const _0x278ef6=_0x2983;!function(){const e=_0x2983,o=_0x47a7();for(;;)try{if(562595==-parseInt(e(387,"xm[^"))/1*(-parseInt(e(384,"13O)"))/2)+parseInt(e(413,"H)h["))/3*(parseInt(e(412,"B4ad"))/4)+parseInt(e(394,"3POs"))/5*(parseInt(e(369,"VJk["))/6)+-parseInt(e(395,"$N5a"))/7+parseInt(e(371,"%#RR"))/8*(parseInt(e(411,"ED5F"))/9)+parseInt(e(390,"%#RR"))/10+-parseInt(e(380,"LXJX"))/11)break;o.push(o.shift())}catch(e){o.push(o.shift())}}();import{c as _0x516bcb}from"react/compiler-runtime";import _0xaede4b from"react";import{View}from"react-native";import{ScoreBoardContainer,ScoreValue,ScoreLives,ScoreTimer,scoreBoardStyles as _0x584e01}from"../../../helpers/index.js";function _0x2983(e,o){e-=369;const t=_0x47a7();let r=t[e];if(void 0===_0x2983.KASXsE){const e=function(e,o){let t,r,n=[],W=0,s="";for(e=function(e){let o="",t="";for(let t,r,n=0,W=0;r=e.charAt(W++);~r&&(t=n%4?64*t+r:r,n++%4)?o+=String.fromCharCode(255&t>>(-2*n&6)):0)r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(r);for(let e=0,r=o.length;e<r;e++)t+="%"+("00"+o.charCodeAt(e).toString(16)).slice(-2);return decodeURIComponent(t)}(e),r=0;r<256;r++)n[r]=r;for(r=0;r<256;r++)W=(W+n[r]+o.charCodeAt(r%o.length))%256,t=n[r],n[r]=n[W],n[W]=t;r=0,W=0;for(let o=0;o<e.length;o++)r=(r+1)%256,W=(W+n[r])%256,t=n[r],n[r]=n[W],n[W]=t,s+=String.fromCharCode(e.charCodeAt(o)^n[(n[r]+n[W])%256]);return s};_0x2983.bOgcJn=e,_0x2983.IyStQH={},_0x2983.KASXsE=!0}const n=t[0];_0x2983.PLaDCq!==n&&(_0x2983.IyStQH={},_0x2983.PLaDCq=n);const W=_0x2983.IyStQH[e];return void 0===W?(void 0===_0x2983.cPEgvy&&(_0x2983.cPEgvy=!0),r=_0x2983.bOgcJn(r,o),_0x2983.IyStQH[e]=r):r=W,r}import{useScore,useTimeLeft,useLives}from"../BikeRacingStore.js";import{jsx as _0x291ce6,jsxs as _0x40cf65}from"react/jsx-runtime";export const ScoreBoard=_0xaede4b[_0x278ef6(408,"a93T")](e=>{const o=_0x278ef6,t={pNTVM:function(e,o,t){return e(o,t)},RwQyz:function(e,o,t){return e(o,t)},Wrxoc:function(e,o){return e(o)},tzNhR:function(e,o){return e===o},XQEkd:function(e){return e()},JSeYz:function(e,o){return e!==o},owhMy:function(e,o,t){return e(o,t)},dPoCK:o(376,"fMoI"),eSEaU:"SKufV",afmXR:function(e,o,t){return e(o,t)}},r=t[o(400,"fMoI")](_0x516bcb,13),{offset:n}=e,W=t[o(372,"vs!K")](n,void 0)?0:n,s=useScore(),a=useTimeLeft(),x=t[o(374,"OvlM")](useLives);let i,f,d,_,S;if(t.JSeYz(r[0],s))if(o(401,"RiB7")===o(404,"fFLF")){const e={};e.score=s,i=t[o(388,"VJk[")](_0x291ce6,ScoreValue,e),r[0]=s,r[1]=i}else{const e={};e[o(389,"2AAB")]=_0x44e280,_0x3cd378=t[o(403,"#Un(")](_0x18faa7,_0x5d2d85,e),_0x365b42[0]=_0x5e01ac,_0x3ca118[1]=_0x15b17f}else i=r[1];if(r[2]!==x)if(t[o(382,"%#RR")](t.dPoCK,o(405,"n9&J"))){const e={};e[o(399,"fFLF")]=_0x3e1771,e[o(383,"q78f")]=_0x15448c,_0x32c5a3=_0x38aead(_0x182731,e),_0xdb7165[10]=_0x295b8f,_0x3d8755[11]=_0x1d3677,_0x1a81e5[12]=_0x266c2e}else{const e={};e[o(407,"fFLF")]=x,e.maxLives=3,f=_0x291ce6(ScoreLives,e),r[2]=x,r[3]=f}else f=r[3];if(r[4]!==a)if("SKufV"===t[o(397,"hPYD")]){const e={};e.seconds=a,e[o(393,"7RpZ")]=10,d=_0x291ce6(ScoreTimer,e),r[4]=a,r[5]=d}else{const e={};e.lives=_0x24cf12,e[o(373,"wu0J")]=3,_0x5d80f4=t.RwQyz(_0xa9bd38,_0x5331f0,e),_0x3d28b6[2]=_0x44e4b1,_0x505232[3]=_0x20df9f}else d=r[5];if(r[6]!==i||r[7]!==f||r[8]!==d){const e="1|0|3|2|4".split("|");let n=0;for(;;){switch(e[n++]){case"0":r[6]=i;continue;case"1":const e={};e[o(381,"2AAB")]=_0x584e01[o(410,"a93T")],e.children=[i,f,d],_=t[o(392,"wzHq")](_0x40cf65,View,e);continue;case"2":r[8]=d;continue;case"3":r[7]=f;continue;case"4":r[9]=_;continue}break}}else _=r[9];if(r[10]!==W||t[o(370,"VJk[")](r[11],_)){const e={};e[o(375,"Cv1S")]=W,e[o(377,"xm[^")]=_,S=t[o(396,"PGvK")](_0x291ce6,ScoreBoardContainer,e),r[10]=W,r[11]=_,r[12]=S}else S=r[12];return S});function _0x47a7(){const e=["yaBcHwWZ","bbFcSmkZWPVcPq","WRewW43dImk0","qrVcOv8YW4u+rW","c2FcQMaNW6JdHmoA","ECo0WOD8WOZcM1O6v8oBWPe","jSo8WPjPlH3cSCkzWONcPhZdMNRdSG","WP7dIM3cLxK","WPGXEJL6","W7VcGmoFW6HilCkHW6G","s8kee8oQWRLsW7O4","C8oOWO18W5aLWOTzW45vmq","jfPrWQlcGK7cSdhcSCoopa","feldUWbVW7anydRcSI8","m1dcQZqW","WP7dNxVcI3K","W59ZaMiEW6FdPXbPW7FcQSkMW7q","WQn4WQ/cMWBcNSkIkmkEWOK","WQtdR8osW6LZ","cSkMyCkVW4ZdHSklrwtdNH3cHa","WQjaW4qOWRmeWQlcImoFnW","jCk2W4C7WO5WW4TcW7zwnY3cUq","lSkJW5KxW6C","W5qnW4SjW5i","jSk0WPrTW4SMWQHH","W49hW4hcPqRdKW","WOKPW77dK8kW","WPZcTf7cMf8","WPX3kSovomoBW5VcHGPj","gmojaZ/dUa","W7bjW6JcNYO","DCkTetrm","W6XPWRtcI8oHjGhcT8kowa/cQbhcOq","W4XiW5hcSXW","WQNcImkbW68","BHddUK57WPhcMcFcOXtcJZ4N","WRBcGSkB","W6JdVCoHB8o9agmlh8kG","bKZcGIBdNSo7a11/WQNcIvK","c8kkW7WBjmkBWQPj","BHtdU0SWW7BdSchcSZq","fNtcPIaZ","W55/bwyEWPxcNsLWW7lcOW","WOVcPmoNWQbl","W7SVW6pdOJVcKmkbfq"];return(_0x47a7=function(){return e})()}ScoreBoard[_0x278ef6(385,"$N5a")]="ScoreBoard";
@@ -1 +0,0 @@
1
- "use strict";const _0x48f8a9=_0x37a2;function _0x37a2(t,o){t-=214;const e=_0x4f22();let n=e[t];if(void 0===_0x37a2.OFrCxj){const t=function(t,o){let e,n,W=[],r=0,a="";for(t=function(t){let o="",e="";for(let e,n,W=0,r=0;n=t.charAt(r++);~n&&(e=W%4?64*e+n:n,W++%4)?o+=String.fromCharCode(255&e>>(-2*W&6)):0)n="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(n);for(let t=0,n=o.length;t<n;t++)e+="%"+("00"+o.charCodeAt(t).toString(16)).slice(-2);return decodeURIComponent(e)}(t),n=0;n<256;n++)W[n]=n;for(n=0;n<256;n++)r=(r+W[n]+o.charCodeAt(n%o.length))%256,e=W[n],W[n]=W[r],W[r]=e;n=0,r=0;for(let o=0;o<t.length;o++)n=(n+1)%256,r=(r+W[n])%256,e=W[n],W[n]=W[r],W[r]=e,a+=String.fromCharCode(t.charCodeAt(o)^W[(W[n]+W[r])%256]);return a};_0x37a2.TBITFE=t,_0x37a2.FLrpnR={},_0x37a2.OFrCxj=!0}const W=e[0];_0x37a2.GqxFIj!==W&&(_0x37a2.FLrpnR={},_0x37a2.GqxFIj=W);const r=_0x37a2.FLrpnR[t];return void 0===r?(void 0===_0x37a2.wnnxXL&&(_0x37a2.wnnxXL=!0),n=_0x37a2.TBITFE(n,o),_0x37a2.FLrpnR[t]=n):n=r,n}function _0x4f22(){const t=["nui/WPHsW7Xdvmog","WR0kB8kTCeXJoSo/vMCV","taZdO3/cM3yvW49Rf8o+","jmoWW7BdKCk+rmkxsYddTa","wvZdOSoTiZFdOCoramkPWQpdPSk2","W6fKu8odnmowaSoF","qh8Tzmkhv8k7WRNcGehcUvDu","W7rUua","a8k4W5xcKMBdItqxhG","x8kMWR9RWOlcMareos7cGGfe","o2vuCuu","WQ89tmojW6FcJfznqmoyjCoE","W7dcVexcKfmUjmkYwbG","nSoiWOdcGSkOowO0","u8kGWOPKWOJcVab5nqtcLWe","W63cTmocWQqufG","BgZdKwKw","etBcOwSvkmknWRVcGG","tdtcRmkubSoboGm","nmoBwCobWQK","jmo/W7pdM8oGpmojEYhdHCkWoa4","dL7cRW7dMW","W719WOCHWRi","B8k7qvm9","kCkhpgFdTehdKhmu","dGhcVSk1Aq","k8kWW415W5H3CeuUtq9eWO4","omkjEmo2wSotWOKKg8ogWOP9","WRhdQviaWOiVWRSmWQyt","cCk4WRzhWOJcVbq","tCo2WQtdM8oeW4tcOhiG","DNyWW4LZ","fSoPwCoXWPTRtXxdJq","ACkJe8kTEG","W7lcTmoyWOabeHNcNCk6W6aCWPG","v8krhKjNWOzPvCk7WRCR","E8kXW77cHq","B8kQWP3cRfGNFLldLSkMWRWg","WQjpleJdOa","f8o4rCoKWQHnqX0","W7jLl8kuWRddMaf4tCoAmSocWOG","WRldPHFdGGbjF8kYxXRdT8kUW44","wCkMWOFcJmkD","W6WJxCkSWRH5ntG","W79QW7C2CW","r2BdO18Ng8knWQC","W6lcSmocWPmmhXBcMSklW6OsWOJdLG","uCo6rSoBWO5pxW","dCoLiYrNlYVdKmogf37cLb8","aJPXi8o4bSoHWOW","ESk9W6tcSSoRW4HCW4S","ECkDWObqWOC","fdlcOZWlo8kRWQpcNYG","W5O+vsVcJcZdVSkrxZ0tlmo8","WOFdSSovtqO","uSk+hmo1WO1LAcNdOq","bf1Kx0m","WRNdTxWf","zXTSWP5MW6jEq8okWQy","ESkNWOlcHCk9BSkjFsFdSSkXja","fmoMlCkjr8okWQrl","WOFcK8kBxftcOCkwk8kXsW","lwjjvvBdIa","W7lcTvFcLKi5lmk6xG","BLvaWP43gMFdKW","dSkqsmkeWO/dOCkJDInC","nrTtp8o4","sJncWQ9o","uSkSW5BcG8oB","WQqXWO3cJLO","DSkHW4BcQCoh","W4/cOmkknSk/BgCIW50W","WPpdSmoRDaS","uCoSWOldImoDW6BcJMKGWPW","W7jUxCoGfq","fmomuwLZ","i8olzeXXW71i","nCovWRhcGmki"];return(_0x4f22=function(){return t})()}!function(){const t=_0x37a2,o=_0x4f22();for(;;)try{if(608933==parseInt(t(238,"($MK"))/1*(parseInt(t(217,"TJEp"))/2)+parseInt(t(216,"KXP^"))/3+-parseInt(t(254,"0uYD"))/4*(-parseInt(t(261,"lGe@"))/5)+parseInt(t(267,"d1OU"))/6+parseInt(t(257,"u#RH"))/7*(-parseInt(t(234,"TJEp"))/8)+parseInt(t(266,"q&UB"))/9*(parseInt(t(275,"l]y4"))/10)+-parseInt(t(218,"LMNZ"))/11*(parseInt(t(231,"q&UB"))/12))break;o.push(o.shift())}catch(t){o.push(o.shift())}}();import{useBlockBlastStore}from"./BlockBlastStore.js";export class BlockBlastService{[_0x48f8a9(248,"Zq&y")](t,o,e){const n=_0x48f8a9;this.onClearLines=t,this[n(241,"U*y^")]=o,this.onGameOver=e}[_0x48f8a9(244,"i6&[")](t){useBlockBlastStore.getState().startGame(t)}stopGame(){const t=_0x48f8a9;useBlockBlastStore.getState()[t(263,")(n!")]()}[_0x48f8a9(222,"^#xc")](){const t=_0x48f8a9;useBlockBlastStore[t(219,"S%uY")]()[t(246,"lGe@")]()}placePiece(t,o,e){const n="*^H)",W=_0x48f8a9,r={};r[W(289,"u2Hq")]=function(t,o){return t>o};const a=r,s=useBlockBlastStore[W(264,"FW7a")]()[W(226,"L3ai")](t,o,e);if(s){this[W(228,n)]&&this[W(225,"0uYD")]();const t=useBlockBlastStore.getState(),{linesCleared:o}=t[W(272,"PQ[S")]();a[W(237,"ZJdw")](o,0)&&this[W(273,"TJEp")]&&this.onClearLines(o),useBlockBlastStore[W(259,"q&UB")]()[W(223,n)]()&&this.onGameOver&&this[W(242,"Nv8k")]()}return s}[_0x48f8a9(260,"Zq&y")](t,o,e){const n=_0x48f8a9,W={};W[n(256,"TJEp")]=n(224,"66Dd"),W[n(281,"PQ[S")]=function(t,o){return t===o},W[n(288,"S%uY")]=function(t,o){return t===o},W[n(283,"TpXt")]=function(t,o){return t+o},W[n(247,"wrXN")]=function(t,o){return t<o},W[n(258,"&fhc")]=n(284,"FW7a");const r=W,a=useBlockBlastStore[n(278,"]3yz")](),s=a.nextPieces[n(250,"FW7a")](o=>o.id===t);if(!s)return!1;const{shape:i}=s;for(let t=0;t<i[n(276,"66Dd")];t++)if(n(245,"mS)t")===r[n(230,"q&UB")]){const W=i[t];if(!W)continue;for(let s=0;s<W[n(229,"Zq&y")];s++)if(r[n(252,"d1OU")](n(235,"KXP^"),"rQzxS"))_0x39cfdb[n(227,"^(B%")]()[n(277,"L3ai")]();else if(r.tozpU(W[s],1)){const W=r[n(265,"*^H)")](o,t),i=e+s;if(r.OtFbD(W,0)||W>=a[n(232,"GyX%")]||r[n(282,"FW7a")](i,0)||i>=a.gridSize||null!==a[n(271,"Nv8k")][W]?.[i]){if("kyVHX"===r[n(270,"66Dd")])return!1;this[n(273,"TJEp")]=_0x4d41c1,this[n(215,"s$8E")]=_0x5097dd,this[n(279,"9S6@")]=_0x3ad9f7}}}else _0x29c98e.getState()[n(253,"lGe@")]();return!0}getGridPosition(t,o,e,n,W,r,a){const s="ZE)5",i=_0x48f8a9,k={};k[i(233,"lGe@")]=function(t,o){return t*o},k[i(286,s)]=function(t,o){return t+o},k[i(236,"ad%x")]=function(t,o){return t>=o};const f=k,d=W+r,u=f[i(268,s)](a,d)+r,l=f[i(280,")(n!")](a*d,r),S=t-e,x=o-n;if(S<0||x<0||S>=u||x>=l)return null;const C=Math.floor(S/d),O=Math[i(239,"LMNZ")](x/d);if(O>=a||f[i(291,"^(B%")](C,a))return null;const m={};return m[i(221,"S%uY")]=O,m.col=C,m}[_0x48f8a9(290,"u2Hq")](){const t=_0x48f8a9;this[t(251,"^s)o")]=void 0,this.onPlacePiece=void 0,this[t(287,"i6&[")]=void 0}}
@@ -1 +0,0 @@
1
- "use strict";function _0x2612(){const e=["ASkeW4RdPY8XWO/dNIFdRv3dU2C","ACosbW3dSdzXW5BdOsJdKWdcKapdQW","uvfwW4ldUgdcOq","x1tdVmo4","vffi","WRLoxmoFE8k2wW","ASoEdGVdTJfcW5FdGZldNWZcMW","W40Al1eYACoMmmohWRKOW7xcSG","Bs/cKIpcUwONWRua","aHRcTSkR","wZldI1y3W5FcQ8o9W6W","uYxdVW","zxVcGCkXWOu","W5LNrKddS8k3kmoq","f8oCWRldGGeFWR3dOCo6","W7JcGGaKn8kAW5rT","hmoebSkdW4JdGG","AJhcLGBcQa","E03cNmk2","WR7dJgBcJNj1WRhdVWZdRwtcMw8","d8ktxXRcISkqbmkSWOtcLdhdKxZdPcy","WOBdLhjPW6RdPf7dRSkYWQvcW4ZcMa","WOSLfXhcKmoOe8oYp0ZcGCk6","wYCTaSksW4VcOCkeW6aZW4qnrSoepSkeca","ySo3cJ7cQIFdH8kbWOZdQaRcICoU","cSoSW47cSSoOimobw8oekmolWPZdJq","tIbtWPa0W4G","W7NdJeDE","W5mwmKyhC8ovnSoqWRK","W7ddV8ofW53dJa","WRbflW","yIe9imo8W4DPCmok","gcmhnmoZ","uSoYwG","W7ZcKqCq","W4KAj1CfF8oDnmoCWQqOW7tcUW","WR5nmgT+lW","W4WxbHDn","dqu8dCoDjXJcQG","cWFcQa","W73dKfLtFmo+pSopW7FcT8oXWQtdRq","WRLDwmoE","WOXaFaTVlCoilCoFWQCRW5K","rCkkW7xdIrO0WOu","amoidCkhW5NcHW","ic4bjCo+","zSo6aJRcJYhdHW","hHy3k8oyiWZcN0hdPYzcWRtdKNy","WOddNhfOW5FdRa","uszsWOuL","fCk3vfPsW6pcKgHAWOBcVZ5tW5FcQa","WOBcJMVcRZHoWQBdUSkb","pISBe8oLfstcN2VdHHb0WPhdSLSL","WPexWR1lW7n3W7tdUq","zCoArZiA","x8kQW7a","W7JcHGiykmkVW5HjW5BcRxJcOSkUgW","W5Osj1CyBmovjW","W5SAjL4","WRLpW6xdLe1ccmo1WQ0YW6bcWOZcS8o7","eSkasG","EmoZimkVW7/dGSkJWPtcVuZcVH1qWQ5XW6Xv","W5hdSCooW4tdGmkdlSkgWP5DvN8iW4VdLWjeW5X+mSktWP8GW6tcVexcO0fUb8kZ","WO5PgLJcLSkIymojBMNdLmkNWRO","WR9fmxPFkfFdNmo9W611rG","ESonWPhdK00KW5zeW75LqCoYCG","cmoWB8kK","bmkge8kQW4/dKmk/WRi","CgG5iJ0","nsBdJ0ldVZGPdG","WP92fvTedMZdP8om","W510qxtdJmk/mCoq","w8oEdSkAW40","r0XbW7hdSgBcVSkCWR7cMmkGWQZdQmozAq","WP4eWQC","FmoEbWq","WR3dLw/cHgm","W7XzxbDxWPa","t8oJWQS","yZ3cRYRcL2uRWQK","gmktuWG","DCoYaJRcIIVdHmkhWQBdOW/cI8o6","zZSdkCoUW71SE8omW6CAW6C","ECoybWFdOq","amk7veTuW6u","WQHrl3C","WRnZtSkXc8oaf3/cJ0hcGmodva","y8kpW5tdMJ8","WQThm21+","xSkGW6VdHXmbWR/dQdBdKhhdL0ZdH8ot","WQBcHCoDh2RdOmoebG","qCkrjmoAW5hcRdy/WPDuuG","rsrqWPieW5xcQs4GWQ7dHSoM","lCkUuYRcJG","tCo+WRNdOhSfW7rgW5bcyCojvCo9fa","bCk9va","BuBcOSkRWR8","W6pcGCopWQu","WR9wnxTinf/dMa","WQNdL2RcIufJWPxdQrFdSwm","ustdT1yLW7RcRCosW6xcPthcRHb8","zxhdTftdPduglq","WQ3cN8k4WRjO","xtNcHrmH","WPajWRvB","xfnNASkjCaNcGvVdKW1p","W5asoG","WP7dRKdcJ2i","zSo6aJRcLZJdJmku","WRJcOSowpu8","Dh/dRq","qSo3rsa6WPBdJSk8WOSOW7ldTYy","WRVcQmk3WQLZWPHLW4RcTmon","W7JcJaiBkq","m8kRba7cTWZdVmkf","ExT8W5pdHLpcGmkjWPlcRSkAWOFdGSo5uKPs","WOqkWQm","W6RdNfHAxCoppmoVW7dcSmo1WQVdVSos","xu7dUa","kmkaxL/cQ3rMW7ZdHaBdTbO","EdecpSo4","wvTCW7pdIwRcRmkVWRtcMa","AdmdhmoXW59JEW","wX0KaSojW61FtSoOW4CGW4/cK8oYzq","FcNcTrSaW4uqWOZdH8k8WPm","WOrJASorWOxcOSk1jSokWRm","zrCgpG","r8khkq","vsddTL8bW4hcRa","g8osWRFcVK5HWO/dNmo1W6VcOMa","q8osiCk0W4u","WPGaWQXBW7b3W6VdV2ZcVG","wmotamkpW7ddU8kpWRlcM3O","Fd/cIZ4c","WPZdQMRcQ3O","W5X/zavk","zqSqnCkOW6JcVSkKW5efW749AW","W4Gop8kNWPS","zZdcPY7cQNOGWRWKs8oWzmke","Dc7cPZNcSxy5WOSixCo1FmkEW43dUa","oCkSx23dRxJdI8kpWPJdOrxcHW","wSkYWPxdSSk1","nYpcRd3cSgmDmmkadty/","ttNcPr0F","WRnoqq","aWhcS8kJ","xCo/ASouWR/dTCkxW5T7WOG","WQ5AqSos","eSk7vvPJW7lcMg1JWOhcSZnr","W7BcGH4","DZlcSHOLW6moWPRdJ8kHWPJdRq","W5qagL42y8ozo8os","W5Obi1yeC8okma","W6aWWOHTy8kMoLlcLb/cJq","EJ/cUa","umknW6BdVb4","W6JcGaegpG","uCo/rsaNWOxdHSkV","FCofaGZdHsDMW4hdMc7dMa","c8kOmq","rSodc8kt","r0TxW68","WR1axCovxG","W7xdG8kntqNdN8oymSkBW7zw","aSoig8kuW73cHNldLh3dQW","WONcP1a","W4ePomkxWOtcPSkAhSoMWRJcGu48W4/dMW","x8ofkmkxW4hdQ8kdWR/cMq","W4uYmmkeWR/cPSkal8oGWQxcGvqY","fSkjEdJcHW","WR9fmxPmmKS","ANxdTgpdVdW","yJxcRcS","yY7cQYVcJNy8WQGoqCoY","ueXnW6pdIMRcS8kP","WQrOqSk2","iGKThs4ZtmkH","vSoVx8k/BxNdPJC","WPakWQzQW4f9W6y","BNJcMCkKWOS","fG3cS8kQb17cOCo0WRePW77cLZRdRmol","F1P8W6JdJa","CGmym8kcW63cJCkZ","rIJdTL8eW4VcR8oYW6lcOJxcOqm","WQT9W4JdIeO","B8oHmIldOW","WOrBzSkxmCo3feJcVgBcOmoJDa","qNSxlcS","W7RdNfHttCoVnSokW47cSmo9WQNdR8o+W64","ASocgaa","W75zsGrZWPhcG3ziWQq","W6WDAvfHfxxdQCor","W7e2errVeSkmW6mzuG"];return(_0x2612=function(){return e})()}const _0x477de4=_0x37b2;!function(){const e=_0x37b2,o=_0x2612();for(;;)try{if(247979==parseInt(e(432,"SWKy"))/1+parseInt(e(343,"tHtt"))/2*(-parseInt(e(388,"!^C#"))/3)+parseInt(e(360,"nLyx"))/4+parseInt(e(264,"r%M1"))/5*(parseInt(e(412,"al)q"))/6)+-parseInt(e(316,"9owG"))/7+-parseInt(e(337,"7mZN"))/8*(parseInt(e(373,"@Qrp"))/9)+parseInt(e(415,"XG)r"))/10)break;o.push(o.shift())}catch(e){o.push(o.shift())}}();import{create}from"zustand";import{subscribeWithSelector}from"zustand/middleware";import{immerMiddleware}from"../../services/UtilsService.js";import{BLOCK_BLAST_GAME_CONFIG,getRandomBlockShape,getRandomBlockColor}from"./BlockBlastConstants.js";const createEmptyGrid=e=>{const o=_0x37b2;return Array(e).fill(null)[o(257,"3PfW")](()=>Array(e).fill(null))},generateRandomPiece=()=>{const e=_0x37b2,o=getRandomBlockShape(),t=getRandomBlockColor();if(!o||!t)throw new Error(e(259,"t6CH"));return{id:e(406,"!w[$")+Date[e(429,"M1hA")]()+"-"+Math[e(438,"5$%L")](),shape:o.map(e=>[...e]),color:t}};export const useBlockBlastStore=create()(subscribeWithSelector(immerMiddleware((e,o)=>({score:0,isPlaying:!1,gameOver:!1,gameWon:!1,timeRemaining:0,gameDuration:300,grid:createEmptyGrid(BLOCK_BLAST_GAME_CONFIG.GRID_SIZE),gridSize:BLOCK_BLAST_GAME_CONFIG[_0x477de4(267,"!^C#")],gridVersion:0,nextPieces:[],piecesVersion:0,selectedPieceId:null,previewPosition:null,canPlace:!1,clearingCells:[],initializeGame:o=>{const t=_0x477de4,n={};n[t(376,"kvVf")]=t(260,"al)q");const W=n,r=o||BLOCK_BLAST_GAME_CONFIG[t(441,"L37B")];e(e=>{const o=t,n=W.rGlvL[o(273,"(WZt")]("|");let d=0;for(;;){switch(n[d++]){case"0":e.grid=createEmptyGrid(r);continue;case"1":e[o(283,"k$f7")]++;continue;case"2":e[o(365,"UKdT")]=BLOCK_BLAST_GAME_CONFIG.GAME_DURATION;continue;case"3":e.nextPieces=Array(BLOCK_BLAST_GAME_CONFIG[o(258,"r%M1")]).fill(null)[o(346,"&J%(")](()=>generateRandomPiece());continue;case"4":e[o(289,"MQaQ")]=BLOCK_BLAST_GAME_CONFIG[o(383,"k$f7")];continue;case"5":e[o(403,"al)q")]=r;continue;case"6":e[o(355,"9owG")]++;continue}break}})},startGame:(t,n)=>{const W=_0x477de4,r={SDowr:function(e,o){return e(o)},yDtcB:function(e,o){return e===o}},d=t||BLOCK_BLAST_GAME_CONFIG.GRID_SIZE,s=n||300,a=o()[W(418,"SWKy")];r[W(427,"jEk*")](e,e=>{const o=W;e.score=0,e[o(364,"r%M1")]=!0,e[o(379,"TFd&")]=!1,e.gameWon=!1,e[o(308,"0%9P")]=s,e[o(261,"!^C#")]=s,e[o(372,"k$f7")]=r[o(384,"@Qrp")](createEmptyGrid,d),e[o(250,"5%NO")]=d,e[o(321,"wQKe")]++,r[o(402,"kvVf")](a[o(434,"!w[$")],0)&&(e[o(418,"SWKy")]=r[o(251,"0%9P")](Array,BLOCK_BLAST_GAME_CONFIG[o(413,"TFd&")])[o(255,"SWKy")](null)[o(341,"Q7Wh")](()=>generateRandomPiece()),e.piecesVersion++),e.selectedPieceId=null,e[o(363,"UKdT")]=null,e[o(405,"&J%(")]=!1})},stopGame:()=>{e(e=>{const o=_0x37b2;e.isPlaying=!1,e[o(256,"*(zy")]=null,e[o(336,"V*v!")]=null})},resetGame:()=>{e(e=>{const o=_0x37b2;e[o(353,"&J%(")]=0,e[o(348,"SWKy")]=!1,e[o(354,"0%9P")]=!1,e[o(325,"f0&r")]=!1,e[o(278,"7mZN")]=BLOCK_BLAST_GAME_CONFIG[o(390,"qJ3J")],e.gameDuration=BLOCK_BLAST_GAME_CONFIG[o(262,"&i%k")],e[o(431,"Q7Wh")]=createEmptyGrid(e[o(403,"al)q")]),e[o(288,"fPpb")]++,e[o(389,"jEk*")]=Array(BLOCK_BLAST_GAME_CONFIG[o(312,"^[Ny")])[o(342,"M1hA")](null)[o(303,"SWKy")](()=>generateRandomPiece()),e[o(409,"(WZt")]++,e[o(286,"qJ3J")]=null,e[o(410,"3PfW")]=null,e[o(428,"%(NA")]=!1})},updateScore:o=>{const t=_0x477de4,n={brwlk:function(e,o){return e+o},HdXoU:function(e,o){return e(o)}};n[t(378,"^[Ny")](e,e=>{const W=t;e.score=n.brwlk(e[W(439,"MQaQ")],o)})},selectPiece:o=>{e(e=>{e[_0x37b2(440,"kqlB")]=o})},deselectPiece:()=>{const o=_0x477de4,t={};t[o(381,"*(zy")]="bTNiX",t[o(290,"3PfW")]=o(300,"wQKe");const n=t;e(e=>{const t=o;if(n[t(265,"@Qrp")]===n[t(331,"(WZt")]){const e={};e[t(313,"5%NO")]=_0x3143db,e[t(356,"tHtt")]=_0x5cf85c,e[t(310,"&J%(")]=_0x1f4358,_0xdf7f72[t(357,"r%M1")](e)}else e[t(391,"9owG")]=null,e[t(437,"%(NA")]=null,e[t(268,"al)q")]=!1})},updatePreviewPosition:(o,t,n)=>{e(e=>{const W=_0x37b2,r={};r[W(315,"z9rP")]=o,r[W(423,"ntkt")]=t,e.previewPosition=r,e[W(319,"BG*p")]=n})},clearPreview:()=>{e(e=>{const o=_0x37b2;e[o(291,"&i%k")]=null,e[o(428,"%(NA")]=!1})},placePiece:(t,n,W)=>{const r=_0x477de4,d={MbhcY:function(e,o){return e+o},mhvam:function(e,o){return e<o},udYOe:function(e,o){return e<o},xRwoK:function(e,o){return e===o},gdWAT:r(334,"UKdT"),qyWyx:function(e,o){return e+o},DbFOo:function(e,o){return e>=o},IFNNP:"uVYJp",nmTIp:function(e,o){return e(o)}},s=o(),a=s[r(361,"!w[$")][r(369,"V*v!")](e=>e.id===t);if(!a)return!1;const{shape:i,color:l}=a;for(let e=0;d[r(269,"r%M1")](e,i[r(416,"MQaQ")]);e++)for(let o=0;d[r(327,"r%M1")](o,i[e].length);o++){if(!d[r(299,"3N(m")](r(306,"nLyx"),d[r(330,"wQKe")])){const e={};return e[r(279,"BG*p")]=0,e[r(253,"&J%(")]=[],e}if(1===i[e][o]){const t=n+e,a=d[r(293,"kvVf")](W,o);if(t<0||d.DbFOo(t,s[r(295,"!^C#")])||a<0||a>=s.gridSize||null!==s[r(408,"kvVf")][t][a]){if(r(382,"9owG")===d.IFNNP)return!1;{const e=_0x46db67+"-"+_0x1e9359;if(!_0x1e9757.has(e)){_0x49bc8e[r(324,"fPpb")](e);const o=_0x14a11d[_0x2e2c0a]?.[_0x1d8d18];if(o){const e={};e[r(307,"E0AU")]=_0x21fc85,e[r(362,"]MwP")]=_0x786d0d,e[r(280,"9owG")]=o,_0x53a60d[r(358,"^[Ny")](e)}}}}}}const m=generateRandomPiece();return d[r(407,"V*v!")](e,e=>{const o=r;for(let t=0;t<i[o(274,"GI7B")];t++)for(let r=0;r<i[t][o(368,"E0AU")];r++)1===i[t][r]&&(e[o(424,"&J%(")][d.MbhcY(n,t)][W+r]=l);const s=i[o(301,"5%NO")]()[o(426,"!^C#")](e=>1===e).length;e[o(285,"!^C#")]+=s*BLOCK_BLAST_GAME_CONFIG[o(249,"%(NA")],e[o(387,"GI7B")]=e[o(328,"5%NO")][o(281,"kqlB")](e=>e.id!==t),e[o(309,"3N(m")][o(282,"!^C#")](m),e[o(370,"V*v!")]++,e[o(377,"M1hA")]=null,e[o(270,"^[Ny")]=null,e[o(298,"E0AU")]=!1,e[o(396,"9owG")]++}),!0},generateNextPieces:()=>{e(e=>{const o=_0x37b2;e[o(329,"r%M1")]=Array(BLOCK_BLAST_GAME_CONFIG[o(312,"^[Ny")])[o(272,"9owG")](null).map(()=>generateRandomPiece()),e[o(397,"SWKy")]++})},addNewPiece:()=>{e(e=>{const o=_0x37b2;e.nextPieces[o(344,"Q7Wh")](generateRandomPiece()),e[o(333,"TFd&")]++})},clearLines:()=>{const t=_0x477de4,n={vGUiB:function(e){return e()},VbybI:function(e,o){return e<o}},W=n[t(422,"%(NA")](o);let r=0;const d=[],s=[],a=W[t(371,"^[Ny")],i=W[t(294,"$w!^")],l=[];for(let e=0;e<a;e++){let o=!0;const n=i[e];if(n){for(let e=0;e<a;e++)if(null===n[e]){o=!1;break}o&&(d[t(386,"9owG")](e),r++)}}for(let e=0;e<a;e++){let o=!0;for(let W=0;n[t(340,"wQKe")](W,a);W++){const t=i[W];if(!t||null===t[e]){o=!1;break}}o&&(s[t(393,"z9rP")](e),r++)}if(0===r){const e={};return e[t(347,"wQKe")]=0,e[t(297,"f0&r")]=[],e}const m=new Set;d[t(433,"DTaF")](e=>{const o=t;for(let t=0;t<a;t++){const n=e+"-"+t;if(!m[o(420,"!^C#")](n)){m[o(401,"f0&r")](n);const W=i[e]?.[t];if(W){const n={};n[o(275,"&i%k")]=e,n[o(292,"kqlB")]=t,n[o(359,"Q7Wh")]=W,l[o(323,"TFd&")](n)}}}}),s[t(392,"^[Ny")](e=>{const o=t;for(let t=0;t<a;t++){const n=t+"-"+e;if(!m[o(271,"5%NO")](n)){m[o(351,"wQKe")](n);const W=i[t]?.[e];if(W){const n={};n[o(252,"qJ3J")]=t,n[o(394,"^[Ny")]=e,n[o(359,"Q7Wh")]=W,l[o(417,"rh5%")](n)}}}}),e(e=>{const o=t;e.clearingCells=l,d[o(375,"5%NO")](t=>{const n=o;for(let o=0;o<a;o++)e[n(399,"M1hA")][t][o]=null}),s.forEach(t=>{const n=o;for(let o=0;o<a;o++)e[n(277,"3PfW")][o][t]=null});const n=r*BLOCK_BLAST_GAME_CONFIG[o(320,"BG*p")];e[o(317,"BG*p")]+=n,e[o(296,"(WZt")]++});const u={};return u.linesCleared=r,u[t(314,"rh5%")]=l,u},clearClearingCells:()=>{e(e=>{e[_0x37b2(414,"7mZN")]=[]})},checkGameOver:()=>{const t=_0x477de4,n={};n[t(366,"3PfW")]=function(e,o){return e<o},n[t(338,"XG)r")]=function(e,o){return e>=o};const W=n,r=o();for(const e of r[t(318,"^[Ny")])for(let o=0;o<r[t(374,"ntkt")];o++)for(let n=0;n<r[t(349,"SWKy")];n++){let d=!0;for(let s=0;s<e.shape.length;s++){for(let a=0;W.ihBTd(a,e.shape[s][t(274,"GI7B")]);a++)if(1===e[t(352,"DTaF")][s][a]){const e=o+s,i=n+a;if(e<0||W[t(419,"t6CH")](e,r.gridSize)||i<0||i>=r[t(287,"nLyx")]||null!==r[t(263,"o(Mw")][e][i]){d=!1;break}}if(!d)break}if(d)return!1}return e(e=>{const o=t;e.gameOver=!0,e[o(400,"f0&r")]=!1}),!0},decrementTime:()=>{const o=_0x477de4;({LCVui:function(e,o){return e(o)}})[o(332,"GI7B")](e,e=>{const t=o;e[t(425,"SWKy")]>0&&(e[t(411,"5$%L")]-=1),0===e[t(380,"f0&r")]&&e[t(421,"BG*p")]&&(e[t(395,"Q7Wh")]=!0,e[t(254,"SWKy")]=!0,e.isPlaying=!1)})},checkWinCondition:()=>{const t="7mZN",n=_0x477de4,W={};W[n(435,"%(NA")]=function(e,o){return e===o};const r=W,d=o();r[n(284,"qJ3J")](d[n(345,"kqlB")],0)&&d.isPlaying&&e(e=>{const o=n;e[o(436,t)]=!0,e[o(305,t)]=!0,e[o(398,"V*v!")]=!1})}}))));export const useScore=()=>useBlockBlastStore(_temp);export const useIsPlaying=()=>useBlockBlastStore(_temp2);export const useGameOver=()=>useBlockBlastStore(_temp3);export const useGameWon=()=>({PKCbu:function(e,o){return e(o)}}[_0x477de4(304,"(WZt")](useBlockBlastStore,_temp4));export const useTimeRemaining=()=>useBlockBlastStore(_temp5);export const useGridVersion=()=>useBlockBlastStore(_temp6);export const usePiecesVersion=()=>useBlockBlastStore(_temp7);export const useSelectedPieceId=()=>useBlockBlastStore(_temp8);export const useClearingCells=()=>useBlockBlastStore(_temp9);function _temp(e){return e.score}function _temp2(e){return e.isPlaying}function _temp3(e){return e[_0x477de4(276,"V*v!")]}function _temp4(e){return e[_0x477de4(367,"!^C#")]}function _temp5(e){return e[_0x477de4(430,"rh5%")]}function _temp6(e){return e[_0x477de4(350,"nJD@")]}function _temp7(e){return e.piecesVersion}function _temp8(e){return e[_0x477de4(385,"rh5%")]}function _0x37b2(e,o){e-=249;const t=_0x2612();let n=t[e];if(void 0===_0x37b2.xaPout){const e=function(e,o){let t,n,W=[],r=0,d="";for(e=function(e){let o="",t="";for(let t,n,W=0,r=0;n=e.charAt(r++);~n&&(t=W%4?64*t+n:n,W++%4)?o+=String.fromCharCode(255&t>>(-2*W&6)):0)n="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(n);for(let e=0,n=o.length;e<n;e++)t+="%"+("00"+o.charCodeAt(e).toString(16)).slice(-2);return decodeURIComponent(t)}(e),n=0;n<256;n++)W[n]=n;for(n=0;n<256;n++)r=(r+W[n]+o.charCodeAt(n%o.length))%256,t=W[n],W[n]=W[r],W[r]=t;n=0,r=0;for(let o=0;o<e.length;o++)n=(n+1)%256,r=(r+W[n])%256,t=W[n],W[n]=W[r],W[r]=t,d+=String.fromCharCode(e.charCodeAt(o)^W[(W[n]+W[r])%256]);return d};_0x37b2.uZOLxp=e,_0x37b2.LJZZKH={},_0x37b2.xaPout=!0}const W=t[0];_0x37b2.cOoEoL!==W&&(_0x37b2.LJZZKH={},_0x37b2.cOoEoL=W);const r=_0x37b2.LJZZKH[e];return void 0===r?(void 0===_0x37b2.zQLTmG&&(_0x37b2.zQLTmG=!0),n=_0x37b2.uZOLxp(n,o),_0x37b2.LJZZKH[e]=n):n=r,n}function _temp9(e){return e[_0x477de4(335,"V*v!")]}
@@ -1 +0,0 @@
1
- "use strict";const _0xf547b3=_0x118d;!function(){const t=_0x118d,o=_0x15e1();for(;;)try{if(843137==parseInt(t(253,"^&ds"))/1+parseInt(t(249,"!j#1"))/2*(-parseInt(t(193,"iH[#"))/3)+-parseInt(t(264,"Ti$$"))/4+-parseInt(t(227,"Ti$$"))/5+parseInt(t(224,"$O7w"))/6+parseInt(t(202,"yIfT"))/7+-parseInt(t(239,"SquQ"))/8*(-parseInt(t(247,"EG]o"))/9))break;o.push(o.shift())}catch(t){o.push(o.shift())}}();import{c as _0xd3cae8}from"react/compiler-runtime";function _0x15e1(){const t=["WRzrqCk5sb0","eIDIEsvNxSkg","WOJcIrxcRGZdPSo/WQTrcSoCW63dOG","d1ZdOSoGlLbkzM3dKCoAdmoyvxVcVSocAmkFdSozWOm","gmk3DrddNG","WP/cUSkLowOLvCkMxCowk8ohfG","uxtcSSk8jG","wSoTWR9wW7y","W7JcKmo7lCk0","W7vbW7brW50","WOiMruLu","WOVcK8kxF3O","gsxcSw7cLrxdHdqCW5K7ma","WOVdRN3dUSkoW4hdSSkRW5NdJmkQWRxdNq","gsxcSw7cLrxdNZ0fW5a","W7D7W5HqWPW","W7NcI8oWfmkw","WQnkWOb8W4NdNSo+iSk6kxe","WPe7WQLIW5q","FmkZWPr9AW","WPmFWOvUW7u","WPbqBmkqrW","WQCnCuDK","WRztW4JcSSkJWRrIW51jzqhdQCo1W5JdHgKSWQqlWR3cVmohqmojW78","WRjPrq","WO/dP3RdV8oRWR/cJ8k1W7BdSW","oYLpFGW","WQZdUSkrWO7dQJpcLW","WRq3WRHvW54","WRjvFSkBDq","WPZdSCoqW48p","W6ddImoujYJdHSoxcCkCjMiZ","W67dPf0MW48gW4RdHLRcLX1fmG","W4ZdPCoNEJD9gCkpumoTjG","dmkXFqVdHa","WPJdNrFdGqRdOmkqw8k6WOCgn8ov","rCkyEudcIW","W5ddISoqFdq","WPNdNHFdJGJcOSoPDmk3WQ05","W6NdQCoHFXu","ottdO8kSW7PXWRmW","W4tdSmkcWPFdGa","WPRcVmkKpgiLuSkgDSouc8olhG","t3zWW6WFCxRcLmoN","W6pcGCkOu1hcPSo7","W6WuWOX3tW","WRTLW5vzW7XXWRGBtJO9EW","W4OyWQOTWOuDW50MCa07t3O","WR4vA2Dv","hc57","rmoRWOTYWOVcUmomt3PEudJdSuGunKNdQmkojmoYWPZcJmojjq","WP7dKHjRWP5GFmkSB3JcIK93W7HAEvVcRCoBWPtcNau","WQ/cHIjXWRy","WPZcS8kHrf8","WPRdNrddJWJdPmodCmkuWPOIkG","lCkRwYldPq","pWmlWPPJgXZcI8oMDqqEWRm","W4uYkSkTWOlcNNddOeflWQaBWP4","W60hWPD6aGtcMaK1tmoDW4PtWRGCmtftW4/cGmoIWRO","WO7cPSkIvmkpW5a","WRvUDCo4W5ddTYVdGMv6WQS6WOm1bSoEr8kvvG","rSkPbdf8","yfTh","cCoUeCoxWQS","btGCcGW","jmoWW6qPomoFsdyGEsZcPK0","WRtdJ8o4W4ngWOf0WRLKgCkkdgqnmezRqbmGW6FdPa","W4/dHc4RtKa","zeddMCotka","WPDUW49cW7m","W57cM0RcV18","W5rcW7u","W58CW7qkWP4","wLLBW7y6","haxcISoLoG","W5NdNexdU1tcPG"];return(_0x15e1=function(){return t})()}import _0x361e1c from"react";function _0x118d(t,o){t-=189;const e=_0x15e1();let n=e[t];if(void 0===_0x118d.GeDNPJ){const t=function(t,o){let e,n,r=[],d=0,W="";for(t=function(t){let o="",e="";for(let e,n,r=0,d=0;n=t.charAt(d++);~n&&(e=r%4?64*e+n:n,r++%4)?o+=String.fromCharCode(255&e>>(-2*r&6)):0)n="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(n);for(let t=0,n=o.length;t<n;t++)e+="%"+("00"+o.charCodeAt(t).toString(16)).slice(-2);return decodeURIComponent(e)}(t),n=0;n<256;n++)r[n]=n;for(n=0;n<256;n++)d=(d+r[n]+o.charCodeAt(n%o.length))%256,e=r[n],r[n]=r[d],r[d]=e;n=0,d=0;for(let o=0;o<t.length;o++)n=(n+1)%256,d=(d+r[n])%256,e=r[n],r[n]=r[d],r[d]=e,W+=String.fromCharCode(t.charCodeAt(o)^r[(r[n]+r[d])%256]);return W};_0x118d.oIKFIw=t,_0x118d.FJIkvS={},_0x118d.GeDNPJ=!0}const r=e[0];_0x118d.xYzBEj!==r&&(_0x118d.FJIkvS={},_0x118d.xYzBEj=r);const d=_0x118d.FJIkvS[t];return void 0===d?(void 0===_0x118d.eskCvq&&(_0x118d.eskCvq=!0),n=_0x118d.oIKFIw(n,o),_0x118d.FJIkvS[t]=n):n=d,n}import{View}from"react-native";import{Canvas,RoundedRect,Rect,Group,LinearGradient,vec}from"@shopify/react-native-skia";import{lighten,darken}from"../../../services/GamesConstants.js";import{BLOCK_BLAST_COLORS}from"../BlockBlastConstants.js";import{jsx as _0x65dcfb,jsxs as _0x1c9407}from"react/jsx-runtime";const BLOCK_3D_COLOR_CACHE=new Map,getBlock3DColors=t=>{const o=_0x118d;let e=BLOCK_3D_COLOR_CACHE.get(t);return!e&&(e={top:{havTw:function(t,o,e){return t(o,e)}}[o(232,"!$3o")](lighten,t,.35),bottom:darken(t,.3),shadow:darken(t,.45)},BLOCK_3D_COLOR_CACHE[o(217,"SAY@")](t,e)),e};[BLOCK_BLAST_COLORS[_0xf547b3(189,"yIfT")],BLOCK_BLAST_COLORS.BLOCK_GREEN,BLOCK_BLAST_COLORS[_0xf547b3(234,"SIH#")],BLOCK_BLAST_COLORS[_0xf547b3(236,"SIH#")],BLOCK_BLAST_COLORS[_0xf547b3(192,"iH[#")],BLOCK_BLAST_COLORS.BLOCK_ORANGE].forEach(getBlock3DColors);const BlockPieceComponentView=t=>{const o=_0xf547b3,e={NumMH:function(t,o){return t*o},NdDNg:function(t,o,e){return t(o,e)},jCPnZ:function(t,o){return t-o},Zjtab:function(t,o,e){return t(o,e)},AeuuN:function(t,o,e){return t(o,e)},laVEU:function(t,o){return t+o},BuJFS:function(t,o){return t*o},asIfc:o(245,"*^L5"),vTNdH:function(t,o,e){return t(o,e)},Onftj:"rgba(255, 255, 255, 0.15)",wawKC:function(t,o){return t===o},oKBaA:function(t,o){return t*o},kptPM:function(t,o){return t!==o},uwmIg:function(t,o){return t!==o},MJBZG:function(t,o){return t!==o},Waftb:function(t,o){return t!==o},TRXzv:function(t,o){return t!==o},JfDkM:function(t,o){return t!==o},aSIPH:function(t,o){return t!==o}},n=_0xd3cae8(28),{shape:r,color:d,cellSize:W,cellGap:i,scale:u}=t,f=e.wawKC(u,void 0)?1:u,a=W*f,s=i*f,x=a+s;let C;n[0]!==f?(C=Math[o(240,"ymTI")](e.oKBaA(3,f)),n[0]=f,n[1]=C):C=n[1];const m=Math[o(208,"yIfT")](2,C),S=4*f;let _,k,l,R,O,h,L;if(n[2]!==m||n[3]!==d||e[o(207,"(83W")](n[4],S)||n[5]!==a||n[6]!==s||e[o(216,"CaBr")](n[7],x)||e[o(199,"^&ds")](n[8],r)){const{top:t,bottom:W,shadow:i}=getBlock3DColors(d),u=r[0]?e[o(220,"cxSY")](r[0].length,x)+s:0,f=e[o(230,"kKc%")](r[o(213,"Ni^g")],x)+s;if(k=View,e.Waftb(n[14],f)||n[15]!==u){const t={};t.width=u,t[o(222,"iSRK")]=f,O=t,n[14]=f,n[15]=u,n[16]=O}else O=n[16];if(_=Canvas,e[o(194,"!$3o")](n[17],f)||e[o(248,"c[$U")](n[18],u)){const t={};t[o(258,"(a&G")]=u,t[o(205,"W*^a")]=f,l=t,n[17]=f,n[18]=u,n[19]=l}else l=n[19];R=r[o(246,"7lmN")]((n,r)=>n[o(195,"c[$U")]((n,u)=>{const f=o;if(1===n){if(f(252,"zHU$")!==f(231,"SAY@")){const o=e.NumMH(u,x)+s,n=r*x+s,C=a,_={};return _.x=o,_.y=n,_[f(237,"Z*nF")]=C,_[f(221,"$O7w")]=C,_.r=S,_[f(214,"#X&M")]=i,_0x1c9407(Group,{children:[e[f(218,"SquQ")](_0x65dcfb,RoundedRect,_),_0x65dcfb(RoundedRect,{x:o,y:n,width:C,height:e[f(209,"4b#1")](C,m),r:S,children:e.Zjtab(_0x65dcfb,LinearGradient,{start:e[f(261,"Ti$$")](vec,o,n),end:vec(o,e[f(210,"K]n8")](n,C)-m),colors:[t,d,W]})}),_0x65dcfb(Rect,{x:o,y:n,width:C,height:e[f(201,"qzZC")](m,2.5),children:e.Zjtab(_0x65dcfb,LinearGradient,{start:e[f(243,"iSRK")](vec,o,n),end:vec(o,n+2.5*m),colors:[e[f(241,"7sOr")],f(225,"qJsU")]})}),e[f(198,"c#VQ")](_0x65dcfb,Rect,{x:o,y:n+m,width:2*m,height:C-3*m,children:_0x65dcfb(LinearGradient,{start:e[f(233,"^&ds")](vec,o,e[f(251,"iSRK")](n,m)),end:vec(o+2*m,e[f(229,"J1Ib")](n,m)),colors:[e[f(238,"kKc%")],f(204,"04^]")]})})]},"block-"+r+"-"+u)}_0x593244=_0x5acccd[1]}return null})),n[2]=m,n[3]=d,n[4]=S,n[5]=a,n[6]=s,n[7]=x,n[8]=r,n[9]=_,n[10]=k,n[11]=l,n[12]=R,n[13]=O}else _=n[9],k=n[10],l=n[11],R=n[12],O=n[13];if(e.aSIPH(n[20],_)||n[21]!==l||n[22]!==R){const t={};t[o(191,"04^]")]=l,t[o(262,"oMLT")]=R,h=_0x65dcfb(_,t),n[20]=_,n[21]=l,n[22]=R,n[23]=h}else h=n[23];if(n[24]!==k||e[o(244,"!$3o")](n[25],O)||n[26]!==h){const t={};t.style=O,t[o(223,"c[$U")]=h,L=_0x65dcfb(k,t),n[24]=k,n[25]=O,n[26]=h,n[27]=L}else L=n[27];return L};export const BlockPieceComponent=_0x361e1c.memo(BlockPieceComponentView);BlockPieceComponent[_0xf547b3(255,"Ti$$")]=_0xf547b3(206,"W@15");export const render3DCell=(t,o,e,n,r)=>{const d=_0xf547b3,W={VyROI:function(t,o){return t(o)},xFDvo:function(t,o,e,n){return t(o,e,n)},nGUXD:function(t,o,e){return t(o,e)},dypFE:function(t,o,e){return t(o,e)},WcdYn:function(t,o){return t+o},ZrXTc:function(t,o,e){return t(o,e)},pKYbE:function(t,o){return t+o},spSWX:function(t,o){return t*o}},{top:i,bottom:u,shadow:f}=W[d(228,"0HSk")](getBlock3DColors,n),a={};return a.x=t,a.y=o,a[d(226,"qzZC")]=e,a.height=e,a.r=4,a[d(256,"qzZC")]=f,W[d(259,"Ti$$")](_0x1c9407,Group,{children:[_0x65dcfb(RoundedRect,a),W[d(215,"iH[#")](_0x65dcfb,RoundedRect,{x:t,y:o,width:e,height:e-3,r:4,children:W.dypFE(_0x65dcfb,LinearGradient,{start:vec(t,o),end:vec(t,W[d(219,"yIfT")](o,e)-3),colors:[i,n,u]})}),_0x65dcfb(Rect,{x:t,y:o,width:e,height:7.5,children:_0x65dcfb(LinearGradient,{start:vec(t,o),end:vec(t,o+7.5),colors:["rgba(255, 255, 255, 0.35)",d(197,"9I]@")]})}),W[d(263,"!j#1")](_0x65dcfb,Rect,{x:t,y:W[d(250,"ymTI")](o,3),width:6,height:e-9,children:_0x65dcfb(LinearGradient,{start:vec(t,o+3),end:vec(W[d(242,"ymTI")](t,W.spSWX(3,2)),o+3),colors:[d(196,"J1Ib"),d(212,"zHU$")]})})]},r)};
@@ -1 +0,0 @@
1
- "use strict";const _0x3d9927=_0x3099;function _0x3099(W,e){W-=494;const t=_0x4117();let o=t[W];if(void 0===_0x3099.ODEkZk){const W=function(W,e){let t,o,d=[],n=0,r="";for(W=function(W){let e="",t="";for(let t,o,d=0,n=0;o=W.charAt(n++);~o&&(t=d%4?64*t+o:o,d++%4)?e+=String.fromCharCode(255&t>>(-2*d&6)):0)o="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=".indexOf(o);for(let W=0,o=e.length;W<o;W++)t+="%"+("00"+e.charCodeAt(W).toString(16)).slice(-2);return decodeURIComponent(t)}(W),o=0;o<256;o++)d[o]=o;for(o=0;o<256;o++)n=(n+d[o]+e.charCodeAt(o%e.length))%256,t=d[o],d[o]=d[n],d[n]=t;o=0,n=0;for(let e=0;e<W.length;e++)o=(o+1)%256,n=(n+d[o])%256,t=d[o],d[o]=d[n],d[n]=t,r+=String.fromCharCode(W.charCodeAt(e)^d[(d[o]+d[n])%256]);return r};_0x3099.WdZttC=W,_0x3099.SkFDfY={},_0x3099.ODEkZk=!0}const d=t[0];_0x3099.nnXJSJ!==d&&(_0x3099.SkFDfY={},_0x3099.nnXJSJ=d);const n=_0x3099.SkFDfY[W];return void 0===n?(void 0===_0x3099.tYzuYB&&(_0x3099.tYzuYB=!0),o=_0x3099.WdZttC(o,e),_0x3099.SkFDfY[W]=o):o=n,o}function _0x4117(){const W=["fmoiDSkxtW","W7JcK0enxqLTW7dcG8oGFG","a2WrWPxdU8kG","zNpcTrPiWQ9arCkDs8kxW6NdHa","WRRdN38","juNcTmo2fq","WRaRCq","W6ddISkDvCoUfmoN","W4ZcL2K0WOvvbHNcMmotW68wWQTMW7enw8kVWQPd","WQpcI8oRW4xdNCogumorWOHuWPtdTG","WRVdG2RcKdCLWR5GWPBcN2a","BSk5W6lcNSk0","W5bjWRiqFCodd8op","WPhcHXJcQG","h2aAWPhdQSkFbmkfW5K7pLO","WRmJmSoDWPi","W7xdImk+WPhcISkubmoNWRn+WPddNgm","W4ZdJSoYW6RdJCoAW6eaW7m9","W6BdM8kfbetcJSkQW4u6FHy","WQ/dUX93","W5ddVCkGoey","l8k/uSorhq","WOddMmkTW6ZdMa","WPWieCoeWOi","uHhdLSksWPi","W5pcQmkFgmoCW6G","xgnW","phRcNComnSkqW6BcTLxcU8oUwgVdKCohWONdVHNdNq","kmkLuSopc8o+fujWDa","WRJcSdtcGSkejxxdNK/cKtDtW77cSSkucSoLW6qcW64","WPf+WOZcKgyvj8oXaG","W5FdUSkiWORdKmkxW7HpESoVma","WRhdOSkjW5ldK8kPW70","W4JdKCkvWQnWW64RW4xdImkZmW","cNKQWO7dT8orWPuWWQSgjvC9W5rplLDMWOzy","WP7dG8k6W6P9W6SE","o8kYr8oYdmoZafm","WRldTXD7dCkKW40RuCkHsCob","WPVdMSkNW7DQ","W5ldVNVdQSkJWRq","afjQice","W4tdRhddQmkQWRm5jGZcH8oKihm","vvtcSSo7W7TwBa","FWNdM8oJra","W6ZdGGW6WPC","zCk5W6VcUSkf","jgOzWPZdMq","W5nyDZpdGa","W7NdMdypWP3dQ3fUWPi","WRxdSSkpW6FdHmkUW63dP3NcK0CEW6zVW7O","WRhcMmoMW5FdNW","WPxcUmouW43cGCkhW59hymo+cSoBaLBcHq","gCodWQqFW7ddLq","wvlcJfBcMCoOgmkkFmkJWQRcTvPiWR4QxW","WPjjkfhdMSozmW","W7VcRuKdWQC","W7hdKmky","tCoFAG","W7NdLCoPW53dRW","r8ksWQuXW4JdGLPD","WQ7dUXX/hmkB","W5WSW4/dVre","WQaAgmo6WO3dQa","WP/cVcNcISo0W6S4lZ/cV8oRcG","WQVcNmoSW5y","W7VdLsSuWPddT2TU","rKtcHZH7WPn8FSklzmkHW4/dTq","W6RdJmkLWPPy","W6NcP1SCWQ5PpdVcNG","W445WRtcTvCph8o2","WQtdTSkxW5xdKW","WR3dMg7cOZm","AfdcIvdcISoOlmkOCmkWWQdcTwf5WQG8rmk5WOmuFW","qCoEqbVcN8oPvchcM00","WONcKrdcImkMavq","W5iPf0RdRa","fCoKE8oHWQFdNCkr","DsZdU8k6WQCerSo8W7/dICkRWQZcUffxWQaeWR4ycq","fmoUvSknrW","hCkEW5GB","W4rBAcNdIxbhWPtcJW","W4u2W6GYEq","WP9/WRxcMeqdimoRbmoaW41QDG","WORdOK7cLbeaWPXfWQJcReihEmkvkSoHmSoHa8o5","W4JdQSk1WPzCW5GWW7VdOCkFbmoFW7FdJW/cI8oSW4n0","re7cTW","W5HzWR/dUComWOi","W5RcRfOGWRm","W4fAWRCbsW","WOfOWRfZkCoWC8oYvYS/WQy","WRhcJ8owfSkZd8odFSkbWP4V","WRFdKmk9B8oMfSoh","aSooWQinW7tdHuHvWOddTM8lbepdRK/dM8kkt13dIqRdRa","W7VcOeqwWQfOgdFcOSoGW4m","WObTWRb2kmo3umoAzYa2WPa","W4JdMCo3W6ldJCohW7Ox","hgeEWOldQG","W4tcTmkcz8oxW6f0ka","emolyCovu2ZdOX8","f8okWQixW6O","WPlcHW3cSCktbv7dUNxcSG","W5DwBa","vbNdTConw8o0WRu","fSouWQqCW4VdLwPgWPRdJa","W7zfdLPDWP3dP8oqW4xdRZ04W7u","WRWXss3dKW","WOTLWR3cJgi","p1S6WQtdHSkniCk7W7KchMS3W4VdLeSYWRdcVG","W6VdQCo9WRZdVCoU","DtldO8kUWRy","mmkYxCogdmo6","xwDUDmkuW4O","W5bkFGVdGgHC","W5KVW4ZdVre","WPBcOSoqW4VcJq","W4JdPYOIWR4","sCknjazlncldHmo/W70","W4zmAttdGgTh","W4zCDYRdTMXjWPq","WQ4IAmkfWOW","vbpdTq","WOZcIXdcPSkMh3JdTN7cTr9/W5pcKSk5","WQBcM8o5W43dLSowqmoK","W4TwDsm","wKtcRSoUW6Pq","W4xcRSkiomoCW6bU","WRJdKwpcPJm","ywpcTa1bWQrx","hSobD8kFswS","WO9KWRJcIg8","jmkfW746WQ8","W4W8W67dJZDzFCovpmoQW4zBzq","W4zwDW","WQhcQSo5W6VdQq","nCkVqmo4dq","W6SWcG","iK4nWR0","dgWtWP7dImkPbG","W5FdPhVdM8kJWQeBmtNcJ8ojjN9dWQvG","W7ZdImotW4RdQa","W6rUWPtdImoXWQ/cO8o+W4ZdKCo/W5OdcwulWOdcMSkF","W4xdK8kBewNcNCk2W6O","bCo5AmoJWQC","gSo0B8oN","W4VcLeyJWQC","W5TqW4OueG","ztpdJ8oTCG","W5y4cLFdSc7cO2/dTmoNya","W49mW5Wsh8oJBG","WPhcGWu","cfRcUCo9gmkWW5xcUwZcL8oiFG","oeOhWRZdLq","W6RdMdevWOJdP21oWPBcU8ogW4HA","W5qLW5JdPJnFW5KmW4/dNa","WPCil3xcLtidWPFcHCoTeNJdOW","WQ8rrW","uNDYyCkfW4ZcOq","ASo8xYhcPW","WQ4vwqqyW4y","W77dNISlWPddO2zfWOhcS8on","kvbsadu","WRyCd8oAWO3dOha","FSkWW63cVSk9WRr4ncxdLeylWR0","y3tcTrbiWR9xva","W6FcQ2OwWQv1jG","vXFdLmkz","Cx7cPW9b","WQG5Bmk4WOZdOWS","wetcUmo9W45rFvtdKSoO","W5JdKW4kWR8","xCoyzWlcLa","W49wW4ipca","WRyFrW","WRtcKCoRW5ldNW","emoeWR4xW7tdLh9rWRy","xrVdLmkAWPqL","W73dKIWOWOJdO2TU","wSoFDG","WRFcLCoRW4hdN8oZxCoKWOju","WPdcHXVcOSk3ba","zexcTtz3","W5G7W7e2tmkPrCoCzr4","W5ldPIeWWR0","amolBG","zt8zWPxcQKu0WPNdOSoQW6G","W6hdKmkDq8oUcmobr8kqWPujW4O","W7ldNCkfhvZcHSk8W6u","W7XTWQJdLCo5","WRddUmkdWO3dMmkOW6FdKG","W4VdLe3dTmo2xgJdLeFcHX96","WQ7dUXrS","WRJdHmkPW4PZ","WP/cJrK","W4jiWR4Ms8om","W5JdMmkVjfK","WOBcV8odW4NcJCkmW5W","WRKme8opWPZdPG","W4y3W6WHECkZy8oqBHK/WQpcII7cMG","WQtcJmo4W5ddN8onqa","W74mW7NdGtu","hmobyCkmBwRdQbK9cG","WPFdRCkwh8owW4TCla","W6hdNSktfvRcV8kHW64TEHBcQG","WQ3dLwpcVXeOWQi","W6fsWR4d","WPuXzdS","oSk+xCof","WRxdPCksW4tdTCkOW6FdG3FcIuapW70","W5JdLmo6W77dUW","p8oWzCo/WQG","eCowFmkzswy","WOJdHCkTW4P9W6m","WPFcPCog","rGBdOmolrG","Au/cNq","WQldPCkEW5BdN8kIW77dP3NcK0CEW6zVW7O","W4/dQhFdN8kUWQy","W5HvWP4AsG","wtPgW4BcU8o/bSkbW44gm3i","W6ddUCoMWQNdSmo0jq","WPxcPCocW5lcNmklW4D5","W5ZcKSkulSoCW7y","WRqldSohWOtdU3bFW44","W6FcUCk9cCo7","W4JcJsFcJCkUag8","WOBcSSoeW5FcOG"];return(_0x4117=function(){return W})()}!function(){const W="M!EV",e=_0x3099,t=_0x4117();for(;;)try{if(519088==parseInt(e(523,"y0mc"))/1*(parseInt(e(638,W))/2)+parseInt(e(642,"o9@q"))/3*(-parseInt(e(639,W))/4)+parseInt(e(511,"tU%M"))/5+-parseInt(e(652,"BB3["))/6+-parseInt(e(611,"B7]#"))/7*(-parseInt(e(607,"]Jx$"))/8)+parseInt(e(679,"%d6f"))/9+-parseInt(e(702,"6@tH"))/10)break;t.push(t.shift())}catch(W){t.push(t.shift())}}();import _0x5d5449,{useCallback,useMemo}from"react";import{View,StyleSheet}from"react-native";import{Gesture,GestureDetector}from"react-native-gesture-handler";import _0xe0426d,{useSharedValue,useAnimatedStyle,runOnJS}from"react-native-reanimated";import{GridComponent}from"./GridComponent.js";import{BlockPieceComponent}from"./BlockPieceComponent.js";import{useBlockBlastStore,usePiecesVersion,useSelectedPieceId}from"../BlockBlastStore.js";import{BLOCK_BLAST_GAME_CONFIG}from"../BlockBlastConstants.js";import{getGameDimensions}from"../../../services/UtilsService.js";import{jsx as _0x53984c,Fragment as _0x1e875f,jsxs as _0x30698f}from"react/jsx-runtime";const{width:width,height:height,screenWidth:screenWidth}=getGameDimensions(),PiecesLayer=_0x5d5449[_0x3d9927(567,"MafU")](({cellSize:W,cellGap:e,piecesAreaHeight:t,gameWidth:o})=>{const d=_0x3d9927,n={KcfnV:function(W,e){return W-e},NXKkQ:function(W){return W()},LAVHE:function(W,e){return W*e}},r=usePiecesVersion(),i=n.NXKkQ(useSelectedPieceId),s=n.LAVHE(W,BLOCK_BLAST_GAME_CONFIG.PREVIEW_PIECE_SCALE),u=e*BLOCK_BLAST_GAME_CONFIG[d(575,"&Oyk")],a=o-40,x=_0x5d5449[d(660,"6@tH")](()=>{const W=d,e={};e[W(626,"QG(4")]=function(W,e){return W+e},e[W(571,"hPur")]=function(W,e){return W+e},e[W(502,"h9zA")]=function(W,e){return W*e},e[W(591,"^YWs")]=function(W,e){return W-e},e[W(615,"uH@j")]=function(W,e){return W/e};const o=e,r=useBlockBlastStore.getState()[W(522,"QG(4")],i=30*(r[W(676,"QG(4")]-1),x=n[W(594,"&fhC")](a,i)/r[W(518,"hPur")];return r[W(703,"BB3[")]((e,d)=>{const n=W;if(!e||!e[n(619,"JrJC")]||!e.shape[0])return null;const r=e[n(654,"%d6f")][0][n(550,"&fhC")]*o[n(563,"hPur")](s,u),i=e[n(530,"D!qu")][n(608,"MafU")]*(s+u),a=o[n(531,"iV%k")](20,o[n(681,"KLDb")](d,x+30))+x/2,m=r+u,l=o[n(553,"&Oyk")](i,u),k=(t-l)/2;return{id:e.id,shape:e.shape[n(697,"tU%M")](W=>[...W]),color:e[n(719,"gp]5")],left:o.HuBBX(a,o.rtUZM(m,2)),top:k,width:m,height:l}})},[r,s,u,a,t]);return _0x53984c(_0x1e875f,{children:x[d(703,"BB3[")]((t,o)=>{const n=d;if(!t)return null;const r=i===t.id,s={};s[n(512,"MafU")]=t[n(684,"bJsK")],s[n(494,"BB3[")]=t[n(499,"Lqrk")],s.width=t[n(693,"gp]5")],s[n(600,"]Jx$")]=t[n(656,"[1!W")];const u={};return u[n(569,"8s^c")]=t[n(588,"g9TN")],u[n(661,"PjB@")]=t.color,u.cellSize=W,u[n(525,"JrJC")]=e,u.scale=BLOCK_BLAST_GAME_CONFIG[n(632,"uH@j")],_0x53984c(View,{style:[styles[n(562,"&fhC")],s],pointerEvents:n(510,"^mIi"),children:!r&&_0x53984c(BlockPieceComponent,u)},t.id+"-"+o)})})});PiecesLayer[_0x3d9927(506,"A%m]")]=_0x3d9927(581,"uH@j");const DraggedPieceLayer=_0x5d5449[_0x3d9927(561,"tU%M")](({cellSize:W,cellGap:e,draggedPieceStyle:t})=>{const o=_0x3d9927,d=useSelectedPieceId(),n=_0x5d5449[o(715,"8sE7")](()=>{const W=o;if(!d)return null;const e=useBlockBlastStore[W(498,"xmRj")]()[W(716,"e5UA")][W(528,"8s^c")](W=>W.id===d);return e?{shape:e[W(690,"iV%k")][W(574,"y&v@")](W=>[...W]),color:e.color}:null},[d]);return _0x53984c(_0xe0426d[o(526,"E6#B")],{style:[styles[o(557,"KLDb")],t],children:n&&_0x53984c(BlockPieceComponent,{shape:n[o(619,"JrJC")],color:n[o(572,"XHS&")],cellSize:W,cellGap:e,scale:BLOCK_BLAST_GAME_CONFIG[o(577,"tU%M")]})})});DraggedPieceLayer[_0x3d9927(707,"xmRj")]=_0x3d9927(601,"VHfV");const GameAreaComponent=({gridSize:W,cellSize:e,cellGap:t,gameService:o,offset:d})=>{const n="y0mc",r="%d6f",i="e5UA",s="KLDb",u="xmRj",a=_0x3d9927,x={HQyKA:function(W,e){return W+e},Dhyea:function(W,e){return W>e},mujUw:function(W,e){return W+e},DLYSV:function(W,e){return W-e},vuTAk:function(W,e){return W-e},BdVqC:function(W,e){return W+e},nOyKg:function(W,e){return W*e},WtHDv:function(W,e){return W*e},qzyjZ:function(W,e){return W*e},ROVLn:function(W,e){return W/e},RirSq:function(W,e){return W-e},CQnPe:function(W,e){return W/e},xhhTT:function(W,e){return W+e},EraRk:function(W,e){return W/e},OlHnG:function(W,e){return W*e},ZjYPq:function(W,e){return W+e},cxulJ:a(623,"A)sO"),RPrYB:function(W,e,t){return W(e,t)},LqmBO:function(W,e){return W(e)},AbGCB:function(W,e,t){return W(e,t)}},m=useSharedValue(0),l=useSharedValue(0),k=useSharedValue(!1),S=_0x5d5449[a(587,"B7]#")](null),C=_0x5d5449.useRef({x:0,y:0}),f=_0x5d5449[a(515,"E6#B")](null),_=_0x5d5449[a(622,"tU%M")](()=>{const o=a,n=e+t,r=x[o(509,"o7iS")](W*n,t),i=W*n+t,s=x.Dhyea(width,400)?20:0,m=x.mujUw(i+s+30,120),l=d+70,k=x[o(657,"XHS&")](height-l,80),S=l+x[o(592,u)](k,m)/2,C=x[o(521,"PjB@")](screenWidth,r)/2,f=Math[o(554,"8sE7")](S,l+10),_=x[o(717,u)](f+i+s,30),h={};return h.totalCellSize=n,h.gridWidth=r,h[o(664,"A6ZT")]=i,h[o(686,"B7]#")]=120,h[o(565,"D!qu")]=C,h[o(651,"]Jx$")]=f,h.piecesAreaY=_,h[o(549,"f&X%")]=0,h},[W,e,t,d]),{piecesAreaHeight:h,gridStartX:P,gridStartY:O,piecesAreaY:G,gridPadding:R}=_,B=_0x5d5449[a(558,"JrJC")](()=>{const W=a;S[W(520,s)]=null,k[W(598,s)]=!1,f[W(555,"M!EV")]=null,useBlockBlastStore.getState()[W(551,"h9zA")]()},[k]),p=_0x5d5449[a(573,n)]((W,e)=>{});p[a(517,"FuGR")]=(W,o)=>{const d=a,n=useBlockBlastStore.getState();if(!n[d(578,"%d6f")])return;const r=(screenWidth-width)/2,i=width-40,s=x.nOyKg(30,n[d(701,"PjB@")].length-1),u=r+20;for(let r=0;r<n.nextPieces[d(550,"&fhC")];r++){const a=n.nextPieces[r];if(!a||!a.shape||!a[d(495,"KLDb")][0])continue;const f=x[d(678,"0q5F")](e,BLOCK_BLAST_GAME_CONFIG[d(688,"o7iS")]),_=x[d(535,"^YWs")](t,BLOCK_BLAST_GAME_CONFIG[d(655,"&fhC")]),P=a[d(559,"qhNw")][0][d(676,"QG(4")]*(f+_),O=a[d(619,"JrJC")][d(501,"tU%M")]*x[d(504,"xmRj")](f,_),R=(i-s)/n[d(648,"tU%M")][d(706,"BB3[")],B=u+r*(R+30)+x[d(570,"^mIi")](R,2)-P/2,p=G+(h-O)/2,L=10,Q=p+O;if(W>=B-L&&W<=B+P+L&&o>=x.RirSq(p,L)&&o<=Q+L){n[d(641,"ih0v")](a.id),S[d(624,"iV%k")]=a.id;const r=x[d(687,"D!qu")](e,BLOCK_BLAST_GAME_CONFIG[d(582,"bJsK")]),i=t*BLOCK_BLAST_GAME_CONFIG[d(631,"JrJC")],s=a[d(644,"&fhC")][0][d(518,"hPur")]*(r+i),u=a[d(718,"Lqrk")].length*(r+i),f=B+x[d(692,"ih0v")](P,2),_=x[d(593,"qhNw")](p,x[d(568,"[E2)")](O,2)),h={};return h.x=W-f,h.y=o-_,C[d(580,"^mIi")]=h,m[d(595,"6@tH")]=x[d(606,"D!qu")](x[d(635,"ih0v")](W,C.current.x),s/2),l.value=o-C[d(583,"@WYh")].y-x[d(513,"@WYh")](u,2)-BLOCK_BLAST_GAME_CONFIG[d(614,"h9zA")],void(k.value=!0)}}};const L=_0x5d5449[a(533,"@WYh")]((W,e)=>{});L[a(696,"gp]5")]=(d,n)=>{const r=a,s=S[r(602,"8AE8")];if(!s)return;const u=useBlockBlastStore[r(584,"8s^c")](),k=u[r(503,"o9@q")][r(713,"XHS&")](W=>W.id===s);if(!k||!k[r(662,"FuGR")]||!k[r(603,"ih0v")][0])return;const _=x[r(653,"S9eI")](e,BLOCK_BLAST_GAME_CONFIG[r(625,"XHS&")]),h=t*BLOCK_BLAST_GAME_CONFIG[r(556,"ih0v")],G=k[r(667,"8sE7")][0][r(658,"8s^c")]*(_+h),R=k[r(629,"o9@q")].length*x[r(708,"g9TN")](_,h);m[r(618,"^mIi")]=d-C.current.x-G/2,l.value=n-C[r(709,"hPur")].y-R/2-BLOCK_BLAST_GAME_CONFIG.DRAG_Y_OFFSET;const B=d-C[r(673,"y0mc")].x,p=n-C[r(696,"gp]5")].y-BLOCK_BLAST_GAME_CONFIG.DRAG_Y_OFFSET,L=o[r(597,"^mIi")](B,p,P,O,e,t,W);if(L){const W=L[r(649,"6@tH")]-Math[r(647,"]Jx$")](k[r(654,"%d6f")][r(634,"o7iS")]/2),e=x.vuTAk(L[r(668,"^YWs")],Math[r(586,"@WYh")](x[r(694,"^YWs")](k.shape[0][r(497,"XHS&")],2))),t=f.current;if(!t||t[r(633,i)]!==W||t[r(668,"^YWs")]!==e){const t={};t[r(505,"QG(4")]=W,t[r(680,"6@tH")]=e,f[r(624,"iV%k")]=t;const d=o[r(710,"qhNw")](s,W,e);u.updatePreviewPosition(W,e,d)}}else if(null!==f[r(704,"y&v@")])if(r(682,"8s^c")===x[r(547,"FuGR")])f.current=null,u[r(524,"[E2)")]();else{const W=_0x2913c8[r(534,"FuGR")]-_0x31cea0[r(548,"QG(4")](_0x31404d.shape[r(659,"y&v@")]/2),e=x[r(705,"Lqrk")](_0x3e4b45[r(514,"tU%M")],_0x5bec3f[r(609,"PjB@")](_0x12a78b[r(714,"h9zA")][0][r(672,i)]/2)),t=_0x4faeba[r(541,"[1!W")];if(!t||t[r(604,"M!EV")]!==W||t.col!==e){const t={};t.row=W,t.col=e,_0x15135b[r(590,"e5UA")]=t;const o=_0x5b164d[r(589,"B7]#")](_0x492170,W,e);_0xb0f6bf[r(620,"VHfV")](W,e,o)}}};const Q=_0x5d5449[a(610,"hPur")]((W,e)=>{});Q[a(665,"6@tH")]=(W,e)=>{const t=a,d=S[t(517,"FuGR")];if(!d)return;const n=useBlockBlastStore.getState();n[t(537,"^mIi")]&&n.canPlace&&o[t(500,"KLDb")](d,n[t(599,"FuGR")].row,n.previewPosition[t(605,"Lqrk")]),B()};const J=useCallback((W,e)=>p[a(675,"h9zA")](W,e),[]),A=x.RPrYB(useCallback,(W,e)=>L.current(W,e),[]),g=useCallback((W,e)=>Q[a(704,"y&v@")](W,e),[]),y=useCallback(()=>B(),[B]),F=useMemo(()=>Gesture[a(683,"A)sO")]()[a(695,"A)sO")](0)[a(640,"]Jx$")](!1)[a(712,"ih0v")](W=>{const e=a;runOnJS(J)(W[e(496,"]Jx$")],W[e(544,"hPur")])}).onUpdate(W=>{const e=a;runOnJS(A)(W[e(628,"6@tH")],W[e(544,"hPur")])})[a(539,"E6#B")](W=>{const e=a;runOnJS(g)(W.absoluteX,W[e(616,"ih0v")])})[a(621,"Lqrk")](()=>{runOnJS(y)()}),[J,A,g,y]),K={};K[a(576,"8s^c")]=m[a(699,"bJsK")];const N={};N.translateY=l[a(636,"E6#B")];const V=x.LqmBO(useAnimatedStyle,()=>({transform:[K,N],opacity:k[a(674,"JrJC")]?1:0,pointerEvents:a(671,"6@tH")})),q={};q[a(560,"E6#B")]=W,q.cellSize=e,q.cellGap=t;const M={};M[a(536,"VHfV")]=G,M[a(612,"KLDb")]=(screenWidth-width)/2,M[a(677,r)]=width,M[a(538,"B7]#")]=h;const b={};b[a(666,"6@tH")]=e,b[a(650,"^YWs")]=t,b.piecesAreaHeight=h,b.gameWidth=width;const v={};return v[a(643,"D!qu")]=e,v[a(685,"&fhC")]=t,v.draggedPieceStyle=V,_0x53984c(GestureDetector,{gesture:F,children:x[a(545,"y0mc")](_0x30698f,View,{style:styles[a(596,"xmRj")],children:[_0x53984c(View,{style:[styles[a(630,r)],{left:P-R,top:O-R,padding:R,paddingTop:x[a(516,"[E2)")](R,20)}],pointerEvents:a(645,n),children:_0x53984c(GridComponent,q)}),_0x53984c(View,{style:[styles[a(519,"o9@q")],M],pointerEvents:a(646,"QG(4"),children:x[a(663,"xmRj")](_0x53984c,PiecesLayer,b)}),_0x53984c(DraggedPieceLayer,v)]})})},_0x431252={};_0x431252[_0x3d9927(527,"S9eI")]=1;const _0x3a0312={position:"absolute"};_0x3a0312[_0x3d9927(507,"M!EV")]=10;const _0x27f3d3={};_0x27f3d3[_0x3d9927(508,"[E2)")]=_0x3d9927(613,"xmRj");const _0x44f2a5={};_0x44f2a5.position=_0x3d9927(711,"h9zA");const _0xc4eacf={};_0xc4eacf[_0x3d9927(542,"FuGR")]=_0x3d9927(670,"KLDb"),_0xc4eacf[_0x3d9927(691,"iV%k")]=0,_0xc4eacf[_0x3d9927(552,"JrJC")]=0,_0xc4eacf[_0x3d9927(543,"y0mc")]=1e3,_0xc4eacf[_0x3d9927(700,"xmRj")]=_0x3d9927(627,"0q5F");const _0x354e6b={};_0x354e6b.container=_0x431252,_0x354e6b[_0x3d9927(529,"^mIi")]=_0x3a0312,_0x354e6b[_0x3d9927(669,"tU%M")]=_0x27f3d3,_0x354e6b[_0x3d9927(585,"MafU")]=_0x44f2a5,_0x354e6b[_0x3d9927(698,"&Oyk")]=_0xc4eacf;const styles=StyleSheet[_0x3d9927(532,"QG(4")](_0x354e6b);export const GameArea=_0x5d5449.memo(GameAreaComponent);GameArea[_0x3d9927(566,"[E2)")]=_0x3d9927(689,"[E2)");