2025-09-21 08:26:29 +08:00
|
|
|
@tool
|
|
|
|
|
extends Weapon
|
|
|
|
|
|
|
|
|
|
func update(to, origin, _entity):
|
2026-01-18 15:26:12 +08:00
|
|
|
origin["atk"] += 1.5 * to * soulLevel
|
2025-11-16 07:25:38 +08:00
|
|
|
origin["count"] = 1 * soulLevel
|
2026-01-18 15:26:12 +08:00
|
|
|
origin["childatk"] = 1.25 * origin["atk"]
|
2025-09-21 16:17:49 +08:00
|
|
|
origin["reduce"] /= 1 + 0.05 * to * soulLevel
|
2025-09-21 08:26:29 +08:00
|
|
|
return origin
|
|
|
|
|
func attack(entity: EntityBase):
|
|
|
|
|
var weaponPos = entity.findWeaponAnchor("normal")
|
2025-09-21 13:11:31 +08:00
|
|
|
for i in BulletBase.generate(ComponentManager.getBullet("Meowmere"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position())):
|
2025-11-22 22:51:33 +08:00
|
|
|
if i is BulletBase:
|
|
|
|
|
i.baseDamage = readStore("atk")
|
2025-09-21 08:26:29 +08:00
|
|
|
for i in readStore("count"):
|
2025-09-21 15:32:38 +08:00
|
|
|
for j in BulletBase.generate(ComponentManager.getBullet("RainbowCat"), entity, weaponPos, weaponPos.angle_to_point(get_global_mouse_position())):
|
2025-11-22 22:51:33 +08:00
|
|
|
if j is BulletBase:
|
|
|
|
|
j.baseDamage = readStore("childatk")
|
|
|
|
|
j.penerateDamageReduction = readStore("reduce")
|
2026-01-18 15:26:12 +08:00
|
|
|
return true
|