diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-03-22 18:51:22 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-03-30 01:36:43 +0300 |
commit | 097b6556514809b5bf4ba6bd57562c0992ba3805 (patch) | |
tree | bd7ec307ccf8b74033f02f050e48697f49dd2cad /src/plugins/HPMHooking | |
parent | fe4f4c851d876cd8b6b9ad9d31c2e3a011ecc9b8 (diff) | |
download | hercules-097b6556514809b5bf4ba6bd57562c0992ba3805.tar.gz hercules-097b6556514809b5bf4ba6bd57562c0992ba3805.tar.bz2 hercules-097b6556514809b5bf4ba6bd57562c0992ba3805.tar.xz hercules-097b6556514809b5bf4ba6bd57562c0992ba3805.zip |
Update HPM hooks.
Diffstat (limited to 'src/plugins/HPMHooking')
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc | 4 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc | 1 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.Hooks.inc | 26 |
3 files changed, 31 insertions, 0 deletions
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc index e394711d1..651b8efc3 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc @@ -297,6 +297,8 @@ struct { struct HPMHookPoint *HP_channel_guild_leave_alliance_post; struct HPMHookPoint *HP_channel_quit_guild_pre; struct HPMHookPoint *HP_channel_quit_guild_post; + struct HPMHookPoint *HP_channel_irc_join_pre; + struct HPMHookPoint *HP_channel_irc_join_post; struct HPMHookPoint *HP_channel_config_read_pre; struct HPMHookPoint *HP_channel_config_read_post; struct HPMHookPoint *HP_chat_create_pc_chat_pre; @@ -5502,6 +5504,8 @@ struct { int HP_channel_guild_leave_alliance_post; int HP_channel_quit_guild_pre; int HP_channel_quit_guild_post; + int HP_channel_irc_join_pre; + int HP_channel_irc_join_post; int HP_channel_config_read_pre; int HP_channel_config_read_post; int HP_chat_create_pc_chat_pre; diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc index 0b9804a1c..5cbc20541 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc @@ -156,6 +156,7 @@ struct HookingPointData HookingPoints[] = { { HP_POP(channel->guild_join_alliance, HP_channel_guild_join_alliance) }, { HP_POP(channel->guild_leave_alliance, HP_channel_guild_leave_alliance) }, { HP_POP(channel->quit_guild, HP_channel_quit_guild) }, + { HP_POP(channel->irc_join, HP_channel_irc_join) }, { HP_POP(channel->config_read, HP_channel_config_read) }, /* chat */ { HP_POP(chat->create_pc_chat, HP_chat_create_pc_chat) }, diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc index aadf7a6f5..3b2c3f08f 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc @@ -3981,6 +3981,32 @@ void HP_channel_quit_guild(struct map_session_data *sd) { } return; } +void HP_channel_irc_join(struct map_session_data *sd) { + int hIndex = 0; + if( HPMHooks.count.HP_channel_irc_join_pre ) { + void (*preHookFunc) (struct map_session_data *sd); + *HPMforce_return = false; + for(hIndex = 0; hIndex < HPMHooks.count.HP_channel_irc_join_pre; hIndex++ ) { + preHookFunc = HPMHooks.list.HP_channel_irc_join_pre[hIndex].func; + preHookFunc(sd); + } + if( *HPMforce_return ) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.channel.irc_join(sd); + } + if( HPMHooks.count.HP_channel_irc_join_post ) { + void (*postHookFunc) (struct map_session_data *sd); + for(hIndex = 0; hIndex < HPMHooks.count.HP_channel_irc_join_post; hIndex++ ) { + postHookFunc = HPMHooks.list.HP_channel_irc_join_post[hIndex].func; + postHookFunc(sd); + } + } + return; +} void HP_channel_config_read(void) { int hIndex = 0; if( HPMHooks.count.HP_channel_config_read_pre ) { |