diff options
Diffstat (limited to 'modules/protocol/inspircd20.cpp')
-rw-r--r-- | modules/protocol/inspircd20.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/modules/protocol/inspircd20.cpp b/modules/protocol/inspircd20.cpp index b27249234..eb2941ced 100644 --- a/modules/protocol/inspircd20.cpp +++ b/modules/protocol/inspircd20.cpp @@ -955,6 +955,15 @@ class ProtoInspIRCd20 : public Module return EVENT_CONTINUE; } + + EventReturn OnChannelModeUnset(Channel *c, MessageSource &setter, ChannelMode *mode, const Anope::string ¶m) anope_override + { + if ((setter.GetUser() && setter.GetUser()->server == Me) || setter.GetServer() == Me || !setter.GetServer()) + if (mode->name == "OPERPREFIX") + c->SetMode(c->ci->WhoSends(), mode, param, false); + + return EVENT_CONTINUE; + } }; MODULE_INIT(ProtoInspIRCd20) |