Compare commits
	
		
			3 Commits
		
	
	
		
			week3_prep
			...
			main
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| d5c87727b9 | |||
| bdaeeec44f | |||
| d656a8663e | 
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/badguys/slime_green.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 908 B  | 
@ -2,16 +2,16 @@
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://bc8cpuacrbf0y"
 | 
			
		||||
path="res://.godot/imported/pixel_bullet.png-30d6d1e8b5e1332f8b2e2cee72a9e790.ctex"
 | 
			
		||||
uid="uid://bnfqqdcx7u4qt"
 | 
			
		||||
path="res://.godot/imported/slime_green.png-21e7f3de42454347166252dd70ddb7e7.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/projectiles/pixel_bullet.png"
 | 
			
		||||
dest_files=["res://.godot/imported/pixel_bullet.png-30d6d1e8b5e1332f8b2e2cee72a9e790.ctex"]
 | 
			
		||||
source_file="res://assets/graphics/badguys/slime_green.png"
 | 
			
		||||
dest_files=["res://.godot/imported/slime_green.png-21e7f3de42454347166252dd70ddb7e7.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/environment/background.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 7.0 KiB  | 
@ -2,16 +2,16 @@
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://y7gjdptxvjfu"
 | 
			
		||||
path="res://.godot/imported/Player Idle 48x48.png-b35e1ef309601cafc0161eed9f72d3a6.ctex"
 | 
			
		||||
uid="uid://dhsr2i5kesaxt"
 | 
			
		||||
path="res://.godot/imported/background.png-541e679da9b6694894cf282b639d4fa2.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/animations/player/idle/Player Idle 48x48.png"
 | 
			
		||||
dest_files=["res://.godot/imported/Player Idle 48x48.png-b35e1ef309601cafc0161eed9f72d3a6.ctex"]
 | 
			
		||||
source_file="res://assets/graphics/environment/background.png"
 | 
			
		||||
dest_files=["res://.godot/imported/background.png-541e679da9b6694894cf282b639d4fa2.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/environment/midground.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.8 KiB  | 
							
								
								
									
										40
									
								
								assets/graphics/environment/midground.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://dmpvsw77pc6w1"
 | 
			
		||||
path="res://.godot/imported/midground.png-7df50856e08893ab1487d9520f321193.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/environment/midground.png"
 | 
			
		||||
dest_files=["res://.godot/imported/midground.png-7df50856e08893ab1487d9520f321193.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/environment/sky.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 670 B  | 
							
								
								
									
										40
									
								
								assets/graphics/environment/sky.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://do2gp0jp762js"
 | 
			
		||||
path="res://.godot/imported/sky.png-87ee3f869f476b86b8c4a0a2c430b158.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/environment/sky.png"
 | 
			
		||||
dest_files=["res://.godot/imported/sky.png-87ee3f869f476b86b8c4a0a2c430b158.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/environment/terrain/Terrain (32x32).png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 12 KiB  | 
@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://bsaouyyno4ua"
 | 
			
		||||
path="res://.godot/imported/Terrain (32x32).png-81a713b69add642b2640197ae95d1555.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/environment/terrain/Terrain (32x32).png"
 | 
			
		||||
dest_files=["res://.godot/imported/Terrain (32x32).png-81a713b69add642b2640197ae95d1555.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/environment/terrain/airplane.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 2.4 KiB  | 
							
								
								
									
										40
									
								
								assets/graphics/environment/terrain/airplane.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://drigbyu4w5ppu"
 | 
			
		||||
path="res://.godot/imported/airplane.png-3695e985bea17c80e57a01d4f97e34b5.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/environment/terrain/airplane.png"
 | 
			
		||||
dest_files=["res://.godot/imported/airplane.png-3695e985bea17c80e57a01d4f97e34b5.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/environment/terrain/mushroom_32x64.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.0 KiB  | 
@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://bqj8chrd5i5iw"
 | 
			
		||||
path="res://.godot/imported/mushroom_32x64.png-cefb137d64a82ca31a8f0068d916c09f.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/environment/terrain/mushroom_32x64.png"
 | 
			
		||||
dest_files=["res://.godot/imported/mushroom_32x64.png-cefb137d64a82ca31a8f0068d916c09f.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/environment/terrain/veg_32x32.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 675 B  | 
							
								
								
									
										40
									
								
								assets/graphics/environment/terrain/veg_32x32.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://bgiw80mpxbcgh"
 | 
			
		||||
path="res://.godot/imported/veg_32x32.png-4b0b47ef99f3aa28e8f24956e44a31a5.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/environment/terrain/veg_32x32.png"
 | 
			
		||||
dest_files=["res://.godot/imported/veg_32x32.png-4b0b47ef99f3aa28e8f24956e44a31a5.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/objects/crate (1).png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.7 KiB  | 
							
								
								
									
										40
									
								
								assets/graphics/objects/crate (1).png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://6n4mj3l4oqlt"
 | 
			
		||||
path="res://.godot/imported/crate (1).png-5f4351e848f9118c4e679c70ad9284b0.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/objects/crate (1).png"
 | 
			
		||||
dest_files=["res://.godot/imported/crate (1).png-5f4351e848f9118c4e679c70ad9284b0.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/pickups/coin.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 500 B  | 
							
								
								
									
										40
									
								
								assets/graphics/pickups/coin.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://ld0dyimucghu"
 | 
			
		||||
path="res://.godot/imported/coin.png-f0b33289d8d72c34d5a0c76da4c0f19c.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/pickups/coin.png"
 | 
			
		||||
dest_files=["res://.godot/imported/coin.png-f0b33289d8d72c34d5a0c76da4c0f19c.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB  | 
							
								
								
									
										40
									
								
								assets/graphics/player/idle/Player Idle 48x48 (1).png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://vr36ruu3ew70"
 | 
			
		||||
path="res://.godot/imported/Player Idle 48x48 (1).png-4a5b40070f8459bc3ad06905bee7b109.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/player/idle/Player Idle 48x48 (1).png"
 | 
			
		||||
dest_files=["res://.godot/imported/Player Idle 48x48 (1).png-4a5b40070f8459bc3ad06905bee7b109.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 1021 B After Width: | Height: | Size: 1021 B  | 
@ -2,16 +2,16 @@
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://bpchnouakdsvk"
 | 
			
		||||
path="res://.godot/imported/player jump 48x48.png-49f79fd5510be01ac15a884acca16d43.ctex"
 | 
			
		||||
uid="uid://dr8leuj7yjpmo"
 | 
			
		||||
path="res://.godot/imported/player jump 48x48.png-edea6600ba0b9bf536bde1d00983fd16.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/animations/player/jump/player jump 48x48.png"
 | 
			
		||||
dest_files=["res://.godot/imported/player jump 48x48.png-49f79fd5510be01ac15a884acca16d43.ctex"]
 | 
			
		||||
source_file="res://assets/graphics/player/jumpandfall/player jump 48x48.png"
 | 
			
		||||
dest_files=["res://.godot/imported/player jump 48x48.png-edea6600ba0b9bf536bde1d00983fd16.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB  | 
@ -2,16 +2,16 @@
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://bqdop2arlx7rr"
 | 
			
		||||
path="res://.godot/imported/player run 48x48.png-d5efa0f3a9f0a70a93e094c3e7f118ec.ctex"
 | 
			
		||||
uid="uid://gat5giebysdj"
 | 
			
		||||
path="res://.godot/imported/player run 48x48.png-6d66612d48bfa4c8721495ba557ab7c6.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/animations/player/run/player run 48x48.png"
 | 
			
		||||
dest_files=["res://.godot/imported/player run 48x48.png-d5efa0f3a9f0a70a93e094c3e7f118ec.ctex"]
 | 
			
		||||
source_file="res://assets/graphics/player/run/player run 48x48.png"
 | 
			
		||||
dest_files=["res://.godot/imported/player run 48x48.png-6d66612d48bfa4c8721495ba557ab7c6.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								assets/graphics/player/shove/Player Punch 64x64.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 3.2 KiB  | 
							
								
								
									
										40
									
								
								assets/graphics/player/shove/Player Punch 64x64.png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://csmss00eyd21r"
 | 
			
		||||
path="res://.godot/imported/Player Punch 64x64.png-e42127c3286f806d366b880ff4e58ed8.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/player/shove/Player Punch 64x64.png"
 | 
			
		||||
dest_files=["res://.godot/imported/Player Punch 64x64.png-e42127c3286f806d366b880ff4e58ed8.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
| 
		 After Width: | Height: | Size: 99 KiB  | 
@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://m3usnluuexas"
 | 
			
		||||
path="res://.godot/imported/Screenshot from 2025-10-20 20-34-37.png-aa4b21e34caa204a3c782a86efe65989.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/projectiles/Screenshot from 2025-10-20 20-34-37.png"
 | 
			
		||||
dest_files=["res://.godot/imported/Screenshot from 2025-10-20 20-34-37.png-aa4b21e34caa204a3c782a86efe65989.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.8 KiB  | 
							
								
								
									
										40
									
								
								assets/graphics/projectiles/pixel_bullet (1).png.import
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,40 @@
 | 
			
		||||
[remap]
 | 
			
		||||
 | 
			
		||||
importer="texture"
 | 
			
		||||
type="CompressedTexture2D"
 | 
			
		||||
uid="uid://db8y73is6w2g0"
 | 
			
		||||
path="res://.godot/imported/pixel_bullet (1).png-00812eaaf5a628e238220e7c5da62499.ctex"
 | 
			
		||||
metadata={
 | 
			
		||||
"vram_texture": false
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
[deps]
 | 
			
		||||
 | 
			
		||||
source_file="res://assets/graphics/projectiles/pixel_bullet (1).png"
 | 
			
		||||
dest_files=["res://.godot/imported/pixel_bullet (1).png-00812eaaf5a628e238220e7c5da62499.ctex"]
 | 
			
		||||
 | 
			
		||||
[params]
 | 
			
		||||
 | 
			
		||||
compress/mode=0
 | 
			
		||||
compress/high_quality=false
 | 
			
		||||
compress/lossy_quality=0.7
 | 
			
		||||
compress/uastc_level=0
 | 
			
		||||
compress/rdo_quality_loss=0.0
 | 
			
		||||
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/channel_remap/red=0
 | 
			
		||||
process/channel_remap/green=1
 | 
			
		||||
process/channel_remap/blue=2
 | 
			
		||||
process/channel_remap/alpha=3
 | 
			
		||||
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
 | 
			
		||||
@ -15,6 +15,18 @@ run/main_scene="uid://cy1i6ucex6m0d"
 | 
			
		||||
config/features=PackedStringArray("4.5", "Forward Plus")
 | 
			
		||||
config/icon="res://icon.svg"
 | 
			
		||||
 | 
			
		||||
[autoload]
 | 
			
		||||
 | 
			
		||||
Gamecontroller="*res://scripts/gamecontroller.gd"
 | 
			
		||||
 | 
			
		||||
[display]
 | 
			
		||||
 | 
			
		||||
window/size/viewport_width=320
 | 
			
		||||
window/size/viewport_height=180
 | 
			
		||||
window/size/window_width_override=960
 | 
			
		||||
window/size/window_height_override=540
 | 
			
		||||
window/stretch/mode="viewport"
 | 
			
		||||
 | 
			
		||||
[file_customization]
 | 
			
		||||
 | 
			
		||||
folder_colors={
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,7 @@
 | 
			
		||||
[gd_scene load_steps=3 format=3 uid="uid://daa6idpu4gkat"]
 | 
			
		||||
[gd_scene load_steps=4 format=3 uid="uid://daa6idpu4gkat"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Script" uid="uid://ock81bqismk0" path="res://scripts/bullet.gd" id="1_mkf8s"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://db8y73is6w2g0" path="res://assets/graphics/projectiles/pixel_bullet (1).png" id="2_y25gk"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_h1aey"]
 | 
			
		||||
size = Vector2(8, 6)
 | 
			
		||||
@ -11,3 +12,12 @@ script = ExtResource("1_mkf8s")
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
 | 
			
		||||
shape = SubResource("RectangleShape2D_h1aey")
 | 
			
		||||
debug_color = Color(0.95943683, 0.18113726, 0.24279165, 0.41960785)
 | 
			
		||||
 | 
			
		||||
[node name="BulletGraphic" type="Sprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(-2, -2)
 | 
			
		||||
rotation = 3.1415927
 | 
			
		||||
scale = Vector2(0.07614212, 0.1079566)
 | 
			
		||||
texture = ExtResource("2_y25gk")
 | 
			
		||||
 | 
			
		||||
[connection signal="area_entered" from="." to="." method="_on_area_entered"]
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										113
									
								
								scenes/coin.tscn
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,113 @@
 | 
			
		||||
[gd_scene load_steps=17 format=3 uid="uid://dxocmoeuu32ex"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Script" uid="uid://dxweii7qmijb8" path="res://scripts/coin.gd" id="1_i64fm"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://ld0dyimucghu" path="res://assets/graphics/pickups/coin.png" id="1_rwqht"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_i64fm"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(0, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_11l1o"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(16, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_d14el"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(32, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_1ikuy"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(48, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_wnlwo"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(64, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_jig8b"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(80, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xmuha"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(96, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_kfxoj"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(112, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_jsmju"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(128, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_s0mny"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(144, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_7cc30"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(160, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_rojmm"]
 | 
			
		||||
atlas = ExtResource("1_rwqht")
 | 
			
		||||
region = Rect2(176, 0, 16, 16)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="SpriteFrames" id="SpriteFrames_ls27i"]
 | 
			
		||||
animations = [{
 | 
			
		||||
"frames": [{
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_i64fm")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_11l1o")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_d14el")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_1ikuy")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_wnlwo")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_jig8b")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_xmuha")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_kfxoj")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_jsmju")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_s0mny")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_7cc30")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_rojmm")
 | 
			
		||||
}],
 | 
			
		||||
"loop": true,
 | 
			
		||||
"name": &"default",
 | 
			
		||||
"speed": 12.0
 | 
			
		||||
}]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="CircleShape2D" id="CircleShape2D_ssuvv"]
 | 
			
		||||
radius = 5.0
 | 
			
		||||
 | 
			
		||||
[node name="Coin" type="Area2D"]
 | 
			
		||||
script = ExtResource("1_i64fm")
 | 
			
		||||
 | 
			
		||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
sprite_frames = SubResource("SpriteFrames_ls27i")
 | 
			
		||||
autoplay = "default"
 | 
			
		||||
frame_progress = 0.3844591
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
 | 
			
		||||
shape = SubResource("CircleShape2D_ssuvv")
 | 
			
		||||
 | 
			
		||||
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
 | 
			
		||||
@ -1,11 +1,17 @@
 | 
			
		||||
[gd_scene load_steps=2 format=3 uid="uid://qv8blu8wkqvq"]
 | 
			
		||||
[gd_scene load_steps=3 format=3 uid="uid://qv8blu8wkqvq"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://6n4mj3l4oqlt" path="res://assets/graphics/objects/crate (1).png" id="1_b66cd"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_uwrxv"]
 | 
			
		||||
 | 
			
		||||
[node name="Crate" type="RigidBody2D"]
 | 
			
		||||
rotation = -0.522403
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
 | 
			
		||||
shape = SubResource("RectangleShape2D_uwrxv")
 | 
			
		||||
debug_color = Color(0.84557056, 0.3727497, 0.1753774, 0.41960785)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
scale = Vector2(0.08103401, 0.080175474)
 | 
			
		||||
texture = ExtResource("1_b66cd")
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										515
									
								
								scenes/game.tscn
									
									
									
									
									
								
							
							
						
						@ -1,29 +1,462 @@
 | 
			
		||||
[gd_scene load_steps=11 format=3 uid="uid://cy1i6ucex6m0d"]
 | 
			
		||||
[gd_scene load_steps=22 format=4 uid="uid://cy1i6ucex6m0d"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Script" uid="uid://crhflh7kooolf" path="res://scripts/gamecontroller.gd" id="1_lbhrr"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://qv8blu8wkqvq" path="res://scenes/crate.tscn" id="1_uwrxv"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://drigbyu4w5ppu" path="res://assets/graphics/environment/terrain/airplane.png" id="2_0tnpc"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bsaouyyno4ua" path="res://assets/graphics/environment/terrain/Terrain (32x32).png" id="2_gee14"]
 | 
			
		||||
[ext_resource type="Script" uid="uid://co43e72devw6g" path="res://scripts/scene_manager.gd" id="2_p57ef"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://do2gp0jp762js" path="res://assets/graphics/environment/sky.png" id="2_vtaks"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://dmrrbiwqptrho" path="res://scenes/trigger.tscn" id="2_yqjtg"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://dhsr2i5kesaxt" path="res://assets/graphics/environment/background.png" id="3_kvpfn"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://b1yy0sybg66hh" path="res://scenes/player.tscn" id="3_lnu2h"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://daa6idpu4gkat" path="res://scenes/bullet.tscn" id="5_iywne"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://b5n0lwes8qpu5" path="res://scenes/grenade.tscn" id="7_u5sy4"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://dmpvsw77pc6w1" path="res://assets/graphics/environment/midground.png" id="4_dinhu"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bgiw80mpxbcgh" path="res://assets/graphics/environment/terrain/veg_32x32.png" id="4_vtaks"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bqj8chrd5i5iw" path="res://assets/graphics/environment/terrain/mushroom_32x64.png" id="5_kvpfn"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://dxocmoeuu32ex" path="res://scenes/coin.tscn" id="13_kvuet"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://ccx1uakpj5143" path="res://scenes/slime.tscn" id="14_trtic"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileMapPattern" id="TileMapPattern_p57ef"]
 | 
			
		||||
tile_data = PackedInt32Array(0, 0, 0, 65536, 0, 1, 131072, 0, 2, 1, 65536, 0, 65537, 393216, 0, 131073, 65536, 2, 2, 65536, 0, 65538, 393216, 0, 131074, 65536, 2, 3, 65536, 0, 65539, 393216, 0, 131075, 65536, 2, 4, 131072, 0, 65540, 131072, 1, 131076, 131072, 2)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileMapPattern" id="TileMapPattern_u5sy4"]
 | 
			
		||||
tile_data = PackedInt32Array(0, 983040, 3, 65536, 262144, 2, 1, 131072, 4)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_0tnpc"]
 | 
			
		||||
texture = ExtResource("2_gee14")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrain = 0
 | 
			
		||||
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
1:0/0 = 0
 | 
			
		||||
1:0/0/terrain_set = 0
 | 
			
		||||
1:0/0/terrain = 0
 | 
			
		||||
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:0/0 = 0
 | 
			
		||||
2:0/0/terrain_set = 0
 | 
			
		||||
2:0/0/terrain = 0
 | 
			
		||||
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
2:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
2:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
4:0/0 = 0
 | 
			
		||||
4:0/0/terrain_set = 0
 | 
			
		||||
4:0/0/terrain = 0
 | 
			
		||||
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:0/0 = 0
 | 
			
		||||
6:0/0/terrain_set = 0
 | 
			
		||||
6:0/0/terrain = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
7:0/0 = 0
 | 
			
		||||
7:0/0/terrain_set = 0
 | 
			
		||||
7:0/0/terrain = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
9:0/0 = 0
 | 
			
		||||
9:0/0/terrain_set = 0
 | 
			
		||||
9:0/0/terrain = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:0/0 = 0
 | 
			
		||||
10:0/0/terrain_set = 0
 | 
			
		||||
10:0/0/terrain = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
12:0/0 = 0
 | 
			
		||||
12:0/0/terrain_set = 0
 | 
			
		||||
12:0/0/terrain = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:0/0 = 0
 | 
			
		||||
13:0/0/terrain_set = 0
 | 
			
		||||
13:0/0/terrain = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:0/0 = 0
 | 
			
		||||
15:0/0/terrain_set = 0
 | 
			
		||||
15:0/0/terrain = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:1/0 = 0
 | 
			
		||||
0:1/0/terrain_set = 0
 | 
			
		||||
0:1/0/terrain = 0
 | 
			
		||||
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
1:1/0 = 0
 | 
			
		||||
2:1/0 = 0
 | 
			
		||||
2:1/0/terrain_set = 0
 | 
			
		||||
2:1/0/terrain = 0
 | 
			
		||||
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
4:1/0 = 0
 | 
			
		||||
4:1/0/terrain_set = 0
 | 
			
		||||
4:1/0/terrain = 0
 | 
			
		||||
4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
4:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:1/0 = 0
 | 
			
		||||
6:1/0/terrain_set = 0
 | 
			
		||||
6:1/0/terrain = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:1/0 = 0
 | 
			
		||||
7:1/0/terrain_set = 0
 | 
			
		||||
7:1/0/terrain = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
9:1/0 = 0
 | 
			
		||||
9:1/0/terrain_set = 0
 | 
			
		||||
9:1/0/terrain = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
10:1/0 = 0
 | 
			
		||||
10:1/0/terrain_set = 0
 | 
			
		||||
10:1/0/terrain = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
12:1/0 = 0
 | 
			
		||||
12:1/0/terrain_set = 0
 | 
			
		||||
12:1/0/terrain = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
13:1/0 = 0
 | 
			
		||||
13:1/0/terrain_set = 0
 | 
			
		||||
13:1/0/terrain = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:1/0 = 0
 | 
			
		||||
15:1/0/terrain_set = 0
 | 
			
		||||
15:1/0/terrain = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
16:1/0 = 0
 | 
			
		||||
16:1/0/terrain_set = 0
 | 
			
		||||
16:1/0/terrain = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:2/0 = 0
 | 
			
		||||
0:2/0/terrain_set = 0
 | 
			
		||||
0:2/0/terrain = 0
 | 
			
		||||
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:2/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:2/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
1:2/0 = 0
 | 
			
		||||
1:2/0/terrain_set = 0
 | 
			
		||||
1:2/0/terrain = 0
 | 
			
		||||
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:2/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
2:2/0 = 0
 | 
			
		||||
2:2/0/terrain_set = 0
 | 
			
		||||
2:2/0/terrain = 0
 | 
			
		||||
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:2/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:2/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
2:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
4:2/0 = 0
 | 
			
		||||
4:2/0/terrain_set = 0
 | 
			
		||||
4:2/0/terrain = 0
 | 
			
		||||
4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:3/0 = 0
 | 
			
		||||
6:3/0/terrain_set = 0
 | 
			
		||||
6:3/0/terrain = 0
 | 
			
		||||
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -0.63726044, 16, -16, 16)
 | 
			
		||||
6:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
7:3/0 = 0
 | 
			
		||||
7:3/0/terrain_set = 0
 | 
			
		||||
7:3/0/terrain = 0
 | 
			
		||||
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(0.63726425, -16, 16, -16, 16, 16, 0.31863022, 16)
 | 
			
		||||
7:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:3/0 = 0
 | 
			
		||||
9:3/0/terrain_set = 0
 | 
			
		||||
9:3/0/terrain = 0
 | 
			
		||||
9:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -2.8676758, -16, -1.9117851)
 | 
			
		||||
9:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:3/0 = 0
 | 
			
		||||
10:3/0/terrain_set = 0
 | 
			
		||||
10:3/0/terrain = 0
 | 
			
		||||
10:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1.9117851, -16, -1.9117851)
 | 
			
		||||
10:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:3/0 = 0
 | 
			
		||||
12:3/0/terrain_set = 0
 | 
			
		||||
12:3/0/terrain = 0
 | 
			
		||||
12:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -1.2745209, 16, -16, 16)
 | 
			
		||||
12:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:3/0 = 0
 | 
			
		||||
13:3/0/terrain_set = 0
 | 
			
		||||
13:3/0/terrain = 0
 | 
			
		||||
13:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -2.8676758, -16, -3.186308)
 | 
			
		||||
13:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:3/0 = 0
 | 
			
		||||
15:3/0/terrain_set = 0
 | 
			
		||||
15:3/0/terrain = 0
 | 
			
		||||
15:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
15:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:3/0 = 0
 | 
			
		||||
16:3/0/terrain_set = 0
 | 
			
		||||
16:3/0/terrain = 0
 | 
			
		||||
16:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
16:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
0:4/0 = 0
 | 
			
		||||
0:4/0/terrain_set = 0
 | 
			
		||||
0:4/0/terrain = 0
 | 
			
		||||
0:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:4/0 = 0
 | 
			
		||||
1:4/0/terrain_set = 0
 | 
			
		||||
1:4/0/terrain = 0
 | 
			
		||||
1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:4/0 = 0
 | 
			
		||||
2:4/0/terrain_set = 0
 | 
			
		||||
2:4/0/terrain = 0
 | 
			
		||||
2:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
4:4/0 = 0
 | 
			
		||||
4:4/0/terrain_set = 0
 | 
			
		||||
4:4/0/terrain = 0
 | 
			
		||||
4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 5.098091, 12.426601, 12.426601, 5.7353554, 16, -4.460829, 16, -11.789337, 11.789337, -16, 3.186306)
 | 
			
		||||
6:4/0 = 0
 | 
			
		||||
6:4/0/terrain_set = 0
 | 
			
		||||
6:4/0/terrain = 0
 | 
			
		||||
6:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -0.63726044, 16, -16, 16)
 | 
			
		||||
6:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:4/0 = 0
 | 
			
		||||
7:4/0/terrain_set = 0
 | 
			
		||||
7:4/0/terrain = 0
 | 
			
		||||
7:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(0.63726425, -16, 16, -16, 16, 16, 0.31863022, 16)
 | 
			
		||||
7:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:4/0 = 0
 | 
			
		||||
9:4/0/terrain_set = 0
 | 
			
		||||
9:4/0/terrain = 0
 | 
			
		||||
9:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 2.8676758, 16, 2.8676758, 16, 16, -16, 16)
 | 
			
		||||
9:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:4/0 = 0
 | 
			
		||||
10:4/0/terrain_set = 0
 | 
			
		||||
10:4/0/terrain = 0
 | 
			
		||||
10:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 2.8676758, 16, 2.8676758, 16, 16, -16, 16)
 | 
			
		||||
10:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
12:4/0 = 0
 | 
			
		||||
12:4/0/terrain_set = 0
 | 
			
		||||
12:4/0/terrain = 0
 | 
			
		||||
12:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 3.50494, 16, 2.5490456, 16, 16, -16, 16)
 | 
			
		||||
12:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:4/0 = 0
 | 
			
		||||
13:4/0/terrain_set = 0
 | 
			
		||||
13:4/0/terrain = 0
 | 
			
		||||
13:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(2.5490456, -16, 16, -16, 16, 16, 1.5931549, 16)
 | 
			
		||||
13:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:4/0 = 0
 | 
			
		||||
15:4/0/terrain_set = 0
 | 
			
		||||
15:4/0/terrain = 0
 | 
			
		||||
15:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
15:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
16:4/0 = 0
 | 
			
		||||
16:4/0/terrain_set = 0
 | 
			
		||||
16:4/0/terrain = 0
 | 
			
		||||
16:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
16:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
16:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_dinhu"]
 | 
			
		||||
texture = ExtResource("4_vtaks")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrain = 1
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_kvuet"]
 | 
			
		||||
texture = ExtResource("5_kvpfn")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_side = 1
 | 
			
		||||
0:1/0 = 0
 | 
			
		||||
0:1/0/terrain_set = 0
 | 
			
		||||
0:1/0/terrain = 1
 | 
			
		||||
0:1/0/terrains_peering_bit/top_side = 1
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSet" id="TileSet_vtaks"]
 | 
			
		||||
tile_size = Vector2i(32, 32)
 | 
			
		||||
physics_layer_0/collision_layer = 1
 | 
			
		||||
terrain_set_0/mode = 0
 | 
			
		||||
terrain_set_0/terrain_0/name = "LeafyDirt"
 | 
			
		||||
terrain_set_0/terrain_0/color = Color(0.5, 0.34375, 0.25, 1)
 | 
			
		||||
terrain_set_0/terrain_1/name = "Veg"
 | 
			
		||||
terrain_set_0/terrain_1/color = Color(0.5, 0.4375, 0.25, 1)
 | 
			
		||||
sources/0 = SubResource("TileSetAtlasSource_0tnpc")
 | 
			
		||||
sources/1 = SubResource("TileSetAtlasSource_dinhu")
 | 
			
		||||
sources/2 = SubResource("TileSetAtlasSource_kvuet")
 | 
			
		||||
pattern_0 = SubResource("TileMapPattern_p57ef")
 | 
			
		||||
pattern_1 = SubResource("TileMapPattern_u5sy4")
 | 
			
		||||
 | 
			
		||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_8cj0n"]
 | 
			
		||||
size = Vector2(68, 35)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_uwrxv"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_8cj0n"]
 | 
			
		||||
 | 
			
		||||
[node name="Game" type="Node2D"]
 | 
			
		||||
script = ExtResource("1_lbhrr")
 | 
			
		||||
scale = Vector2(0.9976793, 0.99848104)
 | 
			
		||||
 | 
			
		||||
[node name="sky" type="Parallax2D" parent="."]
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
repeat_size = Vector2(320, 180)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="sky"]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(160, 90)
 | 
			
		||||
texture = ExtResource("2_vtaks")
 | 
			
		||||
 | 
			
		||||
[node name="farbackground" type="Parallax2D" parent="."]
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
scroll_scale = Vector2(0.8, 0.8)
 | 
			
		||||
repeat_size = Vector2(320, 0)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="farbackground"]
 | 
			
		||||
position = Vector2(160, 400)
 | 
			
		||||
texture = ExtResource("3_kvpfn")
 | 
			
		||||
 | 
			
		||||
[node name="Parallax2D" type="Parallax2D" parent="."]
 | 
			
		||||
scroll_scale = Vector2(0.5, 0.5)
 | 
			
		||||
repeat_size = Vector2(320, 0)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="Parallax2D"]
 | 
			
		||||
position = Vector2(160, 300)
 | 
			
		||||
texture = ExtResource("4_dinhu")
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(776.80273, 525.79877)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
texture = ExtResource("2_0tnpc")
 | 
			
		||||
 | 
			
		||||
[node name="TileMapLayer" type="TileMapLayer" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
tile_map_data = PackedByteArray("AAAWAA4AAAAEAAIAAAAWAA0AAAAPAAMAAAAXAA0AAAAQAAQAAAAXAAwAAAAEAAAAAAAZAAwAAAAAAAQAAAAZAAoAAAAAAAQAAAAcAAoAAAACAAQAAAAbAAoAAAABAAQAAAAaAAwAAAAKAAMAAAAbAAwAAAAJAAMAAAAcAAwAAAACAAQAAAAbAA0AAAACAAIAAAAaAA0AAAAAAAIAAAD//wcAAAAAAAAAAAD//wgAAAAAAAIAAAAAAAcAAAABAAAAAAACAAsAAAAAAAAAAAADAAsAAAABAAAAAAAEAAsAAAABAAAAAAAFAAsAAAABAAAAAAAGAAsAAAACAAAAAAAGAAwAAAACAAIAAAAFAAwAAAABAAIAAAAEAAwAAAABAAIAAAADAAwAAAABAAIAAAACAAwAAAAAAAIAAAANAAsAAAACAAQAAAAMAAsAAAABAAQAAAALAAsAAAAAAAQAAAAKAA0AAAACAAQAAAAJAA0AAAAAAAQAAAASAA4AAAACAAQAAAARAA4AAAAPAAMAAAARAA8AAAAEAAIAAAAaAAoAAAABAAQAAAAEABEAAAAAAAAAAAAFABEAAAABAAAAAAAGABEAAAABAAAAAAAHABEAAAABAAAAAAAIABEAAAABAAAAAAAJABEAAAABAAAAAAAKABEAAAABAAAAAAALABEAAAABAAAAAAAMABEAAAABAAAAAAANABEAAAABAAAAAAAOABEAAAABAAAAAAAPABEAAAABAAAAAAAQABEAAAABAAAAAAARABEAAAABAAAAAAASABEAAAABAAAAAAATABEAAAABAAAAAAAUABEAAAABAAAAAAAVABEAAAABAAAAAAAWABEAAAABAAAAAAAXABEAAAABAAAAAAAYABEAAAABAAAAAAAZABEAAAAHAAEAAAAaABEAAAAGAAAAAAAbABEAAAABAAIAAAAcABEAAAABAAIAAAAdABEAAAACAAIAAAAZABAAAAAAAAAAAAAaABAAAAABAAAAAAAbABAAAAABAAAAAAAcABAAAAABAAAAAAAdABAAAAAHAAQAAAAdAA8AAAAEAAAAAAABAAcAAAABAAAAAAACAAcAAAACAAAAAAABAAgAAAABAAIAAAAAAAgAAAABAAIAAAACAAgAAAACAAIAAAAJAAwAAQAAAAAAAAADAAoAAQAAAAAAAAAXAAsAAQAAAAAAAAARAA0AAgAAAAEAAAARAAwAAgAAAAAAAAAZAAkAAgAAAAEAAAAZAAgAAgAAAAAAAAAaAAkAAQAAAAAAAAAaAA8AAQAAAAAAAAAZAA8AAQAAAAAAAAAMABAAAQAAAAAAAAALABAAAgAAAAEAAAALAA8AAgAAAAAAAAAFABAAAgAAAAEAAAAFAA8AAgAAAAAAAAACAAYAAgAAAAEAAAACAAUAAgAAAAAAAAAbAAkAAgAAAAEAAAAbAAgAAgAAAAAAAAAEABIAAAAAAAIAAAAFABIAAAABAAIAAAAGABIAAAABAAIAAAAHABIAAAABAAIAAAAIABIAAAABAAIAAAAJABIAAAABAAIAAAAKABIAAAABAAIAAAALABIAAAABAAIAAAAMABIAAAABAAIAAAANABIAAAABAAIAAAAOABIAAAABAAIAAAAPABIAAAABAAIAAAAQABIAAAABAAIAAAARABIAAAABAAIAAAASABIAAAABAAIAAAATABIAAAABAAIAAAAUABIAAAABAAIAAAAVABIAAAABAAIAAAAWABIAAAABAAIAAAAaABIAAAACAAIAAAAZABIAAAABAAIAAAAYABIAAAABAAIAAAAXABIAAAABAAIAAAA=")
 | 
			
		||||
tile_set = SubResource("TileSet_vtaks")
 | 
			
		||||
 | 
			
		||||
[node name="SceneManager" type="Node2D" parent="."]
 | 
			
		||||
unique_name_in_owner = true
 | 
			
		||||
script = ExtResource("2_p57ef")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(394, 353)
 | 
			
		||||
position = Vector2(742.72363, 195.29665)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
 | 
			
		||||
@ -31,7 +464,7 @@ position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D2" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(312, 412)
 | 
			
		||||
position = Vector2(898.0842, 193.2936)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D2"]
 | 
			
		||||
@ -39,7 +472,7 @@ position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D3" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(509, 287)
 | 
			
		||||
position = Vector2(648.50507, 164.24951)
 | 
			
		||||
rotation = -0.79570585
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
@ -48,49 +481,61 @@ position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="Crate" parent="." groups=["pushable", "splodable"] instance=ExtResource("1_uwrxv")]
 | 
			
		||||
position = Vector2(406.00003, 327)
 | 
			
		||||
position = Vector2(353.8211, 281.4275)
 | 
			
		||||
 | 
			
		||||
[node name="RigidBody2D2" type="RigidBody2D" parent="." groups=["pushable", "splodable"]]
 | 
			
		||||
position = Vector2(243, 371)
 | 
			
		||||
rotation = -1.099222
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
[node name="Crate2" parent="." groups=["pushable", "splodable"] instance=ExtResource("1_uwrxv")]
 | 
			
		||||
position = Vector2(445.03278, 293.44574)
 | 
			
		||||
rotation = -0.7766715
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="RigidBody2D2"]
 | 
			
		||||
shape = SubResource("RectangleShape2D_uwrxv")
 | 
			
		||||
debug_color = Color(0.84557056, 0.3727497, 0.1753774, 0.41960785)
 | 
			
		||||
 | 
			
		||||
[node name="RigidBody2D3" type="RigidBody2D" parent="." groups=["pushable", "splodable"]]
 | 
			
		||||
position = Vector2(502, 230)
 | 
			
		||||
rotation = -1.099222
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="RigidBody2D3"]
 | 
			
		||||
shape = SubResource("RectangleShape2D_uwrxv")
 | 
			
		||||
debug_color = Color(0.84557056, 0.3727497, 0.1753774, 0.41960785)
 | 
			
		||||
[node name="Crate3" parent="." groups=["pushable", "splodable"] instance=ExtResource("1_uwrxv")]
 | 
			
		||||
position = Vector2(254.5908, 285.43356)
 | 
			
		||||
rotation = 0.51836276
 | 
			
		||||
 | 
			
		||||
[node name="Boundary" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(389, 542)
 | 
			
		||||
position = Vector2(400.93042, 633.96295)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Boundary"]
 | 
			
		||||
shape = SubResource("WorldBoundaryShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="Trigger" parent="." instance=ExtResource("2_yqjtg")]
 | 
			
		||||
position = Vector2(434, 409)
 | 
			
		||||
position = Vector2(575.3352, 798.21246)
 | 
			
		||||
 | 
			
		||||
[node name="Trigger2" parent="." instance=ExtResource("2_yqjtg")]
 | 
			
		||||
position = Vector2(255.00002, 460.99997)
 | 
			
		||||
position = Vector2(93.216324, 715.08624)
 | 
			
		||||
intent = "powerup"
 | 
			
		||||
 | 
			
		||||
[node name="CharacterBody2D" parent="." instance=ExtResource("3_lnu2h")]
 | 
			
		||||
position = Vector2(379, 331)
 | 
			
		||||
position = Vector2(397.92346, 341.51877)
 | 
			
		||||
BUMP_POWER = 50
 | 
			
		||||
 | 
			
		||||
[node name="Bullet" parent="." instance=ExtResource("5_iywne")]
 | 
			
		||||
position = Vector2(293, 329)
 | 
			
		||||
[node name="Coins" type="Node2D" parent="."]
 | 
			
		||||
 | 
			
		||||
[node name="Grenade" parent="." instance=ExtResource("7_u5sy4")]
 | 
			
		||||
position = Vector2(380, 307)
 | 
			
		||||
[node name="Coin" parent="Coins" instance=ExtResource("13_kvuet")]
 | 
			
		||||
position = Vector2(192.44662, 340.51724)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Coin2" parent="Coins" instance=ExtResource("13_kvuet")]
 | 
			
		||||
position = Vector2(435.00952, 343.5218)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Enemies" type="Node2D" parent="."]
 | 
			
		||||
 | 
			
		||||
[node name="Slime" parent="Enemies" instance=ExtResource("14_trtic")]
 | 
			
		||||
position = Vector2(76.17678, 339.51575)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Slime2" parent="Enemies" instance=ExtResource("14_trtic")]
 | 
			
		||||
position = Vector2(122.28377, 339.51572)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Slime3" parent="Enemies" instance=ExtResource("14_trtic")]
 | 
			
		||||
position = Vector2(174.40474, 340.51724)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Slime4" parent="Enemies" instance=ExtResource("14_trtic")]
 | 
			
		||||
position = Vector2(374.86996, 339.51575)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[connection signal="triggerFiredSignal" from="Trigger" to="." method="_on_trigger_fired"]
 | 
			
		||||
[connection signal="triggerFiredSignal" from="Trigger2" to="." method="_on_trigger_fired"]
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,7 @@
 | 
			
		||||
[gd_scene load_steps=3 format=3 uid="uid://b5n0lwes8qpu5"]
 | 
			
		||||
[gd_scene load_steps=4 format=3 uid="uid://b5n0lwes8qpu5"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Script" uid="uid://cev3cg5mdn3it" path="res://scripts/grenade.gd" id="1_cvyik"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://m3usnluuexas" path="res://assets/graphics/projectiles/Screenshot from 2025-10-20 20-34-37.png" id="2_wxtds"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="CircleShape2D" id="CircleShape2D_1xt3t"]
 | 
			
		||||
radius = 3.0
 | 
			
		||||
@ -14,4 +15,9 @@ script = ExtResource("1_cvyik")
 | 
			
		||||
shape = SubResource("CircleShape2D_1xt3t")
 | 
			
		||||
debug_color = Color(0.6279718, 0.5294392, 0.11152003, 0.41960785)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
scale = Vector2(0.017808493, 0.016220678)
 | 
			
		||||
texture = ExtResource("2_wxtds")
 | 
			
		||||
 | 
			
		||||
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										537
									
								
								scenes/level2.tscn
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,537 @@
 | 
			
		||||
[gd_scene load_steps=22 format=4 uid="uid://2fncglq8po8r"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://do2gp0jp762js" path="res://assets/graphics/environment/sky.png" id="1_56gwk"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://dhsr2i5kesaxt" path="res://assets/graphics/environment/background.png" id="2_ve5ok"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://dmpvsw77pc6w1" path="res://assets/graphics/environment/midground.png" id="3_cleqw"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://drigbyu4w5ppu" path="res://assets/graphics/environment/terrain/airplane.png" id="4_wvb8j"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bsaouyyno4ua" path="res://assets/graphics/environment/terrain/Terrain (32x32).png" id="5_g8vcy"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bgiw80mpxbcgh" path="res://assets/graphics/environment/terrain/veg_32x32.png" id="6_cqal4"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bqj8chrd5i5iw" path="res://assets/graphics/environment/terrain/mushroom_32x64.png" id="7_o3sye"]
 | 
			
		||||
[ext_resource type="Script" uid="uid://co43e72devw6g" path="res://scripts/scene_manager.gd" id="8_24ks5"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://qv8blu8wkqvq" path="res://scenes/crate.tscn" id="9_s4es8"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://dmrrbiwqptrho" path="res://scenes/trigger.tscn" id="10_63e4f"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://b1yy0sybg66hh" path="res://scenes/player.tscn" id="11_y6lc1"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://dxocmoeuu32ex" path="res://scenes/coin.tscn" id="12_ekhvm"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://ccx1uakpj5143" path="res://scenes/slime.tscn" id="13_nflru"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileMapPattern" id="TileMapPattern_p57ef"]
 | 
			
		||||
tile_data = PackedInt32Array(0, 0, 0, 65536, 0, 1, 131072, 0, 2, 1, 65536, 0, 65537, 393216, 0, 131073, 65536, 2, 2, 65536, 0, 65538, 393216, 0, 131074, 65536, 2, 3, 65536, 0, 65539, 393216, 0, 131075, 65536, 2, 4, 131072, 0, 65540, 131072, 1, 131076, 131072, 2)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileMapPattern" id="TileMapPattern_u5sy4"]
 | 
			
		||||
tile_data = PackedInt32Array(0, 983040, 3, 65536, 262144, 2, 1, 131072, 4)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_0tnpc"]
 | 
			
		||||
texture = ExtResource("5_g8vcy")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrain = 0
 | 
			
		||||
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
1:0/0 = 0
 | 
			
		||||
1:0/0/terrain_set = 0
 | 
			
		||||
1:0/0/terrain = 0
 | 
			
		||||
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:0/0 = 0
 | 
			
		||||
2:0/0/terrain_set = 0
 | 
			
		||||
2:0/0/terrain = 0
 | 
			
		||||
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
2:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
2:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
4:0/0 = 0
 | 
			
		||||
4:0/0/terrain_set = 0
 | 
			
		||||
4:0/0/terrain = 0
 | 
			
		||||
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:0/0 = 0
 | 
			
		||||
6:0/0/terrain_set = 0
 | 
			
		||||
6:0/0/terrain = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
7:0/0 = 0
 | 
			
		||||
7:0/0/terrain_set = 0
 | 
			
		||||
7:0/0/terrain = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
9:0/0 = 0
 | 
			
		||||
9:0/0/terrain_set = 0
 | 
			
		||||
9:0/0/terrain = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:0/0 = 0
 | 
			
		||||
10:0/0/terrain_set = 0
 | 
			
		||||
10:0/0/terrain = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
12:0/0 = 0
 | 
			
		||||
12:0/0/terrain_set = 0
 | 
			
		||||
12:0/0/terrain = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:0/0 = 0
 | 
			
		||||
13:0/0/terrain_set = 0
 | 
			
		||||
13:0/0/terrain = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:0/0 = 0
 | 
			
		||||
15:0/0/terrain_set = 0
 | 
			
		||||
15:0/0/terrain = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:1/0 = 0
 | 
			
		||||
0:1/0/terrain_set = 0
 | 
			
		||||
0:1/0/terrain = 0
 | 
			
		||||
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
1:1/0 = 0
 | 
			
		||||
2:1/0 = 0
 | 
			
		||||
2:1/0/terrain_set = 0
 | 
			
		||||
2:1/0/terrain = 0
 | 
			
		||||
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
4:1/0 = 0
 | 
			
		||||
4:1/0/terrain_set = 0
 | 
			
		||||
4:1/0/terrain = 0
 | 
			
		||||
4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
4:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:1/0 = 0
 | 
			
		||||
6:1/0/terrain_set = 0
 | 
			
		||||
6:1/0/terrain = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:1/0 = 0
 | 
			
		||||
7:1/0/terrain_set = 0
 | 
			
		||||
7:1/0/terrain = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
9:1/0 = 0
 | 
			
		||||
9:1/0/terrain_set = 0
 | 
			
		||||
9:1/0/terrain = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
10:1/0 = 0
 | 
			
		||||
10:1/0/terrain_set = 0
 | 
			
		||||
10:1/0/terrain = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
12:1/0 = 0
 | 
			
		||||
12:1/0/terrain_set = 0
 | 
			
		||||
12:1/0/terrain = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
13:1/0 = 0
 | 
			
		||||
13:1/0/terrain_set = 0
 | 
			
		||||
13:1/0/terrain = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:1/0 = 0
 | 
			
		||||
15:1/0/terrain_set = 0
 | 
			
		||||
15:1/0/terrain = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
16:1/0 = 0
 | 
			
		||||
16:1/0/terrain_set = 0
 | 
			
		||||
16:1/0/terrain = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:2/0 = 0
 | 
			
		||||
0:2/0/terrain_set = 0
 | 
			
		||||
0:2/0/terrain = 0
 | 
			
		||||
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:2/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:2/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
1:2/0 = 0
 | 
			
		||||
1:2/0/terrain_set = 0
 | 
			
		||||
1:2/0/terrain = 0
 | 
			
		||||
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:2/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
2:2/0 = 0
 | 
			
		||||
2:2/0/terrain_set = 0
 | 
			
		||||
2:2/0/terrain = 0
 | 
			
		||||
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:2/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:2/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
2:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
4:2/0 = 0
 | 
			
		||||
4:2/0/terrain_set = 0
 | 
			
		||||
4:2/0/terrain = 0
 | 
			
		||||
4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:3/0 = 0
 | 
			
		||||
6:3/0/terrain_set = 0
 | 
			
		||||
6:3/0/terrain = 0
 | 
			
		||||
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -0.63726044, 16, -16, 16)
 | 
			
		||||
6:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
7:3/0 = 0
 | 
			
		||||
7:3/0/terrain_set = 0
 | 
			
		||||
7:3/0/terrain = 0
 | 
			
		||||
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(0.63726425, -16, 16, -16, 16, 16, 0.31863022, 16)
 | 
			
		||||
7:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:3/0 = 0
 | 
			
		||||
9:3/0/terrain_set = 0
 | 
			
		||||
9:3/0/terrain = 0
 | 
			
		||||
9:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -2.8676758, -16, -1.9117851)
 | 
			
		||||
9:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:3/0 = 0
 | 
			
		||||
10:3/0/terrain_set = 0
 | 
			
		||||
10:3/0/terrain = 0
 | 
			
		||||
10:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1.9117851, -16, -1.9117851)
 | 
			
		||||
10:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:3/0 = 0
 | 
			
		||||
12:3/0/terrain_set = 0
 | 
			
		||||
12:3/0/terrain = 0
 | 
			
		||||
12:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -1.2745209, 16, -16, 16)
 | 
			
		||||
12:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:3/0 = 0
 | 
			
		||||
13:3/0/terrain_set = 0
 | 
			
		||||
13:3/0/terrain = 0
 | 
			
		||||
13:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -2.8676758, -16, -3.186308)
 | 
			
		||||
13:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:3/0 = 0
 | 
			
		||||
15:3/0/terrain_set = 0
 | 
			
		||||
15:3/0/terrain = 0
 | 
			
		||||
15:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
15:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:3/0 = 0
 | 
			
		||||
16:3/0/terrain_set = 0
 | 
			
		||||
16:3/0/terrain = 0
 | 
			
		||||
16:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
16:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
0:4/0 = 0
 | 
			
		||||
0:4/0/terrain_set = 0
 | 
			
		||||
0:4/0/terrain = 0
 | 
			
		||||
0:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:4/0 = 0
 | 
			
		||||
1:4/0/terrain_set = 0
 | 
			
		||||
1:4/0/terrain = 0
 | 
			
		||||
1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:4/0 = 0
 | 
			
		||||
2:4/0/terrain_set = 0
 | 
			
		||||
2:4/0/terrain = 0
 | 
			
		||||
2:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
4:4/0 = 0
 | 
			
		||||
4:4/0/terrain_set = 0
 | 
			
		||||
4:4/0/terrain = 0
 | 
			
		||||
4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 5.098091, 12.426601, 12.426601, 5.7353554, 16, -4.460829, 16, -11.789337, 11.789337, -16, 3.186306)
 | 
			
		||||
6:4/0 = 0
 | 
			
		||||
