From 73817cef707ae730b2ebd2ec2f09726c47dba53b Mon Sep 17 00:00:00 2001 From: Autapomorph Date: Tue, 17 Sep 2019 22:27:28 +0300 Subject: [PATCH] Initial release --- .../joystix_monospace.littera.ltr | 1 + assets/fonts/joystix_monospace.fnt | 48 + assets/fonts/joystix_monospace.png | Bin 0 -> 3828 bytes assets/icons/dino-start-icon-blank.png | Bin 0 -> 4727 bytes assets/icons/dino-start-icon.png | Bin 0 -> 15879 bytes assets/scenes/game.json | 5 - assets/scenes/menu/main.json | 8 - assets/sounds/achievement.mp3 | Bin 0 -> 9328 bytes assets/sounds/gameover.mp3 | Bin 0 -> 6880 bytes assets/sounds/player-action.mp3 | Bin 0 -> 2574 bytes assets/sprites/README.md | 51 + .../sprites/_raw/TexturePacker/dino-atlas.tps | 487 ++++++ assets/sprites/_raw/horizon/cloud/cloud.png | Bin 0 -> 1123 bytes assets/sprites/_raw/horizon/ground/ground.png | Bin 0 -> 1563 bytes assets/sprites/_raw/horizon/moon/moon-1.png | Bin 0 -> 1139 bytes assets/sprites/_raw/horizon/moon/moon-2.png | Bin 0 -> 1103 bytes assets/sprites/_raw/horizon/moon/moon-3.png | Bin 0 -> 1066 bytes assets/sprites/_raw/horizon/moon/moon-4.png | Bin 0 -> 1087 bytes assets/sprites/_raw/horizon/moon/moon-5.png | Bin 0 -> 1080 bytes assets/sprites/_raw/horizon/moon/moon-6.png | Bin 0 -> 1063 bytes assets/sprites/_raw/horizon/moon/moon-7.png | Bin 0 -> 1096 bytes assets/sprites/_raw/horizon/star/star-1.png | Bin 0 -> 1020 bytes assets/sprites/_raw/horizon/star/star-2.png | Bin 0 -> 1050 bytes assets/sprites/_raw/horizon/star/star-3.png | Bin 0 -> 1068 bytes assets/sprites/_raw/obstacles/bird/bird-1.png | Bin 0 -> 1175 bytes assets/sprites/_raw/obstacles/bird/bird-2.png | Bin 0 -> 1175 bytes .../obstacles/cactus/big/cactus-big-1.png | Bin 0 -> 1234 bytes .../obstacles/cactus/big/cactus-big-2.png | Bin 0 -> 1389 bytes .../obstacles/cactus/big/cactus-big-3.png | Bin 0 -> 1628 bytes .../obstacles/cactus/small/cactus-small-1.png | Bin 0 -> 1120 bytes .../obstacles/cactus/small/cactus-small-2.png | Bin 0 -> 1240 bytes .../obstacles/cactus/small/cactus-small-3.png | Bin 0 -> 1313 bytes .../_raw/player/dead/dino-dead-outline.png | Bin 0 -> 1314 bytes assets/sprites/_raw/player/dead/dino-dead.png | Bin 0 -> 1222 bytes .../sprites/_raw/player/duck/dino-duck-1.png | Bin 0 -> 1253 bytes .../sprites/_raw/player/duck/dino-duck-2.png | Bin 0 -> 1247 bytes .../sprites/_raw/player/idle/dino-idle-1.png | Bin 0 -> 1308 bytes .../sprites/_raw/player/idle/dino-idle-2.png | Bin 0 -> 1298 bytes assets/sprites/_raw/player/run/dino-run-1.png | Bin 0 -> 1315 bytes assets/sprites/_raw/player/run/dino-run-2.png | Bin 0 -> 1309 bytes .../sprites/_raw/player/start/dino-start.png | Bin 0 -> 1351 bytes assets/sprites/_raw/ui/restart/restart.png | Bin 0 -> 1202 bytes assets/sprites/dino-atlas.json | 650 +++++++ assets/sprites/dino-atlas.png | Bin 0 -> 4179 bytes assets/sprites/logo.png | Bin 180337 -> 0 bytes assets/sprites/player.png | Bin 180337 -> 0 bytes assets/ui/button.png | Bin 551 -> 0 bytes assets/ui/buttonHover.png | Bin 471 -> 0 bytes assets/ui/checkbox.png | Bin 535 -> 0 bytes assets/ui/checkboxChecked.png | Bin 771 -> 0 bytes index.html | 3 +- package-lock.json | 1554 +++++++---------- package.json | 19 +- src/Game.js | 73 +- src/config/game/events/index.js | 16 + src/config/game/index.js | 18 + src/config/game/prefabs/bird.js | 18 + src/config/game/prefabs/cactus.js | 12 + src/config/game/prefabs/cloud.js | 15 + src/config/game/prefabs/ground.js | 13 + src/config/game/prefabs/index.js | 21 + src/config/game/prefabs/moon.js | 9 + src/config/game/prefabs/player.js | 37 + src/config/game/prefabs/star.js | 12 + src/config/game/scenes/boot.js | 5 + src/config/game/scenes/game.js | 113 ++ src/config/game/scenes/index.js | 9 + src/config/index.js | 18 +- src/config/scenes.js | 6 - src/prefabs/Player.js | 43 - src/prefabs/SceneButton.js | 36 - src/prefabs/horizon/Horizon.js | 112 ++ src/prefabs/horizon/HorizonItems.js | 73 + src/prefabs/horizon/NightMode.js | 143 ++ src/prefabs/horizon/clouds/Cloud.js | 80 + src/prefabs/horizon/clouds/Clouds.js | 32 + src/prefabs/horizon/ground/Ground.js | 86 + src/prefabs/horizon/moon/Moon.js | 95 + src/prefabs/horizon/obstacles/Obstacle.js | 106 ++ src/prefabs/horizon/obstacles/Obstacles.js | 157 ++ .../obstacles/bird/AnimationManager.js | 79 + src/prefabs/horizon/obstacles/bird/Bird.js | 65 + .../horizon/obstacles/cactus/Cactus.js | 23 + src/prefabs/horizon/stars/Star.js | 59 + src/prefabs/horizon/stars/Stars.js | 106 ++ src/prefabs/player/AnimationManager.js | 142 ++ src/prefabs/player/InputManager.js | 73 + src/prefabs/player/PhysicsManager.js | 79 + src/prefabs/player/Player.js | 241 +++ src/prefabs/ui/CurrentScorePanel.js | 69 + src/prefabs/ui/GameOverPanel.js | 112 ++ src/prefabs/ui/HighScorePanel.js | 149 ++ src/prefabs/ui/ScorePanel.js | 161 ++ src/prefabs/ui/ScoreZone.js | 57 + src/scenes/Boot.js | 30 - src/scenes/Game.js | 42 - src/scenes/Loader.js | 122 -- src/scenes/boot/BootScene.js | 40 + src/scenes/game/GameScene.js | 328 ++++ src/scenes/game/InputManager.js | 116 ++ src/scenes/game/Intro.js | 89 + src/scenes/game/ResizeManager.js | 107 ++ src/scenes/game/ScoreManager.js | 52 + src/scenes/game/SoundManager.js | 63 + src/scenes/game/UI.js | 55 + src/scenes/menu/MainMenu.js | 36 - src/utils/animationsCreator.js | 50 - src/utils/assetsLoader.js | 30 - src/utils/resize.js | 17 - webpack/base.js | 8 +- webpack/prod.js | 1 + 111 files changed, 5405 insertions(+), 1380 deletions(-) create mode 100644 assets/fonts/_raw/joystix_monospace/joystix_monospace.littera.ltr create mode 100644 assets/fonts/joystix_monospace.fnt create mode 100644 assets/fonts/joystix_monospace.png create mode 100644 assets/icons/dino-start-icon-blank.png create mode 100644 assets/icons/dino-start-icon.png delete mode 100644 assets/scenes/game.json delete mode 100644 assets/scenes/menu/main.json create mode 100644 assets/sounds/achievement.mp3 create mode 100644 assets/sounds/gameover.mp3 create mode 100644 assets/sounds/player-action.mp3 create mode 100644 assets/sprites/README.md create mode 100644 assets/sprites/_raw/TexturePacker/dino-atlas.tps create mode 100644 assets/sprites/_raw/horizon/cloud/cloud.png create mode 100644 assets/sprites/_raw/horizon/ground/ground.png create mode 100644 assets/sprites/_raw/horizon/moon/moon-1.png create mode 100644 assets/sprites/_raw/horizon/moon/moon-2.png create mode 100644 assets/sprites/_raw/horizon/moon/moon-3.png create mode 100644 assets/sprites/_raw/horizon/moon/moon-4.png create mode 100644 assets/sprites/_raw/horizon/moon/moon-5.png create mode 100644 assets/sprites/_raw/horizon/moon/moon-6.png create mode 100644 assets/sprites/_raw/horizon/moon/moon-7.png create mode 100644 assets/sprites/_raw/horizon/star/star-1.png create mode 100644 assets/sprites/_raw/horizon/star/star-2.png create mode 100644 assets/sprites/_raw/horizon/star/star-3.png create mode 100644 assets/sprites/_raw/obstacles/bird/bird-1.png create mode 100644 assets/sprites/_raw/obstacles/bird/bird-2.png create mode 100644 assets/sprites/_raw/obstacles/cactus/big/cactus-big-1.png create mode 100644 assets/sprites/_raw/obstacles/cactus/big/cactus-big-2.png create mode 100644 assets/sprites/_raw/obstacles/cactus/big/cactus-big-3.png create mode 100644 assets/sprites/_raw/obstacles/cactus/small/cactus-small-1.png create mode 100644 assets/sprites/_raw/obstacles/cactus/small/cactus-small-2.png create mode 100644 assets/sprites/_raw/obstacles/cactus/small/cactus-small-3.png create mode 100644 assets/sprites/_raw/player/dead/dino-dead-outline.png create mode 100644 assets/sprites/_raw/player/dead/dino-dead.png create mode 100644 assets/sprites/_raw/player/duck/dino-duck-1.png create mode 100644 assets/sprites/_raw/player/duck/dino-duck-2.png create mode 100644 assets/sprites/_raw/player/idle/dino-idle-1.png create mode 100644 assets/sprites/_raw/player/idle/dino-idle-2.png create mode 100644 assets/sprites/_raw/player/run/dino-run-1.png create mode 100644 assets/sprites/_raw/player/run/dino-run-2.png create mode 100644 assets/sprites/_raw/player/start/dino-start.png create mode 100644 assets/sprites/_raw/ui/restart/restart.png create mode 100644 assets/sprites/dino-atlas.json create mode 100644 assets/sprites/dino-atlas.png delete mode 100644 assets/sprites/logo.png delete mode 100644 assets/sprites/player.png delete mode 100644 assets/ui/button.png delete mode 100644 assets/ui/buttonHover.png delete mode 100644 assets/ui/checkbox.png delete mode 100644 assets/ui/checkboxChecked.png create mode 100644 src/config/game/events/index.js create mode 100644 src/config/game/index.js create mode 100644 src/config/game/prefabs/bird.js create mode 100644 src/config/game/prefabs/cactus.js create mode 100644 src/config/game/prefabs/cloud.js create mode 100644 src/config/game/prefabs/ground.js create mode 100644 src/config/game/prefabs/index.js create mode 100644 src/config/game/prefabs/moon.js create mode 100644 src/config/game/prefabs/player.js create mode 100644 src/config/game/prefabs/star.js create mode 100644 src/config/game/scenes/boot.js create mode 100644 src/config/game/scenes/game.js create mode 100644 src/config/game/scenes/index.js delete mode 100644 src/config/scenes.js delete mode 100644 src/prefabs/Player.js delete mode 100644 src/prefabs/SceneButton.js create mode 100644 src/prefabs/horizon/Horizon.js create mode 100644 src/prefabs/horizon/HorizonItems.js create mode 100644 src/prefabs/horizon/NightMode.js create mode 100644 src/prefabs/horizon/clouds/Cloud.js create mode 100644 src/prefabs/horizon/clouds/Clouds.js create mode 100644 src/prefabs/horizon/ground/Ground.js create mode 100644 src/prefabs/horizon/moon/Moon.js create mode 100644 src/prefabs/horizon/obstacles/Obstacle.js create mode 100644 src/prefabs/horizon/obstacles/Obstacles.js create mode 100644 src/prefabs/horizon/obstacles/bird/AnimationManager.js create mode 100644 src/prefabs/horizon/obstacles/bird/Bird.js create mode 100644 src/prefabs/horizon/obstacles/cactus/Cactus.js create mode 100644 src/prefabs/horizon/stars/Star.js create mode 100644 src/prefabs/horizon/stars/Stars.js create mode 100644 src/prefabs/player/AnimationManager.js create mode 100644 src/prefabs/player/InputManager.js create mode 100644 src/prefabs/player/PhysicsManager.js create mode 100644 src/prefabs/player/Player.js create mode 100644 src/prefabs/ui/CurrentScorePanel.js create mode 100644 src/prefabs/ui/GameOverPanel.js create mode 100644 src/prefabs/ui/HighScorePanel.js create mode 100644 src/prefabs/ui/ScorePanel.js create mode 100644 src/prefabs/ui/ScoreZone.js delete mode 100644 src/scenes/Boot.js delete mode 100644 src/scenes/Game.js delete mode 100644 src/scenes/Loader.js create mode 100644 src/scenes/boot/BootScene.js create mode 100644 src/scenes/game/GameScene.js create mode 100644 src/scenes/game/InputManager.js create mode 100644 src/scenes/game/Intro.js create mode 100644 src/scenes/game/ResizeManager.js create mode 100644 src/scenes/game/ScoreManager.js create mode 100644 src/scenes/game/SoundManager.js create mode 100644 src/scenes/game/UI.js delete mode 100644 src/scenes/menu/MainMenu.js delete mode 100644 src/utils/animationsCreator.js delete mode 100644 src/utils/assetsLoader.js delete mode 100644 src/utils/resize.js diff --git a/assets/fonts/_raw/joystix_monospace/joystix_monospace.littera.ltr b/assets/fonts/_raw/joystix_monospace/joystix_monospace.littera.ltr new file mode 100644 index 0000000..1af77fe --- /dev/null +++ b/assets/fonts/_raw/joystix_monospace/joystix_monospace.littera.ltr @@ -0,0 +1 @@ +{"glyphs":{"packMethod":1,"padding":2,"glyphs":"HIhiGAMEOVRgameovr0123456789","canvasHeight":"Auto","descriptionFormat":0,"canvasWidth":"Auto","roundValues":true,"powerOfTwo":false},"fill":{"yOffset":0,"distanceFieldSpread":16,"distanceFieldDownscale":4,"distanceFieldType":"Type 1","gradientColors":[5460819,5460819],"gradientRatios":[0,255],"gradientRotation":90,"distanceFieldEnabled":false,"fillType":"gradientFill","distanceFieldColor":16777215,"textureScale":1,"gradientAlphas":[1,1],"xOffset":0,"gradientType":"linear"},"stroke":{"yOffset":0,"jointStyle":"miter","size":2,"textureScale":1,"miterLimit":1,"gradientRatios":[0,255],"gradientRotation":90,"gradientColors":[5460819,5460819],"gradientAlphas":[1,1],"fillType":"gradientFill","pixelHinting":false,"xOffset":0,"gradientType":"linear","strokeEnabled":false},"background":{"color":16777215,"alpha":0},"settings":{"scalings":"1;","filename":"font","postfixes":""},"bevel":{"blurX":4,"distance":4,"shadowColor":0,"shadowAlpha":1,"blurY":4,"highlightColor":16777215,"strength":1,"bevelEnabled":false,"highlightAlpha":1,"type":"inner","quality":1,"angle":45},"font":{"spacing":0,"data":"AAEAAAAPAIAAAwBwR1BPU7XUtogAALS4AAADOkdTVUJ1m2xLAAC39AAAAgBPUy8yrOMy3AAAAXgAAABgVkRNWHT4fHYAAAqAAAAF4GNtYXAqVFD/AAAQYAAAFThnYXNw//8AAwAAtLAAAAAIZ2x5Zi+gDY8AACWYAABzKGhlYWQPYHPdAAAA/AAAADZoaGVhBF0DQQAAATQAAAAkaG10eLwAjugAAAHYAAAIqGtlcm794wFoAACdGAAAAmpsb2NhGf/8tAAAmMAAAARWbWF4cAI+AH4AAAFYAAAAIG5hbWXIJx42AACfhAAABEtwb3N0m+W1wAAAo9AAABDgAAEAAAAFAAADiSexXw889QAJA+gAAAAA1+aXJAAAAADX5phP/Tb/OAM8BEwAAAAJAAIAAAAAAAAAAQAAA+j/OAAAAzz9Nv6iAzwAAQAAAAAAAAAAAAAAAAAAAioAAQAAAioASAALADQABQABAAAAAAAAAAAAAAAAAAMAAQADAzwBkAAFAAQB9AH0AAAAAAH0AfQAAAH0ADEB9AAAAgEGCQIBAgIDBKAAAs8QAEATAAAAAAAAAABUWVBPAEAAF/j/AyD/OADIA+gAyCAAAZ8AAAAAArwCvAAAACAAAwM8AKQDPAAAAzwAAAM8AKQDPACkAzwApAM8AEADPAByAzwAQAM8AToDPAFsAzwApAM8AEADPAByAzwBOgM8AKQDPAE6AzwAQAM8AEADPAByAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPAE6AzwBOgM8AKQDPAByAzwApAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPAByAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AHIDPABAAzwAQAM8AEADPABAAzwAcgM8AEADPAEIAzwAQAM8AKQDPACkAzwAQAM8AQgDPAEIAzwBOgM8AKQDPAByAzwAAAM8AKQDPAB+AzwAQAM8AKQDPAByAzwBOgM8AEADPACkAzwAQAM8ANYDPABAAzwAcgM8AEADPAEIAzwApAM8AHIDPACkAzwApAM8AQgDPABAAzwAQAM8AToDPAEIAzwApAM8ANYDPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AA4DPABAAzwAQAM8AEADPABAAzwAQAM8AHIDPAByAzwAcgM8AHIDPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwApAM8AEADPABAAzwAQAM8AEADPABAAzwAcgM8AEADPAByAzwAcgM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AAADPAByAzwAcgM8AHIDPAByAzwAcgM8ACYDPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAEgM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPAByAzwAcgM8AHIDPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAcgM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwA1gM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPACkAzwApAM8ANYDPAE6AzwBCAM8AQgDPADWAzwAcgAA/cwAAP3MAAD9aAAA/ZoAAP3MAAD9mgAA/f4AAP1oAAD9zAAA/cwAAP02AAD9aAAA/f4AAP3+AAD9/gAA/cwAAP3MAAD9aAAA/cwDPAFsAzwAQAM8AEADPAE6AzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPAAkAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AHIDPAByAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAJAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAcgM8AHIDPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAcgM8AHIDPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPAAOAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAcgM8AHIDPAAAAzwAQAM8AAADPAE6AzwBOgM8AToDPACkAzwApAM8AKQDPACkAzwApAM8AQgDPABAAzwAQAM8AQgDPABAAzwApAM8AQgAAP6iAzwApAM8AKQDPACkAzwApAM8AKQDPACkAzwApAM8AKQDPACkAzwApAM8AKQDPACkAzwApAM8AKQDPACkAzwApAM8AKQDPABAAzwAQAM8AEADPABAAzwAQAM8AHIDPABAAzwAQAM8AEADPAByAzwAcgM8AEADPAAOAzwAQAM8AEADPACkAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPAByAzwAQAM8AEADPADWAzwAcgM8AEADPACkAzwApAM8AEADPACkAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AKQDPABAAzwAQAM8AEADPABAAzwAQAM8AEADPACkAzwAQAM8AEADPABAAzwBCAM8AQgDPACkAzwAQAM8AEADPABAAzwAQAM8AEADPAAAAzwAQAM8AToDPAByAzwAQAM8AEADPAAkAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAJAM8AEADPABAAzwAQAM8AEADPABAAzwAQAM8AEADPABAAzwAJAM8AEADPABAAzwAQAM8AAAAAAAAAAAAAQABAQEBAQAMAPgI/wAIAAj//gAJAAn//gAKAAr//gALAAv//QAMAAz//QANAA3//QAOAA7//QAPAA///QAQABD//AARABH//AASABL//AATABP//AAUABT//AAVABX/+wAWABb/+wAXABf/+wAYABj/+wAZABn/+wAaABr/+gAbABv/+gAcABz/+gAdAB3/+gAeAB7/+gAfAB//+QAgACD/+QAhACH/+QAiACL/+QAjACP/+QAkACT/+AAlACX/+AAmACb/+AAnACf/+AAoACj/+AApACn/9wAqACr/9wArACv/9wAsACz/9wAtAC3/9wAuAC7/9gAvAC//9gAwADD/9gAxADH/9gAyADL/9gAzADP/9QA0ADT/9QA1ADX/9QA2ADb/9QA3ADf/9QA4ADj/9AA5ADn/9AA6ADr/9AA7ADv/9AA8ADz/9AA9AD3/8wA+AD7/8wA/AD//8wBAAED/8wBBAEH/8wBCAEL/8gBDAEP/8gBEAET/8gBFAEX/8gBGAEb/8gBHAEf/8QBIAEj/8QBJAEn/8QBKAEr/8QBLAEv/8QBMAEz/8ABNAE3/8ABOAE7/8ABPAE//8ABQAFD/8ABRAFH/7wBSAFL/7wBTAFP/7wBUAFT/7wBVAFX/7wBWAFb/7gBXAFf/7gBYAFj/7gBZAFn/7gBaAFr/7gBbAFv/7QBcAFz/7QBdAF3/7QBeAF7/7QBfAF//7QBgAGD/7ABhAGH/7ABiAGL/7ABjAGP/7ABkAGT/7ABlAGX/6wBmAGb/6wBnAGf/6wBoAGj/6wBpAGn/6wBqAGr/6gBrAGv/6gBsAGz/6gBtAG3/6gBuAG7/6gBvAG//6QBwAHD/6QBxAHH/6QByAHL/6QBzAHP/6QB0AHT/6AB1AHX/6AB2AHb/6AB3AHf/6AB4AHj/6AB5AHn/5wB6AHr/5wB7AHv/5wB8AHz/5wB9AH3/5wB+AH7/5gB/AH//5gCAAID/5gCBAIH/5gCCAIL/5gCDAIP/5QCEAIT/5QCFAIX/5QCGAIb/5QCHAIf/5QCIAIj/5ACJAIn/5ACKAIr/5ACLAIv/5ACMAIz/5ACNAI3/4wCOAI7/4wCPAI//4wCQAJD/4wCRAJH/4wCSAJL/4gCTAJP/4gCUAJT/4gCVAJX/4gCWAJb/4gCXAJf/4QCYAJj/4QCZAJn/4QCaAJr/4QCbAJv/4QCcAJz/4ACdAJ3/4ACeAJ7/4ACfAJ//4ACgAKD/4AChAKH/3wCiAKL/3wCjAKP/3wCkAKT/3wClAKX/3wCmAKb/3gCnAKf/3gCoAKj/3gCpAKn/3gCqAKr/3gCrAKv/3QCsAKz/3QCtAK3/3QCuAK7/3QCvAK//3QCwALD/3ACxALH/3ACyALL/3ACzALP/3AC0ALT/3AC1ALX/2wC2ALb/2wC3ALf/2wC4ALj/2wC5ALn/2wC6ALr/2gC7ALv/2gC8ALz/2gC9AL3/2gC+AL7/2gC/AL//2QDAAMD/2QDBAMH/2QDCAML/2QDDAMP/2QDEAMT/2ADFAMX/2ADGAMb/2ADHAMf/2ADIAMj/2ADJAMn/1wDKAMr/1wDLAMv/1wDMAMz/1wDNAM3/1wDOAM7/1gDPAM//1gDQAND/1gDRANH/1gDSANL/1gDTANP/1QDUANT/1QDVANX/1QDWANb/1QDXANf/1QDYANj/1ADZANn/1ADaANr/1ADbANv/1ADcANz/1ADdAN3/0wDeAN7/0wDfAN//0wDgAOD/0wDhAOH/0wDiAOL/0gDjAOP/0gDkAOT/0gDlAOX/0gDmAOb/0gDnAOf/0QDoAOj/0QDpAOn/0QDqAOr/0QDrAOv/0QDsAOz/0ADtAO3/0ADuAO7/0ADvAO//0ADwAPD/0ADxAPH/zwDyAPL/zwDzAPP/zwD0APT/zwD1APX/zwD2APb/zgD3APf/zgD4APj/zgD5APn/zgD6APr/zgD7APv/zQD8APz/zQD9AP3/zQD+AP7/zQD/AP//zQAAAAMAAAADAAALmAABAAAAAAAcAAMAAQAAAfgABgHcAAAAFwDpAAEAAAAAAAAAAAAAAAAAAAAAAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgAjACQAJQAmACcAKAApACoAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAOgA7ADwAQwBEAEUARgAAAGoAawBtAG8AdwB8AIIAZwBmAGgAagBpAGsAbQBvAG4AcABxAHMAcgB0AHUAdwB5AHgAegB8AHsAgAB/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AC8AMAD8ADEBAwAyAP4A/gA2ADsA/wA6AQABAQB1AIYA9QD2APcAbgBxAQQBBQEGADUAKwB1ACwBBwEIAQkBCgELAQwBDQAjAQ4AJAD5AQ8AJwEQAREBEgETAC0BFAAvACoAMQD9ADIAJQA2ARUA/wA6ACMBDgAkAPkBDwAnARABEQESARMALQEUAC8AKgAxAP0AMgAlADYBFQD/ADoAbgBxAQQBBQEGADUAKwB1ACwBRwFHASABIAEhASEBIgEiASMBIwEkASQBJQElASYBJgEnAScBKAEoASkBKQEqASoBKwErASwBLAEtAS0BLgEuAS8BLwEwATABMQExATIBMgA7ADsBMwEzATQBNAE1ATUBNgE2ATcBNwE4ATgBOQE5AToBOgIEATsBOwE8ATwBPQE9AT4BPgE/AT8BQAFAAUEBQQIEAIgAiABqAGoAbABsAJAAkADHAMcBQgFCAUMBQwFEAUQAFQAVAUUBRQFGAUYAfAB8AUcBRwFIAUgBSQFJAUoBSgFLAUsBTAFMAU0BTQFOAU4BTwFPAVABUAFRAVEBUgFSAVMBUwFUAVQAOQA5AVUBVQFWAVYBVwFXAVkBWQFaAVoBWwFbAVwBXAFdAV0BXgFeAV8BXwFgAWABYQFhAWIBYgFjAWMBZAFkAWUBZQFmAWYBZwFnAWgBaAFpAWkBagFqAWsBawFsAWwBbgFuAW8BbwFwAXABcQFxAXIBcgFzAXMBdAF0AXUBdQF2AXYBdwF3AXgBeAF5AXkBegF6AXsBewF8AXwBfQF9AX4BfgF/AX8BgAGAAYEBgQGCAYIBgwGDAYQBhAGFAYUBhgGGAYcBhwGIAYgBiQGJAYoBigGLAYsBjAGMAY0BjQGOAY4BjwGPAZABkAGRAZEBkgGSAZMBkwGUAZQBlQGVAZYBlgGXAZcBmAGYAgUCBQBnAG8CBgB5AgcCCAIJAgoCCwIMAGcAbwIGAHkCDQINAg4CDgIPAg8CEAIQAhECEQIHAgcAeAB4AhICEgITAhMCFAIUAhUCFQCHAIcAjwCPAhYCFwIXAhgCGACqAKoAqwCrAhkCGgIaAhsCGwIcAhwCHQIdAh4CHgIfAh8CIAIgAiECIQIiAiIBVwFXAiMCIwIkAiQCJQIlACgAKAImAiYABAmgAAABKAEAAAcAKAAXAGAAegB+AKwArQDeAPYBNwE+AUgBfgGB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AS4BLgEvAS8BMAEwATEBMQEyATIAOwA7ATMBMwE0ATQBNQE1ATYBNgE3ATcBOAE4ATkBOQE6AToCBAE7ATsBPAE8AT0BPQE+AT4BPwE/AUABQAFBAUECBACIAIgAagBqAGwAbACQAJAAxwDHAUIBQgFDAUMBRAFEABUAFQFFAUUBRgFGAHwAfAFHAUcBSAFIAUkBSQFKAUoBSwFLAUwBTAFNAU0BTgFOAU8BTwFQAVABUQFRAVIBUgFTAVMBVAFUADkAOQFVAVUBVgFWAVcBVwFZAVkBWgFaAVsBWwFcAVwBXQFdAV4BXgFfAV8BYAFgAWEBYQFiAWIBYwFjAWQBZAFlAWUBZgFmAWcBZwFoAWgBaQFpAWoBagFrAWsBbAFsAW4BbgFvAW8BcAFwAXEBcQFyAXIBcwFzAXQBdAF1AXUBdgF2AXcBdwF4AXgBeQF5AXoBegF7AXsBfAF8AX0BfQF+AX4BfwF/AYABgAGBAYEBggGCAYMBgwGEAYQBhQGFAYYBhgGHAYcBiAGIAYkBiQGKAYoBiwGLAYwBjAGNAY0BjgGOAY8BjwGQAZABkQGRAZIBkgGTAZMBlAGUAZUBlQGWAZYBlwGXAZgBmAIFAgUAZwBvAgYAeQIHAggCCQIKAgsCDABnAG8CBgB5Ag0CDQIOAg4CDwIPAhACEAIRAhECBwIHAHgAeAISAhICEwITAhQCFAIVAhUAhwCHAI8AjwIWAhcCFwIYAhgAqgCqAKsAqwIZAhoCGgIbAhsCHAIcAh0CHQIeAh4CHwIfAiACIAIhAiECIgIiAVcBVwIjAiMCJAIkAiUCJQAoACgCJgImAAIApP84ApgD6AADAAcAAAUhESEDESERApj+DAH0ZP7UyASw+7QD6PwYAAAAAgCkAAACmAK8AAsADwAAASMVIxUjFSMRMzUhASM1MwKYZGRkZGQBLP5wZGQB9GRkZAEsyP1EZAAEAKQBLAKYArwABQAJAA8AEwAAASM1IzUzAyM1MysBNSM1MwMjNTMCmGRkyGRkZMhkZMhkZGQBkGTI/nBkZMj+cGQAAAIApABkApgCWAAbAB8AACUjFSM1IxUjNSM1MzUjNTM1MxUzNTMVMxUjFTMjNSMVAphkZGRkZGRkZGRkZGRkZMhkyGRkZGRkZGRkZGRkZGRkZAAAAAEAQAAAAvwCvAAbAAAlIxUjFSM1IzUh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NTsBIzU7ASM1MwEjNTMB0GT+1GRkZGQBLGRkZGRkyMjIZGTIyMjIZGRkZGTIZGRkZGRkZGT9qGRkASxkZGRkZGRkZGRkZAH0ZGRk/ahkyGRkZGRkZP1EZAAIAED/nAL8AyAAGwAnAC8AMwA3ADsAPwBDAAABMxUzFTMVIzUjNSM1IzUhNTM1IzUzNTMRMxU7AhUzFSM1IzUjNTMRIzUzFTMVIwMjNTMlIzU7ASM1MwEjNTMHIzUzAdBkZGRkZGRk/tRkZGRkZGRkZGRkZGRkZGRkZMhkZAEsZGRkZGT+DGRkZGRkASxkZGRkZGRkZGRkZP7UZGRkZGRk/gxkZGQBLGTIZGT9qGTIZAAAAAAIAED/nAL8ArwAGwAjAC8ANwA7AD8AQwBHAAATIRUjFTMVMxUzFTMVMxUjNSM1IzUjNSM1IzUjASM1IzUzFTMhIzUjNTMVMxUzFSMHIzUzFTMVIxMjNTMBIzUzASM1MwEjNTNAASxkZGRkZGRkZGRkZGRkASxkyMhkASxkZGRkZGRkZGRkZGRkZP4MZGQCWGRk/gxkZAK8ZGRkZGRkZGRkZGRkZP5wZGRkZGRkZGTIZGRkAlhk/ahkAfRk/ahkAAAIAED/nAL8ArwAGQAhAC0ANQA5AD0AQQBFAAAlIzUjNSM1IzUjNSEVIxUzFTMVMxUzFTMVIyUjNSM1MxUzISM1IzUzFTMVMxUjByM1MxUzFSMTIzUzASM1MwEjNTMBIzUzAphkZGRkyAEsZGRkZGRkZP7UZMjIZAEsZGRkZGRkZGRkZGRkZGT+DGRkAlhkZP4MZGRkZGRkZMhkZGRkZGRkyGRkZGRkZGRkyGRkZAJYZP2oZAH0ZP2oZAAAAAsAQP+cAvwCvAAFABUAIQApAC0AMQA1ADkAPQBBAEUAABMhFSM1IwEjNSM1IzUzFTMVMxUzFSMRIzUjNTMVMxUzFSMHIzUzFTMVIwMjNTMlIzUzBTMVKwEzFSMBIzUzASM1OwEjNTNAASxkyAJYZGRkZGRkZGRkZGRkZGRkZGRkZMhkZAEsZGT+DGRkZGRkArxkZP2oZGRkZGQCvMhk/gxkZGRkZGRkASxkZGRkZMhkZGQBLGTIZGRkZAEsZP1EZGQAAAABAEAAAAL8ArwAEwAAISM1IzUjNSM1MzUzNTM1MxUhESEB0GRkZGRkZGRkASz+1GRkZGRkZGTI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FwwXGBcqF0oXaBeMF54XxBfuGA4YMhg+GFgYeBiEGLAY0hj2GRAZHBkoGTQZTBlqGYoZwBnoGgYaEhoqGkoaYhp6GpIarhrKGuobBhswG1YbfBuYG8gb6hwSHCQcPBxcHJIcwBzqHSAdUh18HZgdsh3UHgQeMB5GHmgelh6yHs4e7h8GHy4fWh9mH5Qfth/UH/QgFCA8IEggVCBgIGwgeCCcIKggtCDAIMwg2CDkIPghBCEgIVIhfiGmIcQh3CH4IhYiPiJKIlYifCKqIrYiwiLOIuoi9iMCIw4jGiMmI1AjXCNuI3ojhiOSI7gj4iPuJB4kMCRCJFQkZiR2JIgkmiSsJL4kziTqJRAlHCUuJUAlUiVkJXAllCWuJdAl+iYMJh4mMCZCJk4mWiZmJpImnibAJtom5ibyJv4nCicWJzQnQCdMJ0wnWidoJ34nlCeoJ8on7CgOKCIoQChOKGYonCiuKMgo5CkCKTApOilEKU4pWCliKWwpdimUKaopzCnsKgoqKCpKKmYqkiq0KvwrHitIK3ArnCu+K+IsFCxALFosgiymLMYs7C0WLTotWi2ILaYtyi4YLmouxC8kL4Iv5DACMCAwPjBcMIIwljDAMM4w9DEeMTQxZjGSMbwx5jH0MhgyPjJoMn4yojLQMx4zVjOAM6gzyjP0NBY0OjRkNHo0ljS8NOQ1ADUiNUw1hjW4Nfw2LjZgNqg2vDbKNtY24jbuNvo3BjcSNx43TDdYN2Q3cDeQN643ujfGN9I3/DgkOE44WjhmOJQ4oDisOLg4xDjQONw46Dj0OSQ5MDk8OWY5lDmUOZQAAAAAAAEAAAJmAAEAZAGAAAYA2AAIAA//wAAIADb/nAAIADj/nAAIADv/nAAJABP/nAAJABX/nAAJACP/6AAJACz/agAOABn/zgAOADb/agAOADv/zgAPABP/zgAPABX/zgAPABn/zgAPACv/nAAPACz/agAPADb/nAAPADr/zgAPADz/zgAQABn/agAQABv/zgAQACX/zgAQADX/7gAQADb/agAQADj/nAAQADv/nAARAAj/wAARABH/BgARACP/zgARACz/BgARADX/9gATAAn/nAATAA//nAATABb/zgATABn/wAATACX/zgAWABn/zgAXABn/zgAYABn/zgAZAA7/zgAZAA//zgAZABD/agAZABX/wAAZABb/zgAa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AOIBIQEiASMBJAElASYBJwCwASgBKQEqASsBLAD7AOQBLQEuAS8BMAExATIBMwE0ATUBNgE3ATgBOQDmAToBOwE8AT0BPgCmAT8BQAFBAUIBQwFEAUUBRgFHAUgA2ADhANsA3ADdAOAA2QDfAUkBSgFLAUwBTQFOAU8BUAFRAVIBUwFUAVUBVgFXAVgBWQFaAVsBXAFdAV4BXwFgAWEBYgFjAWQBZQFmAWcBaAFpAWoBawFsAW0BbgCfAW8AmwFwAXEBcgFzAXQBdQF2AXcBeAF5AXoBewF8AX0BfgF/AYABgQGCAYMBhAGFAYYBhwGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHfAeAB4QHiAeMB5AHlAeYB5wHoAekB6gHrAewB7QHuAe8B8AHxAfIB8wH0AfUB9gH3AfgB+QH6AfsB/AH9Af4B/wIAAgECAgIDAgQCBQCyALMAtgC3AMQAtAC1AMUAggDCAIcAqwDGAgYCBwC+AL8AvAIIAgkCCgILAgwCDQIOAg8CEAIRAhICEwIUAhUCFgIXAhgCGQIaAhsCHAIdAh4CHwIgAiECIgIjAiQCJQImAicCKAIpAioAjAIrAiwCLQIuAi8CMAIxAjICMwI0AjUAmACaAJkA7wClAJIAnACnAI8AlACVAjYAuQI3AjgCOQI6AjsCPAI9Aj4CPwJAAkECQgJDAkQCRQJGAkcCSAJJAkoCSwJMAk0CTgJPAlACUQJSAlMCVAJVAlYCVwJYAlkCWgJbAlwCXQJeAl8CYAJhAmICYwJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAnECcgJzAnQCdQJ2AAICdwd1bmkwMDE3Bm1hY3Jvbgd1bmkwMEI1DnBlcmlvZGNlbnRlcmVkB0FtYWNyb24GQWJyZXZlB0FvZ29uZWsHdW5pMDEwOApDZG90YWNjZW50BkRjYXJvbgdFbWFjcm9uBkVicmV2ZQpFZG90YWNjZW50B0VvZ29uZWsGRWNhcm9uB3VuaTAxMUMKR2RvdGFjY2VudAxHY29tbWFhY2NlbnQHdW5pMDEyNARIYmFyBkl0aWxkZQdJbWFjcm9uBklicmV2ZQdJb2dvbmVrCklkb3RhY2NlbnQCSUoHdW5pMDEzNAxLY29tbWFhY2NlbnQGTGFjdXRlDExjb21tYWFjY2VudAZMY2Fyb24GTmFjdXRlDE5jb21tYWFjY2VudAZOY2Fyb24DRW5nB09tYWNyb24GT2JyZXZlDU9odW5nYXJ1bWxhdXQGUmFjdXRlDFJjb21tYWFjY2VudAZSY2Fyb24GU2FjdXRlC1NjaXJjdW1mbGV4DFRjb21tYWFjY2VudAZUY2Fyb24EVGJhcgZVdGlsZGUHVW1hY3JvbgZVYnJldmUFVXJpbmcNVWh1bmdhcnVtbGF1dAdVb2dvbmVrC1djaXJjdW1mbGV4C1ljaXJjdW1mbGV4BlphY3V0ZQpaZG90YWNjZW50B3VuaTAxODEHdW5pMDE4Nwd1bmkwMThBB3VuaTAxOEUHdW5pMDE4Rgd1bmkwMTk0B3VuaTAxOTgHdW5pMDE5RAd1bmkwMUEwB3VuaTAxQUYHdW5pMDFCMwd1bmkwMUY0B3VuaTAxRjgHdW5pMDI0MQd1bmkwMjRDCWdyYXZlY29tYglhY3V0ZWNvbWIHdW5pMDMwMgl0aWxkZWNvbWIHdW5pMDMwNAd1bmkwMzA2B3VuaTAzMDcHdW5pMDMwOA1ob29rYWJvdmVjb21iB3VuaTAzMEEHdW5pMDMwQgd1bmkwMzBDB3VuaTAzMTMHdW5pMDMxQgxkb3RiZWxvd2NvbWIHdW5pMDMyNgd1bmkwMzI4B3VuaTAzMkQHdW5pMDM3NQV0b25vcw1kaWVyZXNpc3Rvbm9zCkFscGhhdG9ub3MJYW5vdGVsZWlhDEVwc2lsb250b25vcwhFdGF0b25vcwlJb3RhdG9ub3MMT21pY3JvbnRvbm9zDFVwc2lsb250b25vcwpPbWVnYXRvbm9zEWlvdGFkaWVyZXNpc3Rvbm9zB3VuaTA0MTMFRGVsdGEGTGFtYmRhAlhpB3VuaTA0MUYFU2lnbWEHdW5pMDQyNANQc2kUdXBzaWxvbmRpZXJlc2lzdG9ub3MHdW5pMDQwMgd1bmkwNDAzB3VuaTA0MDQHdW5pMDQwOQd1bmkwNDBBB3VuaTA0MEIHdW5pMDQwQwd1bmkwNDBEB3VuaTA0MEUHdW5pMDQwRgd1bmkwNDExB3VuaTA0MTQHdW5pMDQxNgd1bmkwNDE3B3VuaTA0MTgHdW5pMDQxOQd1bmkwNDFCB3VuaTA0MjMHdW5pMDQyNgd1bmkwNDI3B3VuaTA0MjgHdW5pMDQyOQd1bmkwNDJBB3VuaTA0MkIHdW5pMDQyQwd1bmkwNDJEB3VuaTA0MkUHdW5pMDQyRgd1bmkwNDc0B3VuaTA0OEEHdW5pMDQ4Qwd1bmkwNDhFB3VuaTA0OTAHdW5pMDQ5Mgd1bmkwNDk0B3VuaTA0OTYHdW5pMDQ5OAd1bmkwNDlBB3VuaTA0OUMHdW5pMDQ5RQd1bmkwNEEwB3VuaTA0QTIHdW5pMDRBNAd1bmkwNEE2B3VuaTA0QTgHdW5pMDRBQQd1bmkwNEFDB3VuaTA0QjAHdW5pMDRCMgd1bmkwNEI0B3VuaTA0QjYHdW5pMDRCOAd1bmkwNEJBB3VuaTA0QkMHdW5pMDRCRQd1bmkwNEMxB3VuaTA0QzMHdW5pMDRDNQd1bmkwNEM3B3VuaTA0QzkHdW5pMDRDQgd1bmkwNENEB3VuaTA0REEHdW5pMDREQwd1bmkwNERFB3VuaTA0RTIHdW5pMDRFNAd1bmkwNEU4B3VuaTA0RUEHdW5pMDRFQwd1bmkwNEVFB3VuaTA0RjAHdW5pMDRGMgd1bmkwNEY0B3VuaTA0RjYHdW5pMDRGOAd1bmkwNEZBB3VuaTA0RkMHdW5pMDRGRQd1bmkwNTEwB3VuaTA1MTIHdW5pMDUyNAd1bmkwNTI2B3VuaTA1MkUHdW5pMDU4Rgd1bmkxRTAyB3VuaTFFMEEHdW5pMUUwQwd1bmkxRTEyB3VuaTFFMUUHdW5pMUUyMgd1bmkxRTI0B3VuaTFFM0MHdW5pMUU0NAd1bmkxRTRBB3VuaTFFNTYHdW5pMUU1QQd1bmkxRTYwB3VuaTFFNjIHdW5pMUU2QQd1bmkxRTZDBldncmF2ZQZXYWN1dGUJV2RpZXJlc2lzB3VuaTFFOTIHdW5pMUU5RQd1bmkxRUEwB3VuaTFFQTIHdW5pMUVBNAd1bmkxRUE2B3VuaTFFQTgHdW5pMUVBQQd1bmkxRUFDB3VuaTFFQUUHdW5pMUVCMAd1bmkxRUIyB3VuaTFFQjQHdW5pMUVCNgd1bmkxRUI4B3VuaTFFQkEHdW5pMUVCQwd1bmkxRUJFB3VuaTFFQzAHdW5pMUVDMgd1bmkxRUM0B3VuaTFFQzYHdW5pMUVDOAd1bmkxRUNBB3VuaTFFQ0MHdW5pMUVDRQd1bmkxRUQwB3VuaTFFRDIHdW5pMUVENAd1bmkxRUQ2B3VuaTFFRDgHdW5pMUVEQQd1bmkxRURDB3VuaTFFREUHdW5pMUVFMAd1bmkxRUUyB3VuaTFFRTQHdW5pMUVFNgd1bmkxRUU4B3VuaTFFRUEHdW5pMUVFQwd1bmkxRUVFB3VuaTFFRjAGWWdyYXZlB3VuaTFFRjYJemVyb3NwYWNlB3VuaTIwMzIHdW5pMjAzMwx6ZXJvc3VwZXJpb3IMZm91cnN1cGVyaW9yDGZpdmVzdXBlcmlvcgtzaXhzdXBlcmlvcg1zZXZlbnN1cGVyaW9yDWVpZ2h0c3VwZXJpb3IMbmluZXN1cGVyaW9yDHplcm9pbmZlcmlvcgtvbmVpbmZlcmlvcgt0d29pbmZlcmlvcg10aHJlZWluZmVyaW9yDGZvdXJpbmZlcmlvcgxmaXZlaW5mZXJpb3ILc2l4aW5mZXJpb3INc2V2ZW5pbmZlcmlvcg1laWdodGluZmVyaW9yDG5pbmVpbmZlcmlvcgd1bmkyMEE5B3VuaTIwQUEEZG9uZwRFdXJvB3VuaTIwQUQHdW5pMjBBRQd1bmkyMEIxB3VuaTIwQjIHdW5pMjBCNAd1bmkyMEI4B3VuaTIwQjkHdW5pMjBCQQd1bmkyMEJDB3VuaTIwQkQHdW5pMjBCRQVsaXRyZQd1bmkyMTE2B3VuaTIxMTcHdW5pMjEyRQhvbmV0aGlyZAl0d290aGlyZHMJb25lZWlnaHRoDHRocmVlZWlnaHRocwtmaXZlZWlnaHRocwxzZXZlbmVpZ2h0aHMHdW5pMjE5MAd1bmkyMTkxB3VuaTIxOTIHdW5pMjE5MwVibG9jawd1bmkyNjA1B3VuaTI2MDYHdW5pMjYxMAd1bmkyNjExB3VuaTI2MTIHdW5pMjYzQQd1bmkyNjNCB3VuaTI2NDAHdW5pMjY0Mgd1bmkyNjYwB3VuaTI2NjMFaGVhcnQHdW5pMjY2Ngd1bmkyNjY3B3VuaTI2NjkHdW5pMjY2QQd1bmkyNjZCB3VuaTI2NkMHdW5pMjY2RAd1bmkyNjZFB3VuaTI2NkYHdW5pMjZBMgd1bmkyNkEzB3VuaTI2QTQHdW5pMjZBNQd1bmkyNkE2B3VuaTI2QTcJb2xkLmVxdWFsA0kuMQd1bmlGNDNBB3VuaUY0NjIHdW5pRjQ2NAd1bmlGNDY1B3VuaUY0NjYHdW5pRjQ2Nwd1bmlGNDY4B3VuaUY0NjkHdW5pRjQ5OAd1bmlGNDlBB3VuaUY0OUMHdW5pRjQ5RQd1bmlGNEM2B3VuaUY0RDQHdW5pRjRENgd1bmlGNEQ4B3VuaUY1MEEHdW5pRjUxMgd1bmlGNTE0B3VuaUY1MTYHdW5pRjUxQwd1bmlGNTFFB3VuaUY1MjAHdW5pRjUyMgd1bmlGNTI0B3VuaUY1MjYHdW5pRjUyOAd1bmlGNTJBB3VuaUY1MkMHdW5pRjUyRQd1bmlGNTMyB3VuaUY1MzYHdW5pRjUzOAd1bmlGNTNFB3VuaUY4RkYFLm51bGwAAAAB//8AAgABAAAACgAwAEoAAkRGTFQADmxhdG4AGgAEAAAAAP//AAEAAAAEAAAAAP//AAEAAQACa2VybgAOa2VybgAUAAAAAQAAAAAAAQAAAAEABAACAAAAAQAIAAECngAEAAAAIQBMAF4AdACCAKwA0gD0AQoBEAEWARwBMgE4AT4BUAFWAXABigGYAaoByAHeAfgCHgIsAjICSAJSAmQCagJwAnYCgAAEAA//wAA2/5wAOP+cADv/nAAFABP/nAAV/5wAI//oACz/agEU/2oAAwAZ/84ANv9qADv/zgAKABP/zgAV/84AGf/OACv/nAAs/2oANv+cADr/zgA8/84BFP9qARr/nAAJABn/agAb/84AJf/OADX/7gA2/2oAOP+cADv/nAEX/2oBGv9qAAgACP/AABH/BgAj/84ALP8GADX/9gEU/zgBGgA5AR//7gAFAAn/nAAP/5wAFv/OABn/wAAl/84AAQAZ/84AAQAZ/84AAQAZ/84ABQAO/84AD//OABD/agAV/8AAFv/OAAEAGf/OAAEAEP/OAAQACf/zACH/zgA2/84BF//nAAEBFP/OAAYAEP/OABH/pgAT/84AK//OADb/zgEU/84ABgAI/+cAEP9qABH/agAj/+cAJf/OACz/nAADAA//nAAl/84ALP/vAAQAD/+cACX/5wAs/84BGgAyAAcACf9qAA//agAh/2oAJf/OADb/nAA4/5wAO/+cAAUAEP+cABH/agAr//QALP+cART/nAAGAAn/5wAR//IAK//nADb/nAA4/+4AO//OAAkACP/OAA7/agAP/5wAEP9qABH/nAAj/84ALP9qART/agEaADIAAwAQ/5wAEf9qACz/nAABAA//zgAFAA7/zgAQ/5wAEf+cACz/agEU/2oAAgAP/+cALP/OAAQANv9qART/zgEX/84BGv+cAAEBFP/OAAEBFP/sAAEACf/OAAIAIf9qARf/nAAHAAn/zgAh/zgANv+cADv/zgEU/84BF//OARr/nAABACEACAAJAA4ADwAQABEAEwAWABcAGAAZABoAGwAjACUAJgAoACsALQAuADIANQA2ADgAOgA7ADwBDgERARUBFgEaARwAAAABAAAACgA4AIoAAkRGTFQADmxhdG4AHgAEAAAAAP//AAMAAAACAAQABAAAAAD//wADAAEAAwAFAAZmcmFjACZmcmFjADBzaW5mADpzaW5mAEBzdXBzAEZzdXBzAEwAAAADAAAAAQACAAAAAwAAAAEAAgAAAAEABAAAAAEABAAAAAEAAwAAAAEAAwAGAA4AFgAeACgAMAA4AAQAAAABADIAAQAAAAEAngAGAAAAAgCyAMQAAQAAAAEAzAABAAAAAQDeAAEAAAABANwAAQDuAAUAEAA6AEYAXABoAAQACgASABoAIgBjAAMAEQAUAdEAAwARABUAYgADABEAFgHTAAMAEQAaAAEABAHSAAMAEQAVAAIABgAOAGQAAwARABYB1AADABEAGgABAAQB1QADABEAGgABAAQB1gADABEAGgACAIgACwGrAawAXwBYAFkBrQGuAa8BsAGxAbIAAwABAHYAAQB8AAAAAQAAAAUAAwABAIAAAQBqAAAAAQAAAAUAAgB4AAoBrABfAFgAWQGtAa4BrwGwAbEBsgABAF4BoQACADgACgG1AbYBtAGzAbcBuAG5AboBuwG8AAEABQATABQAFQAXABkAAgABABEAGwAAAAEAAQGrAAIAAwBYAFkAAABfAF8AAgGsAbIAAwACAAEBswG8AAAAAgABABIAGwAA","size":72},"glow":{"blurX":2,"strength":2,"colors":[16711680,16711680],"blurY":2,"glowEnabled":false,"alphas":[0,1],"quality":3,"distance":0,"ratios":[0,255],"angle":45},"shadow":{"blurX":4,"strength":1,"alpha":1,"blurY":4,"color":0,"shadowEnabled":false,"quality":1,"distance":4,"angle":45}} \ No newline at end of file diff --git a/assets/fonts/joystix_monospace.fnt b/assets/fonts/joystix_monospace.fnt new file mode 100644 index 0000000..44c3dca --- /dev/null +++ b/assets/fonts/joystix_monospace.fnt @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/fonts/joystix_monospace.png b/assets/fonts/joystix_monospace.png new file mode 100644 index 0000000000000000000000000000000000000000..9527b107308c22e4f5a3206431d3883526e67976 GIT binary patch literal 3828 zcmb7Hdmxi-853PXBui;DxeaTbnN*Pk_% zP~}+#9V%`Js?a5{I}%|u25TM{Ra?sqg4P^8F44ik_Mr|t7-UqDOq3SAu@3Jj9wCQh_ zylKg4#3SEOmN>RX!Kn{UWM#<7uWv%9Hx1)cod2f5F82B za6`rZR$Ew1`}cZn+RGOKCa@$4ovkmcR2)2*gVZ)@&=Mj#=74cCkq;fco#eW%VpB+> z>7?8KR=$6J+WJhq9xMXiZ9Zq5?yaZz#g(%;uXg?e;w_btjQoIx)}A#!_5EC7mX1oN zgn;O#huz*n$q_A&KV{7ow4IY;EE?y07-Wr zA&t9d{z15{GHwfbPxS-mDg4Fkg76Dwb|p>J1oCU#uk`{+f}IPuzQr&vBkt2`x*8De zGHj%Qrc_8IBoEa*ylEKJEJE7G#@ETuxoSKIUHv-^mZI-aBHQDJa(%Z)igw75OI0`j zOqErHB-fAL3nLzT?07B6ZfsI(+Gwa&Qbk`s3Zg{n=mL|G|76GGp278l6G@V80;s?P zE#Co=4KB`3Lu#;Cm$LFGvn4xy8@Xaw83YQRrB*=yU-~YQaH7V}+6P=hf23%E<%W_e zZQuZ);>^XfW*27=AKk4+xm#491qw!uS8iQTOv@IT&>a%bPF;C&0zY+HI6&Pqs`AWS z!68xj!NQ3b)zpQ!pxPmuNI|fb97ZHtl)bNrzN5H#&ZbYoIX7S|47O8cQ(8-Nqq^7O zc}qUC9V-;Znjx~C+KdXU5$QvJDL|{322b64k*@wvQ@h7K(U7}Ce?mz2T0T;l_aXiz z7i0wGYdl14^mnAC2{kNc8Xjh=jCW)z3^twBGq|pB=~tjSp84{X%jyIu2;uyz{S-_M zBBhHYDo|{AnZTY$WQ%9WrKaz^4b3@H(3e!_e)&R%!80qACs{12-9L5~+;p>5MMS^> zBSsk2PC7C|9TIAYOG?x_HFMwU4;%6AF-mUdyBoIe-26W~$34*`ov6hYTi+Ijy>qZTs3KK36|-e{#Cy!B zT{>$fo^rywACkCLhL0u^D@+@iPYc`aJr1tin|bTLA>CXG>NOTTqd}>#MmSM!zlkVu z2(imHTqnpQu~>yl2#S1cM{{r03qE}~R z-8L)r@fo~rGV+xg)v6Ao2yedIlZ*}a&ZEn16GU=k(#NYz7^)h=amW@oOJ=?NaK7<1 z=jrZfphUhLgePzr({pdm)3*w;T?*}WRL~X8Lre;B^pL0Kdno62&a1{+Zba7J_W8

r@BpNzK$*}*qKeMxku zU2hVFVP7g*T|WnyoT(Q7Vaq?l$ag#^*-=Z645t}8q9rA@OVtKY{0~~&Olp+AU9s3r zrC;&&BW^-0en}Tr7^CD(TG+)NO{$i2v0-l@IrgOXuH$1Ie}Qs{fy-x!@Ts5hYDk!1 z*=v}g9_&KSN5@w0?3yg$D;a=pB`kdXdO7v{qkP=jQEMgu0^iu6T2G(uE^ftMqWegI zJjS7EmLP8;-mYXqK6?r2^KPn|VrlFvl=K9N+zBWhhu{En=`nOn4 zz#Q9<3@$Jz&)rX8={j@RNoZxkx?N=3E7$Y{9R)EasrN5cK2HolIzLiW2bP5o8~Bd@ zI#XH$fwHyztz20RNzQk$?g0m)+E2E&Z;tc#<&1f@*D_q{_npyNXQZGDbwf#bIeghL21cYs7_vIuLZ&z$?k8 zIB5OPVe=IVd^#2$mWlaldd5&!2GJq8lAYxl0VJ|wh(+CR;T1@^FiGpy??pt8tW7Gy zJ=5kP!K3s&=fKgejNKoK2DQ(A{XAwLDpmE@lo+4$t63J#AM9ySMKYSI>3dxEg!z#+ zjdpfk-hJa=K(5C6=4cboeDKiEv`cIISI=1G%yi@s18JWfcGAd)fV5XOO~8cOR^82g z{sJ>n7K)u}ByyBCBNVgu1IowyS&A$EAG7uQ8fI0Vzc<2Tr*`=#(jkGw^YMSK2XuXg z=;kf|Xs!)u@((BmiH_b2A-~o7-kF!mP%{o0=wPyM4ju6U_*Hhsa78vfKbM=K*Jh$= zAd$47^=XoQbiAc0>^`0I45Ps(vivWV9g(s&apkmIC}a$6BSSpb%r&=xoO81{ z`N4D;>>(j$aKSM1QSbp37gvk_eEy>uGbXpqCrnU#i{FH3l-n@kRm`aGrW{Sms$7)Q zzHy?`6fzhu1=Nh&J~g(y{@iz2Dq9wiZJ^qC*aPhq7P;I_L=Z{6q0*Xc?q8KA9pg+o z$(&pnr@%p>2=t9M?i+xN0R}*OkOKnYwV!nzU~ar714UDH(D|^R%AD+qzavai=N2*c zuBh4S$-L=FH)_Npc>YuOOQW)!dO3|c8>EcWJuqmkkuCeQWNG0+J)GKRx_QgXigU4{ zWDDtG`ONkFhw<-C9|iy(Nw92HzcioDb89I!o|nt9DI(mIJBm}ldbxxcdsFl2%P=FnK3CU*C$o%UWK7pvo5d}+tXVXN<=szIPNXe5?LFMImJN5k@l>x&x0hxE10fwn9| zu!1Q!U_E6{&m;zYLTBn~w1_T4xytG#jChoSh?7o8lJ1pST_J5y9JYs&vBwa3C2zwr zK;+;+%!TaJ|4FFui{7_VngFg9Kl(bR#56nR<;~|09MO+<+UHDYwRj!2db$CD9$@DV zNcPFecIU74inaE^Q({t(u1j-S2tGFTqH3SfuBx-+-HT{Xov&%GJMgiNBO?Q(gcab!8iV;&`=ko| z{Nd7%*9Lm>32z8I=aw0>f=Krx&hOjt+>nUD4vDW;n$SOV>Ndl(^N9bDs8 z%D^=}Jn&JvH_#Fh=zu#HcA*WEwVFA%5e?Q_=4Qy2KG)zi21 Zb;o&l`ac$nm;elgj#}DTJT*s0{}<#Wf}j8Z literal 0 HcmV?d00001 diff --git a/assets/icons/dino-start-icon-blank.png b/assets/icons/dino-start-icon-blank.png new file mode 100644 index 0000000000000000000000000000000000000000..ff479d75b230f11359cccec6650461df2296bae0 GIT binary patch literal 4727 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 literal 0 HcmV?d00001 diff --git a/assets/scenes/game.json b/assets/scenes/game.json deleted file mode 100644 index 820a40c..0000000 --- a/assets/scenes/game.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "assets": { - "player": { "type": "image", "source": "assets/sprites/player.png" } - } -} diff --git a/assets/scenes/menu/main.json b/assets/scenes/menu/main.json deleted file mode 100644 index c52e676..0000000 --- a/assets/scenes/menu/main.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "assets": { - "button": { "type": "image", "source": "assets/ui/button.png" }, - "buttonHover": { "type": "image", "source": "assets/ui/buttonHover.png" }, - "checkbox": { "type": "image", "source": "assets/ui/checkbox.png" }, - "checkboxChecked": { "type": "image", "source": "assets/ui/checkboxChecked.png" } - } -} diff --git a/assets/sounds/achievement.mp3 b/assets/sounds/achievement.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..6acc629340c5679b35a7d8248e0598431e67d6a2 GIT binary patch literal 9328 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 N^#A6k_7 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 literal 0 HcmV?d00001 diff --git a/assets/sounds/player-action.mp3 b/assets/sounds/player-action.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..8ac522af9ebcd2a1ee8f2b8933834f513bb9b65b GIT binary patch literal 2574 zcmdrOe>l^7_q#P(e89cUiDq(D%2LTGTO#&}h()D4=IsLqAHy%wumbJ;Ja*F2yWQ;5$i z?NR##3WtAo^kE#QogNC*N&DnB?4UY~cj@#OG)>$-e^gEt^6vv=`xA$#6G&X+s!Zz!8f% zty~X}I{ByXKu`}9+JUzXv)s`hK=>R67Cvoly*8|q7cPE)(rOeK7;G{yY`!~WDZt&_E;{(=MTytL{(FHZ+h>V|4d=_z{M z+qq|jo5x9j2M~{Z78CUytyTBhpBp`mj517cY1f`c->E!nK3@S}*+LOejNp%CU#l4S zmp1r(yxa}GF4}49Ei8Ha${kSd5;+I#S|D|854)Sk(y0%DQr{#)F$I5Qj>+0cYoD?; zX$61sDyK7j=}Rc>_cBr0PF>T15-K2+Z0kVnzFZd=A$nOerC$Z!3X|@iTyfm8@Y2y5 z3HVE>RkOiUVtA1I@iDgr%ksp2}zn{Z)I(J*DX&t*?$yPMm7=$i*su#K`VoZGq~zWqtVK z#!)O$k>8PH@M2er87;p@LGld^thp3GPoLx5>Yg06-F&L~>f$3hyivW2OUGlL0bXer z5TMS9B|%)ORhCC>@dW$&p^JJqQ?}+hv29Td%Y)KLVgB~PiZv~CL&9Olmj!AMwhY-h zbig|LXot%mI_dRd=d(T+6|Yl^yf%{!g176%c_LAgvelODW%hDI10{`ytN`BTg&pX7p5N%OD-wUQ%bRq)l#u|n7X-bg$?Dr=ghO%F zT3+HR;p5BFhbA9Z#jsj2f?wPC5m`$KqPAkIoD%51{zmVTelOhjadVzNS&?>PD#j)G zgKQ#FJ3j59^F_&%f`FlY7ZL@#jQz;VMZ%1b>J5b@iZ|z7HxfJ<@IL_fpW~I43XBUh znNpgPy_v0RyT9LAG4gwWg~0Rn=+Cv}H^~K&VdWJ2iaj@LIWvqJ literal 0 HcmV?d00001 diff --git a/assets/sprites/README.md b/assets/sprites/README.md new file mode 100644 index 0000000..dc3e2ff --- /dev/null +++ b/assets/sprites/README.md @@ -0,0 +1,51 @@ +# Bird fly animation spites adjustment + +Due to unequal dimensions of bird fly animation sprites you should adjust `sourceSize` and `spriteSourceSize` for `bird-1` and `bird-2` inside `dino-atlas.json` as follows: + +```json +{ + "filename": "bird-1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 92, + "h": 68 + }, + "spriteSourceSize": { + "x": 0, + "y": 12, + "w": 92, + "h": 68 + }, + "frame": { + "x": 1473, + "y": 27, + "w": 92, + "h": 68 + } +} +``` + +```json +{ + "filename": "bird-2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 92, + "h": 68 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 92, + "h": 60 + }, + "frame": { + "x": 1881, + "y": 27, + "w": 92, + "h": 60 + } +} +``` diff --git a/assets/sprites/_raw/TexturePacker/dino-atlas.tps b/assets/sprites/_raw/TexturePacker/dino-atlas.tps new file mode 100644 index 0000000..458f50d --- /dev/null +++ b/assets/sprites/_raw/TexturePacker/dino-atlas.tps @@ -0,0 +1,487 @@ + + + + fileFormatVersion + 4 + texturePackerVersion + 5.1.0 + autoSDSettings + + + scale + 1 + extension + + spriteFilter + + acceptFractionalValues + + maxTextureSize + + width + -1 + height + -1 + + + + allowRotation + + shapeDebug + + dpi + 72 + dataFormat + phaser + textureFileName + dino-atlas.png + flipPVR + + pvrCompressionQuality + PVR_QUALITY_NORMAL + atfCompressData + + mipMapMinSize + 32768 + etc1CompressionQuality + ETC1_QUALITY_LOW_PERCEPTUAL + etc2CompressionQuality + ETC2_QUALITY_LOW_PERCEPTUAL + dxtCompressionMode + DXT_PERCEPTUAL + jxrColorFormat + JXR_YUV444 + jxrTrimFlexBits + 0 + jxrCompressionLevel + 0 + ditherType + NearestNeighbour + backgroundColor + 0 + libGdx + + filtering + + x + Linear + y + Linear + + + shapePadding + 0 + jpgQuality + 80 + pngOptimizationLevel + 1 + webpQualityLevel + 101 + textureSubPath + + atfFormats + + textureFormat + png + borderPadding + 0 + maxTextureSize + + width + 2402 + height + 2402 + + fixedTextureSize + + width + -1 + height + -1 + + algorithmSettings + + algorithm + MaxRects + freeSizeMode + Best + sizeConstraints + AnySize + forceSquared + + maxRects + + heuristic + Best + + basic + + sortBy + Best + order + Ascending + + polygon + + alignToGrid + 1 + + + dataFileNames + + json + + name + dino-atlas.json + + + multiPack + + forceIdenticalLayout + + outputFormat + RGBA8888 + alphaHandling + ClearTransparentPixels + contentProtection + + key + + + autoAliasEnabled + + trimSpriteNames + + prependSmartFolderName + + autodetectAnimations + + globalSpriteSettings + + scale + 1 + scaleMode + Smooth + extrude + 1 + trimThreshold + 1 + trimMargin + 1 + trimMode + Trim + tracerTolerance + 200 + heuristicMask + + defaultPivotPoint + 0,0 + writePivotPoints + + + individualSpriteSettings + + dino/assets/raw/sprites/bird-1.png + + pivotPoint + 0,0.441176 + scale9Enabled + + scale9Borders + 23,17,46,34 + scale9Paddings + 23,17,46,34 + scale9FromFile + + + dino/assets/raw/sprites/bird-2.png + + pivotPoint + 0,0.5 + scale9Enabled + + scale9Borders + 23,15,46,30 + scale9Paddings + 23,15,46,30 + scale9FromFile + + + dino/assets/raw/sprites/cactus-big-1.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 13,25,25,50 + scale9Paddings + 13,25,25,50 + scale9FromFile + + + dino/assets/raw/sprites/cactus-big-2.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 25,25,50,50 + scale9Paddings + 25,25,50,50 + scale9FromFile + + + dino/assets/raw/sprites/cactus-big-3.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 38,25,75,50 + scale9Paddings + 38,25,75,50 + scale9FromFile + + + dino/assets/raw/sprites/cactus-small-1.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 9,18,17,35 + scale9Paddings + 9,18,17,35 + scale9FromFile + + + dino/assets/raw/sprites/cactus-small-2.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 17,18,34,35 + scale9Paddings + 17,18,34,35 + scale9FromFile + + + dino/assets/raw/sprites/cactus-small-3.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 26,18,51,35 + scale9Paddings + 26,18,51,35 + scale9FromFile + + + dino/assets/raw/sprites/cloud.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 23,7,46,13 + scale9Paddings + 23,7,46,13 + scale9FromFile + + + dino/assets/raw/sprites/dino-dead-outline.png + dino/assets/raw/sprites/dino-idle-1.png + dino/assets/raw/sprites/dino-idle-2.png + dino/assets/raw/sprites/dino-run-1.png + dino/assets/raw/sprites/dino-run-2.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 22,24,44,47 + scale9Paddings + 22,24,44,47 + scale9FromFile + + + dino/assets/raw/sprites/dino-dead.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 20,22,40,43 + scale9Paddings + 20,22,40,43 + scale9FromFile + + + dino/assets/raw/sprites/dino-duck-1.png + dino/assets/raw/sprites/dino-duck-2.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 30,15,59,30 + scale9Paddings + 30,15,59,30 + scale9FromFile + + + dino/assets/raw/sprites/dino-start.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 22,23,44,45 + scale9Paddings + 22,23,44,45 + scale9FromFile + + + dino/assets/raw/sprites/ground.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 600,6,1200,12 + scale9Paddings + 600,6,1200,12 + scale9FromFile + + + dino/assets/raw/sprites/moon-1.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 20,20,40,40 + scale9Paddings + 20,20,40,40 + scale9FromFile + + + dino/assets/raw/sprites/moon-2.png + dino/assets/raw/sprites/moon-3.png + dino/assets/raw/sprites/moon-4.png + dino/assets/raw/sprites/moon-5.png + dino/assets/raw/sprites/moon-6.png + dino/assets/raw/sprites/moon-7.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 10,20,20,40 + scale9Paddings + 10,20,20,40 + scale9FromFile + + + dino/assets/raw/sprites/restart.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 18,16,36,32 + scale9Paddings + 18,16,36,32 + scale9FromFile + + + dino/assets/raw/sprites/star-1.png + dino/assets/raw/sprites/star-2.png + dino/assets/raw/sprites/star-3.png + + pivotPoint + 0,0 + scale9Enabled + + scale9Borders + 5,5,9,9 + scale9Paddings + 5,5,9,9 + scale9FromFile + + + + fileList + + dino/assets/raw/sprites/dino-start.png + dino/assets/raw/sprites/ground.png + dino/assets/raw/sprites/moon-1.png + dino/assets/raw/sprites/moon-2.png + dino/assets/raw/sprites/moon-3.png + dino/assets/raw/sprites/moon-4.png + dino/assets/raw/sprites/moon-5.png + dino/assets/raw/sprites/moon-6.png + dino/assets/raw/sprites/moon-7.png + dino/assets/raw/sprites/restart.png + dino/assets/raw/sprites/star-1.png + dino/assets/raw/sprites/star-2.png + dino/assets/raw/sprites/star-3.png + dino/assets/raw/sprites/bird-1.png + dino/assets/raw/sprites/bird-2.png + dino/assets/raw/sprites/cactus-big-1.png + dino/assets/raw/sprites/cactus-big-2.png + dino/assets/raw/sprites/cactus-big-3.png + dino/assets/raw/sprites/cactus-small-1.png + dino/assets/raw/sprites/cactus-small-2.png + dino/assets/raw/sprites/cactus-small-3.png + dino/assets/raw/sprites/cloud.png + dino/assets/raw/sprites/dino-dead.png + dino/assets/raw/sprites/dino-dead-outline.png + dino/assets/raw/sprites/dino-duck-1.png + dino/assets/raw/sprites/dino-duck-2.png + dino/assets/raw/sprites/dino-idle-1.png + dino/assets/raw/sprites/dino-idle-2.png + dino/assets/raw/sprites/dino-run-1.png + dino/assets/raw/sprites/dino-run-2.png + + ignoreFileList + + replaceList + + ignoredWarnings + + commonDivisorX + 1 + commonDivisorY + 1 + packNormalMaps + + autodetectNormalMaps + + normalMapFilter + + normalMapSuffix + + normalMapSheetFileName + + exporterProperties + + + diff --git a/assets/sprites/_raw/horizon/cloud/cloud.png b/assets/sprites/_raw/horizon/cloud/cloud.png new file mode 100644 index 0000000000000000000000000000000000000000..3b771056a1319e674dbd343ae7569fae88f97948 GIT binary patch literal 1123 zcmaJ=S!mQi7>)`>#d;#578z44UYlzVo6uOdo2@Q(m$F@P9|TR4X*agX#ALR+Z9%ar zDyaCN4@D}72tFzGqTqw5FIE)Af;Var@jmfFL7miY^}#hTnS<~9{$sw`S)W*5I)2u8 zilRzmE0iRe*N`!LYzg_lKk;lAnP%c>8aJROoKqc0g>}>jLCjQ}VG^o(`-Xm4MNwla zj8qz@<8_jTOh)xEOy0B!o1&_!^R}wBKnxmTvth~f+q36rVCXWvIvD5Tb_8aO6&((2 z=t!irjuuVS>FTARDlZWM6JizQ%~s2m@-jW7E0MK#%+g>8f?H(zcT(wiJ%}I&f*=#} zX?!3EmWT`=@&`n5F%USulI1E{-tXf>Qh<{L0StdMiRS1{Qc|fMjzxAdox#|aST>i- zF*!ejoMx66MUmwMRuFsy;d9$9tmb`|TV7C5psP8CjSXZ0Pf=||SuE2e)88eS_K2+I z4!4OkjLoYy%QKu;QUMr`{~v0aBWM>V;h%i}DeR`&ZOA5}i?WVJF0QHE3uQ|Y2dWr3 zDTG=JU98U_jNA;eK_udJO$75-8t;YPl#^;3`PVn$W@puKtG`EXwulVA>?I0v)3b>a`9s!BE+f zQ9Ku+sNOJFFP@9PD3>M4u-@hVb=id@;vjE1VqLNsF+a43;~iq{wH3?S$+H-UDdAN9 z?yK&V6EA`Z%ApUd`hIS%tUJuy4n8Tr)%NIW=<@RJr~S*EyUOXCUyeUMvaf7VTsy9N zVRg^_IsLh(ol_1FTf&M%?SgPVkoGf#HhEPZxo@*81+ z4B-A(1F>!I9xb|Eax}AhYS+8^MYk$GCwJ}d?Dl`_{rDsMXy+5 literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/horizon/ground/ground.png b/assets/sprites/_raw/horizon/ground/ground.png new file mode 100644 index 0000000000000000000000000000000000000000..582b8725a851e48876f78b953ec3efb38571409c GIT binary patch literal 1563 zcmeAS@N?(olHy`uVBq!ia0y~y;7kCrB{G?WUP)qwZeFo6%mkOz;^d;tf|AVqJOz-6 ziAnjTCALaHmqNUdTL3pUuNWFkzyQ;)NG#Ad)H48i38v837r)ZnT)67ulAu(Cd$Af^ z98y`3svneEoL^d$42-xmWsp?`R?bDKi6!|(A^G_^uuu%h$S=t+&d4uNaCQcTnx%q9 zcxGNoetEGbSdXu-m1kaYNn&1ds;7&s63`UA%*+%kS0iI*M`r^QM^{5fLqk_fOCuKp zXLA<=b8`~|Gb0lNm|mCsATTyF!Z|*u4H5>3S9Jr+ZDPZ4?c{>c8)i_d8s=v?EWQ?4)a;=U%I1^piSQ`6( zU0vGkZAa%aGX${js(Zk>KaUYC2P7PN=1v5&OJ3eEd@wtYVd8lPh6Q{je-EfzCBRj& z+!W*lsd5nSTmG+n;^qHV91ILAn4_;YzKW2T&ldqU0Yo^KIWd9gfT(Ah|J8Q`OMwM^ zA;%BRDLDWZ21#*5ohx$%^Bh!l{XU0Rrr+CC-1uLZf#KDGJF_yDS&5}BWflXe1ObN$ z_y4hg7!6G4c8R5w_+e*;HtgY=;m>fOroB|`#Qqbj8-B7doGD-XvVj$B29OXashmDz?zKIM{kyk6el79; zk?cqFe7g^OCx)-Evzyx^S3IYxZ=Uwg%H3c8Xvp2V7yf;^A7P)c{hisr3IE^s zD?je+LJqJ^(jOEz&yiTM&-r)G^X#jyMa5H|30fb_l$@Xcobe;yf;^VT-s;RpJoP{K zeh+`-B)4(i^SM91{NrLMRqok3Z-pB>BzS;cYgn-KYp1rgoBjR%H^0xzd{oI}c(L-G zVZLF|-?egwe@wc+*1dS%?(gBr=jWdgX9(DfA%z^(|Cx9g7W!P$6nNXF0t!1%S3j3^ HP6T}TvB6rR#bB*BpA2cpXuQqb=Fxb8ZmTdq56E;O=iYf4Zw&RliSnLEwgZAU56 zC@_egdJrs#qKD8dDv6RvdP<7G9*jgH@Tngt`Za>=&gNrQp{H7LtGriKk>OW7AHQo@1Wi%3yIo6ByC4Q_utPV)^oQ|>G|;s$-BKm9vK57$ zdSkB*_w_cV)ZQ*t(CFQ}K&>kh0s~?NxJI|>h;Eq9@`}Xvwiy~^U2s>J{v)bYPJk$~ zA*k{PeJU5I0wKZA1uFxBuoLhsSIw~13|Hynf?|Lbc^)i2G>K+w?P5}DSd2whVY(Az zOJtZ#Cgaak`jOqiaDpH(EYI+~k9hc;9uq6B&veRj3=(uyTeq-|OyDspZ77YyG*S8| z1;bjRHJ!yWk%BRgy%5;`bttK{O^%e_#R z7`35-k)1-QJ6FX-C&I|-L>7ofy{ZXddy8&rDC6wNVq{s2n+{e?6~?77O<4T8u89pS z&sRqyY$V1>92XPnr3hOes0@ap^<1cmmvUGMsc8e6IEU4iv0PrP*A9k7B1_QLk3y}% zMh3{HE$Vr-2(i3;i&!nM7NH?8mLXyo?{fdT?A#XVAkSQCU9wneerS@8w@GVvjNC3E zpT%5Uilp3`_p?(ar@`7)i6a}nZ5>c>LD~7s&z&{yWQ~qatc61trf1gu_&GMse_nV$ zL>11@o%$NXFOFX=mqA_My_%212SdYU@}>2w2Zsw5UiDn5nJPS>^mS!kzrFbVPWGUv z^wQb!M=x)fADV;x`!^Dpy-+-UzoL{_EB`%AT%CJ2@@!swQe05DothiHIehGR+6z*Y zpq>$~(OaRi5w>p2;I*;`7vbp@Zzl%aXfw6)>1;nrU%C6`I$QVV@s0`VP-9@*ud&;o Pz287Q)+CMAA3pgT@)Ud- literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/horizon/moon/moon-2.png b/assets/sprites/_raw/horizon/moon/moon-2.png new file mode 100644 index 0000000000000000000000000000000000000000..257b4508a3911890810758c835fe0f4b115bc900 GIT binary patch literal 1103 zcmaJ=OK8+U7*4gQRD|k5P%I7+pSZ~;+io|ZX^qLMtESZLYPX7LnoPH`CKHosH?0VZ zH=!u#MZ6Smo_Z5RMU53fl!`)Itf=@vdk_Ut=*c>%-Ri+LFqwab@B9AeoNH^{y`pAq z4MkBaGJDi4*|(6@wrmOc_g-iW$+iZk^SB*#H}X30&Rig&1_fg5^l`*IRdKV3`u#(V)dOSAjj&o6T{D6o^E?hFAxIebVv8K%(b#MPf(SEDh!$xL2Zo2bI^_fPy>-8kl6v z;OZMdqrh;3zoD$4Lf`N#7hA{yk)qy(`mjWkNPnkby9=_8 zKVK$NFgDO#mSf^kN@bv?{U2)E3uqr_;h%W_DeUJ4T*zjjkNP}=G_HF?J>Smq~ruAC({jOu8NF48#=hmHUDsxiri=%Y?pXep=b3&bC-u~FqgJy zRgOids5j3wE5{;NJiKX|Jd3*-Rn7%d zpQj$L90j%22i|(yKCG_|^Tjv$(beCY&u^={a&_t6;r@*mxQB(0KPUTUg5gEaPoq^s zsfXdgk#Wtv?ynoVd1!O^YD{9}(#yIh{UcwRZ=873e$gw%rlyXLb#|4g!jY!a6W!M* zS1qnyRtt8NsH#Pgac}6;yRXY%J5|*)-&YS$oY?myoSq!xXSeTv%HJB_dq2E(>G18F y50zhiD%NS>d4OHXMX`*qH<6G literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/horizon/moon/moon-3.png b/assets/sprites/_raw/horizon/moon/moon-3.png new file mode 100644 index 0000000000000000000000000000000000000000..1c494f25247a9b3e8f9c4164210f06c1ddb8522d GIT binary patch literal 1066 zcmaJ=U1-x#7|pD>F*bBC1`1-#n43Rsnzn13xH`M0+X|+XuCP)>Oq07cbjgj$t?lN+ z<{o78XFfO(1VQvsP(=3P5ZS{XRG9eS)CnS@AY(G$CWzuq*LHibUP$f_-#Op;zI*O; zEZWytzptJkh{i}iAIEbC{$h2z@IQOqw}7X;D4awCa0ul^0}w$OrU4mI#bFQ!qC9%; zIp`t?+aV>9L`mTkCqdOAS}~4-s$(=kbafYWQOW{DrophH1*rA;XB4T(0cx;Qa0+?| zWR(6f0}PBs6Vg~#Vr8oP1ld*KFo6n?NEXx)&EyIJs>sXXwRKEWWHAI~1JtIdq!1%R z&;Vqo!)uoqPbcYP9gNrQVcBD(%gOj@r=MorcE-zjoSe%=mIj5h8S)Sp=X*=J@Gd}Q z5YjoC&gb)vyxRedVVYrCmUg;mm&=YL?B=M3#DZNjTgwbQFeO9LkpeZ+VieObhXNE< zx>-Ig|Dmc{i8fIjZ0Y?cv6&dv0UZY>%o!5CxS>`n zmCl6>AR=faARH-oF_wV{ni;5*p^()zmh2c*G#Td2!$piBa1qT!q9%a|AD}RcLs4YT z+yyeAIq1qJd|=O&`=pGZ()N~v6dZF9cSi&p_~VD zuK`uEST?6r*W#`iC#I?=G~> zOB-)eSEh3MrKRa)?c?L^>HSw%Ps0tqq3&mH@#+0*sfSZFH3vR6&83=bJGPBKd%k^d zAwL;MXU@#g!oy3n? K{DYpelYarPWmro9 literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/horizon/moon/moon-4.png b/assets/sprites/_raw/horizon/moon/moon-4.png new file mode 100644 index 0000000000000000000000000000000000000000..71404d21c388a53389cb3f3913faba5c33ccc061 GIT binary patch literal 1087 zcmaJ=T}Tu`9A7O=qQrt8`hsDFF!T1y^K>>ZJ#X*ys1rR86(7QNchv3Noo#pQP79NY zN)iN(=%J5?-m>y3gbFI?#i)mne2|DJ3W_L*2qL0pPtSVjT9}>x48Py+|2gBWElnHO zZ(GkW%*I%=lAwDzU9H7M^q-onc}TadB+^CNaUV&m4q`$&?nNMGs{JT|RDJmHJgQ@u zHM@*t7wL*0kTq;_s)yk+rcK!lQ&*p{RV{@G=tcd86=Xl(z0U$e53-%raUpJp(SXrB z;-L1CmZUb4(xA@P?*nxinF^SQs32nwTCSW4vRPf3+TJzKf-Hojg6wioUGY{B#ts72 zT)?M^{%TMIIWbV>hp-Yzf>_H7wY*s669ckekR=JMd@S|m=zVfRiLUsfryx5(h%NJc zI-TayRUCHuc@aX$3lc9$K8ogKvCWmdrCyYrJ^}*xjMS^usZz6q7(1X(bm6i6X>&;jVYmI zX6fTnsN@tVRoX;%%ctX@oe;n__;ru55hbVF$mId^n!@oYiiy`|UBx>Jvsg2J`MrJ!Lf zYY1&;?v5Y)HUBBb6iysEJll~H8^+SNYiFK!SDw6IQ87LF^p#L@1%4l0cWvj}S7df< i|F_dGzpQ!je$NBum;tAouELAnla57Nlv|BGCw>EL!DQ?J literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/horizon/moon/moon-5.png b/assets/sprites/_raw/horizon/moon/moon-5.png new file mode 100644 index 0000000000000000000000000000000000000000..674e2d5f2374a248f99d29ac1bd0d92fdc2522bd GIT binary patch literal 1080 zcmaJ=PfXKL9InV8Lx%HYgqT=MVjywrTFRge6Sj4eDJ5iE!Xh3h?b|4$eWiV41B@Zw zj8PKw;GF|T1Ca|JNDxDes0X9oIC$V&au$F>Q7eaEWtKReU*44ZlsNudNxqr7YZBB;V4K*n@A1L8ndC&pfa4uUv( zPD`dxO6n05sC#7x<1OeWW)nn5XTg+}EI{NC$Y@4@`nvLzA~iKY^|wks$qa*Gt$We} ziOJriGMQC)mFm1eb`%6GpaUe61%1@8g+hQT>I!)8T+zX>SQr( zK`S3iu&mxbS1lh)s4SPp!O%`~4>h}Vg(t|_9*izN91K4&@Wfkqw6{0i{rFith>5{u zVe|9mO5L>2Rkc>Rbm{wwdm(qZ?cu%I#EUEOor-G%yGHd? zhPz%f&9k~W(pX)2TEBJs)QLmuv9j>C zYt=YXacBAYFRo~elf+bJ=f{(Q`Qy>ubq-d~udH3217CjEqu1`AW7`!j;*He2dw+u( Pao%z)(km{825F|93E37%)JKbp~py}Y`ZhF|8xd7-Q8Jr%h}d-!zDX3JM(mhb>>YoZ{5{P zONXEc3W5ZwlLx_rT`D1oG7$0- zn6}{XbTXq%7ZhHld(MLHvOoxQh-FaLCk$IChv^+&fvlZlh6Xz!xDcjyMP;QFh#?Dt zpf}`ExIhqe@?I|F5AggM;A6QihV5cFzlRG60aoz&z}}!qHcK57(qi9UF0u>Ld5leg zVM?Wvx8(OCYnSc3YJ}gtlU7Cf1Mv97Z{Zia1OYrMo5Q z=02@q@3o0Ej48_|!+BY!q-vlf{XbOK_oHo`h6j58No;4POvt36jf$2+E^e&NNo5K# z3(6Q-8H6UPT}Ms^;VAQp4F#)I||%}`Ov?%2Udl8`WLEE@_;h+&$rcr{HGcz+$=i(d}=OZE;jfMh!oqZ8L#ztdRtcaAN4h>wzss~tqO{`-F-6WYsXlavB?X!>$ zcFGpC+FIC}e0x~6wid1?mLXyo=W-8ScJ+uj$XV`Nmu&XU4-MjYi&*7k|@KN@B>xBAzfymJ=^J5J5NQRxZvy&bi(g>$iek3#;?eB@TT0=HC83J36ATRw~z)bMD55L!xxEVd#P!HOsdYHP%U4~n8kL9qut=)uQqY+4V-h1vQ4;rqV-G5?(I z?%MC#vSSNHQLf|xAw~9`WOdipkbnMM_&(VhaXf>2P(Ln6CZyUGl!YLvNdqtiC8c=m zF>Ix%O>Q-v!5OiWmyza`9E{i248o?U*1fhN$$5xD77nO-lwP@Wj|Qp|rF%o7Pc&jM zrydwFVb4fcS{}*EoI>wy1Fbes1T=^xU~5CV#oJN3tjiPIIc8{3hTwdZ{*zQj>;^Gp zLJ;z{cw{yh0%6X}wgiG4w;T9N0Vr#($A-a#A+(j?PA zC1}Q)tZuEgi8PF{C4*tTKBuG#P!#_U)wDIVg;Q`n-+u~Q>7oId6tvK=DU*xqZ*oEz ze9VLrMrInJp-LCKa|k0VhYS#lIbGwx&R$hlP{G<&=7=Jn)GaLOGE53lny7eHRpGf9 z7Y>GEk@h$nXW2N{!TQ4SP&g7xw1I8+iQ z(m=UvUag)>OI5v9u2Maha8)itl3|?7{p+$TM`VH=b8U2qvo`!tClhay(O&sxwvlIX zJ1MlM?d4C)&t0cLUHs6Sq2{kg>mJVha=RxV)!J9bFD{NY49};YFo!!!#e*lmBqyF- zI~%yQb$-X0(uakb*$Z&)#rwC3SAm8xm^pI#oExchle s<3h9bvEfWgwFl zNl{c+Zb-|MxjP!0I>`UX%L`*<+Kw|tJc`C~)$k#evQPLWl!J_I6@jG25w z1icc&C*ui8IsgQY?_;?>mXF8yq@3VnK>&@9CeeIrT+VCRMl7;Z=rYEh%(B&Lm8r%V zLTTP@b&%(7?zqAXI5~ zaioke3d+a>sv31o0{g~n*Fx1`f1RW2a?TB~;hHd~DKt@GY}=B1RZ)=AX)%@IHJ;B% zQas(46_b*f;zd=H(oL?0%qa)DxXHEtaFcDhksTb5MAo2hPeUu~BL~#WmhJYr#M|mM zxK{gI5^cFGNrsIs_pi%t9uWsc%a(P?re%KU636?*+Hb#JeL|i^C8wndVXb5VYWj0+ zdAIhiRueqm7Z&qR9}n)~y1Rb-T3uN~@9(Xi`Ev5-_lMNt+RC@3f#mY})1}QjKb%vx zUVJe)clqP9`JQ5I?#`A+ncJ0J*B@Ltx^4awoy}$!jwLR=>9~=iHgr%oZ;7w81@Jn0 NkGagSb}fDU)Ni-JPVN8z literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/horizon/star/star-2.png b/assets/sprites/_raw/horizon/star/star-2.png new file mode 100644 index 0000000000000000000000000000000000000000..802319e110bb9ef67492cb38184bb0578eda7104 GIT binary patch literal 1050 zcmaJ=Pe>F|93C-5OwBq3b*RS}mC(-Y>^iG6xasc9uC6t*tV?c4&^YtdL1*4L^K54~ zI^-!mbTKS22tk4nJrxQa@{pAT(y2ob=or>&@?rMj&fj93D-}n9gyzfn?`??$I zPS;Ts)sX6uGh{yDkJ=jYzqWOMfJ~=wB8U6YFwUzEq+&W6f*@t8BQOJ1y)dx}J1DC9 zyphe}oN`svkjbb%hVe|Buqmpe)3a4=3}P?@M+_@Ue}DOk28JG`2Y4l@*b*EydWsJ0 zFZN}%;+Q7rbmwKz;fX}RgjfZhIc~Y47p3=fMY8sfSsLs?@K}`IPb#ORfrK0gcqS6i zxK!T~NKwg$ye2$VjWM050EF(W5SvB)k;k78_#ESt~g znS7W*&Irp1g1`ntY$y~Uh=5zLu<8XYx4En!LsxSQ8ym<1zM?vWCUKM|neLZh+6S_h zTWS+&80)Dv%P~Q}q%u%Z{tq?H1GI}X@G#$h3cJ~Y4cQEI(WIl1iyLnCL)oI_Kouh= zi_mzvi|J8>kvocPAW44L1aNV{uymAnTlP4LBBm@CtCj{+a+D@2jA7_vo5Y8NcwC4j zIGN)Tf)I|kC;5oL$2eY+g?O1OBW==z7A|x3LvE}h*SCXdlgKi3j9XAoI>-cjWs64T zT-qw?mAHE4T-qygS&|IvU+!O*T|OcX@|OqJC7T2DLyI`xA=aMD^?oMLVkRZWvfihi zS*~#%)K|~mt2(ps_WHK6ek34?i|Luy9~M@-&K(^*8GH2Q@zS^FAE&sQZgJz`gG{t) znQuD2RloSV`0n6~>&|vrb>Ev$x?v0=8E6Yx8keXP9+h@~H8vWOrO7zJq@taeB0N&?R?EnA( literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/horizon/star/star-3.png b/assets/sprites/_raw/horizon/star/star-3.png new file mode 100644 index 0000000000000000000000000000000000000000..35f9cbde80cdc7089d960c4b652bd3acd7aea8fe GIT binary patch literal 1068 zcmaJ=TSyd97@o8nrj^k{`E(c|G~At?)lp}1wVjzYm)b>k7nPoxojJP0I&-F(qdWRk zk(6}tAzuQcha!S7g36ZyDeNMJJw!f47Z3vJ#pw zP*mX|J=K9bVkZO@8GgmX_+7&yY>H}VaxF#8LJZQdOE*LG+>>z{=vs(w=VF1FCBcl| z(r?3Le>|o3XH{OKn;JobD-Zz#Vg1m-p|%n*YJE52nN`CCQ#3?)jqaXs0j$cAXxcm63x~+g@oL^5{v9YbOvKf zV3=Gk=g(F9k=@0xJkK+MAQKGw2*T&|nOJdsrc<6*kfEd6x`lOQ0#8v%qaGZhiPPm2 z3~N=^bXLkl3dXpK#jyT>mr@=Wi){`yj8(LQ6L8J%y24JX&w@+>I;h81$;EY+d!Z~r zvY~>JokFNPU&Yo8!pO-W3rLbzH6B#7>!yZsPUR9O789bTgB4SSQ8`2t6~C@)LY>5M zQY0dVBdpA_5uUFW>zlb+o(r>_B=cgPD-sS#x+4&>VLEdt;b;)M6`JqWV-X^Vm>s{F> zc@`s4Ih=AoeoFGYCqVI|(fvOv8sodrOa>f(cKGMaKtW~VPWa{PS8vY*&ORO+dw-zt zWOn#VY4`InamV;Yc6!gz%5C!bd-FHNDSme3GWho5gFUrZyc>#FeojyPeNdmgBqio% zk2vn!g_1wo*TLIULzClI%FE`pi7o99hZBoszrJ6azP|W4`*fo8_hi-3+`__}fzFW| Y1;v!jrF+||;8ySbMk8_gzIf`~KPJCr5C8xG literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/obstacles/bird/bird-1.png b/assets/sprites/_raw/obstacles/bird/bird-1.png new file mode 100644 index 0000000000000000000000000000000000000000..b3173c20bec888d53b858b9e4a93ca6adae4ed0c GIT binary patch literal 1175 zcmaJ>TWAzl7#=HB4UJk9!8FJ?3tqsT%ic0G%_zG&*|?>%hIPRuiRfhJBpKt(Ih{Fi zH}Ue2rixIC6e>z1QX2XoBp`^2ijnxBVoMN_;H8#DP$Oz=9}E&pdnRUMAG!|Aobw<4 z@B44xnZr$)#_Fn?DvF}2)0@>SSzF1gF8r8$KiQQXCd*3PkjGnLJ1*!hpyDQM19aNf zJ3tobX3tkQKs`mxUt{I+IIn#v8_;HT--j*Qh@dH|ep3&y}gf5_?Y%FL9ktkg!u|g~yk)#cDh!;eT7dasu6k>9OmqQ_X_F+gg*KC)w zYHBtXu@t5gV^hHD{gL5KDk z^)}dz6^3N`t^^y+(K_C2n@GdBqK-I$<^7V%j+*viSKFTR_HY)w&-Z_cy<86hTo!n+ z+cn7G+5>(lBqv>x76-CjG8S^tx@9W5R;Beg>mya@z5*?ie7g zDhy#^Ez6W6iAX9H6NI>!hzdf3B#H4z{Nes**ySUlAb&e2U1H3MA2>wu zE|K=>?T^W=n71IU#&gAc&mY83ea$aVmGZ4^M<-UbTw7ezSGPv^OW$PzQj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS=07?{;ELn2Bde0{8v^K0UTq__OB&@Hb09I0xZL0)vRD^GUf^&XRs)DJWnQpS7iK&9QrJkXg zv5BRnj)IYap@qJIg}$M&uA!NgiGh`okpdJb0c|TvNwW%aaf8|g1^l#~=$>Fbx5 zm+O@q>*W`v>l<2HTIw4Z=^Gj80#)c1SLT%@R_NvxE5l51Ni9w;$}A|!%+FH*nV6WA zUs__T1av9H3%LbwWAlok!2}F2{ffi_eM3D1ke6TzeSPsO&CP|YE-nd5MYtEM!Nnn! z1*!T$sm1xFMajU3OH&3}Rbb^@l$uzQUlfv`p92fUfQh0Zgw;esXDUYF-IUZwf-MBTl`b~e1{AKSTC{^9+5FFZ<%tUH`P-5_UYMuYDY6ne=>c`HJIOh|NQTx(`H;} zJH&ZBcaOXIZ;QVDS-ZH^=M=2D^Fiw7?01Ja)n$y$_vEZww!7dEr@O@6zpHD_gNo** z2XD@va(?#SmwIyw4jC4;Z#T1^b+rtv(`M)4#j|7Iy?F7wKMyS6^6taUva)S+-yKqI zEx2>@!^N|4e`OyY;$(lwd^6kHrh0Ss{*7hadS&~#r;8jCy!jzxQ*HR=Uws7+CplS! z<^6c&n}7Fh*^VUweP?*jZ@ZlRzqt@3V`N^lZQ1vCdE$DSEsy6*$7TO|e8}p5_Y1Hk dC&C*T8JbrXIK25g$r)5sc)I$ztaD0e0s!PcpML-V literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/obstacles/cactus/big/cactus-big-1.png b/assets/sprites/_raw/obstacles/cactus/big/cactus-big-1.png new file mode 100644 index 0000000000000000000000000000000000000000..1b3cfd592f1a589b26d4e90bad8e35698eb91316 GIT binary patch literal 1234 zcmeAS@N?(olHy`uVBq!ia0vp^MnIgx!3HFcyhx4)Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS=07?{;ELn2Bde0{8v^K*7iAWdWaj57fJ{tG z$}cUkRRX#c;)UD-xUqS~&|m@vn0`fKfxe-h0mw@*g}%P{mFDKcRTq~8r6Sym)!^cg z%7Rq=pw#00(xPNw#HA^NtSYc_E=o--$uA1Y&(DE{Vn9ZINq%ugeu09sGbq$76*R&# z^HTE5i#5S|e0{Av^NLFn^O93NU2K(rrs!p6rdS!7n3xzC85%lTIGGt5x>{PAJ6l>9 zxHwxHnpij+7?{BHy5uL9=BDPA!1Sgd^cvyR3rY^T1wfl!Qj0RnQd8WD@^cly-nPob z=@tVwoaRCGrr>sq0ZzU8K*#8VA{QyLVM4$Z1Y*LIE|3FH{Hb}s6kh~P+IEf8iWnFe zojhF}Ln>~)nQhD0Y{28@dA0R->640{JN*+^Ig5D|Uj#q?hP zrq{P?{(Qb&xA=A}_bIz4s2n!sgSc|h)eTbG<#$)q{jOW9x%e&jxBH#8UNc{Oe8R1@ zzvt(D_eJVk(icQMebIaU-J9}xS+!hh8<}7(L%5OQgHEoS$ z_W!;a?h~i9SB1V@`si}#c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxOgGuk#8koDQqR!L z*u>ION5ROz&_dt9Lf_C>*U-$$#K6kPNC66zfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD$Tv3bSNU;+l1ennz|zM-B0$V)JVzP|XC=H|jx7ncO3BHWAB;NpiyW)Z+ZoqGVvir744~DzI`cN=+=uFAB-e&w+(vKt_H^esM;Afr7I$DAX(!G{Q6U zQu51-HNkp(eXTt6ic1pnl2bihY?Xkf=w)W6SQ$7QSh_eHnmSrInHd_oS~|KqTe=y$ zIyt#G8(26wo51wC|LG`BKc8dv4z4}1M=z}5`DY9Wgz!U^x!jmqL15f;^dB7B31WekWm#w?cz`%Id z)5S5Q;?|qH8z(h62)G8`H2V18?8|4K@Bex38YwJ1<PrqD}$_YHK6v zG%gX!W}-1ebj}dxP$*-D3F6eD*5F4-=75dD2rQy}D8tAYGTh!n!2L0HZ|?4W-+P|t zeSROw?N3WhiJBWbS0E5X88&K7;C&d}_K27H=a$Cb!7GN-S-Es7m-E^fLZGozIRs>I z+Z=?6u-UhN)JUuo2wq(2G+Q~V@f{4O+!7m)k@(y+U<(B6l6e(&{JA0xPvJkK_@ihnnIUW(#h587e=3VT6;Y- za`y3%xFG56rA6|Rxw)HQH6NicLS+k9_djO*4-O zMc<621G}psFuoMEpDj|QMM@V%i-P6);-6X{2Ihoj;Wedw(9&J5y94Xf1G5oJ=BBk> z>TqB-aAZ+7->+-Q%MyWkZtUum%5o;FudJuAtp;egR`x83i45#J8ndk6%1Z!oVDPEG zIlFh%qFBsFbL4but+{u{nUbQ37(Dd0j*R|@f(N6H(&Fm*H?7}0?o_U>Dl=aheiFZ> z>0t0tw)iSy8FYC2M}J(qx0gK8eInGL2w_sVFR^jpTt`^~$SxY%B$Kp7P;mO_- zO5naOgw=QYM7^Uf?<+f%WxC=yxGh-CH2wTbeUrBQTJUN6*MJ4G@GvIaU$V0$(Q$md zvh~BU!%rS#n~t+B^kxvT?~8}IcNhH8ksIM3SA%~0Yc3+#t27n0f3}DJYX}UwRBdoW H_MU$Lt099s literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/obstacles/cactus/small/cactus-small-1.png b/assets/sprites/_raw/obstacles/cactus/small/cactus-small-1.png new file mode 100644 index 0000000000000000000000000000000000000000..5b1a2a3a4e4ca00e8c502339c579898e607b9589 GIT binary patch literal 1120 zcmaJ=TWHfz7|wJIofiZd-atYIUclzIW+q{E>zY;zri`v=Q9-lhbPY2(F*&pCP{HYg zBHr*p7_tXZQ4~QCR8$m1onS>lCJyF*`Rr|rr45LMEZ@!CITD6#}WT_NgsQfak~j6fHV z0^JzUxu8I~?j0ahZBQlp{x6 zpdsj{AlzB*Vp|p>=w+cpMk0RKBy!be(>7qvTV3L)svNgHq}e)%DwTV52hE_`?+|a(z2k4vwq<*W3+^md0jIqjt-Bxg9AU7Z#^-z zUVXWxx&Le5Z2jCe(7LIsIPvTtH)G%f`S|kSNd3LtZ~Nuf@YCWK-;M_(d)`&OaQhz( z*u}!~`oS{`x3>^g)eBnA7OxBn?wju7jp5!qvFm$JO&tBa^7Q%Q{qeAZ!h>cdABB$s>T8(6{1R6rruqY?tEoVUM$qI#GE5$X7a#- QL;jnOM-$4`)*ZdS0AL1t{Qv*} literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/obstacles/cactus/small/cactus-small-2.png b/assets/sprites/_raw/obstacles/cactus/small/cactus-small-2.png new file mode 100644 index 0000000000000000000000000000000000000000..edf42499179c0b9030d5677fbda61c9ceb857b17 GIT binary patch literal 1240 zcmeAS@N?(olHy`uVBq!ia0vp^E8U}fi7AzZCsS=07?{;ELn2Bde0{8v^K*7iAWdWaj57fJ{tG z$}cUkRRX#c;)UD-xUqS~&|m@vn0`fKfxe-h0mw@*g}%P{mFDKcRTq~8r6Sym)!^cg z%7Rq=pw#00(xPNw#HA^NtSYc_E=o--$uA1Y&(DE{Vn9ZINq%ugeu09sGbq$76*R&# z^HTE5i#5S|e0{Av^NLFn^O93NU2K(rrs!p6rdU~;x|%x~Sz0(+IGGw6x>`E985vlb z8<+yc3{A{UjbM6R@{>z*Q}aq-dQ%X3Eph4vC5PMspv^9+MVV!(DQ-pixe8!!TV>*Q ziy2Pypn6kqyTu%*UVWfr^g)q}6xlE#U)h{da#1+C9BnF`fO>owfJN-Y`1xSGwO6;#%Ey85}Sb4q9e0L1&HQvd(} literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/obstacles/cactus/small/cactus-small-3.png b/assets/sprites/_raw/obstacles/cactus/small/cactus-small-3.png new file mode 100644 index 0000000000000000000000000000000000000000..aec815aef8aa391ed57221fdb8d3e9b58f976301 GIT binary patch literal 1313 zcmeAS@N?(olHy`uVBq!ia0vp^X+Z48!3HGliXVmmDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49seoArU1JzCKpT`MG+DAT@dwxdlMo3=B5*6$OdO*{LN8 zNvY|XdA3ULckfqH$V{%1*XSQL?vFu&J;D8jzb> zlBiITo0C^;Rbi_HHrEQs1_|pcDS(xfWZNo192Makpx~Tel&WB=XQrEMXkw~hZmDNz zW^7_h+i#(Mch>H3D2mX`VkM*2oZxQ#zd*s+85C-k3L4>= zc`5nj#hPF}zP?tTdBr7(dC94sF1AWQQ}i-3Q>+}_T%1fCogE!5oJ`J< zTYbk_CfW3V>q(9LR~NVYxLZE^u@0m7tHwI7cZEs5cFzQIoeWr*L&H=8d132-u9#)GQ+je%IY&{kOjGN?AgWMm{4OL(Vo$<+R{CoS;I>)78&qol`;+0A-rW A!TeM}o=9KIqWIISUOA&8*oZE+)x-UlskHwr7g)-_v!0fuIT*`xPTZsk6>JGg5n zTVwfSBW5IO7Bz#+EJBP%%$8+t%QDbRW85&V87zuOG%}qos53G#alXeW^AGWoyZ0l{ z^ZcIQNA7S#-Lv-fh3gRnu?Kdrjc^UYcW-VE{El8um%!yQ-51iEn z0`JCJTtOnJctNMIBcXz(L|tBg3I8MwEuaSUCC z=rK2T&r~SbfO=&Wpe{#wX@qpT&ji~m}MQeH^xbOErg|+6m z0`Nwl$vtWWHm+l%6-r^eD&TZkZIHDlAhu6 z_qo)XTx%Re1x99pD)a*0ugW62oHiq@>BZ+?Q*VXKukD3clZ!($xYgW$H9K5#NUnf>^vGA=*Y`{g zk;tCC6!#aHJlq7&wD?) z?qQpJX{?RCwJ8`+5N~{4Uw^dq95qNiVIRr0eK(YfZI1f;%6@5?_AeOGgXuRXvhs;N z^K<7vC?A+T`+TaTcKnBK<;Ra_+a~r+PYu^3>ZZa2c?5Q2ZmR8)bX$yHI5Adlp$_TF z(c%xE+Z-c&+s9uoIyUshjVkABSoTZCBaY%%Z$0UEUf<9y?;Cx}bw{$#^Y(lqyK3Qt z`BQPPp^6t{1IKf7D^H~i?Kf%iTG;kbfxTZ&Cq6%LrFz@Q#0Hx!+N+2MXKv2S_WgeI zY)cBJ_wKRO{-Jj!V2ZR^bo!g>GYq}-D~yQF9q#|@?ZvyB62{}FKS_rNlF5p1Taz~A XYWu*sR`(gh`fCMzb?ke!;TQh_9yZnq literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/player/dead/dino-dead.png b/assets/sprites/_raw/player/dead/dino-dead.png new file mode 100644 index 0000000000000000000000000000000000000000..2018de4d5d18fbb844c9be987d567785c57bde86 GIT binary patch literal 1222 zcmeAS@N?(olHy`uVBq!ia0vp^0YDta!3HEFJOnoYDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49seoArU1JzCKpT`MG+DAT@dwxdlMo3=B5*6$OdO*{LN8 zNvY|XdA3ULckfqH$V{%1*XSQL?vFu&J;D8jzb> zlBiITo0C^;Rbi_HHrEQs1_|pcDS(xfWZNo192Makpx~Tel&WB=XQrEMXkw~hZmDNz zW^7_h+i#(Mch>H3D2mX`VkM*2oZxQ#zd*s+85C-k3L4>= zc`5nj#hPF}zP?tTdBr7(dC94sF1AWQQ}i-3Q>+{f-5d=~3{4ze4IK>)T`e7rTwE-i z9W9KEOpTr0+{|ElUGkGlb5rw5V0u#!dQEZa1to{v0-((HG8RIj1X3IIv4)u6ko=<@bLKuXp|XTNf$DIpqM;6HjZeWh}o06$O+_6IPy^?7*pG z{oGTbkwu7uiBn~QgMf!Z(|JQ%*&s~@KE<1i#0u?ZwZPYE9 z%Od2Vp!Dp(3(Hks*X{mQBb31@Z1GK|qHO)0sOL|=OV`!|Mq+t$sG2%$$dQ=~L|@6&o+g-l$ghT431b;8K?GdTzvTo5etbA8fYTP^NzEoeju6 zvJy8t)6cJa;ovR7!WQ(W_e)^=-P(EnK(`90T5s68(-*`t{eCFjdgIr<8-cnLuGg?g ZFj#DfKA5Agc@DSr z1<%~X^wgl##FWaylc_cg49seoArU1JzCKpT`MG+DAT@dwxdlMoK*Q`S3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxOgGuk#8koDQqR!L z*u>ION5ROz&_dt9Lf_C>*U-$$#K6kPNC66zfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD$Tv3bSNU;+l1ennz|zM-B0$V)JVzP|XC=H|jx7ncO3BHWAB;NpiyW)Z+ZoqGVvir744~DzI`cN=+=uFAB-e&w+(vKt_H^esM;Afr7I$DAX(!G{Q6U zQu51-HNkp(eXTt6ic1pnl2bihY?Xkf=w)W6Sh*Nkx>#74SvXoanHU|;_Ca7(;>M)3EHTK7_Gm8f1@X4abg<=P7?zA|&>^^0%k+9qzk_vX3ZiM#s zhNb1QrAPmKf9#i&N+Vy1TTLQ&_$i)zWKd9!^|bVR}u6_dkH-qB!=?$`ch z8+SYNXh6i7=^MA+wDx*7ZDv?n#QXAn7k|ed^E*|NUw-c13zz)(6rF2k+pbNxrIVK% z^X>nN1fAslw^`F~nqIp%!BzjOWcSvxqv7RCFIpCtN}Rs2|Lm5)bGsLpu^cnnwpP(- z>c$gWwBOaPOVyF6K04vn?1dNenk2YeTMy~E&x+Yq6|9;pxq3rDgvw*h0}Ps%XS5p3 SeES|$@OZlVxvXeP|nH9KNBH5}6xzXsb@ntE>^5T<$JOdq-nwKH7yPvC9HIx`AHq-n6&oK6dw} zmsHk4p@Ou|X`w2vf^+^O>oBae?1K#}#C4;HZq!Y~6hT(pNBLSJx-*xx61d3)z z87>*_T#toT0iqv5og+!hvfLKq){H)qVp*2-&?HT}5W-~^R4C+Ks@Ygk2m@0zWF5+y zirb1pTFb!zfiit?1x4SGRn7G>p@NZlK_@A<$G%bp7>_?1swf+16DGmKeE(P2OciuM zCV{Et3=uUh(`bj%xsU+_s2M3u%T}t`-LFB-?ALTW6tb(v;?5pfl{CwId5sf~b5YfV zf+~V&I6xp3w=7Fsgkl&f7-BkFgIaBC7>bcNWxg<)4w43{%W>>b5gY4;sbv zL@L}ZJNQ9$`IEDIJxyEYeyRU_YT7S1f$TQ%hup!x&MAApySNDSmBvGprym!=iP+yu z*Y{7{IzIl+{;VoZW^}Fb{*@g6O|W!0Mo#^<{QGEee7pG4+?m5yKV14_v^a6>OUKxI z{LrEK5wqc2e!AWak<(1-333Qr1Kkiz*v72sLobi6$yK-;w&d=cX@z|VobGdG+eB+shv1_Ht%&qG= z$yN7e`)4D?@j%NHFN}VF#i$>InhWWd@}gP F$iENNzQh0k literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/player/idle/dino-idle-1.png b/assets/sprites/_raw/player/idle/dino-idle-1.png new file mode 100644 index 0000000000000000000000000000000000000000..98b673d4feceb6a31d8569fa994eacf65277f0a3 GIT binary patch literal 1308 zcmaJ>ZA=?w96v@v$wrO%i7_0PBXcg&-nF!)ck4-@Ezn3SLYLN=D97~yZslIQJL~~= zlHmtO78m`XF3@ShhA{{(ENsQSmBhs02!&p*%U=0JmSZ|PnHL5#jePYWEw@O!?n0RG>f|KbQ7_N(5o+A4OaF-8VRZA5Gb zsE=nlK?`6ay)VuI7lPzJ#s$M_*xy94B5!7Nj9KF)$VL!XjV3W{6sTxB=;Q<%TfcS- zL%9fzh3tO9FS$V%*Vre6*1kZH?TfNx1gm)xb!ik7;DO4Z8s9A_ltyD2T?)?iZ5%^0 z5H(6;+or<)X4Eap0JWPPCe~uJqt&F@;;6EbWF=}PEKZzo;+86t#X;E!%4$V-9t=j4 zBOO$Wr+z0ET+vvUs!9}&$6_&atja9Pow$W0Nu03aR;vjjOiHhyGMY(HDzXY5ps+G0 zshlXFx+2pq_NX)loo=VVOS`gyvQs8lFkE9K++rs5l(Im-|No&pzl&DX7VyCDe+nzX zUJ2kWKoNUn79Lzjg&sC@fTg^S(h2LkMP8Mbys%?teql6S`EsSRp()>dYPLE>TW;)Tx+Z=Cy!9R^QbOuqi9 zHa2qgHa0MMezJf~-W|I4^SSwS?3Hh~*3S+%8B<7lVf16=D*s$xeCuYE@FJDsS$?VP z`kk2@f#t8ppDrFX9$(dr1to1WZw_Ae?=LMPQhSILvM+_?SHibuBS{S`w=%}D!U52J zl0GKfzd-(U@JwJj;W8a8Z7N1?kCVx1rDJ(yGoAQhaUntfenJmJKXg8R>e!_5+A}31 zTlRM_u`Kt5Jv3n=dR~E|Y!x=MgDAM|I@0CA(TZ=huI;hbQde*I_=b-W)>5w7x z`C5EC$`gk2M}znGRg`uQZQlKU)%d~e(t-K8(xOYq%U@1t>*Z5NXQppPhu$m9OHK`5 zCdpyNUeY#jvEu7-ZnXc_RQ&JIU|vDkdNetGa^=UB#b3W$Qa&okFS_*M$Y4Wad=}kY5nFuctq^!v)^4R|K& H+D`ogS*6en literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/player/idle/dino-idle-2.png b/assets/sprites/_raw/player/idle/dino-idle-2.png new file mode 100644 index 0000000000000000000000000000000000000000..f9079ea1eaedb8777187a7fd0dae2dab131482c6 GIT binary patch literal 1298 zcmaJ>eM}o=9KM37gq1my{lnLG-r^>4^zKSqdpB-adPSP71Y49QZVN~6g`VX;c6ZPg zCM?4&*UdiJB5~z9`f&_!?I}Q42(4{Dv*sJwRLfY3rB&Dwu4SVVz8z0 zNemTu25WWr3BTe25uveH1;O5?mT+%0Oz~LVUbHq&Lje)!92yt9B#n+U*s3lK=f*aU zp{o!*%3u#oh5XH^M^*vqusW;5q}_o&M_EZ{jh&))qc(zc;e-n(YpO{nZ6|1(4PARM z7)|9n=m6WW77MNzETZcQjpMOc%o?k)%4#Q0QWS*~Hr!^bhKOn{A?aMaTGDpp6nP9>2IH%yGl`vAu1O5L0hl=7lTGIpIk>CFm z)>;w@zym;&yVWo}xQ-o0D24W@fYW8QMV7nrRcwyPx~xTH1@(B0s!`}Ot%AhMF|BHq zjuF(#n0wc3P6?y>Qpvoe;nl>$L=!I?AP;ZUPZ|sHGkc&ezxN*4uI_&%w z>>y*h-nwwH-uys<9k0UHmTOLpAc*Oxk9D`i=YC#rpZtW_!oK)?1^HR7vUDhgPKOsx zew!Ps+|+pgr9bYRK6dwPXxo<;4-b6P**`gPfR7;ND?RsSljGw2*DLeO2L`JO+J29B zjs0}<#&xm#k~#QTrhv#Gn=(k@?$y_lMl3|;)SD{t(Ca`T~`<_Im#wpj_aH(V0U)@1w{-e~bgC(OyN6vnlP2t4UW#Nh9q&8`&fAz!7 zRC(WkK+RvCe(=F9-atLAZI+m^kT}6CF5O<4X*+?0Y?b?ew0sxb6(zhynYSzUGpXfT z`)Ldrif!IYpP#FHBa*KAethQRk_*|{^4zsDX!G!5Dt@>8<(R5ZL{Gd^WV&)`uvPo@ z)$6luM@&P<-W?fzaIZgkbr+T;kD~W4+*w%s?e-1reRH8Dof{tPOO9n>@)fn# zX?f(8DerN4dm&xq{EIfIP9wcTV!wpYG>wQ4e%Hf|}Ow~2kPzU}Bg DgiX!B literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/player/run/dino-run-1.png b/assets/sprites/_raw/player/run/dino-run-1.png new file mode 100644 index 0000000000000000000000000000000000000000..933981b1bc4abab96400b98c11a4b5c35f54b7e7 GIT binary patch literal 1315 zcmeAS@N?(olHy`uVBq!ia0vp^5kMTr!3HFkpSi3Fq$EpRBT9nv(@M${i&7aJQ}UBi z6+Ckj(^G>|6H_V+Po~;1FfglShD4M^`1)8S=jZArg4F0$^BXQ!4Z zB&DWj=GiK}-@RW+Av48RDcsc8z_-9TH6zobswg$M$}c3jDm&RSMakYy!KT6rXh3di zNuokUZcbjYRfVk**jy_h8zii+qySb@l5ML5aa4qFfP!;=QL2Keo|$g4p^2%2xuu?= znX!qbrH+D;fuV)IfrY-Iv96(+m5G6sk&yxvC;@FNN=dT{a&d#&1?1T(Wt5Z@Sn2DR zmzV368|&p4rRy77T3YHG80i}s=>k>g7FXt#Bv$C=6)VF`a7isrF3Kz@$;{7F0GXJW zlwVq6s|0i@#0$9vaAWg|p}__=yk)X7nB@w3xGDeq!wkCrKY$Q<>xAZy=|3= z+bzyG&4cPq!R;0ooO<dK}gn%gs#DphZAP1iKQ}ci+z6hAKU5rv6GcYht z_H=O!skrs#?!mq$1CiE5QyV33xqj967LSYAgtKzJtDjn1i*x-f{`CA(*xvh1PoK}6 z`2PLBGxx9e&o<#bz;OJW$laZvZOZrV&%JFjLy2Kp|M6`ZeDB`giBZq~aCLddCAP15 zd)SzHHpHAfxY$=xipSsplfeN7?gI?WIzaT_C|1@XD?FlElPMu{#`M^yS3GC^eR=R! zXW1n6qs|~v%UR9A>giEuJKxU>S^xIVwc_<`!7K+RJ$`Ua{KeB-S^QkB#rr`bL608n zmG<7BdGq$xm9MYQn`{bl%&g*qcTq<(KEJ(r|KWv%E{2FKD~nT7hnD+YOXw14P`0$F zikkl!EYT;kr#xUwyu`(X;3MVg-%XaVx#t_GX9HdPp|bzc&U}fxCs%%r4Q6rWI51Jx zX4Yi);&mWjeJS~1x6^N3>9t%DbD&}dZ*TVL=Z>zFZIAlD?`pQ(wS)%7Y0Y!?t=_XP zdzy6hdesb|n$zZ%6_L{p@3h=iY$}n^p!!^J?>F{o>tqWyFz|e6{iJ<>p|!7h_o0|i QiJ)T3)78&qol`;+05TrhSpWb4 literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/player/run/dino-run-2.png b/assets/sprites/_raw/player/run/dino-run-2.png new file mode 100644 index 0000000000000000000000000000000000000000..04898a562f86bab2b3f4f57f844a946db5931d3f GIT binary patch literal 1309 zcmeAS@N?(olHy`uVBq!ia0vp^5kMTr!3HFkpSi3Fq$EpRBT9nv(@M${i&7aJQ}UBi z6+Ckj(^G>|6H_V+Po~;1FfglShD4M^`1)8S=jZArg4F0$^BXQ!4Z zB&DWj=GiK}-@RW+Av48RDcsc8z_-9TH6zobswg$M$}c3jDm&RSMakYy!KT6rXh3di zNuokUZcbjYRfVk**jy_h8zii+qySb@l5ML5aa4qFfP!;=QL2Keo|$g4p^2%2xuu?= znX!qbrH+D;fuV)IfrY-Iv96(+m5G6sk&yxvC;@FNN=dT{a&d#&1?1T(Wt5Z@Sn2DR zmzV368|&p4rRy77T3YHG80i}s=>k>g7FXt#Bv$C=6)VF`a7isrF3Kz@$;{7F0GXJW zlwVq6s|0i@#0$9vaAWg|p}_twQzN`a56D8bhWf_Hg$1x zaWrvqaWr!?Hg$pNb;(aI%}vcKf$2>_=yk)X7nB@w3xGDeq!wkCrKY$Q<>xAZy=|3= z+bzyG&4cPq!R;0ooO<dK}gn%gs#DphZAP1iKQ}ci+z6hAKcbHG!#K6GV z>*?YcQgQ3e-Gh0D3l??6&sJKCag=;5k(|RBqkr^Mt^c#{ z<$Irh{CM4U8Cya__Vcj2J8y5(t*!sPFWbPCK_|aI_o~dETRQ{Qvp?Ki-f@p@ZQdR> zW}XdmP9D6ujE9#^B7spNp@B7_fl;i1aoX}b=lB+shDJ1NG9}EM5g$G^dbY{&w+An- z+;;NvqlE`W7&q*h)f_$Bc=NL(`}0=ym%V$lGaRJ0)1u-V_nM-&8}zy67Vl>ZW;t-_ z@q@+E)$g~&yuEepb^pA{rZbcnrcEp^__9XncFpgX)fOgT0lsxbZ6DTwWLX|~@vWP8 zvszBdN08yPHoLrR$XjtYlN%x*_Y2=`yYk=_@3RzMwg`rQcfvou5Z+|Hvvgl}*8&d4 z9h;grTUyR8HU)Y^b;85tnHTS_&)S_U#ba<_QYK&C*`tBW-RAE3)zu2}bqdh+*S{=E zXTSNMF|e7DEyBoh$I~kpGw*u8wE;Qdi01eHj+=JOV8`|S;V@vBexq%dux{2nP=V#? L>gTe~DWM4fykXi> literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/player/start/dino-start.png b/assets/sprites/_raw/player/start/dino-start.png new file mode 100644 index 0000000000000000000000000000000000000000..5c9a43e76a234467556ccb6d1d3925abeef4edab GIT binary patch literal 1351 zcmeAS@N?(olHy`uVBq!ia0vp^5kMTp!3HF4Vkg=IDajJoh?3y^w370~qErUQl>DSr z1<%~X^wgl##FWaylc_cg49seoArU1JzCKpT`MG+DAT@dwxdlMoKx6DH3KEmEQ%e+* zQqwc@Y?a>c-mj#PnPRIHZt82`Ti~3Uk?B!Ylp0*+7m{3+ootz+WN)WnQ(*-(AUCxn zQK2F?C$HG5!d3}vt`(3C64qBz04piUwpD^SD#ABF!8yMuRl!uxOgGuk#8koDQqR!L z*u>ION5ROz&_dt9Lf_C>*U-$$#K6kPNC66zfVLH-q*(>IxIyg#@@$ndN=gc>^!3Zj z%k|2Q_413-^$jg8E%gnI^o@*kfhu&1EAvVcD|GXUm0>2hq!uR^WfqiV=I1GZOiWD5 zFD$Tv3bSNU;+l1ennz|zM-B0$V)JVzP|XC=H|jx7ncO3BHWAB;NpiyW)Z+ZoqGVvir744~DzI`cN=+=uFAB-e&w+(vKt_H^esM;Afr7I$DAX(!G{Q6U zQu51-HNkp(eXTt6ic1pnl2bihY?Xkf=w)W6SUEXcI-5E>xj4ESS{fR zS(+HSm>D}7yTSCj`Rr^SpOj&($(7 z-CTXE$L!?f%gxQMER7qlHy2MfUR(8Ob@9Hf#@kEZKTQyHOmH#U@m2iGsasj~B3#w> z?A;tpi&dI0=jhb>tu4RyY~TJe|7Rd&SKb`FxV3BX*V|ueqUXzlm8G%uZ)*E+-v=nq z$kadO;Nr_w=O7kMKbXnZyX`Osd$!~7^P-MW$a+fCUy?<(c=E_t5q zu{%6*_hW&#H}_WSvkT8S@Zx5(xAFAmi`NdOzdtKeQ^vmk!ffZ?^OoA0&pNra|M)?r zN3&|;XaCz}C%D5fc%7)rbuF*&lTWO5og(M&GN(tMk&WSF?%al@mIgaPMVqIqpUXO@ GgeCwGt@T9! literal 0 HcmV?d00001 diff --git a/assets/sprites/_raw/ui/restart/restart.png b/assets/sprites/_raw/ui/restart/restart.png new file mode 100644 index 0000000000000000000000000000000000000000..4a86f37408cdb2528fb3ed3ff8ff3e0172829257 GIT binary patch literal 1202 zcmeAS@N?(olHy`uVBq!ia0vp^9zg8C!3HFE?laT^Qj#UE5hcO-X(i=}MX3yqDfvmM z3ZA)%>8U}fi7AzZCsS=07?{;ELn2Bde0{8v^K*7iAWdWaj57fJ{tG z$}cUkRRX#c;)UD-xUqS~&|m@vn0`fKfxe-h0mw@*g}%P{mFDKcRTq~8r6Sym)!^cg z%7Rq=pw#00(xPNw#HA^NtSYc_E=o--$uA1Y&(DE{Vn9ZINq%ugeu09sGbq$76*R&# z^HTE5i#5S|e0{Av^NLFn^O93NU2K(rrs!p6rdXL`C~8W_2` zIs*Al&K7PiE-<|=`N^fZsd*(Zy(tL2t~m9Al0$9*&}Ns^qRg_?6t|-MTm`VVtuk@D z#R;c*P`xR*-QtW>uRhQ*`k=@~ifot=Fa?2_@T3dmz!QIJ9x%lh0h9K}73V%PFfb~4 zx;TbZ+%M!&XjV_&cdlpZWP=CxMByq-XUUttS zp6qSw?0J69EIcpse2$jD=}k5FZbw-sT(F-%udMiy&*hYTzK0e}ah$PvZsoj{j+Tr9 z4Gb&_QycC*?lpMEAi#F_x(d%L)(Ih#4KyZhyq5DLqxyaA#p0m11|F*%)35i(Og@*@ z?zom`)z!~3rVn%`8@zZGr*pkw@!o)%c-_f{E2cVzUzc&a6vaC!i;vCI++&xe1d9R# zBZmV66VM`;TRlsvBg&5}aI&>pPBlr6xcXu(o2Oyt)T{TZH^%+@oB(zVL^&hST?^V0 zuNP0*5NNQ2`}woG$Pvv#SFtbm+JQUY`S1x=gIz|1iJT}smKe^EN1QpD5M&t;uc GLK6VRy_b>z literal 0 HcmV?d00001 diff --git a/assets/sprites/dino-atlas.json b/assets/sprites/dino-atlas.json new file mode 100644 index 0000000..4eb6545 --- /dev/null +++ b/assets/sprites/dino-atlas.json @@ -0,0 +1,650 @@ +{ + "textures": [ + { + "image": "dino-atlas.png", + "format": "RGBA8888", + "size": { + "w": 2402, + "h": 128 + }, + "scale": 1, + "frames": [ + { + "filename": "ground", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 2400, + "h": 24 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 2400, + "h": 24 + }, + "frame": { + "x": 1, + "y": 1, + "w": 2400, + "h": 24 + } + }, + { + "filename": "cactus-large-3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 150, + "h": 100 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 150, + "h": 100 + }, + "frame": { + "x": 1, + "y": 27, + "w": 150, + "h": 100 + } + }, + { + "filename": "cactus-large-2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 100, + "h": 100 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 100, + "h": 100 + }, + "frame": { + "x": 153, + "y": 27, + "w": 100, + "h": 100 + } + }, + { + "filename": "cactus-large-1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 50, + "h": 100 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 50, + "h": 100 + }, + "frame": { + "x": 255, + "y": 27, + "w": 50, + "h": 100 + } + }, + { + "filename": "dino-dead-outline", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 88, + "h": 94 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 88, + "h": 94 + }, + "frame": { + "x": 307, + "y": 27, + "w": 88, + "h": 94 + } + }, + { + "filename": "dino-idle-1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 88, + "h": 94 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 88, + "h": 94 + }, + "frame": { + "x": 397, + "y": 27, + "w": 88, + "h": 94 + } + }, + { + "filename": "dino-idle-2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 88, + "h": 94 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 88, + "h": 94 + }, + "frame": { + "x": 487, + "y": 27, + "w": 88, + "h": 94 + } + }, + { + "filename": "dino-run-1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 88, + "h": 94 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 88, + "h": 94 + }, + "frame": { + "x": 577, + "y": 27, + "w": 88, + "h": 94 + } + }, + { + "filename": "dino-run-2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 88, + "h": 94 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 88, + "h": 94 + }, + "frame": { + "x": 667, + "y": 27, + "w": 88, + "h": 94 + } + }, + { + "filename": "dino-start", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 88, + "h": 90 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 88, + "h": 90 + }, + "frame": { + "x": 757, + "y": 27, + "w": 88, + "h": 90 + } + }, + { + "filename": "dino-dead", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 86 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 86 + }, + "frame": { + "x": 847, + "y": 27, + "w": 80, + "h": 86 + } + }, + { + "filename": "moon-1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 929, + "y": 27, + "w": 80, + "h": 80 + } + }, + { + "filename": "star-1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 18, + "h": 18 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 18, + "h": 18 + }, + "frame": { + "x": 929, + "y": 109, + "w": 18, + "h": 18 + } + }, + { + "filename": "star-2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 18, + "h": 18 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 18, + "h": 18 + }, + "frame": { + "x": 949, + "y": 109, + "w": 18, + "h": 18 + } + }, + { + "filename": "star-3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 18, + "h": 18 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 18, + "h": 18 + }, + "frame": { + "x": 969, + "y": 109, + "w": 18, + "h": 18 + } + }, + { + "filename": "moon-2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 80 + }, + "frame": { + "x": 1011, + "y": 27, + "w": 40, + "h": 80 + } + }, + { + "filename": "moon-3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 80 + }, + "frame": { + "x": 1053, + "y": 27, + "w": 40, + "h": 80 + } + }, + { + "filename": "moon-4", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 80 + }, + "frame": { + "x": 1095, + "y": 27, + "w": 40, + "h": 80 + } + }, + { + "filename": "moon-5", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 80 + }, + "frame": { + "x": 1137, + "y": 27, + "w": 40, + "h": 80 + } + }, + { + "filename": "moon-6", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 80 + }, + "frame": { + "x": 1179, + "y": 27, + "w": 40, + "h": 80 + } + }, + { + "filename": "moon-7", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 40, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 40, + "h": 80 + }, + "frame": { + "x": 1221, + "y": 27, + "w": 40, + "h": 80 + } + }, + { + "filename": "cactus-small-3", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 102, + "h": 70 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 102, + "h": 70 + }, + "frame": { + "x": 1263, + "y": 27, + "w": 102, + "h": 70 + } + }, + { + "filename": "cloud", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 92, + "h": 27 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 92, + "h": 27 + }, + "frame": { + "x": 1263, + "y": 99, + "w": 92, + "h": 27 + } + }, + { + "filename": "cactus-small-2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 68, + "h": 70 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 68, + "h": 70 + }, + "frame": { + "x": 1367, + "y": 27, + "w": 68, + "h": 70 + } + }, + { + "filename": "cactus-small-1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 34, + "h": 70 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 34, + "h": 70 + }, + "frame": { + "x": 1437, + "y": 27, + "w": 34, + "h": 70 + } + }, + { + "filename": "bird-1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 92, + "h": 68 + }, + "spriteSourceSize": { + "x": 0, + "y": 12, + "w": 92, + "h": 68 + }, + "frame": { + "x": 1473, + "y": 27, + "w": 92, + "h": 68 + } + }, + { + "filename": "restart", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 72, + "h": 64 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 72, + "h": 64 + }, + "frame": { + "x": 1567, + "y": 27, + "w": 72, + "h": 64 + } + }, + { + "filename": "dino-duck-1", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 118, + "h": 60 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 118, + "h": 60 + }, + "frame": { + "x": 1641, + "y": 27, + "w": 118, + "h": 60 + } + }, + { + "filename": "dino-duck-2", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 118, + "h": 60 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 118, + "h": 60 + }, + "frame": { + "x": 1761, + "y": 27, + "w": 118, + "h": 60 + } + }, + { + "filename": "bird-2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 92, + "h": 68 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 92, + "h": 60 + }, + "frame": { + "x": 1881, + "y": 27, + "w": 92, + "h": 60 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:2a74979e1bd61beb486d62d8f4dc33b3:0b1cec3a288a2a331fef65a521c112bf:45b8b72db3c28d28378c06fc7bde0770$" + } +} diff --git a/assets/sprites/dino-atlas.png b/assets/sprites/dino-atlas.png new file mode 100644 index 0000000000000000000000000000000000000000..52b66a044df8d8d32177a1ae3e8018e0a218085c GIT binary patch literal 4179 zcmZ8k30xD$_s2pNr7DS{0t$r4q2W*w4^;EDPet81@vGnJCK4%paR94BqixjeQ)+s2g zY~F8g<8`iA)ORiH?t?YoKg-M8H5&bSPST&Z+P5~mAvw-k`zU!mlvuzsvicg zQmHw{2?quT)Be!Dm;zuhHbxi(i@_-7EOJqGvA4hX;yq*5MnHACjVIaLtGXz`_Vxnv zCAH1Ufo(Sxznya9@P>Zy?yWXVinS9&rRp%0!HBtP^zDtWo@Hw;6D)H2OGP`pgMh&x z6Lrf#k;I)wZF}K=zgR}6q8}XwD%$MQhmx+K17(o5uUS2QR*O>*Ho>$`YQq70m@)>*3D<2~S>`vwJ8a7OCY_ z;;eH*K~onw7Zrh{_rrbIMo1TVwBqAoDPh2jb7oJ$$X?6T1ZhubzKMhUPgEllmyCjT ztc;FM9jaD8Yk0lEy0UZaqt=JZ&8L>GON&VDG%J>`aHq)v^Ed)s@p&MQ@nxSF@oaF! zKXqE#Jk06+5$xR2Ux>5Dk4i!;XSPng=_K;lv(D%q%&L!vsd{W9|25!fg*~dCt&u+i z-SjdbB|JxU>#&B7$Hxb~)@N0_H+AeS6HKnT&Z#&&oodTb>o+@T6)+g6k+HttTGqIs z0g3l!w4SPHl!n-O=tZud*6IoU>5sIJfr$XMU>k^ABX3JV9D_r>49J^a>k@AMfcj;K zv15$)sz|N)9GAmmIj@V^0WL>gTJP#oOab=%_aGND1uM<{YaVie3sdgtc1_*DK z@pprNZt|HpH438&7q*_7!3<~u18vg1cAo1>>fZux(30vI{QcA|DzK^w?B!^L*vi|h ze1KOVG`s{*BN&|L7w^4uMoyKnNRj&7UDpq0Y_NmaQQPtW-o@Qb2cl_9RtZD)R2Di- zM~-#p2qz1oLf67du&PVo{94FOJ1kSoeb2*jZ!NM2yWi;=L(e9-m6=@vYUf(1;($zx z?aBZ2Simvc2y6k-ci3)RioKyht{6I#PS$N^O>C0{J;u=Jj)w$4^gBYi{N)nh*1S=_ z%86bit3NhjBS<$C(|YgtKKx!Dp5#6Eu{aXrg4*EUCisZ-Dq2lukEc37;@?)oDXtLy^}E^rTgm|~ z6Tx*YZGUQlT_W(_QBPwC=)TqDc6GD72+QL{F!VbLVEL_)y)=1R>}6K#0f5b zLBYQY8-hb7ec z-+tcX&5xorr-Od~;$jc=g@X!|5f0IH34DN<1hndr`WzmcsS@U9yH>?>F-$+aLa{2G zWK6sOWYnj($zl9040X7oDQUNtDy8f|QEKtY0>%+J(jyE(?`H;X(7t37WSPl}j;n3! zGXszI0j!NY!Rt?Z^QQ(oMAu`z>g%*N*AoB7kzKz6o4}9yBw~DHfXtV`bq>{RFY6B2 zVQ++t*+CN5(MQbB8s-Qk`}m#N57yW8Fcdt@y zK>}*mj4sc_1A7&mw z{}28=o-*a=eN9-Sh7wDliY@6bPt&!cxA&bD7xjgnHQ#QfV=)lPDlesZzdG>wprtm< z_P6cKB?^%wqL)F$OcePY5_6-0Z+vhm|8tNs%E+%6njg>+jh)s`1m2uY4abGPfU2qU55rvqatz=%Hgx+3J@sXZOJZN9>|7FSV9E|&B!N#+L{hET;uy7QqIM@j(uv`RkvBE6Q@LGGB{yS>YqmMOrdZQew&I;^$jIc}7#Zs^kw@?OaEnSt&P8D7(Wi5{iBAo|eaA^ZV|6&ddpA|j#eE-6y*c3lpK)&6Sg-nB}-uEt|+@XX+e z$@I$C|Kr4-i-6T!`+9GQXZo;-@su9-7HJq6+iTtFI>9i_sM>jz`Opk5^h@em247i4 z8JZZdfQJ)L-E%zYd}ZGr^CR^uVX)0Phw$oJgb?vHS@gLEjc8m#jyQ@ITFk`Lv z$n6a-P~ef0_+fahO5eMb|6uU`PPk>zpsNF|JT}}`B$F%huWT(Zez+12_Gn*^1RIdX zKI~#4Nj*UJ8l7I(aEb&^isRJQXHa`I)t}e2{Jr=q1Qv*sVhc^{)eGJ3e)u(Scs1;m zqRI?=pezqhPWmLJ9dQim>&k#5ftqmXl~I2xJuBzOkj%W_eVDuByE=RM{R{m2dh~l% zaQUhfR~joe#0Z`cUDqYmE|Qi_rK==lLTH-i+E7`MLQ7DjNIUZ)N%uc7BupRdJ4%=G z##`cRh`su(j@Tn>PM1D#bRnQ1W%l_cfDsX-Qm`bEdaY0!t~u>89k=%qFw}Z5RgWZA zCFTHqHQ|b(S}GYHrX!@NgDVt%Rrq=^imU<(ZR#)jlN@LYP^!*p{9tI z<I?tHe~hPr-!t&LL3A#94TBT`rSh7{C{aHc-xV*3cn2wBESqk-==N} zT^i;6!Z|eejAFRTX0Oof+ZBLGcWudFK{g)EW!r5N-Vu zANQN5@Z8?WA#Jv&3wjku1g2_YE6k~CQcbL`T%%Ga9&gUyb^q+T|raD7;g3+^E&k7EHfPHK8lUK-h zpHDb?x}8o?#nKJI`X;Codv5@*#@d}W_>=ilQGR$TE9F+18j~L?I9jy0w3g_xNnHBe z#(n{H%ssG&mc(;BiDmswP!zr4U(K< z9Qk|L9xZ*ouy}E7>eVk+xC}f+vPd@2;f*BzIC?Kap9<3v>8A(VoAeu~L#8SYO0bqA zG^-fCOf?R-y?kP5ZZzQ+lgyfs?2LrlTdn{l{63+);Lww!2W^S8h-tAzLLtvNLPVwRCj1t@!pEZk;d$1JIM{j6y634`VGBX_4>eum_z2xkK3cWaL z#GI!5Va$8cJO1J~tn9AZN8kWwu~+DsvW7Z&9#7uvhx|0j zzt<4~iyD6xrMj%DRY7J%Z^bf8S!NjFF}v^+-yap13SO-Ka!iXOszN0s3_fK4-2)Ep zSWL;Oq~sW|xfdY$nlv@K$}~cRC>ulsV+knUNOFU4462+RTpCU6_BX3NK?2Gs0ni3o zPg54v5?9Gh+e!{j1`ekScqXhHcL%l+c|W10m@38Uc;;Faxw8Y(0NwLgg6#U^&hhF- zYG43ld1deJ@cL@rhZH02a%#8kVBY@8{NdGg#`%k#p=3kl*7D~yDQ)M#Xh+-^BQV+& zz=Aw?DzJ#$U_gG0$*-VR|4tE1%#>B}7_{s9q&~`}FF?|}e*<{;$2?82=-vCq$dfsR Z3WNS@8l}@*^p>x%-@(mySr@M-DTtM?#11UyA^kLhvHJCxD+W~3hbgE_apCje!S!S zI2p-EvNG+Ol4Q*!Mpan`1(6UD0s;a>PF6}C0s=DVV^e^K{TNwvJURH-5qJP~Jv5xH zJiN`^EFr`#oI#f4a*k%!mg<&f7QU`imO>B^pR8;(bv<;I6a~zk9a+r&p<(fHbotZY4G)7fDMSTUkFhOAS9|O>;kcbAAhe zs0g``kHCijM@tVgavw(rCwBoKVZguS3Va;@Gt3Gg{}+jey)fY4M(HZ4l1n|6reJOUiNQv0&C1Tt&;O4M4i4rI3TAg-Cl50pW+!*b|4NXubT@ai zb@8xub|U{rq8Z59(?b~WVd=jiIJzh){f}TL_y0KR!)2^KW-hGkENrZfj{o5L7qz>G zy5;|G#{Wv~uIcMy$*OMY?(FGi{t*u=%KtKd`0oF%=pVulYXnr>Y(Iix<{;&4?&)ah z|4EVUhVqt3`0OaA}=irx;l;D>7FRz@FyN8*Rx#fTL+Ww>W-@NSqS6%^0 zH%l`QXE#k}XNUi0fU1qNhqJqlvkSST1~&^kxsI)qg|oN&KjHZ|S}996TQ5rsX*Xv_ z@_+eP!1jO9&nYd=#SP@-2l7aB{|h&em!FTFLyCh>QktKgPaN7!!YK1w5>Sr`EVs<&89N?gJqXLs+=gB{DTdR4tar+CC46@b)@dZFy3tdZOBw~cnbdj`i(vgYSvcrhZXSi z)x;tDC@ie0N@bJHxR4?%{g`mBF((>l+PE@du3P0}7^LVl72#dNbDRya{2@JI%9icS zKk(lvz9)z3QHTnHVEVm(_{xsMvSTAiSVuayNj&-#pCUH-qcm<5w+QZ5NR&raX(DD1 z1u5ooAbq!h5o$hEx^q#~Y^Y3`%RfegeF1VQPy21j9y$;jpj_sp<$Xl>T87Va;+?rV_Vr{kpD+}93P30#f50>N_rDLLhxuz>O2yL;cLA#MHGP+4@` zISP-iqNBg2w-}kN=$(}@8*n2F!x(g4Jj8cIj`uYe<__*YQ$pQNxL{tj1g4W7e@~4=XV)X{h z3na=VSrlbn9f0K@F&@rjskt4LZGpU|Z4zcHOB+LlkxE+V-_<7j;7;y*pPW81To^@J?IcAe8?e$aVcGr#K}lupWvnd z(Gq4IBJR(+P>A%9QFddd0x=fSk`fA(vPJW$tF0IF-z@I~;NycQd$E+H_ge)PaZd-y zg@uEMg%lfdW3Ah3hb0?CVuvOt6;wFKTe#kk&rs!$l>?RC+!nscUbALqP{_(~WrVZB zQ|0kkFfpX7s&;yYa~7TnF^2O&`fk`>7%#YB_im#3-r9!JeL3cu%m zz$FGh&kDK(OvPN({>DkOmftXdAkYu`-L+8R+Q_C zXS{ohdQwgqRUjtEJ2jl-Vv`IoJ_qcs$L?{~+}~MDNftMxOlJHI<~FjpL$<^G!wvOJ z3MjsefsZ9&DaK!I=go~e={$PaI{OIn&dGTfK>0{Psiq+Q_NO_<@LVokt%RFE+*u%$qX)_J z4Kwd`RJ2+2berO;IgzN0E#MK0 zsVkK9*DC8m#7(eDR5he?`5^WU^j;EhzMiEr zr9IzEb>+NCVkWwI{jOr!lZG$jHnja3{aeIjK0@EHJPs){FX<;|rWu0JrWYMHXxVj2G<`lL7Z1>Htt9#u6>rd@o{iTd7%7-|F z^O9BweKwtuZf>RsnUldJ&HBw#9KM(C)0GsnEsb7v{rddrZb}i8 zz8Qi^3O23}NJm4RtZaWu{A=jEj;N_CFs}2b&yXN|%eyCRQLo*W*H4z8G7N_{LJkmb zf>Whj%2Vu(c@_xIe}Qq2>K$>81YR{dZ0$GY|o3f+Q9qa)0h_5JWvz#{gg( zv2FdWEdwYZzexf};wey%iIo-BLZHyALo{hZ$0#E6#AVcmaHvCNLl^+?pE3akH_2F zYQT%yVr?|yWv<+Uq=U+@0jrg9&n{U|1QGP zL#|AN`Wk>sBqUvaWiLzu9(l@abbCy^==iN1Dsv(PK_+t3QmF0G`+QrqX6mq^J9@zm z{w>_tWt4hiCat(B$V6Fh&*FY}P2?#yt*+Ay?arvT-2<+jx3&rABxq*F55cN&(J|Oml{QttJBh5&{4FI2l*d|fy7 zRd?oOIY`RpRxc((L`1bcj}hf{OhuYSB82_6E7S|(0D}i!>ze=?nVX&5-d&G54EG%~ zPxN)nXh!0Nwn2G3=|M4<6SMoWAIRBac%XWkDNOLR zqO_VRobX6t`cp%>!VV#fo1TT%Qd!l6EJL^fN#BFr!hKIl_>olEZ4og&frIOA76RSL zr(_a3I&jLwq6ps30Vtc#;MTaeb90m$CR(_{#-(5gH}gt|*K<)5`{MEt0}Nt$HD~KltQ-9_48PVd&8e3aT^VFCz%|`a zl@q{*mW4wqJxGFEzqxn3(EW5+?otVAU^2}^!$OlIk06)5J{^G^R3Y1H{o^V*dl+QhHsY~Bf_pkkj3~0GJ;26!Er2F>?zAp4|lCn(+~Z z#^`P{Kk6c-Q7=Dw)ch0;1>`<~s}8k!=EW#XI{D_foG|nzok%6>pjiFAu<<;w_LhiR zgSMuwu{Mi|nM88C7GDO+!kGZ+Pf{|8-mVkiWYsH zoH1zA)cq9`7r(*>#UjHi;_;{JYPva z7HreB9E|y01|?3^bp$)=qGYLQN1)&Zf6`|QnNvlF6nLDyWy@osHNHL{^?v^gk7--1 z`#Ey#UM{wYDRgVsb2aE~+*T4$rg`Hq2>-Wq#ng~O+#rGclvr`8fO0okwmVvw zLGroUU1ZpETR$y%ym_Sa&?JRgt~%NX4p}SA0|KM8jGzNiZTRFQPJP5F3t~Ah-eiu( zuRNU>q}ZuIRSjL0*djxZhjZeKaUw^eTm3t~+ReVu^lzK$v&-YduciBlfB6vbw1s8N z-_lEyhUSC(DHDl!jcYr(o!iXLbDaU0aitE5)Z;T*QPLf?-F|=iWo{>G>Lqkq)?L#+ z9iHGbC7d9yxdnLcqILU>8yb4g$emJq?P8!bEk==yyn?5elS(PsK*TSo(pKxVQggd& z+onx=F{izbsDayj&Twff6780vROem03t)LvKT(lEQBZaMz#dZ`mp_bO=_i+yu07^I z!~32?S8ni`2~Ldx+ZNXZXGrqPpuLG&2r&2O+PF1a0BkbVhohXj6T$s|gN#)Ds-Vko z23d;YA#77Hq&l`lWg!Mw(28R8Kev9R-TOqP;X0a%0V-fG#y8~Q?VStIOygEH;)C^y z!@3M3@d=!#>1{se?hZ5$J_&tBcwI7OCWG5wA7i%;zLbBt?>0e1d8paEnlR#hVdZi3 zu`Jv$9V&~sb3KA79O){2k6*wS?K&{<*^_oEFLQsG>!65pI?i&gqGy)AUSPwd-#`lV z^TkOdSfe`N6O4MgJ$hhF<~{g$|>j1c&%-o}C9)i{YpTWk+vBW_a^v6+Jgtf{Sb73}LA~(fk~4h*{rdchwG-zfuK#d}`xam< zQY&?;EUyCpm{g(gGucc>m4>f2BATiEXW$c0XGVshBo@%otXSfVzh^vHb!>5 zMJ;I*8cPk{-zy2tXZsWt+@XR{ZJ~ifm>2iuWg8;9c@bLT>^GYD=DSadSwkq;nVEv! z-QA<#L@cJ7bUSiTAetapIdQMwLOy$|92(QQCkk95dt7XU)tyUY1s-$pnA!!BK)yLS z*ljTWS+vV~eEueia`%>&&NJ;K>O>d)Imc~g;19CYQ&dW9_`b`AO(G_O+Qno8(->oi zX!wrW@jML5^n2KD%}}FMr(cFS>aya`KV-?R>`{E&PiiC7U@Sr%tG-BkD<8^=c9lub zLUUctv;=oY*a8A1KF-9zQsNbpm`|O4;65nP7Hnyu^6IbHyGE`!nq!cB*qwLV!{5!l z`EA$DTqo!9a)xe{RPjRQU)xb&8;C^w>wkUkEXnkD#jht}c>{STH==ePq`jYrInyA$ z{9U&Nc6v(uU1_l*4zzw|wLW6zVLE+}&9vrKNe-qyjrjWt@K`%(u+U=lv)8Jp% zZ`bqS;fTU9w4hhPmz$d5wmFt+%H5IYhH(*bqs;G#4TXM8zxzbCUPd|BH@@e;o{$m7 z1=T|eU5K3WFvYIjPGQdd*l#B(9tf*KeIrqB`rs zquy4$ibHFO{lr5)hKl$y1sV_oaT_8kq)^HP7ThHFzsWE{xHp2nxxC_E>Tph_t0E8M zu1YgQwPR-ewFeNv1Lk*IX-3t6=;DM61ZTIjk%j1QKP6NMJ{LoLOg#qYLU|ER;rQ!_ zUqhi`Bhx@NybnPBT5YHRExLRzMqB}E?VNX~4j7;>4|v;Y1$PA`F{P-;lpDbiOsxmO z+XxkB&vlh*z8*_bnf=R542HIkNwb3#22` z`23O@u&A_l<~o>h9kP8Ap7FTIX6HIX(h%OplFAvan*tRbbr_8@fsQo3u*MToZ`60X zy__VRyE*2!oz(c8%sIdlFw?+|_4QhOT;hR$2r(9cEKfUkFm32GC@#{s_$6yx1+9$i z-uMoTMp7(5Z5}Rar~^`so?=rlg{463j89h>15bdO+GZ#=cG4c;72uD7Rwya#!Syf8sZFsbzl9^hPY`+9d*c&GSOMwy z74sdXZGvHZO&L!NWVp(Vqw98}u~Yi4KQ0em>6Z|P;IGMX#T9fQ1b@KYXg`zFhqHCd zkDMZV6$`E;(p%oiVsPy-$^^@mwHXim?kIx>>I?Mnt&_Py@AyNm1j`f8FyJv8BNG{= zoviiF6wS|@w2>{avg4k*Ne=ZqHrt;Q-E3IKx!P!adb>Gdc)5+~1O3>dd3I0s{SFs* zBx&_K`Xc|=MjAR9apZ_ChI?kum&rPl7%}v_4#8UZdz2EpCupvQjSvf|3poG0ed}P+ zD>POMt8MzoC6}wDsWs(V37{msU8QzuSv$NhG+1OHs=pQhk7qE~`=H*6>!Xndc9FVr zv$Pn#O;w-aw)q9QgB^jbZ|qANYmcNR+NT|$&6Fcn zf|M3|-IcWA$-<5QY`l6~(hbX0MG&@OsYQ3|lWgq{uL60E$A+I|_ADl<-NAiW?3jDh zp6bT@HmbT*xep=d;L|WTu+Y1#`$Kj{m#7JcFD?oX0?u=m*7tz!csE;wacRB*-4W0C z4RH-sFQr1R1W|PjMqv#{Nl|feOoKP08sPSXQ;h9F$CEQiaQ39e!Ev7^=;yBG+|)oE zSnMR!aY=THzoQg85pk@X4n_z z_pXMZqw7zjlno%Q^}qF9e#miZ%mjUsr6CY8UF(O-(lUr!&YYPz$X1dq(*UoUTupqt zCwdIra7N=;u;!mOb`1pkt|(CZZr z5lr~pkhHFY$|-WEG48pkfH?hXlVu#mu2HSVUr!AD9^vvgAJkC|y*7!SO@L4M#s3S@ zdCW-%NC&#OISWaTSGyr`vA>-rtTZB}qAfSk3Z43xwfTJMcLXUwr6n;ta$`by0-`R{ zk@a%ao{_h>$9MF+YXv`;BjBAZsy_^KV{27U0V$8ja_7b zWMs|U03W5fvKQcYnQ`}J?+Xg+p$d^S-`;-Ybs-j=$Zx3e$Ae#Hkt1rpGW`>A_A1X5 zO|qaDFC}aT-?-mP@xFDMeXAFZMDCN^Qm^B3XlNr@H z%#QBOsrGW^X;3;+6tQrcp!|d@J+yIGO}*Dpg z%Y;gbT{YOGX~;rOwB6oo!bQr-r5GcbI>JT1WtXeeReRhZ@Zpd9=%hIjbx)b(?> zpMQRz%2GS-@MM1Mh2YS(iMFw>9LZbg9-!^KA;4i~#iJ~CBF5Ss6}j#$dPn~0tx^e> z@BHFWZACRgkqOeF><1Iy=YV|sSX^+p@~HnW0vM(`0rj04`{!=Rz4|Hg+_OG+}rnR4h{uH zuc0&`Y~qo{5@)kur7C8tDc|;TwJuN_?cM0RmR?r5{IPRejkFnlz5!HlM3yKc-hK&% zd(mgHV3m0mq0TFnMuW>T2=(=4(U6+?{D_*lT=}R*Qyl|cCJ7=vTw{*ujq6!Rn?#a0 z-7p%-yKH1e2%ybveJDCT4has>cnkc~-1W4~F5rFDx{;?VtbbnA<=4@C2`j!d7r}VL z{0j_A&w0)IV#{)#5HdQ}yTV$^#%ShgK;Ey$O)cf7BP@rG>1m=EsfU`oI*&TLI0aP` z!|)C(P}i^GzAC!t(kOL{ad;+D)$iwb-KqtIP4E!(?lJ zn0RcwJBqhB>F=6v$?!m%x!ad?Wc?ZYCRD|p(rDO7SHJv*TKt_Q33Z6!AJ$?g1;7nk zkVA=)h3=<_4YC=Lzf*BErU%6dU(0>7Ouo?mG9Dhn_v?7iafa$DAyPDXQ{n}=agaD4A^4UO49HnVQnkS~m}Ep2te_WPV_uxp(g<1+^GEbw z`}976VTInJtSz+*sAziSzJ=z^zlR_^Wk7G$%)bK&V;L9MHc)3T!`n)r?V1Ybns5XR z)TLy*sQbn}nOd(dZm}H*;?_xjd-}~Unvd_Nw6Ki+?s*Fr131-dX`gnGoemCISZHf2 z6(bZyD{=TrvlV_JczJhJ?yflT|uL-09 zRi%^8SXP~;<^=uH-4MS0O4b&O1U-RF$=a|J2%74AJWr&x5PnerzTgcmO{|{oqfE5J zE@mRtwA~QPLy-t>{{o6M*2MGq7it#p-N^zOZeU2(t$WT%aI<`hc&2|&-hmrGhQc@y zhwGWRw-Fw8o+EIWs#jkvp~i}3u=7WgPlY+0li@2>f8Y=Luatu~*kCnPwNPZGz2hOT z*7jCYAKj7hc2c1hSJp@6W?nXn>&6~7$18x)9j1Sql*67WY{^`}xGe?{V30?@EzccgvqHo|-eL zA0WLpFLZq$P8RoAfd(=}hCjy|7X{Sfkj!#b(YWWMjvlsUowpbUP3W{ie**|H6ev}i zkS=~~El23#WPr!iX!lAcq<>kzWsZ}8;d90NGiO)3j2J5258}Hjhs~PYx0xJJ1s#-$ z@}$S=A-uHO&2UlHRsu6ZhoVg%R#R4@Ay>D0BW7g^CXaWe^s_4ntg7?UiIMgOT=z4U zuc)-oM+4{IFh=%+E-vIje3&BxPR5C)$6EUd9k6QZHj=g}Bu<&~Gx49CVmsUPs1Dm= z$0!4zV*xk`c1-vwsSKa3h; z+31E(@Q9?4U3S?;Ag#SY*e#; z5~z7B+XJpDqXWKrL49J5xMHT<2xOr=^-ddlpeCY(70#6%cP$jfjLH`#yKnh5>WPmU zj-gUk#?2g!6G$^_9RVN95V=T^dD5zcGjDME<#k>=6UVCq2DjO3%-!p6-gh&M$G_Zc zUkG^Bk35GO4ii*8w0KmxrtUgYrhEtSajBx|gK7}FCfK*lC7ywKkAuOancun_h99)8K|BHb0c57}BbICxOA z^gGchDp}C$hr>wQ)APjx+wOh(J$ZkGm6(vNt-EZz7?Ax;3goTg(xtXTs!{#LC`Ct# zyUhc$&=SMAB}}>hu4Zx&R00P&VEbC#Op#lX6B|lX439p|8~f@H?6KmsVJhI>kt|Z0 zH>lN42QxPQx}R9s>cR*}x!@%`Bd1EU4zDuer;y&2<%qtT2Pq z0Np}D5WBm;W7mleIu~GUj&-djvz6=cttIy~p`+V%c=)#SPubY%DZzO4wo2(YovkqD(LSZ6%V`DgLJrapmBb%KU#2-Cy?C8w^d8CIF z9TT1fwx^|aD#hYd!#Og__YWqgSB zABq!cE>CwYNfQxncuCO9@&SBLpT{~6j_3DVo%2Gv&$!_uN>3@h3Kc8L41g)s5#l=s z72K!I(LV^hI=&JcxG(&0SO$+>Q^cf11@pdAf-+r0Sm@ zEe>^?>=2%H(oxiy%p{!zRSCoj<0IA7MwZCdjmIZFI@v&uFx858FG|uUjl?7>y58Lt zipFZ-BbCYPpn86EcX`hHbo9f`L9sQHueBTXL@7UkM3@B1-ZTvt$2#M5%el6&UPgvj z{c=06O=93XLq;Kk!P2<{B>ueuI{i6%?DNbNXS3)v<@V=4yIp>XJlFAzWJnz&5#-tJ zCHIh@=-~Ls?`}6zM&!kw`0p`-i>AOz(3alFOv7Pla|e?Xf#I29B80qeSmz*iF8$dBp$w}|PRI-m^2z*l_z zVAjaZ+>}C-X!;DT^;XLoy2M;IUjU7=&9EeE-O%6Z%n_b;4B9+b)S!p_n%f@xe&C5Z z@VQahfg=p60WPWDKn9WAA&A9*al!)T2_u1eucj7gEDqTX>vz|jM_g#J&-Ky94$)AD zubgK@Y`)OuX5^^8z~Qo-12k_)F{xtc@pvT>6_f->!Ac8q#X_paX1-uugh76pOxF6`2tg?OF#*x`>sz+RuxAy?lQ30*7S5;tgJu&g%{e;g zsa7fx*$s9g9yrM1*r7^F+6UBhw$6NhV%G*MT-;#Tg7#t~IEt!5(}CmT;1SK+&2@^h5xXi~4hHnThx;(=gC_bH3uOCjtR*;*nj#a! z>|1ZeCjxL1$F*X04*3saHZVJuwMoIc-QvwjZm4mKKCd9zu0sybQb(Z%uWyCRPHq<- zql#Vrtg;dK8Hg;N_Psa25QXErhK2LebG|a~s*@jLiVrlA0Vdx=vY(;rszvJsfrMn6 z0<1HN<>)C(zGAHd7*M`ZfHMKY$_xI)8N_K%k+Ou+k-;)ZcAyJr9SWR5kNs$5U0mEv z%#ZOp2jSa4){YZsh$OhFptL_YkLKk>@Hy{vb-tYu&1l@zp~1g6;J#-wC3b5{Tk(;I zdg8vFd`)A^P?Qb)TBxhVn0?El{?Wi0=LX5Ws0x9fcg;qAWU~2B0homTYQBJD6>jDe za$WMi$7m2%983X`ZWn4AKx4IClN~2R=L=1xHCPSTPE&6Va|FC?Ax2@?Yg)x@NI=`a6j|o`dk8wxnzEt@_-2_IE zB0s<_Z2XWx+=h*tX4ry7KJFIt)G9OOa6^i8?39F|tZdkO(DThT|I;S3(9W5-Ex0VZ zaPs}*p=VfXuI>r@otiM$qZt;*1Fd>}slwE|=d-nTbt6AW3fBQ& za47LW9&QN%W#5!gPTyZnsh(N6VRb{edhzMNQ*k#UBcotNCTuE_D7wzNKI3eCDYTST z2s14I(|Wg6S=hwLy1z_)l00h=b-p$pI5v#&Rpd!nQZ9SZBBP!} zID?8h8GXoDi7P$5NnV?{NfD8v8S&E@-_jqR!jaH`O01D)TeJO8#FyA9uy1Bf_kkU< zjKt@k3YiHrV3J8s-K^SGn^JE+}j?=#6<-TV6n^b^s=d`B8As6)AbGt4C41(zkS zB^h4^IrNI>6qVM2npzdSLQet%Z zJ{96)sbu1K*X(TPeOso>Rs6V(gdNdS3*CbE-Sjp)ZttOoZJkK!Yo7{uiywkX%m_kc z*1X2zPoq3uxd!zDF4|x1sLh(;tLCB_?%1_8;O((C%2*Hxu_aAci2t)BVQMQ4hhCMC zviXL)oyX|HPwlK)T8xgpauQsj4!yAfP#3CqIpDKMCgSnwdRz=x{QJ`weiR;K4Iz}jfSTP%u1JVj$NfA znYK>57F5;#*3;Amll=2rmcB5CjEV@<$Rawi6P^R~6;EZxmEfL>fE4?eS%6l z-FRUiU{ShrLJVy)6tV_-Bq+Imq1N!Q_M{mv)#`{A596jG=+f1}aU+~})4bDV4BF7` zmlQJ02pt2tSBU}j>E_n(Uk1d9_(2>|ZDucmfN3`8#r?bW3|kW+u89k z%&J0ZE2+HN)L0NJK#fGDzZqlMj<$qj05N|^7@qcXmOg*joDQ@>kF?vf0dm^I>*V!W zUO-&f!pxsc#jJQ*mKTmMi3CaOs;t9^O0vNsOk)v^nqP+14X9gCphiAE!ehtFxK8iB zCz>Y-U@Dp0v1uB|MFl+)Aupim9nVPysgE2~H?51TM9FwNkJPubTwGjyd+VpYz6O1 zj$4!d5~d{S8xu2uLU$5(v5WnKzCCg|gHR3lEv2FDfpogh4T18VPqeQRxPIG!y(^-53;Se<}wm|)ak>&n9>hAjH=m#XZbsN!1gy;nXj z*|r7nfeJn?fWj#5Uk_Pwf7A2Lg;Kmg0_+#Y^LJ z)HY^}3o$+DaA6i!l>oBn#T!3_CE#<;46uD&dRe@yTW7s7vT#{EhZCPf!hOPvYN;%s zmLRXa)%c?G=X?voLWk=EbXdRXn}gPR{A5TIB|cmlj-X*VY6=-=D`QBVGmKjL^>8?> zsNWOd^eSmOVzL0B1bd#z1!c1;49g4iBiimRhO2aaAL+z30-dF%)u5*DHF$q06L zE@D2fHyl1>YFwx&Lro517)qIoUOedRlU0dOS9>W{NMI7e+jX z?QvO@^uN@3Z42y2JIN~)x}T(E4>ZImc$!Xwj{ssECx(rF=Tsj%qgq(vW}eQV5A*)Q zgeAs{355+h4mFjwh~QokSk%4#JY7?io5kX6XyN@;S}BeJNzSKaF$cf`l#DX^zF&l3 zgMmvI2n!iZN*|hviPV0nydN56ZgZyUvb4m-A}A8_hi$EObi)hg4!E9S`!egg=O5gDST7jqdLT!b zV|6TkUCy0vx;grFejl6#HQIf8wKU+fVjQ%Ro(v>e~cHHVo> z(8x!qn?E zPm8I^cZQm==4cLFxDkMA9GF#1Dk$qoI&|7nU$f(=jk-i{{G3)z`gS8 zj9)}W=jJ0fbB=V&ngRFgSS~-egU1S;dI|7Mg6QXZ-cI1JH)0C6gYnwQ0*P_`gnhaO zaFhj164gE>_t=SaCT(70yuDcmJ<KKX+>H#?WC6KTPctTOnhe%*1Hy5z6lQmd!QlVF^;fpn)J9TU8bIz2%tACBoi`ckKwH^TXk> zGZ{+5W+HrcTR;+-j4s? z-xuqfm9V4|=VKh;!R8sdOKIO+5to|Sxog5kiq3BvN z4pb<5lC7-LZlQ$D0qk*Wr{4$r{;;kbdW>TzBH=$uIreI0$I1=j?Ou_k56LOz0#l`K zam<57t$A=(zL*cc&^Y*;#bpcK=n?V;gv>C~=qe!V+*4T5{1`|nDo!1>&(3Bg+oUq+ z$4ch3fBfj;zDapyEc(HG2%(1thhM6EC5G$Rjxc4Cuc*}Mbj^xr$&HE=oteu6m~2>4n;w5@C`Hr)KX+X# z0h=J+e7Iuyn(pwoX+Z3H-;`(<_B{~eLYIZ>9Qe@(d!~dAzRcDlgUp@+day!OMZMY_ zN!T}&@3;L8 zhmyAdfifHAgU9;m4L_b39g9!`@=w?}wfxs^GdV&yXd;i$a|18aJ{QHoruT z^~%mKB|OV2y=O(g_+d#A(I5|p^1fkfcHA(cyl0{h8XH(0b)D`bARdq!QZl)y;1<(% z@*%~bin=w5E!M9-OQfv9Q^~vXKkETg(6Fs3(Mu)j%0&}a$3q7IvA)G^=ca~CQy~>R z_UPlp7km2LjbRY)o(-l2pAVm93hptqQu0svxnI+Jk+a@(9fjDa>(hj z*)C#Zf%Qc0L_!C?$rkV}Wi^al|JF~mxf=~!c2VoM6xy-Sg#%%1-5D7tP zgoVV~7hhGKGmKD`j%hiE5kyKySwAf%uk7HeNn!&hK-7-_p+7x%x5IbNdr96q(c^N< zF1Oj%3lgoR)t%^`)YLXqumcaXUU_&q3|oi**r6t5BOm#MUqDJ-U_5J~h@kR=D-#Z_ z#ukOHH~>o~e5S8^xck*A@rKf|s8*&mBKP zCOftBl8xkgkrW(FUzr~c)CnLkPvS>8zwSnsb%;7|~@vnw!Fc%<+4?D!!{+0Un|4guk@k$?GddzkIc-ffsMZ z$JH{g%ksA}Z>7#7m`6ehSKZM~Jjem1T$*>9j}wNxIGF~gVz`*t=^{R3Ii-S|Q?kb$ z)piF3d6kKIu;*~{rrd`{9{2v<4TN-2XZR#!bxY&X4Eg)Vy)+BKQMon<1H^?wqBeiM@P2khoY33X6sQA-%_w-Cc15~AATdm}Y74o1djf)tT z3_&o1;#f)B2~f@=0W7>isH}#lc+7}Vs_@irZhw&5mrwNB+42TwDkN6W!ASN7N9ofX zUZ|iLgvmj)u;H7nJ&(ms92KE%1kOs8Vb>Ewu~@nUaj2=^C4g{A3VmMSB&{|tcKnho zV4imQ)aTYp3M0FgTD81VoQ_Y>nm>i$Ym4t(J&h3t(d4K)M*5TdgJ*G{2JH8?ZjAS* z^Qn{ln+T*71XS{ZlZe7}_0Ar=w_(8l2U0+-znuBK@8I-{PlLK=B~9Unh^yGp*E<&j ziYPb`tuzvY0R+P#MCo{(Qnoo3#xy#A*G!v*Yd3Ac9hY8;qt?HI>6d>UHBHrM_|Y|3 zc;z){r@wXW+=56r0&gB&`$^N$Fk>PLt&+H{e(qU(@5GZtodslme+&nQ_)OpzS!-5q zDV`F!`N6OzEY9*WJI2&F;qwwZWdFEk>{THuTxEr=NXry??Xq<aX(j*wX$gS60qMwea z>)=_zb3-36;;VTQ@Wnh%(|3=VO?d=mR}2p+$UFaldrv(N$JUO;hW;+mWR3BKuDobl zW8thHe#~wiy5%e&b_b337opte!vovj#3hg4Z|3c@aJR$r4ulE4Kj2>mqZ{YAiZKGX zVhJ)oeJd=R7s;RGE9$UF+{%G zg*;LoegbzFz29z?0L>ME>?h;A@C2DlExkdy%?O3yrT6$fegb133I^JUUHjm5`4LKP zLs?M`3iE8D6{;|oh4auRXPwFVg(+>9gDi=3e;k2e9Qk?qc;(rD;l98B9cg0gE|&wR zo^=5RJ6o~)(Uq7ywoX(ir-fA_Q}U#bA0k&*6qhM7y_6Y|lQ(3rTC$j&P9}atxXH4l z@Exwf115w0_JSjE?y}_wg$CjF7s8hBMm_y@f2Hhd1rqKs<&%vO=mI^tL?Y;#CneBZMAjOCKQ~abnkXuVuE=&EoZ9G8Gbpg7MJonAri&RqF@Kj; z0zbDAi4kJn|7e8fqKe;N9;3NNYsbH7AeNn*H`@Hg zG!xjZC3_Xf{%^)XvXguiLrEl}2~7p{8taooLmuN_Bs7_o=+feQS`jb`&SifUTkOV{qS3wH;zTi#Ti0k6EY3Vr=O zc=-N1(Yk9VQZ!NfEyH*#vIm315fl($jjb%lVHHiNF3m@Q&m(}}=W)X6u!@~)WGb8@ zGJax2m7>I?A~X?(BXPmHdjrE53Pp*P4`EMFH!TDQDFR|Pq?-zSR?(!&W;Ti%nO2(N z;!#I;m(XOvh3a%5L%rq!#&#T{Q)LQ2Phgccd; zy(0atyr88&S3n@-hAu9Pix#s@>(^JnuiWX{` zey3&8JaoUb8UyVCICvMORo5Z?++UzHHbE(`q3aPQ-a}s^zY(h*{{ya^G!ALM51pwf z!XmpMje1g)Hu}P?@el?{!Kw7zeEMBQGpCc{*6`aeegOfRyz`bFiMrWKP&Z*5e1*lL z)kAN4Gj_f5B3}5%g9r!2dg2|oE;X3c!6eA|TQ=EwbquSA%nwj+MaPYt0b&6QdSBZw3+ueNCitGNJJKEm*xSj(@Gq z;Fp){Xs95T9#RC6G54(&^U?Mx-dx7tn?XBwLLDF()llbC%Cno_ZL+ zd+kM>IAIbNR1+C?dqk0!m3~x`E>dqiitR)F*x1{JHEk_ex%+Jy&ioy@fmh%_nb6j^ z<;ofP`!+IX#}L9^WXZV3@k&JFDFjIo z43Yw9?(D;GI7M2v3^CqNg}V}JMtfO~IdD4$!F=p{`+<4Z(WFuv%1~V5#iK88$7fb7 zz?jBH^pkQKTV94g-0;8n!{aN-8nNT#g)_(siHK%ZoE9&;gDQfVX-4x zad}B`WzZ4{hzXh`tEwj!MkE=>oZ=F^(AEyIAtU|mr6*R3@eZE!H8gl9m%rfPl;4=H zh463;HiwGYGxJbW;Xo{&K`0@U7#Qg|fU7!8Kfa96nuUxI&Ho5?Ez;M`Y+ob_7_CBV zDyIW$BFM{=j5l`~j_6qVToN;yG+cNjH`cL;mLsAjh31!ytY6VPoS6Jz`!)=&qk%rPxT8GN~3bEgU=nBY%S)8%sbD^@5%(9o);GYlQLuP0a zn*+PCy}b?NOUK~UWs9+B#u$vPDTLES)`C3=uPX&RF;iX}TCc41)T08RQdMR_&N z?u*W!hT9%^1`n>?h+}4qN50pK4b6LS|BG^)w4Z+NG>omvBWt3c4q+21cA}x1ioM&B zDRS4Yf#E1wFitoKh~t5X%w0B?i)v(S;O*Z~uzjCv<*TDZ#Im>`%f@aTNgOzH$6_YFFw^H| zfrb?zDnV)f`g|&0+myokEg9VOl?<#74cZ{LVrJ0HgDu}BF4Klp&Dj3zDx~^4=rb}R z)j65aP*hos?twVky9O~Z7)M&Ez=Q=8aOu@kkylbj;NL-OuT=mr6D`iQ=da8dW^O3M zgesFVjOL6S{9Jptj>b|8N(vP8btf=(de+j@vN(e_TKaCLbDD}lat>X@&NxM!Q^EJM zPI&WzztXtX0ObFc@YZ46J@sf~Z5%(6`^iol*!u#%*@Y1k z${L8RdJ$7Ig0a{fHn?b_RaDku?V4xs)FbyJZpq;Jmh}jSllauUr8sfHWHi?K;Ut#q z^`ueg3&Z11${n<9PMX;?QLQeBRlu$o(WEWIyRbl~A=tXuc9FYrrf33XWIK$EBDPIT zaehCYbY2uwCzL>S7b6o7h~f{80NSGKMh1^auA^fmr9YD`LH2L*Ch;v@Sg^DnxBYZE zF8t1u`29cIjd@0*F|!e>vk!&&HUvXP{D6CnsM0qpqWau;iXO8yG8Bx% z@6CtXF1kEkAqg^gXf3^*zwA%xc%5;al&o) zV5hmsN>6_aXG&w3QG}v-$^I(43t&P;TRpc0Jq+HEsi_lv+%#>#1Z40u)3=S zUYm`+QyP7-2m*;1D)PvpNF;E>>gTu-sp!TTibnsD&SZXLe6LN&i5ctqYj%3ziZ3n0 z+!Zqr?F}H7(&Ppx>{aA`Iu6dqw;1h-WlAHAJa0}mQ!Ntc8Sxyd?6bqOjtv8muBl{X zDy2H=Q)d;h>ZJrK3eq@nHt!y!ie6JXH#5wyLR<47ZvNqFw7szl3l~hpai9Ah{1r7A z4utUH%4hJeM<0XN?}yD(gF;doon2kH`MNvsz`ZrN*+7dm=E`~DTvgSlXCSUzpw~LUh@NNef$CZ^UeVr^NmZe;1E(!J6~{OGZMdI6ij-3#PE0=! zAu_A4f8jZi?NjIzd$sPM?{P*}@BN&}hG9Q99~6}ParQMQqj6>(I<|F@!X$?3v ziK&W0ESs_4uDQJ-WFtb=G7{?){(CM(WL9rcWcH5O4%A@UYz>IgZkjGGw~B%OG+tRB z$BMZb_=^Z62Nc2fl{_1EZ0^A2r|d*{upOtKa~LkU;Z`xvnFr*N&0aHcHim{{c=DdV zp?2(8;cBg`sfNF}5Klb24J#J@AD&)!2&##wh5BMbL8TJ9*gBTonZnhYl#^Zro-?Da zA1$p51|x#eHs0DZC78P?&dTVcTlI4FuC5t<>6I+zFPA09^_WCujI`*yqP^l_4Eom} zKyzZ7F|x7KELHp1EuL)PXAQ<_g(&qEp{B5gz%?z*RBpglQC)-X?hdSc^zSs;ZFqXe zS^{Yst~}`^ESX&chlfnd!UPI@LF5tJx4H|VyKCqZyrPm;QOu9B?A@_~kuUW6rd#K;dNE^!pav^2=-S+Z+A|`7PbBlLB!QbGN!3WToVzU}qb)ceY|H zfqqET7o<>2% #Eom7M~EI*7Zf2BkF^lfTCB@-kDN&1SjOi^f-r|P;LLBIB=)@B zwV_p1uk(@aFay z`npm$e3~Rl96NOv+R)pX#>FeP5%F+h-1q`S6KPJi)G3 zds^0Mv2~C!S~80s{Taj6gOR3nrts6Oq|zBVcs)5hdu71Y9N_aL{c)b;*}#8rvsaz(6uc?8E{OF-3Qt7xzDK8cwJMko}9{^mAV_H^Q+FJA≪FlD{saED?lL3>dvNW~evUg%I~hyi#*=|w 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∓M+E1WFqlN-7B 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�&`K&)0ST-%5Ck2agELY+pO(jLAI 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 !LcA z)jXh2k(~Xe#6xpSJW;ma+;%O__7ADdv+0O{%ENb4i`-$`^f{&I6K#wtm87#TeKj3_ z&P8vR9`&(H)A@iTv%Lf@hlLgJByH7G8pKrGTlawN-K%O}nsi&8M`H3@SAxtsSa0Wu?rRhl(9E+YDE0zQu+A`n!ux|} zTjHvor6{*+b#o9VT4M^CmA9R13G+{_q4)JtXO4l@C(72Gf1~1BZ;uWz>&)1CcnX5G z2ud@J4{t-i50iM8#bYYGo(dU0gEo$QtRx$~Y_i-0d>GpzLpuYy(m>)g0Y3!x{B%p+ zIVzc)1^VL#^m}BO`cRYYhZ0X%^ViJgSsn>CMSy>r8UI{C-L14Zl6+?B{VQikKiv!@0RPD+HTZXQwDe#x2!N>!shy>` zwG4M4We~A}0X6`zLMbf)mDm7em&b!b(YMOHGJMn*8TsvsG(a#2%0QggMnH)Xz>s%R zm0F$u@sa)sgCK?=8N+aL0lfSFMVz85Ut?3o=yB)FPV>}@wg{#lo)E8j1R{F4t2z=XpF zz+g*COF%X`YGo=OsFcov2^g=7Mhem?nV}TKaG7^xsXTJ}VFX-S))7BXsC8lhc#RYx zxl8ryEF+L+P^ShAfi?yyHUOa^fYx6&y>8|-2E5AbCX`i8C1QvdII_@R4vW|@B-tp0 ztBRa@vncM#>a=}@m2B|qxpOb+PXt55t13$ayY5%y2Kb!P%Aynnd4Rqp%pSp77?3pj zPaCi&-F8_~!Da)g0iW0tSRRWhDh^Sxr~yCAYY2cpr2!uU)CJTT@I%nwV?aN&0Acpd zyrAD4u&b+cqilbakFe!YwjWgo=Nq{4Y=XK=?9Fpfvw1%C{KKRhX(D@g;=E-&YcWje zPAI=JYstUW4bQ>%S+s@2=9bpK=(fl(_UBXbS*Uk^2>zoJb;~W6we-_NGL<8gf1v*Z z{Pm5p%tx8*$Vm*KW7t@LM07xnERsf}i;RMKrB(in#9 z$ZiRmd5%Io#bP3{D)~l=D&PdTzToV0v=3`8>}#R z5e9Yh6g2<^f(I~}adZXnv~K+y=Jmr^Fhf;27=b`nuEG;YD@PSldchk=hu(l6=C12X zUGWO?yrx5sfDJ>V&dfC-o&mgqbeEQhu=qY^-mY9?EwkflnG;tj&qZy4tnhPSq1$M< zgngS;i7Yi^AzKFv!-C{>ijhJwUS(wCBy^Bg@pnikV)B}4^V;(LkR|0;*$b*tnE@Xw zyDS!D1@uiJmXUM{A%kBLo2BIg^e6Kg^j%CegHf0P`o01Eo(>IeLo+}>Wcv=Y{kH1d z8KB?4p(~h|?7S%R{FVa$A;?vl*9sq~-18i43rRjGHt<_{x)UNe-O+XxgSHej_G0+EK2p&>BK7=v=7 zWe~7ZwHhhDEF*4^x0(fI&9)L~fe^IIG2seax49BIy`=KitYpqn%T~mLbUdc8sOacr zK2yo86ms+p;9HQs!0538Hd?$Cf9`z@^hK0B@JjPq!JuC(&pdUG+?rlFND!J66jQ9mB^SlWBFKC=UNYdPm`}ICc4e}ls z>u;BQ7J7WKb`JZm_b(m%XBq(6A_gFg0l)x6OWY=n5ugcU1gPBz$M# zF$Sm_R#8JRpD_p*9!KyP%Wtie%SM4OvC6zk&1K0*VTvvTz&#!DAY8)Sg9y7%wpK|l zD}29R%M*1}HOrC~%4lwl#&o=t0sEq)>9|2Q84oBZv;}Md_5}d`gocYC9H3$V9}Iu8 z8NhWGkai+JmX}gtRc^byLvu3yknIEXk6)Wm&js5*Br?zQoW}X0)bku$go7UB-MsVz z`9K4`i%C8UZhIDPlSFI|B{))CTwtb$f0L@cDX| z0sZi&s)OzK&erpX4d|bCYO4dMfc`)`)1Mdg4*}ahQe_@&|4)Dc02e>2)bf}6o&W#< M07*qoM6N<$f|g~m$p8QV diff --git a/assets/sprites/player.png b/assets/sprites/player.png deleted file mode 100644 index a37a23af62a9a2f7ad6c0676d6b64810eba89af8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 180337 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≪FlD{saED?lL3>dvNW~evUg%I~hyi#*=|w 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∓M+E1WFqlN-7B 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�&`K&)0ST-%5Ck2agELY+pO(jLAI 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 !LcA z)jXh2k(~Xe#6xpSJW;ma+;%O__7ADdv+0O{%ENb4i`-$`^f{&I6K#wtm87#TeKj3_ z&P8vR9`&(H)A@iTv%Lf@hlLgJByH7G8pKrGTlawN-K%O}nsi&8M`H3@SAxtsSa0Wu?rRhl(9E+YDE0zQu+A`n!ux|} zTjHvor6{*+b#o9VT4M^CmA9R13G+{_q4)JtXO4l@C(72Gf1~1BZ;uWz>&)1CcnX5G z2ud@J4{t-i50iM8#bYYGo(dU0gEo$QtRx$~Y_i-0d>GpzLpuYy(m>)g0Y3!x{B%p+ zIVzc)1^VL#^m}BO`cRYYhZ0X%^ViJgSsn>CMSy>r8UI{C-L14Zl6+?B{VQikKiv!@0RPD+HTZXQwDe#x2!N>!shy>` zwG4M4We~A}0X6`zLMbf)mDm7em&b!b(YMOHGJMn*8TsvsG(a#2%0QggMnH)Xz>s%R zm0F$u@sa)sgCK?=8N+aL0lfSFMVz85Ut?3o=yB)FPV>}@wg{#lo)E8j1R{F4t2z=XpF zz+g*COF%X`YGo=OsFcov2^g=7Mhem?nV}TKaG7^xsXTJ}VFX-S))7BXsC8lhc#RYx zxl8ryEF+L+P^ShAfi?yyHUOa^fYx6&y>8|-2E5AbCX`i8C1QvdII_@R4vW|@B-tp0 ztBRa@vncM#>a=}@m2B|qxpOb+PXt55t13$ayY5%y2Kb!P%Aynnd4Rqp%pSp77?3pj zPaCi&-F8_~!Da)g0iW0tSRRWhDh^Sxr~yCAYY2cpr2!uU)CJTT@I%nwV?aN&0Acpd zyrAD4u&b+cqilbakFe!YwjWgo=Nq{4Y=XK=?9Fpfvw1%C{KKRhX(D@g;=E-&YcWje zPAI=JYstUW4bQ>%S+s@2=9bpK=(fl(_UBXbS*Uk^2>zoJb;~W6we-_NGL<8gf1v*Z z{Pm5p%tx8*$Vm*KW7t@LM07xnERsf}i;RMKrB(in#9 z$ZiRmd5%Io#bP3{D)~l=D&PdTzToV0v=3`8>}#R z5e9Yh6g2<^f(I~}adZXnv~K+y=Jmr^Fhf;27=b`nuEG;YD@PSldchk=hu(l6=C12X zUGWO?yrx5sfDJ>V&dfC-o&mgqbeEQhu=qY^-mY9?EwkflnG;tj&qZy4tnhPSq1$M< zgngS;i7Yi^AzKFv!-C{>ijhJwUS(wCBy^Bg@pnikV)B}4^V;(LkR|0;*$b*tnE@Xw zyDS!D1@uiJmXUM{A%kBLo2BIg^e6Kg^j%CegHf0P`o01Eo(>IeLo+}>Wcv=Y{kH1d z8KB?4p(~h|?7S%R{FVa$A;?vl*9sq~-18i43rRjGHt<_{x)UNe-O+XxgSHej_G0+EK2p&>BK7=v=7 zWe~7ZwHhhDEF*4^x0(fI&9)L~fe^IIG2seax49BIy`=KitYpqn%T~mLbUdc8sOacr zK2yo86ms+p;9HQs!0538Hd?$Cf9`z@^hK0B@JjPq!JuC(&pdUG+?rlFND!J66jQ9mB^SlWBFKC=UNYdPm`}ICc4e}ls z>u;BQ7J7WKb`JZm_b(m%XBq(6A_gFg0l)x6OWY=n5ugcU1gPBz$M# zF$Sm_R#8JRpD_p*9!KyP%Wtie%SM4OvC6zk&1K0*VTvvTz&#!DAY8)Sg9y7%wpK|l zD}29R%M*1}HOrC~%4lwl#&o=t0sEq)>9|2Q84oBZv;}Md_5}d`gocYC9H3$V9}Iu8 z8NhWGkai+JmX}gtRc^byLvu3yknIEXk6)Wm&js5*Br?zQoW}X0)bku$go7UB-MsVz z`9K4`i%C8UZhIDPlSFI|B{))CTwtb$f0L@cDX| z0sZi&s)OzK&erpX4d|bCYO4dMfc`)`)1Mdg4*}ahQe_@&|4)Dc02e>2)bf}6o&W#< M07*qoM6N<$f|g~m$p8QV diff --git a/assets/ui/button.png b/assets/ui/button.png deleted file mode 100644 index 4cd391f2e4d4858a9a1f1b6acb18b641b774e979..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 551 zcmeAS@N?(olHy`uVBq!ia0vp^`+(SxgAGWgOcI{Jz`(fG)5S5Q;?~={_TFKEG6z0> z7HavjidQ$$l2!5CK9=~VV%t|&9*F4u6lnQ!MQWA;%ioKRHIrm&I4?bTAksAPg2F}a z9ry09Ro1iGY4g2~ujawL&pGz{WahnH@}-`4{g?Evch|pOeD}^#qJC%ip#`UH-EUv4 z*tP4?g$WtW8GHNcQkL3J=U2bBZ+ic}IoFo$|J&L)y}EB(@$-u{Qt!X5@Nj~x$)9< z1}d{&9Fva!!6Dzme~A5I^9RQt3N-?D7~F^4@=%0T$&RBRj>o;ZBHv$L_rF>p`}dgz z8B;Q>ZuK2o{58X_SGRthIlp<|o*wtbu8&K9gnnLG@$KEGU*Dgo_tw8MmaAMh%m3)3 z+eKe~y04GB%yqHKWPY1?)$`In-tSNUsh6Ln1~o_YbN;qu=Cy&Q^V{aFJ151KYxE_h zRPCtL%RO=C0=E>R{KK!$^~+!P;!B+bUvJ1(+1}^(^cmvKq-QETepU{QN8J+Fh?3y^ zw370~qEv>YO1-3<{QQ)ZO1x3ba4!+xb^m~trxSSM8iYd zmcXP$<$tD4EZO~!1Z`S7o6-YV4mz1MrSL{oux#A0LC7(13&$hIYc<(ww=z;EpEdq) z;LQ^0xVDn`X}s55jN@nL%zf{>)hc}9zPq{!SC-CO{5Hep_s&NbR1NtSeKqe{Q~w z_-1$iqh}s6_w32AoaI-$Jlx)Uwna|K{aCT7BDw#i>IytVF3#8A_d(E(L%xOo5c|XC z4~{<+Y6Q@^hs5om2&i6qgfr?%qDOl&$eGB2zb&{EFHp+smJJ{~mw(9lbaA zXZ5%*b$$G_d;iq!r#qj${AvDavR2lUz3&6(*B<74t~T4aZ1UO5t8&ZC9_{Zxy|8Q1 z+oDB36Ka_@vAkwJ#Bt&pDD+EQBT9nv(@M${i&7bqD)o|b^7B(tD)o|!Dho>T^)ho4 i(^K_;F=u4rnwOlPl3KKat^OTQBZH@_pUXO@geCw#5Y#*X diff --git a/assets/ui/checkbox.png b/assets/ui/checkbox.png deleted file mode 100644 index f17bb8f1c3b230bb63fa035a524b48d66b946ecc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 535 zcmV+y0_gpTP)b;@5Ji2193e-@QF4SFAxB6{hh!Nrl`A?+Y2CS^L!zZ~<;s$684yUewees1ubkkJ zM3{w0JJJ+*SMwjcv&DSN>IvJnpJub!TazJkKA($Av#FD@p6j~rlgZ@Oahyl%r@*G6 zApQvKjYgvf>&z)-+#H6Xh@wcuaV&F)I3ACx-e$8AK@fD|qTbVM7S`C{`@SfOLgpEK~Ikhl8l=T591pw7~!t1%^h% z$JJ`3pipE8m~)xuxzs{H8w_CSUZdJ<;zuIY(R!CC?}s z)?n;4_L+K}cX?t4%zzm%17^Ssm;p0j2F!r{e=v+yx}c!NDg6YDQ#h>vj8wYEH)yxx zTi6Bj@Nv0ZY8`l?!3haoNeedax;)Rc2sreXWjUBN(3hwU4O#@eMwmNaO_h+Q3jGTm z0WD~r*aLkw6iyB{(KP{48yXyP(dXZKWLUV7aW}Sp6X-b{YuCuT0!##;lb&kh1Jp*k zLKL&8p8x;=Ep$a#bW?9;ba!ELWdLG%E@EtNZ)9Y7E@N_eaCC1jX>DO=WiC)oM=~@; ZZewp`Wpbznf9?PP002ovPDHLkV1oWj>|+1` diff --git a/assets/ui/checkboxChecked.png b/assets/ui/checkboxChecked.png deleted file mode 100644 index 386ba505548f966efb6a66fe2e99c7917b2251ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 771 zcmV+e1N{7nP)v=hu5al5-S=Bk_2AA)QWd4pk$~X0vQs9ojL;UM7<{ zOeT}-i9}*fnIyPL6hug1H5QA_C_blT(#@KtFApeb#QbEl6msR-0N))3oh% zIvq9`3@l&x4&Pt^iw%ZE#E+#?$%cXv5iovQuh%VK5cmcISe#+Ba*IOPY&NAsk+xbb zJET;(HW(!!NmNjzB*bAsp-g3g9o$yf($Nz;zpwh=>Sup8rp&F??3*}ZSw zxqJ(EVzR(+QUpc1Qg~($mCwHe+cJQ z-Y$Y9w4dUSh3@=8Ly1cI4HSxm*Smy)!8n|Rff|?W!W%5wL>Mr4BbE9{+PZiR1m&0P z(jG~Z`qiXlmj>q7;e#Z*)Q314E)Oh7vP*xvaJP`4$u1oXA)}Deqv>COQ42va2!H42 zfnltQY7l`hn$kUBG=DO=WiC)oM=~@;Zewp`Wpbznf9?PP002ovPDHLkV1iFc BR|)_C diff --git a/index.html b/index.html index bb3369d..30c84c0 100644 --- a/index.html +++ b/index.html @@ -2,7 +2,8 @@ - Phaser 3 Project Template + Dino + diff --git a/package-lock.json b/package-lock.json index e52ec8b..1a8d88c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { - "name": "phaser3-project-template", - "version": "1.1.0", + "name": "dino", + "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1365,9 +1365,9 @@ }, "dependencies": { "buffer": { - "version": "5.4.3", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.4.3.tgz", - "integrity": "sha512-zvj65TkFeIt3i6aj5bIvJDzjjQQGs4o/sNoezg1F1kYap9Nu2jcUdpwzRSJTHMMzG0H7bZkn4rNQpImhuxWX2A==", + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.4.2.tgz", + "integrity": "sha512-iy9koArjAFCzGnx3ZvNA6Z0clIbbFgbdWQ0mKD3hO0krOrZh8UgA6qMKcZvwLJxS+D6iVR76+5/pV56yMNYTag==", "dev": true, "requires": { "base64-js": "^1.0.2", @@ -1876,12 +1876,20 @@ "requires": { "@nodelib/fs.stat": "2.0.2", "run-parallel": "^1.1.9" + }, + "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.2.tgz", + "integrity": "sha512-z8+wGWV2dgUhLqrtRYa03yDx4HWMvXKi1z8g3m2JyxAx8F7xk74asqPk5LAETjqDSGLFML/6CDl0+yFunSYicw==", + "dev": true + } } }, "@nodelib/fs.stat": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.2.tgz", - "integrity": "sha512-z8+wGWV2dgUhLqrtRYa03yDx4HWMvXKi1z8g3m2JyxAx8F7xk74asqPk5LAETjqDSGLFML/6CDl0+yFunSYicw==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", "dev": true }, "@nodelib/fs.walk": { @@ -1938,6 +1946,12 @@ "integrity": "sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ==", "dev": true }, + "@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true + }, "@types/q": { "version": "1.5.2", "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.2.tgz", @@ -2304,99 +2318,6 @@ "normalize-path": "^2.1.1" }, "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", @@ -2405,16 +2326,6 @@ "requires": { "remove-trailing-separator": "^1.0.1" } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } } } }, @@ -2954,12 +2865,32 @@ } }, "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "fill-range": "^7.0.1" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "brorand": { @@ -3379,75 +3310,6 @@ "path-is-absolute": "^1.0.0", "readdirp": "^2.2.1", "upath": "^1.1.1" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } } }, "chownr": { @@ -3859,9 +3721,9 @@ "dev": true }, "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", "dev": true }, "compressible": { @@ -4130,15 +3992,15 @@ "dev": true }, "electron-to-chromium": { - "version": "1.3.260", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.260.tgz", - "integrity": "sha512-wGt+OivF1C1MPwaSv3LJ96ebNbLAWlx3HndivDDWqwIVSQxmhL17Y/YmwUdEMtS/bPyommELt47Dct0/VZNQBQ==", + "version": "1.3.252", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.252.tgz", + "integrity": "sha512-NWJ5TztDnjExFISZHFwpoJjMbLUifsNBnx7u2JI0gCw6SbKyQYYWWtBHasO/jPtHym69F4EZuTpRNGN11MT/jg==", "dev": true }, "node-releases": { - "version": "1.1.32", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.32.tgz", - "integrity": "sha512-VhVknkitq8dqtWoluagsGPn3dxTvN9fwgR59fV3D7sLBHe0JfDramsMI8n8mY//ccq/Kkrf8ZRHRpsyVZ3qw1A==", + "version": "1.1.29", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.29.tgz", + "integrity": "sha512-R5bDhzh6I+tpi/9i2hrrvGJ3yKPYzlVOORDkXhnZuwi5D3q1I5w4vYy24PJXTcLk9Q0kws9TO77T75bcK8/ysQ==", "dev": true, "requires": { "semver": "^5.3.0" @@ -4734,12 +4596,27 @@ "slash": "^3.0.0" }, "dependencies": { + "@nodelib/fs.stat": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.2.tgz", + "integrity": "sha512-z8+wGWV2dgUhLqrtRYa03yDx4HWMvXKi1z8g3m2JyxAx8F7xk74asqPk5LAETjqDSGLFML/6CDl0+yFunSYicw==", + "dev": true + }, "array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -4749,6 +4626,38 @@ "path-type": "^4.0.0" } }, + "fast-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.4.tgz", + "integrity": "sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.1", + "@nodelib/fs.walk": "^1.2.1", + "glob-parent": "^5.0.0", + "is-glob": "^4.0.1", + "merge2": "^1.2.3", + "micromatch": "^4.0.2" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "glob-parent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, "globby": { "version": "10.0.1", "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.1.tgz", @@ -4777,6 +4686,46 @@ "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==", "dev": true }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-path-inside": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.1.tgz", + "integrity": "sha512-CKstxrctq1kUesU6WhtZDbYKzzYBuRH0UYInAVrkc/EYdB9ltbfE0gOoayG9nhohG6447sOOVGhHqsdmBvkbNg==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, "path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -4791,6 +4740,15 @@ "requires": { "glob": "^7.1.3" } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } } } }, @@ -5267,6 +5225,17 @@ "dev": true, "requires": { "is-glob": "^4.0.1" + }, + "dependencies": { + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + } } }, "ignore": { @@ -5480,9 +5449,9 @@ "dev": true }, "eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", - "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==" + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", + "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==" }, "events": { "version": "3.0.0", @@ -5792,28 +5761,17 @@ "dev": true }, "fast-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.0.4.tgz", - "integrity": "sha512-wkIbV6qg37xTJwqSsdnIphL1e+LaGz4AIQqr00mIubMaEhv1/HEmJ0uuCGZRNRUkZZmOB5mJKO0ZUTVq+SxMQg==", + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", "dev": true, "requires": { - "@nodelib/fs.stat": "^2.0.1", - "@nodelib/fs.walk": "^1.2.1", - "glob-parent": "^5.0.0", - "is-glob": "^4.0.1", + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", "merge2": "^1.2.3", - "micromatch": "^4.0.2" - }, - "dependencies": { - "glob-parent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", - "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", - "dev": true, - "requires": { - "is-glob": "^4.0.1" - } - } + "micromatch": "^3.1.10" } }, "fast-json-stable-stringify": { @@ -5974,12 +5932,26 @@ "dev": true }, "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "to-regex-range": "^5.0.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } } }, "finalhandler": { @@ -6069,138 +6041,33 @@ "is-glob": "^4.0.0", "micromatch": "^3.0.4", "resolve-dir": "^1.0.1" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" }, "dependencies": { "isarray": { @@ -6407,12 +6274,12 @@ "dev": true }, "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.6.tgz", + "integrity": "sha512-crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ==", "dev": true, "requires": { - "minipass": "^2.6.0" + "minipass": "^2.2.1" } }, "fs-write-stream-atomic": { @@ -7145,17 +7012,32 @@ "dev": true, "requires": { "global-prefix": "^3.0.0" + }, + "dependencies": { + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } + } } }, "global-prefix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", - "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", "dev": true, "requires": { - "ini": "^1.3.5", - "kind-of": "^6.0.2", - "which": "^1.3.1" + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" } }, "globals": { @@ -7284,26 +7166,6 @@ "kind-of": "^4.0.0" }, "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", @@ -7572,130 +7434,170 @@ "is-glob": "^4.0.0", "lodash": "^4.17.11", "micromatch": "^3.1.10" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "husky": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/husky/-/husky-3.0.5.tgz", + "integrity": "sha512-cKd09Jy9cDyNIvAdN2QQAP/oA21sle4FWXjIMDttailpLAYZuBE7WaPmhrkj+afS8Sj9isghAtFvWSQ0JiwOHg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "cosmiconfig": "^5.2.1", + "execa": "^1.0.0", + "get-stdin": "^7.0.0", + "is-ci": "^2.0.0", + "opencollective-postinstall": "^2.0.2", + "pkg-dir": "^4.2.0", + "please-upgrade-node": "^3.2.0", + "read-pkg": "^5.1.1", + "run-node": "^1.0.0", + "slash": "^3.0.0" }, "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", "dev": true, "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" } }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "get-stdin": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz", + "integrity": "sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "pump": "^3.0.0" } }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" } }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "parse-json": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", + "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "find-up": "^4.0.0" } + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + } + }, + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true } } }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -7733,9 +7635,9 @@ "dev": true }, "image-size": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.7.5.tgz", - "integrity": "sha512-Hiyv+mXHfFEP7LzUL/llg9RwFxxY+o9N3JVLIeG5E7iFIFAalxvRU9UZthBdYDEVnzHMgjnKJPPpay5BWf1g9g==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.7.4.tgz", + "integrity": "sha512-GqPgxs+VkOr12aWwjSkyRzf5atzObWpFtiRuDgxCl2I/SDpZOKZFRD3iIAeAN6/usmn8SeLWRt7a8JRYK0Whbw==", "dev": true }, "import-cwd": { @@ -8018,6 +7920,23 @@ "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", "dev": true }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "requires": { + "ci-info": "^2.0.0" + }, + "dependencies": { + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + } + } + }, "is-color-stop": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", @@ -8114,9 +8033,9 @@ "dev": true }, "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", + "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "dev": true, "requires": { "is-extglob": "^2.1.1" @@ -8129,10 +8048,24 @@ "dev": true }, "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } }, "is-obj": { "version": "1.0.1", @@ -8162,24 +8095,16 @@ "dev": true, "requires": { "is-path-inside": "^2.1.0" - }, - "dependencies": { - "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", - "dev": true, - "requires": { - "path-is-inside": "^1.0.2" - } - } } }, "is-path-inside": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.1.tgz", - "integrity": "sha512-CKstxrctq1kUesU6WhtZDbYKzzYBuRH0UYInAVrkc/EYdB9ltbfE0gOoayG9nhohG6447sOOVGhHqsdmBvkbNg==", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "dev": true, + "requires": { + "path-is-inside": "^1.0.2" + } }, "is-plain-obj": { "version": "1.1.0", @@ -8553,6 +8478,12 @@ "type-check": "~0.3.2" } }, + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, "linkify-it": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.2.0.tgz", @@ -8583,6 +8514,15 @@ "stringify-object": "^3.3.0" }, "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, "commander": { "version": "2.20.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", @@ -8598,11 +8538,54 @@ "ms": "^2.1.1" } }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "dev": true, + "requires": { + "chalk": "^2.4.2" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } } } }, @@ -8628,12 +8611,6 @@ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true - }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true } } }, @@ -9076,6 +9053,12 @@ "yargs-parser": "^10.0.0" }, "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, "load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -9133,6 +9116,15 @@ "find-up": "^2.0.0", "read-pkg": "^3.0.0" } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } } } }, @@ -9149,9 +9141,9 @@ "dev": true }, "merge2": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", - "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", + "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==", "dev": true }, "methods": { @@ -9161,13 +9153,24 @@ "dev": true }, "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" } }, "miller-rabin": { @@ -9271,9 +9274,9 @@ } }, "minipass": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.6.2.tgz", - "integrity": "sha512-38Jwdc8AttUDaQAIRX8Iaw3QoCDWjAwKMGeGDF9JUi9QCPMjH5qAQg/hdO8o1nC7Nmh1/CqzMg5FQPEKuKwznQ==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.5.1.tgz", + "integrity": "sha512-dmpSnLJtNQioZFI5HfQ55Ad0DzzsMAb+HfokwRTNXwEQjepbTkl5mtIlSVxGIkOkxlpX7wIn5ET/oAd9fZ/Y/Q==", "dev": true, "requires": { "safe-buffer": "^5.1.2", @@ -9281,9 +9284,9 @@ } }, "minizlib": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.2.tgz", - "integrity": "sha512-hR3At21uSrsjjDTWrbu0IMLTpnkpv8IIMFDFaoz43Tmu4LkmAXfH44vNNzpTnf+OAQQCHrb91y/wc2J4x5XgSQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", "dev": true, "requires": { "minipass": "^2.2.1" @@ -9308,9 +9311,9 @@ } }, "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "dev": true, "requires": { "for-in": "^1.0.2", @@ -9961,6 +9964,12 @@ "mimic-fn": "^1.0.0" } }, + "opencollective-postinstall": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz", + "integrity": "sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw==", + "dev": true + }, "opn": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", @@ -10110,13 +10119,10 @@ } }, "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "dev": true }, "p-retry": { "version": "3.0.1", @@ -11126,9 +11132,9 @@ "dev": true }, "prebuild-install": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.2.tgz", - "integrity": "sha512-INDfXzTPnhT+WYQemqnAXlP7SvfiFMopMozSgXCZ+RDLb279gKfIuLk4o7PgEawLp3WrMgIYGBpkxpraROHsSA==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.1.tgz", + "integrity": "sha512-lRLBU0JPXBbpC/ER9PtVYYk1y9Rme1WiMA3WKEQ4v78A5kTsqQtrEyYlbghvXCA6Uhr/769SkhibQznjDBRZpg==", "dev": true, "requires": { "detect-libc": "^1.0.3", @@ -11478,105 +11484,12 @@ "readable-stream": "^2.0.2" }, "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, "readable-stream": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", @@ -11600,16 +11513,6 @@ "requires": { "safe-buffer": "~5.1.0" } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } } } }, @@ -11685,9 +11588,9 @@ "dev": true }, "regexpu-core": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", - "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", + "version": "4.5.5", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.5.tgz", + "integrity": "sha512-FpI67+ky9J+cDizQUJlIlNZFKual/lUkFr1AG6zOCpwZ9cLrg8UUVakyUQJD7fCDIe9Z2nwTQJNPyonatNmDFQ==", "dev": true, "requires": { "regenerate": "^1.4.0", @@ -12014,19 +11917,6 @@ "is-windows": "^1.0.1", "resolve-dir": "^1.0.0" } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } } } }, @@ -12110,6 +12000,12 @@ "is-promise": "^2.1.0" } }, + "run-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/run-node/-/run-node-1.0.0.tgz", + "integrity": "sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A==", + "dev": true + }, "run-parallel": { "version": "1.1.9", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", @@ -12288,9 +12184,9 @@ "dev": true }, "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "dev": true, "requires": { "extend-shallow": "^2.0.1", @@ -13214,12 +13110,6 @@ "v8-compile-cache": "^2.1.0" }, "dependencies": { - "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", - "dev": true - }, "ansi-regex": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", @@ -13227,32 +13117,12 @@ "dev": true }, "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "fill-range": "^7.0.1" } }, "debug": { @@ -13270,64 +13140,13 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", - "dev": true, - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - } - } - }, "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "to-regex-range": "^5.0.1" } }, "get-stdin": { @@ -13379,24 +13198,10 @@ "dev": true }, "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true }, "lodash": { "version": "4.17.15", @@ -13404,6 +13209,16 @@ "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", "dev": true }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -13449,13 +13264,12 @@ } }, "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "is-number": "^7.0.0" } } } @@ -13558,21 +13372,21 @@ "dev": true }, "table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.1.tgz", + "integrity": "sha512-E6CK1/pZe2N75rGZQotFOdmzWQ1AILtgYbMAbAjvms0S1l5IDB47zG3nCnFGB/w+7nB3vKofbLXCH7HPBo864w==", "dev": true, "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", + "ajv": "^6.9.1", + "lodash": "^4.17.11", "slice-ansi": "^2.1.0", "string-width": "^3.0.0" }, "dependencies": { "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", "dev": true, "requires": { "fast-deep-equal": "^2.0.1", @@ -13587,12 +13401,6 @@ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "dev": true }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -14043,12 +13851,13 @@ } }, "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "dev": true, "requires": { - "is-number": "^7.0.0" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" } }, "toidentifier": { @@ -14249,15 +14058,38 @@ } }, "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", - "set-value": "^2.0.1" + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } } }, "uniq": { @@ -14694,35 +14526,6 @@ "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", "dev": true }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "cacache": { "version": "12.0.3", "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz", @@ -14756,29 +14559,6 @@ "estraverse": "^4.1.1" } }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "glob": { "version": "7.1.4", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", @@ -14793,47 +14573,6 @@ "path-is-absolute": "^1.0.0" } }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, "tapable": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", @@ -14857,16 +14596,6 @@ "worker-farm": "^1.7.0" } }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, "webpack-sources": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", @@ -15065,12 +14794,6 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - }, "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -15529,34 +15252,17 @@ "requires": { "ansi-regex": "^4.1.0" } - }, - "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", "dev": true, "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - } + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } diff --git a/package.json b/package.json index 2e7b64d..bcec18d 100644 --- a/package.json +++ b/package.json @@ -1,22 +1,22 @@ { - "name": "phaser3-project-template", - "description": "A Phaser 3 Project Template", - "version": "1.1.0", - "homepage": "https://github.com/Autapomorph/phaser3-project-template", + "name": "dino", + "description": "A Chrome Dino game clone built with Phaser 3", + "version": "1.0.0", + "homepage": "https://github.com/Autapomorph/dino", "author": "Autapomorph (https://github.com/Autapomorph)", "repository": { "type": "git", - "url": "git+https://github.com/Autapomorph/phaser3-project-template.git" + "url": "git+https://github.com/Autapomorph/dino" }, - "license": "MIT", - "licenseUrl": "http://www.opensource.org/licenses/mit-license.php", "bugs": { - "url": "https://github.com/Autapomorph/phaser3-project-template/issues" + "url": "https://github.com/Autapomorph/dino/issues" }, + "license": "MIT", + "licenseUrl": "http://www.opensource.org/licenses/mit-license.php", "main": "src/index.js", "scripts": { "start": "webpack-dev-server --config webpack/base.js --open", - "build": "webpack --config webpack/prod.js ", + "build": "webpack --config webpack/prod.js", "now-build": "npm run build && mv dist public", "lint": "run-s -c lint:js lint:styles", "lint:js": "eslint src/**/*.js", @@ -44,6 +44,7 @@ "file-loader": "^4.2.0", "friendly-errors-webpack-plugin": "^1.7.0", "html-webpack-plugin": "^3.2.0", + "husky": "^3.0.5", "lint-staged": "^9.2.5", "mini-css-extract-plugin": "^0.8.0", "npm-run-all": "^4.1.5", diff --git a/src/Game.js b/src/Game.js index bbc0cb4..8d6d3b4 100644 --- a/src/Game.js +++ b/src/Game.js @@ -1,27 +1,82 @@ import Phaser from 'phaser'; -import BootScene from './scenes/Boot'; -import LoaderScene from './scenes/Loader'; -import MainMenuScene from './scenes/menu/MainMenu'; -import GameScene from './scenes/Game'; +import CONFIG from './config/game'; +import BootScene from './scenes/boot/BootScene'; +import GameScene from './scenes/game/GameScene'; +/** + * Game + * @class Game + * @extends {Phaser.Game} + */ class Game extends Phaser.Game { + static CONFIG = CONFIG.GAME; + + /** + * Creates an instance of Game + * @param {Phaser.Types.Core.GameConfig} config - Game config + */ constructor(config) { super(config); + this.initEventHandlers(); this.addScenes(); this.startScene(); } + /** + * Init event handlers + */ + initEventHandlers() { + this.scale.on('resize', () => { + this.resize(this.scale.parentSize); + }); + } + + /** + * Add scenes to game + */ addScenes() { - this.scene.add(BootScene.name, BootScene); - this.scene.add(LoaderScene.name, LoaderScene); - this.scene.add(MainMenuScene.name, MainMenuScene); - this.scene.add(GameScene.name, GameScene); + this.scene.add(BootScene.CONFIG.NAME, BootScene); + this.scene.add(GameScene.CONFIG.NAME, GameScene); } + /** + * Start scene + */ startScene() { - this.scene.start(BootScene.name, { scene: MainMenuScene.name, sceneTimerDelay: 3000 }); + this.scene.start(BootScene.CONFIG.NAME); + } + + /** + * Resize game + * @param {Phaser.Structs.Size} parentSize - Current parent size + */ + resize(parentSize) { + const { width: parentWidth, height: parentHeight } = parentSize; + + let width; + let height; + + if (parentWidth < parentHeight) { + width = Game.CONFIG.WIDTH.PORTRAIT; + height = Game.CONFIG.HEIGHT; + } else { + width = Game.CONFIG.WIDTH.LANDSCAPE; + height = Game.CONFIG.HEIGHT; + } + + this.canvas.style.width = `${parentWidth}px`; + this.canvas.style.height = `${height * (parentWidth / width)}px`; + + if (parentWidth === this.prevParentWidth && parentHeight === this.prevParentHeight) { + return; + } + + this.prevParentWidth = parentWidth; + this.prevParentHeight = parentHeight; + + this.scale.setGameSize(width, height); } } diff --git a/src/config/game/events/index.js b/src/config/game/events/index.js new file mode 100644 index 0000000..f1f5cd1 --- /dev/null +++ b/src/config/game/events/index.js @@ -0,0 +1,16 @@ +const EVENTS = { + GAME_START: 'GAME_START', + GAME_OVER: 'GAME_OVER', + GAME_RESTART: 'GAME_RESTART', + + GAME_INTRO_START: 'GAME_INTRO_START', + GAME_INTRO_COMPLETE: 'GAME_INTRO_COMPLETE', + + PLAYER_ACTION: 'PLAYER_ACTION', + + HIGH_SCORE_RECORD: 'HIGH_SCORE_RECORD', + HIGH_SCORE_RESET: 'HIGH_SCORE_RESET', + ACHIEVEMENT: 'ACHIEVEMENT', +}; + +export default EVENTS; diff --git a/src/config/game/index.js b/src/config/game/index.js new file mode 100644 index 0000000..ad9292b --- /dev/null +++ b/src/config/game/index.js @@ -0,0 +1,18 @@ +import SCENES from './scenes'; +import PREFABS from './prefabs'; +import EVENTS from './events'; + +const CONFIG = { + GAME: { + WIDTH: { + PORTRAIT: 600, + LANDSCAPE: 1200, + }, + HEIGHT: 350, + }, + SCENES, + PREFABS, + EVENTS, +}; + +export default CONFIG; diff --git a/src/config/game/prefabs/bird.js b/src/config/game/prefabs/bird.js new file mode 100644 index 0000000..feee98d --- /dev/null +++ b/src/config/game/prefabs/bird.js @@ -0,0 +1,18 @@ +const BIRD = { + FRAMES: { + INITIAL: 'bird-1', + FLYING: ['bird-1', 'bird-2'], + }, + POS: { + Y: [225, 250, 275], + Y_MOBILE: [225, 275], + }, + GAP: { + MIN: 120, + }, + SPEED: { + OFFSET: [0.8, -0.8], + }, +}; + +export default BIRD; diff --git a/src/config/game/prefabs/cactus.js b/src/config/game/prefabs/cactus.js new file mode 100644 index 0000000..a71d9b0 --- /dev/null +++ b/src/config/game/prefabs/cactus.js @@ -0,0 +1,12 @@ +const CACTUS = { + TYPES: ['small', 'large'], + SIZES: [1, 2, 3], + POS: { + Y: 327, + }, + GAP: { + MIN: 100, + }, +}; + +export default CACTUS; diff --git a/src/config/game/prefabs/cloud.js b/src/config/game/prefabs/cloud.js new file mode 100644 index 0000000..a0c5466 --- /dev/null +++ b/src/config/game/prefabs/cloud.js @@ -0,0 +1,15 @@ +const CLOUD = { + SPEED: 2, + POS: { + Y: { + MIN: 100, + MAX: 200, + }, + }, + GAP: { + MIN: 200, + MAX: 500, + }, +}; + +export default CLOUD; diff --git a/src/config/game/prefabs/ground.js b/src/config/game/prefabs/ground.js new file mode 100644 index 0000000..f0561dd --- /dev/null +++ b/src/config/game/prefabs/ground.js @@ -0,0 +1,13 @@ +const GROUND = { + POS: { + X: 0, + Y: 350, + }, + BODY: { + OFFSET: { + Y: 25, + }, + }, +}; + +export default GROUND; diff --git a/src/config/game/prefabs/index.js b/src/config/game/prefabs/index.js new file mode 100644 index 0000000..4630d08 --- /dev/null +++ b/src/config/game/prefabs/index.js @@ -0,0 +1,21 @@ +import PLAYER from './player'; +import BIRD from './bird'; +import CACTUS from './cactus'; +import GROUND from './ground'; +import CLOUD from './cloud'; +import STAR from './star'; +import MOON from './moon'; + +const PREFABS = { + PLAYER, + OBSTACLES: { + BIRD, + CACTUS, + }, + GROUND, + CLOUD, + STAR, + MOON, +}; + +export default PREFABS; diff --git a/src/config/game/prefabs/moon.js b/src/config/game/prefabs/moon.js new file mode 100644 index 0000000..9e8413e --- /dev/null +++ b/src/config/game/prefabs/moon.js @@ -0,0 +1,9 @@ +const MOON = { + FRAMES: ['moon-7', 'moon-6', 'moon-5', 'moon-1', 'moon-4', 'moon-3', 'moon-2'], + SPEED: 1, + POS: { + Y: 50, + }, +}; + +export default MOON; diff --git a/src/config/game/prefabs/player.js b/src/config/game/prefabs/player.js new file mode 100644 index 0000000..0e62ce0 --- /dev/null +++ b/src/config/game/prefabs/player.js @@ -0,0 +1,37 @@ +const PLAYER = { + FRAMES: { + INITIAL: 'dino-idle-1', + IDLING: ['dino-idle-1', 'dino-idle-2'], + RUNNING: ['dino-run-1', 'dino-run-2'], + DUCKING: ['dino-duck-1', 'dino-duck-2'], + JUMPING: 'dino-idle-1', + DEAD: 'dino-dead', + }, + POS: { + INITIAL_X: 0, + X: 50, + Y: 325, + }, + GRAVITY: { + Y: 2500, + }, + JUMP: { + VELOCITY: { + Y: 1675 * -1, + }, + ACCELERATION: 3200, + }, + BLINK: { + DURATION: 100, + DELAY: 7000, + }, + STATES: { + IDLING: 'IDLING', + RUNNING: 'RUNNING', + DUCKING: 'DUCKING', + JUMPING: 'JUMPING', + DEAD: 'DEAD', + }, +}; + +export default PLAYER; diff --git a/src/config/game/prefabs/star.js b/src/config/game/prefabs/star.js new file mode 100644 index 0000000..1c9f58d --- /dev/null +++ b/src/config/game/prefabs/star.js @@ -0,0 +1,12 @@ +const STAR = { + FRAMES: ['star-1', 'star-2', 'star-3'], + SPEED: 1.2, + POS: { + Y: { + MIN: 0, + MAX: 150, + }, + }, +}; + +export default STAR; diff --git a/src/config/game/scenes/boot.js b/src/config/game/scenes/boot.js new file mode 100644 index 0000000..19d4c16 --- /dev/null +++ b/src/config/game/scenes/boot.js @@ -0,0 +1,5 @@ +const BOOT = { + NAME: 'SCENE_BOOT', +}; + +export default BOOT; diff --git a/src/config/game/scenes/game.js b/src/config/game/scenes/game.js new file mode 100644 index 0000000..769e803 --- /dev/null +++ b/src/config/game/scenes/game.js @@ -0,0 +1,113 @@ +const GAME = { + NAME: 'SCENE_GAME', + GAME: { + SCORE: { + MAX_LENGTH: 5, + COEFFICIENT: 0.02, + POS: { + X: { + OFFSET: 0.95, + }, + Y: 10, + }, + ACHIEVEMENT: { + DISTANCE: 100, + FLASH: { + DURATION: 250, + ITERATIONS: 3, + }, + }, + }, + HIGH_SCORE: { + STORAGE_KEY: 'dino-highScore', + POS: { + X: { + OFFSET: 15, + }, + Y: 10, + }, + GAMEOVER: { + FLASH: { + DURATION: 250, + ITERATIONS: 4, + }, + }, + }, + OBSTACLES: { + TYPES: { + BIRD: { + FRAME: 'bird', + SPAWN: { + SPEED: { + MIN: 12, + MIN_MOBILE: 10, + }, + }, + }, + CACTUS: { + SMALL: { + FRAME: 'cactus-small', + SIZING: { + SPEED: { + MIN: 10, + MIN_MOBILE: 8, + }, + }, + }, + LARGE: { + FRAME: 'cactus-large', + SIZING: { + SPEED: { + MIN: 11, + MIN_MOBILE: 9, + }, + }, + }, + }, + }, + ACCELERATION: 0.001, + SPEED: { + INITIAL: 10, + MAX: 17, + MOBILE_COEFFICIENT: 1.2, + }, + GAP: { + MAX_MULIPLIER: 1.5, + }, + SPAWN: { + DELAY: 3000, + MAX_DUPLICATION: 2, + }, + }, + }, + GAMEOVER: { + VIBRATION: 200, + }, + RESTART: { + COOLDOWN: 750, + }, + INTRO: { + STATES: { + WAITING: 'WAITING', + STARTED: 'STARTED', + COMPLETE: 'COMPLETE', + }, + DURATION: 400, + CAMERA: { + WIDTH: 90, + }, + }, + NIGHTMODE: { + DISTANCE: 700, + DURATION: 12000, + FADE_DURATION: 250, + STARS: { + MAX_COUNT: 2, + }, + }, + STYLES: { + TRANSITION: 'width 250ms linear, height 250ms linear', + }, +}; + +export default GAME; diff --git a/src/config/game/scenes/index.js b/src/config/game/scenes/index.js new file mode 100644 index 0000000..2818f67 --- /dev/null +++ b/src/config/game/scenes/index.js @@ -0,0 +1,9 @@ +import BOOT from './boot'; +import GAME from './game'; + +const SCENES = { + BOOT, + GAME, +}; + +export default SCENES; diff --git a/src/config/index.js b/src/config/index.js index 6b619e2..4a4b1f5 100644 --- a/src/config/index.js +++ b/src/config/index.js @@ -3,22 +3,24 @@ import Phaser from 'phaser'; import { isProd } from '../utils'; const config = { - title: 'Phaser 3 Project Template', - url: 'https://example.org', + title: 'Dino', + url: 'https://github.com/Autapomorph/dino', version: '1.0', type: Phaser.AUTO, - backgroundColor: '#000', - render: { pixelArt: false }, + backgroundColor: '#fff', banner: !isProd, + render: { + antialias: false, + }, scale: { - width: 800, - height: 600, - mode: Phaser.Scale.ScaleModes.FIT, + width: 1200, + height: 350, + mode: Phaser.Scale.ScaleModes.NONE, }, physics: { default: 'arcade', arcade: { - gravity: { y: 200, x: 0 }, + gravity: { y: 0 }, debug: !isProd, }, }, diff --git a/src/config/scenes.js b/src/config/scenes.js deleted file mode 100644 index 9616ea0..0000000 --- a/src/config/scenes.js +++ /dev/null @@ -1,6 +0,0 @@ -const scenes = { - MainMenuScene: 'assets/scenes/menu/main.json', - GameScene: 'assets/scenes/game.json', -}; - -export default scenes; diff --git a/src/prefabs/Player.js b/src/prefabs/Player.js deleted file mode 100644 index d0e0693..0000000 --- a/src/prefabs/Player.js +++ /dev/null @@ -1,43 +0,0 @@ -import Phaser from 'phaser'; - -class Player extends Phaser.GameObjects.Sprite { - constructor(scene, x, y, texture = 'player', frame) { - super(scene, x, y, texture, frame); - - this.init(); - this.scene.add.existing(this); - } - - init() { - // image - this.setScale(0.1, 0.1); - - // physics - this.scene.physics.world.enable(this); - this.body.setCollideWorldBounds(true); - this.body.setMaxVelocity(500); - this.body.setAngularDrag(15); - this.body.maxAngular = 100; - this.body.setBounceY(1); - - // input - this.cursors = this.scene.input.keyboard.createCursorKeys(); - } - - update() { - if (this.body.onFloor()) { - const camera = this.scene.cameras.main; - camera.shakeEffect.reset(); - camera.shake(1000, 0.01); - } - - this.body.setAngularAcceleration(0); - if (this.cursors.left.isDown) { - this.body.setAngularAcceleration(-100); - } else if (this.cursors.right.isDown) { - this.body.setAngularAcceleration(100); - } - } -} - -export default Player; diff --git a/src/prefabs/SceneButton.js b/src/prefabs/SceneButton.js deleted file mode 100644 index 27a5cb0..0000000 --- a/src/prefabs/SceneButton.js +++ /dev/null @@ -1,36 +0,0 @@ -import Phaser from 'phaser'; - -import BootScene from '../scenes/Boot'; - -class SceneButton extends Phaser.GameObjects.Container { - constructor({ scene, nextScene, x, y, text, textures }) { - super(scene); - - this.scene = scene; - this.x = x; - this.y = y; - - this.button = this.scene.add.sprite(0, 0, textures.default).setInteractive(); - this.text = this.scene.add.text(0, 0, text, { fontSize: '32px', fill: '#fff' }); - Phaser.Display.Align.In.Center(this.text, this.button); - - this.add(this.button); - this.add(this.text); - - this.button.on('pointerdown', () => { - this.scene.scene.start(BootScene.name, { scene: nextScene }); - }); - - this.button.on('pointerover', () => { - this.button.setTexture(textures.hover); - }); - - this.button.on('pointerout', () => { - this.button.setTexture(textures.default); - }); - - this.scene.add.existing(this); - } -} - -export default SceneButton; diff --git a/src/prefabs/horizon/Horizon.js b/src/prefabs/horizon/Horizon.js new file mode 100644 index 0000000..022bfea --- /dev/null +++ b/src/prefabs/horizon/Horizon.js @@ -0,0 +1,112 @@ +import CONFIG from '../../config/game'; + +import Ground from './ground/Ground'; +import Obstacles from './obstacles/Obstacles'; +import Clouds from './clouds/Clouds'; +import NightMode from './NightMode'; + +/** + * Horizon + * @class Horizon + */ +class Horizon { + static CONFIG = { + OBSTACLES: CONFIG.SCENES.GAME.GAME.OBSTACLES, + CLOUDS: CONFIG.PREFABS.CLOUD, + }; + + /** + * Creates an instance of Horizon + * @param {Phaser.Scene} scene - The Scene to which this Horizon belongs + */ + constructor(scene) { + this.scene = scene; + + this.init(); + } + + /** + * Init + */ + init() { + this.initVars(); + this.initEventHandlers(); + } + + /** + * Init variables + */ + initVars() { + const { scene } = this; + + this.ground = new Ground(scene); + this.obstacles = new Obstacles(scene); + this.clouds = new Clouds(scene); + this.nightMode = new NightMode(scene); + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.scene.events.on(CONFIG.EVENTS.GAME_INTRO_COMPLETE, this.start, this); + this.scene.events.on(CONFIG.EVENTS.GAME_RESTART, this.reset, this); + } + + /** + * Set 1st horizon state + */ + start() { + const { speed } = this.scene; + + this.spawnInitialCloud(speed); + this.spawnInitialObstacle(speed); + } + + /** + * Spawn 1st cloud + * @param {number} speed - Current game speed + */ + spawnInitialCloud(speed) { + this.clouds.spawnItem(speed); + } + + /** + * Spawn 1st obstacle + * @param {number} speed - Current game speed + * @param {boolean} isMobile - Whether game is running in mobile mode + */ + spawnInitialObstacle(speed, isMobile) { + const obstacleSpawnDelay = Horizon.CONFIG.OBSTACLES.SPAWN.DELAY; + + this.scene.time.delayedCall(obstacleSpawnDelay, () => + this.obstacles.spawnItem(speed, isMobile), + ); + } + + /** + * Update horizon + * @param {number} speed - Current game speed + * @param {boolean} isMobile - Whether game is running in mobile mode + */ + update(speed, isMobile) { + this.ground.update(speed); + this.obstacles.update(speed, isMobile); + this.clouds.update(Horizon.CONFIG.CLOUDS.SPEED); + this.nightMode.update(); + } + + /** + * Reset horizon + */ + reset() { + const { speed } = this.scene; + + this.ground.reset(); + this.obstacles.reset(); + this.nightMode.reset(); + this.spawnInitialObstacle(speed); + } +} + +export default Horizon; diff --git a/src/prefabs/horizon/HorizonItems.js b/src/prefabs/horizon/HorizonItems.js new file mode 100644 index 0000000..510b411 --- /dev/null +++ b/src/prefabs/horizon/HorizonItems.js @@ -0,0 +1,73 @@ +import Phaser from 'phaser'; + +/** + * HorizonItems Group + * @class HorizonItems + * @extends {Phaser.Physics.Arcade.Group} + */ +class HorizonItems extends Phaser.Physics.Arcade.Group { + /** + * Creates an instance of HorizonItems + * @param {Phaser.Scene} scene - The Scene to which this HorizonItems group belongs + */ + constructor(scene) { + super(scene.physics.world, scene); + } + + /** + * Update horizon items group + * @param {number} speed - Current game speed + * @param {boolean} isMobile - Whether game is running in mobile mode + */ + update(speed, isMobile) { + const { width } = this.scene.scale.gameSize; + + this.children.each(item => item.update(speed)); + + const lastItem = this.getLast(true); + if (lastItem && lastItem.x + lastItem.width + lastItem.gap < width) { + this.clearItems(); + this.spawnItem(speed, isMobile); + } + } + + /** + * Spawn horizon item + * @param {number} speed - Current game speed + * @param {boolean} isMobile - Whether game is running in mobile mode + * @abstract + */ + // eslint-disable-next-line class-methods-use-this, no-unused-vars + spawnItem(speed, isMobile) { + throw new Error('Method must be implemented by subclass'); + } + + /** + * Clear horizon items group + */ + clearItems() { + const lastItem = this.getLast(true); + + // clear every invisible item except last + this.children.each(item => { + if (item !== lastItem && !item.visible) { + item.die(); + } + }); + + // clear last item if it is invisible + if (lastItem && !lastItem.visible) { + lastItem.die(); + } + } + + /** + * Reset horizon items group + */ + reset() { + this.children.each(item => item.reset()); + this.clear(true, true); + } +} + +export default HorizonItems; diff --git a/src/prefabs/horizon/NightMode.js b/src/prefabs/horizon/NightMode.js new file mode 100644 index 0000000..64b9660 --- /dev/null +++ b/src/prefabs/horizon/NightMode.js @@ -0,0 +1,143 @@ +import CONFIG from '../../config/game'; +import Stars from './stars/Stars'; +import Moon from './moon/Moon'; + +/** + * NightMode + * @class NightMode + */ +class NightMode { + static CONFIG = { + NIGHTMODE: CONFIG.SCENES.GAME.NIGHTMODE, + MOON: CONFIG.PREFABS.MOON, + STARS: CONFIG.PREFABS.STAR, + }; + + /** + * Creates an instance of NightMode + * @param {Phaser.Scene} scene - The Scene to which this NightMode belongs + */ + constructor(scene) { + this.scene = scene; + + this.init(); + } + + /** + * Init + */ + init() { + this.initVars(); + this.initParent(); + } + + /** + * Init variables + */ + initVars() { + const { scene } = this; + const { width } = scene.scale.gameSize; + + this.isEnabled = false; + + this.moon = new Moon(scene, width - 50, NightMode.CONFIG.MOON.POS.Y); + this.moon.setAlpha(0); + + this.stars = new Stars(scene); + this.stars.spawnItems(); + this.stars.children.each(star => star.setAlpha(0)); + } + + /** + * Init game DOM parent + */ + initParent() { + const { FADE_DURATION } = NightMode.CONFIG.NIGHTMODE; + + this.canvas = this.scene.game.canvas; + this.parent = this.scene.game.scale.parent; + this.canvas.style.transition = `${CONFIG.SCENES.GAME.STYLES.TRANSITION}, filter ${FADE_DURATION}ms linear`; + this.parent.style.transition = `background-color ${FADE_DURATION}ms linear`; + } + + /** + * Update nightmode + */ + update() { + const { width } = this.scene.scale.gameSize; + const { moon, stars } = this; + + if (this.isEnabled) { + moon.update(NightMode.CONFIG.MOON.SPEED); + stars.update(NightMode.CONFIG.STARS.SPEED); + + if (moon.x + moon.width < 0) { + moon.setX(width); + } + } + } + + /** + * Check if nightmode is enabled + * @returns {boolean} + */ + get isEnabled() { + return this.enabled; + } + + /** + * Set nightmode enabled property + * @returns {boolean} + */ + set isEnabled(isEnabled) { + this.enabled = isEnabled; + } + + /** + * Enable nightmode + */ + enable() { + this.stars.shuffleItems(); + + this.scene.tweens.add({ + targets: [this.moon, ...this.stars.getChildren()], + duration: NightMode.CONFIG.NIGHTMODE.FADE_DURATION, + alpha: 1, + onStart: () => { + this.isEnabled = true; + this.canvas.style.filter = 'invert(1)'; + this.parent.style.backgroundColor = '#000'; + }, + }); + } + + /** + * Disable nightmode + * @param {function} [onComplete=() => {}] - A function to be executed after disabling nightmode + */ + disable(onComplete = () => {}) { + this.scene.tweens.add({ + targets: [this.moon, ...this.stars.getChildren()], + duration: NightMode.CONFIG.NIGHTMODE.FADE_DURATION, + alpha: 0, + onStart: () => { + this.canvas.style.filter = 'invert(0)'; + this.parent.style.backgroundColor = '#fff'; + }, + onComplete: () => { + this.isEnabled = false; + this.moon.nextPhase(); + onComplete(); + }, + }); + } + + /** + * Reset nightmode + */ + reset() { + this.disable(() => this.moon.reset()); + } +} + +export default NightMode; diff --git a/src/prefabs/horizon/clouds/Cloud.js b/src/prefabs/horizon/clouds/Cloud.js new file mode 100644 index 0000000..8b25345 --- /dev/null +++ b/src/prefabs/horizon/clouds/Cloud.js @@ -0,0 +1,80 @@ +import Phaser from 'phaser'; + +/** + * Cloud + * @class Cloud + * @extends {Phaser.GameObjects.Image} + */ +class Cloud extends Phaser.GameObjects.Image { + /** + * Creates an instance of Cloud + * @param {Phaser.Scene} scene - The Scene to which this Cloud belongs + * @param {number} x - The horizontal position of this Cloud in the world + * @param {number} y - The vertical position of this Cloud in the world + */ + constructor(scene, x, y) { + super(scene, x, y, 'dino', 'cloud'); + + this.init(); + this.scene.add.existing(this); + } + + /** + * Init + */ + init() { + this.initVars(); + this.initImage(); + } + + /** + * Init variables + */ + initVars() { + this.gap = 0; + } + + /** + * Init image + */ + initImage() { + this.setOrigin(0, 0); + this.setDepth(300); + } + + /** + * Update cloud + * @param {number} speed - Current game speed + */ + update(speed) { + this.move(speed); + + if (this.x + this.width < 0) { + this.setVisible(false); + } + } + + /** + * Move cloud + * @param {number} speed - Current game speed + */ + move(speed) { + this.x -= speed; + } + + /** + * Set cloud gap + */ + setGap(gap) { + this.gap = gap; + } + + /** + * Kill cloud + */ + die() { + this.destroy(); + } +} + +export default Cloud; diff --git a/src/prefabs/horizon/clouds/Clouds.js b/src/prefabs/horizon/clouds/Clouds.js new file mode 100644 index 0000000..af01354 --- /dev/null +++ b/src/prefabs/horizon/clouds/Clouds.js @@ -0,0 +1,32 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../config/game'; +import HorizonItems from '../HorizonItems'; +import Cloud from './Cloud'; + +/** + * Clouds Group + * @class Clouds + * @extends {HorizonItems} + */ +class Clouds extends HorizonItems { + static CONFIG = CONFIG.PREFABS.CLOUD; + + /** + * Spawn cloud + * @override + */ + spawnItem() { + const { width } = this.scene.scale.gameSize; + const CLOUD = Clouds.CONFIG; + + const y = Phaser.Math.RND.between(CLOUD.POS.Y.MIN, CLOUD.POS.Y.MAX); + const gap = Phaser.Math.RND.between(CLOUD.GAP.MIN, CLOUD.GAP.MAX); + + const newObstacle = new Cloud(this.scene, width, y); + newObstacle.setGap(gap); + this.add(newObstacle); + } +} + +export default Clouds; diff --git a/src/prefabs/horizon/ground/Ground.js b/src/prefabs/horizon/ground/Ground.js new file mode 100644 index 0000000..cafa058 --- /dev/null +++ b/src/prefabs/horizon/ground/Ground.js @@ -0,0 +1,86 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../config/game'; + +/** + * Ground + * @class Ground + * @extends {Phaser.GameObjects.TileSprite} + */ +class Ground extends Phaser.GameObjects.TileSprite { + static CONFIG = CONFIG.PREFABS.GROUND; + + /** + * Creates an instance of Ground + * @param {Phaser.Scene} scene - The Scene to which this Ground belongs + * @param {number} [x=Ground.CONFIG.POS.X] - The horizontal position of this Ground in the world + * @param {number} [y=Ground.CONFIG.POS.Y] - The vertical position of this Ground in the world + */ + constructor(scene, x = Ground.CONFIG.POS.X, y = Ground.CONFIG.POS.Y) { + super(scene, x, y, 0, 0, 'dino', 'ground'); + + this.init(); + this.scene.add.existing(this); + } + + /** + * Init + */ + init() { + this.initImage(); + this.initPhysics(); + } + + /** + * Init image + */ + initImage() { + const { width, height } = this.scene.scale.gameSize; + + this.setY(height); + this.setOrigin(0, 2); + this.setSize(width, this.height); + } + + /** + * Init physics + */ + initPhysics() { + this.scene.physics.world.enable(this, Phaser.Physics.Arcade.STATIC_BODY); + this.body.setOffset(0, Ground.CONFIG.BODY.OFFSET.Y); + } + + /** + * Update ground + * @param {number} speed - Current game speed + */ + update(speed) { + this.move(speed); + } + + /** + * Move ground + * @param {number} speed - Current game speed + */ + move(speed) { + this.tilePositionX += speed; + } + + /** + * Resize ground + * @param {Phaser.Structs.Size} gameSize - Current game size + */ + resize({ width }) { + this.width = width; + this.body.width = width; + } + + /** + * Reset ground + */ + reset() { + this.tilePositionX = 0; + } +} + +export default Ground; diff --git a/src/prefabs/horizon/moon/Moon.js b/src/prefabs/horizon/moon/Moon.js new file mode 100644 index 0000000..a6844b9 --- /dev/null +++ b/src/prefabs/horizon/moon/Moon.js @@ -0,0 +1,95 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../config/game'; + +/** + * Moon + * @class Moon + * @extends {Phaser.GameObjects.Image} + */ +class Moon extends Phaser.GameObjects.Image { + static CONFIG = CONFIG.PREFABS.MOON; + + /** + *Creates an instance of Moon + * @param {Phaser.Scene} scene - The Scene to which this Moon belongs + * @param {number} x - The horizontal position of this Moon in the world + * @param {number} y - The vertical position of this Moon in the world + * @param {Phaser.Animations.AnimationFrame} [frame=Moon.CONFIG.FRAMES[0]] - The frame to display this Moon phase + */ + constructor(scene, x, y, frame = Moon.CONFIG.FRAMES[0]) { + super(scene, x, y, 'dino', frame); + + this.init(); + this.scene.add.existing(this); + } + + /** + * Init + */ + init() { + this.initVars(); + this.initImage(); + } + + /** + * Init variables + */ + initVars() { + this.phase = 0; + } + + /** + * Init image + */ + initImage() { + this.setOrigin(0, 0); + this.setDepth(200); + } + + /** + * Update moon + * @param {number} speed - Current game speed + */ + update(speed) { + this.move(speed); + } + + /** + * Move moon + * @param {number} speed - Current game speed + */ + move(speed) { + this.x -= speed; + } + + /** + * Set moon phase + * @param {number} phase - Moon phase to be set + */ + setPhase(phase) { + if (phase >= Moon.CONFIG.FRAMES.length) { + this.phase = 0; + } else { + this.phase = phase; + } + + this.setFrame(Moon.CONFIG.FRAMES[this.phase]); + } + + /** + * Increment moon phase + */ + nextPhase() { + this.setPhase(this.phase + 1); + } + + /** + * Reset moon + */ + reset() { + this.setPhase(0); + } +} + +export default Moon; diff --git a/src/prefabs/horizon/obstacles/Obstacle.js b/src/prefabs/horizon/obstacles/Obstacle.js new file mode 100644 index 0000000..21f4dcb --- /dev/null +++ b/src/prefabs/horizon/obstacles/Obstacle.js @@ -0,0 +1,106 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../config/game'; + +/** + * Obstacle + * @class Obstacle + * @extends {Phaser.Physics.Arcade.Sprite} + */ +class Obstacle extends Phaser.Physics.Arcade.Sprite { + /** + * Creates an instance of Obstacle + * @param {Phaser.Scene} scene - The Scene to which this Obstacle belongs + * @param {number} x - The horizontal position of this Obstacle in the world + * @param {number} y - The vertical position of this Obstacle in the world + * @param {string} frame - The frame from the Texture this Obstacle is rendering with + */ + constructor(scene, x, y, frame) { + super(scene, x, y, 'dino', frame); + + this.init(); + this.scene.add.existing(this); + } + + /** + * Init + */ + init() { + this.initVars(); + this.initImage(); + this.initEventHandlers(); + } + + /** + * Init variables + */ + initVars() { + this.gap = 0; + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.scene.events.on(CONFIG.EVENTS.GAME_OVER, this.freeze, this); + } + + /** + * Init image + */ + initImage() { + this.setOrigin(0, 1); + this.setDepth(900); + } + + /** + * Update obstacle + * @param {number} speed - Current game speed + */ + update(speed) { + this.move(speed); + + if (this.x + this.width < 0) { + this.setVisible(false); + } + } + + /** + * Move obstacle + * @param {number} speed - Current game speed + */ + move(speed) { + this.x -= speed; + } + + /** + * Set obstacle gap + */ + setGap(gap) { + this.gap = gap; + } + + /** + * Freeze obstacle + */ + freeze() { + this.scene.events.off(CONFIG.EVENTS.GAME_OVER, this.freeze); + } + + /** + * Kill obstacle + */ + die() { + this.freeze(); + this.destroy(); + } + + /** + * Reset obstacle + */ + reset() { + this.die(); + } +} + +export default Obstacle; diff --git a/src/prefabs/horizon/obstacles/Obstacles.js b/src/prefabs/horizon/obstacles/Obstacles.js new file mode 100644 index 0000000..8522c28 --- /dev/null +++ b/src/prefabs/horizon/obstacles/Obstacles.js @@ -0,0 +1,157 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../config/game'; +import HorizonItems from '../HorizonItems'; +import Cactus from './cactus/Cactus'; +import Bird from './bird/Bird'; + +/** + * Obstacles Group + * @class Obstacles + * @extends {HorizonItems} + */ +class Obstacles extends HorizonItems { + static CONFIG = { + TYPES: CONFIG.SCENES.GAME.GAME.OBSTACLES.TYPES, + MAX_DUPLICATION: CONFIG.SCENES.GAME.GAME.OBSTACLES.SPAWN.MAX_DUPLICATION, + GAP: CONFIG.SCENES.GAME.GAME.OBSTACLES.GAP, + }; + + /** + * Creates an instance of Obstacles + * @param {Phaser.Scene} scene - The Scene to which this Obstacles group belongs + * @override + */ + constructor(scene) { + super(scene); + + this.initVars(); + } + + /** + * Init variables + */ + initVars() { + this.obstacleHistory = []; + } + + /** + * Check if next obstacle is duplicate + * @param {Obstacle} nextObstacle - next obstacle object + * @param {number} maxDuplication - max duplication count + * @returns {boolean} + */ + checkDuplication(nextObstacle, maxDuplication) { + if (this.obstacleHistory.some(obstacle => obstacle.FRAME !== nextObstacle.FRAME)) { + return false; + } + + return this.obstacleHistory.length >= maxDuplication; + } + + /** + * Spawn obstacle + * @param {number} speed - Current game speed + * @param {boolean} isMobile - Whether game is running in mobile mode + * @override + */ + spawnItem(speed, isMobile) { + const { MAX_DUPLICATION } = Obstacles.CONFIG; + const { BIRD, CACTUS } = Obstacles.CONFIG.TYPES; + let obstacleType; + + // only allow bird spawn if we have enough speed + if (speed > BIRD.SPAWN.SPEED.MIN) { + obstacleType = Phaser.Math.RND.pick([BIRD, CACTUS.SMALL, CACTUS.LARGE]); + } else { + obstacleType = Phaser.Math.RND.pick([CACTUS.SMALL, CACTUS.LARGE]); + } + + if (this.checkDuplication(obstacleType, MAX_DUPLICATION)) { + this.spawnItem(speed, isMobile); + return; + } + + this.obstacleHistory.push(obstacleType); + if (this.obstacleHistory.length > MAX_DUPLICATION) { + this.obstacleHistory = this.obstacleHistory.slice(-MAX_DUPLICATION); + } + + if (obstacleType === BIRD) { + this.spawnBird(speed, isMobile); + } else { + let cactusSize = 1; + + const cactusSizingSpeed = !isMobile + ? obstacleType.SIZING.SPEED.MIN + : obstacleType.SIZING.SPEED.MIN_MOBILE; + if (speed > cactusSizingSpeed) { + cactusSize = Phaser.Math.RND.pick(CONFIG.PREFABS.OBSTACLES.CACTUS.SIZES); + } + + this.spawnCactus(speed, isMobile, `${obstacleType.FRAME}-${cactusSize}`); + } + } + + /** + * Spawn bird obstacle + * @param {number} speed - Current game speed + * @param {boolean} isMobile - Whether game is running in mobile mode + */ + spawnBird(speed, isMobile) { + const { width } = this.scene.scale.gameSize; + const { BIRD } = CONFIG.PREFABS.OBSTACLES; + + const y = !isMobile + ? Phaser.Math.RND.pick(BIRD.POS.Y) + : Phaser.Math.RND.pick(BIRD.POS.Y_MOBILE); + + const newObstacle = new Bird(this.scene, width, y); + this.add(newObstacle); + + const gap = this.getGap(speed, BIRD.GAP.MIN, newObstacle.width); + newObstacle.setGap(gap); + } + + /** + * Spawn cactus obstacle + * @param {number} speed - Current game speed + * @param {boolean} isMobile - Whether game is running in mobile mode + * @param {Phaser.Animations.AnimationFrame} frame - Frame to display cactus obstacle + */ + spawnCactus(speed, isMobile, frame) { + const { width } = this.scene.scale.gameSize; + const { CACTUS } = CONFIG.PREFABS.OBSTACLES; + + const newObstacle = new Cactus(this.scene, width, CACTUS.POS.Y, frame); + this.add(newObstacle); + + const gap = this.getGap(speed, CACTUS.GAP.MIN, newObstacle.width); + newObstacle.setGap(gap); + } + + /** + * Get random gap + * @param {number} speed - Current game speed + * @param {number} minGap - Minimum gap + * @param {number} width - Obstacle width + * @returns {number} - random gap + */ + // eslint-disable-next-line class-methods-use-this + getGap(speed, minGap, width) { + const { MAX_MULIPLIER } = Obstacles.CONFIG.GAP; + + // min gap is based on speed + const min = Math.round(width * speed + minGap); + const max = Math.round(min * MAX_MULIPLIER); + + return Phaser.Math.RND.between(min, max); + } + + reset() { + super.reset(); + this.initVars(); + } +} + +export default Obstacles; diff --git a/src/prefabs/horizon/obstacles/bird/AnimationManager.js b/src/prefabs/horizon/obstacles/bird/AnimationManager.js new file mode 100644 index 0000000..ba0b9a4 --- /dev/null +++ b/src/prefabs/horizon/obstacles/bird/AnimationManager.js @@ -0,0 +1,79 @@ +import CONFIG from '../../../../config/game'; + +/** + * Bird AnimationManager + * @class AnimationManager + */ +class AnimationManager { + static CONFIG = CONFIG.PREFABS.OBSTACLES.BIRD; + + /** + * Creates an instance of AnimationManager + * @param {Bird} bird - The Bird to which this AnimationManager belongs + */ + constructor(bird) { + this.bird = bird; + + this.init(); + this.initEventHandlers(); + } + + init() { + const { bird } = this; + const { scene } = bird; + + const flyFrames = scene.anims.generateFrameNames('dino', { + frames: AnimationManager.CONFIG.FRAMES.FLYING, + }); + scene.anims.create({ key: 'fly', frames: flyFrames, frameRate: 6, repeat: -1 }); + } + + initEventHandlers() { + const { bird } = this; + + bird.on('animationstart', this.resizeBodyOnAnim, this); + bird.on('animationupdate', this.resizeBodyOnAnim, this); + } + + /** + * Update anims + */ + update() { + this.bird.anims.play('fly', true); + } + + /** + * Stop anims + */ + stop() { + this.bird.anims.stop(); + } + + /** + * Resize body on animation events + * @param {Phaser.Animations.Animation} anim + * @param {Phaser.Animations.AnimationFrame} frame + */ + resizeBodyOnAnim(anim, frame) { + const { body } = this.bird; + const { name } = frame.frame; + + const bodyZoneWidth = 76; + const bodyZoneHeight = 44; + const bodyZoneXOffset = 12; + const bodyZoneYOffset = 12; + + // set body offset & size to match sprite pos & size + if (name === AnimationManager.CONFIG.FRAMES.FLYING[0]) { + const frameYOffset = 12; + + body.setSize(bodyZoneWidth, bodyZoneHeight); + body.setOffset(bodyZoneXOffset, frameYOffset + bodyZoneYOffset); + } else if (name === AnimationManager.CONFIG.FRAMES.FLYING[1]) { + body.setSize(bodyZoneWidth, bodyZoneHeight); + body.setOffset(bodyZoneXOffset, bodyZoneYOffset); + } + } +} + +export default AnimationManager; diff --git a/src/prefabs/horizon/obstacles/bird/Bird.js b/src/prefabs/horizon/obstacles/bird/Bird.js new file mode 100644 index 0000000..9ed3e97 --- /dev/null +++ b/src/prefabs/horizon/obstacles/bird/Bird.js @@ -0,0 +1,65 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../../config/game'; +import Obstacle from '../Obstacle'; +import AnimationManager from './AnimationManager'; + +/** + * Bird obstacle + * @class Bird + * @extends {Obstacle} + */ +class Bird extends Obstacle { + static CONFIG = CONFIG.PREFABS.OBSTACLES.BIRD; + + /** + * Creates an instance of Bird + * @param {Phaser.Scene} scene - The Scene to which this Bird belongs + * @param {number} x - The horizontal position of this Bird in the world + * @param {number} y - The vertical position of this Bird in the world + * @override + */ + constructor(scene, x, y) { + super(scene, x, y, Bird.CONFIG.FRAMES.INITIAL); + } + + /** + * Init variables + * @override + */ + initVars() { + super.initVars(); + this.animationManager = new AnimationManager(this); + this.speedOffset = Phaser.Math.RND.pick(Bird.CONFIG.SPEED.OFFSET); + } + + /** + * Update bird + * @param {number} speed - Current game speed + * @override + */ + update(speed) { + this.animationManager.update(); + super.update(speed); + } + + /** + * Move bird + * @param {number} speed - Current game speed + * @override + */ + move(speed) { + this.x -= speed + this.speedOffset; + } + + /** + * Freeze bird + * @override + */ + freeze() { + super.freeze(); + this.animationManager.stop(); + } +} + +export default Bird; diff --git a/src/prefabs/horizon/obstacles/cactus/Cactus.js b/src/prefabs/horizon/obstacles/cactus/Cactus.js new file mode 100644 index 0000000..4097a7e --- /dev/null +++ b/src/prefabs/horizon/obstacles/cactus/Cactus.js @@ -0,0 +1,23 @@ +import Obstacle from '../Obstacle'; + +/** + * Cactus obstacle + * @class Cactus + * @extends {Obstacle} + */ +class Cactus extends Obstacle { + /** + * Update cactus + * @param {number} speed - Current game speed + */ + update(speed) { + super.update(speed); + + // reduce body size by excluding borders + const borderWidth = 2; + this.body.setSize(this.width - borderWidth * 2, this.height - borderWidth); + this.body.setOffset(borderWidth, borderWidth); + } +} + +export default Cactus; diff --git a/src/prefabs/horizon/stars/Star.js b/src/prefabs/horizon/stars/Star.js new file mode 100644 index 0000000..d2661c4 --- /dev/null +++ b/src/prefabs/horizon/stars/Star.js @@ -0,0 +1,59 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../config/game'; + +/** + * Star + * @class Star + * @extends {Phaser.GameObjects.Image} + */ +class Star extends Phaser.GameObjects.Image { + static CONFIG = CONFIG.PREFABS.STAR; + + /** + * Creates an instance of Star + * @param {Phaser.Scene} scene - The Scene to which this Star belongs + * @param {number} [x=Player.CONFIG.POS.INITIAL_X] - The horizontal position of this Star in the world + * @param {number} [y=Player.CONFIG.POS.Y] - The vertical position of this Star in the world + * @param {Phaser.Animations.AnimationFrame} [frame=Phaser.Math.RND.pick(Star.CONFIG.FRAMES)] - The frame to display this Star + */ + constructor(scene, x, y, frame = Phaser.Math.RND.pick(Star.CONFIG.FRAMES)) { + super(scene, x, y, 'dino', frame); + + this.init(); + this.scene.add.existing(this); + } + + /** + * Init + */ + init() { + this.initImage(); + } + + /** + * Init image + */ + initImage() { + this.setOrigin(0, 0); + this.setDepth(100); + } + + /** + * Update star + * @param {number} speed - Current game speed + */ + update(speed) { + this.move(speed); + } + + /** + * Move star + * @param {number} speed - Current game speed + */ + move(speed) { + this.x -= speed; + } +} + +export default Star; diff --git a/src/prefabs/horizon/stars/Stars.js b/src/prefabs/horizon/stars/Stars.js new file mode 100644 index 0000000..43a371f --- /dev/null +++ b/src/prefabs/horizon/stars/Stars.js @@ -0,0 +1,106 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../../config/game'; +import Star from './Star'; + +/** + * Stars Group + * @class Stars + * @extends {Phaser.GameObjects.Group} + */ +class Stars extends Phaser.GameObjects.Group { + static CONFIG = CONFIG.PREFABS.STAR; + + /** + * Creates an instance of Stars + * @param {Phaser.Scene} scene - The Scene to which this Stars group belongs + */ + constructor(scene) { + super(scene); + + this.scene.add.existing(this); + } + + /** + * Update stars group + * @param {number} speed - Current game speed + */ + update(speed) { + const { width } = this.scene.scale.gameSize; + + this.children.each(star => { + star.update(speed); + + if (star.x + star.width < 0) { + star.setX(width); + star.setY(this.getRandomYPos()); + star.setFrame(this.getRandomFrame()); + } + }); + } + + /** + * Spawn stars + */ + spawnItems() { + const { MAX_COUNT } = CONFIG.SCENES.GAME.NIGHTMODE.STARS; + + for (let i = this.getLength(); i < MAX_COUNT; i += 1) { + this.add(new Star(this.scene)); + } + + this.shuffleItems(); + } + + /** + * Shuffle stars + */ + shuffleItems() { + const { width } = this.scene.scale.gameSize; + const { MAX_COUNT } = CONFIG.SCENES.GAME.NIGHTMODE.STARS; + const xWidth = width / MAX_COUNT; + + this.children.each((star, i) => { + const frame = this.getRandomFrame(); + const x = this.getRandomXPos(xWidth, i); + const y = this.getRandomYPos(); + + star.setPosition(x, y); + star.setFrame(frame); + }); + } + + /** + * Get random star frame + */ + // eslint-disable-next-line class-methods-use-this + getRandomFrame() { + return Phaser.Math.RND.pick(Stars.CONFIG.FRAMES); + } + + /** + * Get random star x position + */ + // eslint-disable-next-line class-methods-use-this + getRandomXPos(xWidth, i) { + return Phaser.Math.RND.between(xWidth * i, xWidth * (i + 1)); + } + + /** + * Get random star y position + */ + // eslint-disable-next-line class-methods-use-this + getRandomYPos() { + const { MIN, MAX } = Stars.CONFIG.POS.Y; + return Phaser.Math.RND.between(MIN, MAX); + } + + /** + * Reset stars group + */ + reset() { + this.clear(true, true); + } +} + +export default Stars; diff --git a/src/prefabs/player/AnimationManager.js b/src/prefabs/player/AnimationManager.js new file mode 100644 index 0000000..4a6933a --- /dev/null +++ b/src/prefabs/player/AnimationManager.js @@ -0,0 +1,142 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../config/game'; + +/** + * Player AnimationManager + * @class AnimationManager + */ +class AnimationManager { + static CONFIG = CONFIG.PREFABS.PLAYER; + + /** + * Creates an instance of AnimationManager + * @param {Player} player - The Player to which this AnimationManager belongs + */ + constructor(player) { + this.player = player; + + this.init(); + this.initEventHandlers(); + } + + init() { + const { player } = this; + const { scene } = player; + + const idleFrames = scene.anims.generateFrameNames('dino', { + frames: AnimationManager.CONFIG.FRAMES.IDLING, + }); + scene.anims.create({ + key: 'idle', + frames: idleFrames, + frameRate: 1, + repeat: -1, + }); + + const runFrames = scene.anims.generateFrameNames('dino', { + frames: AnimationManager.CONFIG.FRAMES.RUNNING, + }); + scene.anims.create({ key: 'run', frames: runFrames, frameRate: 10, repeat: -1 }); + + const duckFrames = scene.anims.generateFrameNames('dino', { + frames: AnimationManager.CONFIG.FRAMES.DUCKING, + }); + scene.anims.create({ key: 'duck', frames: duckFrames, frameRate: 10, repeat: -1 }); + } + + initEventHandlers() { + const { player } = this; + + player.on('animationstart', this.resizeBodyOnAnim, this); + player.on('animationupdate', this.resizeBodyOnAnim, this); + player.on('animationcomplete', this.resizeBodyOnAnim, this); + + player.on('animationstart-idle', this.calcIdleAnim, this); + player.on('animationrepeat-idle', this.calcIdleAnim, this); + } + + /** + * Set animation based on player state + */ + update() { + const { STATES, FRAMES } = AnimationManager.CONFIG; + const { player } = this; + + switch (player.state) { + case STATES.IDLING: { + player.anims.play('idle', true); + break; + } + case STATES.RUNNING: { + player.anims.play('run', true); + break; + } + case STATES.DUCKING: { + player.anims.play('duck', true); + break; + } + case STATES.DEAD: { + player.anims.stop(); + player.setFrame(FRAMES.DEAD); + break; + } + case STATES.JUMPING: + default: { + player.anims.stop(); + player.setFrame(FRAMES.JUMPING); + break; + } + } + } + + /** + * Calculate next idle animation blink effect duration + * @param {Phaser.Animations.Animation} idleAnim + */ + calcIdleAnim = idleAnim => { + const { BLINK } = AnimationManager.CONFIG; + + const eyeFrame = idleAnim.getFrameAt(0); + const blinkFrame = idleAnim.getFrameAt(1); + + // add random duration to eyeFrame + eyeFrame.duration = Phaser.Math.RND.between(0, BLINK.DELAY); + // set blinkFrame to BLINK_DURATION in ms + blinkFrame.duration = -1 * idleAnim.msPerFrame + BLINK.DURATION; + }; + + /** + * Resize body on animation events + * @param {Phaser.Animations.Animation} anim + * @param {Phaser.Animations.AnimationFrame} frame + */ + resizeBodyOnAnim(anim, frame) { + const { body } = this.player; + const { name, width, height } = frame.frame; + + // resize body to reduce player collisions + // jumping, idling & running anim frames have equal dimensions + if ( + name === AnimationManager.CONFIG.FRAMES.JUMPING || + AnimationManager.CONFIG.FRAMES.IDLING.includes(name) || + AnimationManager.CONFIG.FRAMES.RUNNING.includes(name) + ) { + const headZone = 15; + const tailZone = 25; + const topZone = 4; + + body.setSize(width - headZone - tailZone, height - topZone); + body.setOffset(tailZone, topZone); + } else if (AnimationManager.CONFIG.FRAMES.DUCKING.includes(name)) { + const headZone = 35; + const tailZone = 25; + const topZone = 6; + + body.setSize(width - headZone - tailZone, height - topZone); + body.setOffset(tailZone, topZone); + } + } +} + +export default AnimationManager; diff --git a/src/prefabs/player/InputManager.js b/src/prefabs/player/InputManager.js new file mode 100644 index 0000000..dbdaa27 --- /dev/null +++ b/src/prefabs/player/InputManager.js @@ -0,0 +1,73 @@ +/** + * InputManager + * @class InputManager + */ +class InputManager { + /** + * Creates an instance of InputManager + * @param {Player} player - The Player to which this InputManager belongs + */ + constructor(player) { + this.player = player; + this.scene = player.scene; + + this.init(); + } + + /** + * Init + */ + init() { + this.cursors = this.scene.input.keyboard.createCursorKeys(); + } + + /** + * Update inputManager + */ + update() { + const { player } = this; + const { intro } = this.scene; + + if (player.isDead) { + return; + } + + if (player.isOnFloor) { + if (this.isDuckKeyPressed && intro.isComplete) { + player.duck(); + } else if (this.isJumpKeyPressed && !intro.isWaiting) { + player.jump(); + } else { + player.run(); + } + } else { + player.idle(); + } + } + + /** + * Check if duck key is pressed + * @readonly + * @returns {boolean} + */ + get isDuckKeyPressed() { + return this.cursors.down.isDown; + } + + /** + * Check if jump key is pressed + * @readonly + * @returns {boolean} + */ + get isJumpKeyPressed() { + const { activePointer } = this.scene.input; + + return ( + this.cursors.up.isDown || + this.cursors.space.isDown || + (activePointer.isDown && activePointer.wasTouch) + ); + } +} + +export default InputManager; diff --git a/src/prefabs/player/PhysicsManager.js b/src/prefabs/player/PhysicsManager.js new file mode 100644 index 0000000..ccbe687 --- /dev/null +++ b/src/prefabs/player/PhysicsManager.js @@ -0,0 +1,79 @@ +import CONFIG from '../../config/game'; + +/** + * PhysicsManager + * @class PhysicsManager + */ +class PhysicsManager { + static CONFIG = CONFIG.PREFABS.PLAYER; + + /** + * Creates an instance of PhysicsManager + * @param {Player} player - The Player to which this PhysicsManager belongs + */ + constructor(player) { + this.player = player; + this.scene = player.scene; + + this.init(); + } + + /** + * Init + */ + init() { + const { scene, player } = this; + + scene.physics.world.enable(player); + player.setCollideWorldBounds(true); + player.setGravityY(PhysicsManager.CONFIG.GRAVITY.Y); + player.setAccelerationY(PhysicsManager.CONFIG.JUMP.ACCELERATION); + } + + /** + * Check if player is on floor + * @readonly + * @returns {boolean} + */ + get isOnFloor() { + return this.player.body.onFloor(); + } + + /** + * Enable physics + */ + enable() { + this.scene.physics.world.enable(this.player); + } + + /** + * Disable physics + */ + disable() { + this.scene.physics.world.disable(this.player); + } + + /** + * Handle player jump + */ + jump() { + this.player.setVelocityY(PhysicsManager.CONFIG.JUMP.VELOCITY.Y); + } + + /** + * Handle player dead + */ + die() { + this.player.setVelocityY(0); + this.disable(); + } + + /** + * Reset physicsManager + */ + reset() { + this.enable(); + } +} + +export default PhysicsManager; diff --git a/src/prefabs/player/Player.js b/src/prefabs/player/Player.js new file mode 100644 index 0000000..2099644 --- /dev/null +++ b/src/prefabs/player/Player.js @@ -0,0 +1,241 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../config/game'; +import PhysicsManager from './PhysicsManager'; +import InputManager from './InputManager'; +import AnimationManager from './AnimationManager'; + +/** + * Player + * @class Player + * @extends {Phaser.Physics.Arcade.Sprite} + */ +class Player extends Phaser.Physics.Arcade.Sprite { + static CONFIG = CONFIG.PREFABS.PLAYER; + + /** + * Creates an instance of Player + * @param {Phaser.Scene} scene - The Scene to which this Player belongs + * @param {number} [x=Player.CONFIG.POS.INITIAL_X] - The horizontal position of this Player in the world + * @param {number} [y=Player.CONFIG.POS.Y] - The vertical position of this Player in the world + */ + constructor(scene, x = Player.CONFIG.POS.INITIAL_X, y = Player.CONFIG.POS.Y) { + super(scene, x, y, 'dino', Player.CONFIG.FRAMES.INITIAL); + + this.init(); + this.start(); + this.scene.add.existing(this); + } + + /** + * Init + */ + init() { + this.initVars(); + this.initImage(); + this.initEventHandlers(); + } + + /** + * Init variables + */ + initVars() { + this.physicsManager = new PhysicsManager(this); + this.inputManager = new InputManager(this); + this.animationManager = new AnimationManager(this); + + this.readyToIntro = false; + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.scene.events.on(CONFIG.EVENTS.GAME_INTRO_START, this.intro, this); + this.scene.events.on(CONFIG.EVENTS.GAME_OVER, this.die, this); + this.scene.events.on(CONFIG.EVENTS.GAME_RESTART, this.reset, this); + } + + /** + * Init image + */ + initImage() { + this.setOrigin(0, 1); + this.setDepth(1000); + } + + /** + * Set 1st player state + */ + start() { + this.idle(); + this.animationManager.update(); + } + + /** + * Update player + */ + update() { + this.inputManager.update(); + this.animationManager.update(); + } + + /** + * Handle game intro + */ + intro() { + this.scene.tweens.add({ + targets: this, + duration: CONFIG.SCENES.GAME.INTRO.DURATION, + x: Player.CONFIG.POS.X, + onComplete: () => { + this.scene.intro.complete(); + }, + }); + } + + /** + * Set player idling + */ + idle() { + this.setState(Player.CONFIG.STATES.IDLING); + } + + /** + * Set player running + */ + run() { + this.setState(Player.CONFIG.STATES.RUNNING); + + if (this.readyToIntro && this.scene.intro.isWaiting) { + this.scene.intro.start(); + } + + // when initial jump ends set readyToIntro to false + this.readyToIntro = true; + } + + /** + * Set player ducking + */ + duck() { + this.setState(Player.CONFIG.STATES.DUCKING); + } + + /** + * Set player jumping + */ + jump() { + this.setState(Player.CONFIG.STATES.JUMPING); + this.physicsManager.jump(); + + if (!this.scene.intro.isWaiting) { + this.scene.events.emit(CONFIG.EVENTS.PLAYER_ACTION); + } + } + + /** + * Set player dead | Handle gameover + */ + die() { + this.setState(Player.CONFIG.STATES.DEAD); + this.animationManager.update(); + this.physicsManager.die(); + + // set dead sprite pos to match run|jump sprite pos (substract 4px) + this.setY(this.y - 4); + } + + /** + * Reset player | Handle game restart + */ + reset() { + this.setState(Player.CONFIG.STATES.IDLING); + this.animationManager.update(); + this.physicsManager.reset(); + + // little hack to set y to default because + // this.setY(Player.CONFIG.POS.Y) causes player to fall through the ground + this.scene.tweens.add({ + targets: this, + duration: 0, + y: Player.CONFIG.POS.Y, + }); + } + + /** + * Check if player is idling + * @readonly + * @returns {boolean} + */ + get isIdling() { + return this.state === Player.CONFIG.STATES.IDLING; + } + + /** + * Check if player is running + * @readonly + * @returns {boolean} + */ + get isRunning() { + return this.state === Player.CONFIG.STATES.RUNNING; + } + + /** + * Check if player is ducking + * @readonly + * @returns {boolean} + */ + get isDucking() { + return this.state === Player.CONFIG.STATES.DUCKING; + } + + /** + * Check if player is jumping + * @readonly + * @returns {boolean} + */ + get isJumping() { + return this.state === Player.CONFIG.STATES.JUMPING; + } + + /** + * Check if player is dead + * @readonly + * @returns {boolean} + */ + get isDead() { + return this.state === Player.CONFIG.STATES.DEAD; + } + + /** + * Check if player is on floor + * @readonly + * @returns {boolean} + */ + get isOnFloor() { + return this.physicsManager.isOnFloor; + } + + /** + * Set player state + * @param {Player.state} state + * @returns {Player} + */ + setState(state) { + if (Object.hasOwnProperty.call(Player.CONFIG.STATES, state)) { + this.state = state; + return this; + } + + const possibleValuesString = Object.values(Player.CONFIG.STATES) + .map(v => `'${v}'`) + .join(', '); + + throw new Error( + `Invalid Intro State\nPassed: '${state}'\nPossible values: ${possibleValuesString}`, + ); + } +} + +export default Player; diff --git a/src/prefabs/ui/CurrentScorePanel.js b/src/prefabs/ui/CurrentScorePanel.js new file mode 100644 index 0000000..e914bc6 --- /dev/null +++ b/src/prefabs/ui/CurrentScorePanel.js @@ -0,0 +1,69 @@ +import CONFIG from '../../config/game'; +import ScorePanel from './ScorePanel'; + +/** + * CurrentScorePanel + * @class CurrentScorePanel + * @extends {ScorePanel} + */ +class CurrentScorePanel extends ScorePanel { + static CONFIG = CONFIG.SCENES.GAME.GAME.SCORE; + + /** + * Create {Phaser.GameObjects. BitmapText} `scoreText` + * @override + */ + initText() { + const { scene } = this; + + this.scoreText = scene.add + .bitmapText(0, 0, 'joystix', '', 32) + .setOrigin(1, 0) + .setDepth(9999); + } + + /** + * Create score text flash tween + * @returns {Phaser.Tweens.Tween} Created Tween object + * @override + */ + createFlashTween() { + const { DURATION, ITERATIONS } = CurrentScorePanel.CONFIG.ACHIEVEMENT.FLASH; + + return super.createFlashTween(DURATION, ITERATIONS); + } + + /** + * Update high score panel + * @param {boolean} isPlaying - Whether game is running + * @param {number} score - Current game score + * @override + */ + update(isPlaying, score) { + const { ACHIEVEMENT } = CurrentScorePanel.CONFIG; + + super.update(score); + + this.score = score; + + if (isPlaying && score > 0 && score % ACHIEVEMENT.DISTANCE === 0 && !this.isFlashing) { + this.scene.events.emit(CONFIG.EVENTS.ACHIEVEMENT); + this.flashScore(); + } + + if (isPlaying && !this.isFlashing) { + this.setScore(score); + } + } + + /** + * Handle gameover + * @override + */ + onGameOver() { + super.onGameOver(); + this.setScore(this.score); + } +} + +export default CurrentScorePanel; diff --git a/src/prefabs/ui/GameOverPanel.js b/src/prefabs/ui/GameOverPanel.js new file mode 100644 index 0000000..f0660f6 --- /dev/null +++ b/src/prefabs/ui/GameOverPanel.js @@ -0,0 +1,112 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../config/game'; + +/** + * GameOverPanel + * @class GameOverPanel + */ +class GameOverPanel { + /** + * Creates an instance of GameOverPanel + * @param {Phaser.Scene} scene - The Scene to which this Player belongs + */ + constructor(scene) { + this.scene = scene; + + this.init(); + } + + /** + * Init + */ + init() { + this.initImage(); + this.initEventHandlers(); + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.scene.events.on(CONFIG.EVENTS.GAME_OVER, this.show, this); + this.scene.events.on(CONFIG.EVENTS.GAME_RESTART, this.hide, this); + this.zone.on('pointerdown', this.onClick, this); + this.zone.on('pointerup', this.onClick, this); + } + + /** + * Init image + */ + initImage() { + const { width, height } = this.scene.scale.gameSize; + + this.gameOverText = this.scene.add + .bitmapText(width / 2, height / 2 - 75, 'joystix', 'G A M E O V E R', 32) + .setOrigin(0.5, 0.5) + .setDepth(9999) + .setVisible(false); + this.restartImg = this.scene.add + .image(width / 2, height / 2, 'dino', 'restart') + .setOrigin(0.5, 0.5) + .setDepth(9999) + .setVisible(false); + + const gameOverTextBounds = this.gameOverText.getTextBounds().global; + const restartImgBounds = this.restartImg.getBounds(); + this.zone = this.scene.add + .zone( + gameOverTextBounds.x, + gameOverTextBounds.y, + gameOverTextBounds.width, + restartImgBounds.y + restartImgBounds.height - gameOverTextBounds.y, + ) + .setOrigin(0, 0); + } + + /** + * Handle click + * @param {Phaser.Input.Pointer} pointer + */ + onClick(pointer) { + if (!pointer.wasTouch || pointer.noButtonDown()) { + this.scene.events.emit(CONFIG.EVENTS.GAME_RESTART); + } + } + + /** + * Show gameover panel + */ + show() { + this.gameOverText.setVisible(true); + this.restartImg.setVisible(true); + this.zone.setInteractive({ + hitArea: new Phaser.Geom.Rectangle(0, 0, this.zone.width, this.zone.height), + hitAreaCallback: Phaser.Geom.Rectangle.Contains, + useHandCursor: false, + }); + } + + /** + * Hide gameover panel + */ + hide() { + this.gameOverText.setVisible(false); + this.restartImg.setVisible(false); + this.zone.disableInteractive(); + } + + /** + * Resize gameover panel + * @param {Phaser.Structs.Size} gameSize - Current game size + */ + resize({ width }) { + const { x, y } = this.gameOverText.getTextBounds().global; + + this.gameOverText.x = width / 2; + this.restartImg.x = width / 2; + this.zone.setPosition(x, y); + } +} + +export default GameOverPanel; diff --git a/src/prefabs/ui/HighScorePanel.js b/src/prefabs/ui/HighScorePanel.js new file mode 100644 index 0000000..94c8816 --- /dev/null +++ b/src/prefabs/ui/HighScorePanel.js @@ -0,0 +1,149 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../config/game'; +import ScorePanel from './ScorePanel'; + +/** + * HighScorePanel + * @class HighScorePanel + * @extends {ScorePanel} + */ +class HighScorePanel extends ScorePanel { + static CONFIG = CONFIG.SCENES.GAME.GAME.HIGH_SCORE; + + /** + * Creates an instance of HighScorePanel + * @param {Phaser.Scene} scene - The Scene to which this InputManager belongs + * @param {number} [highScore=0] - High score + * @override + */ + constructor(scene, highScore = 0) { + super(scene); + + this.scene = scene; + this.highScore = highScore; + } + + /** + * Init variables + * @override + */ + initVars() { + super.initVars(); + this.defaultString = 'HI '; + } + + /** + * Create {Phaser.GameObjects. BitmapText} `scoreText` + * @override + */ + initText() { + const { scene } = this; + + this.scoreText = scene.add + .bitmapText(0, 0, 'joystix', '', 32) + .setTintFill(0x757575) + .setOrigin(1, 0) + .setDepth(9999); + + const { x, y, width, height } = this.scoreText.getTextBounds().global; + this.zone = scene.add.zone(x, y, width, height).setOrigin(0, 0); + } + + /** + * Init event handlers + * @override + */ + initEventHandlers() { + super.initEventHandlers(); + this.zone.on('pointerdown', this.onClick, this); + } + + /** + * Create score text flash tween + * @returns {Phaser.Tweens.Tween} Created Tween object + * @override + */ + createFlashTween() { + const { DURATION, ITERATIONS } = HighScorePanel.CONFIG.GAMEOVER.FLASH; + const onStart = () => this.scoreText.clearTint(); + const onComplete = () => this.scoreText.setTintFill(0x757575); + + return super.createFlashTween(DURATION, ITERATIONS * 2, onStart, onComplete); + } + + /** + * Update high score panel + * @param {number} score - Current game score + * @override + */ + update(score) { + this.currentScore = score; + } + + /** + * Set score + * @param {number} score - Current game score + * @override + */ + setScore(score) { + super.setScore(score); + this.highScore = score; + } + + /** + * Handle click + */ + onClick() { + if (!this.isFlashing) { + this.flashScore(); + } else { + this.reset(); + this.zone.disableInteractive(); + this.scene.events.emit(CONFIG.EVENTS.HIGH_SCORE_RESET); + } + } + + /** + * Handle game start + * @override + */ + onStart() { + this.setScore(this.highScore); + } + + /** + * Handle game restart + * @override + */ + onRestart() { + this.reset(); + this.zone.disableInteractive(); + super.onRestart(); + } + + /** + * Handle gameover + * @override + */ + onGameOver() { + super.onGameOver(); + + if (this.currentScore > this.highScore) { + this.scene.events.emit(CONFIG.EVENTS.HIGH_SCORE_RECORD, this.currentScore); + } + + this.setScore(Math.max(this.highScore, this.currentScore)); + + const { x, y, width, height } = this.scoreText.getTextBounds().global; + this.zone.setPosition(x, y); + this.zone.setSize(width, height); + this.zone.setInteractive({ + hitArea: new Phaser.Geom.Rectangle(0, 0, this.zone.width, this.zone.height), + hitAreaCallback: Phaser.Geom.Rectangle.Contains, + useHandCursor: false, + }); + } +} + +export default HighScorePanel; diff --git a/src/prefabs/ui/ScorePanel.js b/src/prefabs/ui/ScorePanel.js new file mode 100644 index 0000000..c79ee01 --- /dev/null +++ b/src/prefabs/ui/ScorePanel.js @@ -0,0 +1,161 @@ +import CONFIG from '../../config/game'; + +/** + * ScorePanel + * @class ScorePanel + */ +class ScorePanel { + static CONFIG = CONFIG.SCENES.GAME.GAME.SCORE; + + /** + * Creates an instance of ScorePanel + * @param {Phaser.Scene} scene - The Scene to which this Player belongs + */ + constructor(scene) { + this.scene = scene; + + this.init(); + } + + /** + * Init + */ + init() { + this.initVars(); + this.initText(); + this.initEventHandlers(); + } + + /** + * Init variables + */ + initVars() { + this.isFlashing = false; + this.flashTween = this.createFlashTween(); + + // set maxScore to 10^MAX_LENGTH - 1 e.g. MAX_LENGTH = 5 so maxScore = 10^5 - 1 = 99_999 + this.maxScoreLength = ScorePanel.CONFIG.MAX_LENGTH; + this.maxScore = 10 ** (this.maxScoreLength - 1) - 1; + + this.defaultString = ''; + } + + /** + * Create {Phaser.GameObjects. BitmapText} `scoreText` + * @abstract + * @throws Will throw an error if not implemented + */ + // eslint-disable-next-line class-methods-use-this, no-unused-vars + initText() { + // create scoreText: BitmapText var here + throw new Error('Method must be implemented by subclass'); + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.scene.events.on(CONFIG.EVENTS.GAME_START, this.onStart, this); + this.scene.events.on(CONFIG.EVENTS.GAME_RESTART, this.onRestart, this); + this.scene.events.on(CONFIG.EVENTS.GAME_OVER, this.onGameOver, this); + } + + /** + * Create score text flash tween + * @param {number} duration - Tween duration + * @param {number} iterations - Tween iterations + * @param {function} [onStart=() => {}] - A function to be executed when tween starts + * @param {function} [onComplete=() => {}] - A function to be executed when tween completes + * @returns {Phaser.Tweens.Tween} Created Tween object + */ + createFlashTween(duration, iterations, onStart = () => {}, onComplete = () => {}) { + return this.scene.tweens.create({ + targets: this.scoreText, + duration: 0, + alpha: { + start: 1, + to: 0, + }, + repeat: iterations, + repeatDelay: duration, + yoyo: true, + hold: duration, + completeDelay: duration * 2, + onStart: () => { + this.isFlashing = true; + onStart(); + }, + onComplete: () => { + this.isFlashing = false; + this.scoreText.setAlpha(1); + onComplete(); + }, + }); + } + + /** + * Update score panel + * @param {number} score - Current game score + */ + update(score) { + if (score >= this.maxScore) { + this.maxScoreLength += 1; + this.maxScore = 10 ** (this.maxScoreLength - 1) - 1; + } + } + + /** + * Set score + * @param {number} score - Current game score + */ + setScore(score) { + // create score string and padStart it to MAX_LENGTH with zeros + // e.g. MAX_LENGTH = 5 and score = 418, so scoreString will be '00418' + const scoreString = this.defaultString + score.toString().padStart(this.maxScoreLength, '0'); + this.scoreText.setText(scoreString); + } + + /** + * Clear score + */ + clearScore() { + this.setScore(0); + } + + /** + * Flash score text + */ + flashScore() { + this.flashTween = this.createFlashTween(); + this.flashTween.play(); + } + + /** + * Reset score panel + */ + reset() { + this.flashTween.complete(); + } + + /** + * Handle game start + */ + // eslint-disable-next-line class-methods-use-this + onStart() {} + + /** + * Handle game restart + */ + onRestart() { + this.initVars(); + } + + /** + * Handle gameover + */ + onGameOver() { + this.reset(); + } +} + +export default ScorePanel; diff --git a/src/prefabs/ui/ScoreZone.js b/src/prefabs/ui/ScoreZone.js new file mode 100644 index 0000000..c8c0a6e --- /dev/null +++ b/src/prefabs/ui/ScoreZone.js @@ -0,0 +1,57 @@ +import CurrentScore from './CurrentScorePanel'; +import HighScore from './HighScorePanel'; + +/** + * ScoreZone + * @class ScoreZone + */ +class ScoreZone { + /** + * Creates an instance of ScoreZone + * @param {CurrentScorePanel} currentScorePanel - CurrentScorePanel to be placed inside this ScoreZone + * @param {HighScorePanel} highScorePanel - HighScorePanel to be placed inside this ScoreZone + */ + constructor(currentScorePanel, highScorePanel) { + this.currentScorePanel = currentScorePanel; + this.highScorePanel = highScorePanel; + } + + /** + * Update score zone + * @param {Phaser.Structs.Size} gameSize - Current game size + */ + update(gameSize) { + this.resize(gameSize); + } + + /** + * Resize score zone + * @param {Phaser.Structs.Size} gameSize - Current game size + */ + resize({ width }) { + const { + X: { OFFSET: currentScoreXOffset }, + Y: currentScoreY, + } = CurrentScore.CONFIG.POS; + const { + X: { OFFSET: highScoreXOffset }, + Y: highScoreY, + } = HighScore.CONFIG.POS; + + const { scoreText: currentScoreText } = this.currentScorePanel; + const { scoreText: highScoreText, zone: highScoreZone } = this.highScorePanel; + + const currentScoreX = width * currentScoreXOffset; + const currentScoreWidth = currentScoreText.width; + currentScoreText.setPosition(currentScoreX, currentScoreY); + + const highScoreX = currentScoreX - currentScoreWidth - highScoreXOffset; + highScoreText.setPosition(highScoreX, highScoreY); + + const highScoreTextBounds = highScoreText.getTextBounds().global; + highScoreZone.setPosition(highScoreTextBounds.x, highScoreTextBounds.y); + highScoreZone.setSize(highScoreTextBounds.width, highScoreTextBounds.height); + } +} + +export default ScoreZone; diff --git a/src/scenes/Boot.js b/src/scenes/Boot.js deleted file mode 100644 index 67d48e1..0000000 --- a/src/scenes/Boot.js +++ /dev/null @@ -1,30 +0,0 @@ -import Phaser from 'phaser'; - -import LoaderScene from './Loader'; -import scenes from '../config/scenes'; - -class BootScene extends Phaser.Scene { - static name = 'BootScene'; - - constructor() { - super(BootScene.name); - } - - preload() { - this.load.image('logo', 'assets/sprites/logo.png'); - - Object.keys(scenes).forEach(sceneName => { - this.load.json(sceneName, scenes[sceneName]); - }); - } - - create(data) { - this.scene.start(LoaderScene.name, { - sceneTimerDelay: data.sceneTimerDelay, - sceneData: this.cache.json.get(data.scene), - scene: data.scene, - }); - } -} - -export default BootScene; diff --git a/src/scenes/Game.js b/src/scenes/Game.js deleted file mode 100644 index c15ef9c..0000000 --- a/src/scenes/Game.js +++ /dev/null @@ -1,42 +0,0 @@ -import Phaser from 'phaser'; - -import Player from '../prefabs/Player'; - -class GameScene extends Phaser.Scene { - static name = 'GameScene'; - - constructor() { - super(GameScene.name); - } - - create() { - const { width } = this.scale.gameSize; - const centerX = width / 2; - - this.player = new Player(this, centerX, 150, 'player'); - this.createPlayerAnims(this.player); - } - - update() { - this.player.update(); - } - - createPlayerAnims(player) { - this.tweens.add({ - targets: player, - angle: 360, - duration: 450, - ease: Phaser.Math.Easing.Linear, - loop: 3, - }); - - this.tweens.add({ - targets: player, - scale: 0.8, - duration: 2000, - ease: Phaser.Math.Easing.Linear, - }); - } -} - -export default GameScene; diff --git a/src/scenes/Loader.js b/src/scenes/Loader.js deleted file mode 100644 index b8e76d4..0000000 --- a/src/scenes/Loader.js +++ /dev/null @@ -1,122 +0,0 @@ -import Phaser from 'phaser'; - -import loadAssets from '../utils/assetsLoader'; - -class LoaderScene extends Phaser.Scene { - static name = 'LoaderScene'; - - constructor() { - super(LoaderScene.name); - } - - init(data) { - this.nextScene = data.scene; - this.sceneData = data.sceneData; - this.sceneTimerDelay = data.sceneTimerDelay || 0; - - this.isTimerExpired = false; - this.isNextSceneReady = false; - setTimeout(() => { - this.isTimerExpired = true; - this.tryToStartNextScene(); - }, this.sceneTimerDelay); - } - - preload() { - this.createLogo(); - this.createProgressBar(); - - loadAssets(this, this.sceneData.assets); - - this.load.on('progress', this.handleProgress, this); - this.load.on('fileprogress', this.handleFileProgress, this); - this.load.on('complete', this.handleComplete, this); - } - - tryToStartNextScene() { - if (this.isTimerExpired && this.isNextSceneReady) { - this.scene.start(this.nextScene, { sceneData: this.sceneData }); - } - } - - createLogo() { - const { width } = this.scale.gameSize; - const centerX = width / 2; - - const logo = this.add.image(centerX, 100, 'logo'); - logo.setOrigin(0.5, 0); - logo.setScale(0.6); - } - - createProgressBar() { - const { width, height } = this.scale.gameSize; - const centerX = width / 2; - const centerY = height / 2; - - this.progressBar = this.add.graphics(); - this.progressBox = this.add.graphics(); - this.progressBox.fillStyle(0x222222, 0.8); - this.progressBox.fillRect(centerX - 160, centerY + 120, 320, 50); - - this.loadingText = this.make.text({ - x: centerX, - y: centerY + 100, - text: 'Loading...', - style: { - font: '20px monospace', - fill: '#ffffff', - }, - }); - this.loadingText.setOrigin(0.5); - - this.percentText = this.make.text({ - x: centerX, - y: centerY + 145, - text: '0%', - style: { - font: '18px monospace', - fill: '#ffffff', - }, - }); - this.percentText.setOrigin(0.5); - - this.assetText = this.make.text({ - x: centerX, - y: centerY + 200, - text: '', - style: { - font: '18px monospace', - fill: '#ffffff', - }, - }); - this.assetText.setOrigin(0.5); - } - - handleProgress(value) { - const { width, height } = this.scale.gameSize; - const centerX = width / 2; - const centerY = height / 2; - - this.percentText.setText(`${Number.parseInt(value * 100, 10)}%`); - this.progressBar.clear(); - this.progressBar.fillStyle(0xffffff, 1); - this.progressBar.fillRect(centerX - 150, centerY + 130, 300 * value, 30); - } - - handleFileProgress(file) { - this.assetText.setText(`Loading asset: ${file.key}`); - } - - handleComplete() { - this.progressBar.destroy(); - this.progressBox.destroy(); - this.loadingText.destroy(); - this.percentText.destroy(); - this.assetText.destroy(); - - this.isNextSceneReady = true; - this.tryToStartNextScene(); - } -} - -export default LoaderScene; diff --git a/src/scenes/boot/BootScene.js b/src/scenes/boot/BootScene.js new file mode 100644 index 0000000..ac58662 --- /dev/null +++ b/src/scenes/boot/BootScene.js @@ -0,0 +1,40 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../config/game'; +import GameScene from '../game/GameScene'; + +/** + * BootScene + * @class BootScene + * @extends {Phaser.Scene} + */ +class BootScene extends Phaser.Scene { + static CONFIG = CONFIG.SCENES.BOOT; + + /** + * Creates an instance of BootScene + */ + constructor() { + super(BootScene.CONFIG.NAME); + } + + preload() { + this.load.atlas('dino', 'assets/sprites/dino-atlas.png', 'assets/sprites/dino-atlas.json'); + + this.load.bitmapFont( + 'joystix', + 'assets/fonts/joystix_monospace.png', + 'assets/fonts/joystix_monospace.fnt', + ); + + this.load.audio('player-action', 'assets/sounds/player-action.mp3'); + this.load.audio('achievement', 'assets/sounds/achievement.mp3'); + this.load.audio('gameover', 'assets/sounds/gameover.mp3'); + } + + create() { + this.scene.start(GameScene.CONFIG.NAME); + } +} + +export default BootScene; diff --git a/src/scenes/game/GameScene.js b/src/scenes/game/GameScene.js new file mode 100644 index 0000000..6c3da99 --- /dev/null +++ b/src/scenes/game/GameScene.js @@ -0,0 +1,328 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../config/game'; +import InputManager from './InputManager'; +import SoundManager from './SoundManager'; +import ScoreManager from './ScoreManager'; +import ResizeManager from './ResizeManager'; +import UI from './UI'; +import Intro from './Intro'; +import Player from '../../prefabs/player/Player'; +import Horizon from '../../prefabs/horizon/Horizon'; + +/** + * GameScene + * @class GameScene + * @extends {Phaser.Scene} + */ +class GameScene extends Phaser.Scene { + static CONFIG = CONFIG.SCENES.GAME; + + constructor() { + super(GameScene.CONFIG.NAME); + } + + init() { + this.initVars(); + this.initEventHandlers(); + this.initCanvasStyles(); + } + + /** + * Init variables + */ + initVars() { + this.width = this.scale.gameSize.width; + + this.isInitialStart = true; + this.isPlaying = false; + this.readyToRestart = false; + + this.speed = 0; + this.maxSpeed = 0; + this.initSpeed(); + this.distance = 0; + + this.soundManager = new SoundManager(this); + this.inputManager = new InputManager(this); + this.resizeManager = new ResizeManager(this, { + canvas: this.onResizeCanvas.bind(this), + camera: this.onResizeCamera.bind(this), + gameSpeed: this.onResizeGameSpeed.bind(this), + gameObjects: this.onResizeGameObjects.bind(this), + }); + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.events.on(CONFIG.EVENTS.GAME_START, this.onGameStart, this); + this.events.on(CONFIG.EVENTS.GAME_INTRO_START, this.onIntroStart, this); + this.events.on(CONFIG.EVENTS.GAME_INTRO_COMPLETE, this.onIntroComplete, this); + this.events.on(CONFIG.EVENTS.GAME_RESTART, this.onGameRestart, this); + this.events.on(CONFIG.EVENTS.GAME_OVER, this.onGameOver, this); + this.events.on(CONFIG.EVENTS.HIGH_SCORE_RECORD, this.onHighScoreRecord, this); + this.events.on(CONFIG.EVENTS.HIGH_SCORE_RESET, this.onHighScoreReset, this); + + this.input.once('pointerup', this.resumeAudioContext, this); + this.input.keyboard.once('keyup', this.resumeAudioContext, this); + } + + /** + * Init canvas styles + */ + initCanvasStyles() { + const styles = Object.entries(GameScene.CONFIG.STYLES).map(([k, v]) => [k.toLowerCase(), v]); + + styles.forEach(([k, v]) => { + this.game.canvas.style[k] = v; + }); + } + + /** + * Init game speed + */ + initSpeed() { + const { width } = this.scale.gameSize; + const { INITIAL, MAX, MOBILE_COEFFICIENT } = GameScene.CONFIG.GAME.OBSTACLES.SPEED; + + if (width === CONFIG.GAME.WIDTH.LANDSCAPE) { + this.speed = INITIAL; + this.maxSpeed = MAX; + } else if (width === CONFIG.GAME.WIDTH.PORTRAIT) { + this.speed = INITIAL / MOBILE_COEFFICIENT; + this.maxSpeed = MAX / MOBILE_COEFFICIENT; + } + } + + create() { + this.ui = new UI(this); + this.intro = new Intro(this.events); + + this.player = new Player(this); + + this.horizon = new Horizon(this); + this.ground = this.horizon.ground; + this.obstacles = this.horizon.obstacles; + this.nightMode = this.horizon.nightMode; + + this.physics.add.collider(this.player, this.ground); + this.physics.add.overlap(this.player, this.obstacles, this.onPlayerHitObstacle, null, this); + + this.resizeManager.resize(this.scale.gameSize, this.scale.parentSize); + } + + update() { + const { gameSize } = this.scale; + const isMobile = gameSize.width === CONFIG.GAME.WIDTH.PORTRAIT; + + this.inputManager.update(); + this.ui.update(this.isPlaying, gameSize, this.score); + + if (this.isPlaying) { + this.player.update(); + + if (this.intro.isComplete) { + const { GAME, NIGHTMODE } = GameScene.CONFIG; + const { OBSTACLES } = GAME; + + if (this.speed < this.maxSpeed) { + this.speed += OBSTACLES.ACCELERATION; + } else { + this.speed = this.maxSpeed; + } + + this.distance += this.speed; + + if (this.shouldNightModeStart) { + this.nightMode.enable(); + this.time.delayedCall(NIGHTMODE.DURATION, () => { + if (this.isPlaying && this.nightMode.isEnabled) { + this.nightMode.disable(); + } + }); + } + + this.horizon.update(this.speed, isMobile); + } + } + } + + /** + * Handle player collision with obstacle + */ + onPlayerHitObstacle() { + this.events.emit(CONFIG.EVENTS.GAME_OVER); + } + + /** + * Handle game start + */ + onGameStart() { + this.isPlaying = true; + this.isInitialStart = false; + + this.player.jump(); + this.ui.highScorePanel.setScore(ScoreManager.getHighScore()); + } + + /** + * Handle game intro start + */ + onIntroStart() { + const { width } = this.scale.gameSize; + + this.tweens.add({ + targets: this.cameras.main, + duration: GameScene.CONFIG.INTRO.DURATION, + width, + }); + } + + /** + * Handle game intro complete + */ + onIntroComplete() { + this.resizeManager.resizeCanvas(this.scale.gameSize, this.scale.parentSize); + } + + /** + * Handle game restart + */ + onGameRestart() { + this.isPlaying = true; + this.readyToRestart = false; + + this.distance = 0; + this.speed = 0; + this.maxSpeed = 0; + this.initSpeed(); + } + + /** + * Handle gameover + */ + onGameOver() { + this.isPlaying = false; + + if (this.game.device.features.vibration) { + navigator.vibrate(GameScene.CONFIG.GAMEOVER.VIBRATION); + } + } + + /** + * Handle high score + * @param {number} highScore - New high score record + */ + // eslint-disable-next-line class-methods-use-this + onHighScoreRecord(highScore) { + ScoreManager.saveHighScore(highScore); + } + + /** + * Handle high score reset + */ + onHighScoreReset() { + ScoreManager.resetHighScore(0); + this.ui.highScorePanel.setScore(0); + } + + /** + * Get current score + * @readonly + */ + get score() { + return Math.round(Math.ceil(this.distance * GameScene.CONFIG.GAME.SCORE.COEFFICIENT)); + } + + /** + * Check if night mode should start + * @readonly + */ + get shouldNightModeStart() { + const { score, nightMode } = this; + const { DISTANCE } = GameScene.CONFIG.NIGHTMODE; + + return score > 0 && score % DISTANCE === 0 && !nightMode.isEnabled; + } + + /** + * Handle canvas resize + * @param {Phaser.Structs.Size} gameSize - Current game size + * @readonly + */ + onResizeCanvas(gameSize) { + const { width, height } = gameSize; + + if (!this.intro.isComplete) { + return { + width: width * 0.8, + height: height * 0.8, + }; + } + + return { + width, + height, + }; + } + + /** + * Handle game speed resize + * @param {Phaser.Structs.Size} gameSize - Current game size + * @readonly + */ + onResizeGameSpeed(gameSize) { + const { MAX, MOBILE_COEFFICIENT } = GameScene.CONFIG.GAME.OBSTACLES.SPEED; + + if (gameSize.width === CONFIG.GAME.WIDTH.LANDSCAPE) { + this.speed *= MOBILE_COEFFICIENT; + this.maxSpeed = MAX; + } else if (gameSize.width === CONFIG.GAME.WIDTH.PORTRAIT) { + this.speed /= MOBILE_COEFFICIENT; + this.maxSpeed = MAX / MOBILE_COEFFICIENT; + } + } + + /** + * Handle camera resize + * @param {Phaser.Structs.Size} gameSize - Current game size + * @readonly + */ + onResizeCamera(gameSize) { + const { width, height } = gameSize; + const { main: mainCamera } = this.cameras; + + mainCamera.setOrigin(0, 0.5); + + if (this.intro.isComplete) { + mainCamera.setViewport(0, 0, width, height); + } else { + mainCamera.setViewport(0, 0, GameScene.CONFIG.INTRO.CAMERA.WIDTH, height); + } + } + + /** + * Handle gameobjects resize + * @param {Phaser.Structs.Size} gameSize - Current game size + * @readonly + */ + onResizeGameObjects(gameSize) { + this.ui.resize(gameSize); + this.ground.resize(gameSize); + } + + /** + * Resume audio context if suspended + */ + resumeAudioContext() { + const { context } = this.game.sound; + + if (context && context.state === 'suspended') { + context.resume(); + } + } +} + +export default GameScene; diff --git a/src/scenes/game/InputManager.js b/src/scenes/game/InputManager.js new file mode 100644 index 0000000..776bcfd --- /dev/null +++ b/src/scenes/game/InputManager.js @@ -0,0 +1,116 @@ +import Phaser from 'phaser'; + +import CONFIG from '../../config/game'; + +class InputManager { + /** + * InputManager + * @static + */ + static CONFIG = CONFIG.SCENES.GAME; + + /** + * Creates an instance of InputManager + * @param {Phaser.Scene} scene - The Scene to which this InputManager belongs + */ + constructor(scene) { + this.scene = scene; + + this.init(); + this.initEventHandlers(); + } + + /** + * Init + */ + init() { + this.cursors = this.scene.input.keyboard.createCursorKeys(); + this.enterKey = this.scene.input.keyboard.addKey(Phaser.Input.Keyboard.KeyCodes.ENTER); + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.scene.events.on(CONFIG.EVENTS.GAME_OVER, this.onGameOver, this); + } + + /** + * Update inputManager + */ + update() { + const { scene } = this; + + if (scene.isInitialStart) { + if (this.isUpKeyPressed) { + scene.events.emit(CONFIG.EVENTS.GAME_START); + } + return; + } + + if (!scene.isPlaying) { + if (this.isEnterKeyJustUp) { + scene.events.emit(CONFIG.EVENTS.GAME_RESTART); + } + + if (scene.readyToRestart) { + if (this.isUpKeyJustUp) { + scene.events.emit(CONFIG.EVENTS.GAME_RESTART); + } + } + } + } + + /** + * Handle gameover + */ + onGameOver() { + const { scene } = this; + + scene.time.delayedCall(InputManager.CONFIG.RESTART.COOLDOWN, () => { + scene.input.keyboard.resetKeys(); + + if (!scene.isPlaying) { + scene.readyToRestart = true; + } + }); + } + + /** + * Check if up key is pressed + * @readonly + * @returns {boolean} + */ + get isUpKeyPressed() { + const { activePointer } = this.scene.input; + + return ( + this.cursors.up.isDown || + this.cursors.space.isDown || + (activePointer.isDown && activePointer.wasTouch) + ); + } + + /** + * Check if up key is just up + * @readonly + * @returns {boolean} + */ + get isUpKeyJustUp() { + return ( + Phaser.Input.Keyboard.JustUp(this.cursors.up) || + Phaser.Input.Keyboard.JustUp(this.cursors.space) + ); + } + + /** + * Check if enter key is just up + * @readonly + * @returns {boolean} + */ + get isEnterKeyJustUp() { + return Phaser.Input.Keyboard.JustUp(this.enterKey); + } +} + +export default InputManager; diff --git a/src/scenes/game/Intro.js b/src/scenes/game/Intro.js new file mode 100644 index 0000000..12f1dcc --- /dev/null +++ b/src/scenes/game/Intro.js @@ -0,0 +1,89 @@ +import CONFIG from '../../config/game'; + +/** + * Intro + * @class Intro + */ +class Intro { + static CONFIG = CONFIG.SCENES.GAME.INTRO; + + /** + * Creates an instance of Intro + * @param {Phaser.Events.EventEmitter} eventEmitter - The EventEmitter which this Intro uses + */ + constructor(eventEmitter) { + this.setEventEmitter(eventEmitter); + this.setState(Intro.CONFIG.STATES.WAITING); + } + + /** + * Set event emitter + * @param {Phaser.Events.EventEmitter} eventEmitter + */ + setEventEmitter(eventEmitter) { + this.eventEmitter = eventEmitter; + } + + /** + * Start intro + */ + start() { + this.setState(Intro.CONFIG.STATES.STARTED); + this.eventEmitter.emit(CONFIG.EVENTS.GAME_INTRO_START); + } + + /** + * Complete intro + */ + complete() { + this.setState(Intro.CONFIG.STATES.COMPLETE); + this.eventEmitter.emit(CONFIG.EVENTS.GAME_INTRO_COMPLETE); + } + + /** + * Set intro state + * @param {string} state - State to be set + * @returns {Intro} this + * @throws Will throw an error if state argument is invalid + */ + setState(state) { + if (Object.hasOwnProperty.call(Intro.CONFIG.STATES, state)) { + this.state = state; + return this; + } + + const possibleValuesString = Object.values(Intro.CONFIG.STATES) + .map(v => `'${v}'`) + .join(', '); + + throw new Error( + `Invalid Intro State\nPassed: '${state}'\nPossible values: ${possibleValuesString}`, + ); + } + + /** + * Check if intro state is `waiting` + * @readonly + */ + get isWaiting() { + return this.state === Intro.CONFIG.STATES.WAITING; + } + + /** + * Check if intro state is `started` + * @readonly + */ + get isStarted() { + return this.state === Intro.CONFIG.STATES.STARTED; + } + + /** + * Check if intro state is `complete` + * @readonly + */ + get isComplete() { + return this.state === Intro.CONFIG.STATES.COMPLETE; + } +} + +export default Intro; diff --git a/src/scenes/game/ResizeManager.js b/src/scenes/game/ResizeManager.js new file mode 100644 index 0000000..bf60af0 --- /dev/null +++ b/src/scenes/game/ResizeManager.js @@ -0,0 +1,107 @@ +import CONFIG from '../../config/game'; + +/** + * ResizeManager + * @class ResizeManager + */ +class ResizeManager { + static CONFIG = CONFIG.SCENES.GAME; + + /** + * Creates an instance of ResizeManager + * @param {Phaser.Scene} scene - The Scene to which this ResizeManager belongs + * @param {*} resizeCallbacks - Callback to be called + * @memberof ResizeManager + */ + constructor(scene, { canvas, camera, gameSpeed, gameObjects }) { + this.game = scene.game; + this.canvas = scene.game.canvas; + this.scale = scene.scale; + + this.callbacks = { + canvas, + camera, + gameSpeed, + gameObjects, + }; + + this.init(); + this.initEventHandlers(); + } + + /** + * Init + */ + init() { + this.gameWidth = this.scale.gameSize.width; + } + + /** + * Init event handlers + */ + initEventHandlers() { + this.scale.on('resize', () => { + this.resize(this.scale.gameSize, this.scale.parentSize); + }); + } + + /** + * Resize scene + * @param {Phaser.Structs.Size} gameSize - Current game size + * @param {Phaser.Structs.Size} parentSize - Current parent size + */ + resize(gameSize, parentSize) { + this.resizeCanvas(gameSize, parentSize); + this.resizeGameSpeed(gameSize); + this.resizeCamera(gameSize); + this.resizeGameObjects(gameSize); + } + + /** + * Resize canvas + * @param {Phaser.Structs.Size} gameSize - Current game size + * @param {Phaser.Structs.Size} parentSize - Current parent size + */ + resizeCanvas(gameSize, parentSize) { + const { width, height } = this.callbacks.canvas({ + width: parentSize.width, + height: gameSize.height * (parentSize.width / gameSize.width), + }); + + this.canvas.style.width = `${width}px`; + this.canvas.style.height = `${height}px`; + } + + /** + * Resize game spedd + * @param {Phaser.Structs.Size} gameSize - Current game size + * @param {Phaser.Structs.Size} parentSize - Current parent size + */ + resizeGameSpeed(gameSize) { + if (this.gameWidth !== gameSize.width) { + this.callbacks.gameSpeed(gameSize); + } + + this.gameWidth = gameSize.width; + } + + /** + * Resize camera + * @param {Phaser.Structs.Size} gameSize - Current game size + * @param {Phaser.Structs.Size} parentSize - Current parent size + */ + resizeCamera(gameSize) { + this.callbacks.camera(gameSize); + } + + /** + * Resize gameobjects + * @param {Phaser.Structs.Size} gameSize - Current game size + * @param {Phaser.Structs.Size} parentSize - Current parent size + */ + resizeGameObjects(gameSize) { + this.callbacks.gameObjects(gameSize); + } +} + +export default ResizeManager; diff --git a/src/scenes/game/ScoreManager.js b/src/scenes/game/ScoreManager.js new file mode 100644 index 0000000..ad1f168 --- /dev/null +++ b/src/scenes/game/ScoreManager.js @@ -0,0 +1,52 @@ +import CONFIG from '../../config/game'; + +/** + * ScoreManager + */ +class ScoreManager { + static CONFIG = { + COEFFICIENT: CONFIG.SCENES.GAME.GAME.SCORE.COEFFICIENT, + STORAGE_KEY: CONFIG.SCENES.GAME.GAME.HIGH_SCORE.STORAGE_KEY, + }; + + /** + * Get high score from localstorage + * @static + * @returns {number} + */ + static getHighScore() { + if (window.localStorage.getItem(ScoreManager.CONFIG.STORAGE_KEY) === null) { + ScoreManager.resetHighScore(); + } + + return Number.parseInt(window.localStorage.getItem(ScoreManager.CONFIG.STORAGE_KEY), 10) || 0; + } + + /** + * Save high score to localstorage + * @static + * @param {number} highScore + */ + static saveHighScore(highScore) { + window.localStorage.setItem(ScoreManager.CONFIG.STORAGE_KEY, highScore); + } + + /** + * Reset high score in localstorage + * @static + * @param {number} [highScore=0] + */ + static resetHighScore(highScore = 0) { + window.localStorage.setItem(ScoreManager.CONFIG.STORAGE_KEY, highScore); + } + + /** + * Remove high score from localstorage + * @static + */ + static removeHighScore() { + window.localStorage.removeItem(ScoreManager.CONFIG.STORAGE_KEY); + } +} + +export default ScoreManager; diff --git a/src/scenes/game/SoundManager.js b/src/scenes/game/SoundManager.js new file mode 100644 index 0000000..211d284 --- /dev/null +++ b/src/scenes/game/SoundManager.js @@ -0,0 +1,63 @@ +import CONFIG from '../../config/game'; + +/** + * SoundManager + * @class SoundManager + */ +class SoundManager { + /** + * Creates an instance of SoundManager. + * @param {Phaser.Scene} scene - The Scene to which this SoundManager belongs + */ + constructor(scene) { + this.scene = scene; + + this.init(); + this.initEventHandlers(); + } + + /** + * Init + */ + init() { + const { scene } = this; + + this.playerAction = scene.sound.add('player-action'); + this.achievement = scene.sound.add('achievement'); + this.gameover = scene.sound.add('gameover'); + } + + /** + * Init event handlers + */ + initEventHandlers() { + const { scene } = this; + + scene.events.on(CONFIG.EVENTS.PLAYER_ACTION, this.playPlayerAction, this); + scene.events.on(CONFIG.EVENTS.ACHIEVEMENT, this.playAchievement, this); + scene.events.on(CONFIG.EVENTS.GAME_OVER, this.playGameOver, this); + } + + /** + * Play player action sound + */ + playPlayerAction() { + this.playerAction.play(); + } + + /** + * Play achievement sound + */ + playAchievement() { + this.achievement.play(); + } + + /** + * Play gameover sound + */ + playGameOver() { + this.gameover.play(); + } +} + +export default SoundManager; diff --git a/src/scenes/game/UI.js b/src/scenes/game/UI.js new file mode 100644 index 0000000..fadaa08 --- /dev/null +++ b/src/scenes/game/UI.js @@ -0,0 +1,55 @@ +import ScoreZone from '../../prefabs/ui/ScoreZone'; +import CurrentScorePanel from '../../prefabs/ui/CurrentScorePanel'; +import HighScorePanel from '../../prefabs/ui/HighScorePanel'; +import GameOverPanel from '../../prefabs/ui/GameOverPanel'; + +/** + * UI + * @class UI + */ +class UI { + /** + * Creates an instance of UI + * @param {Phaser.Scene} scene - The Scene to which this UI belongs + */ + constructor(scene) { + this.scene = scene; + + this.init(); + } + + /** + * Init + */ + init() { + const { scene } = this; + + this.currentScorePanel = new CurrentScorePanel(scene); + this.highScorePanel = new HighScorePanel(scene); + this.gameOverPanel = new GameOverPanel(scene); + this.scoreZone = new ScoreZone(this.currentScorePanel, this.highScorePanel); + } + + /** + * Update UI + * @param {boolean} isPlaying - Whether game is running + * @param {Phaser.Structs.Size} gameSize - Current game size + * @param {number} score - Current game score + */ + update(isPlaying, gameSize, score) { + this.currentScorePanel.update(isPlaying, score); + this.highScorePanel.update(score); + this.scoreZone.update(gameSize); + } + + /** + * Resize UI + * @param {Phaser.Structs.Size} gameSize - Current game size + */ + resize(gameSize) { + this.scoreZone.resize(gameSize); + this.gameOverPanel.resize(gameSize); + } +} + +export default UI; diff --git a/src/scenes/menu/MainMenu.js b/src/scenes/menu/MainMenu.js deleted file mode 100644 index 231bbe9..0000000 --- a/src/scenes/menu/MainMenu.js +++ /dev/null @@ -1,36 +0,0 @@ -import Phaser from 'phaser'; - -import GameScene from '../Game'; -import SceneButton from '../../prefabs/SceneButton'; - -class MainMenuScene extends Phaser.Scene { - static name = 'MainMenuScene'; - - constructor() { - super(MainMenuScene.name); - } - - create() { - this.createPlayButton(); - } - - createPlayButton() { - const { width, height } = this.scale.gameSize; - const centerX = width / 2; - const centerY = height / 2; - - this.gameButton = new SceneButton({ - scene: this, - nextScene: GameScene.name, - x: centerX, - y: centerY, - text: 'Play', - textures: { - default: 'button', - hover: 'buttonHover', - }, - }); - } -} - -export default MainMenuScene; diff --git a/src/utils/animationsCreator.js b/src/utils/animationsCreator.js deleted file mode 100644 index cdd8134..0000000 --- a/src/utils/animationsCreator.js +++ /dev/null @@ -1,50 +0,0 @@ -export default function createAnimations(scene, animationData) { - animationData.anims.forEach(data => { - let frames; - let framesArray; - - if (data.frames.typeOfGeneration === 'generateFrameNames') { - frames = scene.anims.generateFrameNames(data.frames.key, { - prefix: data.frames.prefix || '', - start: data.frames.start || 0, - end: data.frames.end || 0, - suffix: data.frames.suffix || '', - zeroPad: data.frames.zeroPad || 0, - frames: data.frames.frames || false, - }); - } else if (data.frames.typeOfGeneration === 'generateFrameNumbers') { - frames = scene.anims.generateFrameNumbers(data.frames.key, { - start: data.frames.start || 0, - end: data.frames.end || -1, - first: data.frames.first || false, - frames: data.frames.frames || false, - }); - } else { - data.frames.forEach(i => { - const frame = { - key: i.key, - frame: i.frame, - duration: i.duration || 0, - visible: i.visible, - }; - - framesArray.push(frame); - }); - } - - scene.anims.create({ - key: data.key, - frames: frames || framesArray, - defaultTextureKey: data.defaultTextureKey || null, - frameRate: data.frameRate || 24, - duration: data.duration, - skipMissedFrames: data.skipMissedFrames || true, - delay: data.delay || 0, - repeat: data.repeat || 0, - repeatDelay: data.repeatDelay || 0, - yoyo: data.yoyo || false, - showOnStart: data.showOnStart || false, - hideOnComplete: data.hideOnComplete || false, - }); - }); -} diff --git a/src/utils/assetsLoader.js b/src/utils/assetsLoader.js deleted file mode 100644 index b0b59ef..0000000 --- a/src/utils/assetsLoader.js +++ /dev/null @@ -1,30 +0,0 @@ -export default function loadAssets(scene, assets) { - Object.keys(assets).forEach(assetKey => { - const asset = assets[assetKey]; - switch (asset.type) { - case 'image': { - scene.load.image(assetKey, asset.source); - break; - } - - case 'spritesheet': { - scene.load.spritesheet(assetKey, asset.source, { - frameWidth: asset.frameWidth, - frameHeight: asset.frameHeight, - frames: asset.frames, - margin: asset.margin, - spacing: asset.spacing, - }); - break; - } - - case 'tilemap': { - scene.load.tilemapTiledJSON(assetKey, asset.source); - break; - } - - default: - break; - } - }); -} diff --git a/src/utils/resize.js b/src/utils/resize.js deleted file mode 100644 index 8d14664..0000000 --- a/src/utils/resize.js +++ /dev/null @@ -1,17 +0,0 @@ -export default function resizeGame(game) { - const canvas = document.querySelector('canvas'); - - const windowWidth = window.innerWidth; - const windowHeight = window.innerHeight; - - const windowRatio = windowWidth / windowHeight; - const gameRatio = game.config.width / game.config.height; - - if (windowRatio < gameRatio) { - canvas.style.width = `${windowWidth}px`; - canvas.style.height = `${windowWidth / gameRatio}px`; - } else { - canvas.style.width = `${windowHeight * gameRatio}px`; - canvas.style.height = `${windowHeight}px`; - } -} diff --git a/webpack/base.js b/webpack/base.js index aa9797b..2ce9386 100644 --- a/webpack/base.js +++ b/webpack/base.js @@ -46,18 +46,18 @@ module.exports = { template: './index.html', }), new FaviconsWebpackPlugin({ - logo: './assets/sprites/logo.png', + logo: './assets/icons/dino-start-icon.png', prefix: 'favicons', favicons: { - appName: 'Phaser 3 Project Template', + appName: 'Dino', start_url: '/', display: 'fullscreen', background: '#fff', theme_color: '#fff', icons: { android: true, - appleIcon: true, - appleStartup: true, + appleIcon: { background: 'transparent' }, + appleStartup: { background: 'transparent' }, coast: false, favicons: true, firefox: false, diff --git a/webpack/prod.js b/webpack/prod.js index 47d6faa..96f0788 100644 --- a/webpack/prod.js +++ b/webpack/prod.js @@ -26,6 +26,7 @@ module.exports = merge.smart(base, { { from: 'assets', to: 'assets', + ignore: ['**/_raw/**/*.*', '**/README.md'], }, ]), new MiniCssExtractPlugin({