Basic Movement and Map Generation #22
BIN
Assets/ColorPallet.ase
Normal file
BIN
Assets/ColorPallet.png
Normal file
After Width: | Height: | Size: 177 B |
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://qvq11powneve"
|
uid="uid://dwkjfno8mjrdp"
|
||||||
path="res://.godot/imported/bunny_righ.png-66416292c790a3c540d894b9b9f5a2c9.ctex"
|
path="res://.godot/imported/ColorPallet.png-9feaa0f98adb7b976a9666999fd546c6.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/bunny_righ.png"
|
source_file="res://Assets/ColorPallet.png"
|
||||||
dest_files=["res://.godot/imported/bunny_righ.png-66416292c790a3c540d894b9b9f5a2c9.ctex"]
|
dest_files=["res://.godot/imported/ColorPallet.png-9feaa0f98adb7b976a9666999fd546c6.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
@ -31,4 +31,4 @@ process/normal_map_invert_y=false
|
||||||
process/hdr_as_srgb=false
|
process/hdr_as_srgb=false
|
||||||
process/hdr_clamp_exposure=false
|
process/hdr_clamp_exposure=false
|
||||||
process/size_limit=0
|
process/size_limit=0
|
||||||
detect_3d/compress_to=0
|
detect_3d/compress_to=1
|
Before Width: | Height: | Size: 1,021 B After Width: | Height: | Size: 1,021 B |
34
Assets/Sprites/EvilBunny/bunny_down.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://tv804qpxy44n"
|
||||||
|
path="res://.godot/imported/bunny_down.png-65e2d347963ef39987488ab06970e3b7.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/EvilBunny/bunny_down.png"
|
||||||
|
dest_files=["res://.godot/imported/bunny_down.png-65e2d347963ef39987488ab06970e3b7.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
Before Width: | Height: | Size: 1 KiB After Width: | Height: | Size: 1 KiB |
34
Assets/Sprites/EvilBunny/bunny_left.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://dbelgiv204e2b"
|
||||||
|
path="res://.godot/imported/bunny_left.png-78242bd12e7c1e446aa544882eb0c11c.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/EvilBunny/bunny_left.png"
|
||||||
|
dest_files=["res://.godot/imported/bunny_left.png-78242bd12e7c1e446aa544882eb0c11c.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
Before Width: | Height: | Size: 1 KiB After Width: | Height: | Size: 1 KiB |
34
Assets/Sprites/EvilBunny/bunny_righ.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cvji70p68eae8"
|
||||||
|
path="res://.godot/imported/bunny_righ.png-087dbfde3e26335391f6eb0d1a0f9a4a.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/EvilBunny/bunny_righ.png"
|
||||||
|
dest_files=["res://.godot/imported/bunny_righ.png-087dbfde3e26335391f6eb0d1a0f9a4a.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
Before Width: | Height: | Size: 973 B After Width: | Height: | Size: 973 B |
|
@ -2,20 +2,20 @@
|
||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://dyibsqvmfitux"
|
uid="uid://coyib2evn5o61"
|
||||||
path="res://.godot/imported/bunny_down.png-6511b38862324c280c3e08af22b07ee9.ctex"
|
path="res://.godot/imported/bunny_up.png-9db830aab18c79505e343895a04cf789.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/bunny_down.png"
|
source_file="res://Assets/Sprites/EvilBunny/bunny_up.png"
|
||||||
dest_files=["res://.godot/imported/bunny_down.png-6511b38862324c280c3e08af22b07ee9.ctex"]
|
dest_files=["res://.godot/imported/bunny_up.png-9db830aab18c79505e343895a04cf789.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
compress/mode=4
|
compress/mode=0
|
||||||
compress/high_quality=false
|
compress/high_quality=false
|
||||||
compress/lossy_quality=0.7
|
compress/lossy_quality=0.7
|
||||||
compress/hdr_compression=1
|
compress/hdr_compression=1
|
||||||
|
@ -31,4 +31,4 @@ process/normal_map_invert_y=false
|
||||||
process/hdr_as_srgb=false
|
process/hdr_as_srgb=false
|
||||||
process/hdr_clamp_exposure=false
|
process/hdr_clamp_exposure=false
|
||||||
process/size_limit=0
|
process/size_limit=0
|
||||||
detect_3d/compress_to=0
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/GoodBunny/bunny_down.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
34
Assets/Sprites/GoodBunny/bunny_down.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://ep63wy3imw2d"
|
||||||
|
path="res://.godot/imported/bunny_down.png-ea09ce83bcf9875fa961a56145d1a045.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/GoodBunny/bunny_down.png"
|
||||||
|
dest_files=["res://.godot/imported/bunny_down.png-ea09ce83bcf9875fa961a56145d1a045.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/GoodBunny/bunny_left.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
Assets/Sprites/GoodBunny/bunny_left.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b0x834s5l1qot"
|
||||||
|
path="res://.godot/imported/bunny_left.png-91e2fa49ed65451bd7003fe4ee0265af.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/GoodBunny/bunny_left.png"
|
||||||
|
dest_files=["res://.godot/imported/bunny_left.png-91e2fa49ed65451bd7003fe4ee0265af.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/GoodBunny/bunny_righ.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
Assets/Sprites/GoodBunny/bunny_righ.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c7nmf03fho3m"
|
||||||
|
path="res://.godot/imported/bunny_righ.png-22915acce3c057f7ae0e80e8a00e8f45.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/GoodBunny/bunny_righ.png"
|
||||||
|
dest_files=["res://.godot/imported/bunny_righ.png-22915acce3c057f7ae0e80e8a00e8f45.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/GoodBunny/bunny_up.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
34
Assets/Sprites/GoodBunny/bunny_up.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://d2m2jsxx5xpxx"
|
||||||
|
path="res://.godot/imported/bunny_up.png-d5ed05cbbf36f84feb579ad11c8b8aca.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/GoodBunny/bunny_up.png"
|
||||||
|
dest_files=["res://.godot/imported/bunny_up.png-d5ed05cbbf36f84feb579ad11c8b8aca.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/Jesus/Jesus Back.png
Normal file
After Width: | Height: | Size: 597 B |
34
Assets/Sprites/Jesus/Jesus Back.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://ct2del6b6jorm"
|
||||||
|
path="res://.godot/imported/Jesus Back.png-6132a4979edf4d1442fefae322c4ce7c.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/Jesus/Jesus Back.png"
|
||||||
|
dest_files=["res://.godot/imported/Jesus Back.png-6132a4979edf4d1442fefae322c4ce7c.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/Jesus/Jesus Front.png
Normal file
After Width: | Height: | Size: 714 B |
34
Assets/Sprites/Jesus/Jesus Front.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c03lntytfivr1"
|
||||||
|
path="res://.godot/imported/Jesus Front.png-b78bfa6c3ed674009555f7ab3f93e778.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/Jesus/Jesus Front.png"
|
||||||
|
dest_files=["res://.godot/imported/Jesus Front.png-b78bfa6c3ed674009555f7ab3f93e778.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/Jesus/Jesus Left.png
Normal file
After Width: | Height: | Size: 665 B |
34
Assets/Sprites/Jesus/Jesus Left.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cn4kqa1p845wl"
|
||||||
|
path="res://.godot/imported/Jesus Left.png-2949c2879ed5f5e8def57f2eb1498de4.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/Jesus/Jesus Left.png"
|
||||||
|
dest_files=["res://.godot/imported/Jesus Left.png-2949c2879ed5f5e8def57f2eb1498de4.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/Jesus/Jesus Spritesheet.png
Normal file
After Width: | Height: | Size: 7.2 KiB |
34
Assets/Sprites/Jesus/Jesus Spritesheet.png.import
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bl7vfn05ul1vu"
|
||||||
|
path="res://.godot/imported/Jesus Spritesheet.png-821a08dd328b5743c2bc86e42539e57a.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Assets/Sprites/Jesus/Jesus Spritesheet.png"
|
||||||
|
dest_files=["res://.godot/imported/Jesus Spritesheet.png-821a08dd328b5743c2bc86e42539e57a.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/Jesus/Shadow.png
Normal file
After Width: | Height: | Size: 145 B |
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://dynqs8dq175ty"
|
uid="uid://cubc3m81pdyvq"
|
||||||
path="res://.godot/imported/bunny_left.png-b0a65864e50a1d10579cf71a4bd59148.ctex"
|
path="res://.godot/imported/Shadow.png-e182ddfbb5e0bd7753fe3ec1e6b362c7.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/bunny_left.png"
|
source_file="res://Assets/Sprites/Jesus/Shadow.png"
|
||||||
dest_files=["res://.godot/imported/bunny_left.png-b0a65864e50a1d10579cf71a4bd59148.ctex"]
|
dest_files=["res://.godot/imported/Shadow.png-e182ddfbb5e0bd7753fe3ec1e6b362c7.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
@ -31,4 +31,4 @@ process/normal_map_invert_y=false
|
||||||
process/hdr_as_srgb=false
|
process/hdr_as_srgb=false
|
||||||
process/hdr_clamp_exposure=false
|
process/hdr_clamp_exposure=false
|
||||||
process/size_limit=0
|
process/size_limit=0
|
||||||
detect_3d/compress_to=0
|
detect_3d/compress_to=1
|
BIN
Assets/Sprites/TileMap.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
|
@ -2,16 +2,16 @@
|
||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://xbx6qrjbu5h7"
|
uid="uid://bqi3ddjrcj2bh"
|
||||||
path="res://.godot/imported/bunny_up.png-d9c6d22cb180401f29d7e9a4fd388bb1.ctex"
|
path="res://.godot/imported/TileMap.png-5a8ebee45e38c1e4c53b5e5cf69bfe18.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Assets/Sprites/bunny_up.png"
|
source_file="res://Assets/Sprites/TileMap.png"
|
||||||
dest_files=["res://.godot/imported/bunny_up.png-d9c6d22cb180401f29d7e9a4fd388bb1.ctex"]
|
dest_files=["res://.godot/imported/TileMap.png-5a8ebee45e38c1e4c53b5e5cf69bfe18.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
|
@ -31,4 +31,4 @@ process/normal_map_invert_y=false
|
||||||
process/hdr_as_srgb=false
|
process/hdr_as_srgb=false
|
||||||
process/hdr_clamp_exposure=false
|
process/hdr_clamp_exposure=false
|
||||||
process/size_limit=0
|
process/size_limit=0
|
||||||
detect_3d/compress_to=0
|
detect_3d/compress_to=1
|
496
Assets/Tileset.tres
Normal file
|
@ -0,0 +1,496 @@
|
||||||
|
[gd_resource type="TileSet" load_steps=3 format=3 uid="uid://bj7uu2180mie3"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bqi3ddjrcj2bh" path="res://Assets/Sprites/TileMap.png" id="1_cl3se"]
|
||||||
|
|
||||||
|
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_mgef5"]
|
||||||
|
texture = ExtResource("1_cl3se")
|
||||||
|
texture_region_size = Vector2i(32, 32)
|
||||||
|
0:0/0 = 0
|
||||||
|
0:0/0/terrain_set = 0
|
||||||
|
0:0/0/terrain = 0
|
||||||
|
0:0/0/probability = 2.0
|
||||||
|
0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
0:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -12, 16, -12, -8, -8.5, -12, 8.5, -12, 12, -8)
|
||||||
|
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/linear_velocity = Vector2(0, 0)
|
||||||
|
1:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -12, 16, -12, -8, -8, -12, 16, -12, 16, 12)
|
||||||
|
1:0/0/terrains_peering_bit/right_side = 0
|
||||||
|
1:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
2:0/0 = 0
|
||||||
|
2:0/0/terrain_set = 0
|
||||||
|
2:0/0/terrain = 0
|
||||||
|
2:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
2:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, 16, -12, 16, 12, 12.5, 12.5, 12, 16, -12, 16, -12.5, 12.5)
|
||||||
|
2:0/0/terrains_peering_bit/right_side = 0
|
||||||
|
2:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
2:0/0/terrains_peering_bit/left_side = 0
|
||||||
|
3:0/0 = 0
|
||||||
|
3:0/0/terrain_set = 0
|
||||||
|
3:0/0/terrain = 0
|
||||||
|
3:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
3:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -12, 8, -12, 12, -8, 12, 16, -12, 16)
|
||||||
|
3:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
3: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/linear_velocity = Vector2(0, 0)
|
||||||
|
4:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
4:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12, 12.5, 12.5)
|
||||||
|
4:0/0/terrains_peering_bit/right_side = 0
|
||||||
|
4:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
4:0/0/terrains_peering_bit/left_side = 0
|
||||||
|
4:0/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
4:0/0/terrains_peering_bit/top_side = 0
|
||||||
|
5:0/0 = 0
|
||||||
|
5:0/0/terrain_set = 0
|
||||||
|
5:0/0/terrain = 0
|
||||||
|
5:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
5:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
5:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -12, 16, -12, 16, 16, -12, 16)
|
||||||
|
5:0/0/terrains_peering_bit/right_side = 0
|
||||||
|
5:0/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
5:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
5:0/0/terrains_peering_bit/left_side = 0
|
||||||
|
6:0/0 = 0
|
||||||
|
6:0/0/terrain_set = 0
|
||||||
|
6:0/0/terrain = 0
|
||||||
|
6:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
6:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
6:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 16, 12, 16, -12, -16, -12, -16, 16, 12, 16)
|
||||||
|
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
|
||||||
|
7:0/0 = 0
|
||||||
|
7:0/0/terrain_set = 0
|
||||||
|
7:0/0/terrain = 0
|
||||||
|
7:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
7:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
7:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, -12.5, -12.5, -12, -16, 16, -16, 16, 12, 12.5, 12.5, 12, 16, -12, 16, -12.5, 12.5)
|
||||||
|
7:0/0/terrains_peering_bit/right_side = 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_side = 0
|
||||||
|
7:0/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
8:0/0 = 0
|
||||||
|
8:0/0/terrain_set = 0
|
||||||
|
8:0/0/terrain = 0
|
||||||
|
8:0/0/probability = 2.0
|
||||||
|
8:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
8:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
8:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, 16, -12, 16, -12, -8, -8, -12, 16, -12)
|
||||||
|
8:0/0/terrains_peering_bit/right_side = 0
|
||||||
|
8:0/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
8:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
9:0/0 = 0
|
||||||
|
9:0/0/terrain_set = 0
|
||||||
|
9:0/0/terrain = 0
|
||||||
|
9:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
9:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
9:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 16, -16, 16, -16, -12, -12.5, -12.5, -12, -16, 12, -16)
|
||||||
|
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/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
10:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
10:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 16, -16, 16, -16, -12)
|
||||||
|
10:0/0/terrains_peering_bit/right_side = 0
|
||||||
|
10:0/0/terrains_peering_bit/bottom_right_corner = 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
|
||||||
|
11:0/0 = 0
|
||||||
|
11:0/0/terrain_set = 0
|
||||||
|
11:0/0/terrain = 0
|
||||||
|
11:0/0/probability = 2.0
|
||||||
|
11:0/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
11:0/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
11:0/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 16, -16, -12, 8, -12, 12, -8, 12, 16)
|
||||||
|
11:0/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
11:0/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
11:0/0/terrains_peering_bit/left_side = 0
|
||||||
|
0:1/0 = 0
|
||||||
|
0:1/0/terrain_set = 0
|
||||||
|
0:1/0/terrain = 0
|
||||||
|
0:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
0:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12, 16, -12, 16)
|
||||||
|
0:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
0:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
1:1/0 = 0
|
||||||
|
1:1/0/terrain_set = 0
|
||||||
|
1:1/0/terrain = 0
|
||||||
|
1:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
1:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -12, 16, -12, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12, 12.5, 12.5)
|
||||||
|
1:1/0/terrains_peering_bit/right_side = 0
|
||||||
|
1:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
1:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
2:1/0 = 0
|
||||||
|
2:1/0/terrain_set = 0
|
||||||
|
2:1/0/terrain = 0
|
||||||
|
2:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
2:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, -12.5, -12.5, -12, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12, 12.5, 12.5, 12, 16, -12, 16, -12.5, 12.5)
|
||||||
|
2:1/0/terrains_peering_bit/right_side = 0
|
||||||
|
2:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
2:1/0/terrains_peering_bit/left_side = 0
|
||||||
|
2:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
3:1/0 = 0
|
||||||
|
3:1/0/terrain_set = 0
|
||||||
|
3:1/0/terrain = 0
|
||||||
|
3:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
3:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -12, -12.5, -12.5)
|
||||||
|
3:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
3:1/0/terrains_peering_bit/left_side = 0
|
||||||
|
3: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/linear_velocity = Vector2(0, 0)
|
||||||
|
4:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 12, -16, -12, -16, -12, 16, 16, 16, 16, -12)
|
||||||
|
4:1/0/terrains_peering_bit/right_side = 0
|
||||||
|
4:1/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
4:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
4:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
5:1/0 = 0
|
||||||
|
5:1/0/terrain_set = 0
|
||||||
|
5:1/0/terrain = 0
|
||||||
|
5:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
5:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
5:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 16, -16, 16, 16, -16, 16, -16, -12)
|
||||||
|
5:1/0/terrains_peering_bit/right_side = 0
|
||||||
|
5:1/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
5:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
5:1/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
5:1/0/terrains_peering_bit/left_side = 0
|
||||||
|
5:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
5:1/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
6:1/0 = 0
|
||||||
|
6:1/0/terrain_set = 0
|
||||||
|
6:1/0/terrain = 0
|
||||||
|
6:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
6:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
6:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 16, -16, 16, -16, -16, 12, -16)
|
||||||
|
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/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
7:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
7:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 12, -16, 12, 16, -16, 16, -16, -12)
|
||||||
|
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
|
||||||
|
8:1/0 = 0
|
||||||
|
8:1/0/terrain_set = 0
|
||||||
|
8:1/0/terrain = 0
|
||||||
|
8:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
8:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
8:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 16, -16, 16, 16, -12, 16)
|
||||||
|
8:1/0/terrains_peering_bit/right_side = 0
|
||||||
|
8:1/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
8:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
8:1/0/terrains_peering_bit/top_side = 0
|
||||||
|
8: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/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
9:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
9:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -16, 16, 12, 12.5, 12.5, 12, 16, -16, 16, -16, -12, -12.5, -12.5, -12, -16)
|
||||||
|
9:1/0/terrains_peering_bit/right_side = 0
|
||||||
|
9:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
9:1/0/terrains_peering_bit/bottom_left_corner = 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
|
||||||
|
11:1/0 = 0
|
||||||
|
11:1/0/terrain_set = 0
|
||||||
|
11:1/0/terrain = 0
|
||||||
|
11:1/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
11:1/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
11:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -16, 16, -16, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 12)
|
||||||
|
11:1/0/terrains_peering_bit/right_side = 0
|
||||||
|
11:1/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
11:1/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
11:1/0/terrains_peering_bit/left_side = 0
|
||||||
|
11:1/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
11: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/probability = 2.0
|
||||||
|
0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
0:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12, 8, 8.5, 12, -8.5, 12, -12, 8)
|
||||||
|
0:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
1:2/0 = 0
|
||||||
|
1:2/0/terrain_set = 0
|
||||||
|
1:2/0/terrain = 0
|
||||||
|
1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
1:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 12, -8, 12, -12, 8, -12, -16, 12, -16)
|
||||||
|
1:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
1:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
2:2/0 = 0
|
||||||
|
2:2/0/terrain_set = 0
|
||||||
|
2:2/0/terrain = 0
|
||||||
|
2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
2:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, -16, 12, -16, -12, -12.5, -12.5, -12, -16, 12, -16, 12.5, -12.5)
|
||||||
|
2:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
2:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
2:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
3:2/0 = 0
|
||||||
|
3:2/0/terrain_set = 0
|
||||||
|
3:2/0/terrain = 0
|
||||||
|
3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
3:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 12, -16, 12, 8, 8, 12, -16, 12, -16, -12)
|
||||||
|
3:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
3: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/linear_velocity = Vector2(0, 0)
|
||||||
|
4:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -12, 16, -12, -16, 16, -16, 16, 12)
|
||||||
|
4:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
4:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
4:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
4:2/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
5:2/0 = 0
|
||||||
|
5:2/0/terrain_set = 0
|
||||||
|
5:2/0/terrain = 0
|
||||||
|
5:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
5:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
5:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -16, 16, -16, 16, 16, -12, 16)
|
||||||
|
5:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
5:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
5:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
5:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
5:2/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
5:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
5:2/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
6:2/0 = 0
|
||||||
|
6:2/0/terrain_set = 0
|
||||||
|
6:2/0/terrain = 0
|
||||||
|
6:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
6:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
6:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, 12.5, 12, 16, -16, 16, -16, -16, 16, -16, 16, 12)
|
||||||
|
6:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
6:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
6:2/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
6:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
6:2/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
6:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
6:2/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
7:2/0 = 0
|
||||||
|
7:2/0/terrain_set = 0
|
||||||
|
7:2/0/terrain = 0
|
||||||
|
7:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
7:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
7:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -12, 16, 12, 16, 12, -16, -16, -16, -16, 12)
|
||||||
|
7:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
7:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
7:2/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
7:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
8:2/0 = 0
|
||||||
|
8:2/0/terrain_set = 0
|
||||||
|
8:2/0/terrain = 0
|
||||||
|
8:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
8:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
8:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -12, -16, 16, -16, 16, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -12)
|
||||||
|
8:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
8:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
8:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
8:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
8:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
8:2/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
9:2/0 = 0
|
||||||
|
9:2/0/terrain_set = 0
|
||||||
|
9:2/0/terrain = 0
|
||||||
|
9:2/0/probability = 2.0
|
||||||
|
9:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
9:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
9:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 16, -16, 16, 16, -16, 16)
|
||||||
|
9:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
9:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
9:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
9:2/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
9:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
9:2/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
9:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
9:2/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
10:2/0 = 0
|
||||||
|
10:2/0/terrain_set = 0
|
||||||
|
10:2/0/terrain = 0
|
||||||
|
10:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
10:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
10:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 16, -12, 16, -12.5, 12.5, -16, 12)
|
||||||
|
10:2/0/terrains_peering_bit/right_side = 0
|
||||||
|
10:2/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
10:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
10:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
10:2/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
10:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
11:2/0 = 0
|
||||||
|
11:2/0/terrain_set = 0
|
||||||
|
11:2/0/terrain = 0
|
||||||
|
11:2/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
11:2/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
11:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(12, 16, -16, 16, -16, -16, 12, -16)
|
||||||
|
11:2/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
11:2/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
11:2/0/terrains_peering_bit/left_side = 0
|
||||||
|
11:2/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
11:2/0/terrains_peering_bit/top_side = 0
|
||||||
|
0:3/0 = 0
|
||||||
|
0:3/0/terrain_set = 0
|
||||||
|
0:3/0/terrain = 0
|
||||||
|
0:3/0/probability = 2.0
|
||||||
|
0:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
0:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, 12, -12, 8, -12, -8, -8, -12, 8, -12, 12, -8.5, 12, 8.5, 8, 12)
|
||||||
|
1:3/0 = 0
|
||||||
|
1:3/0/terrain_set = 0
|
||||||
|
1:3/0/terrain = 0
|
||||||
|
1:3/0/probability = 2.0
|
||||||
|
1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
1:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, -8, 12, -12, 8.5, -12, -8.5, -8, -12)
|
||||||
|
1:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
2:3/0 = 0
|
||||||
|
2:3/0/terrain_set = 0
|
||||||
|
2:3/0/terrain = 0
|
||||||
|
2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
2:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, -16, 12, -16, -12)
|
||||||
|
2:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
2:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
3:3/0 = 0
|
||||||
|
3:3/0/terrain_set = 0
|
||||||
|
3:3/0/terrain = 0
|
||||||
|
3:3/0/probability = 2.0
|
||||||
|
3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
3:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -12, 8, -12, 12, -8.5, 12, 8.5, 8, 12)
|
||||||
|
3:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
4:3/0 = 0
|
||||||
|
4:3/0/terrain_set = 0
|
||||||
|
4:3/0/terrain = 0
|
||||||
|
4:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
4:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
4:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -12, 16, 12, 12.5, 12.5, 12, 16, -16, 16, -16, -12, -12.5, -12.5, -12, -16, 12, -16, 12.5, -12.5)
|
||||||
|
4:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
4:3/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
4:3/0/terrains_peering_bit/bottom_left_corner = 0
|
||||||
|
4:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
4:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
5:3/0 = 0
|
||||||
|
5:3/0/terrain_set = 0
|
||||||
|
5:3/0/terrain = 0
|
||||||
|
5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
5:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, -12.5, -16, -12, -16, 12, 16, 12, 16, -16, -12, -16)
|
||||||
|
5:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
5:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
5:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
5:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
6:3/0 = 0
|
||||||
|
6:3/0/terrain_set = 0
|
||||||
|
6:3/0/terrain = 0
|
||||||
|
6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
6:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
6:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(12.5, -12.5, 16, -12, 16, 12, -16, 12, -16, -16, 12, -16)
|
||||||
|
6:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
6:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
6:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
6:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
7:3/0 = 0
|
||||||
|
7:3/0/terrain_set = 0
|
||||||
|
7:3/0/terrain = 0
|
||||||
|
7:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
7:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
7:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12, -16, 12, -16, 12.5, -12.5, 16, -12, 16, 16, -12, 16, -12.5, 12.5, -16, 12, -16, -12, -12.5, -12.5)
|
||||||
|
7:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
7:3/0/terrains_peering_bit/bottom_right_corner = 0
|
||||||
|
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_side = 0
|
||||||
|
8:3/0 = 0
|
||||||
|
8:3/0/terrain_set = 0
|
||||||
|
8:3/0/terrain = 0
|
||||||
|
8:3/0/probability = 2.0
|
||||||
|
8:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
8:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
8:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(16, -16, 16, 12, -8, 12, -12, 8, -12, -16)
|
||||||
|
8:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
8:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
8:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
9:3/0 = 0
|
||||||
|
9:3/0/terrain_set = 0
|
||||||
|
9:3/0/terrain = 0
|
||||||
|
9:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
9:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
9:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, 12, -16, -16, 16, -16, 16, 12)
|
||||||
|
9:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
9:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
9:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
9:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
9:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
10:3/0 = 0
|
||||||
|
10:3/0/terrain_set = 0
|
||||||
|
10:3/0/terrain = 0
|
||||||
|
10:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
10:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
10:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-12.5, 12.5, -16, 12, -16, -16, 16, -16, 16, 12, 12.5, 12.5, 12, 16, -12, 16)
|
||||||
|
10:3/0/terrains_peering_bit/right_side = 0
|
||||||
|
10:3/0/terrains_peering_bit/bottom_side = 0
|
||||||
|
10:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
10:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
10:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
10:3/0/terrains_peering_bit/top_right_corner = 0
|
||||||
|
11:3/0 = 0
|
||||||
|
11:3/0/terrain_set = 0
|
||||||
|
11:3/0/terrain = 0
|
||||||
|
11:3/0/probability = 2.0
|
||||||
|
11:3/0/physics_layer_0/linear_velocity = Vector2(0, 0)
|
||||||
|
11:3/0/physics_layer_0/angular_velocity = 0.0
|
||||||
|
11:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-16, -16, 12, -16, 12, 8, 8, 12, -16, 12)
|
||||||
|
11:3/0/terrains_peering_bit/left_side = 0
|
||||||
|
11:3/0/terrains_peering_bit/top_left_corner = 0
|
||||||
|
11:3/0/terrains_peering_bit/top_side = 0
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
tile_size = Vector2i(32, 32)
|
||||||
|
physics_layer_0/collision_layer = 1
|
||||||
|
physics_layer_0/collision_mask = 0
|
||||||
|
terrain_set_0/mode = 0
|
||||||
|
terrain_set_0/terrain_0/name = "Walls"
|
||||||
|
terrain_set_0/terrain_0/color = Color(1, 0.301961, 0.329412, 1)
|
||||||
|
sources/1 = SubResource("TileSetAtlasSource_mgef5")
|
14
Scenes/Cave.tscn
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
[gd_scene load_steps=3 format=3 uid="uid://chfp8mm3vwh2e"]
|
||||||
|
|
||||||
|
[ext_resource type="TileSet" uid="uid://bj7uu2180mie3" path="res://Assets/Tileset.tres" id="1_a2htf"]
|
||||||
|
[ext_resource type="Script" path="res://Scripts/MapGenerator.gd" id="2_qvwn8"]
|
||||||
|
|
||||||
|
[node name="Node2D" type="Node2D"]
|
||||||
|
|
||||||
|
[node name="TileMap" type="TileMap" parent="."]
|
||||||
|
tile_set = ExtResource("1_a2htf")
|
||||||
|
cell_quadrant_size = 8
|
||||||
|
collision_visibility_mode = 1
|
||||||
|
format = 2
|
||||||
|
script = ExtResource("2_qvwn8")
|
||||||
|
height = 33
|
154
Scenes/PlayerMovement.tscn
Normal file
|
@ -0,0 +1,154 @@
|
||||||
|
[gd_scene load_steps=12 format=3 uid="uid://ccgpsim5nfxd6"]
|
||||||
|
|
||||||
|
[ext_resource type="TileSet" uid="uid://bj7uu2180mie3" path="res://Assets/Tileset.tres" id="1_wkp62"]
|
||||||
|
[ext_resource type="Script" path="res://Scripts/PlayerController.gd" id="1_x3102"]
|
||||||
|
[ext_resource type="Script" path="res://Scripts/MapGenerator.gd" id="4_8st0q"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://bl7vfn05ul1vu" path="res://Assets/Sprites/Jesus/Jesus Spritesheet.png" id="4_e5cec"]
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_kdxam"]
|
||||||
|
resource_name = "Idle"
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Player Sprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_dwpep"]
|
||||||
|
resource_name = "MoveDown"
|
||||||
|
length = 0.8
|
||||||
|
loop_mode = 1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Player Sprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = false
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0, 1, 2, 3]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_2jvl5"]
|
||||||
|
resource_name = "MoveLeft"
|
||||||
|
length = 0.8
|
||||||
|
loop_mode = 1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Player Sprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [12, 13, 14, 15]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_4ig1u"]
|
||||||
|
resource_name = "MoveRight"
|
||||||
|
length = 0.8
|
||||||
|
loop_mode = 1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Player Sprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [4, 5, 6, 7]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_pswkh"]
|
||||||
|
resource_name = "MoveUp"
|
||||||
|
length = 0.8
|
||||||
|
loop_mode = 1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Player Sprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 0.2, 0.4, 0.6),
|
||||||
|
"transitions": PackedFloat32Array(1, 1, 1, 1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [8, 9, 10, 11]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_o3hln"]
|
||||||
|
length = 0.001
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("Player Sprite:frame")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 1,
|
||||||
|
"values": [0]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_bi1h3"]
|
||||||
|
_data = {
|
||||||
|
"Idle": SubResource("Animation_kdxam"),
|
||||||
|
"MoveDown": SubResource("Animation_dwpep"),
|
||||||
|
"MoveLeft": SubResource("Animation_2jvl5"),
|
||||||
|
"MoveRight": SubResource("Animation_4ig1u"),
|
||||||
|
"MoveUp": SubResource("Animation_pswkh"),
|
||||||
|
"RESET": SubResource("Animation_o3hln")
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="Player Movement" type="Node2D"]
|
||||||
|
|
||||||
|
[node name="Map Generator" type="TileMap" parent="."]
|
||||||
|
tile_set = ExtResource("1_wkp62")
|
||||||
|
cell_quadrant_size = 32
|
||||||
|
collision_visibility_mode = 1
|
||||||
|
format = 2
|
||||||
|
script = ExtResource("4_8st0q")
|
||||||
|
start_area_size = 3
|
||||||
|
start_area_corner_size = 1
|
||||||
|
|
||||||
|
[node name="Player" type="CharacterBody2D" parent="." node_paths=PackedStringArray("animation_player")]
|
||||||
|
position = Vector2(960, 512)
|
||||||
|
scale = Vector2(0.5, 0.5)
|
||||||
|
collision_layer = 0
|
||||||
|
script = ExtResource("1_x3102")
|
||||||
|
speed = 60
|
||||||
|
animation_player = NodePath("Player Animator")
|
||||||
|
|
||||||
|
[node name="Player Sprite" type="Sprite2D" parent="Player"]
|
||||||
|
position = Vector2(0, -20)
|
||||||
|
texture = ExtResource("4_e5cec")
|
||||||
|
hframes = 4
|
||||||
|
vframes = 4
|
||||||
|
|
||||||
|
[node name="Player Collider" type="CollisionPolygon2D" parent="Player"]
|
||||||
|
polygon = PackedVector2Array(12, 32, -16, 32, -16, -24, 12, -24)
|
||||||
|
|
||||||
|
[node name="Player Camera" type="Camera2D" parent="Player"]
|
||||||
|
zoom = Vector2(3, 3)
|
||||||
|
position_smoothing_enabled = true
|
||||||
|
drag_horizontal_enabled = true
|
||||||
|
drag_vertical_enabled = true
|
||||||
|
editor_draw_drag_margin = true
|
||||||
|
|
||||||
|
[node name="Player Animator" type="AnimationPlayer" parent="Player"]
|
||||||
|
libraries = {
|
||||||
|
"": SubResource("AnimationLibrary_bi1h3")
|
||||||
|
}
|
269
Scripts/MapGenerator.gd
Normal file
|
@ -0,0 +1,269 @@
|
||||||
|
extends TileMap
|
||||||
|
|
||||||
|
@export var width := 60
|
||||||
|
@export var height := 32
|
||||||
|
@export var fill_percentage := 0.65
|
||||||
|
|
||||||
|
@export var solid_threshold := 7
|
||||||
|
@export var nonsolid_threshold := 4
|
||||||
|
|
||||||
|
@export var start_area_size := 5
|
||||||
|
@export var start_area_corner_size := 2
|
||||||
|
|
||||||
|
@export var cave_gen_iterations := 3
|
||||||
|
@export var cave_mine_size_threshold := 80
|
||||||
|
|
||||||
|
var tile_array : Array
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
var time = generate()
|
||||||
|
print("time for generation: " + str(time))
|
||||||
|
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
func generate() -> float:
|
||||||
|
var start_time = Time.get_unix_time_from_system()
|
||||||
|
|
||||||
|
randomize()
|
||||||
|
setup_tile_data_array()
|
||||||
|
fill_random_noise()
|
||||||
|
|
||||||
|
for i in cave_gen_iterations:
|
||||||
|
change_cells_by_neighbor_thresholds()
|
||||||
|
set_borders_solid()
|
||||||
|
prepare_player_start_area()
|
||||||
|
connect_caves(get_caves())
|
||||||
|
for i in cave_gen_iterations:
|
||||||
|
change_cells_by_neighbor_thresholds()
|
||||||
|
set_borders_solid()
|
||||||
|
|
||||||
|
tile_array_to_terrain()
|
||||||
|
return Time.get_unix_time_from_system() - start_time
|
||||||
|
|
||||||
|
func setup_tile_data_array():
|
||||||
|
tile_array.clear()
|
||||||
|
tile_array = []
|
||||||
|
for x in width:
|
||||||
|
tile_array.append([])
|
||||||
|
for y in height:
|
||||||
|
tile_array[x].append([])
|
||||||
|
|
||||||
|
func fill_random_noise():
|
||||||
|
for x in width:
|
||||||
|
for y in height:
|
||||||
|
if randf() < fill_percentage:
|
||||||
|
set_tile_solid(x,y)
|
||||||
|
else:
|
||||||
|
set_tile_non_solid(x,y)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func set_borders_solid():
|
||||||
|
for x in width:
|
||||||
|
set_tile_solid(x,0)
|
||||||
|
set_tile_solid(x,height-1)
|
||||||
|
for y in height:
|
||||||
|
set_tile_solid(0,y)
|
||||||
|
set_tile_solid(width-1,y)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func prepare_player_start_area():
|
||||||
|
var center = Vector2i(width/2, height/2)
|
||||||
|
for x in range(center.x - start_area_size, center.x + start_area_size):
|
||||||
|
|
||||||
|
# Getting a P factor for the corner "radius" Decission
|
||||||
|
var p := 0
|
||||||
|
if x <= center.x - start_area_size + start_area_corner_size:
|
||||||
|
p = center.x - start_area_size + start_area_corner_size - x
|
||||||
|
if x >= center.x + start_area_size - start_area_corner_size:
|
||||||
|
p = x - ( center.x + start_area_size) + start_area_corner_size + 1
|
||||||
|
var p2 = p
|
||||||
|
|
||||||
|
for y in range(center.y - start_area_size, center.y + start_area_size):
|
||||||
|
# Decide if the tile is part of the Corner or not
|
||||||
|
if !(p2 > 0 or p2 <= - (start_area_size*2 - p*2)):
|
||||||
|
set_tile_non_solid(x,y)
|
||||||
|
p2 -= 1
|
||||||
|
pass
|
||||||
|
|
||||||
|
func change_cells_by_neighbor_thresholds():
|
||||||
|
for x in range(1, width-1):
|
||||||
|
for y in range(1, height-1):
|
||||||
|
# Count Solid Neighbor Cells
|
||||||
|
var count := 0
|
||||||
|
#y-1
|
||||||
|
if get_tile_solid(x-1, y-1): count +=1
|
||||||
|
if get_tile_solid(x, y-1): count +=1
|
||||||
|
if get_tile_solid(x+1, y-1): count +=1
|
||||||
|
#y
|
||||||
|
if get_tile_solid(x-1, y): count +=1
|
||||||
|
if get_tile_solid(x+1, y): count +=1
|
||||||
|
#y+1
|
||||||
|
if get_tile_solid(x-1, y+1): count +=1
|
||||||
|
if get_tile_solid(x, y+1): count +=1
|
||||||
|
if get_tile_solid(x+1, y+1): count +=1
|
||||||
|
|
||||||
|
# Check Threshold
|
||||||
|
if count < nonsolid_threshold:
|
||||||
|
set_tile_non_solid(x,y)
|
||||||
|
if count >= solid_threshold:
|
||||||
|
set_tile_solid(x,y)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func get_caves() -> Array:
|
||||||
|
# get caves
|
||||||
|
var caves := []
|
||||||
|
|
||||||
|
for x in range (2, width-2):
|
||||||
|
for y in range (2, height-2):
|
||||||
|
if get_tile_non_solid(x, y):
|
||||||
|
flood_fill(x,y, caves)
|
||||||
|
|
||||||
|
for cave in caves:
|
||||||
|
for tile in cave:
|
||||||
|
set_tile_non_solid(tile.x,tile.y)
|
||||||
|
return caves
|
||||||
|
|
||||||
|
func flood_fill(tilex, tiley, caves) -> Array:
|
||||||
|
var cave := []
|
||||||
|
var to_fill := [Vector2i(tilex, tiley)]
|
||||||
|
while to_fill:
|
||||||
|
var tile = to_fill.pop_back()
|
||||||
|
|
||||||
|
if !cave.has(tile):
|
||||||
|
cave.append(tile)
|
||||||
|
set_tile_solid(tile.x,tile.y)
|
||||||
|
|
||||||
|
#check adjacent cells
|
||||||
|
var north = Vector2i(tile.x, tile.y+1)
|
||||||
|
var south = Vector2i(tile.x, tile.y-1)
|
||||||
|
var east = Vector2i(tile.x+1, tile.y)
|
||||||
|
var west = Vector2i(tile.x-1, tile.y)
|
||||||
|
|
||||||
|
for dir in [north,south,east,west]:
|
||||||
|
if get_tile_non_solid(dir.x, dir.y):
|
||||||
|
if !to_fill.has(dir) and !cave.has(dir):
|
||||||
|
to_fill.append(dir)
|
||||||
|
if cave.size() >= cave_mine_size_threshold:
|
||||||
|
caves.append(cave)
|
||||||
|
return caves
|
||||||
|
|
||||||
|
func choose_rand(choices):
|
||||||
|
randomize()
|
||||||
|
|
||||||
|
var rand_index = randi() % choices.size()
|
||||||
|
return choices[rand_index]
|
||||||
|
|
||||||
|
func connect_caves(caves):
|
||||||
|
var prev_cave = null
|
||||||
|
var tunnel_caves = caves.duplicate()
|
||||||
|
|
||||||
|
for cave in tunnel_caves:
|
||||||
|
if prev_cave:
|
||||||
|
var new_point = choose_rand(cave)
|
||||||
|
var prev_point = choose_rand(prev_cave)
|
||||||
|
|
||||||
|
# ensure not the same point
|
||||||
|
if new_point != prev_point:
|
||||||
|
create_tunnel(new_point, prev_point, cave)
|
||||||
|
|
||||||
|
prev_cave = cave
|
||||||
|
pass
|
||||||
|
|
||||||
|
func create_tunnel(point1, point2, cave):
|
||||||
|
randomize() # for randf
|
||||||
|
var max_steps = 500 # so game won't hang if walk fails
|
||||||
|
var steps = 0
|
||||||
|
var drunk_x = point2[0]
|
||||||
|
var drunk_y = point2[1]
|
||||||
|
|
||||||
|
while steps < max_steps and !cave.has(Vector2i(drunk_x, drunk_y)):
|
||||||
|
steps += 1
|
||||||
|
|
||||||
|
# set initial dir weights
|
||||||
|
var n = 1.0
|
||||||
|
var s = 1.0
|
||||||
|
var e = 1.0
|
||||||
|
var w = 1.0
|
||||||
|
var weight = 1
|
||||||
|
|
||||||
|
# weight the random walk against edges
|
||||||
|
if drunk_x < point1.x:
|
||||||
|
e += weight
|
||||||
|
elif drunk_x > point1.x:
|
||||||
|
w += weight
|
||||||
|
if drunk_y < point1.y:
|
||||||
|
s += weight
|
||||||
|
elif drunk_y > point1.y:
|
||||||
|
n += weight
|
||||||
|
|
||||||
|
# normalize probabilities so they form a range from 0 to 1
|
||||||
|
var total = n + s + e + w
|
||||||
|
n /= total
|
||||||
|
s /= total
|
||||||
|
e /= total
|
||||||
|
w /= total
|
||||||
|
|
||||||
|
var dx
|
||||||
|
var dy
|
||||||
|
|
||||||
|
# choose_rand the direction
|
||||||
|
var choice = randf()
|
||||||
|
|
||||||
|
if 0 <= choice and choice < n:
|
||||||
|
dx = 0
|
||||||
|
dy = -1
|
||||||
|
elif n <= choice and choice < (n+s):
|
||||||
|
dx = 0
|
||||||
|
dy = 1
|
||||||
|
elif (n+s) <= choice and choice < (n+s+e):
|
||||||
|
dx = 1
|
||||||
|
dy = 0
|
||||||
|
else:
|
||||||
|
dx = -1
|
||||||
|
dy = 0
|
||||||
|
|
||||||
|
# ensure not to walk past edge of map
|
||||||
|
if (2 < drunk_x + dx and drunk_x + dx < width-2) and \
|
||||||
|
(2 < drunk_y + dy and drunk_y + dy < height-2):
|
||||||
|
drunk_x += dx
|
||||||
|
drunk_y += dy
|
||||||
|
|
||||||
|
if get_tile_solid(drunk_x, drunk_y):
|
||||||
|
set_tile_non_solid(drunk_x, drunk_y)
|
||||||
|
#make tunnel wider
|
||||||
|
set_tile_non_solid(drunk_x+1, drunk_y)
|
||||||
|
set_tile_non_solid(drunk_x+1, drunk_y+1)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func tile_array_to_terrain():
|
||||||
|
for x in width:
|
||||||
|
for y in height:
|
||||||
|
match tile_array[x][y]:
|
||||||
|
0: set_terrain_tile_non_solid(x,y)
|
||||||
|
1: set_terrain_tile_solid(x,y)
|
||||||
|
pass
|
||||||
|
|
||||||
|
# Getter
|
||||||
|
func get_tile_solid(x : int, y : int) -> bool:
|
||||||
|
return tile_array[x][y] == 1
|
||||||
|
|
||||||
|
func get_tile_non_solid(x : int, y : int) -> bool:
|
||||||
|
return tile_array[x][y] == 0
|
||||||
|
|
||||||
|
# Setter
|
||||||
|
func set_tile_solid(x : int, y : int):
|
||||||
|
tile_array[x][y] = 1
|
||||||
|
pass
|
||||||
|
|
||||||
|
func set_tile_non_solid(x : int, y : int):
|
||||||
|
tile_array[x][y] = 0
|
||||||
|
pass
|
||||||
|
|
||||||
|
func set_terrain_tile_solid(x : int, y : int):
|
||||||
|
self.set_cells_terrain_connect(0, [Vector2i(x,y)], 0, 0, false)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func set_terrain_tile_non_solid(x : int, y : int):
|
||||||
|
self.set_cell(0, Vector2i(x,y), -1)
|
||||||
|
pass
|
43
Scripts/PlayerController.gd
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
extends CharacterBody2D
|
||||||
|
|
||||||
|
@export var speed = 20
|
||||||
|
@export_range(0, 1) var damping_factor = 0.6
|
||||||
|
@export var animation_player : AnimationPlayer
|
||||||
|
|
||||||
|
func _physics_process(delta : float):
|
||||||
|
update_player_movement(delta)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func get_move_input_vector() -> Vector2:
|
||||||
|
var input_direction = Input.get_vector("move_left", "move_right", "move_up", "move_down").normalized()
|
||||||
|
return input_direction
|
||||||
|
|
||||||
|
func update_player_movement(delta : float):
|
||||||
|
var input = get_move_input_vector()
|
||||||
|
|
||||||
|
# Damp Movement if not moving, Accelerate if Moving
|
||||||
|
var is_moving = input != Vector2.ZERO
|
||||||
|
self.velocity = input * speed * delta * 60 if is_moving else self.velocity * (1 - min(1, damping_factor * 60 * delta))
|
||||||
|
|
||||||
|
update_player_animation()
|
||||||
|
|
||||||
|
# Update Objects Physics calculations
|
||||||
|
self.move_and_slide()
|
||||||
|
pass
|
||||||
|
|
||||||
|
func update_player_animation():
|
||||||
|
var move_vector = get_move_input_vector()
|
||||||
|
match move_vector:
|
||||||
|
Vector2.ZERO: animation_player.play("Idle")
|
||||||
|
Vector2.LEFT: animation_player.play("MoveLeft")
|
||||||
|
Vector2.RIGHT: animation_player.play("MoveRight")
|
||||||
|
Vector2.UP: animation_player.play("MoveUp")
|
||||||
|
Vector2.DOWN: animation_player.play("MoveDown")
|
||||||
|
_: handle_diagonal_animations(move_vector)
|
||||||
|
pass
|
||||||
|
|
||||||
|
func handle_diagonal_animations(dir : Vector2):
|
||||||
|
if (dir.y > 0 and dir.x < 0) or (dir.y < 0 and dir.x < 0): animation_player.play("MoveLeft")
|
||||||
|
elif (dir.y > 0 and dir.x > 0) or (dir.y < 0 and dir.x > 0): animation_player.play("MoveRight")
|
||||||
|
else: animation_player.play("Idle")
|
||||||
|
pass
|
|
@ -11,10 +11,50 @@ config_version=5
|
||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="HoppyEaster"
|
config/name="HoppyEaster"
|
||||||
run/main_scene="res://Scenes/Test.tscn"
|
run/main_scene="res://Scenes/PlayerMovement.tscn"
|
||||||
config/features=PackedStringArray("4.0", "GL Compatibility")
|
config/features=PackedStringArray("4.0", "GL Compatibility")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
|
[dotnet]
|
||||||
|
|
||||||
|
project/assembly_name="HoppyEaster"
|
||||||
|
|
||||||
|
[input]
|
||||||
|
|
||||||
|
move_left={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":-1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_right={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194321,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":0,"axis_value":1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_up={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":-1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_down={
|
||||||
|
"deadzone": 0.5,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":-1,"axis":1,"axis_value":1.0,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
[layer_names]
|
||||||
|
|
||||||
|
2d_physics/layer_1="Map"
|
||||||
|
2d_physics/layer_2="Player"
|
||||||
|
|
||||||
[rendering]
|
[rendering]
|
||||||
|
|
||||||
renderer/rendering_method="gl_compatibility"
|
renderer/rendering_method="gl_compatibility"
|
||||||
|
|