Aide pour petit script pour IRC (débutant + python)

Signaler
Messages postés
4
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
13 août 2007
-
Messages postés
4
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
13 août 2007
-
Bonjour!
 
J'explique la situation en premier lieu. Il y a un jeu qui s'appelle "!bombe". C'est une bombe qui s'allume en tappant "!allume" et on peut soit 1- la repasser à quelque par "!bombe autre_pseudo" ou 2- la désamorcer par "!desamorce" après un délai de 2 minutes la bombe éclate (le robot kick l'user qui a la bombe entre les mains). Ce qui est quand même assez énervant, même quand nous ne somme pas devant notre écran d'ordinateur.
 
Maintenant j'explique ce que je veux faire. Je souhaite faire un addons qui permettra de désactiver la bombe automatiquement lors qu'elle tombe sur moi. Donc si mon pseudo est "caramel" et un user "chocolat" et que ce dernier tappe "!bombe caramel" mon addons réagit automatiquement sur le chan avec cette commande là "!desamorce"
 
Voici ce que j'ai fais
def desamorce(word, word_eol, userdata):


    if word[1] == "!bombe" and word[2] == "caramel":


        xchat.command("say !desamorce")


        xchat.command("say Non non, pas sur moi. Essais sur les autres " +word[0])


     


    return xchat.EAT_NONE


 


EVENTS = [


  ("Channel Message", 1),


  


 ]


for event in EVENTS:


    xchat.hook_print(event[0], desamorce, event)


Avec ce que j'ai lu cela devrait fonctionner, mais et las, non. Le script se charge avec aucune erreur, mais ça ne fonctionne pas. Pourquoi ? je ne le sais pas. Mais par contre si j'enlève le " and word[2] == "caramel" " il reste juste une variable le world[1] et cela fonctionne parfaitement. Sauf qu'il faut avoir mon pseudo, car n'importe qui tappe "!bombe blabla" mon addon s'éxecutera.

7 réponses

Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Perso je connais rien au python mais si tu dis que ca marche quand tu vire la condition sur ton pseudo, c'est que a mon avis il y a un probleme de syntaxe.
Dailleurs jte conseille de poster sur des forum spécialisé python parce que ici je ne sais même pas si il y a des personnes actif qui connaisse le python :)
Messages postés
1
Date d'inscription
mardi 6 mars 2007
Statut
Membre
Dernière intervention
12 août 2007

bonjour [auteurdetail.aspx?ID=1125018 SteFoy] !!!
Messages postés
4
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
13 août 2007

Merci wims. J'avais déjà recherché sur google un forum traitant  tous (ou presque) les langages informatiques. et j'avais poster sur un forum, mais ceci n'a donné aucun résultats. Même pas une seule réponse ou proposition. Donc j'essais ici. Peut-être que ... on ne sait pas.

Mais sinon, si je le trouve l'erreur, je postera, mais personnalement avec mon niveau, je ne vois rien.
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
J'ai cherché un peu : http://www.ebgm.jussieu.fr/~fuchs/python/conditions.html

apparament ce que tu fais a l'air bon, tu est sur que les gillement sont nécéssaire ? (sur le lien ci dessus, les exemple ne contienne pas de guillemet) : if x 2 and y 2:

Essaye sans, et essaye aussi de mettre tes if a la suite sans opérateur ET :

 

if word[1] == "!bombe":
if word[2] == "caramel":
reste...

Je dis vraiment ça comme ça, ça ne coute rien d'essayer :)
Messages postés
969
Date d'inscription
lundi 16 juin 2003
Statut
Membre
Dernière intervention
1 juillet 2012
1
Bonsoir...

Euh... http://www.pythonfrance.com/ ?
Messages postés
2466
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
1 août 2010
1
Oh, un vilain :o
Messages postés
4
Date d'inscription
vendredi 10 août 2007
Statut
Membre
Dernière intervention
13 août 2007

Bonjour :)

Sans les guillements (")  et sur 2 lignes
line 10   if word[1] == !bombe :
SyntaxError: invalid syntax
<hr size="2" width="100%" />
Un à la suite de l'autre =>
line 11   if word[2] == "Fruitopia":
IndentationError: expected an indented block
(la 10e ligne if word[1] ... à passé, mais pas la 2e.
<hr size="2" width="100%" />
Sans les guillements et sur la même ligne
line 10 if word[1] == !bombe and word[2] == Fruitopia :
SyntaxError: invalid syntax

<hr size="2" width="100%" />et pour coolman002 j'ai déjà poster sur cette page. On remaarque bien que le premier poste dans "députant)e) c'est le même qu'ici, mais j'ai pas encore eu de réponse malgré ses 32 vue.

Bref je ne pense pas que python est fait pour moi. Je vais essayer de lire des tutos sur le perl et m'attaquer sur ce lnagage là. Pour python je pense que je vais l'oublier. Domage car avant de choisir j'avais regarder des tutos entre perl et python et c'est python qui me semblait le plus facile. Heum je pense que je me suis trompé :x