42 int quest_restart = 0;
43 const Face *face =
nullptr;
44 uint32_t client_code = 0;
45 bool quest_is_system =
false;
46 std::vector<quest_step_definition *>
steps;
int maxstep
The latest step that triggers the condition, to match, the stages must be between minstep and maxstep...
Definition of an in-game quest.
sstring quest_code
The quest that triggers the condition.
std::vector< quest_step_definition * > steps
Quest steps.
New face structure - this enforces the notion that data is face by face only - you can not change the...
int quest_condition_from_string(quest_condition *condition, const char *buffer)
Parse a single step condition.
quest_step_definition * quest_create_step(void)
Allocate a quest_step_definition, will call fatal() if out of memory.
Global type definitions and header inclusions.
void quest_destroy_condition(quest_condition *condition)
One condition to automatically move to a quest step.
void(* quest_op)(const quest_definition *, void *)
void quest_clear(quest_definition *quest)
quest_condition * quest_create_condition(void)
Allocate a quest_condition, will call fatal() if out of memory.
std::vector< quest_condition * > conditions
The conditions that must be satisfied to trigger the step.
void quest_write_condition(char *buf, size_t len, const quest_condition *condition)
Write a step condition to a buffer.
struct quest_definition * parent
Parent for this quest, NULL if it is a 'top-level' quest.
void quest_destroy_step(quest_step_definition *step)
quest_definition * quest_create(const char *name)
int minstep
The earliest step in the quest that triggers the condition, -1 means finished, 0 means not started...
int is_completion_step
Whether this step completes the quest (1) or not (0)
void quest_for_each(quest_op op, void *user)
Iterate over all quests.
void quest_destroy(quest_definition *quest)