]> gitweb.pimeys.fr Git - bots/deconnaisseur.git/commitdiff
Gestion des scores, version naïve 1.0
authorVincent Le Gallic <deconnaisseur@crans.org>
Sat, 5 May 2012 19:57:48 +0000 (21:57 +0200)
committerVincent Le Gallic <deconnaisseur@crans.org>
Sat, 5 May 2012 19:57:48 +0000 (21:57 +0200)
deconnaissances.acoeur.txt
deconnaissances.crans.txt
deconnaisseur.py

index b135eaebc9928857c8a8afe6a51dae6ae1668960..75b73d1d6653cb7adcdb97bf04bed82facb27731 100644 (file)
@@ -59,12 +59,6 @@ Hamster drame
 Hamster drame
 0
 %
-Actur : Jean-Paul, enlève la peau sur mes coups de soleil
-Les magnifiques
-Jean-Paul pèle mon dos
-Jean-Paul pèle mon dos
-0
-%
 Chanteur : Jules qui nettoie le pare-brise
 Espagnol
 Julio essuie(-| )glace(|s)
@@ -153,7 +147,7 @@ Roman : Le trio anti-moustiques
 Alexandre Dumas
 Les trois moustiquaires
 Les trois moustiquaires
-0
+1
 %
 Géographie : Les îles du doigt infecté
 Espagne
@@ -203,12 +197,6 @@ Ne me cuite pas
 Ne me cuite pas
 0
 %
-People: Pauvre Hotel de Luxe
-
-Pas riche Hilton
-Pas riche Hilton
-1
-%
 Chanteur : Patrick Belge
 J'attends Lola
 Patrick Bruxelles
@@ -251,6 +239,18 @@ Zizi impératrice
 Zizi impératrice
 0
 %
+Actur : Jean-Paul, enlève la peau sur mes coups de soleil
+Les magnifiques
+Jean-Paul pèle mon dos
+Jean-Paul pèle mon dos
+1
+%
+People: Pauvre Hotel de Luxe
+
+Pas riche Hilton
+Pas riche Hilton
+1
+%
 Recette de cuisine : Désaccord entre palmipèdes
 
 conflit de canards
index fde105019047baf4d5320bb9800505a1d0e51ebc..2bce1052fe478e31f2416b17382d6bf2bc414547 100644 (file)
@@ -1,16 +1,4 @@
 %
-Géographie : La pomme de terre belge du sud
-Le Cap
-La frite du sud
-La frite du sud
-1
-%
-Œuvre musicale : L'instrument de musique en travaux
-Amadeus
-La flûte en chantier
-La flûte en chantier
-1
-%
 Scientifique : Un Victor au prénom de vive controverse
 Pôle nord
 Polémique Victor
@@ -33,7 +21,7 @@ Ville : Valide vos réserves
 URSS
 Valide vos stocks
 Valide vos stocks
-1
+2
 %
 Littérature : L'amant de les dix rouleaux de ruban adhésif
 David Lawrence
@@ -239,12 +227,6 @@ La comète des Harley(|s)
 La comète des Harley
 1
 %
-Actrice : Bout de Sophie
-La boum
-Sophie morceau
-Sophie morceau
-1
-%
 Film : La cage aux petits flacons de verre
 Edouard Molinaro
 La cage aux fioles
@@ -509,12 +491,6 @@ L'épaule nord
 L'épaule nord
 1
 %
-Société secrète : Le clan des clowns
-Cagoule
-Le gugus(se|) clan
-Le gugusse clan
-2
-%
 Chanteur : Le Michel qui a pris beaucoup de poissons
 Laurette
 Michel belle pêche
@@ -677,12 +653,6 @@ Edith Pilaf
 Edith Pilaf
 1
 %
-Chanteuse : Fête des rois mages de principauté
-Ouragan
-Épiphanie de Monaco
-Épiphanie de Monaco
-1
-%
 Film : Le super tube de Pierre Perret devient femme de l'empereur
 
 Zizi impératrice
@@ -725,12 +695,6 @@ Francis 4L
 Francis 4L
 1
 %
