D3/Char/Enemy/Enemy_01.tscn
2025-05-10 23:19:52 +08:00

387 lines
16 KiB
Plaintext

[gd_scene load_steps=56 format=3 uid="uid://dom46ngh3my6b"]
[ext_resource type="Script" uid="uid://31cjfbnh8u3h" path="res://Char/Enemy/Enemy_Base.gd" id="1_bhfxq"]
[ext_resource type="Texture2D" uid="uid://budv3124bpoer" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_idle_0.png" id="1_kjlg5"]
[ext_resource type="Script" uid="uid://ccl8rou8xjq7l" path="res://Char/Enemy/States/Enemy_State_Machine.gd" id="1_qlmle"]
[ext_resource type="PackedScene" uid="uid://dd7k3qbsw1bhq" path="res://Char/Char_Components/After_Image/after_image_component.tscn" id="2_r6gbg"]
[ext_resource type="Script" uid="uid://vv1x1fxhvlkb" path="res://Char/Enemy/States/Enemy_Idle.gd" id="2_uy5qn"]
[ext_resource type="Texture2D" uid="uid://b337hx6wl5y0s" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_idle_1.png" id="2_v1dvq"]
[ext_resource type="Texture2D" uid="uid://c5i1yuvaw7ni8" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_idle_2.png" id="3_21668"]
[ext_resource type="PackedScene" uid="uid://bj7ycp6aj85je" path="res://Char/Char_Components/Blood/Blood_Component.tscn" id="3_wrjj3"]
[ext_resource type="Script" uid="uid://c7nqhmg3j1vem" path="res://Char/Enemy/States/Enemy_Hurt_Begin.gd" id="4_1tl15"]
[ext_resource type="Texture2D" uid="uid://d2tebvlq84p52" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_idle_3.png" id="4_tmg76"]
[ext_resource type="Texture2D" uid="uid://cw783kk4sxqej" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_idle_4.png" id="5_ifbbb"]
[ext_resource type="Script" uid="uid://c6go4s15ssa6p" path="res://Char/Enemy/States/Enemy_Hurt_Air.gd" id="5_wxij1"]
[ext_resource type="Script" uid="uid://ce2fxr3ubj24x" path="res://Char/Enemy/States/Enemy_Hurt_Ground.gd" id="6_emq2d"]
[ext_resource type="Texture2D" uid="uid://c3tqsfyivnxxd" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_idle_5.png" id="6_k8n5e"]
[ext_resource type="Script" uid="uid://dhr5agjs0pp1k" path="res://Char/Enemy/States/Enemy_Death.gd" id="7_anrfy"]
[ext_resource type="Texture2D" uid="uid://cvf5wbsg34qv0" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtfly_0.png" id="7_tk36w"]
[ext_resource type="Texture2D" uid="uid://cqewxn6t7xeoj" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtfly_1.png" id="8_06rgb"]
[ext_resource type="Script" uid="uid://dv30qyfgqt8lx" path="res://Char/Enemy/States/Enemy_Slope_Fall.gd" id="8_ccfup"]
[ext_resource type="Texture2D" uid="uid://b86ds5spivgom" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_0.png" id="9_xvq7u"]
[ext_resource type="Texture2D" uid="uid://cw6antcwfas6h" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_1.png" id="10_03n1p"]
[ext_resource type="Texture2D" uid="uid://cxrxf72pvs7ui" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_2.png" id="11_tmtn5"]
[ext_resource type="Texture2D" uid="uid://cb5au3r0rt0xc" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_3.png" id="12_qdvcq"]
[ext_resource type="Texture2D" uid="uid://daj03i8f8pqih" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_4.png" id="13_pqinb"]
[ext_resource type="Texture2D" uid="uid://brkl3ej35ji75" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_5.png" id="14_gaime"]
[ext_resource type="Texture2D" uid="uid://cii7i4g7iqyv5" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_6.png" id="15_stii5"]
[ext_resource type="Texture2D" uid="uid://dsgeko15xhw3h" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_7.png" id="16_a5626"]
[ext_resource type="Texture2D" uid="uid://k4gvdi2u3yv0" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_8.png" id="17_y4e0y"]
[ext_resource type="Texture2D" uid="uid://b60swed0ui7mw" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_9.png" id="18_5ebam"]
[ext_resource type="Texture2D" uid="uid://6y4jgwebch8f" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_10.png" id="19_uds5x"]
[ext_resource type="Texture2D" uid="uid://wj8owyvohotx" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_11.png" id="20_kstx0"]
[ext_resource type="Texture2D" uid="uid://bldam5tvknypg" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_12.png" id="21_cy1cp"]
[ext_resource type="Texture2D" uid="uid://bdgbixku48db4" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_hurtground_13.png" id="22_i0bs7"]
[ext_resource type="Texture2D" uid="uid://cbkxu5eh3kga2" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_0.png" id="31_pop2r"]
[ext_resource type="Texture2D" uid="uid://djxcnae36c5bf" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_1.png" id="32_h871j"]
[ext_resource type="Texture2D" uid="uid://cfkd53ysmtja0" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_2.png" id="33_oqvw2"]
[ext_resource type="Texture2D" uid="uid://cl2qtq84d8gha" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_3.png" id="34_4rfcp"]
[ext_resource type="Texture2D" uid="uid://de1blurkbtkqp" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_4.png" id="35_jk8bd"]
[ext_resource type="Texture2D" uid="uid://3auu05maaiqw" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_5.png" id="36_ouems"]
[ext_resource type="Texture2D" uid="uid://c0prmgrm31ds2" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_6.png" id="37_cresk"]
[ext_resource type="Texture2D" uid="uid://dnt3i5joy8ju3" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_7.png" id="38_kfwgs"]
[ext_resource type="Texture2D" uid="uid://v6yh2242u4s0" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_8.png" id="39_keo1v"]
[ext_resource type="Texture2D" uid="uid://b0dybeyfay3em" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_9.png" id="40_db4yh"]
[ext_resource type="Texture2D" uid="uid://crvk1djjxtl4" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_10.png" id="41_6ivs7"]
[ext_resource type="Texture2D" uid="uid://cjdg38w4njpb3" path="res://Char/Enemy/Art/Enemy_01/spr_shotgun_stairfall_11.png" id="42_kh4oa"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_smhfi"]
radius = 20.0
height = 64.0
[sub_resource type="Animation" id="Animation_ok3xg"]
resource_name = "Death_1"
length = 0.05
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.05),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [ExtResource("14_gaime"), ExtResource("15_stii5")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(0, -31)]
}
[sub_resource type="Animation" id="Animation_itd00"]
resource_name = "Death_2"
length = 0.4
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.19, 0.22, 0.25, 0.28, 0.31, 0.34, 0.37, 0.4),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1),
"update": 1,
"values": [ExtResource("14_gaime"), ExtResource("15_stii5"), ExtResource("16_a5626"), ExtResource("17_y4e0y"), ExtResource("18_5ebam"), ExtResource("19_uds5x"), ExtResource("20_kstx0"), ExtResource("21_cy1cp"), ExtResource("22_i0bs7")]
}
[sub_resource type="Animation" id="Animation_mote0"]
resource_name = "Hurt_Air"
length = 0.6
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.1, 0.4),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 1,
"values": [ExtResource("7_tk36w"), ExtResource("8_06rgb"), ExtResource("9_xvq7u")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.4),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [Vector2(-3, -32), Vector2(1, -31)]
}
[sub_resource type="Animation" id="Animation_fttej"]
resource_name = "Hurt_Begin"
length = 0.01
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [ExtResource("7_tk36w")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(-3, -32)]
}
[sub_resource type="Animation" id="Animation_ph48t"]
resource_name = "Hurt_Ground"
length = 0.25
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.02, 0.04, 0.06, 0.2, 0.25),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1),
"update": 1,
"values": [ExtResource("9_xvq7u"), ExtResource("10_03n1p"), ExtResource("11_tmtn5"), ExtResource("12_qdvcq"), ExtResource("13_pqinb"), ExtResource("14_gaime")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0.02),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(1, -31)]
}
[sub_resource type="Animation" id="Animation_18rkb"]
resource_name = "Idle"
length = 0.6
loop_mode = 1
step = 0.1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.1, 0.2, 0.3, 0.4, 0.5),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1),
"update": 1,
"values": [ExtResource("1_kjlg5"), ExtResource("2_v1dvq"), ExtResource("3_21668"), ExtResource("4_tmg76"), ExtResource("5_ifbbb"), ExtResource("6_k8n5e")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(0, -45)]
}
[sub_resource type="Animation" id="Animation_2tmes"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [ExtResource("1_kjlg5")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(0, -45)]
}
[sub_resource type="Animation" id="Animation_0g5b4"]
resource_name = "Slope_Fall"
length = 0.55
loop_mode = 1
step = 0.05
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Sprite2D:texture")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1),
"update": 1,
"values": [ExtResource("31_pop2r"), ExtResource("32_h871j"), ExtResource("33_oqvw2"), ExtResource("34_4rfcp"), ExtResource("35_jk8bd"), ExtResource("36_ouems"), ExtResource("37_cresk"), ExtResource("38_kfwgs"), ExtResource("39_keo1v"), ExtResource("40_db4yh"), ExtResource("41_6ivs7"), ExtResource("42_kh4oa")]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:position")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.15, 0.3, 0.35, 0.45, 0.5, 0.55),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1),
"update": 1,
"values": [Vector2(0, -36), Vector2(-4, -36), Vector2(0, -36), Vector2(-3, -36), Vector2(-7, -36), Vector2(-10, -36), Vector2(-6, -36)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_jljuo"]
_data = {
&"Death_1": SubResource("Animation_ok3xg"),
&"Death_2": SubResource("Animation_itd00"),
&"Hurt_Air": SubResource("Animation_mote0"),
&"Hurt_Begin": SubResource("Animation_fttej"),
&"Hurt_Ground": SubResource("Animation_ph48t"),
&"Idle": SubResource("Animation_18rkb"),
&"RESET": SubResource("Animation_2tmes"),
&"Slope_Fall": SubResource("Animation_0g5b4")
}
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_y0s26"]
radius = 17.0
height = 64.0
[node name="Enemy_01_1" type="CharacterBody2D" groups=["Enemy"]]
z_index = 4
collision_layer = 32
collision_mask = 33030144
floor_constant_speed = true
floor_max_angle = 1.0472
floor_snap_length = 10.0
script = ExtResource("1_bhfxq")
[node name="After_Image_Component" parent="." instance=ExtResource("2_r6gbg")]
[node name="Blood_Component" parent="." instance=ExtResource("3_wrjj3")]
position = Vector2(0, -32)
[node name="Enemy_State_Machine" type="Node" parent="."]
script = ExtResource("1_qlmle")
[node name="Idle" type="Node" parent="Enemy_State_Machine"]
script = ExtResource("2_uy5qn")
[node name="Hurt_Begin" type="Node" parent="Enemy_State_Machine"]
script = ExtResource("4_1tl15")
[node name="Hurt_Air" type="Node" parent="Enemy_State_Machine"]
script = ExtResource("5_wxij1")
[node name="Hurt_Ground" type="Node" parent="Enemy_State_Machine"]
script = ExtResource("6_emq2d")
[node name="Slope_Fall" type="Node" parent="Enemy_State_Machine"]
script = ExtResource("8_ccfup")
[node name="Death" type="Node" parent="Enemy_State_Machine"]
script = ExtResource("7_anrfy")
[node name="Body_Physics" type="CollisionShape2D" parent="."]
visible = false
position = Vector2(0, -32)
shape = SubResource("CapsuleShape2D_smhfi")
[node name="Body_Animation" type="Node2D" parent="."]
metadata/_edit_lock_ = true
[node name="Sprite2D" type="Sprite2D" parent="Body_Animation"]
position = Vector2(0, -45)
scale = Vector2(1.8, 1.8)
texture = ExtResource("1_kjlg5")
[node name="AnimationPlayer" type="AnimationPlayer" parent="Body_Animation"]
libraries = {
&"": SubResource("AnimationLibrary_jljuo")
}
[node name="Detector" type="Node2D" parent="."]
[node name="Floor" type="RayCast2D" parent="Detector"]
target_position = Vector2(0, 8)
collision_mask = 524288
[node name="Rope" type="RayCast2D" parent="Detector"]
enabled = false
target_position = Vector2(0, 8)
collision_mask = 33554432
[node name="Floor_L" type="RayCast2D" parent="Detector"]
target_position = Vector2(-8, 8)
collision_mask = 524288
[node name="Floor_R" type="RayCast2D" parent="Detector"]
target_position = Vector2(8, 8)
collision_mask = 524288
[node name="Slope_L" type="RayCast2D" parent="Detector"]
position = Vector2(0, -3)
target_position = Vector2(-22, 0)
collision_mask = 16777216
hit_from_inside = true
[node name="Slope_R" type="RayCast2D" parent="Detector"]
position = Vector2(0, -3)
target_position = Vector2(22, 0)
collision_mask = 16777216
hit_from_inside = true
[node name="One_Way_Floor" type="RayCast2D" parent="Detector"]
target_position = Vector2(0, 8)
collision_mask = 1048576
[node name="Hurt" type="Area2D" parent="."]
position = Vector2(0, -32)
collision_layer = 128
collision_mask = 2
[node name="CollisionShape2D" type="CollisionShape2D" parent="Hurt"]
shape = SubResource("CapsuleShape2D_y0s26")
debug_color = Color(0.952755, 0.165165, 0.367487, 0.42)
[node name="RayCast2D" type="RayCast2D" parent="Hurt"]
collision_mask = 15204352