From 2563dc8c813cf845c334f6523a88354edf6df73e 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: Fri, 8 May 2026 16:31:11 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=AD=A6=E5=99=A8=E5=B9=B3=E8=A1=A1):=20?= =?UTF-8?q?=E8=B0=83=E6=95=B4=E9=81=93=E6=95=99=E7=9F=B3=E5=83=8F=E5=92=8C?= =?UTF-8?q?=E6=97=A0=E4=B8=BA=E4=B9=8B=E5=89=91=E7=9A=84=E6=95=B0=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 降低道教石像的攻击加成和rate2加成 提高道教石像的基础攻击力 为无为之剑添加rate2属性并实现伤害计算 更新相关描述文本 --- components/Weapons/DaoStatue.tscn | 4 ++-- scripts/Contents/Bullets/InfinitySword.gd | 5 +++++ scripts/Contents/Bullets/Wuwei.gd | 1 + scripts/Contents/Weapons/DaoStatue.gd | 4 ++-- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/components/Weapons/DaoStatue.tscn b/components/Weapons/DaoStatue.tscn index 4d26eb8..fa44c6b 100644 --- a/components/Weapons/DaoStatue.tscn +++ b/components/Weapons/DaoStatue.tscn @@ -12,7 +12,7 @@ displayName = "道教石像" typeTopic = 1 costBeachball = 499 store = { -"atk": 5, +"atk": 15, "rate1": 0.05, "rate2": 1.25 } @@ -57,7 +57,7 @@ text = "Nine Sols" [node name="description" parent="container" parent_id_path=PackedInt32Array(575698869) index="2" unique_id=566230682] text = "[center]消耗[color=yellow]3[/color]层气力,挥出[b]无为之剑[/b], 蓄力一段时间后,发动[b]无量反击[/b], -造成[color=cyan]5[/color]点基础伤害。 +造成[color=cyan]15[/color]点基础伤害。 每失去[color=yellow]1[/color]点生命值,伤害+[color=cyan]5.0%[/color]; 无量反击可化解路径上的一切伤害, diff --git a/scripts/Contents/Bullets/InfinitySword.gd b/scripts/Contents/Bullets/InfinitySword.gd index 61345b2..d314930 100644 --- a/scripts/Contents/Bullets/InfinitySword.gd +++ b/scripts/Contents/Bullets/InfinitySword.gd @@ -2,6 +2,7 @@ extends BulletBase class_name InfinitySwordBullet var implused: Array[EntityBase] = [] +var rate2: float = 0 func spawn(): CameraManager.shake(2000, 100) @@ -15,3 +16,7 @@ func succeedToHit(_dmg: float, entity: EntityBase): var eff = EffectController.create(ComponentManager.getEffect("ShootBlood"), entity.position) eff.particles.hide() eff.shot() +func hitBullet(bullet: BulletBase): + if !is_instance_valid(launcher): return + if BulletTool.canDamage(bullet, launcher): + baseDamage *= rate2 ** bullet.getDamage() diff --git a/scripts/Contents/Bullets/Wuwei.gd b/scripts/Contents/Bullets/Wuwei.gd index d5871dd..410af92 100644 --- a/scripts/Contents/Bullets/Wuwei.gd +++ b/scripts/Contents/Bullets/Wuwei.gd @@ -23,6 +23,7 @@ func shoot(): ): if bullet is InfinitySwordBullet: bullet.baseDamage = baseDamage + bullet.rate2 = rate2 func beReady(): canMove = false EffectController.create(ComponentManager.getEffect("Danger"), findAnchor("Spawn")).shot() diff --git a/scripts/Contents/Weapons/DaoStatue.gd b/scripts/Contents/Weapons/DaoStatue.gd index 9dc434a..7c51d0d 100644 --- a/scripts/Contents/Weapons/DaoStatue.gd +++ b/scripts/Contents/Weapons/DaoStatue.gd @@ -2,9 +2,9 @@ extends Weapon func update(to: int, origin: Dictionary, _entity: EntityBase): - origin["atk"] += 4 * to * soulLevel + origin["atk"] += 3 * to * soulLevel origin["rate1"] *= soulLevel - origin["rate2"] += 0.15 * (soulLevel - 1) + origin["rate2"] += 0.12 * (soulLevel - 1) return origin func checkAttack(entity: EntityBase) -> bool: return len(entity.getOrCreateCycleTimer("parry", 2000, 100).bullets) > 2