From 766a894879773513a79244a8805efe40218aaf1f 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: Thu, 28 Aug 2025 15:45:38 +0800 Subject: [PATCH] =?UTF-8?q?feat(BigLaser):=20=E9=99=8D=E4=BD=8E=E8=83=BD?= =?UTF-8?q?=E9=87=8F=E6=B6=88=E8=80=97=E5=B9=B6=E5=A2=9E=E5=BC=BA=E4=BC=A4?= =?UTF-8?q?=E5=AE=B3=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 调整BigLaser的能量需求从150降至100,同时根据发射者的攻击速度增强伤害 --- components/Bullets/BigLaser.tscn | 2 +- scripts/Contents/Bullets/BigLaser.gd | 5 +++-- scripts/Statemachine/EntityBase.gd | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/components/Bullets/BigLaser.tscn b/components/Bullets/BigLaser.tscn index f50e122..27a430c 100644 --- a/components/Bullets/BigLaser.tscn +++ b/components/Bullets/BigLaser.tscn @@ -24,7 +24,7 @@ fields = { 2: 1 } lifeTime = 5000.0 -needEnergy = 150.0 +needEnergy = 100.0 knockback = 10.0 [node name="texture" parent="." index="0"] diff --git a/scripts/Contents/Bullets/BigLaser.gd b/scripts/Contents/Bullets/BigLaser.gd index 352d7a5..ce4cd6c 100644 --- a/scripts/Contents/Bullets/BigLaser.gd +++ b/scripts/Contents/Bullets/BigLaser.gd @@ -1,9 +1,10 @@ extends BulletBase -class_name BigLaser +class_name BigLaser # 这个子弹是玩家的超级武器,耗能高,dps也高 func spawn(): - CameraManager.shake(5000, 100) + CameraManager.shake(5000, 100) # 激光会运行5秒,期间震屏100强度 CameraManager.playAnimation("bigLaser") + fields[FieldStore.Bullet.DAMAGE] *= launcher.fields[FieldStore.Entity.ATTACK_SPEED] func ai(): rotation = lerp_angle(rotation, ((get_global_mouse_position() - position).angle()), 0.1) position = launcher.texture.global_position diff --git a/scripts/Statemachine/EntityBase.gd b/scripts/Statemachine/EntityBase.gd index 9dab2aa..12ecd51 100644 --- a/scripts/Statemachine/EntityBase.gd +++ b/scripts/Statemachine/EntityBase.gd @@ -134,7 +134,7 @@ func takeDamage(bullet: BulletBase, crit: bool): var damage = baseDamage + baseDamage * int(crit) * fields.get(FieldStore.Entity.CRIT_DAMAGE) if sprinting: playSound("miss") - storeEnergy(damage * 0.25) + storeEnergy(damage * 0.35) damage = 0 else: playSound("hurt")