Aller au contenu

Remplir ligne(s) et/ou colonne(s) dans un GUI


Qu'en pensez vous ?  

3 membres ont voté

  1. 1. Qu'en pensez vous ?

    • Les syntaxes sont correctes et faciles à appliquer
      2
    • Contraire à la précédente réponse
      0
    • Utile pour les débutants
      1
    • Contraire à la précédente réponse
      0
    • Peut être améliorer
      0


Messages recommandés

Posté(e) (modifié)

[spoiler=Code]

function slines(lines:numbers) :: numbers:
   loop {_lines::*}:
       add integers between 9*((loop-value)-1) and 9*(loop-value)-1 to {_results::*}
   return {_results::*}

function fillines(player:player,item:item,lines:numbers):
   loop slines({_lines::*}):
       format gui slot loop-value of {_player} with {_item}

function scolumns(columns:numbers) :: numbers:
   loop {_columns::*}:
       loop 6 times:
           add loop-value-1+9*((loop-value-2)-1)-1 to {_results::*}
   return {_results::*}

function fillcolumns(player:player,item:item,columns:numbers):
   loop scolumns({_columns::*}):
       format gui slot loop-value of {_player} with {_item}

 

Ce code contient 2 fonctions utilisables n'importe où à la condition de bien le faire.

 

Vous pouvez remplir plusieurs lignes d'un coup et/ou plusieurs colonnes d'un coup.

 

Syntaxes:

fillines(%player%,%item stack%,%numbers%)
fillcolumns(%player%,%item stack%,%numbers%)

 

fillines() permet de remplir une/des ligne(s), fillcolumns() permet de remplir une/des colonne(s).

 

 

Exemple de code:

 

command /fills [<number=6>]:
 trigger:
   open virtual chest inventory with size argument to player
   fillines(player,stone,(1 and argument))
   fillcolumns(player,stone,(1 and 9))

Cet exemple permet de remplir le contour d'un coffre de hauteur X ici %argument%.

 

Image:

[ATTACH=full]8395[/ATTACH]

 

[spoiler=Aller plus loin]

Ce code contient deux autres fonctions, qui servent à obtenir les slots correspondants à une/des (ligne(s)|colonne(s)):

 

Syntaxes:

slines(%numbers%)
scolumns(%numbers%)

 

Exemple de code:

 

command /fills [<number=6>]:
 trigger:
   open virtual chest inventory with size argument to player
   loop slines(1):
     format gui slot loop-value of player with loop-value of stone
   loop scolumns(1):
     format gui slot loop-value of player with loop-value of stone

 

Image:

[ATTACH=full]8396[/ATTACH]

 

 

Modifié par Invité
Posté(e)
Merci d'avoir fait ce tuto! Je m'y connais un peu plus sur les fonctions grace à vous !

Ce n'est pas un tutoriel mais un fragment de code

Posté(e)

function slines(lines:numbers) :: numbers:
   loop {_lines::*}:
       add integers between 9*((loop-value)-1) and 9*(loop-value)-1 to {_results::*}
   return {_results::*}

function fillines(player:player,item:item,lines:numbers):
   loop slines({_lines::*}):
       format gui slot loop-value of {_player} with {_item}

function scolumns(columns:numbers) :: numbers:
   loop {_columns::*}:
       loop 6 times:
           add loop-value-1+9*((loop-value-2)-1)-1 to {_results::*}
   return {_results::*}

function fillcolumns(player:player,item:item,columns:numbers):
   loop scolumns({_columns::*}):
       format gui slot loop-value of {_player} with {_item}

 

Ce code contient 2 fonctions utilisables n'importe où à la condition de bien le faire.

 

Vous pouvez remplir plusieurs lignes d'un coup et/ou plusieurs colonnes d'un coup.

 

Syntaxes:

fillines(%player%,%item stack%,%numbers%)
fillcolumns(%player%,%item stack%,%numbers%)

 

fillines() permet de remplir une/des ligne(s), fillcolumns() permet de remplir une/des colonne(s).

 

 

Exemple de code:

 

command /fills [<number=6>]:
 trigger:
   open virtual chest inventory with size argument to player
   fillines(player,stone,(1 and argument))
   fillcolumns(player,stone,(1 and 9))

Cet exemple permet de remplir le contour d'un coffre de hauteur X ici %argument%.

 

Image:

[ATTACH=full]8395[/ATTACH]

 

[spoiler=Aller plus loin]

Ce code contient deux autres fonctions, qui servent à obtenir les slots correspondants à une/des (ligne(s)|colonne(s)):

 

Syntaxes:

slines(%numbers%)
scolumns(%numbers%)

 

Exemple de code:

 

command /fills [<number=6>]:
 trigger:
   open virtual chest inventory with size argument to player
   loop slines(1):
     format gui slot loop-value of player with loop-value of stone
   loop scolumns(1):
     format gui slot loop-value of player with loop-value of stone

 

Image:

[ATTACH=full]8396[/ATTACH]

 

 

[/font]

 

Sympa, mais je travaille déjà sur une api en rapport avec ca : https://github.com/AlexLew95/GuiAPI/wiki

Viens me contacter en mp si tu as d'autres propositions d'ajouts (une version stable devrait sortir dans pas très longtemps sur le forum au cas où)

Posté(e) (modifié)
Sympa, mais je travaille déjà sur une api en rapport avec ca : https://github.com/AlexLew95/GuiAPI/wiki

Viens me contacter en mp si tu as d'autres propositions d'ajouts (une version stable devrait sortir dans pas très longtemps sur le forum au cas où)

Intéressant, quelques questions:

 

Pour ça:

[make] [a] square of %itemstack% [named %-string%] (for|to) %players% [without click [effect]] [[and] stuck inventory]

 

Cela fait le contour ? J'ai pas trop compris.

 

 

 

 

 

Je pense que cela peut être intéressant de globaliser un peu les lignes et colonnes en en remplissant plusieurs d'un coup:

[make] column %integers% of %itemstack% [named %-string%] (for|to) %players% [without click [effect]] [[and] stuck inventory]

Au lieu de:

[make] column %integer% of %itemstack% [named %-string%] (for|to) %players% [without click [effect]] [[and] stuck inventory]

 

 

 

Pourquoi pas rajouter:

loop (row|column)s %integers% of %players%:

Pour récupérer les items étant dedans.

 

 

 

J'éditerais si des choses me viennent, bonne soirée.

Modifié par McLincoln2
Posté(e)
Intéressant, quelques questions:

 

Pour ça:

[make] [a] square of %itemstack% [named %-string%] (for|to) %players% [without click [effect]] [[and] stuck inventory]

 

Cela fait le contour ? J'ai pas trop compris.

 

 

 

Je pense que cela peut être intéressant de globaliser un peu les lignes et colonnes en en remplissant plusieurs d'un coup:

[make] column %integers% of %itemstack% [named %-string%] (for|to) %players% [without click [effect]] [[and] stuck inventory]

Au lieu de:

[make] column %integer% of %itemstack% [named %-string%] (for|to) %players% [without click [effect]] [[and] stuck inventory]

 

 

 

Pourquoi pas rajouter:

loop (row|column)s %integers% of %players%:

Pour récupérer les items étant dedans.

 

 

 

J'éditerais si des choses me viennent, bonne soirée.

 

Je ne vois pas la différence entre les 2 syntaxes lorsque tu parles de "globaliser un peu les lignes". Aussi, oui la syntaxe "make a square" fait un carré. Quand au loop, j'en ajouterais plus tard, mais oui c'est prévu

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.