Aller au contenu

[Tutoriel] Afficher une liste dans un GUI ! (menu)


Messages recommandés

  • 4 mois après...
  • 3 semaines après...
Posté(e)

Bon tutoriel mais attention,

 

Lorsque vous utilisez une liste dans un GUI, TOUS les slots conserveront la même donnée que le premier. Ce qui fait que si j'utilise ceci par exemple :

 

command /test:
   trigger:
       open chest with 6 rows named "Test" to player
       wait 2 ticks
       set {_s} to 0
       loop all players:
           format slot {_s} of player with loop-player's skull named "%loop-player%" to run [make player execute command "/kill %loop-player%"]
           add 1 to {_s}

 

Et que le premier joueur du loop est, imaginons, McGuard, et bah quand je cliquerais sur un slot, peu importe lequel, je retournerais toujours sur McGuard. C'est en effet un bug de SkQuery qui ne supporte pas les "format slot..." dans les loops.

 

Mais y a une solution ! Il faut utiliser l'effet "evaluate" qui permet de transformer des textes directement en code, ce qui donne ceci :

 

command /test:
   trigger:
       open chest with 6 rows named "Test" to player
       wait 2 ticks
       set {_s} to 0
       loop all players:
           evaluate "format slot %{_s}% of player with loop-player's skull named ""%loop-player%"" to run [make player execute command ""/kill %loop-player%""]"
           add 1 to {_s}

 

Et là ça fonctionnera^^ !

 

  • J'aime 1
Posté(e)
Bon tutoriel mais attention,

 

Lorsque vous utilisez une liste dans un GUI, TOUS les slots conserveront la même donnée que le premier. Ce qui fait que si j'utilise ceci par exemple :

 

command /test:
   trigger:
       open chest with 6 rows named "Test" to player
       wait 2 ticks
       set {_s} to 0
       loop all players:
           format slot {_s} of player with loop-player's skull named "%loop-player%" to run [make player execute command "/kill %loop-player%"]
           add 1 to {_s}

 

Et que le premier joueur du loop est, imaginons, McGuard, et bah quand je cliquerais sur un slot, peu importe lequel, je retournerais toujours sur McGuard. C'est en effet un bug de SkQuery qui ne supporte pas les "format slot..." dans les loops.

 

Mais y a une solution ! Il faut utiliser l'effet "evaluate" qui permet de transformer des textes directement en code, ce qui donne ceci :

 

command /test:
   trigger:
       open chest with 6 rows named "Test" to player
       wait 2 ticks
       set {_s} to 0
       loop all players:
           evaluate "format slot %{_s}% of player with loop-player's skull named ""%loop-player%"" to run [make player execute command ""/kill %loop-player%""]"
           add 1 to {_s}

 

Et là ça fonctionnera^^ !

Utiliser un "sudo" régle aussi le probléme de mémoire

Par contre pour le "evalute" je ne connais pas et je te remercie

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

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.