Shykuzo 69 Posté : 17 mars 2021 Version de Minecraft : 1.13.x - 1.14.x (Native : 1.14.4) Version de Skript : 2.5.3 Addons utilisés: Vixio, Skript-GUI, SkQuery, SkEnt, SkDragon, Skellett, SkBee, SharpSK et Reqn Type du skript : Echange d'objets entre joueurs Description du script : Bonjour à tous et à toutes ! J'ai créer une commande afin d'échanger un ou plusieurs objets entre deux joueurs, celle-ci n'est pas encore terminée mais je rencontre un problème plutôt énervant. Quand j'exécute la commande "/trade", tout vas très bien, l'autre joueur reçoit bien la demande et quand lui fait cette même commande, pas de problème non plus. Cependant, si je ferme l'inventaire, des centaines de messages s'envoient disant "... à annulé l'échange !", le menu de l'autre joueur ne se ferme pas automatiquement et le serveur peut crasher. Il ne crash pas à tout les coups mais c'est déjà arrivé une fois, pas que j'ai une mauvaise machine, non, elle est assez puissante mais même certain de mes Skripts, tel que celui qui gère les logs, crash. Voici le code : Citation Contenu masqué Réagissez ou répondez à ce message afin de consulter le contenu masqué. Ce problème est très embêtant car mon serveur prend des plombs à se relancer et crash une fois sur deux tellement il y a de trucs à chargés ... Si vous avez la solution à mon problème, merci à vous ! Bonne journée ! Partager ce message Lien à poster Partager sur d’autres sites
LOUDO 66 Répondu : 19 mars 2021 (modifié) De ce que j'ai compris, quand un des deux joueurs ferme le GUI, sa t'envoie plusieurs messages en même temps dans le chat donc je pense que il faut couper cette "boucle" en mettant "stop" ? Modifié 19 mars 2021 par LOUDO Partager ce message Lien à poster Partager sur d’autres sites
Shykuzo 69 Répondu : 19 mars 2021 (modifié) Il y a 18 heures, LOUDO a dit : De ce que j'ai compris, quand un des deux joueurs ferme le GUI, sa t'envoie plusieurs messages en même temps dans le chat donc je pense que il faut couper cette "boucle" en mettant "stop" ? Peut-être, je n'y ai pas pensé, j'essayerais plus tard EDIT : Sa ne fonctionne pas (Aucune erreur) Modifié 20 mars 2021 par Shykuzo Partager ce message Lien à poster Partager sur d’autres sites
niwood 4 Répondu : 10 mai 2021 Tu a juste à mettre des stop au bonne endroit pour que ton code s'exécute correctement else: delete {Trade::%arg-1%} create a gui with virtual chest inventory with 3 rows named "&8● &bTrade" with stealable items: run on gui close: if player has a gui open: close player's inventory send "{@Prefix} &e%arg-1% &7à annulé l'échange !" to player send "{@Prefix} &7Vous avez annulé l'échange !" to arg-1 stop else if arg-1 has a gui open: close arg-1's inventory send "{@Prefix} &e%player% &7à annulé l'échange !" to arg-1 send "{@Prefix} &7Vous avez annulé l'échange !" to player stop open last gui to player and arg-1 stop else: send "{@Error} &cIl semblerait que le joueur saisis ne soit pas dans le même monde que vous !" to player stop En gros ton erreur c'étais que même si player ferme le gui bah ça va quand même le faire a arg-1 c'est pour ça que t'avais le double message sur arg-1 et player la ce que ça va faire c'est que si player ferme le menu ça ferme le gui envois les message et stop pareil avec arg-1 mais si t'es condition sont fausse ça va ouvrir le gui et stop Quand tu as des erreur comme ça de double message ou autre c'est qu'il manque un stop Partager ce message Lien à poster Partager sur d’autres sites
Joriis 267 Répondu : 27 juin 2021 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