Compare commits

..

No commits in common. "39f77e671fe7a311f09b698d75f0365a4408dbb7" and "7c090d600b4a3804fb16f06ef8cf0b18cda4d653" have entirely different histories.

48 changed files with 317 additions and 1406 deletions

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dxnxix8qrr6tq"
path="res://.godot/imported/EnemyHurt.wav-fb6c033455c8fd2c64ccfdf0c818a65a.sample"
[deps]
source_file="res://assets/EnemyHurt.wav"
dest_files=["res://.godot/imported/EnemyHurt.wav-fb6c033455c8fd2c64ccfdf0c818a65a.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dfrc2luquqqlw"
path="res://.godot/imported/Explode.wav-1025ed9a84beb2ef982eff388b1bbeea.sample"
[deps]
source_file="res://assets/Explode.wav"
dest_files=["res://.godot/imported/Explode.wav-1025ed9a84beb2ef982eff388b1bbeea.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

Binary file not shown.

View file

@ -1,14 +0,0 @@
[remap]
importer="aseprite_wizard.plugin.noop"
type="PackedDataContainer"
uid="uid://davrou2v4qw2i"
path="res://.godot/imported/Go.aseprite-25f8aee4e191af232eb3cbeb790ac21b.res"
[deps]
source_file="res://assets/Go.aseprite"
dest_files=["res://.godot/imported/Go.aseprite-25f8aee4e191af232eb3cbeb790ac21b.res"]
[params]

Binary file not shown.

View file

@ -1,14 +0,0 @@
[remap]
importer="aseprite_wizard.plugin.noop"
type="PackedDataContainer"
uid="uid://dgqr8sd2xeyni"
path="res://.godot/imported/HealthBorder.aseprite-114a2c214cb1e322dfa2a303d28a908a.res"
[deps]
source_file="res://assets/HealthBorder.aseprite"
dest_files=["res://.godot/imported/HealthBorder.aseprite-114a2c214cb1e322dfa2a303d28a908a.res"]
[params]

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://ce3soc3run6um"
path="res://.godot/imported/Level1BGAudio.wav-e7b60b70a4523876968adf4a6c8994a4.sample"
[deps]
source_file="res://assets/Level1BGAudio.wav"
dest_files=["res://.godot/imported/Level1BGAudio.wav-e7b60b70a4523876968adf4a6c8994a4.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

Binary file not shown.

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://du0f57xgcxuxf"
path="res://.godot/imported/PlayerDeathSound.wav-064911359937abe1fa0c8cddb7e84ea4.sample"
[deps]
source_file="res://assets/PlayerDeathSound.wav"
dest_files=["res://.godot/imported/PlayerDeathSound.wav-064911359937abe1fa0c8cddb7e84ea4.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cir5d1qi0hcev"
path="res://.godot/imported/PlayerHurt.wav-7dea0e9202985b5dd27d18b772b40ee2.sample"
[deps]
source_file="res://assets/PlayerHurt.wav"
dest_files=["res://.godot/imported/PlayerHurt.wav-7dea0e9202985b5dd27d18b772b40ee2.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

Binary file not shown.

View file

@ -1,14 +0,0 @@
[remap]
importer="aseprite_wizard.plugin.noop"
type="PackedDataContainer"
uid="uid://crfosyduwl8ln"
path="res://.godot/imported/TopBottom.aseprite-4492d70b38a804feac46851918def1b1.res"
[deps]
source_file="res://assets/TopBottom.aseprite"
dest_files=["res://.godot/imported/TopBottom.aseprite-4492d70b38a804feac46851918def1b1.res"]
[params]

View file

@ -1,14 +0,0 @@
[remap]
importer="aseprite_wizard.plugin.noop"
type="PackedDataContainer"
uid="uid://2g8hbnap6s5a"
path="res://.godot/imported/Viruling.aseprite-f412110448d264873303b17f07c6def6.res"
[deps]
source_file="res://assets/Viruling.aseprite"
dest_files=["res://.godot/imported/Viruling.aseprite-f412110448d264873303b17f07c6def6.res"]
[params]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://8trlh7j2pkam"
path="res://.godot/imported/bars.jpg-cab2dec6a2095b0b47f5525c278f01e5.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/bars.jpg"
dest_files=["res://.godot/imported/bars.jpg-cab2dec6a2095b0b47f5525c278f01e5.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

View file

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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

View file

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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 393 B

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c0kd8wu2yvssc"
path="res://.godot/imported/player-Layer 4.png-e87abd4355ca2452a56cf19bd4f3b0ec.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/export/player-Layer 4.png"
dest_files=["res://.godot/imported/player-Layer 4.png-e87abd4355ca2452a56cf19bd4f3b0ec.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d4mjdwhmho5vs"
path="res://.godot/imported/player-Layer 5.png-f6df3f22bdd8a4f3b2a581cc00ceda44.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/export/player-Layer 5.png"
dest_files=["res://.godot/imported/player-Layer 5.png-f6df3f22bdd8a4f3b2a581cc00ceda44.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1 KiB

View file

@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bfw5h4af15wth"
path="res://.godot/imported/player-Layer 6.png-f1cf81b1232504e250c598018d463c5c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/export/player-Layer 6.png"
dest_files=["res://.godot/imported/player-Layer 6.png-f1cf81b1232504e250c598018d463c5c.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 B

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

View file

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

View file

@ -0,0 +1,14 @@
[remap]
importer="aseprite_wizard.plugin.noop"
type="PackedDataContainer"
uid="uid://2g8hbnap6s5a"
path="res://.godot/imported/viruling_spin.aseprite-2addb3a6357cbfdfd34eecd5833985aa.res"
[deps]
source_file="res://assets/viruling_spin.aseprite"
dest_files=["res://.godot/imported/viruling_spin.aseprite-2addb3a6357cbfdfd34eecd5833985aa.res"]
[params]

View file

@ -1,15 +0,0 @@
[gd_scene load_steps=2 format=3 uid="uid://clptnshbcs6cn"]
[ext_resource type="Texture2D" uid="uid://8trlh7j2pkam" path="res://assets/bars.jpg" id="1_ryukb"]
[node name="Bars" type="Control"]
layout_mode = 3
anchors_preset = 0
offset_right = 40.0
offset_bottom = 40.0
[node name="TextureRect" type="TextureRect" parent="."]
layout_mode = 0
offset_right = 640.0
offset_bottom = 360.0
texture = ExtResource("1_ryukb")

View file

@ -6,7 +6,7 @@ distance = -184.0
[sub_resource type="WorldBoundaryShape2D" id="WorldBoundaryShape2D_wodb0"]
normal = Vector2(-1, 0)
distance = -216.0
distance = -208.0
[node name="Borders" type="Node2D"]

View file

@ -1,298 +1,225 @@
[gd_scene load_steps=79 format=3 uid="uid://cjiuycwqqxaxn"]
[gd_scene load_steps=45 format=3 uid="uid://cjiuycwqqxaxn"]
[ext_resource type="Script" path="res://scripts/player.gd" id="1_oy25y"]
[ext_resource type="Texture2D" uid="uid://d4mjdwhmho5vs" path="res://assets/export/player-Layer 5.png" id="2_g0lnn"]
[ext_resource type="AudioStream" uid="uid://cir5d1qi0hcev" path="res://assets/PlayerHurt.wav" id="3_ggoam"]
[ext_resource type="AudioStream" uid="uid://du0f57xgcxuxf" path="res://assets/PlayerDeathSound.wav" id="4_8skcp"]
[ext_resource type="Texture2D" uid="uid://cliy3s4yykb3k" path="res://assets/export/health-.png" id="5_1x6di"]
[ext_resource type="Texture2D" uid="uid://cownabyc1p26u" path="res://assets/export/playerLayer 3.png" id="2_5c6qp"]
[sub_resource type="AtlasTexture" id="AtlasTexture_l521r"]
atlas = ExtResource("2_g0lnn")
region = Rect2(0, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_qvttr"]
atlas = ExtResource("2_g0lnn")
region = Rect2(32, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_ofguw"]
atlas = ExtResource("2_g0lnn")
region = Rect2(64, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_co8k7"]
atlas = ExtResource("2_g0lnn")
region = Rect2(96, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_41d2d"]
atlas = ExtResource("2_g0lnn")
region = Rect2(128, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_hbosn"]
atlas = ExtResource("2_g0lnn")
region = Rect2(160, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_0km57"]
atlas = ExtResource("2_g0lnn")
region = Rect2(192, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_51sll"]
atlas = ExtResource("2_g0lnn")
region = Rect2(224, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_px3nn"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_6hs0l"]
atlas = ExtResource("2_5c6qp")
region = Rect2(128, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_ripko"]
atlas = ExtResource("2_g0lnn")
region = Rect2(32, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_561ig"]
atlas = ExtResource("2_g0lnn")
region = Rect2(64, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_7js0p"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_7slh2"]
atlas = ExtResource("2_5c6qp")
region = Rect2(160, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_wjcje"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_io1xr"]
atlas = ExtResource("2_5c6qp")
region = Rect2(192, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_q2cd0"]
atlas = ExtResource("2_g0lnn")
region = Rect2(224, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_htmbl"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_vh4hn"]
atlas = ExtResource("2_5c6qp")
region = Rect2(0, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_rnxuc"]
atlas = ExtResource("2_g0lnn")
region = Rect2(64, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_wwamw"]
atlas = ExtResource("2_5c6qp")
region = Rect2(32, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_wo1m8"]
atlas = ExtResource("2_g0lnn")
region = Rect2(64, 448, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_nens7"]
atlas = ExtResource("2_5c6qp")
region = Rect2(64, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_fk6te"]
atlas = ExtResource("2_g0lnn")
region = Rect2(96, 448, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_fbjir"]
atlas = ExtResource("2_g0lnn")
region = Rect2(128, 448, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_3ihru"]
atlas = ExtResource("2_g0lnn")
region = Rect2(160, 448, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_4jlds"]
atlas = ExtResource("2_g0lnn")
region = Rect2(192, 448, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_81wn7"]
atlas = ExtResource("2_g0lnn")
region = Rect2(0, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_ufuyf"]
atlas = ExtResource("2_g0lnn")
region = Rect2(32, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_mf2dl"]
atlas = ExtResource("2_g0lnn")
region = Rect2(64, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_ke4ob"]
atlas = ExtResource("2_g0lnn")
region = Rect2(96, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_yt7ej"]
atlas = ExtResource("2_g0lnn")
region = Rect2(128, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_8ejvg"]
atlas = ExtResource("2_g0lnn")
region = Rect2(160, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_m3wjx"]
atlas = ExtResource("2_g0lnn")
region = Rect2(192, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_drf5o"]
atlas = ExtResource("2_g0lnn")
region = Rect2(224, 384, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_jpfep"]
atlas = ExtResource("2_g0lnn")
region = Rect2(0, 448, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_bwlrc"]
atlas = ExtResource("2_g0lnn")
region = Rect2(32, 448, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_2txm3"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_xnw82"]
atlas = ExtResource("2_5c6qp")
region = Rect2(96, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_uaysy"]
atlas = ExtResource("2_g0lnn")
region = Rect2(128, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_sv3rw"]
atlas = ExtResource("2_5c6qp")
region = Rect2(0, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_o7mn6"]
atlas = ExtResource("2_g0lnn")
region = Rect2(160, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_kldb3"]
atlas = ExtResource("2_5c6qp")
region = Rect2(128, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_q0v0p"]
atlas = ExtResource("2_g0lnn")
region = Rect2(192, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_daegq"]
atlas = ExtResource("2_5c6qp")
region = Rect2(160, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_sv0e8"]
atlas = ExtResource("2_g0lnn")
region = Rect2(224, 320, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_c3qy7"]
atlas = ExtResource("2_5c6qp")
region = Rect2(192, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_mbcqm"]
atlas = ExtResource("2_g0lnn")
region = Rect2(32, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_m8ku5"]
atlas = ExtResource("2_g0lnn")
region = Rect2(64, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_mdsdu"]
atlas = ExtResource("2_g0lnn")
region = Rect2(96, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_24k44"]
atlas = ExtResource("2_g0lnn")
region = Rect2(128, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_idj6d"]
atlas = ExtResource("2_g0lnn")
region = Rect2(160, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_gcw5r"]
atlas = ExtResource("2_g0lnn")
region = Rect2(192, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_cpkux"]
atlas = ExtResource("2_g0lnn")
region = Rect2(224, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_ht6wj"]
atlas = ExtResource("2_g0lnn")
region = Rect2(0, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_vlyrt"]
atlas = ExtResource("2_g0lnn")
region = Rect2(32, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_18fxb"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_5iowx"]
atlas = ExtResource("2_5c6qp")
region = Rect2(0, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_6uboo"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_2f5nd"]
atlas = ExtResource("2_5c6qp")
region = Rect2(32, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_p16r1"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_xuig4"]
atlas = ExtResource("2_5c6qp")
region = Rect2(64, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_aewy4"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_uk8ao"]
atlas = ExtResource("2_5c6qp")
region = Rect2(96, 256, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_3q0vi"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_6wkkf"]
atlas = ExtResource("2_5c6qp")
region = Rect2(32, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_mecdt"]
atlas = ExtResource("2_5c6qp")
region = Rect2(64, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_pvo15"]
atlas = ExtResource("2_5c6qp")
region = Rect2(96, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_fcvkv"]
atlas = ExtResource("2_5c6qp")
region = Rect2(128, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_ejt0g"]
atlas = ExtResource("2_5c6qp")
region = Rect2(160, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_l4s6u"]
atlas = ExtResource("2_5c6qp")
region = Rect2(192, 0, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_qw5vg"]
atlas = ExtResource("2_5c6qp")
region = Rect2(0, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_agdq2"]
atlas = ExtResource("2_5c6qp")
region = Rect2(32, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_1qa8b"]
atlas = ExtResource("2_5c6qp")
region = Rect2(64, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_a5wcc"]
atlas = ExtResource("2_5c6qp")
region = Rect2(96, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_7te6v"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_5ra6k"]
atlas = ExtResource("2_5c6qp")
region = Rect2(128, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_tfxjn"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_l1grw"]
atlas = ExtResource("2_5c6qp")
region = Rect2(160, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_rjqbd"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_gae7w"]
atlas = ExtResource("2_5c6qp")
region = Rect2(192, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_dcng7"]
atlas = ExtResource("2_g0lnn")
region = Rect2(224, 64, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_ma1kj"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_p0xeb"]
atlas = ExtResource("2_5c6qp")
region = Rect2(0, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_4mnk0"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_tuo0l"]
atlas = ExtResource("2_5c6qp")
region = Rect2(32, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_uxup4"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_iygu1"]
atlas = ExtResource("2_5c6qp")
region = Rect2(64, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_2c0ng"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_nlq48"]
atlas = ExtResource("2_5c6qp")
region = Rect2(96, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_72rar"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_581d4"]
atlas = ExtResource("2_5c6qp")
region = Rect2(128, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_be8t0"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_depii"]
atlas = ExtResource("2_5c6qp")
region = Rect2(160, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_qypdu"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_nsu0f"]
atlas = ExtResource("2_5c6qp")
region = Rect2(192, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_hay5m"]
atlas = ExtResource("2_g0lnn")
region = Rect2(224, 128, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_3722o"]
atlas = ExtResource("2_g0lnn")
[sub_resource type="AtlasTexture" id="AtlasTexture_kdf7b"]
atlas = ExtResource("2_5c6qp")
region = Rect2(0, 192, 32, 64)
[sub_resource type="SpriteFrames" id="SpriteFrames_6noqu"]
[sub_resource type="AtlasTexture" id="AtlasTexture_dvo1k"]
atlas = ExtResource("2_5c6qp")
region = Rect2(32, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_nuos6"]
atlas = ExtResource("2_5c6qp")
region = Rect2(64, 192, 32, 64)
[sub_resource type="AtlasTexture" id="AtlasTexture_fgj7i"]
atlas = ExtResource("2_5c6qp")
region = Rect2(96, 192, 32, 64)
[sub_resource type="SpriteFrames" id="SpriteFrames_o2lgd"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_l521r")
"texture": SubResource("AtlasTexture_6hs0l")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qvttr")
"texture": SubResource("AtlasTexture_7slh2")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ofguw")
"texture": SubResource("AtlasTexture_io1xr")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_co8k7")
"texture": SubResource("AtlasTexture_vh4hn")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_41d2d")
"texture": SubResource("AtlasTexture_wwamw")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_hbosn")
"texture": SubResource("AtlasTexture_nens7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_0km57")
"texture": SubResource("AtlasTexture_xnw82")
}],
"loop": true,
"name": &" punch",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_sv3rw")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_51sll")
"texture": SubResource("AtlasTexture_kldb3")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ofguw")
"texture": SubResource("AtlasTexture_daegq")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qvttr")
"texture": SubResource("AtlasTexture_c3qy7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_l521r")
"texture": SubResource("AtlasTexture_5iowx")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2f5nd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_xuig4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_uk8ao")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_daegq")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_kldb3")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_sv3rw")
}],
"loop": true,
"name": &"Jump",
@ -300,212 +227,34 @@ animations = [{
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_px3nn")
"texture": SubResource("AtlasTexture_sv3rw")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ripko")
"texture": SubResource("AtlasTexture_6wkkf")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_561ig")
"texture": SubResource("AtlasTexture_mecdt")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ripko")
}],
"loop": true,
"name": &"Left",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_px3nn")
"texture": SubResource("AtlasTexture_pvo15")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_7js0p")
"texture": SubResource("AtlasTexture_fcvkv")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wjcje")
"texture": SubResource("AtlasTexture_ejt0g")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_q2cd0")
"texture": SubResource("AtlasTexture_l4s6u")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_htmbl")
}],
"loop": true,
"name": &"Right",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_rnxuc")
"texture": SubResource("AtlasTexture_qw5vg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wo1m8")
"texture": SubResource("AtlasTexture_agdq2")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_fk6te")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_fbjir")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_3ihru")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_fbjir")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4jlds")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_rnxuc")
}],
"loop": true,
"name": &"air kick",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_l521r")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_81wn7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ufuyf")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_mf2dl")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ke4ob")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_yt7ej")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_8ejvg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_m3wjx")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_drf5o")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_jpfep")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bwlrc")
}],
"loop": true,
"name": &"death",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_2txm3")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_uaysy")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_o7mn6")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_q0v0p")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_sv0e8")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_q0v0p")
}],
"loop": true,
"name": &"hurt",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_l521r")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_mbcqm")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_m8ku5")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_mdsdu")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_24k44")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_idj6d")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_gcw5r")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_cpkux")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ht6wj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_vlyrt")
"texture": SubResource("AtlasTexture_1qa8b")
}],
"loop": true,
"name": &"idle",
@ -513,93 +262,49 @@ animations = [{
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_l521r")
"texture": SubResource("AtlasTexture_a5wcc")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qvttr")
"texture": SubResource("AtlasTexture_5ra6k")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ofguw")
"texture": SubResource("AtlasTexture_l1grw")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_41d2d")
"texture": SubResource("AtlasTexture_gae7w")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_hbosn")
"texture": SubResource("AtlasTexture_p0xeb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_18fxb")
"texture": SubResource("AtlasTexture_tuo0l")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_6uboo")
"texture": SubResource("AtlasTexture_iygu1")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_p16r1")
"texture": SubResource("AtlasTexture_nlq48")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_p16r1")
"texture": SubResource("AtlasTexture_581d4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_aewy4")
"texture": SubResource("AtlasTexture_depii")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ofguw")
"texture": SubResource("AtlasTexture_nsu0f")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qvttr")
"texture": SubResource("AtlasTexture_kdf7b")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_l521r")
}],
"loop": true,
"name": &"slam",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_rnxuc")
"texture": SubResource("AtlasTexture_dvo1k")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_3q0vi")
"texture": SubResource("AtlasTexture_nuos6")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_7te6v")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tfxjn")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_rjqbd")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_dcng7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ma1kj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4mnk0")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_uxup4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2c0ng")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_72rar")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_be8t0")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qypdu")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_hay5m")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_3722o")
"texture": SubResource("AtlasTexture_fgj7i")
}],
"loop": true,
"name": &"walk",
@ -612,117 +317,35 @@ size = Vector2(28, 64)
[sub_resource type="RectangleShape2D" id="RectangleShape2D_mst3b"]
size = Vector2(27, 41)
[sub_resource type="AtlasTexture" id="AtlasTexture_5bnwc"]
atlas = ExtResource("5_1x6di")
region = Rect2(128, 16, 64, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_og4rp"]
atlas = ExtResource("5_1x6di")
region = Rect2(0, 0, 64, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_03d4u"]
atlas = ExtResource("5_1x6di")
region = Rect2(64, 16, 64, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_sox5s"]
atlas = ExtResource("5_1x6di")
region = Rect2(0, 16, 64, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_o1ukw"]
atlas = ExtResource("5_1x6di")
region = Rect2(128, 0, 64, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_5qc6y"]
atlas = ExtResource("5_1x6di")
region = Rect2(64, 0, 64, 16)
[sub_resource type="SpriteFrames" id="SpriteFrames_tbw5i"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_5bnwc")
}],
"loop": true,
"name": &"0",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_og4rp")
}],
"loop": true,
"name": &"100",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_03d4u")
}],
"loop": true,
"name": &"20",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_sox5s")
}],
"loop": true,
"name": &"40",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_o1ukw")
}],
"loop": true,
"name": &"60",
"speed": 10.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_5qc6y")
}],
"loop": true,
"name": &"80",
"speed": 10.0
}]
[node name="Player" type="CharacterBody2D"]
collision_mask = 3
script = ExtResource("1_oy25y")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
texture_filter = 1
sprite_frames = SubResource("SpriteFrames_6noqu")
animation = &"death"
sprite_frames = SubResource("SpriteFrames_o2lgd")
animation = &" punch"
frame_progress = 0.126525
metadata/_aseprite_wizard_config_ = {
"layer": "Layer 5",
"layer": "Layer 3",
"o_ex_p": "",
"o_folder": "res://assets/export",
"o_name": "player-",
"o_name": "player",
"only_visible": false,
"slice": "",
"source": "res://assets/PlayerCharacter.aseprite"
}
metadata/_aseprite_wizard_source_file_hash_ = "dd5426320f333c1fca2ec67ca43f9db7"
metadata/_aseprite_wizard_interface_config_ = {
"layer_section": true,
"output_section": true,
"slice_section": false
"output_section": true
}
metadata/_aseprite_wizard_source_file_hash_ = "9b87e116b10fe7a61dc017b05e385632"
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(2, 0)
shape = SubResource("RectangleShape2D_0on8q")
debug_color = Color(1, 0.254902, 0.415686, 0.105882)
[node name="PunchHitbox" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PunchHitbox"]
position = Vector2(29, -3)
shape = SubResource("RectangleShape2D_mst3b")
debug_color = Color(2.11775e-06, 0.631094, 0.465774, 0.42)
[node name="AttackTimer" type="Timer" parent="."]
editor_description = "
@ -730,37 +353,9 @@ editor_description = "
wait_time = 0.5
one_shot = true
[node name="DeathTimer" type="Timer" parent="."]
wait_time = 2.7
one_shot = true
[node name="PunchHitbox" type="Area2D" parent="."]
[node name="HurtTimer" type="Timer" parent="."]
wait_time = 0.6
one_shot = true
[node name="PlayerHurtSfx" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("3_ggoam")
[node name="PlayerDeathSfx" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("4_8skcp")
volume_db = 2.0
[node name="HealthBar" type="AnimatedSprite2D" parent="."]
texture_filter = 1
position = Vector2(0, -41)
sprite_frames = SubResource("SpriteFrames_tbw5i")
animation = &"100"
metadata/_aseprite_wizard_config_ = {
"layer": "",
"o_ex_p": "",
"o_folder": "res://assets/export",
"o_name": "health-",
"only_visible": true,
"slice": "",
"source": "res://assets/HealthBorder.aseprite"
}
metadata/_aseprite_wizard_interface_config_ = {
"layer_section": false,
"output_section": true
}
metadata/_aseprite_wizard_source_file_hash_ = "72e00fdcd91dac701215afc35f081aa5"
[node name="CollisionShape2D" type="CollisionShape2D" parent="PunchHitbox"]
position = Vector2(29, -3)
shape = SubResource("RectangleShape2D_mst3b")
debug_color = Color(2.11775e-06, 0.631094, 0.465774, 0.42)

View file

@ -1,116 +1,115 @@
[gd_scene load_steps=28 format=3 uid="uid://bxbpvgteyfh02"]
[gd_scene load_steps=27 format=3 uid="uid://bxbpvgteyfh02"]
[ext_resource type="Script" path="res://scripts/viruling.gd" id="1_eevnl"]
[ext_resource type="Texture2D" uid="uid://djjun1p0rx1ap" path="res://assets/export/viruling-.png" id="1_i45rj"]
[ext_resource type="AudioStream" uid="uid://dfrc2luquqqlw" path="res://assets/Explode.wav" id="3_hno7f"]
[sub_resource type="CircleShape2D" id="CircleShape2D_gi7h4"]
radius = 17.0294
[sub_resource type="AtlasTexture" id="AtlasTexture_ey3ug"]
[sub_resource type="AtlasTexture" id="AtlasTexture_kidce"]
atlas = ExtResource("1_i45rj")
region = Rect2(0, 0, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_yg44u"]
[sub_resource type="AtlasTexture" id="AtlasTexture_qe36s"]
atlas = ExtResource("1_i45rj")
region = Rect2(32, 96, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_10kxp"]
[sub_resource type="AtlasTexture" id="AtlasTexture_ngfqf"]
atlas = ExtResource("1_i45rj")
region = Rect2(64, 96, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_asgry"]
[sub_resource type="AtlasTexture" id="AtlasTexture_nii03"]
atlas = ExtResource("1_i45rj")
region = Rect2(96, 96, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_shkjk"]
[sub_resource type="AtlasTexture" id="AtlasTexture_tkn6b"]
atlas = ExtResource("1_i45rj")
region = Rect2(128, 96, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_n7xsd"]
[sub_resource type="AtlasTexture" id="AtlasTexture_2r8jg"]
atlas = ExtResource("1_i45rj")
region = Rect2(0, 128, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_b78uq"]
[sub_resource type="AtlasTexture" id="AtlasTexture_0s3k4"]
atlas = ExtResource("1_i45rj")
region = Rect2(32, 0, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_yk2as"]
[sub_resource type="AtlasTexture" id="AtlasTexture_2h71d"]
atlas = ExtResource("1_i45rj")
region = Rect2(64, 0, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_bp4sa"]
[sub_resource type="AtlasTexture" id="AtlasTexture_45yd5"]
atlas = ExtResource("1_i45rj")
region = Rect2(96, 0, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_qe65k"]
[sub_resource type="AtlasTexture" id="AtlasTexture_6isb8"]
atlas = ExtResource("1_i45rj")
region = Rect2(128, 0, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_ii7ue"]
[sub_resource type="AtlasTexture" id="AtlasTexture_m6d0y"]
atlas = ExtResource("1_i45rj")
region = Rect2(0, 32, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_2mb0r"]
[sub_resource type="AtlasTexture" id="AtlasTexture_kp48x"]
atlas = ExtResource("1_i45rj")
region = Rect2(32, 32, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_rwb2y"]
[sub_resource type="AtlasTexture" id="AtlasTexture_rhh7o"]
atlas = ExtResource("1_i45rj")
region = Rect2(64, 32, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_muc0u"]
[sub_resource type="AtlasTexture" id="AtlasTexture_0l2ip"]
atlas = ExtResource("1_i45rj")
region = Rect2(96, 32, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_lh2dq"]
[sub_resource type="AtlasTexture" id="AtlasTexture_u0o6v"]
atlas = ExtResource("1_i45rj")
region = Rect2(128, 32, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_ynt0w"]
[sub_resource type="AtlasTexture" id="AtlasTexture_hh53s"]
atlas = ExtResource("1_i45rj")
region = Rect2(0, 64, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_gys0u"]
[sub_resource type="AtlasTexture" id="AtlasTexture_g0xj4"]
atlas = ExtResource("1_i45rj")
region = Rect2(32, 64, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_tspca"]
[sub_resource type="AtlasTexture" id="AtlasTexture_smgex"]
atlas = ExtResource("1_i45rj")
region = Rect2(64, 64, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_e81jk"]
[sub_resource type="AtlasTexture" id="AtlasTexture_efhl8"]
atlas = ExtResource("1_i45rj")
region = Rect2(96, 64, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_4h8vk"]
[sub_resource type="AtlasTexture" id="AtlasTexture_smw3b"]
atlas = ExtResource("1_i45rj")
region = Rect2(128, 64, 32, 32)
[sub_resource type="AtlasTexture" id="AtlasTexture_4j73j"]
[sub_resource type="AtlasTexture" id="AtlasTexture_hc7x2"]
atlas = ExtResource("1_i45rj")
region = Rect2(0, 96, 32, 32)
[sub_resource type="SpriteFrames" id="SpriteFrames_paa88"]
[sub_resource type="SpriteFrames" id="SpriteFrames_01e4m"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_ey3ug")
"texture": SubResource("AtlasTexture_kidce")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_yg44u")
"texture": SubResource("AtlasTexture_qe36s")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_10kxp")
"texture": SubResource("AtlasTexture_ngfqf")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_asgry")
"texture": SubResource("AtlasTexture_nii03")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_shkjk")
"texture": SubResource("AtlasTexture_tkn6b")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_n7xsd")
"texture": SubResource("AtlasTexture_2r8jg")
}],
"loop": true,
"name": &"death",
@ -118,55 +117,55 @@ animations = [{
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_ey3ug")
"texture": SubResource("AtlasTexture_kidce")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_b78uq")
"texture": SubResource("AtlasTexture_0s3k4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_yk2as")
"texture": SubResource("AtlasTexture_2h71d")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bp4sa")
"texture": SubResource("AtlasTexture_45yd5")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_qe65k")
"texture": SubResource("AtlasTexture_6isb8")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ii7ue")
"texture": SubResource("AtlasTexture_m6d0y")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2mb0r")
"texture": SubResource("AtlasTexture_kp48x")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_rwb2y")
"texture": SubResource("AtlasTexture_rhh7o")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ey3ug")
"texture": SubResource("AtlasTexture_kidce")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_muc0u")
"texture": SubResource("AtlasTexture_0l2ip")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_lh2dq")
"texture": SubResource("AtlasTexture_u0o6v")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ynt0w")
"texture": SubResource("AtlasTexture_hh53s")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_gys0u")
"texture": SubResource("AtlasTexture_g0xj4")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tspca")
"texture": SubResource("AtlasTexture_smgex")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_e81jk")
"texture": SubResource("AtlasTexture_efhl8")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4h8vk")
"texture": SubResource("AtlasTexture_smw3b")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4j73j")
"texture": SubResource("AtlasTexture_hc7x2")
}],
"loop": true,
"name": &"spin",
@ -186,7 +185,7 @@ shape = SubResource("CircleShape2D_gi7h4")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
texture_filter = 1
sprite_frames = SubResource("SpriteFrames_paa88")
sprite_frames = SubResource("SpriteFrames_01e4m")
animation = &"spin"
metadata/_aseprite_wizard_config_ = {
"layer": "",
@ -195,7 +194,7 @@ metadata/_aseprite_wizard_config_ = {
"o_name": "viruling-",
"only_visible": true,
"slice": "",
"source": "res://assets/Viruling.aseprite"
"source": "res://assets/viruling_spin.aseprite"
}
metadata/_aseprite_wizard_source_file_hash_ = "e9452ba317bc3563d2373e8b9d673cef"
metadata/_aseprite_wizard_interface_config_ = {
@ -208,13 +207,9 @@ metadata/_aseprite_wizard_interface_config_ = {
shape = SubResource("CircleShape2D_kpyhc")
debug_color = Color(0.972226, 0, 0.442516, 0.42)
[node name="AttackTimer" type="Timer" parent="."]
[node name="Timer" type="Timer" parent="."]
one_shot = true
[node name="DeathTimer" type="Timer" parent="."]
wait_time = 0.55
one_shot = true
[node name="ExplosionSFX" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("3_hno7f")
volume_db = 10.0

View file

@ -1,121 +0,0 @@
[gd_scene load_steps=10 format=3 uid="uid://cei5gjgfoginb"]
[ext_resource type="Script" path="res://scripts/stageController.gd" id="1_m1n7w"]
[ext_resource type="Texture2D" uid="uid://bynsxkfd4t4cn" path="res://assets/export/stage1.png" id="2_48003"]
[ext_resource type="AudioStream" uid="uid://ce3soc3run6um" path="res://assets/Level1BGAudio.wav" id="2_qcnna"]
[ext_resource type="PackedScene" uid="uid://cjiuycwqqxaxn" path="res://components/Player.tscn" id="2_sxo5w"]
[ext_resource type="PackedScene" uid="uid://bab4ac3s2n0o1" path="res://components/Borders.tscn" id="3_04xvl"]
[ext_resource type="PackedScene" uid="uid://bxbpvgteyfh02" path="res://components/Viruling.tscn" id="5_w7lww"]
[ext_resource type="PackedScene" path="res://components/Bars.tscn" id="6_u2jd3"]
[ext_resource type="Texture2D" uid="uid://dailayr5c75eu" path="res://assets/export/top-bottom-.png" id="7_gw1ay"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_h5wua"]
size = Vector2(492, 101)
[node name="World" type="Node2D"]
position = Vector2(344, 240)
script = ExtResource("1_m1n7w")
next_stage = "res://levels/level1/stage2.tscn"
[node name="BGM" type="AudioStreamPlayer2D" parent="."]
position = Vector2(-344, -240)
stream = ExtResource("2_qcnna")
[node name="Bars" parent="." instance=ExtResource("6_u2jd3")]
offset_left = -344.0
offset_top = -240.0
offset_right = -304.0
offset_bottom = -200.0
[node name="Background" type="Sprite2D" parent="."]
position = Vector2(-28, -64)
scale = Vector2(1.01667, 1)
texture = ExtResource("2_48003")
[node name="Player" parent="." instance=ExtResource("2_sxo5w")]
position = Vector2(-233, -21)
[node name="Borders" parent="." instance=ExtResource("3_04xvl")]
position = Vector2(-272, -240)
[node name="Floor" type="StaticBody2D" parent="."]
[node name="Sprite2D" type="Sprite2D" parent="Floor"]
z_index = 1
texture_filter = 1
position = Vector2(-28, -191)
scale = Vector2(1, 0.283333)
texture = ExtResource("7_gw1ay")
flip_v = true
metadata/_aseprite_wizard_config_ = {
"i_mode": 1,
"keep_anim_length": false,
"layer": "",
"o_ex_p": "",
"o_folder": "res://assets/export",
"o_name": "top-bottom-",
"only_visible": true,
"player": "",
"slice": "",
"source": "res://assets/TopBottom.aseprite"
}
metadata/_aseprite_wizard_interface_config_ = {
"output_section": true
}
metadata/_aseprite_wizard_source_file_hash_ = "1b764edd2623a4481e3cf82f9aa840f7"
[node name="CollisionShape2D" type="CollisionShape2D" parent="Floor"]
position = Vector2(-28, 69)
shape = SubResource("RectangleShape2D_h5wua")
[node name="Ceiling" type="StaticBody2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="Ceiling"]
position = Vector2(-29, -190)
shape = SubResource("RectangleShape2D_h5wua")
[node name="Sprite2D" type="Sprite2D" parent="Ceiling"]
z_index = 1
texture_filter = 1
position = Vector2(-28.5, 68.25)
scale = Vector2(0.99591, 0.284722)
texture = ExtResource("7_gw1ay")
metadata/_aseprite_wizard_config_ = {
"i_mode": 1,
"keep_anim_length": false,
"layer": "",
"o_ex_p": "",
"o_folder": "res://assets/export",
"o_name": "top-bottom-",
"only_visible": true,
"player": "",
"slice": "",
"source": "res://assets/TopBottom.aseprite"
}
metadata/_aseprite_wizard_interface_config_ = {
"output_section": true
}
metadata/_aseprite_wizard_source_file_hash_ = "1b764edd2623a4481e3cf82f9aa840f7"
[node name="Level1Spawner" type="Node2D" parent="."]
[node name="Viruling" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(528, -55)
[node name="Viruling7" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(827, 6)
[node name="Viruling6" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(923, -27)
[node name="Viruling5" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(727, -3)
[node name="Viruling4" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(431, -41)
[node name="Viruling3" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(334, -4)
[node name="Viruling2" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(627, -33)

View file

@ -1,121 +1,53 @@
[gd_scene load_steps=10 format=3 uid="uid://cei5gjgfoginb"]
[gd_scene load_steps=8 format=3 uid="uid://cei5gjgfoginb"]
[ext_resource type="Script" path="res://scripts/stageController.gd" id="1_m1n7w"]
[ext_resource type="Texture2D" uid="uid://bynsxkfd4t4cn" path="res://assets/export/stage1.png" id="2_48003"]
[ext_resource type="AudioStream" uid="uid://ce3soc3run6um" path="res://assets/Level1BGAudio.wav" id="2_qcnna"]
[ext_resource type="PackedScene" uid="uid://cjiuycwqqxaxn" path="res://components/Player.tscn" id="2_sxo5w"]
[ext_resource type="PackedScene" uid="uid://bab4ac3s2n0o1" path="res://components/Borders.tscn" id="3_04xvl"]
[ext_resource type="PackedScene" uid="uid://bxbpvgteyfh02" path="res://components/Viruling.tscn" id="5_w7lww"]
[ext_resource type="PackedScene" path="res://components/Bars.tscn" id="6_u2jd3"]
[ext_resource type="Texture2D" uid="uid://dailayr5c75eu" path="res://assets/export/top-bottom-.png" id="7_gw1ay"]
[sub_resource type="QuadMesh" id="QuadMesh_seics"]
size = Vector2(480, 64)
[sub_resource type="RectangleShape2D" id="RectangleShape2D_h5wua"]
size = Vector2(492, 101)
size = Vector2(480, 106)
[node name="World" type="Node2D"]
position = Vector2(344, 240)
position = Vector2(272, 240)
script = ExtResource("1_m1n7w")
next_stage = "res://levels/level1/stage2.tscn"
[node name="BGM" type="AudioStreamPlayer2D" parent="."]
position = Vector2(-344, -240)
stream = ExtResource("2_qcnna")
[node name="Bars" parent="." instance=ExtResource("6_u2jd3")]
offset_left = -344.0
offset_top = -240.0
offset_right = -304.0
offset_bottom = -200.0
[node name="Background" type="Sprite2D" parent="."]
position = Vector2(-28, -64)
scale = Vector2(1.01667, 1)
position = Vector2(-32, -64)
texture = ExtResource("2_48003")
[node name="Player" parent="." instance=ExtResource("2_sxo5w")]
position = Vector2(-233, -21)
[node name="Borders" parent="." instance=ExtResource("3_04xvl")]
position = Vector2(-272, -240)
[node name="Player" parent="." instance=ExtResource("2_sxo5w")]
position = Vector2(-240, -16)
[node name="Viruling" parent="." instance=ExtResource("5_w7lww")]
position = Vector2(179, -13)
[node name="Floor" type="StaticBody2D" parent="."]
[node name="Sprite2D" type="Sprite2D" parent="Floor"]
z_index = 1
texture_filter = 1
position = Vector2(-28, -191)
scale = Vector2(1, 0.283333)
texture = ExtResource("7_gw1ay")
flip_v = true
metadata/_aseprite_wizard_config_ = {
"i_mode": 1,
"keep_anim_length": false,
"layer": "",
"o_ex_p": "",
"o_folder": "res://assets/export",
"o_name": "top-bottom-",
"only_visible": true,
"player": "",
"slice": "",
"source": "res://assets/TopBottom.aseprite"
}
metadata/_aseprite_wizard_interface_config_ = {
"output_section": true
}
metadata/_aseprite_wizard_source_file_hash_ = "1b764edd2623a4481e3cf82f9aa840f7"
[node name="MeshInstance2D" type="MeshInstance2D" parent="Floor"]
position = Vector2(-32, 68)
scale = Vector2(1, 1.625)
mesh = SubResource("QuadMesh_seics")
[node name="CollisionShape2D" type="CollisionShape2D" parent="Floor"]
position = Vector2(-28, 69)
position = Vector2(-32, 69)
shape = SubResource("RectangleShape2D_h5wua")
[node name="Ceiling" type="StaticBody2D" parent="."]
[node name="MeshInstance2D" type="MeshInstance2D" parent="Ceiling"]
position = Vector2(-32, -192)
scale = Vector2(1, 1.625)
mesh = SubResource("QuadMesh_seics")
[node name="CollisionShape2D" type="CollisionShape2D" parent="Ceiling"]
position = Vector2(-29, -190)
position = Vector2(-32, -192)
shape = SubResource("RectangleShape2D_h5wua")
[node name="Sprite2D" type="Sprite2D" parent="Ceiling"]
z_index = 1
texture_filter = 1
position = Vector2(-28.5, 68.25)
scale = Vector2(0.99591, 0.284722)
texture = ExtResource("7_gw1ay")
metadata/_aseprite_wizard_config_ = {
"i_mode": 1,
"keep_anim_length": false,
"layer": "",
"o_ex_p": "",
"o_folder": "res://assets/export",
"o_name": "top-bottom-",
"only_visible": true,
"player": "",
"slice": "",
"source": "res://assets/TopBottom.aseprite"
}
metadata/_aseprite_wizard_interface_config_ = {
"output_section": true
}
metadata/_aseprite_wizard_source_file_hash_ = "1b764edd2623a4481e3cf82f9aa840f7"
[node name="Level1Spawner" type="Node2D" parent="."]
[node name="Viruling" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(528, -55)
[node name="Viruling7" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(827, 6)
[node name="Viruling6" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(923, -27)
[node name="Viruling5" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(727, -3)
[node name="Viruling4" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(431, -41)
[node name="Viruling3" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(334, -4)
[node name="Viruling2" parent="Level1Spawner" instance=ExtResource("5_w7lww")]
position = Vector2(627, -33)

View file

@ -23,11 +23,11 @@ animation/layers/only_include_visible_layers_by_default=true
[autoload]
GlobalKeybinds="*res://scripts/global.gd"
GlobalKeybinds="*res://scripts/globalKeybinds.gd"
[display]
window/size/viewport_width=640
window/size/viewport_width=480
window/size/viewport_height=360
window/stretch/mode="canvas_items"
window/vsync/vsync_mode=0

View file

@ -1,9 +1,9 @@
class_name Entity extends CharacterBody2D
var health = null
var speed = null
var damage = null
var kb_speed = null
@export var health = null
@export var speed = null
@export var damage = null
@export var kb_speed = null
func _init(initial_health: int, speed_multiplier: int, attack_damage: int) -> void:
health = initial_health
@ -13,17 +13,21 @@ func _init(initial_health: int, speed_multiplier: int, attack_damage: int) -> vo
func _physics_process(delta: float) -> void:
var init_velocity = velocity
velocity.x = 0
velocity.y = 0
if init_velocity.x == 0:
init_velocity.x = 1
if kb_speed > 0:
velocity.x = -sign(init_velocity.x) * kb_speed
kb_speed = 0
move_and_slide()
velocity = init_velocity
func take_knockback(speed: int) -> void:
kb_speed = speed

View file

@ -3,7 +3,6 @@ extends Node
var previous_window_mode = -1
func _process(delta: float) -> void:
# keybinds
if Input.is_action_just_pressed("toggle_fullscreen"):
if get_window().mode == Window.MODE_FULLSCREEN:
if previous_window_mode != -1:

View file

@ -1,11 +0,0 @@
extends MeshInstance2D
@onready var border_sprite = $Border
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
pass # Replace with function body.
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass

View file

@ -7,21 +7,12 @@ extends Entity
@onready var attack_timer = $AttackTimer
@onready var collider = $CollisionShape2D
@onready var punch_hitbox = $PunchHitbox
@onready var death_timer = $DeathTimer
@onready var player_hurt_sfx = $PlayerHurtSfx
@onready var player_death_sfx = $PlayerDeathSfx
@onready var hurt_timer = $HurtTimer
@onready var health_bar = $HealthBar
var jumping = false
var facing_right = true
var right_punch = false
var hurting = false
var is_dying = false
var is_death_sfx = false
const ATTACK_DAMAGE = 25
const INITIAL_HEALTH = 50
const INITIAL_HEALTH = 100
const SPEED_MULTIPLIER = 300
const ATTACK_KNOCKBACK = 5000
@ -34,6 +25,8 @@ func _ready():
punch_hitbox.visible = false
func _physics_process(delta):
super._physics_process(delta)
if is_on_floor():
# allow the player to jump
if jumping:
@ -49,11 +42,6 @@ func _physics_process(delta):
if velocity.y > 1000:
velocity.y = 1000
if is_dying and !player_death_sfx.playing:
player_death_sfx.play()
elif hurting and !player_hurt_sfx.playing and death_timer.is_stopped():
player_hurt_sfx.play()
# perform horizontal movement
var horizontal_direction = Input.get_axis("move_left", "move_right")
velocity.x = speed * horizontal_direction
@ -62,15 +50,19 @@ func _physics_process(delta):
# ensure the player faces the correct direction
if horizontal_direction > 0 && !facing_right:
animated_sprite.flip_h = false
punch_hitbox.rotate(PI)
elif horizontal_direction < 0 && facing_right:
animated_sprite.flip_h = true
punch_hitbox.rotate(PI)
if horizontal_direction != 0:
facing_right = horizontal_direction > 0
super._physics_process(delta)
# figure out which animation should be played
# respecting the jump animation above all
if !jumping and attack_timer.is_stopped():
if is_on_floor() && horizontal_direction != 0:
animated_sprite.play("walk")
else:
animated_sprite.play("idle")
punch_hitbox.visible = true if !attack_timer.is_stopped() else false
@ -78,58 +70,8 @@ func punch_connect(node: Node):
if node is Entity and node != self and !attack_timer.is_stopped():
node.health -= damage
node.take_knockback(ATTACK_KNOCKBACK)
if node.has_method("hurt_anim"):
node.call("hurt_anim")
func hurt_anim():
hurting = true
hurt_timer.start()
func _process(delta: float) -> void:
if health <= 0:
is_dying = true
death_timer.start()
health = 99999
if is_dying:
animated_sprite.play("death")
punch_hitbox.visible = false
speed = 0
if death_timer.is_stopped():
queue_free()
if attack_timer.is_stopped() and Input.is_action_just_pressed("attack"):
attack_timer.start()
if is_on_floor():
animated_sprite.play("Right" if right_punch else "Left")
right_punch = !right_punch
else:
animated_sprite.play("slam")
elif attack_timer.is_stopped() and !hurting and !is_dying and !jumping:
var horizontal_direction = Input.get_axis("move_left", "move_right")
if is_on_floor() && horizontal_direction != 0:
animated_sprite.play("walk")
else:
animated_sprite.play("idle")
if !hurt_timer.is_stopped():
animated_sprite.play("hurt")
else:
hurting = false
var health_percentage = health * 100 / INITIAL_HEALTH
if is_dying:
health_bar.play("0")
elif health_percentage > 80:
health_bar.play("100")
elif health_percentage > 60:
health_bar.play("80")
elif health_percentage > 40:
health_bar.play("40")
elif health_percentage > 20:
health_bar.play("20")
animated_sprite.play(" punch") # TODO: Implement hitbox/endlag

View file

@ -5,7 +5,6 @@ var completed = false;
@onready var right_border = $Borders/Right/CollisionShape2D;
@onready var right_trigger = $Borders/Right/Trigger;
@onready var bgm = $BGM
func _process(delta: float) -> void:
if Input.is_action_just_pressed("trigger_completed"):
@ -15,8 +14,5 @@ func _process(delta: float) -> void:
right_border.shape = null
right_trigger.body_entered.connect(_on_trigger)
if !bgm.playing:
bgm.play()
func _on_trigger(body: Node) -> void:
get_tree().change_scene_to_file(next_stage)

View file

@ -4,10 +4,9 @@ extends Entity;
@onready var collider = $CollisionShape2D
@onready var contact_hitbox = $ContactHitbox
@onready var collision_shape = collider.shape
@onready var attack_timer = $AttackTimer
@onready var attack_timer = $Timer
@onready var is_dying = false
@onready var death_timer = $DeathTimer
@onready var explosion_sfx = $ExplosionSFX
var is_dying = false
const SPEED_MULTIPLIER = 100
const INITIAL_HEALTH = 10
@ -33,25 +32,21 @@ func _physics_process(delta: float) -> void:
move_and_slide()
func _process(delta: float) -> void:
if health <= 0:
is_dying = true
death_timer.start()
health = 99999
if health <= 0:
is_dying = true
death_timer.start()
health = 99999
if is_dying:
if is_dying:
animated_sprite.play("death")
contact_hitbox.visible = false
speed = 0
animated_sprite.play("death")
explosion_sfx.play()
contact_hitbox.visible = false
speed = 0
if death_timer.is_stopped():
queue_free()
if death_timer.is_stopped():
queue_free()
func body_connect(node: Node):
if node is Entity and node != self and attack_timer.is_stopped():
attack_timer.start()
attack_timer.start(0.25)
node.health -= damage
node.take_knockback(ATTACK_KNOCKBACK)
if node.has_method("hurt_anim"):
node.call("hurt_anim")
take_knockback(ATTACK_KNOCKBACK)