Spre deosebire de corpurile solide (care opresc fizic deplasarea obiectelor), un nod Area2D este o zonă de declanșare (Trigger) invizibilă care detectează când alte corpuri pătrund în perimetrul său, fără a produce un impact de respingere mecanică.
Monedă colectabilă implementată cu Area2D
extends Area2D
@export var valoare_puncte: int = 10
func _ready() -> void:
# Conectăm semnalul nativ emis la intrarea unui corp fizic:
body_entered.connect(_pe_corp_intrat)
func _pe_corp_intrat(corp: Node2D) -> void:
# Verificăm dacă obiectul care a atins moneda este avatarul jucătorului:
if corp.is_in_group("Jucatori"):
print("Monedă colectată de: %s! +%d puncte" % [corp.name, valoare_puncte])
# Oprim detecția pentru a preveni colectarea dublă:
set_deferred("monitoring", false)
# Eliminăm moneda din joc:
queue_free()
Întrebări & Exemple de Cod:
Detecția Coliziunilor și Declanșatoare cu Area2D: body_entered și monitorableAi o nelămurire despre utilizarea comenzii
Detecția Coliziunilor și Declanșatoare cu Area2D: body_entered și monitorablesau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.