summaryrefslogtreecommitdiff
path: root/include/bots.h
diff options
context:
space:
mode:
authorAdam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864>2009-11-08 20:06:21 +0000
committerAdam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864>2009-11-08 20:06:21 +0000
commit458be36a321615c0f3004a6abde7e14d40f5da32 (patch)
tree711be83fc6f2d49f9d31015db51730cdac57f687 /include/bots.h
parent38ad96c57c520dd84c8de21766f5de082a844a99 (diff)
Rewrote all of the old C style flag systems into a new Flag class which everything inherits from. This breaks reading and writing flags to the old databases (and probably many other things aswell) - Don't use it
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2636 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'include/bots.h')
-rw-r--r--include/bots.h26
1 files changed, 24 insertions, 2 deletions
diff --git a/include/bots.h b/include/bots.h
index 38ad5534d..80ac08c1f 100644
--- a/include/bots.h
+++ b/include/bots.h
@@ -9,10 +9,33 @@
*
*/
+/** Flags settable on a bot
+ */
+enum BotFlag
+{
+ BI_BEGIN,
+
+ /* This bot can only be assigned by IRCops */
+ BI_PRIVATE,
+ /* The following flags are used to determin what bot really is what.
+ * Since you *could* have ChanServ really named BotServ or something stupid,
+ * this keeps track of them and allows them to be renamed in the config
+ * at any time, even if they already exist in the database
+ */
+ BI_CHANSERV,
+ BI_BOTSERV,
+ BI_HOSTSERV,
+ BI_OPERSERV,
+ BI_MEMOSERV,
+ BI_NICKSERV,
+ BI_GLOBAL,
+
+ BI_END
+};
struct CommandHash;
-class CoreExport BotInfo
+class CoreExport BotInfo : public Extensible, public Flags<BotFlag>
{
public:
BotInfo *next, *prev;
@@ -22,7 +45,6 @@ class CoreExport BotInfo
char *user; /* Its user name */
char *host; /* Its hostname */
char *real; /* Its real name */
- int16 flags; /* Bot flags -- see BI_* below */
time_t created; /* Birth date ;) */
int16 chancount; /* Number of channels that use the bot. */
/* Dynamic data */