![]() |
[Résolu] Problème sur un if - Version imprimable +- Communauté Eggdrop (https://forum.eggdrop.fr) +-- Forum : Eggdrop et scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=8) +--- Forum : Scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=4) +--- Sujet : [Résolu] Problème sur un if (/showthread.php?tid=1654) Pages :
1
2
|
Problème sur un if - Alucard`68 - 03/02/2017 Bonjour à tous , Alors voila j'ai un souci sur un if je me suis fortement inspiré de se post pour le créer https://forum.eggdrop.fr/archive/index.php?thread-1368.html Voici le code non modifié : tcl
Et le code modifié en m'inspirant donc du post cité plus haut. tcl
J'ai biensur créer un user "modo" avec une liste de vhost et ensuite j'ai rajouter le flog "o" à cette user et j'ai fait la même chose avec un user "modo1" avec une autre list de vhost et rajouter le flag "m" à cette user. Je voudrais que lorsque un des membres du staff dont son vhost fait parti du pseudo "modo" de l'eggdrop tape !modo sa lui renvoie juste les commandes d'aide à la modération. Et que quand un des membres du staff apratenant à l'autre groupe "modo1" lui revoie toute les commandes i compris celles de gestions. Je me suis donc fortement inspirer du code dans le post cité plus haut pour faire la modification. Malheureusement celui ci n'est plus fonctionnel suite à la modification rien ne se passe quand je tape !modo sur le salon ou est le bot et aucun message d'erreur en PL. Comment puis-je arrivé à mes fins ? Bien à vous. Bye. RE: Problème sur un if - aliasangelius - 04/02/2017 Salut, tcl
Utilise matchattr pour vérificateur de flag dans un "if" Exemple : Citation :matchattr <handle> <flags> [channel] Ce qui donne en détails : tcl
Le vérificateur : Citation :matchattr Ont regarde si la personne à accès avec son handle "pseudo" Citation :$hand Ont vérifie s'il à le flag requis : Citation :o Ont vérifie le salon : Citation :$c A savoir $c et appeler par un foreach qui regardes pour le salon Citation :foreach c [channels] { Voià, c'est plus ou moins ceci, si je ne fait pas d'erreurs d'explications. RE: Problème sur un if - CrazyCat - 04/02/2017 aliasangelius, je ne comprends pas pourquoi tu veux lui faire changer son principe et compliquer son script... Surtout que ce n'est pas parce qu'il a déclaré qu'un handle s'appelait "modo" que cet handle a le flag +o et qu'il n'y a aucun intérêt à boucler sur les canaux alors qu'on sait exactement sur quel canal la commande a été lancée... Alucard`68, fais un putlog "$hand" au début de ta procédure pour savoir ce que voit réellement l'eggdrop. RE: Problème sur un if - Alucard`68 - 04/02/2017 Aliasangelius, j'ai essayé ton code il est fonctionnel mais me revois dans une boucle infini le resultat de la commande :) CrazyCat, j'ai installé le putlog en début de procédure voici le résultat Code : [12:07:27] <Jarvis> [12:07:27] AngeDesOmbres Je comprend pas puisque les membres du staff on accès au commande :/ Comment résoudre se problème ? Merci RE: Problème sur un if - CrazyCat - 04/02/2017 Est-ce que tu n'aurais pas mis ton host pour plusieurs handle ? Que donne le .whois angedesombres et le .whois modo ? RE: Problème sur un if - Alucard`68 - 04/02/2017 non enfin je crois pas du moi voila le résultat des comandes demandé et j'ai aussi rajouter .whois modo1 Code : [12:39:35] <AngeDesOmbres> .whois AngeDesOmbres Ais-je fait une erreur lors de la création des users "modo" et "modo1" ? RE: Problème sur un if - CrazyCat - 04/02/2017 Donc c'est normal, ton host ne correspond pas à celui de modo ou modo1, mais à celui de AngeDesOmbres RE: Problème sur un if - Alucard`68 - 04/02/2017 ok donc comment faire pour que mon if fonctionne car la clairement le $hand ne renvois que moi comment faire pour qu'il renvoie aussi modo et modo1 ? RE: Problème sur un if - aliasangelius - 04/02/2017 (04/02/2017, 12:26)CrazyCat a écrit : aliasangelius, je ne comprends pas pourquoi tu veux lui faire changer son principe et compliquer son script... Surtout que ce n'est pas parce qu'il a déclaré qu'un handle s'appelait "modo" que cet handle a le flag +o et qu'il n'y a aucun intérêt à boucler sur les canaux alors qu'on sait exactement sur quel canal la commande a été lancée... tcl
Il à forcément le flag "o".. Pour la boucle sur les canal, c'est vrai j'aurais du faire autrement. RE: Problème sur un if - CrazyCat - 04/02/2017 (04/02/2017, 14:04)aliasangelius a écrit : Effectivement, je n'avais pas vu ça. Mais si modo et modo1 ont le flag +o, cela veut donc dire que ce n'est pas sur le flag qu'il peut faire la différence entre les deux groups. Donc c'est bien sur le handle. RE: Problème sur un if - Alucard`68 - 04/02/2017 "modo" a le flag "o" et "modo1" le flag "m" RE: Problème sur un if - CrazyCat - 04/02/2017 donc modo1 ne pourra jamais déclencher ta procédure, vu qu'elle est bloquée sur le +o. Change ton bind pour qu'il fonctionne sur "m", étant donné que les @ ont aussi le +m. RE: Problème sur un if - Alucard`68 - 04/02/2017 donc si j'ai bien compris de cette façon tcl
Testé mais non fonctionnel ou j'ai mal compris se que je devais faire :s Donc pour être sur qu'on se comprenne bien j'ai créé 2 user un "modo" avec flag "o" auquel j'ai rajouter différent vhost. J'ai procédé de même pour l'user "modo1" avec le flag "m" donc se que je veux c'est que si un modérateur tape !modo sa lui envois en notice uniquement les commandes de modérations. Et si un ircop ou chanmaster tape aussi !modo sa lui envoie les commandes de modérations mais aussi les commandes de gestion. J'espère être suffisament claire dans mes explications :) RE: Problème sur un if - Alucard`68 - 04/02/2017 Voila problème résolue :) de cette manière : tcl
Mais je comprend pas pourquoi avec matchattr cela fonctionne et pas avec $hand RE: Problème sur un if - CrazyCat - 05/02/2017 Ton problème n'est pas complètement résolu: ton bind doit être sur le "m", pas sur "o". Et si ça ne marche pas avec $hand... fais en un putlog et tu verras bien si l'eggdrop voit le bon handle. Il y a de fortes chances que le problème soit l'utilisateur avec lequel tu testes. |