Consistent SYSTEMS
This commit is contained in:
27
scripts/Singleton/QuestSystem.gd
Normal file
27
scripts/Singleton/QuestSystem.gd
Normal file
@@ -0,0 +1,27 @@
|
||||
class_name QuestSystem extends Node
|
||||
|
||||
enum QuestKey {
|
||||
TEST_QUEST
|
||||
};
|
||||
|
||||
var quests:Dictionary[int, Quest]
|
||||
|
||||
signal questStarted(quest:Quest)
|
||||
signal questUpdated(quest:Quest)
|
||||
signal questCompleted(quest:Quest)
|
||||
signal playerInventoryUpdated()
|
||||
# signal questObjectiveCompleted(quest:Quest, objective:QuestObjective)
|
||||
|
||||
func _ready() -> void:
|
||||
_updateQuests()
|
||||
|
||||
func _updateQuests() -> void:
|
||||
quests = {}
|
||||
for quest in $Quests.get_children():
|
||||
if quest is Quest:
|
||||
if quests.has(quest.questKey):
|
||||
assert(false, "Quest with key %s already exists" % quest.questKey)
|
||||
quests[quest.questKey] = quest
|
||||
|
||||
for quest in QuestKey:
|
||||
assert(quests.has(QuestKey[quest]), "Quest with key %s does not exist" % quest)
|
Reference in New Issue
Block a user