I have written a tcl script that makes a simple function: if someone changes the +l on a chan or removes it, he gets +d and kicked ; and if he's not added on the botnet, he's added with +d flags.
But there's a problem: on every split, the bot adds an user with +d flag, like:
(bot): | *!irc.cs.
(bot): | *!irc.cs.
(bot): | *!irc.cs.
(bot): | *!irc.ee.
(bot): | *!irc.ee.
(bot): | *!irc.ee.
here's a proc:
Code: Select all
proc remove_limit_mode {nick uhost hand chan mode victim} {
global lamorhand fidenet hubbot
if {$mode == "-l" && ![string match "*.*" $nick]} {
if {!(([matchattr $hand +o]) && ([matchattr $hand +b] || [matchattr $hand +n] || [matchattr $hand +b]))} {
if {[lsearch -exact [ channel info $chan ] "+noremovelimit" ] == -1} {return 0}
if {[isbotnetnick $hubbot]} {
dccbroadcast "MODIFICA NON AUTORIZZATA DEL LIMITE SU $chan DA PARTE DI $nick!$uhost ($lamorhand)"
}
set lamorhand [nick2hand $nick]
if {![validuser $lamorhand]} {
adduser $nick *!$uhost
chattr $nick |-ofmn $chan
chattr $nick |+dk $chan
}
chattr $lamorhand |+dk $chan
putquick "MODE $chan -o+b+l $nick *!*$uhost 1"
putquick "KICK $chan $nick :no no,lame!"
}
}
}
if {$mode == "-l" && ![string match "*.*" $nick]} {
was a good way to block such behaviour... but it doesn't worked.
Any help?
thanks all