Aller au contenu

Format le contour d'un GUI avec un block précis


Messages recommandés

Posté(e)

Bonjour,

Petit bout de code qui permet de mettre dans un GUI un même blocs pour en faire le contour.

Voici le code :

 

set {_block} to purple glass # le block
set {_name} to "NOM" # son nom
set {_lore} to "LORE" # sa description
loop 9 times: # ces 2 loops permettent de remplir d'un certain objet le contour du coffre. Réalisé de sorte que quelle que soit la taille du coffre, tous les contours soient remplis
          format slot loop-value - 1 of player with {_block} named {_name} with lore {_lore} to be unstealable # loop value = 1->9  -1, car le premier slot porte le numéro 0 => toute la première ligne
          format slot loop-value - 1 + (((inventory size of player's current inventory)/9) -1)*9 of player with {_block} named {_name} with lore {_lore} to be unstealable # loop-value -1 pareil qu'au dessus, + ((inventory size of player's current inventory)/9) -> nombre de lignes, -1 car on ne compte pas la première, *9 pour que l'on arrive sur la dernière ligne du GUI. Prenez un papier et faites un exemple, ça sera plus clair (c'est ce que j'ai fait ^^)
        loop ((inventory size of player's current inventory)/9)-2 times: # on loop le nombre de lignes du GUI, -2 car on ne compte pas les première et dernière lignes
          format slot (9*loop-value) of player with {_block} named {_name} with lore {_lore} to be unstealable # 9*1 = 9 -> première case de la 2eme ligne, 9*2 = 18 -> 2eme case de la 2eme ligne etc.
          format slot (9*loop-value) + 8 of player with {_block} named {_name} with lore {_lore} to be unstealable # même raisonnement qu'au dessus, +8 pour avoir la dernière case au lieu de la première

 

Avec ces valeurs et un coffre de 5 lignes, cela donne ceci :

 

[ATTACH]4161[/ATTACH]

 

Même avec des tailles de coffres bugués, le code fonctionne, par exemple avec un coffre possédant 9 lignes :

 

[ATTACH]4162[/ATTACH]

 

Attention quand même, dans mon code les syntaxes utilisées sont celles de SkQuery et Skellett, si vous vous servez d'autres addons pour vos GUI pensez à les modifier (la logique reste la même ^^)

 

Voilà, ça peut être pratique de rentrer ce code dans un bout de fonction, comme ça pas besoin de formater toutes les cases une par une. Dites moi si vous trouvez ça utile ^^

 

 

Blueblasterz

Posté(e)

Y a plus opti :

 

loop integers between 0 and 53:
   loop-integer is 0 or 1 or 2 or 3 # Ceci est un exemple, vous pouvez faire les slots de votre choix.
   format slot loop-integer of player with purple glass ...

  • J'aime 2
Posté(e)
Y a plus opti :

 

loop integers between 0 and 53:
   loop-integer is 0 or 1 or 2 or 3 # Ceci est un exemple, vous pouvez faire les slots de votre choix.
   format slot loop-integer of player with purple glass ...

 

Ton code est certes plus simple, mais on est obligé de l'adapter pour chaque tailles de coffre si on veut pouvoir faire les slots du contour.

Je pense que mon code est plus pratique tant qu'on ne veut QUE faire le contour, et que le tient est mieux si on veux faire des motifs particuliers à l'intérieur du coffre :)

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

Je pense qui suffit juste de faire ça:

set {_l} to 0
loop <nombre de lignes> times:
   fomat slot {_l} ...
   format slot {_l} + 8 ...
   add 9 to {_l}

et a faire le haut et le bas

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.