duckland: mostly copy doupsland plugin
This commit is contained in:
parent
a2de02b0eb
commit
e7c2be4a62
|
@ -69,6 +69,9 @@
|
|||
"doupsland": {
|
||||
"commands": ["doupsland"]
|
||||
},
|
||||
"duckland": {
|
||||
"commands": ["duckland"]
|
||||
},
|
||||
"gpt3": {
|
||||
"openai_key": "",
|
||||
"join_lines": "; "
|
||||
|
|
81
edmond/plugins/duckland.py
Normal file
81
edmond/plugins/duckland.py
Normal file
|
@ -0,0 +1,81 @@
|
|||
import random
|
||||
|
||||
from edmond.plugin import Plugin
|
||||
|
||||
|
||||
P_TIME = [
|
||||
"ce matin", "hier soir", "aujourd'hui", "tout à l'heure", "au réveil", "",
|
||||
"pendant ma course", "à l'aube",
|
||||
]
|
||||
P_ACTION = [
|
||||
"j'ai aperçu", "j'ai caressé", "j'ai entendu", "j'ai passé du temps avec",
|
||||
"je me suis arrêté vers", "je me suis promené avec", "j'ai salué",
|
||||
"j'ai approché", "j'ai suivi", "je me suis assis devant", "j'ai regardé",
|
||||
"j'ai parlé avec", "j'ai écouté", "je me suis endormi avec", "j'ai nourri",
|
||||
"j'ai nadenade",
|
||||
]
|
||||
P_SUBJ_M = [
|
||||
"le canard", "le canard colvert", "le cygne", "le canard bleu",
|
||||
"le canard siffleur", "le petit caneton"
|
||||
]
|
||||
P_SUBJ_F = [
|
||||
"la cane", "la poule d'eau", "la sarcelle", "la fuligule", "la macreuse",
|
||||
"l'oie", "la harle",
|
||||
]
|
||||
P_PLACE = [
|
||||
"en ville", "au parc Georges Brassens", "à Montsouris", "sous l'arbre",
|
||||
"au parc", "sur la plage", "sur le chemin", "dans l'herbe",
|
||||
"devant l'école", "dans la petite cour", "sur la route de montagne",
|
||||
"qui cancannait", "qui dormait", "qui était devant la boutique",
|
||||
"qui voulait manger", "qui demandait du pain", "sous l'abri",
|
||||
"sur le quai", "à l'autel", "à la station", "dans la ruelle",
|
||||
"à Vanves",
|
||||
]
|
||||
P_COORD = [
|
||||
"et", "et donc", "et puis", "après quoi",
|
||||
]
|
||||
P_ACTION2_M = [
|
||||
"il a cancané", "il s'est endormi", "il m'a remercié",
|
||||
"il est resté avec moi", "il m'a parlé", "il a fait coin",
|
||||
"il m'a suivi", "il a reclamé du pain", "il a fait KWAK",
|
||||
"il s'est roulé en boule", "il était mignon", "il a barboté",
|
||||
"il a fouillé la vase", "il a plongé", "il est allé nager",
|
||||
"il s'est envolé", "il est rentré chez lui",
|
||||
]
|
||||
P_ACTION2_F = [
|
||||
"elle a cancané", "elle s'est endormie", "elle m'a remercié",
|
||||
"elle est restée avec moi", "elle m'a parlé", "elle a fait coin",
|
||||
"elle m'a suivi", "elle a reclamé du pain", "elle a fait KWAK",
|
||||
"elle s'est roulé en boule", "elle était mignonne", "elle a barboté",
|
||||
"elle a fouillé la vase", "elle a plongé", "elle est allée nager",
|
||||
"elle a surveillé ses canetons", "elle a suivi ses canetons",
|
||||
"elle s'est envolée", "elle est rentrée chez elle",
|
||||
]
|
||||
|
||||
|
||||
def get_title():
|
||||
gender = random.choice("mfn")
|
||||
return " ".join((
|
||||
random.choice(P_TIME),
|
||||
random.choice(P_ACTION),
|
||||
random.choice(P_SUBJ_M if gender == "m" else P_SUBJ_F),
|
||||
random.choice(P_PLACE),
|
||||
random.choice(P_COORD),
|
||||
random.choice(P_ACTION2_M if gender == "m" else P_ACTION2_F),
|
||||
)).strip().capitalize()
|
||||
|
||||
|
||||
class DucklandPlugin(Plugin):
|
||||
|
||||
REQUIRED_CONFIGS = ["commands"]
|
||||
|
||||
def __init__(self, bot):
|
||||
super().__init__(bot)
|
||||
|
||||
def on_pubmsg(self, event):
|
||||
if not self.should_handle_command(event.arguments[0]):
|
||||
return False
|
||||
|
||||
reply = get_title()
|
||||
self.bot.say(event.target, reply)
|
||||
return True
|
Loading…
Reference in a new issue