summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2011-04-16 04:37:57 -0400
committerAdam <Adam@anope.org>2011-04-16 04:37:57 -0400
commit68b1abc6f75c3c61f72f205ba5fe59e699880d33 (patch)
tree0eed89457e644ee939597300715bd3cb6d3d34d4
parent86ff426642a2bdab9f06bfce035cf3e369a3f8ee (diff)
Fixed botserv kicker logic
-rw-r--r--src/botserv.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/botserv.cpp b/src/botserv.cpp
index 0bf18da56..3268d85e1 100644
--- a/src/botserv.cpp
+++ b/src/botserv.cpp
@@ -109,15 +109,15 @@ void botchanmsgs(User *u, ChannelInfo *ci, const Anope::string &buf)
* way.
*/
- bool Allow = false;
- if (!ci->botflags.HasFlag(BS_DONTKICKOPS) && !ci->botflags.HasFlag(BS_DONTKICKVOICES))
- Allow = true;
+ bool Allow = true;
+ if (check_access(u, ci, CA_NOKICK))
+ Allow = false;
else if (ci->botflags.HasFlag(BS_DONTKICKOPS) && (ci->c->HasUserStatus(u, CMODE_HALFOP) || ci->c->HasUserStatus(u, CMODE_OP) || ci->c->HasUserStatus(u, CMODE_PROTECT) || ci->c->HasUserStatus(u, CMODE_OWNER)))
- Allow = true;
+ Allow = false;
else if (ci->botflags.HasFlag(BS_DONTKICKVOICES) && ci->c->HasUserStatus(u, CMODE_VOICE))
- Allow = true;
+ Allow = false;
- if (!check_access(u, ci, CA_NOKICK) && Allow)
+ if (Allow)
{
/* Bolds kicker */
if (ci->botflags.HasFlag(BS_KICK_BOLDS) && realbuf.find(2) != Anope::string::npos)