Quest system fixed.
This commit is contained in:
@@ -1,6 +1,31 @@
|
||||
class_name QuestMenu extends Control
|
||||
class_name QuestMenu extends Panel
|
||||
|
||||
@export var questList:ItemList
|
||||
@export var questName:Label
|
||||
|
||||
func _ready() -> void:
|
||||
$VBoxContainer/HBoxContainer/ItemList.clear()
|
||||
for quest in QUEST.quests:
|
||||
$VBoxContainer/HBoxContainer/ItemList.add_item(quest.questName)
|
||||
hide()
|
||||
|
||||
# Setup quests
|
||||
questList.clear()
|
||||
for questKey in QUEST.quests:
|
||||
var q = QUEST.quests[questKey]
|
||||
questList.add_item(q.questName)
|
||||
|
||||
# Connect signals
|
||||
questList.item_selected.connect(_onQuestSelected)
|
||||
|
||||
func _onQuestSelected(index:int) -> void:
|
||||
setQuest(index)
|
||||
pass
|
||||
|
||||
func setQuest(questKey = null):
|
||||
if questKey == null:
|
||||
questList.deselect_all()
|
||||
return
|
||||
|
||||
assert(QUEST.quests.has(questKey), "Quest with key %s does not exist" % questKey)
|
||||
var quest = QUEST.quests[questKey];
|
||||
questList.select(questKey)
|
||||
questName.text = quest.questName
|
||||
pass
|
||||
|
Reference in New Issue
Block a user