update
This commit is contained in:
@@ -5,6 +5,7 @@ enum State { IDLE, CHASE, ATTACK, RETURN }
|
||||
var state: int = State.IDLE
|
||||
var target: Node3D = null
|
||||
var spawn_position: Vector3
|
||||
var portal: Node3D = null
|
||||
var gravity: float = ProjectSettings.get_setting("physics/3d/default_gravity")
|
||||
|
||||
@onready var health: Node = $Health
|
||||
@@ -12,6 +13,7 @@ var gravity: float = ProjectSettings.get_setting("physics/3d/default_gravity")
|
||||
func _ready() -> void:
|
||||
spawn_position = global_position
|
||||
add_to_group("enemies")
|
||||
add_to_group("targetable")
|
||||
EventBus.entity_died.connect(_on_entity_died)
|
||||
|
||||
func _on_entity_died(entity: Node) -> void:
|
||||
@@ -39,7 +41,7 @@ func _engage(new_target: Node3D) -> void:
|
||||
func _alert_nearby() -> void:
|
||||
var enemies := get_tree().get_nodes_in_group("enemies")
|
||||
for enemy in enemies:
|
||||
if enemy != self and is_instance_valid(enemy):
|
||||
if enemy != self and is_instance_valid(enemy) and "state" in enemy:
|
||||
if enemy.state == enemy.State.IDLE:
|
||||
var dist: float = global_position.distance_to(enemy.global_position)
|
||||
if dist <= 3.0:
|
||||
|
||||
Reference in New Issue
Block a user