bind pub n .+@ Ajoutop
proc Ajoutop {nick uhost hand chan arg}{global botnick
set nick [lindex$arg0]if{[validuser $nick]}{
puthelp "NOTICE $hand :$nick est déja Ajouté Comme Propriétaire"return0}
putquick "MODE $chan +o $nick"
adduser $nick$nick*!*@*
chattr $nick +a
putserv "PRIVMSG $::chanback : $nick fait maintenant partie de la Team $::Nomback ! Bienvenue. :) "}
Mais voilà, le soucis est que quand je tape .+@ test ca ajoute bien la personne, MAIS si quelqu'un arrive avec le pseudo tests donc avec un S en plus que le pseudo ajouté avant, et bien vu que le Flag est +a, le bot Op la personne.
J'aimerais que quand j'ajoute la personne et bien qu'apres le bot detecte le pseudo EXACTE.
bind pub n .+@ Ajoutop
proc Ajoutop {nick uhost hand chan arg}{global botnick
set nick [lindex$arg0]if{[validuser $nick]}{
puthelp "NOTICE $hand :$nick est déja Ajouté Comme Propriétaire"return0}set vhost "Le hostname de la personne"if{$uhost == $vhost}{
putquick "MODE $chan +o $nick"
adduser $nick$nick*!*@*
chattr $nick +a
putserv "PRIVMSG $::chanback : $nick fait maintenant partie de la Team $::Nomback ! Bienvenue. :) "}else{return0}
Avec ceci seul celui qui aura le host autorisé au pseudo pour monter en grade..
mais il y a un conflit avec une commande pour se op.
voici le premier code
tcl
bind pub n .+@ Ajoutop
proc Ajoutop {nick uhost hand chan arg}{global botnick
set nick [lindex$arg0]if{[validuser $nick]}{
puthelp "NOTICE $hand :$nick est déja Ajouté Comme Propriétaire"return0}
putquick "MODE $chan +o $nick"
adduser $nick$nick!*@*
chattr $nick +na
putserv "PRIVMSG $::chanback : $nick fait maintenant partie de la Team $::Nomback ! Bienvenue. :) "}
Donc maintenant quand j'ajoute USER en proprietaire et que USERS arrive sur le salon ca ne op pas la mauvaise personne.
Mais par contre maintenant quand la bonne personne donc USER prend une extension exemple : USER|mange
et bien le code suivant ne fonctionne plus
voici le code
tcl
bind pub o !op op
proc op {nick host hand chan arg}{set nicks [join[lindex[split$arg]0]]if{$nicks == ""}{
putserv "privmsg $::chanback :$nick vient de se OPER sur $chan"
putquick "mode $chan +o $hand"}else{
putserv "privmsg $::chanback :$nick vient de OPER $nicks sur $chan"
putquick "mode $chan +o $nicks"}}
Apparement le bot ne reconnait plus le flag donné quand la personne prend une extension, car meme l'auto-op de l'eggdrop flag +a ne reop pas l'user.
Comment je peux faire pour que la commande !op detecte aussi bien USER que USER|mange ??
Je viens de voir que si j'ajoute USER et bien USER est op automatiquement par l'eggdrop car dans la commande on ajoute le Flag +a
ensuite avec la commande de !op et bien USER peut se op.
Par contre si USER met une extension donc USER|FUME et bien niubot deop USER|FUME et l'eggdrop ne reop pas USER|FUME alors qu'avec le Flag +a l'eggdrop devrais le reoper.
Et pareil quand USER|FUME tape !op et bien ca ne l'op pas.
Je redonne le code
tcl
bind pub n .+@ Ajoutop
proc Ajoutop {nick uhost hand chan arg}{global botnick
set nick [lindex$arg0]if{[validuser $nick]}{
puthelp "NOTICE $hand :$nick est déja Ajouté Comme Propriétaire"return0}
putquick "MODE $chan +o $nick"
adduser $nick$nick!*@*
chattr $nick +na
putserv "PRIVMSG $::chanback : $nick fait maintenant partie de la Team $::Nomback ! Bienvenue. :) "}
bind pub o !op op
proc op {nick host hand chan arg}{set nicks [join[lindex[split$arg]0]]if{$nicks == ""}{
putserv "privmsg $::chanback :$nick vient de se OPER sur $chan"
putquick "mode $chan +o $hand"}else{
putserv "privmsg $::chanback :$nick vient de OPER $nicks sur $chan"
putquick "mode $chan +o $nicks"}}
bind pub n .+@ Ajoutop
proc Ajoutop {nick uhost hand chan arg}{global botnick
set nick [lindex$arg0]if{[validuser $nick]}{
puthelp "NOTICE $hand :$nick est déja Ajouté Comme Propriétaire"return0}set vhost "Le hostname de la personne"if{$uhost == $vhost}{
putquick "MODE $chan +o $nick"
adduser $nick$nick*!*@*
chattr $nick +a
putserv "PRIVMSG $::chanback : $nick fait maintenant partie de la Team $::Nomback ! Bienvenue. :) "}else{return0}}
Et bien ca ne m'ajoute plus personne. Et si je doit remplacer "Le hostname de la personne" par le host de la personne en question,
ca ne marchera que pour la personne. Moi je veux que ca fonctionne pour toutes les personnes que j'ajouterais par la suite.
Ton souci est en fait que tu ne sais pas quel masque tu veux ajouter.
Tu nous dis que TEST (nick principal) doit être reconnu, TESTS (qui est un autre utilisateur) non mais TEST|Mange oui.
Je pense que tu n'as pas tout compris à la gestion des utilisateurs par eggdrop. Surtout si tu travailles par vhost, pourquoi est-ce que tu t'embètes avec les nicks ?
Bin en fait je cherche un moyen d'ajouter quelqu'un par ma commande .+@ et que le bot le reconnaisse meme si la personne a une extension par la suite.
Mais que si une autre personne qui a un pseudo presque identique et bien que celle là, ca ne la prenne pas.
Mais le soucis je ne sais pas comment faire.
Je precise que TEST|MANGE est la meme personne que TEST sauf qu'il a une extension, alors que TESTS n'est pas la meme personne c'est juste que le pseudo est presque pareil.
loulou7593 a écrit :Il faudrais donc que quand je tape .+@ ca m'ajoute le pseudo et le host ou bien que le host de la personne, mais quand je rajoute
tcl
adduser $nick$nick!*@*$host
et bien en host ca ajoute le miens :s
C'est normal, le $host récupéré par la procédure est celui de la personne qui lance la commande.
Tout d'abord, dans ta procédure, n'utilise $nick pour ta "victime" alors qu'il est déjà utilisé par la personne qui déclenche la commande. Choisis plutôt $unick ou $victim.
Ensuite, pour avoir quelque chose du genre test*!*@host, il y a deux choses à faire:
tcl
set uhost [getchanhost $unick$chan]
Ensuite, tu peux utiliser la fonction Masque utilisateurs pour récupérer le bon mask que tu veux ajouter: