feat: enemy death and damage effects

This commit is contained in:
Sara 2025-07-23 00:24:52 +02:00
parent 2134fcae92
commit 1a8c64806d
13 changed files with 96 additions and 7 deletions

View file

@ -0,0 +1,56 @@
[gd_scene load_steps=7 format=3 uid="uid://clbq43giddldc"]
[sub_resource type="GDScript" id="GDScript_abt0s"]
script/source = "extends Node3D
func _init():
set_disable_scale(true)
func _ready():
$GPUParticles3D.emitting = true
"
[sub_resource type="Curve" id="Curve_abt0s"]
_data = [Vector2(0.55064934, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), -3.5361242, 0.0, 0, 0]
point_count = 2
[sub_resource type="CurveTexture" id="CurveTexture_rtbd5"]
curve = SubResource("Curve_abt0s")
[sub_resource type="ParticleProcessMaterial" id="ParticleProcessMaterial_abt0s"]
direction = Vector3(0, 0, -1)
spread = 5.0
initial_velocity_min = 1.0
initial_velocity_max = 3.0
scale_curve = SubResource("CurveTexture_rtbd5")
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_rtbd5"]
shading_mode = 2
diffuse_mode = 1
specular_mode = 2
albedo_color = Color(0.7921569, 0.09803922, 0.09019608, 1)
[sub_resource type="QuadMesh" id="QuadMesh_qrff5"]
material = SubResource("StandardMaterial3D_rtbd5")
size = Vector2(0.3, 0.3)
[node name="BloodEffect" type="Node3D"]
script = SubResource("GDScript_abt0s")
[node name="Timer" type="Timer" parent="."]
wait_time = 0.2
one_shot = true
autostart = true
[node name="GPUParticles3D" type="GPUParticles3D" parent="."]
emitting = false
amount = 10
lifetime = 0.2
one_shot = true
explosiveness = 0.6
fixed_fps = 10
transform_align = 3
process_material = SubResource("ParticleProcessMaterial_abt0s")
draw_pass_1 = SubResource("QuadMesh_qrff5")
[connection signal="timeout" from="Timer" to="." method="queue_free"]

View file

@ -6,7 +6,10 @@
script/source = "extends EnemyWretched
func _on_health_status_death() -> void:
queue_free();
%StateMachine.set_process(false)
$wretched/AnimationPlayer.play(\"death\")
$CollisionShape3D.disabled = true
set_movement_direction(Vector2())
"
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_ng1ul"]
@ -20,9 +23,15 @@ script = SubResource("GDScript_qot2n")
[node name="Hitbox" parent="wretched/Character/Skeleton3D" index="2" node_paths=PackedStringArray("health")]
health = NodePath("../../../../HealthStatus")
[node name="SpineAttach" parent="wretched/Character/Skeleton3D" index="3"]
transform = Transform3D(1, -2.2202518e-16, 2.1910394e-16, 2.1910388e-16, 0.9999122, 0.013243958, -2.220252e-16, -0.01324396, 0.99991226, -4.1256417e-17, 1.1546816, -0.0027124756)
[node name="Hitbox" parent="wretched/Character/Skeleton3D/SpineAttach" index="0" node_paths=PackedStringArray("health")]
health = NodePath("../../../../../HealthStatus")
[node name="HeadAttach" parent="wretched/Character/Skeleton3D" index="4"]
transform = Transform3D(0.9999988, -0.0007823897, 0.0013344375, 0.0007271601, 0.99916273, 0.04089782, -0.0013653187, -0.040896803, 0.9991622, -1.3069549e-16, 1.5574794, -0.004068734)
[node name="Hitbox" parent="wretched/Character/Skeleton3D/HeadAttach" index="0" node_paths=PackedStringArray("health")]
health = NodePath("../../../../../HealthStatus")

View file

@ -8,10 +8,10 @@
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, -1.1853347, 0.023195954, -0.8597343)
[node name="EnemyWretched5" parent="." instance=ExtResource("1_l77gx")]
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.3304333, 0.023195954, 1.0620495)
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.30714047, 0.023195954, 0.58812845)
[node name="EnemyWretched6" parent="." instance=ExtResource("1_l77gx")]
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.026455224, 0.023195954, -1.7789332)
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.05460906, 0.023195954, -1.4555124)
[node name="EnemyWretched7" parent="." instance=ExtResource("1_l77gx")]
transform = Transform3D(-1, 0, -8.742278e-08, 0, 1, 0, 8.742278e-08, 0, -1, 0.054681122, 0.023195954, -0.4100113)