@nayan-ui/games 1.20.0 → 1.21.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 (552) hide show
  1. package/lib/module/games/arrows/Arrows.js +1 -1
  2. package/lib/module/games/arrows/ArrowsScene.js +1 -1
  3. package/lib/module/games/balloon-blaster/BalloonBlaster.js +1 -1
  4. package/lib/module/games/balloon-blaster/BalloonBlasterScene.js +1 -1
  5. package/lib/module/games/bike-racing/BikeMeshes.js +1 -1
  6. package/lib/module/games/bike-racing/BikeRacing.js +1 -1
  7. package/lib/module/games/bike-racing/BikeRacingConstants.js +1 -1
  8. package/lib/module/games/bike-racing/BikeRacingScene.js +1 -1
  9. package/lib/module/games/block-blast/BlockBlast.js +1 -1
  10. package/lib/module/games/block-blast/BlockBlastScene.js +1 -1
  11. package/lib/module/games/block-breaker/BlockBreaker.js +1 -1
  12. package/lib/module/games/block-breaker/BlockBreakerScene.js +1 -1
  13. package/lib/module/games/bluk/Bluk.js +1 -1
  14. package/lib/module/games/bluk/BlukScene.js +1 -1
  15. package/lib/module/games/bubble-shooter/BubbleShooter.js +1 -1
  16. package/lib/module/games/bubble-shooter/BubbleShooterScene.js +1 -1
  17. package/lib/module/games/candy-crush/CandyCrush.js +1 -1
  18. package/lib/module/games/candy-crush/CandyCrushScene.js +1 -1
  19. package/lib/module/games/car-racing/CarMeshes.js +1 -1
  20. package/lib/module/games/car-racing/CarRacing.js +1 -1
  21. package/lib/module/games/car-racing/CarRacingScene.js +1 -1
  22. package/lib/module/games/chameleon-run/ChameleonRun.js +1 -1
  23. package/lib/module/games/chameleon-run/ChameleonRunBackdrop.js +1 -1
  24. package/lib/module/games/chameleon-run/ChameleonRunMeshes.js +1 -1
  25. package/lib/module/games/checkers/Checkers.js +1 -1
  26. package/lib/module/games/checkers/CheckersScene.js +1 -1
  27. package/lib/module/games/color-switch/ColorSwitch.js +1 -1
  28. package/lib/module/games/color-switch/ColorSwitchScene.js +1 -1
  29. package/lib/module/games/colors-sort/ColorsSort.js +1 -1
  30. package/lib/module/games/colors-sort/ColorsSortScene.js +1 -1
  31. package/lib/module/games/connect-em-all/ConnectEmAll.js +1 -1
  32. package/lib/module/games/connect-em-all/ConnectEmAllScene.js +1 -1
  33. package/lib/module/games/crossy-road/CrossyRoad.js +1 -1
  34. package/lib/module/games/crossy-road/CrossyRoadMeshes.js +1 -1
  35. package/lib/module/games/crossy-road/CrossyRoadPerson.js +1 -1
  36. package/lib/module/games/dino-jump/DinoJump.js +1 -1
  37. package/lib/module/games/dino-jump/DinoJumpScene.js +1 -1
  38. package/lib/module/games/dots-and-boxes/DotsAndBoxes.js +1 -1
  39. package/lib/module/games/dots-and-boxes/DotsAndBoxesScene.js +1 -1
  40. package/lib/module/games/falling-sticks/FallingSticks.js +1 -1
  41. package/lib/module/games/falling-sticks/FallingSticksScene.js +1 -1
  42. package/lib/module/games/find-different-number/FindDifferentNumber.js +1 -1
  43. package/lib/module/games/find-different-number/FindDifferentNumberScene.js +1 -1
  44. package/lib/module/games/flappy-bird/FlappyBird.js +1 -1
  45. package/lib/module/games/flappy-bird/FlappyBirdScene.js +1 -1
  46. package/lib/module/games/fruit-merger/FruitMerger.js +1 -1
  47. package/lib/module/games/fruit-merger/FruitMergerScene.js +1 -1
  48. package/lib/module/games/fruit-ninja/FruitNinja.js +1 -1
  49. package/lib/module/games/fruit-ninja/FruitNinjaScene.js +1 -1
  50. package/lib/module/games/fruit-ninja/FruitNinjaWorld.js +1 -1
  51. package/lib/module/games/game-2048/Game2048.js +1 -1
  52. package/lib/module/games/game-2048/Game2048Scene.js +1 -1
  53. package/lib/module/games/knife-hit/KnifeHit.js +1 -1
  54. package/lib/module/games/knife-hit/KnifeHitScene.js +1 -1
  55. package/lib/module/games/ludo-king/LudoKing.js +1 -1
  56. package/lib/module/games/ludo-king/LudoKingScene.js +1 -1
  57. package/lib/module/games/maze-runner/MazeRunner.js +1 -1
  58. package/lib/module/games/maze-runner/MazeRunnerScene.js +1 -1
  59. package/lib/module/games/memory-match/MemoryMatch.js +1 -1
  60. package/lib/module/games/memory-match/MemoryMatchScene.js +1 -1
  61. package/lib/module/games/mine-sweeper/MineSweeper.js +1 -1
  62. package/lib/module/games/mine-sweeper/MineSweeperScene.js +1 -1
  63. package/lib/module/games/mob-control/MobControl.js +1 -1
  64. package/lib/module/games/mob-control/MobControlGame.js +1 -1
  65. package/lib/module/games/mob-control/MobControlMeshes.js +1 -1
  66. package/lib/module/games/mob-control/MobControlRenderer.js +1 -1
  67. package/lib/module/games/mob-control/MobControlRules.js +1 -1
  68. package/lib/module/games/mob-control/MobControlScene.js +1 -1
  69. package/lib/module/games/nuts-and-bolts/NutsAndBolts.js +1 -1
  70. package/lib/module/games/nuts-and-bolts/NutsAndBoltsScene.js +1 -1
  71. package/lib/module/games/pac-man/PacMan.js +1 -1
  72. package/lib/module/games/pac-man/PacManGame.js +1 -1
  73. package/lib/module/games/pac-man/PacManScene.js +1 -1
  74. package/lib/module/games/paper-io/PaperIo.js +1 -1
  75. package/lib/module/games/paper-io/PaperIoMeshes.js +1 -1
  76. package/lib/module/games/paper-io/PaperIoScene.js +1 -1
  77. package/lib/module/games/penguin-run/PenguinMeshes.js +1 -1
  78. package/lib/module/games/penguin-run/PenguinRun.js +1 -1
  79. package/lib/module/games/penguin-run/PenguinRunScene.js +1 -1
  80. package/lib/module/games/perfect-circle/PerfectCircle.js +1 -1
  81. package/lib/module/games/perfect-circle/PerfectCircleScene.js +1 -1
  82. package/lib/module/games/pipe-connect/PipeConnect.js +1 -1
  83. package/lib/module/games/pipe-connect/PipeConnectScene.js +1 -1
  84. package/lib/module/games/play-with-tua/PlayWithTua.js +1 -1
  85. package/lib/module/games/popit-fidget/PopitFidget.js +1 -1
  86. package/lib/module/games/popit-fidget/PopitFidgetScene.js +1 -1
  87. package/lib/module/games/reversi/Reversi.js +1 -1
  88. package/lib/module/games/reversi/ReversiScene.js +1 -1
  89. package/lib/module/games/search-grid/SearchGrid.js +1 -1
  90. package/lib/module/games/search-grid/SearchGridScene.js +1 -1
  91. package/lib/module/games/shared/BackdropCard.js +1 -1
  92. package/lib/module/games/shared/EngineBackdrop.js +1 -1
  93. package/lib/module/games/shared/EngineBlasts.js +1 -1
  94. package/lib/module/games/shared/EngineBlocks.js +1 -1
  95. package/lib/module/games/shared/EngineDice.js +1 -1
  96. package/lib/module/games/shared/EngineFruits.js +1 -1
  97. package/lib/module/games/shared/EngineGameLoader.js +1 -1
  98. package/lib/module/games/shared/EngineGameScreen.js +1 -1
  99. package/lib/module/games/shared/EngineGlyphs.js +1 -1
  100. package/lib/module/games/shared/EngineHud.js +1 -1
  101. package/lib/module/games/shared/EngineMeadow.js +1 -1
  102. package/lib/module/games/shared/EngineTouchSurface.js +1 -1
  103. package/lib/module/games/shared/GameActivity.js +1 -1
  104. package/lib/module/games/shared/GameLoading.js +1 -1
  105. package/lib/module/games/shared/GameLoadingTransition.js +1 -1
  106. package/lib/module/games/sliding-numbers/SlidingNumbers.js +1 -1
  107. package/lib/module/games/sliding-numbers/SlidingNumbersScene.js +1 -1
  108. package/lib/module/games/snake-3d/Snake3D.js +1 -1
  109. package/lib/module/games/snake-3d/Snake3DScene.js +1 -1
  110. package/lib/module/games/snakes-and-ladders/SnakesAndLadders.js +1 -1
  111. package/lib/module/games/snakes-and-ladders/SnakesAndLaddersScene.js +1 -1
  112. package/lib/module/games/space-fighter/SpaceFighter.js +1 -1
  113. package/lib/module/games/space-fighter/SpaceFighterScene.js +1 -1
  114. package/lib/module/games/spider-solitaire/SpiderSolitaire.js +1 -1
  115. package/lib/module/games/spider-solitaire/SpiderSolitaireScene.js +1 -1
  116. package/lib/module/games/stack-tower/StackTower.js +1 -1
  117. package/lib/module/games/stack-tower/StackTowerScene.js +1 -1
  118. package/lib/module/games/sudoku/Sudoku.js +1 -1
  119. package/lib/module/games/sudoku/SudokuScene.js +1 -1
  120. package/lib/module/games/tangram/Tangram.js +1 -1
  121. package/lib/module/games/tangram/TangramScene.js +1 -1
  122. package/lib/module/games/tank-1990/Tank1990.js +1 -1
  123. package/lib/module/games/tank-1990/Tank1990Scene.js +1 -1
  124. package/lib/module/games/tic-tac-toe/TicTacToe.js +1 -1
  125. package/lib/module/games/tic-tac-toe/TicTacToeScene.js +1 -1
  126. package/lib/module/games/tile-home/TileHome.js +1 -1
  127. package/lib/module/games/tile-home/TileHomeScene.js +1 -1
  128. package/lib/module/games/treasure-hunt/TreasureHunt.js +1 -1
  129. package/lib/module/games/treasure-hunt/TreasureHuntConstants.js +1 -1
  130. package/lib/module/games/treasure-hunt/TreasureHuntModel.js +1 -1
  131. package/lib/module/games/treasure-hunt/TreasureHuntScene.js +1 -1
  132. package/lib/module/games/whack-a-mole/WhackAMole.js +1 -1
  133. package/lib/module/games/whack-a-mole/WhackAMoleScene.js +1 -1
  134. package/lib/module/helpers/GameSettingsModal.js +1 -1
  135. package/lib/module/helpers/GameTheme.js +1 -1
  136. package/package.json +1 -2
  137. package/src/assets/fonts/Inter-SemiBold.ttf +0 -0
  138. package/src/assets/models/explorer/explorer.glb +0 -0
  139. package/src/assets/models/explorer/params.json +0 -51
  140. package/src/assets/models/explorer/source.json +0 -222
  141. package/src/assets/models/play-with-tua/play-with-tua.glb +0 -0
  142. package/src/assets/models/play-with-tua/sources.json +0 -141
  143. package/src/assets/sfx/balloon_pop.wav +0 -0
  144. package/src/assets/sfx/blocked.wav +0 -0
  145. package/src/assets/sfx/boing.wav +0 -0
  146. package/src/assets/sfx/bonus.wav +0 -0
  147. package/src/assets/sfx/boom.wav +0 -0
  148. package/src/assets/sfx/bump.wav +0 -0
  149. package/src/assets/sfx/cannon.wav +0 -0
  150. package/src/assets/sfx/capture.wav +0 -0
  151. package/src/assets/sfx/card_flip.wav +0 -0
  152. package/src/assets/sfx/card_place.wav +0 -0
  153. package/src/assets/sfx/catch.wav +0 -0
  154. package/src/assets/sfx/chime.wav +0 -0
  155. package/src/assets/sfx/chomp.wav +0 -0
  156. package/src/assets/sfx/chomp_alt.wav +0 -0
  157. package/src/assets/sfx/clack.wav +0 -0
  158. package/src/assets/sfx/clang.wav +0 -0
  159. package/src/assets/sfx/clash.wav +0 -0
  160. package/src/assets/sfx/click.wav +0 -0
  161. package/src/assets/sfx/coin.wav +0 -0
  162. package/src/assets/sfx/combo.wav +0 -0
  163. package/src/assets/sfx/crash.wav +0 -0
  164. package/src/assets/sfx/crunch.wav +0 -0
  165. package/src/assets/sfx/dance.wav +0 -0
  166. package/src/assets/sfx/deselect.wav +0 -0
  167. package/src/assets/sfx/dice_roll.wav +0 -0
  168. package/src/assets/sfx/die.wav +0 -0
  169. package/src/assets/sfx/draw.wav +0 -0
  170. package/src/assets/sfx/drop.wav +0 -0
  171. package/src/assets/sfx/eat.wav +0 -0
  172. package/src/assets/sfx/engine.wav +0 -0
  173. package/src/assets/sfx/error.wav +0 -0
  174. package/src/assets/sfx/flag.wav +0 -0
  175. package/src/assets/sfx/flap.wav +0 -0
  176. package/src/assets/sfx/flip_disc.wav +0 -0
  177. package/src/assets/sfx/footstep_run.wav +0 -0
  178. package/src/assets/sfx/footstep_walk.wav +0 -0
  179. package/src/assets/sfx/game_over.wav +0 -0
  180. package/src/assets/sfx/gate.wav +0 -0
  181. package/src/assets/sfx/hit.wav +0 -0
  182. package/src/assets/sfx/hop.wav +0 -0
  183. package/src/assets/sfx/hurt.wav +0 -0
  184. package/src/assets/sfx/invalid.wav +0 -0
  185. package/src/assets/sfx/jump.wav +0 -0
  186. package/src/assets/sfx/ladder.wav +0 -0
  187. package/src/assets/sfx/land.wav +0 -0
  188. package/src/assets/sfx/laugh.wav +0 -0
  189. package/src/assets/sfx/lose.wav +0 -0
  190. package/src/assets/sfx/merge.wav +0 -0
  191. package/src/assets/sfx/miss.wav +0 -0
  192. package/src/assets/sfx/nitro.wav +0 -0
  193. package/src/assets/sfx/pew.wav +0 -0
  194. package/src/assets/sfx/place.wav +0 -0
  195. package/src/assets/sfx/pling.wav +0 -0
  196. package/src/assets/sfx/point.wav +0 -0
  197. package/src/assets/sfx/pop.wav +0 -0
  198. package/src/assets/sfx/pop_soft.wav +0 -0
  199. package/src/assets/sfx/power_up.wav +0 -0
  200. package/src/assets/sfx/reveal.wav +0 -0
  201. package/src/assets/sfx/robot.wav +0 -0
  202. package/src/assets/sfx/rotate.wav +0 -0
  203. package/src/assets/sfx/run_steps.wav +0 -0
  204. package/src/assets/sfx/select.wav +0 -0
  205. package/src/assets/sfx/shuffle.wav +0 -0
  206. package/src/assets/sfx/six.wav +0 -0
  207. package/src/assets/sfx/slice.wav +0 -0
  208. package/src/assets/sfx/slide.wav +0 -0
  209. package/src/assets/sfx/snake.wav +0 -0
  210. package/src/assets/sfx/snap.wav +0 -0
  211. package/src/assets/sfx/splash.wav +0 -0
  212. package/src/assets/sfx/star.wav +0 -0
  213. package/src/assets/sfx/start.wav +0 -0
  214. package/src/assets/sfx/swoosh.wav +0 -0
  215. package/src/assets/sfx/tap.wav +0 -0
  216. package/src/assets/sfx/thud.wav +0 -0
  217. package/src/assets/sfx/thunk.wav +0 -0
  218. package/src/assets/sfx/tick.wav +0 -0
  219. package/src/assets/sfx/time_up.wav +0 -0
  220. package/src/assets/sfx/tock.wav +0 -0
  221. package/src/assets/sfx/walk_steps.wav +0 -0
  222. package/src/assets/sfx/warning.wav +0 -0
  223. package/src/assets/sfx/whack.wav +0 -0
  224. package/src/assets/sfx/whoosh.wav +0 -0
  225. package/src/assets/sfx/win.wav +0 -0
  226. package/src/assets/sfx/zap.wav +0 -0
  227. package/src/assets/textures/ad_bolt.png +0 -0
  228. package/src/assets/textures/ad_bubbles.png +0 -0
  229. package/src/assets/textures/ad_chevrons.png +0 -0
  230. package/src/assets/textures/asphalt.png +0 -0
  231. package/src/assets/textures/bark.jpg +0 -0
  232. package/src/assets/textures/explorer-atlas.png +0 -0
  233. package/src/assets/textures/facade.png +0 -0
  234. package/src/assets/textures/grass.png +0 -0
  235. package/src/assets/textures/leaves.png +0 -0
  236. package/src/assets/textures/limestone.jpg +0 -0
  237. package/src/assets/textures/meadow.jpg +0 -0
  238. package/src/assets/textures/nature-sources.json +0 -87
  239. package/src/assets/textures/pine.png +0 -0
  240. package/src/assets/textures/river.jpg +0 -0
  241. package/src/assets/textures/soft_glow.png +0 -0
  242. package/src/games/arrows/Arrows.tsx +0 -69
  243. package/src/games/arrows/ArrowsConstants.ts +0 -107
  244. package/src/games/arrows/ArrowsGame.ts +0 -735
  245. package/src/games/arrows/ArrowsScene.ts +0 -395
  246. package/src/games/balloon-blaster/BalloonBlaster.tsx +0 -75
  247. package/src/games/balloon-blaster/BalloonBlasterConstants.ts +0 -79
  248. package/src/games/balloon-blaster/BalloonBlasterGame.ts +0 -287
  249. package/src/games/balloon-blaster/BalloonBlasterPhysics.ts +0 -95
  250. package/src/games/balloon-blaster/BalloonBlasterScene.ts +0 -225
  251. package/src/games/bike-racing/BikeMeshes.ts +0 -273
  252. package/src/games/bike-racing/BikeRacing.tsx +0 -211
  253. package/src/games/bike-racing/BikeRacingConstants.ts +0 -103
  254. package/src/games/bike-racing/BikeRacingGame.ts +0 -557
  255. package/src/games/bike-racing/BikeRacingScene.ts +0 -119
  256. package/src/games/block-blast/BlockBlast.tsx +0 -73
  257. package/src/games/block-blast/BlockBlastConstants.ts +0 -179
  258. package/src/games/block-blast/BlockBlastGame.ts +0 -471
  259. package/src/games/block-blast/BlockBlastScene.ts +0 -156
  260. package/src/games/block-breaker/BlockBreaker.tsx +0 -79
  261. package/src/games/block-breaker/BlockBreakerConstants.ts +0 -139
  262. package/src/games/block-breaker/BlockBreakerGame.ts +0 -459
  263. package/src/games/block-breaker/BlockBreakerScene.ts +0 -257
  264. package/src/games/bluk/Bluk.tsx +0 -82
  265. package/src/games/bluk/BlukConstants.ts +0 -121
  266. package/src/games/bluk/BlukGame.ts +0 -323
  267. package/src/games/bluk/BlukRules.ts +0 -154
  268. package/src/games/bluk/BlukScene.ts +0 -514
  269. package/src/games/bubble-shooter/BubbleShooter.tsx +0 -76
  270. package/src/games/bubble-shooter/BubbleShooterConstants.ts +0 -103
  271. package/src/games/bubble-shooter/BubbleShooterGame.ts +0 -459
  272. package/src/games/bubble-shooter/BubbleShooterScene.ts +0 -158
  273. package/src/games/candy-crush/CandyCrush.tsx +0 -77
  274. package/src/games/candy-crush/CandyCrushConstants.ts +0 -94
  275. package/src/games/candy-crush/CandyCrushGame.ts +0 -477
  276. package/src/games/candy-crush/CandyCrushScene.ts +0 -209
  277. package/src/games/car-racing/CarMeshes.ts +0 -440
  278. package/src/games/car-racing/CarRacing.tsx +0 -211
  279. package/src/games/car-racing/CarRacingConstants.ts +0 -167
  280. package/src/games/car-racing/CarRacingFacade.ts +0 -40
  281. package/src/games/car-racing/CarRacingGame.ts +0 -539
  282. package/src/games/car-racing/CarRacingScene.ts +0 -1026
  283. package/src/games/car-racing/CarRacingScenery.ts +0 -265
  284. package/src/games/chameleon-run/ChameleonRun.tsx +0 -96
  285. package/src/games/chameleon-run/ChameleonRunBackdrop.ts +0 -186
  286. package/src/games/chameleon-run/ChameleonRunConstants.ts +0 -47
  287. package/src/games/chameleon-run/ChameleonRunGame.ts +0 -309
  288. package/src/games/chameleon-run/ChameleonRunMeshes.ts +0 -305
  289. package/src/games/chameleon-run/ChameleonRunRules.ts +0 -252
  290. package/src/games/chameleon-run/ChameleonRunScene.ts +0 -310
  291. package/src/games/checkers/Checkers.tsx +0 -83
  292. package/src/games/checkers/CheckersAI.ts +0 -255
  293. package/src/games/checkers/CheckersConstants.ts +0 -68
  294. package/src/games/checkers/CheckersGame.ts +0 -322
  295. package/src/games/checkers/CheckersRules.ts +0 -167
  296. package/src/games/checkers/CheckersScene.ts +0 -308
  297. package/src/games/color-switch/ColorSwitch.tsx +0 -75
  298. package/src/games/color-switch/ColorSwitchConstants.ts +0 -61
  299. package/src/games/color-switch/ColorSwitchGame.ts +0 -329
  300. package/src/games/color-switch/ColorSwitchScene.ts +0 -220
  301. package/src/games/colors-sort/ColorsSort.tsx +0 -82
  302. package/src/games/colors-sort/ColorsSortConstants.ts +0 -119
  303. package/src/games/colors-sort/ColorsSortGame.ts +0 -246
  304. package/src/games/colors-sort/ColorsSortScene.ts +0 -315
  305. package/src/games/connect-em-all/ConnectEmAll.tsx +0 -70
  306. package/src/games/connect-em-all/ConnectEmAllConstants.ts +0 -77
  307. package/src/games/connect-em-all/ConnectEmAllGame.ts +0 -401
  308. package/src/games/connect-em-all/ConnectEmAllScene.ts +0 -235
  309. package/src/games/crossy-road/CrossyRoad.tsx +0 -74
  310. package/src/games/crossy-road/CrossyRoadCamera.ts +0 -59
  311. package/src/games/crossy-road/CrossyRoadConstants.ts +0 -132
  312. package/src/games/crossy-road/CrossyRoadGame.ts +0 -293
  313. package/src/games/crossy-road/CrossyRoadMeshes.ts +0 -195
  314. package/src/games/crossy-road/CrossyRoadPerson.ts +0 -198
  315. package/src/games/crossy-road/CrossyRoadRules.ts +0 -99
  316. package/src/games/crossy-road/CrossyRoadScene.ts +0 -355
  317. package/src/games/dino-jump/DinoJump.tsx +0 -77
  318. package/src/games/dino-jump/DinoJumpConstants.ts +0 -80
  319. package/src/games/dino-jump/DinoJumpGame.ts +0 -344
  320. package/src/games/dino-jump/DinoJumpScene.ts +0 -686
  321. package/src/games/dots-and-boxes/DotsAndBoxes.tsx +0 -83
  322. package/src/games/dots-and-boxes/DotsAndBoxesConstants.ts +0 -77
  323. package/src/games/dots-and-boxes/DotsAndBoxesGame.ts +0 -271
  324. package/src/games/dots-and-boxes/DotsAndBoxesScene.ts +0 -249
  325. package/src/games/falling-sticks/FallingSticks.tsx +0 -72
  326. package/src/games/falling-sticks/FallingSticksConstants.ts +0 -62
  327. package/src/games/falling-sticks/FallingSticksGame.ts +0 -220
  328. package/src/games/falling-sticks/FallingSticksRules.ts +0 -145
  329. package/src/games/falling-sticks/FallingSticksScene.ts +0 -245
  330. package/src/games/find-different-number/FindDifferentNumber.tsx +0 -74
  331. package/src/games/find-different-number/FindDifferentNumberConstants.ts +0 -74
  332. package/src/games/find-different-number/FindDifferentNumberGame.ts +0 -174
  333. package/src/games/find-different-number/FindDifferentNumberRules.ts +0 -43
  334. package/src/games/find-different-number/FindDifferentNumberScene.ts +0 -193
  335. package/src/games/flappy-bird/FlappyBird.tsx +0 -73
  336. package/src/games/flappy-bird/FlappyBirdConstants.ts +0 -95
  337. package/src/games/flappy-bird/FlappyBirdGame.ts +0 -375
  338. package/src/games/flappy-bird/FlappyBirdScene.ts +0 -630
  339. package/src/games/fruit-merger/FruitMerger.tsx +0 -73
  340. package/src/games/fruit-merger/FruitMergerConstants.ts +0 -102
  341. package/src/games/fruit-merger/FruitMergerGame.ts +0 -285
  342. package/src/games/fruit-merger/FruitMergerRules.ts +0 -286
  343. package/src/games/fruit-merger/FruitMergerScene.ts +0 -498
  344. package/src/games/fruit-ninja/FruitNinja.tsx +0 -129
  345. package/src/games/fruit-ninja/FruitNinjaConstants.ts +0 -107
  346. package/src/games/fruit-ninja/FruitNinjaGame.ts +0 -391
  347. package/src/games/fruit-ninja/FruitNinjaScene.ts +0 -319
  348. package/src/games/fruit-ninja/FruitNinjaWorld.ts +0 -17
  349. package/src/games/game-2048/Game2048.tsx +0 -84
  350. package/src/games/game-2048/Game2048Constants.ts +0 -68
  351. package/src/games/game-2048/Game2048Game.ts +0 -181
  352. package/src/games/game-2048/Game2048Rules.ts +0 -101
  353. package/src/games/game-2048/Game2048Scene.ts +0 -206
  354. package/src/games/knife-hit/KnifeHit.tsx +0 -78
  355. package/src/games/knife-hit/KnifeHitConstants.ts +0 -89
  356. package/src/games/knife-hit/KnifeHitGame.ts +0 -264
  357. package/src/games/knife-hit/KnifeHitScene.ts +0 -360
  358. package/src/games/ludo-king/LudoKing.tsx +0 -86
  359. package/src/games/ludo-king/LudoKingConstants.ts +0 -212
  360. package/src/games/ludo-king/LudoKingGame.ts +0 -326
  361. package/src/games/ludo-king/LudoKingRules.ts +0 -143
  362. package/src/games/ludo-king/LudoKingScene.ts +0 -397
  363. package/src/games/maze-runner/MazeRunner.tsx +0 -88
  364. package/src/games/maze-runner/MazeRunnerConstants.ts +0 -65
  365. package/src/games/maze-runner/MazeRunnerGame.ts +0 -176
  366. package/src/games/maze-runner/MazeRunnerRules.ts +0 -161
  367. package/src/games/maze-runner/MazeRunnerScene.ts +0 -245
  368. package/src/games/memory-match/MemoryMatch.tsx +0 -77
  369. package/src/games/memory-match/MemoryMatchConstants.ts +0 -105
  370. package/src/games/memory-match/MemoryMatchGame.ts +0 -222
  371. package/src/games/memory-match/MemoryMatchRules.ts +0 -38
  372. package/src/games/memory-match/MemoryMatchScene.ts +0 -268
  373. package/src/games/mine-sweeper/MineSweeper.tsx +0 -77
  374. package/src/games/mine-sweeper/MineSweeperConstants.ts +0 -94
  375. package/src/games/mine-sweeper/MineSweeperGame.ts +0 -234
  376. package/src/games/mine-sweeper/MineSweeperRules.ts +0 -67
  377. package/src/games/mine-sweeper/MineSweeperScene.ts +0 -262
  378. package/src/games/mob-control/MobControl.tsx +0 -73
  379. package/src/games/mob-control/MobControlConstants.ts +0 -106
  380. package/src/games/mob-control/MobControlGame.ts +0 -176
  381. package/src/games/mob-control/MobControlMeshes.ts +0 -85
  382. package/src/games/mob-control/MobControlRenderer.ts +0 -108
  383. package/src/games/mob-control/MobControlRules.ts +0 -522
  384. package/src/games/mob-control/MobControlScene.ts +0 -399
  385. package/src/games/number-search/NumberSearch.tsx +0 -18
  386. package/src/games/number-search/NumberSearchNumbers.ts +0 -623
  387. package/src/games/nuts-and-bolts/NutsAndBolts.tsx +0 -85
  388. package/src/games/nuts-and-bolts/NutsAndBoltsConstants.ts +0 -75
  389. package/src/games/nuts-and-bolts/NutsAndBoltsGame.ts +0 -298
  390. package/src/games/nuts-and-bolts/NutsAndBoltsRules.ts +0 -474
  391. package/src/games/nuts-and-bolts/NutsAndBoltsScene.ts +0 -498
  392. package/src/games/pac-man/PacMan.tsx +0 -86
  393. package/src/games/pac-man/PacManConstants.ts +0 -169
  394. package/src/games/pac-man/PacManGame.ts +0 -406
  395. package/src/games/pac-man/PacManRules.ts +0 -255
  396. package/src/games/pac-man/PacManScene.ts +0 -387
  397. package/src/games/paper-io/PaperIo.tsx +0 -91
  398. package/src/games/paper-io/PaperIoConstants.ts +0 -86
  399. package/src/games/paper-io/PaperIoGame.ts +0 -193
  400. package/src/games/paper-io/PaperIoMeshes.ts +0 -233
  401. package/src/games/paper-io/PaperIoRules.ts +0 -315
  402. package/src/games/paper-io/PaperIoScene.ts +0 -310
  403. package/src/games/penguin-run/PenguinMeshes.ts +0 -269
  404. package/src/games/penguin-run/PenguinModel.ts +0 -712
  405. package/src/games/penguin-run/PenguinRun.tsx +0 -77
  406. package/src/games/penguin-run/PenguinRunConstants.ts +0 -69
  407. package/src/games/penguin-run/PenguinRunGame.ts +0 -406
  408. package/src/games/penguin-run/PenguinRunScene.ts +0 -949
  409. package/src/games/perfect-circle/PerfectCircle.tsx +0 -74
  410. package/src/games/perfect-circle/PerfectCircleConstants.ts +0 -52
  411. package/src/games/perfect-circle/PerfectCircleGame.ts +0 -153
  412. package/src/games/perfect-circle/PerfectCircleRules.ts +0 -111
  413. package/src/games/perfect-circle/PerfectCircleScene.ts +0 -176
  414. package/src/games/pipe-connect/PipeConnect.tsx +0 -69
  415. package/src/games/pipe-connect/PipeConnectConstants.ts +0 -101
  416. package/src/games/pipe-connect/PipeConnectGame.ts +0 -179
  417. package/src/games/pipe-connect/PipeConnectRules.ts +0 -326
  418. package/src/games/pipe-connect/PipeConnectScene.ts +0 -271
  419. package/src/games/play-with-tua/PlayWithTua.tsx +0 -123
  420. package/src/games/play-with-tua/PlayWithTuaConstants.ts +0 -70
  421. package/src/games/play-with-tua/PlayWithTuaGame.ts +0 -167
  422. package/src/games/play-with-tua/PlayWithTuaModel.ts +0 -42
  423. package/src/games/play-with-tua/PlayWithTuaScene.ts +0 -36
  424. package/src/games/popit-fidget/PopitFidget.tsx +0 -72
  425. package/src/games/popit-fidget/PopitFidgetConstants.ts +0 -71
  426. package/src/games/popit-fidget/PopitFidgetGame.ts +0 -148
  427. package/src/games/popit-fidget/PopitFidgetScene.ts +0 -242
  428. package/src/games/reversi/Reversi.tsx +0 -94
  429. package/src/games/reversi/ReversiConstants.ts +0 -67
  430. package/src/games/reversi/ReversiGame.ts +0 -266
  431. package/src/games/reversi/ReversiRules.ts +0 -176
  432. package/src/games/reversi/ReversiScene.ts +0 -240
  433. package/src/games/search-grid/SearchGrid.tsx +0 -92
  434. package/src/games/search-grid/SearchGridConstants.ts +0 -178
  435. package/src/games/search-grid/SearchGridGame.ts +0 -209
  436. package/src/games/search-grid/SearchGridScene.ts +0 -301
  437. package/src/games/shared/BackdropCard.tsx +0 -54
  438. package/src/games/shared/EngineBackdrop.ts +0 -300
  439. package/src/games/shared/EngineBlasts.ts +0 -136
  440. package/src/games/shared/EngineBlocks.ts +0 -91
  441. package/src/games/shared/EngineControlText.ts +0 -17
  442. package/src/games/shared/EngineDice.ts +0 -250
  443. package/src/games/shared/EngineFootprint.ts +0 -35
  444. package/src/games/shared/EngineFruits.ts +0 -1435
  445. package/src/games/shared/EngineGameLoader.tsx +0 -88
  446. package/src/games/shared/EngineGameScreen.tsx +0 -325
  447. package/src/games/shared/EngineGameWidth.ts +0 -3
  448. package/src/games/shared/EngineGameWidth.web.ts +0 -3
  449. package/src/games/shared/EngineGlyphs.ts +0 -178
  450. package/src/games/shared/EngineHud.ts +0 -815
  451. package/src/games/shared/EngineLoading.ts +0 -477
  452. package/src/games/shared/EngineMeadow.ts +0 -725
  453. package/src/games/shared/EngineMeshCache.ts +0 -15
  454. package/src/games/shared/EngineMeshes.ts +0 -10
  455. package/src/games/shared/EngineRacingChase.ts +0 -21
  456. package/src/games/shared/EngineRacingHandling.ts +0 -48
  457. package/src/games/shared/EngineReadyContext.ts +0 -4
  458. package/src/games/shared/EngineTilt.ts +0 -44
  459. package/src/games/shared/EngineTouchSurface.tsx +0 -103
  460. package/src/games/shared/EngineUtils.ts +0 -52
  461. package/src/games/shared/GameActivity.ts +0 -13
  462. package/src/games/shared/GameLoading.tsx +0 -202
  463. package/src/games/shared/GameLoadingTransition.tsx +0 -61
  464. package/src/games/shared/ProceduralCacheVersion.ts +0 -2
  465. package/src/games/shared/useEngineGame.ts +0 -240
  466. package/src/games/shared/useGameResource.ts +0 -21
  467. package/src/games/shared/useLiveState.ts +0 -58
  468. package/src/games/sliding-numbers/SlidingNumbers.tsx +0 -71
  469. package/src/games/sliding-numbers/SlidingNumbersConstants.ts +0 -65
  470. package/src/games/sliding-numbers/SlidingNumbersGame.ts +0 -192
  471. package/src/games/sliding-numbers/SlidingNumbersRules.ts +0 -79
  472. package/src/games/sliding-numbers/SlidingNumbersScene.ts +0 -193
  473. package/src/games/snake-3d/Snake3D.tsx +0 -76
  474. package/src/games/snake-3d/Snake3DConstants.ts +0 -61
  475. package/src/games/snake-3d/Snake3DGame.ts +0 -192
  476. package/src/games/snake-3d/Snake3DMotion.ts +0 -22
  477. package/src/games/snake-3d/Snake3DRules.ts +0 -116
  478. package/src/games/snake-3d/Snake3DScene.ts +0 -322
  479. package/src/games/snakes-and-ladders/SnakesAndLadders.tsx +0 -87
  480. package/src/games/snakes-and-ladders/SnakesAndLaddersConstants.ts +0 -136
  481. package/src/games/snakes-and-ladders/SnakesAndLaddersGame.ts +0 -310
  482. package/src/games/snakes-and-ladders/SnakesAndLaddersScene.ts +0 -515
  483. package/src/games/space-fighter/SpaceFighter.tsx +0 -74
  484. package/src/games/space-fighter/SpaceFighterConstants.ts +0 -86
  485. package/src/games/space-fighter/SpaceFighterGame.ts +0 -292
  486. package/src/games/space-fighter/SpaceFighterScene.ts +0 -550
  487. package/src/games/spider-solitaire/SpiderSolitaire.tsx +0 -80
  488. package/src/games/spider-solitaire/SpiderSolitaireConstants.ts +0 -107
  489. package/src/games/spider-solitaire/SpiderSolitaireGame.ts +0 -387
  490. package/src/games/spider-solitaire/SpiderSolitaireRules.ts +0 -123
  491. package/src/games/spider-solitaire/SpiderSolitaireScene.ts +0 -352
  492. package/src/games/stack-tower/StackTower.tsx +0 -76
  493. package/src/games/stack-tower/StackTowerConstants.ts +0 -74
  494. package/src/games/stack-tower/StackTowerGame.ts +0 -236
  495. package/src/games/stack-tower/StackTowerScene.ts +0 -186
  496. package/src/games/sudoku/Sudoku.tsx +0 -73
  497. package/src/games/sudoku/SudokuConstants.ts +0 -127
  498. package/src/games/sudoku/SudokuGame.ts +0 -250
  499. package/src/games/sudoku/SudokuRules.ts +0 -125
  500. package/src/games/sudoku/SudokuScene.ts +0 -304
  501. package/src/games/tangram/Tangram.tsx +0 -79
  502. package/src/games/tangram/TangramConstants.ts +0 -64
  503. package/src/games/tangram/TangramGame.ts +0 -356
  504. package/src/games/tangram/TangramRules.ts +0 -409
  505. package/src/games/tangram/TangramScene.ts +0 -203
  506. package/src/games/tank-1990/Tank1990.tsx +0 -78
  507. package/src/games/tank-1990/Tank1990Constants.ts +0 -81
  508. package/src/games/tank-1990/Tank1990Game.ts +0 -331
  509. package/src/games/tank-1990/Tank1990Rules.ts +0 -390
  510. package/src/games/tank-1990/Tank1990Scene.ts +0 -434
  511. package/src/games/tic-tac-toe/TicTacToe.tsx +0 -98
  512. package/src/games/tic-tac-toe/TicTacToeConstants.ts +0 -69
  513. package/src/games/tic-tac-toe/TicTacToeGame.ts +0 -200
  514. package/src/games/tic-tac-toe/TicTacToeRules.ts +0 -103
  515. package/src/games/tic-tac-toe/TicTacToeScene.ts +0 -245
  516. package/src/games/tile-home/TileHome.tsx +0 -92
  517. package/src/games/tile-home/TileHomeConstants.ts +0 -139
  518. package/src/games/tile-home/TileHomeGame.ts +0 -435
  519. package/src/games/tile-home/TileHomeScene.ts +0 -154
  520. package/src/games/treasure-hunt/TreasureHunt.tsx +0 -206
  521. package/src/games/treasure-hunt/TreasureHuntConstants.ts +0 -266
  522. package/src/games/treasure-hunt/TreasureHuntControls.ts +0 -280
  523. package/src/games/treasure-hunt/TreasureHuntGame.ts +0 -402
  524. package/src/games/treasure-hunt/TreasureHuntMeshes.ts +0 -422
  525. package/src/games/treasure-hunt/TreasureHuntModel.ts +0 -506
  526. package/src/games/treasure-hunt/TreasureHuntRules.ts +0 -1210
  527. package/src/games/treasure-hunt/TreasureHuntScene.ts +0 -586
  528. package/src/games/whack-a-mole/WhackAMole.tsx +0 -79
  529. package/src/games/whack-a-mole/WhackAMoleConstants.ts +0 -94
  530. package/src/games/whack-a-mole/WhackAMoleGame.ts +0 -233
  531. package/src/games/whack-a-mole/WhackAMoleScene.ts +0 -349
  532. package/src/games/word-search/WordSearch.tsx +0 -18
  533. package/src/games/word-search/WordSearchWords.ts +0 -1642
  534. package/src/helpers/GamePatternData.ts +0 -120
  535. package/src/helpers/GameSettingsModal.tsx +0 -384
  536. package/src/helpers/GameTheme.tsx +0 -37
  537. package/src/helpers/IconPaths.ts +0 -6
  538. package/src/helpers/index.ts +0 -2
  539. package/src/index.tsx +0 -60
  540. package/src/services/GameAssetLoader.ts +0 -111
  541. package/src/services/GameAssets.ts +0 -149
  542. package/src/services/GameLoaders.ts +0 -93
  543. package/src/services/GamesConstants.ts +0 -193
  544. package/src/services/GamesMetadata.ts +0 -711
  545. package/src/services/GamesService.ts +0 -116
  546. package/src/services/HapticsService.ts +0 -48
  547. package/src/services/ScoringService.ts +0 -19
  548. package/src/services/SfxSources.ts +0 -81
  549. package/src/services/SoundsService.ts +0 -582
  550. package/src/services/ThemeService.ts +0 -281
  551. package/src/services/UtilsService.ts +0 -134
  552. package/src/services/index.ts +0 -6
