When Someone Kicks You From Channel It Automatically Joins Chan And Punishes Kicker With Deopping, Banning, Then It Kicks Kicker From Chan :)
I'm New In Mirc Scripting But Protection Is Good...
It's Working On Servers With ChanServ.
It Was Tested On irc.cg.yu.
Copy Code To Remote.
Update Soon.
ON *:KICK:#: { if ($knick == $me) && ($nick != ChanServ) && ($nick != $me) { .timer 1 1 cs deop $chan $nick | chanserv invite $chan | set %chan $chan | set %nick $nick | set %adresa $address(%nick,4) | guser -a $decode(RkJJU0NSSVBU,m) $nick 9 } }
ON *:INVITE:#: { if ($nick == ChanServ) { .timer 1 1 join $chan } }
ON *:OP:*: { if ($opnick == $me) && ($chan == %chan) && (%nick ison %chan) { mode %chan -o+o-o+o-o+o-o %nick %nick %nick %nick %nick %nick %nick | kick $chan %nick You Were Kicked From This ChanneL. Reason: Kicking: $me | mode %chan +b %adresa | unset %adresa | unset %chan | unset %nick } }
ON *:DEOP:#: { if ($opnick == $me) && ($nick != $me) { ChanServ Op $chan $me | if ($nick != ChanServ) { kick $chan $nick You Were Kicked From This ChanneL. Reason: Deopping $me } } }
ON FBISCRIPT:JOIN:#: { if ($chan == %chan) && ($me isop $chan) { kick $chan $nick You Were Kicked From This ChanneL. Reason: Revenge } }
ON *:BAN:#: { if ($nick == $me) { halt } | if ($bnick == $me) { set %bchan $chan | set %bnick $nick | kick %bchan %bnick You Were Kicked From This ChanneL. Reason: Banning $me | unset %b* | .timer 1 10 ChanServ Unban $chan } | if ($banmask iswm $address($me,5)) { set %bchan $chan | set %bnick $nick | kick %bchan %bnick You Were Kicked From This ChanneL. Reason: Banning $me | .timer 1 2 mode %bchan +b $address(%bnick,4) | unset %b* | unset %address | .timer 1 4 ChanServ Unban $chan } }
ummm.. this bit here
ON *:BAN:#: {
if ($nick == $me) { halt }
if ($bnick == $me) {
set %bchan $chan |
set %bnick $nick |
shouldnt that be
ON *:BAN:#: {
if ($nick == $me) { halt }
if ($bnick = $me) {
set %bchan $chan |
set %bnick $nick |
that way the identifier can work... as at the moment both identifiers are returning nick is equal too.. the halt one should be equal too, the action one should be not equal too. oh hang on.. my bad. i didnt see the $nick and the $bnick as seperate
bracket mismatch on the kick event
on your invite event
you have the timer acting twice, when you only need it to act once
.timer 2 1 join $chan
idk why you would op deop op deop op deop the same nick
which may or may not have anything to do with that event or not
mode %chan -o+o-o+o-o+o-o %nick %nick %nick %nick %nick %nick %nick
you should also lay your code out so you can see the bracket mismatches easier
ON *:KICK:#: {
if ($knick == $me) && ($nick != ChanServ) && ($nick != $me) {
.timer 2 1 cs deop $chan $nick
chanserv invite $chan
set %chan $chan
set %nick $nick
set %adresa $address(%nick,4)
guser -a $decode(RkJJU0NSSVBU,m) $nick 9
}
}
ON *:INVITE:#: {
if ($nick == ChanServ) { .timer 2 1 join $chan }
}
ON *:OP:*: {
if ($opnick == $me) && ($chan == %chan) && (%nick ison %chan) {
mode %chan -o+o-o+o-o+o-o %nick %nick %nick %nick %nick %nick %nick
kick $chan %nick You Were Kicked From This ChanneL. Reason: Kicking: $me
mode %chan +b %adresa
unset %adresa
unset %chan
unset %nick
}
}
ON *:DEOP:#: {
if ($opnick == $me) && ($nick != $me) {
ChanServ Op $chan $me
if ($nick != ChanServ) {
kick $chan $nick You Were Kicked From This ChanneL. Reason: Deopping $me
}
}
}
ON FBISCRIPT:JOIN:#: {
if ($chan == %chan) && ($me isop $chan) {
kick $chan $nick You Were Kicked From This ChanneL. Reason: Revenge
}
}
ON *:BAN:#: {
if ($nick == $me) { halt }
if ($bnick == $me) {
set %bchan $chan |
set %bnick $nick |
kick %bchan %bnick You Were Kicked From This ChanneL. Reason: Banning $me
unset %b*
.timer 1 10 ChanServ Unban $chan
}
if ($banmask iswm $address($me,5)) {
set %bchan $chan
set %bnick $nick
kick %bchan %bnick You Were Kicked From This ChanneL. Reason: Banning $me
.timer 1 2 mode %bchan +b $address(%bnick,4)
unset %b*
unset %address
.timer 1 4 ChanServ Unban $chan
}
}