; Personal Kick/Ban Protection v.0.02 by BuRuz (Dalnet/#scripting)
; --
; If u got kick 3 times within 60secs , the script will attempt to remove $nick from op access and deop $nick
; --
on *:snotice:*:{ zpp.auto.iden $1- }
on *:notice:*:?:{ if ($nick == NickServ) { zpp.auto.iden $1- } }
on *:op:#:{
if ($opnick == $me) {
%get.op.nick. [ $+ [ # ] $+ . $+ [ $me ] ] = $nick
if ($hget(rejoin,deop.1. $+ #) >= 3) { mode # -o $hget(rejoin,deop.2. $+ #) }
}
}
on *:DEOP:#:{
if ($opnick == $me) {
if ($nick != $me) && (%get.op.nick. [ $+ [ # ] $+ . $+ [ $me ] ]) && ($nick != chanserv) { $zpro.chanserv.msg($network) op $chan $me }
unset %get.op.nick. [ $+ [ # ] $+ . $+ [ $me ] ] | %get.deop.nick. [ $+ [ # ] $+ . $+ [ $me ] ] = $nick
}
}
on *:BAN:#:{ if ($banmask iswm $address($me,5)) || ($banmask iswm $reptok($address($me,5),$host,$ip,64)) { $zpro.chanserv.msg($network) unban # $me } }
on *:kick:#:{
if ($knick == $me) {
if ($istok(#a-a-distro #anime-archive #buruz,$chan,32)) {
hinc -mu60 rejoin deop.1. $+ # | hadd -mu10 rejoin deop.2. $+ # $nick
if ($hget(rejoin,deop.1. $+ #) >= 3) { $zpro.chanserv.msg($network) access # del $hget(rejoin,deop.2. $+ #) }
}
hadd -mu60 rejoin # $nick | $zpro.chanserv.msg($network) invite #
}
}
on *:invite:$($hget(rejoin,#)):{ join # }
raw 473:*:{ hadd -mu60 rejoin $2 1 | $zpro.chanserv.msg($network) invite $2 $me }
raw 474:*:{ hadd -mu60 rejoin $2 1 | var %msg = $zpro.chanserv.msg($network) | %msg invite $2 $me | %msg unban $2 $me }
raw 477:*:{ iden.nick }
raw 1:*:{ iden.nick }
alias -l zpp.auto.iden { if ((*nick*owned*by*someone* iswm $1- ) || (*please*choose*different*nick* iswm $1-) || (* do not * access to op people on #*. iswm $strip($1))) { iden.nick } }
alias -l iden.nick {
; -
; Syntax for var %nick - nick1:network:password1,nick2:network:password2,nick3:network:password3
; Syntax for var %allnet - nick1:password1,nick2:password2,nick3:password3
; -
; ex: Jhon_Doe:Dalnet:deadman,apeman:criten:wildmushroom
; ex: NoMo:oicu,superman:herosmero
var %nick = MYNICKHERE:IRCNETWORK:PASSWORD,nick2:network:password2,nick3:network:password3
var %allnet = MYNICKHERE:PASSWORD,nick2:password2,nick3:password3
var %msg = $zpro.nickserv.msg($network) identify
if ($wildtok(%nick,$+($me,:,$network,:*),1,44)) { %msg $gettok($ifmatch,3,58) }
elseif ($wildtok(%allnet,$+($me,:*),1,44)) { %msg $gettok($ifmatch,2,58) }
}
alias -l zpro.nickserv.msg {
if ($istok(dalnet,$1,32)) { return .ns }
elseif ($istok(aniverse,$1,32)) { return .msg nickserv }
else { return .msg nickserv }
}
alias -l zpro.chanserv.msg {
if ($istok(dalnet,$1,32)) { return .cs }
elseif ($istok(aniverse,$1,32)) { return .msg chanserv }
else { return .msg chanserv }
}
; --- End ---