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{create}from
|
|
1
|
+
"use strict";import{create as e}from"zustand";import{subscribeWithSelector as t}from"zustand/middleware";import{useShallow as s}from"zustand/react/shallow";import{Game2048Service as r}from"./Game2048Service.js";import{GAME_CONFIG as o,GAME_2048_SOUNDS as i,GAME_2048_SETTINGS as a}from"./Game2048Constants.js";import{immerMiddleware as n}from"../../services/UtilsService.js";import{playSound as m}from"../../services/SoundsService.js";import{playHaptic as c,HapticType as u}from"../../services/HapticsService.js";const G=new r;export const useGame2048Store=e()(t(n((e,t)=>({timeElapsed:0,timeLeft:600,score:0,isPlaying:!1,isGameOver:!1,isWon:!1,isAnimating:!1,grid:G.createGrid(),nextTileId:1,difficulty:"easy",targetValue:2048,gridSize:4,enableSounds:!0,enableHaptics:!0,startGame:()=>{e(e=>{e.isPlaying=!0,e.timeElapsed=0})},stopGame:()=>{const e=t();e.initializeGame(e.difficulty)},resetGame:()=>{const e=t();e.initializeGame(e.difficulty)},initializeGame:(t="easy")=>{e(e=>{const s=a.DIFFICULTY_SETTINGS[t];e.grid=G.createGrid();let r=1;const i=G.addRandomTile(e.grid,r++),n=G.addRandomTile(e.grid,r++);e.timeElapsed=0,e.timeLeft=600,e.score=0,e.isPlaying=!1,e.isGameOver=!1,e.isWon=!1,e.isAnimating=!1,e.nextTileId=3,e.difficulty=t,e.targetValue=s.targetTile,e.gridSize=s.gridSize,[i,n].forEach(e=>{e?.scaleValue&&setTimeout(()=>{e.scaleValue?.setValue(0);const{Animated:t}=require("react-native");t.spring(e.scaleValue,{toValue:1,useNativeDriver:!0,tension:o.ANIMATION_CONFIG.TENSION,friction:o.ANIMATION_CONFIG.FRICTION}).start()},100)})})},updateGrid:t=>{e(e=>{e.grid=t})},incrementTime:()=>{e(e=>{e.timeElapsed+=1})},decrementTime:()=>{e(e=>{e.timeLeft>0&&(e.timeLeft-=1),0===e.timeLeft&&e.isPlaying&&(e.isPlaying=!1,e.isGameOver=!0)})},calculateScore:()=>{const s=t();e(e=>{const t=s.timeLeft/600,r="easy"===s.difficulty?5e3:"medium"===s.difficulty?1e4:15e3;e.score=Math.round(r*t)})},setIsAnimating:t=>{e(e=>{e.isAnimating=t})},setGameOver:t=>{e(e=>{e.isGameOver=t,t&&(e.isPlaying=!1)})},setWon:t=>{e(e=>{e.isWon=t})},incrementTileId:()=>{const s=t().nextTileId;return e(e=>{e.nextTileId=s+1}),s},handleMove:s=>{const r=t();if(r.isGameOver||r.isWon||r.isAnimating)return!1;e(e=>{e.isPlaying||(e.isPlaying=!0),e.isAnimating=!0});const a=r.grid.map(e=>e.slice()),{moved:n,score:p}=G.moveTiles(a,s);if(n){const s=r.nextTileId,n=G.addRandomTile(a,s),d=G.hasWon(a,r.targetValue),l=G.checkGameOver(a);if(e(e=>{e.grid=a,e.nextTileId=s+1,d&&(e.isWon=!0,e.isPlaying=!1),l&&(e.isGameOver=!0)}),d&&t().calculateScore(),Promise.resolve().then(()=>{m(i.TILE_MOVE,r.enableSounds),c(u.LIGHT,r.enableHaptics),p>0&&(m(i.TILE_MERGE,r.enableSounds),c(u.MEDIUM,r.enableHaptics)),n&&m(i.NEW_TILE,r.enableSounds),d?(m(i.GAME_WIN,r.enableSounds),c(u.SUCCESS,r.enableHaptics)):l&&(m(i.GAME_OVER,r.enableSounds),c(u.ERROR,r.enableHaptics))}),n?.scaleValue){const{Animated:t}=require("react-native");n.scaleValue.setValue(0),t.spring(n.scaleValue,{toValue:1,useNativeDriver:!0,tension:o.ANIMATION_CONFIG.TENSION,friction:o.ANIMATION_CONFIG.FRICTION}).start(()=>{e(e=>{e.isAnimating=!1})})}else e(e=>{e.isAnimating=!1});return!0}return Promise.resolve().then(()=>{m(i.INVALID_MOVE,r.enableSounds),c(u.WARNING,r.enableHaptics)}),e(e=>{e.isAnimating=!1}),!1},updateSettings:(t,s)=>{e(e=>{e.enableSounds=t,e.enableHaptics=s})}}))));export const useTimeElapsed=()=>useGame2048Store(e=>e.timeElapsed);export const useTimeLeft=()=>useGame2048Store(e=>e.timeLeft);export const useScore=()=>useGame2048Store(e=>e.score);export const useGrid=()=>useGame2048Store(e=>e.grid);export const useIsPlaying=()=>useGame2048Store(e=>e.isPlaying);export const useIsGameOver=()=>useGame2048Store(e=>e.isGameOver);export const useIsWon=()=>useGame2048Store(e=>e.isWon);export const useIsAnimating=()=>useGame2048Store(e=>e.isAnimating);export const useDifficulty=()=>useGame2048Store(e=>e.difficulty);export const useTargetValue=()=>useGame2048Store(e=>e.targetValue);export const useGridSize=()=>useGame2048Store(e=>e.gridSize);export const useGameActions=()=>useGame2048Store(s(e=>({startGame:e.startGame,stopGame:e.stopGame,resetGame:e.resetGame,initializeGame:e.initializeGame,updateSettings:e.updateSettings,decrementTime:e.decrementTime,handleMove:e.handleMove})));export const useGameState=()=>useGame2048Store(s(e=>({isPlaying:e.isPlaying,isGameOver:e.isGameOver,isWon:e.isWon})));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["create","subscribeWithSelector","Game2048Service","GAME_CONFIG","GAME_2048_SOUNDS","GAME_2048_SETTINGS","immerMiddleware","playSound","playHaptic","HapticType","useGame2048Store","set","get","gameService","timeElapsed","isPlaying","isGameOver","isWon","isAnimating","grid","createGrid","nextTileId","difficulty","targetValue","gridSize","enableSounds","enableHaptics","startGame","state","stopGame","initializeGame","resetGame","difficultySettings","DIFFICULTY_SETTINGS","tileId","tile1","addRandomTile","tile2","targetTile","forEach","tile","scaleValue","setTimeout","setValue","Animated","require","spring","toValue","useNativeDriver","tension","ANIMATION_CONFIG","TENSION","friction","FRICTION","start","updateGrid","newGrid","incrementTime","setIsAnimating","animating","setGameOver","gameOver","setWon","won","incrementTileId","newId","draft","handleMove","direction","gridCopy","map","row","slice","moved","score","moveScore","moveTiles","newTileId","newTile","hasWon","checkGameOver","Promise","resolve","then","TILE_MOVE","LIGHT","TILE_MERGE","MEDIUM","NEW_TILE","GAME_WIN","SUCCESS","GAME_OVER","ERROR","INVALID_MOVE","WARNING","updateSettings","useTimeElapsed","useGrid","useIsPlaying","useIsGameOver","useIsWon","useIsAnimating","useDifficulty","useTargetValue","useGridSize"],"sourceRoot":"../../../../src","sources":["games/game-2048/Game2048Store.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["create","subscribeWithSelector","useShallow","Game2048Service","GAME_CONFIG","GAME_2048_SOUNDS","GAME_2048_SETTINGS","immerMiddleware","playSound","playHaptic","HapticType","gameService","useGame2048Store","set","get","timeElapsed","timeLeft","score","isPlaying","isGameOver","isWon","isAnimating","grid","createGrid","nextTileId","difficulty","targetValue","gridSize","enableSounds","enableHaptics","startGame","state","stopGame","initializeGame","resetGame","difficultySettings","DIFFICULTY_SETTINGS","tileId","tile1","addRandomTile","tile2","targetTile","forEach","tile","scaleValue","setTimeout","setValue","Animated","require","spring","toValue","useNativeDriver","tension","ANIMATION_CONFIG","TENSION","friction","FRICTION","start","updateGrid","newGrid","incrementTime","decrementTime","calculateScore","draft","totalTime","timeRemaining","timePercentage","maxScore","Math","round","setIsAnimating","animating","setGameOver","gameOver","setWon","won","incrementTileId","newId","handleMove","direction","gridCopy","map","row","slice","moved","moveScore","moveTiles","newTileId","newTile","hasWon","checkGameOver","Promise","resolve","then","TILE_MOVE","LIGHT","TILE_MERGE","MEDIUM","NEW_TILE","GAME_WIN","SUCCESS","GAME_OVER","ERROR","INVALID_MOVE","WARNING","updateSettings","useTimeElapsed","useTimeLeft","useScore","useGrid","useIsPlaying","useIsGameOver","useIsWon","useIsAnimating","useDifficulty","useTargetValue","useGridSize","useGameActions","useGameState"],"sourceRoot":"../../../../src","sources":["games/game-2048/Game2048Store.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import t from"react";import{View as r,StyleSheet as e,Dimensions as h}from"react-native";import{Canvas as o,LinearGradient as i,Rect as c,vec as a,Circle as n,RoundedRect as s}from"@shopify/react-native-skia";import{BACKGROUND_TILE_COLORS as l}from"../Game2048Constants.js";import{jsx as d,Fragment as y,jsxs as g}from"react/jsx-runtime";const{width:x,height:w}=h.get("window"),m=(()=>{const t=[],r=t=>{const r=43758.5453*Math.sin(12.9898*t+78.233*t);return r-Math.floor(r)};for(let e=0;30>e;e++){const h=x/30*e,o=w/30*e,i=r(2*e),c=r(3*e),a=r(5*e),n=h+60*Math.sin(.5*e)+120*i,s=o+80*Math.cos(.7*e)+140*c,d=15+25*a,y=e%l.length,g=.25+.15*Math.sin(e),m=Math.max(d/2,Math.min(x-d,n)),p=Math.max(d/2,Math.min(w-d,s)),u=`${l[y]}${Math.floor(255*g).toString(16).padStart(2,"0")}`,M=["square","rect","wide","circle","diamond"];t.push({type:M[e%5],key:"tile-"+e,x:m,y:p,size:d,color:u})}return t})(),p=Array.from({length:Math.floor(x/80)},(t,r)=>80*r),u=Array.from({length:Math.floor(w/80)},(t,r)=>80*r),M=t.memo(()=>d(y,{children:m.map(({type:t,key:r,x:e,y:h,size:o,color:i})=>{switch(t){case"square":return d(s,{x:e,y:h,width:o,height:o,r:.25*o,color:i},r);case"rect":return d(s,{x:e,y:h,width:.7*o,height:o,r:.2*o,color:i},r);case"wide":return d(s,{x:e,y:h,width:1.3*o,height:.8*o,r:.15*o,color:i},r);case"circle":return d(n,{cx:e+o/2,cy:h+o/2,r:o/2,color:i},r);case"diamond":return d(s,{x:e,y:h,width:.9*o,height:.9*o,r:.3*o,color:i},r)}})}));M.displayName="FloatingTiles";const f=t.memo(()=>g(y,{children:[p.map((t,r)=>d(c,{x:t,y:0,width:1,height:w,color:"rgba(255, 255, 255, 0.08)"},"grid-v-"+r)),u.map((t,r)=>d(c,{x:0,y:t,width:x,height:1,color:"rgba(255, 255, 255, 0.08)"},"grid-h-"+r))]}));f.displayName="GridPattern";export const GameBackground=t.memo(({children:t})=>g(r,{style:b.container,children:[g(o,{style:b.backgroundCanvas,children:[d(c,{x:0,y:0,width:x,height:w,children:d(i,{start:a(0,0),end:a(x,w),colors:[l[0]+"35",l[3]+"30",l[6]+"35",l[9]+"30",l[11]+"35"]})}),d(c,{x:0,y:0,width:x,height:w,children:d(i,{start:a(0,0),end:a(x/2,w/2),colors:[l[1]+"25","transparent",l[4]+"25","transparent",l[7]+"25","transparent"]})}),d(c,{x:0,y:0,width:x,height:w,children:d(i,{start:a(x,0),end:a(0,w),colors:[l[2]+"20","transparent",l[5]+"20","transparent",l[8]+"20","transparent"]})}),d(M,{}),d(s,{x:.08*x,y:.12*w,width:55,height:55,r:12,color:l[10]+"60"}),d(s,{x:.82*x,y:.78*w,width:50,height:50,r:10,color:l[9]+"60"}),d(s,{x:.78*x,y:.15*w,width:45,height:45,r:9,color:l[8]+"60"}),d(s,{x:.12*x,y:.72*w,width:60,height:60,r:14,color:l[7]+"60"}),d(s,{x:.45*x,y:.08*w,width:40,height:40,r:8,color:l[6]+"60"}),d(s,{x:.15*x,y:.45*w,width:48,height:48,r:10,color:l[5]+"60"}),d(s,{x:.72*x,y:.55*w,width:42,height:42,r:8,color:l[4]+"60"}),d(s,{x:.55*x,y:.85*w,width:38,height:38,r:7,color:l[3]+"60"}),d(n,{cx:.25*x,cy:.28*w,r:22,color:l[2]+"50"}),d(n,{cx:.62*x,cy:.32*w,r:26,color:l[1]+"50"}),d(n,{cx:.38*x,cy:.68*w,r:20,color:l[0]+"50"}),d(f,{})]}),t]}));const b=e.create({container:{flex:1},backgroundCanvas:{position:"absolute",top:0,left:0,right:0,bottom:0,width:x,height:w}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","Dimensions","Canvas","LinearGradient","Rect","vec","Circle","RoundedRect","BACKGROUND_TILE_COLORS","jsx","_jsx","jsxs","_jsxs","width","height","get","
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","Dimensions","Canvas","LinearGradient","Rect","vec","Circle","RoundedRect","BACKGROUND_TILE_COLORS","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","width","height","get","FLOATING_TILES_DATA","tiles","tileCount","seededRandom","seed","x","Math","sin","floor","i","baseX","baseY","randX","randY","randSize","y","cos","tileSize","colorIndex","length","opacity","tileX","max","min","tileY","colorHex","toString","padStart","types","push","type","key","size","color","GRID_LINES_V","Array","from","_","GRID_LINES_H","FloatingTiles","memo","children","map","r","cx","cy","displayName","GridPattern","GameBackground","style","styles","container","backgroundCanvas","start","end","colors","create","flex","position","top","left","right","bottom"],"sourceRoot":"../../../../../src","sources":["games/game-2048/components/GameBackground.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import t from"react";import{View as e,StyleSheet as i,Dimensions as r}from"react-native";import{Gesture as o,GestureDetector as n}from"react-native-gesture-handler";import{useGrid as a,useGameActions as s}from"../Game2048Store.js";import{GameTile as l}from"./GameTile.js";import{GAME_CONFIG as d}from"../Game2048Constants.js";import{jsx as h,Fragment as c,jsxs as g}from"react/jsx-runtime";const{width:m}=r.get("window"),p=(()=>{const t=m-40,e=d.TILE_MARGIN,i=Math.max(Math.floor((t-5*e)/4),60);return{margin:e,tileSize:i,gridContainerSize:4*i+5*e}})(),f=Array.from({length:16},(t,e)=>{const i=Math.floor(e/4),r=e%4,{margin:o,tileSize:n}=p;return{key:e,left:o+r*(n+o),top:o+i*(n+o),width:n,height:n}}),u=t.memo(({left:t,top:i,width:r,height:o})=>h(e,{style:[C.cell,{left:t,top:i,width:r,height:o}]}));u.displayName="BackgroundCell";const w=t.memo(()=>h(c,{children:f.map(({key:t,left:e,top:i,width:r,height:o})=>h(u,{left:e,top:i,width:r,height:o},t))}));w.displayName="BackgroundCells";export const GameGrid=t.memo(()=>{const i=a(),{handleMove:r}=s(),{margin:d,tileSize:c,gridContainerSize:m}=p,f=t.useMemo(()=>o.Pan().onEnd(t=>{const{translationX:e,translationY:i}=t,o=Math.abs(e),n=Math.abs(i);o>n&&o>50?r(e>0?"right":"left"):n>50&&r(i>0?"down":"up")}).runOnJS(!0),[r]),u=t.useMemo(()=>[C.grid,{width:m,height:m}],[m]),y=t.useMemo(()=>{const t=[];for(let e=0;e<i.length;e++){const r=i[e];if(r)for(let e=0;e<r.length;e++){const i=r[e];i&&t.push(h(l,{tile:i,position:{x:d+i.col*(c+d),y:d+i.row*(c+d)},size:c},i.id))}}return t},[i,d,c]);return h(e,{style:C.gameContainer,children:h(n,{gesture:f,children:g(e,{style:u,children:[h(w,{}),y]})})})});const C=i.create({gameContainer:{flex:1,justifyContent:"center",alignItems:"center",paddingHorizontal:20,paddingVertical:10,zIndex:10,position:"relative"},grid:{backgroundColor:"rgba(187, 173, 160, 0.9)",borderRadius:15,position:"relative",shadowColor:"#000",shadowOffset:{width:0,height:8},shadowOpacity:.25,shadowRadius:15,elevation:15,maxWidth:m-40},cell:{position:"absolute",backgroundColor:"rgba(238, 228, 218, 0.4)",borderRadius:6}});GameGrid.displayName="GameGrid";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","Dimensions","Gesture","GestureDetector","useGrid","
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","Dimensions","Gesture","GestureDetector","useGrid","useGameActions","GameTile","GAME_CONFIG","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","width","screenWidth","get","GRID_CALCULATIONS","horizontalPadding","availableWidth","margin","TILE_MARGIN","responsiveTileSize","Math","floor","tileSize","max","gridContainerSize","BACKGROUND_CELLS_DATA","Array","from","length","_","index","row","col","key","left","top","height","BackgroundCell","memo","style","styles","cell","displayName","BackgroundCells","children","map","GameGrid","grid","handleMove","panGesture","useMemo","Pan","onEnd","event","translationX","translationY","minDistance","absX","abs","absY","runOnJS","gridStyle","tiles","result","r","c","tile","push","position","x","y","size","id","gameContainer","gesture","create","flex","justifyContent","alignItems","paddingHorizontal","paddingVertical","zIndex","backgroundColor","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","maxWidth"],"sourceRoot":"../../../../../src","sources":["games/game-2048/components/GameGrid.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import e from"react";import{Text as t,StyleSheet as o,Animated as i}from"react-native";import{jsx as a}from"react/jsx-runtime";const r={2:"#eee4da",4:"#ede0c8",8:"#f2b179",16:"#f59563",32:"#f67c5f",64:"#f65e3b",128:"#edcf72",256:"#edcc61",512:"#edc850",1024:"#edc53f",2048:"#edc22e",4096:"#ff6b6b",8192:"#ee5a52"},s={2:"#776e65",4:"#776e65"},c=e=>r[e]||(e>8192?"#ff4757":"#3c3a32"),d=e=>s[e]||"#f9f6f2",f=e=>100>e?28:1e3>e?24:1e4>e?20:16;export const GameTile=e.memo(({tile:o,position:r,size:s})=>{const l=c(o.value),h=e.useMemo(()=>({left:r.x,top:r.y,width:s,height:s,backgroundColor:l,shadowColor:l,transform:[{scale:o.scaleValue||1}]}),[r.x,r.y,s,l,o.scaleValue]),m=e.useMemo(()=>({fontSize:f(o.value),color:d(o.value)}),[o.value]);return a(i.View,{style:[n.tile,h,n.shadow],children:a(t,{style:[n.tileText,m],children:o.value})})},(e,t)=>e.tile.id===t.tile.id&&e.tile.value===t.tile.value&&e.position.x===t.position.x&&e.position.y===t.position.y&&e.size===t.size&&e.tile.scaleValue===t.tile.scaleValue);const n=o.create({tile:{position:"absolute",borderRadius:8,justifyContent:"center",alignItems:"center"},shadow:{shadowOffset:{width:0,height:4},shadowOpacity:.3,shadowRadius:8,elevation:8},tileText:{textAlign:"center",textShadowColor:"rgba(0, 0, 0, 0.3)",textShadowOffset:{width:1,height:1},textShadowRadius:2}});GameTile.displayName="GameTile";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Text","StyleSheet","Animated","
|
|
1
|
+
{"version":3,"names":["React","Text","StyleSheet","Animated","jsx","_jsx","TILE_BACKGROUND_COLORS","TILE_TEXT_COLORS","getBackgroundColor","value","getTextColor","getTextSize","GameTile","memo","tile","position","size","backgroundColor","animatedStyle","useMemo","left","x","top","y","width","height","shadowColor","transform","scale","scaleValue","textStyle","fontSize","color","View","style","styles","shadow","children","tileText","prevProps","nextProps","id","create","borderRadius","justifyContent","alignItems","shadowOffset","shadowOpacity","shadowRadius","elevation","textAlign","textShadowColor","textShadowOffset","textShadowRadius","displayName"],"sourceRoot":"../../../../../src","sources":["games/game-2048/components/GameTile.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import o from"react";import{View as r,Text as e,StyleSheet as t}from"react-native";import{useTimeLeft as f}from"../Game2048Store.js";import{ScoreBoardContainer as s}from"../../../helpers/index.js";import{jsx as c,jsxs as i}from"react/jsx-runtime";export const ScoreBoard=o.memo(({offset:t=0})=>{const n=f(),l=o.useMemo(()=>`${Math.floor(n/60)}:${(""+n%60).padStart(2,"0")}`,[n]);return c(s,{offset:t,backgroundColor:"rgba(187, 173, 160, 0.4)",borderColor:"rgba(119, 110, 101, 0.6)",children:i(r,{style:a.scoreBoard,children:[c(e,{style:a.scoreLabel,children:"Time Left"}),c(e,{style:a.scoreValue,children:l})]})})});const a=t.create({scoreBoard:{alignItems:"center"},scoreLabel:{fontSize:16,fontWeight:"bold",color:"#ffffff",marginBottom:4},scoreValue:{fontSize:25,fontWeight:"bold",color:"#ffffff"}});ScoreBoard.displayName="ScoreBoard";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Text","StyleSheet","
|
|
1
|
+
{"version":3,"names":["React","View","Text","StyleSheet","useTimeLeft","ScoreBoardContainer","jsx","_jsx","jsxs","_jsxs","ScoreBoard","memo","offset","timeLeft","formattedTime","useMemo","minutes","Math","floor","seconds","toString","padStart","backgroundColor","borderColor","children","style","styles","scoreBoard","scoreLabel","scoreValue","create","alignItems","fontSize","fontWeight","color","marginBottom","displayName"],"sourceRoot":"../../../../../src","sources":["games/game-2048/components/ScoreBoard.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,IAAI,EAAEC,UAAU,QAAQ,cAAc;AACrD,SAASC,WAAW,QAAQ,qBAAkB;AAC9C,SAASC,mBAAmB,QAAQ,2BAAkB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAMvD,OAAO,MAAMC,UAAqC,gBAAGV,KAAK,CAACW,IAAI,CAAC,CAAC;EAACC,MAAM,GAAG;AAAC,CAAC,KAAK;EAChF,MAAMC,QAAQ,GAAGT,WAAW,CAAC,CAAC;;EAE9B;EACA,MAAMU,aAAa,GAAGd,KAAK,CAACe,OAAO,CAAC,MAAM;IACxC,MAAMC,OAAO,GAAGC,IAAI,CAACC,KAAK,CAACL,QAAQ,GAAG,EAAE,CAAC;IACzC,MAAMM,OAAO,GAAGN,QAAQ,GAAG,EAAE;IAC7B,OAAO,GAAGG,OAAO,IAAIG,OAAO,CAACC,QAAQ,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;EAC5D,CAAC,EAAE,CAACR,QAAQ,CAAC,CAAC;EAEd,oBACEN,IAAA,CAACF,mBAAmB;IAClBO,MAAM,EAAEA,MAAO;IACfU,eAAe,EAAC,0BAA0B;IAC1CC,WAAW,EAAC,0BAA0B;IAAAC,QAAA,eAEtCf,KAAA,CAACR,IAAI;MAACwB,KAAK,EAAEC,MAAM,CAACC,UAAW;MAAAH,QAAA,gBAC7BjB,IAAA,CAACL,IAAI;QAACuB,KAAK,EAAEC,MAAM,CAACE,UAAW;QAAAJ,QAAA,EAAC;MAAS,CAAM,CAAC,eAChDjB,IAAA,CAACL,IAAI;QAACuB,KAAK,EAAEC,MAAM,CAACG,UAAW;QAAAL,QAAA,EAAEV;MAAa,CAAO,CAAC;IAAA,CAClD;EAAC,CACY,CAAC;AAE1B,CAAC,CAAC;AAEF,MAAMY,MAAM,GAAGvB,UAAU,CAAC2B,MAAM,CAAC;EAC/BH,UAAU,EAAE;IACVI,UAAU,EAAE;EACd,CAAC;EACDH,UAAU,EAAE;IACVI,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBC,KAAK,EAAE,SAAS;IAChBC,YAAY,EAAE;EAChB,CAAC;EACDN,UAAU,EAAE;IACVG,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE,MAAM;IAClBC,KAAK,EAAE;EACT;AACF,CAAC,CAAC;AAEFxB,UAAU,CAAC0B,WAAW,GAAG,YAAY","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export{GameGrid}from
|
|
1
|
+
"use strict";export{GameGrid}from"./GameGrid.js";export{GameTile}from"./GameTile.js";export{ScoreBoard}from"./ScoreBoard.js";export{GameBackground}from"./GameBackground.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";import
|
|
1
|
+
"use strict";import t,{useState as e,useEffect as r,useCallback as o,useRef as n,useMemo as i}from"react";import{View as a,StyleSheet as s,Dimensions as c}from"react-native";import{GestureHandlerRootView as h}from"react-native-gesture-handler";import{playSound as m,GAME_SOUNDS as g}from"../../services/SoundsService.js";import{playHaptic as l,HapticType as d}from"../../services/HapticsService.js";import{calculateTimeBasedScore as f}from"../../services/ScoringService.js";import{MazeRunnerService as u}from"./MazeRunnerService.js";import{DEFAULT_MAZE_RUNNER_SETTINGS as p,MAZE_RUNNER_DIFFICULTY_CONFIG as b}from"./MazeRunnerConstants.js";import{GameBackground as w,ScoreBoard as S,EnhancedGameArea as C}from"./components/index.js";import{GameControlButton as v,GameOverModal as j}from"../../helpers/index.js";import{GameSettingsModal as x}from"../../helpers/index.js";import{GAME_IDS as M,DEFAULT_GAME_SETTINGS as y}from"../../services/UtilsService.js";import{jsx as T,jsxs as z}from"react/jsx-runtime";const A=()=>{const[t,o]=e(()=>{const{width:t,height:e}=c.get("window");return{width:t,height:e}});return r(()=>{const t=c.addEventListener("change",({window:t})=>{o(e=>e.width!==t.width||e.height!==t.height?{width:t.width,height:t.height}:e)});return()=>t?.remove()},[]),t};export const MazeRunner=({settings:t=y,onSettingsChange:s,onEndGame:G,onShare:L,onShowLeaderboard:P})=>{const{width:R,height:E}=A(),H=n(!1),I=o((e,r)=>{if(G&&!H.current){const o=b[t.difficulty].gameDuration,n="win"===e?f(r,o):0;G({status:e,score:n.toString()}),H.current=!0}},[G,t.difficulty]),N=i(()=>{const t=Math.max(300,Math.min(Math.min(R-40,E-220),600));return{width:t,height:t}},[R,E]),U=i(()=>{const e={...p,...t},{width:r,height:o}=c.get("window"),n=Math.max(300,Math.min(Math.min(r-40,o-220),600));return new u(e.gridSize,n,n,e.gameDuration)},[]),[V,D]=e(U.getGameState()),[F,O]=e(!1),[Y,k]=e(()=>U.getWalls()),[q,J]=e(null),K=n(!1),Q=i(()=>U.getGameConfig(),[U,N]),W=i(()=>({isPlaying:V.isPlaying,gameOver:V.isCompleted||V.gameOver,onShare:L,onShowLeaderboard:P,startButtonSubtext:"Navigate the maze!",buttonColor:"#8b4513",buttonBorderColor:"#cd853f"}),[V.isPlaying,V.isCompleted,V.gameOver,L,P]),X=i(()=>{const e=q||V,r=e.isCompleted,o=e.gameOver&&!e.isCompleted,n=b[t.difficulty],i=n.gameDuration,a=Math.max(0,i-e.timeElapsed),s=Math.floor(a/i*1e3*n.scoreMultiplier);return{isVisible:F,score:r?1e3+s:0,scoreLabel:r?"Score":"Time's Up!",scoreFormatter:t=>o?"You ran out of time!":t.toString(),buttonText:r?"Navigate Again!":"Try Again!",primaryColor:r?"rgba(139, 69, 19, 0.5)":"rgba(220, 38, 38, 0.5)",borderColor:r?"rgba(139, 69, 19, 0.5)":"rgba(220, 38, 38, 0.5)",buttonColor:"#ffffff",buttonBorderColor:"#ffffff",buttonTextColor:r?"#8b4513":"#dc2626"}},[F,q,V,t.difficulty]);r(()=>{U.resetGame()},[U]),r(()=>{const e=b[t.difficulty],r=e.gridSize,o=e.gameDuration;U.updateSettings(r,o,N.width,N.height)},[t.difficulty,U,N]);const Z=n(!1),$=o(t=>{D(t),t.isCompleted&&!K.current&&(K.current=!0,J({...t}),_(),I("win",t.timeElapsed),setTimeout(()=>{O(!0)},500)),!t.gameOver||t.isCompleted||Z.current||(Z.current=!0,J({...t}),tt(),I("lose",t.timeElapsed),setTimeout(()=>{O(!0)},500)),k(U.getWalls())},[U,I]);r(()=>(U.setGameStateChangeCallback($),()=>{try{U.stopGame()}catch{}try{U.resetGame()}catch{}U.cleanup()}),[U,$]);const _=o(()=>{m(g.MAZE_RUNNER.COMPLETE,t.enableSounds),l(d.SUCCESS,t.enableHaptics)},[t.enableSounds,t.enableHaptics]),tt=o(()=>{m(g.MAZE_RUNNER.STOP,t.enableSounds),l(d.ERROR,t.enableHaptics)},[t.enableSounds,t.enableHaptics]),et=o(()=>{H.current=!1,K.current=!1,Z.current=!1,U.startGame(),O(!1),m(g.MAZE_RUNNER.START,t.enableSounds),l(d.MEDIUM,t.enableHaptics)},[U,t.enableSounds,t.enableHaptics]),rt=o(()=>{I("cancel",V.timeElapsed),U.stopGame(),m(g.MAZE_RUNNER.STOP,t.enableSounds)},[U,t.enableSounds,I,V.timeElapsed]),ot=o(t=>U.updateBallPosition(t),[U]),nt=o(()=>{K.current=!1,Z.current=!1,J(null),O(!1),U.resetGame()},[U]),it=t?.offset??0;return T(a,{style:B.container,children:T(h,{children:z(a,{style:B.gameContainer,children:[T(w,{width:R,height:E}),T(S,{gameState:V,offset:it,gameDuration:b[t.difficulty].gameDuration}),T(a,{style:[B.gameAreaContainer,{marginTop:it}],children:T(C,{gameState:V,gameConfig:Q,walls:Y,onBallPositionChange:ot,hapticEnabled:t.enableHaptics})}),T(v,{...W,onStartGame:et,onStopGame:rt}),T(j,{...X,onPlayAgain:nt}),T(x,{gameId:M.MAZE_RUNNER,settings:t||y,onSettingsChange:s})]})})})};const B=s.create({container:{flex:1},gameContainer:{flex:1},gameAreaContainer:{flex:1,justifyContent:"center",alignItems:"center",paddingHorizontal:10,paddingVertical:5}});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useEffect","useCallback","useRef","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","playSound","GAME_SOUNDS","playHaptic","HapticType","calculateTimeBasedScore","MazeRunnerService","DEFAULT_MAZE_RUNNER_SETTINGS","MAZE_RUNNER_DIFFICULTY_CONFIG","GameBackground","ScoreBoard","EnhancedGameArea","GameControlButton","GameOverModal","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","useResponsiveDimensions","dimensions","setDimensions","width","height","get","handleDimensionChange","window","prev","subscription","addEventListener","remove","MazeRunner","settings","onSettingsChange","onEndGame","screenWidth","screenHeight","gameReportedRef","reportGameEnd","status","currentScore","current","difficultyConfig","difficulty","expectedTime","gameDuration","calculatedScore","score","toString","responsiveDimensions","reservedHeight","availableHeight","availableWidth","maxDimension","Math","min","gameAreaSize","max","gameService","currentSettings","initialWidth","initialHeight","gridSize","gameState","setGameState","getGameState","showGameOverModal","setShowGameOverModal","walls","setWalls","getWalls","completionHandledRef","gameConfig","getGameConfig","gameControlButtonProps","isPlaying","gameOver","isCompleted","startButtonText","stopButtonText","startButtonSubtext","stopButtonSubtext","startButtonColor","stopButtonColor","startButtonBorderColor","stopButtonBorderColor","gameOverModalProps","isVisible","timeElapsed","scoreLabel","scoreFormatter","time","minutes","floor","seconds","padStart","buttonText","primaryColor","borderColor","buttonColor","buttonBorderColor","buttonTextColor","resetGame","updateSettings","handleStateChange","newState","handleGameCompleted","setTimeout","setGameStateChangeCallback","stopGame","cleanup","MAZE_RUNNER","COMPLETE","enableSounds","SUCCESS","enableHaptics","handleStartGame","startGame","START","MEDIUM","handleStopGame","STOP","handleBallPositionChange","position","updateBallPosition","handlePlayAgain","offset","style","styles","container","children","gameContainer","gameAreaContainer","marginTop","onBallPositionChange","hapticEnabled","onStartGame","onStopGame","onPlayAgain","gameId","create","flex","justifyContent","alignItems","paddingHorizontal","paddingVertical"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunner.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useState","useEffect","useCallback","useRef","useMemo","View","StyleSheet","Dimensions","GestureHandlerRootView","playSound","GAME_SOUNDS","playHaptic","HapticType","calculateTimeBasedScore","MazeRunnerService","DEFAULT_MAZE_RUNNER_SETTINGS","MAZE_RUNNER_DIFFICULTY_CONFIG","GameBackground","ScoreBoard","EnhancedGameArea","GameControlButton","GameOverModal","GameSettingsModal","GAME_IDS","DEFAULT_GAME_SETTINGS","jsx","_jsx","jsxs","_jsxs","useResponsiveDimensions","dimensions","setDimensions","width","height","get","handleDimensionChange","window","prev","subscription","addEventListener","remove","MazeRunner","settings","onSettingsChange","onEndGame","onShare","onShowLeaderboard","screenWidth","screenHeight","gameReportedRef","reportGameEnd","status","currentScore","current","difficultyConfig","difficulty","expectedTime","gameDuration","calculatedScore","score","toString","responsiveDimensions","reservedHeight","availableHeight","availableWidth","maxDimension","Math","min","gameAreaSize","max","gameService","currentSettings","initialWidth","initialHeight","gridSize","gameState","setGameState","getGameState","showGameOverModal","setShowGameOverModal","walls","setWalls","getWalls","finalGameState","setFinalGameState","completionHandledRef","gameConfig","getGameConfig","gameControlButtonProps","isPlaying","gameOver","isCompleted","startButtonSubtext","buttonColor","buttonBorderColor","gameOverModalProps","stateForModal","isWin","isTimeout","maxTime","timeRemaining","timeElapsed","baseScore","timeBonus","floor","scoreMultiplier","finalScore","isVisible","scoreLabel","scoreFormatter","buttonText","primaryColor","borderColor","buttonTextColor","resetGame","updateSettings","timeoutHandledRef","handleStateChange","newState","handleGameCompleted","setTimeout","handleGameTimeout","setGameStateChangeCallback","stopGame","cleanup","MAZE_RUNNER","COMPLETE","enableSounds","SUCCESS","enableHaptics","STOP","ERROR","handleStartGame","startGame","START","MEDIUM","handleStopGame","handleBallPositionChange","position","updateBallPosition","handlePlayAgain","offset","style","styles","container","children","gameContainer","gameAreaContainer","marginTop","onBallPositionChange","hapticEnabled","onStartGame","onStopGame","onPlayAgain","gameId","create","flex","justifyContent","alignItems","paddingHorizontal","paddingVertical"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunner.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export const DEFAULT_MAZE_RUNNER_SETTINGS
|
|
1
|
+
"use strict";export const DEFAULT_MAZE_RUNNER_SETTINGS={difficulty:"medium",gameDuration:120,soundEnabled:!0,hapticEnabled:!0,gridSize:10,showHints:!1};export const MAZE_RUNNER_DIFFICULTY_CONFIG={easy:{gridSize:8,timeBonus:1.5,scoreMultiplier:1,hintAvailable:!0,gameDuration:120},medium:{gridSize:10,timeBonus:1.2,scoreMultiplier:1.2,hintAvailable:!1,gameDuration:180},hard:{gridSize:12,timeBonus:1,scoreMultiplier:1.5,hintAvailable:!1,gameDuration:180}};export const MAZE_RUNNER_THEME={backgroundColor:"rgba(0, 0, 0, 0.7)",headerBackgroundColor:"#8b4513",headerTextColor:"#ffffff",sectionBackgroundColor:"rgba(139, 69, 19, 0.15)",sectionTitleColor:"#8b4513",buttonSelectedColor:"#8b4513",buttonUnselectedColor:"rgba(255, 255, 255, 0.2)",buttonSelectedTextColor:"#ffffff",buttonUnselectedTextColor:"rgba(255, 255, 255, 0.7)",switchTrackColorFalse:"rgba(139, 69, 19, 0.3)",switchTrackColorTrue:"#8b4513",switchThumbColor:"#ffffff",infoTextColor:"rgba(255, 255, 255, 0.9)"};export const MAZE_RUNNER_DIFFICULTY_DESCRIPTIONS={easy:"Small maze, more forgiving maze",medium:"Balanced maze, balanced challenge",hard:"Complex maze, maximum challenge!"};export const MAZE_ADVENTURE_COLORS=["#FF6B6B","#4ECDC4","#45B7D1","#96CEB4","#FFEAA7","#DDA0DD","#98D8C8","#F7DC6F","#BB8FCE","#85C1E9","#82E0AA","#F8C471","#D7BDE2","#A9DFBF","#FAD7A0","#D5A6BD"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_MAZE_RUNNER_SETTINGS","difficulty","gameDuration","soundEnabled","hapticEnabled","gridSize","showHints","MAZE_RUNNER_DIFFICULTY_CONFIG","easy","timeBonus","scoreMultiplier","hintAvailable","medium","hard","MAZE_RUNNER_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","MAZE_RUNNER_DIFFICULTY_DESCRIPTIONS","MAZE_ADVENTURE_COLORS"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunnerConstants.ts"],"mappings":";;AAEA;;AAUA,OAAO,MAAMA,4BAAgD,GAAG;EAC9DC,UAAU,EAAE,QAAQ;EACpBC,YAAY,EAAE,GAAG;EACjBC,YAAY,EAAE,IAAI;EAClBC,aAAa,EAAE,IAAI;EACnBC,QAAQ,EAAE,EAAE;EACZC,SAAS,EAAE;AACb,CAAC;AAED,OAAO,MAAMC,6BAA6B,GAAG;EAC3CC,IAAI,EAAE;IACJH,QAAQ,EAAE,CAAC;IACXI,SAAS,EAAE,GAAG;IACdC,eAAe,EAAE,GAAG;IACpBC,aAAa,EAAE,IAAI;IACnBT,YAAY,EAAE;
|
|
1
|
+
{"version":3,"names":["DEFAULT_MAZE_RUNNER_SETTINGS","difficulty","gameDuration","soundEnabled","hapticEnabled","gridSize","showHints","MAZE_RUNNER_DIFFICULTY_CONFIG","easy","timeBonus","scoreMultiplier","hintAvailable","medium","hard","MAZE_RUNNER_THEME","backgroundColor","headerBackgroundColor","headerTextColor","sectionBackgroundColor","sectionTitleColor","buttonSelectedColor","buttonUnselectedColor","buttonSelectedTextColor","buttonUnselectedTextColor","switchTrackColorFalse","switchTrackColorTrue","switchThumbColor","infoTextColor","MAZE_RUNNER_DIFFICULTY_DESCRIPTIONS","MAZE_ADVENTURE_COLORS"],"sourceRoot":"../../../../src","sources":["games/maze-runner/MazeRunnerConstants.ts"],"mappings":";;AAEA;;AAUA,OAAO,MAAMA,4BAAgD,GAAG;EAC9DC,UAAU,EAAE,QAAQ;EACpBC,YAAY,EAAE,GAAG;EACjBC,YAAY,EAAE,IAAI;EAClBC,aAAa,EAAE,IAAI;EACnBC,QAAQ,EAAE,EAAE;EACZC,SAAS,EAAE;AACb,CAAC;AAED,OAAO,MAAMC,6BAA6B,GAAG;EAC3CC,IAAI,EAAE;IACJH,QAAQ,EAAE,CAAC;IACXI,SAAS,EAAE,GAAG;IACdC,eAAe,EAAE,GAAG;IACpBC,aAAa,EAAE,IAAI;IACnBT,YAAY,EAAE,GAAG,CAAE;EACrB,CAAC;EACDU,MAAM,EAAE;IACNP,QAAQ,EAAE,EAAE;IACZI,SAAS,EAAE,GAAG;IACdC,eAAe,EAAE,GAAG;IACpBC,aAAa,EAAE,KAAK;IACpBT,YAAY,EAAE,GAAG,CAAE;EACrB,CAAC;EACDW,IAAI,EAAE;IACJR,QAAQ,EAAE,EAAE;IACZI,SAAS,EAAE,GAAG;IACdC,eAAe,EAAE,GAAG;IACpBC,aAAa,EAAE,KAAK;IACpBT,YAAY,EAAE,GAAG,CAAE;EACrB;AACF,CAAU;;AAEV;AACA,OAAO,MAAMY,iBAAoC,GAAG;EAClDC,eAAe,EAAE,oBAAoB;EAAE;EACvCC,qBAAqB,EAAE,SAAS;EAAE;EAClCC,eAAe,EAAE,SAAS;EAC1BC,sBAAsB,EAAE,yBAAyB;EAAE;EACnDC,iBAAiB,EAAE,SAAS;EAAE;EAC9BC,mBAAmB,EAAE,SAAS;EAAE;EAChCC,qBAAqB,EAAE,0BAA0B;EACjDC,uBAAuB,EAAE,SAAS;EAClCC,yBAAyB,EAAE,0BAA0B;EAAE;EACvDC,qBAAqB,EAAE,wBAAwB;EAC/CC,oBAAoB,EAAE,SAAS;EAAE;EACjCC,gBAAgB,EAAE,SAAS;EAC3BC,aAAa,EAAE,0BAA0B,CAAE;AAC7C,CAAC;;AAED;AACA,OAAO,MAAMC,mCAAmC,GAAG;EACjDpB,IAAI,EAAE,iCAAiC;EACvCI,MAAM,EAAE,mCAAmC;EAC3CC,IAAI,EAAE;AACR,CAAU;;AAEV;AACA,OAAO,MAAMgB,qBAAqB,GAAG,CACnC,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,SAAS;AAAE;AACX,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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";export class MazeRunnerService{gameTimer = null;constructor(gridSize = 15,gameAreaWidth = 350,gameAreaHeight = 500,gameDuration = 120){this.gameConfig ={GRID_SIZE:gridSize,CELL_SIZE:Math.min(gameAreaWidth,gameAreaHeight)/ gridSize,BALL_SIZE:18,PIPE_WIDTH:8,GAME_AREA_WIDTH:gameAreaWidth,GAME_AREA_HEIGHT:gameAreaHeight,COLLISION_TOLERANCE:5,SCORE_PER_COMPLETION:100,TIME_BONUS_MULTIPLIER:10,GAME_DURATION:gameDuration};this.gameState ={isPlaying:false,isPaused:false,score:0,timeElapsed:0,ballPosition:{x:0,y:0},targetPosition:{x:0,y:0},isCompleted:false,gameOver:false};this.maze = [];this.walls = [];this.initializeMaze();this.generateMazeWithBacktracking();this.generateWalls();this.setStartAndEndPositions();}setGameStateChangeCallback(callback){this.onGameStateChange = callback;}notifyGameStateChange(){if(this.onGameStateChange){this.onGameStateChange({...this.gameState});}}initializeMaze(){this.maze = [];for(let y = 0;y < this.gameConfig.GRID_SIZE;y++){this.maze[y] = [];for(let x = 0;x < this.gameConfig.GRID_SIZE;x++){if(this.maze[y]){this.maze[y][x] ={x,y,walls:{top:true,right:true,bottom:true,left:true},visited:false};}}}}generateNewMaze(){this.initializeMaze();this.generateMazeWithBacktracking();this.generateWalls();this.setStartAndEndPositions();this.gameState.isCompleted = false;this.gameState.isPlaying = false;this.gameState.isPaused = false;this.gameState.gameOver = false;this.gameState.score = 0;this.gameState.timeElapsed = 0;this.notifyGameStateChange();}generateMazeWithBacktracking(){const stack = [];const startCell = this.maze[0]?.[0];if(startCell){startCell.visited = true;stack.push(startCell);}while(stack.length > 0){const current = stack[stack.length - 1];const neighbors = current ? this.getUnvisitedNeighbors(current):[];if(neighbors.length > 0){const next = neighbors[Math.floor(Math.random()* neighbors.length)];if(current && next)this.removeWallBetween(current,next);if(next){next.visited = true;stack.push(next);}}else{stack.pop();}}this.ensureConnectivity();}ensureConnectivity(){if(!this.hasPathFromStartToEnd()){this.createMinimalPath();}}hasPathFromStartToEnd(){const visited = Array(this.gameConfig.GRID_SIZE).fill(null).map(()=> Array(this.gameConfig.GRID_SIZE).fill(false));const queue = [{x:0,y:0}];if(visited[0])visited[0][0] = true;while(queue.length > 0){const current = queue.shift();if(current.x === this.gameConfig.GRID_SIZE - 1 && current.y === this.gameConfig.GRID_SIZE - 1){return true;}const directions = [{dx:0,dy:-1,wall:'top'},{dx:1,dy:0,wall:'right'},{dx:0,dy:1,wall:'bottom'},{dx:-1,dy:0,wall:'left'}];for(const dir of directions){const newX = current.x + dir.dx;const newY = current.y + dir.dy;if(newX >= 0 && newX < this.gameConfig.GRID_SIZE && newY >= 0 && newY < this.gameConfig.GRID_SIZE && !visited[newY]?.[newX]){const currentCell = this.maze[current.y]?.[current.x];if(currentCell && !currentCell.walls[dir.wall]){if(visited[newY])visited[newY][newX] = true;queue.push({x:newX,y:newY});}}}}return false;}createMinimalPath(){let currentX = 0;let currentY = 0;const endX = this.gameConfig.GRID_SIZE - 1;const endY = this.gameConfig.GRID_SIZE - 1;const visited = new Set();while(currentX !== endX || currentY !== endY){const key = `${currentX},${currentY}`;if(visited.has(key)){break;}visited.add(key);const possibleMoves = [];if(currentX < endX)possibleMoves.push('right');if(currentY < endY)possibleMoves.push('down');if(currentX > 0)possibleMoves.push('left');if(currentY > 0)possibleMoves.push('up');if(possibleMoves.length === 0)break;let direction;if(Math.random()< 0.6 &&(currentX !== endX || currentY !== endY)){if(currentX < endX && Math.random()< 0.5){direction = 'right';}else if(currentY < endY){direction = 'down';}else if(currentX < endX){direction = 'right';}else{direction = possibleMoves[Math.floor(Math.random()* possibleMoves.length)];}}else{direction = possibleMoves[Math.floor(Math.random()* possibleMoves.length)];}const cell = this.maze[currentY]?.[currentX];if(direction === 'right' && currentX < this.gameConfig.GRID_SIZE - 1 && cell){cell.walls.right = false;const rightCell = this.maze[currentY]?.[currentX + 1];if(rightCell)rightCell.walls.left = false;currentX++;}else if(direction === 'down' && currentY < this.gameConfig.GRID_SIZE - 1 && cell){cell.walls.bottom = false;const bottomCell = this.maze[currentY + 1]?.[currentX];if(bottomCell)bottomCell.walls.top = false;currentY++;}else if(direction === 'left' && currentX > 0 && cell){cell.walls.left = false;const leftCell = this.maze[currentY]?.[currentX - 1];if(leftCell)leftCell.walls.right = false;currentX--;}else if(direction === 'up' && currentY > 0 && cell){cell.walls.top = false;const topCell = this.maze[currentY - 1]?.[currentX];if(topCell)topCell.walls.bottom = false;currentY--;}}}getUnvisitedNeighbors(cell){const neighbors = [];const{x,y}= cell;if(y > 0 && this.maze[y - 1]?.[x] && !this.maze[y - 1]?.[x]?.visited){const topCell = this.maze[y - 1]?.[x];if(topCell){neighbors.push(topCell);}}if(x < this.gameConfig.GRID_SIZE - 1 && this.maze[y]?.[x + 1] && !this.maze[y]?.[x + 1]?.visited){const rightCell = this.maze[y]?.[x + 1];if(rightCell){neighbors.push(rightCell);}}if(y < this.gameConfig.GRID_SIZE - 1 && this.maze[y + 1]?.[x] && !this.maze[y + 1]?.[x]?.visited){const bottomCell = this.maze[y + 1]?.[x];if(bottomCell){neighbors.push(bottomCell);}}if(x > 0 && this.maze[y]?.[x - 1] && !this.maze[y]?.[x - 1]?.visited){const leftCell = this.maze[y]?.[x - 1];if(leftCell){neighbors.push(leftCell);}}return neighbors;}removeWallBetween(current,next){const dx = current.x - next.x;const dy = current.y - next.y;if(dx === 1){current.walls.left = false;next.walls.right = false;}else if(dx === -1){current.walls.right = false;next.walls.left = false;}else if(dy === 1){current.walls.top = false;next.walls.bottom = false;}else if(dy === -1){current.walls.bottom = false;next.walls.top = false;}}generateWalls(){this.walls = [];const wallThickness = 4;const cellSize = this.gameConfig.CELL_SIZE;const mazeWidth = this.gameConfig.GRID_SIZE * cellSize;const mazeHeight = this.gameConfig.GRID_SIZE * cellSize;this.walls.push({x:0,y:0,width:mazeWidth,height:wallThickness,type:'horizontal'});this.walls.push({x:0,y:mazeHeight - wallThickness,width:mazeWidth,height:wallThickness,type:'horizontal'});this.walls.push({x:0,y:0,width:wallThickness,height:mazeHeight,type:'vertical'});this.walls.push({x:mazeWidth - wallThickness,y:0,width:wallThickness,height:mazeHeight,type:'vertical'});for(let y = 0;y < this.gameConfig.GRID_SIZE;y++){for(let x = 0;x < this.gameConfig.GRID_SIZE;x++){const cell = this.maze[y]?.[x];if(!cell)continue;const cellX = x * cellSize;const cellY = y * cellSize;if(cell.walls.top && y > 0){this.walls.push({x:cellX,y:cellY,width:cellSize,height:wallThickness,type:'horizontal'});}if(cell.walls.left && x > 0){this.walls.push({x:cellX,y:cellY,width:wallThickness,height:cellSize,type:'vertical'});}}}}setStartAndEndPositions(){const cellSize = this.gameConfig.CELL_SIZE;this.gameState.ballPosition ={x:cellSize / 2,y:cellSize / 2};this.gameState.targetPosition ={x:(this.gameConfig.GRID_SIZE - 1)* cellSize + cellSize / 2,y:(this.gameConfig.GRID_SIZE - 1)* cellSize + cellSize / 2};}updateSettings(gridSize,gameDuration,gameAreaWidth,gameAreaHeight){const newGameAreaWidth = gameAreaWidth || this.gameConfig.GAME_AREA_WIDTH;const newGameAreaHeight = gameAreaHeight || this.gameConfig.GAME_AREA_HEIGHT;this.gameConfig.GRID_SIZE = gridSize;this.gameConfig.GAME_AREA_WIDTH = newGameAreaWidth;this.gameConfig.GAME_AREA_HEIGHT = newGameAreaHeight;this.gameConfig.CELL_SIZE = Math.min(newGameAreaWidth,newGameAreaHeight)/ gridSize;this.gameConfig.GAME_DURATION = gameDuration;this.generateNewMaze();this.gameState.isPlaying = false;this.gameState.isPaused = false;this.gameState.timeElapsed = 0;this.gameState.isCompleted = false;this.gameState.gameOver = false;this.stopTimer();this.notifyGameStateChange();}resetGame(){this.generateNewMaze();this.gameState.isPlaying = false;this.gameState.isPaused = false;this.gameState.score = 0;this.gameState.timeElapsed = 0;this.gameState.isCompleted = false;this.gameState.gameOver = false;this.stopTimer();this.notifyGameStateChange();}startGame(){this.gameState.ballPosition ={x:this.gameConfig.CELL_SIZE / 2,y:this.gameConfig.CELL_SIZE / 2};this.gameState.targetPosition ={x:(this.gameConfig.GRID_SIZE - 1)* this.gameConfig.CELL_SIZE + this.gameConfig.CELL_SIZE / 2,y:(this.gameConfig.GRID_SIZE - 1)* this.gameConfig.CELL_SIZE + this.gameConfig.CELL_SIZE / 2};this.gameState.isPlaying = true;this.gameState.isPaused = false;this.gameState.score = 0;this.gameState.timeElapsed = 0;this.gameState.isCompleted = false;this.gameState.gameOver = false;this.startTimer();this.notifyGameStateChange();}pauseGame(){this.gameState.isPaused = true;this.stopTimer();this.notifyGameStateChange();}resumeGame(){this.gameState.isPaused = false;this.startTimer();this.notifyGameStateChange();}stopGame(){this.gameState.isPlaying = false;this.gameState.isPaused = false;this.stopTimer();this.notifyGameStateChange();}startTimer(){this.stopTimer();this.gameTimer = setInterval(()=>{if(!this.gameState.isPaused && this.gameState.isPlaying){this.gameState.timeElapsed += 1;this.notifyGameStateChange();}},1000);}stopTimer(){if(this.gameTimer){clearInterval(this.gameTimer);this.gameTimer = null;}}updateBallPosition(newPosition){if(!this.gameState.isPlaying || this.gameState.isPaused){return false;}if(this.isValidPosition(newPosition)){this.gameState.ballPosition = newPosition;if(!this.gameState.isCompleted && this.isNearTarget(newPosition)){this.completeLevel();}this.notifyGameStateChange();return true;}return false;}isValidPosition(position){const{x,y}= position;const ballRadius = this.gameConfig.BALL_SIZE / 2;for(const wall of this.walls){if(this.ballCollidesWithWall(x,y,ballRadius,wall)){return false;}}const padding = ballRadius + 2;if(x - ballRadius < padding || x + ballRadius > this.gameConfig.GAME_AREA_WIDTH - padding || y - ballRadius < padding || y + ballRadius > this.gameConfig.GAME_AREA_HEIGHT - padding){return false;}return true;}ballCollidesWithWall(ballX,ballY,ballRadius,wall){const closestX = Math.max(wall.x,Math.min(ballX,wall.x + wall.width));const closestY = Math.max(wall.y,Math.min(ballY,wall.y + wall.height));const distanceX = ballX - closestX;const distanceY = ballY - closestY;const distanceSquared = distanceX * distanceX + distanceY * distanceY;return distanceSquared < ballRadius * ballRadius;}isNearTarget(position){const distance = Math.sqrt(Math.pow(position.x - this.gameState.targetPosition.x,2)+ Math.pow(position.y - this.gameState.targetPosition.y,2));return distance < this.gameConfig.BALL_SIZE * 1.5;}completeLevel(){this.gameState.score += this.gameConfig.SCORE_PER_COMPLETION;this.gameState.isCompleted = true;this.gameState.isPlaying = false;this.stopTimer();this.notifyGameStateChange();}getGameState(){return{...this.gameState};}getGameConfig(){return{...this.gameConfig};}getWalls(){return [...this.walls];}getMaze(){return this.maze.map(row => row.map(cell =>({...cell})));}formatTime(seconds){const minutes = Math.floor(seconds / 60);const remainingSeconds = seconds % 60;return `${minutes}:${remainingSeconds.toString().padStart(2,'0')}`;}cleanup(){this.stopTimer();}}
|
|
1
|
+
"use strict";export class MazeRunnerService{gameTimer=null;constructor(t=15,i=350,s=500,h=120){this.gameConfig={GRID_SIZE:t,CELL_SIZE:Math.min(i,s)/t,BALL_SIZE:18,PIPE_WIDTH:8,GAME_AREA_WIDTH:i,GAME_AREA_HEIGHT:s,COLLISION_TOLERANCE:5,SCORE_PER_COMPLETION:100,TIME_BONUS_MULTIPLIER:10,GAME_DURATION:h},this.gameState={isPlaying:!1,isPaused:!1,score:0,timeElapsed:0,ballPosition:{x:0,y:0},targetPosition:{x:0,y:0},isCompleted:!1,gameOver:!1},this.maze=[],this.walls=[],this.initializeMaze(),this.generateMazeWithBacktracking(),this.generateWalls(),this.setStartAndEndPositions()}setGameStateChangeCallback(t){this.onGameStateChange=t}notifyGameStateChange(){this.onGameStateChange&&this.onGameStateChange({...this.gameState})}initializeMaze(){this.maze=[];for(let t=0;t<this.gameConfig.GRID_SIZE;t++){this.maze[t]=[];for(let i=0;i<this.gameConfig.GRID_SIZE;i++)this.maze[t]&&(this.maze[t][i]={x:i,y:t,walls:{top:!0,right:!0,bottom:!0,left:!0},visited:!1})}}generateNewMaze(){this.initializeMaze(),this.generateMazeWithBacktracking(),this.generateWalls(),this.setStartAndEndPositions(),this.gameState.isCompleted=!1,this.gameState.isPlaying=!1,this.gameState.isPaused=!1,this.gameState.gameOver=!1,this.gameState.score=0,this.gameState.timeElapsed=0,this.notifyGameStateChange()}generateMazeWithBacktracking(){const t=[],i=this.maze[0]?.[0];for(i&&(i.visited=!0,t.push(i));t.length>0;){const i=t[t.length-1],s=i?this.getUnvisitedNeighbors(i):[];if(s.length>0){const h=s[Math.floor(Math.random()*s.length)];i&&h&&this.removeWallBetween(i,h),h&&(h.visited=!0,t.push(h))}else t.pop()}this.ensureConnectivity()}ensureConnectivity(){this.hasPathFromStartToEnd()||this.createMinimalPath()}hasPathFromStartToEnd(){const t=Array(this.gameConfig.GRID_SIZE).fill(null).map(()=>Array(this.gameConfig.GRID_SIZE).fill(!1)),i=[{x:0,y:0}];for(t[0]&&(t[0][0]=!0);i.length>0;){const s=i.shift();if(s.x===this.gameConfig.GRID_SIZE-1&&s.y===this.gameConfig.GRID_SIZE-1)return!0;const h=[{dx:0,dy:-1,wall:"top"},{dx:1,dy:0,wall:"right"},{dx:0,dy:1,wall:"bottom"},{dx:-1,dy:0,wall:"left"}];for(const e of h){const h=s.x+e.dx,a=s.y+e.dy;if(h>=0&&h<this.gameConfig.GRID_SIZE&&a>=0&&a<this.gameConfig.GRID_SIZE&&!t[a]?.[h]){const n=this.maze[s.y]?.[s.x];n&&!n.walls[e.wall]&&(t[a]&&(t[a][h]=!0),i.push({x:h,y:a}))}}}return!1}createMinimalPath(){let t=0,i=0;const s=this.gameConfig.GRID_SIZE-1,h=this.gameConfig.GRID_SIZE-1,e=new Set;for(;t!==s||i!==h;){const a=`${t},${i}`;if(e.has(a))break;e.add(a);const n=[];if(s>t&&n.push("right"),h>i&&n.push("down"),t>0&&n.push("left"),i>0&&n.push("up"),0===n.length)break;let o;o=Math.random()>=.6||t===s&&i===h?n[Math.floor(Math.random()*n.length)]:s>t&&.5>Math.random()?"right":h>i?"down":s>t?"right":n[Math.floor(Math.random()*n.length)];const r=this.maze[i]?.[t];if("right"===o&&t<this.gameConfig.GRID_SIZE-1&&r){r.walls.right=!1;const s=this.maze[i]?.[t+1];s&&(s.walls.left=!1),t++}else if("down"===o&&i<this.gameConfig.GRID_SIZE-1&&r){r.walls.bottom=!1;const s=this.maze[i+1]?.[t];s&&(s.walls.top=!1),i++}else if("left"===o&&t>0&&r){r.walls.left=!1;const s=this.maze[i]?.[t-1];s&&(s.walls.right=!1),t--}else if("up"===o&&i>0&&r){r.walls.top=!1;const s=this.maze[i-1]?.[t];s&&(s.walls.bottom=!1),i--}}}getUnvisitedNeighbors(t){const i=[],{x:s,y:h}=t;if(h>0&&this.maze[h-1]?.[s]&&!this.maze[h-1]?.[s]?.visited){const t=this.maze[h-1]?.[s];t&&i.push(t)}if(s<this.gameConfig.GRID_SIZE-1&&this.maze[h]?.[s+1]&&!this.maze[h]?.[s+1]?.visited){const t=this.maze[h]?.[s+1];t&&i.push(t)}if(h<this.gameConfig.GRID_SIZE-1&&this.maze[h+1]?.[s]&&!this.maze[h+1]?.[s]?.visited){const t=this.maze[h+1]?.[s];t&&i.push(t)}if(s>0&&this.maze[h]?.[s-1]&&!this.maze[h]?.[s-1]?.visited){const t=this.maze[h]?.[s-1];t&&i.push(t)}return i}removeWallBetween(t,i){const s=t.x-i.x,h=t.y-i.y;1===s?(t.walls.left=!1,i.walls.right=!1):-1===s?(t.walls.right=!1,i.walls.left=!1):1===h?(t.walls.top=!1,i.walls.bottom=!1):-1===h&&(t.walls.bottom=!1,i.walls.top=!1)}generateWalls(){this.walls=[];const t=this.gameConfig.CELL_SIZE,i=this.gameConfig.GRID_SIZE*t,s=this.gameConfig.GRID_SIZE*t;this.walls.push({x:0,y:0,width:i,height:4,type:"horizontal"}),this.walls.push({x:0,y:s-4,width:i,height:4,type:"horizontal"}),this.walls.push({x:0,y:0,width:4,height:s,type:"vertical"}),this.walls.push({x:i-4,y:0,width:4,height:s,type:"vertical"});for(let i=0;i<this.gameConfig.GRID_SIZE;i++)for(let s=0;s<this.gameConfig.GRID_SIZE;s++){const h=this.maze[i]?.[s];if(!h)continue;const e=s*t,a=i*t;h.walls.top&&i>0&&this.walls.push({x:e,y:a,width:t,height:4,type:"horizontal"}),h.walls.left&&s>0&&this.walls.push({x:e,y:a,width:4,height:t,type:"vertical"})}}setStartAndEndPositions(){const t=this.gameConfig.CELL_SIZE;this.gameState.ballPosition={x:t/2,y:t/2},this.gameState.targetPosition={x:(this.gameConfig.GRID_SIZE-1)*t+t/2,y:(this.gameConfig.GRID_SIZE-1)*t+t/2}}updateSettings(t,i,s,h){const e=s||this.gameConfig.GAME_AREA_WIDTH,a=h||this.gameConfig.GAME_AREA_HEIGHT;this.gameConfig.GRID_SIZE=t,this.gameConfig.GAME_AREA_WIDTH=e,this.gameConfig.GAME_AREA_HEIGHT=a,this.gameConfig.CELL_SIZE=Math.min(e,a)/t,this.gameConfig.GAME_DURATION=i,this.generateNewMaze(),this.gameState.isPlaying=!1,this.gameState.isPaused=!1,this.gameState.timeElapsed=0,this.gameState.isCompleted=!1,this.gameState.gameOver=!1,this.stopTimer(),this.notifyGameStateChange()}resetGame(){this.generateNewMaze(),this.gameState.isPlaying=!1,this.gameState.isPaused=!1,this.gameState.score=0,this.gameState.timeElapsed=0,this.gameState.isCompleted=!1,this.gameState.gameOver=!1,this.stopTimer(),this.notifyGameStateChange()}startGame(){this.gameState.ballPosition={x:this.gameConfig.CELL_SIZE/2,y:this.gameConfig.CELL_SIZE/2},this.gameState.targetPosition={x:(this.gameConfig.GRID_SIZE-1)*this.gameConfig.CELL_SIZE+this.gameConfig.CELL_SIZE/2,y:(this.gameConfig.GRID_SIZE-1)*this.gameConfig.CELL_SIZE+this.gameConfig.CELL_SIZE/2},this.gameState.isPlaying=!0,this.gameState.isPaused=!1,this.gameState.score=0,this.gameState.timeElapsed=0,this.gameState.isCompleted=!1,this.gameState.gameOver=!1,this.startTimer(),this.notifyGameStateChange()}pauseGame(){this.gameState.isPaused=!0,this.stopTimer(),this.notifyGameStateChange()}resumeGame(){this.gameState.isPaused=!1,this.startTimer(),this.notifyGameStateChange()}stopGame(){this.gameState.isPlaying=!1,this.gameState.isPaused=!1,this.stopTimer(),this.notifyGameStateChange()}startTimer(){this.stopTimer(),this.gameTimer=setInterval(()=>{!this.gameState.isPaused&&this.gameState.isPlaying&&(this.gameState.timeElapsed+=1,this.gameState.timeElapsed<this.gameConfig.GAME_DURATION||(this.gameState.gameOver=!0,this.gameState.isPlaying=!1,this.stopTimer()),this.notifyGameStateChange())},1e3)}stopTimer(){this.gameTimer&&(clearInterval(this.gameTimer),this.gameTimer=null)}updateBallPosition(t){return!(!this.gameState.isPlaying||this.gameState.isPaused||!this.isValidPosition(t)||(this.gameState.ballPosition=t,!this.gameState.isCompleted&&this.isNearTarget(t)&&this.completeLevel(),this.notifyGameStateChange(),0))}isValidPosition(t){const{x:i,y:s}=t,h=this.gameConfig.BALL_SIZE/2;for(const t of this.walls)if(this.ballCollidesWithWall(i,s,h,t))return!1;const e=h+2;return!(e>i-h||i+h>this.gameConfig.GAME_AREA_WIDTH-e||e>s-h||s+h>this.gameConfig.GAME_AREA_HEIGHT-e)}ballCollidesWithWall(t,i,s,h){const e=t-Math.max(h.x,Math.min(t,h.x+h.width)),a=i-Math.max(h.y,Math.min(i,h.y+h.height));return s*s>e*e+a*a}isNearTarget(t){return Math.sqrt(Math.pow(t.x-this.gameState.targetPosition.x,2)+Math.pow(t.y-this.gameState.targetPosition.y,2))<1.5*this.gameConfig.BALL_SIZE}completeLevel(){this.gameState.score+=this.gameConfig.SCORE_PER_COMPLETION,this.gameState.isCompleted=!0,this.gameState.isPlaying=!1,this.stopTimer(),this.notifyGameStateChange()}getGameState(){return{...this.gameState}}getGameConfig(){return{...this.gameConfig}}getWalls(){return[...this.walls]}getMaze(){return this.maze.map(t=>t.map(t=>({...t})))}formatTime(t){return`${Math.floor(t/60)}:${(""+t%60).padStart(2,"0")}`}cleanup(){this.stopTimer()}}
|