6:4/0/terrain_set = 0
 | 
			
		||||
6:4/0/terrain = 0
 | 
			
		||||
6:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -0.63726044, 16, -16, 16)
 | 
			
		||||
6:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:4/0 = 0
 | 
			
		||||
7:4/0/terrain_set = 0
 | 
			
		||||
7:4/0/terrain = 0
 | 
			
		||||
7:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(0.63726425, -16, 16, -16, 16, 16, 0.31863022, 16)
 | 
			
		||||
7:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:4/0 = 0
 | 
			
		||||
9:4/0/terrain_set = 0
 | 
			
		||||
9:4/0/terrain = 0
 | 
			
		||||
9:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 2.8676758, 16, 2.8676758, 16, 16, -16, 16)
 | 
			
		||||
9:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:4/0 = 0
 | 
			
		||||
10:4/0/terrain_set = 0
 | 
			
		||||
10:4/0/terrain = 0
 | 
			
		||||
10:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 2.8676758, 16, 2.8676758, 16, 16, -16, 16)
 | 
			
		||||
10:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
12:4/0 = 0
 | 
			
		||||
12:4/0/terrain_set = 0
 | 
			
		||||
12:4/0/terrain = 0
 | 
			
		||||
12:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 3.50494, 16, 2.5490456, 16, 16, -16, 16)
 | 
			
		||||
12:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:4/0 = 0
 | 
			
		||||
13:4/0/terrain_set = 0
 | 
			
		||||
13:4/0/terrain = 0
 | 
			
		||||
13:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(2.5490456, -16, 16, -16, 16, 16, 1.5931549, 16)
 | 
			
		||||
13:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:4/0 = 0
 | 
			
		||||
15:4/0/terrain_set = 0
 | 
			
		||||
15:4/0/terrain = 0
 | 
			
		||||
15:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
15:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
16:4/0 = 0
 | 
			
		||||
16:4/0/terrain_set = 0
 | 
			
		||||
16:4/0/terrain = 0
 | 
			
		||||
16:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
16:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
16:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_dinhu"]
 | 
			
		||||
texture = ExtResource("6_cqal4")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrain = 1
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_kvuet"]
 | 
			
		||||
texture = ExtResource("7_o3sye")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_side = 1
 | 
			
		||||
0:1/0 = 0
 | 
			
		||||
0:1/0/terrain_set = 0
 | 
			
		||||
0:1/0/terrain = 1
 | 
			
		||||
0:1/0/terrains_peering_bit/top_side = 1
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSet" id="TileSet_vtaks"]
 | 
			
		||||
tile_size = Vector2i(32, 32)
 | 
			
		||||
physics_layer_0/collision_layer = 1
 | 
			
		||||
terrain_set_0/mode = 0
 | 
			
		||||
terrain_set_0/terrain_0/name = "LeafyDirt"
 | 
			
		||||
terrain_set_0/terrain_0/color = Color(0.5, 0.34375, 0.25, 1)
 | 
			
		||||
terrain_set_0/terrain_1/name = "Veg"
 | 
			
		||||
terrain_set_0/terrain_1/color = Color(0.5, 0.4375, 0.25, 1)
 | 
			
		||||
sources/0 = SubResource("TileSetAtlasSource_0tnpc")
 | 
			
		||||
sources/1 = SubResource("TileSetAtlasSource_dinhu")
 | 
			
		||||
sources/2 = SubResource("TileSetAtlasSource_kvuet")
 | 
			
		||||
pattern_0 = SubResource("TileMapPattern_p57ef")
 | 
			
		||||
pattern_1 = SubResource("TileMapPattern_u5sy4")
 | 
			
		||||
 | 
			
		||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_8cj0n"]
 | 
			
		||||
size = Vector2(68, 35)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_8cj0n"]
 | 
			
		||||
 | 
			
		||||
[node name="Game" type="Node2D"]
 | 
			
		||||
scale = Vector2(0.9976793, 0.99848104)
 | 
			
		||||
 | 
			
		||||
[node name="sky" type="Parallax2D" parent="."]
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
repeat_size = Vector2(320, 180)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="sky"]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(160, 90)
 | 
			
		||||
texture = ExtResource("1_56gwk")
 | 
			
		||||
 | 
			
		||||
[node name="farbackground" type="Parallax2D" parent="."]
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
scroll_scale = Vector2(0.8, 0.8)
 | 
			
		||||
repeat_size = Vector2(320, 0)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="farbackground"]
 | 
			
		||||
position = Vector2(160, 400)
 | 
			
		||||
texture = ExtResource("2_ve5ok")
 | 
			
		||||
 | 
			
		||||
[node name="Parallax2D" type="Parallax2D" parent="."]
 | 
			
		||||
scroll_scale = Vector2(0.5, 0.5)
 | 
			
		||||
repeat_size = Vector2(320, 0)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="Parallax2D"]
 | 
			
		||||
position = Vector2(160, 300)
 | 
			
		||||
texture = ExtResource("3_cleqw")
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(776.80273, 525.79877)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
texture = ExtResource("4_wvb8j")
 | 
			
		||||
 | 
			
		||||
[node name="TileMapLayer" type="TileMapLayer" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
tile_map_data = PackedByteArray("AAAWAA4AAAAEAAIAAAAWAA0AAAAPAAMAAAAXAA0AAAAQAAQAAAAXAAwAAAAEAAAAAAAZAAwAAAAAAAQAAAAZAAoAAAAAAAQAAAAcAAoAAAACAAQAAAAbAAoAAAABAAQAAAAaAAwAAAAKAAMAAAAbAAwAAAAJAAMAAAAcAAwAAAACAAQAAAAbAA0AAAACAAIAAAAaAA0AAAAAAAIAAAD//wcAAAAAAAAAAAD//wgAAAAAAAIAAAAAAAcAAAABAAAAAAACAAsAAAAAAAAAAAADAAsAAAABAAAAAAAEAAsAAAABAAAAAAAFAAsAAAABAAAAAAAGAAsAAAACAAAAAAAGAAwAAAACAAIAAAAFAAwAAAABAAIAAAAEAAwAAAABAAIAAAADAAwAAAABAAIAAAACAAwAAAAAAAIAAAANAAsAAAACAAQAAAAMAAsAAAABAAQAAAALAAsAAAAAAAQAAAAKAA0AAAACAAQAAAAJAA0AAAAAAAQAAAASAA4AAAACAAQAAAARAA4AAAAPAAMAAAARAA8AAAAEAAIAAAAaAAoAAAABAAQAAAAEABEAAAAAAAAAAAAFABEAAAABAAAAAAAGABEAAAABAAAAAAAHABEAAAABAAAAAAAIABEAAAABAAAAAAAJABEAAAABAAAAAAAKABEAAAABAAAAAAALABEAAAABAAAAAAAMABEAAAABAAAAAAANABEAAAABAAAAAAAOABEAAAABAAAAAAAPABEAAAABAAAAAAAQABEAAAABAAAAAAARABEAAAABAAAAAAASABEAAAABAAAAAAATABEAAAABAAAAAAAUABEAAAABAAAAAAAVABEAAAABAAAAAAAWABEAAAABAAAAAAAXABEAAAABAAAAAAAYABEAAAABAAAAAAAZABEAAAAHAAEAAAAaABEAAAAGAAAAAAAbABEAAAABAAIAAAAcABEAAAABAAIAAAAdABEAAAACAAIAAAAZABAAAAAAAAAAAAAaABAAAAABAAAAAAAbABAAAAABAAAAAAAcABAAAAABAAAAAAAdABAAAAAHAAQAAAAdAA8AAAAEAAAAAAABAAcAAAABAAAAAAACAAcAAAACAAAAAAABAAgAAAABAAIAAAAAAAgAAAABAAIAAAACAAgAAAACAAIAAAAJAAwAAQAAAAAAAAADAAoAAQAAAAAAAAAXAAsAAQAAAAAAAAARAA0AAgAAAAEAAAARAAwAAgAAAAAAAAAZAAkAAgAAAAEAAAAZAAgAAgAAAAAAAAAaAAkAAQAAAAAAAAAaAA8AAQAAAAAAAAAZAA8AAQAAAAAAAAAMABAAAQAAAAAAAAALABAAAgAAAAEAAAALAA8AAgAAAAAAAAAFABAAAgAAAAEAAAAFAA8AAgAAAAAAAAACAAYAAgAAAAEAAAACAAUAAgAAAAAAAAAbAAkAAgAAAAEAAAAbAAgAAgAAAAAAAAAEABIAAAAAAAIAAAAFABIAAAABAAIAAAAGABIAAAABAAIAAAAHABIAAAABAAIAAAAIABIAAAABAAIAAAAJABIAAAABAAIAAAAKABIAAAABAAIAAAALABIAAAABAAIAAAAMABIAAAABAAIAAAANABIAAAABAAIAAAAOABIAAAABAAIAAAAPABIAAAABAAIAAAAQABIAAAABAAIAAAARABIAAAABAAIAAAASABIAAAABAAIAAAATABIAAAABAAIAAAAUABIAAAABAAIAAAAVABIAAAABAAIAAAAWABIAAAABAAIAAAAaABIAAAACAAIAAAAZABIAAAABAAIAAAAYABIAAAABAAIAAAAXABIAAAABAAIAAAA=")
 | 
			
		||||
tile_set = SubResource("TileSet_vtaks")
 | 
			
		||||
 | 
			
		||||
[node name="SceneManager" type="Node2D" parent="."]
 | 
			
		||||
unique_name_in_owner = true
 | 
			
		||||
script = ExtResource("8_24ks5")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(742.72363, 195.29665)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
 | 
			
		||||
position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D2" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(898.0842, 193.2936)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D2"]
 | 
			
		||||
position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D3" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(648.50507, 164.24951)
 | 
			
		||||
rotation = -0.79570585
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D3"]
 | 
			
		||||
position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="Crate" parent="." groups=["pushable", "splodable"] instance=ExtResource("9_s4es8")]
 | 
			
		||||
position = Vector2(369.85834, 339.51572)
 | 
			
		||||
 | 
			
		||||
[node name="Crate2" parent="." groups=["pushable", "splodable"] instance=ExtResource("9_s4es8")]
 | 
			
		||||
position = Vector2(445.03278, 293.44574)
 | 
			
		||||
rotation = -0.7766715
 | 
			
		||||
 | 
			
		||||
[node name="Crate3" parent="." groups=["pushable", "splodable"] instance=ExtResource("9_s4es8")]
 | 
			
		||||
position = Vector2(254.5908, 285.43356)
 | 
			
		||||
rotation = 0.51836276
 | 
			
		||||
 | 
			
		||||
[node name="Boundary" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(400.93042, 633.96295)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Boundary"]
 | 
			
		||||
shape = SubResource("WorldBoundaryShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="Trigger" parent="." instance=ExtResource("10_63e4f")]
 | 
			
		||||
position = Vector2(575.3352, 798.21246)
 | 
			
		||||
 | 
			
		||||
[node name="Trigger2" parent="." instance=ExtResource("10_63e4f")]
 | 
			
		||||
position = Vector2(93.216324, 715.08624)
 | 
			
		||||
intent = "powerup"
 | 
			
		||||
 | 
			
		||||
[node name="CharacterBody2D" parent="." instance=ExtResource("11_y6lc1")]
 | 
			
		||||
position = Vector2(397.92346, 341.51877)
 | 
			
		||||
BUMP_POWER = 50
 | 
			
		||||
 | 
			
		||||
[node name="Coins" type="Node2D" parent="."]
 | 
			
		||||
 | 
			
		||||
[node name="Coin" parent="Coins" instance=ExtResource("12_ekhvm")]
 | 
			
		||||
position = Vector2(320.74435, 408.62067)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Coin2" parent="Coins" instance=ExtResource("12_ekhvm")]
 | 
			
		||||
position = Vector2(339.78854, 407.6192)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Coin3" parent="Coins" instance=ExtResource("12_ekhvm")]
 | 
			
		||||
position = Vector2(181.42102, 345.52484)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Enemies" type="Node2D" parent="."]
 | 
			
		||||
 | 
			
		||||
[node name="Slime" parent="Enemies" instance=ExtResource("13_nflru")]
 | 
			
		||||
position = Vector2(200.46521, 338.5142)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Slime2" parent="Enemies" instance=ExtResource("13_nflru")]
 | 
			
		||||
position = Vector2(439.01883, 340.51724)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[connection signal="triggerFiredSignal" from="Trigger" to="." method="_on_trigger_fired"]
 | 
			
		||||
[connection signal="triggerFiredSignal" from="Trigger2" to="." method="_on_trigger_fired"]
 | 
			
		||||
							
								
								
									
										537
									
								
								scenes/level3.tscn
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,537 @@
 | 
			
		||||
[gd_scene load_steps=22 format=4 uid="uid://l46wf6kriyea"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://do2gp0jp762js" path="res://assets/graphics/environment/sky.png" id="1_bradm"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://dhsr2i5kesaxt" path="res://assets/graphics/environment/background.png" id="2_got4s"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://dmpvsw77pc6w1" path="res://assets/graphics/environment/midground.png" id="3_e40mx"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://drigbyu4w5ppu" path="res://assets/graphics/environment/terrain/airplane.png" id="4_a114e"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bsaouyyno4ua" path="res://assets/graphics/environment/terrain/Terrain (32x32).png" id="5_y1e0c"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bgiw80mpxbcgh" path="res://assets/graphics/environment/terrain/veg_32x32.png" id="6_s4dsi"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bqj8chrd5i5iw" path="res://assets/graphics/environment/terrain/mushroom_32x64.png" id="7_07lh1"]
 | 
			
		||||
[ext_resource type="Script" uid="uid://co43e72devw6g" path="res://scripts/scene_manager.gd" id="8_6uuvf"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://qv8blu8wkqvq" path="res://scenes/crate.tscn" id="9_x008a"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://dmrrbiwqptrho" path="res://scenes/trigger.tscn" id="10_atr84"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://b1yy0sybg66hh" path="res://scenes/player.tscn" id="11_qyu38"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://dxocmoeuu32ex" path="res://scenes/coin.tscn" id="12_8vbrh"]
 | 
			
		||||
[ext_resource type="PackedScene" uid="uid://ccx1uakpj5143" path="res://scenes/slime.tscn" id="13_d5gix"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileMapPattern" id="TileMapPattern_p57ef"]
 | 
			
		||||
tile_data = PackedInt32Array(0, 0, 0, 65536, 0, 1, 131072, 0, 2, 1, 65536, 0, 65537, 393216, 0, 131073, 65536, 2, 2, 65536, 0, 65538, 393216, 0, 131074, 65536, 2, 3, 65536, 0, 65539, 393216, 0, 131075, 65536, 2, 4, 131072, 0, 65540, 131072, 1, 131076, 131072, 2)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileMapPattern" id="TileMapPattern_u5sy4"]
 | 
			
		||||
tile_data = PackedInt32Array(0, 983040, 3, 65536, 262144, 2, 1, 131072, 4)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_0tnpc"]
 | 
			
		||||
texture = ExtResource("5_y1e0c")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrain = 0
 | 
			
		||||
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
1:0/0 = 0
 | 
			
		||||
1:0/0/terrain_set = 0
 | 
			
		||||
1:0/0/terrain = 0
 | 
			
		||||
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
1:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:0/0 = 0
 | 
			
		||||
2:0/0/terrain_set = 0
 | 
			
		||||
2:0/0/terrain = 0
 | 
			
		||||
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
2:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
2:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
4:0/0 = 0
 | 
			
		||||
4:0/0/terrain_set = 0
 | 
			
		||||
4:0/0/terrain = 0
 | 
			
		||||
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:0/0 = 0
 | 
			
		||||
6:0/0/terrain_set = 0
 | 
			
		||||
6:0/0/terrain = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:0/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
7:0/0 = 0
 | 
			
		||||
7:0/0/terrain_set = 0
 | 
			
		||||
7:0/0/terrain = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:0/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
9:0/0 = 0
 | 
			
		||||
9:0/0/terrain_set = 0
 | 
			
		||||
9:0/0/terrain = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:0/0 = 0
 | 
			
		||||
10:0/0/terrain_set = 0
 | 
			
		||||
10:0/0/terrain = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
10:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
12:0/0 = 0
 | 
			
		||||
12:0/0/terrain_set = 0
 | 
			
		||||
12:0/0/terrain = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:0/0 = 0
 | 
			
		||||
13:0/0/terrain_set = 0
 | 
			
		||||
13:0/0/terrain = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:0/0 = 0
 | 
			
		||||
15:0/0/terrain_set = 0
 | 
			
		||||
15:0/0/terrain = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:0/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:1/0 = 0
 | 
			
		||||
0:1/0/terrain_set = 0
 | 
			
		||||
0:1/0/terrain = 0
 | 
			
		||||
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
1:1/0 = 0
 | 
			
		||||
2:1/0 = 0
 | 
			
		||||
2:1/0/terrain_set = 0
 | 
			
		||||
2:1/0/terrain = 0
 | 
			
		||||
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
2:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
4:1/0 = 0
 | 
			
		||||
4:1/0/terrain_set = 0
 | 
			
		||||
4:1/0/terrain = 0
 | 
			
		||||
4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
4:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:1/0 = 0
 | 
			
		||||
6:1/0/terrain_set = 0
 | 
			
		||||
6:1/0/terrain = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
6:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:1/0 = 0
 | 
			
		||||
7:1/0/terrain_set = 0
 | 
			
		||||
7:1/0/terrain = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
9:1/0 = 0
 | 
			
		||||
9:1/0/terrain_set = 0
 | 
			
		||||
9:1/0/terrain = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
10:1/0 = 0
 | 
			
		||||
10:1/0/terrain_set = 0
 | 
			
		||||
10:1/0/terrain = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
12:1/0 = 0
 | 
			
		||||
12:1/0/terrain_set = 0
 | 
			
		||||
12:1/0/terrain = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
12:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
13:1/0 = 0
 | 
			
		||||
13:1/0/terrain_set = 0
 | 
			
		||||
13:1/0/terrain = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
13:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:1/0 = 0
 | 
			
		||||
15:1/0/terrain_set = 0
 | 
			
		||||
15:1/0/terrain = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:1/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
16:1/0 = 0
 | 
			
		||||
16:1/0/terrain_set = 0
 | 
			
		||||
16:1/0/terrain = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
16:1/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:2/0 = 0
 | 
			
		||||
0:2/0/terrain_set = 0
 | 
			
		||||
0:2/0/terrain = 0
 | 
			
		||||
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:2/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
0:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
0:2/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
1:2/0 = 0
 | 
			
		||||
1:2/0/terrain_set = 0
 | 
			
		||||
1:2/0/terrain = 0
 | 
			
		||||
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:2/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
1:2/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
2:2/0 = 0
 | 
			
		||||
2:2/0/terrain_set = 0
 | 
			
		||||
2:2/0/terrain = 0
 | 
			
		||||
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:2/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:2/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
2:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
4:2/0 = 0
 | 
			
		||||
4:2/0/terrain_set = 0
 | 
			
		||||
4:2/0/terrain = 0
 | 
			
		||||
4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
4:2/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:3/0 = 0
 | 
			
		||||
6:3/0/terrain_set = 0
 | 
			
		||||
6:3/0/terrain = 0
 | 
			
		||||
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -0.63726044, 16, -16, 16)
 | 
			
		||||
6:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
6:3/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
7:3/0 = 0
 | 
			
		||||
7:3/0/terrain_set = 0
 | 
			
		||||
7:3/0/terrain = 0
 | 
			
		||||
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(0.63726425, -16, 16, -16, 16, 16, 0.31863022, 16)
 | 
			
		||||
7:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
7:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:3/0 = 0
 | 
			
		||||
9:3/0/terrain_set = 0
 | 
			
		||||
9:3/0/terrain = 0
 | 
			
		||||
9:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -2.8676758, -16, -1.9117851)
 | 
			
		||||
9:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
9:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:3/0 = 0
 | 
			
		||||
10:3/0/terrain_set = 0
 | 
			
		||||
10:3/0/terrain = 0
 | 
			
		||||
10:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -1.9117851, -16, -1.9117851)
 | 
			
		||||
10:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
10:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:3/0 = 0
 | 
			
		||||
12:3/0/terrain_set = 0
 | 
			
		||||
12:3/0/terrain = 0
 | 
			
		||||
12:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -1.2745209, 16, -16, 16)
 | 
			
		||||
12:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
12:3/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:3/0 = 0
 | 
			
		||||
13:3/0/terrain_set = 0
 | 
			
		||||
13:3/0/terrain = 0
 | 
			
		||||
13:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, -2.8676758, -16, -3.186308)
 | 
			
		||||
13:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
13:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
15:3/0 = 0
 | 
			
		||||
15:3/0/terrain_set = 0
 | 
			
		||||
15:3/0/terrain = 0
 | 
			
		||||
15:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
15:3/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:3/0 = 0
 | 
			
		||||
16:3/0/terrain_set = 0
 | 
			
		||||
16:3/0/terrain = 0
 | 
			
		||||
16:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
16:3/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
16:3/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
0:4/0 = 0
 | 
			
		||||
0:4/0/terrain_set = 0
 | 
			
		||||
0:4/0/terrain = 0
 | 
			
		||||
0:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
0:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:4/0 = 0
 | 
			
		||||
1:4/0/terrain_set = 0
 | 
			
		||||
1:4/0/terrain = 0
 | 
			
		||||
1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
1:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
1:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
2:4/0 = 0
 | 
			
		||||
2:4/0/terrain_set = 0
 | 
			
		||||
2:4/0/terrain = 0
 | 
			
		||||
2:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
2:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
4:4/0 = 0
 | 
			
		||||
4:4/0/terrain_set = 0
 | 
			
		||||
4:4/0/terrain = 0
 | 
			
		||||
4:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 5.098091, 12.426601, 12.426601, 5.7353554, 16, -4.460829, 16, -11.789337, 11.789337, -16, 3.186306)
 | 
			
		||||
6:4/0 = 0
 | 
			
		||||
6:4/0/terrain_set = 0
 | 
			
		||||
6:4/0/terrain = 0
 | 
			
		||||
6:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, -0.63726044, -16, -0.63726044, 16, -16, 16)
 | 
			
		||||
6:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/bottom_right_corner = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
6:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
7:4/0 = 0
 | 
			
		||||
7:4/0/terrain_set = 0
 | 
			
		||||
7:4/0/terrain = 0
 | 
			
		||||
7:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(0.63726425, -16, 16, -16, 16, 16, 0.31863022, 16)
 | 
			
		||||
7:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/bottom_left_corner = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
7:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
9:4/0 = 0
 | 
			
		||||
9:4/0/terrain_set = 0
 | 
			
		||||
9:4/0/terrain = 0
 | 
			
		||||
9:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 2.8676758, 16, 2.8676758, 16, 16, -16, 16)
 | 
			
		||||
9:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/top_left_corner = 0
 | 
			
		||||
9:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:4/0 = 0
 | 
			
		||||
10:4/0/terrain_set = 0
 | 
			
		||||
10:4/0/terrain = 0
 | 
			
		||||
10:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 2.8676758, 16, 2.8676758, 16, 16, -16, 16)
 | 
			
		||||
10:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
10:4/0/terrains_peering_bit/top_right_corner = 0
 | 
			
		||||
12:4/0 = 0
 | 
			
		||||
12:4/0/terrain_set = 0
 | 
			
		||||
12:4/0/terrain = 0
 | 
			
		||||
12:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 3.50494, 16, 2.5490456, 16, 16, -16, 16)
 | 
			
		||||
12:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
12:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
12:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
13:4/0 = 0
 | 
			
		||||
13:4/0/terrain_set = 0
 | 
			
		||||
13:4/0/terrain = 0
 | 
			
		||||
13:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(2.5490456, -16, 16, -16, 16, 16, 1.5931549, 16)
 | 
			
		||||
13:4/0/terrains_peering_bit/bottom_side = 0
 | 
			
		||||
13:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
13:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
15:4/0 = 0
 | 
			
		||||
15:4/0/terrain_set = 0
 | 
			
		||||
15:4/0/terrain = 0
 | 
			
		||||
15:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
15:4/0/terrains_peering_bit/right_side = 0
 | 
			
		||||
15:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
16:4/0 = 0
 | 
			
		||||
16:4/0/terrain_set = 0
 | 
			
		||||
16:4/0/terrain = 0
 | 
			
		||||
16:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
 | 
			
		||||
16:4/0/terrains_peering_bit/left_side = 0
 | 
			
		||||
16:4/0/terrains_peering_bit/top_side = 0
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_dinhu"]
 | 
			
		||||
texture = ExtResource("6_s4dsi")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrain = 1
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_kvuet"]
 | 
			
		||||
texture = ExtResource("7_07lh1")
 | 
			
		||||
texture_region_size = Vector2i(32, 32)
 | 
			
		||||
