class_name GoalZone
extends Area2D
## Зона-цель. Магнитный объект должен попасть в эту зону для победы.

## Сигнал при попадании объекта в зону
signal object_reached

## Активирована ли зона
var is_activated: bool = false


func _ready() -> void:
	add_to_group("goals")
	body_entered.connect(_on_body_entered)
	modulate = Color(0.3, 1.0, 0.3, 0.5)  # Полупрозрачный зелёный


func _on_body_entered(body: Node2D) -> void:
	if is_activated:
		return
	if body.is_in_group("magnetic"):
		is_activated = true
		modulate = Color.GREEN
		object_reached.emit()
		print("Объект достиг цели!")


## Сброс
func reset() -> void:
	is_activated = false
	modulate = Color(0.3, 1.0, 0.3, 0.5)
