24 lines
675 B
GDScript
24 lines
675 B
GDScript
class_name EventQuestObjectiveComplete extends "res://scripts/Event/Flow/EventGroup.gd"
|
|
|
|
@export var triggerIfObjectiveUncompletedThenComplatedAgain: bool = false
|
|
@export var quest:QuestSystem.QuestKey = QuestSystem.QuestKey.TEST_QUEST
|
|
@export var objectiveIndex:int = 0
|
|
|
|
func _enter_tree() -> void:
|
|
QUEST.questUpdated.connect(onQuestUpdated)
|
|
|
|
func _exit_tree() -> void:
|
|
QUEST.questUpdated.disconnect(onQuestUpdated)
|
|
|
|
func onQuestUpdated(quest:Quest) -> void:
|
|
if self.ended:
|
|
if !self.triggerIfObjectiveUncompletedThenComplatedAgain:
|
|
return
|
|
self.reset()
|
|
|
|
if !quest.isStarted():
|
|
return
|
|
|
|
if !quest.objectives[objectiveIndex].isCompleted():
|
|
return
|
|
self.start() |