From 8f90bde510d9ad7cd96b05fe8ad924f538c479ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=A8=E8=90=BD=E5=9F=BA=E5=9B=B4=E8=99=BE?= <3161880837@qq.com> Date: Sun, 10 May 2026 13:13:06 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E6=88=98=E6=96=97=E7=B3=BB=E7=BB=9F):=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=86=85=E4=BC=A4=E6=9C=BA=E5=88=B6=E5=92=8C?= =?UTF-8?q?UI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改子弹碰撞时生成内伤球的数量从1个增加到2个 更新武器描述文本,明确内伤转移机制 调整格挡对不同攻击类型的内伤效果 为武器UI添加升华按钮 --- components/Weapons/DaoStatue.tscn | 8 ++++++-- components/Weapons/Tree.tscn | 9 ++++++--- scripts/Contents/Bullets/Parrier.gd | 3 ++- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/components/Weapons/DaoStatue.tscn b/components/Weapons/DaoStatue.tscn index e8946cd..d0b7f61 100644 --- a/components/Weapons/DaoStatue.tscn +++ b/components/Weapons/DaoStatue.tscn @@ -30,7 +30,8 @@ descriptionTemplate = "消耗[color=yellow]3[/color]层气力,挥出[b]无为 无量反击可化解路径上的一切伤害, 每化解[color=yellow]1[/color]点伤害: 斩击的伤害*$rate2, - 敌人产生[color=yellow]1[/color]点内伤。" + 敌人产生[color=yellow]1[/color]枚内伤, + 将自身的[color=yellow]1[/color]枚内伤转移给敌人。" sources = Array[String](["Nine Sols"]) tease = "天机不可泄露" needEnergy = 40.0 @@ -39,6 +40,9 @@ cooldown = 4000.0 [node name="attack" parent="sounds" parent_id_path=PackedInt32Array(1775425991) index="0" unique_id=853583292] stream = ExtResource("4_y3oaj") +[node name="sublimateBtn" parent="container/wrapper" parent_id_path=PackedInt32Array(673686123) index="3" unique_id=390423731] +toggle_mode = true + [node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889] texture = ExtResource("2_gx1sf") @@ -66,6 +70,6 @@ text = "消耗[color=yellow]3[/color]层气力,挥出[b]无为之剑[/b], 斩击的伤害*[color=cyan]105.0%[/color], 敌人产生[color=yellow]1[/color]点内伤。" -[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044] +[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="4" unique_id=689277044] visible = true text = "“天机不可泄露”" diff --git a/components/Weapons/Tree.tscn b/components/Weapons/Tree.tscn index 253229d..7bf734c 100644 --- a/components/Weapons/Tree.tscn +++ b/components/Weapons/Tree.tscn @@ -55,13 +55,13 @@ descriptionTemplate = "进行[b]格挡[/b],化解敌人的攻击。 对于[b]猛冲[/b]攻击, 化解本次伤害, 反弹敌人的速度, - 敌人产生[color=yellow]1[/color]枚[b]内伤[/b]; + 敌人产生[color=yellow]2[/color]枚[b]内伤[/b]; 对于[b]吐息[/b]攻击, [color=red]无法化解伤害[/color]但产生少量击退; 对于[b]魔法或召唤[/b]攻击, [color=red]无法化解伤害[/color]但可以少量储能; 对于[b]爆炸[/b]攻击, - [color=red]无法化解伤害[/color]且[color=red]自身产生[color=yellow]2[/color]枚内伤[/color]; + [color=red]无法化解伤害[/color]且[color=red]自身产生[color=yellow]1[/color]枚内伤[/color]; 敌人或自身受到的任意[color=yellow]爆炸类伤害[/color]都会引爆其所有内伤,每枚内伤造成$atk点伤害。 格挡时机越精确,成功率越高。 @@ -71,6 +71,9 @@ sources = Array[String](["Nine Sols", "Terraria"]) tease = "卸劲反伤" cooldown = 250.0 +[node name="sublimateBtn" parent="container/wrapper" parent_id_path=PackedInt32Array(673686123) index="3" unique_id=390423731] +toggle_mode = true + [node name="avatar" parent="container/info" parent_id_path=PackedInt32Array(1625294072) index="0" unique_id=1021985889] texture = ExtResource("3_nwamk") @@ -130,6 +133,6 @@ text = "进行[b]格挡[/b],化解敌人的攻击。 触发[b]不精准格挡[/b]时,自身产生[color=yellow]1[/color]枚内伤。 每次格挡最多产生[color=yellow]1[/color]枚内伤。" -[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="3" unique_id=689277044] +[node name="tease" parent="container" parent_id_path=PackedInt32Array(575698869) index="4" unique_id=689277044] visible = true text = "“卸劲反伤”" diff --git a/scripts/Contents/Bullets/Parrier.gd b/scripts/Contents/Bullets/Parrier.gd index f50b640..956effc 100644 --- a/scripts/Contents/Bullets/Parrier.gd +++ b/scripts/Contents/Bullets/Parrier.gd @@ -87,7 +87,8 @@ func hitBullet(bullet: BulletBase): # 当前子弹与其他子弹相撞 bullet.tryDestroy() bullet.launcher.velocity *= 0 generateParryBall(bullet.baseDamage) - InternalDamageBullet.generateBall(launcher, bullet.launcher, atk) + for i in 2: + InternalDamageBullet.generateBall(launcher, bullet.launcher, atk) elif bullet.motionType == BulletBase.MotionType.BREATH: penerateEffect(bullet.launcher, launcher.position) bullet.launcher.impluse(Vector2.from_angle(bullet.rotation) * -500)