]> gitweb.pimeys.fr Git - bots/basile.git/commitdiff
Bonne nuit
authorVincent Le Gallic <legallic@crans.org>
Thu, 17 May 2012 23:03:32 +0000 (01:03 +0200)
committerVincent Le Gallic <legallic@crans.org>
Thu, 17 May 2012 23:03:32 +0000 (01:03 +0200)
basile.py

index 3684c682d125e9a5d6fcc7db880d44e981eabc1e..cdaa3e1c1091ade1b106af978b722e26a886e629 100755 (executable)
--- a/basile.py
+++ b/basile.py
@@ -117,13 +117,16 @@ u"Mais euh…",
 u"Mais j'ai rien demandé moi !"]
 config_bad_action_actions=[u"prend de la distance, par précaution…",u"part en courant",u"esquive"]
 
-config_good_action_triggers=[u"fait (des bisous|un calin) à",u"embrasse",u"caline",u"caresse"]
+config_good_action_triggers=[u"fait (:?des bisous|un c(?:â|a)lin|des c(?:â|a)lins) à",u"embrasse",u"c(?:â|a)line",u"caresse"]
 config_good_action_answers=[u"owi \o/",u"c'est gentil ! ♡"]
 config_good_action_actions=[u"ronronne",u"est content"]
 
 config_bonjour_triggers=[u"(s|)(a|'|)lu(t|)",u"hello",u"pl(o|i)p",u"pr(ou|ü)t",u"bonjour",u"bonsoir",u"coucou"]
 config_bonjour_answers=[u"Salut {}",u"Hello {} :)",u"Bonjour {}",u"Hello {}",u"{}: hello",u"{}: bonjour"]
 
+config_bonne_nuit_triggers=[u"bonne nuit",u"'?nite",u"'?nuit",u"'?night",u"good night",u"'?nunuit"]
+config_bonne_nuit_answers=[u"{}: sweet dreams ;)",u"Bonne nuit {} !",u"À demain {}. :)","{}: dors bien ^^"]
+
 config_kick_answers=[u"Ben qu'est-ce que j'ai fait ? :(",u"Mais euh, j'ai rien fait de mal…","{} a le /kick facile :)"]
 config_kick_actions=[u"se tiendra à carreaux",u"essaiera de ne plus provoquer les foudres de {}"]
 
@@ -240,6 +243,10 @@ def is_bad_action_trigger(chain,pseudo):
 def is_good_action_trigger(chain,pseudo):
     return is_something(chain,config_good_action_triggers,avant=u"^",
                             apres="(?: [a-z]*ment)? %s($|\.| |,|;).*"%(pseudo))
+def is_bonjour(chain):
+    return is_something(chain,config_bonjour_triggers,avant=u"^")
+def is_bonne_nuit(chain):
+    return is_something(chain,config_bonne_nuit_triggers,avant=u"^")
 def is_pan(chain):
     return re.match(u"^(pan|bim|bang) .*$",unicode(chain,"utf8").lower().strip())
 
@@ -816,10 +823,12 @@ class Basile(ircbot.SingleServerIRCBot):
                                        for j in mess])
                     out=int(translate(out))
                     serv.privmsg(canal,"%s: %s !"%(auteur,translate(str(out+1)).encode("utf8")))
-            if (not canal in self.quiet_channels
-                and re.match((u"^("+"|".join(config_bonjour_triggers)+").*").lower(),message.lower()) ):
+            if is_bonjour(message) and not canal in self.quiet_channels:
                 answer=random.choice(config_bonjour_answers)
                 serv.privmsg(canal,answer.format(auteur).encode("utf8"))
+            if is_bonne_nuit(message) and not canal in self.quiet_channels:
+                answer=random.choice(config_bonne_nuit_answers)
+                serv.privmsg(canal,answer.format(auteur).encode("utf8"))
             if is_pan(message) and not canal in self.quiet_channels:
                 serv.privmsg(canal,"%s: c'est pas sur moi qu'il faut tirer !"%(auteur))
         else: