Dead fairy guard

This commit is contained in:
Marco 2025-03-12 13:57:25 +01:00
commit da5039176b
10 changed files with 80 additions and 27 deletions

View file

@ -1,7 +1,15 @@
[gd_resource type="SpriteFrames" load_steps=14 format=3 uid="uid://ch2ll1on8im2p"]
[gd_resource type="SpriteFrames" load_steps=16 format=3 uid="uid://ch2ll1on8im2p"]
[ext_resource type="Texture2D" uid="uid://xhwfgbv0fjbr" path="res://Sprites/Actors/FairyGuard.png" id="1_fb3du"]
[sub_resource type="AtlasTexture" id="AtlasTexture_em6qg"]
atlas = ExtResource("1_fb3du")
region = Rect2(0, 64, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_klwxr"]
atlas = ExtResource("1_fb3du")
region = Rect2(16, 64, 16, 16)
[sub_resource type="AtlasTexture" id="AtlasTexture_42a57"]
atlas = ExtResource("1_fb3du")
region = Rect2(0, 0, 16, 16)
@ -54,6 +62,41 @@ region = Rect2(32, 16, 16, 16)
animations = [{
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_klwxr")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_em6qg")
}],
"loop": true,
"name": &"dead",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": SubResource("AtlasTexture_42a57")
}, {
"duration": 1.0,

View file

@ -0,0 +1,8 @@
[gd_scene load_steps=2 format=3 uid="uid://cm564ue740cpx"]
[ext_resource type="SpriteFrames" uid="uid://ch2ll1on8im2p" path="res://Resources/Sprites/FairyGuard.tres" id="1_p33aj"]
[node name="DeadFairy" type="AnimatedSprite2D"]
sprite_frames = ExtResource("1_p33aj")
animation = &"dead"
autoplay = "dead"

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=29 format=3 uid="uid://bc054js8ep2b"]
[gd_scene load_steps=30 format=3 uid="uid://bc054js8ep2b"]
[ext_resource type="Script" uid="uid://c2mo5hc1qb6kf" path="res://Scripts/Components/Actors/Actor.cs" id="1_ugrra"]
[ext_resource type="SpriteFrames" uid="uid://ch2ll1on8im2p" path="res://Resources/Sprites/FairyGuard.tres" id="2_i2plx"]
@ -15,6 +15,7 @@
[ext_resource type="Script" uid="uid://m0ag88kn0c40" path="res://Scripts/Components/Actors/DeathAnimationHandler.cs" id="13_e2vvk"]
[ext_resource type="Resource" uid="uid://dk2rbf88a5irh" path="res://Resources/Bullets/Explosion_Harmless.tres" id="14_881we"]
[ext_resource type="Script" uid="uid://7g3luecewcp5" path="res://Scripts/Components/Actors/ActorDefeatScriptHandler.cs" id="15_17yce"]
[ext_resource type="PackedScene" uid="uid://cm564ue740cpx" path="res://Scenes/Actors/DeadFairyGuard.tscn" id="15_gsthm"]
[ext_resource type="Script" uid="uid://dwbh55rqi0x5e" path="res://Scripts/Components/Actors/EnemyDropModule.cs" id="16_76vwd"]
[ext_resource type="Script" uid="uid://cq65aed620ijo" path="res://Scripts/Resources/Loot/LootDrop.cs" id="17_gsthm"]
[ext_resource type="Resource" uid="uid://ct1fa2huvy34n" path="res://Resources/Items/Ammo1.tres" id="18_hwppe"]
@ -64,7 +65,7 @@ Health = 2.0
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
sprite_frames = ExtResource("2_i2plx")
animation = &"down"
animation = &"dead"
[node name="MovementProvider" type="Node2D" parent="."]
script = ExtResource("3_tum7w")
@ -129,6 +130,7 @@ shape = SubResource("CircleShape2D_0tkae")
[node name="DeathAnimation" type="Node2D" parent="."]
script = ExtResource("13_e2vvk")
ExplosionData = ExtResource("14_881we")
DebrisScene = ExtResource("15_gsthm")
[node name="DefeatScriptHandler" type="Node2D" parent="."]
script = ExtResource("15_17yce")

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=38 format=4 uid="uid://6a6tjohypmmb"]
[gd_scene load_steps=39 format=4 uid="uid://6a6tjohypmmb"]
[ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_t2k72"]
[ext_resource type="PackedScene" uid="uid://c4pr2707hbeph" path="res://Scenes/Actors/fsm_player.tscn" id="2_2jsgm"]
@ -16,6 +16,7 @@
[ext_resource type="PackedScene" uid="uid://dkwi1hu1bixoe" path="res://Scenes/HUD/HUD.tscn" id="9_mnq21"]
[ext_resource type="Script" uid="uid://bdshph801ac2i" path="res://Scenes/CameraTarget.gd" id="10_4nd4a"]
[ext_resource type="Script" uid="uid://cnkipcolyj61w" path="res://Scripts/AlarmManager.cs" id="11_7an4p"]
[ext_resource type="Script" uid="uid://b5fesrd4lv8t1" path="res://Scripts/Resources/Events/EventResource.cs" id="14_hw1so"]
[ext_resource type="Script" uid="uid://bwox5lmgiijcs" path="res://Scripts/Resources/Events/ActivateEvent.cs" id="14_s23f3"]
[ext_resource type="PackedScene" uid="uid://oi8svqsspcsj" path="res://Scenes/Interactable/ScriptableMovementSensor.tscn" id="16_ehuec"]
[ext_resource type="PackedScene" uid="uid://crph24e6e0v0q" path="res://Scenes/Interactable/Control_Pad.tscn" id="16_s23f3"]
@ -60,7 +61,7 @@ PlayerTemplate = ExtResource("2_2jsgm")
SpawnMarkers = Dictionary[int, NodePath]({
0: NodePath("PlayerStartPosition")
})
StartingEquipment = [ExtResource("3_mqt4u")]
StartingEquipment = Array[ExtResource("3_6w05j")]([ExtResource("3_mqt4u")])
MapStartData = SubResource("Resource_6wo78")
[node name="Tilemaps" type="Node2D" parent="."]
@ -109,7 +110,7 @@ position = Vector2(196, 296)
[node name="MotionSensor" parent="Tilemaps/Actors" instance=ExtResource("16_ehuec")]
position = Vector2(254, 296)
Events = [SubResource("Resource_s23f3")]
Events = Array[ExtResource("14_hw1so")]([SubResource("Resource_s23f3")])
[node name="ControlPad" parent="Tilemaps/Actors" node_paths=PackedStringArray("Targets") instance=ExtResource("16_s23f3")]
position = Vector2(205, 292)
@ -130,7 +131,7 @@ position = Vector2(504, 468)
[node name="MovementSensorLonger" parent="Tilemaps/Actors" instance=ExtResource("20_fdi4d")]
position = Vector2(226, 486)
Events = [SubResource("Resource_qi6uc")]
Events = Array[ExtResource("14_hw1so")]([SubResource("Resource_qi6uc")])
[node name="WallEmitter" parent="Tilemaps/Actors" instance=ExtResource("21_qi6uc")]
position = Vector2(264, 482)

View file

@ -211,7 +211,7 @@ position = Vector2(59, 386)
[node name="Chest" parent="Tilemaps/Actors" instance=ExtResource("18_v2gcl")]
position = Vector2(56, 320)
LootTable = [ExtResource("19_1ajuh"), ExtResource("20_rff8l"), ExtResource("21_cub4j"), ExtResource("22_4gtx8"), ExtResource("3_6314l"), ExtResource("23_1ajuh"), ExtResource("23_1ajuh"), ExtResource("23_1ajuh")]
LootTable = Array[ExtResource("5_u1i8n")]([ExtResource("19_1ajuh"), ExtResource("20_rff8l"), ExtResource("21_cub4j"), ExtResource("22_4gtx8"), ExtResource("3_6314l"), ExtResource("23_1ajuh"), ExtResource("23_1ajuh"), ExtResource("23_1ajuh")])
[node name="Turret360" parent="Tilemaps/Actors" instance=ExtResource("24_rff8l")]
position = Vector2(374, 503)

View file

@ -1,4 +1,4 @@
[gd_scene load_steps=120 format=4 uid="uid://bv451a8wgty4u"]
[gd_scene load_steps=121 format=4 uid="uid://bv451a8wgty4u"]
[ext_resource type="Script" uid="uid://doxmbokehw8ci" path="res://Scripts/GameManager.cs" id="1_8tmoj"]
[ext_resource type="PackedScene" uid="uid://c4pr2707hbeph" path="res://Scenes/Actors/fsm_player.tscn" id="2_ksslq"]
@ -56,6 +56,7 @@
[ext_resource type="PackedScene" uid="uid://dnbtou2fklyvp" path="res://Scenes/Actors/alarm_sign.tscn" id="36_rd6f6"]
[ext_resource type="PackedScene" uid="uid://c8lgk4wnyi1e6" path="res://Scenes/Actors/HealthStation.tscn" id="38_kuhg5"]
[ext_resource type="Script" uid="uid://d0a0o50j82eo6" path="res://Scripts/Activables/ScriptableBase.cs" id="42_wigyb"]
[ext_resource type="Script" uid="uid://b5fesrd4lv8t1" path="res://Scripts/Resources/Events/EventResource.cs" id="42_yqnr2"]
[ext_resource type="PackedScene" uid="uid://fxvlaidieiv7" path="res://Scenes/Interactable/ScriptableAreaTrigger.tscn" id="43_kf3qc"]
[ext_resource type="Script" uid="uid://dkihoo85jfec5" path="res://Scripts/Resources/Events/MovePlayerEvent.cs" id="44_klwgh"]
[ext_resource type="PackedScene" uid="uid://dx1urm7nttkqk" path="res://Scenes/Actors/level_teleporter.tscn" id="44_q5xi2"]
@ -198,7 +199,7 @@ ActivationType = 0
Targets = Array[NodePath]([NodePath("../Rumia")])
WaitForCompletion = true
[sub_resource type="Resource" id="Resource_dd2pu"]
[sub_resource type="Resource" id="Resource_gtga7"]
resource_local_to_scene = true
script = ExtResource("49_0si7g")
Target = NodePath(".")
@ -222,7 +223,7 @@ SpawnMarkers = Dictionary[int, NodePath]({
2: NodePath("Factory Tilemaps/LevelProps/BossDebugTeleporterDestination"),
255: NodePath("Factory Tilemaps/Debug Room/DebugRoomStartPosition")
})
StartingEquipment = [ExtResource("4_swym2"), ExtResource("5_nqier")]
StartingEquipment = Array[ExtResource("6_8tdlb")]([ExtResource("4_swym2"), ExtResource("5_nqier")])
MapStartData = SubResource("Resource_6sau4")
metadata/_edit_lock_ = true
@ -523,7 +524,7 @@ Invisible = true
metadata/_edit_group_ = true
[node name="ScriptableAreaTrigger" parent="Factory Tilemaps/LevelProps/DebugTeleporter" instance=ExtResource("43_kf3qc")]
Events = [SubResource("Resource_usuub")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_usuub")])
[node name="BlueKeycard2" parent="Factory Tilemaps/LevelProps" instance=ExtResource("35_rblsn")]
position = Vector2(-1032, -317)
@ -703,7 +704,7 @@ position = Vector2(-1506, -188)
[node name="LevelStartTrigger" parent="Factory Tilemaps/LevelProps" instance=ExtResource("43_kf3qc")]
position = Vector2(-781, -160)
scale = Vector2(1.455, 1.455)
Events = [SubResource("Resource_5er5x"), SubResource("Resource_b25hy")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_5er5x"), SubResource("Resource_b25hy")])
[node name="AreaTrigger2" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("28_6au4t")]
position = Vector2(-435, -162)
@ -745,7 +746,7 @@ Targets = [NodePath("Script2")]
[node name="Script2" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer2"]
position = Vector2(120, 25)
script = ExtResource("42_wigyb")
Events = [SubResource("Resource_ji7au")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_ji7au")])
[node name="Computer5" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Targets") instance=ExtResource("31_243ec")]
position = Vector2(-1344, -251)
@ -753,7 +754,7 @@ Targets = [NodePath("Computer5Script")]
[node name="Computer5Script" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer5"]
script = ExtResource("42_wigyb")
Events = [SubResource("Resource_fasrq"), SubResource("Resource_yot54")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_fasrq"), SubResource("Resource_yot54")])
[node name="Computer3" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("31_243ec")]
position = Vector2(-612.57, -358.528)
@ -761,7 +762,7 @@ Target = NodePath("Script")
[node name="Script" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer3"]
script = ExtResource("42_wigyb")
Events = [SubResource("Resource_o2kpk")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_o2kpk")])
[node name="Computer4" parent="Factory Tilemaps/LevelProps" node_paths=PackedStringArray("Target") instance=ExtResource("31_243ec")]
position = Vector2(-791, -505)
@ -769,7 +770,7 @@ Target = NodePath("Node2D")
[node name="Node2D" type="Node2D" parent="Factory Tilemaps/LevelProps/Computer4"]
script = ExtResource("42_wigyb")
Events = [SubResource("Resource_s3g2w")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_s3g2w")])
[node name="Label" type="Label" parent="Factory Tilemaps/LevelProps/Computer4"]
offset_left = -5.0
@ -797,11 +798,11 @@ position = Vector2(-792, -407)
[node name="BossBattleEndScript" type="Node2D" parent="Factory Tilemaps/LevelProps"]
position = Vector2(-1628.53, -477.628)
script = ExtResource("42_wigyb")
Events = [SubResource("Resource_068l7"), SubResource("Resource_l3nop")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_068l7"), SubResource("Resource_l3nop")])
[node name="BossBattleStartScript" parent="Factory Tilemaps/LevelProps" instance=ExtResource("43_kf3qc")]
position = Vector2(-1487, -396)
Events = [SubResource("Resource_4f4id"), SubResource("Resource_s2o7m"), SubResource("Resource_b1dht"), SubResource("Resource_xrgpy"), SubResource("Resource_dd2pu")]
Events = Array[ExtResource("42_yqnr2")]([SubResource("Resource_4f4id"), SubResource("Resource_s2o7m"), SubResource("Resource_b1dht"), SubResource("Resource_xrgpy"), SubResource("Resource_gtga7")])
[node name="Enemy13" parent="Factory Tilemaps/LevelProps" instance=ExtResource("47_u1ve6")]
position = Vector2(-1657, -788)

View file

@ -60,6 +60,6 @@ public partial class DeathAnimationHandler : ActorModule
private void CreateDebris()
{
if (DebrisScene == null) return;
_actor.CreateSibling<Barrel>(DebrisScene);
_actor.CreateSibling<Node2D>(DebrisScene);
}
}

View file

@ -13,10 +13,8 @@ public partial class Drowning : PlayerStateBase
{
_animationProvider.PlayDrowningAnimation();
// Wait for animation to be over and switch to death
_animationProvider.OnAnimationEnded += AnimationProviderOnOnAnimationEnded;
// Wait for animation over and switch to death
}
private void AnimationProviderOnOnAnimationEnded(StringName animationName)

BIN
Sprites/Actors/FairyGuard.aseprite (Stored with Git LFS)

Binary file not shown.

BIN
Sprites/Actors/FairyGuard.png (Stored with Git LFS)

Binary file not shown.