summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitattributes2
-rw-r--r--.gitignore3
-rw-r--r--Game.tscn6
-rw-r--r--Stages/Assets/Map/arrow.pngbin0 -> 167 bytes
-rw-r--r--Stages/Assets/Map/arrow.png.import34
-rw-r--r--Stages/Assets/Map/bridge.pngbin0 -> 341 bytes
-rw-r--r--Stages/Assets/Map/bridge.png.import34
-rw-r--r--Stages/Assets/Map/broken_block.pngbin0 -> 173 bytes
-rw-r--r--Stages/Assets/Map/broken_block.png.import34
-rw-r--r--Stages/Assets/Map/bush.pngbin0 -> 205 bytes
-rw-r--r--Stages/Assets/Map/bush.png.import34
-rw-r--r--Stages/Assets/Map/bush_berry.pngbin0 -> 233 bytes
-rw-r--r--Stages/Assets/Map/bush_berry.png.import34
-rw-r--r--Stages/Assets/Map/checkpoint_off.pngbin0 -> 144 bytes
-rw-r--r--Stages/Assets/Map/checkpoint_off.png.import34
-rw-r--r--Stages/Assets/Map/checkpoint_on.pngbin0 -> 276 bytes
-rw-r--r--Stages/Assets/Map/checkpoint_on.png.import34
-rw-r--r--Stages/Assets/Map/dirt.pngbin0 -> 714 bytes
-rw-r--r--Stages/Assets/Map/dirt.png.import34
-rw-r--r--Stages/Assets/Map/dispenser.pngbin0 -> 195 bytes
-rw-r--r--Stages/Assets/Map/dispenser.png.import34
-rw-r--r--Stages/Assets/Map/grass.pngbin0 -> 782 bytes
-rw-r--r--Stages/Assets/Map/grass.png.import34
-rw-r--r--Stages/Assets/Map/guy_dead.pngbin0 -> 116 bytes
-rw-r--r--Stages/Assets/Map/guy_dead.png.import34
-rw-r--r--Stages/Assets/Map/icon_game_32x32.pngbin0 -> 1114 bytes
-rw-r--r--Stages/Assets/Map/icon_game_32x32.png.import34
-rw-r--r--Stages/Assets/Map/key.pngbin0 -> 183 bytes
-rw-r--r--Stages/Assets/Map/key.png.import34
-rw-r--r--Stages/Assets/Map/lava_anim.pngbin0 -> 361 bytes
-rw-r--r--Stages/Assets/Map/lava_anim.png.import34
-rw-r--r--Stages/Assets/Map/liane.pngbin0 -> 166 bytes
-rw-r--r--Stages/Assets/Map/liane.png.import34
-rw-r--r--Stages/Assets/Map/movingplatform.pngbin0 -> 256 bytes
-rw-r--r--Stages/Assets/Map/movingplatform.png.import34
-rw-r--r--Stages/Assets/Map/plant01.pngbin0 -> 221 bytes
-rw-r--r--Stages/Assets/Map/plant01.png.import34
-rw-r--r--Stages/Assets/Map/primitivehut.pngbin0 -> 4267 bytes
-rw-r--r--Stages/Assets/Map/primitivehut.png.import34
-rw-r--r--Stages/Assets/Map/slime_b_01.pngbin0 -> 336 bytes
-rw-r--r--Stages/Assets/Map/slime_b_01.png.import34
-rw-r--r--Stages/Assets/Map/slime_b_02.pngbin0 -> 341 bytes
-rw-r--r--Stages/Assets/Map/slime_b_02.png.import34
-rw-r--r--Stages/Assets/Map/slime_b_dead.pngbin0 -> 116 bytes
-rw-r--r--Stages/Assets/Map/slime_b_dead.png.import34
-rw-r--r--Stages/Assets/Map/slime_g_01.pngbin0 -> 174 bytes
-rw-r--r--Stages/Assets/Map/slime_g_01.png.import34
-rw-r--r--Stages/Assets/Map/slime_g_02.pngbin0 -> 178 bytes
-rw-r--r--Stages/Assets/Map/slime_g_02.png.import34
-rw-r--r--Stages/Assets/Map/slime_g_dead.pngbin0 -> 119 bytes
-rw-r--r--Stages/Assets/Map/slime_g_dead.png.import34
-rw-r--r--Stages/Assets/Map/spr_door.pngbin0 -> 173 bytes
-rw-r--r--Stages/Assets/Map/spr_door.png.import34
-rw-r--r--Stages/Assets/Map/spr_door_locked.pngbin0 -> 210 bytes
-rw-r--r--Stages/Assets/Map/spr_door_locked.png.import34
-rw-r--r--Stages/Assets/Map/tileset.pngbin0 -> 997 bytes
-rw-r--r--Stages/Assets/Map/tileset.png.import34
-rw-r--r--Stages/Assets/Map/torch_anim.pngbin0 -> 300 bytes
-rw-r--r--Stages/Assets/Map/torch_anim.png.import34
-rw-r--r--Stages/Assets/[kdd]JunglePlatformer.zipbin0 -> 13224 bytes
-rw-r--r--Stages/Assets/icon_game_32x32.icobin0 -> 2238 bytes
-rw-r--r--Stages/Goal/Assets/goal-01.pngbin0 -> 829 bytes
-rw-r--r--Stages/Goal/Assets/goal-01.png.import34
-rw-r--r--Stages/Goal/Assets/goal-02.pngbin0 -> 808 bytes
-rw-r--r--Stages/Goal/Assets/goal-02.png.import34
-rw-r--r--Stages/Goal/Assets/goal-03.pngbin0 -> 816 bytes
-rw-r--r--Stages/Goal/Assets/goal-03.png.import34
-rw-r--r--Stages/Goal/Assets/goal-04.pngbin0 -> 822 bytes
-rw-r--r--Stages/Goal/Assets/goal-04.png.import34
-rw-r--r--Stages/Goal/Assets/goal-05.pngbin0 -> 821 bytes
-rw-r--r--Stages/Goal/Assets/goal-05.png.import34
-rw-r--r--Stages/Goal/Assets/goal-06.pngbin0 -> 820 bytes
-rw-r--r--Stages/Goal/Assets/goal-06.png.import34
-rw-r--r--Stages/Goal/Goal.tscn59
-rw-r--r--Stages/Goal/goal.gd10
-rw-r--r--Stages/Goal/goal_area.gd5
-rw-r--r--Stages/Spawn/Assets/door-01.pngbin0 -> 342 bytes
-rw-r--r--Stages/Spawn/Assets/door-01.png.import34
-rw-r--r--Stages/Spawn/Assets/door-02.pngbin0 -> 438 bytes
-rw-r--r--Stages/Spawn/Assets/door-02.png.import34
-rw-r--r--Stages/Spawn/Assets/door-03.pngbin0 -> 451 bytes
-rw-r--r--Stages/Spawn/Assets/door-03.png.import34
-rw-r--r--Stages/Spawn/Assets/door-04.pngbin0 -> 450 bytes
-rw-r--r--Stages/Spawn/Assets/door-04.png.import34
-rw-r--r--Stages/Spawn/Assets/door-05.pngbin0 -> 503 bytes
-rw-r--r--Stages/Spawn/Assets/door-05.png.import34
-rw-r--r--Stages/Spawn/Assets/door-06.pngbin0 -> 529 bytes
-rw-r--r--Stages/Spawn/Assets/door-06.png.import34
-rw-r--r--Stages/Spawn/Assets/door-07.pngbin0 -> 540 bytes
-rw-r--r--Stages/Spawn/Assets/door-07.png.import34
-rw-r--r--Stages/Spawn/Assets/door-08.pngbin0 -> 520 bytes
-rw-r--r--Stages/Spawn/Assets/door-08.png.import34
-rw-r--r--Stages/Spawn/Assets/door-09.pngbin0 -> 522 bytes
-rw-r--r--Stages/Spawn/Assets/door-09.png.import34
-rw-r--r--Stages/Spawn/Assets/door-10.pngbin0 -> 480 bytes
-rw-r--r--Stages/Spawn/Assets/door-10.png.import34
-rw-r--r--Stages/Spawn/Spawn.tscn67
-rw-r--r--Stages/Spawn/spawn.gd32
-rw-r--r--Stages/TileMapLayer.tscn17
-rw-r--r--Stages/eraser.gd68
-rw-r--r--Stages/world_01.tscn42
-rw-r--r--UI/HUD.tscn13
-rw-r--r--UI/hud.gd7
-rw-r--r--Units/Assets/.digger-12.png-autosave.krabin0 -> 76238 bytes
-rw-r--r--Units/Assets/block-01.pngbin0 -> 193 bytes
-rw-r--r--Units/Assets/block-01.png.import34
-rw-r--r--Units/Assets/block-02.pngbin0 -> 190 bytes
-rw-r--r--Units/Assets/block-02.png.import34
-rw-r--r--Units/Assets/block-03.pngbin0 -> 191 bytes
-rw-r--r--Units/Assets/block-03.png.import34
-rw-r--r--Units/Assets/block-04.pngbin0 -> 190 bytes
-rw-r--r--Units/Assets/block-04.png.import34
-rw-r--r--Units/Assets/block-05.pngbin0 -> 190 bytes
-rw-r--r--Units/Assets/block-05.png.import34
-rw-r--r--Units/Assets/block-06.pngbin0 -> 191 bytes
-rw-r--r--Units/Assets/block-06.png.import34
-rw-r--r--Units/Assets/digger-01.pngbin0 -> 220 bytes
-rw-r--r--Units/Assets/digger-01.png.import34
-rw-r--r--Units/Assets/digger-01.png~bin0 -> 216 bytes
-rw-r--r--Units/Assets/digger-02.pngbin0 -> 219 bytes
-rw-r--r--Units/Assets/digger-02.png.import34
-rw-r--r--Units/Assets/digger-02.png~bin0 -> 225 bytes
-rw-r--r--Units/Assets/digger-03.pngbin0 -> 221 bytes
-rw-r--r--Units/Assets/digger-03.png.import34
-rw-r--r--Units/Assets/digger-04.pngbin0 -> 213 bytes
-rw-r--r--Units/Assets/digger-04.png.import34
-rw-r--r--Units/Assets/digger-05.pngbin0 -> 188 bytes
-rw-r--r--Units/Assets/digger-05.png.import34
-rw-r--r--Units/Assets/digger-06.pngbin0 -> 212 bytes
-rw-r--r--Units/Assets/digger-06.png.import34
-rw-r--r--Units/Assets/digger-07.pngbin0 -> 223 bytes
-rw-r--r--Units/Assets/digger-07.png.import34
-rw-r--r--Units/Assets/digger-08.pngbin0 -> 220 bytes
-rw-r--r--Units/Assets/digger-08.png.import34
-rw-r--r--Units/Assets/digger-09.pngbin0 -> 236 bytes
-rw-r--r--Units/Assets/digger-09.png.import34
-rw-r--r--Units/Assets/digger-10.pngbin0 -> 216 bytes
-rw-r--r--Units/Assets/digger-10.png.import34
-rw-r--r--Units/Assets/digger-11.pngbin0 -> 207 bytes
-rw-r--r--Units/Assets/digger-11.png.import34
-rw-r--r--Units/Assets/digger-12.pngbin0 -> 219 bytes
-rw-r--r--Units/Assets/digger-12.png.import34
-rw-r--r--Units/Assets/fall-01.pngbin0 -> 155 bytes
-rw-r--r--Units/Assets/fall-01.png.import34
-rw-r--r--Units/Assets/fall-02.pngbin0 -> 153 bytes
-rw-r--r--Units/Assets/fall-02.png.import34
-rw-r--r--Units/Assets/fall-03.pngbin0 -> 154 bytes
-rw-r--r--Units/Assets/fall-03.png.import34
-rw-r--r--Units/Assets/fall-04.pngbin0 -> 149 bytes
-rw-r--r--Units/Assets/fall-04.png.import34
-rw-r--r--Units/Assets/fall-05.pngbin0 -> 159 bytes
-rw-r--r--Units/Assets/fall-05.png.import34
-rw-r--r--Units/Assets/fall-06.pngbin0 -> 156 bytes
-rw-r--r--Units/Assets/fall-06.png.import34
-rw-r--r--Units/Assets/fall-07.pngbin0 -> 160 bytes
-rw-r--r--Units/Assets/fall-07.png.import34
-rw-r--r--Units/Assets/fall-08.pngbin0 -> 158 bytes
-rw-r--r--Units/Assets/fall-08.png.import34
-rw-r--r--Units/Assets/sheet.pngbin0 -> 11377 bytes
-rw-r--r--Units/Assets/sheet.png.import34
-rw-r--r--Units/Assets/sheet.png~bin0 -> 3762 bytes
-rw-r--r--Units/Assets/sheet2.pngbin0 -> 15728 bytes
-rw-r--r--Units/Assets/sheet2.png.import34
-rw-r--r--Units/Assets/walk-01.pngbin0 -> 164 bytes
-rw-r--r--Units/Assets/walk-01.png.import34
-rw-r--r--Units/Assets/walk-01.png~bin0 -> 141 bytes
-rw-r--r--Units/Assets/walk-02.pngbin0 -> 176 bytes
-rw-r--r--Units/Assets/walk-02.png.import34
-rw-r--r--Units/Assets/walk-02.png~bin0 -> 173 bytes
-rw-r--r--Units/Assets/walk-03.pngbin0 -> 171 bytes
-rw-r--r--Units/Assets/walk-03.png.import34
-rw-r--r--Units/Assets/walk-03.png~bin0 -> 171 bytes
-rw-r--r--Units/Assets/walk-04.pngbin0 -> 170 bytes
-rw-r--r--Units/Assets/walk-04.png.import34
-rw-r--r--Units/Assets/walk-04.png~bin0 -> 159 bytes
-rw-r--r--Units/Assets/walk-05.pngbin0 -> 169 bytes
-rw-r--r--Units/Assets/walk-05.png.import34
-rw-r--r--Units/Assets/walk-05.png~bin0 -> 150 bytes
-rw-r--r--Units/Assets/walk-06.pngbin0 -> 177 bytes
-rw-r--r--Units/Assets/walk-06.png.import34
-rw-r--r--Units/Assets/walk-06.png~bin0 -> 174 bytes
-rw-r--r--Units/Assets/walk-07.pngbin0 -> 166 bytes
-rw-r--r--Units/Assets/walk-07.png.import34
-rw-r--r--Units/Assets/walk-07.png~bin0 -> 167 bytes
-rw-r--r--Units/Assets/walk-08.pngbin0 -> 173 bytes
-rw-r--r--Units/Assets/walk-08.png.import34
-rw-r--r--Units/Assets/walk-08.png~bin0 -> 161 bytes
-rw-r--r--Units/Assets/walk.pngbin0 -> 429 bytes
-rw-r--r--Units/Assets/walk.png.import34
-rw-r--r--Units/Blocker.tscn23
-rw-r--r--Units/Default.tscn36
-rw-r--r--Units/Digger.tscn36
-rw-r--r--Units/blocker.gd5
-rw-r--r--Units/default.gd49
-rw-r--r--Units/digger.gd46
-rw-r--r--Units/unit.gd15
-rw-r--r--Units/units_sprite_frames.tres161
-rw-r--r--animated_sprite.gd8
-rw-r--r--animated_sprite.tscn6
-rw-r--r--game.gd40
-rw-r--r--icon.svg1
-rw-r--r--icon.svg.import37
-rw-r--r--project.godot54
203 files changed, 3602 insertions, 0 deletions
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..8ad74f7
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,2 @@
+# Normalize EOL for all files that Git considers text files.
+* text=auto eol=lf
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0af181c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+# Godot 4+ specific ignores
+.godot/
+/android/
diff --git a/Game.tscn b/Game.tscn
new file mode 100644
index 0000000..8998a8d
--- /dev/null
+++ b/Game.tscn
@@ -0,0 +1,6 @@
+[gd_scene load_steps=2 format=3 uid="uid://ciollx8t0pblj"]
+
+[ext_resource type="Script" path="res://game.gd" id="1_7rns0"]
+
+[node name="Game" type="Node"]
+script = ExtResource("1_7rns0")
diff --git a/Stages/Assets/Map/arrow.png b/Stages/Assets/Map/arrow.png
new file mode 100644
index 0000000..702c292
--- /dev/null
+++ b/Stages/Assets/Map/arrow.png
Binary files differ
diff --git a/Stages/Assets/Map/arrow.png.import b/Stages/Assets/Map/arrow.png.import
new file mode 100644
index 0000000..61d3fb3
--- /dev/null
+++ b/Stages/Assets/Map/arrow.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://d3q7b4qu7xgwh"
+path="res://.godot/imported/arrow.png-8fe0faee0980f45e35a00841a2f6b7ca.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/arrow.png"
+dest_files=["res://.godot/imported/arrow.png-8fe0faee0980f45e35a00841a2f6b7ca.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/bridge.png b/Stages/Assets/Map/bridge.png
new file mode 100644
index 0000000..a2ef079
--- /dev/null
+++ b/Stages/Assets/Map/bridge.png
Binary files differ
diff --git a/Stages/Assets/Map/bridge.png.import b/Stages/Assets/Map/bridge.png.import
new file mode 100644
index 0000000..12e2020
--- /dev/null
+++ b/Stages/Assets/Map/bridge.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://b147386fadqth"
+path="res://.godot/imported/bridge.png-9933e63264c921ad47da2fb7c61c295a.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/bridge.png"
+dest_files=["res://.godot/imported/bridge.png-9933e63264c921ad47da2fb7c61c295a.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/broken_block.png b/Stages/Assets/Map/broken_block.png
new file mode 100644
index 0000000..0d421a2
--- /dev/null
+++ b/Stages/Assets/Map/broken_block.png
Binary files differ
diff --git a/Stages/Assets/Map/broken_block.png.import b/Stages/Assets/Map/broken_block.png.import
new file mode 100644
index 0000000..674b042
--- /dev/null
+++ b/Stages/Assets/Map/broken_block.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://caotfm8pom5jn"
+path="res://.godot/imported/broken_block.png-02843b69e2f484976b7f8d647e4e8caf.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/broken_block.png"
+dest_files=["res://.godot/imported/broken_block.png-02843b69e2f484976b7f8d647e4e8caf.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/bush.png b/Stages/Assets/Map/bush.png
new file mode 100644
index 0000000..014d91a
--- /dev/null
+++ b/Stages/Assets/Map/bush.png
Binary files differ
diff --git a/Stages/Assets/Map/bush.png.import b/Stages/Assets/Map/bush.png.import
new file mode 100644
index 0000000..523f94a
--- /dev/null
+++ b/Stages/Assets/Map/bush.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dbhciatntequr"
+path="res://.godot/imported/bush.png-3f42698c92ebc533decb875c63005e43.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/bush.png"
+dest_files=["res://.godot/imported/bush.png-3f42698c92ebc533decb875c63005e43.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/bush_berry.png b/Stages/Assets/Map/bush_berry.png
new file mode 100644
index 0000000..00b7cdb
--- /dev/null
+++ b/Stages/Assets/Map/bush_berry.png
Binary files differ
diff --git a/Stages/Assets/Map/bush_berry.png.import b/Stages/Assets/Map/bush_berry.png.import
new file mode 100644
index 0000000..627dc00
--- /dev/null
+++ b/Stages/Assets/Map/bush_berry.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cp5wgevyn7xlf"
+path="res://.godot/imported/bush_berry.png-e5540b0391a93c2c50712b23cf953420.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/bush_berry.png"
+dest_files=["res://.godot/imported/bush_berry.png-e5540b0391a93c2c50712b23cf953420.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/checkpoint_off.png b/Stages/Assets/Map/checkpoint_off.png
new file mode 100644
index 0000000..98645a3
--- /dev/null
+++ b/Stages/Assets/Map/checkpoint_off.png
Binary files differ
diff --git a/Stages/Assets/Map/checkpoint_off.png.import b/Stages/Assets/Map/checkpoint_off.png.import
new file mode 100644
index 0000000..13b7cd5
--- /dev/null
+++ b/Stages/Assets/Map/checkpoint_off.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://d05x876qvbeis"
+path="res://.godot/imported/checkpoint_off.png-18ac626545535ad21b938e8f3cf2c966.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/checkpoint_off.png"
+dest_files=["res://.godot/imported/checkpoint_off.png-18ac626545535ad21b938e8f3cf2c966.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/checkpoint_on.png b/Stages/Assets/Map/checkpoint_on.png
new file mode 100644
index 0000000..568bc0c
--- /dev/null
+++ b/Stages/Assets/Map/checkpoint_on.png
Binary files differ
diff --git a/Stages/Assets/Map/checkpoint_on.png.import b/Stages/Assets/Map/checkpoint_on.png.import
new file mode 100644
index 0000000..deb7e7c
--- /dev/null
+++ b/Stages/Assets/Map/checkpoint_on.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://biut0wxmrbbhl"
+path="res://.godot/imported/checkpoint_on.png-621af8b5f377512da765ee77613e3bb4.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/checkpoint_on.png"
+dest_files=["res://.godot/imported/checkpoint_on.png-621af8b5f377512da765ee77613e3bb4.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/dirt.png b/Stages/Assets/Map/dirt.png
new file mode 100644
index 0000000..1bae5a1
--- /dev/null
+++ b/Stages/Assets/Map/dirt.png
Binary files differ
diff --git a/Stages/Assets/Map/dirt.png.import b/Stages/Assets/Map/dirt.png.import
new file mode 100644
index 0000000..f7a41a3
--- /dev/null
+++ b/Stages/Assets/Map/dirt.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://b2j8mr02gy6ep"
+path="res://.godot/imported/dirt.png-aacac8659f10a72430fec26d72e3d613.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/dirt.png"
+dest_files=["res://.godot/imported/dirt.png-aacac8659f10a72430fec26d72e3d613.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/dispenser.png b/Stages/Assets/Map/dispenser.png
new file mode 100644
index 0000000..e4af567
--- /dev/null
+++ b/Stages/Assets/Map/dispenser.png
Binary files differ
diff --git a/Stages/Assets/Map/dispenser.png.import b/Stages/Assets/Map/dispenser.png.import
new file mode 100644
index 0000000..52b4494
--- /dev/null
+++ b/Stages/Assets/Map/dispenser.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://0jsp4m3llm2r"
+path="res://.godot/imported/dispenser.png-fd292e4739ebe5fb755f9580214b7f2f.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/dispenser.png"
+dest_files=["res://.godot/imported/dispenser.png-fd292e4739ebe5fb755f9580214b7f2f.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/grass.png b/Stages/Assets/Map/grass.png
new file mode 100644
index 0000000..64c9c8c
--- /dev/null
+++ b/Stages/Assets/Map/grass.png
Binary files differ
diff --git a/Stages/Assets/Map/grass.png.import b/Stages/Assets/Map/grass.png.import
new file mode 100644
index 0000000..7516a66
--- /dev/null
+++ b/Stages/Assets/Map/grass.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c5iei4jy2hlmr"
+path="res://.godot/imported/grass.png-f630ede72dc2f6324c7b0dba668cbdf5.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/grass.png"
+dest_files=["res://.godot/imported/grass.png-f630ede72dc2f6324c7b0dba668cbdf5.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/guy_dead.png b/Stages/Assets/Map/guy_dead.png
new file mode 100644
index 0000000..aef8c4b
--- /dev/null
+++ b/Stages/Assets/Map/guy_dead.png
Binary files differ
diff --git a/Stages/Assets/Map/guy_dead.png.import b/Stages/Assets/Map/guy_dead.png.import
new file mode 100644
index 0000000..712f60d
--- /dev/null
+++ b/Stages/Assets/Map/guy_dead.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c4fns5m7r80nx"
+path="res://.godot/imported/guy_dead.png-88a8ded0e79389a7c0673fbcc23b3312.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/guy_dead.png"
+dest_files=["res://.godot/imported/guy_dead.png-88a8ded0e79389a7c0673fbcc23b3312.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/icon_game_32x32.png b/Stages/Assets/Map/icon_game_32x32.png
new file mode 100644
index 0000000..c9d725e
--- /dev/null
+++ b/Stages/Assets/Map/icon_game_32x32.png
Binary files differ
diff --git a/Stages/Assets/Map/icon_game_32x32.png.import b/Stages/Assets/Map/icon_game_32x32.png.import
new file mode 100644
index 0000000..3331147
--- /dev/null
+++ b/Stages/Assets/Map/icon_game_32x32.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bkckeaw5dfyi4"
+path="res://.godot/imported/icon_game_32x32.png-4be26a6e3f83ecd4c55d5d4762ad546e.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/icon_game_32x32.png"
+dest_files=["res://.godot/imported/icon_game_32x32.png-4be26a6e3f83ecd4c55d5d4762ad546e.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/key.png b/Stages/Assets/Map/key.png
new file mode 100644
index 0000000..53110f8
--- /dev/null
+++ b/Stages/Assets/Map/key.png
Binary files differ
diff --git a/Stages/Assets/Map/key.png.import b/Stages/Assets/Map/key.png.import
new file mode 100644
index 0000000..ed9ded3
--- /dev/null
+++ b/Stages/Assets/Map/key.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bj44nar0t4flo"
+path="res://.godot/imported/key.png-f72faf608d78460c9c023cffe4ff84a0.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/key.png"
+dest_files=["res://.godot/imported/key.png-f72faf608d78460c9c023cffe4ff84a0.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/lava_anim.png b/Stages/Assets/Map/lava_anim.png
new file mode 100644
index 0000000..38f7d39
--- /dev/null
+++ b/Stages/Assets/Map/lava_anim.png
Binary files differ
diff --git a/Stages/Assets/Map/lava_anim.png.import b/Stages/Assets/Map/lava_anim.png.import
new file mode 100644
index 0000000..4c91a71
--- /dev/null
+++ b/Stages/Assets/Map/lava_anim.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://daquy2jrw6kcs"
+path="res://.godot/imported/lava_anim.png-e6026d1ecb62f36173031c29d33c73a2.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/lava_anim.png"
+dest_files=["res://.godot/imported/lava_anim.png-e6026d1ecb62f36173031c29d33c73a2.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/liane.png b/Stages/Assets/Map/liane.png
new file mode 100644
index 0000000..bb7138e
--- /dev/null
+++ b/Stages/Assets/Map/liane.png
Binary files differ
diff --git a/Stages/Assets/Map/liane.png.import b/Stages/Assets/Map/liane.png.import
new file mode 100644
index 0000000..ea5bd19
--- /dev/null
+++ b/Stages/Assets/Map/liane.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://pb55oov3mfbi"
+path="res://.godot/imported/liane.png-f08df8bab8faf6a0ca70b542780ec3c9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/liane.png"
+dest_files=["res://.godot/imported/liane.png-f08df8bab8faf6a0ca70b542780ec3c9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/movingplatform.png b/Stages/Assets/Map/movingplatform.png
new file mode 100644
index 0000000..6ac5bc0
--- /dev/null
+++ b/Stages/Assets/Map/movingplatform.png
Binary files differ
diff --git a/Stages/Assets/Map/movingplatform.png.import b/Stages/Assets/Map/movingplatform.png.import
new file mode 100644
index 0000000..2be9857
--- /dev/null
+++ b/Stages/Assets/Map/movingplatform.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c6mttd4c1nldv"
+path="res://.godot/imported/movingplatform.png-206064cd0aebc663631133476a29ffba.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/movingplatform.png"
+dest_files=["res://.godot/imported/movingplatform.png-206064cd0aebc663631133476a29ffba.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/plant01.png b/Stages/Assets/Map/plant01.png
new file mode 100644
index 0000000..361055b
--- /dev/null
+++ b/Stages/Assets/Map/plant01.png
Binary files differ
diff --git a/Stages/Assets/Map/plant01.png.import b/Stages/Assets/Map/plant01.png.import
new file mode 100644
index 0000000..b0c4b94
--- /dev/null
+++ b/Stages/Assets/Map/plant01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dmlex0ejjyygf"
+path="res://.godot/imported/plant01.png-479fb71c1a9ea4817c5aa59fefb6b924.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/plant01.png"
+dest_files=["res://.godot/imported/plant01.png-479fb71c1a9ea4817c5aa59fefb6b924.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/primitivehut.png b/Stages/Assets/Map/primitivehut.png
new file mode 100644
index 0000000..697e99c
--- /dev/null
+++ b/Stages/Assets/Map/primitivehut.png
Binary files differ
diff --git a/Stages/Assets/Map/primitivehut.png.import b/Stages/Assets/Map/primitivehut.png.import
new file mode 100644
index 0000000..2d7ccb9
--- /dev/null
+++ b/Stages/Assets/Map/primitivehut.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://h3xhqtekx25j"
+path="res://.godot/imported/primitivehut.png-1be838f8405fab056c63bd6063308e53.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/primitivehut.png"
+dest_files=["res://.godot/imported/primitivehut.png-1be838f8405fab056c63bd6063308e53.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/slime_b_01.png b/Stages/Assets/Map/slime_b_01.png
new file mode 100644
index 0000000..f050692
--- /dev/null
+++ b/Stages/Assets/Map/slime_b_01.png
Binary files differ
diff --git a/Stages/Assets/Map/slime_b_01.png.import b/Stages/Assets/Map/slime_b_01.png.import
new file mode 100644
index 0000000..2dc32bf
--- /dev/null
+++ b/Stages/Assets/Map/slime_b_01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://du4v2bmv1h3gh"
+path="res://.godot/imported/slime_b_01.png-2ea5ccd2102e67c0dc147cb65d03f441.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/slime_b_01.png"
+dest_files=["res://.godot/imported/slime_b_01.png-2ea5ccd2102e67c0dc147cb65d03f441.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/slime_b_02.png b/Stages/Assets/Map/slime_b_02.png
new file mode 100644
index 0000000..8872291
--- /dev/null
+++ b/Stages/Assets/Map/slime_b_02.png
Binary files differ
diff --git a/Stages/Assets/Map/slime_b_02.png.import b/Stages/Assets/Map/slime_b_02.png.import
new file mode 100644
index 0000000..c00830a
--- /dev/null
+++ b/Stages/Assets/Map/slime_b_02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://ds8mgfd7se5bv"
+path="res://.godot/imported/slime_b_02.png-a2af3387588792753995c340e13f7824.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/slime_b_02.png"
+dest_files=["res://.godot/imported/slime_b_02.png-a2af3387588792753995c340e13f7824.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/slime_b_dead.png b/Stages/Assets/Map/slime_b_dead.png
new file mode 100644
index 0000000..c66e32b
--- /dev/null
+++ b/Stages/Assets/Map/slime_b_dead.png
Binary files differ
diff --git a/Stages/Assets/Map/slime_b_dead.png.import b/Stages/Assets/Map/slime_b_dead.png.import
new file mode 100644
index 0000000..d4c11ff
--- /dev/null
+++ b/Stages/Assets/Map/slime_b_dead.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://d13krhspr0rud"
+path="res://.godot/imported/slime_b_dead.png-dedf833fe4c8f270f6d790b83df6cf55.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/slime_b_dead.png"
+dest_files=["res://.godot/imported/slime_b_dead.png-dedf833fe4c8f270f6d790b83df6cf55.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/slime_g_01.png b/Stages/Assets/Map/slime_g_01.png
new file mode 100644
index 0000000..d5f27c4
--- /dev/null
+++ b/Stages/Assets/Map/slime_g_01.png
Binary files differ
diff --git a/Stages/Assets/Map/slime_g_01.png.import b/Stages/Assets/Map/slime_g_01.png.import
new file mode 100644
index 0000000..8978db3
--- /dev/null
+++ b/Stages/Assets/Map/slime_g_01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://di5chsmywyrox"
+path="res://.godot/imported/slime_g_01.png-80a8929e6418b55db9e78f11ac31346e.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/slime_g_01.png"
+dest_files=["res://.godot/imported/slime_g_01.png-80a8929e6418b55db9e78f11ac31346e.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/slime_g_02.png b/Stages/Assets/Map/slime_g_02.png
new file mode 100644
index 0000000..6fc0020
--- /dev/null
+++ b/Stages/Assets/Map/slime_g_02.png
Binary files differ
diff --git a/Stages/Assets/Map/slime_g_02.png.import b/Stages/Assets/Map/slime_g_02.png.import
new file mode 100644
index 0000000..d6dbed8
--- /dev/null
+++ b/Stages/Assets/Map/slime_g_02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dxh8m2pvequr0"
+path="res://.godot/imported/slime_g_02.png-590230ea5c6282482a332bb666d1ba64.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/slime_g_02.png"
+dest_files=["res://.godot/imported/slime_g_02.png-590230ea5c6282482a332bb666d1ba64.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/slime_g_dead.png b/Stages/Assets/Map/slime_g_dead.png
new file mode 100644
index 0000000..cdfac21
--- /dev/null
+++ b/Stages/Assets/Map/slime_g_dead.png
Binary files differ
diff --git a/Stages/Assets/Map/slime_g_dead.png.import b/Stages/Assets/Map/slime_g_dead.png.import
new file mode 100644
index 0000000..8acfd5c
--- /dev/null
+++ b/Stages/Assets/Map/slime_g_dead.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cxnwi2ratvl04"
+path="res://.godot/imported/slime_g_dead.png-43b41cbb06274a0786ebb2f6974db4d9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/slime_g_dead.png"
+dest_files=["res://.godot/imported/slime_g_dead.png-43b41cbb06274a0786ebb2f6974db4d9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/spr_door.png b/Stages/Assets/Map/spr_door.png
new file mode 100644
index 0000000..a0b3209
--- /dev/null
+++ b/Stages/Assets/Map/spr_door.png
Binary files differ
diff --git a/Stages/Assets/Map/spr_door.png.import b/Stages/Assets/Map/spr_door.png.import
new file mode 100644
index 0000000..6cfd573
--- /dev/null
+++ b/Stages/Assets/Map/spr_door.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bjgkrwnj3467h"
+path="res://.godot/imported/spr_door.png-a06589143b89a4472be3de60682c306e.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/spr_door.png"
+dest_files=["res://.godot/imported/spr_door.png-a06589143b89a4472be3de60682c306e.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/spr_door_locked.png b/Stages/Assets/Map/spr_door_locked.png
new file mode 100644
index 0000000..6827d52
--- /dev/null
+++ b/Stages/Assets/Map/spr_door_locked.png
Binary files differ
diff --git a/Stages/Assets/Map/spr_door_locked.png.import b/Stages/Assets/Map/spr_door_locked.png.import
new file mode 100644
index 0000000..8b9262f
--- /dev/null
+++ b/Stages/Assets/Map/spr_door_locked.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://d0r8gghfy0fhk"
+path="res://.godot/imported/spr_door_locked.png-794fde6a90a4c1ff871cee125eb28da9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/spr_door_locked.png"
+dest_files=["res://.godot/imported/spr_door_locked.png-794fde6a90a4c1ff871cee125eb28da9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/tileset.png b/Stages/Assets/Map/tileset.png
new file mode 100644
index 0000000..0be27e2
--- /dev/null
+++ b/Stages/Assets/Map/tileset.png
Binary files differ
diff --git a/Stages/Assets/Map/tileset.png.import b/Stages/Assets/Map/tileset.png.import
new file mode 100644
index 0000000..bbcd654
--- /dev/null
+++ b/Stages/Assets/Map/tileset.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dund1mrvxxrvc"
+path="res://.godot/imported/tileset.png-de0abb32a0fba5f94063f77b76747e40.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/tileset.png"
+dest_files=["res://.godot/imported/tileset.png-de0abb32a0fba5f94063f77b76747e40.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/Map/torch_anim.png b/Stages/Assets/Map/torch_anim.png
new file mode 100644
index 0000000..c342743
--- /dev/null
+++ b/Stages/Assets/Map/torch_anim.png
Binary files differ
diff --git a/Stages/Assets/Map/torch_anim.png.import b/Stages/Assets/Map/torch_anim.png.import
new file mode 100644
index 0000000..5c56f6d
--- /dev/null
+++ b/Stages/Assets/Map/torch_anim.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://s4vdhht3im78"
+path="res://.godot/imported/torch_anim.png-1dfbbb2dd17a54e56bfb8f9cf76ba1ec.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Assets/Map/torch_anim.png"
+dest_files=["res://.godot/imported/torch_anim.png-1dfbbb2dd17a54e56bfb8f9cf76ba1ec.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Assets/[kdd]JunglePlatformer.zip b/Stages/Assets/[kdd]JunglePlatformer.zip
new file mode 100644
index 0000000..7111022
--- /dev/null
+++ b/Stages/Assets/[kdd]JunglePlatformer.zip
Binary files differ
diff --git a/Stages/Assets/icon_game_32x32.ico b/Stages/Assets/icon_game_32x32.ico
new file mode 100644
index 0000000..d2b3252
--- /dev/null
+++ b/Stages/Assets/icon_game_32x32.ico
Binary files differ
diff --git a/Stages/Goal/Assets/goal-01.png b/Stages/Goal/Assets/goal-01.png
new file mode 100644
index 0000000..c923e61
--- /dev/null
+++ b/Stages/Goal/Assets/goal-01.png
Binary files differ
diff --git a/Stages/Goal/Assets/goal-01.png.import b/Stages/Goal/Assets/goal-01.png.import
new file mode 100644
index 0000000..fc8c952
--- /dev/null
+++ b/Stages/Goal/Assets/goal-01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dfd06s7jdcoh2"
+path="res://.godot/imported/goal-01.png-b503339c1f54fc5bd94192d7deebf86b.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Goal/Assets/goal-01.png"
+dest_files=["res://.godot/imported/goal-01.png-b503339c1f54fc5bd94192d7deebf86b.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Goal/Assets/goal-02.png b/Stages/Goal/Assets/goal-02.png
new file mode 100644
index 0000000..4681dae
--- /dev/null
+++ b/Stages/Goal/Assets/goal-02.png
Binary files differ
diff --git a/Stages/Goal/Assets/goal-02.png.import b/Stages/Goal/Assets/goal-02.png.import
new file mode 100644
index 0000000..83872e2
--- /dev/null
+++ b/Stages/Goal/Assets/goal-02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cc5dx2nohiq0e"
+path="res://.godot/imported/goal-02.png-e610f6270ed9845d7f5c21b5b5619588.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Goal/Assets/goal-02.png"
+dest_files=["res://.godot/imported/goal-02.png-e610f6270ed9845d7f5c21b5b5619588.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Goal/Assets/goal-03.png b/Stages/Goal/Assets/goal-03.png
new file mode 100644
index 0000000..40f60d6
--- /dev/null
+++ b/Stages/Goal/Assets/goal-03.png
Binary files differ
diff --git a/Stages/Goal/Assets/goal-03.png.import b/Stages/Goal/Assets/goal-03.png.import
new file mode 100644
index 0000000..16354de
--- /dev/null
+++ b/Stages/Goal/Assets/goal-03.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cllb8yhfyxo2c"
+path="res://.godot/imported/goal-03.png-f3a68620ca99d823aa54f04e984a012d.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Goal/Assets/goal-03.png"
+dest_files=["res://.godot/imported/goal-03.png-f3a68620ca99d823aa54f04e984a012d.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Goal/Assets/goal-04.png b/Stages/Goal/Assets/goal-04.png
new file mode 100644
index 0000000..4604c08
--- /dev/null
+++ b/Stages/Goal/Assets/goal-04.png
Binary files differ
diff --git a/Stages/Goal/Assets/goal-04.png.import b/Stages/Goal/Assets/goal-04.png.import
new file mode 100644
index 0000000..993f45d
--- /dev/null
+++ b/Stages/Goal/Assets/goal-04.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://uskgsop6wmha"
+path="res://.godot/imported/goal-04.png-958517120d11e529a0b62f5b765a6e7d.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Goal/Assets/goal-04.png"
+dest_files=["res://.godot/imported/goal-04.png-958517120d11e529a0b62f5b765a6e7d.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Goal/Assets/goal-05.png b/Stages/Goal/Assets/goal-05.png
new file mode 100644
index 0000000..2f289fa
--- /dev/null
+++ b/Stages/Goal/Assets/goal-05.png
Binary files differ
diff --git a/Stages/Goal/Assets/goal-05.png.import b/Stages/Goal/Assets/goal-05.png.import
new file mode 100644
index 0000000..e89c6fc
--- /dev/null
+++ b/Stages/Goal/Assets/goal-05.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://crfbfk6vwy5vg"
+path="res://.godot/imported/goal-05.png-b97d4f4e988d3d36e262c13ffc5799e6.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Goal/Assets/goal-05.png"
+dest_files=["res://.godot/imported/goal-05.png-b97d4f4e988d3d36e262c13ffc5799e6.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Goal/Assets/goal-06.png b/Stages/Goal/Assets/goal-06.png
new file mode 100644
index 0000000..6304896
--- /dev/null
+++ b/Stages/Goal/Assets/goal-06.png
Binary files differ
diff --git a/Stages/Goal/Assets/goal-06.png.import b/Stages/Goal/Assets/goal-06.png.import
new file mode 100644
index 0000000..ee082ee
--- /dev/null
+++ b/Stages/Goal/Assets/goal-06.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://rrwn2c4rwgvx"
+path="res://.godot/imported/goal-06.png-7c676c4ec785393c2d137dba1a552993.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Goal/Assets/goal-06.png"
+dest_files=["res://.godot/imported/goal-06.png-7c676c4ec785393c2d137dba1a552993.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Goal/Goal.tscn b/Stages/Goal/Goal.tscn
new file mode 100644
index 0000000..2e208ec
--- /dev/null
+++ b/Stages/Goal/Goal.tscn
@@ -0,0 +1,59 @@
+[gd_scene load_steps=10 format=3 uid="uid://erjn41cnb3ha"]
+
+[ext_resource type="Script" path="res://Stages/Goal/goal.gd" id="1_olpsd"]
+[ext_resource type="Texture2D" uid="uid://dfd06s7jdcoh2" path="res://Stages/Goal/Assets/goal-01.png" id="2_fv7o7"]
+[ext_resource type="Texture2D" uid="uid://cc5dx2nohiq0e" path="res://Stages/Goal/Assets/goal-02.png" id="3_55ojj"]
+[ext_resource type="Texture2D" uid="uid://cllb8yhfyxo2c" path="res://Stages/Goal/Assets/goal-03.png" id="4_vme42"]
+[ext_resource type="Texture2D" uid="uid://uskgsop6wmha" path="res://Stages/Goal/Assets/goal-04.png" id="5_h2yew"]
+[ext_resource type="Texture2D" uid="uid://crfbfk6vwy5vg" path="res://Stages/Goal/Assets/goal-05.png" id="6_iyyas"]
+[ext_resource type="Texture2D" uid="uid://rrwn2c4rwgvx" path="res://Stages/Goal/Assets/goal-06.png" id="7_dvlyc"]
+
+[sub_resource type="SpriteFrames" id="SpriteFrames_0huga"]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("2_fv7o7")
+}, {
+"duration": 1.0,
+"texture": ExtResource("3_55ojj")
+}, {
+"duration": 1.0,
+"texture": ExtResource("4_vme42")
+}, {
+"duration": 1.0,
+"texture": ExtResource("5_h2yew")
+}, {
+"duration": 1.0,
+"texture": ExtResource("6_iyyas")
+}, {
+"duration": 1.0,
+"texture": ExtResource("7_dvlyc")
+}],
+"loop": true,
+"name": &"default",
+"speed": 5.0
+}]
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_7oxgv"]
+size = Vector2(8, 2)
+
+[node name="Goal" type="Node2D"]
+script = ExtResource("1_olpsd")
+
+[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
+texture_filter = 1
+sprite_frames = SubResource("SpriteFrames_0huga")
+frame_progress = 0.883034
+centered = false
+
+[node name="Area2D" type="Area2D" parent="."]
+collision_layer = 1024
+
+[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D"]
+position = Vector2(19, 21)
+shape = SubResource("RectangleShape2D_7oxgv")
+
+[node name="GoalCenter" type="Marker2D" parent="."]
+position = Vector2(19, 14)
+
+[connection signal="body_entered" from="Area2D" to="." method="_on_area_2d_body_entered"]
diff --git a/Stages/Goal/goal.gd b/Stages/Goal/goal.gd
new file mode 100644
index 0000000..6854d7a
--- /dev/null
+++ b/Stages/Goal/goal.gd
@@ -0,0 +1,10 @@
+extends Node2D
+
+
+func _ready() -> void:
+ $AnimatedSprite2D.play("default")
+
+
+func _on_area_2d_body_entered(body: Node2D) -> void:
+ if body is Unit:
+ body.enter_goal($GoalCenter.global_position)
diff --git a/Stages/Goal/goal_area.gd b/Stages/Goal/goal_area.gd
new file mode 100644
index 0000000..b206434
--- /dev/null
+++ b/Stages/Goal/goal_area.gd
@@ -0,0 +1,5 @@
+extends Area2D
+
+
+func get_center():
+ return get_parent().get_node("GoalCenter").global_position
diff --git a/Stages/Spawn/Assets/door-01.png b/Stages/Spawn/Assets/door-01.png
new file mode 100644
index 0000000..6159976
--- /dev/null
+++ b/Stages/Spawn/Assets/door-01.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-01.png.import b/Stages/Spawn/Assets/door-01.png.import
new file mode 100644
index 0000000..98d6cd9
--- /dev/null
+++ b/Stages/Spawn/Assets/door-01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dqpmj38rrg4yv"
+path="res://.godot/imported/door-01.png-425ed413c3b954b1db385d8381249853.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-01.png"
+dest_files=["res://.godot/imported/door-01.png-425ed413c3b954b1db385d8381249853.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-02.png b/Stages/Spawn/Assets/door-02.png
new file mode 100644
index 0000000..362786a
--- /dev/null
+++ b/Stages/Spawn/Assets/door-02.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-02.png.import b/Stages/Spawn/Assets/door-02.png.import
new file mode 100644
index 0000000..6511cc9
--- /dev/null
+++ b/Stages/Spawn/Assets/door-02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://digshkiyn376j"
+path="res://.godot/imported/door-02.png-bfccd5ca6b7dd82f938a290c80515633.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-02.png"
+dest_files=["res://.godot/imported/door-02.png-bfccd5ca6b7dd82f938a290c80515633.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-03.png b/Stages/Spawn/Assets/door-03.png
new file mode 100644
index 0000000..4677b44
--- /dev/null
+++ b/Stages/Spawn/Assets/door-03.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-03.png.import b/Stages/Spawn/Assets/door-03.png.import
new file mode 100644
index 0000000..0af19d1
--- /dev/null
+++ b/Stages/Spawn/Assets/door-03.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bf0yhn5wia5l6"
+path="res://.godot/imported/door-03.png-2eac3b88d51668cd47f69da2b3056ef4.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-03.png"
+dest_files=["res://.godot/imported/door-03.png-2eac3b88d51668cd47f69da2b3056ef4.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-04.png b/Stages/Spawn/Assets/door-04.png
new file mode 100644
index 0000000..d52839f
--- /dev/null
+++ b/Stages/Spawn/Assets/door-04.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-04.png.import b/Stages/Spawn/Assets/door-04.png.import
new file mode 100644
index 0000000..0047c3b
--- /dev/null
+++ b/Stages/Spawn/Assets/door-04.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://i5mtaoqqj00s"
+path="res://.godot/imported/door-04.png-6454bd43184e840722a9f32a03a2acd2.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-04.png"
+dest_files=["res://.godot/imported/door-04.png-6454bd43184e840722a9f32a03a2acd2.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-05.png b/Stages/Spawn/Assets/door-05.png
new file mode 100644
index 0000000..0329a03
--- /dev/null
+++ b/Stages/Spawn/Assets/door-05.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-05.png.import b/Stages/Spawn/Assets/door-05.png.import
new file mode 100644
index 0000000..ebd7531
--- /dev/null
+++ b/Stages/Spawn/Assets/door-05.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://7igief13gf4l"
+path="res://.godot/imported/door-05.png-b9867a7e47e7441beff7b957fdeae68d.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-05.png"
+dest_files=["res://.godot/imported/door-05.png-b9867a7e47e7441beff7b957fdeae68d.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-06.png b/Stages/Spawn/Assets/door-06.png
new file mode 100644
index 0000000..2a76746
--- /dev/null
+++ b/Stages/Spawn/Assets/door-06.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-06.png.import b/Stages/Spawn/Assets/door-06.png.import
new file mode 100644
index 0000000..bc2742f
--- /dev/null
+++ b/Stages/Spawn/Assets/door-06.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dylltm6q4i1k7"
+path="res://.godot/imported/door-06.png-4aef5614278bec57cd4cb0f0bf8e5d82.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-06.png"
+dest_files=["res://.godot/imported/door-06.png-4aef5614278bec57cd4cb0f0bf8e5d82.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-07.png b/Stages/Spawn/Assets/door-07.png
new file mode 100644
index 0000000..d2a43f1
--- /dev/null
+++ b/Stages/Spawn/Assets/door-07.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-07.png.import b/Stages/Spawn/Assets/door-07.png.import
new file mode 100644
index 0000000..1bb71b5
--- /dev/null
+++ b/Stages/Spawn/Assets/door-07.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://by7j765nv5l47"
+path="res://.godot/imported/door-07.png-b6e93bf1de8e53ea7313dd2f5bd6b56f.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-07.png"
+dest_files=["res://.godot/imported/door-07.png-b6e93bf1de8e53ea7313dd2f5bd6b56f.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-08.png b/Stages/Spawn/Assets/door-08.png
new file mode 100644
index 0000000..d9de80c
--- /dev/null
+++ b/Stages/Spawn/Assets/door-08.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-08.png.import b/Stages/Spawn/Assets/door-08.png.import
new file mode 100644
index 0000000..0735c6b
--- /dev/null
+++ b/Stages/Spawn/Assets/door-08.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cbllib07vgno8"
+path="res://.godot/imported/door-08.png-180c28e7b03c689fde553bcaf1fbb124.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-08.png"
+dest_files=["res://.godot/imported/door-08.png-180c28e7b03c689fde553bcaf1fbb124.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-09.png b/Stages/Spawn/Assets/door-09.png
new file mode 100644
index 0000000..1963c02
--- /dev/null
+++ b/Stages/Spawn/Assets/door-09.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-09.png.import b/Stages/Spawn/Assets/door-09.png.import
new file mode 100644
index 0000000..9b04f21
--- /dev/null
+++ b/Stages/Spawn/Assets/door-09.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cyf5ywre6q8ok"
+path="res://.godot/imported/door-09.png-1cac21a3e465ef4c52b29b6de64a3c63.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-09.png"
+dest_files=["res://.godot/imported/door-09.png-1cac21a3e465ef4c52b29b6de64a3c63.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Assets/door-10.png b/Stages/Spawn/Assets/door-10.png
new file mode 100644
index 0000000..cdb369d
--- /dev/null
+++ b/Stages/Spawn/Assets/door-10.png
Binary files differ
diff --git a/Stages/Spawn/Assets/door-10.png.import b/Stages/Spawn/Assets/door-10.png.import
new file mode 100644
index 0000000..271d8f2
--- /dev/null
+++ b/Stages/Spawn/Assets/door-10.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dfr2nlb401ys0"
+path="res://.godot/imported/door-10.png-4edb97ee416bdcfa7244bad622ac24b5.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Stages/Spawn/Assets/door-10.png"
+dest_files=["res://.godot/imported/door-10.png-4edb97ee416bdcfa7244bad622ac24b5.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Stages/Spawn/Spawn.tscn b/Stages/Spawn/Spawn.tscn
new file mode 100644
index 0000000..0d61ba4
--- /dev/null
+++ b/Stages/Spawn/Spawn.tscn
@@ -0,0 +1,67 @@
+[gd_scene load_steps=14 format=3 uid="uid://42uq574w0fj7"]
+
+[ext_resource type="Texture2D" uid="uid://dqpmj38rrg4yv" path="res://Stages/Spawn/Assets/door-01.png" id="1_etqfv"]
+[ext_resource type="Script" path="res://Stages/Spawn/spawn.gd" id="1_nbk6k"]
+[ext_resource type="Texture2D" uid="uid://digshkiyn376j" path="res://Stages/Spawn/Assets/door-02.png" id="2_o7g1w"]
+[ext_resource type="Texture2D" uid="uid://bf0yhn5wia5l6" path="res://Stages/Spawn/Assets/door-03.png" id="3_ohm4m"]
+[ext_resource type="Texture2D" uid="uid://i5mtaoqqj00s" path="res://Stages/Spawn/Assets/door-04.png" id="4_giyd8"]
+[ext_resource type="Texture2D" uid="uid://7igief13gf4l" path="res://Stages/Spawn/Assets/door-05.png" id="5_imvge"]
+[ext_resource type="Texture2D" uid="uid://dylltm6q4i1k7" path="res://Stages/Spawn/Assets/door-06.png" id="6_x24l1"]
+[ext_resource type="Texture2D" uid="uid://by7j765nv5l47" path="res://Stages/Spawn/Assets/door-07.png" id="7_b5k74"]
+[ext_resource type="Texture2D" uid="uid://cbllib07vgno8" path="res://Stages/Spawn/Assets/door-08.png" id="8_py1bn"]
+[ext_resource type="Texture2D" uid="uid://cyf5ywre6q8ok" path="res://Stages/Spawn/Assets/door-09.png" id="9_otals"]
+[ext_resource type="Texture2D" uid="uid://dfr2nlb401ys0" path="res://Stages/Spawn/Assets/door-10.png" id="10_ycnwd"]
+[ext_resource type="PackedScene" uid="uid://bj8j72hwnt6mo" path="res://animated_sprite.tscn" id="12_2owri"]
+
+[sub_resource type="SpriteFrames" id="SpriteFrames_tkik1"]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_etqfv")
+}, {
+"duration": 1.0,
+"texture": ExtResource("2_o7g1w")
+}, {
+"duration": 1.0,
+"texture": ExtResource("3_ohm4m")
+}, {
+"duration": 1.0,
+"texture": ExtResource("4_giyd8")
+}, {
+"duration": 1.0,
+"texture": ExtResource("5_imvge")
+}, {
+"duration": 1.0,
+"texture": ExtResource("6_x24l1")
+}, {
+"duration": 1.0,
+"texture": ExtResource("7_b5k74")
+}, {
+"duration": 1.0,
+"texture": ExtResource("8_py1bn")
+}, {
+"duration": 1.0,
+"texture": ExtResource("9_otals")
+}, {
+"duration": 1.0,
+"texture": ExtResource("10_ycnwd")
+}],
+"loop": false,
+"name": &"default",
+"speed": 6.0
+}]
+
+[node name="Spawn" type="Node2D"]
+script = ExtResource("1_nbk6k")
+
+[node name="AnimatedSprite" parent="." instance=ExtResource("12_2owri")]
+texture_filter = 1
+sprite_frames = SubResource("SpriteFrames_tkik1")
+centered = false
+
+[node name="SpawnTimer" type="Timer" parent="."]
+
+[node name="SpawnPosition" type="Marker2D" parent="."]
+position = Vector2(21, 14)
+
+[connection signal="timeout" from="SpawnTimer" to="." method="_on_spawn_timer_timeout"]
diff --git a/Stages/Spawn/spawn.gd b/Stages/Spawn/spawn.gd
new file mode 100644
index 0000000..fd7309a
--- /dev/null
+++ b/Stages/Spawn/spawn.gd
@@ -0,0 +1,32 @@
+extends Node2D
+
+
+@export var spawn_count := 10
+@export var spawn_frequency := 2.0
+
+var spawned_count := 0
+
+
+func _ready() -> void:
+ $SpawnTimer.wait_time = spawn_frequency / Game.speed
+ Game.speed_changed.connect(func():
+ $SpawnTimer.wait_time = spawn_frequency / Game.speed
+ # calculate remaining time and set fraction accordingly
+ )
+
+ $AnimatedSprite.play("default")
+ $AnimatedSprite.animation_finished.connect(func():
+ _on_spawn_timer_timeout()
+ $SpawnTimer.start()
+ )
+
+
+
+func _on_spawn_timer_timeout() -> void:
+ var unit: Unit = preload("res://Units/Default.tscn").instantiate()
+ unit.position = $SpawnPosition.global_position
+ get_tree().current_scene.add_child(unit)
+
+ spawned_count += 1
+ if spawned_count == spawn_count:
+ $SpawnTimer.stop()
diff --git a/Stages/TileMapLayer.tscn b/Stages/TileMapLayer.tscn
new file mode 100644
index 0000000..c97d090
--- /dev/null
+++ b/Stages/TileMapLayer.tscn
@@ -0,0 +1,17 @@
+[gd_scene load_steps=4 format=3 uid="uid://dg7nn5xu5knpo"]
+
+[ext_resource type="Texture2D" uid="uid://dund1mrvxxrvc" path="res://Stages/Assets/Map/tileset.png" id="1_qdkqn"]
+
+[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_gdad0"]
+texture = ExtResource("1_qdkqn")
+0:0/0 = 0
+1:0/0 = 0
+
+[sub_resource type="TileSet" id="TileSet_lqeiq"]
+physics_layer_0/collision_layer = 0
+physics_layer_0/collision_mask = 0
+sources/2 = SubResource("TileSetAtlasSource_gdad0")
+tile_proxies/coords_level = [[0, Vector2i(0, 0)], [2, Vector2i(0, 0)], [1, Vector2i(0, 0)], [2, Vector2i(1, 0)]]
+
+[node name="TileMapLayer" type="TileMapLayer"]
+tile_set = SubResource("TileSet_lqeiq")
diff --git a/Stages/eraser.gd b/Stages/eraser.gd
new file mode 100644
index 0000000..8595e6f
--- /dev/null
+++ b/Stages/eraser.gd
@@ -0,0 +1,68 @@
+extends Node2D
+
+
+var is_erasing = false
+@onready var ground = get_parent().get_node("GroundCollision") as StaticBody2D
+@onready var map = get_parent().get_node("Map") as Node2D
+@onready var tilemap = map.get_child(0).get_child(0)
+
+var size = Vector2(12, 12)
+var carve_area := PackedVector2Array([
+ (size / 2) * Vector2(-1, -1),
+ (size / 2) * Vector2(1, -1),
+ (size / 2) * Vector2(1, 1),
+ (size / 2) * Vector2(-1, 1),
+])
+
+
+func _ready():
+ map.get_child(0).polygon = ground.get_child(0).polygon
+
+
+func _physics_process(_delta: float) -> void:
+ if Input.is_action_just_pressed("select"):
+ is_erasing = true
+ if Input.is_action_just_released("select"):
+ is_erasing = false
+
+ global_position = get_global_mouse_position()
+ queue_redraw()
+
+ if Input.is_action_just_pressed("select"): #if is_erasing:
+ var points = PackedVector2Array()
+ for point in carve_area:
+ points.append(global_position + point)
+
+ var collision_polygons = ground.get_children()
+ var visibility_polygons = map.get_children()
+ for idx in range(collision_polygons.size()):
+ var collision_node: CollisionPolygon2D = collision_polygons[idx]
+ var visilibty_node: Polygon2D = visibility_polygons[idx]
+
+ var clipped = Geometry2D.clip_polygons(collision_node.polygon, points)
+ #print(clipped.size(), clipped)
+ if clipped.size() > 0 and not Geometry2D.is_polygon_clockwise(clipped[0]):
+ collision_node.polygon = clipped[0]
+ visilibty_node.polygon = clipped[0]
+
+ if clipped.size() > 1 and not Geometry2D.is_polygon_clockwise(clipped[1]):
+ var p = CollisionPolygon2D.new()
+ p.polygon = clipped[1]
+ ground.add_child(p)
+ var po = Polygon2D.new()
+ po.polygon = clipped[1]
+ po.clip_children = CanvasItem.CLIP_CHILDREN_ONLY
+ po.add_child(tilemap.duplicate())
+ map.add_child(po)
+
+
+func _draw() -> void:
+ draw_rect(
+ Rect2((size / 2) * -1, size),
+ Color("#fff"),
+ is_erasing
+ )
+ draw_colored_polygon( # TODO: use carve_area to draw
+ carve_area,
+ Color("#fff")
+ )
diff --git a/Stages/world_01.tscn b/Stages/world_01.tscn
new file mode 100644
index 0000000..577c4b2
--- /dev/null
+++ b/Stages/world_01.tscn
@@ -0,0 +1,42 @@
+[gd_scene load_steps=5 format=4 uid="uid://b5wd3etehm6na"]
+
+[ext_resource type="PackedScene" uid="uid://dg7nn5xu5knpo" path="res://Stages/TileMapLayer.tscn" id="1_fpnly"]
+[ext_resource type="PackedScene" uid="uid://d0mlxe0gcctle" path="res://UI/HUD.tscn" id="1_wx432"]
+[ext_resource type="PackedScene" uid="uid://42uq574w0fj7" path="res://Stages/Spawn/Spawn.tscn" id="2_r2f03"]
+[ext_resource type="PackedScene" uid="uid://erjn41cnb3ha" path="res://Stages/Goal/Goal.tscn" id="3_lkv6y"]
+
+[node name="World01" type="Node2D"]
+
+[node name="HUD" parent="." instance=ExtResource("1_wx432")]
+
+[node name="Map" type="Node2D" parent="."]
+
+[node name="Polygon2D" type="Polygon2D" parent="Map"]
+clip_children = 1
+
+[node name="TileMapLayer" parent="Map/Polygon2D" instance=ExtResource("1_fpnly")]
+tile_map_data = PackedByteArray("AAABAAYAAgAAAAAAAAACAAYAAgABAAAAAAADAAYAAgABAAAAAAAEAAYAAgABAAAAAAAFAAYAAgABAAAAAAAGAAYAAgABAAAAAAAHAAYAAgABAAAAAAAIAAYAAgABAAAAAAAJAAYAAgABAAAAAAAKAAYAAgABAAAAAAALAAYAAgABAAAAAAAMAAYAAgABAAAAAAANAAYAAgABAAAAAAAOAAYAAgABAAAAAAAPAAYAAgABAAAAAAAQAAYAAgABAAAAAAABAAQAAgAAAAAAAAABAAUAAgAAAAAAAAARAAQAAgAAAAAAAAARAAUAAgAAAAAAAAARAAYAAgAAAAAAAAA=")
+
+[node name="Polygon2D2" type="Polygon2D" parent="Map"]
+clip_children = 1
+
+[node name="TileMapLayer" parent="Map/Polygon2D2" instance=ExtResource("1_fpnly")]
+tile_map_data = PackedByteArray("AAABAAwAAgAAAAAAAAACAAwAAgABAAAAAAADAAwAAgABAAAAAAAEAAwAAgABAAAAAAAFAAwAAgABAAAAAAAGAAwAAgABAAAAAAAHAAwAAgABAAAAAAAIAAwAAgABAAAAAAAJAAwAAgABAAAAAAAKAAwAAgABAAAAAAALAAwAAgABAAAAAAAMAAwAAgABAAAAAAANAAwAAgABAAAAAAAOAAwAAgABAAAAAAAPAAwAAgABAAAAAAAQAAwAAgABAAAAAAARAAwAAgAAAAAAAAABAAsAAgAAAAAAAAARAAsAAgAAAAAAAAA=")
+
+[node name="Spawn" parent="." instance=ExtResource("2_r2f03")]
+position = Vector2(31, 21)
+spawn_count = 50
+spawn_frequency = 1.0
+
+[node name="GroundCollision" type="StaticBody2D" parent="."]
+collision_layer = 256
+collision_mask = 0
+
+[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="GroundCollision"]
+polygon = PackedVector2Array(16, 64, 16, 112, 32, 112, 288, 112, 288, 64, 272, 64, 272, 96, 32, 96, 32, 64)
+
+[node name="CollisionPolygon2D2" type="CollisionPolygon2D" parent="GroundCollision"]
+polygon = PackedVector2Array(16, 176, 16, 208, 288, 208, 288, 176, 272, 176, 272, 192, 32, 192, 32, 176)
+
+[node name="Goal" parent="." instance=ExtResource("3_lkv6y")]
+position = Vector2(232, 170)
diff --git a/UI/HUD.tscn b/UI/HUD.tscn
new file mode 100644
index 0000000..5d4ac5b
--- /dev/null
+++ b/UI/HUD.tscn
@@ -0,0 +1,13 @@
+[gd_scene load_steps=2 format=3 uid="uid://d0mlxe0gcctle"]
+
+[ext_resource type="Script" path="res://UI/hud.gd" id="1_rpghv"]
+
+[node name="HUD" type="CanvasLayer"]
+script = ExtResource("1_rpghv")
+
+[node name="Score" type="Label" parent="."]
+unique_name_in_owner = true
+offset_left = 4.0
+offset_right = 14.0
+offset_bottom = 23.0
+text = "0"
diff --git a/UI/hud.gd b/UI/hud.gd
new file mode 100644
index 0000000..d5f7cc3
--- /dev/null
+++ b/UI/hud.gd
@@ -0,0 +1,7 @@
+extends CanvasLayer
+
+
+func _ready() -> void:
+ Game.score_changed.connect(func():
+ %Score.text = str(Game.score)
+ )
diff --git a/Units/Assets/.digger-12.png-autosave.kra b/Units/Assets/.digger-12.png-autosave.kra
new file mode 100644
index 0000000..48ea609
--- /dev/null
+++ b/Units/Assets/.digger-12.png-autosave.kra
Binary files differ
diff --git a/Units/Assets/block-01.png b/Units/Assets/block-01.png
new file mode 100644
index 0000000..6ed5c44
--- /dev/null
+++ b/Units/Assets/block-01.png
Binary files differ
diff --git a/Units/Assets/block-01.png.import b/Units/Assets/block-01.png.import
new file mode 100644
index 0000000..2630b93
--- /dev/null
+++ b/Units/Assets/block-01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://b83lx3sg8gy3a"
+path="res://.godot/imported/block-01.png-1695dc245f729c75819a527a1507dccc.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/block-01.png"
+dest_files=["res://.godot/imported/block-01.png-1695dc245f729c75819a527a1507dccc.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/block-02.png b/Units/Assets/block-02.png
new file mode 100644
index 0000000..caa66ca
--- /dev/null
+++ b/Units/Assets/block-02.png
Binary files differ
diff --git a/Units/Assets/block-02.png.import b/Units/Assets/block-02.png.import
new file mode 100644
index 0000000..28beb19
--- /dev/null
+++ b/Units/Assets/block-02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bahb64b0hfsex"
+path="res://.godot/imported/block-02.png-7fdb19881016d7c80e9c5bdd9e250430.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/block-02.png"
+dest_files=["res://.godot/imported/block-02.png-7fdb19881016d7c80e9c5bdd9e250430.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/block-03.png b/Units/Assets/block-03.png
new file mode 100644
index 0000000..cf63b60
--- /dev/null
+++ b/Units/Assets/block-03.png
Binary files differ
diff --git a/Units/Assets/block-03.png.import b/Units/Assets/block-03.png.import
new file mode 100644
index 0000000..1ad5c50
--- /dev/null
+++ b/Units/Assets/block-03.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://7b84db70nhue"
+path="res://.godot/imported/block-03.png-f7d66ff98278120a988260b748e510e0.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/block-03.png"
+dest_files=["res://.godot/imported/block-03.png-f7d66ff98278120a988260b748e510e0.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/block-04.png b/Units/Assets/block-04.png
new file mode 100644
index 0000000..0a1c423
--- /dev/null
+++ b/Units/Assets/block-04.png
Binary files differ
diff --git a/Units/Assets/block-04.png.import b/Units/Assets/block-04.png.import
new file mode 100644
index 0000000..cef4daf
--- /dev/null
+++ b/Units/Assets/block-04.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c26syxk8h63im"
+path="res://.godot/imported/block-04.png-2cf1840c3bbff73d0b9acc35a9e71943.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/block-04.png"
+dest_files=["res://.godot/imported/block-04.png-2cf1840c3bbff73d0b9acc35a9e71943.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/block-05.png b/Units/Assets/block-05.png
new file mode 100644
index 0000000..af5aebd
--- /dev/null
+++ b/Units/Assets/block-05.png
Binary files differ
diff --git a/Units/Assets/block-05.png.import b/Units/Assets/block-05.png.import
new file mode 100644
index 0000000..7b60620
--- /dev/null
+++ b/Units/Assets/block-05.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://522gm5sgmr4l"
+path="res://.godot/imported/block-05.png-e351894a385c2d2c0912aa0b6fc14ea5.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/block-05.png"
+dest_files=["res://.godot/imported/block-05.png-e351894a385c2d2c0912aa0b6fc14ea5.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/block-06.png b/Units/Assets/block-06.png
new file mode 100644
index 0000000..fcc4178
--- /dev/null
+++ b/Units/Assets/block-06.png
Binary files differ
diff --git a/Units/Assets/block-06.png.import b/Units/Assets/block-06.png.import
new file mode 100644
index 0000000..fc3467f
--- /dev/null
+++ b/Units/Assets/block-06.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://67nn1502av21"
+path="res://.godot/imported/block-06.png-5593f6e730af6273e8bb7d0571052257.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/block-06.png"
+dest_files=["res://.godot/imported/block-06.png-5593f6e730af6273e8bb7d0571052257.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-01.png b/Units/Assets/digger-01.png
new file mode 100644
index 0000000..817c1d4
--- /dev/null
+++ b/Units/Assets/digger-01.png
Binary files differ
diff --git a/Units/Assets/digger-01.png.import b/Units/Assets/digger-01.png.import
new file mode 100644
index 0000000..9ba4689
--- /dev/null
+++ b/Units/Assets/digger-01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://g7md34mbwlxa"
+path="res://.godot/imported/digger-01.png-0b3376cd1975501a6d98529ec87d998e.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-01.png"
+dest_files=["res://.godot/imported/digger-01.png-0b3376cd1975501a6d98529ec87d998e.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-01.png~ b/Units/Assets/digger-01.png~
new file mode 100644
index 0000000..8b5c645
--- /dev/null
+++ b/Units/Assets/digger-01.png~
Binary files differ
diff --git a/Units/Assets/digger-02.png b/Units/Assets/digger-02.png
new file mode 100644
index 0000000..02e50fe
--- /dev/null
+++ b/Units/Assets/digger-02.png
Binary files differ
diff --git a/Units/Assets/digger-02.png.import b/Units/Assets/digger-02.png.import
new file mode 100644
index 0000000..fdc16a0
--- /dev/null
+++ b/Units/Assets/digger-02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://de6ivhavxeakj"
+path="res://.godot/imported/digger-02.png-9b396bead79f6ef14626a5adab05370c.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-02.png"
+dest_files=["res://.godot/imported/digger-02.png-9b396bead79f6ef14626a5adab05370c.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-02.png~ b/Units/Assets/digger-02.png~
new file mode 100644
index 0000000..a19ef0b
--- /dev/null
+++ b/Units/Assets/digger-02.png~
Binary files differ
diff --git a/Units/Assets/digger-03.png b/Units/Assets/digger-03.png
new file mode 100644
index 0000000..ae57cb4
--- /dev/null
+++ b/Units/Assets/digger-03.png
Binary files differ
diff --git a/Units/Assets/digger-03.png.import b/Units/Assets/digger-03.png.import
new file mode 100644
index 0000000..b288e58
--- /dev/null
+++ b/Units/Assets/digger-03.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c068wiwg5r71d"
+path="res://.godot/imported/digger-03.png-80438aa703875a13ce8535ef22dd594a.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-03.png"
+dest_files=["res://.godot/imported/digger-03.png-80438aa703875a13ce8535ef22dd594a.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-04.png b/Units/Assets/digger-04.png
new file mode 100644
index 0000000..0722cdc
--- /dev/null
+++ b/Units/Assets/digger-04.png
Binary files differ
diff --git a/Units/Assets/digger-04.png.import b/Units/Assets/digger-04.png.import
new file mode 100644
index 0000000..ee63ffa
--- /dev/null
+++ b/Units/Assets/digger-04.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://ccwecsoh6sdcp"
+path="res://.godot/imported/digger-04.png-55350cda0b8ecf07d42c9d06e4d115cf.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-04.png"
+dest_files=["res://.godot/imported/digger-04.png-55350cda0b8ecf07d42c9d06e4d115cf.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-05.png b/Units/Assets/digger-05.png
new file mode 100644
index 0000000..4f31780
--- /dev/null
+++ b/Units/Assets/digger-05.png
Binary files differ
diff --git a/Units/Assets/digger-05.png.import b/Units/Assets/digger-05.png.import
new file mode 100644
index 0000000..3a0b132
--- /dev/null
+++ b/Units/Assets/digger-05.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bacb365t8muhc"
+path="res://.godot/imported/digger-05.png-05ba968bf2d7b38451bd426a00cc8eb9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-05.png"
+dest_files=["res://.godot/imported/digger-05.png-05ba968bf2d7b38451bd426a00cc8eb9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-06.png b/Units/Assets/digger-06.png
new file mode 100644
index 0000000..4c6ef35
--- /dev/null
+++ b/Units/Assets/digger-06.png
Binary files differ
diff --git a/Units/Assets/digger-06.png.import b/Units/Assets/digger-06.png.import
new file mode 100644
index 0000000..ec31e03
--- /dev/null
+++ b/Units/Assets/digger-06.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cfygr478cs1u8"
+path="res://.godot/imported/digger-06.png-a514a67c14551018ce86db192ef2ca6d.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-06.png"
+dest_files=["res://.godot/imported/digger-06.png-a514a67c14551018ce86db192ef2ca6d.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-07.png b/Units/Assets/digger-07.png
new file mode 100644
index 0000000..8dabbf3
--- /dev/null
+++ b/Units/Assets/digger-07.png
Binary files differ
diff --git a/Units/Assets/digger-07.png.import b/Units/Assets/digger-07.png.import
new file mode 100644
index 0000000..28e6121
--- /dev/null
+++ b/Units/Assets/digger-07.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dgkjd088gwux4"
+path="res://.godot/imported/digger-07.png-3007df4de397377fb166fffc612e28bd.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-07.png"
+dest_files=["res://.godot/imported/digger-07.png-3007df4de397377fb166fffc612e28bd.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-08.png b/Units/Assets/digger-08.png
new file mode 100644
index 0000000..a5198bf
--- /dev/null
+++ b/Units/Assets/digger-08.png
Binary files differ
diff --git a/Units/Assets/digger-08.png.import b/Units/Assets/digger-08.png.import
new file mode 100644
index 0000000..014ccfb
--- /dev/null
+++ b/Units/Assets/digger-08.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://hxwnw8c2cj3b"
+path="res://.godot/imported/digger-08.png-726296fb975b5be5e5d6704541897661.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-08.png"
+dest_files=["res://.godot/imported/digger-08.png-726296fb975b5be5e5d6704541897661.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-09.png b/Units/Assets/digger-09.png
new file mode 100644
index 0000000..7ca1778
--- /dev/null
+++ b/Units/Assets/digger-09.png
Binary files differ
diff --git a/Units/Assets/digger-09.png.import b/Units/Assets/digger-09.png.import
new file mode 100644
index 0000000..fe55c25
--- /dev/null
+++ b/Units/Assets/digger-09.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://rd244n0k3qb0"
+path="res://.godot/imported/digger-09.png-f403081152a78cfcb1b8c0a1d3349bf7.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-09.png"
+dest_files=["res://.godot/imported/digger-09.png-f403081152a78cfcb1b8c0a1d3349bf7.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-10.png b/Units/Assets/digger-10.png
new file mode 100644
index 0000000..4e25370
--- /dev/null
+++ b/Units/Assets/digger-10.png
Binary files differ
diff --git a/Units/Assets/digger-10.png.import b/Units/Assets/digger-10.png.import
new file mode 100644
index 0000000..10dae9d
--- /dev/null
+++ b/Units/Assets/digger-10.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://5ytob6fb7xg1"
+path="res://.godot/imported/digger-10.png-8854f06714e6706c94e530e987078d0e.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-10.png"
+dest_files=["res://.godot/imported/digger-10.png-8854f06714e6706c94e530e987078d0e.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-11.png b/Units/Assets/digger-11.png
new file mode 100644
index 0000000..73ffb34
--- /dev/null
+++ b/Units/Assets/digger-11.png
Binary files differ
diff --git a/Units/Assets/digger-11.png.import b/Units/Assets/digger-11.png.import
new file mode 100644
index 0000000..83bba92
--- /dev/null
+++ b/Units/Assets/digger-11.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dgyaiolxqewej"
+path="res://.godot/imported/digger-11.png-1629dafdcbc8ec26f5ba57dce0887ad9.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-11.png"
+dest_files=["res://.godot/imported/digger-11.png-1629dafdcbc8ec26f5ba57dce0887ad9.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/digger-12.png b/Units/Assets/digger-12.png
new file mode 100644
index 0000000..fe15f51
--- /dev/null
+++ b/Units/Assets/digger-12.png
Binary files differ
diff --git a/Units/Assets/digger-12.png.import b/Units/Assets/digger-12.png.import
new file mode 100644
index 0000000..0cea4ce
--- /dev/null
+++ b/Units/Assets/digger-12.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://lk8pl2yionqq"
+path="res://.godot/imported/digger-12.png-bd0c976cc8d819be384d3a80cea193af.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/digger-12.png"
+dest_files=["res://.godot/imported/digger-12.png-bd0c976cc8d819be384d3a80cea193af.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-01.png b/Units/Assets/fall-01.png
new file mode 100644
index 0000000..fef0f98
--- /dev/null
+++ b/Units/Assets/fall-01.png
Binary files differ
diff --git a/Units/Assets/fall-01.png.import b/Units/Assets/fall-01.png.import
new file mode 100644
index 0000000..49def8b
--- /dev/null
+++ b/Units/Assets/fall-01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cakbdblkdtrlu"
+path="res://.godot/imported/fall-01.png-8dd25570369bc99d51ea6f1781c45b33.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-01.png"
+dest_files=["res://.godot/imported/fall-01.png-8dd25570369bc99d51ea6f1781c45b33.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-02.png b/Units/Assets/fall-02.png
new file mode 100644
index 0000000..7a34373
--- /dev/null
+++ b/Units/Assets/fall-02.png
Binary files differ
diff --git a/Units/Assets/fall-02.png.import b/Units/Assets/fall-02.png.import
new file mode 100644
index 0000000..bffe6b1
--- /dev/null
+++ b/Units/Assets/fall-02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://duw1xurdh0kb3"
+path="res://.godot/imported/fall-02.png-9a9c847ed400a273fd4c7d09efef8a81.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-02.png"
+dest_files=["res://.godot/imported/fall-02.png-9a9c847ed400a273fd4c7d09efef8a81.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-03.png b/Units/Assets/fall-03.png
new file mode 100644
index 0000000..3bc8ac7
--- /dev/null
+++ b/Units/Assets/fall-03.png
Binary files differ
diff --git a/Units/Assets/fall-03.png.import b/Units/Assets/fall-03.png.import
new file mode 100644
index 0000000..c3bf370
--- /dev/null
+++ b/Units/Assets/fall-03.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://m3tqofnq4v4y"
+path="res://.godot/imported/fall-03.png-61e2bdb6b1d2eddd60c7ba823e77c1c1.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-03.png"
+dest_files=["res://.godot/imported/fall-03.png-61e2bdb6b1d2eddd60c7ba823e77c1c1.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-04.png b/Units/Assets/fall-04.png
new file mode 100644
index 0000000..ead558c
--- /dev/null
+++ b/Units/Assets/fall-04.png
Binary files differ
diff --git a/Units/Assets/fall-04.png.import b/Units/Assets/fall-04.png.import
new file mode 100644
index 0000000..2fa2db5
--- /dev/null
+++ b/Units/Assets/fall-04.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cnr47ro8mgj7p"
+path="res://.godot/imported/fall-04.png-8def9a3a67a05831b1b36c295cd47380.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-04.png"
+dest_files=["res://.godot/imported/fall-04.png-8def9a3a67a05831b1b36c295cd47380.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-05.png b/Units/Assets/fall-05.png
new file mode 100644
index 0000000..779bff3
--- /dev/null
+++ b/Units/Assets/fall-05.png
Binary files differ
diff --git a/Units/Assets/fall-05.png.import b/Units/Assets/fall-05.png.import
new file mode 100644
index 0000000..cf7439b
--- /dev/null
+++ b/Units/Assets/fall-05.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cvbtm4k0h3e7l"
+path="res://.godot/imported/fall-05.png-c4a5788ee410c88d2b3e6b369bc09b5d.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-05.png"
+dest_files=["res://.godot/imported/fall-05.png-c4a5788ee410c88d2b3e6b369bc09b5d.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-06.png b/Units/Assets/fall-06.png
new file mode 100644
index 0000000..f9bbb99
--- /dev/null
+++ b/Units/Assets/fall-06.png
Binary files differ
diff --git a/Units/Assets/fall-06.png.import b/Units/Assets/fall-06.png.import
new file mode 100644
index 0000000..b2309d3
--- /dev/null
+++ b/Units/Assets/fall-06.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cd7sg6e6unjx5"
+path="res://.godot/imported/fall-06.png-e044c20239145b267c56abd1931e1da6.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-06.png"
+dest_files=["res://.godot/imported/fall-06.png-e044c20239145b267c56abd1931e1da6.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-07.png b/Units/Assets/fall-07.png
new file mode 100644
index 0000000..d5c83a8
--- /dev/null
+++ b/Units/Assets/fall-07.png
Binary files differ
diff --git a/Units/Assets/fall-07.png.import b/Units/Assets/fall-07.png.import
new file mode 100644
index 0000000..936b172
--- /dev/null
+++ b/Units/Assets/fall-07.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://gkhoh22hglyf"
+path="res://.godot/imported/fall-07.png-e2bafbdd8a622c3c9342839418bafd21.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-07.png"
+dest_files=["res://.godot/imported/fall-07.png-e2bafbdd8a622c3c9342839418bafd21.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/fall-08.png b/Units/Assets/fall-08.png
new file mode 100644
index 0000000..9f1a088
--- /dev/null
+++ b/Units/Assets/fall-08.png
Binary files differ
diff --git a/Units/Assets/fall-08.png.import b/Units/Assets/fall-08.png.import
new file mode 100644
index 0000000..bac91f5
--- /dev/null
+++ b/Units/Assets/fall-08.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://yjym8h4wcsxq"
+path="res://.godot/imported/fall-08.png-43fc15d75d83082f0cb05e09f64e8fb8.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/fall-08.png"
+dest_files=["res://.godot/imported/fall-08.png-43fc15d75d83082f0cb05e09f64e8fb8.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/sheet.png b/Units/Assets/sheet.png
new file mode 100644
index 0000000..f8c18bb
--- /dev/null
+++ b/Units/Assets/sheet.png
Binary files differ
diff --git a/Units/Assets/sheet.png.import b/Units/Assets/sheet.png.import
new file mode 100644
index 0000000..bd277d7
--- /dev/null
+++ b/Units/Assets/sheet.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://ogf8o2xbuaup"
+path="res://.godot/imported/sheet.png-b0aca68d2d7d5453793c1cd483887991.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/sheet.png"
+dest_files=["res://.godot/imported/sheet.png-b0aca68d2d7d5453793c1cd483887991.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/sheet.png~ b/Units/Assets/sheet.png~
new file mode 100644
index 0000000..49c573e
--- /dev/null
+++ b/Units/Assets/sheet.png~
Binary files differ
diff --git a/Units/Assets/sheet2.png b/Units/Assets/sheet2.png
new file mode 100644
index 0000000..b8a3467
--- /dev/null
+++ b/Units/Assets/sheet2.png
Binary files differ
diff --git a/Units/Assets/sheet2.png.import b/Units/Assets/sheet2.png.import
new file mode 100644
index 0000000..3f284ec
--- /dev/null
+++ b/Units/Assets/sheet2.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://bshfxw5kot53e"
+path="res://.godot/imported/sheet2.png-dc904e075de59650c27f59fa651b62b1.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/sheet2.png"
+dest_files=["res://.godot/imported/sheet2.png-dc904e075de59650c27f59fa651b62b1.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-01.png b/Units/Assets/walk-01.png
new file mode 100644
index 0000000..f277916
--- /dev/null
+++ b/Units/Assets/walk-01.png
Binary files differ
diff --git a/Units/Assets/walk-01.png.import b/Units/Assets/walk-01.png.import
new file mode 100644
index 0000000..aa19046
--- /dev/null
+++ b/Units/Assets/walk-01.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://b6lxu22gho4h6"
+path="res://.godot/imported/walk-01.png-4cdd200caae347e2f8ae2e4c40bcd73f.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-01.png"
+dest_files=["res://.godot/imported/walk-01.png-4cdd200caae347e2f8ae2e4c40bcd73f.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-01.png~ b/Units/Assets/walk-01.png~
new file mode 100644
index 0000000..b9f1bc7
--- /dev/null
+++ b/Units/Assets/walk-01.png~
Binary files differ
diff --git a/Units/Assets/walk-02.png b/Units/Assets/walk-02.png
new file mode 100644
index 0000000..6900fa8
--- /dev/null
+++ b/Units/Assets/walk-02.png
Binary files differ
diff --git a/Units/Assets/walk-02.png.import b/Units/Assets/walk-02.png.import
new file mode 100644
index 0000000..f73582e
--- /dev/null
+++ b/Units/Assets/walk-02.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://nsavsf7unbsd"
+path="res://.godot/imported/walk-02.png-d6445247d08fe095550aea2aa2e2a164.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-02.png"
+dest_files=["res://.godot/imported/walk-02.png-d6445247d08fe095550aea2aa2e2a164.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-02.png~ b/Units/Assets/walk-02.png~
new file mode 100644
index 0000000..aab5c90
--- /dev/null
+++ b/Units/Assets/walk-02.png~
Binary files differ
diff --git a/Units/Assets/walk-03.png b/Units/Assets/walk-03.png
new file mode 100644
index 0000000..265ab1a
--- /dev/null
+++ b/Units/Assets/walk-03.png
Binary files differ
diff --git a/Units/Assets/walk-03.png.import b/Units/Assets/walk-03.png.import
new file mode 100644
index 0000000..6baccec
--- /dev/null
+++ b/Units/Assets/walk-03.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://i6tjuyv6ui0c"
+path="res://.godot/imported/walk-03.png-4fe6b7de4bb7d54f5b52d03028c04dbe.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-03.png"
+dest_files=["res://.godot/imported/walk-03.png-4fe6b7de4bb7d54f5b52d03028c04dbe.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-03.png~ b/Units/Assets/walk-03.png~
new file mode 100644
index 0000000..0642b1b
--- /dev/null
+++ b/Units/Assets/walk-03.png~
Binary files differ
diff --git a/Units/Assets/walk-04.png b/Units/Assets/walk-04.png
new file mode 100644
index 0000000..07a4015
--- /dev/null
+++ b/Units/Assets/walk-04.png
Binary files differ
diff --git a/Units/Assets/walk-04.png.import b/Units/Assets/walk-04.png.import
new file mode 100644
index 0000000..8807d3f
--- /dev/null
+++ b/Units/Assets/walk-04.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c3wo34ruatvla"
+path="res://.godot/imported/walk-04.png-231097fb950ae02543abf0305765a19c.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-04.png"
+dest_files=["res://.godot/imported/walk-04.png-231097fb950ae02543abf0305765a19c.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-04.png~ b/Units/Assets/walk-04.png~
new file mode 100644
index 0000000..a5c20f3
--- /dev/null
+++ b/Units/Assets/walk-04.png~
Binary files differ
diff --git a/Units/Assets/walk-05.png b/Units/Assets/walk-05.png
new file mode 100644
index 0000000..bb24997
--- /dev/null
+++ b/Units/Assets/walk-05.png
Binary files differ
diff --git a/Units/Assets/walk-05.png.import b/Units/Assets/walk-05.png.import
new file mode 100644
index 0000000..60b542e
--- /dev/null
+++ b/Units/Assets/walk-05.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://egao5u344dui"
+path="res://.godot/imported/walk-05.png-0919569a6c4f72f80ab7af37a35b4dc3.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-05.png"
+dest_files=["res://.godot/imported/walk-05.png-0919569a6c4f72f80ab7af37a35b4dc3.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-05.png~ b/Units/Assets/walk-05.png~
new file mode 100644
index 0000000..966db11
--- /dev/null
+++ b/Units/Assets/walk-05.png~
Binary files differ
diff --git a/Units/Assets/walk-06.png b/Units/Assets/walk-06.png
new file mode 100644
index 0000000..d0d914b
--- /dev/null
+++ b/Units/Assets/walk-06.png
Binary files differ
diff --git a/Units/Assets/walk-06.png.import b/Units/Assets/walk-06.png.import
new file mode 100644
index 0000000..a0b5e79
--- /dev/null
+++ b/Units/Assets/walk-06.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://vnijkqd41ux3"
+path="res://.godot/imported/walk-06.png-333322930407a70e2554e43bb58e1c3a.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-06.png"
+dest_files=["res://.godot/imported/walk-06.png-333322930407a70e2554e43bb58e1c3a.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-06.png~ b/Units/Assets/walk-06.png~
new file mode 100644
index 0000000..b28b656
--- /dev/null
+++ b/Units/Assets/walk-06.png~
Binary files differ
diff --git a/Units/Assets/walk-07.png b/Units/Assets/walk-07.png
new file mode 100644
index 0000000..f841c84
--- /dev/null
+++ b/Units/Assets/walk-07.png
Binary files differ
diff --git a/Units/Assets/walk-07.png.import b/Units/Assets/walk-07.png.import
new file mode 100644
index 0000000..dd7df76
--- /dev/null
+++ b/Units/Assets/walk-07.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://3th8lm5rb2pr"
+path="res://.godot/imported/walk-07.png-383f4df856ac0018ddb35d3cdbd22f12.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-07.png"
+dest_files=["res://.godot/imported/walk-07.png-383f4df856ac0018ddb35d3cdbd22f12.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-07.png~ b/Units/Assets/walk-07.png~
new file mode 100644
index 0000000..3945b18
--- /dev/null
+++ b/Units/Assets/walk-07.png~
Binary files differ
diff --git a/Units/Assets/walk-08.png b/Units/Assets/walk-08.png
new file mode 100644
index 0000000..066b048
--- /dev/null
+++ b/Units/Assets/walk-08.png
Binary files differ
diff --git a/Units/Assets/walk-08.png.import b/Units/Assets/walk-08.png.import
new file mode 100644
index 0000000..ec94776
--- /dev/null
+++ b/Units/Assets/walk-08.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://4jq5mhag1kan"
+path="res://.godot/imported/walk-08.png-70913828564e96aeba3e48fb92ef36ac.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk-08.png"
+dest_files=["res://.godot/imported/walk-08.png-70913828564e96aeba3e48fb92ef36ac.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Assets/walk-08.png~ b/Units/Assets/walk-08.png~
new file mode 100644
index 0000000..1176d0e
--- /dev/null
+++ b/Units/Assets/walk-08.png~
Binary files differ
diff --git a/Units/Assets/walk.png b/Units/Assets/walk.png
new file mode 100644
index 0000000..a1bcc4d
--- /dev/null
+++ b/Units/Assets/walk.png
Binary files differ
diff --git a/Units/Assets/walk.png.import b/Units/Assets/walk.png.import
new file mode 100644
index 0000000..b0f12a3
--- /dev/null
+++ b/Units/Assets/walk.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c86w047hoojis"
+path="res://.godot/imported/walk.png-ded3e60e5fc9327d00bb773646115b62.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://Units/Assets/walk.png"
+dest_files=["res://.godot/imported/walk.png-ded3e60e5fc9327d00bb773646115b62.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/Units/Blocker.tscn b/Units/Blocker.tscn
new file mode 100644
index 0000000..4f3a47e
--- /dev/null
+++ b/Units/Blocker.tscn
@@ -0,0 +1,23 @@
+[gd_scene load_steps=5 format=3 uid="uid://c08ymbokj7gcw"]
+
+[ext_resource type="Script" path="res://Units/blocker.gd" id="1_2f26o"]
+[ext_resource type="PackedScene" uid="uid://bj8j72hwnt6mo" path="res://animated_sprite.tscn" id="2_0lvg2"]
+[ext_resource type="SpriteFrames" uid="uid://diwyagjvsgq0i" path="res://Units/units_sprite_frames.tres" id="2_syoke"]
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_j6kqi"]
+size = Vector2(8, 10)
+
+[node name="Blocker" type="CharacterBody2D"]
+collision_layer = 3
+collision_mask = 256
+script = ExtResource("1_2f26o")
+
+[node name="AnimatedSprite" parent="." instance=ExtResource("2_0lvg2")]
+texture_filter = 1
+sprite_frames = ExtResource("2_syoke")
+animation = &"block"
+centered = false
+offset = Vector2(-4, -5)
+
+[node name="NavigationShape" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_j6kqi")
diff --git a/Units/Default.tscn b/Units/Default.tscn
new file mode 100644
index 0000000..1e33862
--- /dev/null
+++ b/Units/Default.tscn
@@ -0,0 +1,36 @@
+[gd_scene load_steps=5 format=3 uid="uid://con1448x4e6fj"]
+
+[ext_resource type="Script" path="res://Units/default.gd" id="1_kguyl"]
+[ext_resource type="PackedScene" uid="uid://bj8j72hwnt6mo" path="res://animated_sprite.tscn" id="2_5hewh"]
+[ext_resource type="SpriteFrames" uid="uid://diwyagjvsgq0i" path="res://Units/units_sprite_frames.tres" id="2_y5w2o"]
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_j6kqi"]
+size = Vector2(4, 9)
+
+[node name="Default" type="CharacterBody2D"]
+collision_mask = 256
+input_pickable = true
+script = ExtResource("1_kguyl")
+
+[node name="AnimatedSprite" parent="." instance=ExtResource("2_5hewh")]
+texture_filter = 1
+sprite_frames = ExtResource("2_y5w2o")
+animation = &"walk"
+centered = false
+offset = Vector2(-3, -5)
+
+[node name="NavigationShape" type="CollisionShape2D" parent="."]
+position = Vector2(0, 0.5)
+shape = SubResource("RectangleShape2D_j6kqi")
+
+[node name="RayLeft" type="RayCast2D" parent="."]
+position = Vector2(0, 4)
+target_position = Vector2(-3, 0)
+collision_mask = 258
+
+[node name="RayRight" type="RayCast2D" parent="."]
+position = Vector2(0, 4)
+target_position = Vector2(4, 0)
+collision_mask = 258
+
+[connection signal="input_event" from="." to="." method="_on_input_event"]
diff --git a/Units/Digger.tscn b/Units/Digger.tscn
new file mode 100644
index 0000000..819a969
--- /dev/null
+++ b/Units/Digger.tscn
@@ -0,0 +1,36 @@
+[gd_scene load_steps=5 format=3 uid="uid://41uhxuh0d2kr"]
+
+[ext_resource type="Script" path="res://Units/digger.gd" id="1_gtw36"]
+[ext_resource type="PackedScene" uid="uid://bj8j72hwnt6mo" path="res://animated_sprite.tscn" id="2_3ruku"]
+[ext_resource type="SpriteFrames" uid="uid://diwyagjvsgq0i" path="res://Units/units_sprite_frames.tres" id="2_hf257"]
+
+[sub_resource type="RectangleShape2D" id="RectangleShape2D_j6kqi"]
+size = Vector2(8, 10)
+
+[node name="Digger" type="CharacterBody2D"]
+collision_mask = 256
+script = ExtResource("1_gtw36")
+
+[node name="AnimatedSprite" parent="." instance=ExtResource("2_3ruku")]
+texture_filter = 1
+sprite_frames = ExtResource("2_hf257")
+animation = &"dig"
+frame_progress = 0.487318
+centered = false
+offset = Vector2(-7, -10)
+
+[node name="NavigationShape" type="CollisionShape2D" parent="."]
+shape = SubResource("RectangleShape2D_j6kqi")
+
+[node name="TickTimer" type="Timer" parent="."]
+process_callback = 0
+
+[node name="DigReference" type="Marker2D" parent="."]
+position = Vector2(0, 5)
+
+[node name="RayGround" type="RayCast2D" parent="."]
+position = Vector2(0, 5)
+target_position = Vector2(0, 2)
+collision_mask = 256
+
+[connection signal="timeout" from="TickTimer" to="." method="_on_tick_timer_timeout"]
diff --git a/Units/blocker.gd b/Units/blocker.gd
new file mode 100644
index 0000000..2702ae7
--- /dev/null
+++ b/Units/blocker.gd
@@ -0,0 +1,5 @@
+extends Unit
+
+
+func _ready():
+ $AnimatedSprite.play("block")
diff --git a/Units/default.gd b/Units/default.gd
new file mode 100644
index 0000000..23987c3
--- /dev/null
+++ b/Units/default.gd
@@ -0,0 +1,49 @@
+class_name UnitDefault
+extends Unit
+
+
+var speed := 1000.0
+var direction := Vector2.RIGHT
+
+
+func _physics_process(delta: float) -> void:
+ if not is_on_floor():
+ velocity.x = 0
+ velocity += get_gravity() * delta * Game.speed
+ $AnimatedSprite.play("fall")
+
+ if $RayLeft.is_colliding():
+ direction = Vector2.RIGHT
+ elif $RayRight.is_colliding():
+ direction = Vector2.LEFT
+
+ if is_on_floor():
+ velocity.x = direction.x * speed * delta * Game.speed
+
+ $AnimatedSprite.play("walk")
+ $AnimatedSprite.flip_h = direction.x < 0
+
+ move_and_slide()
+ var collision = get_last_slide_collision()
+ if collision:
+ var collider = collision.get_collider() as TileMapLayer
+ if collider is TileMapLayer:
+ var cell = collider.get_cell_tile_data(collider.get_coords_for_body_rid(collision.get_collider_rid())) as TileData
+ cell.set_collision_polygon_points(0, 0, PackedVector2Array([
+ Vector2(-7,-7), Vector2(-7,7), Vector2(7,7), Vector2(7,-7)
+ ]))
+
+
+func _on_input_event(_viewport: Node, event: InputEvent, _shape_idx: int) -> void:
+ if event.is_action_pressed("select"):
+ get_viewport().set_input_as_handled()
+ var blocker = preload("res://Units/Blocker.tscn").instantiate()
+ blocker.position = global_position
+ get_tree().current_scene.add_child(blocker)
+ queue_free()
+ if event.is_action_pressed("select2"):
+ get_viewport().set_input_as_handled()
+ var blocker = preload("res://Units/Digger.tscn").instantiate()
+ blocker.position = global_position
+ get_tree().current_scene.add_child(blocker)
+ queue_free()
diff --git a/Units/digger.gd b/Units/digger.gd
new file mode 100644
index 0000000..29a8275
--- /dev/null
+++ b/Units/digger.gd
@@ -0,0 +1,46 @@
+extends Unit
+
+
+var tick_frequency := 0.5
+
+
+func _ready():
+ $TickTimer.wait_time = tick_frequency / Game.speed
+ $TickTimer.start()
+
+ Game.speed_changed.connect(func():
+ $TickTimer.wait_time = tick_frequency / Game.speed
+ $TickTimer.start()
+ # calculate remaining time and set fraction accordingly
+ )
+
+ $AnimatedSprite.play("dig")
+
+
+func _physics_process(delta: float) -> void:
+ if not is_on_floor():
+ velocity += get_gravity() * delta * Game.speed
+
+ $RayGround.force_raycast_update()
+ if not $RayGround.is_colliding():
+ var default = load("res://Units/Default.tscn").instantiate()
+ default.global_position = global_position
+ get_tree().current_scene.add_child(default)
+ queue_free()
+
+ move_and_slide()
+
+
+func _on_tick_timer_timeout() -> void:
+ var size = Vector2($NavigationShape.shape.size.x + 4, 4)
+
+ Game.erase_map(
+ PackedVector2Array([
+ $DigReference.global_position + (size / 2) * Vector2(-1, -1),
+ $DigReference.global_position + (size / 2) * Vector2(1, -1),
+ $DigReference.global_position + (size / 2) * Vector2(1, 1),
+ $DigReference.global_position + (size / 2) * Vector2(-1, 1),
+ ]),
+ get_tree().current_scene.get_node("GroundCollision"),
+ get_tree().current_scene.get_node("Map")
+ )
diff --git a/Units/unit.gd b/Units/unit.gd
new file mode 100644
index 0000000..05a2b7d
--- /dev/null
+++ b/Units/unit.gd
@@ -0,0 +1,15 @@
+class_name Unit
+extends CharacterBody2D
+
+
+func enter_goal(goal_center: Vector2):
+ set_physics_process(false)
+
+ var tween = get_tree().create_tween()
+ tween.tween_property(self, "position", goal_center, 1.0 / Game.speed)
+ tween.tween_property(self, "scale", Vector2(0.1, 0.1), 1.0 / Game.speed)
+
+ await tween.finished
+
+ Game.score += 1
+ queue_free()
diff --git a/Units/units_sprite_frames.tres b/Units/units_sprite_frames.tres
new file mode 100644
index 0000000..9de7d52
--- /dev/null
+++ b/Units/units_sprite_frames.tres
@@ -0,0 +1,161 @@
+[gd_resource type="SpriteFrames" load_steps=35 format=3 uid="uid://diwyagjvsgq0i"]
+
+[ext_resource type="Texture2D" uid="uid://b83lx3sg8gy3a" path="res://Units/Assets/block-01.png" id="1_r18gm"]
+[ext_resource type="Texture2D" uid="uid://b6lxu22gho4h6" path="res://Units/Assets/walk-01.png" id="1_rqt5u"]
+[ext_resource type="Texture2D" uid="uid://nsavsf7unbsd" path="res://Units/Assets/walk-02.png" id="2_ebwei"]
+[ext_resource type="Texture2D" uid="uid://bahb64b0hfsex" path="res://Units/Assets/block-02.png" id="2_y0fh8"]
+[ext_resource type="Texture2D" uid="uid://7b84db70nhue" path="res://Units/Assets/block-03.png" id="3_gg46p"]
+[ext_resource type="Texture2D" uid="uid://i6tjuyv6ui0c" path="res://Units/Assets/walk-03.png" id="3_u76xw"]
+[ext_resource type="Texture2D" uid="uid://c3wo34ruatvla" path="res://Units/Assets/walk-04.png" id="4_4v806"]
+[ext_resource type="Texture2D" uid="uid://c26syxk8h63im" path="res://Units/Assets/block-04.png" id="4_t0krq"]
+[ext_resource type="Texture2D" uid="uid://522gm5sgmr4l" path="res://Units/Assets/block-05.png" id="5_4av1j"]
+[ext_resource type="Texture2D" uid="uid://egao5u344dui" path="res://Units/Assets/walk-05.png" id="5_xls6h"]
+[ext_resource type="Texture2D" uid="uid://67nn1502av21" path="res://Units/Assets/block-06.png" id="6_mxwej"]
+[ext_resource type="Texture2D" uid="uid://vnijkqd41ux3" path="res://Units/Assets/walk-06.png" id="6_umgyp"]
+[ext_resource type="Texture2D" uid="uid://g7md34mbwlxa" path="res://Units/Assets/digger-01.png" id="7_bplsh"]
+[ext_resource type="Texture2D" uid="uid://3th8lm5rb2pr" path="res://Units/Assets/walk-07.png" id="7_dahau"]
+[ext_resource type="Texture2D" uid="uid://de6ivhavxeakj" path="res://Units/Assets/digger-02.png" id="8_bqv3y"]
+[ext_resource type="Texture2D" uid="uid://4jq5mhag1kan" path="res://Units/Assets/walk-08.png" id="8_mt6h7"]
+[ext_resource type="Texture2D" uid="uid://cakbdblkdtrlu" path="res://Units/Assets/fall-01.png" id="9_0mfdb"]
+[ext_resource type="Texture2D" uid="uid://c068wiwg5r71d" path="res://Units/Assets/digger-03.png" id="9_w0xne"]
+[ext_resource type="Texture2D" uid="uid://duw1xurdh0kb3" path="res://Units/Assets/fall-02.png" id="10_i6j8i"]
+[ext_resource type="Texture2D" uid="uid://ccwecsoh6sdcp" path="res://Units/Assets/digger-04.png" id="10_pitel"]
+[ext_resource type="Texture2D" uid="uid://bacb365t8muhc" path="res://Units/Assets/digger-05.png" id="11_s2ucf"]
+[ext_resource type="Texture2D" uid="uid://m3tqofnq4v4y" path="res://Units/Assets/fall-03.png" id="11_s8ky8"]
+[ext_resource type="Texture2D" uid="uid://cnr47ro8mgj7p" path="res://Units/Assets/fall-04.png" id="12_dy00v"]
+[ext_resource type="Texture2D" uid="uid://cfygr478cs1u8" path="res://Units/Assets/digger-06.png" id="12_vkbma"]
+[ext_resource type="Texture2D" uid="uid://cvbtm4k0h3e7l" path="res://Units/Assets/fall-05.png" id="13_26swr"]
+[ext_resource type="Texture2D" uid="uid://dgkjd088gwux4" path="res://Units/Assets/digger-07.png" id="13_v0c8j"]
+[ext_resource type="Texture2D" uid="uid://hxwnw8c2cj3b" path="res://Units/Assets/digger-08.png" id="14_773yh"]
+[ext_resource type="Texture2D" uid="uid://cd7sg6e6unjx5" path="res://Units/Assets/fall-06.png" id="14_go0m8"]
+[ext_resource type="Texture2D" uid="uid://rd244n0k3qb0" path="res://Units/Assets/digger-09.png" id="15_38qu4"]
+[ext_resource type="Texture2D" uid="uid://gkhoh22hglyf" path="res://Units/Assets/fall-07.png" id="15_e2r2v"]
+[ext_resource type="Texture2D" uid="uid://yjym8h4wcsxq" path="res://Units/Assets/fall-08.png" id="16_6aakf"]
+[ext_resource type="Texture2D" uid="uid://5ytob6fb7xg1" path="res://Units/Assets/digger-10.png" id="16_mv4ra"]
+[ext_resource type="Texture2D" uid="uid://dgyaiolxqewej" path="res://Units/Assets/digger-11.png" id="17_8mltx"]
+[ext_resource type="Texture2D" uid="uid://lk8pl2yionqq" path="res://Units/Assets/digger-12.png" id="18_yspw3"]
+
+[resource]
+animations = [{
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_r18gm")
+}, {
+"duration": 1.0,
+"texture": ExtResource("2_y0fh8")
+}, {
+"duration": 1.0,
+"texture": ExtResource("3_gg46p")
+}, {
+"duration": 1.0,
+"texture": ExtResource("4_t0krq")
+}, {
+"duration": 1.0,
+"texture": ExtResource("5_4av1j")
+}, {
+"duration": 1.0,
+"texture": ExtResource("6_mxwej")
+}],
+"loop": true,
+"name": &"block",
+"speed": 6.0
+}, {
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("7_bplsh")
+}, {
+"duration": 1.0,
+"texture": ExtResource("8_bqv3y")
+}, {
+"duration": 1.0,
+"texture": ExtResource("9_w0xne")
+}, {
+"duration": 1.0,
+"texture": ExtResource("10_pitel")
+}, {
+"duration": 1.0,
+"texture": ExtResource("11_s2ucf")
+}, {
+"duration": 1.0,
+"texture": ExtResource("12_vkbma")
+}, {
+"duration": 1.0,
+"texture": ExtResource("13_v0c8j")
+}, {
+"duration": 1.0,
+"texture": ExtResource("14_773yh")
+}, {
+"duration": 1.0,
+"texture": ExtResource("15_38qu4")
+}, {
+"duration": 1.0,
+"texture": ExtResource("16_mv4ra")
+}, {
+"duration": 1.0,
+"texture": ExtResource("17_8mltx")
+}, {
+"duration": 1.0,
+"texture": ExtResource("18_yspw3")
+}],
+"loop": true,
+"name": &"dig",
+"speed": 10.0
+}, {
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("9_0mfdb")
+}, {
+"duration": 1.0,
+"texture": ExtResource("10_i6j8i")
+}, {
+"duration": 1.0,
+"texture": ExtResource("11_s8ky8")
+}, {
+"duration": 1.0,
+"texture": ExtResource("12_dy00v")
+}, {
+"duration": 1.0,
+"texture": ExtResource("13_26swr")
+}, {
+"duration": 1.0,
+"texture": ExtResource("14_go0m8")
+}, {
+"duration": 1.0,
+"texture": ExtResource("15_e2r2v")
+}, {
+"duration": 1.0,
+"texture": ExtResource("16_6aakf")
+}],
+"loop": false,
+"name": &"fall",
+"speed": 10.0
+}, {
+"frames": [{
+"duration": 1.0,
+"texture": ExtResource("1_rqt5u")
+}, {
+"duration": 1.0,
+"texture": ExtResource("2_ebwei")
+}, {
+"duration": 1.0,
+"texture": ExtResource("3_u76xw")
+}, {
+"duration": 1.0,
+"texture": ExtResource("4_4v806")
+}, {
+"duration": 1.0,
+"texture": ExtResource("5_xls6h")
+}, {
+"duration": 1.0,
+"texture": ExtResource("6_umgyp")
+}, {
+"duration": 1.0,
+"texture": ExtResource("7_dahau")
+}, {
+"duration": 1.0,
+"texture": ExtResource("8_mt6h7")
+}],
+"loop": true,
+"name": &"walk",
+"speed": 10.0
+}]
diff --git a/animated_sprite.gd b/animated_sprite.gd
new file mode 100644
index 0000000..b8ab7a9
--- /dev/null
+++ b/animated_sprite.gd
@@ -0,0 +1,8 @@
+extends AnimatedSprite2D
+
+
+func _ready() -> void:
+ speed_scale = Game.speed
+ Game.speed_changed.connect(func():
+ speed_scale = Game.speed
+ )
diff --git a/animated_sprite.tscn b/animated_sprite.tscn
new file mode 100644
index 0000000..7b59056
--- /dev/null
+++ b/animated_sprite.tscn
@@ -0,0 +1,6 @@
+[gd_scene load_steps=2 format=3 uid="uid://bj8j72hwnt6mo"]
+
+[ext_resource type="Script" path="res://animated_sprite.gd" id="1_b0uyt"]
+
+[node name="AnimatedSprite" type="AnimatedSprite2D"]
+script = ExtResource("1_b0uyt")
diff --git a/game.gd b/game.gd
new file mode 100644
index 0000000..4e6074f
--- /dev/null
+++ b/game.gd
@@ -0,0 +1,40 @@
+extends Node
+
+
+signal speed_changed
+var speed := 1.0 :
+ set(value):
+ speed = value
+ speed_changed.emit()
+
+signal score_changed
+var score := 0 :
+ set(value):
+ score = value
+ score_changed.emit()
+
+
+func erase_map(points: PackedVector2Array, collision_container: StaticBody2D, visibility_container: Node2D):
+ var collision_polygons = collision_container.get_children()
+ var visibility_polygons = visibility_container.get_children()
+
+ for idx in range(collision_polygons.size()):
+ var collision_node: CollisionPolygon2D = collision_polygons[idx]
+ var visibility_node: Polygon2D = visibility_polygons[idx]
+
+ var clipped = Geometry2D.clip_polygons(collision_node.polygon, points)
+
+ if clipped.size() > 0 and not Geometry2D.is_polygon_clockwise(clipped[0]):
+ collision_node.polygon = clipped[0]
+ visibility_node.polygon = clipped[0]
+
+ if clipped.size() > 1 and not Geometry2D.is_polygon_clockwise(clipped[1]):
+ var collision_polygon = CollisionPolygon2D.new()
+ collision_polygon.polygon = clipped[1]
+ collision_container.add_child(collision_polygon)
+
+ var visibility_polygon = Polygon2D.new()
+ visibility_polygon.polygon = clipped[1]
+ visibility_polygon.clip_children = CanvasItem.CLIP_CHILDREN_ONLY
+ visibility_polygon.add_child(visibility_node.get_node("TileMapLayer").duplicate())
+ visibility_container.add_child(visibility_polygon)
diff --git a/icon.svg b/icon.svg
new file mode 100644
index 0000000..9d8b7fa
--- /dev/null
+++ b/icon.svg
@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg> \ No newline at end of file
diff --git a/icon.svg.import b/icon.svg.import
new file mode 100644
index 0000000..fc3a063
--- /dev/null
+++ b/icon.svg.import
@@ -0,0 +1,37 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dusfi5txr6qow"
+path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://icon.svg"
+dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
+svg/scale=1.0
+editor/scale_with_editor_scale=false
+editor/convert_colors_with_editor_theme=false
diff --git a/project.godot b/project.godot
new file mode 100644
index 0000000..eec8314
--- /dev/null
+++ b/project.godot
@@ -0,0 +1,54 @@
+; 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=5
+
+[application]
+
+config/name="Lemmings"
+run/main_scene="res://Stages/world_01.tscn"
+config/features=PackedStringArray("4.3", "Mobile")
+config/icon="res://icon.svg"
+
+[autoload]
+
+Game="*res://Game.tscn"
+
+[display]
+
+window/size/viewport_width=320
+window/size/viewport_height=240
+window/stretch/mode="viewport"
+
+[input]
+
+select={
+"deadzone": 0.5,
+"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":1,"position":Vector2(246, 22),"global_position":Vector2(255, 68),"factor":1.0,"button_index":1,"canceled":false,"pressed":true,"double_click":false,"script":null)
+]
+}
+select2={
+"deadzone": 0.5,
+"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":2,"position":Vector2(149, 20),"global_position":Vector2(158, 66),"factor":1.0,"button_index":2,"canceled":false,"pressed":true,"double_click":false,"script":null)
+]
+}
+
+[layer_names]
+
+2d_physics/layer_1="Unit"
+2d_physics/layer_2="Blocker"
+2d_physics/layer_9="Ground"
+2d_physics/layer_11="Goal"
+
+[physics]
+
+2d/default_gravity=400.0
+
+[rendering]
+
+renderer/rendering_method="mobile"