summaryrefslogtreecommitdiff
path: root/include/modes.h
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2011-08-19 04:18:13 -0400
committerAdam <Adam@anope.org>2011-09-10 01:52:59 -0400
commit4fcb371bc8813cd647b7769a64d586e3a57d684d (patch)
tree836584fe2392b5ea21115111dbd470dbf04ce47b /include/modes.h
parent6401d93b8e0ec5b6f68bd507dffa360b4d60d335 (diff)
Track what "level" channel status modes are, which allows us to have chanserv/mode determine if a status mode can be set by users better
Diffstat (limited to 'include/modes.h')
-rw-r--r--include/modes.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/include/modes.h b/include/modes.h
index 20d4378bc..2fce7e9f7 100644
--- a/include/modes.h
+++ b/include/modes.h
@@ -276,13 +276,18 @@ class CoreExport ChannelModeStatus : public ChannelMode
public:
/* The symbol, eg @ % + */
char Symbol;
+ /* The "level" of the mode, used to compare with other modes.
+ * Used so we know op > halfop > voice etc.
+ */
+ unsigned short Level;
/** Default constructor
* @param mName The mode name
* @param modeChar The mode char
- * @param mSymbol The symbol for the mode, eg @ % +
+ * @param mSymbol The symbol for the mode, eg @ %
+ * @param mLevel A level for the mode, which is usually determined by the PREFIX capab
*/
- ChannelModeStatus(ChannelModeName mName, char modeChar, char mSymbol);
+ ChannelModeStatus(ChannelModeName mName, char modeChar, char mSymbol, unsigned short mLevel = 0);
/** Default destructor
*/