Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SaveData.quests={}
- function Quests.Quest_Begin(quest)
- if Quests.CanActivateQuest()==false then
- SaveData.quests[quest]={active=true}
- Quests[quest].Set_QuestState(quest,1)
- end
- end
- function Quests.Quest_Cancel(quest)
- SaveData[quest].cancel=true
- Quests.Set_QuestEnd(quest)
- end
- function Quests.Quest_Complete(quest)
- SaveData[quest].complete=true
- Quests.Set_QuestEnd(quest)
- end
- function Quests.Quest_Fail(quest)
- Quests.Set_QuestEnd(quest)
- end
- --Util
- function Quests.Set_QuestEnd(quest)
- SaveData[quest].active=false
- SaveData[quest].ended=true
- end
- function Quests.CanActivateQuest(quest)
- return not SaveData[quest].active and not SaveData[quest].ended
- end
- function Quests.Set_QuestState(quest,state)
- SaveData.quests[quest].state=state
- SaveData.quests[quest].nodes[state].OnStateBegin()
- end
- function ALUA.Quests.Next_QuestState(quest)
- local new_state = SaveData.quests[quest].state+1
- if Quests[quest].nodes[new_state] then
- Quests.Set_QuestState(quest,new_state)
- else
- Quests.Quest_Complete(quest)
- end
- end
- -- gets
- function Quests.Get_ActiveQuests()
- return {}
- end
- function Quests.Get_CompleteQuests()
- return {}
- end
- function Quests.Get_FailedQuests()
- return {}
- end
- ------------------------------
- Quests["example"]={
- nodes={}
- }
Advertisement
Add Comment
Please, Sign In to add comment