From 5fbd10b3e6cd8b6ca31171ae3c75a766669de1c2 Mon Sep 17 00:00:00 2001 From: Vincent Le Gallic Date: Sat, 5 May 2012 21:57:48 +0200 Subject: [PATCH] =?utf8?q?Gestion=20des=20scores,=20version=20na=C3=AFve?= =?utf8?q?=201.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- deconnaissances.acoeur.txt | 26 ++++++------ deconnaissances.crans.txt | 86 +++++++++++++++++++------------------- deconnaisseur.py | 20 ++++++++- 3 files changed, 75 insertions(+), 57 deletions(-) diff --git a/deconnaissances.acoeur.txt b/deconnaissances.acoeur.txt index b135eae..75b73d1 100644 --- a/deconnaissances.acoeur.txt +++ b/deconnaissances.acoeur.txt @@ -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 diff --git a/deconnaissances.crans.txt b/deconnaissances.crans.txt index fde1050..2bce105 100644 --- a/deconnaissances.crans.txt +++ b/deconnaissances.crans.txt @@ -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 diff --git a/deconnaisseur.py b/deconnaisseur.py index 047ea81..b8953e7 100755 --- a/deconnaisseur.py +++ b/deconnaisseur.py @@ -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 -- 2.39.2