#Shax@Quakenet.org

Home­FAQ­Search­Memberlist­Usergroups­Register­Log in
Post new topic   Reply to topicShare | 
 

 Flood Script

View previous topic View next topic Go down 
AuthorMessage
Shax
Admin


Posts: 19
Join date: 2008-12-14

PostSubject: Flood Script   Sun Dec 14, 2008 7:05 pm

on +1:text:*:#:{
if ($readini(antiflood.ini,$chan,status) != on) { halt }
if (!%antiflood_ [ $+ [ $nick ] $+ [ $chan ] ]) { set -u [ $+ [ $readini(antiflood.ini,$chan,secs) ] ] %antiflood_ [ $+ [ $nick ] $+ [ $chan ] ] 1 | halt }
inc %antiflood_ [ $+ [ $nick ] $+ [ $chan ] ]
if (%antiflood_ [ $+ [ $nick ] $+ [ $chan ] ] >= $readini(antiflood.ini,$chan,ads)) { antiflood_process $chan $nick | unset %antiflood_ [ $+ [ $nick ] $+ [ $chan ] ] }
}
alias antiflood_process {
var %chan = $1
var %nick = $2

var %reason = $iif(%antifloodskin_ [ $+ [ %chan ] ],%antifloodskin_ [ $+ [ %chan ] ],You are not allowed to flood on :chan:. ID: :id:)
var %hostname = $iif(*!*@*.users.quakenet.org iswm $address(%nick,5),$address(%nick,2),$address(%nick,3))
inc %antifloodid_ [ $+ [ %chan ] ]
if ($readini(antiflood.ini,kickdb,%hostname)) {
var %expr = $readini(antiflood.ini,kickdb,%hostname) $+ + 1
writeini antiflood.ini kickdb %hostname $calc(%expr)
kick %chan %nick $replace(%reason,:id:,%antifloodid_ [ $+ [ %chan ] ],:chan:,%chan,:uid:,$readini(antiflood.ini,kickdb,%hostname))
mode %chan +b %hostname
timer 1 600 mode %chan -b %hostname
timer 1 3600 remini antiflood.ini kickdb %hostname
halt
}
kick %chan %nick $replace(%reason,:id:,%antifloodid_ [ $+ [ %chan ] ],:chan:,%chan,:uid:,1)
writeini antiflood.ini kickdb %hostname 1
timer 1 3600 remini antiflood.ini kickdb %hostname

}
on *:text:!antiflood:#:{
if ($wi($address($nick,2)) == owner) || ($wi($address($nick,2)) == master) {
.notice $nick %chanlevskin Usage: $1 help/on/off/status/kickskin/kickid %chanlevskin
}
}

on *:text:!antiflood *:#:{
if ($wi($address($nick,2)) == owner) || ($wi($address($nick,2)) == master) {
if ($2 == help) { .notice $nick %chanlevskin Usage: $1 version/help/on/off/status/kickskin/kickid %chanlevskin | halt }
if ($2 == on) {
if (!$3) { .notice $nick %chanlevskin Usage: $1-2 <rows>:<seconds> %chanlevskin | halt }
if (*:* !iswm $3) { .notice $nick %chanlevskin Usage: $1-2 <rows>:<seconds> %chanlevskin | halt }
writeini antiflood.ini $chan ads $gettok($3,1,$asc(Smile)
writeini antiflood.ini $chan secs $gettok($3,2,$asc(Smile)
.notice $nick %chanlevskin Done. %chanlevskin Anti-flood enabled on $chan %chanlevskin | writeini antiflood.ini $chan status on | halt }
if ($2 == off) { .notice $nick %chanlevskin Done. %chanlevskin Anti-flood disabled on $chan %chanlevskin | writeini antiflood.ini $chan status off | halt }
if ($2 == status) { .notice $nick %chanlevskin Anti-flood status on channel $chan $+ : $iif($readini(antiflood.ini,$chan,status),$upper($readini(antiflood.ini,$chan,status)),OFF) %chanlevskin | halt }
if ($2 == kickid) { .notice $nick %chanlevskin Anti-flood kick-ID on channel $chan $+ : $iif(%antifloodid_ [ $+ [ %chan ] ],%antifloodid_ [ $+ [ %chan ] ],0) %chanlevskin | halt }
if ($2 == kickskin) {
if (!$3) { .notice $nick %chanlevskin Current kickskin for channel $chan is: $iif(%antifloodskin_ [ $+ [ $chan ] ],%antifloodskin_ [ $+ [ $chan ] ],Not set)
.notice $nick %chanlevskin Note: If you change kickskin, you can use following variables: :id: :chan: :uid: %chanlevskin | halt }
.notice $nick %chanlevskin Done. %chanlevskin Kickskin for channel $chan succesfully changed. %chanlevskin
.notice $nick %chanlevskin Note: If you change kickskin, you can use following variables: :id: :chan: :uid: %chanlevskin
set %antifloodskin_ [ $+ [ $chan ] ] $3-
halt
}
.notice $nick %chanlevskin Usage: $1 help/on/off/status/kickskin/kickid %chanlevskin
}
}
Back to top Go down
View user profile http://shax.darkbb.com
 

Flood Script

View previous topic View next topic Back to top 
Page 1 of 1

Permissions of this forum:You cannot reply to topics in this forum
#Shax@Quakenet.org :: MSL-
Post new topic   Reply to topic