diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/modules/m_nonicks.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/modules/m_nonicks.cpp b/src/modules/m_nonicks.cpp index ef93867df..103d07c2a 100644 --- a/src/modules/m_nonicks.cpp +++ b/src/modules/m_nonicks.cpp @@ -86,13 +86,15 @@ class ModuleNoNickChange : public Module if (curr->IsModeSet('N')) { - // don't allow the nickchange, theyre on at least one channel with +N set - // and theyre not an oper + if (CHANOPS_EXEMPT(ServerInstance, 'N') && curr->GetStatus(user) == STATUS_OP) + continue; + user->WriteServ("447 %s :Can't change nickname while on %s (+N is set)", user->nick, curr->name); return 1; } } } + return 0; } }; |