diff options
Diffstat (limited to 'src/map/pc.h')
-rw-r--r-- | src/map/pc.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/map/pc.h b/src/map/pc.h index 5264fa557..2f143f15c 100644 --- a/src/map/pc.h +++ b/src/map/pc.h @@ -180,6 +180,7 @@ struct map_session_data { unsigned int snovice_call_flag : 3; //Summon Angel (stage 1~3) unsigned int hpmeter_visible : 1; unsigned int itemcheck : 1; + unsigned int standalone : 1;/* [Ind/Hercules <3] */ } state; struct { unsigned char no_weapon_damage, no_magic_damage, no_misc_damage; @@ -724,6 +725,21 @@ struct item_cd { short nameid[MAX_ITEMDELAYS];//skill id }; +enum e_pc_autotrade_update_action { + PAUC_START, + PAUC_REFRESH, + PAUC_REMOVE, +}; + +/** + * Used to temporarily remember vending data + **/ +struct autotrade_vending { + struct item list[MAX_VENDING]; + struct s_vending vending[MAX_VENDING]; + unsigned char vend_num; +}; + /*===================================== * Interface : pc.h * Generated by HerculesInterfaceMaker @@ -732,6 +748,8 @@ struct item_cd { struct pc_interface { /* */ + DBMap *at_db;/* char id -> struct autotrade_vending */ + /* */ DBMap* itemcd_db; /* */ int day_timer_tid; @@ -1000,6 +1018,15 @@ struct pc_interface { int (*expiration_timer) (int tid, int64 tick, int id, intptr_t data); int (*global_expiration_timer) (int tid, int64 tick, int id, intptr_t data); void (*expire_check) (struct map_session_data *sd); + + /** + * Autotrade persistency [Ind/Hercules <3] + **/ + void (*autotrade_load) (void); + void (*autotrade_update) (struct map_session_data *sd, enum e_pc_autotrade_update_action action); + void (*autotrade_start) (struct map_session_data *sd); + void (*autotrade_prepare) (struct map_session_data *sd); + void (*autotrade_populate) (struct map_session_data *sd); }; struct pc_interface *pc; |