krlekraft 2 Posté : 22 décembre 2021 (modifié) Version de Minecraft : 1.16.5 Version de Skript : 2.6. Addons utilisés: (voir screen ci-joint pour plus d'informations sur les addons) Type du skript : Skript de banque voir ville interactive via des commandes et un gui Description du script : - Tout marche correctement dans mon script cependant, pour définir qu'une personne est dans une banque, j'ai fait une variable liste ; {banque.listejoueur.%player%::*}. - Quand une personne rejoint une banque elle reçoit la permission : banque.user.%(làc'estlenomdelabanque% et si elle l'a créée : banque.admin.%(làc'estlenomdelabanque% et elle est ajoutée à la variable liste. - Ce que j'aimerais (et déjà essayé en vain sans réussites) c'est que une fois la suppression de la banque, toutes les personnes à l'intérieur sont kick automatiquement. Alors j'ai réussi à moitié car si la personne est connectée, tout fonctionne parfaitement mais si elle n'est pas connecté au serveur, le loop que j'ai fait ne la détecte pas. Sachant aussi que j'ai essayé avec des loops tels que "loop all offline players:" ou "loop {banque.listejoueur.%player%::*}:" voir même "loop all players in {banque.listejoueur.%player%::*}:" en utilisant les "loop-value" et "loop-players" comme réponse. Et rien de tout cela ne fonctionne - Voici cette partie du script (je me suis amusé à mettre des descriptions des lignes en espérant que c'est le plus compréhensible possible ! ) : (vous trouverez aussi ci-joint le screen du code avec des couleurs pour que ce soit mieux visible) - Alors je sais que j'aurais pu faire une loop pour les deux permissions mais maintenant que c'est fait j'ai un peu la flemme de modifier ^^. Du coup ce qu'il faut regarder c'est le deuxième "loop all players" Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Si quelqu'un a une solution pour que cette partie du script prenne aussi en compte les joueurs non connectés et qui pourrait m'aider ! Je vous remercie d'avance ! Modifié 5 janvier 2022 par krlekraft Partager ce message Lien à poster Partager sur d’autres sites
KneaXy 1 Répondu : 22 décembre 2021 Les listes c'est bien, mais là c'est très mal utilisé, le ::* ça aurait dû être ::%player% C'est littéralement impossible de trier les variables là, c'est une demi liste... Pour définir ça aurait dû être genre ça : {banque::%player%} et pas {banque.%player%::*} Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 23 décembre 2021 Le 22/12/2021 à 23:34, KneaXy a dit : Les listes c'est bien, mais là c'est très mal utilisé, le ::* ça aurait dû être ::%player% C'est littéralement impossible de trier les variables là, c'est une demi liste... Pour définir ça aurait dû être genre ça : {banque::%player%} et pas {banque.%player%::*} Je comprends pas la différence A quoi sert l'étoile après les deux points dans ce cas ? Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 5 janvier 2022 Le 22/12/2021 à 23:34, KneaXy a dit : Les listes c'est bien, mais là c'est très mal utilisé, le ::* ça aurait dû être ::%player% C'est littéralement impossible de trier les variables là, c'est une demi liste... Pour définir ça aurait dû être genre ça : {banque::%player%} et pas {banque.%player%::*} J'ai remplacé {banque.%player%::*} par {banque::%player%} et ça ne marche pas et c'est normal car je veux que la liste soit la même pour tous les joueurs du serveur. Du coup j'avais bien fait de mettre ::* Partager ce message Lien à poster Partager sur d’autres sites
creepther 2 Répondu : 5 janvier 2022 (modifié) Hello du coup c'est bon ? car en lisans tu a tester aussi un loop all offline players ? Modifié 5 janvier 2022 par creepther Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 5 janvier 2022 il y a une heure, creepther a dit : Hello du coup c'est bon ? car en lisans tu a tester aussi un loop all offline players ? Hey, non ce n'est pas bon, oui mais le offline player ne fonctionne pas Partager ce message Lien à poster Partager sur d’autres sites
creepther 2 Répondu : 5 janvier 2022 il y a 4 minutes, krlekraft a dit : Hey, non ce n'est pas bon, oui mais le offline player ne fonctionne pas Ah c'est problématique, je vais faire mes petites recherche mais il faudrait limite voir a faire un remove all offline player from ... et laisser la ligne aussi remove all player tu vois ce que je veux dire ? ou tu a du tout juste deja essayé ^^ Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 5 janvier 2022 il y a 1 minute, creepther a dit : Ah c'est problématique, je vais faire mes petites recherche mais il faudrait limite voir a faire un remove all offline player from ... et laisser la ligne aussi remove all player tu vois ce que je veux dire ? ou tu a du tout juste deja essayé ^^ J'avais dit ça dans mon premier message : "Sachant aussi que j'ai essayé avec des loops tels que "loop all offline players:" ou "loop {banque.listejoueur.%player%::*}:" voir même "loop all players in {banque.listejoueur.%player%::*}:" en utilisant les "loop-value" et "loop-players" comme réponse. Et rien de tout cela ne fonctionne " Si ça répond à ta question Partager ce message Lien à poster Partager sur d’autres sites
creepther 2 Répondu : 5 janvier 2022 il y a 3 minutes, krlekraft a dit : J'avais dit ça dans mon premier message : "Sachant aussi que j'ai essayé avec des loops tels que "loop all offline players:" ou "loop {banque.listejoueur.%player%::*}:" voir même "loop all players in {banque.listejoueur.%player%::*}:" en utilisant les "loop-value" et "loop-players" comme réponse. Et rien de tout cela ne fonctionne " Si ça répond à ta question Ouai ouai j'avais bien capté mais moi je te demande si tu a tester : if {banque::*} contains arg-2: #voir si la banque existe dans la liste des banques remove arg-2 from {banque::*} #supprime la banque de la liste des banques remove all offline player from {banque.listejoueur.%arg-2%::*} remove all players from {banque.listejoueur.%arg-2%::*} #enlève tous les joueurs dans la liste de la banque Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 5 janvier 2022 il y a 43 minutes, creepther a dit : Ouai ouai j'avais bien capté mais moi je te demande si tu a tester : if {banque::*} contains arg-2: #voir si la banque existe dans la liste des banques remove arg-2 from {banque::*} #supprime la banque de la liste des banques remove all offline player from {banque.listejoueur.%arg-2%::*} remove all players from {banque.listejoueur.%arg-2%::*} #enlève tous les joueurs dans la liste de la banque J'ai essayé en rajoutant juste "remove all offline player from {banque.listejoueur.%arg-2%::*}" sauf que il manque encore pleins de trucs. Dans le loop là c'est tout ce que ça doit faire au joueur, là actuellement cette loop fonctionne mais juste pour les personnes connectées. Et c'est là où j'ai rajouté du coup la ligne que tu m'as dit en plus Partager ce message Lien à poster Partager sur d’autres sites
creepther 2 Répondu : 5 janvier 2022 il y a 6 minutes, krlekraft a dit : J'ai essayé en rajoutant juste "remove all offline player from {banque.listejoueur.%arg-2%::*}" sauf que il manque encore pleins de trucs. Dans le loop là c'est tout ce que ça doit faire au joueur, là actuellement cette loop fonctionne mais juste pour les personnes connectées. Et c'est là où j'ai rajouté du coup la ligne que tu m'as dit en plus Tu a test du coup si j'ai comprit loop all player: loop offline player: (pas loop all offline player) if loop-player ... if loop offline player ... je t'avoue je sais pas si ça va marcher ^^ mais ma machine est pas allumé la x) Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 5 janvier 2022 il y a 17 minutes, creepther a dit : Tu a test du coup si j'ai comprit loop all player: loop offline player: (pas loop all offline player) if loop-player ... if loop offline player ... je t'avoue je sais pas si ça va marcher ^^ mais ma machine est pas allumé la x) Oui c'est ça, j'avais déjà tout essayé, là je réessaie avec le loop offline player mais ça ne marche pas C'est le loop-players qu'il ne reconnait pas, je dois mettre loop-value, il me semble avoir déjà essayé et ça ne marchait pas non plus x) Partager ce message Lien à poster Partager sur d’autres sites
creepther 2 Répondu : 5 janvier 2022 (modifié) Tu a juste essayer loop-player's (avec 's) ? ou if loop-player has the permission Modifié 5 janvier 2022 par creepther Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 5 janvier 2022 (modifié) il y a 5 minutes, creepther a dit : Tu a juste essayer loop-player's (avec 's) ? Oui j'ai enlevé le s justement pour voir si c'était ça le problème mais ça ne marche toujours pas Modifié 5 janvier 2022 par krlekraft Partager ce message Lien à poster Partager sur d’autres sites
KneaXy 1 Répondu : 8 janvier 2022 Le 05/01/2022 à 15:50, krlekraft a dit : J'ai remplacé {banque.%player%::*} par {banque::%player%} et ça ne marche pas et c'est normal car je veux que la liste soit la même pour tous les joueurs du serveur. Du coup j'avais bien fait de mettre ::* Je t'ai dis que c'était impossible aussi bg, tu dois littéralement reset les statistiques pour mettre une VRAIE liste ^^ Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 8 janvier 2022 il y a 2 minutes, KneaXy a dit : Je t'ai dis que c'était impossible aussi bg, tu dois littéralement reset les statistiques pour mettre une VRAIE liste ^^ Tu peux expliquer un peu plus stp ? Car là tu me dit ça mais je ne comprends pas Partager ce message Lien à poster Partager sur d’autres sites
Xamez 72 Répondu : 12 janvier 2022 (modifié) Le 05/01/2022 à 19:07, krlekraft a dit : Oui c'est ça, j'avais déjà tout essayé, là je réessaie avec le loop offline player mais ça ne marche pas C'est le loop-players qu'il ne reconnait pas, je dois mettre loop-value, il me semble avoir déjà essayé et ça ne marchait pas non plus x) Salut, alors désolé si je réponds à côté ou autre par rapport au problème initial, mais a priori l'erreur vient tout simplement du fait que tu ne précises pas de quelle boucle (loop) tu parles. Tu dois donc spécifier de cette manière : Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Modifié 12 janvier 2022 par Xamez Partager ce message Lien à poster Partager sur d’autres sites
krlekraft 2 Répondu : 12 janvier 2022 Il y a 1 heure, Xamez a dit : Salut, alors désolé si je réponds à côté ou autre par rapport au problème initial, mais a priori l'erreur vient tout simplement du fait que tu ne précises pas de quelle boucle (loop) tu parles. Tu dois donc spécifier de cette manière : Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Hey ! Ca ne change rien à part que ça envoie fait pour ceux qui sont en ligne. Voici le code : 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
MinePvPHD 4 Répondu : 25 janvier 2022 Bonjour alors je pense que tu as juste a garder le code que t'as mis en haut, et mettre remove all players from listedetouteslesbanques a la fin en attendant au lieu de loop les joueurs tu loop la liste qui les contient, qu'ils soient offline ou non ils sont dedans s'ils font partis de la banque Partager ce message Lien à poster Partager sur d’autres sites
Joriis 267 Répondu : 4 mars 2022 Le sujet a été résolu partiellement. Il a donc été verrouillé. Cordialement, l'équipe. Partager ce message Lien à poster Partager sur d’autres sites