mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-28 06:51:54 +08:00
c74087454a
修改多个武器和召唤物的攻击逻辑,将直接设置damage属性改为设置baseDamage属性 添加BulletBase类型检查确保安全访问子弹属性 移除Weapon.gd中冗余的鼠标事件连接
29 lines
693 B
GDScript
29 lines
693 B
GDScript
extends SummonBase
|
|
|
|
var attackTime: float = 0
|
|
var tracer: EntityBase = null
|
|
|
|
func register():
|
|
fields[FieldStore.Entity.MAX_HEALTH] = 150
|
|
fields[FieldStore.Entity.MOVEMENT_SPEED] = 1.5
|
|
await TickTool.frame()
|
|
attackCooldownMap[0] = attackTime
|
|
func spawn():
|
|
texture.play("walk")
|
|
func ai():
|
|
tryAttack(0)
|
|
if is_instance_valid(tracer):
|
|
PresetEntityAI.follow(self, tracer, 80)
|
|
else:
|
|
tracer = EntityTool.findClosetEntity(position, get_tree(), !isPlayer(), isPlayer())
|
|
func attack(type):
|
|
if type == 0:
|
|
for bullet in BulletBase.generate(
|
|
ComponentManager.getBullet("HJMAttack"),
|
|
self,
|
|
findWeaponAnchor("normal"),
|
|
0
|
|
):
|
|
if bullet is BulletBase:
|
|
bullet.baseDamage = atk
|