Quest Documentation
back to Project Phoenix#Quests
Contents
Files
File Name | Description |
---|---|
scripts/quest_giver.lua | contains all the functioning for the quest giver and handling of player interaction |
scripts/quest_giver_initializer.lua | initialization of the xml template data for the quest giver |
scripts/quest_helpers | Core functions for the quest system |
scripts/quest_information | Quest table definitions |
scripts/quest_npc_dialog_window | Quest dynamic window and quest log dynamic window |
scripts/globals/include_custom_quests | Setup for quest table for global usage |
Functions
CustomQuests.Helpers.<FunctionName>(Args)
Function Name | Arguments | Description |
---|---|---|
AddSlayTask | template,amount,objvarneeded,killname | Adds a slay task to the quest table |
AddHarvestTask | template,amount,objvarneeded,collectname | Adds a harvest task to the quest table |
AddCraftTask | template,amount,resourceneeded,collectname | Adds a craft quest to the quest table |
AddTameTask | template,amount,objvarneeded,collectname | Adds a tame quest to the quest table |
CanGetQuest | player,questgiver,questname | Checks to see if the player can get the quest |
HasQuest | player,questname | Checks to see if the player has the quest |
GiveQuest | player,questname | Give the player a quest and toss it in the quest log |
RemoveQuest | player,questname | Remove a quest by name from the player |
IsQuestComplete | player,questname | Checks if the quest tasks are completed or not |
CheckQuestObjectives | player,object | Checks to see if the player completed a part of the objective |
CheckDelay | player,quest | Checks to see if the player an pick the quest up again (daily,hourly) or what other interval |
Quest Giver
The quest system has a few limitations as of now but can be fixed either by me later when I get around to it, or feel free to do it yourself in your own methods
- You can only display 3 quest choices on any NPC due to user interface size.
- All quests can be repeated, you are given a Delay value.