Initial set up for topdown game

This commit is contained in:
winniewk 2026-04-02 17:08:20 -04:00
commit eaeed156cb
18 changed files with 1170 additions and 0 deletions

BIN
.DS_Store vendored Normal file

Binary file not shown.

2
.gitattributes vendored Normal file
View File

@ -0,0 +1,2 @@
# Normalize EOL for all files that Git considers text files.
* text=auto eol=lf

3
.gitignore vendored Normal file
View File

@ -0,0 +1,3 @@
# Godot 4+ specific ignores
.godot/
/android/

2
README.md Normal file
View File

@ -0,0 +1,2 @@
# Description
Working on this while sitting in the Game Design class. Let's see how far I get!

BIN
assets/.DS_Store vendored Normal file

Binary file not shown.

BIN
assets/player_sprite.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cw64cil0fdk45"
path="res://.godot/imported/player_sprite.png-a3952e8e3f763fc9ba912798959301c4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/player_sprite.png"
dest_files=["res://.godot/imported/player_sprite.png-a3952e8e3f763fc9ba912798959301c4.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/tilemap_packed.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c73fr3l07jglf"
path="res://.godot/imported/tilemap_packed.png-bc35c6a04993103d475a218761ed55b4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/tilemap_packed.png"
dest_files=["res://.godot/imported/tilemap_packed.png-bc35c6a04993103d475a218761ed55b4.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

1
icon.svg Normal file
View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg>

After

Width:  |  Height:  |  Size: 995 B

43
icon.svg.import Normal file
View File

@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bq6rdddl2g86"
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icon.svg"
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/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
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

59
project.godot Normal file
View File

@ -0,0 +1,59 @@
; Engine configuration file.
; It's best edited using the editor UI and not directly,
; since the parameters that go here are not all obvious.
;
; Format:
; [section] ; section goes between []
; param=value ; assign values to parameters
config_version=5
[application]
config/name="unnamed-topdown-game"
run/main_scene="uid://co3jigcci1u6c"
config/features=PackedStringArray("4.6", "Mobile")
config/icon="res://icon.svg"
[autoload]
gameController="*uid://bpb21r1tnvt70"
[display]
window/size/viewport_width=2560
window/size/viewport_height=1440
window/dpi/allow_hidpi=false
[input]
moveUp={
"deadzone": 0.2,
"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,"location":0,"echo":false,"script":null)
]
}
moveDown={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"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":115,"location":0,"echo":false,"script":null)
]
}
moveLeft={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"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":97,"location":0,"echo":false,"script":null)
]
}
moveRight={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"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":100,"location":0,"echo":false,"script":null)
]
}
[physics]
3d/physics_engine="Jolt Physics"
[rendering]
textures/canvas_textures/default_texture_filter=0
rendering_device/driver.windows="d3d12"
renderer/rendering_method="mobile"

764
resources/terrain.tres Normal file
View File

