Event Trigger Update

This commit is contained in:
2025-06-09 09:24:32 -05:00
parent 8f52da0f5d
commit 3c11b232fa
17 changed files with 131 additions and 133 deletions

View File

@@ -0,0 +1,32 @@
class_name EventTrigger extends Node
@export var triggerMultipleTimes: bool = false
var eventIf:EventIf = null
func _enter_tree() -> void:
for child in get_children():
if !(child is EventIf):
continue
eventIf = child
break
if eventIf == null:
push_error(self, "requires an EventIf child to function properly")
return
eventIf.eventConditionMet.connect(onConditionTriggered)
eventIf.onTriggerListening(self)
func _exit_tree() -> void:
if eventIf != null:
eventIf.eventConditionMet.disconnect(onConditionTriggered)
eventIf.onTriggerNotListening(self)
eventIf = null
func onConditionTriggered() -> void:
if !triggerMultipleTimes:
eventIf.eventConditionMet.disconnect(onConditionTriggered)
eventIf.onTriggerNotListening(self)
eventIf.start()