react-native-games 0.3.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/LICENSE +66 -0
- package/README.md +269 -0
- package/lib/module/games/balloon-blaster/BalloonBlaster.js +391 -0
- package/lib/module/games/balloon-blaster/BalloonBlaster.js.map +1 -0
- package/lib/module/games/balloon-blaster/BalloonBlasterService.js +293 -0
- package/lib/module/games/balloon-blaster/BalloonBlasterService.js.map +1 -0
- package/lib/module/games/balloon-blaster/BalloonBlasterStore.js +156 -0
- package/lib/module/games/balloon-blaster/BalloonBlasterStore.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/BalloonComponent.js +227 -0
- package/lib/module/games/balloon-blaster/components/BalloonComponent.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/GameArea.js +42 -0
- package/lib/module/games/balloon-blaster/components/GameArea.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/GameBackground.js +544 -0
- package/lib/module/games/balloon-blaster/components/GameBackground.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/GameControls.js +229 -0
- package/lib/module/games/balloon-blaster/components/GameControls.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/GameOverModal.js +133 -0
- package/lib/module/games/balloon-blaster/components/GameOverModal.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/ParticleSystem.js +52 -0
- package/lib/module/games/balloon-blaster/components/ParticleSystem.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/ScoreBoard.js +119 -0
- package/lib/module/games/balloon-blaster/components/ScoreBoard.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/SliceTrail.js +58 -0
- package/lib/module/games/balloon-blaster/components/SliceTrail.js.map +1 -0
- package/lib/module/games/balloon-blaster/components/index.js +11 -0
- package/lib/module/games/balloon-blaster/components/index.js.map +1 -0
- package/lib/module/games/cat-popper/CatPopper.js +230 -0
- package/lib/module/games/cat-popper/CatPopper.js.map +1 -0
- package/lib/module/games/cat-popper/CatPopperService.js +100 -0
- package/lib/module/games/cat-popper/CatPopperService.js.map +1 -0
- package/lib/module/games/cat-popper/CatPopperStore.js +113 -0
- package/lib/module/games/cat-popper/CatPopperStore.js.map +1 -0
- package/lib/module/games/cat-popper/components/CatCharacter.js +281 -0
- package/lib/module/games/cat-popper/components/CatCharacter.js.map +1 -0
- package/lib/module/games/cat-popper/components/GameBackground.js +531 -0
- package/lib/module/games/cat-popper/components/GameBackground.js.map +1 -0
- package/lib/module/games/cat-popper/components/GameControls.js +230 -0
- package/lib/module/games/cat-popper/components/GameControls.js.map +1 -0
- package/lib/module/games/cat-popper/components/GameGrid.js +66 -0
- package/lib/module/games/cat-popper/components/GameGrid.js.map +1 -0
- package/lib/module/games/cat-popper/components/GameHole.js +183 -0
- package/lib/module/games/cat-popper/components/GameHole.js.map +1 -0
- package/lib/module/games/cat-popper/components/GameOverModal.js +131 -0
- package/lib/module/games/cat-popper/components/GameOverModal.js.map +1 -0
- package/lib/module/games/cat-popper/components/ScoreBoard.js +77 -0
- package/lib/module/games/cat-popper/components/ScoreBoard.js.map +1 -0
- package/lib/module/games/cat-popper/components/index.js +10 -0
- package/lib/module/games/cat-popper/components/index.js.map +1 -0
- package/lib/module/games/fruit-slicer/FruitSlicer.js +411 -0
- package/lib/module/games/fruit-slicer/FruitSlicer.js.map +1 -0
- package/lib/module/games/fruit-slicer/FruitSlicerService.js +293 -0
- package/lib/module/games/fruit-slicer/FruitSlicerService.js.map +1 -0
- package/lib/module/games/fruit-slicer/FruitSlicerStore.js +156 -0
- package/lib/module/games/fruit-slicer/FruitSlicerStore.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/FruitComponent.js +99 -0
- package/lib/module/games/fruit-slicer/components/FruitComponent.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/GameArea.js +50 -0
- package/lib/module/games/fruit-slicer/components/GameArea.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/GameBackground.js +1296 -0
- package/lib/module/games/fruit-slicer/components/GameBackground.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/GameControls.js +230 -0
- package/lib/module/games/fruit-slicer/components/GameControls.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/GameOverModal.js +189 -0
- package/lib/module/games/fruit-slicer/components/GameOverModal.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/ParticleSystem.js +52 -0
- package/lib/module/games/fruit-slicer/components/ParticleSystem.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/ScoreBoard.js +121 -0
- package/lib/module/games/fruit-slicer/components/ScoreBoard.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/SliceTrail.js +58 -0
- package/lib/module/games/fruit-slicer/components/SliceTrail.js.map +1 -0
- package/lib/module/games/fruit-slicer/components/index.js +11 -0
- package/lib/module/games/fruit-slicer/components/index.js.map +1 -0
- package/lib/module/games/maze-runner/MazeRunner.js +242 -0
- package/lib/module/games/maze-runner/MazeRunner.js.map +1 -0
- package/lib/module/games/maze-runner/MazeRunnerService.js +560 -0
- package/lib/module/games/maze-runner/MazeRunnerService.js.map +1 -0
- package/lib/module/games/maze-runner/components/EnhancedBallComponent.js +149 -0
- package/lib/module/games/maze-runner/components/EnhancedBallComponent.js.map +1 -0
- package/lib/module/games/maze-runner/components/EnhancedGameArea.js +357 -0
- package/lib/module/games/maze-runner/components/EnhancedGameArea.js.map +1 -0
- package/lib/module/games/maze-runner/components/GameBackground.js +216 -0
- package/lib/module/games/maze-runner/components/GameBackground.js.map +1 -0
- package/lib/module/games/maze-runner/components/GameControls.js +129 -0
- package/lib/module/games/maze-runner/components/GameControls.js.map +1 -0
- package/lib/module/games/maze-runner/components/GameOverModal.js +134 -0
- package/lib/module/games/maze-runner/components/GameOverModal.js.map +1 -0
- package/lib/module/games/maze-runner/components/ScoreBoard.js +81 -0
- package/lib/module/games/maze-runner/components/ScoreBoard.js.map +1 -0
- package/lib/module/games/maze-runner/components/SkiaPipeComponent.js +209 -0
- package/lib/module/games/maze-runner/components/SkiaPipeComponent.js.map +1 -0
- package/lib/module/games/maze-runner/components/StaticGameBackground.js +169 -0
- package/lib/module/games/maze-runner/components/StaticGameBackground.js.map +1 -0
- package/lib/module/games/maze-runner/components/WallComponent.js +90 -0
- package/lib/module/games/maze-runner/components/WallComponent.js.map +1 -0
- package/lib/module/games/maze-runner/components/index.js +10 -0
- package/lib/module/games/maze-runner/components/index.js.map +1 -0
- package/lib/module/games/space-traveller/SpaceTraveller.js +393 -0
- package/lib/module/games/space-traveller/SpaceTraveller.js.map +1 -0
- package/lib/module/games/space-traveller/SpaceTravellerService.js +298 -0
- package/lib/module/games/space-traveller/SpaceTravellerService.js.map +1 -0
- package/lib/module/games/space-traveller/SpaceTravellerStore.js +139 -0
- package/lib/module/games/space-traveller/SpaceTravellerStore.js.map +1 -0
- package/lib/module/games/space-traveller/components/AsteroidComponent.js +111 -0
- package/lib/module/games/space-traveller/components/AsteroidComponent.js.map +1 -0
- package/lib/module/games/space-traveller/components/GameArea.js +75 -0
- package/lib/module/games/space-traveller/components/GameArea.js.map +1 -0
- package/lib/module/games/space-traveller/components/GameBackground.js +294 -0
- package/lib/module/games/space-traveller/components/GameBackground.js.map +1 -0
- package/lib/module/games/space-traveller/components/GameControls.js +177 -0
- package/lib/module/games/space-traveller/components/GameControls.js.map +1 -0
- package/lib/module/games/space-traveller/components/GameOverModal.js +182 -0
- package/lib/module/games/space-traveller/components/GameOverModal.js.map +1 -0
- package/lib/module/games/space-traveller/components/ParticleComponent.js +34 -0
- package/lib/module/games/space-traveller/components/ParticleComponent.js.map +1 -0
- package/lib/module/games/space-traveller/components/ScoreBoard.js +143 -0
- package/lib/module/games/space-traveller/components/ScoreBoard.js.map +1 -0
- package/lib/module/games/space-traveller/components/SettingsModal.js +222 -0
- package/lib/module/games/space-traveller/components/SettingsModal.js.map +1 -0
- package/lib/module/games/space-traveller/components/Spacecraft3D.js +362 -0
- package/lib/module/games/space-traveller/components/Spacecraft3D.js.map +1 -0
- package/lib/module/games/space-traveller/components/SpacecraftPath.js +37 -0
- package/lib/module/games/space-traveller/components/SpacecraftPath.js.map +1 -0
- package/lib/module/games/space-traveller/components/index.js +13 -0
- package/lib/module/games/space-traveller/components/index.js.map +1 -0
- package/lib/module/index.js +12 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/services/GamesConstants.js +561 -0
- package/lib/module/services/GamesConstants.js.map +1 -0
- package/lib/module/services/GamesService.js +34 -0
- package/lib/module/services/GamesService.js.map +1 -0
- package/lib/module/shared/settings/GameSettings.js +295 -0
- package/lib/module/shared/settings/GameSettings.js.map +1 -0
- package/lib/module/shared/settings/SettingsService.js +119 -0
- package/lib/module/shared/settings/SettingsService.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts +16 -0
- package/lib/typescript/src/games/balloon-blaster/BalloonBlaster.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts +66 -0
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterService.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts +37 -0
- package/lib/typescript/src/games/balloon-blaster/BalloonBlasterStore.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts +10 -0
- package/lib/typescript/src/games/balloon-blaster/components/BalloonComponent.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts +17 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameArea.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts +7 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameBackground.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameControls.d.ts +10 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameControls.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameOverModal.d.ts +9 -0
- package/lib/typescript/src/games/balloon-blaster/components/GameOverModal.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/ParticleSystem.d.ts +8 -0
- package/lib/typescript/src/games/balloon-blaster/components/ParticleSystem.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts +9 -0
- package/lib/typescript/src/games/balloon-blaster/components/ScoreBoard.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/SliceTrail.d.ts +11 -0
- package/lib/typescript/src/games/balloon-blaster/components/SliceTrail.d.ts.map +1 -0
- package/lib/typescript/src/games/balloon-blaster/components/index.d.ts +9 -0
- package/lib/typescript/src/games/balloon-blaster/components/index.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/CatPopper.d.ts +13 -0
- package/lib/typescript/src/games/cat-popper/CatPopper.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/CatPopperService.d.ts +32 -0
- package/lib/typescript/src/games/cat-popper/CatPopperService.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/CatPopperStore.d.ts +21 -0
- package/lib/typescript/src/games/cat-popper/CatPopperStore.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/CatCharacter.d.ts +7 -0
- package/lib/typescript/src/games/cat-popper/components/CatCharacter.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/GameBackground.d.ts +7 -0
- package/lib/typescript/src/games/cat-popper/components/GameBackground.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/GameControls.d.ts +10 -0
- package/lib/typescript/src/games/cat-popper/components/GameControls.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/GameGrid.d.ts +13 -0
- package/lib/typescript/src/games/cat-popper/components/GameGrid.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/GameHole.d.ts +12 -0
- package/lib/typescript/src/games/cat-popper/components/GameHole.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/GameOverModal.d.ts +9 -0
- package/lib/typescript/src/games/cat-popper/components/GameOverModal.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/ScoreBoard.d.ts +8 -0
- package/lib/typescript/src/games/cat-popper/components/ScoreBoard.d.ts.map +1 -0
- package/lib/typescript/src/games/cat-popper/components/index.d.ts +8 -0
- package/lib/typescript/src/games/cat-popper/components/index.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/FruitSlicer.d.ts +16 -0
- package/lib/typescript/src/games/fruit-slicer/FruitSlicer.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/FruitSlicerService.d.ts +67 -0
- package/lib/typescript/src/games/fruit-slicer/FruitSlicerService.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/FruitSlicerStore.d.ts +37 -0
- package/lib/typescript/src/games/fruit-slicer/FruitSlicerStore.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/FruitComponent.d.ts +10 -0
- package/lib/typescript/src/games/fruit-slicer/components/FruitComponent.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameArea.d.ts +17 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameArea.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameBackground.d.ts +7 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameBackground.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameControls.d.ts +10 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameControls.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameOverModal.d.ts +9 -0
- package/lib/typescript/src/games/fruit-slicer/components/GameOverModal.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/ParticleSystem.d.ts +8 -0
- package/lib/typescript/src/games/fruit-slicer/components/ParticleSystem.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/ScoreBoard.d.ts +9 -0
- package/lib/typescript/src/games/fruit-slicer/components/ScoreBoard.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/SliceTrail.d.ts +11 -0
- package/lib/typescript/src/games/fruit-slicer/components/SliceTrail.d.ts.map +1 -0
- package/lib/typescript/src/games/fruit-slicer/components/index.d.ts +9 -0
- package/lib/typescript/src/games/fruit-slicer/components/index.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts +18 -0
- package/lib/typescript/src/games/maze-runner/MazeRunner.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts +82 -0
- package/lib/typescript/src/games/maze-runner/MazeRunnerService.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts +11 -0
- package/lib/typescript/src/games/maze-runner/components/EnhancedBallComponent.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts +12 -0
- package/lib/typescript/src/games/maze-runner/components/EnhancedGameArea.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts +7 -0
- package/lib/typescript/src/games/maze-runner/components/GameBackground.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/GameControls.d.ts +10 -0
- package/lib/typescript/src/games/maze-runner/components/GameControls.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/GameOverModal.d.ts +11 -0
- package/lib/typescript/src/games/maze-runner/components/GameOverModal.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts +8 -0
- package/lib/typescript/src/games/maze-runner/components/ScoreBoard.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/SkiaPipeComponent.d.ts +25 -0
- package/lib/typescript/src/games/maze-runner/components/SkiaPipeComponent.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/StaticGameBackground.d.ts +7 -0
- package/lib/typescript/src/games/maze-runner/components/StaticGameBackground.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts +10 -0
- package/lib/typescript/src/games/maze-runner/components/WallComponent.d.ts.map +1 -0
- package/lib/typescript/src/games/maze-runner/components/index.d.ts +8 -0
- package/lib/typescript/src/games/maze-runner/components/index.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/SpaceTraveller.d.ts +17 -0
- package/lib/typescript/src/games/space-traveller/SpaceTraveller.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/SpaceTravellerService.d.ts +65 -0
- package/lib/typescript/src/games/space-traveller/SpaceTravellerService.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/SpaceTravellerStore.d.ts +35 -0
- package/lib/typescript/src/games/space-traveller/SpaceTravellerStore.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/AsteroidComponent.d.ts +9 -0
- package/lib/typescript/src/games/space-traveller/components/AsteroidComponent.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/GameArea.d.ts +17 -0
- package/lib/typescript/src/games/space-traveller/components/GameArea.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/GameBackground.d.ts +7 -0
- package/lib/typescript/src/games/space-traveller/components/GameBackground.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/GameControls.d.ts +10 -0
- package/lib/typescript/src/games/space-traveller/components/GameControls.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/GameOverModal.d.ts +9 -0
- package/lib/typescript/src/games/space-traveller/components/GameOverModal.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/ParticleComponent.d.ts +8 -0
- package/lib/typescript/src/games/space-traveller/components/ParticleComponent.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/ScoreBoard.d.ts +8 -0
- package/lib/typescript/src/games/space-traveller/components/ScoreBoard.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/SettingsModal.d.ts +9 -0
- package/lib/typescript/src/games/space-traveller/components/SettingsModal.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/Spacecraft3D.d.ts +9 -0
- package/lib/typescript/src/games/space-traveller/components/Spacecraft3D.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/SpacecraftPath.d.ts +10 -0
- package/lib/typescript/src/games/space-traveller/components/SpacecraftPath.d.ts.map +1 -0
- package/lib/typescript/src/games/space-traveller/components/index.d.ts +11 -0
- package/lib/typescript/src/games/space-traveller/components/index.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +7 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/services/GamesConstants.d.ts +372 -0
- package/lib/typescript/src/services/GamesConstants.d.ts.map +1 -0
- package/lib/typescript/src/services/GamesService.d.ts +8 -0
- package/lib/typescript/src/services/GamesService.d.ts.map +1 -0
- package/lib/typescript/src/shared/settings/GameSettings.d.ts +36 -0
- package/lib/typescript/src/shared/settings/GameSettings.d.ts.map +1 -0
- package/lib/typescript/src/shared/settings/SettingsService.d.ts +32 -0
- package/lib/typescript/src/shared/settings/SettingsService.d.ts.map +1 -0
- package/package.json +125 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
DUAL LICENSE
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Niranjan Devasani
|
|
4
|
+
|
|
5
|
+
This software is available under two different licenses:
|
|
6
|
+
|
|
7
|
+
================================================================================
|
|
8
|
+
1. NON-COMMERCIAL LICENSE (Free)
|
|
9
|
+
================================================================================
|
|
10
|
+
|
|
11
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
12
|
+
of this software and associated documentation files (the "Software"), to use
|
|
13
|
+
the Software for NON-COMMERCIAL purposes only, subject to the following conditions:
|
|
14
|
+
|
|
15
|
+
- The Software may be used, copied, modified, and distributed for personal,
|
|
16
|
+
educational, research, or other non-commercial purposes.
|
|
17
|
+
- Commercial use, including but not limited to selling, licensing, or
|
|
18
|
+
incorporating the Software into commercial products or services, is
|
|
19
|
+
strictly prohibited under this license.
|
|
20
|
+
- The above copyright notice and this permission notice shall be included in all
|
|
21
|
+
copies or substantial portions of the Software.
|
|
22
|
+
|
|
23
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
24
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
25
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
26
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
27
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
28
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
29
|
+
SOFTWARE.
|
|
30
|
+
|
|
31
|
+
================================================================================
|
|
32
|
+
2. COMMERCIAL LICENSE (Paid)
|
|
33
|
+
================================================================================
|
|
34
|
+
|
|
35
|
+
For commercial use, including but not limited to:
|
|
36
|
+
- Incorporating the Software into commercial applications
|
|
37
|
+
- Selling products or services that include the Software
|
|
38
|
+
- Using the Software in revenue-generating projects
|
|
39
|
+
- Distribution as part of commercial software packages
|
|
40
|
+
|
|
41
|
+
A separate commercial license must be obtained by contacting:
|
|
42
|
+
|
|
43
|
+
Email: niranjan.devasani@gmail.com
|
|
44
|
+
Subject: React Native Games - Commercial License Request
|
|
45
|
+
|
|
46
|
+
Commercial licensing includes:
|
|
47
|
+
- Full commercial usage rights
|
|
48
|
+
- Priority support and maintenance
|
|
49
|
+
- Custom feature development consideration
|
|
50
|
+
- Removal of attribution requirements (optional)
|
|
51
|
+
|
|
52
|
+
================================================================================
|
|
53
|
+
DEFINITIONS
|
|
54
|
+
================================================================================
|
|
55
|
+
|
|
56
|
+
"Commercial use" means any use of the Software that is primarily intended for
|
|
57
|
+
or directed toward commercial advantage or monetary compensation. This includes,
|
|
58
|
+
but is not limited to:
|
|
59
|
+
- Use in commercial applications or products
|
|
60
|
+
- Use by commercial entities for business purposes
|
|
61
|
+
- Use in applications that generate revenue through sales, subscriptions,
|
|
62
|
+
advertising, or any other monetization method
|
|
63
|
+
|
|
64
|
+
"Non-commercial use" means use for personal, educational, research, or other
|
|
65
|
+
purposes that are not primarily intended for or directed toward commercial
|
|
66
|
+
advantage or monetary compensation.
|
package/README.md
ADDED
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
# 🎮 react-native-games
|
|
2
|
+
|
|
3
|
+
**react-native-games** is a collection of free, high-performance games for your React Native projects. Built with modern React Native technologies including Skia, Reanimated, and TypeScript for smooth 60fps gameplay.
|
|
4
|
+
|
|
5
|
+
## 🎯 Available Games
|
|
6
|
+
|
|
7
|
+
| Game | Description | Features |
|
|
8
|
+
|------|-------------|----------|
|
|
9
|
+
| **🐱 Cat Popper** | Classic whack-a-mole with cute cats | Multiple difficulty levels, customizable grid sizes, haptic feedback |
|
|
10
|
+
| **🎈 Balloon Blaster** | Pop balloons rising from the bottom | Physics-based gameplay, particle effects, combo system |
|
|
11
|
+
| **🍎 Fruit Slicer** | Slice fruits and avoid bombs | Physics-based gameplay, particle effects, combo system |
|
|
12
|
+
| **🧩 Maze Runner** | Navigate through procedurally generated mazes | Dynamic maze generation, timer challenges, multiple difficulties |
|
|
13
|
+
| **🚀 Space Traveller** | Dodge asteroids in space | 3D-style graphics, progressive difficulty, space physics |
|
|
14
|
+
|
|
15
|
+
## 📦 Installation
|
|
16
|
+
|
|
17
|
+
```sh
|
|
18
|
+
npm install react-native-games
|
|
19
|
+
# or
|
|
20
|
+
yarn add react-native-games
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## 🔧 Peer Dependencies
|
|
24
|
+
|
|
25
|
+
This library requires the following peer dependencies to be installed in your project:
|
|
26
|
+
|
|
27
|
+
```sh
|
|
28
|
+
# Core React Native Skia for high-performance graphics
|
|
29
|
+
npm install @shopify/react-native-skia
|
|
30
|
+
|
|
31
|
+
# Reanimated for smooth animations
|
|
32
|
+
npm install react-native-reanimated
|
|
33
|
+
|
|
34
|
+
# Gesture Handler for touch interactions
|
|
35
|
+
npm install react-native-gesture-handler
|
|
36
|
+
|
|
37
|
+
# Worklets for performance (used by Reanimated)
|
|
38
|
+
npm install react-native-worklets
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Platform Setup
|
|
42
|
+
|
|
43
|
+
Follow the installation guides for each peer dependency:
|
|
44
|
+
|
|
45
|
+
- **[@shopify/react-native-skia](https://shopify.github.io/react-native-skia/docs/getting-started/installation)** - Graphics rendering
|
|
46
|
+
- **[react-native-reanimated](https://docs.swmansion.com/react-native-reanimated/docs/fundamentals/getting-started)** - Animations
|
|
47
|
+
- **[react-native-gesture-handler](https://docs.swmansion.com/react-native-gesture-handler/docs/fundamentals/installation)** - Gestures
|
|
48
|
+
|
|
49
|
+
## 🚀 Usage
|
|
50
|
+
|
|
51
|
+
### Basic Implementation
|
|
52
|
+
|
|
53
|
+
```tsx
|
|
54
|
+
import React, { useState } from 'react';
|
|
55
|
+
import { View, StyleSheet } from 'react-native';
|
|
56
|
+
import { CatPopper, BalloonBlaster, FruitSlicer, MazeRunner, SpaceTraveller } from 'react-native-games';
|
|
57
|
+
|
|
58
|
+
export default function GameScreen() {
|
|
59
|
+
const [showSettings, setShowSettings] = useState(false);
|
|
60
|
+
|
|
61
|
+
return (
|
|
62
|
+
<View style={styles.container}>
|
|
63
|
+
{/* Cat Popper Game - Classic whack-a-mole with cats */}
|
|
64
|
+
<CatPopper
|
|
65
|
+
showSettingsModal={showSettings}
|
|
66
|
+
onToggleSettingsModal={() => setShowSettings(!showSettings)}
|
|
67
|
+
/>
|
|
68
|
+
|
|
69
|
+
{/* Or choose any other game */}
|
|
70
|
+
{/* <BalloonBlaster /> */}
|
|
71
|
+
{/* <FruitSlicer /> */}
|
|
72
|
+
{/* <MazeRunner /> */}
|
|
73
|
+
{/* <SpaceTraveller /> */}
|
|
74
|
+
</View>
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
const styles = StyleSheet.create({
|
|
79
|
+
container: {
|
|
80
|
+
flex: 1,
|
|
81
|
+
backgroundColor: '#1a1a2e'
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Game-Specific Props & Default Settings
|
|
87
|
+
|
|
88
|
+
#### Cat Popper
|
|
89
|
+
```tsx
|
|
90
|
+
<CatPopper
|
|
91
|
+
showSettingsModal={boolean} // Control settings modal visibility
|
|
92
|
+
onToggleSettingsModal={() => void} // Settings modal toggle callback
|
|
93
|
+
/>
|
|
94
|
+
|
|
95
|
+
// Default Settings:
|
|
96
|
+
// {
|
|
97
|
+
// difficulty: 'medium', // Balanced challenge
|
|
98
|
+
// soundEnabled: true, // Audio feedback enabled
|
|
99
|
+
// hapticEnabled: true, // Haptic feedback enabled
|
|
100
|
+
// gameDuration: 120 // Auto-set based on difficulty (Easy: 60s, Medium: 120s, Hard: 180s)
|
|
101
|
+
// }
|
|
102
|
+
// Available: difficulty ['easy','medium','hard']
|
|
103
|
+
// Cat spawn intervals: easy 2000ms, medium 1500ms, hard 1000ms
|
|
104
|
+
// Cat visible duration: easy 2500ms, medium 2000ms, hard 1500ms
|
|
105
|
+
// Grid sizes: easy/medium 3x3, hard 4x4
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
#### Balloon Blaster
|
|
109
|
+
```tsx
|
|
110
|
+
<BalloonBlaster
|
|
111
|
+
showSettingsModal={boolean} // Control settings modal visibility
|
|
112
|
+
onToggleSettingsModal={() => void} // Settings modal toggle callback
|
|
113
|
+
/>
|
|
114
|
+
|
|
115
|
+
// Default Settings:
|
|
116
|
+
// {
|
|
117
|
+
// difficulty: 'medium', // Balanced challenge
|
|
118
|
+
// soundEnabled: true, // Audio feedback enabled
|
|
119
|
+
// hapticEnabled: true, // Haptic feedback enabled
|
|
120
|
+
// gameDuration: 120 // Auto-set based on difficulty (Easy: 60s, Medium: 120s, Hard: 180s)
|
|
121
|
+
// }
|
|
122
|
+
// Available: difficulty ['easy','medium','hard']
|
|
123
|
+
// Balloons rise from bottom to top with physics-based movement
|
|
124
|
+
// Spawn intervals and speeds adjust automatically with difficulty
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
#### Fruit Slicer
|
|
128
|
+
```tsx
|
|
129
|
+
<FruitSlicer
|
|
130
|
+
showSettingsModal={boolean} // Control settings modal visibility
|
|
131
|
+
onToggleSettingsModal={() => void} // Settings modal toggle callback
|
|
132
|
+
/>
|
|
133
|
+
|
|
134
|
+
// Default Settings:
|
|
135
|
+
// {
|
|
136
|
+
// difficulty: 'medium', // Balanced challenge
|
|
137
|
+
// soundEnabled: true, // Audio feedback enabled
|
|
138
|
+
// hapticEnabled: true, // Haptic feedback enabled
|
|
139
|
+
// gameDuration: 120 // Auto-set based on difficulty (Easy: 60s, Medium: 120s, Hard: 180s)
|
|
140
|
+
// }
|
|
141
|
+
// Available: difficulty ['easy','medium','hard']
|
|
142
|
+
// Spawn intervals: easy 2000ms, medium 1500ms, hard 1000ms
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
#### Maze Runner
|
|
146
|
+
```tsx
|
|
147
|
+
<MazeRunner
|
|
148
|
+
showSettingsModal={boolean} // Control settings modal visibility
|
|
149
|
+
onToggleSettingsModal={() => void} // Settings modal toggle callback
|
|
150
|
+
/>
|
|
151
|
+
|
|
152
|
+
// Default Settings:
|
|
153
|
+
// {
|
|
154
|
+
// difficulty: 'medium', // Balanced challenge
|
|
155
|
+
// soundEnabled: true, // Audio feedback enabled
|
|
156
|
+
// hapticEnabled: true, // Haptic feedback enabled
|
|
157
|
+
// gameDuration: 120, // Auto-set based on difficulty (Easy: 60s, Medium: 120s, Hard: 180s)
|
|
158
|
+
// gridSize: 10, // 10x10 maze grid (auto-adjusts with difficulty)
|
|
159
|
+
// showHints: false // No hints by default
|
|
160
|
+
// }
|
|
161
|
+
// Available: difficulty ['easy','medium','hard']
|
|
162
|
+
// Grid sizes: easy 8x8, medium 10x10, hard 12x12 (auto-adjusts with difficulty)
|
|
163
|
+
// Procedurally generated mazes with intelligent pathfinding
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
#### Space Traveller
|
|
167
|
+
```tsx
|
|
168
|
+
<SpaceTraveller
|
|
169
|
+
showSettingsModal={boolean} // Control settings modal visibility
|
|
170
|
+
onToggleSettingsModal={() => void} // Settings modal toggle callback
|
|
171
|
+
/>
|
|
172
|
+
|
|
173
|
+
// Default Settings:
|
|
174
|
+
// {
|
|
175
|
+
// difficulty: 'medium', // Balanced challenge
|
|
176
|
+
// soundEnabled: true, // Audio feedback enabled
|
|
177
|
+
// hapticEnabled: true, // Haptic feedback enabled
|
|
178
|
+
// gameDuration: 120, // Auto-set based on difficulty (Easy: 60s, Medium: 120s, Hard: 180s)
|
|
179
|
+
// asteroidSpawnInterval: 3000, // 3 seconds between asteroid pairs
|
|
180
|
+
// asteroidSpeed: 2 // Movement speed multiplier
|
|
181
|
+
// }
|
|
182
|
+
// Available: difficulty ['easy','medium','hard']
|
|
183
|
+
// Horizontal drag controls with collision immunity system
|
|
184
|
+
// Progressive difficulty with faster asteroids and shorter spawn intervals
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
### Game Settings
|
|
188
|
+
|
|
189
|
+
Each game includes built-in settings screens with a unified, simplified interface:
|
|
190
|
+
|
|
191
|
+
- **Difficulty Levels**: Easy (60s), Medium (120s), Hard (180s) - automatically sets game duration
|
|
192
|
+
- **Sound Effects**: Toggle audio feedback on/off
|
|
193
|
+
- **Haptic Feedback**: Toggle vibration feedback on/off
|
|
194
|
+
|
|
195
|
+
All games use a centralized settings system for consistency and ease of maintenance.
|
|
196
|
+
|
|
197
|
+
## 🎨 Features
|
|
198
|
+
|
|
199
|
+
### 🚀 **High Performance**
|
|
200
|
+
- Built with React Native Skia for 60fps gameplay
|
|
201
|
+
- Optimized animations using Reanimated 3
|
|
202
|
+
- Efficient rendering and memory management
|
|
203
|
+
|
|
204
|
+
### 🎵 **Rich Audio & Haptics**
|
|
205
|
+
- Sound effects and speech synthesis
|
|
206
|
+
- Haptic feedback for immersive experience
|
|
207
|
+
- Configurable audio settings
|
|
208
|
+
|
|
209
|
+
### 🎯 **Customizable**
|
|
210
|
+
- Multiple difficulty levels
|
|
211
|
+
- Adjustable game parameters
|
|
212
|
+
- Persistent settings storage
|
|
213
|
+
|
|
214
|
+
### 📱 **Cross-Platform**
|
|
215
|
+
- iOS and Android support
|
|
216
|
+
- Consistent performance across devices
|
|
217
|
+
- Responsive design for different screen sizes
|
|
218
|
+
|
|
219
|
+
### 🎮 **Game Features**
|
|
220
|
+
- **Physics Simulation**: Realistic movement and collisions
|
|
221
|
+
- **Particle Systems**: Visual effects and animations
|
|
222
|
+
- **Procedural Generation**: Dynamic content (mazes, obstacles)
|
|
223
|
+
- **Score Systems**: Leaderboards and achievements
|
|
224
|
+
- **Progressive Difficulty**: Adaptive challenge levels
|
|
225
|
+
|
|
226
|
+
## 📄 License
|
|
227
|
+
|
|
228
|
+
This library is available under a **dual licensing model**:
|
|
229
|
+
|
|
230
|
+
### 🆓 **Non-Commercial License (Free)**
|
|
231
|
+
- ✅ **Personal projects** and learning
|
|
232
|
+
- ✅ **Educational use** and research
|
|
233
|
+
- ✅ **Open source projects** (non-commercial)
|
|
234
|
+
- ✅ **Portfolio** and demonstration apps
|
|
235
|
+
|
|
236
|
+
### 💼 **Commercial License (Paid)**
|
|
237
|
+
Required for commercial use including:
|
|
238
|
+
- 🏢 **Commercial applications** and products
|
|
239
|
+
- 💰 **Revenue-generating** projects
|
|
240
|
+
- 🏪 **App Store** or **Play Store** apps with monetization
|
|
241
|
+
- 🏭 **Enterprise** and business applications
|
|
242
|
+
|
|
243
|
+
**Commercial licensing includes:**
|
|
244
|
+
- Full commercial usage rights
|
|
245
|
+
- Priority support and maintenance
|
|
246
|
+
- Custom feature development consideration
|
|
247
|
+
- Optional attribution removal
|
|
248
|
+
|
|
249
|
+
**Get Commercial License:**
|
|
250
|
+
📧 Email: [niranjan.devasani@gmail.com](mailto:niranjan.devasani@gmail.com?subject=React%20Native%20Games%20-%20Commercial%20License%20Request)
|
|
251
|
+
|
|
252
|
+
See the complete [LICENSE](LICENSE) file for detailed terms and definitions.
|
|
253
|
+
|
|
254
|
+
## 🙏 Acknowledgments
|
|
255
|
+
|
|
256
|
+
- Built with [React Native Skia](https://shopify.github.io/react-native-skia/) for high-performance graphics
|
|
257
|
+
- Powered by [React Native Reanimated](https://docs.swmansion.com/react-native-reanimated/) for smooth animations
|
|
258
|
+
- State management with [Zustand](https://github.com/pmndrs/zustand)
|
|
259
|
+
- Created with [create-react-native-library](https://github.com/callstack/react-native-builder-bob)
|
|
260
|
+
|
|
261
|
+
## 📞 Support
|
|
262
|
+
|
|
263
|
+
- 📧 **Email**: niranjan.devasani@gmail.com
|
|
264
|
+
- 🐛 **Issues**: [GitHub Issues](https://github.com/ursnj/react-native-games/issues)
|
|
265
|
+
- 💬 **Discussions**: [GitHub Discussions](https://github.com/ursnj/react-native-games/discussions)
|
|
266
|
+
|
|
267
|
+
---
|
|
268
|
+
|
|
269
|
+
**Made with ❤️ by [Niranjan Devasani](https://github.com/ursnj)**
|