react-native-games 1.4.0 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/balloon-blaster/components/index.js +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/BikeRacingConstants.js +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/bike-racing/components/index.js +1 -1
- package/lib/module/games/bike-racing/index.js +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/block-blast/components/ScoreBoard.js +1 -1
- package/lib/module/games/block-blast/components/index.js +1 -1
- package/lib/module/games/block-blast/index.js +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/bubble-shooter/components/index.js +1 -1
- package/lib/module/games/bubble-shooter/index.js +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/CandyCrushService.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/GameBackground.js +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/ScoreBoard.js +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/candy-crush/index.js +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/CarRacingConstants.js +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/car-racing/components/index.js +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/ColorsSortService.js +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/colors-sort/components/index.js +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/GameArea.js +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/dino-jump/components/StarSprite.js +1 -1
- package/lib/module/games/dino-jump/components/index.js +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/flappy-bird/components/index.js +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/FruitMergerService.js +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-merger/components/ScoreBoard.js +1 -1
- package/lib/module/games/fruit-merger/components/index.js +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/fruit-ninja/components/ScoreBoard.js +1 -1
- package/lib/module/games/fruit-ninja/components/index.js +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/Game2048Constants.js +1 -1
- package/lib/module/games/game-2048/Game2048Service.js +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/game-2048/components/index.js +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/SkiaPipeComponent.js +1 -1
- package/lib/module/games/maze-runner/components/StaticGameBackground.js +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/maze-runner/components/index.js +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/perfect-circle/components/ScoreBoard.js +1 -1
- package/lib/module/games/perfect-circle/index.js +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/popit-fidget/components/index.js +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/SlidingNumbersConstants.js +1 -1
- package/lib/module/games/sliding-numbers/SlidingNumbersService.js +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/sliding-numbers/components/index.js +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/SnakeConstants.js +1 -1
- package/lib/module/games/snake/SnakeService.js +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/snake/components/ScoreBoard.js +1 -1
- package/lib/module/games/snake/components/index.js +1 -1
- package/lib/module/games/snake/index.js +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/SpaceFighterService.js +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/AsteroidComponent.js +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/space-fighter/components/SpacecraftPath.js +1 -1
- package/lib/module/games/space-fighter/components/index.js +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/WhackAMoleService.js +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/GameGrid.js +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/games/whack-a-mole/components/index.js +1 -1
- package/lib/module/helpers/AbstractFruits.js +1 -0
- package/lib/module/helpers/AbstractFruits.js.map +1 -0
- package/lib/module/helpers/AnimationFrame.js +1 -1
- package/lib/module/helpers/AnimationTracker.js +1 -1
- package/lib/module/helpers/ErrorHandler.js +1 -1
- package/lib/module/helpers/GameControlButton.js +1 -1
- package/lib/module/helpers/GameControlButton.js.map +1 -1
- package/lib/module/helpers/GameOverModal.js +1 -1
- package/lib/module/helpers/GameSettingsModal.js +1 -1
- package/lib/module/helpers/ParticleBlast.js +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/index.js +1 -1
- package/lib/module/services/GamesConstants.js +1 -1
- package/lib/module/services/GamesService.js +1 -1
- package/lib/module/services/GamesService.js.map +1 -1
- package/lib/module/services/HapticsService.js +1 -1
- package/lib/module/services/ScoringService.js +1 -1
- package/lib/module/services/SoundsService.js +1 -1
- package/lib/module/services/UtilsService.js +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 +7 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import e from"react";import{View as r,StyleSheet as o}from"react-native";import{GestureHandlerRootView as t}from"react-native-gesture-handler";import{GameControlButton as n,GameOverModal as i,GameSettingsModal as s}from"../../helpers/index.js";import{DEFAULT_GAME_SETTINGS as c,GAME_IDS as a}from"../../services/UtilsService.js";import{playSound as f,GAME_SOUNDS as m}from"../../services/SoundsService.js";import{playHaptic as l,HapticType as d}from"../../services/HapticsService.js";import{usePerfectCircleStore as p,useAccuracy as u,useGameState as g}from"./PerfectCircleStore.js";import{PerfectCircleService as b}from"./PerfectCircleService.js";import{PERFECT_CIRCLE_COLORS as C,getDifficultySettings as S,ACCURACY_LEVELS as h}from"./PerfectCircleConstants.js";import{GameBackground as j}from"./components/GameBackground.js";import{ScoreBoard as v}from"./components/ScoreBoard.js";import{DrawingCanvas as y}from"./components/DrawingCanvas.js";import{jsx as x,jsxs as P}from"react/jsx-runtime";const w=({settings:o=c,onSettingsChange:w,onEndGame:B,onShare:T,onShowLeaderboard:G})=>{const{difficulty:O,soundEnabled:A,hapticEnabled:D,offset:I}=e.useMemo(()=>({difficulty:o?.difficulty||"medium",soundEnabled:o?.enableSounds??!0,hapticEnabled:o?.enableHaptics??!0,offset:o?.offset??0}),[o?.difficulty,o?.enableSounds,o?.enableHaptics,o?.offset]),{isPlaying:L,gameOver:N,gameWon:U}=g(),$=u(),k=e.useRef(!1),z=e.useCallback(e=>{B&&!k.current&&(B({status:e,score:$.toFixed(2)}),k.current=!0)},[B,$]),H=e.useCallback(()=>p.getState().resetGame(),[]),Q=e.useMemo(()=>new b,[]),R=e.useMemo(()=>S(O),[O]),V=e.useCallback(e=>{e<R.minAccuracy?(f(m.PERFECT_CIRCLE.FAIL,A),l(d.HEAVY,D)):(f(m.PERFECT_CIRCLE.SUCCESS,A),l(d.SUCCESS,D))},[A,D,R.minAccuracy]);e.useEffect(()=>{Q.setCallbacks(V)},[Q,V]),e.useEffect(()=>{!N&&!U||k.current||z(U?"win":"lose"),N||U||(k.current=!1)},[N,U,z]),e.useEffect(()=>()=>{Q.cleanup(),p.getState().resetGame()},[Q]);const W=e.useCallback(()=>{k.current=!1,Q.startGame(),f(m.PERFECT_CIRCLE.START,A),l(d.SUCCESS,D)},[Q,A,D]),q=e.useCallback(()=>{z("cancel"),H(),Q.resetGame()},[H,Q,z]),F=e.useCallback(()=>{H(),Q.resetGame()},[H,Q]),J=e.useCallback(()=>{F()},[F]),K=e.useMemo(()=>{for(const e of Object.values(h))if($>=e.min)return e;return h.POOR},[$]),M=e.useMemo(()=>({isPlaying:L,gameOver:N,onStartGame:W,onStopGame:q,onShare:T,onShowLeaderboard:G,startButtonSubtext:"Draw the perfect circle!",buttonColor:C.UI,buttonBorderColor:C.UI}),[L,N,W,q,T,G]),X=e.useMemo(()=>({isVisible:N,score:$,onPlayAgain:J,buttonText:"Try Again",primaryColor:"rgba(0, 212, 255, 0.85)",borderColor:C.UI,buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:C.UI,title:U?`${K.emoji} ${K.label}`:"\ud83d\ude14 NOT QUITE!",message:U?$+"% accuracy - Amazing circle!":$+"% accuracy - Need >50% to win"}),[N,$,J,U,K]);return x(r,{style:E.container,children:x(t,{style:E.gestureRoot,children:P(j,{offset:I,children:[x(v,{offset:I}),x(y,{gameService:Q,offset:I}),x(n,{...M}),x(i,{...X}),x(s,{gameId:a.PERFECT_CIRCLE,settings:{...c,...o},onSettingsChange:w})]})})})},E=o.create({container:{flex:1},gestureRoot:{flex:1}}),B=(e,r)=>e.settings?.difficulty===r.settings?.difficulty&&e.settings?.enableSounds===r.settings?.enableSounds&&e.settings?.enableHaptics===r.settings?.enableHaptics&&e.settings?.offset===r.settings?.offset&&e.settings?.isVisible===r.settings?.isVisible&&e.onSettingsChange===r.onSettingsChange;export const PerfectCircle=e.memo(w,B);PerfectCircle.displayName="PerfectCircle";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","GestureHandlerRootView","GameControlButton","GameOverModal","GameSettingsModal","DEFAULT_GAME_SETTINGS","GAME_IDS","playSound","GAME_SOUNDS","playHaptic","HapticType","usePerfectCircleStore","
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","GestureHandlerRootView","GameControlButton","GameOverModal","GameSettingsModal","DEFAULT_GAME_SETTINGS","GAME_IDS","playSound","GAME_SOUNDS","playHaptic","HapticType","usePerfectCircleStore","useAccuracy","useGameState","PerfectCircleService","PERFECT_CIRCLE_COLORS","getDifficultySettings","ACCURACY_LEVELS","GameBackground","ScoreBoard","DrawingCanvas","jsx","_jsx","jsxs","_jsxs","PerfectCircleComponent","settings","externalSettings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","difficulty","soundEnabled","hapticEnabled","offset","useMemo","enableSounds","enableHaptics","isPlaying","gameOver","gameWon","accuracy","gameReportedRef","useRef","reportGameEnd","useCallback","status","current","score","toFixed","resetGame","getState","gameService","difficultySettings","handleAccuracyCalculated","calculatedAccuracy","minAccuracy","PERFECT_CIRCLE","SUCCESS","FAIL","HEAVY","useEffect","setCallbacks","cleanup","handleStartGame","startGame","START","handleStopGame","handleResetGame","handlePlayAgain","accuracyLevel","level","Object","values","min","POOR","gameControlButtonProps","onStartGame","onStopGame","startButtonSubtext","buttonColor","UI","buttonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonTextColor","title","emoji","label","message","style","styles","container","children","gestureRoot","gameId","create","flex","arePropsEqual","prevProps","nextProps","PerfectCircle","memo","displayName"],"sourceRoot":"../../../../src","sources":["games/perfect-circle/PerfectCircle.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export const PERFECT_CIRCLE_DIFFICULTY_CONFIG
|
|
1
|
+
"use strict";export const PERFECT_CIRCLE_DIFFICULTY_CONFIG={easy:{minAccuracy:70},medium:{minAccuracy:80},hard:{minAccuracy:90}};export const getDifficultySettings=e=>PERFECT_CIRCLE_DIFFICULTY_CONFIG[e];export const DEFAULT_PERFECT_CIRCLE_SETTINGS={difficulty:"medium",soundEnabled:!0,hapticEnabled:!0,minAccuracy:PERFECT_CIRCLE_DIFFICULTY_CONFIG.medium.minAccuracy};export const PERFECT_CIRCLE_GAME_CONFIG={MIN_POINTS:20,SAMPLE_POINTS:100,STROKE_WIDTH:4,GUIDE_CIRCLE_OPACITY:.15,GUIDE_CIRCLE_RADIUS_OFFSET:20};export const PERFECT_CIRCLE_COLORS={BACKGROUND:"#1a1a2e",CANVAS:"#16213e",STROKE:"#00d4ff",GUIDE:"#ffffff",SUCCESS:"#4ecca3",FAIL:"#ff6b6b",UI:"#00d4ff",TEXT:"#ffffff"};export const PERFECT_CIRCLE_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#00d4ff",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(0, 212, 255, 0.15)",sectionTitleColor:"#00d4ff",buttonSelectedColor:"#00d4ff",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(0, 212, 255, 0.3)",switchTrackColorTrue:"#00d4ff",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const PERFECT_CIRCLE_DIFFICULTY_DESCRIPTIONS={easy:"70% accuracy needed to win",medium:"80% accuracy needed to win",hard:"90% accuracy needed to win"};export const ACCURACY_LEVELS={PERFECT:{min:95,label:"PERFECT!",emoji:"\ud83c\udfaf"},EXCELLENT:{min:90,label:"EXCELLENT!",emoji:"\u2b50"},GREAT:{min:85,label:"GREAT!",emoji:"\u2728"},GOOD:{min:80,label:"GOOD!",emoji:"\ud83d\udc4d"},NICE:{min:70,label:"NICE TRY!",emoji:"\ud83d\udc4c"},POOR:{min:0,label:"KEEP TRYING!",emoji:"\ud83d\udcaa"}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PERFECT_CIRCLE_DIFFICULTY_CONFIG","easy","minAccuracy","medium","hard","getDifficultySettings","difficulty","DEFAULT_PERFECT_CIRCLE_SETTINGS","soundEnabled","hapticEnabled","PERFECT_CIRCLE_GAME_CONFIG","MIN_POINTS","SAMPLE_POINTS","STROKE_WIDTH","GUIDE_CIRCLE_OPACITY","PERFECT_CIRCLE_COLORS","BACKGROUND","CANVAS","STROKE","GUIDE","SUCCESS","FAIL","UI","TEXT","PERFECT_CIRCLE_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","PERFECT_CIRCLE_DIFFICULTY_DESCRIPTIONS","ACCURACY_LEVELS","PERFECT","min","label","emoji","EXCELLENT","GREAT","GOOD","NICE","POOR"],"sourceRoot":"../../../../src","sources":["games/perfect-circle/PerfectCircleConstants.ts"],"mappings":";;AAEA;;AAQA;AACA,OAAO,MAAMA,gCAAgC,GAAG;EAC9CC,IAAI,EAAE;IACJC,WAAW,EAAE,EAAE,CAAE;EACnB,CAAC;EACDC,MAAM,EAAE;IACND,WAAW,EAAE,EAAE,CAAE;EACnB,CAAC;EACDE,IAAI,EAAE;IACJF,WAAW,EAAE,EAAE,CAAE;EACnB;AACF,CAAU;;AAEV;AACA,OAAO,MAAMG,qBAAqB,GAAIC,UAAsC,IAAK;EAC/E,OAAON,gCAAgC,CAACM,UAAU,CAAC;AACrD,CAAC;;AAED;AACA,OAAO,MAAMC,+BAAsD,GAAG;EACpED,UAAU,EAAE,QAAQ;EACpBE,YAAY,EAAE,IAAI;EAClBC,aAAa,EAAE,IAAI;EACnBP,WAAW,EAAEF,gCAAgC,CAACG,MAAM,CAACD;AACvD,CAAC;;AAED;AACA,OAAO,MAAMQ,0BAA0B,GAAG;EACxCC,UAAU,EAAE,EAAE;EAAE;EAChBC,aAAa,EAAE,GAAG;EAAE;EACpBC,YAAY,EAAE,CAAC;EAAE;EACjBC,oBAAoB,EAAE,IAAI,CAAE;
|
|
1
|
+
{"version":3,"names":["PERFECT_CIRCLE_DIFFICULTY_CONFIG","easy","minAccuracy","medium","hard","getDifficultySettings","difficulty","DEFAULT_PERFECT_CIRCLE_SETTINGS","soundEnabled","hapticEnabled","PERFECT_CIRCLE_GAME_CONFIG","MIN_POINTS","SAMPLE_POINTS","STROKE_WIDTH","GUIDE_CIRCLE_OPACITY","GUIDE_CIRCLE_RADIUS_OFFSET","PERFECT_CIRCLE_COLORS","BACKGROUND","CANVAS","STROKE","GUIDE","SUCCESS","FAIL","UI","TEXT","PERFECT_CIRCLE_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","PERFECT_CIRCLE_DIFFICULTY_DESCRIPTIONS","ACCURACY_LEVELS","PERFECT","min","label","emoji","EXCELLENT","GREAT","GOOD","NICE","POOR"],"sourceRoot":"../../../../src","sources":["games/perfect-circle/PerfectCircleConstants.ts"],"mappings":";;AAEA;;AAQA;AACA,OAAO,MAAMA,gCAAgC,GAAG;EAC9CC,IAAI,EAAE;IACJC,WAAW,EAAE,EAAE,CAAE;EACnB,CAAC;EACDC,MAAM,EAAE;IACND,WAAW,EAAE,EAAE,CAAE;EACnB,CAAC;EACDE,IAAI,EAAE;IACJF,WAAW,EAAE,EAAE,CAAE;EACnB;AACF,CAAU;;AAEV;AACA,OAAO,MAAMG,qBAAqB,GAAIC,UAAsC,IAAK;EAC/E,OAAON,gCAAgC,CAACM,UAAU,CAAC;AACrD,CAAC;;AAED;AACA,OAAO,MAAMC,+BAAsD,GAAG;EACpED,UAAU,EAAE,QAAQ;EACpBE,YAAY,EAAE,IAAI;EAClBC,aAAa,EAAE,IAAI;EACnBP,WAAW,EAAEF,gCAAgC,CAACG,MAAM,CAACD;AACvD,CAAC;;AAED;AACA,OAAO,MAAMQ,0BAA0B,GAAG;EACxCC,UAAU,EAAE,EAAE;EAAE;EAChBC,aAAa,EAAE,GAAG;EAAE;EACpBC,YAAY,EAAE,CAAC;EAAE;EACjBC,oBAAoB,EAAE,IAAI;EAAE;EAC5BC,0BAA0B,EAAE,EAAE,CAAE;AAClC,CAAU;;AAEV;AACA,OAAO,MAAMC,qBAAqB,GAAG;EACnCC,UAAU,EAAE,SAAS;EACrBC,MAAM,EAAE,SAAS;EACjBC,MAAM,EAAE,SAAS;EACjBC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,EAAE,EAAE,SAAS;EACbC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA,OAAO,MAAMC,oBAAuC,GAAG;EACrDC,eAAe,EAAE,oBAAoB;EACrCC,qBAAqB,EAAE,SAAS;EAChCC,eAAe,EAAE,SAAS;EAC1BC,sBAAsB,EAAE,yBAAyB;EACjDC,iBAAiB,EAAE,SAAS;EAC5BC,mBAAmB,EAAE,SAAS;EAC9BC,qBAAqB,EAAE,0BAA0B;EACjDC,uBAAuB,EAAE,SAAS;EAClCC,yBAAyB,EAAE,0BAA0B;EACrDC,qBAAqB,EAAE,wBAAwB;EAC/CC,oBAAoB,EAAE,SAAS;EAC/BC,gBAAgB,EAAE,SAAS;EAC3BC,aAAa,EAAE;AACjB,CAAC;;AAED;AACA,OAAO,MAAMC,sCAAsC,GAAG;EACpDtC,IAAI,EAAE,4BAA4B;EAClCE,MAAM,EAAE,4BAA4B;EACpCC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA,OAAO,MAAMoC,eAAe,GAAG;EAC7BC,OAAO,EAAE;IAAEC,GAAG,EAAE,EAAE;IAAEC,KAAK,EAAE,UAAU;IAAEC,KAAK,EAAE;EAAK,CAAC;EACpDC,SAAS,EAAE;IAAEH,GAAG,EAAE,EAAE;IAAEC,KAAK,EAAE,YAAY;IAAEC,KAAK,EAAE;EAAI,CAAC;EACvDE,KAAK,EAAE;IAAEJ,GAAG,EAAE,EAAE;IAAEC,KAAK,EAAE,QAAQ;IAAEC,KAAK,EAAE;EAAI,CAAC;EAC/CG,IAAI,EAAE;IAAEL,GAAG,EAAE,EAAE;IAAEC,KAAK,EAAE,OAAO;IAAEC,KAAK,EAAE;EAAK,CAAC;EAC9CI,IAAI,EAAE;IAAEN,GAAG,EAAE,EAAE;IAAEC,KAAK,EAAE,WAAW;IAAEC,KAAK,EAAE;EAAK,CAAC;EAClDK,IAAI,EAAE;IAAEP,GAAG,EAAE,CAAC;IAAEC,KAAK,EAAE,cAAc;IAAEC,KAAK,EAAE;EAAK;AACrD,CAAU","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{usePerfectCircleStore}from
|
|
1
|
+
"use strict";import{Dimensions as t}from"react-native";import{usePerfectCircleStore as r}from"./PerfectCircleStore.js";import{PERFECT_CIRCLE_GAME_CONFIG as e}from"./PerfectCircleConstants.js";const{width:c,height:n}=t.get("window"),o=c/2-e.GUIDE_CIRCLE_RADIUS_OFFSET;export class PerfectCircleService{constructor(){}setCallbacks(t){this.onAccuracyCalculated=t}startGame(){r.getState().startGame()}stopGame(){r.getState().stopGame()}resetGame(){r.getState().resetGame()}cleanup(){}fitCircle(t){const r=t.length;let e=0,c=0,n=0,o=0,a=0,s=0,i=0,h=0,f=0;for(const r of t){const t=r.x,u=r.y,l=t*t,M=u*u;e+=t,c+=u,n+=l,o+=M,a+=t*u,s+=l*t,i+=M*u,h+=l*u,f+=t*M}const u=r*n-e*e,l=r*a-e*c,M=r*o-c*c,m=.5*(r*s+r*f-e*n-e*o),d=.5*(r*h+r*i-c*n-c*o),C=u*M-l*l;if(1e-10>Math.abs(C)){const n=e/r,o=c/r;let a=0;for(const r of t)a+=Math.sqrt((r.x-n)**2+(r.y-o)**2);return{centerX:n,centerY:o,radius:a/r}}const v=(m*M-l*d)/C,p=(u*d-l*m)/C;let g=0;for(const r of t)g+=Math.sqrt((r.x-v)**2+(r.y-p)**2);return{centerX:v,centerY:p,radius:g/r}}calculateAngularCoverage(t,r,e){if(2>t.length)return 0;const c=t.map(t=>Math.atan2(t.y-e,t.x-r));let n=0;for(let t=1;t<c.length;t++){const r=c[t-1],e=c[t];if(void 0===r||void 0===e)continue;let o=e-r;for(;o>Math.PI;)o-=2*Math.PI;for(;-Math.PI>o;)o+=2*Math.PI;n+=Math.abs(o)}return Math.min(n/(2*Math.PI),1)}calculateCircleAccuracy(t,r){if(t.length<e.MIN_POINTS)return 0;const n=c/2,a=r,{centerX:s,centerY:i,radius:h}=this.fitCircle(t);if(30>h)return 0;const f=t[0],u=t[t.length-1];if(!f||!u)return 0;const l=Math.sqrt((u.x-f.x)**2+(u.y-f.y)**2),M=.15*o;if(l>M)return 0;const m=this.calculateAngularCoverage(t,s,i);if(.85>m)return 0;const d=100*Math.exp(-Math.abs(h-o)/o*3),C=100*Math.exp(-Math.sqrt((s-n)**2+(i-a)**2)/o*3);let v=0;for(const r of t){const t=Math.sqrt((r.x-s)**2+(r.y-i)**2);v+=Math.abs(t-h)/h}const p=v/t.length;return Math.round(Math.min(100,Math.max(0,.35*d+.25*C+30*Math.exp(3*-p)+5*(1-l/M)+33.33*(m-.85))))}evaluateDrawing(t=0){const c=r.getState(),o=c.drawnPoints;if(o.length<e.MIN_POINTS)return c.setAccuracy(0),void c.setGameResult(!1);const a=(n-t+100-350)/2,s=this.calculateCircleAccuracy(o,a);c.setAccuracy(s),this.onAccuracyCalculated?.(s);const i=s>50;c.setGameResult(i)}finishDrawing(t=0){this.evaluateDrawing(t)}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["usePerfectCircleStore","PERFECT_CIRCLE_GAME_CONFIG","PerfectCircleService","constructor","setCallbacks","onAccuracyCalculated","startGame","store","getState","stopGame","resetGame","cleanup","
|
|
1
|
+
{"version":3,"names":["Dimensions","usePerfectCircleStore","PERFECT_CIRCLE_GAME_CONFIG","width","screenWidth","height","screenHeight","get","GUIDE_CIRCLE_RADIUS","GUIDE_CIRCLE_RADIUS_OFFSET","PerfectCircleService","constructor","setCallbacks","onAccuracyCalculated","startGame","store","getState","stopGame","resetGame","cleanup","fitCircle","points","n","length","sumX","sumY","sumX2","sumY2","sumXY","sumX3","sumY3","sumX2Y","sumXY2","p","x","y","x2","y2","A","B","C","D","E","denom","Math","abs","centerX","centerY","radiusSum","sqrt","radius","calculateAngularCoverage","angles","map","atan2","totalAngle","i","prevAngle","currAngle","undefined","diff","PI","min","calculateCircleAccuracy","guideCircleCenterY","MIN_POINTS","guideCenterX","guideCenterY","start","end","closureDistance","maxAllowedGap","coverage","radiusDiff","radiusAccuracyScore","exp","centerDiff","centerDiffNormalized","centerAccuracyScore","totalDeviation","dist","deviation","avgDeviation","shapeConsistencyScore","closureBonus","coverageBonus","baseScore","accuracy","round","max","evaluateDrawing","offset","drawnPoints","setAccuracy","setGameResult","canvasHeight","won","finishDrawing"],"sourceRoot":"../../../../src","sources":["games/perfect-circle/PerfectCircleService.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{create}from
|
|
1
|
+
"use strict";import{create as e}from"zustand";import{subscribeWithSelector as r}from"zustand/middleware";import{useShallow as t}from"zustand/react/shallow";import{immerMiddleware as s}from"../../services/UtilsService.js";export const usePerfectCircleStore=e()(r(s(e=>({isPlaying:!1,isDrawing:!1,gameOver:!1,gameWon:!1,accuracy:0,drawnPoints:[],startPoint:null,startGame:()=>{e(e=>{e.isPlaying=!0,e.isDrawing=!1,e.gameOver=!1,e.gameWon=!1,e.accuracy=0,e.drawnPoints=[],e.startPoint=null})},stopGame:()=>{e(e=>{e.isPlaying=!1,e.isDrawing=!1})},resetGame:()=>{e(e=>{e.isPlaying=!1,e.isDrawing=!1,e.gameOver=!1,e.gameWon=!1,e.accuracy=0,e.drawnPoints=[],e.startPoint=null})},startDrawing:r=>{e(e=>{e.isDrawing=!0,e.startPoint=r,e.drawnPoints=[r]})},addPoint:r=>{e(e=>{e.drawnPoints.push(r)})},finishDrawing:()=>{e(e=>{e.isDrawing=!1})},setAccuracy:r=>{e(e=>{e.accuracy=r})},setGameResult:r=>{e(e=>{e.gameOver=!0,e.gameWon=r,e.isPlaying=!1,e.isDrawing=!1})},clearDrawing:()=>{e(e=>{e.drawnPoints=[],e.startPoint=null,e.isDrawing=!1,e.accuracy=0})}}))));export const useIsPlaying=()=>usePerfectCircleStore(e=>e.isPlaying);export const useIsDrawing=()=>usePerfectCircleStore(e=>e.isDrawing);export const useGameOver=()=>usePerfectCircleStore(e=>e.gameOver);export const useGameWon=()=>usePerfectCircleStore(e=>e.gameWon);export const useAccuracy=()=>usePerfectCircleStore(e=>e.accuracy);export const useDrawnPoints=()=>usePerfectCircleStore(e=>e.drawnPoints);export const useGameActions=()=>usePerfectCircleStore(t(e=>({startGame:e.startGame,stopGame:e.stopGame,resetGame:e.resetGame,startDrawing:e.startDrawing,addPoint:e.addPoint,finishDrawing:e.finishDrawing,setAccuracy:e.setAccuracy,setGameResult:e.setGameResult,clearDrawing:e.clearDrawing})));export const useGameState=()=>usePerfectCircleStore(t(e=>({isPlaying:e.isPlaying,gameOver:e.gameOver,gameWon:e.gameWon})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["create","subscribeWithSelector","immerMiddleware","usePerfectCircleStore","set","isPlaying","isDrawing","gameOver","gameWon","accuracy","drawnPoints","startPoint","startGame","draft","stopGame","resetGame","startDrawing","point","addPoint","push","finishDrawing","setAccuracy","setGameResult","won","clearDrawing","useIsPlaying","state","useIsDrawing","useGameOver","useGameWon","useAccuracy","useDrawnPoints"],"sourceRoot":"../../../../src","sources":["games/perfect-circle/PerfectCircleStore.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,SAAS;AAChC,SAASC,qBAAqB,QAAQ,oBAAoB;AAC1D,SAASC,eAAe,QAAQ,gCAA6B;AA+B7D;AACA,OAAO,MAAMC,qBAAqB,
|
|
1
|
+
{"version":3,"names":["create","subscribeWithSelector","useShallow","immerMiddleware","usePerfectCircleStore","set","isPlaying","isDrawing","gameOver","gameWon","accuracy","drawnPoints","startPoint","startGame","draft","stopGame","resetGame","startDrawing","point","addPoint","push","finishDrawing","setAccuracy","setGameResult","won","clearDrawing","useIsPlaying","state","useIsDrawing","useGameOver","useGameWon","useAccuracy","useDrawnPoints","useGameActions","useGameState"],"sourceRoot":"../../../../src","sources":["games/perfect-circle/PerfectCircleStore.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import e from"react";import{View as t,Dimensions as r,StyleSheet as i}from"react-native";import{Canvas as o,Path as n,Skia as s,Circle as c}from"@shopify/react-native-skia";import{Gesture as a,GestureDetector as m}from"react-native-gesture-handler";import{runOnJS as l}from"react-native-reanimated";import{usePerfectCircleStore as f,useDrawnPoints as p,useIsPlaying as u}from"../PerfectCircleStore.js";import{PERFECT_CIRCLE_COLORS as h,PERFECT_CIRCLE_GAME_CONFIG as d}from"../PerfectCircleConstants.js";import{playHaptic as v,HapticType as C}from"../../../services/HapticsService.js";import{playSound as g,GAME_SOUNDS as y}from"../../../services/SoundsService.js";import{jsx as j,jsxs as k}from"react/jsx-runtime";const{width:w,height:x}=r.get("window"),S=w/2-20,D=({gameService:r,offset:i=0})=>{const D=p(),I=u(),P=e.useMemo(()=>{if(0===D.length)return null;const e=s.Path.Make(),t=D[0];if(!t)return null;e.moveTo(t.x,t.y);for(let t=1;t<D.length;t++){const r=D[t];r&&e.lineTo(r.x,r.y)}return e},[D]),W=e.useCallback((e,t)=>{f.getState().startDrawing({x:e,y:t}),v(C.LIGHT,!0)},[]),X=e.useCallback((e,t)=>{f.getState().addPoint({x:e,y:t})},[]),Y=e.useCallback(()=>{f.getState().finishDrawing(),v(C.MEDIUM,!0),g(y.PERFECT_CIRCLE.DRAW_END,!0),r.finishDrawing(i)},[r,i]),H=e.useMemo(()=>a.Pan().onStart(e=>{I&&l(W)(e.x,e.y)}).onUpdate(e=>{I&&l(X)(e.x,e.y)}).onEnd(()=>{I&&l(Y)()}),[I,W,X,Y]),{circleCenterX:J,circleCenterY:q}=e.useMemo(()=>({circleCenterX:w/2,circleCenterY:(x-i+100-350)/2}),[i]);return j(t,{style:[b.container,{top:i+260}],children:j(m,{gesture:H,children:k(o,{style:b.canvas,children:[j(c,{cx:J,cy:q,r:S,color:h.GUIDE,opacity:d.GUIDE_CIRCLE_OPACITY,style:"stroke",strokeWidth:2}),P&&j(n,{path:P,color:h.STROKE,style:"stroke",strokeWidth:d.STROKE_WIDTH,strokeCap:"round",strokeJoin:"round"})]})})})},b=i.create({container:{position:"absolute",left:0,right:0,bottom:250,justifyContent:"center",alignItems:"center"},canvas:{width:w,height:x-350,justifyContent:"center",alignItems:"center"}}),I=(e,t)=>e.offset===t.offset&&e.gameService===t.gameService;export const DrawingCanvas=e.memo(D,I);DrawingCanvas.displayName="DrawingCanvas";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Dimensions","StyleSheet","Canvas","Path","Skia","Circle","Gesture","GestureDetector","runOnJS","usePerfectCircleStore","useDrawnPoints","useIsPlaying","PERFECT_CIRCLE_COLORS","PERFECT_CIRCLE_GAME_CONFIG","playHaptic","HapticType","playSound","GAME_SOUNDS","jsx","_jsx","jsxs","_jsxs","width","height","get","GUIDE_CIRCLE_RADIUS","DrawingCanvasComponent","gameService","offset","drawnPoints","isPlaying","path","useMemo","length","skPath","Make","firstPoint","moveTo","x","y","i","point","lineTo","startDrawingJS","useCallback","getState","startDrawing","LIGHT","addPointJS","addPoint","finishDrawingJS","finishDrawing","MEDIUM","PERFECT_CIRCLE","DRAW_END","panGesture","Pan","onStart","event","onUpdate","onEnd","circleCenterX","circleCenterY","canvasHeight","style","styles","container","top","children","gesture","canvas","cx","cy","r","color","GUIDE","opacity","GUIDE_CIRCLE_OPACITY","strokeWidth","STROKE","STROKE_WIDTH","strokeCap","strokeJoin","create","position","left","right","bottom","justifyContent","alignItems","arePropsEqual","prevProps","nextProps","DrawingCanvas","memo","displayName"],"sourceRoot":"../../../../../src","sources":["games/perfect-circle/components/DrawingCanvas.tsx"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["React","View","Dimensions","StyleSheet","Canvas","Path","Skia","Circle","Gesture","GestureDetector","runOnJS","usePerfectCircleStore","useDrawnPoints","useIsPlaying","PERFECT_CIRCLE_COLORS","PERFECT_CIRCLE_GAME_CONFIG","playHaptic","HapticType","playSound","GAME_SOUNDS","jsx","_jsx","jsxs","_jsxs","width","height","get","GUIDE_CIRCLE_RADIUS","DrawingCanvasComponent","gameService","offset","drawnPoints","isPlaying","path","useMemo","length","skPath","Make","firstPoint","moveTo","x","y","i","point","lineTo","startDrawingJS","useCallback","getState","startDrawing","LIGHT","addPointJS","addPoint","finishDrawingJS","finishDrawing","MEDIUM","PERFECT_CIRCLE","DRAW_END","panGesture","Pan","onStart","event","onUpdate","onEnd","circleCenterX","circleCenterY","canvasHeight","style","styles","container","top","children","gesture","canvas","cx","cy","r","color","GUIDE","opacity","GUIDE_CIRCLE_OPACITY","strokeWidth","STROKE","STROKE_WIDTH","strokeCap","strokeJoin","create","position","left","right","bottom","justifyContent","alignItems","arePropsEqual","prevProps","nextProps","DrawingCanvas","memo","displayName"],"sourceRoot":"../../../../../src","sources":["games/perfect-circle/components/DrawingCanvas.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import r from"react";import{View as t,Dimensions as e,StyleSheet as o}from"react-native";import{Canvas as c,LinearGradient as i,Rect as a,vec as n,Circle as h}from"@shopify/react-native-skia";import{PERFECT_CIRCLE_COLORS as s}from"../PerfectCircleConstants.js";import{jsx as l,Fragment as d,jsxs as y}from"react/jsx-runtime";const{width:g,height:m}=e.get("window"),x=Array.from({length:Math.floor(g/80)},(r,t)=>({key:"grid-v-"+t,x:80*t})),f=Array.from({length:Math.floor(m/80)},(r,t)=>({key:"grid-h-"+t,y:80*t})),k=(()=>{const r=[],t=r=>{const t=43758.5453*Math.sin(12.9898*r+78.233*r);return t-Math.floor(t)};for(let e=0;15>e;e++){const o=t(2*e),c=t(3*e),i=t(5*e),a=t(7*e),n=g/15*e+100*o,h=m/15*e+100*c,l=20+40*i,d=.05+.1*a;r.push({key:"circle-"+e,cx:n,cy:h,r:l,color:`${s.GUIDE}${Math.floor(255*d).toString(16).padStart(2,"0")}`})}return r})(),p=o.create({container:{flex:1},canvas:{position:"absolute",top:0,left:0,right:0,bottom:0,width:g,height:m}}),u=r.memo(()=>l(d,{children:k.map(({key:r,cx:t,cy:e,r:o,color:c})=>l(h,{cx:t,cy:e,r:o,color:c},r))}));u.displayName="DecorativeCircles";const w=r.memo(()=>y(d,{children:[x.map(({key:r,x:t})=>l(a,{x:t,y:0,width:1,height:m,color:"rgba(255, 255, 255, 0.03)"},r)),f.map(({key:r,y:t})=>l(a,{x:0,y:t,width:g,height:1,color:"rgba(255, 255, 255, 0.03)"},r))]}));w.displayName="GridPattern";export const GameBackground=r.memo(({children:r})=>y(t,{style:p.container,children:[y(c,{style:p.canvas,children:[l(a,{x:0,y:0,width:g,height:m,children:l(i,{start:n(0,0),end:n(g,m),colors:[s.BACKGROUND,s.CANVAS,s.BACKGROUND]})}),l(a,{x:0,y:0,width:g,height:m,children:l(i,{start:n(g/2,m/2),end:n(g,m),colors:["rgba(0, 212, 255, 0.1)","transparent","rgba(0, 212, 255, 0.05)"]})}),l(u,{}),l(w,{})]}),r]}));GameBackground.displayName="GameBackground";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Dimensions","Canvas","LinearGradient","Rect","vec","Circle","PERFECT_CIRCLE_COLORS","jsx","_jsx","jsxs","_jsxs","width","height","get","
|
|
1
|
+
{"version":3,"names":["React","View","Dimensions","StyleSheet","Canvas","LinearGradient","Rect","vec","Circle","PERFECT_CIRCLE_COLORS","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","width","height","get","VERTICAL_GRID_DATA","Array","from","length","Math","floor","_","i","key","x","HORIZONTAL_GRID_DATA","y","DECORATIVE_CIRCLES_DATA","circles","circleCount","seededRandom","seed","sin","randX","randY","randSize","randOpacity","size","opacity","push","cx","cy","r","color","GUIDE","toString","padStart","styles","create","container","flex","canvas","position","top","left","right","bottom","DecorativeCircles","memo","children","map","displayName","GridPattern","GameBackground","style","start","end","colors","BACKGROUND","CANVAS"],"sourceRoot":"../../../../../src","sources":["games/perfect-circle/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import r from"react";import{View as e,Text as o,StyleSheet as t}from"react-native";import{useAccuracy as c}from"../PerfectCircleStore.js";import{PERFECT_CIRCLE_COLORS as s}from"../PerfectCircleConstants.js";import{ScoreBoardContainer as i}from"../../../helpers/index.js";import{jsx as n,jsxs as l}from"react/jsx-runtime";export const ScoreBoard=r.memo(({offset:r=0})=>{const t=c();return n(i,{offset:r,backgroundColor:"rgba(0, 212, 255, 0.3)",borderColor:s.UI,children:n(e,{style:a.scoreBoard,children:l(e,{style:a.scoreSection,children:[n(o,{style:a.scoreLabel,children:"Accuracy"}),n(o,{style:[a.scoreValue,t>0&&a.accuracyActive],children:t})]})})})});ScoreBoard.displayName="ScoreBoard";const a=t.create({scoreBoard:{flexDirection:"row",justifyContent:"center",alignItems:"center"},scoreSection:{alignItems:"center",flex:1},scoreLabel:{fontSize:16,fontWeight:"bold",color:s.TEXT,marginBottom:4},scoreValue:{fontSize:25,fontWeight:"bold",color:s.TEXT},accuracyActive:{color:s.UI}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export{PerfectCircle}from
|
|
1
|
+
"use strict";export{PerfectCircle}from"./PerfectCircle.js";export{PERFECT_CIRCLE_THEME}from"./PerfectCircleConstants.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import e,{useEffect as t,useRef as r,useCallback as o,useMemo as n}from"react";import{View as i,StyleSheet as s,Dimensions as a}from"react-native";import{GestureHandlerRootView as c}from"react-native-gesture-handler";import{usePopitFidgetStore as l}from"./PopitFidgetStore.js";import{PopitFidgetService as m}from"./PopitFidgetService.js";import{GAME_IDS as f,DEFAULT_GAME_SETTINGS as d}from"../../services/UtilsService.js";import{playSound as g,GAME_SOUNDS as p}from"../../services/SoundsService.js";import{playHaptic as h,HapticType as u}from"../../services/HapticsService.js";import{GameBackground as b,FidgetGrid as S,ScoreBoard as x}from"./components/index.js";import{GameControlButton as y,GameOverModal as j}from"../../helpers/index.js";import{GameSettingsModal as v}from"../../helpers/index.js";import{jsx as C,jsxs as w}from"react/jsx-runtime";const{width:P,height:B}=a.get("window"),G=({settings:s,onSettingsChange:a,onEndGame:G,onShare:T,onShowLeaderboard:A})=>{const F=l(e=>e.fidgetGrid),H=l(e=>e.timeRemaining),L=l(e=>e.score),M=l(e=>e.isPlaying),z=l(e=>e.gameOver),E=l(e=>e.gameWon),U=r(!1),{difficulty:k="medium",enableSounds:O=!0,enableHaptics:R=!0}=s||{},V=o((e,t)=>{G&&!U.current&&(G({status:e,score:t.toString()}),U.current=!0)},[G]),W=l(e=>e.startGame),Y=l(e=>e.resetGame),q=l(e=>e.setFidgetGrid),D=l(e=>e.popBubble),J=l(e=>e.decrementTime),K=r(null);t(()=>{if(K.current||(K.current=new m),K.current&&!F){const e=K.current.generateFidgetGrid(k);q(e)}},[F,q,k]),t(()=>()=>{try{K.current?.stopGameTimer()}catch{}try{Y()}catch{}try{K.current?.cleanup()}catch{}},[]);const N=n(()=>(K.current||(K.current=new m),K.current),[]),Q=o(()=>{const e=N.generateFidgetGrid(k);q(e)},[N,q,k]),X=e.useRef(k),Z=o(()=>{X.current!==k&&(M||Q(),X.current=k)},[k,M,Q]);t(()=>{Z()},[Z]),e.useEffect(()=>{!z||M||U.current||(E?(g(p.BUBBLE_POPPER.COMPLETE,O),V("win",L)):(g(p.TIME_UP,O),V("lose",L))),z||(U.current=!1)},[z,E,M,O,V,L]),t(()=>{let e=null;return M&&(e=setInterval(()=>{J()},1e3)),()=>{e&&clearInterval(e)}},[M,J]);const $=o(()=>{U.current=!1,Q(),g(p.BUBBLE_POPPER.START,O),W(),h(u.MEDIUM,R)},[W,O,R,Q]),_=o(()=>{V("cancel",L),N.stopGameTimer(),Y(),Q()},[N,Y,Q,V,L]),ee=o(()=>{N.stopGameTimer(),Y(),Q()},[N,Y,Q]),te=o((e,t)=>{if(!F)return;const r=F.bubbles[e]?.[t];r&&!r.isPopped&&(g(p.BUBBLE_POPPER.POP,O),D(e,t),h(u.LIGHT,R))},[F,D,O,R]),re=n(()=>({width:P,height:B}),[]),oe=n(()=>{if(!F)return 65;const e=.85*re.width,t=.6*re.height,r=Math.min(e/F.size,t/F.size);return Math.max(52,Math.min(85,.95*r))},[F,re]),ne=n(()=>({isPlaying:M,gameOver:z,onStartGame:$,onStopGame:_,onShare:T,onShowLeaderboard:A,startButtonSubtext:"Pop bubbles to relax!",buttonColor:"#9c27b0",buttonBorderColor:"#ce93d8"}),[M,z,$,_,T,A]),ie=n(()=>({isVisible:z,score:L,onPlayAgain:ee,buttonText:"Pop Again!",primaryColor:"rgba(156, 39, 176, 0.5)",borderColor:"rgba(156, 39, 176, 0.5)",buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:"#9c27b0",scoreLabel:E?"You Won!":"Time's Up!"}),[z,L,ee,E]),se=s?.offset??0;return C(i,{style:I.container,children:C(c,{children:w(i,{style:[I.gameContainer,{paddingTop:se}],children:[C(b,{width:re.width,height:re.height,isPlaying:M}),C(x,{timeRemaining:H,score:L,offset:se}),C(i,{style:I.gameArea,children:F&&C(S,{grid:F,bubbleSize:oe,onBubblePop:te,hapticEnabled:R,isPlaying:M})}),C(y,{...ne}),C(j,{...ie}),C(v,{gameId:f.POPIT_FIDGET,settings:s||d,onSettingsChange:a})]})})})},I=s.create({container:{flex:1},gameContainer:{flex:1,backgroundColor:"#fef7ff"},gameArea:{flex:1,justifyContent:"center",alignItems:"center",paddingHorizontal:20}});export{G as PopitFidget};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useRef","useCallback","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","usePopitFidgetStore","PopitFidgetService","GAME_IDS","DEFAULT_GAME_SETTINGS","playSound","GAME_SOUNDS","playHaptic","HapticType","calculateTimeBasedScore","GameBackground","FidgetGrid","FidgetGridComponent","ScoreBoard","GameControlButton","GameOverModal","GameSettingsModal","jsx","_jsx","jsxs","_jsxs","width","height","get","PopitFidget","settings","onSettingsChange","onEndGame","fidgetGrid","state","timeElapsed","isPlaying","gameOver","gameWon","gameReportedRef","difficulty","enableSounds","enableHaptics","reportGameEnd","status","currentTime","current","expectedTimes","easy","medium","hard","expectedTime","calculatedScore","score","toString","startGame","resetGame","setFidgetGrid","popBubble","incrementTime","serviceRef","grid","generateFidgetGrid","stopGameTimer","cleanup","service","generateNewFidget","prevDifficultyRef","handleDifficultyChange","BUBBLE_POPPER","COMPLETE","TIME_UP","timerInterval","setInterval","clearInterval","startGameHandler","START","MEDIUM","stopGameHandler","resetGameHandler","handleBubblePop","row","col","bubble","bubbles","isPopped","POP","LIGHT","screenDimensions","bubbleSize","availableWidth","availableHeight","maxSize","Math","min","size","max","gameControlButtonProps","onStartGame","onStopGame","startButtonText","stopButtonText","startButtonSubtext","stopButtonSubtext","startButtonColor","stopButtonColor","startButtonBorderColor","stopButtonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonColor","buttonBorderColor","buttonTextColor","scoreFormatter","time","mins","floor","secs","padStart","scoreLabel","offset","style","styles","container","children","gameContainer","paddingTop","gameArea","onBubblePop","hapticEnabled","gameId","POPIT_FIDGET","create","flex","backgroundColor","justifyContent","alignItems","paddingHorizontal"],"sourceRoot":"../../../../src","sources":["games/popit-fidget/PopitFidget.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","useCallback","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","usePopitFidgetStore","PopitFidgetService","GAME_IDS","DEFAULT_GAME_SETTINGS","playSound","GAME_SOUNDS","playHaptic","HapticType","GameBackground","FidgetGrid","FidgetGridComponent","ScoreBoard","GameControlButton","GameOverModal","GameSettingsModal","jsx","_jsx","jsxs","_jsxs","width","height","get","PopitFidget","settings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","fidgetGrid","state","timeRemaining","score","isPlaying","gameOver","gameWon","gameReportedRef","difficulty","enableSounds","enableHaptics","reportGameEnd","status","currentScore","current","toString","startGame","resetGame","setFidgetGrid","popBubble","decrementTime","serviceRef","grid","generateFidgetGrid","stopGameTimer","cleanup","service","generateNewFidget","prevDifficultyRef","handleDifficultyChange","BUBBLE_POPPER","COMPLETE","TIME_UP","timerInterval","setInterval","clearInterval","startGameHandler","START","MEDIUM","stopGameHandler","resetGameHandler","handleBubblePop","row","col","bubble","bubbles","isPopped","POP","LIGHT","screenDimensions","bubbleSize","availableWidth","availableHeight","maxSize","Math","min","size","max","gameControlButtonProps","onStartGame","onStopGame","startButtonSubtext","buttonColor","buttonBorderColor","gameOverModalProps","isVisible","onPlayAgain","buttonText","primaryColor","borderColor","buttonTextColor","scoreLabel","offset","style","styles","container","children","gameContainer","paddingTop","gameArea","onBubblePop","hapticEnabled","gameId","POPIT_FIDGET","create","flex","backgroundColor","justifyContent","alignItems","paddingHorizontal"],"sourceRoot":"../../../../src","sources":["games/popit-fidget/PopitFidget.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,MAAM,EAAEC,WAAW,EAAEC,OAAO,QAAQ,OAAO;AACtE,SAASC,IAAI,EAAEC,UAAU,EAAEC,UAAU,QAAQ,cAAc;AAC3D,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,SAASC,mBAAmB,QAA+B,uBAAoB;AAC/E,SAASC,kBAAkB,QAAQ,yBAAsB;AACzD,SAASC,QAAQ,EAAkBC,qBAAqB,QAAQ,gCAA6B;AAC7F,SAASC,SAAS,EAAEC,WAAW,QAAQ,iCAA8B;AACrE,SAASC,UAAU,EAAEC,UAAU,QAAQ,kCAA+B;AACtE,SACEC,cAAc,EACdC,UAAU,IAAIC,mBAAmB,EACjCC,UAAU,QACL,uBAAc;AACrB,SAASC,iBAAiB,EAAEC,aAAa,QAAQ,wBAAe;AAChE,SAASC,iBAAiB,QAAQ,wBAAe;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAElD,MAAM;EAAEC,KAAK;EAAEC;AAAO,CAAC,GAAGtB,UAAU,CAACuB,GAAG,CAAC,QAAQ,CAAC;AAElD,MAAMC,WAAgC,GAAGA,CAAC;EACxCC,QAAQ;EACRC,gBAAgB;EAChBC,SAAS;EACTC,OAAO;EACPC;AACF,CAAC,KAAK;EACJ;EACA,MAAMC,UAAU,GAAG5B,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACD,UAAU,CAAC;EACrF,MAAME,aAAa,GAAG9B,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACC,aAAa,CAAC;EAC3F,MAAMC,KAAK,GAAG/B,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACE,KAAK,CAAC;EAC3E,MAAMC,SAAS,GAAGhC,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACG,SAAS,CAAC;EACnF,MAAMC,QAAQ,GAAGjC,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACI,QAAQ,CAAC;EACjF,MAAMC,OAAO,GAAGlC,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACK,OAAO,CAAC;;EAE/E;EACA,MAAMC,eAAe,GAAG1C,MAAM,CAAU,KAAK,CAAC;;EAE9C;EACA,MAAM;IAAE2C,UAAU,GAAG,QAAQ;IAAEC,YAAY,GAAG,IAAI;IAAEC,aAAa,GAAG;EAAK,CAAC,GAAGf,QAAQ,IAAI,CAAC,CAAC;;EAE3F;EACA,MAAMgB,aAAa,GAAG7C,WAAW,CAAC,CAAC8C,MAAiC,EAAEC,YAAoB,KAAK;IAC7F,IAAIhB,SAAS,IAAI,CAACU,eAAe,CAACO,OAAO,EAAE;MACzCjB,SAAS,CAAC;QACRe,MAAM;QACNT,KAAK,EAAEU,YAAY,CAACE,QAAQ,CAAC;MAC/B,CAAC,CAAC;MACFR,eAAe,CAACO,OAAO,GAAG,IAAI;IAChC;EACF,CAAC,EAAE,CAACjB,SAAS,CAAC,CAAC;;EAEf;EACA,MAAMmB,SAAS,GAAG5C,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACe,SAAS,CAAC;EACnF,MAAMC,SAAS,GAAG7C,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACgB,SAAS,CAAC;EACnF,MAAMC,aAAa,GAAG9C,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACiB,aAAa,CAAC;EAC3F,MAAMC,SAAS,GAAG/C,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACkB,SAAS,CAAC;EACnF,MAAMC,aAAa,GAAGhD,mBAAmB,CAAE6B,KAAuB,IAAKA,KAAK,CAACmB,aAAa,CAAC;EAE3F,MAAMC,UAAU,GAAGxD,MAAM,CAA4B,IAAI,CAAC;;EAE1D;EACAD,SAAS,CAAC,MAAM;IACd,IAAI,CAACyD,UAAU,CAACP,OAAO,EAAE;MACvBO,UAAU,CAACP,OAAO,GAAG,IAAIzC,kBAAkB,CAAC,CAAC;IAC/C;;IAEA;IACA,IAAIgD,UAAU,CAACP,OAAO,IAAI,CAACd,UAAU,EAAE;MACrC,MAAMsB,IAAI,GAAGD,UAAU,CAACP,OAAO,CAACS,kBAAkB,CAACf,UAAU,CAAC;MAC9DU,aAAa,CAACI,IAAI,CAAC;IACrB;EACF,CAAC,EAAE,CAACtB,UAAU,EAAEkB,aAAa,EAAEV,UAAU,CAAC,CAAC;;EAE3C;EACA5C,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX;MACA,IAAI;QAAEyD,UAAU,CAACP,OAAO,EAAEU,aAAa,CAAC,CAAC;MAAE,CAAC,CAAC,MAAM,CAAC;MACpD,IAAI;QAAEP,SAAS,CAAC,CAAC;MAAE,CAAC,CAAC,MAAM,CAAC;MAC5B,IAAI;QAAEI,UAAU,CAACP,OAAO,EAAEW,OAAO,CAAC,CAAC;MAAE,CAAC,CAAC,MAAM,CAAC;IAChD,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;;EAGN;EACA,MAAMC,OAAO,GAAG3D,OAAO,CAAC,MAAM;IAC5B,IAAI,CAACsD,UAAU,CAACP,OAAO,EAAE;MACvBO,UAAU,CAACP,OAAO,GAAG,IAAIzC,kBAAkB,CAAC,CAAC;IAC/C;IACA,OAAOgD,UAAU,CAACP,OAAO;EAC3B,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA,MAAMa,iBAAiB,GAAG7D,WAAW,CAAC,MAAM;IAC1C,MAAMwD,IAAI,GAAGI,OAAO,CAACH,kBAAkB,CAACf,UAAU,CAAC;IACnDU,aAAa,CAACI,IAAI,CAAC;EACrB,CAAC,EAAE,CAACI,OAAO,EAAER,aAAa,EAAEV,UAAU,CAAC,CAAC;;EAExC;EACA,MAAMoB,iBAAiB,GAAGjE,KAAK,CAACE,MAAM,CAAC2C,UAAU,CAAC;;EAElD;EACA,MAAMqB,sBAAsB,GAAG/D,WAAW,CAAC,MAAM;IAC/C;IACA,IAAI8D,iBAAiB,CAACd,OAAO,KAAKN,UAAU,EAAE;MAC5C,IAAI,CAACJ,SAAS,EAAE;QACd;QACAuB,iBAAiB,CAAC,CAAC;MACrB;MACAC,iBAAiB,CAACd,OAAO,GAAGN,UAAU;IACxC;EACF,CAAC,EAAE,CAACA,UAAU,EAAEJ,SAAS,EAAEuB,iBAAiB,CAAC,CAAC;EAE9C/D,SAAS,CAAC,MAAM;IACdiE,sBAAsB,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACA,sBAAsB,CAAC,CAAC;;EAE5B;EACAlE,KAAK,CAACC,SAAS,CAAC,MAAM;IACpB,IAAIyC,QAAQ,IAAI,CAACD,SAAS,IAAI,CAACG,eAAe,CAACO,OAAO,EAAE;MACtD,IAAIR,OAAO,EAAE;QACX;QACA9B,SAAS,CAACC,WAAW,CAACqD,aAAa,CAACC,QAAQ,EAAEtB,YAAY,CAAC;QAC3DE,aAAa,CAAC,KAAK,EAAER,KAAK,CAAC;MAC7B,CAAC,MAAM;QACL;QACA3B,SAAS,CAACC,WAAW,CAACuD,OAAO,EAAEvB,YAAY,CAAC;QAC5CE,aAAa,CAAC,MAAM,EAAER,KAAK,CAAC;MAC9B;IACF;;IAEA;IACA,IAAI,CAACE,QAAQ,EAAE;MACbE,eAAe,CAACO,OAAO,GAAG,KAAK;IACjC;EACF,CAAC,EAAE,CAACT,QAAQ,EAAEC,OAAO,EAAEF,SAAS,EAAEK,YAAY,EAAEE,aAAa,EAAER,KAAK,CAAC,CAAC;;EAEtE;EACAvC,SAAS,CAAC,MAAM;IACd,IAAIqE,aAAoC,GAAG,IAAI;IAE/C,IAAI7B,SAAS,EAAE;MACb6B,aAAa,GAAGC,WAAW,CAAC,MAAM;QAChCd,aAAa,CAAC,CAAC;MACjB,CAAC,EAAE,IAAI,CAAC;IACV;IAEA,OAAO,MAAM;MACX,IAAIa,aAAa,EAAE;QACjBE,aAAa,CAACF,aAAa,CAAC;MAC9B;IACF,CAAC;EACH,CAAC,EAAE,CAAC7B,SAAS,EAAEgB,aAAa,CAAC,CAAC;;EAE9B;EACA,MAAMgB,gBAAgB,GAAGtE,WAAW,CAAC,MAAM;IACzCyC,eAAe,CAACO,OAAO,GAAG,KAAK,CAAC,CAAC;IACjC;IACAa,iBAAiB,CAAC,CAAC;;IAEnB;IACAnD,SAAS,CAACC,WAAW,CAACqD,aAAa,CAACO,KAAK,EAAE5B,YAAY,CAAC;;IAExD;IACAO,SAAS,CAAC,CAAC;;IAEX;IACAtC,UAAU,CAACC,UAAU,CAAC2D,MAAM,EAAE5B,aAAa,CAAC;EAC9C,CAAC,EAAE,CAACM,SAAS,EAAEP,YAAY,EAAEC,aAAa,EAAEiB,iBAAiB,CAAC,CAAC;;EAE/D;EACA,MAAMY,eAAe,GAAGzE,WAAW,CAAC,MAAM;IACxC6C,aAAa,CAAC,QAAQ,EAAER,KAAK,CAAC;IAE9BuB,OAAO,CAACF,aAAa,CAAC,CAAC;IACvBP,SAAS,CAAC,CAAC;IACXU,iBAAiB,CAAC,CAAC;EACrB,CAAC,EAAE,CAACD,OAAO,EAAET,SAAS,EAAEU,iBAAiB,EAAEhB,aAAa,EAAER,KAAK,CAAC,CAAC;;EAEjE;EACA,MAAMqC,gBAAgB,GAAG1E,WAAW,CAAC,MAAM;IACzC4D,OAAO,CAACF,aAAa,CAAC,CAAC;IACvBP,SAAS,CAAC,CAAC;IACXU,iBAAiB,CAAC,CAAC;EACrB,CAAC,EAAE,CAACD,OAAO,EAAET,SAAS,EAAEU,iBAAiB,CAAC,CAAC;;EAE3C;EACA,MAAMc,eAAe,GAAG3E,WAAW,CAAC,CAAC4E,GAAW,EAAEC,GAAW,KAAK;IAChE,IAAI,CAAC3C,UAAU,EAAE;IAEjB,MAAM4C,MAAM,GAAG5C,UAAU,CAAC6C,OAAO,CAACH,GAAG,CAAC,GAAGC,GAAG,CAAC;IAC7C,IAAI,CAACC,MAAM,IAAIA,MAAM,CAACE,QAAQ,EAAE;;IAEhC;IACAtE,SAAS,CAACC,WAAW,CAACqD,aAAa,CAACiB,GAAG,EAAEtC,YAAY,CAAC;;IAEtD;IACAU,SAAS,CAACuB,GAAG,EAAEC,GAAG,CAAC;;IAEnB;IACAjE,UAAU,CAACC,UAAU,CAACqE,KAAK,EAAEtC,aAAa,CAAC;;IAE3C;EACF,CAAC,EAAE,CAACV,UAAU,EAAEmB,SAAS,EAAEV,YAAY,EAAEC,aAAa,CAAC,CAAC;;EAExD;EACA,MAAMuC,gBAAgB,GAAGlF,OAAO,CAAC,OAAO;IACtCwB,KAAK;IACLC;EACF,CAAC,CAAC,EAAE,EAAE,CAAC;;EAEP;EACA,MAAM0D,UAAU,GAAGnF,OAAO,CAAC,MAAM;IAC/B,IAAI,CAACiC,UAAU,EAAE,OAAO,EAAE;IAE1B,MAAMmD,cAAc,GAAGF,gBAAgB,CAAC1D,KAAK,GAAG,IAAI;IACpD,MAAM6D,eAAe,GAAGH,gBAAgB,CAACzD,MAAM,GAAG,GAAG;IACrD,MAAM6D,OAAO,GAAGC,IAAI,CAACC,GAAG,CACtBJ,cAAc,GAAGnD,UAAU,CAACwD,IAAI,EAChCJ,eAAe,GAAGpD,UAAU,CAACwD,IAC/B,CAAC;IACD;IACA,OAAOF,IAAI,CAACG,GAAG,CAAC,EAAE,EAAEH,IAAI,CAACC,GAAG,CAAC,EAAE,EAAEF,OAAO,GAAG,IAAI,CAAC,CAAC;EACnD,CAAC,EAAE,CAACrD,UAAU,EAAEiD,gBAAgB,CAAC,CAAC;;EAElC;EACA,MAAMS,sBAAsB,GAAG3F,OAAO,CAAC,OAAO;IAC5CqC,SAAS;IACTC,QAAQ;IACRsD,WAAW,EAAEvB,gBAAgB;IAC7BwB,UAAU,EAAErB,eAAe;IAC3BzC,OAAO;IACPC,iBAAiB;IACjB8D,kBAAkB,EAAE,uBAAuB;IAC3CC,WAAW,EAAE,SAAS;IACtBC,iBAAiB,EAAE;EACrB,CAAC,CAAC,EAAE,CAAC3D,SAAS,EAAEC,QAAQ,EAAE+B,gBAAgB,EAAEG,eAAe,EAAEzC,OAAO,EAAEC,iBAAiB,CAAC,CAAC;;EAEzF;EACA,MAAMiE,kBAAkB,GAAGjG,OAAO,CAAC,OAAO;IACxCkG,SAAS,EAAE5D,QAAQ;IACnBF,KAAK,EAAEA,KAAK;IACZ+D,WAAW,EAAE1B,gBAAgB;IAC7B2B,UAAU,EAAE,YAAY;IACxBC,YAAY,EAAE,yBAAyB;IAAE;IACzCC,WAAW,EAAE,yBAAyB;IAAE;IACxCP,WAAW,EAAE,SAAS;IAAE;IACxBC,iBAAiB,EAAE,SAAS;IAAE;IAC9BO,eAAe,EAAE,SAAS;IAAE;IAC5BC,UAAU,EAAEjE,OAAO,GAAG,UAAU,GAAG;EACrC,CAAC,CAAC,EAAE,CAACD,QAAQ,EAAEF,KAAK,EAAEqC,gBAAgB,EAAElC,OAAO,CAAC,CAAC;;EAEjD;EACA,MAAMkE,MAAM,GAAG7E,QAAQ,EAAE6E,MAAM,IAAI,CAAC;EAEpC,oBACEpF,IAAA,CAACpB,IAAI;IAACyG,KAAK,EAAEC,MAAM,CAACC,SAAU;IAAAC,QAAA,eAC5BxF,IAAA,CAACjB,sBAAsB;MAAAyG,QAAA,eACrBtF,KAAA,CAACtB,IAAI;QAACyG,KAAK,EAAE,CAACC,MAAM,CAACG,aAAa,EAAE;UAAEC,UAAU,EAAEN;QAAO,CAAC,CAAE;QAAAI,QAAA,gBAE5DxF,IAAA,CAACR,cAAc;UACbW,KAAK,EAAE0D,gBAAgB,CAAC1D,KAAM;UAC9BC,MAAM,EAAEyD,gBAAgB,CAACzD,MAAO;UAChCY,SAAS,EAAEA;QAAU,CACtB,CAAC,eAGFhB,IAAA,CAACL,UAAU;UACTmB,aAAa,EAAEA,aAAc;UAC7BC,KAAK,EAAEA,KAAM;UACbqE,MAAM,EAAEA;QAAO,CAChB,CAAC,eAGFpF,IAAA,CAACpB,IAAI;UAACyG,KAAK,EAAEC,MAAM,CAACK,QAAS;UAAAH,QAAA,EAC1B5E,UAAU,iBACTZ,IAAA,CAACN,mBAAmB;YAClBwC,IAAI,EAAEtB,UAAW;YACjBkD,UAAU,EAAEA,UAAW;YACvB8B,WAAW,EAAEvC,eAAgB;YAC7BwC,aAAa,EAAEvE,aAAc;YAC7BN,SAAS,EAAEA;UAAU,CACtB;QACF,CACG,CAAC,eAGPhB,IAAA,CAACJ,iBAAiB;UAAA,GACZ0E;QAAsB,CAC3B,CAAC,eAGFtE,IAAA,CAACH,aAAa;UAAA,GACR+E;QAAkB,CACvB,CAAC,eAGF5E,IAAA,CAACF,iBAAiB;UAChBgG,MAAM,EAAE5G,QAAQ,CAAC6G,YAAa;UAC9BxF,QAAQ,EAAEA,QAAQ,IAAIpB,qBAAsB;UAC5CqB,gBAAgB,EAAEA;QAAiB,CACpC,CAAC;MAAA,CACI;IAAC,CACe;EAAC,CACrB,CAAC;AAEX,CAAC;AAED,MAAM8E,MAAM,GAAGzG,UAAU,CAACmH,MAAM,CAAC;EAC/BT,SAAS,EAAE;IACTU,IAAI,EAAE;EACR,CAAC;EACDR,aAAa,EAAE;IACbQ,IAAI,EAAE,CAAC;IACPC,eAAe,EAAE,SAAS,CAAE;EAC9B,CAAC;EACDP,QAAQ,EAAE;IACRM,IAAI,EAAE,CAAC;IACPE,cAAc,EAAE,QAAQ;IACxBC,UAAU,EAAE,QAAQ;IACpBC,iBAAiB,EAAE;EACrB;AACF,CAAC,CAAC;AAEF,SAAS/F,WAAW","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export const POPIT_FIDGET_GAME_CONFIG
|
|
1
|
+
"use strict";export const POPIT_FIDGET_GAME_CONFIG={GAME_DURATION:120,POINTS_PER_BUBBLE:10,COMPLETION_BONUS:500,TIME_BONUS_MULTIPLIER:5,BUBBLE_SIZE:46,ANIMATION_DURATION:300,PARTICLE_COUNT:4,PARTICLE_LIFETIME:800,GRID_SIZES:{easy:5,medium:6,hard:6}};export const POPIT_FIDGET_ANIMATION_CONFIG={POP_SCALE:1.3,POP_DURATION:200,FADE_DURATION:300,BOUNCE_SCALE:.9,PARTICLE_VELOCITY:3,PARTICLE_GRAVITY:.2};export const POPIT_FIDGET_COLORS={BACKGROUND:"#f5f5f5",FIDGET_BORDER:"#333",FIDGET_SHADOW:"rgba(0,0,0,0.3)",SCORE:"#4a90e2",UI:"#6c5ce7",POPPED_BUBBLE:"#d0d0d0",PARTICLE_GLOW:"rgba(255,255,255,0.9)",FIDGET_BASE:"#ffffff",BUBBLE_SHADOW:"rgba(0,0,0,0.2)",BUBBLE_HIGHLIGHT:"rgba(255,255,255,0.6)"};export const RAINBOW_COLORS=["#E91E63","#F44336","#FF5722","#FF9800","#FFC107","#8E24AA","#CDDC39","#8BC34A","#4CAF50","#009688","#00BCD4","#03A9F4","#2196F3","#3F51B5","#9C27B0","#E91E63"];export const BUBBLE_COLORS=RAINBOW_COLORS;export const POPIT_FIDGET_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#9c27b0",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(156, 39, 176, 0.15)",sectionTitleColor:"#9c27b0",buttonSelectedColor:"#9c27b0",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(156, 39, 176, 0.3)",switchTrackColorTrue:"#9c27b0",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const POPIT_FIDGET_DIFFICULTY_DESCRIPTIONS={easy:"Smaller fidget grids, relaxing pace",medium:"Medium grids, satisfying pops",hard:"Large complex shapes, ultimate satisfaction!"};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{Dimensions}from
|
|
1
|
+
"use strict";import{Dimensions as t}from"react-native";import{POPIT_FIDGET_GAME_CONFIG as e,POPIT_FIDGET_ANIMATION_CONFIG as r,POPIT_FIDGET_COLORS as o,RAINBOW_COLORS as i,BUBBLE_COLORS as s}from"./PopitFidgetConstants.js";const{width:n,height:l}=t.get("window");export{e as GAME_CONFIG,r as ANIMATION_CONFIG,o as COLORS,s as BUBBLE_COLORS};export class PopitFidgetService{gameTimerRef=null;constructor(){}generateFidgetGrid(t){const r=.85*n,o=.6*l,i=e.GRID_SIZES[t],s=Math.max(52,Math.min(85,.95*Math.min(r/i,o/i))),a=1.02*s,c=(i-1)*a+s,h=(i-1)*a+s,p=[];for(let t=0;i>t;t++){p[t]=[];for(let e=0;i>e;e++){const r=e*a+s/2,o=t*a+s/2;p[t][e]={id:`${t}-${e}`,row:t,col:e,x:r,y:o,isPopped:!1,color:this.getRainbowColorForPosition(t,i),animationProgress:0}}}return{size:i,bubbles:p,centerX:c/2,centerY:h/2,width:c,height:h}}getRainbowColorForPosition(t,e){const r=Math.floor(t/e*i.length);return i[r]||i[0]}checkAllBubblesPopped(t){for(let e=0;e<t.size;e++)for(let r=0;r<t.size;r++){const o=t.bubbles[e]?.[r];if(o&&!o.isPopped)return!1}return!0}calculateCompletionPercentage(t){let e=0,r=0;for(let o=0;o<t.size;o++)for(let i=0;i<t.size;i++){const s=t.bubbles[o]?.[i];s&&(e++,s.isPopped&&r++)}return e>0?r/e*100:0}startGameTimer(t,e,r){this.stopGameTimer();let o=t;this.gameTimerRef=setInterval(()=>{o-=1,e(o),o>0||(this.stopGameTimer(),r())},1e3)}stopGameTimer(){this.gameTimerRef&&(clearInterval(this.gameTimerRef),this.gameTimerRef=null)}cleanup(){this.stopGameTimer()}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Dimensions","POPIT_FIDGET_GAME_CONFIG","GAME_CONFIG","POPIT_FIDGET_ANIMATION_CONFIG","ANIMATION_CONFIG","POPIT_FIDGET_COLORS","COLORS","RAINBOW_COLORS","BUBBLE_COLORS","width","height","get","PopitFidgetService","gameTimerRef","constructor","generateFidgetGrid","difficulty","availableWidth","availableHeight","gridSize","GRID_SIZES","maxSize","Math","min","bubbleSize","max","spacing","gridWidth","gridHeight","bubbles","row","col","x","y","id","isPopped","color","getRainbowColorForPosition","animationProgress","size","centerX","centerY","totalRows","colorIndex","floor","length","checkAllBubblesPopped","grid","bubble","calculateCompletionPercentage","totalBubbles","poppedBubbles","startGameTimer","duration","onTick","onComplete","stopGameTimer","timeLeft","setInterval","clearInterval","cleanup"],"sourceRoot":"../../../../src","sources":["games/popit-fidget/PopitFidgetService.ts"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,cAAc;AACzC,SACEC,wBAAwB,IAAIC,WAAW,EACvCC,6BAA6B,IAAIC,gBAAgB,EACjDC,mBAAmB,IAAIC,MAAM,EAC7BC,cAAc,EACdC,aAAa,QACR,2BAAwB;AAE/B,MAAM;EAAEC,KAAK;EAAEC;AAAO,CAAC,GAAGV,UAAU,CAACW,GAAG,CAAC,QAAQ,CAAC;;AAElD;AACA;AACA,SAAST,WAAW,EAAEE,gBAAgB,EAAEE,MAAM,EAAEE,aAAa;;AAE7D;;AAwBA,OAAO,MAAMI,kBAAkB,CAAC;EACtBC,YAAY,GAA0B,IAAI;EAElDC,WAAWA,CAAA,EAAG,CAAC;;EAGf;EACAC,kBAAkBA,CAACC,UAAsC,EAAc;IACrE,MAAMC,cAAc,GAAGR,KAAK,GAAG,IAAI,CAAC,CAAC;IACrC,MAAMS,eAAe,GAAGR,MAAM,GAAG,GAAG,CAAC,CAAC;;IAEtC;IACA,MAAMS,QAAQ,GAAGjB,WAAW,CAACkB,UAAU,CAACJ,UAAU,CAAC;;IAEnD;IACA,MAAMK,OAAO,GAAGC,IAAI,CAACC,GAAG,CAACN,cAAc,GAAGE,QAAQ,EAAED,eAAe,GAAGC,QAAQ,CAAC;IAC/E,MAAMK,UAAU,GAAGF,IAAI,CAACG,GAAG,CAAC,EAAE,EAAEH,IAAI,CAACC,GAAG,CAAC,EAAE,EAAEF,OAAO,GAAG,
|
|
1
|
+
{"version":3,"names":["Dimensions","POPIT_FIDGET_GAME_CONFIG","GAME_CONFIG","POPIT_FIDGET_ANIMATION_CONFIG","ANIMATION_CONFIG","POPIT_FIDGET_COLORS","COLORS","RAINBOW_COLORS","BUBBLE_COLORS","width","height","get","PopitFidgetService","gameTimerRef","constructor","generateFidgetGrid","difficulty","availableWidth","availableHeight","gridSize","GRID_SIZES","maxSize","Math","min","bubbleSize","max","spacing","gridWidth","gridHeight","bubbles","row","col","x","y","id","isPopped","color","getRainbowColorForPosition","animationProgress","size","centerX","centerY","totalRows","colorIndex","floor","length","checkAllBubblesPopped","grid","bubble","calculateCompletionPercentage","totalBubbles","poppedBubbles","startGameTimer","duration","onTick","onComplete","stopGameTimer","timeLeft","setInterval","clearInterval","cleanup"],"sourceRoot":"../../../../src","sources":["games/popit-fidget/PopitFidgetService.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import{create}from
|
|
1
|
+
"use strict";import{create as e}from"zustand";import{subscribeWithSelector as t}from"zustand/middleware";import{immerMiddleware as o}from"../../services/UtilsService.js";export const usePopitFidgetStore=e()(t(o((e,t)=>({timeRemaining:60,isPlaying:!1,gameOver:!1,gameWon:!1,fidgetGrid:null,bubblesPopped:0,totalBubbles:0,score:0,bubbleStates:{},startGame:(t=60)=>{e(e=>{e.isPlaying=!0,e.gameOver=!1,e.gameWon=!1,e.timeRemaining=t,e.bubblesPopped=0,e.score=0})},stopGame:()=>{e(e=>{e.isPlaying=!1,e.gameOver=!0})},resetGame:()=>{e(e=>{e.timeRemaining=60,e.isPlaying=!1,e.gameOver=!1,e.gameWon=!1,e.fidgetGrid=null,e.bubblesPopped=0,e.totalBubbles=0,e.score=0})},setFidgetGrid:t=>{const o=t.size*t.size;e(e=>{e.fidgetGrid=t,e.totalBubbles=o,e.bubblesPopped=0,e.bubbleStates={};for(let o=0;o<t.size;o++)for(let s=0;s<t.size;s++){const i=t.bubbles[o]?.[s];i&&(e.bubbleStates[i.id]={isPopped:i.isPopped||!1,popTime:i.popTime})}})},popBubble:(o,s)=>{e(e=>{if(!e.fidgetGrid)return;const t=e.fidgetGrid.bubbles[o]?.[s];if(!t)return;const i=e.bubbleStates[t.id];i?.isPopped||(e.bubbleStates[t.id]={isPopped:!0,popTime:Date.now()},e.bubblesPopped=e.bubblesPopped+1,e.score=e.score+50)}),setTimeout(()=>{t().isPlaying&&t().checkGameWon()},0)},decrementTime:()=>{e(e=>{e.timeRemaining>0&&(e.timeRemaining=e.timeRemaining-1)}),setTimeout(()=>{const e=t();e.isPlaying&&0>=e.timeRemaining&&t().checkGameLost()},0)},checkGameLost:()=>{const o=t();o.isPlaying&&0>=o.timeRemaining&&e(e=>{e.isPlaying=!1,e.gameWon=!1,e.gameOver=!0})},checkGameWon:()=>{const o=t();if(!o.fidgetGrid)return;let s=!0;for(let e=0;e<o.fidgetGrid.size;e++){for(let t=0;t<o.fidgetGrid.size;t++){const i=o.fidgetGrid.bubbles[e]?.[t];if(i){const e=o.bubbleStates[i.id];if(!e?.isPopped){s=!1;break}}}if(!s)break}s&&o.isPlaying&&e(e=>{e.isPlaying=!1,e.gameWon=!0,e.gameOver=!0})}}))));
|