2025-11-15 19:33:10 +08:00
|
|
|
@tool
|
|
|
|
|
extends Weapon
|
|
|
|
|
|
|
|
|
|
func update(to: int, origin: Dictionary, _entity: EntityBase):
|
2025-11-22 08:42:51 +08:00
|
|
|
origin["rotate"] += 0.005 * to * soulLevel
|
2025-11-30 16:47:49 +08:00
|
|
|
origin["dmg1"] += 0.03 * to * soulLevel
|
|
|
|
|
origin["dmg2"] += 0.03 * to * soulLevel
|
|
|
|
|
origin["dmg3"] += 0.03 * to * soulLevel
|
|
|
|
|
origin["dmg4"] += 0.03 * to * soulLevel
|
2025-12-04 22:33:52 +08:00
|
|
|
origin["dmg5"] += 0.025 * to * soulLevel
|
2025-11-29 18:20:18 +08:00
|
|
|
origin["count"] = 1 * soulLevel
|
2025-12-04 22:37:50 +08:00
|
|
|
origin["atk"] += 3 * to * soulLevel
|
2025-11-15 19:33:10 +08:00
|
|
|
return origin
|
|
|
|
|
func attack(entity: EntityBase):
|
2025-11-22 08:01:31 +08:00
|
|
|
for j in BulletBase.generate(
|
|
|
|
|
ComponentManager.getBullet("Volcano"),
|
|
|
|
|
entity,
|
|
|
|
|
entity.findWeaponAnchor("normal"),
|
2026-01-18 14:12:34 +08:00
|
|
|
entity.position.angle_to_point(entity.get_global_mouse_position()), true, true
|
2025-11-22 08:01:31 +08:00
|
|
|
):
|
2025-11-16 12:43:20 +08:00
|
|
|
var bullet: Volcano = j
|
2025-11-22 08:42:51 +08:00
|
|
|
bullet.baseDamage = readStore("atk")
|
2025-11-16 12:43:20 +08:00
|
|
|
bullet.rotates = readStore("rotate")
|
2025-11-22 16:06:44 +08:00
|
|
|
bullet.damageMultipliers = [readStore("dmg1"), readStore("dmg2"), readStore("dmg3"), readStore("dmg4")]
|
2025-11-22 16:36:59 +08:00
|
|
|
bullet.count = readStore("count")
|
|
|
|
|
bullet.dmg5 = readStore("dmg5")
|