@ -0,0 +1,764 @@
[gd_resource type="TileSet" format=3 uid="uid://bfr5rwsxuf38k"]
[ext_resource type="Texture2D" uid="uid://c73fr3l07jglf" path="res://assets/tilemap_packed.png" id="1_exxwp"]
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_lohjx"]
texture = ExtResource("1_exxwp")
0:0/0 = 0
0:0/0/terrain_set = 0
0:0/0/terrain = 0
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/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/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
3:0/0 = 0
3:0/0/terrain_set = 0
3:0/0/terrain = 0
3:0/0/terrains_peering_bit/right_side = 0
3:0/0/terrains_peering_bit/bottom_side = 0
4:0/0 = 0
4:0/0/terrain_set = 0
4:0/0/terrain = 0
4:0/0/terrains_peering_bit/bottom_side = 0
4:0/0/terrains_peering_bit/left_side = 0
5:0/0 = 0
5:0/0/terrain_set = 0
5:0/0/terrain = 0
5:0/0/terrains_peering_bit/right_side = 0
5:0/0/terrains_peering_bit/bottom_side = 0
5:0/0/terrains_peering_bit/bottom_left_corner = 0
5:0/0/terrains_peering_bit/left_side = 0
5:0/0/terrains_peering_bit/top_left_corner = 0
5:0/0/terrains_peering_bit/top_side = 0
5:0/0/terrains_peering_bit/top_right_corner = 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_right_corner = 0
6:0/0/terrains_peering_bit/bottom_side = 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/bottom_side = 0
8:0/0 = 0
8:0/0/terrain_set = 0
8:0/0/terrain = 1
8:0/0/terrains_peering_bit/right_side = 1
8:0/0/terrains_peering_bit/bottom_right_corner = 1
8:0/0/terrains_peering_bit/bottom_side = 1
9:0/0 = 0
9:0/0/terrain_set = 0
9:0/0/terrain = 1
9:0/0/terrains_peering_bit/right_side = 1
9:0/0/terrains_peering_bit/bottom_right_corner = 1
9:0/0/terrains_peering_bit/bottom_side = 1
9:0/0/terrains_peering_bit/bottom_left_corner = 1
9:0/0/terrains_peering_bit/left_side = 1
10:0/0 = 0
10:0/0/terrain_set = 0
10:0/0/terrain = 1
10:0/0/terrains_peering_bit/bottom_side = 1
10:0/0/terrains_peering_bit/bottom_left_corner = 1
10:0/0/terrains_peering_bit/left_side = 1
11:0/0 = 0
11:0/0/terrain_set = 0
11:0/0/terrain = 1
11:0/0/terrains_peering_bit/right_side = 1
11:0/0/terrains_peering_bit/bottom_side = 1
12:0/0 = 0
12:0/0/terrain_set = 0
12:0/0/terrain = 1
12:0/0/terrains_peering_bit/bottom_side = 1
12:0/0/terrains_peering_bit/left_side = 1
13:0/0 = 0
13:0/0/terrain_set = 0
13:0/0/terrain = 1
13:0/0/terrains_peering_bit/right_side = 1
13:0/0/terrains_peering_bit/bottom_side = 1
13:0/0/terrains_peering_bit/bottom_left_corner = 1
13:0/0/terrains_peering_bit/left_side = 1
13:0/0/terrains_peering_bit/top_left_corner = 1
13:0/0/terrains_peering_bit/top_side = 1
13:0/0/terrains_peering_bit/top_right_corner = 1
14:0/0 = 0
14:0/0/terrain_set = 0
14:0/0/terrain = 1
14:0/0/terrains_peering_bit/right_side = 1
14:0/0/terrains_peering_bit/bottom_right_corner = 1
14:0/0/terrains_peering_bit/bottom_side = 1
14:0/0/terrains_peering_bit/left_side = 1
14:0/0/terrains_peering_bit/top_left_corner = 1
14:0/0/terrains_peering_bit/top_side = 1
14:0/0/terrains_peering_bit/top_right_corner = 1
15:0/0 = 0
15:0/0/terrain_set = 0
15:0/0/terrain = 1
15:0/0/terrains_peering_bit/bottom_side = 1
16:0/0 = 0
17:0/0 = 0
18:0/0 = 0
19:0/0 = 0
20:0/0 = 0
21:0/0 = 0
22:0/0 = 0
23:0/0 = 0
24:0/0 = 0
25:0/0 = 0
26:0/0 = 0
0:1/0 = 0
0:1/0/terrain_set = 0
0:1/0/terrain = 0
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
1:1/0/terrain_set = 0
1:1/0/terrain = 0
1:1/0/terrains_peering_bit/right_side = 0
1:1/0/terrains_peering_bit/bottom_right_corner = 0
1:1/0/terrains_peering_bit/bottom_side = 0
1:1/0/terrains_peering_bit/bottom_left_corner = 0
1:1/0/terrains_peering_bit/left_side = 0
1:1/0/terrains_peering_bit/top_left_corner = 0
1:1/0/terrains_peering_bit/top_side = 0
1:1/0/terrains_peering_bit/top_right_corner = 0
2:1/0 = 0
2:1/0/terrain_set = 0
2:1/0/terrain = 0
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
3:1/0 = 0
3:1/0/terrain_set = 0
3:1/0/terrain = 0
3:1/0/terrains_peering_bit/right_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/terrains_peering_bit/left_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/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_left_corner = 0
5: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_side = 0
6:1/0/terrains_peering_bit/top_right_corner = 0
7:1/0 = 0
7:1/0/terrain_set = 0
7:1/0/terrain = 0
7:1/0/terrains_peering_bit/bottom_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 = 1
8:1/0/terrains_peering_bit/right_side = 1
8:1/0/terrains_peering_bit/bottom_right_corner = 1
8:1/0/terrains_peering_bit/bottom_side = 1
8:1/0/terrains_peering_bit/top_side = 1
8:1/0/terrains_peering_bit/top_right_corner = 1
9:1/0 = 0
9:1/0/terrain_set = 0
9:1/0/terrain = 1
9:1/0/terrains_peering_bit/right_side = 1
9:1/0/terrains_peering_bit/bottom_right_corner = 1
9:1/0/terrains_peering_bit/bottom_side = 1
9:1/0/terrains_peering_bit/bottom_left_corner = 1
9:1/0/terrains_peering_bit/left_side = 1
9:1/0/terrains_peering_bit/top_left_corner = 1
9:1/0/terrains_peering_bit/top_side = 1
9:1/0/terrains_peering_bit/top_right_corner = 1
10:1/0 = 0
10:1/0/terrain_set = 0
10:1/0/terrain = 1
10:1/0/terrains_peering_bit/bottom_side = 1
10:1/0/terrains_peering_bit/bottom_left_corner = 1
10:1/0/terrains_peering_bit/left_side = 1
10:1/0/terrains_peering_bit/top_left_corner = 1
10:1/0/terrains_peering_bit/top_side = 1
11:1/0 = 0
11:1/0/terrain_set = 0
11:1/0/terrain = 1
11:1/0/terrains_peering_bit/right_side = 1
11:1/0/terrains_peering_bit/top_side = 1
12:1/0 = 0
12:1/0/terrain_set = 0
12:1/0/terrain = 1
12:1/0/terrains_peering_bit/left_side = 1
12:1/0/terrains_peering_bit/top_side = 1
13:1/0 = 0
13:1/0/terrain_set = 0
13:1/0/terrain = 1
13:1/0/terrains_peering_bit/right_side = 1
13:1/0/terrains_peering_bit/bottom_right_corner = 1
13:1/0/terrains_peering_bit/bottom_side = 1
13:1/0/terrains_peering_bit/bottom_left_corner = 1
13:1/0/terrains_peering_bit/left_side = 1
13:1/0/terrains_peering_bit/top_left_corner = 1
13:1/0/terrains_peering_bit/top_side = 1
14:1/0 = 0
14:1/0/terrain_set = 0
14:1/0/terrain = 1
14:1/0/terrains_peering_bit/right_side = 1
14:1/0/terrains_peering_bit/bottom_right_corner = 1
14:1/0/terrains_peering_bit/bottom_side = 1
14:1/0/terrains_peering_bit/bottom_left_corner = 1
14:1/0/terrains_peering_bit/left_side = 1
14:1/0/terrains_peering_bit/top_side = 1
14:1/0/terrains_peering_bit/top_right_corner = 1
15:1/0 = 0
15:1/0/terrain_set = 0
15:1/0/terrain = 1
15:1/0/terrains_peering_bit/bottom_side = 1
15:1/0/terrains_peering_bit/top_side = 1
16:1/0 = 0
17:1/0 = 0
18:1/0 = 0
19:1/0 = 0
20:1/0 = 0
21:1/0 = 0
22:1/0 = 0
23:1/0 = 0
24:1/0 = 0
25:1/0 = 0
26:1/0 = 0
0:2/0 = 0
0:2/0/terrain_set = 0
0:2/0/terrain = 0
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/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/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
3:2/0 = 0
3:2/0/terrain_set = 0
3:2/0/terrain = 0
3:2/0/terrains_peering_bit/right_side = 0
4:2/0 = 0
4:2/0/terrain_set = 0
4:2/0/terrain = 0
4:2/0/terrains_peering_bit/right_side = 0
4:2/0/terrains_peering_bit/left_side = 0
5:2/0 = 0
5:2/0/terrain_set = 0
5:2/0/terrain = 0
5:2/0/terrains_peering_bit/left_side = 0
6:2/0 = 0
6:2/0/terrain_set = 0
6:2/0/terrain = 0
7:2/0 = 0
7:2/0/terrain_set = 0
7:2/0/terrain = 0
7:2/0/terrains_peering_bit/top_side = 0
8:2/0 = 0
8:2/0/terrain_set = 0
8:2/0/terrain = 1
8:2/0/terrains_peering_bit/right_side = 1
8:2/0/terrains_peering_bit/top_side = 1
8:2/0/terrains_peering_bit/top_right_corner = 1
9:2/0 = 0
9:2/0/terrain_set = 0
9:2/0/terrain = 1
9:2/0/terrains_peering_bit/right_side = 1
9:2/0/terrains_peering_bit/left_side = 1
9:2/0/terrains_peering_bit/top_left_corner = 1
9:2/0/terrains_peering_bit/top_side = 1
9:2/0/terrains_peering_bit/top_right_corner = 1
10:2/0 = 0
10:2/0/terrain_set = 0
10:2/0/terrain = 1
10:2/0/terrains_peering_bit/left_side = 1
10:2/0/terrains_peering_bit/top_left_corner = 1
10:2/0/terrains_peering_bit/top_side = 1
11:2/0 = 0
11:2/0/terrain_set = 0
11:2/0/terrain = 1
11:2/0/terrains_peering_bit/right_side = 1
12:2/0 = 0
12:2/0/terrain_set = 0
12:2/0/terrain = 1
12:2/0/terrains_peering_bit/right_side = 1
12:2/0/terrains_peering_bit/left_side = 1
13:2/0 = 0
13:2/0/terrain_set = 0
13:2/0/terrain = 1
13:2/0/terrains_peering_bit/left_side = 1
14:2/0 = 0
14:2/0/terrain_set = 0
14:2/0/terrain = 1
15:2/0 = 0
15:2/0/terrain_set = 0
15:2/0/terrain = 1
15:2/0/terrains_peering_bit/top_side = 1
16:2/0 = 0
17:2/0 = 0
18:2/0 = 0
19:2/0 = 0
20:2/0 = 0
21:2/0 = 0
22:2/0 = 0
23:2/0 = 0
24:2/0 = 0
25:2/0 = 0
26:2/0 = 0
0:3/0 = 0
1:3/0 = 0
2:3/0 = 0
3:3/0 = 0
4:3/0 = 0
5:3/0 = 0
6:3/0 = 0
7:3/0 = 0
8:3/0 = 0
9:3/0 = 0
10:3/0 = 0
11:3/0 = 0
12:3/0 = 0
13:3/0 = 0
14:3/0 = 0
15:3/0 = 0
16:3/0 = 0
17:3/0 = 0
18:3/0 = 0
19:3/0 = 0
20:3/0 = 0
21:3/0 = 0
22:3/0 = 0
23:3/0 = 0
24:3/0 = 0
25:3/0 = 0
26:3/0 = 0
0:4/0 = 0
1:4/0 = 0
2:4/0 = 0
3:4/0 = 0
4:4/0 = 0
5:4/0 = 0
6:4/0 = 0
7:4/0 = 0
8:4/0 = 0
9:4/0 = 0
10:4/0 = 0
11:4/0 = 0
12:4/0 = 0
13:4/0 = 0
14:4/0 = 0
15:4/0 = 0
16:4/0 = 0
17:4/0 = 0
18:4/0 = 0
19:4/0 = 0
20:4/0 = 0
21:4/0 = 0
22:4/0 = 0
23:4/0 = 0
24:4/0 = 0
25:4/0 = 0
26:4/0 = 0
0:5/0 = 0
1:5/0 = 0
2:5/0 = 0
3:5/0 = 0
4:5/0 = 0
5:5/0 = 0
6:5/0 = 0
7:5/0 = 0
8:5/0 = 0
9:5/0 = 0
10:5/0 = 0
11:5/0 = 0
12:5/0 = 0
13:5/0 = 0
14:5/0 = 0
15:5/0 = 0
16:5/0 = 0
17:5/0 = 0
18:5/0 = 0
19:5/0 = 0
20:5/0 = 0
21:5/0 = 0
22:5/0 = 0
23:5/0 = 0
24:5/0 = 0
25:5/0 = 0
26:5/0 = 0
0:6/0 = 0
1:6/0 = 0
2:6/0 = 0
3:6/0 = 0
4:6/0 = 0
5:6/0 = 0
6:6/0 = 0
7:6/0 = 0
8:6/0 = 0
9:6/0 = 0
10:6/0 = 0
11:6/0 = 0
12:6/0 = 0
13:6/0 = 0
14:6/0 = 0
15:6/0 = 0
16:6/0 = 0
17:6/0 = 0
18:6/0 = 0
19:6/0 = 0
20:6/0 = 0
21:6/0 = 0
22:6/0 = 0
23:6/0 = 0
24:6/0 = 0
25:6/0 = 0
26:6/0 = 0
0:7/0 = 0
1:7/0 = 0
2:7/0 = 0
3:7/0 = 0
4:7/0 = 0
5:7/0 = 0
6:7/0 = 0
7:7/0 = 0
8:7/0 = 0
9:7/0 = 0
10:7/0 = 0
11:7/0 = 0
12:7/0 = 0
13:7/0 = 0
14:7/0 = 0
15:7/0 = 0
16:7/0 = 0
17:7/0 = 0
18:7/0 = 0
19:7/0 = 0
20:7/0 = 0
21:7/0 = 0
22:7/0 = 0
23:7/0 = 0
24:7/0 = 0
25:7/0 = 0
26:7/0 = 0
0:8/0 = 0
1:8/0 = 0
2:8/0 = 0
3:8/0 = 0
4:8/0 = 0
5:8/0 = 0
6:8/0 = 0
7:8/0 = 0
8:8/0 = 0
9:8/0 = 0
10:8/0 = 0
11:8/0 = 0
12:8/0 = 0
13:8/0 = 0
14:8/0 = 0
15:8/0 = 0
16:8/0 = 0
17:8/0 = 0
18:8/0 = 0
19:8/0 = 0
20:8/0 = 0
21:8/0 = 0
22:8/0 = 0
23:8/0 = 0
24:8/0 = 0
25:8/0 = 0
26:8/0 = 0
0:9/0 = 0
1:9/0 = 0
2:9/0 = 0
3:9/0 = 0
4:9/0 = 0
5:9/0 = 0
6:9/0 = 0
7:9/0 = 0
8:9/0 = 0
9:9/0 = 0
10:9/0 = 0
11:9/0 = 0
12:9/0 = 0
13:9/0 = 0
14:9/0 = 0
15:9/0 = 0
16:9/0 = 0
17:9/0 = 0
18:9/0 = 0
19:9/0 = 0
20:9/0 = 0
21:9/0 = 0
22:9/0 = 0
23:9/0 = 0
24:9/0 = 0
25:9/0 = 0
26:9/0 = 0
0:10/0 = 0
1:10/0 = 0
2:10/0 = 0
3:10/0 = 0
4:10/0 = 0
5:10/0 = 0
6:10/0 = 0
7:10/0 = 0
8:10/0 = 0
9:10/0 = 0
10:10/0 = 0
11:10/0 = 0
12:10/0 = 0
13:10/0 = 0
14:10/0 = 0
15:10/0 = 0
16:10/0 = 0
17:10/0 = 0
18:10/0 = 0
19:10/0 = 0
20:10/0 = 0
21:10/0 = 0
22:10/0 = 0
23:10/0 = 0
24:10/0 = 0
25:10/0 = 0
26:10/0 = 0
0:11/0 = 0
1:11/0 = 0
2:11/0 = 0
3:11/0 = 0
4:11/0 = 0
5:11/0 = 0
6:11/0 = 0
7:11/0 = 0
8:11/0 = 0
9:11/0 = 0
10:11/0 = 0
11:11/0 = 0
12:11/0 = 0
13:11/0 = 0
14:11/0 = 0
15:11/0 = 0
16:11/0 = 0
17:11/0 = 0
18:11/0 = 0
19:11/0 = 0
20:11/0 = 0
21:11/0 = 0
22:11/0 = 0
23:11/0 = 0
24:11/0 = 0
25:11/0 = 0
26:11/0 = 0
0:12/0 = 0
1:12/0 = 0
2:12/0 = 0
3:12/0 = 0
4:12/0 = 0
5:12/0 = 0
6:12/0 = 0
7:12/0 = 0
8:12/0 = 0
9:12/0 = 0
10:12/0 = 0
11:12/0 = 0
12:12/0 = 0
13:12/0 = 0
14:12/0 = 0
15:12/0 = 0
16:12/0 = 0
17:12/0 = 0
18:12/0 = 0
19:12/0 = 0
20:12/0 = 0
21:12/0 = 0
22:12/0 = 0
23:12/0 = 0
24:12/0 = 0
25:12/0 = 0
26:12/0 = 0
0:13/0 = 0
1:13/0 = 0
2:13/0 = 0
3:13/0 = 0
4:13/0 = 0
5:13/0 = 0
6:13/0 = 0
7:13/0 = 0
8:13/0 = 0
9:13/0 = 0
10:13/0 = 0
11:13/0 = 0
12:13/0 = 0
13:13/0 = 0
14:13/0 = 0
15:13/0 = 0
16:13/0 = 0
17:13/0 = 0
18:13/0 = 0
19:13/0 = 0
20:13/0 = 0
21:13/0 = 0
22:13/0 = 0
23:13/0 = 0
24:13/0 = 0
25:13/0 = 0
26:13/0 = 0
0:14/0 = 0
1:14/0 = 0
2:14/0 = 0
3:14/0 = 0
4:14/0 = 0
5:14/0 = 0
6:14/0 = 0
7:14/0 = 0
8:14/0 = 0
9:14/0 = 0
10:14/0 = 0
11:14/0 = 0
12:14/0 = 0
13:14/0 = 0
14:14/0 = 0
15:14/0 = 0
16:14/0 = 0
17:14/0 = 0
18:14/0 = 0
19:14/0 = 0
20:14/0 = 0
21:14/0 = 0
22:14/0 = 0
23:14/0 = 0
24:14/0 = 0
25:14/0 = 0
26:14/0 = 0
0:15/0 = 0
1:15/0 = 0
2:15/0 = 0
3:15/0 = 0
4:15/0 = 0
5:15/0 = 0
6:15/0 = 0
7:15/0 = 0
8:15/0 = 0
9:15/0 = 0
10:15/0 = 0
11:15/0 = 0
12:15/0 = 0
13:15/0 = 0
14:15/0 = 0
15:15/0 = 0
16:15/0 = 0
17:15/0 = 0
18:15/0 = 0
19:15/0 = 0
20:15/0 = 0
21:15/0 = 0
22:15/0 = 0
23:15/0 = 0
24:15/0 = 0
25:15/0 = 0
26:15/0 = 0
0:16/0 = 0
1:16/0 = 0
2:16/0 = 0
3:16/0 = 0
4:16/0 = 0
5:16/0 = 0
6:16/0 = 0
7:16/0 = 0
8:16/0 = 0
9:16/0 = 0
10:16/0 = 0
11:16/0 = 0
12:16/0 = 0
13:16/0 = 0
14:16/0 = 0
15:16/0 = 0
16:16/0 = 0
17:16/0 = 0
18:16/0 = 0
19:16/0 = 0
20:16/0 = 0
21:16/0 = 0
22:16/0 = 0
23:16/0 = 0
24:16/0 = 0
25:16/0 = 0
26:16/0 = 0
0:17/0 = 0
1:17/0 = 0
2:17/0 = 0
3:17/0 = 0
4:17/0 = 0
5:17/0 = 0
6:17/0 = 0
7:17/0 = 0
8:17/0 = 0
9:17/0 = 0
10:17/0 = 0
11:17/0 = 0
12:17/0 = 0
13:17/0 = 0
14:17/0 = 0
15:17/0 = 0
16:17/0 = 0
17:17/0 = 0
18:17/0 = 0
19:17/0 = 0
20:17/0 = 0
21:17/0 = 0
22:17/0 = 0
23:17/0 = 0
24:17/0 = 0
25:17/0 = 0
26:17/0 = 0
[resource]
terrain_set_0/mode = 0
terrain_set_0/terrain_0/name = "Grass"
terrain_set_0/terrain_0/color = Color(0.37730107, 0.9869079, 0.76035076, 1)
terrain_set_0/terrain_1/name = "Sidewalk"
terrain_set_0/terrain_1/color = Color(0.60435426, 0.5666082, 0.5498561, 1)
sources/0 = SubResource("TileSetAtlasSource_lohjx")

