Aller au contenu

Classement


Contenu populaire

Affichage du contenu avec la meilleure réputation depuis le 12/08/2018 dans toutes les zones

  1. 3 points
    Bonjour à tous et à toutes, Aujourd'hui, je vais expliquer comment marche les bossbars, quelles-sont les addons qui permettent des les gérer et pourquoi ainsi que quelques exemple. Ces bossbars seront fonctionnels avec skript dernières version (dev37c) et minecraft en 1.12 ainsi que le ou les addons postés ci-dessous ! Tout d'abord voici un rapide sommaire: I/Les addons à utiliser (2 choix possibles) et pourquoi II/Faire votre BossBar III/(Avancé) Animé votre Bossbar, les styles et couleurs Rentrons tout de suite dans le vif du sujet: I/Les addons à utiliser (2 choix possibles) et pourquoi Pour commencer, il existe 2 addons que je juge convenable d'utiliser pour les bossbars dont un que je vous déconseil mais qui permet toujours de les faire. Ce sont des addons très basique utilisé par un grand nombre de personnes: Skrayfall est un addon pratique pour beaucoup de choses mais qui pour moi n'est pas le meilleur addon à utiliser pour les bossbars. Il permet de faire de très bon scoraboard mais créer des incompatibilités avec certaines syntaxes de l'autre addon pour les bossbars ( qui peuvent-être réglé ). J'expliquerais comment faire les bossbars avec cette addon si l'autre addon ne marche pas chez vous ( on ne sait jamais ) Skellett est pour moi le meilleur addon que vous pourrez avoir pour les bossbars, plutôt simple et rapide d'utilisation. Mon préféré et celui avec lequelle j'expliquerais le plus de choses et donc celui que je choisis. Pour télécharger ces deux addons je vous invite à aller sur ce site et à prendre les dernières versions: Skellett: https://skripttools.net/?q=Skellett SkRayFall: https://skripttools.net/?q=SkRayFall J'ai testé les liens et les addons et ils fonctionnent tous deux. II/Faire votre BossBar A/ Avec Skellett: Voici la liste des syntaxes utilisé pour créer une bossbar: [the] [skellett] (title|name|header|string) of [boss[ ]]bar %bossbar% #MEttre un titre à votre bossbar [skellett] add %player% to [the] [boss[ ]]bar %bossbar% #Mettre une bossbar pour un joueur [the] [skellett] colo[u]r of [boss[ ]]bar %bossbar% #Mettre une couleur à une bossbar [skellett] remove %player% from [the] [boss[ ]]bar %bossbar% #Enlever un joueur d'une bossbar [the] [skellett] visib(le|ility) [(for|of)] [boss[ ]]bar %bossbar% #Cacher sans Enlever le joueur de la bossbar [the] [skellett] progress of [boss[ ]]bar %bossbar% #Changer la progressions d'un bossbar [skellett] %bossbar%'s [[boss][ ]bar] style #Mettre un style à une bossbar Pour commencer on va créer une commande basique: command /bossbar: trigger: Puis, créer notre bossbar: Ici, j'ai mis un nom à ma bossbar en gros une "ID" qui me permettra de retrouver ma bossbar partout. Sachez qu'au redémarrage du serv la bossbar n'est pas sauvegardé. Nous verrons comment la sauvegardé plus tard. Nous stockerons notre id bossbar tout au long du tutoriel dans la variable {p}. A partir du moment ou la bossbar et son id est crée, vous pouvez changez tous les attributs de la bossbar. command /bossbar: trigger: set {p} to skellett new bossbar Nous allons ensuite faire apparaître la bossbar au yeux du joueurs qui a fais la commande: command /bossbar: trigger: set {p} to skellett new bossbar add player to bossbar {p} Notre bossbar est crée et voici les bases de la bossbar de skellett pour approfondir n'hésitez pas à passer à la partie III/, nous allons voir comment faire avec SkRayFall puis nous reviendrons à Skellett B/ Avec SkRayFall: C'est un peu le même concepte qu'avec les scoreboard de SkRayFall, on crée notre bossbar, on l'edit puis on la suprrime. Voici les syntaxes: create (bossbar|boss bar) title[d] %string% and id %string% for %players% [with (value|progress) %number%] [with colors %BossBarColor%] [with style %BossBarStyle%] [with flags %BossBarFlag%] #créer notre boss bar (remove|destroy) bossbar %string% #delete notre bossbar (add|set) bossbar %string% for %player% #Met une bossbar au joueur remove %players% [from] bossbar %string% #Enlève un joueur de notre bossbar hide bossbar %string% #Cache la bossbar (show|display|unhide) bossbar %string% #Montre une bossbar (set|edit) bossbar %string% colo[u]r to %BossBarColor% #modifier la couleur d'une bossbar (set|edit) bossbar %string% (value|progress) to %number% #modifier la progression d'une bossbar Je vous passe les autres expressions car nous n'allons voir que certaines de ces syntaxes Comme pour Skellett nous allons créer notre bossbar, elle apparaitra directement au joueur qui à fais la commande /bossbar avec la couleur Bleue, le titre "Test" et un remplissage de 100% donc elle sera rempli en entier. L'id de la bossbar qui a le nom du joueur donc player nous permettra ensuite de l'édité et de la modifier command /bossbar: trigger: create bossbar title "Test" and id "%player%" for player with value 100 with colors Blue Vous voulez ensuite que tous les joueur connectés ai accès à cette bossbar ? Il suffira de ajouter le joueur à la bossbar avec l'id du joueur qui l'a crée. Regardez: command /bossbar: trigger: create bossbar title "Test" and id "%player%" for player with value 100 with colors Blue loop all players: add bossbar "%player%" for loop-player Ci-dessus nous ajoutons la bossbar à tous les joueurs du serveur grace à un loop ! Pour cacher cette bossbar il nous suffit de stoquer le nom de la bossbar crée dans une variable puis de la cacher ou de la montrer. Je m'explique, nous allons stoquer l'id de la bossbar dans une variable {id.bossbar} puis créer 2 commandes pour cacher / montrer la bossbar command /bossbar: trigger: create bossbar title "Test" and id "%player%" for player with value 100 with colors Blue set {bossbar.id} to player loop all players: add bossbar "%player%" for loop-player command /hidebossbar : trigger: hide bossbar "%{bossbar.id}%" command /showbossbar : trigger: show bossbar "%{bossbar.id}%" Et voici. Je ne vais pas approfondir plus les bossbars de SkRayFall. Je ne les aime pas car ont pas mal de bug malheureusement mais n'hésitez pas à poser des questions en commentaire, je vous répondrai. III/(Avancé) Animé votre Bossbar, les styles et couleurs Dans cette partie nous allons approfondir l'utilisation de l'addon Skellett pour les BossBars. Pour commencer, chacune des syntaxes contiens un skellett, comme le nom du plugin, ce "skellett" permet d'empêcher les incompatibilités entre les addons qui font des bossbars ou qui les gèrent comme SkRayFall. Je vous conseil fortement de les utiliser comme moi je le fais dans toutes vos syntaxes même si ce "skellett" est optionnel. A/ Les bossbars avec un style: Syntaxe utilisé: set skellett style of bossbar <bossbar> to <style> Tout d'abord quand on parle de bossbar avec un style, on parle de bossbar qui sont par exemples ségmenté par 10,12,20, 6 ou sans segment comme la bossbar qui vous optenez avec les skripts au dessus. Pour modifier ce style, il faut faire comme ci-dessous: command /bossbar: trigger: set {p} to skellett new bossbar set skellett style of bossbar {p} to SEGMENTED_20 #Segmenté en 20 add player to bossbar {p} Pour modifier le style il vous suffira de changer SEGMENTED_20 par SEGMENTED_10 , SEGMENTED_12, SEGMENTED_6 ou SOLID pour ne pas être segmenté en gros pour la bossbar classique. B/ Les couleurs des bossbars: Syntaxe utilisé : set skellett color of bossbar <id de la bossbar> to <couleur> Ensuite, nous pouvons grâce a la version 1.9 et + mettre des couleurs dans vos bossbars. La couleur basique sortie est normalement verte. Voici la liste des couleurs disponibles pour les bossbars avec Skellett: BLUE GREEN PINK PURPLE RED WHITE YELLOW Si nous voulons faire une bossbar segmenté par 6 avec une couleur Blanche nous ferrons comme ceci: command /bossbar: trigger: set {p} to skellett new bossbar #Création de la bossbar set skellett style of bossbar {p} to SEGMENTED_6 #Segmenté en 6 set skellett color of bossbar {p} to White #Couleur Blanche add player to bossbar {p} #Ajout du joueur à la bossbar C/ La progressions de la bossbar: Syntaxe utilisé: set skellett style of bossbar <id de la bossbar> to <style> Une bossbar, est une bar de progressions est peut-être utiliser comme tel, il faut savoir qu'une bossbar remplis à une progressions de 1 tandis qu'une bossbar vide à une progressions de 0. Vous voulez remplir une bossbar à 1/4 puis à la moitié puis au 3/4 nous ferons comme cela: command /bossbar: trigger: set {p} to player set {p} to skellett new bossbar #Création de la bossbar set skellett style of bossbar {p} to SEGMENTED_6 #Segmenté en 6 set skellett color of bossbar {p} to White #Couleur Blanche add player to bossbar {p} #Ajout du joueur à la bossbar set skellett progress of bossbar {p} to 0 wait 5 second set skellett progress of bossbar {p} to 0.25 wait 5 second set skellett progress of bossbar {p} to 0.5 wait 5 second set skellett progress of bossbar {p} to 0.75 wait 5 second set skellett progress of bossbar {p} to 1 Dans ce code, la bossbar à partir de la commande /bossbar sera créée la progression partira de 0% pour aller à 25% puis 50% puis 75% et enfin 1 soit 100% avec un écart de 5 second. Vous voulez une bossbar qui se remplit ? Le tour est joué. D/Mettre un titre à une bossbar: Syntaxe utilisé: set skellett title of bossbar <id de la bossbar> to "VOTRE TITRE> Je ne pense pas avoir besoins de décrire cet effet particulièrement, faite attention à ne pas oublier les guillemet pour mettre le titre ' "TITRE" ' : command /bossbar: trigger: set {p} to skellett new bossbar #Création de la bossbar set skellett style of bossbar {p} to SEGMENTED_6 #Segmenté en 6 set skellett color of bossbar {p} to White #Couleur Blanche add player to bossbar {p} #Ajout du joueur à la bossbar wait 10 second set skellett title of bossbar {p} to "&aCoucou" #Changement de titre wait 1 second set skellett title of bossbar {p} to "&bCoucou" #Changement de titre wait 1 second set skellett title of bossbar {p} to "&cCoucou" #Changement de titre Dans ce code, le titre va changer 3 fois de couleur tout en affichant Coucou avec un intervalle de 10 secondes puis de 1 seconde E/Faire disparaître une bossbar: Syntaxe utilisé: set skellett visibility of bossbar {p} to false Pour faire disparaitre une bossbar sans la supprimer il suffira de cacher la bossbar en modifiant sa visibilité comme ceci: command /bossbar: trigger: set {p} to skellett new bossbar #Création de la bossbar set skellett style of bossbar {p} to SEGMENTED_6 #Segmenté en 6 set skellett color of bossbar {p} to White #Couleur Blanche add player to bossbar {p} #Ajout du joueur à la bossbar wait 10 second set skellett visibility of bossbar {p} to false #J'ai met la visibilité sur false, la bossbar disparait wait 10 second set skellett visibility of bossbar {p} to false #J'ai met la visibilité sur true, la bossbar apparaît Ici, on peut voir qu'au bout de 10 seconde, une fois la bossbar créée celle-ci va disparaitre pour réapparaitre 10 secondes plus tard. Il semblerait que nous ayons fais le tour en ce qui concerne les bossbars avec Skellett. Maintenant, nous allons faire un petit exemple d'utilisation. F/Délete une Bossbar et enleveer un joueur de cette bossbar: Synatxe utilisé: skellett hide bossbar <id de la bossbar> #Cache la bossbar à tous un peu comme le visibility skellett show bossbar <id de la bossbar> #Montre la bossbar à tous un peu comme le visibility remove player of bossbar <id de la bossbar> "Enlève un joueur de la bossbar pour ne plus qu'il la voie Je ne vois pas trop pourquoi faire des exemples, les syntaxes sont explicites et marche comme les autres. Si vous ne les comprenez pas n'hésitez pas à me le demander en commentaire ! Exemple: Vous voulez faire une bossbar qui affiche les vies du joueur tant que celui-ci est connecté, rien de plus simple: On join: set {bossbar.vie::%player%} to skellett new bossbar set skellett title of bossbar {bossbar.vie::%player%} to "&c&lVie de %player%" set skellett color of bossbar {bossbar.vie::%player%} to red set skellett style of bossbar {bossbar.vie::%player%} to SEGMENTED_20 add player to bossbar {bossbar.vie::%player%} while player is online: wait 1 second set skellett progress of bossbar {bossbar.vie::%player%} to health of player / max health of player Dans ce code, nous créons notre bossbar au moment au le joueur se connecte et nous lui mettons ces attributs, couleur, style, titre etc ... Puis avec le while, tant que le joueur est en ligne et toutes les 1 secondes, nous actualison la progressions de la bossbar en divisans la vie du joueur sur la vie max du joueur pour avoir un nombre inférieur ou égale à 1. Voila, nous arrivons à la fin de ce tuto sur les bossbars, n'hésitez pas à laissé un petit j'aime et si vous avez des questions à les laisser en commentaire, j'y répondrai du mieux que je le pourrais. Cordialement, -Clem4510
  2. 3 points
    Bonjour à vous tous ! Bon, après la petite réunion du 10/08/2018, nous avons évoqué avec le staff de faire des petits changements sur les rôles et les rangs pour donner de la diversité et du renouveau sur cette V2 et de petit à petit se détacher de l'ancien système de la V1. Je pense que vous avez pu voir ces nouveautés procéder hier avec des tests mais c'est maintenant mis en place ! Nous avons refait notre système de rang. C'est à dire que maintenant, vous n'avez plus des petits points banals ou même un Chuck Norris dégueulassement incorporé à votre profil mais bien des bannières pour démarquer votre rang. Voici la liste des rangs disponibles et quand ils s'appliqueront: - Touriste (Bannière Noire) : de 0 à 4 Élément de contenus - Nouveau (Bannière Grise) : de 5 à 14 Élément de contenus - Intéressé (Bannière Bleu Claire) : de 15 à 29 Élément de contenus - Apprenti (Bannière Bleu) : de 30 à 59 Élément de contenus - Membre (Bannière Bleu Foncé) : de 60 à 249 Élément de contenus - Habitué (Bannière Verte) : de 250 à 499 Élément de contenus - Impliqué (Bannière Orange) : supérieur à 500 Élément de contenus Nous nous sommes aussi intéressé à la reconstitution des grades. En effet , Nous avons implémenté des grades supplémentaires pour donner une sorte de fonction pour chacun et pour récompenser les plus impliqués sur le forum. Vous avez maintenant beaucoup de choix. Les grades seront donnés quand le staff remarquera une bonne participation de votre part dans l’enceinte du forum. Voici les grades implémentés et modifiés avec leur description et comment les avoir: - Développeur d'add-ons: C'est un grade qui permettra de vous démarquer par le fait que vous développez des add-ons skript pour la communauté. Comment avoir le rôle ? Rien de plus simple que de poster des add-ons - Érudit: Ce rôle est donné aux gens qui permettent à la communauté de se développer en fournissant des tutoriels de qualité ! Il vous permettra de poster des tutoriels sans passer par une vérification du staff lors de l'envoi de votre poste sur la catégorie dédiée. Postez encore et toujours plus de tutoriels ! - Membre Actif: Voila un grade qui a fait polémique et dont nous avons décidé de changer sa manière de l'avoir. Pas de panique pour les anciens MA, vous avez été transférés dans Ancien où vous allez pouvoir garder vos anciens privilèges. Cependant maintenant pour avoir ce rôle, vous allez devoir montrer votre activité parmi la communauté ! Nous ne demandons pas une connexion 7J-H24 mais une participation régulière. Dans les jeux avec des rangs vous devez montrer que vous êtes celui qui est à la hauteur pour avoir ce rôle ! Ce rôle à vu ces permissions changer notamment dans ces permissions qui vous permettront d'avoir une image de profil animé et d'autres options supplémentaires que les membres n'ont pas . Fini les gens qui viennent se plaindre en disant "Ouai mais lui il est MA mais on le voit plus !". Montrez vous présent et vous mériterez votre gain ! - Helpeur: Quel est ce rôle voyons ?! Contrairement à ce que vous pouvez penser mais helpeur ne fait aucunement partie du staff et ne possède pas de permissions de modération. Ce rôle sera attribué aux personnes impliquées dans l'aide des membres dans la communauté. C'est une forme de remerciement de notre part pour aider au développement des membres afin d'en apprendre plus et de maîtriser ce langage pour le faire grandir. Pour compléter le tout, nous avons caché un rang et un grade. Ceux qui réussiront les avoirs font partie de l'élite de Skript-Mc et prendra une grande place dans cette communauté en plus d'avoir beaucoup de privilèges ! (Attention aux abus vous n'êtes pas immunisé contre les sanctions ) Aurez vous la force de les avoir et de savoir comment les avoir ? Ce n'est pas très bien caché mais possible à avoir (Un est moins hardcore à avoir que l'autre). Quelques problèmes ont été corrigés. L'embed de partage est maintenant bien détouré, vous bénéficiez tous d'une boîte à messages infinis, le problème de mise en évidence des messages du staff sans demander, des petits problèmes de permission et j'en passe. Des choses dites ici risque de changer ou d'être peaufinées donc pas de panique ! Nous comptons sur vous pour faire prospérer Skript-Mc et faire grandir cette communauté ! Cordialement, Le staff de Skript-Mc. PS: Nous recommandons de laisser des notes sur les ressources afin de mieux les faire référencer. Ça peut jouer sur le gain de certains rôles .
  3. 3 points
    Prochainement, si Je suis actuellement en train de développer un addon qui comportera cette syntaxe, un peu de patience et tu pourras changer le nametag
  4. 2 points
    Salut, Je trouve ceci "dommage" de faire ce genre de chose, le forum est déjà là pour justement aider les utilisateurs non? donc, votre "équipe" pourrait aider sur le forum. Ensuite, discord pour aider je trouve ceci pas pratique, mais bon! Bon courage pour votre projet.
  5. 1 point
    J'aime bien ! Je l'avais déjà fait en One Command (ouais ça date ) et en Skript, et j'ai pas mal de suggestions : - quand on a hunger ça baissé plus vite - quand on a plus de bouffe ça baissé plus vite - quand on cours/saute beaucoup ça baissé plus vite que quand on marche/sneak/reste immobile - quand on est dans un désert ça baissé plus vite - quand il pleut ça remonte un poil - quand on se baigne ça remonte un peu Voilà ! Bonne chance
  6. 1 point
    Salut Tout d'abord, je t'invite à afficher tes codes dans des blocs de code. command /exemple: trigger: send "Comme ceci :)" Ensuite, je t'inviterais aussi la prochaine fois à nous indiquer tes erreurs. Sinon, pour ton problème, il ne faut pas que tu mettes de % hors d'un string set {region.%player%} to region at player # Comme ceci Voilà Si tu as besoin de plus d'explications, n'hésite pas
  7. 1 point
    command /travail: trigger: make player execute command "/jobs brosse"
  8. 1 point
    Nan la review pas la ressource x)
  9. 1 point
    function displayFlags(p: player): if {Flags.%{_p}%} is "hide": set {Flags.%{_p}%} to "show" set {_tploc} to location 1 meters left of {_p} add 1 to y-coordinate of {_tploc} spawn a armorstand at {_tploc} set {_a} to the last spawned entity set metadata value "flagsOwner" of {_a} to "%{_p}%" add "{NoGravity:1b,Small:1,Invisible:1,Invulnerable:1,NoBasePlate:1,Equipment:[{},{},{},{},{id:banner,Count:1,tag:{BlockEntityTag: {Base:15,Patterns:[{Pattern:ls,Color:4},{Pattern:rs,Color:1}]}}}],DisabledSlots:2039583}" to nbt of {_a} send "&aYour flag is visible!" to {_p} while {Flags.%{_p}%} is "show":#Tant que la variable est défini sur "show" alors [Code] stop else if {Flags.%{_p}%} is "show": set {Flags.%{_p}%} to "hide" send "&cYour flag is not longer visible!" to {_p} loop all entities: if metadata value "flagsOwner" of loop-entity is "%{_uuid}%": kill loop-entity stop else: stop Voici ton code avec la boucle while. Cela optimise grandement ton code. Il y a aussi plein de petite façon d'optimiser ton code si tu veux les connaîtres je t'invite à m'envoyer un message privé pour que je puisse t'expliquer.
  10. 1 point
  11. 1 point
    Tres bon tuto ! Bien complet et qui explore tous les aspects de la création de la bossbar avec skellett je m'étais jamais intéressé aux bossbar avant, mais ça me donne envie de m'y mettre
  12. 1 point
    Merci beaucoup de ton aide! C'est vraiment gentil à toi! Je vais pouvoir continuer mon projet pour mon serveur! Merci encore!
  13. 1 point
    Tqt j'ai déja fais un bout de code qui pourrais vraiment t'aider dans tes "recherches": options: name: Recycleur on rightclick on villager: if event-entity's name contains "{@name}": cancel event make console execute command "/recy %player%" command /recy <player> [<text>] [<text>]: permission: * trigger: if arg 2 isn't set: open virtual chest inventory with size 3 named "{@name}" to arg-1 format gui slot 0, 1, 2, 3, 5, 6, 7, 8, 18, 19, 20, 21, 22, 23, 24, 25, 26 of arg-1 with 1 green glass named " " to do nothing format gui slot 4 of arg-1 with 1 2 named "{@name}" to do nothing format gui slot 9 of arg-1 with 1 diamond sword with no nbt named "§6Armes" with lore "§7Clique-ici pour accéder aux armes" to run console command "/recy %arg-1% weapon" format gui slot 10 of arg-1 with 1 diamond chestplate with no nbt named "§6Armures" with lore "§7Clique-ici pour accéder aux armures" to run console command "/recy %arg-1% armor" else if arg 2 is "weapon": if arg 3 isn't set: open virtual chest inventory with size 3 named "{@name} §6» Armes" to arg-1 format gui slot 1, 2, 3, 5, 6, 7, 8, 18, 19, 20, 21, 22, 23, 24, 25, 26 of arg-1 with 1 green glass named " " to do nothing format gui slot 0 of arg-1 with 1 barrier named "§c« Retour" to run console command "/recy %arg-1%" format gui slot 4 of arg-1 with 1 diamond sword with no nbt named "§6Armes" to do nothing format gui slot 9 of arg-1 with 1 diamond sword with no nbt named "§aRecycler une §6épée en diamant §a?" to run console command "/recy %arg-1% weapon diamond" format gui slot 10 of arg-1 with 1 golden sword with no nbt named "§aRecycler une §6épée en or §a?" to run console command "/recy %arg-1% weapon gold" format gui slot 11 of arg-1 with 1 iron sword with no nbt named "§aRecycler une §6épée en fer §a?" to run console command "/recy %arg-1% weapon iron" format gui slot 12 of arg-1 with 1 stone sword with no nbt named "§aRecycler une §6épée en pierre §a?" to run console command "/recy %arg-1% weapon cobble" format gui slot 13 of arg-1 with 1 wooden sword with no nbt named "§aRecycler une §6épée en bois §a?" to run console command "/recy %arg-1% weapon wood" else if arg 3 is "diamond": if arg-1 has 1 diamond sword: remove 1 diamond sword from arg-1's inventory chance of 40%: give 2 diamonds to arg-1 else if arg 3 is "gold": if arg-1 has 1 golden sword: remove 1 golden sword from arg-1's inventory chance of 50%: give 2 gold ingot to arg-1 else if arg 3 is "iron": if arg-1 has 1 iron sword: remove 1 iron sword from arg-1's inventory chance of 60%: give 2 iron ingot to arg-1 else if arg 3 is "cobble": if arg-1 has 1 stone sword: remove 1 stone sword from arg-1's inventory chance of 70%: give 2 cobblestone to arg-1 else if arg 3 is "wood": if arg-1 has 1 wooden sword: remove 1 wooden sword from arg-1's inventory chance of 80%: give 2 oak planks to arg-1 else if arg 2 is "armor": if arg 3 isn't set: open virtual chest inventory with size 6 named "{@name} §6» Armures" to arg-1 format gui slot 1, 2, 3, 5, 6, 7, 8, 45, 46, 47, 48, 49, 50, 51, 52, 53 of arg-1 with 1 green glass named " " to do nothing format gui slot 0 of arg-1 with 1 barrier named "§c« Retour" to run console command "/recy %arg-1%" format gui slot 4 of arg-1 with 1 diamond chestplate with no nbt named "§6Armures" to do nothing format gui slot 9 of arg-1 with 1 diamond helmet with no nbt named "§aRecycler un §6casque en diamant §a?" to run console command "/recy %arg-1% armor diamondhelmet" format gui slot 10 of arg-1 with 1 golden helmet with no nbt named "§aRecycler une §6casque en or §a?" to run console command "/recy %arg-1% weapon goldhelmet" format gui slot 11 of arg-1 with 1 iron helmet with no nbt named "§aRecycler une §6casque en fer §a?" to run console command "/recy %arg-1% weapon ironhelmet" format gui slot 12 of arg-1 with 1 chain helmet with no nbt named "§aRecycler une §6casque en côte de maille §a?" to run console command "/recy %arg-1% weapon chainhelmet" format gui slot 13 of arg-1 with 1 leather helmet with no nbt named "§aRecycler une §6casque en cuir §a?" to run console command "/recy %arg-1% weapon leatherhelmet" else if arg 3 is "diamondhelmet": if arg-1 has 1 diamond helmet: remove 1 diamond helmet from arg-1's inventory chance of 40%: give 5 diamonds to arg-1 else if arg 3 is "goldhelmet": if arg-1 has 1 golden helmet: remove 1 golden helmet from arg-1's inventory chance of 50%: give 5 gold ingot to arg-1 else if arg 3 is "ironhelmet": if arg-1 has 1 iron helmet: remove 1 iron helmet from arg-1's inventory chance of 60%: give 5 iron ingot to arg-1 else if arg 3 is "chainhelmet": if arg-1 has 1 chain helmet: remove 1 chain helmet from arg-1's inventory chance of 70%: give 5 iron ingot to arg-1 else if arg 3 is "leatherhelmet": if arg-1 has 1 leather helmet: remove 1 leather helmet from arg-1's inventory chance of 80%: give 5 leather to arg-1 Tu auras besoin de TuSKe pour les GUI et SkStuff pour enlever les statiques affichées en-dessous des armes et des armures ^^ Et comme tu l'auras remarqué le code n'est pas complet mais tu as juste à copié/collé en remplaçant les valeurs
  14. 1 point
    Pourquoi t'as dis ça ? EDIT: Tu peux toujours liker si on ta aidé
  15. 1 point
    Salut, voici Soundex mis aux dernières version de skript et skquery, et y'a plus besoin de skutilities. Je l'ai pas du tout optimisé, mais si qqn est chaud, foncez function Soundex(a: text) :: text: set {_text} to capitalized {_a} set {_first} to first character of {_text} replace all "a", "e", "i", "o", "u", "y" and " " with "" in {_text} set {_1} to first character of {_text} set {_2} to first character of {_a} if {_1} is not {_2}: set {_text} to concatenate {_first} and {_text} set {_text::*} to {_text} split at "" loop {_text::*}: set {_v} to (loop-index parsed as number + 1) if loop-index is "1": remove loop-value from {_text::*} else: if loop-value is "%{_text::%{_v}%}%": remove loop-value from {_text::*} else: if loop-value is "B" or "F" or "P" or "V": add "1" to {_s::*} else if loop-value is "C" or "G" or "J" or "K" or "Q" or "S" or "X" or "Z": add "2" to {_s::*} else if loop-value is "D" or "T": add "3" to {_s::*} else if loop-value is "L": add "4" to {_s::*} else if loop-value is "M" or "N": add "5" to {_s::*} else if loop-value is "R": add "6" to {_s::*} else if loop-value is "H" or "W": add "*" to {_s::*} loop {_s::*}: set {_v} to (loop-index parsed as number + 1) set {_v2} to (loop-index parsed as number + 2) if {_s::*} is "*": return "%{_first}%000" else if loop-value is "%{_s::%{_v}%}%" and "%{_s::%{_v2}%}%": remove {_s::%{_v}%} from {_s::*} remove {_s::%{_v2}%} from {_s::*} else if loop-value is "%{_s::%{_v2}%}%": if "%{_s::%{_v}%}%" is "*": remove {_s::%{_v2}%} from {_s::*} else if loop-value is "*": remove loop-value from {_s::*} else: add 1 to {_t} set {_final} to concatenate {_final} and loop-value if size of {_s::*} is 1: return "%{_first}%%{_final}%00" if size of {_s::*} is 2: if {_t} is 2: return "%{_first}%%{_final}%0" else: if {_t} is 3: return "%{_first}%%{_final}%"
  16. 1 point
  17. 1 point
    Bonjour ! Je vais dans ce tutoriel, nous allons voir comment utiliser la version 2.0 de vixio pour créer un bot discord. Avant tout, petit rappel sur la création d'un bot: Sommaire : I/ Création d'un bot II/ Lié le bot et discord III/ Créer des commandes pour le bot IV/ Créer des embed V/ Documentations et sources I/ Création d'un bot : Pour commencer, il nous faut un bot. Pour ce faire, allez sur le lien https://discordapp.com/developers/applications/me . Pensez à être connecter avec votre compte sur discord. Une fois dessus, cliquez sur "New app". Ensuite, mettez en : 1) Un nom à votre bot 2) Une icone à votre bot 3) Une description à votre bot Sauvegardez en 4 votre bot. Ici, je vais appeler le bot "TestSkriptMc". Maintenant, créer un utilisateur bot, donc votre bot en lui-même. Pour se faire, descendez en bas de la page et cliquez sur "Create a Bot User" Maintenant, voyons voir les informations qu'on a. Nous avons en : 1 : Le nom d'utilisateur de votre bot 2 : Cliquez sur cette case si vous souhaitez que n'importe qui ajoute votre bot. Ici, vous devez cliquer dessus. 3 : Le token est le code le plus important du bot à ne pas perdre, ni donné. Il s'agit d'un code top secret ! Cliquez sur "click to reveal" au niveau du token pour obtenir votre code secret puis gardez le sous la main. Bravo, vous venez de créer votre bot ! II/ Lié le bot et discord : Maintenant c'est bien beau, mais on en fait quoi de ce bot ? Nous allons donc le lié au serveur discord ! Pour ce faire : 1) Aller sur le lien suivant : https://discordapi.com/permissions.html 2) Choisissez les permissions que doit avoir votre bot. 3) Allez récupérer l'id du bot qui se trouve sur la page de votre bot en haut (client id) et mettez le dans la case adéquate. 4) Cliquez sur le lien et ajoutez le bot sur votre serveur discord. Facile, vous avez déjà fait une grande part du boulot. Maintenant, créer un nouveau skript et présentez de cette manière : options: bot : <nom du bot> token : <son token> on load: login to "{@token}" with name "{@bot}" Remplacer "<nom du bot>" par le nom de votre bot et "<son token>" par son token sauvegarder au préalable. Désormais, le nom du bot sera "{@bot}" NE LAISSEZ PAS LES FLECHES ! VOTRE TOKEN ET LE NOM DE VOTRE BOT NE DOIVENT PAS ETRE ENTRE LES DEUX FLECHES ("<" et ">") !!!! NE PARTAGEZ A PERSONNE VOTRE TOKEN, IL DOIT RESTER SECRET ! Faites un "/sk reload all" et vérifiez que le bot s'est bien connecté à la fois dans la console mais aussi sur votre serveur discord. Si tout s'est bien passé, vous avez votre bot ! III/ Créer des commandes pour le bot : Bien, nous pouvons désormais voir ce que nous apportes la v2 de vixio. En effet, dans celle-ci vous allez pouvoir créer des commandes personnalisés comme avec skript. Je m'explique: avec skript, vous créez une commande de la façon suivante: command /votrecommande <text>: trigger: send "blabla c'est ma commande skript" Et bien avec vixio 2.0, c'est exactement le même principe: discord command /votrecommande <text>: trigger: reply with "blabla c'est ma commande skript" Simple non ? Tout ce qui fonctionne avec skript fonctionnera avec ce système de commande de vixio. IV/ Créer des embed : Les embed sont des données, ou encore valeurs encadrées. Comme : Ceci est bien sûr un exemple de embed xD discord command /votrecommande <text>: trigger: make embed: set author info of embed to author named "L'auteur de mon embed" with no url and icon "%avatar of event-user%" set title of embed to title with text "Le titre de votre embed" set description of embed to "La description de votre embed" set color of embed to green #la couleur de votre embed add split field named "Ma valeur" with value "La valeur de ma valeur" to field of embed set image of embed to "https://www.ludeek.com/wp-content/uploads/2017/11/dessin-licorne.jpg" set footer of embed to footer with text "Le footer de l'embed" set the thumbnail of embed to "https://cdn.discordapp.com/attachments/236641445363056651/405167105760296971/Logov2.jpg" set the timestamp of embed to now #Le timespan de l'embed reply wih last embed Voici un exemple basique d'un embed. Vous pouvez personnaliser tout les embed de bien des manières. Voici la liste des parties d'un embed que vous pouvez modifier : V/ Documentations et sources : Toutes les syntax sont disponible au lien suivant : http://vixio.space/docs/ Le téléchargement de vixio se trouve ici : https://github.com/iBlitzkriegi/Vixio/releases/tag/v2.0.0 Le lien du support est disponible ici : https://discord.gg/9xQUk2d La page officiel de l'addon : https://forums.skunity.com/resources/vixio-the-best-discord-addon-on-the-market.19/ Pour les syntaxes, elles sont disponibles dans le fichier "plugins/Vixio/Syntaxes.txt"
  18. 1 point
    on rightclick holding diamond sword: message "oui" if player is sneaking: message "oui" if {effet.%UUID of player%} is true: message "oui" if helmet of player is diamond helmet named "&l&5✦ &c&l&nArmortetsu&l&5 ✦": message "oui" if chestplate of player is diamond chestplate named "&l&5✦ &c&l&nArmortetsu&l&5 ✦": message "oui" if leggings of player is diamond leggings named "&l&5✦ &c&l&nArmortetsu&l&5 ✦": message "oui" if boots of player is diamond boots named "&l&5✦ &c&l&nArmortetsu&l&5 ✦": message "oui" if player is holding a diamond sword named "&c&lSandai Kitetsu": set {click.%UUID of player%} to false message "oui" set {effet.%UUID of player%} to true message "oui" wait 1 second if player is sneaking: wait 1 second if player is sneaking: wait 1 second if player is sneaking: wait 1 second if player is sneaking: wait 1 second if player is sneaking: wait 1 second if player is sneaking: message "ouifini" if {Ball.test.%player%} is true: pop ball large firework colored yellow at event-location to players execute console command "/effect %player% minecraft:speed 600 10" set {effet.%UUID of player%} to false set {Ball.test.%player%} to false wait 600 seconds set {effet.%UUID of player%} to true set {click.%UUID of player%} to true set {Ball.test.%player%} to true stop else: send "message de cooldown" else: set {click.%UUID of player%} to true set {effet.%UUID of player%} to true else: set {click.%UUID of player%} to true set {effet.%UUID of player%} to true else: set {click.%UUID of player%} to true set {effet.%UUID of player%} to true else: set {click.%UUID of player%} to true set {effet.%UUID of player%} to true else: set {click.%UUID of player%} to true set {effet.%UUID of player%} to true else: set {click.%UUID of player%} to true set {effet.%UUID of player%} to true else: message "bon1" if name of tool is "&c&lSandai Kitetsu": message "bon2" set {_clickdroit} to true wait 1 second set {_clickdroit} to false message "oui caca2" to player j'ai essayer ça, mais dit quand le boost commence et termine
  19. 1 point
    Ton skript utilise UMBASKA, ce plugin est vraiment bugué (c'est pas juste que je l'aime pas :/) tu ne peux et ne douis pas garder un skript utilisant Umbaska, les autres addons on reprit les syntaxes d'umbaska si tu as besoin de syntaxe... Je sais que 1 étoile est violent, mais un skript pouvant faire bugué totalement ton serveur ne peux pas en avoir plus à mes yeux...
  20. 1 point
    View File TwitterSK Code source: https://github.com/Nashoba24/TwitterSK Exemples: https://github.com/Nashoba24/WolvSK/blob/master/examples/twitter.sk Obtenir les identifiants Étape 1: Aller sur ce lien: https://apps.twitter.com/app/new et créer une nouvelle application avec le nom, la description et le site que vous voulez Étape 2: Aller sur https://apps.twitter.com/, cliquer sur l'application et cliquer sur l'onglet "Keys and Access Tokens" Étape 3: Vous pouvez sur cette page obtenir la "consumer key" et la "consumer secret key". Ensuite vous devez créer des tokens d'accès (c'est en bas de la page). Étape 4: Vous pouvez faire la même chose que l'exemple suivant pour vous connecter: https://github.com/Nashoba24/WolvSK/blob/master/examples/twitter.sk Évents Quand un tweet est mis en favori [on] tweet favorite[d] Quand un tweet n'est plus mis favori [on] tweet unfavorite[d] Quand un retweet est mis en favori [on] retweet favorite[d] Quand on vous follow [on] follow Quand un tweet est cité [on] tweet quote[d] Quand il y a un nouveau tweet dans votre timeline [on] receive tweet Quand retweet est retweeté [on] retweet retweet[ed[ tweet]] Conditions Si un utilisateur follow un autre utilisateur %twitterer% follow[s] %twitterer% Si un tweet contient un contenu choquant %tweet% is possibly sensitive Si un tweet est retweeté %tweet% is retweeted Si vous avez retweeté le tweet en question %tweet% is retweeted by me Si votre compte Twitter peut être découvert via l'adresse email twitter account is discoverable by [e]mail Si la géolocalisation est activée twitter account is geo enabled Si un tweet est en favori %tweet% is favorited Si un utilisateur existe (twitter user|twitterer) %string% exist[s] Si l'addon est connecté addon is connected Expressions Rechercher un tweet (renvoie une liste) search tweet[s] (for|with query) %string% L'auteur d'un tweet (author|twitterer) of %tweet% Niveau d'access à votre compte Twitter twitter access level Votre nombre de favoris my twitter favorite count Le nombre de favoris d'un utilisateur twitter favorite count of %twitterer% Votre nombre de follower my twitter follower[s] count Le nombre de followers d'un utilisateur twitter follower[s] count of %twitterer% Vos followers (liste) my [twitter ]follower[s] Les followers d'un utilisateur (liste) [twitter ]follower[s] of %twitterer% Votre nombre d'amis my twitter friend[s] count Le nombre d'amis d'un utilisateur twitter friend[s] count of %twitterer% Vos amis (liste) my twitter friend[s] Les amis d'un utilisateur (liste) twitter friend[s] of %twitterer% Récupérer un message grâce à l'id (direct message|dm) with id %long% Vos messages direct messages Vos tweets en favori favo[u]rites tweets Votre timeline home timeline Demandes d'amis entrantes incoming friendship[s] La langue de votre compte twitter twitter language Votre timeline où vous êtes mentionné mention timeline Limite de "rate" (Je ne sais pas vraiment ce que c'est ^^) twitter rate limit Nombre avant d'atteindre la limite twitter rate limit remaining Le temps avant reset twitter rate limit reset time Le termps restant avant reset twitter time until reset rate limit Les retweets d'un tweet (renvoie une liste de tweets) retweet[s] of %tweet% Rechercher un utilisateur (liste) search user[s] (for|with query) %string% Je ne sais pas ce que c'est ^^ twitter sleep end time Pareil ^^ twitter sleep start time Récupérer un tweet grâce à un id tweet with id %long% Le nombre de favoris sur un tweet favorite[s] count of %tweet% Le nombre de retweets sur un tweet retweet[s] count of %tweet% Le texte d'un tweet text of %tweet% Récupérer un utilisateur grâce un id user with id %long% Récupérer un utilisateur grâce à un nom user with [screen ]name %string% La description d'un utilisateur description of %twitterer% L'id d'un utilisateur id of %twitterer% Le nom d'utilisateur d'un utilisateur (username|screen name) of %twitterer% Les utilisateurs bloqués (liste) twitter blocked users Le nombres de tweets d'un utilisateur status count of %twitterer% La timeline (les tweets) d'un utilisateur timeline of %twitterer% Les demandes d'amis sortantes outgoing friendship[s] L'id d'un tweet id of %tweet% Votre compte twitter (en tant qu'utilisateur) my twitter account Effets Tweeter quelque chose tweet %string% Supprimer un tweet destroy %tweet% Bloquer un utilisateur block %twitterer% Vous connecter à votre compte Twitter twitter [debug] connect with consumer key %string%, consumer secret %string%, access token %string%( and|,) secret token %string% Mettre un tweet en favori favorite %tweet% Supprimer un message en fonction de l'id delete (direct message|dm) with id %long% Ne plus mettre un tweet en favori unfavorite %tweet% Follow un utilisateur follow %twitterer% Reporter un utilsateur pour spam report %twitterer% for spam[ing] Retweetter retweet %tweet% Ne plus bloquer un utilisateur (un|de)block %twitterer% Ne plus follow un utilisateur unfollow %twitterer% Envoyer un message a quelqu'un [send ](dm|direct message) %text% to %twitterer% Types Utilisateur twitterer Tweet tweet Submitter Nashoba Submitted 24/06/2018 Category Add-ons  
  21. 1 point
    Bonjour, bonsoir, aujourd’hui, le staff de Skript-MC se décide à ré-écrire de manière propre et structurée les règles du forum. Règlement du forum Skript-MC Ces règles sont à respecter et à appliquer à partir du moment où vous vous inscrivez sur le forum. Les posts et topics Restez calme et respectueux envers l’équipe du staff et des utilisateurs. Le partage de contenu à caractère illégal, menaçant, discriminatoire (xénophobe, racisme, etc.), pornographique, vulgaire ou harcelant est fortement interdit. Ecrivez dans un français correct, vous avez le temps avant de poster un message. L’abus de langage SMS peut être réprimé. Les pratiques comme le flood, le spam, ou l’envoi de messages sans utilité sont interdites. Les messages trop courts (smileys par exemple) seront effacés. Veuillez respecter les règles de la section dans laquelle vous postez. Évitez le hors-sujet au possible. Les ups (action de faire remonter un topic dans une catégorie en postant un message dans celui-ci) sont autorisés à intervalle de 24 heures. Les titres doivent coller au plus possible au topic. Les titres “aguicheurs” ou mensongers ne sont pas tolérés et seront supprimés. Il est fortement interdit de poster un message qui a pour but de nuire au forum ou à une personne, un utilisateur. La promotion de logiciels de triche (cheats) est interdite. Le forum est un forum francophone. Les posts doivent donc être en français et non pas dans une langue étrangère. Les sections “Aide” et “Demandes de skript” Les topics avec des titres comme “aidez moi!!!”, “probleme svp aide” sont prohibés et seront fermés voire supprimés. Veuillez effectuer des recherches avant de poster, sur le forum ou sur Google. Votre souci a très sûrement déjà été résolu autre part. Détaillez au plus possible vos demandes d’aides et ne vous contentez pas seulement de 5 lignes. Précisez la version de votre plugin Skript et la version de votre serveur. Ne créez pas des tonnes de posts pour le même souci. Si personne ne répond, faites preuve de patience et faites un “up” toutes les 24 heures, sans en abuser. N’attendez pas que l’on vous donne un code tout prêt uniquement car vous n’avez pas compris. Demandez des explications si nécessaire. La section “Ressources” Faites une présentation soignée, et non pas bâclée. Évitez les couleurs trop vives comme le jaune. Il est très important d’inscrire dans votre présentation : les dépendances du skript (skQuery, WildSkript, etc.), les versions de Minecraft compatibles, les versions de Skript compatibles, des screenshots / captures d’écran de votre création, la liste des commandes détaillées. Ne spammez pas les membres du staff pour que votre ressource soit acceptée rapidement. Les ressources sont vérifiées assez rapidement et dans les plus brefs délais. Ne partagez pas une ressource qui ne vous appartient pas sans l'avis du créateur original. Une lourde sanction sera appliquée à ceux qui copient / collent des skripts qui ne sont pas d’eux. Les publicités Les personnes s’inscrivant uniquement pour faire de la publicité, même dans une catégorie où cela est toléré seront bannies. Les liens rémunérés (adf.ly, etc.) ne sont pas tolérés sur le forum et seront supprimés. Votre profil Les signatures ne doivent pas être trop grandes ou trop présentes. Veillez à avoir une image de profil qui n’est pas trop “choquante”. Les informations que vous entrez lors de votre inscription restent et resteront confidentielles et protégées. Faites la demande auprès d’un membre du staff si vous voulez les faires retirer de votre profil. Les doubles comptes sont interdits. Si un membre banni se réinscrit sous un autre pseudo, il sera supprimé sans préavis, et le compte précédent sera banni définitivement (si la sanction était temporaire). De même, si vous êtes en situation de double compte, tous les comptes possédés hormis le plus ancien seront supprimés. Autre Ce forum est modéré à priori, les ressources ou certains messages que vous postez dans le forum ne seront pas mis en ligne directement mais lu préalablement par les modérateurs de Skript-Mc. Ceux-ci sont seuls habilités à décider de l’opportunité de publier votre ressource ou votre message. La publication d’un message ou d'une ressource posté ne vous exonère en rien de votre responsabilité concernant son contenu. Les modérateurs du forum se réservent le droit de supprimer les messages à tout moment. Ce forum est modéré à posteriori, les messages que vous postez sont directement publiés sans aucun contrôle préalable. Il est de votre responsabilité de veiller à ce que vos contributions ne portent pas préjudice à autrui et soient conforment à la réglementation du forum en vigueur. Les modérateurs se réservent le droit de retirer toute contribution qu’ils estiment déplacée, inappropriée, contraire aux règlements de catégories, à ce règlement ou susceptible de porter préjudice directement ou non à des tiers ou à un groupe de personnes. Les messages qui ne sont pas en relation avec les thèmes de discussion ou avec l’objet du forum peuvent être supprimés sans préavis par les modérateurs. Les modérateurs du forum se réservent le droit d’exclure du forum, de façon temporaire ou définitive, toute personne dont les contributions sont en contradiction avec les règles mentionnées. N’hésitez pas à contacter le staff en cas de problème avec le forum ou avec un utilisateur en question. Un Discord officiel est disponible à cette adresse. Respecter les règles de celui-ci comme le respect de ce dernier. N’hésitez pas à signaler un message ou une ressource que vous pensez “hors-règles”. Nous la réprimanderons voire la supprimerons dans les plus brefs délais. La liste des sanctions est disponible à cette adresse. En tant que modérateur de ce forum, nous nous réservons le droit de supprimer tout message qui nous semble inapproprié, sans justification. De même, le fait de participer à ce forum implique l'acceptation de ces règles, ainsi que des conditions générales d'utilisations de Skript-Mc. Si vous avez une question sur le fonctionnement du forum, une proposition d'amélioration ou autre chose, n'hésitez pas à laisser un message à l'équipe de Skript-Mc. Nous nous ferons un plaisir de les lire. Cordialement, l'équipe de modération et d'administration de Skript-Mc.
  22. 1 point
    Donc par exemple set {_maVariable} to skript-yaml value "test1.test2" from "config" c'est ca ?
  23. 1 point
    Bon. Je vois que on se plaint de moi parce que je me répète en disant que les GUIs de TuSKe sont mieux. Je peux comprendre que je suis assez relou à propos de ça, donc je vais mettre les choses au clair. Pour ceux qui n'ont jamais croisé ma route, TuSKe propose son propre système de GUIs (Graphical User Interface (dans ce cas, un menu)). Si en plus vous avez fait vos propres menus, vous avez sans doute utilisé une syntaxe du type : format slot 0 of player with stone to be unstealable Pour info, cette syntaxe provient de l'addon skQuery. Bien qu'elle semble OK vue comme ça, il y a beaucoup de problèmes avec elle. Aussi, pour une raison qui m'échappe légèrement, les gens commencent toujours (y compris moi) par utiliser skQuery pour leurs GUIs (ce qui cause pas mal de problèmes, v ous l'aurez compris). On va lister quelques bugs et limitations de skQuery et montrer comment TuSKe les résout. Bugs : La nécessité du "wait a tick" : Un bug dû à la programmation assez obscure du système de skQuery. Pas vraiment horrible en soit, mais quand même assez chiant. Les problèmes entre les lambdas et les loops : pour ceux qui ne savent pas, les bouts de codes entre [] se nomment des "lambdas". Il se trouve que les lambdas ont des problèmes avec les loops. Considérez le code suivant loop 9 times: format slot (loop-number -1) of player with stone to close then run [send "Item n°%loop-number - 1%" to player] Est-ce qu'il marche ? Oui et non. Les items se placent bien et ils exécutent bien l'effet, mais tous sans exception vont envoyer "Item n°8" au joueur. Pas très clair, hein ? Il y a bien un fix, mais il est encore moins compréhensible que le bug. Des items prenables : Parfois, on peut prendre les items du menu et les garder. Celui-ci se produit dans des circonstances obscures et assez aléatoires (ce qui est presque pire que d'avoir un bug qui se produit tout le temps). On sait en revanche que des TPS bas augmentent les chances qu'il se produise. Les fixs de TuSKe : Le système est mieux codé, plus besoin du "wait a tick" (sauf dans l'event "on click on <bloc/entité>", où il faut ajouter un "wait a tick" AVANT D'OUVRIR L'INVENTAIRE. C'est un bug de Spigot, pas de TuSKe) Plus de problèmes avec les lambdas, puisque la version de TuSKe ne comprend pas de lambdas. En effet, elle propose des alternatives bien meilleures telles que les fonctions ou de mettre le code direct à l'intérieur. Les items sont garantis imprenables. Limitations : Un slot = une ligne (ou presque). On ne peut pas formatter plusieurs slots à la fois sans l'aide d'une loop. Et on a vu qu'utiliser une loop avec les lambdas est hasardeux. "Je n'ai pas de lambdas dans ma loop", me direz-vous. Le truc, c'est que TuSKe propose une façon de faire ça encore meilleure. Une ligne = un joueur. Même scénario qu'au dessus. Les fonctions : skQuery a beaucoup de mal avec les fonctions, bien qu'elles soient de plus en plus utilisées. Certes, on peut utiliser les lambdas. Mais l'intérêt d'une fonction c'est qu'on puisse lui passer des arguments qu'on ne peut pas connaître pour qu'elle les traite. Cela induit assez souvent une loop, et loop + lambdas, ça fait 2. En plus c'est moche. Les commandes via le joueur : skQuery ne peut pas exécuter des commandes via le joueur. Sauf avec les lambdas. Est-ce que je dois encore me répéter ? En plus c'est moche (bis). Impossible de détecter le type de clic : cette fois c'est impossible de le faire avec skQuery, mais possible avec TuSKe. Ç'aurait été bien pour faire un item du type "clic gauche > telle action, clic doit > autre action" Impossible d'obtenir diverses info telles que le slot cliqué, l'item cliqué et autres : impossible avec skQuery, possible avec TuSKe. Détecter l'item dans le curseur : la même chose qu'au dessus, mais TuSKe propose une façon encore plus simple de faire ça. Exécuter du code quand le gui se ferme : idem, impossible avec skQuery, possible avec TuSKe. La réponse de TuSKe: Dans l'effet, le slot et le joueur acceptent des listes. Concrètement, ça permet de faire ça : "format gui slot integers between 0 and 8 of all players with stone" Pareil. TuSKe fournit une syntaxe dédiée aux fonctions. Ceci devient possible : "format gui slot 0 of player with stone to run function taFonction("tes", "arguments", "ici", player) La syntaxe pour les commandes de TuSKe est flexible et permet d'exécuter des commandes via le joueur : "format gui slot 0 of player with stone to run player command "commande". Marche également avec la console : "format gui slot 0 of player with stone to run console command "commande" TuSKe propose deux (voire trois si on chipote) façons d'exécuter une action selon le type de clic : GUIs simples : format gui slot 0 of player with stone to run player command "gauche" using left mouse button format gui slot 0 of player with stone to run player command "droite" using right mouse button GUIs simples bis: format gui slot 0 of player with stone to run: if gui-click-type is left mouse button: execute player command "gauche" else if gui-click-type is right mouse button: execute player command "droite" GUIs avancés: set {_p} to player # une particularité des GUIs avancés, vous en occupez pas make gui: make next gui slot with stone: if gui-clicked-type is left mouse button: execute {_p} command "gauche" else if gui-clicked-type is left mouse button: execute {_p} command "droite" Si on utilise l'effet des GUIs simples dans lequel on peut insérer du code ou si on utilise les GUIs avancés, on peut utiliser les expressions de n'importe quel addon tant que c'est celles de l'event "on inventory click". Mais TuSKe fournit ses propres expressions pour ne pas avoir à en dépendre. Liste : gui-slot gui-raw-slot gui-hotbar-slot gui-inventory gui-inventory-action gui-click-(type|action) gui-cursor gui-[(clicked|current)-]item gui-slot-type gui-player gui-players gui-inventory-name gui-slot-id gui TuSKe a propose également son propre bout de syntaxe : "format gui slot 0 of player with stone to run player command "n'imp" using cursor dirt". Ce code ne s'activera qui si le joueur clique avec un bloc de terre dans son curseur. Cette fonctionnalité n'est présente que dans les GUIs avancés et elle se présente sous la forme de : make gui: make next gui slot...: .... run when closing: broadcast "gui fermé !" FAQ : Q: "keske tu di dé jamai u deu probleim avek skQuery mdr" R: "wait a tick" est un problème pour moi. Aussi, c'est pas une raison pour ne pas passer à un truc qui est objectivement meilleur. De toute façon, à un moment ou à un autre, tu te retrouveras devant une limitation/un bug que tu ne pourras pas surmonter et tu devras passer à TuSKe (sauf si tu veux rendre ton code complètement dégueulasse, mais ça c'est toi qui vois), donc pourquoi pas le faire tout de suite ? Q: "Ça veut dire quoi 'GUI avancé' et 'GUI simple' ?" R: TuSKe propose deux façons de faire des menus : Les GUIs simples : le format ressemble à skQuery et est donc plus simple à utiliser (mais bien mieux que skQuery bien sûr :p). Ils sont légèrement limités comparés à ce qui suit. Les GUIs avancés : c'est un format RADICALEMENT différent. Ils sont plus complexes, mais vous pouvez tout faire avec. Q: "Tu fais chier à toujours répéter que TuSKe > skQuery" R: Primo, j'en ai rien à foutre. Deuzio, c'est parce que je le pense. Q: "Comment on apprend TuSKe ?" R: J'ai fait un tutoriel dessus dans la section... bah "Tutoriaux". Voilà, j'espère que j'ai répondu à toutes vos questions et que j'ai fait passer mon opinion.
  24. 1 point
    Pas de souci, n'hésite pas à mettre un j'aime si je t'ai aidé et si tu as d'autres questions avec plaisir ;) Et de mettre ton sujet en résolu ^_^
  25. 1 point
    Voilà la réponse de ce que tu as demandé Blackmine'.
×

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.