TowerDefense/Enemies/boss.gd

20 lines
436 B
GDScript3
Raw Normal View History

extends Enemy
class_name Boss
@export var projectile : ProjectileResource
func attack() -> bool:
if super.attack():
2025-09-14 12:52:01 +02:00
# already attacked TheCube
return true
var towerTargets : Array[Node3D] = targets.filter(func(b): return b is Tower)
if $AttackCooldown.is_stopped() && not towerTargets.is_empty():
projectile.shoot(towerTargets[0], global_position)
targets.erase(towerTargets[0])
$AttackCooldown.start()
return false