diff options
Diffstat (limited to 'src/map/quest.h')
-rw-r--r-- | src/map/quest.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/map/quest.h b/src/map/quest.h new file mode 100644 index 000000000..7f638a54c --- /dev/null +++ b/src/map/quest.h @@ -0,0 +1,34 @@ +// Copyright (c) Athena Dev Teams - Licensed under GNU GPL +// For more information, see LICENCE in the main folder + +#ifndef _QUEST_H_ +#define _QUEST_H_ + +struct s_quest_db { + int id; + unsigned int time; + int mob[MAX_QUEST_OBJECTIVES]; + int count[MAX_QUEST_OBJECTIVES]; + int num_objectives; + //char name[NAME_LENGTH]; +}; +extern struct s_quest_db quest_db[MAX_QUEST_DB]; + +typedef enum quest_check_type { HAVEQUEST, PLAYTIME, HUNTING } quest_check_type; + +int quest_pc_login(TBL_PC * sd); + +int quest_add(TBL_PC * sd, int quest_id); +int quest_delete(TBL_PC * sd, int quest_id); +int quest_change(TBL_PC * sd, int qid1, int qid2); +int quest_update_objective_sub(struct block_list *bl, va_list ap); +void quest_update_objective(TBL_PC * sd, int mob); +int quest_update_status(TBL_PC * sd, int quest_id, quest_state status); +int quest_check(TBL_PC * sd, int quest_id, quest_check_type type); + +int quest_search_db(int quest_id); + +void do_init_quest(); +void do_reload_quest(void); + +#endif |