diff options
Diffstat (limited to 'modules/protocol/plexus.cpp')
-rw-r--r-- | modules/protocol/plexus.cpp | 41 |
1 files changed, 37 insertions, 4 deletions
diff --git a/modules/protocol/plexus.cpp b/modules/protocol/plexus.cpp index 1839b1fb9..6a2b65794 100644 --- a/modules/protocol/plexus.cpp +++ b/modules/protocol/plexus.cpp @@ -323,26 +323,59 @@ class ProtoPlexus : public Module void AddModes() { /* Add user modes */ - ModeManager::RemoveUserMode(ModeManager::FindUserModeByName("HIDEOPER")); + ModeManager::AddUserMode(new UserModeOperOnly("ADMIN", 'a')); ModeManager::AddUserMode(new UserMode("NOCTCP", 'C')); + ModeManager::AddUserMode(new UserMode("DEAF", 'D')); ModeManager::AddUserMode(new UserMode("SOFTCALLERID", 'G')); + ModeManager::AddUserMode(new UserMode("CALLERID", 'g')); + ModeManager::AddUserMode(new UserMode("INVIS", 'i')); + ModeManager::AddUserMode(new UserModeOperOnly("LOCOPS", 'l')); + ModeManager::AddUserMode(new UserMode("OPER", 'o')); + ModeManager::AddUserMode(new UserMode("PRIV", 'p')); ModeManager::AddUserMode(new UserModeOperOnly("NETADMIN", 'N')); + ModeManager::AddUserMode(new UserModeNoone("REGISTERED", 'r')); + ModeManager::AddUserMode(new UserMode("REGPRIV", 'R')); + ModeManager::AddUserMode(new UserModeOperOnly("SNOMASK", 's')); + ModeManager::AddUserMode(new UserModeNoone("SSL", 'S')); + ModeManager::AddUserMode(new UserMode("WALLOPS", 'w')); ModeManager::AddUserMode(new UserModeNoone("WEBIRC", 'W')); - ModeManager::AddUserMode(new UserMode("PRIV", 'p')); ModeManager::AddUserMode(new UserMode("CLOAK", 'x')); + ModeManager::AddUserMode(new UserModeOperOnly("OPERWALLS", 'z')); + + /* b/e/I */ + ModeManager::AddChannelMode(new ChannelModeList("BAN", 'b')); + ModeManager::AddChannelMode(new ChannelModeList("EXCEPT", 'e')); + ModeManager::AddChannelMode(new ChannelModeList("INVITEOVERRIDE", 'I')); ModeManager::AddUserMode(new UserModeNoone("PROTECTED", 'U')); /* v/h/o/a/q */ + ModeManager::AddChannelMode(new ChannelModeStatus("VOICE", 'v', '+', 0)); + ModeManager::AddChannelMode(new ChannelModeStatus("HALFOP", 'h', '%', 1)); + ModeManager::AddChannelMode(new ChannelModeStatus("OP", 'o', '@', 2)); ModeManager::AddChannelMode(new ChannelModeStatus("PROTECT", 'a', '&', 3)); ModeManager::AddChannelMode(new ChannelModeStatus("OWNER", 'q', '~', 4)); + /* l/k */ + ModeManager::AddChannelMode(new ChannelModeParam("LIMIT", 'l')); + ModeManager::AddChannelMode(new ChannelModeKey('k')); + /* Add channel modes */ - ModeManager::RemoveChannelMode(ModeManager::FindChannelModeByName("REGISTERED")); ModeManager::AddChannelMode(new ChannelMode("BANDWIDTH", 'B')); ModeManager::AddChannelMode(new ChannelMode("NOCTCP", 'C')); + ModeManager::AddChannelMode(new ChannelMode("BLOCKCOLOR", 'c')); + ModeManager::AddChannelMode(new ChannelMode("INVITE", 'i')); + ModeManager::AddChannelMode(new ChannelMode("MODERATED", 'm')); ModeManager::AddChannelMode(new ChannelMode("REGMODERATED", 'M')); + ModeManager::AddChannelMode(new ChannelMode("NOEXTERNAL", 'n')); ModeManager::AddChannelMode(new ChannelMode("NONOTICE", 'N')); - ModeManager::AddChannelMode(new ChannelMode("BLOCKCOLOR", 'c')); + ModeManager::AddChannelMode(new ChannelMode("PRIVATE", 'p')); + ModeManager::AddChannelMode(new ChannelModeNoone("REGISTERED", 'r')); + ModeManager::AddChannelMode(new ChannelMode("SECRET", 's')); + ModeManager::AddChannelMode(new ChannelMode("TOPIC", 't')); + ModeManager::AddChannelMode(new ChannelModeOperOnly("OPERONLY", 'O')); + ModeManager::AddChannelMode(new ChannelMode("REGMODERATED", 'M')); + ModeManager::AddChannelMode(new ChannelMode("REGISTEREDONLY", 'R')); + ModeManager::AddChannelMode(new ChannelMode("SSL", 'S')); ModeManager::AddChannelMode(new ChannelMode("PERM", 'z')); } |