Add quest objectives to quest menu
This commit is contained in:
@@ -2,3 +2,26 @@ class_name Quest extends Node
|
||||
|
||||
@export var questName:String = "Some quest"
|
||||
@export var questKey:QuestSystem.QuestKey = QuestSystem.QuestKey.TEST_QUEST
|
||||
|
||||
var questStarted:bool = false
|
||||
var questComplete:bool = false
|
||||
|
||||
var objectives:Array[QuestObjective]
|
||||
|
||||
func _ready() -> void:
|
||||
objectives = []
|
||||
for child in get_children():
|
||||
if child is QuestObjective:
|
||||
objectives.append(child)
|
||||
|
||||
func start() -> void:
|
||||
questStarted = true
|
||||
questComplete = false
|
||||
QUEST.questStarted.emit(questKey)
|
||||
QUEST.questUpdated.emit(questKey)
|
||||
|
||||
func isCompleted() -> bool:
|
||||
return questComplete
|
||||
|
||||
func isStarted() -> bool:
|
||||
return questStarted
|
||||
|
@@ -1,9 +1,7 @@
|
||||
class_name QuestObjective extends Node
|
||||
|
||||
enum Type {
|
||||
Item,
|
||||
}
|
||||
# enum Type {
|
||||
# }
|
||||
|
||||
@export var objectiveName:String = "Some objective"
|
||||
|
||||
@export var objectiveType:Type = Type.Item
|
||||
# @export var objectiveType:Type = Type.Item
|
@@ -1,3 +0,0 @@
|
||||
class_name QuestStage extends Node
|
||||
|
||||
@export var stageName:String = "Some stage"
|
Reference in New Issue
Block a user