on ^1:JOIN:#: {
;
; Protección antibots.
;
if ( ( $antiboth(check, $network, $chan) == 1) ) { halt }
}
on ^*:QUIT {
;
; Protección antibots.
;
var %num = 1
var %schan = $comchan($nick, 1)
; Recorre todos los canales verificando si alguno tiene la protección
; anticlones activada.
;
while ( %schan ) {
if ( $antiboth(check, $network, %schan) == 1 ) {
halt
}
inc %num
%schan = $comchan($nick, %num)
}
}
on ^*:PART:# {
;
; Auto-Notice on Part.
;
if ( ($nick != $me) && (%se_anoticeenablepart == 1) ) { notice $nick %se_anoticepart }
;
; Protección antibots.
;
if ( ($antiboth(check, $network, $chan) == 1) && ( $notifyhdr(check, $network, $nick) != 1 ) ) { halt }
;
; Agrega el nick o actualiza la lista de seen.
;
;seenadd $nick
}
on ^*:KICK:# {
;
; Protección antibots.
;
if ( $antiboth(check, $network, $chan) == 1 ) { halt }
}
on ^*:NOTICE:*:* {
;
; Protección antibots.
;
if ( $antiboth(check, $network, $chan) == 1 ) { halt }
}
raw 352:* {
; echo 4 -a $4
if (%se_action == megaignore) {
;
; MegaIgnore :P
;
/ignore @ $+ $4
halt
}
}
raw 315:* {
set %se_action $null
}
on 1:LOAD {
var %sepath = $findfile($mircdir, seytuff.ini, 1)
var %ipos = 0
if ( %sepath != $null) {
%ipos = $pos( %sepath, seytuff.ini )
if ( %ipos > 0 ) {
dec %ipos
%sepath = $left( %sepath, %ipos )
}
;
; Establece las variables globales iniciales.
;
set %se_path %sepath
set %se_version 0.1 beta [?]
set %se_inipos 0
set %se_securon 0
set %se_block_notice 0
set %se_block_ctcp 0
set %se_block_dccsend 0
set %se_block_dccchat 0
set %se_block_reply $null
set %se_queryblock 0
set %se_queryblocklogging 0
set %se_queryblocknotify 0
set %se_queryautomsg No te leo, no jodas.
set %se_anoticeenable 0
set %se_anoticeenablepart 0
set %se_anotice Seytuff Script v0.1
set %se_anoticepart asdf
set %se_encryptmode 0
set %se_action $null
set %se_querylogfile %se_path $+ querylog.txt
set %se_configfile %se_path $+ config.ini
}
}
alias /securon {
;
; Activar la protección antibot en el canal actual.
;
if ( $antiboth(check, $network, $chan) != 0 ) {
;
; La protección está activada en el canal actual.
;
echo 7 * El aura contra sombras ya ha sido activada en $chan
}
else {
;
; Activa la protección en el canal actual.
;
set %se_securon 1
if ( $antiboth(set, $network, $chan) == 1 ) {
echo 7 * $me ha invocado la protección contra sombras malignas en $chan $+ ...
}
else {
echo 7 * Los espectros han ganado esta batalla, protección no activada.
}
}
}
alias /securoff {
set %se_securon 0
if ( $antiboth(unset, $network, $chan) == 1 ) {
echo 7 * La protección contra espectros ha sido eliminada en $chan
}
}
alias antiboth {
;
; Manipula el control anticlones/antibot
;
; $1 = { set; unset; check }, $2 = Network, $3 = Channel
;
var %icnt = $readini(%se_configfile, antibot, 0)
var %sitem = $null, %schanlst = $null
var %chancnt = 0, %schan = $null, %snet = $null
var %i = 1, %ind = 1
while ( %i <= %icnt ) {
;
; Lee cada linea de la configuración antibot.
; Formato de linea: $network!#canal01;#canal02;#canalN
;
%sitem = $readini( %se_configfile, antibot, %i )
%snet = $gettok(%sitem, 1, 33)
if ( $2 == %snet ) {
;
; Se encontró la red especificada.
;
%schanlst = $gettok(%sitem, 2, 33)
if ($1 == check) {
;
; Verifica si el canal especificado tiene habilitada la protección antibot.
;
%chancnt = $numtok(%schanlst, 59)
while (%ind <= %chancnt) {
%schan = $gettok(%schanlst, %ind, 59)
if ($3 == %schan ) {
return 1
}
inc %ind
}
return 0
}
elseif ( ($1 == set) || ($1 == unset) ) {
if ( $1 == unset ) {
;
; Elimina la protección del canal especificado.
;
%schanlst = $remtok(%schanlst, $3, 1, 59)
}
else {
;
; Agrega la protección del canal especificado.
;
%schanlst = $addtok(%schanlst, $3, 59)
}
%sitem = %snet $+ ! $+ %schanlst
;
; Actualiza los datos en el archivo de configuración.
;
writeini %se_configfile antibot %i %sitem
return 1
}
}
inc %i
}
if ( $1 == set ) {
;
; Agrega la red en el caso de que todavía no exista en la config.
;
%sitem = $2 $+ ! $+ $3
iniadd %se_configfile antibot %sitem
return 1
}
else {
return 0
}
}
alias megaignore {
;
; $1 = $chan, $2 = mask
;
set %se_action megaignore
set %se_actionarg $1 $2
who $1
}