Loading...
Searching...
No Matches
PixelCrushers.QuestMachine.QuestMachine Class Reference

Quest Machine static manager class. More...

Static Public Member Functions

static void RegisterQuestListContainer (IdentifiableQuestListContainer qlc)
 Registers a QuestListContainer for easy lookup.
 
static void UnregisterQuestListContainer (IdentifiableQuestListContainer qlc)
 Unregisters a QuestListContainer.
 
static IdentifiableQuestListContainer GetQuestListContainer (string id)
 Looks up a registered QuestListContainer.
 
static IdentifiableQuestListContainer GetQuestListContainer (StringField id)
 Looks up a registered QuestListContainer.
 
static QuestJournal GetQuestJournal (string id)
 Looks up a QuestJournal.
 
static QuestJournal GetQuestJournal (StringField id)
 Looks up a QuestJournal.
 
static QuestJournal GetQuestJournal ()
 Looks up the first registered QuestJournal.
 
static Dictionary< string, IdentifiableQuestListContainerGetAllQuestListContainers ()
 Returns a dictionary of all registered QuestListContainers keyed by ID.
 
static Quest GiveQuest (StringField questID)
 
static Quest GiveQuest (string questID)
 
static Quest GiveQuest (Quest quest)
 
static Quest GiveQuestToQuester (StringField questID, StringField questerID)
 
static Quest GiveQuestToQuester (Quest quest, StringField questerID)
 
static Quest GiveQuestToQuester (Quest quest, string questerID)
 
static Quest GiveQuestToQuester (string questID, string questerID)
 
static Quest GiveQuestToQuester (Quest quest, QuestJournal questJournal)
 
static void RegisterQuestAsset (Quest quest)
 Registers a quest asset so it can be looked up when a quest list needs to instantiate a copy.
 
static void UnregisterQuestAsset (Quest quest)
 Unregisters a quest asset.
 
static void UnregisterAllQuestAssets ()
 Unregisters all quest assets from Quest Machine.
 
static Quest GetQuestAsset (string id)
 Looks up a quest asset by ID.
 
static Quest GetQuestAsset (StringField id)
 Looks up a quest asset by ID.
 
static void RegisterQuestInstance (Quest quest)
 Makes Quest Machine aware of a quest instance.
 
static void UnregisterQuestInstance (Quest quest)
 Unregisters a quest instance.
 
static void UnregisterAllQuestInstances ()
 Unregisters all quest IDs.
 
static Quest GetQuestInstance (string questID, string questerID)
 Looks up a quest instance by ID.
 
static Quest GetQuestInstance (string id)
 Looks up a quest instance by ID.
 
static Quest GetQuestInstance (StringField id, StringField questerID)
 Looks up a quest instance by ID.
 
static Quest GetQuestInstance (StringField id)
 Looks up a quest instance by ID.
 
static Dictionary< string, List< Quest > > GetAllQuestInstances ()
 Returns a dictionary of all registered quest instances, indexed by quest ID.
 
static void RegisterImage (Sprite image)
 
static void RegisterAudioClip (AudioClip audioClip)
 
static Sprite GetImage (string imageName)
 
static string GetImagePath (Sprite image)
 
static AudioClip GetAudioClip (string audioClipName)
 
static string GetAudioClipPath (AudioClip audioClip)
 
static QuestCounter GetQuestCounter (string questID, string counterName, string questerID=null)
 Looks up a quest's counter.
 
static QuestCounter GetQuestCounter (StringField questID, StringField counterName, StringField questerID=null)
 Looks up a quest's counter.
 
static QuestState GetQuestState (string questID, string questerID=null)
 Looks up a quest's state.
 
static QuestState GetQuestState (StringField questID)
 Looks up a quest's state.
 
static void SetQuestState (string questID, QuestState state, string questerID=null)
 Sets a quest's state.
 
static void SetQuestState (StringField questID, QuestState state, string questerID=null)
 Sets a quest's state.
 
