From 097b6556514809b5bf4ba6bd57562c0992ba3805 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 22 Mar 2015 18:51:22 +0300 Subject: Update HPM hooks. --- .../HPMHooking/HPMHooking_map.HPMHooksCore.inc | 4 ++++ .../HPMHooking/HPMHooking_map.HookingPoints.inc | 1 + src/plugins/HPMHooking/HPMHooking_map.Hooks.inc | 26 ++++++++++++++++++++++ 3 files changed, 31 insertions(+) (limited to 'src/plugins') 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 ) { -- cgit v1.2.3-60-g2f50