]> gitweb.pimeys.fr Git - bots/deconnaisseur.git/commitdiff
Des quit/leave messages
authorVincent Le Gallic <legallic@crans.org>
Thu, 24 May 2012 22:45:58 +0000 (00:45 +0200)
committerVincent Le Gallic <legallic@crans.org>
Thu, 24 May 2012 22:45:58 +0000 (00:45 +0200)
deconnaisseur.py

index 36b67889ad65f306f658cf99da860beb21c0951a..c2bec86881f75bd7f41db5bf0d4458eabc668059 100755 (executable)
@@ -51,6 +51,10 @@ def get_config_logfile(serveur):
     serveurs={"acoeur.crans.org":"acoeur","irc.crans.org":"crans"}
     return config_logfile_template%(serveurs[serveur])
 
+config_quit_messages=[u"Se décrocher la mâchoire, pas cuit bras d'oiseau ou métalld précieuxld"]
+
+config_leave_messages=[u"On continuera à jouer plus tard ;)"]
+
 class UnicodeBotError(Exception):
     pass
 def bot_unicode(chain):
@@ -263,7 +267,7 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
             if auteur in self.ops and len(message)>1:
                 if message[1] in self.chanlist:
                     if not (message[1] in self.stay_channels) or auteur in self.overops:
-                        serv.part(message[1])
+                        self.quitter(message[1]," ".join(message[2:]))
                         self.chanlist.remove(message[1])
                         log(self.serveur,"priv",auteur," ".join(message)+"[successful]")
                     else:
@@ -366,7 +370,8 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
                 notunderstood=True
         elif cmd=="die":
             if auteur in self.overops:
-                self.die()
+                log(self.serveur,"priv",auteur," ".join(message)+"[successful]")
+                self.mourir()
         elif cmd=="score":
             if len(message)>1:
                 if len(message) in [3,4] and message[1].lower()=="transfert":
@@ -466,7 +471,7 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
                 args=""
             if cmd in ["meurs","die","crève"]:
                 if auteur in self.overops:
-                    self.die()
+                    self.mourir()
                     log(self.serveur,canal,auteur,message+"[successful]")
                 else:
                     serv.privmsg(canal,"%s: crève !"%(auteur))
@@ -476,7 +481,7 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
             if cmd in ["part","leave","dégage"]:
                 if auteur in self.ops and (not (canal in self.stay_channels)
                                            or auteur in self.overops):
-                    serv.part(canal,message="Éjecté par %s"%(auteur))
+                    self.quitter(canal)
                     log(self.serveur,canal,auteur,message+"[successful]")
                     self.chanlist.remove(canal)
                 else:
@@ -559,6 +564,15 @@ class Deconnaisseur(ircbot.SingleServerIRCBot):
             #else:
             #    serv.privmsg(channel,l1[i].format(auteur).encode("utf8"))
     
+    def quitter(self,chan,leave_message=None):
+        if leave_message==None:
+            leave_message=random.choice(config_leave_messages)
+        self.serv.part(chan,leave_message.encode("utf8"))
+    
+    def mourir(self):
+        quit_message=random.choice(config_quit_messages)
+        self.die(message=config_quit_message)
+    
     def get_scores(self):
         f=open(config_score_file)
         scores=pickle.load(f)