Voserv 63 Posté : 20 juin 2015 Bonjour, Dans ce tutoriel, nous allons étudier les Loops. Celles-ci permettent par exemple de viser une variable ou un groupe de choses (de joueurs pas exemples). Nous allons voir ça de plus près. I/Loop avec un groupe: A)Les joueurs Grâce aux loop, vous pouvez sélectionner un groupe entier, par exemple tout les joueurs, exemple: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Là, ma commande prend en compte tout les joueurs présents sur le serveur et leur montre le message. Tout les joueurs présents reçoivent donc ce message. Il est aussi possible de faire une sélection, par exemple, sélectionner tout les joueurs, et trier ceux qui ont les permissions, exemple: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Là, ma commande sélectionne tout les joueurs du serveur et fait un tri, entre ceux qui ont la permission "skript.test" et ceux qui n'ont pas la permission. Avec ce tri, la commande montrera le message "Tu a la permission" aux joueurs ayant la permission, et montrera le message "Tu ne possède pas la permission :(" aux autres. B)Entitées Il est possible de sélectionner les entités par exemple, pour comme les joueurs, faire un tri ou autre, exemple: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Là, la commande sélectionne tout les mobs dans le monde "test", ensuite il fait un tri entre ceux qui sont des creepers et ceux qui ne sont pas des creepers. Après avoir sélectionne tout les mobs, il ajoute 1 dans la variable {creeper.variable} pour chaque creeper. C)Les inventaires Il y a encore beaucoup de possibilités que je ne pourrais pas vous lister, mais, il est aussi possible de sélectionner les items dans les inventaires des joueurs, comme ici: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Tout d'abord, vous devez sélectionner tout les joueurs à l'aide de "loop all players". Après avoir sélectionné tout les joueurs, grâce à "loop all items in loop-player's inventory", vous sélectionnez tout les diamants dans les inventaires, avec "if loop item is diamond", et si oui, cela ajoute 1 dans la variable {diamond.variable}. Il existe encore beaucoup de possibilités, mais nous allons nous arrêter là pour l'instant. II/Loop les listes: A)C'est quoi une liste ?: Une liste, ça marche comme une variable, sauf que seules les listes peuvent marchent avec les Loops. Et les listes peuvent stocker des entités, des joueurs, et bien d'autres choses par rapport aux variables. Une liste s'écrit comme ça: {liste.test::*}, par rapport à une variable qui s'écrit comme cela: {liste.test}. B)Ca sert à quoi ?: Grâce à cela, vous pouvez stocker des entités, des joueurs (pratique pour les groupes) et même des coordonées, des endroits précis. Nous allons voir de plus près l'utilité des loops. C)Utiliser des loops: Imaginons, vous voulez garder la position d'un bloc, à l'aide de ce skript: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Là, en utilisant la commande /addpos, vous ajoutez la position du bloc que vous regardez dans la liste {blocs.liste::*}. Ajouter une position par exemple est une chose possible que avec les listes. Ensuite, nous allons faire un skript pour remplacer TOUT les blocks ajoutés dans la liste en bloc de diamant: Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Avec cette commande, vous sélectionnez tout les blocks enregistrés dans la variable {blocs.liste::*}. Ensuite, vous placez {_loc} à l'endroit de chaque bloc enregistré (loop-value correspond aux blocs enregistrés). Et ensuite le bloc qui est à {_loc} est transformé en bloc de diamant. Vous allez me dire qu'il est possible de faire la même chose sans les listes, mais l'avantage des listes, c'est que vous pouvez sélectionner tout les blocs enregistrés d'un coup ! Voilà, mon troisième tutoriel est terminé, j'espère qu'il vous aura aidé et n'hésitez pas à me poser des questions, surtout que la partie ci-dessus est assez compliqué à comprendre. 8 Partager ce message Lien à poster Partager sur d’autres sites
MinePlugins 104 Répondu : 21 juin 2015 Super tuto Partager ce message Lien à poster Partager sur d’autres sites
Voserv 63 Répondu : 21 juin 2015 Merci ;) Partager ce message Lien à poster Partager sur d’autres sites
attila46 0 Répondu : 24 juin 2015 merci pour ton tuto :) Partager ce message Lien à poster Partager sur d’autres sites
Voserv 63 Répondu : 24 juin 2015 Derien :) Partager ce message Lien à poster Partager sur d’autres sites
Im_PasteK 97 Répondu : 3 juillet 2015 comment on pourrait loop le slot d'une épée ? Partager ce message Lien à poster Partager sur d’autres sites
angelus76 222 Répondu : 3 juillet 2015 comment on pourrait loop le slot d'une épée ? Quoi ? Partager ce message Lien à poster Partager sur d’autres sites
Im_PasteK 97 Répondu : 3 juillet 2015 En gros je veux loop les items dans l'inventaire et dedans loop le slot de l'inventaire de l'épée (la case de l'inventaire) Partager ce message Lien à poster Partager sur d’autres sites
angelus76 222 Répondu : 3 juillet 2015 je croie que c'est un truc du genre loop player's inventory: a verifé Partager ce message Lien à poster Partager sur d’autres sites
Krown0s 175 Répondu : 3 juillet 2015 Merci ! Ce tuto va être très utile pour moi ^^ 2 Partager ce message Lien à poster Partager sur d’autres sites
Spidoka 25 Répondu : 4 juillet 2015 Merci beaucoup pour ce tuto. Il va m'aider. Car moi et les loops sa faisait deux. Bonne soirée. Spidoka 2 Partager ce message Lien à poster Partager sur d’autres sites
ByNow 54 Répondu : 5 décembre 2015 Merci beaucoup j'ai appris plein de choses :) Partager ce message Lien à poster Partager sur d’autres sites
> NoaGamingFR 247 Répondu : 9 avril 2016 Ya pas d'exit loo Partager ce message Lien à poster Partager sur d’autres sites
FireKilleur54 6 Répondu : 23 avril 2016 Salut tu saurait comment loops toutes les armors stands ? Partager ce message Lien à poster Partager sur d’autres sites
Azen 59 Répondu : 15 juin 2016 Fais Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Partager ce message Lien à poster Partager sur d’autres sites
FireKilleur54 6 Répondu : 16 juin 2016 Merci Partager ce message Lien à poster Partager sur d’autres sites
Azen 59 Répondu : 17 juin 2016 N'hésite pas à m'attribuer un "j'aime" ;) Partager ce message Lien à poster Partager sur d’autres sites
Milwen 2 Répondu : 16 juillet 2017 J'ai un problème, j'ai écrit: loop all player in world "lobbysk01": Et cela me dit: Empty configuration section etc... Pouvez-vous m'aider plz :s Partager ce message Lien à poster Partager sur d’autres sites
Blackmine57 250 Répondu : 16 juillet 2017 J'ai un problème, j'ai écrit: loop all player in world "lobbysk01": Et cela me dit: Empty configuration section etc... Pouvez-vous m'aider plz :s C'est parce qu'il faut mettre la suite du code, comme un send (Après le loop) 1 Partager ce message Lien à poster Partager sur d’autres sites
HardTrox 159 Répondu : 20 juillet 2017 Vraiment intéressant. 2 1 Partager ce message Lien à poster Partager sur d’autres sites
Milwen 2 Répondu : 26 juillet 2017 Merci Beaucoup Blackmine57 ! Mais j'ai juste une dernière question . J'ai fais commencer à codé un mini-jeux dans lequel on peut poser des blocs. Mais je voudrais que lorsque la game se termine, touts les blocs de sandstone de la map soit remplacé via un loop. Je sais que l'on peut le faire via le système de {blocs.liste::*} mais cette technique est extrèmement longues (il faut set bloc par bloc tout les bloc de la map) N'y a t-il pas une technique plus simple et plus rapide ? Partager ce message Lien à poster Partager sur d’autres sites
Milwen 2 Répondu : 15 septembre 2017 Encore moi x) J'ai un problème :s J'ai fait un système de shop mais voila se que cela me fait :/ J'ai utilisé des loop dedans mais rien n'y fait :'( Voilà le code command /vente: trigger: open chest with 6 rows named "&1Vente &6&oInv &1!" to player wait 2 ticks format slot 0 of player with a cobblestone named "Cobblestone" with lore "&7Vente: &615" to run [make player execute command "/vcobblestone"] command /vcobblestone: trigger: loop all players: loop all items in loop-player's inventory: if {vente.%uuid of loop-player%} is "cobblestone": if loop item is cobblestone: remove 1 cobblestone from loop-player's inventory send "&aAchat effectué !" add 15 to {coins.%uuid of loop-player%} set {vente.%uuid of player%} to "x" else: send "&cVous n'avez pas de cobblestone à vendre !" set {vente.%uuid of player%} to "x" stop else: stop Et cela me met plein de "indentation error" :'( quand je reload le skript :'( Help me please :'( :'( :'( Partager ce message Lien à poster Partager sur d’autres sites
AltaWineMomoth 32 Répondu : 15 septembre 2017 peut être car tout est a la ligne Partager ce message Lien à poster Partager sur d’autres sites
angelus76 222 Répondu : 15 septembre 2017 Mettre le code dans des balises code serais mieu pour la lecture, la j'ai plus envie de le lire car il faut que j'imagine l'indentation ... Partager ce message Lien à poster Partager sur d’autres sites
Milwen 2 Répondu : 11 octobre 2017 Merci pour votre aide mais j'ai résolu mon problème ! Au lieu d'utilier un système de loop, j'ai utilisé la condition "if player has a cobbestone :" Merci quand mm de votre aide :D Partager ce message Lien à poster Partager sur d’autres sites