static QuestNodeState GetQuestNodeState (string questID, string questNodeID, string questerID=null)
 Looks up a quest node's state.
 
static QuestNodeState GetQuestNodeState (StringField questID, StringField questNodeID, string questerID=null)
 Looks up a quest node's state.
 
static void SetQuestNodeState (string questID, string questNodeID, QuestNodeState state, string questerID=null)
 Sets a quest node's state.
 
static void SetQuestNodeState (StringField questID, StringField questNodeID, QuestNodeState state, string questerID=null)
 
static List< DriveValueGetRuntimeDriveValues (EntityType entityType)
 
static void SetRuntimeDriveValues (EntityType entityType, List< DriveValue > runtimeDriveValues)
 

Properties

static TextTable textTable [get]
 Default text table to use for text lookup and localization.
 
static IQuestDialogueUI defaultQuestDialogueUI [get, set]
 Default dialogue UI to use if NPC doesn't specify one.
 
static IQuestJournalUI defaultQuestJournalUI [get, set]
 Default journal UI to use if NPC doesn't specify one.
 
static IQuestAlertUI defaultQuestAlertUI [get, set]
 Default alert UI to use if NPC doesn't specify one.
 
static IQuestHUD defaultQuestHUD [get, set]
 Default quest HUD to use if player doesn't specify one.
 
static CompletedQuestGlobalDialogueMode completedQuestDialogueMode [get, set]
 Specifies what to show in dialogue when quest givers only have completed quests.
 
static bool prettyPrintJson [get, set]
 When serializing to JSON, format for readability (uses more whitespace).
 
static bool debug [get, set]
 Log verbose debugging info to the Console.
 
static bool isLoadingGame [get, set]
 True when loading a game, in which case quests shouldn't run their state actions again.
 

Detailed Description

Quest Machine static manager class.

This is not a MonoBehaviour. You can add a QuestMachineConfiguration component to a GameObject to configure this class through the inspector.

Member Function Documentation

◆ GetAllQuestInstances()

static Dictionary< string, List< Quest > > PixelCrushers.QuestMachine.QuestMachine.GetAllQuestInstances ( )
inlinestatic

Returns a dictionary of all registered quest instances, indexed by quest ID.

◆ GetAllQuestListContainers()

static Dictionary< string, IdentifiableQuestListContainer > PixelCrushers.QuestMachine.QuestMachine.GetAllQuestListContainers ( )
inlinestatic

Returns a dictionary of all registered QuestListContainers keyed by ID.

◆ GetAudioClip()

static AudioClip PixelCrushers.QuestMachine.QuestMachine.GetAudioClip ( string  audioClipName)
inlinestatic

◆ GetAudioClipPath()

static string PixelCrushers.QuestMachine.QuestMachine.GetAudioClipPath ( AudioClip  audioClip)
inlinestatic

◆ GetImage()

static Sprite PixelCrushers.QuestMachine.QuestMachine.GetImage ( string  imageName)
inlinestatic

◆ GetImagePath()

static string PixelCrushers.QuestMachine.QuestMachine.GetImagePath ( Sprite  image)
inlinestatic

◆ GetQuestAsset() [1/2]

static Quest PixelCrushers.QuestMachine.QuestMachine.GetQuestAsset ( string  id)
inlinestatic

Looks up a quest asset by ID.

Parameters
idQuest ID.
Returns
Quest with the matching ID, or null if none is found.

◆ GetQuestAsset() [2/2]

static Quest PixelCrushers.QuestMachine.QuestMachine.GetQuestAsset ( StringField  id)
inlinestatic

Looks up a quest asset by ID.

Parameters
idQuest ID.
Returns
Quest with the matching ID, or null if none is found.

◆ GetQuestCounter() [1/2]

static QuestCounter PixelCrushers.QuestMachine.QuestMachine.GetQuestCounter ( string  questID,
string  counterName,
string  questerID = null 
)
inlinestatic

Looks up a quest's counter.

