1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-07-05 01:32:13 +08:00

feat(子弹系统): 完善乾坤剑和格挡子弹的逻辑

添加乾坤剑的追踪和攻击逻辑,包括命中目标后的效果
调整格挡子弹的伤害值和生成气的逻辑
优化子弹动画和碰撞箱设置
为乾坤剑添加基础伤害和穿透属性
This commit is contained in:
2026-03-19 22:58:50 +08:00
parent cc4b91797d
commit 97ac580347
6 changed files with 82 additions and 62 deletions
+1 -1
View File
@@ -113,7 +113,7 @@ size = Vector2(54, 204)
[node name="Parrier" instance=ExtResource("1_57y3f")]
script = ExtResource("2_li4th")
parryRate = 0.0
baseDamage = 0.0
baseDamage = 1.0
penerate = 1.0
autoSpawnAnimation = true
freeAfterSpawn = true
+1
View File
@@ -44,6 +44,7 @@ radius = 100.0
[node name="ParryBall" instance=ExtResource("1_xeuh5")]
script = ExtResource("2_cc0al")
baseDamage = 0.0
[node name="texture" parent="." index="0"]
scale = Vector2(0.5, 0.5)
+53 -50
View File
@@ -15,54 +15,6 @@ animations = [{
"speed": 5.0
}]
[sub_resource type="Animation" id="Animation_q2yg1"]
resource_name = "spawn"
step = 0.1
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:scale:x")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 2),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1, -0.16666667, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:scale:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(2, 2),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1, -0.16666667, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/2/type = "bezier"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath(".:rotation")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(2, 0),
"points": PackedFloat32Array(-4.71, -0.25, 0, 0.25, 0, 0.78, -0.15, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath(".:modulate:a")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(2, 2),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1, -0.16666667, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
[sub_resource type="Animation" id="Animation_x26jp"]
length = 0.001
tracks/0/type = "bezier"
@@ -110,6 +62,54 @@ tracks/3/keys = {
"times": PackedFloat32Array(0)
}
[sub_resource type="Animation" id="Animation_q2yg1"]
resource_name = "spawn"
step = 0.1
tracks/0/type = "bezier"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".:scale:x")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"handle_modes": PackedInt32Array(0, 2),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1.5, -0.16666667, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/1/type = "bezier"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath(".:scale:y")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
"handle_modes": PackedInt32Array(2, 2),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1.5, -0.16666667, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/2/type = "bezier"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath(".:rotation")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"handle_modes": PackedInt32Array(2, 0),
"points": PackedFloat32Array(-4.71, -0.25, 0, 0.25, 0, 0.78, -0.15, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
tracks/3/type = "bezier"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath(".:modulate:a")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"handle_modes": PackedInt32Array(2, 2),
"points": PackedFloat32Array(0, -0.25, 0, 0.25, 0, 1, -0.16666667, 0, 0, 0),
"times": PackedFloat32Array(0, 1)
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_evtlt"]
_data = {
&"RESET": SubResource("Animation_x26jp"),
@@ -117,12 +117,15 @@ _data = {
}
[sub_resource type="RectangleShape2D" id="RectangleShape2D_q2yg1"]
size = Vector2(94, 12)
size = Vector2(146, 26)
[node name="QKSword" instance=ExtResource("1_1ke2b")]
script = ExtResource("2_x26jp")
speed = 20.0
lifeTime = 2000.0
baseDamage = 20.0
penerate = 1.0
penerateDamageReduction = 0.2
lifeTime = 3000.0
autoSpawnAnimation = true
[node name="texture" parent="." index="0"]