[Michi]
11.04.2006, 22:27
Hi ich bastel gerade an einer TCL bei der die ChannelOwner und ChannelMaster eines Channels selber mit einem Befehl (.addop nick) im Channel sich ihre Ops adden können. Das Problem ist jetzt, dass der Eggy die Befehle in der Proc nicht ausführt :mauer:
Hier mal der Code:
proc add_op {nick host handle chan text} {
global bnick
global debugchan
global addedop
if {[matchattr $handle -|n $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && ![validuser $text] || [matchattr $handle -|m $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && ![validuser $text]} {
adduser $text
chattr $text +o $chan
putserv "notice $text :Du wurdest als neuer ChannelOp in $chan geaddet. Bitte setze mit \"\/msg $bnick pass dein_passwort\"\ dein Loginpasswort."
putserv "notice $nick :$text wurde Erfolgreich als ChannelOp in $chan geaddet."
putserv "privmsg $debugchan :$addedop $nick hat neuen Op $text in $chan geaddet."
}
if {[matchattr $handle -|n $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && [validuser $text] || [matchattr $handle -|m $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && [validuser $text]} {
chattr $text +o $chan
putserv "notice $text :Du wurdest als neuer ChannelOp in $chan geaddet."
putserv "notice $nick :$text wurde Erfolgreich als ChannelOp in $chan geaddet."
putserv "privmsg $debugchan :$addedop $nick hat neuen Op $text in $chan geaddet."
}
if {![onchan $text $chan]} {
putserv "notice $nick :Der User $text ist nicht in $chan"
}
}
Wenn ich dann .addop lolo gemacht habe kommen zwar die putserv Messages aber er addet ihn nicht und gibt auch keine Flags! Zur Info die Handle existiert nochnicht also sollte er die Befehle in nach der 1. IF ausführen mit adduser und chattr, tut er aber nicht.
Hoffe mir kann da einer helfen. Bin noch ziemlich Anfänger im TCL ^^
thx
Hier mal der Code:
proc add_op {nick host handle chan text} {
global bnick
global debugchan
global addedop
if {[matchattr $handle -|n $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && ![validuser $text] || [matchattr $handle -|m $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && ![validuser $text]} {
adduser $text
chattr $text +o $chan
putserv "notice $text :Du wurdest als neuer ChannelOp in $chan geaddet. Bitte setze mit \"\/msg $bnick pass dein_passwort\"\ dein Loginpasswort."
putserv "notice $nick :$text wurde Erfolgreich als ChannelOp in $chan geaddet."
putserv "privmsg $debugchan :$addedop $nick hat neuen Op $text in $chan geaddet."
}
if {[matchattr $handle -|n $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && [validuser $text] || [matchattr $handle -|m $chan] && [matchattr $handle L|- *] && [onchan $text $chan] && [validuser $text]} {
chattr $text +o $chan
putserv "notice $text :Du wurdest als neuer ChannelOp in $chan geaddet."
putserv "notice $nick :$text wurde Erfolgreich als ChannelOp in $chan geaddet."
putserv "privmsg $debugchan :$addedop $nick hat neuen Op $text in $chan geaddet."
}
if {![onchan $text $chan]} {
putserv "notice $nick :Der User $text ist nicht in $chan"
}
}
Wenn ich dann .addop lolo gemacht habe kommen zwar die putserv Messages aber er addet ihn nicht und gibt auch keine Flags! Zur Info die Handle existiert nochnicht also sollte er die Befehle in nach der 1. IF ausführen mit adduser und chattr, tut er aber nicht.
Hoffe mir kann da einer helfen. Bin noch ziemlich Anfänger im TCL ^^
thx