react-native-games 1.5.0 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/module/games/balloon-blaster/BalloonBlaster.js +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlaster.js.map +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlasterConstants.js.map +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlasterService.js +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlasterService.js.map +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +1 -1
- package/lib/module/games/balloon-blaster/BalloonBlasterStore.js.map +1 -1
- package/lib/module/games/balloon-blaster/components/BalloonComponent.js +1 -1
- package/lib/module/games/balloon-blaster/components/BalloonComponent.js.map +1 -1
- package/lib/module/games/balloon-blaster/components/GameArea.js +1 -1
- package/lib/module/games/balloon-blaster/components/GameArea.js.map +1 -1
- package/lib/module/games/balloon-blaster/components/GameBackground.js +1 -1
- package/lib/module/games/balloon-blaster/components/GameBackground.js.map +1 -1
- package/lib/module/games/balloon-blaster/components/ScoreBoard.js +1 -1
- package/lib/module/games/balloon-blaster/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/bike-racing/BikeRacing.js +1 -1
- package/lib/module/games/bike-racing/BikeRacing.js.map +1 -1
- package/lib/module/games/bike-racing/BikeRacingService.js +1 -1
- package/lib/module/games/bike-racing/BikeRacingService.js.map +1 -1
- package/lib/module/games/bike-racing/BikeRacingStore.js +1 -1
- package/lib/module/games/bike-racing/BikeRacingStore.js.map +1 -1
- package/lib/module/games/bike-racing/components/BikeComponent.js +1 -1
- package/lib/module/games/bike-racing/components/BikeComponent.js.map +1 -1
- package/lib/module/games/bike-racing/components/GameBackground.js +1 -1
- package/lib/module/games/bike-racing/components/GameBackground.js.map +1 -1
- package/lib/module/games/bike-racing/components/ScoreBoard.js +1 -1
- package/lib/module/games/bike-racing/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/block-blast/BlockBlast.js +1 -1
- package/lib/module/games/block-blast/BlockBlast.js.map +1 -1
- package/lib/module/games/block-blast/BlockBlastConstants.js +1 -1
- package/lib/module/games/block-blast/BlockBlastConstants.js.map +1 -1
- package/lib/module/games/block-blast/BlockBlastService.js +1 -1
- package/lib/module/games/block-blast/BlockBlastService.js.map +1 -1
- package/lib/module/games/block-blast/BlockBlastStore.js +1 -1
- package/lib/module/games/block-blast/BlockBlastStore.js.map +1 -1
- package/lib/module/games/block-blast/components/BlastAnimation.js +1 -0
- package/lib/module/games/block-blast/components/BlastAnimation.js.map +1 -0
- package/lib/module/games/block-blast/components/BlockPieceComponent.js +1 -1
- package/lib/module/games/block-blast/components/BlockPieceComponent.js.map +1 -1
- package/lib/module/games/block-blast/components/GameArea.js +1 -1
- package/lib/module/games/block-blast/components/GameArea.js.map +1 -1
- package/lib/module/games/block-blast/components/GameBackground.js +1 -1
- package/lib/module/games/block-blast/components/GameBackground.js.map +1 -1
- package/lib/module/games/block-blast/components/GridComponent.js +1 -1
- package/lib/module/games/block-blast/components/GridComponent.js.map +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooter.js +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooter.js.map +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooterConstants.js +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooterConstants.js.map +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooterService.js +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooterService.js.map +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooterStore.js +1 -1
- package/lib/module/games/bubble-shooter/BubbleShooterStore.js.map +1 -1
- package/lib/module/games/bubble-shooter/components/GameArea.js +1 -1
- package/lib/module/games/bubble-shooter/components/GameArea.js.map +1 -1
- package/lib/module/games/bubble-shooter/components/GameBackground.js +1 -1
- package/lib/module/games/bubble-shooter/components/GameBackground.js.map +1 -1
- package/lib/module/games/bubble-shooter/components/ScoreBoard.js +1 -1
- package/lib/module/games/bubble-shooter/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/candy-crush/CandyCrush.js +1 -1
- package/lib/module/games/candy-crush/CandyCrush.js.map +1 -1
- package/lib/module/games/candy-crush/CandyCrushConstants.js +1 -1
- package/lib/module/games/candy-crush/CandyCrushStore.js +1 -1
- package/lib/module/games/candy-crush/CandyCrushStore.js.map +1 -1
- package/lib/module/games/candy-crush/components/BlastAnimation.js +1 -0
- package/lib/module/games/candy-crush/components/BlastAnimation.js.map +1 -0
- package/lib/module/games/candy-crush/components/CandyItem.js +1 -1
- package/lib/module/games/candy-crush/components/CandyItem.js.map +1 -1
- package/lib/module/games/candy-crush/components/GameGrid.js +1 -1
- package/lib/module/games/candy-crush/components/GameGrid.js.map +1 -1
- package/lib/module/games/candy-crush/components/index.js +1 -1
- package/lib/module/games/candy-crush/components/index.js.map +1 -1
- package/lib/module/games/car-racing/CarRacing.js +1 -1
- package/lib/module/games/car-racing/CarRacing.js.map +1 -1
- package/lib/module/games/car-racing/CarRacingService.js +1 -1
- package/lib/module/games/car-racing/CarRacingService.js.map +1 -1
- package/lib/module/games/car-racing/CarRacingStore.js +1 -1
- package/lib/module/games/car-racing/CarRacingStore.js.map +1 -1
- package/lib/module/games/car-racing/components/CarComponent.js +1 -1
- package/lib/module/games/car-racing/components/CarComponent.js.map +1 -1
- package/lib/module/games/car-racing/components/GameBackground.js +1 -1
- package/lib/module/games/car-racing/components/GameBackground.js.map +1 -1
- package/lib/module/games/car-racing/components/ScoreBoard.js +1 -1
- package/lib/module/games/car-racing/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/colors-sort/ColorsSort.js +1 -1
- package/lib/module/games/colors-sort/ColorsSort.js.map +1 -1
- package/lib/module/games/colors-sort/ColorsSortConstants.js +1 -1
- package/lib/module/games/colors-sort/ColorsSortConstants.js.map +1 -1
- package/lib/module/games/colors-sort/ColorsSortStore.js +1 -1
- package/lib/module/games/colors-sort/ColorsSortStore.js.map +1 -1
- package/lib/module/games/colors-sort/components/ColorContainer.js +1 -1
- package/lib/module/games/colors-sort/components/ColorContainer.js.map +1 -1
- package/lib/module/games/colors-sort/components/GameBackground.js +1 -1
- package/lib/module/games/colors-sort/components/GameBackground.js.map +1 -1
- package/lib/module/games/colors-sort/components/ScoreBoard.js +1 -1
- package/lib/module/games/colors-sort/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/dino-jump/DinoJump.js +1 -1
- package/lib/module/games/dino-jump/DinoJump.js.map +1 -1
- package/lib/module/games/dino-jump/DinoJumpConstants.js +1 -1
- package/lib/module/games/dino-jump/DinoJumpConstants.js.map +1 -1
- package/lib/module/games/dino-jump/DinoJumpService.js +1 -1
- package/lib/module/games/dino-jump/DinoJumpService.js.map +1 -1
- package/lib/module/games/dino-jump/DinoJumpStore.js +1 -1
- package/lib/module/games/dino-jump/DinoJumpStore.js.map +1 -1
- package/lib/module/games/dino-jump/components/DinoSprite.js +1 -1
- package/lib/module/games/dino-jump/components/DinoSprite.js.map +1 -1
- package/lib/module/games/dino-jump/components/GameBackground.js +1 -1
- package/lib/module/games/dino-jump/components/GameBackground.js.map +1 -1
- package/lib/module/games/dino-jump/components/ObstacleSprite.js +1 -1
- package/lib/module/games/dino-jump/components/ObstacleSprite.js.map +1 -1
- package/lib/module/games/dino-jump/components/ScoreBoard.js +1 -1
- package/lib/module/games/dino-jump/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/flappy-bird/FlappyBird.js +1 -1
- package/lib/module/games/flappy-bird/FlappyBird.js.map +1 -1
- package/lib/module/games/flappy-bird/FlappyBirdConstants.js +1 -1
- package/lib/module/games/flappy-bird/FlappyBirdConstants.js.map +1 -1
- package/lib/module/games/flappy-bird/FlappyBirdStore.js +1 -1
- package/lib/module/games/flappy-bird/FlappyBirdStore.js.map +1 -1
- package/lib/module/games/flappy-bird/components/Bird.js +1 -1
- package/lib/module/games/flappy-bird/components/Bird.js.map +1 -1
- package/lib/module/games/flappy-bird/components/GameArea.js +1 -1
- package/lib/module/games/flappy-bird/components/GameArea.js.map +1 -1
- package/lib/module/games/flappy-bird/components/GameBackground.js +1 -1
- package/lib/module/games/flappy-bird/components/GameBackground.js.map +1 -1
- package/lib/module/games/flappy-bird/components/Pipes.js +1 -1
- package/lib/module/games/flappy-bird/components/Pipes.js.map +1 -1
- package/lib/module/games/flappy-bird/components/ScoreBoard.js +1 -1
- package/lib/module/games/flappy-bird/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/fruit-merger/FruitMerger.js +1 -1
- package/lib/module/games/fruit-merger/FruitMerger.js.map +1 -1
- package/lib/module/games/fruit-merger/FruitMergerConstants.js +1 -1
- package/lib/module/games/fruit-merger/FruitMergerConstants.js.map +1 -1
- package/lib/module/games/fruit-merger/FruitMergerStore.js +1 -1
- package/lib/module/games/fruit-merger/FruitMergerStore.js.map +1 -1
- package/lib/module/games/fruit-merger/components/FruitItem.js +1 -1
- package/lib/module/games/fruit-merger/components/FruitItem.js.map +1 -1
- package/lib/module/games/fruit-merger/components/GameArea.js +1 -1
- package/lib/module/games/fruit-merger/components/GameArea.js.map +1 -1
- package/lib/module/games/fruit-merger/components/GameBackground.js +1 -1
- package/lib/module/games/fruit-merger/components/GameBackground.js.map +1 -1
- package/lib/module/games/fruit-ninja/FruitNinja.js +1 -1
- package/lib/module/games/fruit-ninja/FruitNinja.js.map +1 -1
- package/lib/module/games/fruit-ninja/FruitNinjaConstants.js +1 -1
- package/lib/module/games/fruit-ninja/FruitNinjaConstants.js.map +1 -1
- package/lib/module/games/fruit-ninja/FruitNinjaService.js +1 -1
- package/lib/module/games/fruit-ninja/FruitNinjaService.js.map +1 -1
- package/lib/module/games/fruit-ninja/FruitNinjaStore.js +1 -1
- package/lib/module/games/fruit-ninja/FruitNinjaStore.js.map +1 -1
- package/lib/module/games/fruit-ninja/components/FruitComponent.js +1 -1
- package/lib/module/games/fruit-ninja/components/FruitComponent.js.map +1 -1
- package/lib/module/games/fruit-ninja/components/GameArea.js +1 -1
- package/lib/module/games/fruit-ninja/components/GameArea.js.map +1 -1
- package/lib/module/games/fruit-ninja/components/GameBackground.js +1 -1
- package/lib/module/games/fruit-ninja/components/GameBackground.js.map +1 -1
- package/lib/module/games/game-2048/Game2048.js +1 -1
- package/lib/module/games/game-2048/Game2048.js.map +1 -1
- package/lib/module/games/game-2048/Game2048Store.js +1 -1
- package/lib/module/games/game-2048/Game2048Store.js.map +1 -1
- package/lib/module/games/game-2048/components/GameBackground.js +1 -1
- package/lib/module/games/game-2048/components/GameBackground.js.map +1 -1
- package/lib/module/games/game-2048/components/GameGrid.js +1 -1
- package/lib/module/games/game-2048/components/GameGrid.js.map +1 -1
- package/lib/module/games/game-2048/components/GameTile.js +1 -1
- package/lib/module/games/game-2048/components/GameTile.js.map +1 -1
- package/lib/module/games/game-2048/components/ScoreBoard.js +1 -1
- package/lib/module/games/game-2048/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/maze-runner/MazeRunner.js +1 -1
- package/lib/module/games/maze-runner/MazeRunner.js.map +1 -1
- package/lib/module/games/maze-runner/MazeRunnerConstants.js +1 -1
- package/lib/module/games/maze-runner/MazeRunnerConstants.js.map +1 -1
- package/lib/module/games/maze-runner/MazeRunnerService.js +1 -1
- package/lib/module/games/maze-runner/MazeRunnerService.js.map +1 -1
- package/lib/module/games/maze-runner/components/EnhancedBallComponent.js +1 -1
- package/lib/module/games/maze-runner/components/EnhancedBallComponent.js.map +1 -1
- package/lib/module/games/maze-runner/components/EnhancedGameArea.js +1 -1
- package/lib/module/games/maze-runner/components/EnhancedGameArea.js.map +1 -1
- package/lib/module/games/maze-runner/components/GameBackground.js +1 -1
- package/lib/module/games/maze-runner/components/GameBackground.js.map +1 -1
- package/lib/module/games/maze-runner/components/ScoreBoard.js +1 -1
- package/lib/module/games/maze-runner/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/maze-runner/components/WallComponent.js +1 -1
- package/lib/module/games/maze-runner/components/WallComponent.js.map +1 -1
- package/lib/module/games/perfect-circle/PerfectCircle.js +1 -1
- package/lib/module/games/perfect-circle/PerfectCircle.js.map +1 -1
- package/lib/module/games/perfect-circle/PerfectCircleConstants.js +1 -1
- package/lib/module/games/perfect-circle/PerfectCircleConstants.js.map +1 -1
- package/lib/module/games/perfect-circle/PerfectCircleService.js +1 -1
- package/lib/module/games/perfect-circle/PerfectCircleService.js.map +1 -1
- package/lib/module/games/perfect-circle/PerfectCircleStore.js +1 -1
- package/lib/module/games/perfect-circle/PerfectCircleStore.js.map +1 -1
- package/lib/module/games/perfect-circle/components/DrawingCanvas.js +1 -1
- package/lib/module/games/perfect-circle/components/DrawingCanvas.js.map +1 -1
- package/lib/module/games/perfect-circle/components/GameBackground.js +1 -1
- package/lib/module/games/perfect-circle/components/GameBackground.js.map +1 -1
- package/lib/module/games/popit-fidget/PopitFidget.js +1 -1
- package/lib/module/games/popit-fidget/PopitFidget.js.map +1 -1
- package/lib/module/games/popit-fidget/PopitFidgetConstants.js +1 -1
- package/lib/module/games/popit-fidget/PopitFidgetService.js +1 -1
- package/lib/module/games/popit-fidget/PopitFidgetService.js.map +1 -1
- package/lib/module/games/popit-fidget/PopitFidgetStore.js +1 -1
- package/lib/module/games/popit-fidget/PopitFidgetStore.js.map +1 -1
- package/lib/module/games/popit-fidget/components/BubbleComponent.js +1 -1
- package/lib/module/games/popit-fidget/components/BubbleComponent.js.map +1 -1
- package/lib/module/games/popit-fidget/components/FidgetGrid.js +1 -1
- package/lib/module/games/popit-fidget/components/FidgetGrid.js.map +1 -1
- package/lib/module/games/popit-fidget/components/GameBackground.js +1 -1
- package/lib/module/games/popit-fidget/components/GameBackground.js.map +1 -1
- package/lib/module/games/popit-fidget/components/ScoreBoard.js +1 -1
- package/lib/module/games/popit-fidget/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/sliding-numbers/SlidingNumbers.js +1 -1
- package/lib/module/games/sliding-numbers/SlidingNumbers.js.map +1 -1
- package/lib/module/games/sliding-numbers/SlidingNumbersStore.js +1 -1
- package/lib/module/games/sliding-numbers/SlidingNumbersStore.js.map +1 -1
- package/lib/module/games/sliding-numbers/components/GameBackground.js +1 -1
- package/lib/module/games/sliding-numbers/components/GameBackground.js.map +1 -1
- package/lib/module/games/sliding-numbers/components/NumbersGrid.js +1 -1
- package/lib/module/games/sliding-numbers/components/NumbersGrid.js.map +1 -1
- package/lib/module/games/sliding-numbers/components/NumbersTile.js +1 -1
- package/lib/module/games/sliding-numbers/components/NumbersTile.js.map +1 -1
- package/lib/module/games/sliding-numbers/components/ScoreBoard.js +1 -1
- package/lib/module/games/sliding-numbers/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/snake/Snake.js +1 -1
- package/lib/module/games/snake/Snake.js.map +1 -1
- package/lib/module/games/snake/SnakeStore.js +1 -1
- package/lib/module/games/snake/SnakeStore.js.map +1 -1
- package/lib/module/games/snake/components/GameBackground.js +1 -1
- package/lib/module/games/snake/components/GameBackground.js.map +1 -1
- package/lib/module/games/snake/components/GameGrid.js +1 -1
- package/lib/module/games/snake/components/GameGrid.js.map +1 -1
- package/lib/module/games/space-fighter/SpaceFighter.js +1 -1
- package/lib/module/games/space-fighter/SpaceFighter.js.map +1 -1
- package/lib/module/games/space-fighter/SpaceFighterConstants.js +1 -1
- package/lib/module/games/space-fighter/SpaceFighterConstants.js.map +1 -1
- package/lib/module/games/space-fighter/SpaceFighterStore.js +1 -1
- package/lib/module/games/space-fighter/SpaceFighterStore.js.map +1 -1
- package/lib/module/games/space-fighter/components/GameArea.js +1 -1
- package/lib/module/games/space-fighter/components/GameArea.js.map +1 -1
- package/lib/module/games/space-fighter/components/GameBackground.js +1 -1
- package/lib/module/games/space-fighter/components/GameBackground.js.map +1 -1
- package/lib/module/games/space-fighter/components/ScoreBoard.js +1 -1
- package/lib/module/games/space-fighter/components/ScoreBoard.js.map +1 -1
- package/lib/module/games/space-fighter/components/Spacecraft3D.js +1 -1
- package/lib/module/games/space-fighter/components/Spacecraft3D.js.map +1 -1
- package/lib/module/games/whack-a-mole/WhackAMole.js +1 -1
- package/lib/module/games/whack-a-mole/WhackAMole.js.map +1 -1
- package/lib/module/games/whack-a-mole/WhackAMoleConstants.js +1 -1
- package/lib/module/games/whack-a-mole/WhackAMoleConstants.js.map +1 -1
- package/lib/module/games/whack-a-mole/WhackAMoleStore.js +1 -1
- package/lib/module/games/whack-a-mole/WhackAMoleStore.js.map +1 -1
- package/lib/module/games/whack-a-mole/components/GameBackground.js +1 -1
- package/lib/module/games/whack-a-mole/components/GameBackground.js.map +1 -1
- package/lib/module/games/whack-a-mole/components/GameHole.js +1 -1
- package/lib/module/games/whack-a-mole/components/GameHole.js.map +1 -1
- package/lib/module/games/whack-a-mole/components/MoleCharacter.js +1 -1
- package/lib/module/games/whack-a-mole/components/MoleCharacter.js.map +1 -1
- package/lib/module/games/whack-a-mole/components/ScoreBoard.js +1 -1
- package/lib/module/games/whack-a-mole/components/ScoreBoard.js.map +1 -1
- package/lib/module/helpers/AbstractFruits.js +1 -0
- package/lib/module/helpers/AbstractFruits.js.map +1 -0
- package/lib/module/helpers/GameControlButton.js +1 -1
- package/lib/module/helpers/GameControlButton.js.map +1 -1
- package/lib/module/helpers/ScoreBoardContainer.js +1 -1
- package/lib/module/helpers/ScoreBoardContainer.js.map +1 -1
- package/lib/module/helpers/index.js +1 -1
- package/lib/module/helpers/index.js.map +1 -1
- package/lib/module/services/GamesService.js +1 -1
- package/lib/module/services/GamesService.js.map +1 -1
- package/lib/module/services/UtilsService.js.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts +5 -1
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/bike-racing/BikeRacing.d.ts.map +1 -1
- package/lib/typescript/src/games/bike-racing/BikeRacingService.d.ts +6 -2
- package/lib/typescript/src/games/bike-racing/BikeRacingService.d.ts.map +1 -1
- package/lib/typescript/src/games/bike-racing/BikeRacingStore.d.ts +9 -0
- package/lib/typescript/src/games/bike-racing/BikeRacingStore.d.ts.map +1 -1
- package/lib/typescript/src/games/bike-racing/components/BikeComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/bike-racing/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/bike-racing/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/BlockBlast.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/BlockBlastConstants.d.ts +2 -2
- package/lib/typescript/src/games/block-blast/BlockBlastConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/BlockBlastService.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/BlockBlastStore.d.ts +13 -1
- package/lib/typescript/src/games/block-blast/BlockBlastStore.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/components/BlastAnimation.d.ts +12 -0
- package/lib/typescript/src/games/block-blast/components/BlastAnimation.d.ts.map +1 -0
- package/lib/typescript/src/games/block-blast/components/BlockPieceComponent.d.ts +1 -4
- package/lib/typescript/src/games/block-blast/components/BlockPieceComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/block-blast/components/GridComponent.d.ts +4 -2
- package/lib/typescript/src/games/block-blast/components/GridComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/bubble-shooter/BubbleShooter.d.ts.map +1 -1
- package/lib/typescript/src/games/bubble-shooter/BubbleShooterConstants.d.ts +12 -6
- package/lib/typescript/src/games/bubble-shooter/BubbleShooterConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/bubble-shooter/BubbleShooterService.d.ts +1 -0
- package/lib/typescript/src/games/bubble-shooter/BubbleShooterService.d.ts.map +1 -1
- package/lib/typescript/src/games/bubble-shooter/BubbleShooterStore.d.ts +5 -1
- package/lib/typescript/src/games/bubble-shooter/BubbleShooterStore.d.ts.map +1 -1
- package/lib/typescript/src/games/bubble-shooter/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/bubble-shooter/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/bubble-shooter/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/candy-crush/CandyCrushConstants.d.ts +1 -1
- package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts +8 -0
- package/lib/typescript/src/games/candy-crush/CandyCrushStore.d.ts.map +1 -1
- package/lib/typescript/src/games/candy-crush/components/BlastAnimation.d.ts +16 -0
- package/lib/typescript/src/games/candy-crush/components/BlastAnimation.d.ts.map +1 -0
- package/lib/typescript/src/games/candy-crush/components/CandyItem.d.ts.map +1 -1
- package/lib/typescript/src/games/candy-crush/components/GameGrid.d.ts.map +1 -1
- package/lib/typescript/src/games/candy-crush/components/index.d.ts +1 -0
- package/lib/typescript/src/games/candy-crush/components/index.d.ts.map +1 -1
- package/lib/typescript/src/games/car-racing/CarRacing.d.ts.map +1 -1
- package/lib/typescript/src/games/car-racing/CarRacingService.d.ts +6 -2
- package/lib/typescript/src/games/car-racing/CarRacingService.d.ts.map +1 -1
- package/lib/typescript/src/games/car-racing/CarRacingStore.d.ts +9 -0
- package/lib/typescript/src/games/car-racing/CarRacingStore.d.ts.map +1 -1
- package/lib/typescript/src/games/car-racing/components/CarComponent.d.ts +0 -1
- package/lib/typescript/src/games/car-racing/components/CarComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/car-racing/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/car-racing/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/colors-sort/ColorsSort.d.ts.map +1 -1
- package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts +1 -0
- package/lib/typescript/src/games/colors-sort/ColorsSortConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts +5 -1
- package/lib/typescript/src/games/colors-sort/ColorsSortStore.d.ts.map +1 -1
- package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts +1 -1
- package/lib/typescript/src/games/colors-sort/components/ColorContainer.d.ts.map +1 -1
- package/lib/typescript/src/games/colors-sort/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJump.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts +9 -7
- package/lib/typescript/src/games/dino-jump/DinoJumpConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJumpService.d.ts +1 -1
- package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts +1 -0
- package/lib/typescript/src/games/dino-jump/DinoJumpStore.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/components/DinoSprite.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/components/ObstacleSprite.d.ts.map +1 -1
- package/lib/typescript/src/games/dino-jump/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/FlappyBird.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/FlappyBirdConstants.d.ts +6 -0
- package/lib/typescript/src/games/flappy-bird/FlappyBirdConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts +8 -4
- package/lib/typescript/src/games/flappy-bird/FlappyBirdStore.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/Bird.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/Pipes.d.ts.map +1 -1
- package/lib/typescript/src/games/flappy-bird/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/FruitMerger.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/FruitMergerConstants.d.ts +21 -20
- package/lib/typescript/src/games/fruit-merger/FruitMergerConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/FruitMergerStore.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/components/FruitItem.d.ts +1 -2
- package/lib/typescript/src/games/fruit-merger/components/FruitItem.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-merger/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts +15 -45
- package/lib/typescript/src/games/fruit-ninja/FruitNinjaConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts +9 -33
- package/lib/typescript/src/games/fruit-ninja/FruitNinjaService.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/FruitNinjaStore.d.ts +0 -11
- package/lib/typescript/src/games/fruit-ninja/FruitNinjaStore.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts +0 -1
- package/lib/typescript/src/games/fruit-ninja/components/FruitComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/fruit-ninja/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/Game2048.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/Game2048Store.d.ts +20 -0
- package/lib/typescript/src/games/game-2048/Game2048Store.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/components/GameGrid.d.ts.map +1 -1
- package/lib/typescript/src/games/game-2048/components/GameTile.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/MazeRunnerConstants.d.ts +2 -2
- package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts +1 -1
- package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts +1 -1
- package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts +1 -0
- package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts +1 -1
- package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/perfect-circle/PerfectCircle.d.ts.map +1 -1
- package/lib/typescript/src/games/perfect-circle/PerfectCircleConstants.d.ts +1 -0
- package/lib/typescript/src/games/perfect-circle/PerfectCircleConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/perfect-circle/PerfectCircleService.d.ts +5 -3
- package/lib/typescript/src/games/perfect-circle/PerfectCircleService.d.ts.map +1 -1
- package/lib/typescript/src/games/perfect-circle/PerfectCircleStore.d.ts +16 -0
- package/lib/typescript/src/games/perfect-circle/PerfectCircleStore.d.ts.map +1 -1
- package/lib/typescript/src/games/perfect-circle/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/PopitFidget.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/PopitFidgetConstants.d.ts +2 -2
- package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts +4 -2
- package/lib/typescript/src/games/popit-fidget/PopitFidgetStore.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/components/BubbleComponent.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/components/FidgetGrid.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts +2 -1
- package/lib/typescript/src/games/popit-fidget/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/SlidingNumbers.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/SlidingNumbersService.d.ts +1 -1
- package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts +10 -0
- package/lib/typescript/src/games/sliding-numbers/SlidingNumbersStore.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/components/NumbersGrid.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/components/NumbersTile.d.ts.map +1 -1
- package/lib/typescript/src/games/sliding-numbers/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/snake/Snake.d.ts.map +1 -1
- package/lib/typescript/src/games/snake/SnakeStore.d.ts +16 -0
- package/lib/typescript/src/games/snake/SnakeStore.d.ts.map +1 -1
- package/lib/typescript/src/games/snake/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/snake/components/GameGrid.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/SpaceFighter.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/SpaceFighterConstants.d.ts +4 -4
- package/lib/typescript/src/games/space-fighter/components/GameArea.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/components/ScoreBoard.d.ts.map +1 -1
- package/lib/typescript/src/games/space-fighter/components/Spacecraft3D.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/WhackAMole.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts +8 -3
- package/lib/typescript/src/games/whack-a-mole/WhackAMoleConstants.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/WhackAMoleStore.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/components/GameBackground.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/components/GameHole.d.ts.map +1 -1
- package/lib/typescript/src/games/whack-a-mole/components/MoleCharacter.d.ts.map +1 -1
- package/lib/typescript/src/helpers/AbstractFruits.d.ts +207 -0
- package/lib/typescript/src/helpers/AbstractFruits.d.ts.map +1 -0
- package/lib/typescript/src/helpers/GameControlButton.d.ts +4 -7
- package/lib/typescript/src/helpers/GameControlButton.d.ts.map +1 -1
- package/lib/typescript/src/helpers/ParticleBlast.d.ts +1 -1
- package/lib/typescript/src/helpers/ParticleBlast.d.ts.map +1 -1
- package/lib/typescript/src/helpers/index.d.ts +1 -0
- package/lib/typescript/src/helpers/index.d.ts.map +1 -1
- package/lib/typescript/src/services/UtilsService.d.ts +2 -0
- package/lib/typescript/src/services/UtilsService.d.ts.map +1 -1
- package/package.json +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","GestureHandlerRootView","GameControlButton","GameOverModal","GameSettingsModal","DEFAULT_GAME_SETTINGS","GAME_IDS","playSound","GAME_SOUNDS","playHaptic","HapticType","useBubbleShooterStore","useScore","useIsPlaying","useGameOver","useGameWon","BubbleShooterService","BUBBLE_SHOOTER_COLORS","getDifficultySettings","ScoreBoard","GameArea","GameBackground","jsx","_jsx","jsxs","_jsxs","BubbleShooterComponent","settings","externalSettings","onSettingsChange","onEndGame","useMemo","difficulty","soundEnabled","enableSounds","hapticEnabled","enableHaptics","offset","score","isPlaying","gameOver","gameWon","gameReportedRef","useRef","reportGameEnd","useCallback","status","current","toString","resetGame","getState","difficultySettings","gameService","useEffect","setDifficulty","rowCount","colorCount","handleShoot","BLOCK_BLAST","PLACE","LIGHT","handleBubbleMatch","CLEAR","SUCCESS","handleGameWon","START","setCallbacks","cleanup","gameLoop","setInterval","updateShootingBubble","clearInterval","
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","GestureHandlerRootView","GameControlButton","GameOverModal","GameSettingsModal","DEFAULT_GAME_SETTINGS","GAME_IDS","playSound","GAME_SOUNDS","playHaptic","HapticType","useBubbleShooterStore","useScore","useIsPlaying","useGameOver","useGameWon","BubbleShooterService","BUBBLE_SHOOTER_COLORS","getDifficultySettings","ScoreBoard","GameArea","GameBackground","jsx","_jsx","jsxs","_jsxs","BubbleShooterComponent","settings","externalSettings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","useMemo","difficulty","soundEnabled","enableSounds","hapticEnabled","enableHaptics","offset","score","isPlaying","gameOver","gameWon","gameReportedRef","useRef","reportGameEnd","useCallback","status","current","toString","resetGame","getState","difficultySettings","gameService","useEffect","setDifficulty","rowCount","colorCount","initializeBubbles","handleShoot","BLOCK_BLAST","PLACE","LIGHT","handleBubbleMatch","CLEAR","SUCCESS","handleGameWon","START","setCallbacks","setOffset","cleanup","gameLoop","setInterval","updateShootingBubble","clearInterval","timerInterval","currentTime","timeRemaining","setGameOver","updateTimeRemaining","handleStartGame","startGame","timeLimit","handleStopGame","handleResetGame","handlePlayAgain","gameControlButtonProps","onStartGame","onStopGame","startButtonSubtext","buttonColor","UI","buttonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonTextColor","title","message","style","styles","container","children","gameId","BUBBLE_SHOOTER","create","flex","BubbleShooter","memo","displayName"],"sourceRoot":"../../../../src","sources":["games/bubble-shooter/BubbleShooter.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export const BUBBLE_SHOOTER_DIFFICULTY_CONFIG={easy:{rowCount:
|
|
1
|
+
"use strict";export const BUBBLE_SHOOTER_DIFFICULTY_CONFIG={easy:{rowCount:4,colorCount:4,timeLimit:300},medium:{rowCount:6,colorCount:5,timeLimit:600},hard:{rowCount:8,colorCount:6,timeLimit:600}};export const getDifficultySettings=o=>BUBBLE_SHOOTER_DIFFICULTY_CONFIG[o];export const DEFAULT_BUBBLE_SHOOTER_SETTINGS={difficulty:"medium",soundEnabled:!0,hapticEnabled:!0,rowCount:BUBBLE_SHOOTER_DIFFICULTY_CONFIG.medium.rowCount,colorCount:BUBBLE_SHOOTER_DIFFICULTY_CONFIG.medium.colorCount};export const BUBBLE_SHOOTER_GAME_CONFIG={BUBBLE_RADIUS:18,BUBBLE_SPACING:2,SHOOTER_SIZE:50,SHOOTER_Y_OFFSET:40,BUBBLE_SPEED:12,POINTS_PER_BUBBLE:10,POINTS_PER_DROP:20,MIN_MATCH_COUNT:3,COLS_PER_ROW:9,ROW_OFFSET:.5};export const BUBBLE_COLORS=["#FF3B30","#FF9500","#FFCC00","#34C759","#007AFF","#5856D6","#FF2D55","#00C7BE"];export const BUBBLE_SHOOTER_COLORS={BACKGROUND:"#87CEEB",SHOOTER:"#ffffff",SHOOTER_ARROW:"#ff6b9d",SCORE:"#ffffff",UI:"#ff6b9d",CEILING:"#e0e0e0"};export const BUBBLE_SHOOTER_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#ff6b9d",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(255, 107, 157, 0.15)",sectionTitleColor:"#ff6b9d",buttonSelectedColor:"#ff6b9d",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(255, 107, 157, 0.3)",switchTrackColorTrue:"#ff6b9d",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const BUBBLE_SHOOTER_DIFFICULTY_DESCRIPTIONS={easy:"Fewer rows and colors, easier matches",medium:"Balanced challenge with more bubbles",hard:"Many rows and colors, strategic play!"};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BUBBLE_SHOOTER_DIFFICULTY_CONFIG","easy","rowCount","colorCount","medium","hard","getDifficultySettings","difficulty","DEFAULT_BUBBLE_SHOOTER_SETTINGS","soundEnabled","hapticEnabled","BUBBLE_SHOOTER_GAME_CONFIG","BUBBLE_RADIUS","BUBBLE_SPACING","SHOOTER_SIZE","SHOOTER_Y_OFFSET","BUBBLE_SPEED","POINTS_PER_BUBBLE","POINTS_PER_DROP","MIN_MATCH_COUNT","COLS_PER_ROW","ROW_OFFSET","BUBBLE_COLORS","BUBBLE_SHOOTER_COLORS","BACKGROUND","SHOOTER","SHOOTER_ARROW","SCORE","UI","CEILING","BUBBLE_SHOOTER_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","BUBBLE_SHOOTER_DIFFICULTY_DESCRIPTIONS"],"sourceRoot":"../../../../src","sources":["games/bubble-shooter/BubbleShooterConstants.ts"],"mappings":";;AAEA;;AASA;AACA,OAAO,MAAMA,gCAAgC,GAAG;EAC9CC,IAAI,EAAE;IACJC,QAAQ,EAAE,CAAC;IAAE;IACbC,UAAU,EAAE,CAAC,CAAE;
|
|
1
|
+
{"version":3,"names":["BUBBLE_SHOOTER_DIFFICULTY_CONFIG","easy","rowCount","colorCount","timeLimit","medium","hard","getDifficultySettings","difficulty","DEFAULT_BUBBLE_SHOOTER_SETTINGS","soundEnabled","hapticEnabled","BUBBLE_SHOOTER_GAME_CONFIG","BUBBLE_RADIUS","BUBBLE_SPACING","SHOOTER_SIZE","SHOOTER_Y_OFFSET","BUBBLE_SPEED","POINTS_PER_BUBBLE","POINTS_PER_DROP","MIN_MATCH_COUNT","COLS_PER_ROW","ROW_OFFSET","BUBBLE_COLORS","BUBBLE_SHOOTER_COLORS","BACKGROUND","SHOOTER","SHOOTER_ARROW","SCORE","UI","CEILING","BUBBLE_SHOOTER_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","BUBBLE_SHOOTER_DIFFICULTY_DESCRIPTIONS"],"sourceRoot":"../../../../src","sources":["games/bubble-shooter/BubbleShooterConstants.ts"],"mappings":";;AAEA;;AASA;AACA,OAAO,MAAMA,gCAAgC,GAAG;EAC9CC,IAAI,EAAE;IACJC,QAAQ,EAAE,CAAC;IAAE;IACbC,UAAU,EAAE,CAAC;IAAE;IACfC,SAAS,EAAE,CAAC,GAAG,EAAE,CAAE;EACrB,CAAC;EACDC,MAAM,EAAE;IACNH,QAAQ,EAAE,CAAC;IAAE;IACbC,UAAU,EAAE,CAAC;IAAE;IACfC,SAAS,EAAE,EAAE,GAAG,EAAE,CAAE;EACtB,CAAC;EACDE,IAAI,EAAE;IACJJ,QAAQ,EAAE,CAAC;IAAE;IACbC,UAAU,EAAE,CAAC;IAAE;IACfC,SAAS,EAAE,EAAE,GAAG,EAAE,CAAE;EACtB;AACF,CAAU;;AAEV;AACA,OAAO,MAAMG,qBAAqB,GAAIC,UAAsC,IAAK;EAC/E,OAAOR,gCAAgC,CAACQ,UAAU,CAAC;AACrD,CAAC;;AAED;AACA,OAAO,MAAMC,+BAAsD,GAAG;EACpED,UAAU,EAAE,QAAQ;EACpBE,YAAY,EAAE,IAAI;EAClBC,aAAa,EAAE,IAAI;EACnBT,QAAQ,EAAEF,gCAAgC,CAACK,MAAM,CAACH,QAAQ;EAC1DC,UAAU,EAAEH,gCAAgC,CAACK,MAAM,CAACF;AACtD,CAAC;;AAED;AACA,OAAO,MAAMS,0BAA0B,GAAG;EACxCC,aAAa,EAAE,EAAE;EAAE;EACnBC,cAAc,EAAE,CAAC;EAAE;EACnBC,YAAY,EAAE,EAAE;EAAE;EAClBC,gBAAgB,EAAE,EAAE;EAAE;EACtBC,YAAY,EAAE,EAAE;EAAE;EAClBC,iBAAiB,EAAE,EAAE;EACrBC,eAAe,EAAE,EAAE;EAAE;EACrBC,eAAe,EAAE,CAAC;EAAE;EACpBC,YAAY,EAAE,CAAC;EAAE;EACjBC,UAAU,EAAE,GAAG,CAAE;AACnB,CAAU;;AAEV;AACA,OAAO,MAAMC,aAAa,GAAG,CAC3B,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS,CAAE;AAAA,CACH;AAEV,OAAO,MAAMC,qBAAqB,GAAG;EACnCC,UAAU,EAAE,SAAS;EAAE;EACvBC,OAAO,EAAE,SAAS;EAClBC,aAAa,EAAE,SAAS;EACxBC,KAAK,EAAE,SAAS;EAChBC,EAAE,EAAE,SAAS;EACbC,OAAO,EAAE;AACX,CAAU;;AAEV;AACA,OAAO,MAAMC,oBAAuC,GAAG;EACrDC,eAAe,EAAE,oBAAoB;EACrCC,qBAAqB,EAAE,SAAS;EAChCC,eAAe,EAAE,SAAS;EAC1BC,sBAAsB,EAAE,2BAA2B;EACnDC,iBAAiB,EAAE,SAAS;EAC5BC,mBAAmB,EAAE,SAAS;EAC9BC,qBAAqB,EAAE,0BAA0B;EACjDC,uBAAuB,EAAE,SAAS;EAClCC,yBAAyB,EAAE,0BAA0B;EACrDC,qBAAqB,EAAE,0BAA0B;EACjDC,oBAAoB,EAAE,SAAS;EAC/BC,gBAAgB,EAAE,SAAS;EAC3BC,aAAa,EAAE;AACjB,CAAC;;AAED;AACA,OAAO,MAAMC,sCAAsC,GAAG;EACpD5C,IAAI,EAAE,uCAAuC;EAC7CI,MAAM,EAAE,sCAAsC;EAC9CC,IAAI,EAAE;AACR,CAAU","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{Dimensions as t}from"react-native";import{useBubbleShooterStore as o}from"./BubbleShooterStore.js";import{BUBBLE_SHOOTER_GAME_CONFIG as s,BUBBLE_COLORS as e}from"./BubbleShooterConstants.js";const{width:i}=t.get("window");export class BubbleShooterService{rowCount=8;colorCount=5;shooterX=i/2;shooterY=0;offset=0;constructor(){}setCallbacks(t,o,s){this.onShoot=t,this.onBubbleMatch=o,this.onGameWon=s}setDifficulty(t,o){this.rowCount=t,this.colorCount=o}setShooterPosition(t,o,s=0){this.shooterX=t,this.shooterY=o,this.offset=s}startGame(){this.initializeBubbles()}stopGame(){}resetGame(){}cleanup(){}initializeBubbles(){const t=o.getState(),n=[],r=s.BUBBLE_RADIUS,c=2*(r+s.BUBBLE_SPACING),h=s.COLS_PER_ROW,l=(i-h*c)/2+r,
|
|
1
|
+
"use strict";import{Dimensions as t}from"react-native";import{useBubbleShooterStore as o}from"./BubbleShooterStore.js";import{BUBBLE_SHOOTER_GAME_CONFIG as s,BUBBLE_COLORS as e}from"./BubbleShooterConstants.js";const{width:i}=t.get("window"),n=s.BUBBLE_RADIUS,r=s.BUBBLE_SPACING,c=2*(n+r),h=2*n,l=2.5*n,u=5,a=n+5,b=i-n-5;export class BubbleShooterService{rowCount=8;colorCount=5;shooterX=i/2;shooterY=0;offset=0;constructor(){}setCallbacks(t,o,s){this.onShoot=t,this.onBubbleMatch=o,this.onGameWon=s}setDifficulty(t,o){this.rowCount=t,this.colorCount=o}setShooterPosition(t,o,s=0){this.shooterX=t,this.shooterY=o,this.offset=s}setOffset(t){this.offset=t}startGame(){0===o.getState().bubbles.length&&this.initializeBubbles()}stopGame(){}resetGame(){}cleanup(){}initializeBubbles(){const t=o.getState(),n=[],r=s.BUBBLE_RADIUS,c=2*(r+s.BUBBLE_SPACING),h=s.COLS_PER_ROW,l=(i-h*c)/2+r,u=e.slice(0,this.colorCount);for(let t=0;t<this.rowCount;t++)for(let o=0;h>o;o++){const s=l+o*c+(t%2==1?c/2:0),e=t*c*.866+r+130+this.offset,i=u[Math.floor(Math.random()*u.length)];n.push({id:`bubble-${t}-${o}`,row:t,col:o,color:i,x:s,y:e})}t.updateBubbles(n);const a=[...new Set(n.map(t=>t.color))],b=a[Math.floor(Math.random()*a.length)],f=a[Math.floor(Math.random()*a.length)];o.setState({currentBubbleColor:b,nextBubbleColor:f})}updateShootingBubble(t){const s=o.getState();if(!s.shootingBubble)return;const e=s.shootingBubble;let i=e.x+e.vx,r=e.y+e.vy,c=e.vx;const h=130+this.offset;if(h>=r-n)return r=h+n,void this.snapBubbleToGrid(i,r,e.color);this.checkBubbleCollision(i,r)?this.snapBubbleToGrid(i,r,e.color):(a>i?(i=a,c=-c):i>b&&(i=b,c=-c),s.updateShootingBubble({...e,x:i,y:r,vx:c}))}checkBubbleCollision(t,s){const e=o.getState().bubbles,i=h*h;for(let o=0;o<e.length;o++){const n=e[o];if(!n)continue;const r=t-n.x,c=s-n.y;if(i>r*r+c*c)return n}return null}snapBubbleToGrid(t,e,i){const r=o.getState();if(0===r.bubbles.length){const o={id:"bubble-"+Date.now(),row:0,col:0,color:i,x:t,y:Math.max(e,50+this.offset+n)};return r.addBubble(o),r.clearShootingBubble(),void r.generateNextBubble()}const h=r.bubbles;let l=h[0],u=1/0;for(let o=0;o<h.length;o++){const s=h[o];if(!s)continue;const i=t-s.x,n=e-s.y,r=Math.sqrt(i*i+n*n);u>r&&(u=r,l=s)}if(!l)return;const f=t-l.x,M=e-l.y,d=Math.sqrt(f*f+M*M);if(.1>d){const t={id:"bubble-"+Date.now(),row:0,col:0,color:i,x:l.x,y:l.y+c};r.addBubble(t);const e=o.getState().bubbles,n=this.findConnectedBubbles(t,e);if(n.length>=s.MIN_MATCH_COUNT){const t=n.map(t=>t.id);r.removeBubbles(t);const e=n.length*s.POINTS_PER_BUBBLE;r.updateScore(e),this.onBubbleMatch?.(),0===o.getState().bubbles.length&&(this.onGameWon?.(),r.setGameWon())}return r.clearShootingBubble(),void r.generateNextBubble()}const w=f/d,x=M/d;let B=l.x+w*c,m=l.y+x*c;const S=50+this.offset+n,p=l.y+2*c;m=Math.max(S,Math.min(p,m)),B=Math.max(a,Math.min(b,B));const v={id:"bubble-"+Date.now(),row:0,col:0,color:i,x:B,y:m};r.addBubble(v);const y=o.getState().bubbles,C=this.findConnectedBubbles(v,y);if(C.length>=s.MIN_MATCH_COUNT){const t=C.map(t=>t.id);r.removeBubbles(t);const e=C.length*s.POINTS_PER_BUBBLE;r.updateScore(e),this.onBubbleMatch?.(),0===o.getState().bubbles.length&&(this.onGameWon?.(),r.setGameWon())}r.clearShootingBubble(),r.generateNextBubble()}findConnectedBubbles(t,o){const s=[],e=new Set,i=[t],n=l*l,r=t.color;for(;i.length>0;){const t=i.shift();if(!e.has(t.id)&&(e.add(t.id),t.color===r)){s.push(t);for(let s=0;s<o.length;s++){const c=o[s];if(!c||e.has(c.id)||c.color!==r)continue;const h=t.x-c.x,l=t.y-c.y;n>h*h+l*l&&i.push(c)}}}return s}shoot(){const t=o.getState();if(!t.isPlaying||t.shootingBubble)return;const e=t.shooterAngle,i=s.BUBBLE_SPEED,n={id:"shooting-"+Date.now(),x:this.shooterX,y:this.shooterY,vx:Math.sin(e)*i,vy:-Math.cos(e)*i,color:t.currentBubbleColor};o.getState().updateShootingBubble(n),this.onShoot?.()}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Dimensions","useBubbleShooterStore","BUBBLE_SHOOTER_GAME_CONFIG","BUBBLE_COLORS","width","get","BubbleShooterService","rowCount","colorCount","shooterX","shooterY","offset","constructor","setCallbacks","onShoot","onBubbleMatch","onGameWon","setDifficulty","setShooterPosition","x","y","startGame","initializeBubbles","stopGame","resetGame","cleanup","store","getState","bubbles","radius","BUBBLE_RADIUS","spacing","BUBBLE_SPACING","diameter","cols","COLS_PER_ROW","gridWidth","startX","availableColors","slice","row","col","xOffset","color","Math","floor","random","length","push","id","updateBubbles","uniqueColors","Set","map","b","randomColor1","randomColor2","setState","currentBubbleColor","nextBubbleColor","updateShootingBubble","_offset","shootingBubble","bubble","newX","vx","newY","vy","newVx","wallPadding","snapBubbleToGrid","hitBubble","checkBubbleCollision","collisionDist","dx","dy","dist","sqrt","newBubble","Date","now","max","addBubble","clearShootingBubble","generateNextBubble","currentBubbles","collidedBubble","minDist","Infinity","i","distance","updatedBubbles","matches","findConnectedBubbles","MIN_MATCH_COUNT","matchIds","removeBubbles","points","POINTS_PER_BUBBLE","updateScore","remainingBubbles","setGameWon","normalizedDx","normalizedDy","snapX","snapY","minY","maxY","min","minX","maxX","startBubble","allBubbles","visited","queue","neighborDist","current","shift","has","add","shoot","isPlaying","angle","shooterAngle","speed","BUBBLE_SPEED","sin","cos"],"sourceRoot":"../../../../src","sources":["games/bubble-shooter/BubbleShooterService.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Dimensions","useBubbleShooterStore","BUBBLE_SHOOTER_GAME_CONFIG","BUBBLE_COLORS","width","get","BUBBLE_RADIUS","BUBBLE_SPACING","BUBBLE_DIAMETER","COLLISION_DIST","NEIGHBOR_DIST","WALL_PADDING","MIN_X","MAX_X","BubbleShooterService","rowCount","colorCount","shooterX","shooterY","offset","constructor","setCallbacks","onShoot","onBubbleMatch","onGameWon","setDifficulty","setShooterPosition","x","y","setOffset","startGame","store","getState","bubbles","length","initializeBubbles","stopGame","resetGame","cleanup","radius","spacing","diameter","cols","COLS_PER_ROW","gridWidth","startX","availableColors","slice","row","col","xOffset","color","Math","floor","random","push","id","updateBubbles","uniqueColors","Set","map","b","randomColor1","randomColor2","setState","currentBubbleColor","nextBubbleColor","updateShootingBubble","_offset","shootingBubble","bubble","newX","vx","newY","vy","newVx","topBoundary","snapBubbleToGrid","hitBubble","checkBubbleCollision","collisionDistSq","i","dx","dy","distSq","newBubble","Date","now","max","addBubble","clearShootingBubble","generateNextBubble","currentBubbles","collidedBubble","minDist","Infinity","dist","sqrt","distance","updatedBubbles","matches","findConnectedBubbles","MIN_MATCH_COUNT","matchIds","removeBubbles","points","POINTS_PER_BUBBLE","updateScore","remainingBubbles","setGameWon","normalizedDx","normalizedDy","snapX","snapY","minY","maxY","min","startBubble","allBubbles","visited","queue","neighborDistSq","targetColor","current","shift","has","add","shoot","isPlaying","angle","shooterAngle","speed","BUBBLE_SPEED","sin","cos"],"sourceRoot":"../../../../src","sources":["games/bubble-shooter/BubbleShooterService.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{create as e}from"zustand";import{subscribeWithSelector as
|
|
1
|
+
"use strict";import{create as e}from"zustand";import{subscribeWithSelector as o}from"zustand/middleware";import{immerMiddleware as t}from"../../services/UtilsService.js";import{BUBBLE_SHOOTER_GAME_CONFIG as r}from"./BubbleShooterConstants.js";export const useBubbleShooterStore=e()(o(t((e,o)=>({score:0,timeRemaining:0,isPlaying:!1,gameOver:!1,gameWon:!1,shooterAngle:0,bubbles:[],shootingBubble:null,nextBubbleColor:"#FF3B30",currentBubbleColor:"#FF3B30",startGame:(o,t,r)=>{e(e=>{e.score=0,e.timeRemaining=r,e.isPlaying=!0,e.gameOver=!1,e.gameWon=!1,e.shootingBubble=null})},stopGame:()=>{e(e=>{e.isPlaying=!1})},resetGame:()=>{e(e=>{e.score=0,e.timeRemaining=0,e.isPlaying=!1,e.gameOver=!1,e.gameWon=!1,e.shooterAngle=0,e.bubbles=[],e.shootingBubble=null})},updateScore:o=>{e(e=>{e.score=e.score+o})},updateTimeRemaining:o=>{e(e=>{e.timeRemaining=Math.max(0,e.timeRemaining+o)})},setTimeRemaining:o=>{e(e=>{e.timeRemaining=o})},setShooterAngle:o=>{e(e=>{e.shooterAngle=o})},shootBubble:()=>{const t=o();if(t.shootingBubble)return;const s=t.shooterAngle,u=r.BUBBLE_SPEED;e(e=>{e.shootingBubble={id:"shooting-"+Date.now(),x:0,y:0,vx:Math.sin(s)*u,vy:-Math.cos(s)*u,color:e.currentBubbleColor}})},updateShootingBubble:o=>{e(e=>{e.shootingBubble=o})},clearShootingBubble:()=>{e(e=>{e.currentBubbleColor=e.nextBubbleColor,e.shootingBubble=null})},addBubble:o=>{e(e=>{e.bubbles.push(o)})},removeBubbles:o=>{e(e=>{const t=new Set(o);e.bubbles=e.bubbles.filter(e=>!t.has(e.id))})},updateBubbles:o=>{e(e=>{e.bubbles=o})},setGameOver:()=>{e(e=>{e.gameOver=!0,e.isPlaying=!1})},setGameWon:()=>{e(e=>{e.gameWon=!0,e.gameOver=!0,e.isPlaying=!1})},generateNextBubble:()=>{e(e=>{const o=[...new Set(e.bubbles.map(e=>e.color))];if(0===o.length){const o=["#FF3B30","#FF9500","#FFCC00","#34C759","#007AFF"];e.nextBubbleColor=o[Math.floor(Math.random()*o.length)]}else e.nextBubbleColor=o[Math.floor(Math.random()*o.length)]})}}))));export const useScore=()=>useBubbleShooterStore(e=>e.score);export const useTimeRemaining=()=>useBubbleShooterStore(e=>e.timeRemaining);export const useIsPlaying=()=>useBubbleShooterStore(e=>e.isPlaying);export const useGameOver=()=>useBubbleShooterStore(e=>e.gameOver);export const useGameWon=()=>useBubbleShooterStore(e=>e.gameWon);export const useShooterAngle=()=>useBubbleShooterStore(e=>e.shooterAngle);export const useBubbles=()=>useBubbleShooterStore(e=>e.bubbles);export const useShootingBubble=()=>useBubbleShooterStore(e=>e.shootingBubble);export const useCurrentBubbleColor=()=>useBubbleShooterStore(e=>e.currentBubbleColor);export const useNextBubbleColor=()=>useBubbleShooterStore(e=>e.nextBubbleColor);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["create","subscribeWithSelector","immerMiddleware","BUBBLE_SHOOTER_GAME_CONFIG","useBubbleShooterStore","set","get","score","isPlaying","gameOver","gameWon","shooterAngle","bubbles","shootingBubble","nextBubbleColor","currentBubbleColor","startGame","_rowCount","_colorCount","draft","stopGame","resetGame","updateScore","points","setShooterAngle","angle","shootBubble","state","speed","BUBBLE_SPEED","id","Date","now","x","y","vx","
|
|
1
|
+
{"version":3,"names":["create","subscribeWithSelector","immerMiddleware","BUBBLE_SHOOTER_GAME_CONFIG","useBubbleShooterStore","set","get","score","timeRemaining","isPlaying","gameOver","gameWon","shooterAngle","bubbles","shootingBubble","nextBubbleColor","currentBubbleColor","startGame","_rowCount","_colorCount","timeLimit","draft","stopGame","resetGame","updateScore","points","updateTimeRemaining","time","Math","max","setTimeRemaining","setShooterAngle","angle","shootBubble","state","speed","BUBBLE_SPEED","id","Date","now","x","y","vx","sin","vy","cos","color","updateShootingBubble","bubble","clearShootingBubble","addBubble","push","removeBubbles","bubbleIds","idsToRemove","Set","filter","b","has","updateBubbles","setGameOver","setGameWon","generateNextBubble","uniqueColors","map","length","defaultColors","floor","random","useScore","useTimeRemaining","useIsPlaying","useGameOver","useGameWon","useShooterAngle","useBubbles","useShootingBubble","useCurrentBubbleColor","useNextBubbleColor"],"sourceRoot":"../../../../src","sources":["games/bubble-shooter/BubbleShooterStore.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import r from"react";import{View as t,StyleSheet as e,Dimensions as o}from"react-native";import{Gesture as c,GestureDetector as
|
|
1
|
+
"use strict";import r from"react";import{View as t,StyleSheet as e,Dimensions as o}from"react-native";import{Gesture as c,GestureDetector as a}from"react-native-gesture-handler";import{runOnJS as s,useSharedValue as i,withRepeat as n,withSpring as l,useDerivedValue as m}from"react-native-reanimated";import{Canvas as f,Circle as h,Group as d}from"@shopify/react-native-skia";import{useBubbleShooterStore as p}from"../BubbleShooterStore.js";import{BUBBLE_SHOOTER_GAME_CONFIG as x,BUBBLE_SHOOTER_COLORS as b}from"../BubbleShooterConstants.js";import{ParticleBlast as u}from"../../../helpers/index.js";import{jsx as y,jsxs as g}from"react/jsx-runtime";const{width:M,height:j}=o.get("window"),v=r.memo(({bubble:r,radius:t})=>g(d,{children:[y(h,{cx:r.x,cy:r.y,r:t,color:r.color}),y(h,{cx:r.x-.3*t,cy:r.y-.3*t,r:.3*t,color:"rgba(255, 255, 255, 0.4)"})]}));v.displayName="BubbleRenderer";const w=({gameService:e,offset:o})=>{const w=p(r=>r.bubbles),A=p(r=>r.shootingBubble),B=p(r=>r.shooterAngle),C=p(r=>r.currentBubbleColor),G=p(r=>r.nextBubbleColor),k=p(r=>r.isPlaying),[$,D]=r.useState([]),R=i(1),q=i(1),z=r.useMemo(()=>M/2,[]),E=r.useMemo(()=>j-o-x.SHOOTER_Y_OFFSET,[o]),F=x.BUBBLE_RADIUS;r.useEffect(()=>{e.setShooterPosition(z,E,o)},[e,z,E,o]),r.useEffect(()=>{k&&!A?(R.value=n(l(1.1,{damping:3,stiffness:100,mass:.5}),-1,!0),q.value=n(l(1.15,{damping:2.5,stiffness:90,mass:.6}),-1,!0)):(R.value=l(1,{damping:10,stiffness:100}),q.value=l(1,{damping:10,stiffness:100}))},[k,A]);const H=m(()=>F*R.value),I=m(()=>.6*F*q.value),J=r.useCallback((r,t)=>{if(!k)return;const e=Math.max(.4*-Math.PI,Math.min(.4*Math.PI,Math.atan2(r-z,-(t-E))));p.getState().setShooterAngle(e)},[k,z,E]),K=r.useCallback(()=>{k&&!A&&e.shoot()},[e,k,A]),L=r.useCallback((r,t,e)=>{const o={id:`blast-${Date.now()}-${Math.random()}`,x:r,y:t,color:e};D(r=>[...r,o])},[]),N=r.useCallback(r=>{D(t=>t.filter(t=>t.id!==r))},[]);r.useEffect(()=>{const r=p.subscribe(r=>r.bubbles,(r,t)=>{k&&0!==r.length&&t.length>r.length&&t.filter(t=>!r.some(r=>r.id===t.id)).forEach(r=>{L(r.x,r.y,r.color)})});return()=>r()},[L,k]);const O=r.useMemo(()=>c.Pan().onBegin(r=>{s(J)(r.absoluteX,r.absoluteY)}).onUpdate(r=>{s(J)(r.absoluteX,r.absoluteY)}).onEnd(()=>{s(K)()}),[J,K]),P=r.useMemo(()=>c.Tap().onStart(r=>{s(J)(r.absoluteX,r.absoluteY)}).onEnd(()=>{s(K)()}),[J,K]),Q=r.useMemo(()=>c.Race(O,P),[O,P]),T=r.useMemo(()=>{const r=[];for(let t=1;12>=t;t++){const e=25*t,c=z+Math.sin(B)*e,a=E-Math.cos(B)*e;if(100+o>a)break;r.push({x:c,y:a})}return r},[z,E,B,o]);return y(a,{gesture:Q,children:g(t,{style:S.container,children:[g(f,{style:S.canvas,children:[w.map(r=>y(v,{bubble:r,radius:F},r.id)),A&&g(d,{children:[y(h,{cx:A.x,cy:A.y,r:F,color:A.color}),y(h,{cx:A.x-.3*F,cy:A.y-.3*F,r:.3*F,color:"rgba(255, 255, 255, 0.4)"})]}),!A&&g(d,{children:[T.map((r,t)=>y(h,{cx:r.x,cy:r.y,r:4-.2*t,color:b.SHOOTER_ARROW,opacity:1-.06*t},"aim-dot-"+t)),y(h,{cx:z,cy:E,r:H,color:C}),y(h,{cx:z-.3*F,cy:E-.3*F,r:.3*F,color:"rgba(255, 255, 255, 0.4)"}),y(h,{cx:z+50,cy:E,r:I,color:G}),y(h,{cx:z+50-.18*F,cy:E-.18*F,r:.18*F,color:"rgba(255, 255, 255, 0.4)"})]})]}),$.map(r=>y(u,{x:r.x,y:r.y,colors:[r.color],particleCount:12,onComplete:()=>N(r.id)},r.id))]})})},S=e.create({container:{flex:1},canvas:{flex:1,width:M,height:j}}),A=(r,t)=>r.offset===t.offset&&r.gameService===t.gameService;export const GameArea=r.memo(w,A);GameArea.displayName="GameArea";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","Dimensions","Gesture","GestureDetector","runOnJS","useSharedValue","withRepeat","withSpring","useDerivedValue","Canvas","Circle","Group","Line","vec","useBubbleShooterStore","BUBBLE_SHOOTER_GAME_CONFIG","BUBBLE_SHOOTER_COLORS","ParticleBlast","jsx","_jsx","jsxs","_jsxs","width","height","get","GameAreaComponent","gameService","offset","bubbles","state","shootingBubble","shooterAngle","currentBubbleColor","nextBubbleColor","isPlaying","activeBlasts","setActiveBlasts","useState","bubbleScale","nextBubbleScale","shooterX","shooterY","SHOOTER_Y_OFFSET","radius","BUBBLE_RADIUS","useEffect","setShooterPosition","value","damping","stiffness","mass","animatedRadius","animatedNextRadius","handleTouchMove","useCallback","x","y","dx","dy","angle","Math","atan2","clampedAngle","max","PI","min","getState","setShooterAngle","handleTap","shoot","createBlastParticles","color","newBlast","id","Date","now","random","prev","handleBlastComplete","blastId","filter","blast","unsubscribe","subscribe","currentBubbles","previousBubbles","length","removedBubbles","prevBubble","some","currBubble","forEach","bubble","panGesture","useMemo","Pan","onBegin","event","absoluteX","absoluteY","onUpdate","onEnd","tapGesture","Tap","onStart","composedGesture","Race","aimLineLength","aimEndX","sin","aimEndY","cos","gesture","children","style","styles","container","canvas","map","cx","cy","r","p1","p2","SHOOTER_ARROW","strokeWidth","colors","particleCount","onComplete","create","flex","areGameAreaPropsEqual","prevProps","nextProps","GameArea","memo","displayName"],"sourceRoot":"../../../../../src","sources":["games/bubble-shooter/components/GameArea.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","Dimensions","Gesture","GestureDetector","runOnJS","useSharedValue","withRepeat","withSpring","useDerivedValue","Canvas","Circle","Group","useBubbleShooterStore","BUBBLE_SHOOTER_GAME_CONFIG","BUBBLE_SHOOTER_COLORS","ParticleBlast","jsx","_jsx","jsxs","_jsxs","width","height","get","BubbleRenderer","memo","bubble","radius","children","cx","x","cy","y","r","color","displayName","GameAreaComponent","gameService","offset","bubbles","state","shootingBubble","shooterAngle","currentBubbleColor","nextBubbleColor","isPlaying","activeBlasts","setActiveBlasts","useState","bubbleScale","nextBubbleScale","shooterX","useMemo","shooterY","SHOOTER_Y_OFFSET","BUBBLE_RADIUS","useEffect","setShooterPosition","value","damping","stiffness","mass","animatedRadius","animatedNextRadius","handleTouchMove","useCallback","dx","dy","angle","Math","atan2","clampedAngle","max","PI","min","getState","setShooterAngle","handleTap","shoot","createBlastParticles","newBlast","id","Date","now","random","prev","handleBlastComplete","blastId","filter","blast","unsubscribe","subscribe","currentBubbles","previousBubbles","length","removedBubbles","prevBubble","some","currBubble","forEach","panGesture","Pan","onBegin","event","absoluteX","absoluteY","onUpdate","onEnd","tapGesture","Tap","onStart","composedGesture","Race","aimDots","dots","dotSpacing","numDots","i","distance","dotX","sin","dotY","cos","push","gesture","style","styles","container","canvas","map","dot","index","SHOOTER_ARROW","opacity","colors","particleCount","onComplete","create","flex","areGameAreaPropsEqual","prevProps","nextProps","GameArea"],"sourceRoot":"../../../../../src","sources":["games/bubble-shooter/components/GameArea.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import r from"react";import{View as t,Dimensions as c}from"react-native";import{Canvas as o,LinearGradient as a,Rect as e,vec as h,Circle as n}from"@shopify/react-native-skia";import{jsx as i,jsxs as l}from"react/jsx-runtime";const{width:s,height:x}=c.get("window"),y=["#FF1493","#FF69B4","#FF6347","#FF8C00","#FFD700","#ADFF2F","#00FA9A","#00CED1","#1E90FF","#9370DB","#BA55D3","#FF1493"];export const GameBackground=r.memo(({children:c})=>{const
|
|
1
|
+
"use strict";import r from"react";import{View as t,Dimensions as c}from"react-native";import{Canvas as o,LinearGradient as a,Rect as e,vec as h,Circle as n}from"@shopify/react-native-skia";import{jsx as i,jsxs as l}from"react/jsx-runtime";const{width:s,height:x}=c.get("window"),y=["#FF1493","#FF69B4","#FF6347","#FF8C00","#FFD700","#ADFF2F","#00FA9A","#00CED1","#1E90FF","#9370DB","#BA55D3","#FF1493"],d=Math.floor(s/60),F=Math.floor(x/60);export const GameBackground=r.memo(({children:c})=>{const g=r.useMemo(()=>{const r=[];for(let t=0;20>t;t++){const c=x/20*t,o=s/20*t+70*Math.sin(.8*t)+120*Math.random(),a=c+80*Math.cos(.6*t)+100*Math.random(),e=15+35*Math.random(),h=t%12,l=.2+.15*Math.sin(1.2*t),d=Math.max(e,Math.min(s-e,o)),F=Math.max(e,Math.min(x-e,a));r.push(i(n,{cx:d,cy:F,r:e,color:`${y[h]}${Math.floor(255*l).toString(16).padStart(2,"0")}`},"bubble-"+t))}return r},[]);return l(t,{style:{flex:1},children:[l(o,{style:{position:"absolute",top:0,left:0,right:0,bottom:0,width:s,height:x},children:[i(e,{x:0,y:0,width:s,height:x,children:i(a,{start:h(0,0),end:h(s,x),colors:[y[0]+"35",y[4]+"30",y[6]+"35",y[8]+"30",y[10]+"35"]})}),i(e,{x:0,y:0,width:s,height:x,children:i(a,{start:h(s/2,x/2),end:h(s,x),colors:[y[2]+"25","transparent",y[5]+"25","transparent",y[7]+"25","transparent"]})}),i(e,{x:0,y:0,width:s,height:x,children:i(a,{start:h(.3*s,.3*x),end:h(.7*s,.7*x),colors:[y[3]+"18","transparent",y[9]+"18","transparent",y[1]+"18","transparent"]})}),g,i(n,{cx:.12*s,cy:.15*x,r:45,color:y[0]+"40"}),i(n,{cx:.88*s,cy:.85*x,r:38,color:y[4]+"40"}),i(n,{cx:.85*s,cy:.2*x,r:32,color:y[6]+"40"}),i(n,{cx:.15*s,cy:.78*x,r:50,color:y[8]+"40"}),i(n,{cx:.5*s,cy:.1*x,r:35,color:y[10]+"40"}),i(n,{cx:.18*s,cy:.48*x,r:40,color:y[2]+"40"}),i(n,{cx:.82*s,cy:.55*x,r:42,color:y[7]+"40"}),i(n,{cx:.6*s,cy:.9*x,r:30,color:y[1]+"40"}),i(n,{cx:.28*s,cy:.28*x,r:25,color:y[5]+"38"}),i(n,{cx:.68*s,cy:.38*x,r:28,color:y[9]+"38"}),i(n,{cx:.38*s,cy:.68*x,r:22,color:y[3]+"38"}),i(n,{cx:.72*s,cy:.72*x,r:26,color:y[11]+"38"}),Array.from({length:d},(r,t)=>i(e,{x:60*t,y:0,width:1,height:x,color:"rgba(255, 255, 255, 0.05)"},"grid-v-"+t)),Array.from({length:F},(r,t)=>i(e,{x:0,y:60*t,width:s,height:1,color:"rgba(255, 255, 255, 0.05)"},"grid-h-"+t))]}),c]})});GameBackground.displayName="GameBackground";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Dimensions","Canvas","LinearGradient","Rect","vec","Circle","jsx","_jsx","jsxs","_jsxs","width","height","get","BUBBLE_COLORS","GameBackground","memo","children","generateFloatingBubbles","useMemo","elements","bubbleCount","i","baseX","baseY","x","
|
|
1
|
+
{"version":3,"names":["React","View","Dimensions","Canvas","LinearGradient","Rect","vec","Circle","jsx","_jsx","jsxs","_jsxs","width","height","get","BUBBLE_COLORS","GRID_VERTICAL_COUNT","Math","floor","GRID_HORIZONTAL_COUNT","GameBackground","memo","children","generateFloatingBubbles","useMemo","elements","bubbleCount","i","baseX","baseY","x","sin","random","y","cos","bubbleSize","colorIndex","length","opacity","bubbleX","max","min","bubbleY","push","cx","cy","r","color","toString","padStart","style","flex","position","top","left","right","bottom","start","end","colors","Array","from","_","displayName"],"sourceRoot":"../../../../../src","sources":["games/bubble-shooter/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import e from"react";import{View as r,Text as t,StyleSheet as o}from"react-native";import{ScoreBoardContainer as n}from"../../../helpers/index.js";import{useScore as l,useTimeRemaining as i}from"../BubbleShooterStore.js";import{jsx as c,jsxs as s}from"react/jsx-runtime";const f=e=>{const r=e%60;return`${Math.floor(e/60).toString().padStart(2,"0")}:${r.toString().padStart(2,"0")}`},a=30;export const ScoreBoard=e.memo(({offset:e=0})=>{const o=l(),m=i();return c(n,{offset:e,backgroundColor:"rgba(255, 107, 157, 0.4)",borderColor:"rgba(255, 107, 157, 0.4)",children:s(r,{style:d.row,children:[s(r,{style:d.column,children:[c(t,{style:d.label,children:"SCORE"}),c(t,{style:d.value,children:o})]}),s(r,{style:d.column,children:[c(t,{style:d.label,children:"TIME"}),c(t,{style:[d.value,a>=m&&d.warningTime],children:f(m)})]})]})})});ScoreBoard.displayName="ScoreBoard";const d=o.create({row:{flexDirection:"row",justifyContent:"space-around",alignItems:"center",width:"100%"},column:{alignItems:"center"},label:{fontSize:14,fontWeight:"bold",color:"#ffffff",marginBottom:4,letterSpacing:.5,textAlign:"center"},value:{fontSize:22,fontWeight:"bold",color:"#ffffff",textAlign:"center"},warningTime:{color:"#FF3B30"}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","StyleSheet","ScoreBoardContainer","useScore","jsx","_jsx","jsxs","_jsxs","ScoreBoard","memo","offset","score","backgroundColor","borderColor","children","style","styles","label","value","displayName","create","fontSize","fontWeight","color","marginBottom","letterSpacing","textAlign"],"sourceRoot":"../../../../../src","sources":["games/bubble-shooter/components/ScoreBoard.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,UAAU,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["React","View","Text","StyleSheet","ScoreBoardContainer","useScore","useTimeRemaining","jsx","_jsx","jsxs","_jsxs","formatTime","seconds","mins","Math","floor","secs","toString","padStart","WARNING_THRESHOLD","ScoreBoard","memo","offset","score","timeRemaining","backgroundColor","borderColor","children","style","styles","row","column","label","value","warningTime","displayName","create","flexDirection","justifyContent","alignItems","width","fontSize","fontWeight","color","marginBottom","letterSpacing","textAlign"],"sourceRoot":"../../../../../src","sources":["games/bubble-shooter/components/ScoreBoard.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import o from"react";import{View as r,StyleSheet as t}from"react-native";import{GameControlButton as e,GameOverModal as n,GameSettingsModal as s}from"../../helpers/index.js";import{GAME_IDS as a,DEFAULT_GAME_SETTINGS as i}from"../../services/UtilsService.js";import{GameBackground as m,GameGrid as f,ScoreBoard as d}from"./components/index.js";import{useCandyCrushStore as C,useScore as c,useIsPlaying as l,useIsGameOver as u}from"./CandyCrushStore.js";import{CANDY_CRUSH_COLORS as g}from"./CandyCrushConstants.js";import{jsx as h,jsxs as p}from"react/jsx-runtime";export const CandyCrush=o.memo(({settings:t,onSettingsChange:x,onEndGame:y,onShare:S,onShowLeaderboard:j})=>{const v=c(),w=l(),B=u(),F=o.useRef(!1),G=o.useCallback(o=>{y&&!F.current&&(y({status:o,score:v.toString()}),F.current=!0)},[y,v]),I=C(o=>o.startGame),T=C(o=>o.stopGame),A=C(o=>o.resetGame),L=C(o=>o.initializeGame),P=C(o=>o.updateSettings);o.useEffect(()=>{P(t?.enableSounds??!0,t?.enableHaptics??!0)},[t?.enableSounds,t?.enableHaptics,P]),o.useEffect(()=>{L(t?.difficulty||"easy")},[t?.difficulty,L]),o.useEffect(()=>{B&&!F.current&&G("win"),B||(F.current=!1)},[B,G]);const z=o.useCallback(()=>{F.current=!1,I()},[I]),E=o.useCallback(()=>{A()},[A]),M=o.useCallback(()=>{G("cancel"),T()},[T,G]),O=o.useMemo(()=>({isPlaying:w,gameOver:B,onStartGame:z,onStopGame:M,onShare:S,onShowLeaderboard:j,startButtonSubtext:"Match 3 or more",buttonColor:g.BUTTON_PRIMARY,buttonBorderColor:g.BUTTON_SECONDARY}),[w,B,z,M,S,j]),U=o.useMemo(()=>({isVisible:B,score:v,onPlayAgain:E,buttonText:"Crush Again!",primaryColor:"rgba(255, 149, 0, 0.5)",borderColor:"rgba(255, 149, 0, 0.5)",buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:"#FF9500",scoreFormatter:o=>""+o}),[B,v,E]),V=o.useMemo(()=>({gameId:a.CANDY_CRUSH,settings:t||i,onSettingsChange:x}),[t,x]),k=t?.offset??0,q=o.useMemo(()=>({gridContainer:{...b.gridContainer,paddingTop:k}}),[k]);return h(m,{children:p(r,{style:b.container,children:[h(r,{style:q.gridContainer,children:h(f,{})}),h(d,{offset:k}),h(e,{...O}),h(n,{...U}),h(s,{...V})]})})});CandyCrush.displayName="CandyCrush";const b=t.create({container:{flex:1},gridContainer:{flex:1,justifyContent:"center",alignItems:"center"},scoreboardContainer:{position:"absolute",top:0,left:0,right:0,zIndex:10}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","GameControlButton","GameOverModal","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","GameBackground","GameGrid","ScoreBoard","useCandyCrushStore","useScore","useIsPlaying","useIsGameOver","CANDY_CRUSH_COLORS","jsx","_jsx","jsxs","_jsxs","CandyCrush","memo","settings","onSettingsChange","onEndGame","score","isPlaying","isGameOver","gameReportedRef","useRef","reportGameEnd","useCallback","status","current","toString","startGame","state","stopGame","resetGame","initializeGame","updateSettings","useEffect","enableSounds","enableHaptics","difficulty","handleStartGame","handleResetGame","handleStopGame","gameControlButtonProps","useMemo","gameOver","onStartGame","onStopGame","
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","GameControlButton","GameOverModal","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","GameBackground","GameGrid","ScoreBoard","useCandyCrushStore","useScore","useIsPlaying","useIsGameOver","CANDY_CRUSH_COLORS","jsx","_jsx","jsxs","_jsxs","CandyCrush","memo","settings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","score","isPlaying","isGameOver","gameReportedRef","useRef","reportGameEnd","useCallback","status","current","toString","startGame","state","stopGame","resetGame","initializeGame","updateSettings","useEffect","enableSounds","enableHaptics","difficulty","handleStartGame","handleResetGame","handleStopGame","gameControlButtonProps","useMemo","gameOver","onStartGame","onStopGame","startButtonSubtext","buttonColor","BUTTON_PRIMARY","buttonBorderColor","BUTTON_SECONDARY","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonTextColor","scoreFormatter","s","gameSettingsModalProps","gameId","CANDY_CRUSH","offset","dynamicStyles","gridContainer","styles","paddingTop","children","style","container","displayName","create","flex","justifyContent","alignItems","scoreboardContainer","position","top","left","right","zIndex"],"sourceRoot":"../../../../src","sources":["games/candy-crush/CandyCrush.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export const CANDY_CRUSH_GAME_CONFIG={GRID_SIZE:8,CANDY_TYPES:6,MIN_MATCH:3,ANIMATION_DURATION:300,FALL_DURATION:400,SWAP_DURATION:200,POINTS_PER_CANDY:10,COMBO_MULTIPLIER:1.5,SPECIAL_CANDY_THRESHOLD:4};export const CANDY_COLORS=["#FF3B30","#34C759","#007AFF","#FFCC00","#
|
|
1
|
+
"use strict";export const CANDY_CRUSH_GAME_CONFIG={GRID_SIZE:8,CANDY_TYPES:6,MIN_MATCH:3,ANIMATION_DURATION:300,FALL_DURATION:400,SWAP_DURATION:200,POINTS_PER_CANDY:10,COMBO_MULTIPLIER:1.5,SPECIAL_CANDY_THRESHOLD:4};export const CANDY_COLORS=["#FF3B30","#34C759","#007AFF","#FFCC00","#00D4FF","#FFFFFF"];export const CANDY_TYPES={NORMAL:"normal",STRIPED_HORIZONTAL:"striped_h",STRIPED_VERTICAL:"striped_v",WRAPPED:"wrapped",COLOR_BOMB:"color_bomb"};export const CANDY_CRUSH_COLORS={BACKGROUND:"#2C3E50",GRID_BACKGROUND:"rgba(255, 149, 0, 0.1)",GRID_BORDER:"rgba(255, 149, 0, 0.3)",SELECTED:"rgba(255, 149, 0, 0.5)",BUTTON_PRIMARY:"#FF9500",BUTTON_SECONDARY:"#E68600",SCORE_BACKGROUND:"rgba(255, 149, 0, 0.4)",SCORE_TEXT:"#FFFFFF",TIME_GOOD:"#FF9500",TIME_WARNING:"#FF9500",TIME_CRITICAL:"#FF9500",COMBO_TEXT:"#FF9500",MODAL_PRIMARY:"rgba(255, 149, 0, 0.95)",MODAL_BORDER:"rgba(230, 134, 0, 0.9)",MODAL_BUTTON:"#FF9500",MODAL_BUTTON_BORDER:"#E68600"};export const DIFFICULTY_CONFIG={easy:{gameDuration:60,candyTypes:4},medium:{gameDuration:180,candyTypes:5},hard:{gameDuration:300,candyTypes:6}};export const CANDY_CRUSH_SOUNDS={MATCH:{text:"Pop!",pitch:1.2,rate:1.5},SWAP:{text:"Swap",pitch:1,rate:1.8},SPECIAL:{text:"Boom!",pitch:1.5,rate:2},COMBO:{text:"Combo!",pitch:1.8,rate:2.2},WIN:{text:"Victory!",pitch:1.6,rate:1.8},LOSE:{text:"Game Over",pitch:.8,rate:1.2}};export const CANDY_CRUSH_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#FF9500",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(255, 149, 0, 0.15)",sectionTitleColor:"#FF9500",buttonSelectedColor:"#FF9500",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(255, 149, 0, 0.3)",switchTrackColorTrue:"#FF9500",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const CANDY_CRUSH_DIFFICULTY_DESCRIPTIONS={easy:"1 minute \u2022 4 candy types",medium:"3 minutes \u2022 5 candy types",hard:"5 minutes \u2022 6 candy types"};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{create as e}from"zustand";import{subscribeWithSelector as s}from"zustand/middleware";import{CandyCrushService as t}from"./CandyCrushService.js";import{CANDY_CRUSH_GAME_CONFIG as n,DIFFICULTY_CONFIG as
|
|
1
|
+
"use strict";import{create as e}from"zustand";import{subscribeWithSelector as s}from"zustand/middleware";import{CandyCrushService as t}from"./CandyCrushService.js";import{CANDY_CRUSH_GAME_CONFIG as n,DIFFICULTY_CONFIG as r,CANDY_CRUSH_SOUNDS as o}from"./CandyCrushConstants.js";import{immerMiddleware as a}from"../../services/UtilsService.js";import{playSound as c}from"../../services/SoundsService.js";import{playHaptic as i,HapticType as u}from"../../services/HapticsService.js";const l=new t;export const useCandyCrushStore=e()(s(a((e,s)=>({grid:l.createGrid(),score:0,timeRemaining:180,gameDuration:180,isPlaying:!1,isGameOver:!1,selectedCandy:null,isProcessing:!1,difficulty:"easy",candyTypes:4,enableSounds:!0,enableHaptics:!0,comboCount:0,gameTimer:null,matchedCandyIds:new Set,fallingCandyIds:new Set,clearingCells:[],startGame:()=>{const t=s();t.gameTimer&&clearInterval(t.gameTimer),c(o.SWAP,t.enableSounds),i(u.MEDIUM,t.enableHaptics);const n=setInterval(()=>{const t=s();t.timeRemaining>0&&t.isPlaying&&e(e=>{e.timeRemaining--,30===e.timeRemaining&&(c(o.SPECIAL,e.enableSounds),i(u.MEDIUM,e.enableHaptics)),10===e.timeRemaining&&(c(o.SPECIAL,e.enableSounds),i(u.HEAVY,e.enableHaptics)),e.timeRemaining>0||(e.isGameOver=!0,e.isPlaying=!1,e.gameTimer&&(clearInterval(e.gameTimer),e.gameTimer=null),c(o.LOSE,e.enableSounds),i(u.HEAVY,e.enableHaptics))})},1e3);e(e=>{e.isPlaying=!0,e.gameTimer=n})},stopGame:()=>{const e=s();e.gameTimer&&clearInterval(e.gameTimer),c(o.LOSE,e.enableSounds),i(u.MEDIUM,e.enableHaptics),e.initializeGame(e.difficulty)},resetGame:()=>{const e=s();e.initializeGame(e.difficulty),e.startGame()},initializeGame:(t="easy")=>{const n=s();n.gameTimer&&clearInterval(n.gameTimer),e(e=>{const s=r[t];l.resetIdCounter(),e.grid=l.initializeGrid(s.candyTypes),e.score=0,e.timeRemaining=s.gameDuration,e.gameDuration=s.gameDuration,e.isPlaying=!1,e.isGameOver=!1,e.selectedCandy=null,e.isProcessing=!1,e.difficulty=t,e.candyTypes=s.candyTypes,e.comboCount=0,e.gameTimer=null,e.matchedCandyIds=new Set,e.fallingCandyIds=new Set,e.clearingCells=[]})},selectCandy:t=>{const r=s();r.isProcessing||!r.isPlaying||r.isGameOver||e(e=>{if(e.selectedCandy)if(e.selectedCandy.id===t.id)e.selectedCandy=null;else if(l.canSwap(e.selectedCandy,t)){const r=e.selectedCandy,a=t;l.swapCandies(e.grid,r,a),new Set([r.row,a.row]).forEach(s=>{e.grid[s]&&(e.grid[s]=[...e.grid[s]])}),l.findMatches(e.grid).hasMatches?(e.selectedCandy=null,e.isProcessing=!0,c(o.SWAP,e.enableSounds),i(u.MEDIUM,e.enableHaptics),setTimeout(()=>{s().processMatches()},n.SWAP_DURATION)):(l.swapCandies(e.grid,r,a),e.selectedCandy=null,new Set([r.row,a.row]).forEach(s=>{e.grid[s]&&(e.grid[s]=[...e.grid[s]])}),c(o.SWAP,e.enableSounds),i(u.LIGHT,e.enableHaptics))}else e.selectedCandy=t,c(o.SWAP,e.enableSounds),i(u.LIGHT,e.enableHaptics);else e.selectedCandy=t,c(o.SWAP,e.enableSounds),i(u.LIGHT,e.enableHaptics)})},processMatches:async()=>{let t=!0,r=0;for(;t;){const a=s(),C=l.findMatches(a.grid);if(!C.hasMatches){t=!1;break}r++;const d=C.score,m=r>1?Math.pow(n.COMBO_MULTIPLIER,r-1):1,S=Math.floor(d*m);e(e=>{e.score+=S,e.comboCount=r}),r>1?(c(o.COMBO,a.enableSounds),i(u.HEAVY,a.enableHaptics)):(c(o.MATCH,a.enableSounds),i(u.MEDIUM,a.enableHaptics)),e(e=>{e.matchedCandyIds=new Set(C.matches.map(e=>e.id)),e.clearingCells=C.matches.map(e=>({row:e.row,col:e.col,color:l.getCandyColor(e.type)}))}),await new Promise(e=>setTimeout(e,n.ANIMATION_DURATION)),e(e=>{e.matchedCandyIds=new Set;const s=new Set;C.matches.forEach(e=>s.add(e.row));const t=e.grid.map(e=>e.map(e=>e?.id).join(","));l.removeMatches(e.grid,C.matches),l.applyGravity(e.grid),l.fillEmptySpaces(e.grid,a.candyTypes);const n=new Set;e.grid.forEach(e=>{e.forEach(e=>{e&&e.isFalling&&n.add(e.id)})}),e.fallingCandyIds=n,e.grid.forEach((s,n)=>{const r=s.map(e=>e?.id).join(",");t[n]!==r&&(e.grid[n]=[...s])})}),await new Promise(e=>setTimeout(e,n.FALL_DURATION))}e(e=>{e.isProcessing=!1,e.comboCount=0,e.matchedCandyIds=new Set,e.fallingCandyIds=new Set})},updateSettings:(s,t)=>{e(e=>{e.enableSounds=s,e.enableHaptics=t})},clearClearingCells:()=>{e(e=>{e.clearingCells=[]})}}))));export const useGrid=()=>useCandyCrushStore(e=>e.grid);export const useScore=()=>useCandyCrushStore(e=>e.score);export const useTimeRemaining=()=>useCandyCrushStore(e=>e.timeRemaining);export const useGameDuration=()=>useCandyCrushStore(e=>e.gameDuration);export const useIsPlaying=()=>useCandyCrushStore(e=>e.isPlaying);export const useIsGameOver=()=>useCandyCrushStore(e=>e.isGameOver);export const useSelectedCandy=()=>useCandyCrushStore(e=>e.selectedCandy);export const useComboCount=()=>useCandyCrushStore(e=>e.comboCount);export const useMatchedCandyIds=()=>useCandyCrushStore(e=>e.matchedCandyIds);export const useFallingCandyIds=()=>useCandyCrushStore(e=>e.fallingCandyIds);export const useClearingCells=()=>useCandyCrushStore(e=>e.clearingCells);
|