Aller au contenu
  • 0

[Vixio] Mini Tuto ?


Question

Posté(e)

Bonjour ^^

J'essaye depuis 2-3 jours de gérer mon Bot discord en Skript.

Sauf que je ne comprends pas grand choses x)

 

Donc je demande a ceux qui si connaissent, s'ils peuvent me faire un mni-tuto sur l'add-on Vixio :p

 

Mon serveur tourne sous Spigot 1.9.4, et j'utilise skript 2.2 dev25

 

Merci d'avance :)

5 réponses à cette question

Messages recommandés

  • 0
Posté(e)

Ok donc on va faire simple -

Déjà pour capter un message et mettre une réponse.

Par exemple si un mec dit "Ping" le bot répondra "Pong" dans le channel ou le mec a parlé

On met l'event qui va permettre de capter les msg,peu importe dans quel channel.

discord guild message received seen by "NomDuBot":

Tu mets le name de ton bot bien sûr,je vais pas le dire 10 000 fois

On va donc tester si le message démarre par "Ping"

if event-string starts with "Ping":

Pour renvoyer un message on utilise ensuite

discord reply with "Pong"

Ce qui donne:

discord guild message received seen by "Bot":
   if event-string starts with "Ping":
       discord reply with "Pong"

Voila déjà pour renvoyer un msg.

Tu peux par exemple faire un jeu de chance.

if event-string starts with ".chance":
   set {_random} to random integer between 1 and 100
   if {_random} < 20:
       discord reply with "Bouuuuuh ! (%{_random}% %% de chance)"
   if {_random} >= 20:
       if {_random} < 50:
           discord reply with "Mouais,tu peux faire mieux. (%{_random}% %% de chance)"
   if {_random} >= 50:
       if {_random} < 90:
           discord reply with "Pas mal ! (%{_random}% %% de chance)"
   if {_random} >= 90:
       discord reply with "EXCELLENT ! (%{_random}% %% de chance)"

Bon eh bien c'est déjà la base.

Maintenant,plutot compliqué je te l'avoue,prendre un certain arguments dans une commande.

Peut-être qu'il existe un truc hyper simple style "arg-3" mais je connais pas,faut dire que la doc vixio y'as personne qui fait des tuto dessus

Exemple:

.choisir <Nombre> <Nombre>

Je veux récupérer le deuxième nombre.

Tout d'abord je vais skip le "if event-string..." car maintenant t'as pigé.

C'est simple,je vais set une liste sur le message mais à chaque espace je vais dire "ça c'est un nouvel élément !"

set {_msg::*} to event-string split at " "

Maintenant si je veux récupérer le deuxième argument,je vais mettre

%{_msg::2}%

Cependant cette méthode a une faille,si un argument est un texte vu qu'il a des espaces ça va penser que c'est plusieurs arguments,d'ailleurs même skript a ce problème,si tu mets un texte comme 1er argument on sait pas ou le texte s'arrête :/

Bon je vais pas continuer + si tu veux autre chose demande moi.

  • J'aime 2
  • 0
Posté(e)

Salut !

(désolé pour l'inactivité )

Merci beaucoup pour ton aide, mais je n'arrive pas a me servir des expressions de ce genre:

%event-message%
%event-user%
%event-guild%

Et aussi, (je te le demande maintenant comme ça c'est fait :) )Les bases pour un bot de musique.

Merci :p

  • 0
Posté(e)

%event-string% et non %event-message%

%name of event-user% car la ça va te dire son id

%event-guild% jamais utilisé

Pour faire jouer de la musique tu crées une commande avec ce que j'ai mis plus haut style ".play" et je te laisse voir le code.

discord guild message received seen by "NomDuBot":
   if event-string starts with ".play": # Si le msg commence par ".play"
       set {_msg} to event-string # On set une variable sur le message pour pouvoir modifier ce qu'il y a dedans
       replace all ".play " with "" in {_msg} # On retire le .play de la variable pour n'avoir que le lien youtube dans la variable
       discord join voice channel "IDDUCHANNELMUSIQUE" with "NomDuBot" # On fait join le bot sur le channel musique
       play audio "%{_msg}%" with player "NomDuBot" in guild "IDDUSERVEURDISCORD" # On le fait jouer la musique

  • J'aime 2
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.