Parameters
questIDThe quest's ID.
counterNameThe counter name.
Returns
A quest counter, or null if none matches the questID and counterName.

◆ GetQuestCounter() [2/2]

static QuestCounter PixelCrushers.QuestMachine.QuestMachine.GetQuestCounter ( StringField  questID,
StringField  counterName,
StringField  questerID = null 
)
inlinestatic

Looks up a quest's counter.

Parameters
questIDThe quest's ID.
counterNameThe counter name.
Returns
A quest counter, or null if none matches the questID and counterName.

◆ GetQuestInstance() [1/4]

static Quest PixelCrushers.QuestMachine.QuestMachine.GetQuestInstance ( string  id)
inlinestatic

Looks up a quest instance by ID.

Parameters
questIDQuest ID.
Returns
A quest instance matching the specified ID, or null if none is found.

◆ GetQuestInstance() [2/4]

static Quest PixelCrushers.QuestMachine.QuestMachine.GetQuestInstance ( string  questID,
string  questerID 
)
inlinestatic

Looks up a quest instance by ID.

Parameters
questIDQuest ID.
questerIDID of quester assigned to quest, or blank or null for any quester.
Returns
Quest instance with the specified quest and quester ID, or null if none is found.

◆ GetQuestInstance() [3/4]

static Quest PixelCrushers.QuestMachine.QuestMachine.GetQuestInstance ( StringField  id)
inlinestatic

Looks up a quest instance by ID.

Parameters
questIDQuest ID.
Returns
A quest instance matching the specified ID, or null if none is found.

◆ GetQuestInstance() [4/4]

static Quest PixelCrushers.QuestMachine.QuestMachine.GetQuestInstance ( StringField  id,
StringField  questerID 
)
inlinestatic

Looks up a quest instance by ID.

Parameters
questIDQuest ID.
questerIDID of quester assigned to quest, or blank or null for any quester.
Returns
Quest instance with the specified quest and quester ID, or null if none is found.

◆ GetQuestJournal() [1/3]

static QuestJournal PixelCrushers.QuestMachine.QuestMachine.GetQuestJournal ( )
inlinestatic

Looks up the first registered QuestJournal.

◆ GetQuestJournal() [2/3]

static QuestJournal PixelCrushers.QuestMachine.QuestMachine.GetQuestJournal ( string  id)
inlinestatic

Looks up a QuestJournal.

Parameters
idID of the QuestJournal's owner, or empty for any QuestJournal.

◆ GetQuestJournal() [3/3]

static QuestJournal PixelCrushers.QuestMachine.QuestMachine.GetQuestJournal ( StringField  id)
inlinestatic

Looks up a QuestJournal.

Parameters
idID of the QuestJournal's owner, or empty for any QuestJournal.

◆ GetQuestListContainer() [1/2]

static IdentifiableQuestListContainer PixelCrushers.QuestMachine.QuestMachine.GetQuestListContainer ( string  id)
inlinestatic

Looks up a registered QuestListContainer.

Parameters
idID of the QuestListContainer.

◆ GetQuestListContainer() [2/2]

static IdentifiableQuestListContainer PixelCrushers.QuestMachine.QuestMachine.GetQuestListContainer ( StringField  id)
inlinestatic

Looks up a registered QuestListContainer.

Parameters
idID of the QuestListContainer.

◆ GetQuestNodeState() [1/2]

static QuestNodeState PixelCrushers.QuestMachine.QuestMachine.GetQuestNodeState ( string  questID,
string  questNodeID,
string  questerID = null 
)
inlinestatic

Looks up a quest node's state.

Parameters
questIDThe quest's ID.
questNodeIDThe quest node's ID.
Returns
The quest node's state, or QuestNodeState.Inactive if no quest or quest node with the specified IDs has been registered.

◆ GetQuestNodeState() [2/2]

static QuestNodeState PixelCrushers.QuestMachine.QuestMachine.GetQuestNodeState ( StringField  questID,
StringField  questNodeID,
string  questerID = null 
)
inlinestatic

