Arhitectura Roblox Studio este puternic bazată pe evenimente (Event-Driven Architecture). Orice interacțiune fizică (o atingere de bloc, apăsarea unei taste, conectarea unui jucător) este reprezentată printr-un semnal RBXScriptSignal pe care scripturile îl pot asculta apelând metoda :Connect().
Capcană de foc cu deconectare sigură a ascultătorului
local piesaCapcana = script.Parent :: BasePart
local conexiuneAtingere: RBXScriptConnection? = nil
local function laAtingere(obiectLovit: BasePart)
local caracter = obiectLovit.Parent
if not caracter then return end
-- Verificăm dacă obiectul lovit aparține unui avatar umanoid:
local humanoid = caracter:FindFirstChildWhichIsA("Humanoid")
if humanoid and humanoid.Health > 0 then
humanoid:TakeDamage(25)
print(`Jucătorul {caracter.Name} a fost rănit de capcană!`)
-- Oprim ascultătorul pentru a evita apeluri repetate:
if conexiuneAtingere then
conexiuneAtingere:Disconnect()
conexiuneAtingere = nil
print("Capcana a fost dezarmată.")
end
end
end
-- Atașarea ascultătorului:
conexiuneAtingere = piesaCapcana.Touched:Connect(laAtingere)
Întrebări & Exemple de Cod:
Gestiunea Evenimentelor în Roblox: RBXScriptSignal, :Connect() și :Disconnect()Ai o nelămurire despre utilizarea comenzii
Gestiunea Evenimentelor în Roblox: RBXScriptSignal, :Connect() și :Disconnect()sau 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.