u"♩ J'ai vu ta mère sur chat rouleeeeeeette ♫"
u"On avait dit \"pas les mamans\""]
-config_action_trigger=[u"(frappe|cogne|tape)(| sur)",u"démolit",u"vomit sur",u"slap(|s)"]
+config_action_trigger=[u"(frappe|cogne|tape)(| sur)",u"(démolit|dégomme|fouette|agresse)",
+u"vomit sur",u"slap(|s)"]
config_action_answers=[u"Hey ! Mais qu'est-ce que j'ai fait ?",
u"Pourquoi moi ?",
u"Mais euh…",
u"Mais j'ai rien demandé moi !"]
-config_action_actions=[u"prend de la distance, par précaution…",u"part en courant"]
+config_action_actions=[u"prend de la distance, par précaution…",u"part en courant",u"esquive"]
config_bonjour=[u"(s|)(a|'|)lu(t|)",u"hello",u"plop",u"plip",u"pr(ou|ü)t",u"bonjour",u"bonsoir"]
config_bonjour_answers=[u"Salut {}",u"Hello {} :)",u"Bonjour {}",u"Hello {}",u"{}: hello",u"{}: bonjour"]
HELP Affiche de l'aide sur une commande.
CONNECT Ouvre une connection au serveur Note Kfet.
IDENTIFY Me permet de savoir qui tu es sur la note kfet.
- DROP Me fait oublier ton identité."""
+ DROP Me fait oublier ton identité.
+ SOLDE Obtenir ton solde"""
helpmsg_ops="""
JOIN Faire rejoindre un chan
LEAVE Faire quitter un chan
QUIET Se taire sur un chan
NOQUIET Opposé de QUIET
- LOST Perdre sur un chan"""
+ LOST Perdre sur un chan
+ SOLDE <pseudo> Donner le solde de quelqu'un"""
helpmsg_overops="""
- SAY Fais envoyer un message sur un chan ou à une personne
+ SAY Fait envoyer un message sur un chan ou à une personne
STAY Ignorera les prochains LEAVE pour un chan
NOSTAY Opposé de STAY
DIE Mourir"""
serv.privmsg(auteur,"Syntaxe : LOST <channel>")
else:
notunderstood=True
+ elif cmd=="solde":
+ if len(message)==1:
+ if self.identities.has_key(auteur):
+ try:
+ self.nk.write('search ["x",["pseudo"],%s]'%(json.dumps(self.identities[auteur])))
+ ret=json.loads(self.nk.read())
+ solde=ret["msg"][0]["solde"]
+ pseudo=ret["msg"][0]["pseudo"]
+ except Exception as exc:
+ print exc
+ serv.privmsg(auteur,"failed")
+ log(self.serveur,"priv",auteur," ".join(message)+"[failed]")
+ return
+ serv.privmsg(auteur,"%s (%s)"%(float(solde)/100,pseudo.encode("utf8")))
+ else:
+ serv.privmsg(canal,"Je ne connais pas ton pseudo note.")
+ elif auteur in self.ops:
+ try:
+ self.nk.write('search ["x",["pseudo"],%s]'%(json.dumps(message[1])))
+ ret=json.loads(self.nk.read())
+ solde=ret["msg"][0]["solde"]
+ pseudo=ret["msg"][0]["pseudo"]
+ except Exception as exc:
+ serv.privmsg(auteur,"failed")
+ log(self.serveur,"priv",auteur," ".join(message)+"[failed]")
+ return
+ serv.privmsg(auteur,"%s (%s)"%(float(solde)/100,pseudo.encode("utf8")))
else:
notunderstood=True
if notunderstood:
action = ev.arguments()[0]
auteur = irclib.nm_to_n(ev.source())
channel = ev.target()
+ try:
+ test=bot_unicode(message)
+ except UnicodeBotError:
+ serv.privmsg(channel,
+ "%s : Euh, tu fais de la merde avec ton encodage là, j'ai failli crasher…"%(auteur))
+ return
mypseudo=serv.get_nickname()
- if is_action_trigger(action,mypseudo):
+
+ if is_action_trigger(action,mypseudo) and not channel in self.quiet_channels:
l1,l2=config_action_answers,config_action_actions
n1,n2=len(l1),len(l2)
i=random.randrange(n1+n2)
if i>=n1:
- serv.action(channel,l2[i-n1])
+ serv.action(channel,l2[i-n1].encode("utf8"))
else:
serv.privmsg(channel,"%s: %s"%(auteur,l1[i].encode("utf8")))