-Lieu : Frontière d'enchanteur entre l'est et l'ouest
-Porte de Brandenburg
-Le mur de Merlin
-Le mur de Merlin
-1
-%
 Monument : L'insecte de Westminster
 Londres
 L'abeille de Westminster
@@ -743,12 +707,6 @@ Les îles panaris
 Les îles panaris
 1
 %
-Marque publicitaire : Cassoulet pour crocodile
-Conserves
-William saurien
-William saurien
-1
-%
 Chanteur : Jules qui nettoie le pare-brise
 Espagnol
 Julio essuie(-| )glace(|s)
@@ -767,6 +725,48 @@ Sylvester slalome
 Sylvester slalome
 1
 %
+Lieu : Frontière d'enchanteur entre l'est et l'ouest
+Porte de Brandenburg
+Le mur de Merlin
+Le mur de Merlin
+2
+%
+Marque publicitaire : Cassoulet pour crocodile
+Conserves
+William saurien
+William saurien
+2
+%
+Œuvre musicale : L'instrument de musique en travaux
+Amadeus
+La flûte en chantier
+La flûte en chantier
+2
+%
+Chanteuse : Fête des rois mages de principauté
+Ouragan
+Épiphanie de Monaco
+Épiphanie de Monaco
+2
+%
+Actrice : Bout de Sophie
+La boum
+Sophie morceau
+Sophie morceau
+2
+%
+Géographie : La pomme de terre belge du sud
+Le Cap
+La frite du sud
+La frite du sud
+2
+%
+Société secrète : Le clan des clowns
+Cagoule
+Le gugus(se|) clan
+Le gugusse clan
+2
+%
 Chanson : Les potes ne sont pas à tribord
 Georges Brassens
 Les copains babord
index 047ea8108385a8b8278d04c3a4b9e58cf99818b0..b8953e7d4f84614b96762f2c2e68e006eda84fcb 100755 (executable)
@@ -79,6 +79,7 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
         self.stay_channels=config_stay_channels
         self.play_channels=config_play_channels
         self.play_status={i:[0] for i in self.play_channels}
+        self.scores={}
 
     def give_me_my_pseudo(self,serv):
         serv.privmsg("NickServ","RECOVER %s %s"%(config_pseudo,config_password))
@@ -181,7 +182,8 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
         notunderstood=False
         if cmd=="help":
             helpmsg_default="""Liste des commandes :
- HELP       Affiche ce message d'aide"""
+ HELP       Affiche ce message d'aide
+ SCORES     Affiche les scores"""
             helpmsg_ops="""
  JOIN       Faire rejoindre un channel (sans paramètres, donne la liste des chans actuels)
  LEAVE      Faire quitter un channel
@@ -296,6 +298,16 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
         elif cmd=="die":
             if auteur in self.overops:
                 self.die()
+        elif cmd=="score":
+            serv.privmsg(auteur,"Votre score : %s"%(self.scores.get(auteur,0)) )
+        elif cmd=="scores":
+            scores=self.scores.items()
+            # trie par score
+            scores.sort(lambda x,y:cmp(x[1],y[1]))
+            serv.privmsg(auteur,"Scores by score : "+" ; ".join(["%s %s"%(i[0],i[1]) for i in scores]))
+            # trie par pseudo
+            scores.sort(lambda x,y:cmp(x[0],y[0]))
+            serv.privmsg(auteur,"Scores by score : "+" ; ".join(["%s %s"%(i[0],i[1]) for i in scores]))
         else:
             notunderstood=True
         if notunderstood:
@@ -370,10 +382,16 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
                 if re.match(tolere(answer_regexp),unicode(message,"utf8").lower()):
                     answer=self.play_status[canal][4]
                     serv.privmsg(canal,"%s: bravo ! (C'était %s)"%(auteur,answer))
+                    self.scoreplus(auteur)
                     token=time.time()
                     self.play_status[canal]=[0,token]
                     serv.execute_delayed(random.randrange(Ttrig*5,Ttrig*10),self.start_enigme,(serv,canal,token))
 
+    def scoreplus(self,pseudo):
+        if self.scores.has_key(pseudo):
+            self.scores[pseudo]+=1
+        else:
+            self.scores[pseudo]=1
 
 if __name__=="__main__":
     import sys