1
1
mirror of https://github.com/Rundll86/Dog-Lynx-And-HCN.git synced 2026-06-15 16:12:30 +08:00

fix(武器): 为所有武器攻击方法添加返回值

统一所有武器的attack方法,确保返回true以表示攻击成功执行
This commit is contained in:
2026-03-07 09:08:39 +08:00
parent ca82cbed12
commit 205d6d8a12
6 changed files with 50 additions and 44 deletions
+18 -17
View File
@@ -2,21 +2,22 @@
extends Weapon
func update(to: int, origin: Dictionary, _entity: EntityBase):
origin["atk"] += 1 * to * soulLevel
origin["fireatk"] += 0.5 * to * soulLevel
origin["max-n"] += 2 * soulLevel
return origin
origin["atk"] += 1 * to * soulLevel
origin["fireatk"] += 0.5 * to * soulLevel
origin["max-n"] += 2 * soulLevel
return origin
func attack(entity: EntityBase):
var bulletName = MathTool.randomChoiceFromWeights(["OxygenFire", "AcidN"], [10, 1])
for i in randi_range(readStore("min-n"), readStore("max-n")) if bulletName == "AcidN" else 1:
for bullet in BulletBase.generate(
ComponentManager.getBullet(bulletName),
entity,
entity.findWeaponAnchor("normal"),
entity.position.angle_to_point(get_global_mouse_position()),
):
if bullet is OxygenFire:
bullet.baseDamage = readStore("fireatk")
elif bullet is AcidN:
bullet.baseDamage = readStore("atk")
bullet.lifeTime *= 0.5
var bulletName = MathTool.randomChoiceFromWeights(["OxygenFire", "AcidN"], [10, 1])
for i in randi_range(readStore("min-n"), readStore("max-n")) if bulletName == "AcidN" else 1:
for bullet in BulletBase.generate(
ComponentManager.getBullet(bulletName),
entity,
entity.findWeaponAnchor("normal"),
entity.position.angle_to_point(get_global_mouse_position()),
):
if bullet is OxygenFire:
bullet.baseDamage = readStore("fireatk")
elif bullet is AcidN:
bullet.baseDamage = readStore("atk")
bullet.lifeTime *= 0.5
return true