From eaeed156cb62d019f0528bc7a4d364f75d528cc4 Mon Sep 17 00:00:00 2001 From: winniewk Date: Thu, 2 Apr 2026 17:08:20 -0400 Subject: [PATCH] Initial set up for topdown game --- .DS_Store | Bin 0 -> 6148 bytes .gitattributes | 2 + .gitignore | 3 + README.md | 2 + assets/.DS_Store | Bin 0 -> 6148 bytes assets/player_sprite.png | Bin 0 -> 2134 bytes assets/player_sprite.png.import | 40 ++ assets/tilemap_packed.png | Bin 0 -> 17300 bytes assets/tilemap_packed.png.import | 40 ++ icon.svg | 1 + icon.svg.import | 43 ++ project.godot | 59 +++ resources/terrain.tres | 764 +++++++++++++++++++++++++++++++ scenes/game.tscn | 184 ++++++++ scripts/gameController.gd | 11 + scripts/gameController.gd.uid | 1 + scripts/playerController.gd | 19 + scripts/playerController.gd.uid | 1 + 18 files changed, 1170 insertions(+) create mode 100644 .DS_Store create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 README.md create mode 100644 assets/.DS_Store create mode 100644 assets/player_sprite.png create mode 100644 assets/player_sprite.png.import create mode 100644 assets/tilemap_packed.png create mode 100644 assets/tilemap_packed.png.import create mode 100644 icon.svg create mode 100644 icon.svg.import create mode 100644 project.godot create mode 100644 resources/terrain.tres create mode 100644 scenes/game.tscn create mode 100644 scripts/gameController.gd create mode 100644 scripts/gameController.gd.uid create mode 100644 scripts/playerController.gd create mode 100644 scripts/playerController.gd.uid diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..f77978530bdbe00eb45b39d1633593d88e7e8761 GIT binary patch literal 6148 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 literal 0 HcmV?d00001 diff --git a/assets/player_sprite.png.import b/assets/player_sprite.png.import new file mode 100644 index 0000000..ad8fa5b --- /dev/null +++ b/assets/player_sprite.png.import @@ -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 diff --git a/assets/tilemap_packed.png b/assets/tilemap_packed.png new file mode 100644 index 0000000000000000000000000000000000000000..66bf1156a23e2436473f96cf2240c301e4309faf GIT binary patch literal 17300 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∓V7`Zm(8 zD2{`L6sLQm-`l-merd{5*;j2p`ao7*L; z7Uh{NZCypgZdj;s#KBwQ6^wq3Iiz}6#i`)ziAWl6KOe9(9FaGGh+HO*UV~SNh<(_; z*3gc7T(ex?ZdVPaz#T;rj&LK5Lf3_g><~4i0O@GMnvAN$^+!K|@TLKQm|CZrB?6^2 z^fpXe<$7c_!0%A(7;(Xx{G(i9ilnjzIKTENpv6}IQ`3P0w%(_S#mA9U;!BA5?d17agi9RK(H8O@#lm)H2;EhobncyYT}M;x;=C|{5N zDAr%PYS2T_h0=sZm;{A`m#Q&hI>0EfO}m8FYa(5uKknhfU2WNLPm(AtbBl(O8e5-+VtWQzCBI!J-#Ga~;~h&6p{bhG}|ErQ0J| zp5FKszQ9Ci`qv)%<%}~RoLpgShB->%2psz=oILk_8**Y(-x`Gf(ii(dN2nMbZ?3#` z->zkBx7Q`Hlm%;oaPu#3WZv!ltQ`$c1S~y_oMBBa#T4GS-tMK^Z0n}vQi5rke2J5` zm6}o9x5O_=%X~wB*Lm&zK>K?#i*&f-aS$`4D)qjF1(V}?@yEPLe?yDRQcRDQd6&Ui z@2sluUA>D&WzgQicBJ=uT$<~kyyBT_&ZARWZ``YUlr z)-L?K!}L90r7xIjp@A-J@-lA?`B<{&e?_FZ?cyTC!>OqS3d4LleED2{t9i3SLStjY)l+`7><+YK zVor)ZPh-s*c8nx^JMDofv5w+#0$+cjYaF(3jDL2W@)NcF>^Hp%_d4voCqMUNif?R^ zcwdi*Wj^hBuSbMTMLN;vY#yDe!g6ge$W&cO;YYa_OYI!T@*DswX7Z3L1?(x3aCF*3 z<=t?&H$pn<@E8gij&0HRi;RkT$Kn&2Ym1?`)*oEk8Vruh|NMys7&#~t7>R})N|FOw^(sYwg!X*kpJ z3_3L9Jj$pK;y{DVo>-lld?>}dv4K_T`n^#W9fNSz+jVFYr#oMA_*=H0UfR~lPK4w3HK^^LUY+DUXE;R zn;TpoM{l7zJHKBhz4?G6oKK-!JzH~%-2K!}4K{NQPZiyVc;c4A2fl}a4<`S?(S9DL z`HA%^@E8dz`Rmur=fbOue@>W-{i~l1PCko3^K(aC{7NNnrN|8BIb3ITWO#F|s+_>l zY@Jd-6#WNOiyP-V*FWU-0H^^Iq&%80-POqrvzN>loJHOa5jHd1U8(!)wS`W?-X~J? zgxRiijljug{n)Ar9vU-SVn6tnp}Pz z=-VGiQ`8J-_)3PMQ3*G1ax=LLI!4jIF@W~FiQd<7yuzyML@Wi4!WSH#@5Mwa^go(m zBW>&-YhFfONs^`6mZq4c>(O97qDY`^wugT)hP?LZQU8xvzWPb-f0`Yc^xNzGiE+TN z_cutEzI@Kc{X?*Ip_&e^!g@lO-GD#-=L3TAz z041tah54!5!iQG!nqVua_cdxBBr_SP$VH7v)t^o2XC;xe_u`OLYsnGu!Ljps_NT&d zYTF->aIhw`eiJ#$J^uA=ubXwaF%MBW%AYt@Xdl#hY(=T!A z;el*+uj)U2^*wbmFmYuMp@CkBXa^R9jpbCEi`fTmmJrAdbpSnw?-9!p@=N##u#%0Y zJ?g_7;dz=SSXx1Z~h%-w^(w3T*c6H8z8Q zt2|^=4`UoP%E;Y*vi@G;h56h}>8rES zs`D3%&EIA8lQo!}6cD|(1jyxn#!G74vJ^FX? z3}wy3tKUS*OMcY{>d*sWg6kz2Y}~x#r zTX_5&pwYcjA4~q6?3A|rdeV}|rTIR|7v85M2ov;2Qq{bAUF(<_H*wDpm{{By2l8Zj z2JHtV#aO^@#O*uky*OM?kq3>`9HM1An=sXleTc{#jYamKKQ#HdU0|JAuY)W}8_vWC>qRJGYXj0#S@MmfKeub< z3iL?E@@^L6DNCXZm4&XVq9<;Obc8apl?~{${I*KUQIg1Hs~q5<1OHoXXPNpiWT!*T z^}*HXDv<;>%Bx8s=a<6Ofm+E)Ox=!wfjWMXwTdFZf)_839Y{;~PYi-?Q|W$7A@wWZ zdd#CB$pYpq>a)Zpr+CczaW`U^7%hIIn1boQ%DmtH$$o;H32Bi4oz7EVU!gYWUAF&U zF91ess%d8*Yf#pjNCEIV)`l-8>9i!U1bbhnqionu(=jizCb4Q(SnhSAhRnk;KX~u! zxV1i@2*-TnREiKoJrjQgpnDod$5nF&X1a)ArR=Xyy?ZOihfE!_xe^*^+g`AtY3Kz9UTHG7|A-3};E=uq!FePWLh+PV*%&yrq)W(`6BwD!4nq?p=?uG;5ch)kz zt0?ZK9S%?TGZK>ve!2*uZ(m5wn;CrF34#BH*pcELQkRl8;l4P>{=8CUuwcLAWD1{kuj>ayRco=U>S`3xMQc;p76@Bv<5`X%5W7M6xu(hTB2C%xCYN^?$olkNl#%FJTyTp zkCcn_rXmTJCZIk6w}qrDs-84t1H9qhSQ-|)DR#!zXSv3!D7^U;nF_A3hNiWxjc(j= z;V)l!kV?4U!r(1775CJyARt?b@F0mh%oBwuJ})-3YDfU*d+!%0w)Ks-Ag7+#PHd^$ z_K^6Qk~AO(8N|s|b&PeRAFYwXrW$xED;gSt)<{fvI_~a6?m7#o=$uVdYfO<^y_#xh z`2fy0GPAgvyG1KSvzzGcVIy0yKR4e0c#7(=OgJNW|9m0^N(S7NHGcIp0RNLKrk^A+ zl$D1s7JMTQMuZ&WF8^XoiCw_cuzPf=rlg;stg=?Ua1CIn1u0ZF58I3*+Cgr(7KIGG z$rD~onrWJC@Ky>A5v^i_F<(oKe=+$p=`XcgngNVtES9prPyPD6H=^aAU7IpA&vP$K z*iqli9~ZZ?03>A&r`y^>$)#mvWDGK^gmX@czDlgSLi=;EFRvDi$BW9wV$#T#jgs|@ z!U}d-_?G-2^YS{&`$V_H)3v^Xn%!^E(U^j*4w4%pm?ax@W9U~R0(ZCE6;_8#ePsFj z*;vUPE!+~5l{VUWfct70}6T{*#Ld>&{B~ehIJojS(8gg zTHS?tvI-Vw=G0h~6V6+7sZ(^l;hSNY$x8;vPWfaMsr(Nl0SJ(njd%FjssiZGPrW76 zorf*>#7IKDkhH$rM%1a*{?51i7PTV}IFJV}&Wz4xd5r>o?$bl`!YUS@Ik_>3Z)sh! z(Tx_Ap&wm7kxXW5Bg3Za!j3xjsQ^#zeWccb zm35O*Ls=9x;nM`j4W%UOzj9y%Vt+?)(O@V=wBNIpRBA}__3oeX#y7ma;Pu|q08Su( z;5W9CtWrd6YJ27tV1*)LZd38Y6v+V@9l{LHR^YAeb#xYU@ceHgLs!9EvA=s0LTXzy z)wgsQl*?vGV5;niYgA)hRgEOCJf@9C*+0uT_NYV=O3}2A&qTv+5}iP0s72-rq=fS& zD}$qig9WS42+3X-Hpm#jT2UvGKrKxVLCTEb+oeT$Lzw=LA;GhV;=cH%k8LsVyTtcZ zhd%6%u;z^kLAA8|&r{FHebvR^_xu_X`8zo({g$!R4JE(

urW0yQ{r12)tk5X@S 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 M07*qoM6N<$f_km2z5oCK literal 0 HcmV?d00001 diff --git a/assets/tilemap_packed.png.import b/assets/tilemap_packed.png.import new file mode 100644 index 0000000..ede8262 --- /dev/null +++ b/assets/tilemap_packed.png.import @@ -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 diff --git a/icon.svg b/icon.svg new file mode 100644 index 0000000..c6bbb7d --- /dev/null +++ b/icon.svg @@ -0,0 +1 @@ + diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..55e6c2e --- /dev/null +++ b/icon.svg.import @@ -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 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..f395d68 --- /dev/null +++ b/project.godot @@ -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" diff --git a/resources/terrain.tres b/resources/terrain.tres new file mode 100644 index 0000000..75017a6 --- /dev/null +++ b/resources/terrain.tres @@ -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") diff --git a/scenes/game.tscn b/scenes/game.tscn new file mode 100644 index 0000000..0d02a14 --- /dev/null +++ b/scenes/game.tscn @@ -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 diff --git a/scripts/gameController.gd b/scripts/gameController.gd new file mode 100644 index 0000000..e08925d --- /dev/null +++ b/scripts/gameController.gd @@ -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 diff --git a/scripts/gameController.gd.uid b/scripts/gameController.gd.uid new file mode 100644 index 0000000..0cd0387 --- /dev/null +++ b/scripts/gameController.gd.uid @@ -0,0 +1 @@ +uid://bpb21r1tnvt70 diff --git a/scripts/playerController.gd b/scripts/playerController.gd new file mode 100644 index 0000000..d1c5dd7 --- /dev/null +++ b/scripts/playerController.gd @@ -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() diff --git a/scripts/playerController.gd.uid b/scripts/playerController.gd.uid new file mode 100644 index 0000000..f1ab498 --- /dev/null +++ b/scripts/playerController.gd.uid @@ -0,0 +1 @@ +uid://433o2c0j2ci7