commit 16dc64c66c24ea172defdb4e50b7523a584c2cf3 Author: Sagi Dayan Date: Mon Sep 14 11:21:59 2020 -0400 Initial Commit 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 0000000..14e8880 Binary files /dev/null and b/.images/diagram.png differ diff --git a/.images/example-large.png b/.images/example-large.png new file mode 100644 index 0000000..92de57c Binary files /dev/null and b/.images/example-large.png differ diff --git a/.images/example.png b/.images/example.png new file mode 100644 index 0000000..39d7b5e Binary files /dev/null and b/.images/example.png differ diff --git a/.images/logo.png b/.images/logo.png new file mode 100644 index 0000000..f3c75ed Binary files /dev/null and b/.images/logo.png differ diff --git a/.images/ui.png b/.images/ui.png new file mode 100644 index 0000000..7954e73 Binary files /dev/null and b/.images/ui.png differ diff --git a/assets/HUD/coins_hud.png b/assets/HUD/coins_hud.png new file mode 100644 index 0000000..f6200e1 Binary files /dev/null and b/assets/HUD/coins_hud.png differ 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 0000000..7f8cc44 Binary files /dev/null and b/assets/HUD/fonts.png differ diff --git a/assets/HUD/fonts.png.import b/assets/HUD/fonts.png.import new file mode 100644 index 0000000..ca1c3f8 --- /dev/null +++ b/assets/HUD/fonts.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fonts.png-73341d880171e8e682cfc165cb79a3b8.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/HUD/fonts.png" +dest_files=[ "res://.import/fonts.png-73341d880171e8e682cfc165cb79a3b8.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_left.png b/assets/HUD/health_hud_left.png new file mode 100644 index 0000000..17e41c0 Binary files /dev/null and b/assets/HUD/health_hud_left.png differ diff --git a/assets/HUD/health_hud_left.png.import b/assets/HUD/health_hud_left.png.import new file mode 100644 index 0000000..4ac1e5c --- /dev/null +++ b/assets/HUD/health_hud_left.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/health_hud_left.png-9399fe0dead720c4e721bf6e16baa7cc.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/HUD/health_hud_left.png" +dest_files=[ "res://.import/health_hud_left.png-9399fe0dead720c4e721bf6e16baa7cc.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_middle.png b/assets/HUD/health_hud_middle.png new file mode 100644 index 0000000..4f42b2d Binary files /dev/null and b/assets/HUD/health_hud_middle.png differ 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 0000000..ffd38d5 Binary files /dev/null and b/assets/HUD/health_hud_right.png differ diff --git a/assets/HUD/health_hud_right.png.import b/assets/HUD/health_hud_right.png.import new file mode 100644 index 0000000..0316445 --- /dev/null +++ b/assets/HUD/health_hud_right.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/health_hud_right.png-55394f00bc27abe2dbe1929b9838a642.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/HUD/health_hud_right.png" +dest_files=[ "res://.import/health_hud_right.png-55394f00bc27abe2dbe1929b9838a642.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/hud_stats_bg.png b/assets/HUD/hud_stats_bg.png new file mode 100644 index 0000000..becfd71 Binary files /dev/null and b/assets/HUD/hud_stats_bg.png differ diff --git a/assets/HUD/hud_stats_bg.png.import b/assets/HUD/hud_stats_bg.png.import new file mode 100644 index 0000000..eb000d6 --- /dev/null +++ b/assets/HUD/hud_stats_bg.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/hud_stats_bg.png-9d1af2a299db0c466ab2e63f5ce47465.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/HUD/hud_stats_bg.png" +dest_files=[ "res://.import/hud_stats_bg.png-9d1af2a299db0c466ab2e63f5ce47465.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/lifes_icon.png b/assets/HUD/lifes_icon.png new file mode 100644 index 0000000..720c008 Binary files /dev/null and b/assets/HUD/lifes_icon.png differ 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 0000000..5e2e6e0 Binary files /dev/null and b/assets/Items/coin_anim_strip_6.png differ 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 0000000..2844a92 Binary files /dev/null and b/assets/Items/coin_animation_6_2.png differ diff --git a/assets/Items/coin_animation_6_2.png.import b/assets/Items/coin_animation_6_2.png.import new file mode 100644 index 0000000..809c846 --- /dev/null +++ b/assets/Items/coin_animation_6_2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/coin_animation_6_2.png-23d4b26bedf0922d868cc3b207dd7933.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Items/coin_animation_6_2.png" +dest_files=[ "res://.import/coin_animation_6_2.png-23d4b26bedf0922d868cc3b207dd7933.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_pickup_anim_strip_6.png b/assets/Items/coin_pickup_anim_strip_6.png new file mode 100644 index 0000000..a9b986b Binary files /dev/null and b/assets/Items/coin_pickup_anim_strip_6.png differ diff --git a/assets/Items/coin_pickup_anim_strip_6.png.import b/assets/Items/coin_pickup_anim_strip_6.png.import new file mode 100644 index 0000000..1c19d01 --- /dev/null +++ b/assets/Items/coin_pickup_anim_strip_6.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/coin_pickup_anim_strip_6.png-e95eb569afc46467a9c111aaa6ecb93e.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Items/coin_pickup_anim_strip_6.png" +dest_files=[ "res://.import/coin_pickup_anim_strip_6.png-e95eb569afc46467a9c111aaa6ecb93e.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/save_point_anim_strip_9.png b/assets/Items/save_point_anim_strip_9.png new file mode 100644 index 0000000..f15cf42 Binary files /dev/null and b/assets/Items/save_point_anim_strip_9.png differ 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 0000000..d92dd13 Binary files /dev/null and b/assets/Items/tiki_torch_props_strip_12.png differ diff --git a/assets/Items/tiki_torch_props_strip_12.png.import b/assets/Items/tiki_torch_props_strip_12.png.import new file mode 100644 index 0000000..8fe0f5f --- /dev/null +++ b/assets/Items/tiki_torch_props_strip_12.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/tiki_torch_props_strip_12.png-27358331e1919db5cc9d5bee0c6c764e.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Items/tiki_torch_props_strip_12.png" +dest_files=[ "res://.import/tiki_torch_props_strip_12.png-27358331e1919db5cc9d5bee0c6c764e.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/torch_ligt_texture.png b/assets/Items/torch_ligt_texture.png new file mode 100644 index 0000000..00d1e80 Binary files /dev/null and b/assets/Items/torch_ligt_texture.png differ diff --git a/assets/Items/torch_ligt_texture.png.import b/assets/Items/torch_ligt_texture.png.import new file mode 100644 index 0000000..b2edded --- /dev/null +++ b/assets/Items/torch_ligt_texture.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/torch_ligt_texture.png-c7eb99b5c41631a9c0b023c1844d4be2.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Items/torch_ligt_texture.png" +dest_files=[ "res://.import/torch_ligt_texture.png-c7eb99b5c41631a9c0b023c1844d4be2.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/background.png b/assets/Levels/Test/background.png new file mode 100644 index 0000000..ee57227 Binary files /dev/null and b/assets/Levels/Test/background.png differ diff --git a/assets/Levels/Test/background.png.import b/assets/Levels/Test/background.png.import new file mode 100644 index 0000000..6d080f6 --- /dev/null +++ b/assets/Levels/Test/background.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/background.png-3af062f5e84a66ec81982401c887e176.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/background.png" +dest_files=[ "res://.import/background.png-3af062f5e84a66ec81982401c887e176.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_0.png b/assets/Levels/Test/bg_0.png new file mode 100644 index 0000000..36250bc Binary files /dev/null and b/assets/Levels/Test/bg_0.png differ 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 0000000..ff50f9a Binary files /dev/null and b/assets/Levels/Test/bg_1.png differ 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 0000000..1187e6c Binary files /dev/null and b/assets/Levels/Test/bg_2.png differ 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 0000000..b21d7d1 Binary files /dev/null and b/assets/Levels/Test/fg_0.png differ 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 0000000..acf2ec2 Binary files /dev/null and b/assets/Levels/Test/fg_1.png differ diff --git a/assets/Levels/Test/fg_1.png.import b/assets/Levels/Test/fg_1.png.import new file mode 100644 index 0000000..82e51d2 --- /dev/null +++ b/assets/Levels/Test/fg_1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/fg_1.png-c27d82a81dd7761f4d27fbcebc8d757c.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/fg_1.png" +dest_files=[ "res://.import/fg_1.png-c27d82a81dd7761f4d27fbcebc8d757c.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_anim.gif b/assets/Levels/Test/waterfall_anim.gif new file mode 100644 index 0000000..a7724fe Binary files /dev/null and b/assets/Levels/Test/waterfall_anim.gif differ 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 0000000..871d47e Binary files /dev/null and b/assets/Levels/Test/waterfall_anim_strip_4.png differ 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 0000000..8237dc5 Binary files /dev/null and b/assets/Levels/Test/waterfall_bottom_anim.gif differ 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 0000000..8ac0191 Binary files /dev/null and b/assets/Levels/Test/waterfall_bottom_anim_strip_4.png differ diff --git a/assets/Levels/Test/waterfall_bottom_anim_strip_4.png.import b/assets/Levels/Test/waterfall_bottom_anim_strip_4.png.import new file mode 100644 index 0000000..adb968c --- /dev/null +++ b/assets/Levels/Test/waterfall_bottom_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/waterfall_bottom_anim_strip_4.png-b66336995776f29aefcd2f30314c19fd.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Levels/Test/waterfall_bottom_anim_strip_4.png" +dest_files=[ "res://.import/waterfall_bottom_anim_strip_4.png-b66336995776f29aefcd2f30314c19fd.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_after_jump_dust_anim.gif b/assets/Player/herochar_after_jump_dust_anim.gif new file mode 100644 index 0000000..6788c32 Binary files /dev/null and b/assets/Player/herochar_after_jump_dust_anim.gif differ diff --git a/assets/Player/herochar_after_jump_dust_anim_strip_4.png b/assets/Player/herochar_after_jump_dust_anim_strip_4.png new file mode 100644 index 0000000..e599631 Binary files /dev/null and b/assets/Player/herochar_after_jump_dust_anim_strip_4.png differ 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 0000000..c89c23b Binary files /dev/null and b/assets/Player/herochar_before_jump_dust_anim.gif differ 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 0000000..f13059d Binary files /dev/null and b/assets/Player/herochar_before_jump_dust_anim_strip_4.png differ diff --git a/assets/Player/herochar_before_jump_dust_anim_strip_4.png.import b/assets/Player/herochar_before_jump_dust_anim_strip_4.png.import new file mode 100644 index 0000000..2041eb2 --- /dev/null +++ b/assets/Player/herochar_before_jump_dust_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_before_jump_dust_anim_strip_4.png-ed502a284bbf09ea76555dc860752434.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_before_jump_dust_anim_strip_4.png" +dest_files=[ "res://.import/herochar_before_jump_dust_anim_strip_4.png-ed502a284bbf09ea76555dc860752434.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_or_after_jump.gif b/assets/Player/herochar_before_or_after_jump.gif new file mode 100644 index 0000000..eff0e27 Binary files /dev/null and b/assets/Player/herochar_before_or_after_jump.gif differ 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 0000000..1146f8b Binary files /dev/null and b/assets/Player/herochar_before_or_after_jump_srip_2.png differ diff --git a/assets/Player/herochar_before_or_after_jump_srip_2.png.import b/assets/Player/herochar_before_or_after_jump_srip_2.png.import new file mode 100644 index 0000000..687ccd7 --- /dev/null +++ b/assets/Player/herochar_before_or_after_jump_srip_2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_before_or_after_jump_srip_2.png-a90b70f4154804b09199e0d5c69a91bc.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_before_or_after_jump_srip_2.png" +dest_files=[ "res://.import/herochar_before_or_after_jump_srip_2.png-a90b70f4154804b09199e0d5c69a91bc.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_death_anim.gif b/assets/Player/herochar_death_anim.gif new file mode 100644 index 0000000..91239f2 Binary files /dev/null and b/assets/Player/herochar_death_anim.gif differ 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 0000000..5385e12 Binary files /dev/null and b/assets/Player/herochar_death_anim_strip_8.png differ 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 0000000..428580e Binary files /dev/null and b/assets/Player/herochar_hit_anim.gif differ diff --git a/assets/Player/herochar_hit_anim_strip_3.png b/assets/Player/herochar_hit_anim_strip_3.png new file mode 100644 index 0000000..2ed2484 Binary files /dev/null and b/assets/Player/herochar_hit_anim_strip_3.png differ 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 0000000..12cf9b6 Binary files /dev/null and b/assets/Player/herochar_idle_anim.gif differ 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 0000000..32c95dc Binary files /dev/null and b/assets/Player/herochar_idle_anim_strip_4.png differ 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 0000000..5dd16e3 Binary files /dev/null and b/assets/Player/herochar_jump_double_anim.gif differ 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 0000000..857e7a5 Binary files /dev/null and b/assets/Player/herochar_jump_double_anim_strip_3.png differ diff --git a/assets/Player/herochar_jump_double_anim_strip_3.png.import b/assets/Player/herochar_jump_double_anim_strip_3.png.import new file mode 100644 index 0000000..5958396 --- /dev/null +++ b/assets/Player/herochar_jump_double_anim_strip_3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_jump_double_anim_strip_3.png-71d5902fc269697a2c37792e8d09c4aa.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_jump_double_anim_strip_3.png" +dest_files=[ "res://.import/herochar_jump_double_anim_strip_3.png-71d5902fc269697a2c37792e8d09c4aa.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_down_anim.gif b/assets/Player/herochar_jump_down_anim.gif new file mode 100644 index 0000000..935e44c Binary files /dev/null and b/assets/Player/herochar_jump_down_anim.gif differ diff --git a/assets/Player/herochar_jump_down_anim_strip_3.png b/assets/Player/herochar_jump_down_anim_strip_3.png new file mode 100644 index 0000000..d654054 Binary files /dev/null and b/assets/Player/herochar_jump_down_anim_strip_3.png differ diff --git a/assets/Player/herochar_jump_down_anim_strip_3.png.import b/assets/Player/herochar_jump_down_anim_strip_3.png.import new file mode 100644 index 0000000..4439127 --- /dev/null +++ b/assets/Player/herochar_jump_down_anim_strip_3.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_jump_down_anim_strip_3.png-5e82af3b117d9c7be9066cec297b9180.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_jump_down_anim_strip_3.png" +dest_files=[ "res://.import/herochar_jump_down_anim_strip_3.png-5e82af3b117d9c7be9066cec297b9180.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_up_anim.gif b/assets/Player/herochar_jump_up_anim.gif new file mode 100644 index 0000000..e6ddff2 Binary files /dev/null and b/assets/Player/herochar_jump_up_anim.gif differ 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 0000000..05af352 Binary files /dev/null and b/assets/Player/herochar_jump_up_anim_strip_3.png differ 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 0000000..c9a836e Binary files /dev/null and b/assets/Player/herochar_pushing_foward_anim.gif differ diff --git a/assets/Player/herochar_pushing_foward_anim_strip_6.png b/assets/Player/herochar_pushing_foward_anim_strip_6.png new file mode 100644 index 0000000..79a37f9 Binary files /dev/null and b/assets/Player/herochar_pushing_foward_anim_strip_6.png differ diff --git a/assets/Player/herochar_pushing_foward_anim_strip_6.png.import b/assets/Player/herochar_pushing_foward_anim_strip_6.png.import new file mode 100644 index 0000000..9525ddd --- /dev/null +++ b/assets/Player/herochar_pushing_foward_anim_strip_6.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_pushing_foward_anim_strip_6.png-13c3b9274931b0a338c30e62536ad2b0.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_pushing_foward_anim_strip_6.png" +dest_files=[ "res://.import/herochar_pushing_foward_anim_strip_6.png-13c3b9274931b0a338c30e62536ad2b0.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_run_anim.gif b/assets/Player/herochar_run_anim.gif new file mode 100644 index 0000000..db8e0a2 Binary files /dev/null and b/assets/Player/herochar_run_anim.gif differ diff --git a/assets/Player/herochar_run_anim_strip_6.png b/assets/Player/herochar_run_anim_strip_6.png new file mode 100644 index 0000000..f7d8bcf Binary files /dev/null and b/assets/Player/herochar_run_anim_strip_6.png differ 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 0000000..b130965 Binary files /dev/null and b/assets/Player/herochar_spritesheet.png differ diff --git a/assets/Player/herochar_spritesheet.png.import b/assets/Player/herochar_spritesheet.png.import new file mode 100644 index 0000000..b1673f5 --- /dev/null +++ b/assets/Player/herochar_spritesheet.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_spritesheet.png-481380adb7c04b385edc5f543c703a15.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_spritesheet.png" +dest_files=[ "res://.import/herochar_spritesheet.png-481380adb7c04b385edc5f543c703a15.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_sword_attack_anim.gif b/assets/Player/herochar_sword_attack_anim.gif new file mode 100644 index 0000000..cfd98c1 Binary files /dev/null and b/assets/Player/herochar_sword_attack_anim.gif differ 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 0000000..9dda28b Binary files /dev/null and b/assets/Player/herochar_sword_attack_anim_strip_4.png differ diff --git a/assets/Player/herochar_sword_attack_anim_strip_4.png.import b/assets/Player/herochar_sword_attack_anim_strip_4.png.import new file mode 100644 index 0000000..88c36f3 --- /dev/null +++ b/assets/Player/herochar_sword_attack_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/herochar_sword_attack_anim_strip_4.png-c64a6a32f8ac2b51a629d507a0c6e2c1.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Player/herochar_sword_attack_anim_strip_4.png" +dest_files=[ "res://.import/herochar_sword_attack_anim_strip_4.png-c64a6a32f8ac2b51a629d507a0c6e2c1.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/hit_sparkle_anim.gif b/assets/Player/hit_sparkle_anim.gif new file mode 100644 index 0000000..903da21 Binary files /dev/null and b/assets/Player/hit_sparkle_anim.gif differ 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 0000000..1024fb8 Binary files /dev/null and b/assets/Player/hit_sparkle_anim_strip_4.png differ 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 0000000..f1d58b9 Binary files /dev/null and b/assets/SplashScreen/BLANK.png differ 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 0000000..7dd6af2 Binary files /dev/null and b/assets/SplashScreen/SAGI.png differ diff --git a/assets/SplashScreen/SAGI.png.import b/assets/SplashScreen/SAGI.png.import new file mode 100644 index 0000000..ef14c21 --- /dev/null +++ b/assets/SplashScreen/SAGI.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/SAGI.png-863adb948d71f23c50528b3521782f53.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/SplashScreen/SAGI.png" +dest_files=[ "res://.import/SAGI.png-863adb948d71f23c50528b3521782f53.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/Theme/Theme.tres b/assets/Theme/Theme.tres new file mode 100644 index 0000000..425afaa --- /dev/null +++ b/assets/Theme/Theme.tres @@ -0,0 +1,12 @@ +[gd_resource type="Theme" load_steps=3 format=2] + +[ext_resource path="res://assets/Theme/slkscr.ttf" type="DynamicFontData" id=1] + +[sub_resource type="DynamicFont" id=1] +size = 8 +outline_size = 1 +outline_color = Color( 0, 0, 0, 1 ) +font_data = ExtResource( 1 ) + +[resource] +default_font = SubResource( 1 ) diff --git a/assets/Theme/slkscr.ttf b/assets/Theme/slkscr.ttf new file mode 100644 index 0000000..e2dd974 Binary files /dev/null and b/assets/Theme/slkscr.ttf differ 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 0000000..f599205 Binary files /dev/null and b/assets/Tiles/bigflowers_props.png differ 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 0000000..091b144 Binary files /dev/null and b/assets/Tiles/drygrass_props.png differ 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 0000000..13f3251 Binary files /dev/null and b/assets/Tiles/flowers_props.png differ 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 0000000..f778357 Binary files /dev/null and b/assets/Tiles/grass_props.png differ 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 0000000..6e18d2f Binary files /dev/null and b/assets/Tiles/root_props.png differ diff --git a/assets/Tiles/root_props.png.import b/assets/Tiles/root_props.png.import new file mode 100644 index 0000000..f64da9d --- /dev/null +++ b/assets/Tiles/root_props.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/root_props.png-8eb0c6a3e99f9c5d7707839ddb24edc1.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Tiles/root_props.png" +dest_files=[ "res://.import/root_props.png-8eb0c6a3e99f9c5d7707839ddb24edc1.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/spikes_trap.png b/assets/Tiles/spikes_trap.png new file mode 100644 index 0000000..16a97ee Binary files /dev/null and b/assets/Tiles/spikes_trap.png differ 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 0000000..232b244 Binary files /dev/null and b/assets/Tiles/tileset.png differ 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 0000000..871d47e Binary files /dev/null and b/assets/Water/waterfall_anim_strip_4.png differ 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 0000000..8ac0191 Binary files /dev/null and b/assets/Water/waterfall_bottom_anim_strip_4.png differ diff --git a/assets/Water/waterfall_bottom_anim_strip_4.png.import b/assets/Water/waterfall_bottom_anim_strip_4.png.import new file mode 100644 index 0000000..992eee4 --- /dev/null +++ b/assets/Water/waterfall_bottom_anim_strip_4.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/waterfall_bottom_anim_strip_4.png-4ba98ad33ad3fdd1d1887ddf7204b072.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/Water/waterfall_bottom_anim_strip_4.png" +dest_files=[ "res://.import/waterfall_bottom_anim_strip_4.png-4ba98ad33ad3fdd1d1887ddf7204b072.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/default_env.tres b/default_env.tres new file mode 100644 index 0000000..20207a4 --- /dev/null +++ b/default_env.tres @@ -0,0 +1,7 @@ +[gd_resource type="Environment" load_steps=2 format=2] + +[sub_resource type="ProceduralSky" id=1] + +[resource] +background_mode = 2 +background_sky = SubResource( 1 ) diff --git a/icon.png b/icon.png new file mode 100644 index 0000000..c98fbb6 Binary files /dev/null and b/icon.png differ 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 0000000..9a1f882 Binary files /dev/null and b/sound/SAGI.ogg differ 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"]