29 lines
546 B
GDScript
29 lines
546 B
GDScript
extends KinematicBody2D
|
|
|
|
const SPEED: int = 50
|
|
|
|
var player: KinematicBody2D = null
|
|
var velocity: Vector2 = Vector2.ZERO
|
|
|
|
|
|
func _physics_process(_delta: float) -> void:
|
|
velocity = Vector2.ZERO
|
|
|
|
if player:
|
|
velocity = position.direction_to(player.position).normalized() * SPEED
|
|
|
|
velocity = move_and_slide(velocity)
|
|
return
|
|
|
|
|
|
func _on_player_detector_area_entered(area: Area2D) -> void:
|
|
if area.get_parent().name == 'Player':
|
|
player = area.get_parent()
|
|
|
|
return
|
|
|
|
|
|
func _on_player_detector_area_exited(_area: Area2D):
|
|
player = null
|
|
return
|