- on @*:JOIN:#: {
- if (!$regex($site,/(2001[:]67c[:]2f08[:]|192[.]184[.]9[.]108|192[.]184[.]10[.]118|192[.]184[.]10[.]9|192[.]184[.]8[.]73|[.]irccloud[.]com)/i)) {
- set -z %door. [ $+ [ $wildsite ] $+ . $+ [ $chan ] $+ . $+ [ $network ] ] 3
- }
- }
- on @*:part:#: {
- if (!$regex($site,/(2001[:]67c[:]2f08[:]|192[.]184[.]9[.]108|192[.]184[.]10[.]118|192[.]184[.]10[.]9|192[.]184[.]8[.]73|[.]irccloud[.]com)/i)) {
- if (%door. [ $+ [ $wildsite ] $+ . $+ [ $chan ] $+ . $+ [ $network ] ]) {
- if (!$Timer($network $+ #)) { .raw MODE $chan +R-k Rev-door | .Timer $+ $network $+ # 1 5 MODE $chan -R }
- Wbmask2022 $nick $chan
- unset %door. [ $+ [ $wildsite ] $+ . $+ [ $chan ] $+ . $+ [ $network ] ]
- }
- }
- }
- alias Wbmask2022 {
- if ($regex($address($1,2),/(2001[:]67c[:]2f08[:]|192[.]184[.]9[.]108|192[.]184[.]10[.]118|192[.]184[.]10[.]9|192[.]184[.]8[.]73|[.]irccloud[.]com)/i)) { halt }
- else { putmode -t0 $2 +b $regsubex($address($1,14),/[*?]+/g,*) }
- }
- On !^*:JOIN:#: {
- if ($nick(#,$me,@&~%)) {
- var %join.flood = $+($left($nick,5),*!*@*)
- var %filterednickXLZx `^-_\|}{[] | if ($regex($nick,/[\Q $+ %filterednickXLZx $+ \E]/g) >= 1) { set -u3 %clnicks1 $addtok(%clnicks1,$nick,44) }
- if (%join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] == $null) {
- set -u3 %join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] 1
- }
- else { inc %join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] }
- if (%join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] >= 3) {
- set -u3 %clnicks1 $addtok(%clnicks1,$nick,44)
- putmode $chan +b $mask($fulladdress,2)
- if (%modechan1R != $true) {
- .raw mode $chan +R-k %join.flood
- echo $chan ( cloned nicks Flood ) !!!!! Channel Locked !!!!! %version
- set -u5 %modechan1R $true
- .timer $+ mass $+ $chan 1 5 mode $chan -R
- }
- if ($nick(#,$me,@%&~)) { var %mcln 4 | while (%clnicks1) { kick $chan $gettok(%clnicks1,1- %mcln,44) (nick/host is trying to (re)join too fast -- throttled.) %version | %clnicks1 = $deltok(%clnicks1,1- %mcln,44) } }
- }
- }
- }
- on *:JOIN:#: {
- if (%Netsplit-Detected. [ $+ [ $chan ] $+ . $+ [ $network ] ]) { halt }
- if ($nick(#,$me,@&~%)) {
- if (!$regex($site,/(192[.]184[.]9[.]108|192[.]184[.]10[.]118|192[.]184[.]10[.]9|192[.]184[.]8[.]73|[.]pk|.*irccloud[.]com|.*mibbit.com|.*kiwiirc.com)/i)) { set -u5 %mjnicks. $+ $network $+ . $+ $chan $addtok($($+(%,mjnicks.,$network,.,$chan),2),$nick,44) | set -u5 $+(%,ipflood.,#) $addtok($($+(%,ipflood.,#),2),$mask($fulladdress,4),32) }
- if ($floodchk(jflood, 2, $network $chan) > 3) {
- if (!$Timer(mass $network #)) { .raw MODE $chan +R-k Mass.Join | .Timer $+ $chan 1 5 MODE $chan -R | .timer $+ mass $+ $chan 1 5 mode $chan -R | .Timer $+ $network $+ # 1 5 MODE $chan -R }
- .timersuper.kickz. [ $+ [ # ] ] -m 1 10 super.modez $safe2018($chan)
- .timermjkick $+ $network $+ $chan -m 1 10 if ($($+(%,mjnicks.,$network,., $safe2018($chan) ),2)) $({,0) kick $safe2018($chan) $!($+(%,mjnicks.,$network,., $safe2018($chan) ) ,2) *** $+ Mass Joins Detected $+ *** $(|) unset $!+(%,mjnicks.,$network,., $safe2018($chan) ) $(},0)
- if ($numtok($($+(%,mjnicks.,$network,.,$chan),2),44) == 4) {
- kick $chan $($+(%,mjnicks.,$network,.,$chan),2) Mass Joins detected %version
- .timermjkick $+ $network $+ $chan off
- unset $eval($+(%,mjnicks.,$network,.,$chan),1)
- }
- }
- }
- }