diff options
author | Asheraf <acheraf1998@gmail.com> | 2019-04-21 17:07:47 +0100 |
---|---|---|
committer | Asheraf <acheraf1998@gmail.com> | 2019-05-06 19:59:30 +0000 |
commit | abe4b83a81c437d404aadea723165d98c33d462d (patch) | |
tree | e6b5eaeda12876358d6a00636d20bc311502f8ad /src/map/quest.h | |
parent | 403939af8bdb08e33f9b0a6613fe2e5e00bbea04 (diff) | |
download | hercules-abe4b83a81c437d404aadea723165d98c33d462d.tar.gz hercules-abe4b83a81c437d404aadea723165d98c33d462d.tar.bz2 hercules-abe4b83a81c437d404aadea723165d98c33d462d.tar.xz hercules-abe4b83a81c437d404aadea723165d98c33d462d.zip |
Move questinfo data from map to npc_data
this will fix the issue where having multiple `questinfo()` blocks wont work properly
Diffstat (limited to 'src/map/quest.h')
-rw-r--r-- | src/map/quest.h | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/src/map/quest.h b/src/map/quest.h index 206a7902f..d60b9b33c 100644 --- a/src/map/quest.h +++ b/src/map/quest.h @@ -60,6 +60,39 @@ enum quest_check_type { HUNTING, ///< Check if the given hunting quest's requirements have been met }; +struct questinfo_qreq { + int id; + int state; +}; + +struct questinfo_itemreq { + int nameid; + int min; + int max; +}; + +struct questinfo { + unsigned short icon; + unsigned char color; + bool hasJob; + unsigned int job;/* perhaps a mapid mask would be most flexible? */ + bool sex_enabled; + int sex; + struct { + int min; + int max; + } base_level; + struct { + int min; + int max; + } job_level; + VECTOR_DECL(struct questinfo_itemreq) items; + struct s_homunculus homunculus; + int homunculus_type; + VECTOR_DECL(struct questinfo_qreq) quest_requirement; + int mercenary_class; +}; + struct quest_interface { struct quest_db **db_data; ///< Quest database struct quest_db dummy; ///< Dummy entry for invalid quest lookups @@ -93,7 +126,6 @@ struct quest_interface { bool (*questinfo_validate_homunculus_type) (struct map_session_data *sd, struct questinfo *qi); bool (*questinfo_validate_quests) (struct map_session_data *sd, struct questinfo *qi); bool (*questinfo_validate_mercenary_class) (struct map_session_data *sd, struct questinfo *qi); - void (*questinfo_vector_clear) (int m); }; #ifdef HERCULES_CORE |