Aller au contenu

Messages recommandés

Posté(e) (modifié)

Salut !

Voici une MaJ de l'ancien tuto, toujours dispo dans le spoiler juste en dessous.

Bref avec TuSKe, (qui est l'addon a utiliser pour faire vos GUI, il ne faut pas utiliser TuSKe, voir ici pourquoi), pour remplir entièrement un GUI, vous pouvez simplement faire ceci :

format gui slot 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 and 26 of player with black stained glass pane to do nothing

Comme vous pouvez le voir j'utilise une syntaxe de tuske de base, et à la place de mettre un numéro de slot, je mets une liste de numéro. Pour savoir quels numéros mettre, il faut faire <nb de ligne>*9-1. Donc là j'ai fais 3*9-1 donc 2). Notez que je mets *9 car il y a 9 colonnes, et -1 car on commence à 0

Et voilà, vous avez rempli votre gui de 3 lignes efficacement.

Voici à présent comment faire les contours pour un gui de 3 lignes :

	format gui slot 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25 and 26 of player with black stained Glass pane to do nothing
	

Idem, j'utilise ici une liste de nombre.

Merci !

 

 

IMPORTANT : Ce tuto est vieux est n'est plus recommandé pour plusieurs raisons :

Il faut utiliser TuSKe pour les gui, pas SkQuery.la j'utilise SkQuery.

Avec TuSKe, on peut format plusieurs slot d'un coup : c'est + opti et ça prend moins de place

C'etait les débuts en Skript et je ne connaissais pas encore les variables locale. Or il faudrait en utiliser ici. Voilà ! Je vous conseil donc de garder la méthode ci-dessus.

 

Bonjour tout le monde !

 

Voici un petit tutoriel pour vous montrer comment simplement optimiser un script qui ouvre un/des gui, remplis de quelque chose dans les cases vides.

Je m'explique :

imaginons que vous voulez ouvrir un GUI avec des items, et remplis de vitres colorées, comme ci-dessous :

 

1466781913-2016-06-24-17-24-24.png

 

Et bah je vais tout simplement vous montrer comment le faire, sans avoir à répéter 36 fois


format slot 0 of player with 1 of black glass named " " to unstealable
 

 

Pour l'exemple, la commande sera le /test ; et le GUI : le GUI ci dessus.

On commence donc avec la base :


command /test:
   trigger:
       open chest with 3 rows named "&a&lOptimiser un &2&lGUI &a&l!" to player
       wait a tick
 

 

ensuite, on va set une variable que l'on utilisera ensuite. Pour le tuto, elle s'appellera "slotfill"

On rajoute donc la ligne


set {slotfill} to 0
 

puis on va boucler deux actions. Le nombre de boucles que l'on va utiliser est en fait

<votre nombre de ligne>x9

Donc comme on a 3 ligne, on fait 3x9=27

 

On rajoute donc les lignes


set {slotfill} to 0
loop 27 times:
 

Puis on va mettre les vitres, et ajouter 1 au numéro du slot, de la façon suivante:


set {slotfill} to 0
loop 27 times:
   format slot {slotfill} of player with black glass named " " to be unstealable
   add 1 to {slotfill}
 

 

on a donc une vitre qui se mets au slot zero, puis on ajoute 1 à la variable, qui est donc à 1. La deuxième boucle mettra donc la vitre au slot 1, puis ainsi de suite, pour les 27 slot.

 

Pour rajouter des items par dessus (comme le diamant), il suffit d'utiliser la ligne de code habituelle.

Le code entier pour créer le GUI est donc:


command /test:
   trigger:
       open chest with 3 rows named "&a&lOptimiser un &2&lGUI &a&l!" to player
       wait a tick
       set {slotfill} to 0
       loop 27 times:
           format slot {slotfill} of player with black glass named " " to be unstealable
           add 1 to {slotfill}
       format slot 13 of player with diamond named "&b&lEt voilà" to close then run [make player execute command "/say Ca marche !"]
 

 

IMPORTANT >> si vous avez plusieurs GUI en 1 seul fichier, changez les noms des variables !

 

EDIT : au lieu d'utiliser une variable {slotfill}, vous pouvez utiliser une variable locale, qui s'écrira {_slotfill}. Ainsi, vous pourrez mettre la même variable sur tout vos GUI sans faire tout buger. (utile si vous avez beaucoup de GUI, ou beaucoup de personnes sur votre serveur)

 

Et voilà pour cette petite astuce !

En espérant que ça vous a aidé !

 

Cordialement,

noftaly

Modifié par noftaly
Ajout d'un lien hypertexte
Posté(e)

Ok, même si je connaissais déjà la technique, je trouve cela bien cool pour les débutants :p

Posté(e)

Une chose qui serait utile serait d'utiliser une variable locale plutôt qu'une variable normale, car si plusieurs GUI s'ouvrent en même temps ça va tout faire bugguer. Bon ok j'avoue il faut être vraiment bien timé, mais les variables locales serait plus simple dans ce cas

Posté(e)

Merci Scieeences et Masterfelix !

Je vais mettre un "EDIT" avec l'utilisation des variables locales, même si - comme tu l'a dis - il faut vraiment être bien timé. (Bon après sur un grand serveur, c'est possible qu'ils soient plusieurs à ouvrir un GUI en même temps)

  • J'aime 1
  • 7 mois après...
  • 1 an après...
Posté(e)

Houla ce tuto ? déjà je ne sais pas si c'est déjà le cas, mais il faut surtout utiliser TuSKe pour les guis. Surtout pas SkQuery. Quand je l'avais fais ya 2 ans y'avais pas besoin. Bref et sinon pour le contour, avec TuSKe, tu peux juste faire

format gui slot 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 17, 18, 19, 20, 21, 22, 23, 24, 25 and 26 of player with black stained glass pane

et ça fait les contours pour un gui de 3 lignes.

  • 2 mois après...

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.