Looks up a quest node's state.

Parameters
questIDThe quest's ID.
questNodeIDThe quest node's ID.
Returns
The quest node's state, or QuestNodeState.Inactive if no quest or quest node with the specified IDs has been registered.

◆ GetQuestState() [1/2]

static QuestState PixelCrushers.QuestMachine.QuestMachine.GetQuestState ( string  questID,
string  questerID = null 
)
inlinestatic

Looks up a quest's state.

Parameters
questIDThe quest's ID.
Returns
The quest's state, or QuestState.Inactive if no quest with the specified ID has been registered.

◆ GetQuestState() [2/2]

static QuestState PixelCrushers.QuestMachine.QuestMachine.GetQuestState ( StringField  questID)
inlinestatic

Looks up a quest's state.

Parameters
questIDThe quest's ID.
Returns
The quest's state, or QuestState.Inactive if no quest with the specified ID has been registered.

◆ GetRuntimeDriveValues()

static List< DriveValue > PixelCrushers.QuestMachine.QuestMachine.GetRuntimeDriveValues ( EntityType  entityType)
inlinestatic

◆ GiveQuest() [1/3]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuest ( Quest  quest)
inlinestatic

◆ GiveQuest() [2/3]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuest ( string  questID)
inlinestatic

◆ GiveQuest() [3/3]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuest ( StringField  questID)
inlinestatic

◆ GiveQuestToQuester() [1/5]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuestToQuester ( Quest  quest,
QuestJournal  questJournal 
)
inlinestatic

◆ GiveQuestToQuester() [2/5]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuestToQuester ( Quest  quest,
string  questerID 
)
inlinestatic

◆ GiveQuestToQuester() [3/5]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuestToQuester ( Quest  quest,
StringField  questerID 
)
inlinestatic

◆ GiveQuestToQuester() [4/5]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuestToQuester ( string  questID,
string  questerID 
)
inlinestatic

◆ GiveQuestToQuester() [5/5]

static Quest PixelCrushers.QuestMachine.QuestMachine.GiveQuestToQuester ( StringField  questID,
StringField  questerID 
)
inlinestatic

◆ RegisterAudioClip()

static void PixelCrushers.QuestMachine.QuestMachine.RegisterAudioClip ( AudioClip  audioClip)
inlinestatic

◆ RegisterImage()

static void PixelCrushers.QuestMachine.QuestMachine.RegisterImage ( Sprite  image)
inlinestatic

◆ RegisterQuestAsset()

static void PixelCrushers.QuestMachine.QuestMachine.RegisterQuestAsset ( Quest  quest)
inlinestatic

Registers a quest asset so it can be looked up when a quest list needs to instantiate a copy.

Parameters
questA quest asset in the project.

◆ RegisterQuestInstance()

static void PixelCrushers.QuestMachine.QuestMachine.RegisterQuestInstance ( Quest  quest)
inlinestatic

Makes Quest Machine aware of a quest instance.

Each quest ID may be associated with multiple instances of a quest if there are multiple questers. This allows Quest Machine to look it up by ID.

Parameters
questQuest instance to register.

◆ RegisterQuestListContainer()

static void PixelCrushers.QuestMachine.QuestMachine.RegisterQuestListContainer ( IdentifiableQuestListContainer  qlc)
inlinestatic

Registers a QuestListContainer for easy lookup.

Parameters
qlcQuestListContainer to register.

◆ SetQuestNodeState() [1/2]

static void PixelCrushers.QuestMachine.QuestMachine.SetQuestNodeState ( string  questID,
string  questNodeID,
QuestNodeState  state,
string  questerID = null 
)
inlinestatic

Sets a quest node's state.

Parameters
questIDThe quest's ID.
questNodeIDThe quest node's ID.
stateThe quest node's new state.

◆ SetQuestNodeState() [2/2]

