The_Dark_Side_of_Earth/enemies/boss/blob.gd
2025-09-23 12:36:15 +02:00

26 lines
669 B
GDScript

extends Node2D
var moving = false
@onready var player = get_tree().get_root().get_node("main/Player")
@onready var target = player.position
var speed = 500
var reached = false
signal target_reached
func _ready() -> void:
await get_tree().create_timer(1).timeout
moving = true
func _process(delta: float) -> void:
if moving:
position += (target - global_position).normalized().rotated(-get_parent().rotation) * speed * delta
if((global_position - target).length() < 40):
moving = false
if not reached:
target_reached.emit()
reached = true
if has_node("Area2D") and $Area2D.overlaps_body(player):
player.hurt(1, global_position-player.position)