184
scenes/game.tscn Normal file
View File

@ -0,0 +1,184 @@
[gd_scene format=4 uid="uid://co3jigcci1u6c"]
[ext_resource type="Script" uid="uid://433o2c0j2ci7" path="res://scripts/playerController.gd" id="1_uwrxv"]
[ext_resource type="TileSet" uid="uid://bfr5rwsxuf38k" path="res://resources/terrain.tres" id="1_yqjtg"]
[ext_resource type="Texture2D" uid="uid://cw64cil0fdk45" path="res://assets/player_sprite.png" id="3_lnu2h"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_8cj0n"]
radius = 5.0
height = 14.0
[sub_resource type="AtlasTexture" id="AtlasTexture_lnu2h"]
atlas = ExtResource("3_lnu2h")
region = Rect2(17, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_lbhrr"]
atlas = ExtResource("3_lnu2h")
region = Rect2(17, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_iywne"]
atlas = ExtResource("3_lnu2h")
region = Rect2(17, 16, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_ssvqc"]
atlas = ExtResource("3_lnu2h")
region = Rect2(17, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_264po"]
atlas = ExtResource("3_lnu2h")
region = Rect2(17, 32, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_p57ef"]
atlas = ExtResource("3_lnu2h")
region = Rect2(1, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_u5sy4"]
atlas = ExtResource("3_lnu2h")
region = Rect2(1, 16, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_gee14"]
atlas = ExtResource("3_lnu2h")
region = Rect2(1, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_0tnpc"]
atlas = ExtResource("3_lnu2h")
region = Rect2(1, 32, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_vtaks"]
atlas = ExtResource("3_lnu2h")
region = Rect2(49, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_kvpfn"]
atlas = ExtResource("3_lnu2h")
region = Rect2(49, 16, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_dinhu"]
atlas = ExtResource("3_lnu2h")
region = Rect2(49, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_kvuet"]
atlas = ExtResource("3_lnu2h")
region = Rect2(49, 32, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_ir15t"]
atlas = ExtResource("3_lnu2h")
region = Rect2(33, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_trtic"]
atlas = ExtResource("3_lnu2h")
region = Rect2(33, 32, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_rysoc"]
atlas = ExtResource("3_lnu2h")
region = Rect2(33, 0, 12, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_ca42v"]
atlas = ExtResource("3_lnu2h")
region = Rect2(33, 16, 12, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_lnu2h"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_lnu2h")
}],
"loop": true,
"name": &"default",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_lbhrr")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_iywne")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ssvqc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_264po")
}],
"loop": true,
"name": &"walk_down",
"speed": 8.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_p57ef")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_u5sy4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_gee14")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_0tnpc")
}],
"loop": true,
"name": &"walk_left",
"speed": 8.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_vtaks")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kvpfn")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_dinhu")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kvuet")
}],
"loop": true,
"name": &"walk_right",
"speed": 8.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_ir15t")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_trtic")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_rysoc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ca42v")
}],
"loop": true,
"name": &"walk_up",
"speed": 8.0
}]
[node name="game" type="Node2D" unique_id=609076121]
[node name="TileMapLayer" type="TileMapLayer" parent="." unique_id=1879344069]
tile_map_data = PackedByteArray("AAAAAP//AAABAAEAAAD/////AAABAAEAAAD//wAAAAABAAEAAAAAAAAAAAABAAEAAAAAAP7/AAABAAEAAAD///7/AAABAAEAAAD+//7/AAABAAEAAAD+////AAABAAEAAAD+/wAAAAABAAEAAAD+/wEAAAABAAEAAAD//wEAAAABAAEAAAAAAAEAAAABAAEAAAABAAEAAAABAAEAAAABAAAAAAABAAEAAAABAP//AAABAAEAAAABAP7/AAABAAEAAAD9//3/AAAAAAEAAAD+//3/AAABAAEAAAD///3/AAABAAEAAAAAAP3/AAABAAEAAAABAP3/AAABAAEAAAACAP3/AAAFAAAAAAACAP7/AAACAAEAAAACAP//AAACAAEAAAACAAAAAAACAAEAAAACAAEAAAACAAEAAAACAAIAAAACAAEAAAABAAIAAAABAAEAAAAAAAIAAAABAAEAAAD//wIAAAABAAEAAAD+/wIAAAABAAEAAAD9/wIAAAAAAAEAAAD9//7/AAAAAAEAAAD9////AAAAAAEAAAD9/wAAAAAAAAEAAAD9/wEAAAAAAAEAAAD8/wMAAAABAAAAAAD9/wMAAAAGAAEAAAD+/wMAAAABAAEAAAD//wMAAAABAAEAAAAAAAMAAAABAAEAAAABAAMAAAABAAEAAAACAAMAAAACAAEAAAADAP3/AAABAAIAAAADAPz/AAABAAEAAAD9//z/AAAAAAEAAAD+//z/AAABAAEAAAD///z/AAABAAEAAAAAAPz/AAABAAEAAAABAPz/AAABAAEAAAACAPz/AAABAAEAAAD9//v/AAAAAAEAAAD+//v/AAABAAEAAAD///v/AAABAAEAAAAAAPv/AAABAAEAAAABAPv/AAABAAEAAAACAPv/AAABAAEAAAADAPv/AAABAAEAAAAEAPv/AAABAAEAAAAEAPz/AAABAAEAAAAEAP3/AAABAAIAAAACAAQAAAACAAEAAAABAAQAAAABAAEAAAAAAAQAAAABAAEAAAD//wQAAAABAAEAAAD+/wQAAAABAAEAAAD9/wQAAAABAAEAAAD8/wQAAAABAAEAAAD7/wQAAAABAAEAAAD7/wMAAAABAAAAAAAHAP3/AAACAAIAAAAHAPz/AAACAAEAAAAHAPv/AAACAAEAAAAHAPr/AAACAAAAAAAGAP3/AAABAAIAAAAGAPz/AAABAAEAAAAGAPv/AAABAAEAAAAGAPr/AAABAAAAAAAFAP3/AAABAAIAAAAFAPz/AAABAAEAAAAFAPv/AAABAAEAAAAFAPr/AAABAAAAAAAEAPr/AAABAAAAAAADAPr/AAABAAAAAAACAAUAAAACAAIAAAACAPr/AAABAAAAAAABAAUAAAABAAIAAAABAPr/AAABAAAAAAAAAAUAAAABAAIAAAAAAPr/AAABAAAAAAD//wUAAAABAAIAAAD///r/AAABAAAAAAD+/wUAAAABAAIAAAD+//r/AAABAAAAAAD9/wUAAAABAAIAAAD9//r/AAAAAAAAAAD8/wUAAAABAAIAAAD7/wUAAAABAAIAAAD6/wUAAAABAAIAAAD6/wQAAAABAAEAAAD6/wMAAAABAAAAAAD5/wUAAAAAAAIAAAD5/wQAAAAAAAEAAAD5/wMAAAAAAAAAAAAHAAMAAAAKAAEAAAAHAAIAAAAKAAEAAAAHAAEAAAAKAAEAAAAHAAAAAAAKAAEAAAAHAP//AAAKAAEAAAAHAP7/AAAKAAAAAAAGAAMAAAAJAAEAAAAGAAIAAAAJAAEAAAAGAAEAAAAJAAEAAAAGAAAAAAAJAAEAAAAGAP//AAAJAAEAAAAGAP7/AAAJAAAAAAAFAAMAAAAJAAEAAAAFAAIAAAAJAAEAAAAFAAEAAAAJAAEAAAAFAAAAAAAJAAEAAAAFAP//AAAJAAEAAAAFAP7/AAAJAAAAAAAEAAMAAAAJAAEAAAAEAAIAAAAJAAEAAAAEAAEAAAAJAAEAAAAEAAAAAAAJAAEAAAAEAP//AAAJAAEAAAAEAP7/AAAJAAAAAAADAAMAAAAIAAEAAAADAAIAAAAIAAEAAAADAAEAAAAIAAEAAAADAAAAAAAIAAEAAAADAP//AAAIAAEAAAADAP7/AAAIAAAAAAAHAAUAAAAKAAIAAAAHAAQAAAAKAAEAAAAGAAUAAAAJAAIAAAAGAAQAAAAJAAEAAAAFAAUAAAAJAAIAAAAFAAQAAAAJAAEAAAAEAAUAAAAJAAIAAAAEAAQAAAAJAAEAAAADAAUAAAAIAAIAAAADAAQAAAAIAAEAAAA=")
tile_set = ExtResource("1_yqjtg")
[node name="player" type="CharacterBody2D" parent="." unique_id=51683594]
script = ExtResource("1_uwrxv")
[node name="CollisionShape2D" type="CollisionShape2D" parent="player" unique_id=850198874]
shape = SubResource("CapsuleShape2D_8cj0n")
[node name="Camera2D" type="Camera2D" parent="player" unique_id=589371709]
zoom = Vector2(10, 10)
[node name="Sprite2D" type="Sprite2D" parent="player" unique_id=2116637545]
visible = false
texture_filter = 1
texture = ExtResource("3_lnu2h")
hframes = 4
vframes = 3
frame = 1
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="player" unique_id=896440593]
sprite_frames = SubResource("SpriteFrames_lnu2h")
animation = &"walk_up"
frame_progress = 0.04671712

11
scripts/gameController.gd Normal file
View File

@ -0,0 +1,11 @@
extends Node
# 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

View File

@ -0,0 +1 @@
uid://bpb21r1tnvt70

View File

@ -0,0 +1,19 @@
extends CharacterBody2D
@onready var animationPlayer = $AnimatedSprite2D
const SPEED = 175
func _process(_delta):
velocity = Input.get_vector("moveLeft", "moveRight", "moveUp", "moveDown") * SPEED
move_and_slide()
if Input.is_action_pressed("moveUp"):
animationPlayer.play("walk_up")
elif Input.is_action_pressed("moveDown"):
animationPlayer.play("walk_down")
elif Input.is_action_pressed("moveLeft"):
animationPlayer.play("walk_left")
elif Input.is_action_pressed("moveRight"):
animationPlayer.play("walk_right")
else:
animationPlayer.stop()

View File

@ -0,0 +1 @@
uid://433o2c0j2ci7