static void PixelCrushers.QuestMachine.QuestMachine.SetQuestNodeState ( StringField  questID,
StringField  questNodeID,
QuestNodeState  state,
string  questerID = null 
)
inlinestatic

◆ SetQuestState() [1/2]

static void PixelCrushers.QuestMachine.QuestMachine.SetQuestState ( string  questID,
QuestState  state,
string  questerID = null 
)
inlinestatic

Sets a quest's state.

Parameters
questIDThe quest's ID.
stateThe quest's new state.

◆ SetQuestState() [2/2]

static void PixelCrushers.QuestMachine.QuestMachine.SetQuestState ( StringField  questID,
QuestState  state,
string  questerID = null 
)
inlinestatic

Sets a quest's state.

Parameters
questIDThe quest's ID.
stateThe quest's new state.

◆ SetRuntimeDriveValues()

static void PixelCrushers.QuestMachine.QuestMachine.SetRuntimeDriveValues ( EntityType  entityType,
List< DriveValue runtimeDriveValues 
)
inlinestatic

◆ UnregisterAllQuestAssets()

static void PixelCrushers.QuestMachine.QuestMachine.UnregisterAllQuestAssets ( )
inlinestatic

Unregisters all quest assets from Quest Machine.

◆ UnregisterAllQuestInstances()

static void PixelCrushers.QuestMachine.QuestMachine.UnregisterAllQuestInstances ( )
inlinestatic

Unregisters all quest IDs.

◆ UnregisterQuestAsset()

static void PixelCrushers.QuestMachine.QuestMachine.UnregisterQuestAsset ( Quest  quest)
inlinestatic

Unregisters a quest asset.

Parameters
questA quest asset in the project.

◆ UnregisterQuestInstance()

static void PixelCrushers.QuestMachine.QuestMachine.UnregisterQuestInstance ( Quest  quest)
inlinestatic

Unregisters a quest instance.

Parameters
questQuest instance to unregister.

◆ UnregisterQuestListContainer()

static void PixelCrushers.QuestMachine.QuestMachine.UnregisterQuestListContainer ( IdentifiableQuestListContainer  qlc)
inlinestatic

Unregisters a QuestListContainer.

Parameters
qlcQuestListContainer to unregister.

Property Documentation

◆ completedQuestDialogueMode

CompletedQuestGlobalDialogueMode PixelCrushers.QuestMachine.QuestMachine.completedQuestDialogueMode
staticgetset

Specifies what to show in dialogue when quest givers only have completed quests.

◆ debug

bool PixelCrushers.QuestMachine.QuestMachine.debug
staticgetset

Log verbose debugging info to the Console.

◆ defaultQuestAlertUI

IQuestAlertUI PixelCrushers.QuestMachine.QuestMachine.defaultQuestAlertUI
staticgetset

Default alert UI to use if NPC doesn't specify one.

◆ defaultQuestDialogueUI

IQuestDialogueUI PixelCrushers.QuestMachine.QuestMachine.defaultQuestDialogueUI
staticgetset

Default dialogue UI to use if NPC doesn't specify one.

◆ defaultQuestHUD

IQuestHUD PixelCrushers.QuestMachine.QuestMachine.defaultQuestHUD
staticgetset

Default quest HUD to use if player doesn't specify one.

◆ defaultQuestJournalUI

IQuestJournalUI PixelCrushers.QuestMachine.QuestMachine.defaultQuestJournalUI
staticgetset

Default journal UI to use if NPC doesn't specify one.

◆ isLoadingGame

bool PixelCrushers.QuestMachine.QuestMachine.isLoadingGame
staticgetset

True when loading a game, in which case quests shouldn't run their state actions again.

◆ prettyPrintJson

bool PixelCrushers.QuestMachine.QuestMachine.prettyPrintJson
staticgetset

When serializing to JSON, format for readability (uses more whitespace).

◆ textTable

TextTable PixelCrushers.QuestMachine.QuestMachine.textTable
staticget

Default text table to use for text lookup and localization.


The documentation for this class was generated from the following file: