From 16dc64c66c24ea172defdb4e50b7523a584c2cf3 Mon Sep 17 00:00:00 2001 From: Sagi Dayan Date: Mon, 14 Sep 2020 11:21:59 -0400 Subject: [PATCH] Initial Commit --- .gitignore | 9 + .images/diagram.png | Bin 0 -> 43798 bytes .images/example-large.png | Bin 0 -> 780 bytes .images/example.png | Bin 0 -> 252 bytes .images/logo.png | Bin 0 -> 625 bytes .images/ui.png | Bin 0 -> 30814 bytes assets/HUD/coins_hud.png | Bin 0 -> 188 bytes assets/HUD/coins_hud.png.import | 34 ++ assets/HUD/fonts.png | Bin 0 -> 855 bytes assets/HUD/fonts.png.import | 34 ++ assets/HUD/health_hud_left.png | Bin 0 -> 136 bytes assets/HUD/health_hud_left.png.import | 34 ++ assets/HUD/health_hud_middle.png | Bin 0 -> 95 bytes assets/HUD/health_hud_middle.png.import | 34 ++ assets/HUD/health_hud_right.png | Bin 0 -> 151 bytes assets/HUD/health_hud_right.png.import | 34 ++ assets/HUD/hud_stats_bg.png | Bin 0 -> 2720 bytes assets/HUD/hud_stats_bg.png.import | 34 ++ assets/HUD/lifes_icon.png | Bin 0 -> 245 bytes assets/HUD/lifes_icon.png.import | 34 ++ assets/HUD/new_bitmapfont.tres | 3 + assets/Items/CoinAtlas.tres | 8 + assets/Items/coin_anim_strip_6.png | Bin 0 -> 321 bytes assets/Items/coin_anim_strip_6.png.import | 34 ++ assets/Items/coin_animation_6_2.png | Bin 0 -> 7788 bytes assets/Items/coin_animation_6_2.png.import | 34 ++ assets/Items/coin_pickup_anim_strip_6.png | Bin 0 -> 284 bytes .../Items/coin_pickup_anim_strip_6.png.import | 34 ++ assets/Items/save_point_anim_strip_9.png | Bin 0 -> 702 bytes .../Items/save_point_anim_strip_9.png.import | 34 ++ assets/Items/tiki_torch_props_strip_12.png | Bin 0 -> 567 bytes .../tiki_torch_props_strip_12.png.import | 34 ++ assets/Items/torch_ligt_texture.png | Bin 0 -> 5378 bytes assets/Items/torch_ligt_texture.png.import | 34 ++ assets/Levels/Test/background.png | Bin 0 -> 2559 bytes assets/Levels/Test/background.png.import | 34 ++ assets/Levels/Test/bg_0.png | Bin 0 -> 1279 bytes assets/Levels/Test/bg_0.png.import | 34 ++ assets/Levels/Test/bg_1.png | Bin 0 -> 3171 bytes assets/Levels/Test/bg_1.png.import | 34 ++ assets/Levels/Test/bg_2.png | Bin 0 -> 1378 bytes assets/Levels/Test/bg_2.png.import | 34 ++ assets/Levels/Test/fg_0.png | Bin 0 -> 262 bytes assets/Levels/Test/fg_0.png.import | 34 ++ assets/Levels/Test/fg_1.png | Bin 0 -> 927 bytes assets/Levels/Test/fg_1.png.import | 34 ++ assets/Levels/Test/waterfall_anim.gif | Bin 0 -> 273 bytes assets/Levels/Test/waterfall_anim_strip_4.png | Bin 0 -> 182 bytes .../Test/waterfall_anim_strip_4.png.import | 34 ++ assets/Levels/Test/waterfall_bottom_anim.gif | Bin 0 -> 217 bytes .../Test/waterfall_bottom_anim_strip_4.png | Bin 0 -> 173 bytes .../waterfall_bottom_anim_strip_4.png.import | 34 ++ .../Player/herochar_after_jump_dust_anim.gif | Bin 0 -> 182 bytes .../herochar_after_jump_dust_anim_strip_4.png | Bin 0 -> 138 bytes ...ar_after_jump_dust_anim_strip_4.png.import | 34 ++ .../Player/herochar_before_jump_dust_anim.gif | Bin 0 -> 176 bytes ...herochar_before_jump_dust_anim_strip_4.png | Bin 0 -> 140 bytes ...r_before_jump_dust_anim_strip_4.png.import | 34 ++ .../Player/herochar_before_or_after_jump.gif | Bin 0 -> 219 bytes .../herochar_before_or_after_jump_srip_2.png | Bin 0 -> 332 bytes ...har_before_or_after_jump_srip_2.png.import | 34 ++ assets/Player/herochar_death_anim.gif | Bin 0 -> 445 bytes assets/Player/herochar_death_anim_strip_8.png | Bin 0 -> 450 bytes .../herochar_death_anim_strip_8.png.import | 34 ++ assets/Player/herochar_hit_anim.gif | Bin 0 -> 221 bytes assets/Player/herochar_hit_anim_strip_3.png | Bin 0 -> 374 bytes .../herochar_hit_anim_strip_3.png.import | 34 ++ assets/Player/herochar_idle_anim.gif | Bin 0 -> 426 bytes assets/Player/herochar_idle_anim_strip_4.png | Bin 0 -> 482 bytes .../herochar_idle_anim_strip_4.png.import | 34 ++ assets/Player/herochar_jump_double_anim.gif | Bin 0 -> 229 bytes .../herochar_jump_double_anim_strip_3.png | Bin 0 -> 336 bytes ...rochar_jump_double_anim_strip_3.png.import | 34 ++ assets/Player/herochar_jump_down_anim.gif | Bin 0 -> 329 bytes .../herochar_jump_down_anim_strip_3.png | Bin 0 -> 351 bytes ...herochar_jump_down_anim_strip_3.png.import | 34 ++ assets/Player/herochar_jump_up_anim.gif | Bin 0 -> 332 bytes .../Player/herochar_jump_up_anim_strip_3.png | Bin 0 -> 353 bytes .../herochar_jump_up_anim_strip_3.png.import | 34 ++ .../Player/herochar_pushing_foward_anim.gif | Bin 0 -> 587 bytes .../herochar_pushing_foward_anim_strip_6.png | Bin 0 -> 516 bytes ...har_pushing_foward_anim_strip_6.png.import | 34 ++ assets/Player/herochar_run_anim.gif | Bin 0 -> 597 bytes assets/Player/herochar_run_anim_strip_6.png | Bin 0 -> 526 bytes .../herochar_run_anim_strip_6.png.import | 34 ++ assets/Player/herochar_spritesheet.png | Bin 0 -> 3521 bytes assets/Player/herochar_spritesheet.png.import | 34 ++ assets/Player/herochar_sword_attack_anim.gif | Bin 0 -> 483 bytes .../herochar_sword_attack_anim_strip_4.png | Bin 0 -> 568 bytes ...ochar_sword_attack_anim_strip_4.png.import | 34 ++ assets/Player/hit_sparkle_anim.gif | Bin 0 -> 230 bytes assets/Player/hit_sparkle_anim_strip_4.png | Bin 0 -> 202 bytes .../hit_sparkle_anim_strip_4.png.import | 34 ++ assets/SplashScreen/BLANK.png | Bin 0 -> 1385 bytes assets/SplashScreen/BLANK.png.import | 34 ++ assets/SplashScreen/SAGI.png | Bin 0 -> 23378 bytes assets/SplashScreen/SAGI.png.import | 34 ++ assets/Theme/Theme.tres | 12 + assets/Theme/slkscr.ttf | Bin 0 -> 18336 bytes assets/Tiles/SemiSolidsTileMap.tscn | 57 ++ assets/Tiles/SolidsTileMap.tscn | 241 ++++++++ assets/Tiles/bigflowers_props.png | Bin 0 -> 205 bytes assets/Tiles/bigflowers_props.png.import | 34 ++ assets/Tiles/drygrass_props.png | Bin 0 -> 180 bytes assets/Tiles/drygrass_props.png.import | 34 ++ assets/Tiles/flowers_props.png | Bin 0 -> 243 bytes assets/Tiles/flowers_props.png.import | 34 ++ assets/Tiles/grass_props.png | Bin 0 -> 178 bytes assets/Tiles/grass_props.png.import | 34 ++ assets/Tiles/root_props.png | Bin 0 -> 160 bytes assets/Tiles/root_props.png.import | 34 ++ assets/Tiles/spikes_trap.png | Bin 0 -> 206 bytes assets/Tiles/spikes_trap.png.import | 34 ++ assets/Tiles/tileset.png | Bin 0 -> 4020 bytes assets/Tiles/tileset.png.import | 34 ++ assets/Water/WaterFall.tscn | 43 ++ assets/Water/WaterfallBottom.tscn | 35 ++ assets/Water/waterfall_anim_strip_4.png | Bin 0 -> 182 bytes .../Water/waterfall_anim_strip_4.png.import | 34 ++ .../Water/waterfall_bottom_anim_strip_4.png | Bin 0 -> 173 bytes .../waterfall_bottom_anim_strip_4.png.import | 34 ++ default_env.tres | 7 + icon.png | Bin 0 -> 3305 bytes icon.png.import | 34 ++ project.godot | 129 ++++ sound/SAGI.ogg | Bin 0 -> 47927 bytes sound/SAGI.ogg.import | 15 + src/Actors/JumpDust.tscn | 44 ++ src/Actors/LandingDust.tscn | 44 ++ src/Actors/Player.gd | 88 +++ src/Actors/Player.tscn | 284 +++++++++ src/HUD/HUD.gd | 10 + src/HUD/HUD.tscn | 29 + src/Hazards/Spike.gd | 10 + src/Hazards/Spike.tscn | 33 + src/Intro/Intro.gd | 12 + src/Intro/Intro.tscn | 74 +++ src/Items/CheckPoint.gd | 21 + src/Items/CheckPoint.tscn | 133 ++++ src/Items/Coin.gd | 14 + src/Items/Coin.tscn | 221 +++++++ src/Items/Torch.tscn | 98 +++ src/Levels/LevelTemplate/Camera2D.gd | 15 + .../LevelTemplate/LevelScreenTemplate.tscn | 400 ++++++++++++ src/Levels/LevelTemplate/LevelTemplate.gd | 51 ++ src/Levels/LevelTemplate/LevelTemplate.tscn | 574 ++++++++++++++++++ 146 files changed, 4312 insertions(+) create mode 100644 .gitignore create mode 100644 .images/diagram.png create mode 100644 .images/example-large.png create mode 100644 .images/example.png create mode 100644 .images/logo.png create mode 100644 .images/ui.png create mode 100644 assets/HUD/coins_hud.png create mode 100644 assets/HUD/coins_hud.png.import create mode 100644 assets/HUD/fonts.png create mode 100644 assets/HUD/fonts.png.import create mode 100644 assets/HUD/health_hud_left.png create mode 100644 assets/HUD/health_hud_left.png.import create mode 100644 assets/HUD/health_hud_middle.png create mode 100644 assets/HUD/health_hud_middle.png.import create mode 100644 assets/HUD/health_hud_right.png create mode 100644 assets/HUD/health_hud_right.png.import create mode 100644 assets/HUD/hud_stats_bg.png create mode 100644 assets/HUD/hud_stats_bg.png.import create mode 100644 assets/HUD/lifes_icon.png create mode 100644 assets/HUD/lifes_icon.png.import create mode 100644 assets/HUD/new_bitmapfont.tres create mode 100644 assets/Items/CoinAtlas.tres create mode 100644 assets/Items/coin_anim_strip_6.png create mode 100644 assets/Items/coin_anim_strip_6.png.import create mode 100644 assets/Items/coin_animation_6_2.png create mode 100644 assets/Items/coin_animation_6_2.png.import create mode 100644 assets/Items/coin_pickup_anim_strip_6.png create mode 100644 assets/Items/coin_pickup_anim_strip_6.png.import create mode 100644 assets/Items/save_point_anim_strip_9.png create mode 100644 assets/Items/save_point_anim_strip_9.png.import create mode 100644 assets/Items/tiki_torch_props_strip_12.png create mode 100644 assets/Items/tiki_torch_props_strip_12.png.import create mode 100644 assets/Items/torch_ligt_texture.png create mode 100644 assets/Items/torch_ligt_texture.png.import create mode 100644 assets/Levels/Test/background.png create mode 100644 assets/Levels/Test/background.png.import create mode 100644 assets/Levels/Test/bg_0.png create mode 100644 assets/Levels/Test/bg_0.png.import create mode 100644 assets/Levels/Test/bg_1.png create mode 100644 assets/Levels/Test/bg_1.png.import create mode 100644 assets/Levels/Test/bg_2.png create mode 100644 assets/Levels/Test/bg_2.png.import create mode 100644 assets/Levels/Test/fg_0.png create mode 100644 assets/Levels/Test/fg_0.png.import create mode 100644 assets/Levels/Test/fg_1.png create mode 100644 assets/Levels/Test/fg_1.png.import create mode 100644 assets/Levels/Test/waterfall_anim.gif create mode 100644 assets/Levels/Test/waterfall_anim_strip_4.png create mode 100644 assets/Levels/Test/waterfall_anim_strip_4.png.import create mode 100644 assets/Levels/Test/waterfall_bottom_anim.gif create mode 100644 assets/Levels/Test/waterfall_bottom_anim_strip_4.png create mode 100644 assets/Levels/Test/waterfall_bottom_anim_strip_4.png.import create mode 100644 assets/Player/herochar_after_jump_dust_anim.gif create mode 100644 assets/Player/herochar_after_jump_dust_anim_strip_4.png create mode 100644 assets/Player/herochar_after_jump_dust_anim_strip_4.png.import create mode 100644 assets/Player/herochar_before_jump_dust_anim.gif create mode 100644 assets/Player/herochar_before_jump_dust_anim_strip_4.png create mode 100644 assets/Player/herochar_before_jump_dust_anim_strip_4.png.import create mode 100644 assets/Player/herochar_before_or_after_jump.gif create mode 100644 assets/Player/herochar_before_or_after_jump_srip_2.png create mode 100644 assets/Player/herochar_before_or_after_jump_srip_2.png.import create mode 100644 assets/Player/herochar_death_anim.gif create mode 100644 assets/Player/herochar_death_anim_strip_8.png create mode 100644 assets/Player/herochar_death_anim_strip_8.png.import create mode 100644 assets/Player/herochar_hit_anim.gif create mode 100644 assets/Player/herochar_hit_anim_strip_3.png create mode 100644 assets/Player/herochar_hit_anim_strip_3.png.import create mode 100644 assets/Player/herochar_idle_anim.gif create mode 100644 assets/Player/herochar_idle_anim_strip_4.png create mode 100644 assets/Player/herochar_idle_anim_strip_4.png.import create mode 100644 assets/Player/herochar_jump_double_anim.gif create mode 100644 assets/Player/herochar_jump_double_anim_strip_3.png create mode 100644 assets/Player/herochar_jump_double_anim_strip_3.png.import create mode 100644 assets/Player/herochar_jump_down_anim.gif create mode 100644 assets/Player/herochar_jump_down_anim_strip_3.png create mode 100644 assets/Player/herochar_jump_down_anim_strip_3.png.import create mode 100644 assets/Player/herochar_jump_up_anim.gif create mode 100644 assets/Player/herochar_jump_up_anim_strip_3.png create mode 100644 assets/Player/herochar_jump_up_anim_strip_3.png.import create mode 100644 assets/Player/herochar_pushing_foward_anim.gif create mode 100644 assets/Player/herochar_pushing_foward_anim_strip_6.png create mode 100644 assets/Player/herochar_pushing_foward_anim_strip_6.png.import create mode 100644 assets/Player/herochar_run_anim.gif create mode 100644 assets/Player/herochar_run_anim_strip_6.png create mode 100644 assets/Player/herochar_run_anim_strip_6.png.import create mode 100644 assets/Player/herochar_spritesheet.png create mode 100644 assets/Player/herochar_spritesheet.png.import create mode 100644 assets/Player/herochar_sword_attack_anim.gif create mode 100644 assets/Player/herochar_sword_attack_anim_strip_4.png create mode 100644 assets/Player/herochar_sword_attack_anim_strip_4.png.import create mode 100644 assets/Player/hit_sparkle_anim.gif create mode 100644 assets/Player/hit_sparkle_anim_strip_4.png create mode 100644 assets/Player/hit_sparkle_anim_strip_4.png.import create mode 100644 assets/SplashScreen/BLANK.png create mode 100644 assets/SplashScreen/BLANK.png.import create mode 100644 assets/SplashScreen/SAGI.png create mode 100644 assets/SplashScreen/SAGI.png.import create mode 100644 assets/Theme/Theme.tres create mode 100644 assets/Theme/slkscr.ttf create mode 100644 assets/Tiles/SemiSolidsTileMap.tscn create mode 100644 assets/Tiles/SolidsTileMap.tscn create mode 100644 assets/Tiles/bigflowers_props.png create mode 100644 assets/Tiles/bigflowers_props.png.import create mode 100644 assets/Tiles/drygrass_props.png create mode 100644 assets/Tiles/drygrass_props.png.import create mode 100644 assets/Tiles/flowers_props.png create mode 100644 assets/Tiles/flowers_props.png.import create mode 100644 assets/Tiles/grass_props.png create mode 100644 assets/Tiles/grass_props.png.import create mode 100644 assets/Tiles/root_props.png create mode 100644 assets/Tiles/root_props.png.import create mode 100644 assets/Tiles/spikes_trap.png create mode 100644 assets/Tiles/spikes_trap.png.import create mode 100644 assets/Tiles/tileset.png create mode 100644 assets/Tiles/tileset.png.import create mode 100644 assets/Water/WaterFall.tscn create mode 100644 assets/Water/WaterfallBottom.tscn create mode 100644 assets/Water/waterfall_anim_strip_4.png create mode 100644 assets/Water/waterfall_anim_strip_4.png.import create mode 100644 assets/Water/waterfall_bottom_anim_strip_4.png create mode 100644 assets/Water/waterfall_bottom_anim_strip_4.png.import create mode 100644 default_env.tres create mode 100644 icon.png create mode 100644 icon.png.import create mode 100644 project.godot create mode 100644 sound/SAGI.ogg create mode 100644 sound/SAGI.ogg.import create mode 100644 src/Actors/JumpDust.tscn create mode 100644 src/Actors/LandingDust.tscn create mode 100644 src/Actors/Player.gd create mode 100644 src/Actors/Player.tscn create mode 100644 src/HUD/HUD.gd create mode 100644 src/HUD/HUD.tscn create mode 100644 src/Hazards/Spike.gd create mode 100644 src/Hazards/Spike.tscn create mode 100644 src/Intro/Intro.gd create mode 100644 src/Intro/Intro.tscn create mode 100644 src/Items/CheckPoint.gd create mode 100644 src/Items/CheckPoint.tscn create mode 100644 src/Items/Coin.gd create mode 100644 src/Items/Coin.tscn create mode 100644 src/Items/Torch.tscn create mode 100644 src/Levels/LevelTemplate/Camera2D.gd create mode 100644 src/Levels/LevelTemplate/LevelScreenTemplate.tscn create mode 100644 src/Levels/LevelTemplate/LevelTemplate.gd create mode 100644 src/Levels/LevelTemplate/LevelTemplate.tscn diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..79d3eb4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ + +# Godot-specific ignores +.import/ +export.cfg +export_presets.cfg + +# Mono-specific ignores +.mono/ +data_*/ diff --git a/.images/diagram.png b/.images/diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..14e888012f25afe6eaeb5898f2efc5792d08321f GIT binary patch literal 43798 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 @%yE0E^1WnCtN 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 literal 0 HcmV?d00001 diff --git a/.images/example-large.png b/.images/example-large.png new file mode 100644 index 0000000000000000000000000000000000000000..92de57ccf44e1ea5750913f82d489564563b30fc GIT binary patch literal 780 zcmeAS@N?(olHy`uVBq!ia0y~yU^D=-FK{pcN&Z!cTP$@_|{qNA6&0iXiNi40m-~B)GZ{^wNH$N9THHC*cOi=JZ;06W92{3%X zf5~^n&A-!*7wXt9c=dPJnm0D9=ijfHGvUEhQK(&)I2_>0;o4Zulz*&!_4j<<@9Jld zTUgewfyuZrG_kO7qGG)S`A^+f-%Gz)R%Q3D9Zi};h=mh@v<`{3ou)d=>xiME;E=c6d4_x6tH8arj~P;zB|ABJ@41gSHGE8zh^%4uKS#2 zbnU^r&o00Hzr1SR&7T&E2eq|9;fRSrA@?ApO5SMq{II?K*WXrd`j>0Bx<1|yt{M@x zh;V)&He2vc_SfIWz!-qLtCs=Uvk-R7f*ScvRrm8t-z6X6L<>1YNP>c>CUhVF&D{Iz zXV>qRH~MXJci;V2l~x4YeWimVm_Z$juV6lPm~i1H`yuaG(}KSFIlyGg;OXk;vd$@? F2>|S=2Mz!L literal 0 HcmV?d00001 diff --git a/.images/example.png b/.images/example.png new file mode 100644 index 0000000000000000000000000000000000000000..39d7b5e60cfc60279a6898dfeca6cc80639ae35d GIT binary patch literal 252 zcmeAS@N?(olHy`uVBq!ia0vp^!XP#W6OcUe?oa`c;wDKo(6G|A;re)PA zPZ0SS!tf(YMJn~usvl8d#;YdU8UG43J)78UNjmntfwB6L>AAnww9Ph}{#{>R tIIa5L1et_)Q+prIiCq8Gwm*9t|Ge1^cN7x;9R|99!PC{xWt~$(6976}Se^g? literal 0 HcmV?d00001 diff --git a/.images/logo.png b/.images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f3c75edda72d4f3e700b280928a59d2709e2173e GIT binary patch literal 625 zcmeAS@N?(olHy`uVBq!ia0y~yU;;9k7?_xWRHv9tCXiZN6%tVrlvu7%P?VpRnUkte zQdy9ykXn(M#=uZmRZ?_mX=Ki@@U8SNR2`8+$X@LJXJmPx6q|2#PNqi5U4zcL?Y z9hl`%boG*#CtK#F714`NJ`|n2rlzTB@5c|~Cp5O5(wp*7boa-fzXDW$yglc9_pn>? z#g{VNl~(?%XIzdr^2FwtbX1kYdW*8CqI)q_`EjKU7KQs>&(483fb)zivbG*YHVyA8X9Wbeh$iuIK;XZSS6@DcRCJ)%2=!suYnyH}zQt9dH=d#Wzp$Py8ACpr6 literal 0 HcmV?d00001 diff --git a/.images/ui.png b/.images/ui.png new file mode 100644 index 0000000000000000000000000000000000000000..7954e7397eee457e0661d7c8a9d1216e0731f767 GIT binary patch literal 30814 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 literal 0 HcmV?d00001 diff --git a/assets/HUD/coins_hud.png.import b/assets/HUD/coins_hud.png.import new file mode 100644 index 0000000..ab3bcba --- /dev/null +++ b/assets/HUD/coins_hud.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/coins_hud.png-3489fed8e3461aa2c76b16bd6b443f80.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/HUD/coins_hud.png" +dest_files=[ "res://.import/coins_hud.png-3489fed8e3461aa2c76b16bd6b443f80.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/HUD/fonts.png b/assets/HUD/fonts.png new file mode 100644 index 0000000000000000000000000000000000000000..7f8cc44c2a6aee74ce247b620b26f14f7d5e826f GIT binary patch literal 855 zcmV-d1E~CoP)BH0{GKtjj^2>8NmfQoH5-8~)- z*yS`Ot=8jmx7%&(vfWE5)o@T%RSy87HvcPnDW!TkU*ON*pXbW$=78DcC2Pnwl8fw0 zxY2No)p~hTpSR)$0L}yhl?}C_EX(9+yNF|XwO(HMl(A?;9Q$kXX~n{N*>-TzgAeGv{4}8wFoC)AG^PCOV@xLyw*2^sO)A=H+EA^@USp8|A5>cF%9plt( zdyiJ7XYm;(=GNfe^Qius5XCb9?k|I^XAs&B_+0;wJ_2~LHp=zCax72hi*qm~l5FuD zxCNbPFBbXDiIP%JE>k5>&LrmrX6^1x>LNE-}+8r}XnlG`-U zTANgf-D++}_uMfGAaFOiWtG1G1X!wMb#4T9Wl(rw2|cP=77;~Y|63Mc~d{qu1S79XkJQubarBWCf77>BXyMF z+2rM>@)^l>WM_>*9^yEWR{zrGTV3ib+)D)`zg1QBZjzX(9~NxA0uv}xUkqN4+k1s=~ttkz5O z{-x3Q=Gz4B^4|N3^&N3QzFAs!-rKF`PbP(2xQtNn>`?N~YQei{M-s_))_VZ=I3^!BdU^c` jvxY}Ydw4h3)MWpwSGTu6{1-oD!MOV literal 0 HcmV?d00001 diff --git a/assets/HUD/health_hud_middle.png.import b/assets/HUD/health_hud_middle.png.import new file mode 100644 index 0000000..4c5433d --- /dev/null +++ b/assets/HUD/health_hud_middle.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/health_hud_middle.png-816795c6899941056a24e179290e3919.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/HUD/health_hud_middle.png" +dest_files=[ "res://.import/health_hud_middle.png-816795c6899941056a24e179290e3919.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/HUD/health_hud_right.png b/assets/HUD/health_hud_right.png new file mode 100644 index 0000000000000000000000000000000000000000..ffd38d5c0ce7b4d8b0a2ca528d8b9ee209c0cd75 GIT binary patch literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`ah@)YAr`&K2@3=aq@<<)tA~HS zxj9`@^8Mc3Zkrgz{r4wjtkhDw9>>;J{eIow`2C*`)F&rD{_pcdYEiz{u>(Nhu#M5c vAnU*cvj>k}hVy`ch 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 literal 0 HcmV?d00001 diff --git a/assets/HUD/lifes_icon.png.import b/assets/HUD/lifes_icon.png.import new file mode 100644 index 0000000..81dda28 --- /dev/null +++ b/assets/HUD/lifes_icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/lifes_icon.png-3994799b9ddc1c4f62469052283bf682.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/HUD/lifes_icon.png" +dest_files=[ "res://.import/lifes_icon.png-3994799b9ddc1c4f62469052283bf682.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/HUD/new_bitmapfont.tres b/assets/HUD/new_bitmapfont.tres new file mode 100644 index 0000000..dc36313 --- /dev/null +++ b/assets/HUD/new_bitmapfont.tres @@ -0,0 +1,3 @@ +[gd_resource type="BitmapFont" format=2] + +[resource] diff --git a/assets/Items/CoinAtlas.tres b/assets/Items/CoinAtlas.tres new file mode 100644 index 0000000..2db480f --- /dev/null +++ b/assets/Items/CoinAtlas.tres @@ -0,0 +1,8 @@ +[gd_resource type="AtlasTexture" load_steps=2 format=2] + +[ext_resource path="res://assets/Items/coin_animation_6_2.png" type="Texture" id=1] + + +[resource] +atlas = ExtResource( 1 ) +region = Rect2( 0, 0, 8, 8 ) diff --git a/assets/Items/coin_anim_strip_6.png b/assets/Items/coin_anim_strip_6.png new file mode 100644 index 0000000000000000000000000000000000000000..5e2e6e0b72b4c82ff983b5dae67453f980ee9450 GIT binary patch literal 321 zcmV-H0lxl;P)Q|31kdXcXbFS&a!Na zX6miqZ=FsuQV>N%9srCn3W*wXHm*2xuTSoehmxnsM88XX>r&t!f8nR{(1(0P9}EFeD0ruAGQm;yuNkT zVCNn(BQ0wHE?#`diqc{>UygcCX2?@}$R0qQR)4Y_zbErJ`IV@mw4*kgFY$AEA9Vne znITW@A?pT=F-mV7fZG+WcjxdDNaMyb6FX=0#sy#R&f(XHoqNcPwB%FvpPtcQl&lL> TUFS0200000NkvXXu0mjfRc4CI literal 0 HcmV?d00001 diff --git a/assets/Items/coin_anim_strip_6.png.import b/assets/Items/coin_anim_strip_6.png.import new file mode 100644 index 0000000..7e64900 --- /dev/null +++ b/assets/Items/coin_anim_strip_6.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/coin_anim_strip_6.png-b885536f464c7ff2cc28ab6dd6236b29.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Items/coin_anim_strip_6.png" +dest_files=[ "res://.import/coin_anim_strip_6.png-b885536f464c7ff2cc28ab6dd6236b29.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Items/coin_animation_6_2.png b/assets/Items/coin_animation_6_2.png new file mode 100644 index 0000000000000000000000000000000000000000..2844a92a2a1f073d7fc8097fb1b77fb619c4dd17 GIT binary patch literal 7788 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 literal 0 HcmV?d00001 diff --git a/assets/Items/save_point_anim_strip_9.png.import b/assets/Items/save_point_anim_strip_9.png.import new file mode 100644 index 0000000..d746d4f --- /dev/null +++ b/assets/Items/save_point_anim_strip_9.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/save_point_anim_strip_9.png-719dddba1b11be06534d26a1a72955be.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Items/save_point_anim_strip_9.png" +dest_files=[ "res://.import/save_point_anim_strip_9.png-719dddba1b11be06534d26a1a72955be.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Items/tiki_torch_props_strip_12.png b/assets/Items/tiki_torch_props_strip_12.png new file mode 100644 index 0000000000000000000000000000000000000000..d92dd139903e1c6321808d0bc7aa08ca0c241846 GIT binary patch literal 567 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 sx7@$JM81Dzopr079K&0ssI2 literal 0 HcmV?d00001 diff --git a/assets/Levels/Test/bg_0.png.import b/assets/Levels/Test/bg_0.png.import new file mode 100644 index 0000000..3528f30 --- /dev/null +++ b/assets/Levels/Test/bg_0.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/bg_0.png-05eacacca9088ffa242f4c4eabb501af.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/bg_0.png" +dest_files=[ "res://.import/bg_0.png-05eacacca9088ffa242f4c4eabb501af.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Levels/Test/bg_1.png b/assets/Levels/Test/bg_1.png new file mode 100644 index 0000000000000000000000000000000000000000..ff50f9a04598a1450cac73925c1baaba31f26d6b GIT binary patch literal 3171 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 literal 0 HcmV?d00001 diff --git a/assets/Levels/Test/bg_1.png.import b/assets/Levels/Test/bg_1.png.import new file mode 100644 index 0000000..28e39bf --- /dev/null +++ b/assets/Levels/Test/bg_1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/bg_1.png-e97384d979da9c9567a24a90c5c1b5d3.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/bg_1.png" +dest_files=[ "res://.import/bg_1.png-e97384d979da9c9567a24a90c5c1b5d3.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Levels/Test/bg_2.png b/assets/Levels/Test/bg_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1187e6c37d080c5d36dce3981df62a96d2b522dc GIT binary patch literal 1378 zcmcJP|2xwO0LQ1AFRLyW9Z8&9a&x}cx|AU!wTxcLAynlQbhGLIwhS)$rAkb#i z(ZH}ZYS&zCYP^+p2%@M`Aj&s~PTeyWw~eF6KcmCA1L!Nna}!+)#ATTg!S zhcyfJ7aVfUi5+d~`GZ^c4tGd^0WiM!Xg zLkX54Re;g+z1Cf;c@J9b8jyc(1tSVOw^xDa_e}OpP`o3o=#l&6|Ocvw5;2i zYf!7-pf2e+isforaJX_T=_#a?C6|(q6lnm4Sp}wL>4QQyyX$zSKTq#=;6v_BS!zsx zJe9&KQ!b0HBQ3KvDHmJ43UBOg!`1s`Juz#FA!PHr_$`V7f5jbi_TnOAW_|>EnxLGg ztAw@3BfOE`9ISQSDr+{lwx94gL$`q8cVM|+LV*WRiv1vBpdI(w)9INbUgr4*mPkQ6 z_K9EGkYQWS+KSScx?aT~eym9lje{gm>;s-@y5k+&aomDm8IAh_-T_R^a5!Qm=?S~0 zx{8;)9_cG;OZL16j>R$qPQ-mvixG{p5(Cyg_~Z@Z~i6vFtS*NdYT*o7%dKZC?{B1`5;;?C5 z>{WIhI%j7KHM}8xCp_pr7~|y7lUYr4)=3j6XMPLp58IkgmA-l!n21 zgRHtU2bQ-UNT&Oq&*0?KC!H-i>4^NjEps)Al4B7SmXqY5D{ zXL=zo=^y})wPa9}O*FSUu!_EtdQsdqNnBcn5VcW-pNL0op)>gVaZh_BQ*PTA!?>>LCim|0~0nD5ts3n_;+o)nF!;O_7gdph6wN1P{a#N1qTx9fbE89sh zkvnw$?mk6PWpr){KiO&onm2ZIx$E^HfvGQUeJ1#USgj}rxl3I30`V(iO{T@oLTS~V zp#~lK5rI7xmg8hoU(cQ<0;~{b{{Wbhp~Z;NYcfB08cf39{>OV literal 0 HcmV?d00001 diff --git a/assets/Levels/Test/bg_2.png.import b/assets/Levels/Test/bg_2.png.import new file mode 100644 index 0000000..acc3732 --- /dev/null +++ b/assets/Levels/Test/bg_2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/bg_2.png-5f065cb478cc2023b92924419d4a6d09.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/bg_2.png" +dest_files=[ "res://.import/bg_2.png-5f065cb478cc2023b92924419d4a6d09.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Levels/Test/fg_0.png b/assets/Levels/Test/fg_0.png new file mode 100644 index 0000000000000000000000000000000000000000..b21d7d119a5ef17af2021d6cf9fcaa74cde9673c GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^AAooP2OE$yy8SQ}NS*a`aSW-L^Y*eMFN1;ri=l(; zp$Q%G8ytSbm}QEdNsnR%su?t(p}clo?JDI4`^8oaKhhI8(oj(u$hp%{s?lh Mr>mdKI;Vst0Kf+(hyVZp literal 0 HcmV?d00001 diff --git a/assets/Levels/Test/fg_0.png.import b/assets/Levels/Test/fg_0.png.import new file mode 100644 index 0000000..bbc3156 --- /dev/null +++ b/assets/Levels/Test/fg_0.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fg_0.png-509847c4069e1dadbdcac4805985209e.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/fg_0.png" +dest_files=[ "res://.import/fg_0.png-509847c4069e1dadbdcac4805985209e.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Levels/Test/fg_1.png b/assets/Levels/Test/fg_1.png new file mode 100644 index 0000000000000000000000000000000000000000..acf2ec29c5a7bfcc644a026dd991d233c63c6cb5 GIT binary patch literal 927 zcmeAS@N?(olHy`uVBq!ia0vp^AAooP2OE$yy8SSffq^;A)5S5QV$R!J_W73`WY`|W zFVQ)`6f}L6b2(d^-rPX@@}qZ_GBaBsLg!kspZ+V)7NqQ-^Tym{#?|(=lb*0bl*q(Vyal- z*Kqcj!Tz0xsw)fS1O?;w*Vg~LYo+w)?CWqr!NPCv-hO6%xvYujx1{u)Df{K^>wERA zTYtLhEzIT(md7Psf{9#9EnBDDV_1D)`+a2*T@46w!IqlV( zROUPP?yiq|D;xB4?WwdIH}-z=zRAqrYW^s{!JNN;ZcS|5oN}kRhh}|YwV1l`+<%SO z4dE%YD-r z>{6~aFS&L1Ic_iMw^2`j*uyB;r_^^{>lf*w^y!TW76@?O1olZ zVxH`cU`zj*yVtMJTep7Ry*+hTEmcqV?^)g>w%f`-UU{1Qs`p3o&P`lxmZi3J;+ChC z2d-THwn;YYZP6=7J^zK#Y&%LTK7U(p+r6p&{LSgxnD%5#URb33{JZw)`&TWB@7bSZ z-)M9|SKcjh{-4Mv+RdNtKAPc}cBcAMFxTIO?cLtzb~rE0trgfKW#!T}wiJf$(C(5PZX?CRz}vpU`#FkiN}E$xr0lg$^`ISaq9Ox{0#Lr6ut+VsV27V87< zn|ttuzMkP-^I{*vbpFJg4bj)OesgUI`dRc};{Au{%!};LbLOjtweSAYcf>pVMTk{g ze8K4e{lN2vjB!~Hq<6XB-~iytHiKt1?mIp25FT6YVCf+zZj_X i)TVoT+PT{ny_otev**>SMRAOTG?Q#E!pZpUwFUrUa$Lax literal 0 HcmV?d00001 diff --git a/assets/Levels/Test/waterfall_anim_strip_4.png b/assets/Levels/Test/waterfall_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..871d47e16fa58b65a0f98046a4a88ce317ddce82 GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0vp^4nQoy!3HF~w)}PhQnj8gjv*1PZ!e$bZE+A_4y;># zwy}U?%8?xtn750v1bR$!{knJUwKJc0yghE)F!Ox(n#Vua+i$VoTjKs!$E4vOgQ&}Q zQHS^mTprv(47?fQOBzbpFE@!eFyCU;RJeO^ivsI~hB8Mkk8%TD4@Q#(u@jgs$@)N) deyL>SzbtCc`SL>WZ=gdMJYD@<);T3K0RTOYK?eW; literal 0 HcmV?d00001 diff --git a/assets/Levels/Test/waterfall_anim_strip_4.png.import b/assets/Levels/Test/waterfall_anim_strip_4.png.import new file mode 100644 index 0000000..882b931 --- /dev/null +++ b/assets/Levels/Test/waterfall_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/waterfall_anim_strip_4.png-a0f98d8b0cb20602e2d4838740e24c17.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/waterfall_anim_strip_4.png" +dest_files=[ "res://.import/waterfall_anim_strip_4.png-a0f98d8b0cb20602e2d4838740e24c17.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Levels/Test/waterfall_bottom_anim.gif b/assets/Levels/Test/waterfall_bottom_anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..8237dc57b391417d12a5fe4475106e3e5c4a7615 GIT binary patch literal 217 zcmZ?wbh9u|6kyw^L!>YHM~As{`^N`oJSHXvU(<L?Vm z8G&lq;cA6IYES(*(7kq6L%QA0-~3G|2BRt#X-Qsrx@+#eNd|6J1vjjV&$lK8FfdpH E0NW`-PXGV_ literal 0 HcmV?d00001 diff --git a/assets/Levels/Test/waterfall_bottom_anim_strip_4.png b/assets/Levels/Test/waterfall_bottom_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..8ac0191d7e25896c69b10bf5c2de626fd5dfae11 GIT binary patch literal 173 zcmeAS@N?(olHy`uVBq!ia0vp^4nWMo!3HEflYZU@QYD@)jv*eMZ$qNF4j6E37N2nM z|CCAGJJuhX@YVG7pUAo;ZoQccUFI?kp9bFhxNywy?-7myZvFT zqO`lI`h%IQ9byhsc8Xbd?3^|+;B{uHfA^XKt$T(DvT`1vVrIBjv*1PZ!cWrVi4eIO+2-A z&;Q_4+y&~olLEc}-haDo^FtY+G6o4v)$q4HY2VV`8@*7;d9%IFVMgoG8GrH~u6lmO l_guGhRl^@&$$hK;uVT#dFq`*m1Mf|cE>BlKmvv4FO#m_wH5dQ@ literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_after_jump_dust_anim_strip_4.png.import b/assets/Player/herochar_after_jump_dust_anim_strip_4.png.import new file mode 100644 index 0000000..b367c4f --- /dev/null +++ b/assets/Player/herochar_after_jump_dust_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_after_jump_dust_anim_strip_4.png-af36bbd4e2d84d277a9022715e41c3d6.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_after_jump_dust_anim_strip_4.png" +dest_files=[ "res://.import/herochar_after_jump_dust_anim_strip_4.png-af36bbd4e2d84d277a9022715e41c3d6.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Player/herochar_before_jump_dust_anim.gif b/assets/Player/herochar_before_jump_dust_anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..c89c23b6275fb09882a6ad81e83a2482d791d00c GIT binary patch literal 176 zcmZ?wbh9u|6krfwC}&_${Lk&@8WQa67~pE8XTZ$J02KPk!pQ}sb$}SCNPwXMNPqhD zfk~vLf92`7{EO#oxz(M0BcuIEt$T(DLOBZq4+94SGh8`)OTFN-o@gWkAu5>QDp*|_ TmURZAo4^Q{XXfb(WUvMR{Rt}R literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_before_jump_dust_anim_strip_4.png b/assets/Player/herochar_before_jump_dust_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..f13059ddfb59c43ac0603e082c47601f0844414d GIT binary patch literal 140 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQo)`sjv*1PZ!ZRNF$nN9BtT>M7%&@i?7H*M;MB>ctslD#T`CTm#T7a!zA%j9@v_ zd3X1Md9u$$ra0<#DXw_rfn+`t0}BHW5aKppmt)n%y*eF^t`U=7B|6@__0{t1fq*5# eye}{NFgjYam=~@MXPu?`NJq#`G*E?s!5RQJP(qym literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_before_or_after_jump_srip_2.png b/assets/Player/herochar_before_or_after_jump_srip_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1146f8b671fca5a410e5ecbf29781829bf9592e5 GIT binary patch literal 332 zcmV-S0ki&zP)D-647^MO`;}ss4nMG8D6JGYJTOpDTv(~JcwbWEO8c1%Oo<%V?t5>8+o8yb&u8Zn z;2(b-!P_9Bq+`tNp8qMw<5^N@dJs`g1Oe$55t&2gdmKS0%A{?L6>;0m*w%PD3C*Fw z%t-rEI35fFvv`jErnuzKI9$QDMzr1R65Io;iME@oCaMYCYcdOG6SU%$0Byi=m@p1g z*_Ue%USSXA3WzA_(SLkC0Vrd`+xx3aB%QAX%e--zaCvz?3XsT7g?NH#U#@l|4H%l< z6s%)K!1w*f6q+7sU&@nH!cILxO0b-$*F-e|W)1`-pnh`JkLE!ZxBPJRC$tWEvEzO$ eLiL~FHSq-sGN{yBb&Y)h0000M0-D*L)x;io2SVb@L~g`(BxL?fZT! zav{uOVPIk4VBkVCOTwj3?XdE7DVYwou>Kn{pJgRHl$e%EE@DO1$O+Vn>Il)6eu3TF zjoLWUc)ddfYOdW)m6|*SMHe#zH_*BUpwofwW)cIcuasVEJDk=U-KvD2rt#z zd~6SrN@fN|23`g}xY_(I{gn&f@;^>4y4JmU;ZD3NWtX1@s`NIx)U|oqbrA+@0EVk{ AcK`qY literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_death_anim_strip_8.png b/assets/Player/herochar_death_anim_strip_8.png new file mode 100644 index 0000000000000000000000000000000000000000..5385e127b2a665c82081ebccba8343efae228db2 GIT binary patch literal 450 zcmV;z0X_bSP)c0V-AmwJVS&+*N|FQXNXb*#d0x zQsJ_X70^0Y0e~r_Q~?2hM9F0mIepYuMRIT@0eQ~=03eqs%eiUa4|B3T5p6#DVU7|| zD052%{7B-oXwR|@3ZOQa8KN7v-)F*=r735J(A>T6>~-w9spR*=tbzj2!PiicC0vtb z+Mh*Ws7%L@)5^WML=}?DB%A{9ktMn@xexCFGYcY8w%}6N)j`^G4siAUn4n*wucx4R z3t(nJKz0_@`sNT*9ajZu?d}pAavo~_14t&+)7c=ez4!O+|j{pDw07*qoM6N<$g29@{egFUf literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_death_anim_strip_8.png.import b/assets/Player/herochar_death_anim_strip_8.png.import new file mode 100644 index 0000000..abceb50 --- /dev/null +++ b/assets/Player/herochar_death_anim_strip_8.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_death_anim_strip_8.png-f0804e1f7a81f79aa38dc9806b118091.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_death_anim_strip_8.png" +dest_files=[ "res://.import/herochar_death_anim_strip_8.png-f0804e1f7a81f79aa38dc9806b118091.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Player/herochar_hit_anim.gif b/assets/Player/herochar_hit_anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..428580ee9de91af9e863206cd2a11521df036d62 GIT binary patch literal 221 zcmZ?wbh9u|6krfwC}&_${Lk&@8WQa67~pE8XTZ$J02KPk!pQ}sb$}SCNPwXMNPqhD zfk~mIf2DwI_MDuoTPf*h^9%nc#+3J@ST;$Do{RF*E{gG&VLiiJ6h!f0{|N wMNqO`)7Zs{|JICkaSOFlSq__#VkksO+nE}#zVtUCA}%JK#Q+hIga9rVG5H6r$7}nv9QTV6+Ye|0X-o$%C z_pG!hbgvJZO`OBp*^E@?xL(XiWk{OVFGLr%?e0dV)NMJtktro2?x#~K;91A)7nz8s U^}g**_y7O^07*qoM6N<$f|0(ab^rhX literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_hit_anim_strip_3.png.import b/assets/Player/herochar_hit_anim_strip_3.png.import new file mode 100644 index 0000000..dbcb0d3 --- /dev/null +++ b/assets/Player/herochar_hit_anim_strip_3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_hit_anim_strip_3.png-f6437b6033f3c3d94b481347437c119a.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_hit_anim_strip_3.png" +dest_files=[ "res://.import/herochar_hit_anim_strip_3.png-f6437b6033f3c3d94b481347437c119a.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Player/herochar_idle_anim.gif b/assets/Player/herochar_idle_anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..12cf9b6d41f427597b59b49e34137ff9739c5e29 GIT binary patch literal 426 zcmZ?wbh9u|6krfwC}&_${Lk&@8WQa67~pE8XTZ$J02KPk!pQ}sb$}SCNPwXUNE;g) zo5ajW??1hB>tT>M7%*FN?7Fi~vF&)1g!38kjq=f@jY2P2W~j_vEVVJiK|rvuY}TpX z_#F`v^PY*gq{i`1X=~Y|ID7ki{m4QUBzu^EhH>My$CP8$#ofL=4`<8?W-*Ii>~Nv- ziK|tko1lwx%X~K{iEXXndzU)vy|oSez&5#3&Rt?sM52N?C&DLaHUPZ=^bCqmOn^3Q z)akI4lQs?)*idjuxpu+isY#!KHs}Pg9=ch1b+SgqZ}#%t7xbSrh*(ZLasEUIsuvi6 zUf{438vF4&qiRJ$NA{;c_OUqlrs;XKKjNp0=dhwdZb|9$MC_%*0uy*Yik; Hk--`OpumAX literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_idle_anim_strip_4.png b/assets/Player/herochar_idle_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..32c95dcbae491b9f91d7d3c475f997d3b6df7dd6 GIT binary patch literal 482 zcmV<80UiE{P)o4842FO2`ZC2T9Uj;#l=d!gcwnHQxUhGjd7KF6aXhffbsX82lPl|KWJUIQ2#0vFKJ_ixF$m8n`RL znt)nzc_(FaJ|)I#eoX`4S_R}*Uy|3X#Mc^J<4eVhFXcl6tOe98PJB6EaXDXSziaFk zKHc^fK6FDG;HUm?s|;NLzJI<#fRE4j>Oi?wF2b2 z>-MLn^PZZYdVnYt&=PALx^M#=?~O0%pE+`OXYse(<6niJ9fA0Tt^d4UmQQy<&i7yV YUu{*PSk*!dga7~l07*qoM6N<$g6O!{Y5)KL literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_idle_anim_strip_4.png.import b/assets/Player/herochar_idle_anim_strip_4.png.import new file mode 100644 index 0000000..31c4237 --- /dev/null +++ b/assets/Player/herochar_idle_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_idle_anim_strip_4.png-b426bb7743008346fa4d180eed74f304.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_idle_anim_strip_4.png" +dest_files=[ "res://.import/herochar_idle_anim_strip_4.png-b426bb7743008346fa4d180eed74f304.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Player/herochar_jump_double_anim.gif b/assets/Player/herochar_jump_double_anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..5dd16e337e50481c47cbf8bb06e039a043e58a7c GIT binary patch literal 229 zcmZ?wbh9u|6krfwC}&_${Lk&@8WQa67~pE8XTZ$J02KPk!pQ}sb$}SCNPwXcNE;g) zo5ajW??26?*V4c8^j*e>%}G3hVJjr~X0n92Xx(;i>bS9V*;Ti+(#UYJqDQ^YlTLc9 zlsS^bh%k`?S)7s$G6?FFYH7}Bm~`t{ awez`@bkW1DXF^3q@-B$#Ob=vWum%84T|l(} literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_jump_double_anim_strip_3.png b/assets/Player/herochar_jump_double_anim_strip_3.png new file mode 100644 index 0000000000000000000000000000000000000000..857e7a5bc2322c3e395d36eba47ea6013fcaf35e GIT binary patch literal 336 zcmV-W0k8gvP)>O{hO>DNSEM`%iEEydIrE(K&~+7(7!p=(FU$!!wliZp26*t`EezIyh{W7R z()9l?eCCFf_%JRI5dZ*52oPID)Wj=Vi_luYgF!^1k|v3`Z$D?#ydrpaN#czBFfIt* zoeI$SVO$RPTOvLx2>_r7R`M;F<`vVt7Ph!=rvg**%ER(e6eC2^48DRU*BrTsjy%o2 z)eexnbusW==`;sP1n&^MYZlbg?V>bX39Gd;vqBuPy3dU%VqoaP9rh_s#g z!@eSM2f@3;8xRrT^<67KF+z%*Y%6*7y@RvuX5}mbbd|<^tG4WFkN2)YE8apLUrqK~ iKcd$7cVZv>HNF5u9kBspef%N-0000tT>M7%*FM?7Fi~@tAtEL_|y4#_!U?HCK! zJr2S!427MD%P_mg=~{_%FfcPl>e}PfGsg)F4vw3jCV+r9HEljW*LAD{{JBi&AtHKx zkBEv)iT?z9C_&~p0V2vEfB?Rfh>Rimcd)4!F%s4Zr?f7oWHs2l6oZJs-{ve|^H1^m z3v7~Y(J;D~_#XeL60!<8xYh#v61{w@zts=@Z4T?p`3jfwHCopsja&I1|L6?x^)R}w z3UZuYo^xp7EraGbMLn$hxh6#PdWy92lG*ET7}fw0MTaUkePjZ|=zxfL9mUE`pPawW zA?I%&8_l|$!e?Vc8EB7~)2v+QB>gp4^0xvo66A{PO@I&JFuKsgI#!7Vc($G7YW|xs xy2mJ|Z}2v?kvF&eyZjm-Nl%!6<3o^NtT>M7%*FN?2?kxF*9sy5ZZByJ&p0HZJ$U;iezg>R-BxpMa$0El(MpU zdS&xjS1awB(cvn3qNwQR6v;$`TMM*=5cV(u4dX%B1GEHa6^cEk9J?-V)akI4lQs?) z-B7@1-q>p~Ddw}Fi?c%zt5IYcW2|kFvwxyk(9`1L9H)uWDqCZ;rgI`}U394_Z`1CUiWBYbTnakz4fx#L8(D`1I literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_jump_up_anim_strip_3.png b/assets/Player/herochar_jump_up_anim_strip_3.png new file mode 100644 index 0000000000000000000000000000000000000000..05af352f8473bdc0c626c89deca1293f04ae2e61 GIT binary patch literal 353 zcmV-n0iOPeP)H6SUC=!IZirMp^nKvw5lgk@x2#gJE?+1Afn-GB2p>l zTfC2breM|dfQVKA5WwVY!Wy^TeEe3!bAJGBWFlT6pE-|h)zL306X!uhVD{xU{!{@8 zZ>tXZWSN)pOec$f)WE40xWXf%v6au^odoRHs|{{m%a{6lE5I`!hY7}Ea@MifR(**t z^><3ikF2(vkAabq(L$z%ukk+##o8cs`rN_CG<^K+GjN5k(Kr(DoxMcleNGumF2#oS zz}b+7a}RJ(u6?~IgTJ%w3#g_CvoFwgbM}28J!7+QNd)8Ryfefcs4)*|{gjtg_;>yV4B8#`R~IM*00000NkvXXu0mjfCa|B{ literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_jump_up_anim_strip_3.png.import b/assets/Player/herochar_jump_up_anim_strip_3.png.import new file mode 100644 index 0000000..787b8ce --- /dev/null +++ b/assets/Player/herochar_jump_up_anim_strip_3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_jump_up_anim_strip_3.png-9b0e9a0d80988099212b321d799a8dc8.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_jump_up_anim_strip_3.png" +dest_files=[ "res://.import/herochar_jump_up_anim_strip_3.png-9b0e9a0d80988099212b321d799a8dc8.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Player/herochar_pushing_foward_anim.gif b/assets/Player/herochar_pushing_foward_anim.gif new file mode 100644 index 0000000000000000000000000000000000000000..c9a836e399510d963c4827c29254d93b51fc5bd5 GIT binary patch literal 587 zcmZ?wbh9u|6krfwC}&_${Lk&@8WQa67~pE8XTZ$J02KPk!pQ}sb$}SCNPwXUNblTw z*x1|7nmo7%*FN2wwP?Z|HHmNa^{lPYMqd9B#4Cd#pSoeMZvS6?CCHxKgPx5$njSfxIC1W1sY*s~ z%J7bY<6uL6O&8X$HN7Jbtv8%7mx~gz7NsQI3d6vzuAHIP0005YNkli)Qfq|J7&wZTSfZQ`_aQ>B+NJtd&^XJ&aF#!Nv zFE@X^+&n7B68skICyX!su+?IIe!txo>?e%Lc?rH=5E0E1!pubr4sEQ-xB9;Z-^rU; z;N9*BBGNDj@F^#>u(q)V|B9{AUxV*LCt1Z)7~;L^aRMjsVZfPAL!cJ}g-!{`+x2i++v&Qy0X{ z?tbo{vQ*-HD=#+uIN*NnSLd18ZJ|FUK^1u84qW3a6489)+bMZuE2G2T- zL|dN2ZJg6dNC)zY-5*ZL9hC}xjy@tk!c_cbb<7emoX@&LYPC`F54x6>fTwEyQu@&Z zwA|Ok4yTmO)SObkYVVJhy!$HUrdF^BT7Z3*?Jd?*!~Frm%u10|cijU30000tT>M7%-b~?7H)>pw;rRh;si0je8=;S>z?kq&x&dzqhV+;XPzIZKXw4 zX_!4@R6s`KOPP%wN-J%ggpe&@WZ-4shgkqL9cTxN1;!k^q~z9EI!AsW@~YuUYi^2f`@FYJ`-QWhvg?wTiAcsXGB7gm;B~$}$1Z_$ zIvtXWq$h7{SXmwPt(NP#;E`aj#jku0??{b|IkvDtf9JWVwOlT28%2~Supoj4&1@`T z4>bGYZ{MDWA#-$_6$;DFy0EeY<{tbJ`BGs`w0h9AH_IAL_e)$pWOp{XLQ1Ot1d7>A zKzH-Of*pt1XZ?CCnK(*zm1iomhAHIP0005iNkl-`343uZ`8EWwyT4pFyr$~_^bxLNgz2}_kJcks-j1aOV*^q0Z>hADrS1Vfw0Q|>O zBV0{@hztE5V{~zziT_KiHD0U&JVGe0A7*xSTCBw&;&LwDhE4iIHv%GVSO8xmEdGfN zkOid37a`#u_o-U!(R^Q?(2YXAHvNdG;wiu8-_`&wyv9IIXvLNUdmC7*p;fe z6VPhlvD<5WetZD{z}x$)3!nI{cy54K|MGnU5NfdSue*BMHNm2P*MJrSlK^QKYsOuT zx9bN;vz{7h;U{@q`ggO8AH&=Zl4c;EfBi5+jB(vn3RcR~53`H^3_QjDuDe|S_Myc< zX@2r}+$Xj0T7I6V#z3uxl76WUtNvgiFA3n-L`siv`pw!rDTk$jxx1zke@+9}p*5hk zf%Gm&Bu?K;frz_qOXh2MzLw|EB6Q<+Q^Q$YHHJnDX=aZ5cn@GwNp!fA|y55qRbwUz@IZak(Z zTAN4L)V@EGcs&tg3?97z%DW&Bam#h@I%}R96VKM-iWb3FMT@3q)Z^v+0a^_t3jJYP Q%K!iX07*qoM6N<$f>p=(*8l(j literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_run_anim_strip_6.png.import b/assets/Player/herochar_run_anim_strip_6.png.import new file mode 100644 index 0000000..3464bc7 --- /dev/null +++ b/assets/Player/herochar_run_anim_strip_6.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_run_anim_strip_6.png-ca362bf436792a63c6c2d22006414e05.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_run_anim_strip_6.png" +dest_files=[ "res://.import/herochar_run_anim_strip_6.png-ca362bf436792a63c6c2d22006414e05.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Player/herochar_spritesheet.png b/assets/Player/herochar_spritesheet.png new file mode 100644 index 0000000000000000000000000000000000000000..b1309654c6d1536896d9cb3f68bd1bcacc8bce8a GIT binary patch literal 3521 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 YmtV>j^T3SnjFx7g*mOUBHAV(&07vnm>i_@% literal 0 HcmV?d00001 diff --git a/assets/Player/herochar_sword_attack_anim_strip_4.png b/assets/Player/herochar_sword_attack_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..9dda28b58b610c6c80f8bd430de4899ecc2d34b3 GIT binary patch literal 568 zcmV-80>}M{P)H&H~_OY$GKTK;r}au7a9Lc<^W8&cPN7z?XcN zwAPcYnyYD=q=Jb}eu$gmf#w~OiAh7`e%>6R5 zsSx*v9qbP~=a?xTB+(I$XK60Obcmag?Rk{G)f*>M5!dXC)Yt`9ueSV}u$QcO!*&()4YSIGc=CZLj2r$lF zV*3{1J9_#AP#|cs+<15<$&+vQ&zrLasQg&rZ9h>4 FYXB%QNAv&y literal 0 HcmV?d00001 diff --git a/assets/Player/hit_sparkle_anim_strip_4.png b/assets/Player/hit_sparkle_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1024fb8bb9c7fffc75daf3480724f7c4746db0c2 GIT binary patch literal 202 zcmeAS@N?(olHy`uVBq!ia0vp^4nQox!3HFkJ+IURQWHI0977^n-%dNo*Py`T-2QRT zhyU@JKNxLiY9uxFY?}1LPws@<>p7w`r%c&4ccEKxvKXVccd+?$qmX2YTOUOFO%4P} z|4Pa_8qM=*#+pa!6S{ZUDId@K;n98K*VBTtthO$H{*)}+!W>aoySGxuaY{g#a6a3f z-0G_m5!0m491&DJ&Shd3&CIj8uprI5zNF&We`e>3l{;t7oOTrGI0jEwKbLh*2~7Z! CTTv?j literal 0 HcmV?d00001 diff --git a/assets/Player/hit_sparkle_anim_strip_4.png.import b/assets/Player/hit_sparkle_anim_strip_4.png.import new file mode 100644 index 0000000..964c0c9 --- /dev/null +++ b/assets/Player/hit_sparkle_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/hit_sparkle_anim_strip_4.png-e4e50ad28ee10611a6262e766bb2cf52.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/hit_sparkle_anim_strip_4.png" +dest_files=[ "res://.import/hit_sparkle_anim_strip_4.png-e4e50ad28ee10611a6262e766bb2cf52.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/SplashScreen/BLANK.png b/assets/SplashScreen/BLANK.png new file mode 100644 index 0000000000000000000000000000000000000000..f1d58b974f208a2f3515b03635761952c6d0de57 GIT binary patch literal 1385 zcmeAS@N?(olHy`uVBq!ia0y~yV0-|?d>m{*k-%9;(t(_oOlRi+PiJR^f};Gi%$!sP z291fe6Ky>XJ4m$M-{ut>C38mM(S(IokpiNHSF}VHI;{|mDmB>og@2Zbil$y)Q})4w z^N+4-?%uqPZ(WnZ59UWtUMzW`q*^y!B#RfNemFm0Nlx~JxkzV+2CKkCGvNB%3V?^`izyM%y1XZp;8@e(IrYoCr;ZrY`u)Ew7hEcwDYLblm>QFV!N= zCtA%DlNm!ZCdAtRkpJ^;ZRm_SA0{brF8F=4(9W&lgWiQT*5|%&d~D+1aKX4>>Gr=@ z*$h5=R_$GTw6Eb`?t@3W)@oKCc*=);sVr1U#aDUeI?bj^* z{XE)7O>#2`3*D1M7W-W78QJnA1F6978H@y}fG4$iTpH zctd0T`3FtyE>82qCUG(ptWpIkVFMu^2@oV!Z literal 0 HcmV?d00001 diff --git a/assets/SplashScreen/BLANK.png.import b/assets/SplashScreen/BLANK.png.import new file mode 100644 index 0000000..e3ece90 --- /dev/null +++ b/assets/SplashScreen/BLANK.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/BLANK.png-401d90770159e7c999f27599a4b7281b.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/SplashScreen/BLANK.png" +dest_files=[ "res://.import/BLANK.png-401d90770159e7c999f27599a4b7281b.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/SplashScreen/SAGI.png b/assets/SplashScreen/SAGI.png new file mode 100644 index 0000000000000000000000000000000000000000..7dd6af2a0098e461ff81cc3b0a44fcc51fe42960 GIT binary patch literal 23378 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 IJ^ax8FU~ke7ytkO literal 0 HcmV?d00001 diff --git a/assets/Tiles/SemiSolidsTileMap.tscn b/assets/Tiles/SemiSolidsTileMap.tscn new file mode 100644 index 0000000..b3d3758 --- /dev/null +++ b/assets/Tiles/SemiSolidsTileMap.tscn @@ -0,0 +1,57 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://assets/Tiles/tileset.png" type="Texture" id=1] + +[sub_resource type="TileSet" id=1] +0/name = "tileset.png 0" +0/texture = ExtResource( 1 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 96, 0, 96, 48 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 0 +0/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1, Vector2( 3, 0 ), 69, Vector2( 3, 1 ), 65, Vector2( 3, 2 ), 321, Vector2( 4, 0 ), 5, Vector2( 4, 2 ), 320, Vector2( 5, 0 ), 261, Vector2( 5, 1 ), 260, Vector2( 5, 2 ), 324 ] +0/autotile/icon_coordinate = Vector2( 0, 0 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape_one_way = false +0/shape_one_way_margin = 0.0 +0/shapes = [ ] +0/z_index = 0 +1/name = "tileset.png 1" +1/texture = ExtResource( 1 ) +1/tex_offset = Vector2( 0, 0 ) +1/modulate = Color( 1, 1, 1, 1 ) +1/region = Rect2( 0, 48, 48, 48 ) +1/tile_mode = 1 +1/autotile/bitmask_mode = 0 +1/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1 ] +1/autotile/icon_coordinate = Vector2( 0, 0 ) +1/autotile/tile_size = Vector2( 16, 16 ) +1/autotile/spacing = 0 +1/autotile/occluder_map = [ ] +1/autotile/navpoly_map = [ ] +1/autotile/priority_map = [ ] +1/autotile/z_index_map = [ ] +1/occluder_offset = Vector2( 0, 0 ) +1/navigation_offset = Vector2( 0, 0 ) +1/shape_offset = Vector2( 0, 0 ) +1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +1/shape_one_way = false +1/shape_one_way_margin = 0.0 +1/shapes = [ ] +1/z_index = 0 + +[node name="SemiSolidsTileMap" type="TileMap"] +tile_set = SubResource( 1 ) +cell_size = Vector2( 16, 16 ) +occluder_light_mask = 8 +format = 1 diff --git a/assets/Tiles/SolidsTileMap.tscn b/assets/Tiles/SolidsTileMap.tscn new file mode 100644 index 0000000..0f4b879 --- /dev/null +++ b/assets/Tiles/SolidsTileMap.tscn @@ -0,0 +1,241 @@ +[gd_scene load_steps=37 format=2] + +[ext_resource path="res://assets/Tiles/tileset.png" type="Texture" id=1] + +[sub_resource type="OccluderPolygon2D" id=36] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=2] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=3] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=4] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=5] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=6] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=7] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=8] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=9] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=10] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=11] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=12] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=13] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=14] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=15] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=16] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=17] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="ConvexPolygonShape2D" id=18] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=19] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=20] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=21] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=22] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=23] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=24] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=25] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=26] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=27] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=28] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=29] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=30] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=31] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=32] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=33] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=34] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="TileSet" id=35] +0/name = "tileset.png 0" +0/texture = ExtResource( 1 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 96, 48 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 0 +0/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1, Vector2( 3, 0 ), 69, Vector2( 3, 1 ), 65, Vector2( 3, 2 ), 321, Vector2( 4, 0 ), 5, Vector2( 4, 2 ), 320, Vector2( 5, 0 ), 261, Vector2( 5, 1 ), 260, Vector2( 5, 2 ), 324 ] +0/autotile/icon_coordinate = Vector2( 1, 0 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ Vector2( 0, 0 ), SubResource( 36 ), Vector2( 0, 1 ), SubResource( 2 ), Vector2( 0, 2 ), SubResource( 3 ), Vector2( 1, 0 ), SubResource( 4 ), Vector2( 1, 1 ), SubResource( 5 ), Vector2( 1, 2 ), SubResource( 6 ), Vector2( 2, 0 ), SubResource( 7 ), Vector2( 2, 1 ), SubResource( 8 ), Vector2( 2, 2 ), SubResource( 9 ), Vector2( 3, 0 ), SubResource( 10 ), Vector2( 3, 1 ), SubResource( 11 ), Vector2( 3, 2 ), SubResource( 12 ), Vector2( 4, 0 ), SubResource( 13 ), Vector2( 4, 2 ), SubResource( 14 ), Vector2( 5, 0 ), SubResource( 15 ), Vector2( 5, 1 ), SubResource( 16 ), Vector2( 5, 2 ), SubResource( 17 ) ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape = SubResource( 18 ) +0/shape_one_way = false +0/shape_one_way_margin = 1.0 +0/shapes = [ { +"autotile_coord": Vector2( 1, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 18 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 19 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 20 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 21 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 22 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 23 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 24 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 25 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 26 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 27 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 28 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 29 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 4, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 30 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 4, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 31 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 32 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 33 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 34 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +} ] +0/z_index = 0 + +[node name="SolidsTileMap" type="TileMap"] +tile_set = SubResource( 35 ) +cell_size = Vector2( 16, 16 ) +collision_layer = 9 +collision_mask = 0 +occluder_light_mask = 8 +format = 1 diff --git a/assets/Tiles/bigflowers_props.png b/assets/Tiles/bigflowers_props.png new file mode 100644 index 0000000000000000000000000000000000000000..f599205d33129c50e05c82da2b827d75ecedd9f8 GIT binary patch literal 205 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~c!3HEhl+{lMQd2x#978lFCMQS)9k_Ah$Nr5Q zKh~!hij}bP073fsd8tR#?x`+6cK`?ijvZhKKi;$^p>UT8GY~kx@o8a7PJaB~ptq|y zTLJ`jO^SZNwoyV_`hR=o6ONY&AP{jTpfO2+=T3Xpk(aIV*;*TZ?R|66mrX?9;U~!a tlq1htpDh=c$jcQxDk+v_xBlTLhS@!~!P4JT_X6F=;OXk;vd$@?2>>rrPwxN# literal 0 HcmV?d00001 diff --git a/assets/Tiles/bigflowers_props.png.import b/assets/Tiles/bigflowers_props.png.import new file mode 100644 index 0000000..81cda4c --- /dev/null +++ b/assets/Tiles/bigflowers_props.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/bigflowers_props.png-d43c61d47bafec572c2d8b52a147adaf.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Tiles/bigflowers_props.png" +dest_files=[ "res://.import/bigflowers_props.png-d43c61d47bafec572c2d8b52a147adaf.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Tiles/drygrass_props.png b/assets/Tiles/drygrass_props.png new file mode 100644 index 0000000000000000000000000000000000000000..091b14400720fc7b6cc31e5b0ea10481a27abbb2 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~c!3HEhl+{lMQq`U=jv*QolM^J24&1o$WBdy5%+qXF!nQ>w6vS*)X zHM+i+ZquHSyZ?KKbfN+?5FBCaP&_f|#-B3>4jlOKTu3}--b;`npY!*pHCPI(aTe?8 cF$D877-j1JynAJL7|zopr0Nl|@y#N3J literal 0 HcmV?d00001 diff --git a/assets/Tiles/drygrass_props.png.import b/assets/Tiles/drygrass_props.png.import new file mode 100644 index 0000000..367f0b8 --- /dev/null +++ b/assets/Tiles/drygrass_props.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/drygrass_props.png-f94c3edfb65eb57b1159ef3fd51d0e16.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Tiles/drygrass_props.png" +dest_files=[ "res://.import/drygrass_props.png-f94c3edfb65eb57b1159ef3fd51d0e16.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Tiles/flowers_props.png b/assets/Tiles/flowers_props.png new file mode 100644 index 0000000000000000000000000000000000000000..13f32515d300a73656f95c06c2aa6f10e6a8a781 GIT binary patch literal 243 zcmV9n25k!-5!LqhuuwF1ZwqRHlWZ(n*7AH(C z4sW@a1LxfDz`sUBtccjb=F9DD@2C0CA+Ctntk_|ibP$aP^vnRONx*m-kbqTH=bg5@ zRn_rS)tN8E`qA|%8vxp}VjadL&?8xgF>P7B9=KgnotqE5wyXfiiXDgTsHb(?`_^kS tI|9&!nkFULUjW0hsqmvKb#72q=K*XMO{-D-YEA$E002ovPDHLkV1h%IY?A;0 literal 0 HcmV?d00001 diff --git a/assets/Tiles/flowers_props.png.import b/assets/Tiles/flowers_props.png.import new file mode 100644 index 0000000..412cd0e --- /dev/null +++ b/assets/Tiles/flowers_props.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/flowers_props.png-b0cd88dc4c4732e51272313c9c325b78.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Tiles/flowers_props.png" +dest_files=[ "res://.import/flowers_props.png-b0cd88dc4c4732e51272313c9c325b78.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Tiles/grass_props.png b/assets/Tiles/grass_props.png new file mode 100644 index 0000000000000000000000000000000000000000..f778357174a6aa2190c1814b9a34effe623e369c GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~c!3HEhl+{lMQk9-Ajv*QolM^H|4s_@x6zthpctHuXa zuGYjIX3ftPJi0-0ktEZVnmFSh)9YO&8gx3>ainpa2`FKnd2XKV=?*<0|7Pilbv8ir al^I^dTbXWHxa1tr5e%NLelF{r5}E*!vP9Vc literal 0 HcmV?d00001 diff --git a/assets/Tiles/grass_props.png.import b/assets/Tiles/grass_props.png.import new file mode 100644 index 0000000..449bc4e --- /dev/null +++ b/assets/Tiles/grass_props.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/grass_props.png-4943142b233b45b0f5d9e97cb601f3fd.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Tiles/grass_props.png" +dest_files=[ "res://.import/grass_props.png-4943142b233b45b0f5d9e97cb601f3fd.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Tiles/root_props.png b/assets/Tiles/root_props.png new file mode 100644 index 0000000000000000000000000000000000000000..6e18d2f1eca8a7d0ebdc38ed1b69163212cf5213 GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~c!3HEhl+{lMQt6&9jv*Qo&-NeWJ)pqDJhw|! zqLI@^aI)b<^#qnS4|`XZd2g40?-a4zmRzCma%;*KI|FrwE0dO|+}>)Za8j>E<>;3g zDknXve5R%N$KU5Uci1>}=4I8$D@&g4iBT_iE-(e?Kn71&KbLh*2~7Yi CXG@>} literal 0 HcmV?d00001 diff --git a/assets/Tiles/spikes_trap.png.import b/assets/Tiles/spikes_trap.png.import new file mode 100644 index 0000000..dbd27de --- /dev/null +++ b/assets/Tiles/spikes_trap.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/spikes_trap.png-5e778b73028e595ec925bfc118e6a7b4.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Tiles/spikes_trap.png" +dest_files=[ "res://.import/spikes_trap.png-5e778b73028e595ec925bfc118e6a7b4.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Tiles/tileset.png b/assets/Tiles/tileset.png new file mode 100644 index 0000000000000000000000000000000000000000..232b24497af8ddbc1909f0cb71043cadce11b370 GIT binary patch literal 4020 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 literal 0 HcmV?d00001 diff --git a/assets/Tiles/tileset.png.import b/assets/Tiles/tileset.png.import new file mode 100644 index 0000000..7bf2ab6 --- /dev/null +++ b/assets/Tiles/tileset.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/tileset.png-b05516f257b084ec6dc59d98f017e589.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Tiles/tileset.png" +dest_files=[ "res://.import/tileset.png-b05516f257b084ec6dc59d98f017e589.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=false +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Water/WaterFall.tscn b/assets/Water/WaterFall.tscn new file mode 100644 index 0000000..6183623 --- /dev/null +++ b/assets/Water/WaterFall.tscn @@ -0,0 +1,43 @@ +[gd_scene load_steps=8 format=2] + +[ext_resource path="res://assets/Water/waterfall_anim_strip_4.png" type="Texture" id=1] + +[sub_resource type="AtlasTexture" id=1] +atlas = ExtResource( 1 ) +region = Rect2( 0, 0, 16, 24 ) + +[sub_resource type="AtlasTexture" id=2] +atlas = ExtResource( 1 ) +region = Rect2( 16, 0, 16, 24 ) + +[sub_resource type="AtlasTexture" id=3] +atlas = ExtResource( 1 ) +region = Rect2( 32, 0, 16, 24 ) + +[sub_resource type="AtlasTexture" id=4] +atlas = ExtResource( 1 ) +region = Rect2( 48, 0, 16, 24 ) + +[sub_resource type="SpriteFrames" id=5] +animations = [ { +"frames": [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ), SubResource( 4 ) ], +"loop": true, +"name": "default", +"speed": 12.0 +} ] + +[sub_resource type="RectangleShape2D" id=11] +extents = Vector2( 8, 12 ) + +[node name="WaterFall" type="Area2D"] +collision_layer = 8 + +[node name="Watefall" type="AnimatedSprite" parent="."] +position = Vector2( 0, -12 ) +frames = SubResource( 5 ) +frame = 1 +playing = true + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2( 0, -12 ) +shape = SubResource( 11 ) diff --git a/assets/Water/WaterfallBottom.tscn b/assets/Water/WaterfallBottom.tscn new file mode 100644 index 0000000..f93f2ec --- /dev/null +++ b/assets/Water/WaterfallBottom.tscn @@ -0,0 +1,35 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://assets/Water/waterfall_bottom_anim_strip_4.png" type="Texture" id=1] + +[sub_resource type="AtlasTexture" id=1] +atlas = ExtResource( 1 ) +region = Rect2( 0, 0, 16, 8 ) + +[sub_resource type="AtlasTexture" id=2] +atlas = ExtResource( 1 ) +region = Rect2( 16, 0, 16, 8 ) + +[sub_resource type="AtlasTexture" id=3] +atlas = ExtResource( 1 ) +region = Rect2( 32, 0, 16, 8 ) + +[sub_resource type="AtlasTexture" id=4] +atlas = ExtResource( 1 ) +region = Rect2( 48, 0, 16, 8 ) + +[sub_resource type="SpriteFrames" id=5] +animations = [ { +"frames": [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ), SubResource( 4 ) ], +"loop": true, +"name": "default", +"speed": 12.0 +} ] + +[node name="WaterfallBottom" type="Node2D"] + +[node name="AnimatedSprite" type="AnimatedSprite" parent="."] +position = Vector2( 0, -4 ) +frames = SubResource( 5 ) +frame = 3 +playing = true diff --git a/assets/Water/waterfall_anim_strip_4.png b/assets/Water/waterfall_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..871d47e16fa58b65a0f98046a4a88ce317ddce82 GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0vp^4nQoy!3HF~w)}PhQnj8gjv*1PZ!e$bZE+A_4y;># zwy}U?%8?xtn750v1bR$!{knJUwKJc0yghE)F!Ox(n#Vua+i$VoTjKs!$E4vOgQ&}Q zQHS^mTprv(47?fQOBzbpFE@!eFyCU;RJeO^ivsI~hB8Mkk8%TD4@Q#(u@jgs$@)N) deyL>SzbtCc`SL>WZ=gdMJYD@<);T3K0RTOYK?eW; literal 0 HcmV?d00001 diff --git a/assets/Water/waterfall_anim_strip_4.png.import b/assets/Water/waterfall_anim_strip_4.png.import new file mode 100644 index 0000000..fffd9f5 --- /dev/null +++ b/assets/Water/waterfall_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/waterfall_anim_strip_4.png-2672ac239b49d03ceb215ba8fe952fdd.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Water/waterfall_anim_strip_4.png" +dest_files=[ "res://.import/waterfall_anim_strip_4.png-2672ac239b49d03ceb215ba8fe952fdd.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/assets/Water/waterfall_bottom_anim_strip_4.png b/assets/Water/waterfall_bottom_anim_strip_4.png new file mode 100644 index 0000000000000000000000000000000000000000..8ac0191d7e25896c69b10bf5c2de626fd5dfae11 GIT binary patch literal 173 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 literal 0 HcmV?d00001 diff --git a/icon.png.import b/icon.png.import new file mode 100644 index 0000000..96cbf46 --- /dev/null +++ b/icon.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.png" +dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=true +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=true +svg/scale=1.0 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..b33e97b --- /dev/null +++ b/project.godot @@ -0,0 +1,129 @@ +; Engine configuration file. +; It's best edited using the editor UI and not directly, +; since the parameters that go here are not all obvious. +; +; Format: +; [section] ; section goes between [] +; param=value ; assign values to parameters + +config_version=4 + +_global_script_classes=[ { +"base": "Node2D", +"class": "CheckPoint", +"language": "GDScript", +"path": "res://src/Items/CheckPoint.gd" +}, { +"base": "Area2D", +"class": "Coin", +"language": "GDScript", +"path": "res://src/Items/Coin.gd" +}, { +"base": "CanvasLayer", +"class": "HUD", +"language": "GDScript", +"path": "res://src/HUD/HUD.gd" +}, { +"base": "KinematicBody2D", +"class": "Player", +"language": "GDScript", +"path": "res://src/Actors/Player.gd" +}, { +"base": "Node2D", +"class": "Spike", +"language": "GDScript", +"path": "res://src/Hazards/Spike.gd" +} ] +_global_script_class_icons={ +"CheckPoint": "", +"Coin": "", +"HUD": "", +"Player": "", +"Spike": "" +} + +[application] + +config/name="Platformer" +run/main_scene="res://src/Intro/Intro.tscn" +boot_splash/image="res://assets/SplashScreen/BLANK.png" +boot_splash/use_filter=false +boot_splash/bg_color=Color( 0.141176, 0.141176, 0.141176, 1 ) +config/icon="res://icon.png" + +[display] + +window/size/width=480 +window/size/height=270 +window/size/fullscreen=true +window/stretch/mode="viewport" +window/stretch/aspect="keep" + +[editor_plugins] + +enabled=PoolStringArray( ) + +[gui] + +theme/custom="res://assets/Theme/Theme.tres" +theme/custom_font="res://assets/Theme/fonts.png.import" + +[input] + +direction_up={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null) + ] +} +direction_down={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null) + ] +} +direction_left={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null) + ] +} +direction_right={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null) + ] +} +jump={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null) +, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":1,"pressure":0.0,"pressed":false,"script":null) + ] +} +pause={ +"deadzone": 0.5, +"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777217,"unicode":0,"echo":false,"script":null) +, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":80,"unicode":0,"echo":false,"script":null) + ] +} + +[layer_names] + +2d_render/layer_1="Player" +2d_physics/layer_1="Player" +2d_render/layer_2="Enimies" +2d_physics/layer_2="Enimies" +2d_render/layer_3="Hazerds" +2d_physics/layer_3="Hazerds" +2d_render/layer_4="World" +2d_physics/layer_4="World" +2d_physics/layer_5="Collectable" + +[rendering] + +quality/2d/use_pixel_snap=true +environment/default_environment="res://default_env.tres" diff --git a/sound/SAGI.ogg b/sound/SAGI.ogg new file mode 100644 index 0000000000000000000000000000000000000000..9a1f88237be57855c1d97dfb08f2bd1b94c3d9df GIT binary patch literal 47927 zcmeFZcT|(l^Dz1ldJjF)3>^Y!LX$3`gMhRkRUwE31f_$B8hQvF0g)!Xgd)AGNEZ<4 z9i<3T1O*jr==-3bZ+Y+iR zkQ4mqm}p(p)-hMJxaoi6D%{+~`KHfR7au{e#L~dhNJs4~?xv^9Szjktx3hl>-EO%0 zp4IYj^McFpfwi>JmO5%ONExIwQb`&mYbhh6EGw^!l$A!xA(3R1e`hJ8sbxh5XaIn) zFASku?8_Me<<>MkwZ^MCa{c`&O(T{tUKu01ArapsfucN3f}MEiXc7iEX%LMLVviuA zX#^rf)T~p&#neEEpakZ*o#a6^|CQ({;lNTf4PV3>QjsBiUGXb#gpQIm6wKR%M=)!) zWQJENft7{j^-aU6ls0)Ix}?O3VLiwe&Ik&5@wl+J$brdldQC!RxPkmv?g&?O5a-`9 zgwgs*;Z*1WScEPboB@?m3wy*6x{Nylp+s{!0xoxz14sgZyaI7zfjAwMyN(VR005|l z8GFAs?~7#K7qz_fG>kTs06+%Nfc5l=MfwSE^;3jxQbhj5jTn;DP~D#>^QXB!0GOIF z=y0BG_QiN)5$VjS@uA%P|$suBX=0e}J=Mo!B@RWDWhl_h4T$#dbqqFuVn zsXxs@8bZh2u9Z^}kmRSR{_p{u2A+k8?7{zw$at6`Qvq$2(wpqHJR7D=!&)W2Z2iVt zDOto;rFYrBBQG|xQ6nH!kZr?|3D$d;-IHfS_ZJeYy)~MNILY%K*>cQg=>s9rs#{5! z@r@uvS>=|Hd7&1B^jmM4XI(hS^F8V6PqN*+#hcA`@>uqyH9c#z7lbbMZN1Kh{=3Sb zdVh!v;;R9Tig#L+pc#LMgX^+jxn;J{N1I4m?(l5Q?XgW z;rmbA=Y7Q@V#W$a=?NM62@4&JzspRzzfJQUyV*#GqdQAr{Oa#yo$g}uzs0|(gVF>J zF805ONc6#chm|&kQ=$Jt6J#jh#jf{fy&2RAUlN-ukux%Ds?LHbh#fSy!23B-~hVtEj;EGS`WfhsJn~Sw*JIr7;%LQ|3BT7MTB2FrJVzW&;UJ3nY;NNl*)E z>Ap8g)`&{6iT4NRne5Rb{S`WB%t^*qB`EBDvhF6Pf%!4I1Ne z8lP0b_)kaRKp$0EK5Dc4^DOm>TyBh9)eMv#|Ksp~9jgW$OPgg>^}ogf2T~pTe*>@o z@nrx14*tJR0VsIXErTCN0e0>>L4d#pcIfCGSic-LWJU6Hgz6dP9asPV{fi+&q2@s(=8KRxC#sooamJ-_k zwEAxdl*}+M@Bl~VGyHo_ibNMO0KcY~4(bF6Yu2C=W}PlV1OP{yOmR@q|IfnzJ|HVV zfB;_N;DG(LQp@0o!Y}H8bjndxdOD6#Njt3;?KlYo(0YbW)1k zGR26(1{10m+1)bV-O6?A`lNb-b^$IEs$(W+oKfONLLiMX9H73kd_wl{lAcu{GOCgS z(1ZZIM66Bb#;sg2Vo7=C-(GaaEyMRu@HhZ+CScQFNSBvM7& z8L06|cm57GR3|ee?F`CjV8EUnE~S&5G}&pZV=%?cfaU2fz{!);5J+_C%exE#Eh!hnlf^zo>N3d&(iWHBVli)?><`NtcmWBwC!c=p2 z2@KR+qCAyO6Csjj4gj;EOkq*S`_A8v_fmWUesWdP~Lzv!6;vhjrUB*Y8{s23PxFb;K6e`vYg zhCCq~NS41uYdhm%cS1FnQ%zMMM?jj{&-lB{rH4wjSHGXH1Avbd)Ic7D$4XC8f}37S z?yAVid8q*lPXbkP7pNwkKt!rJ4Y(`*Yx%PR`rwj}tDQbksHQbs!32cx!+#$ClbD~B z{^#-k5hM*NXMZ%b|4Jx-pIldgt@t)bdzs8;jx;@-QxMoOQ3Lg*jhGNH@To<9cbXT=kGHnRjRGqY<)`lAf}? zj_iXi*~Jz&WyYe^zs{RWp{DHtATXR9&<=~2trX7TNTA~4u44s2y1}8~A_3P7xGIXw zAVm z|5!}rMX4u{xh9A$$f!T{M2bKS_au)dA7q}PL?qa(I2A-$qL|f?RwRPeTtcFl-H=8A zECll`4QcZuSi!}4LVK_SLkW<(yo#W53`2{Z!f-kj(sJ?tl`2<3ou?qxTtZqWOt2VM z1iPTi;cIG3Ec0P7e_3um0^bl$C!iuy?_0`juxm1CZu9yZNl;0r!8H3|MYBE^@_m^= zsfY&f_#^-zr=XMtI+uYJU#K61LXQW)!?mvww7WIEf=p?lEEZ%M*f7mAfTgv4k%PU) z1F|!ltJUNJ6aqA8DW*I;1#h-jH`~piE=H4434}i!>=ytSfsfz>?Ew~+v0C^* ze=T_pP!ybm6HERiKgWIKkW(z&k^GUeOLB6u z8K+CJZTVp^nKkD*R5Uv{At)I*p-z%*AvT_+kxB?_`#yoQLPrN`;m6e@zI285YShlG zXxlePX>0qfXOEv~r6OWBb?x`9mb(s{u4WSSbgY*@_IjlVY7tiy1XR410gV+QKm*U9 zp8m6a_p~7y5A4FPr9r;Sf=NSkM7K5MImeFS88d!)q0<%CU zn1&n=WrMvi`L;QmIG3)T@%}SGsvrx0CynM& zP1a8--{i<8--kJhHnsN>`J`(DAB?E&G*le1(b?4D88x&3Q%7=ejHAjcfAP6JeHO%r zVOVJhbHYsm6ih}7ftXQk@i7USdpe)#IZP|BT*hbkvBZwwV*FiQVa7snn*I(YnV{Et zVOv+e(oO0l{daJ>{8({EhGl>{iHur3eetKqmCO?y{sBfAywYRWArSx|2x5XaK?@tx ziXYnDP^bGcUMAjFl~NX9=~CcJzcbU!w==4ps^hg%lD4rZlKpDm!9b;S-E8OqV+niL zH!q_H=@*O>6<@h z?D=Kt!=y#EhA(Oy+@O7M-M^RI?efPT;YNxYNOlTt#^O+NZpKa}N?zdqPP9%18y5_X z03M3h29dyP{Ort%dqG8snc@&hyK?^0BE~y@QsNS6hhK?F^_cK3Ghq1l*S^;ui4ODb6@=-h^89@FkDtnw42`n=z6)QOcoo;oc!L%U~ ziB5#I6se%DuHarnD~S3N$edvDeSQ5$@0&z&_|<~_GKE);zkj*0c=qzux(_qg52nqZ z{+?IhKRTXi+TTC^z}&xfc+Zn3aqU@CeE;t6-z!19_kMeZWdFX$cRG5>_r?DHm*4kz zPQUpLW`_L!-MsG|{HDDpi1+0A=MPtv%SAOmE)NVZg3pWC-#fD{KYz=rkNi67??3we zETMP*SeC!}_v_J z#(lBl$N()#f0gXaGL_0(0rAH&^ynMOFB#5l4`d}*?fr!5_4pS(Z= zv#~=z#XN}V(FIAdgYVE6?6p5j3@(dH#@O>1?8J#TsqK0K~6FhH(2`mMP z&&$VEAf^JiJ39z#+_<7J&3)bN+t~BLxVtm?_iPsV zT8zA!6y_erom*n}J>xtl$^4yTRxFR>zW9CT4sVtxl80+rxM0^?%Fw1=q*||gmnjVy zFuK$n+ERF33vT~1N3zLockgO5=L7bvOMwmba?8k?{GE}iu67$`b+`9-y+TD)*b!Hn zXd#rB2_3_HRO%FXyMF<DlhqqGwTFi(RM^()7L3g%A>;gEY+O7% zw#kZ-PEc)vw=moQQ|h*9Ip1Rh-9B<{PH;? zeT@0G?^igR7xKh!;--K$K9*lu^x4$NG3hjafK+1k=jj&3bGPOLYd<_&dcl+QHANd6 zcNGnUnKt_jP?)&-9{T*s@fZH!9DIr1Q)i~?{Ca*<8m0Kh;cs`(YTJ$lX;~AfZNfIIC8R)LCkOt5mW7sSjCmiS1D9b#zw+Z zSG6dYzv^da=B6naFOU#98D&P=0?^YDE7f(<7us?f@(tlaw>u2|pm_Et&7eNwiUsxK^X`89`yKMhdf`_Fk;Lf~HgF0Su9DD_q&+vcnjZ{?!T5eNY52v|ssDS28Pmd@+a|9hLGaFlk zC23*IFRRHov8>0LvNjpX+NUc*R&Hpwl%BfImP_tH7h_p-F@QZeIx9il#$f!K$Sa>c zlvgzNwUNY9^WvjlCVg(y%?@USnlrh0VzjO9a#o^_VD{GOA8A{!Qq%^TPY*C_DSXuH zrAd%7$WA7spm_#V&^+gJ&${t!R;xvE-sRe(`JCm2cNtlWCNN%`#~UN3GOq>{!grN< zEPXHUn*2ib(oBnb1XBD83aO%`I>s@0v?TV=*gB3T_H{hA~^{PhbCN5rK97GXI-V)^sAsZwkR)D*U8m;kha(AX6*mSqR~(2)0rYI zo0kG+>=;jfTTdUBZ;5guZ>~w(^hAq(G=t7P4XpmUrSTt;w>= zkr%jMb4!p1aiwWT+R9N7b5`+5# zwVF+@fGJkDY6{P>mTaE8K^-Q=FL@|v*$-FtmD3b%LWNCd11X|j)_JhiBi@;Se5$r; z40Q`^$fObN(I%v=@-gy>q$G{*k9DH+;Hg_?4)KQNmTq=dQ*Y`)+uTf%v*MZTjp(h_ zt`uWEd%tq%7D7b(`qvWm<&L!1-@LA$&)O7V<*c}Uu@iHp{h6=j;FCb};E5`6Xv8(w zC%yrU*;wrDc0Zrg;M5jzJd!GuLRMAfnHGy}M^*lCs}}t69f6JQtM`q+hT}|NZc&>8 zhyf+O_0PX<8D~l+EnRW@GS5s$??d&A5R%JC^&41L6MWkmeE+>&h zX;!;o5^?_6E`4?u!RUmZ$OLAN(+dh}nYn6qTXS1zOz|_Jsh4TB2e!}3Y$Se=vsql> z>$0+@7h|`%^JZ*&>W-#L-@V$dR}+frXP;CZW!$cgZ2*AI0B`fiMc{Pd@M`PTF%zw3~% zz;$ah|Ki-a4cKhb53K!I+D7|I5LUIn4|pA@Y8aW#4BU9LFV5iu?xYXg+H`bCYfj&F z>sHXOUS-V!WoZl}li)^-&~k*c`I}bdI`|n*B;UBWB-)^s1qP|U##F93*?!;_9y-YU*)^}hPxNNM%uJRiOV@9KPv;>$is>T{R(%|4 z%g|m$C6Ag>TTRAjb6g)vDMaOCvCiR02Jgu+eW;$+0>`-i+Z(d^n=_@Cw`B0s2tLn7 z;h@bpUMEdcm&>VP@6qDlQ7DXf?U4PY2wC1kv9YGl$3@#MDWUHoQc6Pcg`0CUaN@eL zon+hHq8%*1OGQLn(6RlCP zEOlR0%lB77N!-T7g<6%jc-h1&j^zJXoCSYX{1c1w#OvM`Fde|&H#9ce|8jb2YVOtO z!szhW*vzXL^`ONB#uFZf_wUZa-;v{Q?~rFche%sldXgy>9ZBKFNx2r;oyV;Q(c z&*m}9tnG&y-`3@RYEL*Q#mtt=iDp~Y-z}N#|1>ESjabsGFf}}NQzqE_tk|dx{e?{! zCH43|wXnR;$75%v_3pgJ$490nmECU8WFI12dD^n_>P=Q_YXE3@@pA6M+=!olkts4I z$2TIW94q*Itn|^d>Vo)<$i-kvHty@n*IhmkP~3Kpo-01@jT?Un9=?aVgI}R&?;FeB z3p^5QS`@vlT%)eeR#wBU8SQOAC5hz5!P4&59rn@^g)%iY(=ZJ#3QjfrviTXOV%)1| z9478lsb%0UG!|2>`6TY(qu3bmhKp68?2__Foi+}(d;AYtm#!S?0TML|-w#6C&v+_L z+<5=>Dn#fd@`%bDCG#=9e$+lhja_&9?lXN89a@51rRmlaU<6rDaJHda?i!rh=BCBx2u#t~dyOT0+TvQv^ zUocav7iw9Y85 zRxf_d{S06DlaM+#va*a9vDPD!H?M>yF5)D03{^S&7}xx9`IIsENU|EtsC5DaDnc<= zlxoYC&>!NB8lR!Ky6w`Uq+Pp~y%2P#5ak15e&T7dx0fOuC|kWEcKJEcOl=Lg3rY^E z67?kf?SBIS_+DOTsY|6K>!}{LOGbG}1@?R?>M=zK%WPA)b-#p@2b_11mYf|?j!=`7 z&fouOe|bwhBBemzpQdPPAY#q#M)y>d5U+pK4*{I{M)2^+0GcmTMDhjehwz+qwzqj| zyeMyNnF2=57r~N(yheM_`QYv=XSjv0zKh;xm7%#%#t}~6pzB)!d0rRwux5A|rd7gn z^OWQqjqY2aH%$lfKBqPBS?y0ndhj=T6!g7CsWa)AJ`D;vLrZl>19-i<-zp6IOhy*u zN{y_R>K{B2e3Gu94Tv}30d~A7&y}io(L!kvRtc<3U=9@TiwR!D{DX9E|j_DLx z<4ci6rsKz5$9kk_!h;Rf3lEH<`IAiq5C-FS^fHWNBpC`l^z=W9+7&aF?Tw|(@8tQ| zy4rZgl$`g)7yrtT5V(8U4Pgp9$`qZL?guvF9>GYUcB5V43=LA?-jbS{j1UTzOxoH*(l)f>EG&RnG{FP9Ym2A3O z8q8bVv}H+W$x0-fE9I7$Do$agNaT;5WUgRxFU^-;K6`aRU6Vg*;76?9oldPEJ3x<@ zKuZDzo31(wTjpd@*s^yJIzXS2nR5Sv(6QdDTr@-kTcFKUTKl;BN?B9Kb+KcG;cLx| zH$J(9DTy#Nd`Vg^tC@Mc(kZHJ)0onizU!Bvd9FdNtwIMhcn_&={RF(2lV@JT6Hfzs zIis!@>#Q!X+vkw%G2T$UNq0=G5{#4%g*?>mhL1q01gGglR>Q^f^DEpCeED*s>PV`H zZ#0=(VK0Ah|iNQr0HT}qMO&6p&PgDd$KEvlyxu|w{ami@|!Bx$~Y~& z&9;1|d;>2|Jp`-pzV|Ve?CwIg1qS0-mP~VJyistn0azVh8*0K&t3#2PQyB34E^S|7 z{S7i1)cp@3X)oKLBMS~MZ#?nSgK&*|la3*$&nU8G%PzYv@#F@Dq*9EZpN9-C_N)~O zC;b}ZG~IZ8s&iSW6VdPE4X(Y|aJNjt7Cb7?ow>VHHzKA_M@XYl&29e1#O|C`mO|S2 zrUIpptK!)wr!=XlVWR=n*h}$;AtCkIjXDF z+TSCqx8EGXl%saUtwW)A&Oc}QK2#`s=G?g=_k+G*&4krqB^yB@*UaZ3M%S9pvCb&c zfrveT7=#ErX50N6y8RA*N@^p!m!w=yLU2+0%b9vaIg$u#(v+cmy6ioaD7DXo++_YK zp@MRgNRwDnLtuV((A!nP$+JD78<(b_RxGX!D|e%MN^5<%uX3!db!+5Hr9L)4X7~O| zXWmaMZ}0hAIdD5sv&8W()?R(#cH4!Q2!o^*$CUT+GWN}yst}-4A7I5zxqD@Q%G~8- z3cnppS$x)pTz#j5yq`avUH%dB$urIZKCCChS%vrt-BKYs_h}J)DE)`Lr$HSTMQqUA z_$U7Y?!1F!xhTb=B&{k)J{Sh-*nBKqNqLl8Oi#bElaY}=dpIv!6gmTmcn@DidK9;D zY|(7vJl2mJH3tL}hQH35aje@5_Dr^yn8JgVM%s!OA1il8W`~Sdc}m^cpAmRtJMWd2 z3ETRn_^n5zgfDtb=0`kDM{&~Jadza!wA63WJgv2v<}EV~1Ik-1b0M0ezV94y4@c&( zF8<_#SZTSQhjG@@yv9_SV?^1DoNAU&Xg=1I-^K+QQdts>=A*NHV&($Q``a%jiIG=xYep_ zS@D5MB#4p4{NwJJ_$ydr-Pr(?ZJgw*DxPaT{n8%TYew75NA*{4n5J+xj8@>2|2p*b~3ToYKH zNAVphotr3+lC26D#i~W>;u_z{jAFB3K)J5H6dbr3{^Y}1UCYLgd+(Uvz4k=Z`KEtg z&%fZ^vt+fYesEi0uA5qyvGY88%EGsnsc8J2XpQG`ubgT$&B#DjJs{#|fMrqs55}-A(+xg+W_fo3lw9bGApm9`l$}dtQppVgQY{`0~a;mt9 z;e~XPwD(SIAqCrJLgt-^=th?{Dx4_2Mx*CAz(G5>ET?lSuAm;o;$-4!ua@UQK)UXtaiha6YS|ZE(^3T($8gHMXj7oW5#)6;ha{ zBGan5yr3xcb+U{%O2F8^f~YN_`m7=QLezOP z-CR{d;h?M1DA^7XbwRdaLyd-OnIbqHbakxiMhyz6F=yLMIuec(} zUJjWDr}LR1(xSvA%#>*@54QFcQ%MFvqBjp7C!Sn})rWgkdR*|XC5GXYJs&iYJO_`L zj2~GG-oZ4l;9k8RylDC*%OrGIrSd7{N(%X1Z?02MmC9`sRJ!$Ta*2x^uM=)WqWt9g zDhs`>saM-X@0CysEl5hUh!EFuUcTY=jwbW*;H3kgFvX^D821@6nzt{geTwD%9orZN zFMXlod+-TWslmd=p?9PpB1$`{t27#b&)(biw6i8-1+}|r2w_I|dBT%_Lw8&uVj4c2 z6|kXFdkluUVg)D9$f2Sz(Lh%_MkrwErDugg=LN)B1qw`Kdi0DpY4-8Fo#%(?A3j#L zW!J_8A4(YLrD>PjGxF*2Vbd~)mh$hW%-z$zxN$Ix^|cEtpFUn{n*KTI7t(Gj$FhI6 z*-m9-+S~f=B59N~I`!6VbqCd~&vi2kr%TJoN~N*)NevG_h^ZGuwksWBAlFym-Fd`v=GrXqI;i6%Um56uSld?!%mc00W(uaE zy6kmpRI?xk!?#J;*i~m!C`U3<0XvrvAIlPzL_@42 zdE^!t-e=D}{m`t3F|6%yp25|L_j*-Zbn>3tQbZ4zNaV-RFr6BQri0BUQ|&7|%ZUy; zFPAD>it9z#+bz3&Zqb|(wahqUq=56+vHOywfTra59(hW(s4M8p;~i{Fg+(MwzyR~t zkb1ZMJ4$krcQ!9jXGa95U;}0?Ds{U|RXCIt8fy-WXnexm2*f3pX_=V^yQ#ME=a? z^c9Zo>fD}$cb8Fu^ZLKM(VXOqOA=(Xo=y=-j>9$alhKT0tx3D3m9J9UtRY!kbqUvv-3!K7+0p4akp=L0cSkU-1-&r^uuvUkncB_<)*|u~C756-?PX zR3{ZD$Dl=N5*MROaxLd4=@qkK#tPjKp0C{JOU!TB{3>a~2<8n4P_)9kytAJB?LICFQkov>V`~7_p7wEC=6XFl>8cqa=GCkxRqM6rau;=bx5bwzJ!Gulmf9D+W@K zDZk<&uJFv`%4bb)fQlTZGROW1HY!x(GVe^it30bzAOHR->r{!B#A#);pSIidSqr%Z zd;Mn?{NKM;J0B<XtL=VWj#UlOEe-c2|r#$Z)4*P9w_=zh_LZMFUPj^LoItLz@O-^M4lWJL5tNwZ}&qPL6tp#Pau)mV;R)gX=;S~tzG;<>q?<#4~LSr zvM|cZFGz;xekC}wF$#@+g{!}B@Ut+M_e?CYXuz~7r=*g0xC+$G9oP*!i)T9t{7m0_ zbC~qU*r&$F*6+$qwwC>eJmmMe_|H;9}ay8_UU9uc{{_PolejDy=-0#oh#+_uR zcQvYu6HRQc2_CvV3O)=p%0}ttUmfPlrcFz7Uh0U|Eh&`stn{?6pdPQgbcDOznJ(Kv z)-zN%W9&Wtb5XsA^3z?Mtk#JAM7d-Y47BDunjz!oZJE886OXJkzU%FPhnd>49C?cY zu{OIAVTCc%<0HO#NVacx*{H!ia0^>FZN^Ku*2nel8XI1fOQ5L1p` zIg4M36N@kB*xT~`&*QX$4V+7z`0g2g-)?8%TDSr0JHafT((UII6xpM$`noSn?w30a z4EyF`Ck~tLJVIIo#S3xNku@@k|P#>1p;?%`-ZuZ)rk&*hV=sUCWu`D2ST2Z0ON zJ7p|2)XG}{+Kp_i@dg>40)iuSF+F(l)m2)E61r&obERK#c~f-ml%L&iNT|#>aA}O}Dqx5317DNy$YY%b^@QE13u51=+))C@ zYzaz7SF^Kt;WQ>_6MV5}thm6N+dI4cIGaYZ(?p%|>L=mE# z{Xs`a+P>boJ@Yg9STnaFW<|W!ufy$k&x9z<(n#O@){CUaE9*$}e)Z?#<$XdW3R1;~ zB<3bxb?f(znTli}L*9Owd4XLxO}R*cR}Zb!YU%(lOoSL5fd&8j8-`0vKNl!OEBeJ6 zwqhMG{vP$~4yOJZ{uL!E^rQc}V(=vbbTZTCNQXv6`R3DjdU0-00(LYq#UxUli1R9~ z)k3ls*Gmbl));k6HF!u1)38T)*E)4+=#OQHJIRfVS@$Cdz6`YBIb9b%YIV+7oggVJPUp{1>Fa?8WJ< zRAGYYCB^7ryI_JnI?j+7Z9xGU7EPno(D2cizNiSOwRSk}{*7YL?svD?_a1&PcK>|G zM9cY@rY*Ug6kXGv`}-D=d))!r4fB*$(A?3s4e5#p5gE^MjY{O#eL@0~I3r7b5Ir}( z%4rnp-aB9lP#8i)=#%d9sx@oeBSdfuIKc$~BxHtFEa&zklvj=js#Jo6DdlqPg8TW3 z4)l98IReWKh6^7L2WTFY+?Wc4)r1@SlKaKL?*@f@q0zm&iAL?M>`w{7zU5Q*wgif% zzs$<^<&0eiuMjatu~XL^&-JY01$(GK_sgnK43y2RAYYIc;>_CvD=#1SQ*pzj5VR!> zbee6%$E!#t?D=XApFRl*(%#$ctSI;?doayOmt0539e0>Hd-+&}t$AlK$zOQHQRC+D zTLJ|aCr;Jy9#rrhJxOq+ATlsPJF4GFUC9L|(4#{Z@f^O#Fg{{g-2Spju+Khf%t`k! z2Dg-PPS*0mQ%9x+`N9ZIGamuO1Ai6nD1zzw^yfM32d(8$1@hN~kV+1p{qQ;1hJxVf z>yh?99TlQlU73x1MtssS_GuL)+8kUM(u+cbyLKH1<%)2UGm?wI&uXwx68l!*R52MP z6XhkI76mD!BJM5llGF{eU_dbCn69_?ys02nx+CDpm8u(jGu~7xe!A@Rd%viy*0f^g z&@nL=+RXGU_wz60&M}tp`90K0Lw8Y03V58Eg)%xwk<7X%@#DL>e4$Vdq3eiq4nJG# zJ@K5azm(@`0=gB>tQ#0Z#VAT2)@*$ots4^9CQ{&=w=8((kz`rT1nGtt((K@@D;tqSJI(Ay9%7bdB*GG3W$lHuJ6IhBoj=~%WKB< z?t<>BB2B&&Bo80+&|O_-HNQr3ZB%hv>kh<>MlINiOv1cJUQ=JUu3P8H(JoT;3BVJT z{m@Wb3p*im;{(KjiLCte_S=HnOHK6WuQbo&9xg@@!zJkMf^S(-Z8B4VKH7z8;Q0B8 zkJkB8dKD?dw+Zyo?ouVVW1CNH1JF?9Hd0i9zn7YhS6m^r3I`*$;J7U(wuGzlcEv~K zJojHxeGgA*8OuOi+|783llo*MfosoUV!2IF>2+hJ{`RvxHnKf2c4II9ewC73l4F|( z^*1fyIq$J+G@;#P0plft_;2s{G)51hXz@s)=LO=aO?M0vuI)x(&j_7)ub3yqaUW6; z@gw5ySpK8wW~Et5Usso-_UAFAkJSxVwV$-{4RhxbI*dX68x08%JW#+4tWwj?2HJ%= z*x0XEB67i3=N-F6v6$E?!LmVA4Ak2ms?BN)B?d*-!lP>=nAQ!=b4p@_g>(3g$@4u6 z6;uxr`TLe$1j_SGE$~nNZ03k@_qW7|V2Y_U+gmb%hJw|`)fvgpjF$V*lNBhqtXy9e zyu2CplfB@#&*0X*{x_5)j(C4lCF}nNaPGyh+S&( zU9kH(eZFQ?`+dl4$(YZ64Uef*XL$W3(caqEFS`JNl1ei5ppGIU>X(u}Yy|UG+H5kEd$J|H-p?XEB?KTZHzE)4zHju>w^I0p~4HPfQ$npm@!8=L;Hrba`qj z8BgE8ypQz=XQ?Kp4OaPQnZ^cjmF%fgz4W-t*?>r9YP)?vRyo?iPN<9etVRKzwapY= z=O-X^Ez$kAFTj7wO6TEkAF<7WikJPoh%nb5T^IIEuA z<$W_fUIFeNaW9QF3~AS$1M|x7^yBHqUY7?q6)7>LdfaKIwB2QkEhe${M}9l`^ry`7 zdmns{fL`_g@-%gYImU>HzIuRsbN4LTbU0W}^XBa7=kFYmNq8|v^rK#y=-LMBpN~JM zoj=JpXbKw5F7hBJ(%_g1^9u-V(Un*p25n^5;OasL6` zR{8d%ePx!EB!2KxM>UvwgBn!zf<7}1gAzh1yEkJ!+j$-Q5udRfLpapg)Np_`LfXvYVOF(9^MRlzFdQkhwE9W+~L$qP{)u$L3{bI1`9ug?x_6 zI54^5?TCZ`tA3t4a<<2Hf#ONdW3wsDee+K*b1`m?E9|lbdc0rug2!;ktd9+cm!xE6 z6hH!_#9!o)fp1S(guZcb>KJ;s5$H0P6JilY+7BI%CA z#=G?9DT;7k7mLG8c*+|TyWMV@vf_>`A>K&7VIjflc42Tn*eH{$#3HfUN@vu{Dli77 z_xjj0jB&x-oeOJQk;EB0ZDy!PtBKLOkQga4^DK-jn?h^cR&x5bOuz5=gVN+rcX=oV zLy>X~-|T7EP>ujYLyiiIw%N0A-t77|{;(V`k^IRF3Wo~P_QmHl>Y-~|vMbKFtX;Vh zY9hCy1-~tJ<|EXf5;`7B7vl5Sy||K(8eQ0-sgS)>*}YQNYJGCB7>sjx5BUPxvUZ<> zmX9kwmN=_##A_|8c0095&(3(E-TxZDtmQ^aLKW(c z%dZh5XFj|$lo~=Wpfud7=C`&GqqTu+xg?WJ&pK^=jzAf4L`OJ#{I55tG@3Mp8Su_@m zd(FwCe#L|8g+o}cg2tE1&DMF{{gLSB=b7H6C0JHmaTOkK_IR?J{k3uC46jASXzr3F zt%2FLAmy-`UZblG=wpm!J$#l^6)wROeI6J32uJ#NT;kecP zY)>w4Q2jBVq1}{01B}J?AUw#mWy8EDAa zITf*6_pH7%NBM3l&P+4@3RDdt|0)k0zS;lCxI6>Q2J(z5pg1M3t(%~%DoIObJ?xnF z!W9BhzlVww4LjXqm%lw%IPT|Hp*$7f>=s@n z6EV6^BdBSaW*Z zp}pW5^t7fFiwL)n*J#63y<7W|=#q(0&hPt|UNt{ZLuI{fcnuj%B4r*3d8^;)mp zwR-tA8IkQ~C(%L?t!rM_Un?15H3lv^!F+0q7?nI^XvIX8_=~G!d^?wyC4q0Nk zp~Fsb)~{Lp=Nsk-=))_W8;I(Fga=naKW0mb6H^bd*XKwih}-4t*4FW|PTVa8jjzK%NkxDzku z^P0J-YqGT&dDj@6pge4iT`fo!J#tA@7o8B%I~Cu~|77C0W6#JX;oK7H!%W_Rs_(>e zYpL&9Fz-Bvz=z9{xV9l_CH2^A(xHf{e9K1o^N5zG1TmoV21l2+g0#=*=iPa~C)^a4 zHdkxb;05b!ACf;D3^5ma=abD1z{6)7P`oVn=gNAvE{!f01h(Y#Z!m0$wuvz7!X{0@80|uIrDhSFL6e}DLQWuU&IzP!i*7|3+F|06#fS@8U-K&Lj0+8E zl1ry`L=((d-duy4Jz%M@G2VeY7*Z*p%(eGet3-5p@$0%_--zr*XXdeRUDheA_ADKca8!Id;5hJo zzNaqYq`qM^ElA`w@bm)FBQ9P-)d1yBK3}G z7&m5EBaO6Hwe=^h;&PCzdB}(iQz$D}d@~>SDwdW4x-sOs&RVJ*B#BO%xonUOiMeDQ zo8r;fI>{$>#ff5ZSCn5)B>qMCQ3b~agMA9oZ89=pLvMaAaVY2hnD4VQ6EB|_a((^$WpaQ*0w^9X@i`a4y#+Rwm}j8F6$Gc zO0vVXUz|Dsn(yry+arfO=oy>#@mniBI0eJOdC{9gx7-_-U$ zJH-$UGn(mVLmA)pK;T(y^!WGGNy!k?2O4HCha)X@N^LEDbK7tFK+|+L1!L+fhKfDO zfA)OW_LW zljPQoq-+h;->}-Nr7OADzV}yvqVtH`9OH%{PCE0J+4Uo$knzj6jEjm|Qqkw@xLJ+|ruCBZap{+T;Iz4g*`w zTMAoHeX-WASk5tuT>VdRkl$EC=gti}RY{w+xS3%U#5V{3Iou%j)oTZ%taCbPL7aey zRx{X5yev>nAsg~)s5-s4abzfI^7-oBbM2;MF&4dvrPRf`rps^M?OW-G{+q3(^=1c6 zRW)gOC^aK>lS)aHopZJPmV=J-n1g)ed{*a3vqQ_HmO{$-ZI?crY~k=0!(w!IQqv0N zj&;EJ?L=EQ>eP22xo{@gpGU6r+s$5<9rOByZK?LB-tbl94U8H&X;d7@t7gdVRLu)Z z9CFgq)J9V4j(>i`>F^15j_DX~HW-U6b%>ns43-bas0Ps5yN81ZzFf-kI$3ITz%ay9 zQ){v!f|gb0iBI8o%_SAmIc4qmUq6dkAF>iR++ur5*1w6-dC6P-&o9L1&vSQvu3w8l zg*29QqBaspY>o5U*OkQJ>mhN*FN6Mg3I(BF>MvtGfjs9iw+vUb2W(JPY~9h#OvumI zCO^~IzzXv+I_mf0Smd zu{1(&T0C$o9F3{wsJwk)?d4-BR%Jc50WaUxfbHB?Qc!)oQ3N$aT#-+a>1FQRKGM{IxtLSY+8o-^ zIk95X%2ltH+q7R`-v8%R-rfshfr>lfamhhnOY@CHEk0&4@8+w%!ae9P=JwV@JF9NQ zh8rmKZtq!foGq8nggRRDt(zTm@u3+wT0pcNr;n$pn{KKhb-FF_o2v2S{hacKWLue%EsAowlbDYF}=ydx%CxarYy%GPP{&+cD${UHP9sPgmYE z5hh!NXLR3O)^Ky)i7oqY(35c2K?U-v=Q)4*W3vub`qd6c zB66Qk?fW#jYE8FYOG|8#aituajnNo9#Is0}cT-Yj@;CFsABBI8OxM)P68b*B-lxeT z=)apP93T35P?nlrbG+}&y?>eO$7dc%HrPnk%_uMNaHvw?tPSXW!yn--b>MvY*IF7X zOY8e6eL`2_&eXbOLdE_y^_7y|(1A*0@^DsK#>>GS*3^T8aUj@cTf%tW;xCt1 ziN`_}9pU44#&^kSo)lmp)O(F#;^}{24yIghizU{GK87pyspmWdJ2ok09$qLskeysU^r7!s0aAonV!h>X+IJQ_}eQmp#^l^wPS>_dc1?LA7_y!xn? zPU7}Rwtkw#puN!ZC_YPPZMpS|_#+1k&%ORt_V&I}-%b1YMPfA#7yoTpe(b&smfOjj zvdhubrG6{2wu~0uDGyM5Kn%E{JpWjBlhT*>71I=WabMrb=6_VCS7sB_$}r!>t85fo z3)_D*m2>ykXGwy)G_UxvjP5!e4h)%hbICLvMt(f<|GVvi%9H@drSLzCUz8XL>=zt* zva*fpB0~$T4WX3kFk@D(hUbarRB<0V@PheVg6F-Kmb&_LCF;%Zs_RTPJ(lY;=yP?v z;*=9d`o~*(E`NA^Ydlf^?q-ErB}py*;PV^o>sObCuxguqvlvfYI{GJ$LfDMZ)n{fm z{pq|Vq04Yw)0I3C8~oejRoL15nj@_Rzvou;tUq(iFT3H79UEPAzwk$BLOyM^_65tE zEM%uA5~UfKc5b!D^|6(TFY#0Fk^SD*3wOG}7EZ{7DQn^%!1rm|Aqcl`SI!HV>9o_XDOdW7g&c5T`h7j;4Bea zjP9!^_J(abVXP$Uo!EOB*|QmoK~VA;&C82q~$eT6<1ic)PDmf5v%k+>R16nV_Wkz>ai&aqQR# zbEbbWv9mbGdDU0XS>b0by-I??v7( zze6t>snS@PDfXEOj}|%2u&)XqB$RrV%4Q!{PxK$XI^UdtE-kX#NS|qvgaz&V<$=CD zZ2R$T;|DkQTMq>@#jX_r1e%)pZ_nTwmVa$SLacfJdNeIT#>R=$)#o-va&$dhC+8DN zX+zDJ{CAr|R%HFL(d@5Fqjm9L$qxNnd(r zU!gWlSLnAc3ylfi6fIJ^ZN)b>O+6Lm(t(|s&7>RI3GRQB>R6Gh zeIol>@{+sDylVSr|KdsLEhOxUZOcv0EYPwW)b>HS54YbREC@xFTIP-DJs&;&HU03w z(d04cF~>XEspz0Nd8F^j|J)uiE4d%K>PCl2Sxw;IFK8S=UsP#mkPk(rG4j|zWgho5 zRp-e<(xjcTXd`eGFlQe&oBABT{%<~EuzMixOjt^?;k$*#vAYEZ?mGvh<3ElcN%V~q zbf;!>PnZ4lNfFj21X=dGQw;fpB=$R5fQfjR*&Qk0DNG~NgAL4BIvR%h((Lxor}tw?Yp= zz==kVAW?x2r)N5cUmH?qIPhG?tX;)k-o^$Q2(hu)OWM$x6`ML(?JkvB`vQ<8R6DpF zF5pYMV@iKbt2C|9JdKcWi-kRvF*RL9nP;VuKC_4J;RMNUQt4*llm5m}CQYOq8htgh zcLS5z!S71Gn0V~a86&h+d;Yyg6;&t zy-V+F%luiwz9pG%(|QZnLK+N|V6I)$p|VT+^tWg?S8gs{AcYvj*ZVr0>DF@FB|N#~ z0P3XsqlV*m>RUEaA>Iai(Rf3r2B=(P?4dKQ9kJqMqueEawHozU}GChP_ zZvEF_cK!(&zoYWPPO($MjXy8U3f!{!4>AkmXa7*uzhh8Dd~T1jtV>~@4JLza>Tf-5 zf|~!x{2eysIg2wG+suCvI`n46`Qb@(m78%T)1$|V>gH78>(D>WP#8O!h|udHjEy8m-qD7^Z;VU!WXzKW{zIq}?QMb5== zfuYSg`DUh7xVD1|k=aYU)=R6BGww^>$WXsH4Ir{3C(zgx*N$P45Y>B)bk>0}9dAn8 z=yEK?`ef{c#&Cd++{Z+pM-JQm;pZZUA;|U{T3NmMr}wGbbqyO|EGn!kFK+PGQ%`>r zd!xt5yXT9g z2x!PV0*Y*WzV`Hlrvh{Mn>Q!&TwB(XndayN?+d@YKP4I77NMy`lOKMWHd#2v0Exy* zSzEodChrfS$dFBxoIYZ}m=3xvkSM|fP&u34;D*iW^R-jfSTnDxV`uVAA__Rh_uq&2 zh<%}&WR#>cS&OT&HVqZym`B?bC{C^OR8(W>SB-wi-CGPs_zY?~aG;Epo z`cwRh3oTx{H0Nc|iF%Z|wiwO?hpnvaFaN|wBctCof9DPoeq|uuU><+9({g-q(&x?C z1)GmYy<(q?1U@R->d?0F+4X_tD=t2nKym9)QePj$F*T(c!bExlCh+b#R*4|JAY8!D zMO4WIWMTx-28bsFlo1rg|BV)zY~9yNOZ7|!{F)KK7cAis$1vC5oNb?~;~MJdHU=(Y03h47$k}`7tnXWG5DrJ)A}B+9X@8Smj1==t2F{$3TkcLw#S*>dM;rELOvE z)yH+iI;pJCjv@NQ8-G@a^uiIc%we zyCEGIU>6x1W4ru|URWR3JU7*8r^32?t9WvOynWT*&(ov3tnNIqh0ggR=oa>(GXQwI z??nZk=!aU2Z|G@g388Bgg{PjtASb`u z4OzJt(JVMfYegMjr4|k~VjR4o$kjl9ww2ui7KC<)?n@1)q~LMwc}3XdyWnx%A*=RTs0UwHrpm0ZJHmQIbZYh$<#0*f}sVQpG#(}u2tsnsbh)X$$xJjNXjsX?b1p}}r zgGm#aKsFBodE2%@m-ArK+8jud=7bg%*UfE0%Pef#N+w&2{g8k@OR9R|G>VRO-9NKF z0=WwzztG9li`)BB|F!q(^5(+fn2C8tiOR6ShZv`%VsTq>;JNk#9YHj2f9V;fl@)NBTMUX`uV-u z(SH}2pFGYAp}d}!$?;kvc6w|sg}aM_=5Y~95vx#2M>btvm04N^v<3bv1tOGr9$r!b zlC=K-V20-T1YzCw0YPY=@WmRJuOMDR+2&p7>+?FHJWV4)T$K+}2?OB62_-g#ZY9Mm zO8E_3hjs7Mo{~gvBAd2&gycC7m%mih$`#doYaCC|BebH)1jXUAW~Fy34lnf?Ss+ta zo@SS(C2^gX8`9`oQ+|Z@R7;krlLDPO;Ri)%qxKy_GxOG<3qgobuti*qr(?d~*faMr z?s8w;$kOmyL^ktxTS)hskUwl5eIECY2HBpJ_qDQMG|>dOq9<%Zmq;9o0m~O10alGP#Tiq5E`pDWZY^m%`_wS8Mt6DQMAWK+exms>G%9 zL^bZv>_Z2cUzR~F*<@|EKsswqfAxUuIw?R~3Pk}r#^q5B*{HS@B{Md?O5P1oDPq6P z>}iCt0%w8_RDMbnAXZ{MY8Pk^4BI~7SSfkzNU8`d>l?hcH4ga^4h|Y?E@U}#pMiDA zuT9(Nm#HhA)-8bdZZlX_wRJG2Gc&VzpX%q=J2b6{Kp9r)HAQ@BYuQuY;_gshta?5( zE%EPl_XRB@ivxA%KOWQIG$?gRe=Bo8SwKqU>Sfd3W;UxbOI}FA`{iN=%`I0O4WpIv zm@q`*8Uz}6Zj883FM=_6Rt1teg;}yCR92rYCJZMmZyf(w3|9f zx3hH=htyT2C?gf1az)l`taIx7vu-78)s>lfGiSoHs^HZ6mfI7%dE{*+2YmuX-P_Uc zeHQOqK!Cf$hlWLlnwfnlIrkpcylQ#!wp^)fu9QO06-XRXZjOo4b$TX^+6?)f08`7ki=l{`;VrO zpa;B&wX5To12XaBaJ1q>fS6eF0F=J7kvdyZlM|AaYKzHiT1ZA~%AF;Sp~m2`O1%DA z%`8V)cS-`mVe+OKAvpC5$~<&_soJz?-2i65e&?(G4GzoI)zP40AO^4V{r&MRjkS+k zZfI=Pxah+)T7GzVSI6k&V&Kee`=x-9sQJFKP95MJgd6lr%x@P4U}?p-@mbacm40h( z*;AoNhiNU>0;FBsG&!Kjsd#x3QWZE;U=u=wa`OsDVXji4P$0>Ok!XmDggxegJmnmg zC=r>l0LLo!-7qC7#qs@$v!ZII805|@j||T)Sc8x#k?6O!@N2$#RX2t5i88RIB`IjA zlQqd74XhZ%2jazZp3Y-rwnnfaejAWr%{-%*?@;W2VGsB19DkKEiv***#kj=d%bdOc z4{~w)e~=3mLV3QRNo|T8~|=1#bb8ye0y(Al`;Xu zg@`ucR#7m~Qj{8`-^`%O&}7(VA=AhWV(IYJsE~XF6!xV9;G{t{S858%$tm+5oz`$F zHWi@{V(uYiozBg$mQ9u+gLsgo2)>x&HHzhxwW5`}C!T+d_#m z#YM3}9`I}@nPtEmp}Y9fd1MvA{20DzmNn2>JP@Q@Vma(Ho5Z1;7UoeWcK2p zS6}ZLtKStjcK-i1_ulCPw)5cNXz(b+H5HmHV69)g_bE&<-R7T8W=8RHTnRR#2u3O* z&?W%1X19s7pjsi*-^Gsoj`+vhSFQh$I-_NUb5P-9SB`cU1R-LQktNWgJ} zwbg9)UTZpco6Jg~NzaBIW7h6kjCkuDsD6?n`w6@3=IkTwHu!7XPW0X@=B1av%reSO zK!;0wP};#OHvaK-!?bl7*19vKWy{+$isOTrwcpS{v`)R}8EJ5va~9IOo`@G;$aYn) zi|i*0yc>~J{DV;*1=K2s79TocMQ6}WP3Z`%j+bV+I@yq^?E{IGy6;)0MG#==>TFSE zmT7%K0~p~Bg&DsmwG|7Qmooa zW7e*ib_HmfD?0Vga<4ks;i~gf(~U|TRr7nNk&4@8@~XK2^Y^KDE{;E1ixEB!jhFNa zy12w0yEX;-2YNjQ+DQ1yMP0kemOqx+Z&A)@8@KQ2H@44J?8sw9&xmbqnXOsj_0?`y zh^Cfg46iU_B;EoN=}Eo1<9i8q&r(`%f)TY!!@?Kxq#XSmLt33vptpj0Um4oTsag?M z+UQ({2qzok!91S8hRo&mC7@iHY9s*~>jHpAULORe>DtvLXfHql8U+CMB_iMuP$onv zfFVMzX71-RsX477njZp8M5T}gU9a*7!+kh-xVef7nmj#%3lh*Ua=&UCIos(dew$+G z8-P3I{!*#c`;l~2G@Yg5Y%D+zI0zfZUuvXoQ=qLI{rb=dY{}Q}#Gug>bgNpA$KKa} zcRz|xf5`%eOY)2_I?NnzxjXz<%*dwX|7G4m!K0&ygM#@0hy!@XsaPoVmVx^667vzr zBU{pRYi!4P3#rqC1-wkw7R6`6O}q#uAI^m+Xp|8~K~(xHD(?z(#db+9q&T--1xFY_ zLuRlU4FF4PkzN@mH@ek1a^`@?N{JhmCW6dO!$wmXYkTncwN*M*{IPdI)5B^dK;77w zx&B0G_RT~FP;Cw@uv^-O8q$3GA;j<@hRs|HjX%ye=ZVx%0o^O>Q{fA-0T!M(dctrSs1W*~9Bu!))#!h6`M7nxPwD@%ok_B0 z=)XBnP^OcpP{cjM!CVzL)!h%(vIHIiQeV)nJOE4pj7CRmv3cGW0EDLkniQWcpm@U+ z7X?g40#~)hAmcE}ewuootFhK#aA~lRS*&5`4gA0yiMBh;W=~8y57}b9McF4u;o(|I zF1MZ5q)wqEw3@LL338?t5>1EZA_6}+0I3F8>)eLM%xnWeNLfbYi;h&p^9zATF|d5n zt<-o}I(SIS`=OHshW3m0hW#kb&?s^!@zO)u9lAF7yL)rLM*LusKZ+*|exXkUbV7cI z*Xf2UDjzYRqQnZ-_Tu2JT^;x96ELPW!PxNI-;2hhnm5c5{%g0J}0A!ge z5nY?yv8EMcu#g9>>XP5;D9L;Pd$%G}p@`f-RYquT8-|Z20X}&&s!Jx5RaYzZW^wX5 zG~j!?H$pTL9=ks-_bbOyTEQwkrWPGh7; ziQ?>lxlB>rTxXFqqAW8~O$3vQeUCF36Z3|{0Un8}Fd4?EFfTDt@fr_A(P*cr5y*N; za3!>Vbw2yByvBtokoY2W?0DXQB{?tN9rE%m%zH~$1DaDTe#)NuR9h;y;}qOAbTnxvT@DE$BnZAKKCe2Qv=QgySB-y2JU$W2&n zB22~sIaV6(Bx9rse9#b@Hxw9NdE5^VmkMDMko@Hh55aHP6L-M~7PY!eW~pReNYqKq z+*g%CLI6lh+Q&v!a@(63sWp?>afmyI&hx*1* zu*@I*O=hNCt)zLyAj#UKEJb9zn-zXh9@5y~5@;n#o5G7l_S!tIzzCxng>J=5vt>bj zb|^AY8Se|oqTC$6WCjT<>r|febc7q#A#-a0mq-TTnuTQ={9r?kNaq+WE;K{wq)%mP z$af~v0xz*oo?KGRo`L(G+@6iC0IY7d_!H$-d*{;Cr-%t=`yr@f!9e zN#>PD6G#<3ch<+2&`!GUfMk2x@L}`61uZv2)d5qwm~jY=Y|S{hdL3u+v|sE7`}Uf$G*4exyD@S)`5_ zTbJevNW>-tLq>x@Ha?u26GT#m2U#%GFutn>f&iU48p^I|h^3=Z*sJ2x`z;Yy(gUnu z!A39^gPg4o-Ky%dzW>XT9(oF+Jht>P^3h?F9cL?iU_mMCo&m@-J-qAarwsgF#^s+j z7yHyW<9ZGAnkO&JR(D%L@2VniUrzZxb6k@uY4^_gJQ2A1T~fHyP14IsV||M`31zSe z)`tzBjpe-phi5I{Mpj_Px| zc|~#>;i`Hu)mRjH#gew(W|s*;CaH;ZUfcLB#CW}eAgN1sFi|ubwp@-I7hXF1mC#65 z_6|$8KElYDeOO~`cJAGr_03l}tv_#}Lf`h5wkTXBao(z|ujS+U#26Lf28Z^WT+7P* zc(WyMB9hlGtQ+6WLF>6851kBjhG(Q513W?9*>w<^``XpvG($c zIbIF*HV}Cbo$@o3JFqz!O_PswuAPW_v+GlIfnVjj!~I1mC+dABm8)99f%cQ?)XN*y zM@;L#c>XFen429o#TVBtzJl8l#uxMk*SWvFbK`Bw@R?S@Z~$#|8I&TU|*F(|YvDcfR!+&1VEhw@% zcQ=W6f9m$LDRE71L1JfG>)UmMp6Q|kNNp?iz)fv>GmJ)gJ|>Ax=oxFR5*wNZzR9eT z$(~Y^{0a8nB<~!+3Aow^FdMVL*j$6Em~Jkp)y(GL033EuTRiFNnE5WdOX{@}%aPAH zM2>8tGWWqekI8D|7keb@h`6rB1+SWXoTz;JQf~j)lkRy>tibW3ei&)}JaBEuj4D}T z5Ehwq0qi~QfprY&Pf|%+UVuR)oLBcUN2k@t<_MO|*YO)u+)LW@&%S4I4o3<1 zkFIG@HzFPWQ<{d?espNy_`J2o(~~OBGEwg@6(IFh`V>yQ@4f_vkDD)>wzRnYpW>K* zsvHEcn<<3UK%Nnes@2r5J*MMr_p&6)UT3V&&nQEYX&q*akY>gLxwCU7qdiJKJV?e<3vHOGHZ#t$A24#|l&wkqf z;>XJulvhmEsbT*&nMz2C=oX6NDsrzdI)8yx3SCb}N!_%~@|nPFUd4YunpOt11u${RlFkP^_=7b2OQ)8GHWl z)9!!tH|DyvqW`&`ouBqAkD{;AV+Q_aw5k(#I9G05)XBh}%5IKI@cispzB%lO#`*R< z9?pESDGbhGGxfRp@dK@Z$-qR?db5qOK95Au6= z@-EM1gMJW^ViUl7*k$d0L}QHCE9VN%9xs5)F?#)Vg%i~e_G|x9nH84qa(O);;OTMw*)o&DtgVqw{!XR+O}Wh)QA= zUaXq-Ktz-mn$C3!82y#c&7gqi{_pgtS;8K{)vK|Lbp6sVh;5b|zqB;WYZMQA_RW#J zJO}TXyu5$T&MLRWvND2uM73w&V#HYQUs2V(8ePGf%a7$q%e9uhtBSV%m4=V$YbqYx z@O3k1qnYux!NWN*|Ayysn)Scgq^7~@ADXvehwp5RqJ||s$jaCtpk8_C>GETR?+4df z(zE~5Lqbytu_~|sPNDqQj-oDUc0gm|)$94^UtWLs@L_)X)#n$_X6Gu*V=C@{tp4j* zw9{hS4$rdsj(=v~8R_~SYC413RJ3S1h;Z1sYNyBc{wDe9y<;K~NzjIuJLFUw;++Bs z{(o~y=x``jQ&UrtJ)cw^*-^|PP~A(vtM9!mzIY?ylJL^)qxbXvjlJ{f#aQK=j)Yyh zL&33vqj$G{p~YeCD!WVT4&IUB+7EM{-6`7=Jg1&e>-bv`AE5hTMT^`_#y;gVmF)sV zou2l#lR0?Z^ulQpswJ^}9yw~^;o<_^KXF%E>a*u2!+EwFgXzu^9Af!hY>ca#Q%P3> zIJ|7JpZ_&t%Kd(kiH2hP=u-cwV~NW*`Jdnb<$z~93q%UNGOS+bxe~`ywEf3jox#PPDc>GBgv7YGEqdiJVo3iWeyl^3`Ussp{PbCU&D~o%bq*vXDC1ni z%4QS?&wEe>L>ZJ0y(e=u%62?&Hf8ce3Lrw=p7{QI$ym!1Mca{vPpax)xU-r!H+B71 ze#@SShYj9b*yW>^c+>gpy{sG(JA7Y9bIiuRUN~Wv%=pxD!bU?YX>}H(vhj z>?UG?n=z(#+E{e!1h;2S<(=j}-(|CC?faG1VYez{TxO5!!{9KE@|dzqf7p$CX4{o? z{JZQ9^++Sx2HPW=lEnaE-(f;L^~ihqwYQ4){^JoG2Scopp`bU2JsQ+O*KQ2A#0Qel zl+maMTw-4fk-)Bw2f2(AG99_^Dp5quWurvC)Z)7S(bu(&NMWM~%I{K)r6scLzOkRj zWKt;z1BC2j8H)Qvhe=|edtR$04n{iAYMljqUW2^TNGRv=sRK)ZU)9L3%6G=!y0! zr}5gXYltm4`~K1U`L5MkWA)qQ>80UOyKYqRa_0SQe<`6)@JNX4DNNaJr_xf=zdw7M zAcG9sLrTRbqNT$%Ya-Xi2e9=@LOb z(D|64ShySb;K}8t9Q(2JVAD0D6uy^?UoR>`dDfqhy0Lz{LxoKZo?9xi+Wtew5`1(x z5r6MDUNvKWp?SuBuIZZY93pwE^!T9d2T}1#0EwZ1 z>($6(tZHT-V~8k0W?)LTnn)p&DJ_mYu{JoR-PuQ3LJCB&sbHB&Hr7zON3*Y6T&IaE zj_r~c2@!Xx^oe{pOU;B$PDLTe+BXo)(QH#wKVGCV;)AbZW>60Lti88B?J@+~aLTiA zghGKa6tOB)AAg(=aiUc6Z5ApASE0nV;F@dElfgTVD;}n;jPW-r`qVN%pfFzKX%f^O zz&c!_t9$#k2MO02_LiDfw#SO zP7xrpW%k+>D{M_|!zpWdDwj?z__kltHWPu=6-#obCO@z)$9ETz$>3}|DQc1}NJvMRpyw12EF7}k5Vksn`}*sUs^?yn@*iFD0f4w1rrry4w932dk}BUcwa*vK7p8W^9lmp`ss2| zvy(IUg~MtrjSADX%}9W_SO=O|MUz#?Z>XC*A2UfSuOP#Ta<1~hil^Jv4TBmCDCq=h zuKvz2=;i)*xN791ziu8=N1UsK{|UZ74blkgr3a?|~?mn|cAXO2}yJBh}xAY^o}0AdBs? z^uC9H>kvu_YSBWx7n}QRB{DHvEz~Pf)Ud<$e+ap9(d0IjbP)6^rs$A5>R^MKuBL1! zfwAptcNz0FIm;p5c!pc?{f%pVlx=qGvMYEE-plh#%jGxe-P^x0IPCR)sWN|60Aele z?orLk%A#$SVB_25I`-HoW$^)QN1#OE9g|kH61)tL5YUK$@^q!5hKQqm3$|bl>Q5uM zv^GOP(?A0~V+=HHDw_X-;@iWe2AkjW$}x=gY*e~(3whL=n&RnB9*$%lK{35iVMH8D zmhYdjNkb6c~KZ^{pEVBOjXbU0XM> zGr_i5y?XX_(!9+tNLlq>M3A3eH=W1jPCPm=z^IYP5p)gdb!|(jOaL>Z15}g(72X+e z8rM!I3pE#*1tc0wQ%aD?m#>#p6)#fDS5vkp%8CGXim!#4>ZtMxv}}c^@Bo%KOdG_Q zeBOWlQ{4o{>N8#OR3s!*`-};|1tbImBn~1Z;C+tqj~Q4+1`TIa#LOv`i+v(j(_yJa zx+g+3_f76|+pK@9>+*Hz2i?`bv^JUaFpK~C3I67)|0LGMpPj3*n5;p3d)E^a+XFj; z7k0XO>W9DU9nZ40`CL45Z0_SKQ_bz+vljKsN7gInvO@i|Ce?krj%2%`)S52ERpjN65(onLiRBq^M(-m993g0d(e9WX_T$$Svgg)%+O>QmFRK_`dngB~i zgXc~-0^K?k{*W~2oHkzoBE3d4V$DzpNi2m68hkmG9u%vwxlZ&c!>3oa=aQ?eb$YXp zWnLmQhP)bzOzo_~ffUR}wk{yvk@%93hbusQryYud5w;@l@MbRlN+! z6uWjLeC+7>*m1`&)B>#g-ZW8@uqQM2>7=rH8xZ5?yvn8PeT?lt%7H8n64^e|7Cy#c zQPX#JNO9M)GcL#(A_O;r*Fg`>gGSk{r|RTkI@uyuK(r@(mh(|Ul#YP2O&W;0>WP(b zB1N7XfCUQlnHZ!(6N+7Ek{VR*hQ1#58C5e9`KM!&_AvqgQfD6=A30rAHN4V1r6Md{ zSL~Sd2ewqs_b>4EXqX)=imDiIkzGUd;WA=9pipO%x&wp{zcp%6rOGaUrSaYtirDK7 zEX;Jfm^r~I` zR(5q6vdJ7&%)Pl;+kVR9&gr$|h9eJ;dqu81Ub^Z)%e7;uZRN_O=x-I`g+*$6%Fv?) zQJ|%Q#qf);cC)#TrO~rd94?6uT$D*b5|T@7vyhU8S)3G9zqhIz-C+f!zU}#M%icV= z9)QzAA&~BbCORPn69D{-<()$yvK!6U#n!;XF760(IJu5Ki<4qfpJ6S53C!i-r90_^ z=r}r8q;E>53SzK=DJ6jIQxuT)p7Cn;;3x(g_r&SuSM`E3l+(NcTD{F4JP>0QEx`Bv zL*2io*NCH03X}`}p}8F}#epkxZ>;LRSIPA2mtU(p-&OK5rz+|6VZwS1Nn(`JMf1>K z+Uw8#^GKB8q=hvPu&=tV#Nb0=u96Hw_9l31!leEcGKR>|&aIpWG#Z9hkh_cia zgB!taoKvMw6-iY@eXMNExik$$?1b9aasdK}E+~MqD21&=DKT6gGDV9#b>BQcC(|w+ z5pve_;u4t)1|t4JeDL9VzRvN%6tNTPnUDpSaEo3#cSFr5Li4xMrjoJk$m#eTa_C4X z@+IND0V1el->0aU!k}36HEGzhCUneo%d#9&6(syUYw1=$N1NOG34P<~(57795!c~Y zFIDsZ3n0d1NTS}A8?uy_+TniMdpIo&C8FOy!Z)u*+ZB!Ns zq1+gBo!8e~{4_Dmc1c0wHT&U?$YM#Xs;t5sc61#)&q7aC;Ac0X`HrqqYHf1B4r0FV zV;0v3={i}h$!qt4_z>VH;s?`fd=l+l*^{iAZthy+saOHNwQ}lA!vUg(`0xX@1g_^s z?gbWx7)%R;aB&ZkcO( zT-(0N=WXWM{z!R3z&pQ*)292bjnCK}@=yIc88y&Nfwi7qS6o03s^7ienGxtGRuu@K zG&w`&+AD{6pqe384&5~(kIh#D3Og&}a!sRjs)IU^Yl^fo5|o}>N>wHe=$c?CP6%2x zy726!(uGavTKxN-ZClLWmZTBzR6JB(SSU|GY}yZ-PZ>Z>Vo4rlIaDC@;x*Lm6e_tU zIDq=9ew2U`4PM&b+%zaHs?!|}TP<4IgY#+(=t)U2{g(L^DWW+G$;el4Sz3~c1p1E7 z^DCphS8jVZSo8Lx%KvFK60Gz=<@Fyh@n84j;{(_ljn8vm=ia^eI{Rtv+xyQ?A3T3E zuly>mH>w}H*y%6Nx-h&cC*S@2QK9oXjSosMj#&#p=#|!7UF<9GvO7api4p2(>Z$+= zTab&k#>)^yK7mbCWYQP`J)%@uWa_AV2Zt#0YqVFv;-2ZJrE&OG{0(p<)zeYg$kzOV|{ExVj&taKw;^9%_t*kbTVLI%hEpoZSC7hLcz$H-nL-n*XO+VE`xgac~(RH5cUkriHG z{dwHS`Cgb_rc3?uh23W)f8LJ88b)MActxoAFA*SSP+R6KADc`(wR`PX_oKz7_Wb^n z!lNTiUZ>`J)Q>1hU-l+M(wyCf&~y17b;pUj_lWzgUj|ZO9F-9clXG+;icGOJ1_D8W zUnqi`DkD4DWnGUjB+;Xw1Pv}p^$aL@@IYBp_YwU!@vm!B!(IL&a@VR#9MEa{5y1Nr zIFmhumCbVym6}<8o1u1*T{+@G{;^{s2m?dGj(u1O)g}xE#ADXB##mR{AJ}lpA!bhsBLGdN*hF#B_SxD@W^(5dknYr!^3XNzIEY0M&4}uxAQ>eh8Iu8#wIXigWtrm+34IPf4I?4plFGQpkPKhB`3e#bvx6Ug~5M)J2(8|Q0Nk{%4&WC%Pp zfT9FvbeK>U9UfqYuq<&`t-Fng%y2m8AhUo)m#F^DE0lv$`Xv( zaugAE$9X!EIgnuLn_39Bu#V0=SwJdai)87iiNsD#3>;kgnc8gZ1BZ4cmvuw5zh)ae zYch&8RUg%digwz4MF!k8eQzXUoryu4JosbqyS>I;q)N!^ld0Fgy6qmX#l;QLdew&C z(W8~GYx%e~>fxPpgRk~hn3nhV@U40_Y5h2O_rIjRctV3(VkX_9RhVS=^?6CUbxsO) z=D*Z{9xz73ig`9_Y{)(a$fQ8l&m-r`X~5Ntq~TG-nZ;(|5i}>eDH^*JAJJVH(=Dl{FFoC!z;=Fu9Q5rGr524+ANhcwi^`EQDZV1~OEC8kG8~4koz>8{O-( zv#Bc>xJq%s_fN+SAYwg!dgS#gL&isqwJF{2Vl&wveN{BLq{#6Fei`&2{y)VP5 z((+F4jRkQ**a$*AAzqo~igW~IGRfM>xfF;?9ne5QL<4_|&wi;@lpS~~R#B;`NyMuR zU2sysL>ny2m5#oE(&^6T&S^;(5aJ~O4xoa#5Gv5qgcn*qTf&YIPzB0HmP;{I6tJk| z6=|bzMZq^DfK9DlsbTFd0$rp1!^+!n0rEfpld z_=ztYd!V4-ap2LN1!3x+wJ)Qn@tX?O-{d>z1lTL|GSte-X`$#`ZG$inQLhwFPZGT%8)#9aBu5>ICT8szw-LP4swF!V%X^2Gq)R1OnVudKfWtXb=(l z)h*9NJ1*-@p8m(G54g?Br*rPfnzHsk!hd(?z1@&xv+xSrRbXx;e(4TfCDp+VZRKw>{pm{II6?vAeXyAj_4Tem-^V{p_Q0t4T%DfrfkYpfBwaI@)^! z^|o8|DJ3MUXw<3zHF3v%9SfP5=St@BTu9frXsDmRT1jxP$|AWDHPS@ysCC@ycG<%n0RB*+z<+& z0euP>@fTRYkFF z^%rIz%0pGEjtEdTHdKs)BUNE~!Z^zU9Bl3~l8qxP)MZ+1UA8a=llFomK_=!cT8^B| zMFfVX=8ymL+p3|;C!qOi1duD{P3=(*t~iO~5?P+O2)p3RnjLl{=fJOm{X*O zK{CEWQq)J~(f71A*n1?LbC{I-8o|VZ!f@&-fqIhRc5r*3i>U+vrHWJxcLLNs*N?+J zi$G3iOu1r!65r_18hHl)v>hamqlgo&nv}rW-N+75(nts(ri)Tx0%1Tl!=ZqjIDn3U z049L-)Y*#Xu`y#1q|mBeSs5QBw1_j_=9B;sGL@8omXMP<#~l!>g52l^8XzoVa*53x z)}ehna1^YFmmAOZ&u#Xx_ABo4sj*BvMdsd=NDs`yvme5nT0p8q0FzSiJICN*Pzgd;|contTJa#v3oZn65XB1nln|gE=&UUyvg!H3Z5x6 zBVL;+&nlSCoF$+Fw`1n7t*VB`va<%oMkXN=KiKtI+Jf|~23|l%8357|Ok)*n=sGCc z00X3X3cB!)*`uuWZ9&a4MMat7h+}3x3(N%@1E!ksA~0kE5bHx>(FrQiYC<{K#?T3k zkWWfiQdx_Lq>nQXQ(?SgQSl@-fcs0V!0K_G0tnP4z=n)wOxjCsd`@sJgUa{l1}OvV z*ND(uidUBbcrCpctcetC{6aRQyil!B zw5zJ7a1xar`q2)&3ap&&N;4D}`#vX=MtNCkm8{0}BeTky3_o8!KHi*E0;g1|#)R5P zQ*okcnmEhYBU;fOP^JXLen$YXHI0~rv_J@h4`PGfVz(9p$S{T-ixxezhmxY2Kg?+e zJ;`+RGY2b~78}Wuap4$3whGir0=s$>$$B3M&WS58kVTv;mnYA<3N*Zu0Zk+anCKA> zLV3y}Mel!02nFqO35bl{!MLm401W08jS^dTB^HlPjby&E4fPooZ>oFU`wQH=#R6!8 z>j{&qG~J65&M}^#m|99j-p_`l;-~0hq)<-cC7h5N@)HTbT21COXQ%|Hz{4r%O&f%{ zH_0Uz?FUdv1V9|V3bC)0!&S1BVIk6mINx)S8&I%$OiatA42W<3QVU{JK~2s6!mQ}#U-Y~_Il`)O3aM(PXVO;E#doy}b={6R*qhR17l^&s z{PPOF&~u#-cVQ$!BKK95(NGGZb=h+0ET77`dH=r!9-MgN!0rFSzss7khsZVW9#i7c z7))?-ph|Wy01h0fUkKOeBw67iVQ=IoMPnvukf-e?ngfWjxw3#Qf+bCd_q&vsd~+{} z34n<~0d79_3o%6yvoH=cOI9EUc#)WEfPYqR=5>X4Hy>r+gfv4-5}{_3w;3|i0)1@O z&`lVDQIrwtO5sm{Dn5@4Gq=%?ZWS(S%+@@wjZ2G2%rj$St`#=^`Jx&^;4~^h9kUZX zK7sD`2PCF+Rl|qB%!@0(!=mYmy|18 zvf`gU`qmQRe1?Tudjc>IRQyK_X1N&L8dLH2dKswVn4wUMWF1m4MV^gCP*0FO%3w&D zQy`+LrU^3$!k?bE`0M zK@u0MsZ=~oJOC(!mT{o12@ndHw-m26s>Fj{_^{H@EYr5d06Y`rU>1K44rHBn#gi8y z7y+NNE*fk66la+3){uLbE|FDBdC5f*wfA<#;nVAnH@P6P1KTvF9_Dm&`pxMEgyv|& zJgdRH8waOG-sl&WiLj;)egPki!Y$6S9c^{|OtmCVAPkTwjLNgj-&@yFsf9os$^Ako z7W-Nj`)MalKM0CHJ{Fzs1HMfpB_eQmer9=TvgsWTA*%5zc!&rv;c~&wlM`eD&Z5*U zNl`9JGX-aegsgoj_EA*;Zo;0U*bYE2Yf(hm0349p!|GTb~aZQS4Yk-V}Y^&d`2&Hwc=IKV!}v}2nX|H{hzfM9{B7X-8$0A~f58C$U@Mt}ztzfO7E z^1TEc$88*IOpx1`sLXirZU7PlNfMW4DFMdr89jjRbe5U7-R9R{v}f3jfAzP60b`%5 zV2bOv2Rk-B^2GGIx_&)~8Mznp8dpQ{)#eaN93xuPhep~=Y&Z=blV$zc?0(7-C@h_R zlTfTMo`J1g=mwq+xxqQco2A++PYUmcrFRJPm-w0mo;k1aW(TZ){5WyO?Ty_gneTfTSX!;nVSbh5GZRlV+S{ zd$6%^4s&^+&=|)VqbYMv;JGXRmbDe?pY`YDbsdMb%g}T`rAn8Zf4mxwBE#=5VxFv?T*)Q|XU?%~CjwJzJ-cg~Zwf3Q%^$=GQNylr5zJ_`D zHU&6#2rGI6AOaN|6h+<@NHeK;=Zn4|*T)($tAL-gMW_@yLt~V9=2p59xdUYeQ{7HJyv%38OqSZe^_k3!?lQ2dFkf%dSehAV;!fqt3Ravb~m^r;! zLhpV_9he?fwJ{@EY)?X=NL)-Ns2VxO2N?pU$NsV$ zznsxz03@kuhDajxUQuJ*ThIX#FitpX=vLIjZs3Z* z_1*Ea9@jYGYDyeT&o`cxEd;U?7F!Dg7wBUGz^m)>i9_?~i^d1n&*Nuzllrv*WI2=C z7fE-%n;I^bfr*@#Q9es5_bk}%DiUU&@%-zcKTj$Fgftsb16Dms-UDj5a>lD(nizN787b=aG=rDljcaNxRfEEVgB#|OT;IndIk?R zpw!xz9HU0xCuZuIaM2&)_4$3etnoH7mc)kjpAWvdZXU(cO*`3vBD-=@In(X6ApD&( zMWM@7mJU4dRle(m|JC;7H>{2S#$LGos_nzvzaFNy+IEmgj-sC1xVl~3gBLQ-XwoI~ z=d1yPd)KA--558LZ#h#Wq&ffnnrEIiPKQpiBEq|KdWq{U6Nef4#EkZK5aF1V* zJ3=&PF!BQoGB25zH;w}>z$+(gT%h7X;#TZpOv)!o<-Mf8%uEX`hjLsHJwz6j!i^rC zZWD>$VvBIt3l@RiiZ~I$Q3UxqJw9x+y)M@0Q^|wK57G0CjK;dqAq40e`CGWi&*G&`3vds^;nymdi&yc!yKKH zF6JcG;t>pHqcsDKM2YRu?E*Cp(2}e$DR+n~*S0-raPl5CX@nwoJNiTvXy#S4*vbe%<8e=ZuF5F06Z_N{gOJ;!6SW!Fp0YJM~sLst)b z25NFL7Wyifmahkk-TMB5&+4#c{PlxMCN1NA|Fq{>v}R)H=aqQBxC^!=on;d;F~^fMa>ILWx6%j53s z@E2d|#n;DzG55b7OJ$+UrpI$*SgDQ_RGJWrmMZrFy`T~$+<{9y&kl$#7ek8Jj8D4v zy{t*Rc$3$un)~#{ZlAmM~n4)>pn1 zcE53Ua=7kdRk0WUD`sJ|jW;t4M=8j)lw16EODF96UM|<{+o*s^mDN{==t&(_mQ3F# zdIg2*%boe9ZNq8%-wWB73k6NJI@(M0E=d@IV zR_oKALfoEC_Lib3d#fHl6Mjwjl&7AIMB})Qw3L>X_+G-hWMfle^H#-20g6uvalT=# zw&s~ou;j1bl2;Btb-ry1Y`c=zW^qgP4E6J&d!FrG4nr$WDMqZ(-D)bD9F*e$_iMcWvf^?$v<&zt`Tq%`HyY+3s>!+^SefPz_%kgY9Bhte6hOBR>N0LU+1TNVY9WZ2Kk|#^60$9vxQEQ4*z@9 zl|MfuKZgzPioHUuBva3tBwnbW5&Guxmevp#3Fw5@PWxRAuDRngza_^lP@$ix@bO!Y z`?`PAHDZyD0RVw^E5GyPI^p}Cx6@Uxghf?v=IhD%il7Hx(MtQ=h5|!xT7Xy0(JeM3 z=|yE`%a!U`N>s?k9QcV|iP>H+LIsK3Y3m@;c$%Rfl~h1dkYWz%k?0u^H?iDfuWF?# zrbLgWNaC*xrDlshP*D~ZwDBjY789wG@(YX!wpFJ9dE_EZNa3a zi9v&MVS8_^zcmDE_)O{UVP?}0nNYHs8~jOK zH;P$@jO{DhKMU(qk^4a7gmlNd<68!xmp201l2F*aXsQq%ZeWwE7X&2#iV}MI?BQ{4 z$sOFB4m;~r;^lUdIxG?T{@_7t_NIY7TdZvvmY?6Jll(e_bNNv2yzKZ- z-uiQs<4=vKGTZb0VX!kCxeqTf5zzLU(KikB+D4SHqUyEcm)pou^r#>gckMRGbg?31 z(suzB-qxBNq>2%Lt@g@J6ymz|19lE6gUD01MC8LHd(aeKyjmh@mL&fd0T<|^o7|x| z3-VYs;WZw@PF$kXepT^}(wNVQHFnHKHz(Kh@$>e;!>KH!)uf+YXL(*uYaTU}PLXBkSHDlG9}Lp}&d6lLue2p$2%Bi(jj)z5$+raPC#Bo0BCSeJkl#GkHk z$yssG1%xq_&dAPCgfv%m6oi@alu~w#4Yd(1%*wkO3p?GmAXDd{sX|to-5fp1eitLl z7O-VYUN)v7y&}Gf)jv$yd@0kOoCHkqn)KS9C;jsH)K$sz>hiVni;FK0a?gz*6LhRH^#M#P@k}$ZK&3G}xlvkJ_@tCP1=I{P3W#mOVXZ5r5spjTm;% z@(7MLk`=nvz0?uR0;%#F=1{&M#UxHWI#~H#Qk{`RYhABXb%tg@S zex^EvJS{}-17;ZgCCuSfrf%2$5y#^L!J*32JDb}INbS)BxsT+Yw~=+PZ8+=FO4Z_;a@MH*{ag4mt0>#jVnMb4d{IILK`9)h|KH*4o5=MXMpJ(s*E)q2$1*8zNTT$>x zaRX$aGZ=Bx8cMkp{eCUSSo;`@xi*M{e4(gDVX<$$}q%FMhC#c-Yex>?m~Z(H=V6@h$u zXtJx**1-OQ;9hb*Ywe+yzDG+bXnc0WGB_4l|8MU0`UgeiN9s4ccthfkYx7E>V`q*Z z(PO%+n0^Wm=Mw2=xu>ruDQJ!$rMR^OScwAToBVI#9S=&wTwjiR@Y0B1J9JW%bL-~& zCyqM4LoVLSXMdt3(Y1F!#<}V6Njc+!cVr;Td8^W6?^wZek1p2q6$%0g0tdOBqap9! zKy$rSFF89X57cvm_LyQ~ihk;FP0Jo`cMSMYhAW}3&Z*#~@Ip!IF{QzHDNJH~l5wwf z%N4NW(WU&clE)aFlV@gPi6(bu$KD6FI(p?~chbZ{l!upl`>au-+5tPq z>@5U^5z0K=c2r&Id8HFbw@S`q`%x2+Thoio`9d*V=OQ1s)8gMUy9Py6I~PfNK$O(Wf-gSMbpV?D_h$D zxvwqxuqzP}Cuh(a%w=5-eB)zreJqZ5TIiEY@yx1q#HD`5 zlP{Mh=H{kGrj{2#tQB3!IS%dlK^)WOWif-M=5|D2GG1kPjx^C4?a1{Z(|rw|Em)TT zKlN!YjLm9qJ7RD^RyawTk*fk*l{Ug{6C5+jY|h=TC0uce-`_bdcaj-v)n<#=*AM+{ zI_!6X=cZz)zfVEtC(er)^cIu$i@M?jcD&I2W`6qpwPEkO{A~X|+4x6~eL8gTjNsa` zP*MJM;@gWRNQielM8cRhKuImBf~G#c;&Ok`6SLkhX~SuLODry4Nt`vpJ4He_mRInx z1<8HLSh|^&Mf53{Y@kAZMBFP_x=!&}qtxZ{7}!HBLY4 z@SfwlRO^U1`*Oqk@VPMszr2v$7R?=#;JxvWi|4X831_AsP#SDXlcuXY1=Kul)5m+G z92_syDSGj-cyIw3$|tmoD&8~&4NZO2%YB2i4o;7X2Ir;MWD@=NGd_gwZZ>^bIH0Mo zY`O%a-{O!m*HgKD&rwfpQ?m{heT34yInzzV($#K?z?m|33j^GFMsyV%|3X0gH0vC= zZ2U3q5wJBTJ$osSs<8u)Dp?TYmqHjMX3<;o{4yBkc2;B?Gmf)Xj4flc+XTnQ5+jq% zJvr7ibe$5<8W+nOWf<5HSvbU!$YkJDtWQj#0HDG>A+zbL!zy`iPSnk3eOW5T6ug{K5|ileT-op=(Mw+vf)?U0#t z!Ha8R<~LiM>+7D-MCGike*@2f^ciB_kv|Z)a-azJ-Tn)H*Q2}urTk^!9goY^L1{aBX^Xo) zd)z98gb_dk9%VYeFtyB&;>LqQe{@>tFnbqoa=6+ye5Q{|93PD9VjJmYacY|yk z#%Jg*Va|I%ex8LW#!kyZbmN_}&j$7_ymKANSb5

b0Z4_X+z@BOF%F)h^~rwNY$8 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 literal 0 HcmV?d00001 diff --git a/sound/SAGI.ogg.import b/sound/SAGI.ogg.import new file mode 100644 index 0000000..ca763d5 --- /dev/null +++ b/sound/SAGI.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/SAGI.ogg-4969a6c0a904337e2e5d2c3b0ddbdd0b.oggstr" + +[deps] + +source_file="res://sound/SAGI.ogg" +dest_files=[ "res://.import/SAGI.ogg-4969a6c0a904337e2e5d2c3b0ddbdd0b.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/src/Actors/JumpDust.tscn b/src/Actors/JumpDust.tscn new file mode 100644 index 0000000..83a7cee --- /dev/null +++ b/src/Actors/JumpDust.tscn @@ -0,0 +1,44 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://assets/Player/herochar_before_jump_dust_anim_strip_4.png" type="Texture" id=1] + +[sub_resource type="Animation" id=1] +resource_name = "land" +length = 0.4 +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3 ), +"transitions": PoolRealArray( 1, 1, 1, 1 ), +"update": 1, +"values": [ 0, 1, 2, 3 ] +} +tracks/1/type = "method" +tracks/1/path = NodePath(".") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0.4 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "queue_free" +} ] +} + +[node name="JumpDust" type="Node2D"] + +[node name="Sprite" type="Sprite" parent="."] +position = Vector2( 0, -8 ) +texture = ExtResource( 1 ) +hframes = 4 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "land" +anims/land = SubResource( 1 ) diff --git a/src/Actors/LandingDust.tscn b/src/Actors/LandingDust.tscn new file mode 100644 index 0000000..59d065c --- /dev/null +++ b/src/Actors/LandingDust.tscn @@ -0,0 +1,44 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://assets/Player/herochar_after_jump_dust_anim_strip_4.png" type="Texture" id=1] + +[sub_resource type="Animation" id=1] +resource_name = "land" +length = 0.4 +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3 ), +"transitions": PoolRealArray( 1, 1, 1, 1 ), +"update": 1, +"values": [ 0, 1, 2, 3 ] +} +tracks/1/type = "method" +tracks/1/path = NodePath(".") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0.4 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "queue_free" +} ] +} + +[node name="LandingDust" type="Node2D"] + +[node name="Sprite" type="Sprite" parent="."] +position = Vector2( 0, -8 ) +texture = ExtResource( 1 ) +hframes = 4 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "land" +anims/land = SubResource( 1 ) diff --git a/src/Actors/Player.gd b/src/Actors/Player.gd new file mode 100644 index 0000000..2b3ff31 --- /dev/null +++ b/src/Actors/Player.gd @@ -0,0 +1,88 @@ +extends KinematicBody2D +class_name Player + +export var speed: Vector2 = Vector2(150.0, 195.0) +export var gravity: = 410.0 +export var max_gravity:= 450.0 +export var respawn_position:=Vector2.ZERO + + +signal landed +signal jumping +signal died + +var _velocity: Vector2 = Vector2.ZERO +var _landing_position:Vector2 = Vector2.ZERO +var _in_air = false; +var _alive := false; +func _ready() -> void: + $AnimationPlayer.play("fade_in") + respawn_position = position + +func _physics_process(delta: float) -> void: + if _alive: + var is_jump_canceled: = Input.is_action_just_released("jump") and _velocity.y < 0.0 + var direction: = get_direction() + _velocity = calculate_move_velocity(_velocity, direction, speed, is_jump_canceled, delta) + _velocity = move_and_slide(_velocity, Vector2.UP) + update_sprite(direction) + if is_on_floor() and _in_air: + _in_air = false + emit_signal("landed", position) + +#func get_class(): return "Player" + +func get_direction() -> Vector2: + return Vector2( + Input.get_action_strength("direction_right") - Input.get_action_strength("direction_left"), + -1.0 if Input.is_action_just_pressed("jump") and is_on_floor() else 1.0 + ) + +func calculate_move_velocity(linear_velosity:Vector2, direction:Vector2, speed:Vector2, is_jump_canceled:bool, delta:float)->Vector2: + var output: = linear_velosity + output.x = speed.x * direction.x + output.y += gravity * delta + if direction.y == -1.0: + _in_air = true + output.y = speed.y * direction.y + emit_signal("jumping", position) + + + if is_jump_canceled: + output.y = 0 + if output.y < max_gravity*-1: + output.y = max_gravity + if output.y > 0 and !is_on_floor(): + _in_air = true; + return output; + +func _respawn(): + position = respawn_position + _velocity = Vector2.ZERO + $AnimationPlayer.play("fade_in") + +func _revive(): + _alive = true + +func update_sprite(direction:Vector2)->void: + var air_animation = "jump" if _velocity.y <= 0 else "fall" + if direction.x > 0: + $AnimationPlayer.play("run" if is_on_floor() else air_animation) + $Sprite.flip_h = false + elif direction.x < 0: + $AnimationPlayer.play("run" if is_on_floor() else air_animation) + $Sprite.flip_h = true + else: + $AnimationPlayer.play("idle") + if !is_on_floor(): + $AnimationPlayer.play(air_animation) + +func _on_die_animation_done(): + emit_signal("died") + _respawn() + +func die(): + _alive = false + $AnimationPlayer.play("die") + + diff --git a/src/Actors/Player.tscn b/src/Actors/Player.tscn new file mode 100644 index 0000000..bf72474 --- /dev/null +++ b/src/Actors/Player.tscn @@ -0,0 +1,284 @@ +[gd_scene load_steps=12 format=2] + +[ext_resource path="res://src/Actors/Player.gd" type="Script" id=2] +[ext_resource path="res://assets/Items/torch_ligt_texture.png" type="Texture" id=7] +[ext_resource path="res://assets/Player/herochar_spritesheet.png" type="Texture" id=8] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 5, 7 ) + +[sub_resource type="Animation" id=2] +resource_name = "die" +length = 0.9 +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 0, 1, 2, 3, 4, 5, 6, 7 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("ScreenOverlay/CanvasModulate:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.7, 0.9 ), +"transitions": PoolRealArray( 1, 1, 2.54912 ), +"update": 0, +"values": [ Color( 0, 0, 0, 0 ), Color( 0, 0, 0, 0 ), Color( 0, 0, 0, 1 ) ] +} +tracks/2/type = "method" +tracks/2/path = NodePath(".") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0.9 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "_on_die_animation_done" +} ] +} + +[sub_resource type="Animation" id=3] +resource_name = "fade_in" +length = 0.2 +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ 32 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("ScreenOverlay/CanvasModulate:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.2 ), +"transitions": PoolRealArray( 1, 0.378929 ), +"update": 0, +"values": [ Color( 0, 0, 0, 1 ), Color( 0, 0, 0, 0 ) ] +} +tracks/2/type = "method" +tracks/2/path = NodePath(".") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0.2 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "_revive" +} ] +} + +[sub_resource type="Animation" id=4] +resource_name = "fall" +length = 0.2 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 1, +"values": [ 40, 41, 42 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("ScreenOverlay/CanvasModulate:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Color( 0, 0, 0, 0 ) ] +} + +[sub_resource type="Animation" id=5] +resource_name = "idle" +length = 0.3 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3 ), +"transitions": PoolRealArray( 1, 1, 1, 1 ), +"update": 1, +"values": [ 32, 33, 34, 35 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("ScreenOverlay/CanvasModulate:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Color( 0, 0, 0, 0 ) ] +} + +[sub_resource type="Animation" id=6] +resource_name = "jump" +length = 0.2 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 1, +"values": [ 48, 49, 50 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("ScreenOverlay/CanvasModulate:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Color( 0, 0, 0, 0 ) ] +} + +[sub_resource type="Animation" id=7] +resource_name = "pre_jump" +length = 0.1 +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ 72, 73 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("ScreenOverlay/CanvasModulate:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Color( 0, 0, 0, 0 ) ] +} + +[sub_resource type="Animation" id=8] +resource_name = "run" +length = 0.5 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:frame") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 8, 9, 10, 11, 12, 13 ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("ScreenOverlay/CanvasModulate:color") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Color( 0, 0, 0, 0 ) ] +} + +[node name="Player" type="KinematicBody2D"] +collision_mask = 30 +script = ExtResource( 2 ) + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2( 0, -7 ) +shape = SubResource( 1 ) + +[node name="Light2D" type="Light2D" parent="."] +position = Vector2( 1.90735e-06, -7 ) +scale = Vector2( 3.83333, 3.83333 ) +texture = ExtResource( 7 ) +texture_scale = 3.07 +color = Color( 0.262745, 0.890196, 0.937255, 1 ) +energy = 0.61 +range_height = -2048.0 +range_item_cull_mask = 15 +shadow_enabled = true +shadow_item_cull_mask = 15 + +[node name="Sprite" type="Sprite" parent="."] +self_modulate = Color( 0.482353, 0.694118, 0.819608, 1 ) +position = Vector2( 0, -8 ) +texture = ExtResource( 8 ) +vframes = 13 +hframes = 8 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "idle" +anims/die = SubResource( 2 ) +anims/fade_in = SubResource( 3 ) +anims/fall = SubResource( 4 ) +anims/idle = SubResource( 5 ) +anims/jump = SubResource( 6 ) +anims/pre_jump = SubResource( 7 ) +anims/run = SubResource( 8 ) + +[node name="ScreenOverlay" type="CanvasLayer" parent="."] +layer = 128 + +[node name="CanvasModulate" type="ColorRect" parent="ScreenOverlay"] +anchor_right = 1.0 +anchor_bottom = 1.0 +color = Color( 0, 0, 0, 0 ) +__meta__ = { +"_edit_use_anchors_": false +} diff --git a/src/HUD/HUD.gd b/src/HUD/HUD.gd new file mode 100644 index 0000000..e886bad --- /dev/null +++ b/src/HUD/HUD.gd @@ -0,0 +1,10 @@ +extends CanvasLayer +class_name HUD + +export var coins_amount:int = 0 +onready var Lable = get_node("CoinsContainer/Label") + + +func on_coin_collected(amount:int): + coins_amount += amount + Lable.text = str(coins_amount) diff --git a/src/HUD/HUD.tscn b/src/HUD/HUD.tscn new file mode 100644 index 0000000..3061011 --- /dev/null +++ b/src/HUD/HUD.tscn @@ -0,0 +1,29 @@ +[gd_scene load_steps=4 format=2] + +[ext_resource path="res://src/HUD/HUD.gd" type="Script" id=1] +[ext_resource path="res://assets/Theme/Theme.tres" type="Theme" id=3] +[ext_resource path="res://assets/HUD/coins_hud.png" type="Texture" id=4] + +[node name="HUD" type="CanvasLayer"] +script = ExtResource( 1 ) + +[node name="CoinsContainer" type="HBoxContainer" parent="."] +margin_left = 18.0 +margin_top = 13.0 +margin_right = 87.0 +margin_bottom = 22.0 +__meta__ = { +"_edit_use_anchors_": false +} + +[node name="TextureRect" type="TextureRect" parent="CoinsContainer"] +margin_right = 9.0 +margin_bottom = 9.0 +texture = ExtResource( 4 ) + +[node name="Label" type="Label" parent="CoinsContainer"] +margin_left = 13.0 +margin_right = 19.0 +margin_bottom = 9.0 +theme = ExtResource( 3 ) +text = "0" diff --git a/src/Hazards/Spike.gd b/src/Hazards/Spike.gd new file mode 100644 index 0000000..36f2479 --- /dev/null +++ b/src/Hazards/Spike.gd @@ -0,0 +1,10 @@ +extends Node2D +class_name Spike + +signal make_damage + + +func _on_DangerZone_body_entered(body: Node) -> void: + if body.name == "Player": + var player:Player = body + player.die() diff --git a/src/Hazards/Spike.tscn b/src/Hazards/Spike.tscn new file mode 100644 index 0000000..fcf7d83 --- /dev/null +++ b/src/Hazards/Spike.tscn @@ -0,0 +1,33 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://assets/Tiles/spikes_trap.png" type="Texture" id=1] +[ext_resource path="res://src/Hazards/Spike.gd" type="Script" id=2] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 8, 6 ) + +[sub_resource type="RectangleShape2D" id=2] +extents = Vector2( 8, 2 ) + +[node name="Spike" type="Node2D"] +script = ExtResource( 2 ) + +[node name="Sprite" type="Sprite" parent="."] +position = Vector2( 0, -8 ) +texture = ExtResource( 1 ) +flip_v = true + +[node name="CollisionBody" type="StaticBody2D" parent="."] +collision_layer = 4 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="CollisionBody"] +position = Vector2( 0, -6 ) +shape = SubResource( 1 ) + +[node name="DangerZone" type="Area2D" parent="."] + +[node name="CollisionShape2D" type="CollisionShape2D" parent="DangerZone"] +position = Vector2( 0, -14 ) +shape = SubResource( 2 ) +one_way_collision = true +[connection signal="body_entered" from="DangerZone" to="." method="_on_DangerZone_body_entered"] diff --git a/src/Intro/Intro.gd b/src/Intro/Intro.gd new file mode 100644 index 0000000..0b60203 --- /dev/null +++ b/src/Intro/Intro.gd @@ -0,0 +1,12 @@ +extends Node2D + + +export var next_scene:PackedScene + +func _ready() -> void: + $AudioStreamPlayer.seek(1.5) + +func load_next_scene(): +# var next_scene = load("res://src/Levels/LevelTemplate/LevelTemplate.tscn") + get_tree().change_scene_to(next_scene) + queue_free() diff --git a/src/Intro/Intro.tscn b/src/Intro/Intro.tscn new file mode 100644 index 0000000..705f9a1 --- /dev/null +++ b/src/Intro/Intro.tscn @@ -0,0 +1,74 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://assets/SplashScreen/BLANK.png" type="Texture" id=1] +[ext_resource path="res://src/Intro/Intro.gd" type="Script" id=2] +[ext_resource path="res://assets/SplashScreen/SAGI.png" type="Texture" id=3] +[ext_resource path="res://sound/SAGI.ogg" type="AudioStream" id=4] +[ext_resource path="res://src/Levels/LevelTemplate/LevelTemplate.tscn" type="PackedScene" id=5] + +[sub_resource type="Animation" id=1] +resource_name = "intro" +length = 2.0 +tracks/0/type = "value" +tracks/0/path = NodePath("SAGI:self_modulate") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.4, 1.6, 1.8 ), +"transitions": PoolRealArray( 1, 1, 1, 1 ), +"update": 0, +"values": [ Color( 1, 1, 1, 0 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 0 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("SAGI/Light2D:texture_scale") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.001, 0.4, 1.6, 1.8, 2 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ), +"update": 0, +"values": [ 2.0, 1.4, 1.0, 1.0, 3.0, 1.99996 ] +} +tracks/2/type = "method" +tracks/2/path = NodePath(".") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 2 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "load_next_scene" +} ] +} + +[node name="Intro" type="Node2D"] +script = ExtResource( 2 ) +next_scene = ExtResource( 5 ) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "intro" +anims/intro = SubResource( 1 ) + +[node name="BLANK" type="Sprite" parent="."] +texture = ExtResource( 1 ) +centered = false + +[node name="SAGI" type="Sprite" parent="."] +position = Vector2( 2, 0 ) +texture = ExtResource( 3 ) +centered = false + +[node name="Light2D" type="Light2D" parent="SAGI"] +position = Vector2( 239, 136 ) +texture = ExtResource( 3 ) + +[node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] +stream = ExtResource( 4 ) +autoplay = true diff --git a/src/Items/CheckPoint.gd b/src/Items/CheckPoint.gd new file mode 100644 index 0000000..2c5d0d2 --- /dev/null +++ b/src/Items/CheckPoint.gd @@ -0,0 +1,21 @@ +extends Node2D + +class_name CheckPoint + +signal activated + +export var activated:=false + +func deactivate() -> void: + activated = false + $AnimationPlayer.play("idle") + +func activate() -> void: + activated = true + $AnimationPlayer.play("activated") + emit_signal("activated", self) + + +func _on_Area2D_body_entered(body: Node) -> void: + if body.name == "Player": + activate() diff --git a/src/Items/CheckPoint.tscn b/src/Items/CheckPoint.tscn new file mode 100644 index 0000000..7904b43 --- /dev/null +++ b/src/Items/CheckPoint.tscn @@ -0,0 +1,133 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://assets/Items/save_point_anim_strip_9.png" type="Texture" id=1] +[ext_resource path="res://assets/Items/torch_ligt_texture.png" type="Texture" id=2] +[ext_resource path="res://src/Items/CheckPoint.gd" type="Script" id=3] + +[sub_resource type="RectangleShape2D" id=1] +extents = Vector2( 10, 11 ) + +[sub_resource type="Animation" id=2] +resource_name = "activated" +length = 0.7 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("Light2D:enabled") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ true ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Light2D:position") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ), +"update": 0, +"values": [ Vector2( 0, -16 ), Vector2( 0, -17 ), Vector2( 0, -17 ), Vector2( 0, -16 ), Vector2( 0, -16 ), Vector2( 0, -14 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Sprite:frame") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 1, 2, 3, 4, 5, 6, 7, 8 ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("Light2D:scale") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0, 0.3, 0.5, 0.6 ), +"transitions": PoolRealArray( 1, 1, 1, 1 ), +"update": 0, +"values": [ Vector2( 1, 1 ), Vector2( 1.63405, 1.63405 ), Vector2( 2.21172, 2.21172 ), Vector2( 2.11387, 2.11387 ) ] +} + +[sub_resource type="Animation" id=3] +resource_name = "idle" +length = 0.7 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("Light2D:enabled") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ false ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Light2D:position") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, -15 ) ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Sprite:frame") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 1, 2, 3, 4, 5, 6, 7, 8 ] +} + +[node name="CheckPoint" type="Node2D"] +script = ExtResource( 3 ) + +[node name="Area2D" type="Area2D" parent="."] +collision_layer = 16 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"] +position = Vector2( 0, -11 ) +shape = SubResource( 1 ) + +[node name="Sprite" type="Sprite" parent="."] +position = Vector2( 0, -10 ) +texture = ExtResource( 1 ) +hframes = 9 +frame = 1 + +[node name="Light2D" type="Light2D" parent="."] +position = Vector2( 0, -16 ) +texture = ExtResource( 2 ) +texture_scale = 2.38 +color = Color( 0, 0.905882, 1, 1 ) +energy = 0.95 +shadow_enabled = true +shadow_item_cull_mask = -2147483639 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "idle" +anims/activated = SubResource( 2 ) +anims/idle = SubResource( 3 ) +[connection signal="body_entered" from="Area2D" to="." method="_on_Area2D_body_entered"] diff --git a/src/Items/Coin.gd b/src/Items/Coin.gd new file mode 100644 index 0000000..9ab5c2d --- /dev/null +++ b/src/Items/Coin.gd @@ -0,0 +1,14 @@ +extends Area2D +class_name Coin + +export var value = 100; +signal collected + + + +func _on_body_entered(body: Node) -> void: + if body.name == "Player": + $Label.text = str(value) + emit_signal("collected", value) + $AnimationPlayer.play("collected") + pass # Replace with function body. diff --git a/src/Items/Coin.tscn b/src/Items/Coin.tscn new file mode 100644 index 0000000..9b3187b --- /dev/null +++ b/src/Items/Coin.tscn @@ -0,0 +1,221 @@ +[gd_scene load_steps=7 format=2] + +[ext_resource path="res://assets/Items/coin_animation_6_2.png" type="Texture" id=1] +[ext_resource path="res://src/Items/Coin.gd" type="Script" id=2] +[ext_resource path="res://assets/Theme/Theme.tres" type="Theme" id=3] + +[sub_resource type="CircleShape2D" id=1] +radius = 4.0 + +[sub_resource type="Animation" id=2] +resource_name = "collected" +length = 0.7 +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.2 ), +"transitions": PoolRealArray( 2.82843, 1.93187 ), +"update": 0, +"values": [ Vector2( 0, -4 ), Vector2( 0, -8 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("CollisionShape2D:disabled") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ true ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("Sprite:frame") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 6, 7, 8, 9, 10, 11 ] +} +tracks/3/type = "method" +tracks/3/path = NodePath(".") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0.7 ), +"transitions": PoolRealArray( 1 ), +"values": [ { +"args": [ ], +"method": "queue_free" +} ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("Label:visible") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0, 0.3 ), +"transitions": PoolRealArray( 1, 1 ), +"update": 1, +"values": [ false, true ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("Label:self_modulate") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0, 0.3, 0.7 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 0 ) ] +} +tracks/6/type = "value" +tracks/6/path = NodePath("Label:rect_scale") +tracks/6/interp = 1 +tracks/6/loop_wrap = true +tracks/6/imported = false +tracks/6/enabled = true +tracks/6/keys = { +"times": PoolRealArray( 0, 0.3, 0.7 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ Vector2( 0.5, 0.5 ), Vector2( 0.5, 0.5 ), Vector2( 1, 1 ) ] +} +tracks/7/type = "value" +tracks/7/path = NodePath("Label:rect_position") +tracks/7/interp = 1 +tracks/7/loop_wrap = true +tracks/7/imported = false +tracks/7/enabled = true +tracks/7/keys = { +"times": PoolRealArray( 0, 0.3, 0.7 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ Vector2( -4, -10 ), Vector2( -4, -10 ), Vector2( -8, -16 ) ] +} +tracks/8/type = "value" +tracks/8/path = NodePath("Sprite:self_modulate") +tracks/8/interp = 1 +tracks/8/loop_wrap = true +tracks/8/imported = false +tracks/8/enabled = true +tracks/8/keys = { +"times": PoolRealArray( 0, 0.5, 0.6 ), +"transitions": PoolRealArray( 1, 1, 1 ), +"update": 0, +"values": [ Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 1, 1, 0 ) ] +} + +[sub_resource type="Animation" id=3] +length = 0.52 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("Sprite:position") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Vector2( 0, -4 ) ] +} +tracks/1/type = "value" +tracks/1/path = NodePath("Sprite:frame") +tracks/1/interp = 1 +tracks/1/loop_wrap = true +tracks/1/imported = false +tracks/1/enabled = true +tracks/1/keys = { +"times": PoolRealArray( 0, 0.1, 0.2, 0.3, 0.4, 0.5 ), +"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1 ), +"update": 1, +"values": [ 0, 1, 2, 3, 4, 5 ] +} +tracks/2/type = "value" +tracks/2/path = NodePath("CollisionShape2D:disabled") +tracks/2/interp = 1 +tracks/2/loop_wrap = true +tracks/2/imported = false +tracks/2/enabled = true +tracks/2/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ false ] +} +tracks/3/type = "value" +tracks/3/path = NodePath("Label:visible") +tracks/3/interp = 1 +tracks/3/loop_wrap = true +tracks/3/imported = false +tracks/3/enabled = true +tracks/3/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ false ] +} +tracks/4/type = "value" +tracks/4/path = NodePath("Sprite:self_modulate") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 0, +"values": [ Color( 1, 1, 1, 1 ) ] +} + +[node name="Coin" type="Area2D"] +collision_layer = 16 +script = ExtResource( 2 ) + +[node name="Sprite" type="Sprite" parent="."] +position = Vector2( 0, -4 ) +texture = ExtResource( 1 ) +vframes = 2 +hframes = 6 + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2( 0, -4 ) +shape = SubResource( 1 ) + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "idle" +anims/collected = SubResource( 2 ) +anims/idle = SubResource( 3 ) + +[node name="Label" type="Label" parent="."] +visible = false +margin_left = -4.0 +margin_top = -10.0 +margin_right = 13.0 +margin_bottom = -1.0 +rect_scale = Vector2( 0.5, 0.5 ) +size_flags_horizontal = 15 +size_flags_vertical = 15 +theme = ExtResource( 3 ) +text = "100" +__meta__ = { +"_edit_use_anchors_": false +} +[connection signal="body_entered" from="." to="." method="_on_body_entered"] diff --git a/src/Items/Torch.tscn b/src/Items/Torch.tscn new file mode 100644 index 0000000..b492d1e --- /dev/null +++ b/src/Items/Torch.tscn @@ -0,0 +1,98 @@ +[gd_scene load_steps=17 format=2] + +[ext_resource path="res://assets/Items/tiki_torch_props_strip_12.png" type="Texture" id=1] +[ext_resource path="res://assets/Items/torch_ligt_texture.png" type="Texture" id=2] + +[sub_resource type="AtlasTexture" id=1] +atlas = ExtResource( 1 ) +region = Rect2( 0, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=2] +atlas = ExtResource( 1 ) +region = Rect2( 8, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=3] +atlas = ExtResource( 1 ) +region = Rect2( 16, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=4] +atlas = ExtResource( 1 ) +region = Rect2( 24, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=5] +atlas = ExtResource( 1 ) +region = Rect2( 32, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=6] +atlas = ExtResource( 1 ) +region = Rect2( 40, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=7] +atlas = ExtResource( 1 ) +region = Rect2( 48, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=8] +atlas = ExtResource( 1 ) +region = Rect2( 56, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=9] +atlas = ExtResource( 1 ) +region = Rect2( 64, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=10] +atlas = ExtResource( 1 ) +region = Rect2( 72, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=11] +atlas = ExtResource( 1 ) +region = Rect2( 80, 0, 8, 24 ) + +[sub_resource type="AtlasTexture" id=12] +atlas = ExtResource( 1 ) +region = Rect2( 88, 0, 8, 24 ) + +[sub_resource type="SpriteFrames" id=13] +animations = [ { +"frames": [ SubResource( 1 ), SubResource( 2 ), SubResource( 3 ), SubResource( 4 ), SubResource( 5 ), SubResource( 6 ), SubResource( 7 ), SubResource( 8 ), SubResource( 9 ), SubResource( 10 ), SubResource( 11 ), SubResource( 12 ) ], +"loop": true, +"name": "default", +"speed": 12.0 +} ] + +[sub_resource type="Animation" id=14] +resource_name = "halo" +length = 0.6 +loop = true +tracks/0/type = "value" +tracks/0/path = NodePath("AnimatedSprite/Light2D:texture_scale") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/keys = { +"times": PoolRealArray( 0, 0.2, 0.3 ), +"transitions": PoolRealArray( 0.707107, 1, 1.10957 ), +"update": 0, +"values": [ 5.57, 5.0, 5.2 ] +} + +[node name="Torch" type="Node2D"] + +[node name="AnimatedSprite" type="AnimatedSprite" parent="."] +position = Vector2( 0, -12 ) +frames = SubResource( 13 ) +frame = 10 +playing = true + +[node name="Light2D" type="Light2D" parent="AnimatedSprite"] +position = Vector2( 0, -5 ) +texture = ExtResource( 2 ) +texture_scale = 5.285 +color = Color( 0.945098, 0.419608, 0.160784, 1 ) +range_item_cull_mask = 9 +shadow_enabled = true +shadow_item_cull_mask = 9 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +autoplay = "halo" +anims/halo = SubResource( 14 ) diff --git a/src/Levels/LevelTemplate/Camera2D.gd b/src/Levels/LevelTemplate/Camera2D.gd new file mode 100644 index 0000000..e601794 --- /dev/null +++ b/src/Levels/LevelTemplate/Camera2D.gd @@ -0,0 +1,15 @@ +extends Camera2D + +var _grid_position := Vector2.ZERO + +func update_grid_position(new_position): + _grid_position = new_position + pass + + +func _physics_process(delta: float) -> void: + if position != _grid_position: + position = Vector2( + lerp(position.x, _grid_position.x, .1), + lerp(position.y, _grid_position.y, .1) + ) diff --git a/src/Levels/LevelTemplate/LevelScreenTemplate.tscn b/src/Levels/LevelTemplate/LevelScreenTemplate.tscn new file mode 100644 index 0000000..bc221f5 --- /dev/null +++ b/src/Levels/LevelTemplate/LevelScreenTemplate.tscn @@ -0,0 +1,400 @@ +[gd_scene load_steps=47 format=2] + +[ext_resource path="res://assets/Tiles/tileset.png" type="Texture" id=1] +[ext_resource path="res://assets/Tiles/root_props.png" type="Texture" id=2] +[ext_resource path="res://assets/Tiles/bigflowers_props.png" type="Texture" id=3] +[ext_resource path="res://assets/Tiles/drygrass_props.png" type="Texture" id=4] +[ext_resource path="res://assets/Tiles/grass_props.png" type="Texture" id=5] +[ext_resource path="res://assets/Tiles/flowers_props.png" type="Texture" id=6] +[ext_resource path="res://assets/Tiles/SolidsTileMap.tscn" type="PackedScene" id=7] +[ext_resource path="res://assets/Tiles/SemiSolidsTileMap.tscn" type="PackedScene" id=8] +[ext_resource path="res://src/Hazards/Spike.tscn" type="PackedScene" id=9] + +[sub_resource type="TileSet" id=1] +0/name = "tileset.png 0" +0/texture = ExtResource( 1 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 96, 0, 96, 48 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 0 +0/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1, Vector2( 3, 0 ), 69, Vector2( 3, 1 ), 65, Vector2( 3, 2 ), 321, Vector2( 4, 0 ), 5, Vector2( 4, 2 ), 320, Vector2( 5, 0 ), 261, Vector2( 5, 1 ), 260, Vector2( 5, 2 ), 324 ] +0/autotile/icon_coordinate = Vector2( 0, 0 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape_one_way = false +0/shape_one_way_margin = 0.0 +0/shapes = [ ] +0/z_index = 0 +1/name = "tileset.png 1" +1/texture = ExtResource( 1 ) +1/tex_offset = Vector2( 0, 0 ) +1/modulate = Color( 1, 1, 1, 1 ) +1/region = Rect2( 0, 48, 48, 48 ) +1/tile_mode = 1 +1/autotile/bitmask_mode = 0 +1/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1 ] +1/autotile/icon_coordinate = Vector2( 0, 0 ) +1/autotile/tile_size = Vector2( 16, 16 ) +1/autotile/spacing = 0 +1/autotile/occluder_map = [ ] +1/autotile/navpoly_map = [ ] +1/autotile/priority_map = [ ] +1/autotile/z_index_map = [ ] +1/occluder_offset = Vector2( 0, 0 ) +1/navigation_offset = Vector2( 0, 0 ) +1/shape_offset = Vector2( 0, 0 ) +1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +1/shape_one_way = false +1/shape_one_way_margin = 0.0 +1/shapes = [ ] +1/z_index = 0 + +[sub_resource type="OccluderPolygon2D" id=2] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=3] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=4] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=5] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=6] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=7] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=8] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=9] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=10] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=11] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=12] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=13] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=14] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=15] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=16] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=17] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=18] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="ConvexPolygonShape2D" id=19] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=20] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=21] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=22] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=23] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=24] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=25] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=26] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=27] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=28] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=29] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=30] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=31] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=32] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=33] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=34] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=35] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="TileSet" id=36] +0/name = "tileset.png 0" +0/texture = ExtResource( 1 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 96, 48 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 0 +0/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1, Vector2( 3, 0 ), 69, Vector2( 3, 1 ), 65, Vector2( 3, 2 ), 321, Vector2( 4, 0 ), 5, Vector2( 4, 2 ), 320, Vector2( 5, 0 ), 261, Vector2( 5, 1 ), 260, Vector2( 5, 2 ), 324 ] +0/autotile/icon_coordinate = Vector2( 1, 0 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ Vector2( 0, 0 ), SubResource( 2 ), Vector2( 0, 1 ), SubResource( 3 ), Vector2( 0, 2 ), SubResource( 4 ), Vector2( 1, 0 ), SubResource( 5 ), Vector2( 1, 1 ), SubResource( 6 ), Vector2( 1, 2 ), SubResource( 7 ), Vector2( 2, 0 ), SubResource( 8 ), Vector2( 2, 1 ), SubResource( 9 ), Vector2( 2, 2 ), SubResource( 10 ), Vector2( 3, 0 ), SubResource( 11 ), Vector2( 3, 1 ), SubResource( 12 ), Vector2( 3, 2 ), SubResource( 13 ), Vector2( 4, 0 ), SubResource( 14 ), Vector2( 4, 2 ), SubResource( 15 ), Vector2( 5, 0 ), SubResource( 16 ), Vector2( 5, 1 ), SubResource( 17 ), Vector2( 5, 2 ), SubResource( 18 ) ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape = SubResource( 19 ) +0/shape_one_way = false +0/shape_one_way_margin = 1.0 +0/shapes = [ { +"autotile_coord": Vector2( 1, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 19 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 20 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 21 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 22 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 23 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 24 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 25 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 26 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 27 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 28 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 29 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 30 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 4, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 31 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 4, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 32 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 33 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 34 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 35 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +} ] +0/z_index = 0 + +[sub_resource type="TileSet" id=37] +0/name = "root_props.png 0" +0/texture = ExtResource( 2 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 16, 8 ) +0/tile_mode = 0 +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape_one_way = false +0/shape_one_way_margin = 0.0 +0/shapes = [ ] +0/z_index = 0 +1/name = "grass_props.png 1" +1/texture = ExtResource( 5 ) +1/tex_offset = Vector2( 0, 0 ) +1/modulate = Color( 1, 1, 1, 1 ) +1/region = Rect2( 0, 0, 16, 8 ) +1/tile_mode = 0 +1/occluder_offset = Vector2( 0, 0 ) +1/navigation_offset = Vector2( 0, 0 ) +1/shape_offset = Vector2( 0, 0 ) +1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +1/shape_one_way = false +1/shape_one_way_margin = 0.0 +1/shapes = [ ] +1/z_index = 0 +2/name = "flowers_props.png 2" +2/texture = ExtResource( 6 ) +2/tex_offset = Vector2( 0, 0 ) +2/modulate = Color( 1, 1, 1, 1 ) +2/region = Rect2( 0, 0, 16, 8 ) +2/tile_mode = 0 +2/occluder_offset = Vector2( 0, 0 ) +2/navigation_offset = Vector2( 0, 0 ) +2/shape_offset = Vector2( 0, 0 ) +2/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +2/shape_one_way = false +2/shape_one_way_margin = 0.0 +2/shapes = [ ] +2/z_index = 0 +3/name = "drygrass_props.png 3" +3/texture = ExtResource( 4 ) +3/tex_offset = Vector2( 0, 0 ) +3/modulate = Color( 1, 1, 1, 1 ) +3/region = Rect2( 0, 0, 16, 8 ) +3/tile_mode = 0 +3/occluder_offset = Vector2( 0, 0 ) +3/navigation_offset = Vector2( 0, 0 ) +3/shape_offset = Vector2( 0, 0 ) +3/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +3/shape_one_way = false +3/shape_one_way_margin = 0.0 +3/shapes = [ ] +3/z_index = 0 +4/name = "bigflowers_props.png 4" +4/texture = ExtResource( 3 ) +4/tex_offset = Vector2( 0, 0 ) +4/modulate = Color( 1, 1, 1, 1 ) +4/region = Rect2( 0, 0, 16, 8 ) +4/tile_mode = 0 +4/occluder_offset = Vector2( 0, 0 ) +4/navigation_offset = Vector2( 0, 0 ) +4/shape_offset = Vector2( 0, 0 ) +4/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +4/shape_one_way = false +4/shape_one_way_margin = 0.0 +4/shapes = [ ] +4/z_index = 0 + +[node name="LevelScreenTemplate" type="Node2D"] + +[node name="Coins" type="Node2D" parent="."] + +[node name="Checkpoints" type="Node2D" parent="."] +position = Vector2( 945.375, 396 ) + +[node name="Enemies" type="Node2D" parent="."] + +[node name="Hazards" type="Node2D" parent="."] + +[node name="Spike" parent="Hazards" instance=ExtResource( 9 )] +position = Vector2( 344, 256 ) + +[node name="World" type="Node2D" parent="."] + +[node name="SemiSolidsTileMap" parent="World" instance=ExtResource( 8 )] +tile_set = SubResource( 1 ) + +[node name="StaticBody2D" type="StaticBody2D" parent="World/SemiSolidsTileMap"] +collision_layer = 8 + +[node name="SolidsTileMap" parent="World" instance=ExtResource( 7 )] +position = Vector2( -1, 0 ) +tile_set = SubResource( 36 ) +tile_data = PoolIntArray( 65535, 0, 0, 0, 0, 2, 28, 0, 0, 29, 0, 1, 30, 0, 2, 131071, 0, 65541, 65536, 0, 65538, 65564, 0, 65536, 65565, 0, 65537, 65566, 0, 65539, 196607, 0, 65536, 131072, 0, 65538, 131100, 0, 65536, 131101, 0, 65537, 131102, 0, 65539, 262143, 0, 65536, 196608, 0, 65539, 196636, 0, 65536, 196637, 0, 65537, 196638, 0, 65538, 327679, 0, 65541, 262144, 0, 65539, 262172, 0, 65541, 262173, 0, 65537, 262174, 0, 65539, 393215, 0, 65541, 327680, 0, 65539, 327708, 0, 65541, 327709, 0, 65537, 327710, 0, 65538, 458751, 0, 65541, 393216, 0, 65538, 393244, 0, 65541, 393245, 0, 65537, 393246, 0, 65538, 524287, 0, 65541, 458752, 0, 65539, 458780, 0, 65536, 458781, 0, 65537, 458782, 0, 65539, 589823, 0, 65541, 524288, 0, 65539, 524316, 0, 65536, 524317, 0, 65537, 524318, 0, 65538, 655359, 0, 65536, 589824, 0, 65538, 589852, 0, 65541, 589853, 0, 65537, 589854, 0, 65538, 720895, 0, 65541, 655360, 0, 65539, 655388, 0, 65536, 655389, 0, 65537, 655390, 0, 65539, 786431, 0, 65541, 720896, 0, 65538, 720924, 0, 65541, 720925, 0, 65537, 720926, 0, 65538, 851967, 0, 65536, 786432, 0, 65539, 786460, 0, 65536, 786461, 0, 65537, 786462, 0, 65538, 917503, 0, 65536, 851968, 0, 65539, 851996, 0, 65541, 851997, 0, 65537, 851998, 0, 65539, 983039, 0, 65536, 917504, 0, 65539, 917532, 0, 65536, 917533, 0, 65537, 917534, 0, 65538, 1048575, 0, 65541, 983040, 0, 65539, 983068, 0, 65541, 983069, 0, 65537, 983070, 0, 65539, 1114111, 0, 65536, 1048576, 0, 131075, 1048577, 0, 131076, 1048578, 0, 131076, 1048579, 0, 131076, 1048580, 0, 131076, 1048581, 0, 1, 1048582, 0, 1, 1048583, 0, 1, 1048584, 0, 1, 1048585, 0, 1, 1048586, 0, 1, 1048587, 0, 131076, 1048588, 0, 1, 1048589, 0, 131076, 1048590, 0, 131076, 1048591, 0, 131076, 1048592, 0, 131076, 1048593, 0, 131076, 1048594, 0, 1, 1048595, 0, 131076, 1048596, 0, 131076, 1048597, 0, 131076, 1048598, 0, 131076, 1048599, 0, 131076, 1048600, 0, 131076, 1048601, 0, 1, 1048602, 0, 1, 1048603, 0, 131076, 1048604, 0, 131077, 1048605, 0, 65537, 1048606, 0, 65539, 1179647, 0, 65541, 1114112, 0, 65537, 1114113, 0, 65537, 1114114, 0, 65537, 1114115, 0, 65537, 1114116, 0, 65537, 1114117, 0, 65537, 1114118, 0, 65537, 1114119, 0, 65537, 1114120, 0, 65537, 1114121, 0, 65537, 1114122, 0, 65537, 1114123, 0, 65537, 1114124, 0, 65537, 1114125, 0, 65537, 1114126, 0, 65537, 1114127, 0, 65537, 1114128, 0, 65537, 1114129, 0, 65537, 1114130, 0, 65537, 1114131, 0, 65537, 1114132, 0, 65537, 1114133, 0, 65537, 1114134, 0, 65537, 1114135, 0, 65537, 1114136, 0, 65537, 1114137, 0, 65537, 1114138, 0, 65537, 1114139, 0, 65537, 1114140, 0, 65537, 1114141, 0, 65537, 1114142, 0, 65539, 1245183, 0, 131072, 1179648, 0, 131073, 1179649, 0, 131073, 1179650, 0, 4, 1179651, 0, 4, 1179652, 0, 4, 1179653, 0, 131073, 1179654, 0, 4, 1179655, 0, 131073, 1179656, 0, 4, 1179657, 0, 4, 1179658, 0, 131073, 1179659, 0, 4, 1179660, 0, 4, 1179661, 0, 131073, 1179662, 0, 131073, 1179663, 0, 4, 1179664, 0, 131073, 1179665, 0, 4, 1179666, 0, 4, 1179667, 0, 131073, 1179668, 0, 4, 1179669, 0, 4, 1179670, 0, 131073, 1179671, 0, 131073, 1179672, 0, 4, 1179673, 0, 131073, 1179674, 0, 131073, 1179675, 0, 4, 1179676, 0, 4, 1179677, 0, 131073, 1179678, 0, 131074 ) + +[node name="Decorations" type="TileMap" parent="World"] +tile_set = SubResource( 37 ) +cell_size = Vector2( 16, 8 ) +format = 1 + +[node name="WatterfallesBG" type="Node2D" parent="World"] +position = Vector2( 1.37535, 6 ) + +[node name="WaterfallsFG" type="Node2D" parent="World"] + +[node name="Torches" type="Node2D" parent="World"] diff --git a/src/Levels/LevelTemplate/LevelTemplate.gd b/src/Levels/LevelTemplate/LevelTemplate.gd new file mode 100644 index 0000000..ff09f8b --- /dev/null +++ b/src/Levels/LevelTemplate/LevelTemplate.gd @@ -0,0 +1,51 @@ +extends Node2D + +var LandingDust = load("res://src/Actors/LandingDust.tscn") +var JumpDust = load("res://src/Actors/JumpDust.tscn") +export var screen_size := Vector2(480, 270) + +var _grid_active_cell_origin := Vector2.ZERO + +var latest_checkpoint:CheckPoint = null + + +func _physics_process(delta: float) -> void: + if Input.is_action_just_pressed("pause"): + get_tree().quit(0) + _update_camera(delta) + +func _ready() -> void: + for coin in $Coins.get_children(): + coin.connect("collected", self, "_on_coin_collected") + for checkpoint in $Checkpoints.get_children(): + checkpoint.connect("activated", self, "_on_checkpoint_activated") + +func _on_coin_collected(amount:int): + $HUD.on_coin_collected(amount) + +func _on_checkpoint_activated(cp:CheckPoint): + if latest_checkpoint != null and latest_checkpoint != cp: + latest_checkpoint.deactivate() + latest_checkpoint = cp + $Player.respawn_position = cp.global_position + +func _update_camera(delta:float) -> void: + var player_position = $Player.position + var camera_position = $Camera2D.position + var desired_camera_position = Vector2( + floor(player_position.x / screen_size.x) * screen_size.x, + floor(player_position.y / screen_size.y) * screen_size.y) + if camera_position != desired_camera_position: + _grid_active_cell_origin = desired_camera_position + $Camera2D.update_grid_position(desired_camera_position) + +func _on_Player_landed(position:Vector2) -> void: + var dust = LandingDust.instance() + add_child(dust) + dust.position = position + + +func _on_Player_jumping(position:Vector2) -> void: + var dust = JumpDust.instance() + add_child(dust) + dust.position = position diff --git a/src/Levels/LevelTemplate/LevelTemplate.tscn b/src/Levels/LevelTemplate/LevelTemplate.tscn new file mode 100644 index 0000000..dd07b07 --- /dev/null +++ b/src/Levels/LevelTemplate/LevelTemplate.tscn @@ -0,0 +1,574 @@ +[gd_scene load_steps=57 format=2] + +[ext_resource path="res://src/Levels/LevelTemplate/LevelTemplate.gd" type="Script" id=1] +[ext_resource path="res://src/Levels/LevelTemplate/Camera2D.gd" type="Script" id=2] +[ext_resource path="res://assets/Levels/Test/bg_2.png" type="Texture" id=3] +[ext_resource path="res://assets/Levels/Test/bg_0.png" type="Texture" id=4] +[ext_resource path="res://assets/Levels/Test/bg_1.png" type="Texture" id=5] +[ext_resource path="res://assets/Tiles/root_props.png" type="Texture" id=6] +[ext_resource path="res://assets/Tiles/bigflowers_props.png" type="Texture" id=7] +[ext_resource path="res://assets/Tiles/drygrass_props.png" type="Texture" id=8] +[ext_resource path="res://assets/Tiles/grass_props.png" type="Texture" id=9] +[ext_resource path="res://assets/Tiles/flowers_props.png" type="Texture" id=10] +[ext_resource path="res://assets/Tiles/SemiSolidsTileMap.tscn" type="PackedScene" id=11] +[ext_resource path="res://assets/Tiles/SolidsTileMap.tscn" type="PackedScene" id=12] +[ext_resource path="res://src/Actors/Player.tscn" type="PackedScene" id=13] +[ext_resource path="res://src/HUD/HUD.tscn" type="PackedScene" id=14] +[ext_resource path="res://assets/Tiles/tileset.png" type="Texture" id=15] +[ext_resource path="res://src/Hazards/Spike.tscn" type="PackedScene" id=16] +[ext_resource path="res://src/Items/Torch.tscn" type="PackedScene" id=18] +[ext_resource path="res://src/Items/Coin.tscn" type="PackedScene" id=19] +[ext_resource path="res://src/Items/CheckPoint.tscn" type="PackedScene" id=20] + +[sub_resource type="TileSet" id=1] +0/name = "tileset.png 0" +0/texture = ExtResource( 15 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 96, 0, 96, 48 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 0 +0/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1, Vector2( 3, 0 ), 69, Vector2( 3, 1 ), 65, Vector2( 3, 2 ), 321, Vector2( 4, 0 ), 5, Vector2( 4, 2 ), 320, Vector2( 5, 0 ), 261, Vector2( 5, 1 ), 260, Vector2( 5, 2 ), 324 ] +0/autotile/icon_coordinate = Vector2( 0, 0 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape_one_way = false +0/shape_one_way_margin = 0.0 +0/shapes = [ ] +0/z_index = 0 +1/name = "tileset.png 1" +1/texture = ExtResource( 15 ) +1/tex_offset = Vector2( 0, 0 ) +1/modulate = Color( 1, 1, 1, 1 ) +1/region = Rect2( 0, 48, 48, 48 ) +1/tile_mode = 1 +1/autotile/bitmask_mode = 0 +1/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1 ] +1/autotile/icon_coordinate = Vector2( 0, 0 ) +1/autotile/tile_size = Vector2( 16, 16 ) +1/autotile/spacing = 0 +1/autotile/occluder_map = [ ] +1/autotile/navpoly_map = [ ] +1/autotile/priority_map = [ ] +1/autotile/z_index_map = [ ] +1/occluder_offset = Vector2( 0, 0 ) +1/navigation_offset = Vector2( 0, 0 ) +1/shape_offset = Vector2( 0, 0 ) +1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +1/shape_one_way = false +1/shape_one_way_margin = 0.0 +1/shapes = [ ] +1/z_index = 0 + +[sub_resource type="OccluderPolygon2D" id=2] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=3] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=4] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=5] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=6] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=7] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=8] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=9] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=10] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=11] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=12] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=13] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=14] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=15] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=16] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=17] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="OccluderPolygon2D" id=18] +polygon = PoolVector2Array( 0, 0, 16, 0, 16, 16, 0, 16 ) + +[sub_resource type="ConvexPolygonShape2D" id=19] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=20] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=21] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=22] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=23] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=24] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=25] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=26] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=27] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=28] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=29] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=30] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=31] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=32] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=33] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=34] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="ConvexPolygonShape2D" id=35] +points = PoolVector2Array( 16, 16, 0, 16, 0, 0, 16, 0 ) + +[sub_resource type="TileSet" id=36] +0/name = "tileset.png 0" +0/texture = ExtResource( 15 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 96, 48 ) +0/tile_mode = 1 +0/autotile/bitmask_mode = 0 +0/autotile/bitmask_flags = [ Vector2( 0, 0 ), 256, Vector2( 0, 1 ), 260, Vector2( 0, 2 ), 4, Vector2( 1, 0 ), 320, Vector2( 1, 1 ), 325, Vector2( 1, 2 ), 5, Vector2( 2, 0 ), 64, Vector2( 2, 1 ), 65, Vector2( 2, 2 ), 1, Vector2( 3, 0 ), 69, Vector2( 3, 1 ), 65, Vector2( 3, 2 ), 321, Vector2( 4, 0 ), 5, Vector2( 4, 2 ), 320, Vector2( 5, 0 ), 261, Vector2( 5, 1 ), 260, Vector2( 5, 2 ), 324 ] +0/autotile/icon_coordinate = Vector2( 1, 0 ) +0/autotile/tile_size = Vector2( 16, 16 ) +0/autotile/spacing = 0 +0/autotile/occluder_map = [ Vector2( 0, 0 ), SubResource( 2 ), Vector2( 0, 1 ), SubResource( 3 ), Vector2( 0, 2 ), SubResource( 4 ), Vector2( 1, 0 ), SubResource( 5 ), Vector2( 1, 1 ), SubResource( 6 ), Vector2( 1, 2 ), SubResource( 7 ), Vector2( 2, 0 ), SubResource( 8 ), Vector2( 2, 1 ), SubResource( 9 ), Vector2( 2, 2 ), SubResource( 10 ), Vector2( 3, 0 ), SubResource( 11 ), Vector2( 3, 1 ), SubResource( 12 ), Vector2( 3, 2 ), SubResource( 13 ), Vector2( 4, 0 ), SubResource( 14 ), Vector2( 4, 2 ), SubResource( 15 ), Vector2( 5, 0 ), SubResource( 16 ), Vector2( 5, 1 ), SubResource( 17 ), Vector2( 5, 2 ), SubResource( 18 ) ] +0/autotile/navpoly_map = [ ] +0/autotile/priority_map = [ ] +0/autotile/z_index_map = [ ] +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape = SubResource( 19 ) +0/shape_one_way = false +0/shape_one_way_margin = 1.0 +0/shapes = [ { +"autotile_coord": Vector2( 1, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 19 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 20 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 21 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 22 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 23 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 24 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 0, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 25 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 1, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 26 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 2, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 27 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 28 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 29 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 3, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 30 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 4, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 31 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 4, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 32 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 0 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 33 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 1 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 34 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +}, { +"autotile_coord": Vector2( 5, 2 ), +"one_way": false, +"one_way_margin": 1.0, +"shape": SubResource( 35 ), +"shape_transform": Transform2D( 1, 0, 0, 1, 0, 0 ) +} ] +0/z_index = 0 + +[sub_resource type="TileSet" id=37] +0/name = "root_props.png 0" +0/texture = ExtResource( 6 ) +0/tex_offset = Vector2( 0, 0 ) +0/modulate = Color( 1, 1, 1, 1 ) +0/region = Rect2( 0, 0, 16, 8 ) +0/tile_mode = 0 +0/occluder_offset = Vector2( 0, 0 ) +0/navigation_offset = Vector2( 0, 0 ) +0/shape_offset = Vector2( 0, 0 ) +0/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +0/shape_one_way = false +0/shape_one_way_margin = 0.0 +0/shapes = [ ] +0/z_index = 0 +1/name = "grass_props.png 1" +1/texture = ExtResource( 9 ) +1/tex_offset = Vector2( 0, 0 ) +1/modulate = Color( 1, 1, 1, 1 ) +1/region = Rect2( 0, 0, 16, 8 ) +1/tile_mode = 0 +1/occluder_offset = Vector2( 0, 0 ) +1/navigation_offset = Vector2( 0, 0 ) +1/shape_offset = Vector2( 0, 0 ) +1/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +1/shape_one_way = false +1/shape_one_way_margin = 0.0 +1/shapes = [ ] +1/z_index = 0 +2/name = "flowers_props.png 2" +2/texture = ExtResource( 10 ) +2/tex_offset = Vector2( 0, 0 ) +2/modulate = Color( 1, 1, 1, 1 ) +2/region = Rect2( 0, 0, 16, 8 ) +2/tile_mode = 0 +2/occluder_offset = Vector2( 0, 0 ) +2/navigation_offset = Vector2( 0, 0 ) +2/shape_offset = Vector2( 0, 0 ) +2/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +2/shape_one_way = false +2/shape_one_way_margin = 0.0 +2/shapes = [ ] +2/z_index = 0 +3/name = "drygrass_props.png 3" +3/texture = ExtResource( 8 ) +3/tex_offset = Vector2( 0, 0 ) +3/modulate = Color( 1, 1, 1, 1 ) +3/region = Rect2( 0, 0, 16, 8 ) +3/tile_mode = 0 +3/occluder_offset = Vector2( 0, 0 ) +3/navigation_offset = Vector2( 0, 0 ) +3/shape_offset = Vector2( 0, 0 ) +3/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +3/shape_one_way = false +3/shape_one_way_margin = 0.0 +3/shapes = [ ] +3/z_index = 0 +4/name = "bigflowers_props.png 4" +4/texture = ExtResource( 7 ) +4/tex_offset = Vector2( 0, 0 ) +4/modulate = Color( 1, 1, 1, 1 ) +4/region = Rect2( 0, 0, 16, 8 ) +4/tile_mode = 0 +4/occluder_offset = Vector2( 0, 0 ) +4/navigation_offset = Vector2( 0, 0 ) +4/shape_offset = Vector2( 0, 0 ) +4/shape_transform = Transform2D( 1, 0, 0, 1, 0, 0 ) +4/shape_one_way = false +4/shape_one_way_margin = 0.0 +4/shapes = [ ] +4/z_index = 0 + +[node name="LevelTemplate" type="Node2D"] +position = Vector2( -0.375351, 0 ) +script = ExtResource( 1 ) + +[node name="ParallaxBackground" type="ParallaxBackground" parent="."] + +[node name="ParallaxLayer" type="ParallaxLayer" parent="ParallaxBackground"] +position = Vector2( -150, 0 ) +motion_scale = Vector2( 0.5, 1 ) + +[node name="Sprite" type="Sprite" parent="ParallaxBackground/ParallaxLayer"] +scale = Vector2( 2, 2 ) +texture = ExtResource( 4 ) +centered = false + +[node name="Sprite2" type="Sprite" parent="ParallaxBackground/ParallaxLayer"] +position = Vector2( 480, 0 ) +scale = Vector2( 2, 2 ) +texture = ExtResource( 4 ) +centered = false + +[node name="Sprite3" type="Sprite" parent="ParallaxBackground/ParallaxLayer"] +position = Vector2( 960, 0 ) +scale = Vector2( 2, 2 ) +texture = ExtResource( 4 ) +centered = false + +[node name="ParallaxLayer2" type="ParallaxLayer" parent="ParallaxBackground"] +position = Vector2( -100, 0 ) +motion_scale = Vector2( 0.75, 1 ) + +[node name="Sprite" type="Sprite" parent="ParallaxBackground/ParallaxLayer2"] +scale = Vector2( 2, 2 ) +texture = ExtResource( 5 ) +centered = false + +[node name="Sprite2" type="Sprite" parent="ParallaxBackground/ParallaxLayer2"] +position = Vector2( 480, 0 ) +scale = Vector2( 2, 2 ) +texture = ExtResource( 5 ) +centered = false + +[node name="Sprite3" type="Sprite" parent="ParallaxBackground/ParallaxLayer2"] +position = Vector2( 960, 0 ) +scale = Vector2( 2, 2 ) +texture = ExtResource( 5 ) +centered = false + +[node name="ParallaxLayer3" type="ParallaxLayer" parent="ParallaxBackground"] +position = Vector2( -100, 0 ) +motion_scale = Vector2( 0.7, 0.8 ) + +[node name="Sprite" type="Sprite" parent="ParallaxBackground/ParallaxLayer3"] +position = Vector2( 3.05176e-05, 0 ) +scale = Vector2( 2, 2 ) +texture = ExtResource( 3 ) +centered = false + +[node name="Sprite2" type="Sprite" parent="ParallaxBackground/ParallaxLayer3"] +position = Vector2( 480, 0 ) +scale = Vector2( 2, 2 ) +texture = ExtResource( 3 ) +centered = false + +[node name="Sprite3" type="Sprite" parent="ParallaxBackground/ParallaxLayer3"] +position = Vector2( 960, 0 ) +scale = Vector2( 2, 2 ) +texture = ExtResource( 3 ) +centered = false + +[node name="World" type="Node2D" parent="."] + +[node name="SemiSolidsTileMap" parent="World" instance=ExtResource( 11 )] +tile_set = SubResource( 1 ) +tile_data = PoolIntArray( -65528, 0, 0, -65527, 0, 131076, -65526, 0, 1, -65525, 0, 131076, -65524, 0, 131076, -65523, 0, 1, -65522, 0, 1, -65521, 0, 1, -65520, 0, 131076, -65519, 0, 2, 8, 0, 65536, 9, 0, 3, 10, 0, 131073, 11, 0, 4, 12, 0, 131073, 13, 0, 131073, 14, 0, 5, 15, 0, 65537, 16, 0, 65537, 17, 0, 65538, 65544, 0, 65541, 65545, 0, 65539, 65546, 1, 0, 65547, 1, 1, 65548, 1, 1, 65549, 1, 2, 65550, 0, 65541, 65551, 0, 65537, 65552, 0, 65537, 65553, 0, 131075, 65554, 0, 1, 65555, 0, 1, 65556, 0, 1, 65557, 0, 131076, 65558, 0, 1, 65559, 0, 1, 65560, 0, 1, 65561, 0, 131076, 65562, 0, 1, 65563, 0, 1, 65564, 0, 1, 65565, 0, 2, 131080, 0, 65536, 131081, 0, 65538, 131082, 1, 131072, 131083, 1, 131073, 131084, 1, 131073, 131085, 1, 131074, 131086, 0, 65536, 131087, 0, 65537, 131088, 0, 65537, 131089, 0, 65537, 131090, 0, 65537, 131091, 0, 65537, 131092, 0, 65537, 131093, 0, 65537, 131094, 0, 65537, 131095, 0, 65537, 131096, 0, 65537, 131097, 0, 65537, 131098, 0, 65537, 131099, 0, 65537, 131100, 0, 65537, 131101, 0, 65538, 196616, 0, 131072, 196617, 0, 131074, 196618, 0, 0, 196619, 0, 2, 196620, 0, 0, 196621, 0, 0, 196622, 0, 0, 196623, 0, 131073, 196624, 0, 5, 196625, 0, 65537, 196626, 0, 65537, 196627, 0, 65537, 196628, 0, 65537, 196629, 0, 65537, 196630, 0, 65537, 196631, 0, 65537, 196632, 0, 65537, 196633, 0, 65537, 196634, 0, 65537, 196635, 0, 65537, 196636, 0, 65537, 196637, 0, 65539, 262154, 0, 131072, 262155, 0, 131074, 262157, 0, 65541, 262158, 0, 65539, 262160, 0, 65541, 262161, 0, 65537, 262162, 0, 65537, 262163, 0, 3, 262164, 0, 4, 262165, 0, 4, 262166, 0, 131073, 262167, 0, 131073, 262168, 0, 131073, 262169, 0, 5, 262170, 0, 65537, 262171, 0, 65537, 262172, 0, 65537, 262173, 0, 65538, 327693, 0, 131072, 327694, 0, 131074, 327696, 0, 131072, 327697, 0, 5, 327698, 0, 65537, 327699, 0, 65538, 327700, 1, 0, 327701, 1, 1, 327702, 1, 1, 327703, 1, 1, 327704, 1, 2, 327705, 0, 65541, 327706, 0, 65537, 327707, 0, 65537, 327708, 0, 65537, 327709, 0, 65539, 393233, 0, 65536, 393234, 0, 65537, 393235, 0, 65538, 393236, 1, 65536, 393237, 1, 65537, 393238, 1, 65537, 393239, 1, 65537, 393240, 1, 65538, 393241, 0, 131072, 393242, 0, 4, 393243, 0, 131073, 393244, 0, 5, 393245, 0, 65539, 458767, 0, 0, 458768, 0, 2, 458769, 0, 131072, 458770, 0, 5, 458771, 0, 65539, 458772, 1, 65536, 458773, 1, 65537, 458774, 1, 65537, 458775, 1, 65537, 458776, 1, 0, 458777, 1, 1, 458778, 1, 1, 458779, 1, 2, 458780, 0, 65536, 458781, 0, 65539, 524303, 0, 131072, 524304, 0, 131074, 524306, 0, 65541, 524307, 0, 65539, 524308, 1, 131072, 524309, 1, 131073, 524310, 1, 131073, 524311, 1, 131073, 524312, 1, 0, 524313, 1, 65537, 524314, 1, 65537, 524315, 1, 65538, 524316, 0, 65536, 524317, 0, 65539, 589842, 0, 65541, 589843, 0, 131075, 589844, 0, 131076, 589845, 0, 1, 589846, 0, 1, 589847, 0, 2, 589848, 1, 65536, 589849, 1, 65537, 589850, 1, 65537, 589851, 1, 65538, 589852, 0, 65541, 589853, 0, 65539, 655377, 0, 0, 655378, 0, 131077, 655379, 0, 65537, 655380, 0, 65537, 655381, 0, 65537, 655382, 0, 65537, 655383, 0, 65538, 655384, 1, 65536, 655385, 1, 65537, 655386, 1, 65537, 655387, 1, 65538, 655388, 0, 65541, 655389, 0, 65538, 720910, 0, 0, 720912, 0, 0, 720913, 0, 131077, 720914, 0, 65537, 720915, 0, 65537, 720916, 0, 65537, 720917, 0, 65537, 720918, 0, 65537, 720919, 0, 65539, 720920, 1, 65536, 720921, 1, 65537, 720922, 1, 65537, 720923, 1, 65538, 720924, 0, 65536, 720925, 0, 65539, 786445, 0, 0, 786446, 0, 131076, 786447, 0, 1, 786448, 0, 131077, 786449, 0, 65537, 786450, 0, 65537, 786451, 0, 65537, 786452, 0, 65537, 786453, 0, 65537, 786454, 0, 65537, 786455, 0, 65538, 786456, 1, 131072, 786457, 1, 131073, 786458, 1, 131073, 786459, 1, 131074, 786460, 0, 65541, 786461, 0, 65539, 851980, 0, 0, 851981, 0, 131077, 851982, 0, 65537, 851983, 0, 65537, 851984, 0, 65537, 851985, 0, 65537, 851986, 0, 65537, 851987, 0, 65537, 851988, 0, 65537, 851989, 0, 65537, 851990, 0, 65537, 851991, 0, 131075, 851992, 0, 1, 851993, 0, 1, 851994, 0, 131076, 851995, 0, 1, 851996, 0, 131077, 851997, 0, 65539, 917515, 0, 0, 917516, 0, 131077, 917517, 0, 65537, 917518, 0, 65537, 917519, 0, 65537, 917520, 0, 65537, 917521, 0, 65537, 917522, 0, 65537, 917523, 0, 65537, 917524, 0, 65537, 917525, 0, 65537, 917526, 0, 65537, 917527, 0, 65537, 917528, 0, 65537, 917529, 0, 65537, 917530, 0, 65537, 917531, 0, 65537, 917532, 0, 65537, 917533, 0, 65539, 983051, 0, 65536, 983052, 0, 65537, 983053, 0, 65537, 983054, 0, 65537, 983055, 0, 65537, 983056, 0, 65537, 983057, 0, 65537, 983058, 0, 65537, 983059, 0, 65537, 983060, 0, 65537, 983061, 0, 65537, 983062, 0, 65537, 983063, 0, 65537, 983064, 0, 65537, 983065, 0, 65537, 983066, 0, 65537, 983067, 0, 65537, 983068, 0, 65537, 983069, 0, 65538, 1048587, 0, 65536, 1048588, 0, 65537, 1048589, 0, 65537, 1048590, 0, 65537, 1048591, 0, 65537, 1048592, 0, 65537, 1048593, 0, 65537, 1048594, 0, 65537, 1048595, 0, 65537, 1048596, 0, 65537, 1048597, 0, 65537, 1048598, 0, 65537, 1048599, 0, 65537, 1048600, 0, 65537, 1048601, 0, 65537, 1048602, 0, 65537, 1048603, 0, 65537, 1048604, 0, 65537, 1048605, 0, 65539, 1114112, 0, 0, 1114113, 0, 131076, 1114114, 0, 1, 1114115, 0, 1, 1114116, 0, 131076, 1114117, 0, 131076, 1114118, 0, 1, 1114119, 0, 131076, 1114120, 0, 131076, 1114121, 0, 1, 1114122, 0, 131076, 1114123, 0, 131077, 1114124, 0, 65537, 1114125, 0, 65537, 1114126, 0, 65537, 1114127, 0, 65537, 1114128, 0, 65537, 1114129, 0, 3, 1114130, 0, 4, 1114131, 0, 131073, 1114132, 0, 4, 1114133, 0, 5, 1114134, 0, 65537, 1114135, 0, 65537, 1114136, 0, 65537, 1114137, 0, 65537, 1114138, 0, 65537, 1114139, 0, 65537, 1114140, 0, 65537, 1114141, 0, 65539, 1179648, 0, 131072, 1179649, 0, 131073, 1179650, 0, 131073, 1179651, 0, 4, 1179652, 0, 4, 1179653, 0, 5, 1179654, 0, 65537, 1179655, 0, 65537, 1179656, 0, 65537, 1179657, 0, 65537, 1179658, 0, 65537, 1179659, 0, 65537, 1179660, 0, 65537, 1179661, 0, 65537, 1179662, 0, 65537, 1179663, 0, 65537, 1179664, 0, 65537, 1179665, 0, 65538, 1179666, 1, 0, 1179667, 1, 1, 1179668, 1, 2, 1179669, 0, 65536, 1179670, 0, 65537, 1179671, 0, 65537, 1179672, 0, 65537, 1179673, 0, 65537, 1179674, 0, 3, 1179675, 0, 4, 1179676, 0, 131073, 1179677, 0, 131074, 1179679, 0, 0, 1179680, 0, 1, 1179681, 0, 131076, 1179682, 0, 131076, 1179683, 0, 131076, 1179684, 0, 1, 1179685, 0, 1, 1179686, 0, 131076, 1179687, 0, 131076, 1179688, 0, 131076, 1179689, 0, 131076, 1179690, 0, 1, 1179691, 0, 131076, 1179692, 0, 1, 1179693, 0, 131076, 1179694, 0, 1, 1179695, 0, 1, 1179696, 0, 131076, 1179697, 0, 1, 1179698, 0, 1, 1179699, 0, 1, 1179700, 0, 1, 1179701, 0, 131076, 1179702, 0, 1, 1179703, 0, 1, 1179704, 0, 1, 1179705, 0, 1, 1179706, 0, 1, 1179707, 0, 1, 1179708, 0, 131076, 1179709, 0, 1, 1179710, 0, 1, 1179711, 0, 131076, 1179712, 0, 131076, 1179713, 0, 131076, 1179714, 0, 131076, 1179715, 0, 131076, 1179716, 0, 131076, 1179717, 0, 2, 1310719, 1, 0, 1245184, 1, 1, 1245185, 1, 1, 1245186, 1, 1, 1245187, 1, 1, 1245188, 1, 2, 1245189, 0, 65536, 1245190, 0, 65537, 1245191, 0, 65537, 1245192, 0, 65537, 1245193, 0, 65537, 1245194, 0, 65537, 1245195, 0, 65537, 1245196, 0, 65537, 1245197, 0, 65537, 1245198, 0, 65537, 1245199, 0, 65537, 1245200, 0, 65537, 1245201, 0, 65539, 1245202, 1, 65536, 1245203, 1, 65537, 1245204, 1, 65538, 1245205, 0, 65536, 1245206, 0, 65537, 1245207, 0, 65537, 1245208, 0, 65537, 1245209, 0, 65537, 1245210, 0, 65538, 1245211, 1, 0, 1245212, 1, 1, 1245213, 1, 2, 1245215, 0, 65536, 1245216, 0, 65537, 1245217, 0, 65537, 1245218, 0, 65537, 1245219, 0, 65537, 1245220, 0, 65537, 1245221, 0, 65537, 1245222, 0, 65537, 1245223, 0, 65537, 1245224, 0, 65537, 1245225, 0, 65537, 1245226, 0, 65537, 1245227, 0, 65537, 1245228, 0, 65537, 1245229, 0, 65537, 1245230, 0, 65537, 1245231, 0, 65537, 1245232, 0, 65537, 1245233, 0, 65537, 1245234, 0, 65537, 1245235, 0, 65537, 1245236, 0, 65537, 1245237, 0, 65537, 1245238, 0, 65537, 1245239, 0, 65537, 1245240, 0, 65537, 1245241, 0, 65537, 1245242, 0, 65537, 1245243, 0, 65537, 1245244, 0, 65537, 1245245, 0, 65537, 1245246, 0, 65537, 1245247, 0, 65537, 1245248, 0, 65537, 1245249, 0, 65537, 1245250, 0, 65537, 1245251, 0, 65537, 1245252, 0, 65537, 1245253, 0, 65539, 1376255, 1, 65536, 1310720, 1, 65537, 1310721, 1, 0, 1310722, 1, 131073, 1310723, 1, 0, 1310724, 1, 65538, 1310725, 0, 65541, 1310726, 0, 65537, 1310727, 0, 65537, 1310728, 0, 65537, 1310729, 0, 3, 1310730, 0, 4, 1310731, 0, 4, 1310732, 0, 131073, 1310733, 0, 131073, 1310734, 0, 4, 1310735, 0, 4, 1310736, 0, 5, 1310737, 0, 65538, 1310738, 1, 131072, 1310739, 1, 131073, 1310740, 1, 131074, 1310741, 0, 65541, 1310742, 0, 65537, 1310743, 0, 65537, 1310744, 0, 65537, 1310745, 0, 65537, 1310746, 0, 65538, 1310747, 1, 65536, 1310748, 1, 65537, 1310749, 1, 65538, 1310751, 0, 65541, 1310752, 0, 65537, 1310753, 0, 65537, 1310754, 0, 65537, 1310755, 0, 65537, 1310756, 0, 65537, 1310757, 0, 65537, 1310758, 0, 65537, 1310759, 0, 65537, 1310760, 0, 65537, 1310761, 0, 65537, 1310762, 0, 65537, 1310763, 0, 65537, 1310764, 0, 65537, 1310765, 0, 65537, 1310766, 0, 65537, 1310767, 0, 65537, 1310768, 0, 65537, 1310769, 0, 65537, 1310770, 0, 65537, 1310771, 0, 65537, 1310772, 0, 65537, 1310773, 0, 65537, 1310774, 0, 65537, 1310775, 0, 65537, 1310776, 0, 65537, 1310777, 0, 65537, 1310778, 0, 65537, 1310779, 0, 65537, 1310780, 0, 65537, 1310781, 0, 65537, 1310782, 0, 65537, 1310783, 0, 65537, 1310784, 0, 65537, 1310785, 0, 65537, 1310786, 0, 65537, 1310787, 0, 65537, 1310788, 0, 65537, 1310789, 0, 65539, 1441791, 1, 65536, 1376256, 1, 65537, 1376257, 1, 65538, 1376258, 0, 0, 1376259, 1, 65536, 1376260, 1, 65538, 1376261, 0, 65536, 1376262, 0, 65537, 1376263, 0, 65537, 1376264, 0, 65537, 1376265, 0, 65538, 1376266, 1, 0, 1376267, 1, 1, 1376268, 1, 1, 1376269, 1, 1, 1376270, 1, 1, 1376271, 1, 2, 1376272, 0, 65536, 1376273, 0, 131075, 1376274, 0, 1, 1376275, 0, 131076, 1376276, 0, 1, 1376277, 0, 131077, 1376278, 0, 65537, 1376279, 0, 65537, 1376280, 0, 65537, 1376281, 0, 65537, 1376282, 0, 65539, 1376283, 1, 65536, 1376284, 1, 65537, 1376285, 1, 65538, 1376287, 0, 65536, 1376288, 0, 65537, 1376289, 0, 65537, 1376290, 0, 65537, 1376291, 0, 65537, 1376292, 0, 65537, 1376293, 0, 65537, 1376294, 0, 65537, 1376295, 0, 65537, 1376296, 0, 65537, 1376297, 0, 65537, 1376298, 0, 65537, 1376299, 0, 65537, 1376300, 0, 65537, 1376301, 0, 65537, 1376302, 0, 65537, 1376303, 0, 65537, 1376304, 0, 65537, 1376305, 0, 65537, 1376306, 0, 65537, 1376307, 0, 65537, 1376308, 0, 65537, 1376309, 0, 65537, 1376310, 0, 65537, 1376311, 0, 65537, 1376312, 0, 65537, 1376313, 0, 65537, 1376314, 0, 65537, 1376315, 0, 65537, 1376316, 0, 65537, 1376317, 0, 65537, 1376318, 0, 65537, 1376319, 0, 65537, 1376320, 0, 65537, 1376321, 0, 65537, 1376322, 0, 65537, 1376323, 0, 65537, 1376324, 0, 65537, 1376325, 0, 65538, 1507327, 1, 65536, 1441792, 1, 65537, 1441793, 1, 0, 1441794, 1, 1, 1441795, 1, 0, 1441796, 1, 65538, 1441797, 0, 65541, 1441798, 0, 65537, 1441799, 0, 65537, 1441800, 0, 65537, 1441801, 0, 65538, 1441802, 1, 65536, 1441803, 1, 65537, 1441804, 1, 65537, 1441805, 1, 65537, 1441806, 1, 65537, 1441807, 1, 65538, 1441808, 0, 65541, 1441809, 0, 65537, 1441810, 0, 65537, 1441811, 0, 65537, 1441812, 0, 65537, 1441813, 0, 65537, 1441814, 0, 65537, 1441815, 0, 65537, 1441816, 0, 65537, 1441817, 0, 65537, 1441818, 0, 65539, 1441819, 1, 131072, 1441820, 1, 131073, 1441821, 1, 131074, 1441823, 0, 65536, 1441824, 0, 65537, 1441825, 0, 65537, 1441826, 0, 65537, 1441827, 0, 65537, 1441828, 0, 65537, 1441829, 0, 65537, 1441830, 0, 65537, 1441831, 0, 65537, 1441832, 0, 65537, 1441833, 0, 65537, 1441834, 0, 65537, 1441835, 0, 65537, 1441836, 0, 65537, 1441837, 0, 65537, 1441838, 0, 65537, 1441839, 0, 65537, 1441840, 0, 65537, 1441841, 0, 65537, 1441842, 0, 65537, 1441843, 0, 65537, 1441844, 0, 65537, 1441845, 0, 65537, 1441846, 0, 65537, 1441847, 0, 65537, 1441848, 0, 65537, 1441849, 0, 65537, 1441850, 0, 65537, 1441851, 0, 65537, 1441852, 0, 65537, 1441853, 0, 65537, 1441854, 0, 65537, 1441855, 0, 65537, 1441856, 0, 65537, 1441857, 0, 65537, 1441858, 0, 65537, 1441859, 0, 65537, 1441860, 0, 65537, 1441861, 0, 65538, 1572863, 1, 131072, 1507328, 1, 131073, 1507329, 1, 131073, 1507330, 1, 131073, 1507331, 1, 131073, 1507332, 1, 131074, 1507333, 0, 65536, 1507334, 0, 65537, 1507335, 0, 65537, 1507336, 0, 65537, 1507337, 0, 65539, 1507338, 1, 65536, 1507339, 1, 65537, 1507340, 1, 65537, 1507341, 1, 65537, 1507342, 1, 65537, 1507343, 1, 65538, 1507344, 0, 65541, 1507345, 0, 65537, 1507346, 0, 65537, 1507347, 0, 65537, 1507348, 0, 65537, 1507349, 0, 65537, 1507350, 0, 65537, 1507351, 0, 65537, 1507352, 0, 65537, 1507353, 0, 65537, 1507354, 0, 131075, 1507355, 0, 1, 1507356, 0, 1, 1507357, 0, 2, 1507359, 0, 65536, 1507360, 0, 65537, 1507361, 0, 65537, 1507362, 0, 65537, 1507363, 0, 65537, 1507364, 0, 65537, 1507365, 0, 65537, 1507366, 0, 65537, 1507367, 0, 65537, 1507368, 0, 65537, 1507369, 0, 65537, 1507370, 0, 65537, 1507371, 0, 65537, 1507372, 0, 65537, 1507373, 0, 65537, 1507374, 0, 65537, 1507375, 0, 65537, 1507376, 0, 65537, 1507377, 0, 65537, 1507378, 0, 65537, 1507379, 0, 65537, 1507380, 0, 65537, 1507381, 0, 65537, 1507382, 0, 65537, 1507383, 0, 65537, 1507384, 0, 65537, 1507385, 0, 65537, 1507386, 0, 65537, 1507387, 0, 65537, 1507388, 0, 65537, 1507389, 0, 65537, 1507390, 0, 65537, 1507391, 0, 65537, 1507392, 0, 65537, 1507393, 0, 65537, 1507394, 0, 65537, 1507395, 0, 65537, 1507396, 0, 65537, 1507397, 0, 65538, 1572864, 0, 0, 1572865, 0, 131076, 1572866, 0, 131076, 1572867, 0, 1, 1572868, 0, 2, 1572869, 0, 131072, 1572870, 0, 5, 1572871, 0, 65537, 1572872, 0, 65537, 1572873, 0, 65538, 1572874, 1, 131072, 1572875, 1, 131073, 1572876, 1, 131073, 1572877, 1, 131073, 1572878, 1, 131073, 1572879, 1, 131074, 1572880, 0, 65536, 1572881, 0, 65537, 1572882, 0, 65537, 1572883, 0, 65537, 1572884, 0, 65537, 1572885, 0, 65537, 1572886, 0, 65537, 1572887, 0, 65537, 1572888, 0, 65537, 1572889, 0, 65537, 1572890, 0, 65537, 1572891, 0, 65537, 1572892, 0, 65537, 1572893, 0, 65539, 1572895, 0, 65541, 1572896, 0, 65537, 1572897, 0, 65537, 1572898, 0, 65537, 1572899, 0, 65537, 1572900, 0, 65537, 1572901, 0, 65537, 1572902, 0, 65537, 1572903, 0, 65537, 1572904, 0, 65537, 1572905, 0, 65537, 1572906, 0, 65537, 1572907, 0, 65537, 1572908, 0, 65537, 1572909, 0, 65537, 1572910, 0, 65537, 1572911, 0, 65537, 1572912, 0, 65537, 1572913, 0, 65537, 1572914, 0, 65537, 1572915, 0, 65537, 1572916, 0, 65537, 1572917, 0, 65537, 1572918, 0, 65537, 1572919, 0, 65537, 1572920, 0, 65537, 1572921, 0, 65537, 1572922, 0, 65537, 1572923, 0, 65537, 1572924, 0, 65537, 1572925, 0, 65537, 1572926, 0, 65537, 1572927, 0, 65537, 1572928, 0, 65537, 1572929, 0, 65537, 1572930, 0, 65537, 1572931, 0, 65537, 1572932, 0, 65537, 1572933, 0, 65538, 1638400, 0, 65536, 1638401, 0, 65537, 1638402, 0, 65537, 1638403, 0, 65537, 1638404, 0, 65539, 1638406, 0, 65541, 1638407, 0, 65537, 1638408, 0, 65537, 1638409, 0, 131075, 1638410, 0, 1, 1638411, 0, 131076, 1638412, 0, 131076, 1638413, 0, 1, 1638414, 0, 1, 1638415, 0, 1, 1638416, 0, 131077, 1638417, 0, 65537, 1638418, 0, 65537, 1638419, 0, 65537, 1638420, 0, 65537, 1638421, 0, 65537, 1638422, 0, 65537, 1638423, 0, 65537, 1638424, 0, 65537, 1638425, 0, 65537, 1638426, 0, 65537, 1638427, 0, 65537, 1638428, 0, 65537, 1638429, 0, 65538, 1638431, 0, 65541, 1638432, 0, 65537, 1638433, 0, 65537, 1638434, 0, 65537, 1638435, 0, 65537, 1638436, 0, 65537, 1638437, 0, 65537, 1638438, 0, 65537, 1638439, 0, 65537, 1638440, 0, 65537, 1638441, 0, 65537, 1638442, 0, 65537, 1638443, 0, 65537, 1638444, 0, 65537, 1638445, 0, 65537, 1638446, 0, 65537, 1638447, 0, 65537, 1638448, 0, 65537, 1638449, 0, 65537, 1638450, 0, 65537, 1638451, 0, 65537, 1638452, 0, 65537, 1638453, 0, 65537, 1638454, 0, 65537, 1638455, 0, 65537, 1638456, 0, 65537, 1638457, 0, 65537, 1638458, 0, 65537, 1638459, 0, 65537, 1638460, 0, 65537, 1638461, 0, 65537, 1638462, 0, 65537, 1638463, 0, 65537, 1638464, 0, 65537, 1638465, 0, 65537, 1638466, 0, 65537, 1638467, 0, 65537, 1638468, 0, 65537, 1638469, 0, 65539, 1703936, 0, 65541, 1703937, 0, 65537, 1703938, 0, 65537, 1703939, 0, 65537, 1703940, 0, 131075, 1703941, 0, 131076, 1703942, 0, 131077, 1703943, 0, 3, 1703944, 0, 131073, 1703945, 0, 131073, 1703946, 0, 4, 1703947, 0, 4, 1703948, 0, 4, 1703949, 0, 4, 1703950, 0, 131073, 1703951, 0, 5, 1703952, 0, 65537, 1703953, 0, 65537, 1703954, 0, 65537, 1703955, 0, 65537, 1703956, 0, 65537, 1703957, 0, 65537, 1703958, 0, 65537, 1703959, 0, 65537, 1703960, 0, 65537, 1703961, 0, 65537, 1703962, 0, 65537, 1703963, 0, 65537, 1703964, 0, 65537, 1703965, 0, 65539, 1703967, 0, 65541, 1703968, 0, 65537, 1703969, 0, 65537, 1703970, 0, 65537, 1703971, 0, 65537, 1703972, 0, 65537, 1703973, 0, 65537, 1703974, 0, 65537, 1703975, 0, 65537, 1703976, 0, 65537, 1703977, 0, 65537, 1703978, 0, 65537, 1703979, 0, 65537, 1703980, 0, 65537, 1703981, 0, 65537, 1703982, 0, 65537, 1703983, 0, 65537, 1703984, 0, 65537, 1703985, 0, 65537, 1703986, 0, 65537, 1703987, 0, 65537, 1703988, 0, 65537, 1703989, 0, 65537, 1703990, 0, 65537, 1703991, 0, 65537, 1703992, 0, 65537, 1703993, 0, 65537, 1703994, 0, 65537, 1703995, 0, 65537, 1703996, 0, 65537, 1703997, 0, 65537, 1703998, 0, 65537, 1703999, 0, 65537, 1704000, 0, 65537, 1704001, 0, 65537, 1704002, 0, 65537, 1704003, 0, 65537, 1704004, 0, 65537, 1704005, 0, 65539, 1769472, 0, 65541, 1769473, 0, 3, 1769474, 0, 131073, 1769475, 0, 5, 1769476, 0, 65537, 1769477, 0, 65537, 1769478, 0, 65537, 1769479, 0, 65539, 1769480, 1, 0, 1769481, 1, 1, 1769482, 1, 2, 1769483, 0, 0, 1769484, 1, 0, 1769485, 1, 0, 1769486, 1, 0, 1769487, 0, 65536, 1769488, 0, 65537, 1769489, 0, 65537, 1769490, 0, 3, 1769491, 0, 131073, 1769492, 0, 5, 1769493, 0, 65537, 1769494, 0, 65537, 1769495, 0, 3, 1769496, 0, 131073, 1769497, 0, 4, 1769498, 0, 131073, 1769499, 0, 131073, 1769500, 0, 5, 1769501, 0, 65538, 1769503, 0, 65541, 1769504, 0, 65537, 1769505, 0, 65537, 1769506, 0, 65537, 1769507, 0, 65537, 1769508, 0, 65537, 1769509, 0, 65537, 1769510, 0, 65537, 1769511, 0, 65537, 1769512, 0, 65537, 1769513, 0, 65537, 1769514, 0, 65537, 1769515, 0, 65537, 1769516, 0, 65537, 1769517, 0, 65537, 1769518, 0, 65537, 1769519, 0, 65537, 1769520, 0, 65537, 1769521, 0, 65537, 1769522, 0, 65537, 1769523, 0, 65537, 1769524, 0, 65537, 1769525, 0, 65537, 1769526, 0, 65537, 1769527, 0, 65537, 1769528, 0, 65537, 1769529, 0, 65537, 1769530, 0, 65537, 1769531, 0, 65537, 1769532, 0, 65537, 1769533, 0, 65537, 1769534, 0, 65537, 1769535, 0, 65537, 1769536, 0, 65537, 1769537, 0, 65537, 1769538, 0, 65537, 1769539, 0, 65537, 1769540, 0, 65537, 1769541, 0, 65539, 1835008, 0, 65536, 1835009, 0, 65538, 1835011, 0, 65536, 1835012, 0, 65537, 1835013, 0, 65537, 1835014, 0, 65537, 1835015, 0, 65539, 1835016, 1, 65536, 1835017, 1, 65537, 1835018, 1, 65538, 1835019, 0, 0, 1835020, 1, 0, 1835021, 0, 0, 1835022, 1, 0, 1835023, 0, 131072, 1835024, 0, 4, 1835025, 0, 5, 1835026, 0, 65539, 1835028, 0, 65536, 1835029, 0, 65537, 1835030, 0, 65537, 1835031, 0, 65539, 1835032, 1, 0, 1835033, 1, 1, 1835034, 1, 1, 1835035, 1, 2, 1835036, 0, 131072, 1835037, 0, 131074, 1835039, 0, 65541, 1835040, 0, 65537, 1835041, 0, 65537, 1835042, 0, 65537, 1835043, 0, 65537, 1835044, 0, 65537, 1835045, 0, 65537, 1835046, 0, 65537, 1835047, 0, 65537, 1835048, 0, 65537, 1835049, 0, 65537, 1835050, 0, 65537, 1835051, 0, 65537, 1835052, 0, 65537, 1835053, 0, 65537, 1835054, 0, 65537, 1835055, 0, 65537, 1835056, 0, 65537, 1835057, 0, 65537, 1835058, 0, 65537, 1835059, 0, 65537, 1835060, 0, 65537, 1835061, 0, 65537, 1835062, 0, 65537, 1835063, 0, 65537, 1835064, 0, 65537, 1835065, 0, 65537, 1835066, 0, 65537, 1835067, 0, 65537, 1835068, 0, 65537, 1835069, 0, 65537, 1835070, 0, 65537, 1835071, 0, 65537, 1835072, 0, 65537, 1835073, 0, 65537, 1835074, 0, 65537, 1835075, 0, 65537, 1835076, 0, 65537, 1835077, 0, 65538, 1900544, 0, 65536, 1900545, 0, 131075, 1900546, 0, 1, 1900547, 0, 131077, 1900548, 0, 65537, 1900549, 0, 65537, 1900550, 0, 3, 1900551, 0, 131074, 1900552, 1, 131072, 1900553, 1, 131073, 1900554, 1, 131074, 1900555, 1, 0, 1900556, 1, 1, 1900557, 1, 1, 1900558, 1, 1, 1900559, 1, 1, 1900560, 1, 2, 1900561, 0, 65541, 1900562, 0, 131075, 1900563, 0, 131076, 1900564, 0, 131077, 1900565, 0, 65537, 1900566, 0, 65537, 1900567, 0, 65538, 1900568, 1, 65536, 1900569, 1, 65537, 1900570, 1, 65537, 1900571, 1, 0, 1900572, 1, 1, 1900573, 1, 2, 1900575, 0, 65541, 1900576, 0, 65537, 1900577, 0, 65537, 1900578, 0, 65537, 1900579, 0, 65537, 1900580, 0, 65537, 1900581, 0, 65537, 1900582, 0, 65537, 1900583, 0, 65537, 1900584, 0, 65537, 1900585, 0, 65537, 1900586, 0, 65537, 1900587, 0, 65537, 1900588, 0, 65537, 1900589, 0, 65537, 1900590, 0, 65537, 1900591, 0, 65537, 1900592, 0, 65537, 1900593, 0, 65537, 1900594, 0, 65537, 1900595, 0, 65537, 1900596, 0, 65537, 1900597, 0, 65537, 1900598, 0, 65537, 1900599, 0, 65537, 1900600, 0, 65537, 1900601, 0, 65537, 1900602, 0, 65537, 1900603, 0, 65537, 1900604, 0, 65537, 1900605, 0, 65537, 1900606, 0, 65537, 1900607, 0, 65537, 1900608, 0, 65537, 1900609, 0, 65537, 1900610, 0, 65537, 1900611, 0, 65537, 1900612, 0, 65537, 1900613, 0, 65539, 1966080, 0, 65536, 1966081, 0, 3, 1966082, 0, 131073, 1966083, 0, 5, 1966084, 0, 65537, 1966085, 0, 65537, 1966086, 0, 65539, 1966088, 0, 0, 1966089, 0, 1, 1966090, 0, 2, 1966091, 1, 131072, 1966092, 1, 131073, 1966093, 1, 0, 1966094, 1, 0, 1966095, 1, 131073, 1966096, 1, 131074, 1966097, 0, 65536, 1966098, 0, 65537, 1966099, 0, 65537, 1966100, 0, 65537, 1966101, 0, 65537, 1966102, 0, 65537, 1966103, 0, 65539, 1966104, 1, 131072, 1966105, 1, 0, 1966106, 1, 65537, 1966107, 1, 65537, 1966108, 1, 65537, 1966109, 1, 65538, 1966111, 0, 65541, 1966112, 0, 65537, 1966113, 0, 65537, 1966114, 0, 65537, 1966115, 0, 65537, 1966116, 0, 65537, 1966117, 0, 65537, 1966118, 0, 65537, 1966119, 0, 65537, 1966120, 0, 65537, 1966121, 0, 65537, 1966122, 0, 65537, 1966123, 0, 65537, 1966124, 0, 65537, 1966125, 0, 65537, 1966126, 0, 65537, 1966127, 0, 65537, 1966128, 0, 65537, 1966129, 0, 65537, 1966130, 0, 65537, 1966131, 0, 65537, 1966132, 0, 65537, 1966133, 0, 65537, 1966134, 0, 65537, 1966135, 0, 65537, 1966136, 0, 65537, 1966137, 0, 65537, 1966138, 0, 65537, 1966139, 0, 65537, 1966140, 0, 65537, 1966141, 0, 65537, 1966142, 0, 65537, 1966143, 0, 65537, 1966144, 0, 65537, 1966145, 0, 65537, 1966146, 0, 65537, 1966147, 0, 65537, 1966148, 0, 65537, 1966149, 0, 65538, 2031616, 0, 65536, 2031617, 0, 65538, 2031619, 0, 65541, 2031620, 0, 65537, 2031621, 0, 65537, 2031622, 0, 131075, 2031623, 0, 131076, 2031624, 0, 131077, 2031625, 0, 65537, 2031626, 0, 131075, 2031627, 0, 1, 2031628, 0, 2, 2031629, 1, 65536, 2031630, 1, 65538, 2031631, 0, 0, 2031632, 0, 1, 2031633, 0, 131077, 2031634, 0, 65537, 2031635, 0, 65537, 2031636, 0, 65537, 2031637, 0, 65537, 2031638, 0, 3, 2031639, 0, 131074, 2031640, 0, 0, 2031641, 1, 65536, 2031642, 1, 65537, 2031643, 1, 65537, 2031644, 1, 65537, 2031645, 1, 65538, 2031647, 0, 65541, 2031648, 0, 65537, 2031649, 0, 65537, 2031650, 0, 65537, 2031651, 0, 65537, 2031652, 0, 65537, 2031653, 0, 65537, 2031654, 0, 65537, 2031655, 0, 65537, 2031656, 0, 65537, 2031657, 0, 65537, 2031658, 0, 65537, 2031659, 0, 65537, 2031660, 0, 65537, 2031661, 0, 65537, 2031662, 0, 65537, 2031663, 0, 65537, 2031664, 0, 65537, 2031665, 0, 65537, 2031666, 0, 65537, 2031667, 0, 65537, 2031668, 0, 65537, 2031669, 0, 65537, 2031670, 0, 65537, 2031671, 0, 65537, 2031672, 0, 65537, 2031673, 0, 65537, 2031674, 0, 65537, 2031675, 0, 65537, 2031676, 0, 65537, 2031677, 0, 65537, 2031678, 0, 65537, 2031679, 0, 65537, 2031680, 0, 65537, 2031681, 0, 65537, 2031682, 0, 65537, 2031683, 0, 65537, 2031684, 0, 65537, 2031685, 0, 65539, 2097152, 0, 65536, 2097153, 0, 131075, 2097154, 0, 1, 2097155, 0, 131077, 2097156, 0, 65537, 2097157, 0, 65537, 2097158, 0, 65537, 2097159, 0, 65537, 2097160, 0, 65537, 2097161, 0, 65537, 2097162, 0, 65537, 2097163, 0, 65537, 2097164, 0, 65538, 2097165, 1, 131072, 2097166, 1, 131074, 2097167, 0, 65541, 2097168, 0, 65537, 2097169, 0, 65537, 2097170, 0, 65537, 2097171, 0, 65537, 2097172, 0, 65537, 2097173, 0, 65537, 2097174, 0, 65538, 2097175, 1, 0, 2097176, 1, 1, 2097177, 1, 0, 2097178, 1, 65537, 2097179, 1, 65537, 2097180, 1, 65537, 2097181, 1, 65538, 2097183, 0, 65541, 2097184, 0, 65537, 2097185, 0, 65537, 2097186, 0, 65537, 2097187, 0, 65537, 2097188, 0, 65537, 2097189, 0, 65537, 2097190, 0, 65537, 2097191, 0, 65537, 2097192, 0, 65537, 2097193, 0, 65537, 2097194, 0, 65537, 2097195, 0, 65537, 2097196, 0, 65537, 2097197, 0, 65537, 2097198, 0, 65537, 2097199, 0, 65537, 2097200, 0, 65537, 2097201, 0, 65537, 2097202, 0, 65537, 2097203, 0, 65537, 2097204, 0, 65537, 2097205, 0, 65537, 2097206, 0, 65537, 2097207, 0, 65537, 2097208, 0, 65537, 2097209, 0, 65537, 2097210, 0, 65537, 2097211, 0, 65537, 2097212, 0, 65537, 2097213, 0, 65537, 2097214, 0, 65537, 2097215, 0, 65537, 2097216, 0, 65537, 2097217, 0, 65537, 2097218, 0, 65537, 2097219, 0, 65537, 2097220, 0, 65537, 2097221, 0, 65539, 2162688, 0, 65541, 2162689, 0, 65537, 2162690, 0, 65537, 2162691, 0, 65537, 2162692, 0, 65537, 2162693, 0, 65537, 2162694, 0, 65537, 2162695, 0, 65537, 2162696, 0, 65537, 2162697, 0, 65537, 2162698, 0, 65537, 2162699, 0, 3, 2162700, 0, 131074, 2162701, 0, 0, 2162702, 0, 0, 2162703, 0, 131077, 2162704, 0, 65537, 2162705, 0, 65537, 2162706, 0, 65537, 2162707, 0, 65537, 2162708, 0, 65537, 2162709, 0, 65537, 2162710, 0, 65538, 2162711, 1, 131072, 2162712, 1, 131073, 2162713, 1, 131073, 2162714, 1, 131073, 2162715, 1, 131073, 2162716, 1, 131073, 2162717, 1, 131074, 2162718, 0, 0, 2162719, 0, 131077, 2162720, 0, 65537, 2162721, 0, 65537, 2162722, 0, 65537, 2162723, 0, 65537, 2162724, 0, 65537, 2162725, 0, 65537, 2162726, 0, 65537, 2162727, 0, 65537, 2162728, 0, 65537, 2162729, 0, 65537, 2162730, 0, 65537, 2162731, 0, 65537, 2162732, 0, 65537, 2162733, 0, 65537, 2162734, 0, 65537, 2162735, 0, 65537, 2162736, 0, 65537, 2162737, 0, 65537, 2162738, 0, 65537, 2162739, 0, 65537, 2162740, 0, 65537, 2162741, 0, 65537, 2162742, 0, 65537, 2162743, 0, 65537, 2162744, 0, 65537, 2162745, 0, 65537, 2162746, 0, 65537, 2162747, 0, 65537, 2162748, 0, 65537, 2162749, 0, 65537, 2162750, 0, 65537, 2162751, 0, 65537, 2162752, 0, 65537, 2162753, 0, 65537, 2162754, 0, 65537, 2162755, 0, 65537, 2162756, 0, 65537, 2162757, 0, 131075, 2162758, 0, 131076, 2162759, 0, 131076, 2162760, 0, 131076, 2162761, 0, 131076, 2162762, 0, 1, 2162763, 0, 131076, 2162764, 0, 1, 2162765, 0, 2, 2228224, 0, 65541, 2228225, 0, 65537, 2228226, 0, 65537, 2228227, 0, 65537, 2228228, 0, 65537, 2228229, 0, 65537, 2228230, 0, 65537, 2228231, 0, 65537, 2228232, 0, 65537, 2228233, 0, 65537, 2228234, 0, 65537, 2228235, 0, 65539, 2228236, 1, 0, 2228237, 1, 2, 2228238, 0, 65541, 2228239, 0, 65537, 2228240, 0, 65537, 2228241, 0, 65537, 2228242, 0, 65537, 2228243, 0, 65537, 2228244, 0, 65537, 2228245, 0, 65537, 2228246, 0, 131075, 2228247, 0, 131076, 2228248, 0, 2, 2228250, 0, 0, 2228251, 0, 131076, 2228252, 0, 1, 2228253, 0, 2, 2228254, 0, 131072, 2228255, 0, 5, 2228256, 0, 65537, 2228257, 0, 65537, 2228258, 0, 65537, 2228259, 0, 65537, 2228260, 0, 65537, 2228261, 0, 65537, 2228262, 0, 65537, 2228263, 0, 65537, 2228264, 0, 65537, 2228265, 0, 65537, 2228266, 0, 65537, 2228267, 0, 65537, 2228268, 0, 65537, 2228269, 0, 65537, 2228270, 0, 65537, 2228271, 0, 65537, 2228272, 0, 65537, 2228273, 0, 65537, 2228274, 0, 65537, 2228275, 0, 65537, 2228276, 0, 65537, 2228277, 0, 65537, 2228278, 0, 65537, 2228279, 0, 65537, 2228280, 0, 65537, 2228281, 0, 65537, 2228282, 0, 65537, 2228283, 0, 65537, 2228284, 0, 65537, 2228285, 0, 65537, 2228286, 0, 65537, 2228287, 0, 65537, 2228288, 0, 65537, 2228289, 0, 65537, 2228290, 0, 65537, 2228291, 0, 65537, 2228292, 0, 65537, 2228293, 0, 3, 2228294, 0, 4, 2228295, 0, 4, 2228296, 0, 4, 2228297, 0, 4, 2228298, 0, 131073, 2228299, 0, 4, 2228300, 0, 4, 2228301, 0, 131074, 2293760, 0, 65541, 2293761, 0, 65537, 2293762, 0, 65537, 2293763, 0, 65537, 2293764, 0, 65537, 2293765, 0, 65537, 2293766, 0, 65537, 2293767, 0, 65537, 2293768, 0, 65537, 2293769, 0, 65537, 2293770, 0, 65537, 2293771, 0, 65539, 2293772, 1, 131072, 2293773, 1, 131074, 2293774, 0, 65536, 2293775, 0, 65537, 2293776, 0, 65537, 2293777, 0, 65537, 2293778, 0, 65537, 2293779, 0, 65537, 2293780, 0, 65537, 2293781, 0, 65537, 2293782, 0, 65537, 2293783, 0, 65537, 2293784, 0, 131075, 2293785, 0, 131076, 2293786, 0, 131077, 2293787, 0, 65537, 2293788, 0, 65537, 2293789, 0, 65538, 2293791, 0, 65541, 2293792, 0, 65537, 2293793, 0, 65537, 2293794, 0, 65537, 2293795, 0, 65537, 2293796, 0, 65537, 2293797, 0, 65537, 2293798, 0, 65537, 2293799, 0, 65537, 2293800, 0, 65537, 2293801, 0, 65537, 2293802, 0, 65537, 2293803, 0, 65537, 2293804, 0, 65537, 2293805, 0, 65537, 2293806, 0, 65537, 2293807, 0, 65537, 2293808, 0, 65537, 2293809, 0, 65537, 2293810, 0, 65537, 2293811, 0, 65537, 2293812, 0, 65537, 2293813, 0, 65537, 2293814, 0, 65537, 2293815, 0, 65537, 2293816, 0, 65537, 2293817, 0, 65537, 2293818, 0, 65537, 2293819, 0, 65537, 2293820, 0, 65537, 2293821, 0, 65537, 2293822, 0, 65537, 2293823, 0, 65537, 2293824, 0, 65537, 2293825, 0, 65537, 2293826, 0, 65537, 2293827, 0, 65537, 2293828, 0, 65537, 2293829, 0, 65539, 2359296, 0, 65541, 2359297, 0, 65537, 2359298, 0, 65537, 2359299, 0, 65537, 2359300, 0, 65537, 2359301, 0, 65537, 2359302, 0, 65537, 2359303, 0, 65537, 2359304, 0, 65537, 2359305, 0, 65537, 2359306, 0, 65537, 2359307, 0, 131075, 2359308, 0, 131076, 2359309, 0, 131076, 2359310, 0, 131077, 2359311, 0, 65537, 2359312, 0, 65537, 2359313, 0, 65537, 2359314, 0, 65537, 2359315, 0, 65537, 2359316, 0, 65537, 2359317, 0, 65537, 2359318, 0, 65537, 2359319, 0, 65537, 2359320, 0, 65537, 2359321, 0, 65537, 2359322, 0, 65537, 2359323, 0, 65537, 2359324, 0, 65537, 2359325, 0, 65539, 2359327, 0, 65541, 2359328, 0, 65537, 2359329, 0, 65537, 2359330, 0, 65537, 2359331, 0, 65537, 2359332, 0, 65537, 2359333, 0, 65537, 2359334, 0, 65537, 2359335, 0, 65537, 2359336, 0, 65537, 2359337, 0, 65537, 2359338, 0, 65537, 2359339, 0, 65537, 2359340, 0, 65537, 2359341, 0, 65537, 2359342, 0, 65537, 2359343, 0, 65537, 2359344, 0, 65537, 2359345, 0, 65537, 2359346, 0, 65537, 2359347, 0, 65537, 2359348, 0, 65537, 2359349, 0, 65537, 2359350, 0, 65537, 2359351, 0, 65537, 2359352, 0, 65537, 2359353, 0, 65537, 2359354, 0, 65537, 2359355, 0, 65537, 2359356, 0, 65537, 2359357, 0, 65537, 2359358, 0, 65537, 2359359, 0, 65537, 2359360, 0, 65537, 2359361, 0, 65537, 2359362, 0, 65537, 2359363, 0, 65537, 2359364, 0, 65537, 2359365, 0, 65538, 2424832, 0, 65541, 2424833, 0, 65537, 2424834, 0, 65537, 2424835, 0, 65537, 2424836, 0, 65537, 2424837, 0, 65537, 2424838, 0, 65537, 2424839, 0, 65537, 2424840, 0, 3, 2424841, 0, 4, 2424842, 0, 4, 2424843, 0, 4, 2424844, 0, 131073, 2424845, 0, 131073, 2424846, 0, 4, 2424847, 0, 5, 2424848, 0, 65537, 2424849, 0, 65537, 2424850, 0, 65537, 2424851, 0, 65537, 2424852, 0, 65537, 2424853, 0, 3, 2424854, 0, 4, 2424855, 0, 5, 2424856, 0, 65537, 2424857, 0, 65537, 2424858, 0, 65537, 2424859, 0, 65537, 2424860, 0, 65537, 2424861, 0, 65539, 2424863, 0, 65541, 2424864, 0, 65537, 2424865, 0, 65537, 2424866, 0, 65537, 2424867, 0, 65537, 2424868, 0, 65537, 2424869, 0, 65537, 2424870, 0, 65537, 2424871, 0, 65537, 2424872, 0, 65537, 2424873, 0, 65537, 2424874, 0, 65537, 2424875, 0, 65537, 2424876, 0, 65537, 2424877, 0, 65537, 2424878, 0, 65537, 2424879, 0, 65537, 2424880, 0, 65537, 2424881, 0, 65537, 2424882, 0, 65537, 2424883, 0, 65537, 2424884, 0, 65537, 2424885, 0, 65537, 2424886, 0, 65537, 2424887, 0, 65537, 2424888, 0, 65537, 2424889, 0, 65537, 2424890, 0, 65537, 2424891, 0, 65537, 2424892, 0, 65537, 2424893, 0, 65537, 2424894, 0, 65537, 2424895, 0, 65537, 2424896, 0, 65537, 2424897, 0, 65537, 2424898, 0, 65537, 2424899, 0, 65537, 2424900, 0, 65537, 2424901, 0, 65539, 2490368, 0, 65536, 2490369, 0, 65537, 2490370, 0, 65537, 2490371, 0, 65537, 2490372, 0, 65537, 2490373, 0, 65537, 2490374, 0, 65537, 2490375, 0, 65537, 2490376, 0, 65538, 2490377, 1, 0, 2490378, 1, 1, 2490379, 1, 1, 2490380, 1, 1, 2490381, 1, 1, 2490382, 1, 2, 2490383, 0, 65536, 2490384, 0, 65537, 2490385, 0, 65537, 2490386, 0, 65537, 2490387, 0, 3, 2490388, 0, 4, 2490389, 0, 131074, 2490391, 0, 65541, 2490392, 0, 65537, 2490393, 0, 65537, 2490394, 0, 65537, 2490395, 0, 65537, 2490396, 0, 65537, 2490397, 0, 65538, 2490399, 0, 65536, 2490400, 0, 65537, 2490401, 0, 65537, 2490402, 0, 65537, 2490403, 0, 65537, 2490404, 0, 65537, 2490405, 0, 65537, 2490406, 0, 65537, 2490407, 0, 65537, 2490408, 0, 65537, 2490409, 0, 65537, 2490410, 0, 65537, 2490411, 0, 65537, 2490412, 0, 65537, 2490413, 0, 65537, 2490414, 0, 65537, 2490415, 0, 65537, 2490416, 0, 65537, 2490417, 0, 65537, 2490418, 0, 65537, 2490419, 0, 65537, 2490420, 0, 65537, 2490421, 0, 65537, 2490422, 0, 65537, 2490423, 0, 65537, 2490424, 0, 65537, 2490425, 0, 65537, 2490426, 0, 65537, 2490427, 0, 65537, 2490428, 0, 65537, 2490429, 0, 65537, 2490430, 0, 65537, 2490431, 0, 65537, 2490432, 0, 65537, 2490433, 0, 65537, 2490434, 0, 65537, 2490435, 0, 65537, 2490436, 0, 65537, 2490437, 0, 65539, 2555904, 0, 65541, 2555905, 0, 65537, 2555906, 0, 65537, 2555907, 0, 65537, 2555908, 0, 65537, 2555909, 0, 65537, 2555910, 0, 65537, 2555911, 0, 65537, 2555912, 0, 65538, 2555913, 1, 65536, 2555914, 1, 65537, 2555915, 1, 65537, 2555916, 1, 65537, 2555917, 1, 65537, 2555918, 1, 65538, 2555919, 0, 131072, 2555920, 0, 4, 2555921, 0, 4, 2555922, 0, 131073, 2555923, 0, 131074, 2555927, 0, 131072, 2555928, 0, 5, 2555929, 0, 65537, 2555930, 0, 65537, 2555931, 0, 65537, 2555932, 0, 65537, 2555933, 0, 65538, 2555935, 0, 65541, 2555936, 0, 65537, 2555937, 0, 65537, 2555938, 0, 65537, 2555939, 0, 65537, 2555940, 0, 65537, 2555941, 0, 65537, 2555942, 0, 65537, 2555943, 0, 65537, 2555944, 0, 65537, 2555945, 0, 65537, 2555946, 0, 65537, 2555947, 0, 65537, 2555948, 0, 65537, 2555949, 0, 65537, 2555950, 0, 65537, 2555951, 0, 65537, 2555952, 0, 65537, 2555953, 0, 65537, 2555954, 0, 65537, 2555955, 0, 65537, 2555956, 0, 65537, 2555957, 0, 65537, 2555958, 0, 65537, 2555959, 0, 65537, 2555960, 0, 65537, 2555961, 0, 65537, 2555962, 0, 65537, 2555963, 0, 65537, 2555964, 0, 65537, 2555965, 0, 65537, 2555966, 0, 65537, 2555967, 0, 65537, 2555968, 0, 65537, 2555969, 0, 65537, 2555970, 0, 65537, 2555971, 0, 65537, 2555972, 0, 65537, 2555973, 0, 65539, 2621440, 0, 65536, 2621441, 0, 65537, 2621442, 0, 65537, 2621443, 0, 65537, 2621444, 0, 65537, 2621445, 0, 3, 2621446, 0, 131073, 2621447, 0, 5, 2621448, 0, 65539, 2621449, 1, 65536, 2621450, 1, 65537, 2621451, 1, 65537, 2621452, 1, 65537, 2621453, 1, 65537, 2621454, 1, 0, 2621455, 1, 1, 2621456, 1, 1, 2621457, 1, 2, 2621458, 0, 0, 2621462, 1, 0, 2621463, 1, 2, 2621464, 0, 65536, 2621465, 0, 65537, 2621466, 0, 65537, 2621467, 0, 65537, 2621468, 0, 65537, 2621469, 0, 65539, 2621471, 0, 65541, 2621472, 0, 65537, 2621473, 0, 65537, 2621474, 0, 65537, 2621475, 0, 65537, 2621476, 0, 65537, 2621477, 0, 65537, 2621478, 0, 65537, 2621479, 0, 65537, 2621480, 0, 65537, 2621481, 0, 65537, 2621482, 0, 65537, 2621483, 0, 65537, 2621484, 0, 65537, 2621485, 0, 65537, 2621486, 0, 65537, 2621487, 0, 65537, 2621488, 0, 65537, 2621489, 0, 65537, 2621490, 0, 65537, 2621491, 0, 65537, 2621492, 0, 65537, 2621493, 0, 65537, 2621494, 0, 65537, 2621495, 0, 65537, 2621496, 0, 65537, 2621497, 0, 65537, 2621498, 0, 65537, 2621499, 0, 65537, 2621500, 0, 65537, 2621501, 0, 65537, 2621502, 0, 65537, 2621503, 0, 65537, 2621504, 0, 65537, 2621505, 0, 65537, 2621506, 0, 65537, 2621507, 0, 65537, 2621508, 0, 65537, 2621509, 0, 65538, 2686976, 0, 65536, 2686977, 0, 65537, 2686978, 0, 65537, 2686979, 0, 65537, 2686980, 0, 65537, 2686981, 0, 65538, 2686983, 0, 65541, 2686984, 0, 65538, 2686985, 1, 131072, 2686986, 1, 131073, 2686987, 1, 131073, 2686988, 1, 131073, 2686989, 1, 131073, 2686990, 1, 0, 2686991, 1, 65537, 2686992, 1, 65537, 2686993, 1, 65538, 2686994, 0, 0, 2686995, 0, 131076, 2686996, 0, 131076, 2686997, 0, 2, 2686998, 1, 131072, 2686999, 1, 131074, 2687000, 0, 65536, 2687001, 0, 65537, 2687002, 0, 65537, 2687003, 0, 65537, 2687004, 0, 65537, 2687005, 0, 65538, 2687007, 0, 65541, 2687008, 0, 65537, 2687009, 0, 65537, 2687010, 0, 65537, 2687011, 0, 65537, 2687012, 0, 65537, 2687013, 0, 65537, 2687014, 0, 65537, 2687015, 0, 65537, 2687016, 0, 65537, 2687017, 0, 65537, 2687018, 0, 65537, 2687019, 0, 65537, 2687020, 0, 65537, 2687021, 0, 65537, 2687022, 0, 65537, 2687023, 0, 65537, 2687024, 0, 65537, 2687025, 0, 65537, 2687026, 0, 65537, 2687027, 0, 65537, 2687028, 0, 65537, 2687029, 0, 65537, 2687030, 0, 65537, 2687031, 0, 65537, 2687032, 0, 65537, 2687033, 0, 65537, 2687034, 0, 65537, 2687035, 0, 65537, 2687036, 0, 65537, 2687037, 0, 65537, 2687038, 0, 65537, 2687039, 0, 65537, 2687040, 0, 65537, 2687041, 0, 65537, 2687042, 0, 65537, 2687043, 0, 65537, 2687044, 0, 65537, 2687045, 0, 65539, 2752512, 0, 65541, 2752513, 0, 65537, 2752514, 0, 65537, 2752515, 0, 65537, 2752516, 0, 65537, 2752517, 0, 131075, 2752518, 0, 1, 2752519, 0, 131077, 2752520, 0, 131075, 2752521, 0, 1, 2752522, 0, 1, 2752523, 0, 131076, 2752524, 0, 131076, 2752525, 0, 2, 2752526, 1, 65536, 2752527, 1, 65537, 2752528, 1, 65537, 2752529, 1, 65538, 2752530, 0, 65541, 2752531, 0, 65537, 2752532, 0, 65537, 2752533, 0, 131075, 2752534, 0, 1, 2752535, 0, 1, 2752536, 0, 131077, 2752537, 0, 65537, 2752538, 0, 65537, 2752539, 0, 65537, 2752540, 0, 65537, 2752541, 0, 65539, 2752543, 0, 65541, 2752544, 0, 65537, 2752545, 0, 65537, 2752546, 0, 65537, 2752547, 0, 65537, 2752548, 0, 65537, 2752549, 0, 65537, 2752550, 0, 65537, 2752551, 0, 65537, 2752552, 0, 65537, 2752553, 0, 65537, 2752554, 0, 65537, 2752555, 0, 65537, 2752556, 0, 65537, 2752557, 0, 65537, 2752558, 0, 65537, 2752559, 0, 65537, 2752560, 0, 65537, 2752561, 0, 65537, 2752562, 0, 65537, 2752563, 0, 65537, 2752564, 0, 65537, 2752565, 0, 65537, 2752566, 0, 65537, 2752567, 0, 65537, 2752568, 0, 65537, 2752569, 0, 65537, 2752570, 0, 65537, 2752571, 0, 65537, 2752572, 0, 65537, 2752573, 0, 65537, 2752574, 0, 65537, 2752575, 0, 65537, 2752576, 0, 65537, 2752577, 0, 65537, 2752578, 0, 65537, 2752579, 0, 65537, 2752580, 0, 65537, 2752581, 0, 65538, 2818048, 0, 65541, 2818049, 0, 65537, 2818050, 0, 65537, 2818051, 0, 65537, 2818052, 0, 65537, 2818053, 0, 65537, 2818054, 0, 65537, 2818055, 0, 65537, 2818056, 0, 65537, 2818057, 0, 65537, 2818058, 0, 65537, 2818059, 0, 65537, 2818060, 0, 65537, 2818061, 0, 65539, 2818062, 1, 131072, 2818063, 1, 131073, 2818064, 1, 131073, 2818065, 1, 131074, 2818066, 0, 65541, 2818067, 0, 65537, 2818068, 0, 65537, 2818069, 0, 65537, 2818070, 0, 65537, 2818071, 0, 65537, 2818072, 0, 65537, 2818073, 0, 65537, 2818074, 0, 65537, 2818075, 0, 65537, 2818076, 0, 65537, 2818077, 0, 65539, 2818079, 0, 65536, 2818080, 0, 65537, 2818081, 0, 65537, 2818082, 0, 65537, 2818083, 0, 65537, 2818084, 0, 65537, 2818085, 0, 65537, 2818086, 0, 65537, 2818087, 0, 65537, 2818088, 0, 65537, 2818089, 0, 65537, 2818090, 0, 65537, 2818091, 0, 65537, 2818092, 0, 65537, 2818093, 0, 65537, 2818094, 0, 65537, 2818095, 0, 65537, 2818096, 0, 65537, 2818097, 0, 65537, 2818098, 0, 65537, 2818099, 0, 65537, 2818100, 0, 65537, 2818101, 0, 65537, 2818102, 0, 65537, 2818103, 0, 65537, 2818104, 0, 65537, 2818105, 0, 65537, 2818106, 0, 65537, 2818107, 0, 65537, 2818108, 0, 65537, 2818109, 0, 65537, 2818110, 0, 65537, 2818111, 0, 65537, 2818112, 0, 65537, 2818113, 0, 65537, 2818114, 0, 65537, 2818115, 0, 65537, 2818116, 0, 65537, 2818117, 0, 65538, 2883584, 0, 65536, 2883585, 0, 65537, 2883586, 0, 65537, 2883587, 0, 65537, 2883588, 0, 65537, 2883589, 0, 65537, 2883590, 0, 65537, 2883591, 0, 65537, 2883592, 0, 65537, 2883593, 0, 65537, 2883594, 0, 65537, 2883595, 0, 65537, 2883596, 0, 65537, 2883597, 0, 131075, 2883598, 0, 1, 2883599, 0, 131076, 2883600, 0, 131076, 2883601, 0, 1, 2883602, 0, 131077, 2883603, 0, 65537, 2883604, 0, 65537, 2883605, 0, 65537, 2883606, 0, 65537, 2883607, 0, 65537, 2883608, 0, 65537, 2883609, 0, 65537, 2883610, 0, 65537, 2883611, 0, 65537, 2883612, 0, 65537, 2883613, 0, 65539, 2883615, 0, 65541, 2883616, 0, 65537, 2883617, 0, 65537, 2883618, 0, 65537, 2883619, 0, 65537, 2883620, 0, 65537, 2883621, 0, 65537, 2883622, 0, 65537, 2883623, 0, 65537, 2883624, 0, 65537, 2883625, 0, 65537, 2883626, 0, 65537, 2883627, 0, 65537, 2883628, 0, 65537, 2883629, 0, 65537, 2883630, 0, 65537, 2883631, 0, 65537, 2883632, 0, 65537, 2883633, 0, 65537, 2883634, 0, 65537, 2883635, 0, 65537, 2883636, 0, 65537, 2883637, 0, 65537, 2883638, 0, 65537, 2883639, 0, 65537, 2883640, 0, 65537, 2883641, 0, 65537, 2883642, 0, 65537, 2883643, 0, 65537, 2883644, 0, 65537, 2883645, 0, 65537, 2883646, 0, 65537, 2883647, 0, 65537, 2883648, 0, 65537, 2883649, 0, 65537, 2883650, 0, 65537, 2883651, 0, 65537, 2883652, 0, 65537, 2883653, 0, 65539, 2949120, 0, 65541, 2949121, 0, 65537, 2949122, 0, 65537, 2949123, 0, 65537, 2949124, 0, 65537, 2949125, 0, 65537, 2949126, 0, 65537, 2949127, 0, 65537, 2949128, 0, 65537, 2949129, 0, 65537, 2949130, 0, 65537, 2949131, 0, 65537, 2949132, 0, 65537, 2949133, 0, 65537, 2949134, 0, 65537, 2949135, 0, 65537, 2949136, 0, 65537, 2949137, 0, 65537, 2949138, 0, 65537, 2949139, 0, 65537, 2949140, 0, 65537, 2949141, 0, 65537, 2949142, 0, 65537, 2949143, 0, 65537, 2949144, 0, 65537, 2949145, 0, 65537, 2949146, 0, 65537, 2949147, 0, 65537, 2949148, 0, 65537, 2949149, 0, 65539, 2949151, 0, 65536, 2949152, 0, 65537, 2949153, 0, 65537, 2949154, 0, 65537, 2949155, 0, 65537, 2949156, 0, 65537, 2949157, 0, 65537, 2949158, 0, 65537, 2949159, 0, 65537, 2949160, 0, 65537, 2949161, 0, 65537, 2949162, 0, 65537, 2949163, 0, 65537, 2949164, 0, 65537, 2949165, 0, 65537, 2949166, 0, 65537, 2949167, 0, 65537, 2949168, 0, 65537, 2949169, 0, 65537, 2949170, 0, 65537, 2949171, 0, 65537, 2949172, 0, 65537, 2949173, 0, 65537, 2949174, 0, 65537, 2949175, 0, 65537, 2949176, 0, 65537, 2949177, 0, 65537, 2949178, 0, 65537, 2949179, 0, 65537, 2949180, 0, 65537, 2949181, 0, 65537, 2949182, 0, 65537, 2949183, 0, 65537, 2949184, 0, 65537, 2949185, 0, 65537, 2949186, 0, 65537, 2949187, 0, 65537, 2949188, 0, 65537, 2949189, 0, 65539, 3014656, 0, 65536, 3014657, 0, 65537, 3014658, 0, 65537, 3014659, 0, 65537, 3014660, 0, 65537, 3014661, 0, 65537, 3014662, 0, 65537, 3014663, 0, 65537, 3014664, 0, 65537, 3014665, 0, 65537, 3014666, 0, 65537, 3014667, 0, 65537, 3014668, 0, 65537, 3014669, 0, 65537, 3014670, 0, 65537, 3014671, 0, 65537, 3014672, 0, 65537, 3014673, 0, 65537, 3014674, 0, 65537, 3014675, 0, 65537, 3014676, 0, 65537, 3014677, 0, 65537, 3014678, 0, 65537, 3014679, 0, 65537, 3014680, 0, 65537, 3014681, 0, 65537, 3014682, 0, 65537, 3014683, 0, 65537, 3014684, 0, 65537, 3014685, 0, 65539, 3014687, 0, 65536, 3014688, 0, 65537, 3014689, 0, 65537, 3014690, 0, 65537, 3014691, 0, 65537, 3014692, 0, 65537, 3014693, 0, 65537, 3014694, 0, 65537, 3014695, 0, 65537, 3014696, 0, 65537, 3014697, 0, 65537, 3014698, 0, 65537, 3014699, 0, 65537, 3014700, 0, 65537, 3014701, 0, 65537, 3014702, 0, 65537, 3014703, 0, 65537, 3014704, 0, 65537, 3014705, 0, 65537, 3014706, 0, 65537, 3014707, 0, 65537, 3014708, 0, 65537, 3014709, 0, 65537, 3014710, 0, 65537, 3014711, 0, 65537, 3014712, 0, 65537, 3014713, 0, 65537, 3014714, 0, 65537, 3014715, 0, 65537, 3014716, 0, 65537, 3014717, 0, 65537, 3014718, 0, 65537, 3014719, 0, 65537, 3014720, 0, 65537, 3014721, 0, 65537, 3014722, 0, 65537, 3014723, 0, 65537, 3014724, 0, 65537, 3014725, 0, 65539, 3080192, 0, 65536, 3080193, 0, 65537, 3080194, 0, 65537, 3080195, 0, 65537, 3080196, 0, 65537, 3080197, 0, 65537, 3080198, 0, 65537, 3080199, 0, 65537, 3080200, 0, 65537, 3080201, 0, 65537, 3080202, 0, 65537, 3080203, 0, 65537, 3080204, 0, 65537, 3080205, 0, 65537, 3080206, 0, 65537, 3080207, 0, 65537, 3080208, 0, 65537, 3080209, 0, 65537, 3080210, 0, 65537, 3080211, 0, 65537, 3080212, 0, 65537, 3080213, 0, 65537, 3080214, 0, 65537, 3080215, 0, 65537, 3080216, 0, 65537, 3080217, 0, 65537, 3080218, 0, 65537, 3080219, 0, 65537, 3080220, 0, 65537, 3080221, 0, 65538, 3080223, 0, 65541, 3080224, 0, 65537, 3080225, 0, 65537, 3080226, 0, 65537, 3080227, 0, 65537, 3080228, 0, 65537, 3080229, 0, 65537, 3080230, 0, 65537, 3080231, 0, 65537, 3080232, 0, 65537, 3080233, 0, 65537, 3080234, 0, 65537, 3080235, 0, 65537, 3080236, 0, 65537, 3080237, 0, 65537, 3080238, 0, 65537, 3080239, 0, 65537, 3080240, 0, 65537, 3080241, 0, 65537, 3080242, 0, 65537, 3080243, 0, 65537, 3080244, 0, 65537, 3080245, 0, 65537, 3080246, 0, 65537, 3080247, 0, 65537, 3080248, 0, 65537, 3080249, 0, 65537, 3080250, 0, 65537, 3080251, 0, 65537, 3080252, 0, 65537, 3080253, 0, 65537, 3080254, 0, 65537, 3080255, 0, 65537, 3080256, 0, 65537, 3080257, 0, 65537, 3080258, 0, 65537, 3080259, 0, 65537, 3080260, 0, 65537, 3080261, 0, 65539, 3145728, 0, 65536, 3145729, 0, 65537, 3145730, 0, 65537, 3145731, 0, 65537, 3145732, 0, 65537, 3145733, 0, 65537, 3145734, 0, 65537, 3145735, 0, 65537, 3145736, 0, 65537, 3145737, 0, 65537, 3145738, 0, 65537, 3145739, 0, 65537, 3145740, 0, 65537, 3145741, 0, 65537, 3145742, 0, 65537, 3145743, 0, 65537, 3145744, 0, 65537, 3145745, 0, 65537, 3145746, 0, 65537, 3145747, 0, 65537, 3145748, 0, 65537, 3145749, 0, 65537, 3145750, 0, 65537, 3145751, 0, 65537, 3145752, 0, 65537, 3145753, 0, 65537, 3145754, 0, 65537, 3145755, 0, 65537, 3145756, 0, 65537, 3145757, 0, 65538, 3145759, 0, 65541, 3145760, 0, 65537, 3145761, 0, 65537, 3145762, 0, 65537, 3145763, 0, 65537, 3145764, 0, 65537, 3145765, 0, 65537, 3145766, 0, 65537, 3145767, 0, 65537, 3145768, 0, 65537, 3145769, 0, 65537, 3145770, 0, 65537, 3145771, 0, 65537, 3145772, 0, 65537, 3145773, 0, 65537, 3145774, 0, 65537, 3145775, 0, 65537, 3145776, 0, 65537, 3145777, 0, 65537, 3145778, 0, 65537, 3145779, 0, 65537, 3145780, 0, 65537, 3145781, 0, 65537, 3145782, 0, 65537, 3145783, 0, 65537, 3145784, 0, 65537, 3145785, 0, 65537, 3145786, 0, 65537, 3145787, 0, 65537, 3145788, 0, 65537, 3145789, 0, 65537, 3145790, 0, 65537, 3145791, 0, 65537, 3145792, 0, 65537, 3145793, 0, 65537, 3145794, 0, 65537, 3145795, 0, 65537, 3145796, 0, 65537, 3145797, 0, 65538, 3211264, 0, 131072, 3211265, 0, 131073, 3211266, 0, 131073, 3211267, 0, 131073, 3211268, 0, 4, 3211269, 0, 4, 3211270, 0, 4, 3211271, 0, 131073, 3211272, 0, 131073, 3211273, 0, 131073, 3211274, 0, 4, 3211275, 0, 4, 3211276, 0, 131073, 3211277, 0, 4, 3211278, 0, 131073, 3211279, 0, 4, 3211280, 0, 4, 3211281, 0, 4, 3211282, 0, 131073, 3211283, 0, 131073, 3211284, 0, 131073, 3211285, 0, 131073, 3211286, 0, 4, 3211287, 0, 131073, 3211288, 0, 4, 3211289, 0, 131073, 3211290, 0, 4, 3211291, 0, 131073, 3211292, 0, 131073, 3211293, 0, 131074, 3211295, 0, 65541, 3211296, 0, 65537, 3211297, 0, 65537, 3211298, 0, 65537, 3211299, 0, 65537, 3211300, 0, 65537, 3211301, 0, 65537, 3211302, 0, 65537, 3211303, 0, 65537, 3211304, 0, 65537, 3211305, 0, 65537, 3211306, 0, 65537, 3211307, 0, 65537, 3211308, 0, 65537, 3211309, 0, 65537, 3211310, 0, 65537, 3211311, 0, 65537, 3211312, 0, 65537, 3211313, 0, 65537, 3211314, 0, 65537, 3211315, 0, 65537, 3211316, 0, 65537, 3211317, 0, 65537, 3211318, 0, 65537, 3211319, 0, 65537, 3211320, 0, 65537, 3211321, 0, 65537, 3211322, 0, 65537, 3211323, 0, 65537, 3211324, 0, 65537, 3211325, 0, 65537, 3211326, 0, 65537, 3211327, 0, 65537, 3211328, 0, 65537, 3211329, 0, 65537, 3211330, 0, 65537, 3211331, 0, 65537, 3211332, 0, 65537, 3211333, 0, 65538, 3276830, 0, 0, 3276831, 0, 131077, 3276832, 0, 65537, 3276833, 0, 65537, 3276834, 0, 65537, 3276835, 0, 65537, 3276836, 0, 65537, 3276837, 0, 65537, 3276838, 0, 65537, 3276839, 0, 65537, 3276840, 0, 65537, 3276841, 0, 65537, 3276842, 0, 65537, 3276843, 0, 65537, 3276844, 0, 65537, 3276845, 0, 65537, 3276846, 0, 65537, 3276847, 0, 65537, 3276848, 0, 65537, 3276849, 0, 65537, 3276850, 0, 65537, 3276851, 0, 65537, 3276852, 0, 65537, 3276853, 0, 65537, 3276854, 0, 65537, 3276855, 0, 65537, 3276856, 0, 65537, 3276857, 0, 65537, 3276858, 0, 65537, 3276859, 0, 65537, 3276860, 0, 65537, 3276861, 0, 65537, 3276862, 0, 65537, 3276863, 0, 65537, 3276864, 0, 65537, 3276865, 0, 65537, 3276866, 0, 65537, 3276867, 0, 65537, 3276868, 0, 65537, 3276869, 0, 65539, 3342366, 0, 131072, 3342367, 0, 131073, 3342368, 0, 131073, 3342369, 0, 4, 3342370, 0, 4, 3342371, 0, 4, 3342372, 0, 4, 3342373, 0, 4, 3342374, 0, 131073, 3342375, 0, 4, 3342376, 0, 131073, 3342377, 0, 131073, 3342378, 0, 131073, 3342379, 0, 131073, 3342380, 0, 4, 3342381, 0, 4, 3342382, 0, 131073, 3342383, 0, 4, 3342384, 0, 4, 3342385, 0, 131073, 3342386, 0, 131073, 3342387, 0, 4, 3342388, 0, 131073, 3342389, 0, 4, 3342390, 0, 131073, 3342391, 0, 4, 3342392, 0, 4, 3342393, 0, 4, 3342394, 0, 4, 3342395, 0, 4, 3342396, 0, 4, 3342397, 0, 4, 3342398, 0, 4, 3342399, 0, 4, 3342400, 0, 131073, 3342401, 0, 4, 3342402, 0, 4, 3342403, 0, 4, 3342404, 0, 4, 3342405, 0, 131074 ) + +[node name="StaticBody2D" type="StaticBody2D" parent="World/SemiSolidsTileMap"] +collision_layer = 8 + +[node name="SolidsTileMap" parent="World" instance=ExtResource( 12 )] +tile_set = SubResource( 36 ) +tile_data = PoolIntArray( -65517, 0, 0, -65516, 0, 131076, -65515, 0, 131076, -65514, 0, 1, -65513, 0, 1, -65512, 0, 131076, -65511, 0, 1, -65510, 0, 131076, -65509, 0, 1, -65508, 0, 2, 65533, 0, 0, 65534, 0, 1, 65535, 0, 2, 19, 0, 65541, 20, 0, 65537, 21, 0, 65537, 22, 0, 65537, 23, 0, 65537, 24, 0, 65537, 25, 0, 65537, 26, 0, 65537, 27, 0, 65537, 28, 0, 131075, 29, 0, 131076, 30, 0, 2, 131069, 0, 65541, 131070, 0, 65537, 131071, 0, 65538, 65555, 0, 131072, 65556, 0, 4, 65557, 0, 5, 65558, 0, 65537, 65559, 0, 65537, 65560, 0, 65537, 65561, 0, 65537, 65562, 0, 65537, 65563, 0, 65537, 65564, 0, 65537, 65565, 0, 65537, 65566, 0, 65539, 196605, 0, 65541, 196606, 0, 65537, 196607, 0, 65538, 131093, 0, 131072, 131094, 0, 131073, 131095, 0, 4, 131096, 0, 4, 131097, 0, 131073, 131098, 0, 131073, 131099, 0, 4, 131100, 0, 5, 131101, 0, 65537, 131102, 0, 65539, 262141, 0, 65536, 262142, 0, 65537, 262143, 0, 65538, 196636, 0, 65536, 196637, 0, 65537, 196638, 0, 65538, 327677, 0, 65541, 327678, 0, 65537, 327679, 0, 65539, 262172, 0, 65541, 262173, 0, 65537, 262174, 0, 65539, 393213, 0, 65536, 393214, 0, 65537, 393215, 0, 65539, 327708, 0, 65541, 327709, 0, 65537, 327710, 0, 65538, 458749, 0, 65536, 458750, 0, 65537, 458751, 0, 65538, 393244, 0, 65541, 393245, 0, 65537, 393246, 0, 65538, 524285, 0, 65536, 524286, 0, 65537, 524287, 0, 65539, 458780, 0, 65536, 458781, 0, 65537, 458782, 0, 65539, 589821, 0, 65536, 589822, 0, 65537, 589823, 0, 65538, 524316, 0, 65536, 524317, 0, 65537, 524318, 0, 65538, 655357, 0, 65536, 655358, 0, 65537, 655359, 0, 65539, 589852, 0, 65541, 589853, 0, 65537, 589854, 0, 65538, 720893, 0, 65541, 720894, 0, 65537, 720895, 0, 65538, 655388, 0, 65541, 655389, 0, 65537, 655390, 0, 65538, 786429, 0, 65541, 786430, 0, 65537, 786431, 0, 65539, 720924, 0, 65536, 720925, 0, 65537, 720926, 0, 65539, 851965, 0, 65536, 851966, 0, 65537, 851967, 0, 65539, 786460, 0, 65541, 786461, 0, 65537, 786462, 0, 65538, 917501, 0, 65536, 917502, 0, 65537, 917503, 0, 65539, 851996, 0, 65541, 851997, 0, 65537, 851998, 0, 65538, 983037, 0, 65536, 983038, 0, 65537, 983039, 0, 65539, 917532, 0, 65536, 917533, 0, 65537, 917534, 0, 65539, 1048573, 0, 65536, 1048574, 0, 65537, 1048575, 0, 65538, 983053, 0, 0, 983054, 0, 2, 983059, 0, 0, 983060, 0, 2, 983062, 0, 0, 983063, 0, 2, 983068, 0, 65541, 983069, 0, 65537, 983070, 0, 65538, 1114109, 0, 131072, 1114110, 0, 131073, 1114111, 0, 1, 1048576, 0, 131076, 1048577, 0, 131076, 1048578, 0, 131076, 1048579, 0, 131076, 1048580, 0, 131076, 1048581, 0, 1, 1048582, 0, 1, 1048583, 0, 1, 1048584, 0, 1, 1048585, 0, 1, 1048586, 0, 1, 1048587, 0, 131076, 1048588, 0, 131076, 1048589, 0, 131077, 1048590, 0, 131075, 1048591, 0, 131076, 1048592, 0, 131076, 1048593, 0, 131076, 1048594, 0, 1, 1048595, 0, 131077, 1048596, 0, 131075, 1048597, 0, 1, 1048598, 0, 131077, 1048599, 0, 131075, 1048600, 0, 2, 1048603, 0, 0, 1048604, 0, 131077, 1048605, 0, 65537, 1048606, 0, 131075, 1048607, 0, 1, 1048608, 0, 131076, 1048609, 0, 1, 1048610, 0, 1, 1048611, 0, 1, 1048612, 0, 1, 1048613, 0, 131076, 1048614, 0, 1, 1048615, 0, 1, 1048616, 0, 1, 1048617, 0, 131076, 1048618, 0, 1, 1048619, 0, 131076, 1048620, 0, 1, 1048621, 0, 131076, 1048622, 0, 131076, 1048623, 0, 1, 1048624, 0, 131076, 1048625, 0, 131076, 1048626, 0, 1, 1048627, 0, 131076, 1048628, 0, 1, 1048629, 0, 131076, 1048630, 0, 131076, 1048631, 0, 131076, 1048632, 0, 131076, 1048633, 0, 131076, 1048634, 0, 1, 1048635, 0, 131076, 1048636, 0, 2, 1179647, 0, 65541, 1114112, 0, 65537, 1114113, 0, 65537, 1114114, 0, 65537, 1114115, 0, 65537, 1114116, 0, 65537, 1114117, 0, 65537, 1114118, 0, 65537, 1114119, 0, 65537, 1114120, 0, 65537, 1114121, 0, 65537, 1114122, 0, 65537, 1114123, 0, 65537, 1114124, 0, 65537, 1114125, 0, 65537, 1114126, 0, 65537, 1114127, 0, 65537, 1114128, 0, 65537, 1114129, 0, 65537, 1114130, 0, 65537, 1114131, 0, 65537, 1114132, 0, 65537, 1114133, 0, 65537, 1114134, 0, 65537, 1114135, 0, 65537, 1114136, 0, 65539, 1114139, 0, 65536, 1114140, 0, 65537, 1114141, 0, 65537, 1114142, 0, 3, 1114143, 0, 4, 1114144, 0, 4, 1114145, 0, 131073, 1114146, 0, 4, 1114147, 0, 131073, 1114148, 0, 131073, 1114149, 0, 4, 1114150, 0, 131073, 1114151, 0, 4, 1114152, 0, 4, 1114153, 0, 131073, 1114154, 0, 131073, 1114155, 0, 4, 1114156, 0, 131073, 1114157, 0, 4, 1114158, 0, 131073, 1114159, 0, 4, 1114160, 0, 4, 1114161, 0, 131073, 1114162, 0, 131073, 1114163, 0, 131073, 1114164, 0, 131073, 1114165, 0, 4, 1114166, 0, 131073, 1114167, 0, 4, 1114168, 0, 4, 1114169, 0, 131073, 1114170, 0, 4, 1114171, 0, 5, 1114172, 0, 65539, 1245183, 0, 65536, 1179648, 0, 65537, 1179649, 0, 65537, 1179650, 0, 65537, 1179651, 0, 65537, 1179652, 0, 65537, 1179653, 0, 65537, 1179654, 0, 65537, 1179655, 0, 65537, 1179656, 0, 65537, 1179657, 0, 65537, 1179658, 0, 65537, 1179659, 0, 65537, 1179660, 0, 65537, 1179661, 0, 65537, 1179662, 0, 65537, 1179663, 0, 65537, 1179664, 0, 65537, 1179665, 0, 65537, 1179666, 0, 3, 1179667, 0, 131073, 1179668, 0, 4, 1179669, 0, 4, 1179670, 0, 4, 1179671, 0, 5, 1179672, 0, 65538, 1179675, 0, 131072, 1179676, 0, 131073, 1179677, 0, 5, 1179678, 0, 65538, 1179707, 0, 65536, 1179708, 0, 65538, 1310719, 0, 65541, 1245184, 0, 65537, 1245185, 0, 65537, 1245186, 0, 65537, 1245187, 0, 65537, 1245188, 0, 65537, 1245189, 0, 65537, 1245190, 0, 65537, 1245191, 0, 65537, 1245192, 0, 65537, 1245193, 0, 65537, 1245194, 0, 65537, 1245195, 0, 65537, 1245196, 0, 65537, 1245197, 0, 65537, 1245198, 0, 65537, 1245199, 0, 65537, 1245200, 0, 65537, 1245201, 0, 65537, 1245202, 0, 65538, 1245207, 0, 65536, 1245208, 0, 131075, 1245209, 0, 2, 1245213, 0, 65536, 1245214, 0, 65539, 1245243, 0, 65536, 1245244, 0, 65539, 1376255, 0, 65541, 1310720, 0, 65537, 1310721, 0, 65537, 1310722, 0, 65537, 1310723, 0, 65537, 1310724, 0, 65537, 1310725, 0, 65537, 1310726, 0, 65537, 1310727, 0, 65537, 1310728, 0, 65537, 1310729, 0, 65537, 1310730, 0, 65537, 1310731, 0, 65537, 1310732, 0, 65537, 1310733, 0, 65537, 1310734, 0, 65537, 1310735, 0, 65537, 1310736, 0, 65537, 1310737, 0, 65537, 1310738, 0, 65539, 1310743, 0, 65536, 1310744, 0, 3, 1310745, 0, 131074, 1310749, 0, 65536, 1310750, 0, 65539, 1310779, 0, 65541, 1310780, 0, 65538, 1441791, 0, 65541, 1376256, 0, 65537, 1376257, 0, 65537, 1376258, 0, 65537, 1376259, 0, 3, 1376260, 0, 4, 1376261, 0, 131073, 1376262, 0, 131073, 1376263, 0, 4, 1376264, 0, 4, 1376265, 0, 131073, 1376266, 0, 4, 1376267, 0, 131073, 1376268, 0, 5, 1376269, 0, 3, 1376270, 0, 131073, 1376271, 0, 131073, 1376272, 0, 4, 1376273, 0, 131073, 1376274, 0, 131074, 1376277, 0, 0, 1376278, 0, 131076, 1376279, 0, 131077, 1376280, 0, 65538, 1376285, 0, 65541, 1376286, 0, 65539, 1376315, 0, 65536, 1376316, 0, 65539, 1507327, 0, 65541, 1441792, 0, 3, 1441793, 0, 4, 1441794, 0, 131073, 1441795, 0, 131074, 1441804, 0, 65541, 1441805, 0, 65538, 1441813, 0, 131072, 1441814, 0, 131073, 1441815, 0, 5, 1441816, 0, 65539, 1441821, 0, 65536, 1441822, 0, 65539, 1441851, 0, 65536, 1441852, 0, 65539, 1572863, 0, 65536, 1507328, 0, 65538, 1507340, 0, 65541, 1507341, 0, 65539, 1507351, 0, 65541, 1507352, 0, 131075, 1507353, 0, 1, 1507354, 0, 131076, 1507355, 0, 2, 1507357, 0, 65536, 1507358, 0, 65539, 1507387, 0, 65536, 1507388, 0, 65539, 1638399, 0, 65541, 1572864, 0, 65538, 1572866, 0, 0, 1572867, 0, 131076, 1572868, 0, 1, 1572869, 0, 1, 1572870, 0, 1, 1572871, 0, 1, 1572872, 0, 2, 1572876, 0, 65541, 1572877, 0, 131075, 1572878, 0, 2, 1572880, 0, 0, 1572881, 0, 131076, 1572882, 0, 2, 1572887, 0, 131072, 1572888, 0, 131073, 1572889, 0, 4, 1572890, 0, 131073, 1572891, 0, 131074, 1572893, 0, 65536, 1572894, 0, 65538, 1572923, 0, 65541, 1572924, 0, 65539, 1703935, 0, 65541, 1638400, 0, 65538, 1638402, 0, 131072, 1638403, 0, 4, 1638404, 0, 131073, 1638405, 0, 4, 1638406, 0, 131073, 1638407, 0, 5, 1638408, 0, 65539, 1638412, 0, 65536, 1638413, 0, 65537, 1638414, 0, 65539, 1638416, 0, 131072, 1638417, 0, 5, 1638418, 0, 65538, 1638429, 0, 65541, 1638430, 0, 65538, 1638459, 0, 65541, 1638460, 0, 65539, 1769471, 0, 65541, 1703936, 0, 65539, 1703943, 0, 65541, 1703944, 0, 65539, 1703947, 0, 0, 1703948, 0, 131077, 1703949, 0, 65537, 1703950, 0, 65539, 1703953, 0, 131072, 1703954, 0, 131074, 1703965, 0, 65536, 1703966, 0, 65538, 1703995, 0, 65541, 1703996, 0, 65538, 1835007, 0, 65536, 1769472, 0, 65539, 1769479, 0, 65541, 1769480, 0, 131075, 1769481, 0, 2, 1769483, 0, 131072, 1769484, 0, 5, 1769485, 0, 65537, 1769486, 0, 65538, 1769491, 0, 0, 1769492, 0, 1, 1769493, 0, 1, 1769494, 0, 1, 1769495, 0, 1, 1769496, 0, 131076, 1769497, 0, 131076, 1769498, 0, 1, 1769499, 0, 1, 1769500, 0, 131076, 1769501, 0, 131077, 1769502, 0, 65538, 1769531, 0, 65536, 1769532, 0, 65539, 1900543, 0, 65541, 1835008, 0, 131075, 1835009, 0, 131076, 1835010, 0, 1, 1835011, 0, 131076, 1835012, 0, 2, 1835015, 0, 65536, 1835016, 0, 65537, 1835017, 0, 65539, 1835020, 0, 131072, 1835021, 0, 4, 1835022, 0, 131074, 1835027, 0, 65541, 1835028, 0, 65537, 1835029, 0, 65537, 1835030, 0, 3, 1835031, 0, 131073, 1835032, 0, 5, 1835033, 0, 65537, 1835034, 0, 65537, 1835035, 0, 65537, 1835036, 0, 65537, 1835037, 0, 65537, 1835038, 0, 65538, 1835067, 0, 65541, 1835068, 0, 65538, 1966079, 0, 65536, 1900544, 0, 65537, 1900545, 0, 65537, 1900546, 0, 3, 1900547, 0, 131073, 1900548, 0, 131074, 1900551, 0, 65536, 1900552, 0, 65537, 1900553, 0, 65539, 1900563, 0, 131072, 1900564, 0, 4, 1900565, 0, 131073, 1900566, 0, 131074, 1900568, 0, 131072, 1900569, 0, 5, 1900570, 0, 3, 1900571, 0, 4, 1900572, 0, 131073, 1900573, 0, 5, 1900574, 0, 65539, 1900603, 0, 65536, 1900604, 0, 65539, 2031615, 0, 65536, 1966080, 0, 65537, 1966081, 0, 65537, 1966082, 0, 65539, 1966087, 0, 65541, 1966088, 0, 65537, 1966089, 0, 131075, 1966090, 0, 131076, 1966091, 0, 131076, 1966092, 0, 1, 1966093, 0, 2, 1966105, 0, 131072, 1966106, 0, 131074, 1966109, 0, 65536, 1966110, 0, 65538, 1966139, 0, 65541, 1966140, 0, 65539, 2097151, 0, 65536, 2031616, 0, 65537, 2031617, 0, 65537, 2031618, 0, 65538, 2031623, 0, 65541, 2031624, 0, 65537, 2031625, 0, 65537, 2031626, 0, 65537, 2031627, 0, 65537, 2031628, 0, 65537, 2031629, 0, 131075, 2031630, 0, 2, 2031645, 0, 65536, 2031646, 0, 65539, 2031675, 0, 65536, 2031676, 0, 65538, 2162687, 0, 65536, 2097152, 0, 65537, 2097153, 0, 65537, 2097154, 0, 65539, 2097159, 0, 65536, 2097160, 0, 65537, 2097161, 0, 65537, 2097162, 0, 65537, 2097163, 0, 65537, 2097164, 0, 65537, 2097165, 0, 65537, 2097166, 0, 131075, 2097167, 0, 1, 2097168, 0, 2, 2097173, 0, 0, 2097174, 0, 2, 2097181, 0, 65536, 2097182, 0, 65538, 2097211, 0, 65541, 2097212, 0, 65539, 2228223, 0, 65536, 2162688, 0, 65537, 2162689, 0, 65537, 2162690, 0, 65538, 2162693, 0, 0, 2162694, 0, 131076, 2162695, 0, 131077, 2162696, 0, 65537, 2162697, 0, 65537, 2162698, 0, 65537, 2162699, 0, 65537, 2162700, 0, 65537, 2162701, 0, 65537, 2162702, 0, 65537, 2162703, 0, 65537, 2162704, 0, 131075, 2162705, 0, 1, 2162706, 0, 1, 2162707, 0, 1, 2162708, 0, 1, 2162709, 0, 131077, 2162710, 0, 131075, 2162711, 0, 131076, 2162712, 0, 1, 2162713, 0, 131076, 2162714, 0, 131076, 2162715, 0, 1, 2162716, 0, 1, 2162717, 0, 131077, 2162718, 0, 131075, 2162719, 0, 1, 2162720, 0, 1, 2162721, 0, 131076, 2162722, 0, 1, 2162723, 0, 131076, 2162724, 0, 1, 2162725, 0, 131076, 2162726, 0, 131076, 2162727, 0, 1, 2162728, 0, 1, 2162729, 0, 131076, 2162730, 0, 1, 2162731, 0, 131076, 2162732, 0, 131076, 2162733, 0, 131076, 2162734, 0, 131076, 2162735, 0, 1, 2162736, 0, 1, 2162737, 0, 131076, 2162738, 0, 131076, 2162739, 0, 1, 2162740, 0, 1, 2162741, 0, 1, 2162742, 0, 131076, 2162743, 0, 131076, 2162744, 0, 131076, 2162745, 0, 1, 2162746, 0, 1, 2162747, 0, 131077, 2162748, 0, 131075, 2162749, 0, 131076, 2162750, 0, 131076, 2162751, 0, 1, 2162752, 0, 1, 2162753, 0, 1, 2162754, 0, 131076, 2162755, 0, 1, 2162756, 0, 131076, 2162757, 0, 131076, 2162758, 0, 131076, 2162759, 0, 2, 2293759, 0, 65536, 2228224, 0, 3, 2228225, 0, 131073, 2228226, 0, 131074, 2228229, 0, 131072, 2228230, 0, 4, 2228231, 0, 131073, 2228232, 0, 131073, 2228233, 0, 131073, 2228234, 0, 131073, 2228235, 0, 131073, 2228236, 0, 131073, 2228237, 0, 4, 2228238, 0, 4, 2228239, 0, 131073, 2228240, 0, 131073, 2228241, 0, 131073, 2228242, 0, 4, 2228243, 0, 4, 2228244, 0, 131073, 2228245, 0, 131073, 2228246, 0, 4, 2228247, 0, 4, 2228248, 0, 4, 2228249, 0, 131073, 2228250, 0, 131073, 2228251, 0, 4, 2228252, 0, 4, 2228253, 0, 5, 2228254, 0, 3, 2228255, 0, 4, 2228256, 0, 4, 2228257, 0, 4, 2228258, 0, 4, 2228259, 0, 4, 2228260, 0, 4, 2228261, 0, 131073, 2228262, 0, 4, 2228263, 0, 4, 2228264, 0, 131073, 2228265, 0, 4, 2228266, 0, 4, 2228267, 0, 131073, 2228268, 0, 4, 2228269, 0, 131073, 2228270, 0, 4, 2228271, 0, 4, 2228272, 0, 4, 2228273, 0, 131073, 2228274, 0, 131073, 2228275, 0, 4, 2228276, 0, 4, 2228277, 0, 4, 2228278, 0, 131073, 2228279, 0, 131073, 2228280, 0, 131073, 2228281, 0, 4, 2228282, 0, 131073, 2228283, 0, 5, 2228284, 0, 3, 2228285, 0, 131073, 2228286, 0, 4, 2228287, 0, 4, 2228288, 0, 131073, 2228289, 0, 131073, 2228290, 0, 131073, 2228291, 0, 131073, 2228292, 0, 4, 2228293, 0, 131073, 2228294, 0, 4, 2228295, 0, 131074, 2359295, 0, 65541, 2293760, 0, 65538, 2293789, 0, 65541, 2293790, 0, 65539, 2293819, 0, 65536, 2293820, 0, 65539, 2424831, 0, 65541, 2359296, 0, 65539, 2359325, 0, 131072, 2359326, 0, 131074, 2359355, 0, 65536, 2359356, 0, 65538, 2490367, 0, 65536, 2424832, 0, 65539, 2424891, 0, 65541, 2424892, 0, 65538, 2555903, 0, 65536, 2490368, 0, 65538, 2490397, 0, 0, 2490398, 0, 1, 2490399, 0, 131076, 2490400, 0, 131076, 2490401, 0, 131076, 2490402, 0, 1, 2490403, 0, 131076, 2490404, 0, 1, 2490405, 0, 131076, 2490406, 0, 131076, 2490407, 0, 1, 2490408, 0, 1, 2490409, 0, 131076, 2490410, 0, 131076, 2490411, 0, 1, 2490412, 0, 1, 2490413, 0, 2, 2490427, 0, 65541, 2490428, 0, 65539, 2621439, 0, 65541, 2555904, 0, 65538, 2555933, 0, 65541, 2555934, 0, 3, 2555935, 0, 4, 2555936, 0, 4, 2555937, 0, 4, 2555938, 0, 4, 2555939, 0, 4, 2555940, 0, 131073, 2555941, 0, 4, 2555942, 0, 131073, 2555943, 0, 131073, 2555944, 0, 4, 2555945, 0, 131073, 2555946, 0, 131073, 2555947, 0, 131073, 2555948, 0, 4, 2555949, 0, 131074, 2555963, 0, 65536, 2555964, 0, 65539, 2686975, 0, 65536, 2621440, 0, 65539, 2621469, 0, 65541, 2621470, 0, 65538, 2621499, 0, 65541, 2621500, 0, 65538, 2752511, 0, 65541, 2686976, 0, 65539, 2687005, 0, 65536, 2687006, 0, 65538, 2687035, 0, 65536, 2687036, 0, 65538, 2818047, 0, 65536, 2752512, 0, 65538, 2752541, 0, 65541, 2752542, 0, 65539, 2752563, 0, 1, 2752564, 0, 1, 2752565, 0, 1, 2752571, 0, 65536, 2752572, 0, 65538, 2883583, 0, 65536, 2818048, 0, 65539, 2818077, 0, 65536, 2818078, 0, 65539, 2818084, 0, 1, 2818085, 0, 1, 2818086, 0, 1, 2818087, 0, 1, 2818088, 0, 1, 2818089, 0, 1, 2818107, 0, 65541, 2818108, 0, 65538, 2949119, 0, 65536, 2883584, 0, 65538, 2883613, 0, 65541, 2883614, 0, 65538, 2883643, 0, 65541, 2883644, 0, 65539, 3014655, 0, 65536, 2949120, 0, 65539, 2949149, 0, 65541, 2949150, 0, 65538, 2949161, 0, 1, 2949162, 0, 1, 2949163, 0, 1, 2949164, 0, 1, 2949165, 0, 1, 2949179, 0, 65536, 2949180, 0, 65539, 3080191, 0, 65536, 3014656, 0, 65538, 3014685, 0, 65541, 3014686, 0, 65538, 3014715, 0, 65536, 3014716, 0, 65538, 3145727, 0, 65536, 3080192, 0, 65538, 3080221, 0, 65536, 3080222, 0, 65538, 3080251, 0, 65541, 3080252, 0, 65538, 3211263, 0, 65541, 3145728, 0, 65539, 3145757, 0, 65541, 3145758, 0, 65538, 3145787, 0, 65541, 3145788, 0, 65538, 3276799, 0, 65536, 3211264, 0, 65538, 3211293, 0, 65536, 3211294, 0, 65538, 3211323, 0, 65541, 3211324, 0, 65538, 3342335, 0, 65541, 3276800, 0, 131075, 3276801, 0, 131076, 3276802, 0, 1, 3276803, 0, 131076, 3276804, 0, 1, 3276805, 0, 131076, 3276806, 0, 1, 3276807, 0, 131076, 3276808, 0, 1, 3276809, 0, 1, 3276810, 0, 1, 3276811, 0, 1, 3276812, 0, 131076, 3276813, 0, 1, 3276814, 0, 131076, 3276815, 0, 131076, 3276816, 0, 131076, 3276817, 0, 1, 3276818, 0, 1, 3276819, 0, 1, 3276820, 0, 1, 3276821, 0, 1, 3276822, 0, 131076, 3276823, 0, 131076, 3276824, 0, 1, 3276825, 0, 131076, 3276826, 0, 1, 3276827, 0, 131076, 3276828, 0, 1, 3276829, 0, 131077, 3276830, 0, 131075, 3276831, 0, 131076, 3276832, 0, 131076, 3276833, 0, 1, 3276834, 0, 131076, 3276835, 0, 131076, 3276836, 0, 131076, 3276837, 0, 1, 3276838, 0, 1, 3276839, 0, 1, 3276840, 0, 1, 3276841, 0, 1, 3276842, 0, 1, 3276843, 0, 1, 3276844, 0, 131076, 3276845, 0, 131076, 3276846, 0, 131076, 3276847, 0, 1, 3276848, 0, 131076, 3276849, 0, 1, 3276850, 0, 131076, 3276851, 0, 131076, 3276852, 0, 131076, 3276853, 0, 1, 3276854, 0, 1, 3276855, 0, 131076, 3276856, 0, 131076, 3276857, 0, 1, 3276858, 0, 1, 3276859, 0, 131077, 3276860, 0, 131075, 3276861, 0, 131076, 3276862, 0, 1, 3276863, 0, 1, 3276864, 0, 131076, 3276865, 0, 1, 3276866, 0, 131076, 3276867, 0, 1, 3276868, 0, 2, 3407871, 0, 131072, 3342336, 0, 131073, 3342337, 0, 131073, 3342338, 0, 4, 3342339, 0, 131073, 3342340, 0, 131073, 3342341, 0, 4, 3342342, 0, 4, 3342343, 0, 131073, 3342344, 0, 131073, 3342345, 0, 131073, 3342346, 0, 131073, 3342347, 0, 4, 3342348, 0, 4, 3342349, 0, 131073, 3342350, 0, 131073, 3342351, 0, 131073, 3342352, 0, 131073, 3342353, 0, 4, 3342354, 0, 4, 3342355, 0, 131073, 3342356, 0, 131073, 3342357, 0, 4, 3342358, 0, 4, 3342359, 0, 4, 3342360, 0, 131073, 3342361, 0, 4, 3342362, 0, 4, 3342363, 0, 4, 3342364, 0, 4, 3342365, 0, 4, 3342366, 0, 131073, 3342367, 0, 4, 3342368, 0, 131073, 3342369, 0, 4, 3342370, 0, 4, 3342371, 0, 131073, 3342372, 0, 4, 3342373, 0, 131073, 3342374, 0, 4, 3342375, 0, 131073, 3342376, 0, 4, 3342377, 0, 4, 3342378, 0, 4, 3342379, 0, 4, 3342380, 0, 131073, 3342381, 0, 4, 3342382, 0, 4, 3342383, 0, 131073, 3342384, 0, 131073, 3342385, 0, 4, 3342386, 0, 4, 3342387, 0, 131073, 3342388, 0, 4, 3342389, 0, 4, 3342390, 0, 4, 3342391, 0, 131073, 3342392, 0, 4, 3342393, 0, 4, 3342394, 0, 131073, 3342395, 0, 4, 3342396, 0, 4, 3342397, 0, 131073, 3342398, 0, 4, 3342399, 0, 4, 3342400, 0, 4, 3342401, 0, 4, 3342402, 0, 4, 3342403, 0, 4, 3342404, 0, 131074 ) + +[node name="Decorations" type="TileMap" parent="World"] +tile_set = SubResource( 37 ) +cell_size = Vector2( 16, 8 ) +format = 1 +tile_data = PoolIntArray( 2031623, 3, 0, 2031624, 1, 0, 2031625, 3, 0, 2031633, 1, 0, 2031634, 1, 0, 2097161, 3, 0, 3801111, 0, 0, 4259866, 1, 0, 4259867, 4, 0, 4259868, 2, 0 ) + +[node name="WatterfallesBG" type="Node2D" parent="World"] +position = Vector2( 1.37535, 6 ) + +[node name="WaterfallsFG" type="Node2D" parent="World"] + +[node name="Torches" type="Node2D" parent="World"] + +[node name="Torch" parent="World/Torches" instance=ExtResource( 18 )] +position = Vector2( 437.375, 256 ) + +[node name="Torch2" parent="World/Torches" instance=ExtResource( 18 )] +position = Vector2( 452.375, 433 ) + +[node name="Torch3" parent="World/Torches" instance=ExtResource( 18 )] +position = Vector2( 267.375, 385 ) + +[node name="Torch4" parent="World/Torches" instance=ExtResource( 18 )] +position = Vector2( 119.375, 385 ) + +[node name="Torch5" parent="World/Torches" instance=ExtResource( 18 )] +position = Vector2( 27.3754, 448 ) + +[node name="Coins" type="Node2D" parent="."] + +[node name="Coin" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 224.375, 228 ) + +[node name="Coin2" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 352.375, 324 ) + +[node name="Coin3" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 319.375, 511 ) + +[node name="Coin4" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 333.375, 501 ) + +[node name="Coin5" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 349.375, 497 ) + +[node name="Coin6" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 368.375, 503 ) + +[node name="Coin7" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 384.375, 511 ) + +[node name="Coin8" parent="Coins" instance=ExtResource( 19 )] +position = Vector2( 247.375, 445 ) + +[node name="Checkpoints" type="Node2D" parent="."] +position = Vector2( 946.375, 399 ) + +[node name="CheckPoint" parent="Checkpoints" instance=ExtResource( 20 )] +position = Vector2( -534, -31 ) + +[node name="CheckPoint2" parent="Checkpoints" instance=ExtResource( 20 )] +position = Vector2( -498, 129 ) + +[node name="Enemies" type="Node2D" parent="."] + +[node name="Hazards" type="Node2D" parent="."] + +[node name="Spike_Up" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 344.375, 256 ) + +[node name="Spike_Up2" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 311.375, 433 ) + +[node name="Spike_Up3" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 327.375, 433 ) + +[node name="Spike_Up4" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 341.375, 433 ) + +[node name="Spike_Up5" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 87.3754, 528 ) + +[node name="Spike_Right" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 238.375, 456 ) +rotation = 1.5708 + +[node name="Spike_Down" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 185.375, 448 ) +rotation = 3.14159 + +[node name="Spike_Down2" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 185.375, 352 ) +rotation = 3.14159 + +[node name="Spike_Down3" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 169.375, 352 ) +rotation = 3.14159 + +[node name="Spike_Down4" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 153.375, 352 ) +rotation = 3.14159 + +[node name="Spike_Down5" parent="Hazards" instance=ExtResource( 16 )] +position = Vector2( 137.375, 352 ) +rotation = 3.14159 + +[node name="Player" parent="." instance=ExtResource( 13 )] +position = Vector2( 37.3754, 256 ) + +[node name="HUD" parent="." instance=ExtResource( 14 )] + +[node name="Camera2D" type="Camera2D" parent="."] +anchor_mode = 0 +current = true +script = ExtResource( 2 ) +[connection signal="jumping" from="Player" to="." method="_on_Player_jumping"] +[connection signal="landed" from="Player" to="." method="_on_Player_landed"] + +[editable path="Player"]