summaryrefslogtreecommitdiffstats
path: root/src/modules/m_serverbots.cpp
diff options
context:
space:
mode:
authorGravatar Jackmcbarn2011-03-24 20:20:38 -0400
committerGravatar Jackmcbarn2011-03-24 20:20:38 -0400
commit680f2e2dc51cf099014ffb3c255e3e55bd3637ea (patch)
tree67fcf2ec8f8eb3de5d45f7658d87cf4f7acd8b55 /src/modules/m_serverbots.cpp
parentDisplay a message when using /greloadmodule (diff)
downloadinspircd++-680f2e2dc51cf099014ffb3c255e3e55bd3637ea.tar.gz
inspircd++-680f2e2dc51cf099014ffb3c255e3e55bd3637ea.tar.bz2
inspircd++-680f2e2dc51cf099014ffb3c255e3e55bd3637ea.zip
Add operonly option to serverbots
Diffstat (limited to 'src/modules/m_serverbots.cpp')
-rw-r--r--src/modules/m_serverbots.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/modules/m_serverbots.cpp b/src/modules/m_serverbots.cpp
index 47f728249..51dd2ae8e 100644
--- a/src/modules/m_serverbots.cpp
+++ b/src/modules/m_serverbots.cpp
@@ -37,6 +37,9 @@ class Alias
/** RequiredNick must be on a ulined server */
bool ULineOnly;
+ /** Requires oper? */
+ bool OperOnly;
+
/** Format that must be matched for use */
std::string format;
};
@@ -129,6 +132,9 @@ class BotData
return false;
}
+ if ((a->OperOnly) && (!IS_OPER(user)))
+ return 0;
+
if (!a->RequiredNick.empty())
{
User* u = ServerInstance->FindNick(a->RequiredNick);
@@ -334,6 +340,7 @@ class ModuleServerBots : public Module
tag->readString("replace", a.ReplaceFormat, true);
a.RequiredNick = tag->getString("requires");
a.ULineOnly = tag->getBool("uline");
+ a.OperOnly = tag->getBool("operonly");
a.format = tag->getString("format");
bot->Aliases.insert(std::make_pair(a.AliasedCommand, a));