Message populaire Azen Posté(e) le 31 juillet 2015 Message populaire Posté(e) le 31 juillet 2015 Salut à toi et bienvenue sur ce tutoriel ! Dans ce post je vais te faire découvrir ou t'apprendre les listes. Premièrement, une liste est un "tableau", ou vous renseignez une id et une valeur (donnée). Je vous montrerai : I. Représentation codée d'une liste II. Comment add une donnée à votre tableau III. Comment delete une donnée de votre tableau IV. Comment lister votre tableau V. Conditions de listes VI. Comment générer une entrée aléatoire de votre tableau VIII. Comment supprimer votre tableau IX. Conclusion I. Représentation codée d'une liste. Pour utiliser une liste dans votre code, une liste se présente comme cela: {liste::*} -> Comme une variable, a laquelle on ajoute "::" après la premiere "partie" de variable, qui ici est "liste". Si l'on met une étoile ("*"), toutes vos entrées (chaque ligne du tableau, pour reprendre la représentation) sont concernées. Si l'on met {liste::uneentrée}, alors c'est votre entrée "uneentrée" qui sera concernée. II. Ajout de donnée à un tableau. Premièrement, nous allons ajouter une entrée à notre tableau. Pas besoin d'un effet pour créer ce tableau, il existe a partir du moment ou vous ajoutez une entrée. Exemple : j'ajoute une entrée de type texte à mon tableau (liste): Cela donne ( en ligne d'effet ) : add "Hello" to {mots::*} Donc ici, on créer une nouvelle ligne avec comme valeur "Hello". III. Retirer une donnée d'un tableau Ensuite, nous allons retirer une entrée à notre tableau. Pour retirer cette entrée, nous allons faire: Cela donne (en ligne d'effet ) remove "Hello" from {mots::*} Comme cela, on retire la ligne qui porte la valeur "Hello" dans la liste "mots". IV. Lister notre tableau Ici, en reprenant toujours en encore notre même liste "mots", nous voulons lister, simplement ce tableau. Comment allez vous me dire ? Je vais vous montrer 2 types d'affichage de listes. La première, la plus simple, comme mon ami @imSizk vous l'a sûrrement expliquée, est, l'affichage comme une variable : send "%{mots::*}% Une méthode plus poussée, que j'utilise utilise la notion de loop. Je ne l'ai pas encore expliquée mais ne cherchez pas, lisez juste ce que je vous dit ;) Donc, pour listez correctement notre tableau, on va utiliser le loop. Cela se déroule sous cette forme : loop {mots::*}: send "%loop-index% -> %loop-value%" De cette manière, on va nous dire "numéro de la ligne -> valeur de la ligne" V. Génération aléatoire d'une ligne de la liste Pour générer quelque chose d'aléatoire, il vous suffit d'avoir cet effet : set {_donneealéatoire} to a random element of {mots::*} Ici on met la variable temporaire "donnealéatoire" sur un élément aléatoire de la liste "mots". VI. Conditions de liste Pour les conditions de liste, certains mon posés la question : "C'est bien les listes, mais comment je fais pour savoir si une donnée est déjà mise dans la liste ?". Donc je vais vous répondre ici ! : Pour voir si une donnée est déjà rentrée, une donnée ajoutée à la liste est "mise" dans la liste, donc elle "existe" dans la liste. Pour ce faire voici une condition : if {mots::Hello} is set: send "Hello" Chose très bête hein ^^ Mais vous pouvez remplacer le "Hello" dans la condition par un "%arg-1%" s'il s'agit d'une commande. VII. Supprimer une liste Après tout ça et en chapitre "final" du tutoriel, je vous propose de voir un effet qui vous permettre de remettre à zéro une liste. Voici l'effet concerné : clear {mots::*} L'effet "clear" vous permet de nettoyer votre liste. Et, comme je vous l'ai dit précédemment, une liste sans ligne est une liste nule, donc inexistante, donc elle est supprimée ! VIII. Conclusion Les listes sont, pour moi une des choses les plus importantes dans Skript, vous pouvez ajouter des informations, les récupérer les supprimer, etc... (Je vous invite à voir l'algorithme conçu à l'ajout automatique de données dans une liste en cliquant ici) Merci à vous d'avoir suivi ce tutoriel, n'hésitez pas à mettre un like pour m'encourager à vous faire des tutos complets ! :) Cordialement, Hugo / Azen. 18 1
Azen Posté(e) le 31 juillet 2015 Auteur Posté(e) le 31 juillet 2015 Merci :D n'hésite pas à mettre un j'aime ! :)
Azen Posté(e) le 31 juillet 2015 Auteur Posté(e) le 31 juillet 2015 Merci à toi d'avoir lu :) N'hésite pas à mettre un ' J'aime ' :)
xHydro_ Posté(e) le 31 juillet 2015 Posté(e) le 31 juillet 2015 Salut ! Il me semble qu'il manque une chose ! Comment fait on pour vérifier si, quand on ajoute un mot a une liste, comment fait on on peux vérifier si il est déjà dans cette même list ! Genre : command /add <text>: trigger: if arg 1 is already in {list::*} stop else: if arg 1 to {list::*}
Izychiel Posté(e) le 1 août 2015 Posté(e) le 1 août 2015 J'ai un conflit ! :o Help ? xD loop {listeDesPointsDeTp::*}: teleport loop-player to {listeDesPointsDeTp::%loop-index%}
Azen Posté(e) le 1 août 2015 Auteur Posté(e) le 1 août 2015 Faut que tu génères une variable temporaire surr la size de ta liste. genre set {_r} to a random integer between 1 and size of {listeDesPointsDeTp::*} teleport player to {listedespointsdetp::%{_r}%}
Izychiel Posté(e) le 1 août 2015 Posté(e) le 1 août 2015 Ok merci :) Et oublie pas les balises Code stp :p
FFantomeZ Posté(e) le 4 août 2015 Posté(e) le 4 août 2015 mdeir , J'ai dit Cool comme tuto , mes je comprend toujours pas les Liste mdr
Azen Posté(e) le 4 août 2015 Auteur Posté(e) le 4 août 2015 On peut parler demain si tu m'ajoute sur skype a ce pseudo : azengraph
FFantomeZ Posté(e) le 4 août 2015 Posté(e) le 4 août 2015 On peut parler demain si tu m'ajoute sur skype a ce pseudo : azengraph Enfaite je crois que ses la flemme d'apprendre , mes je t'ajouterais quand même
YeyPiz Posté(e) le 9 août 2015 Posté(e) le 9 août 2015 Bonjour, ton tuto est tres bien mais je pense qu'il manque un truc au niveau du chapitre VI: Je me demande comment faire pour ne pas mettre un texte dans la liste au fur et a mesure que la commande est entre. Exemple: Joueur : /l add <texte> if {l::%arg-2%} is set: message "%arg-2% est deja dans la liste" stop else: add arg-2 to {l::*} Mais je ne trouve pas comment je pourrai faire pourrai tu m'aider s'il te plait ?
FighterBacker Posté(e) le 10 avril 2016 Posté(e) le 10 avril 2016 j'ai une question dans mon cas je veut faire une blacklist de mot (insultes) mais je ne sais pas comment faire en sorte que sa compte tous les ligne individuellement je m'explique : on chat : if message contains {BlackList::*}: send "mon message" cancel event sa marche mais il faut que le message contienne toute la blacklist et je veut que sa prenne en compte toute la blacklist mais individuellement
kumakuma215 Posté(e) le 10 avril 2016 Posté(e) le 10 avril 2016 j'ai une question dans mon cas je veut faire une blacklist de mot (insultes) mais je ne sais pas comment faire en sorte que sa compte tous les ligne individuellement je m'explique : on chat : if message contains {BlackList::*}: send "mon message" cancel event sa marche mais il faut que le message contienne toute la blacklist et je veut que sa prenne en compte toute la blacklist mais individuellement Tu dois faire un loop : on chat: loop {BlackList::*}: if message contains "%loop-value%}: send "mon message" cancel event PS : Salut à toi et bienvenue sur ce tutoriel ! Dans ce post je vais te faire découvrir ou t'apprendre les listes. Premièrement, une liste est un "tableau", ou vous renseignez une id et une valeur (donnée). Je vous montrerai : I. Représentation codée d'une liste II. Comment add une donnée à votre tableau III. Comment delete une donnée de votre tableau IV. Comment lister votre tableau V. Conditions de listes VI. Comment générer une entrée aléatoire de votre tableau VIII. Comment supprimer votre tableau IX. Conclusion I. Représentation codée d'une liste. Pour utiliser une liste dans votre code, une liste se présente comme cela: {liste::*} -> Comme une variable, a laquelle on ajoute "::" après la premiere "partie" de variable, qui ici est "liste". Si l'on met une étoile ("*"), toutes vos entrées (chaque ligne du tableau, pour reprendre la représentation) sont concernées. Si l'on met {liste::uneentrée}, alors c'est votre entrée "uneentrée" qui sera concernée. II. Ajout de donnée à un tableau. Premièrement, nous allons ajouter une entrée à notre tableau. Pas besoin d'un effet pour créer ce tableau, il existe a partir du moment ou vous ajoutez une entrée. Exemple : j'ajoute une entrée de type texte à mon tableau (liste): Cela donne ( en ligne d'effet ) : add "Hello" to {mots::*} Donc ici, on créer une nouvelle ligne avec comme valeur "Hello". III. Retirer une donnée d'un tableau Ensuite, nous allons retirer une entrée à notre tableau. Pour retirer cette entrée, nous allons faire: Cela donne (en ligne d'effet ) remove "Hello" from {mots::*} Comme cela, on retire la ligne qui porte la valeur "Hello" dans la liste "mots". IV. Lister notre tableau Ici, en reprenant toujours en encore notre même liste "mots", nous voulons lister, simplement ce tableau. Comment allez vous me dire ? Je vais vous montrer 2 types d'affichage de listes. La première, la plus simple, comme mon ami @imSizk vous l'a sûrrement expliquée, est, l'affichage comme une variable : send "%{mots::*}% Une méthode plus poussée, que j'utilise utilise la notion de loop. Je ne l'ai pas encore expliquée mais ne cherchez pas, lisez juste ce que je vous dit ;) Donc, pour listez correctement notre tableau, on va utiliser le loop. Cela se déroule sous cette forme : loop {mots::*}: send "%loop-index% -> %loop-value%" De cette manière, on va nous dire "numéro de la ligne -> valeur de la ligne" V. Génération aléatoire d'une ligne de la liste Pour générer quelque chose d'aléatoire, il vous suffit d'avoir cet effet : set {_donneealéatoire} to a random element of {mots::*} Ici on met la variable temporaire "donnealéatoire" sur un élément aléatoire de la liste "mots". VI. Conditions de liste Pour les conditions de liste, certains mon posés la question : "C'est bien les listes, mais comment je fais pour savoir si une donnée est déjà mise dans la liste ?". Donc je vais vous répondre ici ! : Pour voir si une donnée est déjà rentrée, une donnée ajoutée à la liste est "mise" dans la liste, donc elle "existe" dans la liste. Pour ce faire voici une condition : if {mots::Hello} is set: send "Hello" Chose très bête hein ^^ Mais vous pouvez remplacer le "Hello" dans la condition par un "%arg-1%" s'il s'agit d'une commande. VII. Supprimer une liste Après tout ça et en chapitre "final" du tutoriel, je vous propose de voir un effet qui vous permettre de remettre à zéro une liste. Voici l'effet concerné : clear {mots::*} L'effet "clear" vous permet de nettoyer votre liste. Et, comme je vous l'ai dit précédemment, une liste sans ligne est une liste nule, donc inexistante, donc elle est supprimée ! VIII. Conclusion Les listes sont, pour moi une des choses les plus importantes dans Skript, vous pouvez ajouter des informations, les récupérer les supprimer, etc... (Je vous invite à voir l'algorithme conçu à l'ajout automatique de données dans une liste en cliquant ici) Merci à vous d'avoir suivi ce tutoriel, n'hésitez pas à mettre un like pour m'encourager à vous faire des tutos complets ! :) Cordialement, Hugo / Azen. Tu as oublié une chose dans ton tuto : On peut choisir le premier element de la liste comme ceci : set {lol} to the first element out of {Liste::*} :p PS2: @iziix n'hésite pas à aller voir mon tuto sur les queues en 1v1 ^^
Messages recommandés