From 7120b55ce40a6a0c4086da49d57c74baa72609d6 Mon Sep 17 00:00:00 2001 From: shennetsind Date: Fri, 15 Nov 2013 23:05:55 -0200 Subject: Official expiration timer support As brought up in http://hercules.ws/board/topic/2225-paid-server/ Special Thanks to Haruna for all the help! Thanks to Beret, Ai4rei for information Signed-off-by: shennetsind --- src/map/pc.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/map/pc.h') diff --git a/src/map/pc.h b/src/map/pc.h index 32ca214c0..71c76b643 100644 --- a/src/map/pc.h +++ b/src/map/pc.h @@ -518,9 +518,14 @@ struct map_session_data { unsigned char delayed_damage;//ref. counter bugreport:7307 [Ind/Hercules] + /* HPM Custom Struct */ struct HPluginData **hdata; unsigned int hdatac; + /* expiration_time timer id */ + int expiration_tid; + time_t expiration_time; + /* */ struct { unsigned int second,third; @@ -741,6 +746,8 @@ struct pc_interface { struct sg_data sg_info[MAX_PC_FEELHATE]; /* */ struct eri *sc_display_ers; + /* global expiration timer id */ + int expiration_tid; /* funcs */ void (*init) (bool minimal); void (*final) (void); @@ -985,6 +992,10 @@ struct pc_interface { void (*scdata_received) (struct map_session_data *sd); void (*bound_clear) (struct map_session_data *sd, enum e_item_bound_type type); + + 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); }; struct pc_interface *pc; -- cgit v1.2.3-60-g2f50