Browse Source

aide / help

master
nemesis 2 years ago
parent
commit
4c66040b09
  1. 107
      asmodee.py

107
asmodee.py

@ -1307,6 +1307,113 @@ async def showquote(room, message): # afficher les citations mode reponse matrix
else:
await msg(room,"Je n'ai pas de citations pour ce salon",sender)
async def help(room, message): # Aide en message privé
await help_center(room,message,"help",True)
async def aide(room, message): # Aide dans le salon
await help_center(room,message,"aide",False)
async def help_center(room,message,name,private): # Aide sur les commandes disponibles
args = getMessage(message).split()
args.pop(0)
salon = room
sender = getUser(message)
if (private):
salon = await verifPMRoom(room,message)
if (len(args) > 0):
if (re.search("roll", args[0])):
await msg(salon,":roll <options> <des> (+-modifs ou des)\n\n- exemple :roll vr4g3 6d6 - \#g\#r3d6 +2 x3 : lance avec les details 6d6 en relancant les des avec un resultat de 4+ et en gardant les trois meilleurs, puis en retranchant 3d6 sans relancer les 4+ et en gardant tout, enfin ajouter 2. L'operation sera executee trois fois.\n\n- v : details (verbose) du jet\n- n : no add, chaque de est traite separement\n- e : explosif, si un de fait le maximum, on le relance et on additionne\n- z : Star Zars, le premier de est explosif. Mais s'il sort un 1, on retire ce 1 et la plus grande valeur des autres des\n- f<nb> : difficulte a atteindre par de avec option n\n- g<nb> : nombre de des conserves\n- r<nb> : relance si le de a obtenu au moins ce nombre\n- m<nb> : Enleve un succes si ce nombre ou moins est atteint\n- s<nb/nb> : seuil a atteindre et niveaux de reussites\n- w<nb> : lance un wild die avec les autres.",sender, False)
elif (re.search("sw", args[0])):
await msg(salon,"- :sw <options> <des> : Lance les des en mode Savage Worlds\nVerbose/Noadd/Explosif/Seuil 4/Niveau de reussite 4/Wild Die d6.",sender, False)
elif (re.search("dom", args[0])):
await msg(salon,"- :dom <options> <des> : Lance les dommages en mode Savage Worlds\nVerbose/Explosif/seuil 4/Niveau de reussite 4.",sender, False)
elif (re.search("owod", args[0])):
await msg(salon,"- :owod <options> <des> : Lance les des en mode Ancien Monde des Tenebres\nVerbose/Noadd/Difficulte 6/Relance les 10/Les 1 enleve un succes.",sender, False)
elif (re.search("wod", args[0])):
await msg(salon,"- :wod <options> <des> : Lance les des en mode Nouveau Monde des Tenebres\nVerbose/Noadd/Difficulte 8/Relance les 10.",sender, False)
elif (re.search("ars", args[0])):
await msg(salon,"- :ars <options> <des> : Lance les des en mode Ars Magicka : de de tension\nVerbose/Noadd/Sur un 1, on relance et on double.",sender, False)
elif (re.search("des", args[0])):
await msg(salon,"- :des <options> <des> : Lance des des de desastre\nVerbose/Noadd/Difficulte 10.",sender, False)
elif (re.search("star", args[0])):
await msg(salon,"- :star <options> <des> : Lance des des en mode star wars. Le premier de est explosif. Mais s'il sort un 1, on retire ce 1 et la plus grande valeur des autres des.",sender, False)
elif (re.search("carte", args[0])):
await msg(salon,"- !carte : Tire une carte et la retire du paquet\n- !carte m : remelange le paquet.",sender, False)
elif (re.search("card", args[0])):
await msg(salon,"- !card : tire une carte sans la retirer du paquet.",sender, False)
elif (re.search("liste", args[0])):
await msg(salon,"- !liste <options/de/la/liste> [Nombre d'elements souhaites] : retourne ce nombre d'elements de la liste.",sender, False)
elif (re.search("horloge", args[0])):
await msg(salon,"- !horloge : Affiche les horloges\n- !horloge <Nom de l'horloge> <niveau> : Crée ou modifie une horloge en lui mettant un niveau (normalement de 0 à 6)\n- !horloge del <Nom de l'horloge> : Supprime cette horloge.",sender, False)
elif (re.search("last", args[0])):
await msg(salon,"- !last : Date de son dernier post\n- !last <Personne> : Date du dernier post de la personne\n- !last inactifs <[+-]nombre de jours> <nombre max de message> : liste de personnes (en privé) ayant posté depuis + ou - le nombre de jours spécifiés et ayant au maximum le nombre de messages spécifiés.\n",sender, False)
elif (re.search("actif", args[0])):
await msg(salon,"- !actif : Nombre de ses messages et taille moyenne de ceux ci\n- !actif <Personne> : Nombre des messages de cette personne et taille moyenne de ceux ci\n",sender, False)
elif (re.search("quote", args[0])):
await msg(salon,"- !quote : Affiche une citation du salon au hasard\n- !quote <Personne> : Affiche une citation d'une personne du salon au hasard\n- !quote add <Personne>:<citation> : Enregistre une citation\n- !quote list [Personne] : Affiche les citation du salon ou d'une personne du salon en message privé\n- !quote list all : Affiche toutes les citations de tous les salons en message privé\n- !quote del <id> : Supprime la citation avec l'id spécifié",sender, False)
elif (re.search("biere", args[0])):
await msg(salon,"- !biere : Fournit une boisson du salon au hasard\n- !biere <Nom de breuvage> : Fournit une boisson spécifique du salon\n- !biere give <Personne>[:Nom du Breuvage] : Offre une boisson (spécifique en option) à la personne spécifiée\n- !biere add <Nom du breuvage>:<Phrase> : Enregistre une phrase pour ce breuvage\n- !biere list [Nom de Breuvage] : Affiche les phrases des breuvages du salon ou celles d'un breuvage spécifique du salon en message privé\n- !biere list all : Affiche toutes les citations de tous breuvages de tous les salons en message privé\n- !biere del <id> : Supprime la phrase avec l'id spécifié",sender, False)
elif (re.search("accueil", args[0])):
await msg(salon,"- !accueil <message> : Modifie le message d'accueil avec message. Il sera affiché à tout nouvel arrivant précédé de la mention 'Bienvenue sur le salon XXX, YYY.'",sender, False)
elif (re.search("kick", args[0])):
await msg(salon,"- !kick <@mxid> [@mxid] ... : kick les users listés",sender, False)
elif (re.search("titre", args[0])):
await msg(salon,"- !titre <url> : retourne le titre de la page",sender, False)
elif (re.search("mails", args[0]) or re.search("mail", args[0])):
await msg(salon,"- !mail add <email> : s'abonner aux messages du salon par mail.\n -!mail del <email> : se désabonner aux messages du salon par mail.",sender, False)
elif (re.search("modo", args[0])):
await msg(salon,"- !modo : Affiche la liste des modérateurs (ils peuvent gérer le message d'accueil, supprimer des citations ou des boissons, ajouter/retirer des modules, ajouter/retirer des modérateurs)\n- !modo add <mxid> : Ajoute une personne comme modérateur du salon\n- !modo del <mxid> : Retire une personne des modérateurs.",sender, False)
elif (re.search("module", args[0])):
await msg(salon,"- !module : Affiche la liste des modules actifs sur le salon ainsi que celle des modules disponibles\n- !module add <module> : Active un module sur le salon\n- !module del <module> : Désactive un module sur le salon.",sender, False)
elif (re.search("cristal", args[0])):
await msg(salon,"- !cristal : Réponds à une question posée commençant par Est-ce, Combien, Pourquoi, Quand, Comment, Où et se terminant par un point d'interrogation.",sender, False)
else:
await msg(salon,"A venir",sender, False)
else:
rid = room.room_id
message = "Commandes disponibles:"
for cle,valeur in modules.items():
if (cle[0] == rid and cle[1] == "card" and valeur):
message += "\n- !card"
if (cle[0] == rid and cle[1] == "carte" and valeur):
message += "\n- !carte"
if (cle[0] == rid and cle[1] == "liste" and valeur):
message += "\n- !liste <options/de/la/liste> [Nombre d'elements souhaites]"
if (cle[0] == rid and cle[1] == "horloge" and valeur):
message += "\n- !horloge : gestion des horloges PBTA"
if (cle[0] == rid and cle[1] == "stats" and valeur):
message += "\n- !last : Date de dernier post\n- !actif : Nombre de message et taille moyenne de ceux ci"
if (cle[0] == rid and cle[1] == "quote" and valeur):
message += "\n- !quote : citations du salon"
if (cle[0] == rid and cle[1] == "biere" and valeur):
message += "\n- !biere : breuvages du salon"
if (cle[0] == rid and cle[1] == "cristal" and valeur):
message += "\n- !cristal : Posez une question à la boule de cristal"
if (cle[0] == rid and cle[1] == "welcome" and valeur):
message += "\n- !accueil <message> : Modifie le message d'accueil"
if (cle[0] == rid and cle[1] == "kick" and valeur):
message += "\n- !kick <@mxid> [@mxid] ... : kick les users listés"
if (cle[0] == rid and cle[1] == "titre" and valeur):
message += "\n- !titre <url> : retourne le titre de la page en paramètre si celle ci possède une balise titre"
if (cle[0] == rid and cle[1] == "mails" and valeur):
message += "\n- !mail : s'abonner aux messages du salon par mail."
if (cle[0] == rid and cle[1] == "roll" and valeur):
message += "\n- :roll <options> <des>\n- :sw <options> <des>\n- :dom <options> <des>\n- :wod <options> <des>\n- :owod <options> <des>\n- :ars <options> <des>\n- :des <options> <des>\n- :star <options> <des>"
message += "\n- !modo : Gère les modérateurs du salon\n- !module : Gère les modules actifs sur le salon\n\n- Pour plus de details, tapez !" + name + " <commande>\n\nRetrouvez Asmodee sur https://git.ombreport.info/nemesis/asmodee_matrix"
await msg(salon,message,sender, False)
@bot.listener.on_message_event
async def callHelp(room, message):
match = botlib.MessageMatch(room, message, bot, PREFIX)
if match.is_not_from_this_bot() and match.prefix() and match.command("help"):
await help(room, message)
@bot.listener.on_message_event
async def callAide(room, message):
match = botlib.MessageMatch(room, message, bot, PREFIX)
if match.is_not_from_this_bot() and match.prefix() and match.command("aide"):
await aide(room, message)
@bot.listener.on_message_event
async def callShowquote(room, message):
match = botlib.MessageMatch(room, message, bot, PREFIX)

Loading…
Cancel
Save