Defire Flood Protection — File Browser
DefireFloodProtectionv1.5 / DefireFloodProtectionv1.5 / flood.mrc
flood.mrc — 12.26 KB — Download this file
# Flood Protection Add-on for De§ire v1.5
# Used with mIRC 5.11
# Author: ZFact0r
# Thanks to: [SB]Tikiman, Saten, Snibb,
# and the rest of the #hawkee.com crew.
##############################
on 1:LOAD: {
.set %max.protect ON | .set %norm.protect OFF | .set %min.protect OFF
.set %max.msg 2 | .set %max.ctcp 2 | .set %max.char 150
.set %norm.msg 5 | .set %norm.ctcp 5 | .set %norm.char 300
.set %min.msg 7 | .set %min.ctcp 7 | .set %min.char 500
sf1
.window @De§ire Flood Protection 175 100 277 190 Arial bold 11
.aline @De§ire Flood Protection 10Thank you for your interest in De§ire Flood
.aline @De§ire Flood Protection 10Protection. I like to think of this as one of the
.aline @De§ire Flood Protection 10best add-ons for personal/channel protection.
.aline @De§ire Flood Protection 10To bring up the Flood Protection option list,
.aline @De§ire Flood Protection 10just hit 2Shift+F110 at anytime. To change any of
.aline @De§ire Flood Protection 10options, just 2right-click10 the window and
.aline @De§ire Flood Protection 10change the option of your choice.
.aline @De§ire Flood Protection 10-
.aline @De§ire Flood Protection 10If you encounter any problems, just email me
.aline @De§ire Flood Protection 10at: 2zfact0r@mindless.com
}
alias sf1 {
.window @Flood Protection 220 60 210 240 @Flood Protection Arial bold 11
.aline @Flood Protection 12----------- Flood Protection -----------
.aline @Flood Protection 10Maximum Protection:2 %max.protect
.aline @Flood Protection 10~ Characters Allowed:2 %max.char
.aline @Flood Protection 10~ Messages Allowed:2 %max.msg
.aline @Flood Protection 10~ CTCPs Allowed:2 %max.ctcp
.aline @Flood Protection 10Normal Protection:2 %norm.protect
.aline @Flood Protection 10~ Characters Allowed:2 %norm.char
.aline @Flood Protection 10~ Messages Allowed:2 %norm.msg
.aline @Flood Protection 10~ CTCPs Allowed:2 %norm.ctcp
.aline @Flood Protection 10Minimum Protection:2 %min.protect
.aline @Flood Protection 10~ Characters Allowed:2 %min.char
.aline @Flood Protection 10~ Messages Allowed:2 %min.msg
.aline @Flood Protection 10~ CTCPs Allowed:2 %min.ctcp
.aline @Flood Protection 12------- Right Click for Options -------
}
alias max.help {
.window @Max Protection Help 175 60 280 140 Arial bold 11
.aline @Max Protection Help 2Max Protection10: Highest level of protection
.aline @Max Protection Help 10~~ 2Characters Allowed10: Number of characters
.aline @Max Protection Help 10allowed in one sentence.
.aline @Max Protection Help 10~~ 2Messages Allowed10: Number of messages
.aline @Max Protection Help 10allowed in 10 seconds.
.aline @Max Protection Help 10~~ 2CTCPs Allowed10: Number of CTCPs
.aline @Max Protection Help 10allowed in 10 seconds.
}
alias norm.help {
.window @Norm Protection Help 175 60 280 140 Arial bold 11
.aline @Norm Protection Help 2Norm Protection10: Normal level of protection
.aline @Norm Protection Help 10~~ 2Characters Allowed10: Number of characters
.aline @Norm Protection Help 10allowed in one sentence.
.aline @Norm Protection Help 10~~ 2Messages Allowed10: Number of messages
.aline @Norm Protection Help 10allowed in 10 seconds.
.aline @Norm Protection Help 10~~ 2CTCPs Allowed10: Number of CTCPs
.aline @Norm Protection Help 10 allowed in 10 seconds.
}
alias min.help {
.window @Min Protection Help 175 60 280 140 Arial bold 11
.aline @Min Protection Help 2Min Protection10: Lowest level of protection
.aline @Min Protection Help 10~~ 2Characters Allowed10: Number of characters
.aline @Min Protection Help 10allowed in one sentence.
.aline @Min Protection Help 10~~ 2Messages Allowed10: Number of messages
.aline @Min Protection Help 10allowed in 10 seconds.
.aline @Min Protection Help 10~~ 2CTCPs Allowed10: Number of CTCPs
.aline @Min Protection Help 10allowed in 10 seconds.
}
menu @Flood Protection {
dclick window -c @Flood Protection
Online Help: {
if (%max.protect == ON) { max.help }
if (%norm.protect == ON) { norm.help }
if (%min.protect == ON) { min.help }
}
-
Max Protection Options
.Turn On: {
.set %max.protect ON
.set %norm.protect OFF
.set %min.protect OFF
.rline @Flood Protection 2 10Maximum Protection:2 %max.protect
.rline @Flood Protection 6 10Normal Protection:2 %norm.protect
.rline @Flood Protection 10 10Minimum Protection:2 %min.protect
}
.Turn Off: {
.set %max.protect OFF
.rline @Flood Protection 2 10Maximum Protection:2 %max.protect
}
.-
.Max Characters Allowed: {
.set %max.char $$?="How many characters? (rec. 150)"
.rline @Flood Protection 3 10~ Max Characters Allowed:2 %max.char
}
.Max Msgs Allowed: {
.set %max.msg $$?="How many msgs? (rec. 2)"
.rline @Flood Protection 4 10~ Max Msgs Allowed:2 %max.msg
}
.Max CTCPs Allowed: {
set %max.ctcp $$?="How many CTCPs? (rec. 2)"
.rline @Flood Protection 5 10~ Max CTCPs Allowed:2 %max.ctcp
}
Normal Protection Options
.Turn On: {
.set %norm.protect ON
.set %max.protect OFF
.set %min.protect OFF
.rline @Flood Protection 2 10Maximum Protection:2 %max.protect
.rline @Flood Protection 6 10Normal Protection:2 %norm.protect
.rline @Flood Protection 10 10Minimum Protection:2 %min.protect
}
.Turn Off: {
.set %norm.protect OFF
.rline @Flood Protection 6 10Normal Protection:2 %norm.protect
}
.-
.Characters Allowed: {
.set %norm.char $$?="How many characters? (rec. 300)"
.rline @Flood Protection 7 10~ Max Characters Allowed:2 %norm.char
}
.Msgs Allowed: {
.set %norm.msg $$?="How many msgs? (rec. 5)"
.rline @Flood Protection 8 10~ Max Msgs Allowed:2 %norm.msg
}
.CTCPs Allowed: {
.set %norm.ctcp $$?="How many CTCPs? (rec. 5)"
.rline @Flood Protection 9 10~ Max CTCPs Allowed:2 %norm.ctcp
}
Min Protection Options
.Turn On: {
.set %min.protect ON
.set %max.protect OFF
.set %norm.protect OFF
.rline @Flood Protection 2 10Maximum Protection:2 %max.protect
.rline @Flood Protection 6 10Normal Protection:2 %norm.protect
.rline @Flood Protection 10 10Minimum Protection:2 %min.protect
}
.Turn Off: {
.set %min.protect OFF
.rline @Flood Protection 10 10Minimum Protection:2 %min.protect
}
.-
.Characters Allowed: {
.set %min.char $$?="How many characters? (rec. 500)"
.rline @Flood Protection 11 10~ Max Characters Allowed:2 %min.char
}
.Msgs Allowed: {
.set %min.msg $$?="How many msgs? (rec. 7)"
.rline @Flood Protection 12 10~ Max Messages Allowed:2 %min.msg
}
.CTCPs Allowed: {
.set %min.ctcp $$?="How many CTCPs? (rec. 7)"
.rline @Flood Protection 13 10~ Max CTCPs Allowed:2 %min.ctcp
}
-
Close:/.window -c @Flood Protection
}
on 1:TEXT:*:?: {
if (%max.protect == ON) { goto max.protect }
elseif (%norm.protect == ON) { goto norm.protect }
elseif (%min.protect == ON) { goto min.protect }
:max.protect
inc % $+ $address($nick,3) $+ msgflood 1
.timer 1 10 .unset % $+ $address($nick,3) $+ msgflood
if (% [ $+ [ $address($nick,3) [ $+ [ msgflood ] ] ] ] == %max.msg) {
ignore -pu60 $wildsite
.timer 1 60 .notice $nick 60 seconds ignore has been completed.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of messages in 10 seconds. $nick has been ignored for 60 seconds.
.notice $nick 4Msg Flood:10 Triggered. You are being ignored for 60 seconds.
.unset % $+ $address($nick,3) $+ msgflood
}
:norm.protect
inc % $+ $address($nick,3) $+ msgflood 1
.timer 1 10 .unset % $+ $address($nick,3) $+ msgflood
if (% [ $+ [ $address($nick,3) [ $+ [ msgflood ] ] ] ] == %norm.msg) {
ignore -pu60 $wildsite
.timer 1 60 .notice $nick 60 seconds ignore has been completed.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of messages in 10 seconds. $nick has been ignored for 60 seconds.
.notice $nick 4Msg Flood:10 Triggered. You are being ignored for 60 seconds.
.unset % $+ $address($nick,3) $+ msgflood
}
:min.protect
inc % $+ $address($nick,3) $+ msgflood 1
.timer 1 10 .unset % $+ $address($nick,3) $+ msgflood 1
if (% [ $+ [ $address($nick,3) [ $+ [ msgflood ] ] ] ] == %min.msg) {
ignore -pu60 $wildsite
.timer 1 60 .notice $nick 60 seconds ignore has been completed.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of messages in 10 seconds. $nick has been ignored for 60 seconds.
.notice $nick 4Msg Flood:10 Triggered. You are being ignored for 60 seconds.
.unset % $+ $address($nick,3) $+ msgflood
}
}
ctcp 1:*: {
if (%max.protect == ON) { goto max.protect }
elseif (%norm.protect == ON) { goto norm.protect }
elseif (%min.protect == ON) { goto min.protect }
:max.protect
inc % $+ $address($nick,3) $+ ctcpflood 1
.timer 1 10 .unset % $+ $address($nick,3) $+ ctcpflood 1
if (% [ $+ [ $address($nick,3) [ $+ [ ctcpflood ] ] ] ] == %ctcp.msg) {
ignore -tu60 $wildsite
.timer 1 60 .notice $nick 60 seconds ignore has been completed.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of CTCPs in 10 seconds. $nick has been ignored for 60 seconds.
.notice $nick 4CTCP Flood:10 Triggered. You are being ignored for 60 seconds.
.unset % $+ $address($nick,3) $+ ctcpflood
}
:norm.protect
inc % $+ $address($nick,3) $+ ctcpflood 1
.timer 1 10 .unset % $+ $address($nick,3) $+ ctcpflood
if (% [ $+ [ ctcpflood [ $+ [ $nick ] ] ] ] == %norm.ctcp) {
ignore -tu60 $wildsite
.timer 1 60 .notice $nick 60 seconds ignore has been completed.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of CTCPs in 10 seconds. $nick has been ignored for 60 seconds.
.notice $nick 4CTCP Flood:10 Triggered. You are being ignored for 60 seconds.
.unset % $+ $address($nick,3) $+ ctcpflood
}
:min.protect
inc % $+ $address($nick,3) $+ ctcpflood 1
.timer 1 10 .unset % $+ $address($nick,3) $+ ctcpflood
if (% [ $+ [ $address($nick,3) [ $+ [ ctcpflood ] ] ] ] == %min.ctcp) {
ignore -tu60 $wildsite
.timer 1 60 .notice $nick 60 seconds ignore has been completed.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of CTCPs in 10 seconds. $nick has been ignored for 60 seconds.
.notice $nick 4CTCP Flood:10 Triggered. You are being ignored for 60 seconds.
.unset % $+ $address($nick,3) $+ ctcpflood
}
}
on 1:TEXT:*:#: {
if (%max.protect == ON) { goto max.protect }
elseif (%norm.protect == ON) { goto norm.protect }
elseif (%min.protect == ON) { goto min.protect }
:max.protect
if ($len($parms) >= %max.char) {
if ($me isop $chan) { kick $chan $nick Character Flood: $len($parms) characters. }
ignore -cu60 $wildsite
.timer 1 60 .notice $nick You have been taken off ignore. | echo 10 -a $nick has been taken off ignore.
.notice $nick 4Character Flood:10 Triggered. You have been ignored for 60 seconds.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of characters in one line of text. $nick has been ignored for 60 seconds.
}
:norm.protect
if ($len($parms) >= %norm.char) {
if ($me isop $chan) { kick $chan $nick Character Flood: $len($parms) characters. }
ignore -cu60 $wildsite
.timer 1 60 .notice $nick You have been taken off ignore. | echo 10 -a $nick has been taken off ignore.
.notice $nick 4Character Flood:10 Triggered. You have been ignored for 60 seconds.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of characters in one line of text. $nick has been ignored for 60 seconds.
}
:min.protect
if ($len($parms) >= %min.char) {
if($me isop $chan) { kick $chan $nick Character Flood: $len($parms) characters. }
ignore -cu60 $wildsite
.timer 1 60 .notice $nick You have been taken off ignore. | echo 10 -a $nick has been taken off ignore.
.notice $nick 4Character Flood:10 Triggered. You have been ignored for 60 seconds.
echo 10 -a 4Warning:10 $nick has exceeded your allowable number of characters in one line of text. $nick has been ignored for 60 seconds.
}
}