Menu forms
Les différents menus forms possibles avec TabulaUI
Il est possible de créer 3 types de menu, chacun ont leurs propres caractéristiques et fonctionnement différemment mais garde tout de même un fonctionnement commun.
Base commune
Structure
#Nom des différentes commandes pour accéder au menu
commands:
- STRING
- ...
#Enregistre ou nom la commande et ses aliases en tant que commande avec détection du tab (facultative)
registerCommand: BOOLEAN
#Réponses lors de l'ouverture d'un menu (ensemble d'actions facultatives)
open:
- ACTION
- ...
#Réponses lorsqu'un joueur java tente d'ouvrir le menu
javaOpen:
- ACTION
- ...
#Conditions pour pouvoir ouvrir le menu (facultatif)
conditions:
#Ensemble de conditions pour pouvoir ouvrir le menu
list:
- CONDITION
- ...
#Ensemble d'actions si l'ouverture n'est pas possible (conditions non respectés)
unauthorized:
- ACTION
- ...
#Arguments lors de l'ouverture du menu (facultatif)
args:
- ARGUMENT
- ...
#Titre simple qui n'a pas de conditions.
title: STRING
#
# OU BIEN
#
#Le titre peut également être appliqué de manière conditionnel
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors le texte indiqué est affiché
title:
-
condition:
- CONDITION
- ...
text: STRING
-
text: STRING
...
Form: Info
Structure
...
#Spécifier le type du menu
type: "INFO"
#Contenu (description) du menu écrit de manière simple
content: STRING
#
# OU BIEN
#
#Le contenu peut également être écrit sous forme de liste (une ligne correspondant à un retour à la ligne dans le menu)
content:
- STRING
- ...
#
# OU BIEN
#
#Le contenu peut aussi être appliqué de manière conditionnel
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors le texte indiqué est affiché
content:
-
#Conditions pour afficher le contenu
condition:
- CONDITION
- ...
#Le contenu ecrit de manière simple
text: STRING
#
# OU BIEN
#
#Le contenu sous forme de liste (une ligne correspond à un retour à la ligne)
text:
- STRING
- ...
- ...
#Bouton "oui", celui-ci peut être écrit simplement de la manière suivante:
trueButton:
#Texte du bouton
text: STRING
#Actions lorsque le bouton est actionné
response:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
#Conditions de la réponse
condition:
- CONDITION
- ...
#Action à la réponse
action:
- ACTION
- ...
- ...
#
# OU BIEN
#
#Ce bouton peut, comme la partie "content", s'écrire de manière conditionnel
trueButton:
-
condition:
- CONDITION
- ...
#Texte du bouton
text: STRING
response:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
#Conditions de la réponse
condition:
- CONDITION
- ...
#Action à la réponse
action:
- ACTION
- ...
- ...
- ...
#Bouton "non", celui-ci peut être écrit simplement de la manière suivante:
falseButton:
#Texte du bouton
text: STRING
#Actions lorsque le bouton est actionné
response:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
#Conditions de la réponse
condition:
- CONDITION
- ...
#Action à la réponse
action:
- ACTION
- ...
- ...
#
# OU BIEN
#
#Ce bouton peut, comme la partie "content", s'écrire de manière conditionnel
falseButton:
-
condition:
- CONDITION
- ...
#Texte du bouton
text: STRING
response:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
#Conditions de la réponse
condition:
- CONDITION
- ...
#Action à la réponse
action:
- ACTION
- ...
- ...
- ...
Exemple
commands:
- rules
- rule
registerCommand: true
type: INFO
open:
- "[message] &eYou have opened the rules menu."
- "[sound] ENTITY_EXPERIENCE_ORB_PICKUP 1 1"
title:
-
condition:
- "[!permission] rules.read"
text: "&c&lRules &f- &eMust be read"
-
text: "&a&lRules"
content:
-
condition:
- "[permission] rules.read"
text:
- "&fGood ! You have &ealready read &fthe rules."
- ""
- "&f➤ &b&lRules"
- "&a&l✔ &fYou can't kill other players."
- "&a&l✔ &fGriefing is not allowed."
- "&a&l✔ &fYou can't steal from other players."
- "&a&l✔ &fYou can't use hacks or cheats."
- "&a&l✔ &fYou can't use offensive language."
- ""
-
text:
- "&c&oWarning!"
- "&fYou &cmust read &fthe rules before you can play on the &eserver&f."
- ""
- "&f➤ &b&lRules"
- "&a&l✔ &bYou can't kill other players."
- "&a&l✔ &bGriefing is not allowed."
- "&a&l✔ &bYou can't steal from other players."
- "&a&l✔ &bYou can't use hacks or cheats."
- "&a&l✔ &bYou can't use offensive language."
- ""
trueButton:
text: "&a&lI have read"
response:
-
condition:
- "[!permission] rules.read"
action:
- "[console] lp user %player% permission set rules.read true"
falseButton:
text: "&c&lClose"
Form: List
Structure
...
#Spécifier le type du menu
type: "LIST"
#Contenu (description) du menu écrit de manière simple
content: STRING
#
# OU BIEN
#
#Le contenu peut également être écrit sous forme de liste (une ligne correspondant à un retour à la ligne dans le menu)
content:
- STRING
- ...
#
# OU BIEN
#
#Le contenu peut aussi être appliqué de manière conditionnel
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors le texte indiqué est affiché
content:
-
#Conditions pour afficher le contenu
condition:
- CONDITION
- ...
#Le contenu ecrit de manière simple
text: STRING
#
# OU BIEN
#
#Le contenu sous forme de liste (une ligne correspond à un retour à la ligne)
text:
- STRING
- ...
- ...
#Ensemble des boutons présent dans le menu
buttons:
#Nom du bouton
STRING:
#Texte du bouton
text: STRING
#
# OU BIEN
#
#Texte du bouton sous forme de liste (une ligne correspond à un retour à la ligne)
text:
- STRING
- ...
image: URL | SRC
#Actions lorsque le bouton est actionné
reponse:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle
#Le première élément ou toutes les conditions sont respectées (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
#Conditions de la réponse
condition:
- CONDITION
- ...
#Action à la réponse
action:
- ACTION
- ...
#Le bouton peut également être sous la forme conditionnelle
#Le première élément ou toutes les conditions sont respectées (ou aucune présence de condition) alors le bouton indiqué est affiché
STRING:
-
#Texte du bouton
text: STRING
#
# OU BIEN
#
#Texte du bouton sous forme de liste (une ligne correspond à un retour à la ligne)
text:
- STRING
- ...
image: URL | SRC
#Actions lorsque le bouton est actionné
reponse:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
#Conditions de la réponse
condition:
- CONDITION
- ...
#Action à la réponse
action:
- ACTION
- ...
- ...
- ...
...
Exemple
commands:
- menu
registerCommand: true
type: LIST
title: "&d&lTeleport to a server"
content:
- "Welcome to the &bserver&f! You can choose the &bgame mode &fyou want to play!"
- ""
- "&f➤ Don't forget to &bjoin our networks&f:"
- " &a&l✔ &b&owww.myserver.com"
- " &a&l✔ &9&odiscord.gg/myser"
- ""
buttons:
survival:
text:
- "&c&lSMP &f- &e&lSurvival"
image: "https://oyster.ignimgs.com/mediawiki/apis.ign.com/minecraft/5/5a/Ender_Dragon.png"
response:
- "[send] survival"
skyBlock:
text:
- "&2&lSky&a&lBlock"
image: "https://static.wikia.nocookie.net/minecraft_gamepedia/images/a/a4/Grass_Block_%28item%29_BE5.png/revision/latest?cb=20200901112517"
response:
- "[send] skyblock"
prison:
text:
- "&c&lPrison"
image: "https://static.wikia.nocookie.net/minecraft_gamepedia/images/e/e7/Diamond_Pickaxe_JE3_BE3.png/revision/latest/scale-to-width/360?cb=20200226193952"
response:
- "[send] prison"
close:
text: "&c&lClose"
Form: Custom
Structure
...
#Spécifier le type du menu
type: "CUSTOM"
#Ensemble des éléments présent dans le menu,
elements:
#Nom de l'élément
STRING:
#Type de l'élément
type: ENUM
...(Element properties)
#Actions lorsque le bouton est actionné
reponse:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle (en plus de la manière "simple")
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
condition:
- CONDITION
- ...
action:
- ACTION
- ...
#L'élément peut également être sous la forme conditionnelle
#Le première élément ou toutes les conditions sont respectées (ou aucune présence de condition) alors l'élément indiqué est affiché
STRING:
-
#Type de l'élément
type: ENUM
#Texte affiché
text: STRING
#
# OU BIEN
#
#Le texte peut également être écrit sous forme de liste (une ligne correspondant à un retour à la ligne dans le menu)
text:
- STRING
- ...
...(Element properties)
#Actions lorsque le bouton est actionné
reponse:
- ACTION
- ...
#
# OU BIEN
#
#Actions lorsque le bouton est actionné sous forme conditionnelle (en plus de la manière "simple")
#Le première élément ou toutes les conditions sont respectés (ou aucune présence de condition) alors la réponse indiqué est exécuté
response:
-
condition:
- CONDITION
- ...
action:
- ACTION
- ...
- ...
...
Propriétés
Description: Permet d'affiché un texte informatif
Description: Composant permettant de deux choix possible: TRUE
/FALSE
. Vous récupérer, le résultat avec le placeholder %result%
, exploitable dans la partie réponse de l'élément.
#Valeur par défaut du bouton
toggled: BOOLEAN
Description: Permet à l'utilisateur d'insérer un texte personnalisé. Vous récupérer, le résultat avec le placeholder %result%
, exploitable dans la partie réponse de l'élément.
#Valeur suggestive (à l'arrière plan)
placeholder: STRING
#Texte par défaut
defaultText: STRING
Description: Slider permettant d'aller dans un intervale de valeur. Vous récupérer, le résultat avec le placeholder %result%
, exploitable dans la partie réponse de l'élément.
#Valeur minimum de l'intérval
min: INTEGER
#Valeur maximal de l'intérval
max: INTEGER
#Marche du curseur (aller d'une valeur de step en step)
step: INTEGER
#Valeur par défaut
defaultValue: INTEGER
Description: Step slider est un slider permettant d'aller de valeur en valeur. Vous récupérer, le résultat avec le placeholder %result%
, exploitable dans la partie réponse de l'élément.
#Différentes valeurs possibles
steps:
- STRING
- ...
#Indice de l'élément par défaut
defaultStep: INTEGER
Description: Dropdown est un choix dans une liste de valeur possible. Vous récupérer, le résultat avec le placeholder %result%
, exploitable dans la partie réponse de l'élément.
#Différentes valeurs possibles
options:
- STRING
- ...
#Indice de l'élément par défaut
defaultOption: INTEGER
Exemple
commands:
- settings
type: CUSTOM
open:
- "[sound] ENTITY_EXPERIENCE_ORB_PICKUP 1 1"
conditions:
list:
- "[permission] settings.edit"
unauthorized:
- "[message] &cYou are not allowed to edit settings!"
title: "&b&lSettings editor"
elements:
content:
type: LABEL
text:
- "&rYou are editing your &bsettings &fwith a full customization."
- ""
- "&f➤ Propose new settings on our discord: &9&odiscord.gg/myserver"
- ""
notifications:
type: TOGGLE
text: "&bNotifications"
toggled: true
response:
- "[console] setsettings %player% notifications %result%"
- "[message] &fYou have switch &9'Notifications' &fto &a%result%&f."
scoreboard:
type: TOGGLE
text: "&bScorebard"
toggled: true
response:
- "[console] setsettings %player% scoreboard %result%"
- "[message] &fYou have switch &9'Scorebard' &fto &a%result%&f."
dm:
type: DROPDOWN
text: "&bAccess to PM"
options: ["Everyone", "Friends only", "Staff", "Nobody"]
defaultOption: 0
response:
- "[console] setsettings %player% access_pm %result%"
- "[message] &fYou have switch &9'Access to PM' &fto &a%result%&f."
Dernière mise à jour