@@ -1,582 +0,0 @@
1
- // Game sound effects: short, synthesised WAVs (scripts/build-sfx.py → src/assets/sfx) played through
2
- // the Nayan engine's mixer, which mixes them in Rust on the audio thread, so they're instant, overlap
3
- // freely and never queue up the way spoken phrases did. Every game's events are mapped below onto the
4
- // sound that fits them best (with a volume and pitch where it helps tell sounds apart).
5
- //
6
- // Games call playSound(GAME_SOUNDS.<GAME>.<EVENT>, settings.enableSounds) as before.
7
- import type { AudioPlayOptions, SoundBank, Voice } from '@nayan-ui/engine';
8
- import { SFX_SOURCES, type SfxName } from './SfxSources';
9
-
10
- export interface SoundConfig {
11
- /** The sound effect to play. */
12
- sfx?: SfxName;
13
- /** 0..2, default 1. */
14
- volume?: number;
15
- /** Playback speed, which also shifts the pitch. Default 1. */
16
- pitch?: number;
17
- /** No longer spoken; kept so older call sites that pass a phrase still type-check. */
18
- text?: string;
19
- rate?: number;
20
- language?: string;
21
- /** Minimum gap between repeated instances, in milliseconds. */
22
- cooldown?: number;
23
- /** Repeat a music/ambience clip until its voice is stopped. */
24
- loop?: boolean;
25
- }
26
-
27
- // Keep the engine out of the home screen's metadata import. Each decoded sound is shared
28
- // across games, but opening one game should not fetch and decode every game's effects.
29
- const banks = new Map<SfxName, SoundBank<SfxName>>();
30
- const engine = (): typeof import('@nayan-ui/engine') => require('@nayan-ui/engine');
31
- const loadBank = (name: SfxName): SoundBank<SfxName> | null => {
32
- const { audio, isEngineAvailable } = engine();
33
- if (!isEngineAvailable) return null;
34
- let bank = banks.get(name);
35
- if (!bank) {
36
- bank = audio.load({ [name]: SFX_SOURCES[name] } as Record<SfxName, number>);
37
- banks.set(name, bank);
38
- }
39
- return bank;
40
- };
41
-
42
- // The same sound re-triggered within this window is dropped (so a burst of events doesn't stack it)
43
- const MIN_REPEAT_INTERVAL = 30;
44
- const _lastPlay = new Map<SfxName, number>();
45
- // Recently started voices, so stopAllSounds can cut them off
46
- const MAX_TRACKED_VOICES = 24;
47
- const _voices: Voice[] = [];
48
-
49
- /** Loads the sound effects ahead of use (e.g. when a game opens), so the first one isn't skipped. */
50
- export const preloadSounds = (sounds?: Record<string, SoundConfig> | SoundConfig[]): void => {
51
- if (!sounds) return;
52
- for (const sound of Object.values(sounds)) if (sound.sfx) loadBank(sound.sfx);
53
- };
54
-
55
- function gameSoundConfigs(gameId: string): SoundConfig[] {
56
- const key = gameId.replace(/-/g, '_').toUpperCase();
57
- const sounds = GAME_SOUNDS[key as keyof typeof GAME_SOUNDS];
58
- return [
59
- ...(sounds && !('sfx' in sounds) ? Object.values(sounds as Record<string, SoundConfig>) : []),
60
- GAME_SOUNDS.WELL_DONE,
61
- GAME_SOUNDS.TIME_UP,
62
- GAME_SOUNDS.STOP,
63
- GAME_SOUNDS.RESET,
64
- GAME_SOUNDS.DRAW
65
- ];
66
- }
67
-
68
- /** Loads a game's effects on opening, including games excluded from homepage preloading. */
69
- export const preloadGameSounds = (gameId: string): void => preloadSounds(gameSoundConfigs(gameId));
70
-
71
- /** Decode only the selected games' effects, sharing each clip and leaving other banks lazy. */
72
- export function* warmSoundAssets(gameIds: readonly string[]): Iterable<() => Promise<unknown>> {
73
- const names = new Set<SfxName>();
74
- for (const id of gameIds) for (const sound of gameSoundConfigs(id)) if (sound.sfx) names.add(sound.sfx);
75
- yield () => Promise.all([...names].map((name) => loadBank(name)?.ready));
76
- }
77
-
78
- export const playSound = (soundConfig: SoundConfig, soundEnabled: boolean, _force?: boolean): void => {
79
- playSoundVoice(soundConfig, soundEnabled);
80
- };
81
-
82
- /** For game-owned effects that must stop immediately when an action changes. */
83
- export const playSoundVoice = (soundConfig: SoundConfig, soundEnabled: boolean): Voice | null => {
84
- if (!soundEnabled || !soundConfig?.sfx) return null;
85
- const b = loadBank(soundConfig.sfx);
86
- if (!b) return null;
87
- const { audio } = engine();
88
- if (audio.muted) return null;
89
- const now = Date.now();
90
- if (now - (_lastPlay.get(soundConfig.sfx) ?? 0) < (soundConfig.cooldown ?? MIN_REPEAT_INTERVAL)) return null;
91
- _lastPlay.set(soundConfig.sfx, now);
92
- return playBankSound(b, soundConfig.sfx, { volume: soundConfig.volume ?? 1, pitch: soundConfig.pitch ?? 1, loop: soundConfig.loop });
93
- };
94
-
95
- /** Tracks custom native one-shots too, so race/forest effects stop with the shared game screen. */
96
- export const playBankSound = <K extends string>(bank: SoundBank<K> | undefined, name: K, options?: AudioPlayOptions): Voice | null => {
97
- const { audio } = engine();
98
- if (!bank || audio.muted) return null;
99
- const voice = bank.play(name, options);
100
- if (voice != null) {
101
- _voices.push(voice);
102
- if (_voices.length > MAX_TRACKED_VOICES) audio.stop(_voices.shift());
103
- }
104
- return voice;
105
- };
106
-
107
- export const stopAllSounds = (): void => {
108
- _lastPlay.clear();
109
- if (!_voices.length) return;
110
- const { audio } = engine();
111
- for (const v of _voices) audio.stop(v);
112
- _voices.length = 0;
113
- };
114
-
115
- // Every game's events, mapped onto the sound effect that fits them best
116
- export const GAME_SOUNDS = {
117
- STOP: { sfx: 'deselect', volume: 0.5 } as SoundConfig,
118
- RESET: { sfx: 'click', volume: 0.5 } as SoundConfig,
119
- DRAW: { sfx: 'draw' } as SoundConfig,
120
- PLAY_WITH_TUA: {
121
- START: { sfx: 'start', volume: 0.65 } as SoundConfig,
122
- STANDING: { sfx: 'deselect', volume: 0.4 } as SoundConfig,
123
- WALKING: { sfx: 'footstep_walk', volume: 0.5 } as SoundConfig,
124
- RUNNING: { sfx: 'footstep_run', volume: 0.5 } as SoundConfig,
125
- JUMPING: { sfx: 'jump', volume: 0.6 } as SoundConfig,
126
- WAVING: { sfx: 'chime', volume: 0.55 } as SoundConfig,
127
- WINKING: { sfx: 'pling', volume: 0.45, pitch: 1.15 } as SoundConfig,
128
- DANCING: { sfx: 'dance', volume: 0.4, loop: true, cooldown: 0 } as SoundConfig,
129
- LAUGHING: { sfx: 'laugh', volume: 0.55 } as SoundConfig,
130
- FIGHTING: { sfx: 'swoosh', volume: 0.55 } as SoundConfig,
131
- FALLING: { sfx: 'thud', volume: 0.5 } as SoundConfig,
132
- LAND: { sfx: 'land', volume: 0.45 } as SoundConfig,
133
- STUMBLE: { sfx: 'whoosh', volume: 0.3, pitch: 0.85 } as SoundConfig
134
- },
135
- TREASURE_HUNT: {
136
- START: { sfx: 'start', volume: 0.6 } as SoundConfig,
137
- ATTACK: { sfx: 'swoosh', volume: 0.35, pitch: 1.2 } as SoundConfig,
138
- IMPACT: { sfx: 'clang', volume: 0.5 } as SoundConfig,
139
- DEFEAT: { sfx: 'boom', volume: 0.5 } as SoundConfig,
140
- COLLECT: { sfx: 'coin', volume: 0.55 } as SoundConfig,
141
- HURT: { sfx: 'hurt', volume: 0.5 } as SoundConfig,
142
- WIN: { sfx: 'win' } as SoundConfig,
143
- LOSE: { sfx: 'game_over' } as SoundConfig
144
- },
145
- POP: { sfx: 'pop' } as SoundConfig,
146
- SWOOSH: { sfx: 'swoosh' } as SoundConfig,
147
- BOOM: { sfx: 'boom' } as SoundConfig,
148
- WHOOSH: { sfx: 'whoosh' } as SoundConfig,
149
- TIME_UP: { sfx: 'time_up' } as SoundConfig,
150
- WELL_DONE: { sfx: 'win' } as SoundConfig,
151
- WHACK_A_MOLE: {
152
- START: { sfx: 'start' } as SoundConfig,
153
- HIT: { sfx: 'whack' } as SoundConfig,
154
- MISS: { sfx: 'swoosh', volume: 0.6 } as SoundConfig,
155
- SPAWN: { sfx: 'pop_soft', volume: 0.7, pitch: 0.85 } as SoundConfig,
156
- EMPTY_TAP: { sfx: 'thud', volume: 0.6 } as SoundConfig,
157
- TIME_WARNING: { sfx: 'warning' } as SoundConfig,
158
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
159
- },
160
- BALLOON_BLASTER: {
161
- START: { sfx: 'start' } as SoundConfig,
162
- POP: { sfx: 'balloon_pop' } as SoundConfig,
163
- BOMB: { sfx: 'boom' } as SoundConfig,
164
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
165
- },
166
- FRUIT_NINJA: {
167
- START: { sfx: 'start' } as SoundConfig,
168
- SLICE: { sfx: 'slice' } as SoundConfig,
169
- BOMB: { sfx: 'boom' } as SoundConfig,
170
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
171
- },
172
- MAZE_RUNNER: {
173
- TURN: { sfx: 'tick', volume: 0.25 } as SoundConfig,
174
- BUMP: { sfx: 'thud', volume: 0.4, cooldown: 180 } as SoundConfig,
175
- GAME_OVER: { sfx: 'time_up' } as SoundConfig,
176
- START: { sfx: 'start' } as SoundConfig,
177
- COMPLETE: { sfx: 'win' } as SoundConfig,
178
- STOP: { sfx: 'deselect', volume: 0.5 } as SoundConfig
179
- },
180
- SPACE_FIGHTER: {
181
- START: { sfx: 'start' } as SoundConfig,
182
- DODGE: { sfx: 'whoosh', volume: 0.7 } as SoundConfig,
183
- COLLISION: { sfx: 'crash' } as SoundConfig,
184
- GRAB: { sfx: 'swoosh', volume: 0.45, pitch: 1.25 } as SoundConfig,
185
- RELEASE: { sfx: 'swoosh', volume: 0.3, pitch: 0.8 } as SoundConfig,
186
- GAME_OVER: { sfx: 'game_over' } as SoundConfig,
187
- WIN: { sfx: 'win' } as SoundConfig
188
- },
189
- DINO_JUMP: {
190
- WIN: { sfx: 'win' } as SoundConfig,
191
- START: { sfx: 'start' } as SoundConfig,
192
- JUMP: { sfx: 'jump' } as SoundConfig,
193
- COLLECT: { sfx: 'coin' } as SoundConfig,
194
- HIT: { sfx: 'hurt' } as SoundConfig,
195
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
196
- },
197
- COLORS_SORT: {
198
- PICK: { sfx: 'select', volume: 0.6 } as SoundConfig,
199
- DESELECT: { sfx: 'deselect', volume: 0.5 } as SoundConfig,
200
- GAME_OVER: { sfx: 'time_up' } as SoundConfig,
201
- START: { sfx: 'start' } as SoundConfig,
202
- MATCH: { sfx: 'drop', volume: 0.8, pitch: 1.2 } as SoundConfig,
203
- COMPLETE: { sfx: 'win' } as SoundConfig,
204
- MISS: { sfx: 'invalid' } as SoundConfig
205
- },
206
- FRUIT_MERGER: {
207
- START: { sfx: 'start' } as SoundConfig,
208
- MERGE: { sfx: 'merge' } as SoundConfig,
209
- DROP: { sfx: 'drop', volume: 0.8 } as SoundConfig,
210
- COMPLETE: { sfx: 'win' } as SoundConfig,
211
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
212
- },
213
- FLAPPY_BIRD: {
214
- START: { sfx: 'start' } as SoundConfig,
215
- FLAP: { sfx: 'flap' } as SoundConfig,
216
- PASS: { sfx: 'coin', volume: 0.6 } as SoundConfig,
217
- GAME_OVER: { sfx: 'game_over' } as SoundConfig,
218
- WIN: { sfx: 'win' } as SoundConfig
219
- },
220
- CAR_RACING: {
221
- START: { sfx: 'start' } as SoundConfig,
222
- LANE_SWITCH: { sfx: 'swoosh', volume: 0.5 } as SoundConfig,
223
- PASS: { sfx: 'coin', volume: 0.6 } as SoundConfig,
224
- CRASH: { sfx: 'crash' } as SoundConfig,
225
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
226
- },
227
- BIKE_RACING: {
228
- START: { sfx: 'start' } as SoundConfig,
229
- LANE_SWITCH: { sfx: 'swoosh', volume: 0.5 } as SoundConfig,
230
- PASS: { sfx: 'coin', volume: 0.6 } as SoundConfig,
231
- CRASH: { sfx: 'crash' } as SoundConfig,
232
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
233
- },
234
- BLOCK_BLAST: {
235
- PICK: { sfx: 'select', volume: 0.45 } as SoundConfig,
236
- INVALID: { sfx: 'invalid', volume: 0.6 } as SoundConfig,
237
- WIN: { sfx: 'win' } as SoundConfig,
238
- START: { sfx: 'start' } as SoundConfig,
239
- PLACE: { sfx: 'place' } as SoundConfig,
240
- CLEAR: { sfx: 'capture' } as SoundConfig,
241
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
242
- },
243
- CONNECT_EM_ALL: {
244
- WIN: { sfx: 'win' } as SoundConfig,
245
- START: { sfx: 'start' } as SoundConfig,
246
- CONNECT: { sfx: 'tick', volume: 0.8 } as SoundConfig,
247
- CLEAR: { sfx: 'capture' } as SoundConfig,
248
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
249
- },
250
- POPIT_FIDGET: {
251
- START: { sfx: 'start' } as SoundConfig,
252
- POP: { sfx: 'pop_soft' } as SoundConfig,
253
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
254
- },
255
- PERFECT_CIRCLE: {
256
- START: { sfx: 'start' } as SoundConfig,
257
- DRAW_END: { sfx: 'tock' } as SoundConfig,
258
- SUCCESS: { sfx: 'bonus' } as SoundConfig,
259
- FAIL: { sfx: 'miss' } as SoundConfig
260
- },
261
- SPIDER_SOLITAIRE: {
262
- START: { sfx: 'shuffle' } as SoundConfig,
263
- DRAW: { sfx: 'card_flip' } as SoundConfig,
264
- SELECT: { sfx: 'tap' } as SoundConfig,
265
- DESELECT: { sfx: 'deselect', volume: 0.7 } as SoundConfig,
266
- PLACE: { sfx: 'card_place' } as SoundConfig,
267
- INVALID: { sfx: 'invalid' } as SoundConfig,
268
- WIN: { sfx: 'win' } as SoundConfig,
269
- COMPLETE: { sfx: 'bonus' } as SoundConfig
270
- },
271
- TIC_TAC_TOE: {
272
- TIME_UP: { sfx: 'time_up' } as SoundConfig,
273
- START: { sfx: 'start' } as SoundConfig,
274
- PLACE: { sfx: 'place' } as SoundConfig,
275
- ROBOT: { sfx: 'robot', volume: 0.7 } as SoundConfig,
276
- WIN: { sfx: 'win' } as SoundConfig,
277
- LOSE: { sfx: 'lose' } as SoundConfig,
278
- DRAW: { sfx: 'draw' } as SoundConfig
279
- },
280
- STACK_TOWER: {
281
- START: { sfx: 'start' } as SoundConfig,
282
- PLACE: { sfx: 'clack' } as SoundConfig,
283
- PERFECT: { sfx: 'pling' } as SoundConfig,
284
- MISS: { sfx: 'miss' } as SoundConfig,
285
- GAME_OVER: { sfx: 'game_over' } as SoundConfig,
286
- WIN: { sfx: 'win' } as SoundConfig
287
- },
288
- BLOCK_BREAKER: {
289
- START: { sfx: 'start' } as SoundConfig,
290
- HIT: { sfx: 'click' } as SoundConfig,
291
- DESTROY: { sfx: 'pop' } as SoundConfig,
292
- PADDLE: { sfx: 'tock', volume: 0.8, pitch: 0.8 } as SoundConfig,
293
- WALL: { sfx: 'tick', volume: 0.6 } as SoundConfig,
294
- LOSE_LIFE: { sfx: 'hurt' } as SoundConfig,
295
- GAME_OVER: { sfx: 'game_over' } as SoundConfig,
296
- WIN: { sfx: 'win' } as SoundConfig,
297
- POWER_UP: { sfx: 'power_up' } as SoundConfig,
298
- LAUNCH: { sfx: 'jump', volume: 0.7 } as SoundConfig,
299
- COMBO: { sfx: 'combo' } as SoundConfig
300
- },
301
- MINE_SWEEPER: {
302
- START: { sfx: 'start' } as SoundConfig,
303
- REVEAL: { sfx: 'reveal' } as SoundConfig,
304
- FLAG: { sfx: 'flag' } as SoundConfig,
305
- MINE_HIT: { sfx: 'boom' } as SoundConfig,
306
- GAME_OVER: { sfx: 'game_over' } as SoundConfig,
307
- WIN: { sfx: 'win' } as SoundConfig
308
- },
309
- SUDOKU: {
310
- START: { sfx: 'start' } as SoundConfig,
311
- PLACE: { sfx: 'tap' } as SoundConfig,
312
- ERROR: { sfx: 'error' } as SoundConfig,
313
- NOTE: { sfx: 'tick' } as SoundConfig,
314
- GAME_OVER: { sfx: 'game_over' } as SoundConfig,
315
- WIN: { sfx: 'win' } as SoundConfig
316
- },
317
- COLOR_SWITCH: {
318
- START: { sfx: 'start' } as SoundConfig,
319
- JUMP: { sfx: 'hop' } as SoundConfig,
320
- PASS: { sfx: 'coin', volume: 0.6 } as SoundConfig,
321
- COLOR_CHANGE: { sfx: 'pling', volume: 0.8, pitch: 1.2 } as SoundConfig,
322
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
323
- },
324
- KNIFE_HIT: {
325
- START: { sfx: 'start' } as SoundConfig,
326
- THROW: { sfx: 'swoosh', volume: 0.7 } as SoundConfig,
327
- STICK: { sfx: 'thunk' } as SoundConfig,
328
- HIT: { sfx: 'clang' } as SoundConfig,
329
- APPLE: { sfx: 'crunch' } as SoundConfig,
330
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
331
- },
332
- PIPE_CONNECT: {
333
- START: { sfx: 'start' } as SoundConfig,
334
- ROTATE: { sfx: 'rotate' } as SoundConfig,
335
- COMPLETE: { sfx: 'win' } as SoundConfig,
336
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
337
- },
338
- TILE_HOME: {
339
- START: { sfx: 'start' } as SoundConfig,
340
- PICK: { sfx: 'tap' } as SoundConfig,
341
- MATCH: { sfx: 'pling' } as SoundConfig,
342
- SHUFFLE: { sfx: 'shuffle' } as SoundConfig,
343
- WIN: { sfx: 'win' } as SoundConfig,
344
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
345
- },
346
- BUBBLE_SHOOTER: {
347
- START: { sfx: 'start' } as SoundConfig,
348
- SHOOT: { sfx: 'swoosh', volume: 0.6, pitch: 1.3 } as SoundConfig,
349
- POP: { sfx: 'pop' } as SoundConfig,
350
- WIN: { sfx: 'win' } as SoundConfig,
351
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
352
- },
353
- DOTS_AND_BOXES: {
354
- START: { sfx: 'start' } as SoundConfig,
355
- PLAYER_LINE: { sfx: 'tick' } as SoundConfig,
356
- OPPONENT_LINE: { sfx: 'tock' } as SoundConfig,
357
- BOX_CLAIMED: { sfx: 'pling' } as SoundConfig,
358
- OPPONENT_BOX: { sfx: 'pling', volume: 0.8, pitch: 0.75 } as SoundConfig,
359
- WIN: { sfx: 'win' } as SoundConfig,
360
- LOSE: { sfx: 'lose' } as SoundConfig
361
- },
362
- CANDY_CRUSH: {
363
- BOMB: { sfx: 'boom', volume: 0.65 } as SoundConfig,
364
- BLAST: { sfx: 'zap', volume: 0.6 } as SoundConfig,
365
- START: { sfx: 'start' } as SoundConfig,
366
- SELECT: { sfx: 'tap' } as SoundConfig,
367
- SWAP: { sfx: 'slide' } as SoundConfig,
368
- INVALID_SWAP: { sfx: 'invalid' } as SoundConfig,
369
- MATCH: { sfx: 'pop' } as SoundConfig,
370
- COMBO: { sfx: 'combo' } as SoundConfig,
371
- WARNING: { sfx: 'warning' } as SoundConfig,
372
- TIME_UP: { sfx: 'time_up' } as SoundConfig
373
- },
374
- LUDO_KING: {
375
- TAP: { sfx: 'select', volume: 0.5 } as SoundConfig,
376
- SIX: { sfx: 'six', volume: 0.7 } as SoundConfig,
377
- PENALTY: { sfx: 'error', volume: 0.7 } as SoundConfig,
378
- CANT_MOVE: { sfx: 'invalid', volume: 0.6 } as SoundConfig,
379
- FINISH: { sfx: 'bonus', volume: 0.7 } as SoundConfig,
380
- START: { sfx: 'start' } as SoundConfig,
381
- ROLL: { sfx: 'dice_roll' } as SoundConfig,
382
- MOVE: { sfx: 'tick' } as SoundConfig,
383
- CAPTURE: { sfx: 'whack' } as SoundConfig,
384
- WIN: { sfx: 'win' } as SoundConfig,
385
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
386
- },
387
- TANK_1990: {
388
- DAMAGE: { sfx: 'hurt', volume: 0.7 } as SoundConfig,
389
- START: { sfx: 'start' } as SoundConfig,
390
- FIRE: { sfx: 'cannon' } as SoundConfig,
391
- DESTROY: { sfx: 'boom', volume: 0.8 } as SoundConfig,
392
- WIN: { sfx: 'win' } as SoundConfig,
393
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
394
- },
395
- NUTS_AND_BOLTS: {
396
- START: { sfx: 'start' } as SoundConfig,
397
- SELECT: { sfx: 'rotate' } as SoundConfig,
398
- PLACE: { sfx: 'snap' } as SoundConfig,
399
- COMPLETE: { sfx: 'win' } as SoundConfig,
400
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
401
- },
402
- WORD_SEARCH: {
403
- START: { sfx: 'start' } as SoundConfig,
404
- FOUND: { sfx: 'pling' } as SoundConfig,
405
- WIN: { sfx: 'win' } as SoundConfig,
406
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
407
- },
408
- NUMBER_SEARCH: {
409
- START: { sfx: 'start' } as SoundConfig,
410
- FOUND: { sfx: 'pling' } as SoundConfig,
411
- WIN: { sfx: 'win' } as SoundConfig,
412
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
413
- },
414
- SLIDING_NUMBERS: {
415
- BLOCKED: { sfx: 'blocked', volume: 0.6 } as SoundConfig,
416
- START: { sfx: 'start' } as SoundConfig,
417
- MOVE: { sfx: 'slide' } as SoundConfig,
418
- WIN: { sfx: 'win' } as SoundConfig,
419
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
420
- },
421
- SNAKE_3D: {
422
- TIME_UP: { sfx: 'time_up' } as SoundConfig,
423
- START: { sfx: 'start' } as SoundConfig,
424
- EAT: { sfx: 'eat' } as SoundConfig,
425
- SPECIAL: { sfx: 'bonus' } as SoundConfig,
426
- COLLISION: { sfx: 'hurt' } as SoundConfig,
427
- WIN: { sfx: 'win' } as SoundConfig,
428
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
429
- },
430
- GAME_2048: {
431
- TIME_UP: { sfx: 'time_up' } as SoundConfig,
432
- START: { sfx: 'start' } as SoundConfig,
433
- TILE_MOVE: { sfx: 'slide', volume: 0.7 } as SoundConfig,
434
- TILE_MERGE: { sfx: 'merge' } as SoundConfig,
435
- WIN: { sfx: 'win' } as SoundConfig,
436
- GAME_OVER: { sfx: 'game_over' } as SoundConfig,
437
- NEW_TILE: { sfx: 'pop_soft', volume: 0.6 } as SoundConfig,
438
- INVALID_MOVE: { sfx: 'blocked' } as SoundConfig
439
- },
440
- ARROWS: {
441
- START: { sfx: 'start' } as SoundConfig,
442
- CLEAR: { sfx: 'swoosh' } as SoundConfig,
443
- BLOCKED: { sfx: 'blocked' } as SoundConfig,
444
- WIN: { sfx: 'win' } as SoundConfig,
445
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
446
- },
447
- FIND_DIFFERENT_NUMBER: {
448
- START: { sfx: 'start' } as SoundConfig,
449
- CORRECT: { sfx: 'chime' } as SoundConfig,
450
- WRONG: { sfx: 'error' } as SoundConfig,
451
- WIN: { sfx: 'win' } as SoundConfig,
452
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
453
- },
454
- TANGRAM: {
455
- START: { sfx: 'start' } as SoundConfig,
456
- ROTATE: { sfx: 'rotate' } as SoundConfig,
457
- PLACE: { sfx: 'snap' } as SoundConfig,
458
- WRONG: { sfx: 'invalid' } as SoundConfig,
459
- WIN: { sfx: 'win' } as SoundConfig,
460
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
461
- },
462
- CHECKERS: {
463
- TIME_UP: { sfx: 'time_up' } as SoundConfig,
464
- SELECT: { sfx: 'select', volume: 0.5 } as SoundConfig,
465
- START: { sfx: 'start' } as SoundConfig,
466
- MOVE: { sfx: 'place' } as SoundConfig,
467
- CAPTURE: { sfx: 'clack', pitch: 0.9 } as SoundConfig,
468
- KING: { sfx: 'bonus' } as SoundConfig,
469
- WIN: { sfx: 'win' } as SoundConfig,
470
- LOSE: { sfx: 'lose' } as SoundConfig
471
- },
472
- MEMORY_MATCH: {
473
- START: { sfx: 'shuffle' } as SoundConfig,
474
- FLIP: { sfx: 'card_flip' } as SoundConfig,
475
- MATCH: { sfx: 'chime' } as SoundConfig,
476
- WRONG: { sfx: 'invalid' } as SoundConfig,
477
- WIN: { sfx: 'win' } as SoundConfig,
478
- GAME_OVER: { sfx: 'time_up' } as SoundConfig
479
- },
480
- FALLING_STICKS: {
481
- START: { sfx: 'start' } as SoundConfig,
482
- CATCH: { sfx: 'catch' } as SoundConfig,
483
- MISS: { sfx: 'miss' } as SoundConfig,
484
- WIN: { sfx: 'win' } as SoundConfig,
485
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
486
- },
487
- REVERSI: {
488
- TIME_UP: { sfx: 'time_up' } as SoundConfig,
489
- INVALID: { sfx: 'invalid', volume: 0.6 } as SoundConfig,
490
- START: { sfx: 'start' } as SoundConfig,
491
- PLACE: { sfx: 'flip_disc' } as SoundConfig,
492
- PASS: { sfx: 'invalid', volume: 0.7 } as SoundConfig,
493
- WIN: { sfx: 'win' } as SoundConfig,
494
- LOSE: { sfx: 'lose' } as SoundConfig
495
- },
496
- PAC_MAN: {
497
- START: { sfx: 'start' } as SoundConfig,
498
- CHOMP: { sfx: 'chomp', volume: 0.6 } as SoundConfig,
499
- CHOMP_ALT: { sfx: 'chomp_alt', volume: 0.6 } as SoundConfig,
500
- POWER_PELLET: { sfx: 'power_up' } as SoundConfig,
501
- EAT_GHOST: { sfx: 'crunch' } as SoundConfig,
502
- EAT_GHOST_COMBO: { sfx: 'combo' } as SoundConfig,
503
- DEATH: { sfx: 'game_over' } as SoundConfig,
504
- LIFE_LOST: { sfx: 'hurt' } as SoundConfig,
505
- FRUIT: { sfx: 'coin' } as SoundConfig,
506
- LEVEL_COMPLETE: { sfx: 'win' } as SoundConfig,
507
- DIRECTION_CHANGE: { sfx: 'tick', volume: 0.3 } as SoundConfig,
508
- TUNNEL: { sfx: 'whoosh', volume: 0.7 } as SoundConfig
509
- },
510
- SNAKES_AND_LADDERS: {
511
- TAP: { sfx: 'select', volume: 0.5 } as SoundConfig,
512
- START: { sfx: 'start' } as SoundConfig,
513
- ROLL: { sfx: 'dice_roll' } as SoundConfig,
514
- MOVE: { sfx: 'tick', volume: 0.7 } as SoundConfig,
515
- SNAKE: { sfx: 'snake' } as SoundConfig,
516
- LADDER: { sfx: 'ladder' } as SoundConfig,
517
- SIX: { sfx: 'six' } as SoundConfig,
518
- PENALTY: { sfx: 'error' } as SoundConfig,
519
- CANT_MOVE: { sfx: 'invalid' } as SoundConfig,
520
- WIN: { sfx: 'win' } as SoundConfig,
521
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
522
- },
523
- BLUK: {
524
- WIN: { sfx: 'win' } as SoundConfig,
525
- START: { sfx: 'start' } as SoundConfig,
526
- JUMP: { sfx: 'jump' } as SoundConfig,
527
- LAND: { sfx: 'land' } as SoundConfig,
528
- PERFECT: { sfx: 'pling' } as SoundConfig,
529
- FALL: { sfx: 'miss' } as SoundConfig,
530
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
531
- },
532
- CHAMELEON_RUN: {
533
- HURT: { sfx: 'hurt' } as SoundConfig,
534
- WIN: { sfx: 'win' } as SoundConfig,
535
- START: { sfx: 'start' } as SoundConfig,
536
- JUMP: { sfx: 'hop' } as SoundConfig,
537
- SWAP: { sfx: 'select' } as SoundConfig,
538
- STAR: { sfx: 'star' } as SoundConfig,
539
- LAND: { sfx: 'land', volume: 0.7 } as SoundConfig,
540
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
541
- },
542
- MOB_CONTROL: {
543
- START: { sfx: 'start' } as SoundConfig,
544
- SHOOT: { sfx: 'pew', volume: 0.35 } as SoundConfig,
545
- GATE: { sfx: 'gate' } as SoundConfig,
546
- HIT: { sfx: 'whack', volume: 0.6 } as SoundConfig,
547
- CLASH: { sfx: 'clash', volume: 0.35, cooldown: 150 } as SoundConfig,
548
- LEVEL_UP: { sfx: 'boom' } as SoundConfig,
549
- DAMAGE: { sfx: 'hurt' } as SoundConfig,
550
- WIN: { sfx: 'win' } as SoundConfig,
551
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
552
- },
553
- PAPER_IO: {
554
- WIN: { sfx: 'win' } as SoundConfig,
555
- START: { sfx: 'start' } as SoundConfig,
556
- CAPTURE: { sfx: 'capture' } as SoundConfig,
557
- TURN: { sfx: 'tick', volume: 0.5 } as SoundConfig,
558
- KILL: { sfx: 'zap' } as SoundConfig,
559
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
560
- },
561
- CROSSY_ROAD: {
562
- TIME_UP: { sfx: 'time_up' } as SoundConfig,
563
- WIN: { sfx: 'win' } as SoundConfig,
564
- START: { sfx: 'start' } as SoundConfig,
565
- HOP: { sfx: 'hop' } as SoundConfig,
566
- CROSS: { sfx: 'chime' } as SoundConfig,
567
- COIN: { sfx: 'coin' } as SoundConfig,
568
- SPLASH: { sfx: 'splash' } as SoundConfig,
569
- CRASH: { sfx: 'crash' } as SoundConfig,
570
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
571
- },
572
- PENGUIN_RUN: {
573
- LANE_SWITCH: { sfx: 'swoosh', volume: 0.25 } as SoundConfig,
574
- START: { sfx: 'start' } as SoundConfig,
575
- COIN: { sfx: 'coin', volume: 0.6 } as SoundConfig,
576
- GEM: { sfx: 'power_up' } as SoundConfig,
577
- JUMP: { sfx: 'jump' } as SoundConfig,
578
- SLIDE: { sfx: 'slide' } as SoundConfig,
579
- CRASH: { sfx: 'crash' } as SoundConfig,
580
- GAME_OVER: { sfx: 'game_over' } as SoundConfig
581
- }
582
- };