0:0/0 = 0
 | 
			
		||||
0:0/0/terrain_set = 0
 | 
			
		||||
0:0/0/terrains_peering_bit/bottom_side = 1
 | 
			
		||||
0:1/0 = 0
 | 
			
		||||
0:1/0/terrain_set = 0
 | 
			
		||||
0:1/0/terrain = 1
 | 
			
		||||
0:1/0/terrains_peering_bit/top_side = 1
 | 
			
		||||
 | 
			
		||||
[sub_resource type="TileSet" id="TileSet_vtaks"]
 | 
			
		||||
tile_size = Vector2i(32, 32)
 | 
			
		||||
physics_layer_0/collision_layer = 1
 | 
			
		||||
terrain_set_0/mode = 0
 | 
			
		||||
terrain_set_0/terrain_0/name = "LeafyDirt"
 | 
			
		||||
terrain_set_0/terrain_0/color = Color(0.5, 0.34375, 0.25, 1)
 | 
			
		||||
terrain_set_0/terrain_1/name = "Veg"
 | 
			
		||||
terrain_set_0/terrain_1/color = Color(0.5, 0.4375, 0.25, 1)
 | 
			
		||||
sources/0 = SubResource("TileSetAtlasSource_0tnpc")
 | 
			
		||||
sources/1 = SubResource("TileSetAtlasSource_dinhu")
 | 
			
		||||
sources/2 = SubResource("TileSetAtlasSource_kvuet")
 | 
			
		||||
pattern_0 = SubResource("TileMapPattern_p57ef")
 | 
			
		||||
pattern_1 = SubResource("TileMapPattern_u5sy4")
 | 
			
		||||
 | 
			
		||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_8cj0n"]
 | 
			
		||||
size = Vector2(68, 35)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_8cj0n"]
 | 
			
		||||
 | 
			
		||||
[node name="Game" type="Node2D"]
 | 
			
		||||
scale = Vector2(0.9976793, 0.99848104)
 | 
			
		||||
 | 
			
		||||
[node name="sky" type="Parallax2D" parent="."]
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
repeat_size = Vector2(320, 180)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="sky"]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(160, 90)
 | 
			
		||||
texture = ExtResource("1_bradm")
 | 
			
		||||
 | 
			
		||||
[node name="farbackground" type="Parallax2D" parent="."]
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
scroll_scale = Vector2(0.8, 0.8)
 | 
			
		||||
repeat_size = Vector2(320, 0)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="farbackground"]
 | 
			
		||||
position = Vector2(160, 400)
 | 
			
		||||
texture = ExtResource("2_got4s")
 | 
			
		||||
 | 
			
		||||
[node name="Parallax2D" type="Parallax2D" parent="."]
 | 
			
		||||
scroll_scale = Vector2(0.5, 0.5)
 | 
			
		||||
repeat_size = Vector2(320, 0)
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="Parallax2D"]
 | 
			
		||||
position = Vector2(160, 300)
 | 
			
		||||
texture = ExtResource("3_e40mx")
 | 
			
		||||
 | 
			
		||||
[node name="Sprite2D" type="Sprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(776.80273, 525.79877)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
texture = ExtResource("4_a114e")
 | 
			
		||||
 | 
			
		||||
[node name="TileMapLayer" type="TileMapLayer" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
tile_map_data = PackedByteArray("AAAWAA4AAAAEAAIAAAAWAA0AAAAPAAMAAAAXAA0AAAAQAAQAAAAXAAwAAAAEAAAAAAAZAAwAAAAAAAQAAAAZAAoAAAAAAAQAAAAcAAoAAAACAAQAAAAbAAoAAAABAAQAAAAaAAwAAAAKAAMAAAAbAAwAAAAJAAMAAAAcAAwAAAACAAQAAAAbAA0AAAACAAIAAAAaAA0AAAAAAAIAAAD//wcAAAAAAAAAAAD//wgAAAAAAAIAAAAAAAcAAAABAAAAAAACAAsAAAAAAAAAAAADAAsAAAABAAAAAAAEAAsAAAABAAAAAAAFAAsAAAABAAAAAAAGAAsAAAACAAAAAAAGAAwAAAACAAIAAAAFAAwAAAABAAIAAAAEAAwAAAABAAIAAAADAAwAAAABAAIAAAACAAwAAAAAAAIAAAANAAsAAAACAAQAAAAMAAsAAAABAAQAAAALAAsAAAAAAAQAAAAKAA0AAAACAAQAAAAJAA0AAAAAAAQAAAASAA4AAAACAAQAAAARAA4AAAAPAAMAAAARAA8AAAAEAAIAAAAaAAoAAAABAAQAAAAEABEAAAAAAAAAAAAFABEAAAABAAAAAAAGABEAAAABAAAAAAAHABEAAAABAAAAAAAIABEAAAABAAAAAAAJABEAAAABAAAAAAAKABEAAAABAAAAAAALABEAAAABAAAAAAAMABEAAAABAAAAAAANABEAAAABAAAAAAAOABEAAAABAAAAAAAPABEAAAABAAAAAAAQABEAAAABAAAAAAARABEAAAABAAAAAAASABEAAAABAAAAAAATABEAAAABAAAAAAAUABEAAAABAAAAAAAVABEAAAABAAAAAAAWABEAAAABAAAAAAAXABEAAAABAAAAAAAYABEAAAABAAAAAAAZABEAAAAHAAEAAAAaABEAAAAGAAAAAAAbABEAAAABAAIAAAAcABEAAAABAAIAAAAdABEAAAACAAIAAAAZABAAAAAAAAAAAAAaABAAAAABAAAAAAAbABAAAAABAAAAAAAcABAAAAABAAAAAAAdABAAAAAHAAQAAAAdAA8AAAAEAAAAAAABAAcAAAABAAAAAAACAAcAAAACAAAAAAABAAgAAAABAAIAAAAAAAgAAAABAAIAAAACAAgAAAACAAIAAAAJAAwAAQAAAAAAAAADAAoAAQAAAAAAAAAXAAsAAQAAAAAAAAARAA0AAgAAAAEAAAARAAwAAgAAAAAAAAAZAAkAAgAAAAEAAAAZAAgAAgAAAAAAAAAaAAkAAQAAAAAAAAAaAA8AAQAAAAAAAAAZAA8AAQAAAAAAAAAMABAAAQAAAAAAAAALABAAAgAAAAEAAAALAA8AAgAAAAAAAAAFABAAAgAAAAEAAAAFAA8AAgAAAAAAAAACAAYAAgAAAAEAAAACAAUAAgAAAAAAAAAbAAkAAgAAAAEAAAAbAAgAAgAAAAAAAAAEABIAAAAAAAIAAAAFABIAAAABAAIAAAAGABIAAAABAAIAAAAHABIAAAABAAIAAAAIABIAAAABAAIAAAAJABIAAAABAAIAAAAKABIAAAABAAIAAAALABIAAAABAAIAAAAMABIAAAABAAIAAAANABIAAAABAAIAAAAOABIAAAABAAIAAAAPABIAAAABAAIAAAAQABIAAAABAAIAAAARABIAAAABAAIAAAASABIAAAABAAIAAAATABIAAAABAAIAAAAUABIAAAABAAIAAAAVABIAAAABAAIAAAAWABIAAAABAAIAAAAaABIAAAACAAIAAAAZABIAAAABAAIAAAAYABIAAAABAAIAAAAXABIAAAABAAIAAAA=")
 | 
			
		||||
tile_set = SubResource("TileSet_vtaks")
 | 
			
		||||
 | 
			
		||||
[node name="SceneManager" type="Node2D" parent="."]
 | 
			
		||||
unique_name_in_owner = true
 | 
			
		||||
script = ExtResource("8_6uuvf")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(742.72363, 195.29665)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D"]
 | 
			
		||||
position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D2" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(898.0842, 193.2936)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D2"]
 | 
			
		||||
position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="StaticBody2D3" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(648.50507, 164.24951)
 | 
			
		||||
rotation = -0.79570585
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="StaticBody2D3"]
 | 
			
		||||
position = Vector2(0, 7.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="Crate" parent="." groups=["pushable", "splodable"] instance=ExtResource("9_x008a")]
 | 
			
		||||
position = Vector2(353.8211, 281.4275)
 | 
			
		||||
 | 
			
		||||
[node name="Crate2" parent="." groups=["pushable", "splodable"] instance=ExtResource("9_x008a")]
 | 
			
		||||
position = Vector2(445.03278, 293.44574)
 | 
			
		||||
rotation = -0.7766715
 | 
			
		||||
 | 
			
		||||
[node name="Crate3" parent="." groups=["pushable", "splodable"] instance=ExtResource("9_x008a")]
 | 
			
		||||
position = Vector2(254.5908, 285.43356)
 | 
			
		||||
rotation = 0.51836276
 | 
			
		||||
 | 
			
		||||
[node name="Boundary" type="StaticBody2D" parent="."]
 | 
			
		||||
position = Vector2(400.93042, 633.96295)
 | 
			
		||||
metadata/_edit_group_ = true
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Boundary"]
 | 
			
		||||
shape = SubResource("WorldBoundaryShape2D_8cj0n")
 | 
			
		||||
 | 
			
		||||
[node name="Trigger" parent="." instance=ExtResource("10_atr84")]
 | 
			
		||||
position = Vector2(575.3352, 798.21246)
 | 
			
		||||
 | 
			
		||||
[node name="Trigger2" parent="." instance=ExtResource("10_atr84")]
 | 
			
		||||
position = Vector2(93.216324, 715.08624)
 | 
			
		||||
intent = "powerup"
 | 
			
		||||
 | 
			
		||||
[node name="CharacterBody2D" parent="." instance=ExtResource("11_qyu38")]
 | 
			
		||||
position = Vector2(397.92346, 341.51877)
 | 
			
		||||
BUMP_POWER = 50
 | 
			
		||||
 | 
			
		||||
[node name="Coins" type="Node2D" parent="."]
 | 
			
		||||
 | 
			
		||||
[node name="Coin" parent="Coins" instance=ExtResource("12_8vbrh")]
 | 
			
		||||
position = Vector2(320.74435, 408.62067)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Coin2" parent="Coins" instance=ExtResource("12_8vbrh")]
 | 
			
		||||
position = Vector2(364.8467, 346.52637)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Coin3" parent="Coins" instance=ExtResource("12_8vbrh")]
 | 
			
		||||
position = Vector2(181.42102, 345.52484)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Enemies" type="Node2D" parent="."]
 | 
			
		||||
 | 
			
		||||
[node name="Slime" parent="Enemies" instance=ExtResource("13_d5gix")]
 | 
			
		||||
position = Vector2(156.36285, 336.51114)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[node name="Slime2" parent="Enemies" instance=ExtResource("13_d5gix")]
 | 
			
		||||
position = Vector2(307.7141, 402.6116)
 | 
			
		||||
scale = Vector2(1, 1.0000001)
 | 
			
		||||
 | 
			
		||||
[connection signal="triggerFiredSignal" from="Trigger" to="." method="_on_trigger_fired"]
 | 
			
		||||
[connection signal="triggerFiredSignal" from="Trigger2" to="." method="_on_trigger_fired"]
 | 
			
		||||
@ -1,14 +1,15 @@
 | 
			
		||||
[gd_scene load_steps=28 format=3 uid="uid://b1yy0sybg66hh"]
 | 
			
		||||
[gd_scene load_steps=32 format=3 uid="uid://b1yy0sybg66hh"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Script" uid="uid://kv8w1gwuy3il" path="res://scripts/player.gd" id="1_3vyb7"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bpchnouakdsvk" path="res://assets/graphics/animations/player/jump/player jump 48x48.png" id="2_dqkch"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://y7gjdptxvjfu" path="res://assets/graphics/animations/player/idle/Player Idle 48x48.png" id="2_g2els"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bqdop2arlx7rr" path="res://assets/graphics/animations/player/run/player run 48x48.png" id="4_qlg0r"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://vr36ruu3ew70" path="res://assets/graphics/player/idle/Player Idle 48x48 (1).png" id="2_g2els"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://dr8leuj7yjpmo" path="res://assets/graphics/player/jumpandfall/player jump 48x48.png" id="2_qhqgy"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://gat5giebysdj" path="res://assets/graphics/player/run/player run 48x48.png" id="4_dqkch"]
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://csmss00eyd21r" path="res://assets/graphics/player/shove/Player Punch 64x64.png" id="5_qlg0r"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="CircleShape2D" id="CircleShape2D_3vyb7"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_jej6c"]
 | 
			
		||||
atlas = ExtResource("2_dqkch")
 | 
			
		||||
atlas = ExtResource("2_qhqgy")
 | 
			
		||||
region = Rect2(96, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qhqgy"]
 | 
			
		||||
@ -52,45 +53,57 @@ atlas = ExtResource("2_g2els")
 | 
			
		||||
region = Rect2(432, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_f1ej7"]
 | 
			
		||||
atlas = ExtResource("2_dqkch")
 | 
			
		||||
atlas = ExtResource("2_qhqgy")
 | 
			
		||||
region = Rect2(0, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_oprun"]
 | 
			
		||||
atlas = ExtResource("2_dqkch")
 | 
			
		||||
atlas = ExtResource("2_qhqgy")
 | 
			
		||||
region = Rect2(48, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_a8ls1"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(0, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qfm1y"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(48, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_fulsm"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(96, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_4r5pv"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(144, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_60mlk"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(192, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_i4ail"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(240, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_a38lo"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(288, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_4ni07"]
 | 
			
		||||
atlas = ExtResource("4_qlg0r")
 | 
			
		||||
atlas = ExtResource("4_dqkch")
 | 
			
		||||
region = Rect2(336, 0, 48, 48)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_l71n6"]
 | 
			
		||||
atlas = ExtResource("5_qlg0r")
 | 
			
		||||
region = Rect2(192, 0, 64, 64)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ke2ow"]
 | 
			
		||||
atlas = ExtResource("5_qlg0r")
 | 
			
		||||
region = Rect2(256, 0, 64, 64)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ujl30"]
 | 
			
		||||
atlas = ExtResource("5_qlg0r")
 | 
			
		||||
region = Rect2(320, 0, 64, 64)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="SpriteFrames" id="SpriteFrames_jej6c"]
 | 
			
		||||
animations = [{
 | 
			
		||||
"frames": [{
 | 
			
		||||
@ -175,6 +188,20 @@ animations = [{
 | 
			
		||||
"loop": true,
 | 
			
		||||
"name": &"run",
 | 
			
		||||
"speed": 12.0
 | 
			
		||||
}, {
 | 
			
		||||
"frames": [{
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_l71n6")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_ke2ow")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_ujl30")
 | 
			
		||||
}],
 | 
			
		||||
"loop": false,
 | 
			
		||||
"name": &"shove",
 | 
			
		||||
"speed": 12.0
 | 
			
		||||
}]
 | 
			
		||||
 | 
			
		||||
[node name="CharacterBody2D" type="CharacterBody2D"]
 | 
			
		||||
@ -191,19 +218,24 @@ target_position = Vector2(16, 0)
 | 
			
		||||
target_position = Vector2(-16, 0)
 | 
			
		||||
 | 
			
		||||
[node name="RightSpawn" type="Marker2D" parent="."]
 | 
			
		||||
position = Vector2(14, -8)
 | 
			
		||||
position = Vector2(14, -6)
 | 
			
		||||
 | 
			
		||||
[node name="LeftSpawn" type="Marker2D" parent="."]
 | 
			
		||||
position = Vector2(-13, -8)
 | 
			
		||||
position = Vector2(-13, -5)
 | 
			
		||||
 | 
			
		||||
[node name="JumpBufferTimer" type="Timer" parent="."]
 | 
			
		||||
one_shot = true
 | 
			
		||||
 | 
			
		||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
 | 
			
		||||
[node name="PlayerGraphic" type="AnimatedSprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
position = Vector2(1, -6)
 | 
			
		||||
position = Vector2(0, -6)
 | 
			
		||||
sprite_frames = SubResource("SpriteFrames_jej6c")
 | 
			
		||||
animation = &"fall"
 | 
			
		||||
animation = &"shove"
 | 
			
		||||
autoplay = "idle"
 | 
			
		||||
frame = 1
 | 
			
		||||
frame_progress = 0.25700366
 | 
			
		||||
 | 
			
		||||
[connection signal="animation_finished" from="AnimatedSprite2D" to="." method="_on_animation_finished"]
 | 
			
		||||
[node name="Camera2D" type="Camera2D" parent="."]
 | 
			
		||||
offset = Vector2(0, -30)
 | 
			
		||||
 | 
			
		||||
[connection signal="animation_finished" from="PlayerGraphic" to="." method="_on_animation_finished"]
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										73
									
								
								scenes/slime.tscn
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,73 @@
 | 
			
		||||
[gd_scene load_steps=9 format=3 uid="uid://ccx1uakpj5143"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Texture2D" uid="uid://bnfqqdcx7u4qt" path="res://assets/graphics/badguys/slime_green.png" id="1_371uh"]
 | 
			
		||||
[ext_resource type="Script" uid="uid://cx2xxgqkp68jc" path="res://scripts/slime.gd" id="1_p2gj0"]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_p2gj0"]
 | 
			
		||||
atlas = ExtResource("1_371uh")
 | 
			
		||||
region = Rect2(0, 24, 24, 24)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_n6pvg"]
 | 
			
		||||
atlas = ExtResource("1_371uh")
 | 
			
		||||
region = Rect2(24, 24, 24, 24)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_pjw23"]
 | 
			
		||||
atlas = ExtResource("1_371uh")
 | 
			
		||||
region = Rect2(48, 24, 24, 24)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="AtlasTexture" id="AtlasTexture_2npkn"]
 | 
			
		||||
atlas = ExtResource("1_371uh")
 | 
			
		||||
region = Rect2(72, 24, 24, 24)
 | 
			
		||||
 | 
			
		||||
[sub_resource type="SpriteFrames" id="SpriteFrames_fd6lc"]
 | 
			
		||||
animations = [{
 | 
			
		||||
"frames": [{
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_p2gj0")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_n6pvg")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_pjw23")
 | 
			
		||||
}, {
 | 
			
		||||
"duration": 1.0,
 | 
			
		||||
"texture": SubResource("AtlasTexture_2npkn")
 | 
			
		||||
}],
 | 
			
		||||
"loop": true,
 | 
			
		||||
"name": &"idle",
 | 
			
		||||
"speed": 12.0
 | 
			
		||||
}]
 | 
			
		||||
 | 
			
		||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_gstla"]
 | 
			
		||||
size = Vector2(14, 15)
 | 
			
		||||
 | 
			
		||||
[node name="Slime" type="Area2D"]
 | 
			
		||||
script = ExtResource("1_p2gj0")
 | 
			
		||||
 | 
			
		||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
 | 
			
		||||
texture_filter = 1
 | 
			
		||||
sprite_frames = SubResource("SpriteFrames_fd6lc")
 | 
			
		||||
animation = &"idle"
 | 
			
		||||
autoplay = "idle"
 | 
			
		||||
frame_progress = 0.8940961
 | 
			
		||||
 | 
			
		||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
 | 
			
		||||
position = Vector2(0, 4.5)
 | 
			
		||||
shape = SubResource("RectangleShape2D_gstla")
 | 
			
		||||
 | 
			
		||||
[node name="RightCast" type="RayCast2D" parent="."]
 | 
			
		||||
target_position = Vector2(13, 0)
 | 
			
		||||
 | 
			
		||||
[node name="LeftCast" type="RayCast2D" parent="."]
 | 
			
		||||
target_position = Vector2(-13, 0)
 | 
			
		||||
 | 
			
		||||
[node name="RightDownCast" type="RayCast2D" parent="."]
 | 
			
		||||
position = Vector2(7, 0)
 | 
			
		||||
target_position = Vector2(0, 14)
 | 
			
		||||
 | 
			
		||||
[node name="LeftDownCast" type="RayCast2D" parent="."]
 | 
			
		||||
position = Vector2(-7, 1)
 | 
			
		||||
target_position = Vector2(0, 14)
 | 
			
		||||
 | 
			
		||||
[connection signal="body_entered" from="." to="." method="_on_body_entered"]
 | 
			
		||||
@ -1,7 +1,8 @@
 | 
			
		||||
class_name Bullet extends Area2D
 | 
			
		||||
 | 
			
		||||
var speed:float = 700
 | 
			
		||||
 | 
			
		||||
@onready var bullet_graphic = $BulletGraphic
 | 
			
		||||
signal bulletDamageSignal(area, bullet)
 | 
			
		||||
# Called when the node enters the scene tree for the first time.
 | 
			
		||||
func _ready():
 | 
			
		||||
	pass # Replace with function body.
 | 
			
		||||
@ -13,3 +14,11 @@ func _process(delta):
 | 
			
		||||
 | 
			
		||||
func setSpeed(value)->void:
 | 
			
		||||
	speed = value
 | 
			
		||||
	if speed<0:
 | 
			
		||||
		bullet_graphic.flip_h = true
 | 
			
		||||
	else:
 | 
			
		||||
		bullet_graphic.flip_h = false
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
func _on_area_entered(area):
 | 
			
		||||
	bulletDamageSignal.emit(area, self)
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										23
									
								
								scripts/coin.gd
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,23 @@
 | 
			
		||||
class_name Coin extends Area2D
 | 
			
		||||
 | 
			
		||||
signal coinCollectedSignal(body,coin)
 | 
			
		||||
 | 
			
		||||
# Called when the node enters the scene tree for the first time.
 | 
			
		||||
func _ready():
 | 
			
		||||
	pass # Replace with function body.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
 | 
			
		||||
func _process(delta):
 | 
			
		||||
	pass
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
func _on_body_entered(body):
 | 
			
		||||
	print("body connected with coin")
 | 
			
		||||
	if body is Player:
 | 
			
		||||
		coinCollectedSignal.emit(body, self)
 | 
			
		||||
	if body is Grenade:
 | 
			
		||||
		body.queue_free()
 | 
			
		||||
		self.queue_free()
 | 
			
		||||
		
 | 
			
		||||
		
 | 
			
		||||
							
								
								
									
										1
									
								
								scripts/coin.gd.uid
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
uid://dxweii7qmijb8
 | 
			
		||||
@ -1,10 +1,50 @@
 | 
			
		||||
extends Node2D
 | 
			
		||||
 | 
			
		||||
var coinsCollectedTotal:int = 0
 | 
			
		||||
var totalCoinsAvailable:int = 0
 | 
			
		||||
 | 
			
		||||
var levels=["res://scenes/game.tscn","res://scenes/level2.tscn","res://scenes/level3.tscn"]
 | 
			
		||||
var timers=[16,10,15]
 | 
			
		||||
var timeAvailable:int =0
 | 
			
		||||
var currentLevel = 0
 | 
			
		||||
var timer = Timer.new()
 | 
			
		||||
 | 
			
		||||
#signals
 | 
			
		||||
signal levelChangeSignal(level)
 | 
			
		||||
signal destroySignal(body)
 | 
			
		||||
signal playerDamagedSignal(health, maxHealth)
 | 
			
		||||
signal playerDeathSignal
 | 
			
		||||
 | 
			
		||||
var enemy:CharacterStats
 | 
			
		||||
var player:CharacterStats
 | 
			
		||||
var enemiesDict = {}
 | 
			
		||||
var playerCurrentHealth:int =0
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Called when the node enters the scene tree for the first time.
 | 
			
		||||
func _ready():
 | 
			
		||||
	pass # Replace with function body.
 | 
			
		||||
	#load in characters
 | 
			
		||||
	enemy = load("res://scripts/rscs/slimeStats.tres")
 | 
			
		||||
	player = load("res://scripts/rscs/playerStats.tres")
 | 
			
		||||
	playerCurrentHealth = player.starting_health
 | 
			
		||||
	
 | 
			
		||||
	add_child(timer)
 | 
			
		||||
	timer.wait_time = 1
 | 
			
		||||
	timer.one_shot = false
 | 
			
		||||
	timer.connect("timeout", secondCounter)
 | 
			
		||||
	timer.start()
 | 
			
		||||
	
 | 
			
		||||
func secondCounter()->void:
 | 
			
		||||
	timeAvailable -=1
 | 
			
		||||
	if timeAvailable <=0:
 | 
			
		||||
		print("YOu LOOSAE Baby!")
 | 
			
		||||
		print(levels[currentLevel])
 | 
			
		||||
		levelChangeSignal.emit(levels[currentLevel])
 | 
			
		||||
 | 
			
		||||
func reset()->void:
 | 
			
		||||
	timeAvailable = timers[currentLevel]
 | 
			
		||||
	enemiesDict.clear()
 | 
			
		||||
	playerCurrentHealth = player.starting_health
 | 
			
		||||
 | 
			
		||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
 | 
			
		||||
func _process(delta):
 | 
			
		||||
@ -16,6 +56,57 @@ func _on_trigger_fired(intent, body):
 | 
			
		||||
	match intent:
 | 
			
		||||
		"destroy":
 | 
			
		||||
			print("destroy this thing")
 | 
			
		||||
			body.queue_free()
 | 
			
		||||
			destroySignal.emit(body)
 | 
			
		||||
		"powerup":
 | 
			
		||||
			print("power up this thing")
 | 
			
		||||
 | 
			
		||||
func _on_coin_collected(body, coin):
 | 
			
		||||
	destroySignal.emit(coin)
 | 
			
		||||
 | 
			
		||||
func totalCoins(value):
 | 
			
		||||
	if value == 0:
 | 
			
		||||
		#you won
 | 
			
		||||
		currentLevel +=1
 | 
			
		||||
		if currentLevel >= levels.size():
 | 
			
		||||
			currentLevel = 0
 | 
			
		||||
		levelChangeSignal.emit(levels[currentLevel])
 | 
			
		||||
 | 
			
		||||
func _on_slime_damage(_body, slime):
 | 
			
		||||
	print("GC knows slime damage")
 | 
			
		||||
	print("Damage "+str(enemiesDict[slime]["damage"]))
 | 
			
		||||
	print("Player Health "+str(playerCurrentHealth)+" of "+str(player.starting_health))
 | 
			
		||||
	playerCurrentHealth -= enemiesDict[slime]["damage"]
 | 
			
		||||
	if playerCurrentHealth <=0:
 | 
			
		||||
		print("YOU DED")
 | 
			
		||||
		playerDeathSignal.emit()
 | 
			
		||||
	else:
 | 
			
		||||
		print("Taking damage")
 | 
			
		||||
		playerDamagedSignal.emit(playerCurrentHealth, player.starting_health)
 | 
			
		||||
	
 | 
			
		||||
func totalEnemies(value):
 | 
			
		||||
	print("GC knows total enemies "+str(value))
 | 
			
		||||
	
 | 
			
		||||
func addEnemyToLevel(slime)->void:
 | 
			
		||||
	print("GC adding enemy")
 | 
			
		||||
	var randDamage:int = randi() % 10
 | 
			
		||||
	
 | 
			
		||||
	var enemyStat = {
 | 
			
		||||
		"health": enemy.health,
 | 
			
		||||
		"damage": enemy.meleeDamage+randDamage
 | 
			
		||||
	}
 | 
			
		||||
	enemiesDict[slime]= enemyStat
 | 
			
		||||
	
 | 
			
		||||
func bulletDamage(area,bullet)->void:
 | 
			
		||||
	print("Bullet hitting area")
 | 
			
		||||
	if area is Slime:
 | 
			
		||||
		print("Hitting a slime")
 | 
			
		||||
		print("Slime health "+str(enemiesDict[area]["health"]))
 | 
			
		||||
		enemiesDict[area]["health"]-=player.rangeDamage
 | 
			
		||||
		if enemiesDict[area]["health"] <=0:
 | 
			
		||||
			print("enemy killed")
 | 
			
		||||
			removeEnemyFromLevel(area)
 | 
			
		||||
			destroySignal.emit(area)
 | 
			
		||||
		else:
 | 
			
		||||
			print("enemy damaged")
 | 
			
		||||
func removeEnemyFromLevel(slime)->void:
 | 
			
		||||
	enemiesDict.erase(slime)
 | 
			
		||||
 | 
			
		||||
@ -25,3 +25,4 @@ func _on_body_entered(body):
 | 
			
		||||
	if body.is_in_group("splodable"):
 | 
			
		||||
		body.queue_free()
 | 
			
		||||
		explode()
 | 
			
		||||
	
 | 
			
		||||
 | 
			
		||||
@ -1,15 +1,15 @@
 | 
			
		||||
extends CharacterBody2D
 | 
			
		||||
class_name Player extends CharacterBody2D
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
const SPEED = 300.0
 | 
			
		||||
const JUMP_VELOCITY = -400.0
 | 
			
		||||
#add a variable for momentum...t.w.
 | 
			
		||||
@export var acceleration:int = 8
 | 
			
		||||
@export var hard_gravity:float =1.5
 | 
			
		||||
var direction:float = 0
 | 
			
		||||
@export var BUMP_POWER = 100
 | 
			
		||||
enum FaceDirection{LEFT, RIGHT}
 | 
			
		||||
var facing:FaceDirection = FaceDirection.RIGHT
 | 
			
		||||
enum State{IDLE,JUMP,FALLING,RUNNING,SHOVE}
 | 
			
		||||
var current_state:State = State.IDLE
 | 
			
		||||
 | 
			
		||||
@onready var right_cast = $RightCast
 | 
			
		||||
@onready var left_cast = $LeftCast
 | 
			
		||||
var pushTarget:RigidBody2D
 | 
			
		||||
@ -17,13 +17,12 @@ var pushEnabled:bool = false
 | 
			
		||||
@onready var right_spawn = $RightSpawn
 | 
			
		||||
@onready var left_spawn = $LeftSpawn
 | 
			
		||||
 | 
			
		||||
@export var acceleration:int = 900
 | 
			
		||||
@onready var jump_buffer_timer = $JumpBufferTimer
 | 
			
		||||
var upJump:bool = false
 | 
			
		||||
@onready var jump_buffer_timer: Timer = $JumpBufferTimer
 | 
			
		||||
@onready var player_graphic: AnimatedSprite2D = $AnimatedSprite2D
 | 
			
		||||
 | 
			
		||||
#For State Machine.............t.w.
 | 
			
		||||
enum State{IDLE, RUNNING, JUMP, FALLING}
 | 
			
		||||
var current_state:State = State.IDLE
 | 
			
		||||
@export var hard_gravity:float =1.5
 | 
			
		||||
@onready var player_graphic = $PlayerGraphic
 | 
			
		||||
 | 
			
		||||
func _physics_process(delta):
 | 
			
		||||
	# Get the input direction and handle the movement/deceleration.
 | 
			
		||||
@ -35,15 +34,10 @@ func _physics_process(delta):
 | 
			
		||||
	move_and_slide()
 | 
			
		||||
	handle_collisions()
 | 
			
		||||
 | 
			
		||||
#Create a State Machine.........t.w.
 | 
			
		||||
func update_states()->void:
 | 
			
		||||
	#Create a state machine
 | 
			
		||||
	match current_state:
 | 
			
		||||
		State.IDLE when velocity.x !=0:
 | 
			
		||||
			current_state = State.RUNNING
 | 
			
		||||
		State.RUNNING:
 | 
			
		||||
			if velocity.x ==0:
 | 
			
		||||
				current_state = State.IDLE
 | 
			
		||||
		#jumping when reaching apex
 | 
			
		||||
		#scenarios
 | 
			
		||||
		State.JUMP when velocity.y > 0:
 | 
			
		||||
			current_state = State.FALLING
 | 
			
		||||
		State.FALLING when is_on_floor():
 | 
			
		||||
@ -51,23 +45,30 @@ func update_states()->void:
 | 
			
		||||
				current_state = State.IDLE
 | 
			
		||||
			else:
 | 
			
		||||
				current_state = State.RUNNING
 | 
			
		||||
func update_animation():
 | 
			
		||||
		State.IDLE when velocity.x !=0:
 | 
			
		||||
			current_state = State.RUNNING
 | 
			
		||||
		State.RUNNING when velocity.x ==0:
 | 
			
		||||
			current_state = State.IDLE
 | 
			
		||||
				
 | 
			
		||||
func update_animation()->void:
 | 
			
		||||
	match current_state:
 | 
			
		||||
		State.IDLE:
 | 
			
		||||
			player_graphic.play("idle")		
 | 
			
		||||
		State.RUNNING:
 | 
			
		||||
			player_graphic.play("run")
 | 
			
		||||
		State.JUMP:
 | 
			
		||||
			if upJump:
 | 
			
		||||
				player_graphic.play("jump")	
 | 
			
		||||
		State.FALLING:
 | 
			
		||||
			player_graphic.play("fall")
 | 
			
		||||
		State.RUNNING:
 | 
			
		||||
			player_graphic.play("run")
 | 
			
		||||
		State.SHOVE:
 | 
			
		||||
			player_graphic.play("shove")
 | 
			
		||||
			
 | 
			
		||||
func handle_input()->void:
 | 
			
		||||
	# Handle jump.
 | 
			
		||||
	if Input.is_action_just_pressed("jump") and is_on_floor():
 | 
			
		||||
		#velocity.y = JUMP_VELOCITY
 | 
			
		||||
		jump_buffer_timer.start()
 | 
			
		||||
		
 | 
			
		||||
	direction = Input.get_axis("moveLeft", "moveRight")
 | 
			
		||||
	if direction <0:
 | 
			
		||||
		facing=FaceDirection.LEFT
 | 
			
		||||
@ -84,7 +85,7 @@ func handle_input()->void:
 | 
			
		||||
				shoveDirection = 1
 | 
			
		||||
			FaceDirection.LEFT:
 | 
			
		||||
				shoveDirection = -1
 | 
			
		||||
				
 | 
			
		||||
		current_state = State.SHOVE
 | 
			
		||||
		pushTarget.apply_central_impulse(Vector2(shoveDirection,0)*700)
 | 
			
		||||
	if Input.is_action_just_pressed("shoot"):
 | 
			
		||||
		print("Ima shoot")
 | 
			
		||||
@ -104,23 +105,19 @@ func handle_input()->void:
 | 
			
		||||
				%SceneManager.makeGrenade(left_spawn.global_transform, -1)
 | 
			
		||||
				
 | 
			
		||||
func handle_movement(_delta)->void:
 | 
			
		||||
	#change to create some momentum.....t.w.
 | 
			
		||||
	if direction == 0:
 | 
			
		||||
		velocity.x = move_toward(velocity.x, 0, acceleration)
 | 
			
		||||
	if direction ==0:
 | 
			
		||||
		velocity.x = move_toward(velocity.x, 0, acceleration*_delta)
 | 
			
		||||
	else:
 | 
			
		||||
		velocity.x = move_toward(velocity.x, SPEED * direction, acceleration)
 | 
			
		||||
		velocity.x = move_toward(velocity.x, SPEED*direction, acceleration*_delta)
 | 
			
		||||
	
 | 
			
		||||
	if current_state == State.JUMP: 
 | 
			
		||||
		#apply normal velocity
 | 
			
		||||
		velocity += get_gravity() * _delta
 | 
			
		||||
	else:
 | 
			
		||||
		#apply hard gravity, character falling
 | 
			
		||||
		velocity += get_gravity() * hard_gravity * _delta
 | 
			
		||||
			
 | 
			
		||||
	#add a buffer timer to the jump velocity............t.w.
 | 
			
		||||
	if is_on_floor() && jump_buffer_timer.time_left >0:
 | 
			
		||||
	if is_on_floor() && jump_buffer_timer.time_left>0:
 | 
			
		||||
		velocity.y = JUMP_VELOCITY 
 | 
			
		||||
		#change state...........t.w.
 | 
			
		||||
		current_state = State.JUMP
 | 
			
		||||
		upJump = true
 | 
			
		||||
		jump_buffer_timer.stop()
 | 
			
		||||
@ -149,7 +146,9 @@ func handle_collisions()->void:
 | 
			
		||||
		pushEnabled = false
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
func _on_animation_finished() -> void:
 | 
			
		||||
func _on_animation_finished():
 | 
			
		||||
	match current_state:
 | 
			
		||||
		State.JUMP:
 | 
			
		||||
			upJump=false
 | 
			
		||||
		State.SHOVE:
 | 
			
		||||
			current_state = State.IDLE
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										11
									
								
								scripts/rscs/characterstats.gd
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,11 @@
 | 
			
		||||
class_name CharacterStats extends Resource
 | 
			
		||||
 | 
			
		||||
@export_category("health")
 | 
			
		||||
@export var health:int = 100
 | 
			
		||||
@export var max_health: int = 100
 | 
			
		||||
@export var starting_health:int = 100
 | 
			
		||||
 | 
			
		||||
#dealing damage
 | 
			
		||||
@export_category("damage")
 | 
			
		||||
@export var meleeDamage:int = 10
 | 
			
		||||
@export var rangeDamage:int = 0
 | 
			
		||||
							
								
								
									
										1
									
								
								scripts/rscs/characterstats.gd.uid
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
uid://oewo8kn4jbkl
 | 
			
		||||
							
								
								
									
										8
									
								
								scripts/rscs/playerStats.tres
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,8 @@
 | 
			
		||||
[gd_resource type="Resource" script_class="CharacterStats" load_steps=2 format=3 uid="uid://4yftkv4qq0bd"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Script" uid="uid://oewo8kn4jbkl" path="res://scripts/rscs/characterstats.gd" id="1_sqkfu"]
 | 
			
		||||
 | 
			
		||||
[resource]
 | 
			
		||||
script = ExtResource("1_sqkfu")
 | 
			
		||||
rangeDamage = 10
 | 
			
		||||
metadata/_custom_type_script = "uid://oewo8kn4jbkl"
 | 
			
		||||
							
								
								
									
										11
									
								
								scripts/rscs/slimeStats.tres
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,11 @@
 | 
			
		||||
[gd_resource type="Resource" script_class="CharacterStats" load_steps=2 format=3 uid="uid://8cwcd0phesw4"]
 | 
			
		||||
 | 
			
		||||
[ext_resource type="Script" uid="uid://oewo8kn4jbkl" path="res://scripts/rscs/characterstats.gd" id="1_ppipo"]
 | 
			
		||||
 | 
			
		||||
[resource]
 | 
			
		||||
script = ExtResource("1_ppipo")
 | 
			
		||||
health = 50
 | 
			
		||||
max_health = 50
 | 
			
		||||
starting_health = 50
 | 
			
		||||
meleeDamage = 5
 | 
			
		||||
metadata/_custom_type_script = "uid://oewo8kn4jbkl"
 | 
			
		||||
@ -2,16 +2,57 @@ class_name SceneManager extends Node2D
 | 
			
		||||
 | 
			
		||||
var bullet = preload("res://scenes/bullet.tscn")
 | 
			
		||||
var grenade = preload("res://scenes/grenade.tscn")
 | 
			
		||||
@onready var coins = $"../Coins"
 | 
			
		||||
@onready var enemies = $"../Enemies"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@onready var game = $".."
 | 
			
		||||
var bulletArray = []
 | 
			
		||||
var totalAllowedBullets = 7
 | 
			
		||||
 | 
			
		||||
# Called when the node enters the scene tree for the first time.
 | 
			
		||||
func _ready():
 | 
			
		||||
	pass # Replace with function body.
 | 
			
		||||
	Gamecontroller.reset()
 | 
			
		||||
	buildLevel()
 | 
			
		||||
	
 | 
			
		||||
func buildLevel()->void:
 | 
			
		||||
	# hook up coins
 | 
			
		||||
	if coins:
 | 
			
		||||
		updateCoins()
 | 
			
		||||
		
 | 
			
		||||
	
 | 
			
		||||
	if enemies:
 | 
			
		||||
		updateEnemies()
 | 
			
		||||
		
 | 
			
		||||
	#Wire up signals from Gamecontroller
 | 
			
		||||
	Gamecontroller.levelChangeSignal.connect(changeScene)
 | 
			
		||||
	Gamecontroller.destroySignal.connect(destroy)
 | 
			
		||||
	
 | 
			
		||||
func updateEnemies()->void:
 | 
			
		||||
	var totalEnemies = 0
 | 
			
		||||
	for obj in enemies.get_children():
 | 
			
		||||
		if obj is Slime:
 | 
			
		||||
			totalEnemies +=1
 | 
			
		||||
			#hook up a listener at game controller
 | 
			
		||||
			if not obj.slimeDamageSignal.is_connected(Gamecontroller._on_slime_damage):
 | 
			
		||||
				obj.slimeDamageSignal.connect(Gamecontroller._on_slime_damage)
 | 
			
		||||
				Gamecontroller.addEnemyToLevel(obj)
 | 
			
		||||
				
 | 
			
		||||
	Gamecontroller.totalEnemies(totalEnemies)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
func updateCoins()->void:
 | 
			
		||||
	var totalCoins = 0
 | 
			
		||||
	
 | 
			
		||||
	for obj in coins.get_children():
 | 
			
		||||
		if obj is Coin:
 | 
			
		||||
			if not obj.coinCollectedSignal.is_connected(Gamecontroller._on_coin_collected):
 | 
			
		||||
				#hook up a listener at the game controller
 | 
			
		||||
				obj.coinCollectedSignal.connect(Gamecontroller._on_coin_collected)
 | 
			
		||||
			if not obj.tree_exited.is_connected(updateCoins):
 | 
			
		||||
				obj.tree_exited.connect(updateCoins)
 | 
			
		||||
			totalCoins +=1
 | 
			
		||||
	#tell GC how many coins total
 | 
			
		||||
	Gamecontroller.totalCoins(totalCoins)	
 | 
			
		||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
 | 
			
		||||
func _process(delta):
 | 
			
		||||
	pass
 | 
			
		||||
@ -20,7 +61,8 @@ func bulletFactory()->Bullet:
 | 
			
		||||
	if bulletArray.size() < totalAllowedBullets:
 | 
			
		||||
		#make a new bullet
 | 
			
		||||
		myBullet = bullet.instantiate()
 | 
			
		||||
		game.add_child(myBullet)
 | 
			
		||||
		myBullet.bulletDamageSignal.connect(Gamecontroller.bulletDamage)
 | 
			
		||||
		owner.add_child(myBullet)
 | 
			
		||||
	else:
 | 
			
		||||
		myBullet = bulletArray.pop_back()
 | 
			
		||||
		
 | 
			
		||||
@ -36,6 +78,13 @@ func makeBullet(_bulletPosition, _bulletSpeed)->void:
 | 
			
		||||
func makeGrenade(_grenadePosition, _grenadeDirection)->void:
 | 
			
		||||
	print("SM make a grenade")
 | 
			
		||||
	var myGrenade:Grenade = grenade.instantiate()
 | 
			
		||||
	game.add_child(myGrenade)
 | 
			
		||||
	owner.add_child(myGrenade)
 | 
			
		||||
	myGrenade.apply_central_impulse(Vector2(_grenadeDirection, -1)*200)
 | 
			
		||||
	myGrenade.transform = _grenadePosition
 | 
			
		||||
 | 
			
		||||
func changeScene(level)->void:
 | 
			
		||||
	print("Change to level "+level)
 | 
			
		||||
	get_tree().call_deferred("change_scene_to_file", level)
 | 
			
		||||
	
 | 
			
		||||
func destroy(body)->void:
 | 
			
		||||
	body.queue_free()
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										24
									
								
								scripts/slime.gd
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,24 @@
 | 
			
		||||
class_name Slime extends Area2D
 | 
			
		||||
@onready var right_cast = $RightCast
 | 
			
		||||
@onready var left_cast = $LeftCast
 | 
			
		||||
@onready var right_down_cast = $RightDownCast
 | 
			
		||||
@onready var left_down_cast = $LeftDownCast
 | 
			
		||||
 | 
			
		||||
var speed:int = 100
 | 
			
		||||
var direction = 1
 | 
			
		||||
 | 
			
		||||
signal slimeDamageSignal(body, slime)
 | 
			
		||||
# Called when the node enters the scene tree for the first time.
 | 
			
		||||
func _ready():
 | 
			
		||||
	pass # Replace with function body.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
 | 
			
		||||
func _process(delta):
 | 
			
		||||
	position.x += direction * speed * delta
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
func _on_body_entered(body):
 | 
			
		||||
	print("slime detects body")
 | 
			
		||||
	if body is Player:
 | 
			
		||||
		slimeDamageSignal.emit(body, self)
 | 
			
		||||
							
								
								
									
										1
									
								
								scripts/slime.gd.uid
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
uid://cx2xxgqkp68jc
 | 
			
		||||