Contenu
- 1 Présentation
- 2 Structure lexicale
- 2.1 Valeurs
- 2.2 variables
- 2.3 Mots-clés
- 2.4 Fonctions mathématiques
- 2.5 Types, valeurs et variables
- 2.6 Expressions simples vs. complexes
- 3 exemples de domaine
- 3.1 Scripts de définition d'entité
- 3.2 Animation et fichiers de contrôleur d'animation
- 3.3 Contrôleurs de rendu
- 3.3.1 Expressions de tableau
- 3.3.2 Expression de ressource
- 3.3.3 Sections de ressources
- 4 Fonctions de requête
- 5
Il s'agit de la Documentation MoLang pour l'édition Bedrock 1.12.0.
Version: 1.12.0.28
Introduction
MoLang est un langage simple basé sur des expressions conçu pour un calcul rapide des valeurs au moment de l'exécution. Son objectif est uniquement d'activer des capacités de type script dans des systèmes hautes performances où JavaScript n'est pas performant à grande échelle. Nous avons besoin de capacités de script dans ces systèmes de bas niveau pour prendre en charge les capacités de modification de l'utilisateur final, les entités personnalisées, le rendu et l'animation.
Structure lexicale
La structure du langage est largement basée sur une syntaxe simple de style C, en se concentrant sur la gestion des expressions mathématiques. Un script est constitué d'une seule expression pour les cas simples ou peut être constitué de plusieurs lorsque des valeurs intermédiaires sont requises ou pour aider à réduire le temps de calcul.
Dans tous les cas, la valeur de la dernière expression dans un script fournit la valeur du script. Dans un script multi-expressions, toutes les expressions sauf la dernière doivent affecter une valeur à une variable. La dernière expression peut également, mais n'a pas besoin de le faire car sa valeur est supposée être utilisée comme valeur de retour.
Nos valeurs
- Les types de valeur sont spécifiés concrètement, ou numériques sinon.
- Toutes les valeurs numériques sont des flottants.
- Les valeurs booléennes telles que les indicateurs d'acteur sont converties en une valeur flottante de 0.0 ou de 1.0 pour les valeurs false ou true respectivement.
- Pour les tests booléens, une valeur flottante équivalente à 0.0 est fausse et tout ce qui n'est pas égal à 0.0 est vrai.
- Pour les indices de tableau, les flottants sont convertis en entiers de style C et bloqués à zéro pour les valeurs négatives ou enveloppés par la taille du tableau pour les grandes valeurs.
- Les autres types pris en charge sont les textures, les matériaux et la géométrie lorsqu'ils ont un sens (comme pour rendre les contrôleurs).
- Les erreurs renvoient généralement une valeur de 0.0.
Variables
Une variable peut appartenir à plusieurs domaines :
Paramètres
Domaine | Portée | Exemple |
---|---|---|
Temp | expression actuelle | temp.foo = math.sin(query.anim_time); retourner temp.foo * temp.foo; |
variable | valeurs en lecture-écriture, généralement liées à l'entité actuelle | variable.my_saved_var = variable.my_saved_var + 1 ; |
requête.is_angry | valeurs en lecture seule, généralement liées à l'entité actuelle | requête.is_baby |
géométrie | contrôleur de rendu actuel | "geometry": "array.geos[query.is_sheared]" |
Matériel | contrôleur de rendu actuel | "materials": [ { "*": "material.default" }, { "leg*": "material.legs" } ] |
texture | contrôleur de rendu actuel | "textures": ["array.skins[query.is_saddled]"] |
Mots clés
Tous les identifiants ne faisant pas partie d'une portée répertoriée ci-dessous sont réservés pour une utilisation future
Paramètres
Mots-clés | Détails |
---|---|
"flotter" | "Valeur constante numérique" |
"( )" | "Cercles / Parenthèses pour le contrôle d'évaluation des termes d'expression" |
"[ ]" | "Parenthèses carrées pour l'accès aux baies" |
"requête.nom_fonction" | "Accès aux propriétés d'une entité" |
"math.nom_fonction" | "Diverses fonctions mathématiques (voir ci-dessous)" |
"temp.nom_variable" | "Stocker une valeur intermédiaire pour la durée de l'expression courante" |
"variable.nom_variable" | "Stocker une valeur sur l'entité attachée pour une utilisation ultérieure" |
"geometry.texture_name" | "Une référence à une texture nommée dans la définition de l'entité" |
"material.texture_name" | "Une référence à une texture nommée dans la définition de l'entité" |
"texture.texture_name" | "Une référence à une texture nommée dans la définition de l'entité" |
"! && || < <= >= > == !=" | "Opérateurs logiques" |
"* / + -" | "Opérateurs mathématiques de base" |
"test ? si vrai : si faux" | "Opérateur conditionnel" |
"ce" | "La valeur actuelle avant l'exécution du script (sensible au contexte)" |
"revenir" | "Pour les expressions complexes, cela évalue l'instruction suivante et arrête l'exécution du script, renvoie la valeur calculée" |
Fonctions mathématiques
ParamètresFonction | Détails |
---|---|
"math.abs(valeur)" | "Valeur absolue de la valeur" |
"math.sin(valeur)" | "Sine (en degrés) de valeur" |
"math.cos(valeur)" | "Cosinus (en degrés) de valeur" |
"math.exp(valeur)" | "Calcule e à la puissance de la valeur" |
"math.ln(valeur)" | "Logarithme naturel de la valeur" |
"math.pow(base, exposant)" | "Elève la base à la puissance de l'exposant" |
"math.sqrt(valeur)" | "Racine carrée de la valeur" |
"math.random(bas, haut)" | "Valeur aléatoire entre bas et haut inclus" |
"math.ceil(valeur)" | « Valeur arrondie au nombre entier le plus proche » |
"math.round(valeur)" | « Valeur arrondie au nombre entier le plus proche » |
"math.trunc(valeur)" | "Valeur arrondie vers zéro" |
"math.floor(valeur)" | "Arrondir la valeur au nombre entier le plus proche" |
"math.mod(valeur, dénominateur)" | "Renvoyer le reste de la valeur/dénominateur" |
"math.min (A, B)" | "Renvoyer la valeur la plus basse de A ou B" |
"math.max(A, B)" | "Renvoyer la valeur la plus élevée de A ou B" |
"math.clamp(valeur, min, max)" | "Valeur de serrage entre min et max inclus" |
"math.lerp(début, fin, 0_to_1)" | "Lerp du début à la fin via 0_to_1" |
"math.lerprotate(début, fin, 0_to_1)" | "Lerp la direction la plus courte autour d'un cercle des degrés de début aux degrés de fin via 0_to_1" |
Types, valeurs et variables
En général, toutes les valeurs d'expression sont des flottants. Dans les contrôleurs de rendu, certaines expressions génèrent une texture ou un matériau en fonction du contexte. Toutes les expressions d'index de tableau sont traitées comme des flottants et converties en entiers lors de la recherche finale dans le tableau. Les indices de tableau positifs s'enroulent par la taille du tableau. Les indices de tableau négatifs se bloquent à 0.
Expressions simples ou complexes
Une expression simple est une instruction unique, dont la valeur est renvoyée au système qui a évalué l'expression. par exemple:
math.sin (query.anim_time * 1.23)
Une expression complexe est une expression comportant plusieurs instructions, chacune se terminant par un ';'. Chaque énoncé est évalué dans l'ordre. Dans l'implémentation actuelle, la dernière instruction nécessite l'utilisation du mot-clé return et définit la valeur résultante de l'expression. par exemple:
temp.my_temp_var = Math.sin(query.anim_time * 1.23); temp.my_other_temp_var = Math.cos(query.life_time + 2.0); return temp.my_temp_var * temp.my_temp_var + temp.my_other_temp_var;
Notez que dans une expression simple, ';' n'est pas autorisé, alors que, dans une expression complexe, chaque instruction requiert un ';' y compris le dernier.
Exemples de domaine
Scripts de définition d'entité
Dans le fichier de définition, il y a une section pour le pré-calcul des valeurs. Ceux-ci sont exécutés immédiatement avant que les contrôleurs d'animation et de rendu ne soient traités et stockés dans l'entité. Le but est de pré-calculer toutes les valeurs coûteuses et complexes que vous souhaitez réutiliser dans vos scripts, les mises à jour de variables d'index de longue durée ou, en général, tout calcul ponctuel par tick de rendu.
"scripts": { "pre_animation": [ "variable.my_constant = (Math.cos(query.modified_distance_moved * 38.17) * query.modified_move_speed;", "variable.my_constant2 = Math.exp(1.5);", ] },
Fichiers d'animation et de contrôleur d'animation
Ce sont toujours des opérations numériques pour contrôler les animations en cours de lecture et comment animer les os. "variable.variable_name" et "query.function_name" font référence à l'entité en cours de rendu. Ils ont accès à tout dans le langage, à l'exception des types de matériau, de texture et de géométrie.
Contrôleurs de rendu
Il existe plusieurs types d'expressions ici, où le contexte implique ce qui est autorisé. Comme pour les animations, les accesseurs d'entité font référence à l'entité actuelle, mais selon le contexte, on a également accès aux matériaux, textures et géométries. Il y a deux sections dans un contrôleur de rendu :
- Définitions de tableau (facultatif)
- Utilisation des ressources (obligatoire)
La section de définition de tableau vous permet de créer des tableaux de ressources par type de ressource si vous le souhaitez. Ceux-ci peuvent ensuite être référencés dans la section d'utilisation des ressources.
Expressions de tableau
Pour chacun des trois types de ressources (matériaux, textures et géométrie), vous pouvez définir un tableau de ressources. Le nom de la ressource est le joli-nom du fichier de définition. En utilisant des matériaux comme exemple :
"arrays": { "materials": { "array.my_array_1": ["material.a", "material.b", "material.c"], "array.my_array_2" : ["material.d", " material.e"], "array.my_array_3" : ["array.my_array_1", "material.my_array_2"], "array.my_array_4" : ["array.my_array_2", "material.my_array_3"], "array.my_array_5 " : ["array.my_array_1", "material.my_array_1", "material.my_array_4"], "array.my_array_6" : ["array.my_array_1", "material.f"], ... },
Notez que tous les éléments d'un tableau doivent être du même type. ex : un tableau de textures ne doit contenir que des textures.
Un tableau peut référencer n'importe quelle combinaison de zéro ou plusieurs tableaux (y compris les doublons si vous le souhaitez) et/ou zéro ou plusieurs matériaux (encore une fois, y compris les doublons si vous le souhaitez), et vous pouvez avoir autant de tableaux que vous le souhaitez, chacun avec autant d'éléments comme vous voulez. Si un tableau comprend des tableaux dans ses membres, ils n'ont pas besoin d'avoir la même longueur. Lors de l'indexation dans un tableau dans la section d'utilisation des ressources, vous utilisez des expressions numériques. Si le nombre résultant est négatif, il utilisera zéro comme indice. Tout index non négatif sera converti en un entier et s'effectuera en fonction de la taille du tableau :
index = max(0, expression_result) % array_size
Expression de ressource
Une expression de ressource doit renvoyer une seule ressource d'un type spécifique en fonction du contexte.
Par exemple, dans la section "géométrie", vous devez produire une expression qui se traduira par une seule géométrie. Quelques exemples:
"geometry": "geometry.my_geo" Parcourez un tableau de géométries à raison d'une par seconde
"geometry": "array.my_geometries[query.anim_time]" Choisissez un indicateur géographique basé sur un indicateur d'entité
"geometry": "query.is_sheared ? geometry.sheared : geometry.woolly" Utilisez une géo spécifique lorsque vous dormez, sinon parcourez un tableau basé sur une courbe en cosinus, en utilisant l'index zéro pendant presque la moitié du temps alors que la courbe en cosinus est négative
"geometry": "query.is_sleeping ? geometry.my_sleeping_geo : array.my_geos[math.cos(query.anim_time * 12.3 + 41.9) * 10 + 0.6]"
Sections de ressources
GéométrieLa section géométrie spécifie la géométrie à utiliser lors du rendu. Comme vous pouvez spécifier autant de contrôleurs de rendu que vous le souhaitez dans le fichier de définition, un seul contrôleur de rendu ne concerne que la manière de rendre une seule géométrie. Notez que la géométrie peut être arbitrairement complexe en utilisant un nombre quelconque d'os et de polygones.
DocumentsLa section des matériaux spécifie comment mapper quel matériau à quel os de la géométrie. Un seul matériau est mappé sur un os entier. Les expressions matérielles sont évaluées dans l'ordre indiqué. La première partie de chaque instruction est le nom de la pièce du modèle sur laquelle appliquer le matériau, et la deuxième partie est le matériau à utiliser. Le nom de la pièce du modèle peut utiliser * pour la correspondance des caractères génériques. Par exemple:
"materials": [ { "*": "Material.default" }, { "TailA": "array.hair_colors[variable.hair_color]" }, { "Mane": "array.hair_colors[variable.hair_color]" } , { "*Saddle*": "variable.is_leather_saddle ? material.leather_saddle : material.iron_saddle" } ],
- Cela commencera par appliquer Material.default à toutes les pièces du modèle.
- Ensuite, il définira le matériau sur une pièce de modèle nommée "TailA" sur le résultat de l'expression "Array.hairColors[variable.hair_color]". Cela recherchera une variable précédemment créée sur l'entité nommée hair_color et l'utilisera pour indexer dans un tableau de matériaux appelé "array.hair_colors" défini dans ce contrôleur de rendu. Cela écrasera le matériau Material.default défini dans la ligne ci-dessus.
- Troisièmement, il recherchera le même matériau car l'expression est identique et l'appliquera à la partie du modèle "Crinière".
- Enfin, il trouvera toute pièce de modèle commençant par, se terminant par ou contenant "Saddle" (sensible à la casse) et changera son matériau en material.leather_saddle ou material.iron_saddle en fonction de la variable d'entité précédemment définie variable.is_leather_saddle.
Fonctions de requête
Les fonctions de requête sont des expressions booléennes qui vous permettent de rechercher des valeurs appartenant au moteur dans différentes circonstances. Ils peuvent être utilisés dans les expressions MoLang. Utile pour contrôler des choses comme changer de position, de textures, d'animations, etc. si une foule est un bébé. Par exemple:
"position": [ 0.0, "query.is_baby ? -8.0 : 0.0", "query.is_baby ? 4.0 : 0.0" ]
Liste des requêtes d'entité
Nom | Détails |
---|---|
query.all_animations_finished | Uniquement valable dans un contrôleur d'animation. Renvoie 1.0 si toutes les animations dans l'état actuel du contrôleur d'animation ont été lues au moins une fois, sinon elle renvoie 0.0 |
requête.anim_time | Renvoie le temps en secondes depuis le début de l'animation actuelle, sinon 0.0 s'il n'est pas appelé dans une animation |
query.any_animation_finished | Uniquement valable dans un contrôleur d'animation. Renvoie 1.0 si une animation dans l'état actuel du contrôleur d'animation a été jouée au moins une fois, sinon elle renvoie 0.0 |
query.armor_color_slot | Prend en paramètre l'indice d'emplacement d'armure et renvoie la couleur de l'armure dans l'emplacement demandé |
query.armor_material_slot | Prend l'indice d'emplacement d'armure comme paramètre et renvoie le type de matériau d'armure dans l'emplacement d'armure demandé |
query.armor_texture_slot | Prend en paramètre l'indice d'emplacement d'armure et renvoie le type de texture de l'emplacement demandé |
requête.blocage | Renvoie 1.0 si l'entité bloque, sinon elle renvoie 0.0 |
query.body_y_rotation | Renvoie la rotation de lacet du corps si elle est appelée sur un acteur, sinon elle renvoie 0.0 |
requête.can_climb | Renvoie 1.0 si l'entité peut grimper, sinon elle renvoie 0.0 |
requête.can_fly | Renvoie 1.0 si l'entité peut voler, sinon elle renvoie 0.0 |
query.can_power_jump | Renvoie 1.0 si l'entité peut effectuer un saut de puissance, sinon elle renvoie 0.0 |
query.can_swim | Renvoie 1.0 si l'entité peut nager, sinon elle renvoie 0.0 |
requête.can_walk | Renvoie 1.0 si l'entité peut marcher, sinon elle renvoie 0.0 |
query.current_squish_value | Renvoie la valeur de squish pour l'entité actuelle, ou 0.0 si cela n'a pas de sens |
requête.delta_time | Renvoie le temps en secondes depuis l'image précédente |
requête.frame_alpha | Renvoie le rapport (de 0 à 1) de combien entre les ticks de l'IA cette image est rendue |
query.ground_speed | Renvoie la vitesse sol de l'entité en mètres/seconde |
query.has_armor_slot | Prend l'indice d'emplacement d'armure comme paramètre et renvoie 1.0 si l'entité a une armure dans l'emplacement demandé, sinon il renvoie 0.0 |
query.has_collision | Renvoie 1.0 si l'entité a activé les collisions, sinon elle renvoie 0.0 |
requête.a_gravité | Renvoie 1.0 si l'entité est affectée par la gravité, sinon elle renvoie 0.0 |
query.has_owner | Renvoie vrai si l'entité a un identifiant de propriétaire sinon il renvoie faux |
query.has_rider | Renvoie 1.0 si l'entité a un cavalier, sinon elle renvoie 0.0 |
requête.has_target | Renvoie 1.0 si l'entité a une cible, sinon elle renvoie 0.0 |
query.head_roll_angle | renvoie l'angle de roulis de la tête de l'entité loup |
query.head_x_rotation | Prend un argument comme paramètre. Renvoie la nième tête x rotation de l'entité si cela a du sens, sinon elle renvoie 0.0 |
query.head_y_rotation | Prend un argument comme paramètre. Renvoie la nième tête y rotation de l'entité si cela a du sens, sinon elle renvoie 0.0 |
query.invulnerable_ticks | Renvoie le nombre de ticks d'invulnérabilité que l'entité a laissés si cela a du sens, sinon il renvoie 0.0 |
requête.is_angry | Renvoie 1.0 si l'entité est en colère, sinon elle renvoie 0.0 |
query.is_avoiding_mobs | Renvoie 1.0 si l'entité fuit les foules, sinon elle renvoie 0.0 |
requête.is_baby | Renvoie 1.0 si l'entité est un bébé, sinon elle renvoie 0.0 |
requête.is_breathing | Renvoie 1.0 si l'entité respire, sinon elle renvoie 0.0 |
query.is_bribed | Renvoie 1.0 si l'entité a été soudoyée, sinon elle renvoie 0.0 |
query.is_carrying_block | Renvoie 1.0 si l'entité transporte un bloc, sinon elle renvoie 0.0 |
query.is_casting | Renvoie 1.0 si l'entité est en train de lancer, sinon elle renvoie 0.0 |
requête.is_charged | Renvoie 1.0 si l'entité est facturée, sinon elle renvoie 0.0 |
requête.is_chargement | Renvoie 1.0 si l'entité charge, sinon elle renvoie 0.0 |
requête.is_chested | Renvoie 1.0 si l'entité a des coffres qui lui sont attachés, sinon elle renvoie 0.0 |
requête.is_critique | Renvoie 1.0 si l'entité est critique, sinon elle renvoie 0.0 |
requête.is_dancing | Renvoie 1.0 si l'entité danse, sinon elle renvoie 0.0 |
query.is_delayed_attacking | renvoie 1.0 si l'entité attaque en utilisant l'attaque retardée, sinon elle renvoie 0.0 |
query.is_eating | Renvoie 1.0 si l'entité mange, sinon elle renvoie 0.0 |
requête.is_elder | Renvoie 1.0 si l'entité est une version plus ancienne de celle-ci, sinon elle renvoie 0.0 |
query.is_enchanted | Renvoie 1.0 si l'entité est enchantée, sinon elle renvoie 0.0 |
requête.is_fire_immune | Renvoie 1.0 si l'entité est immunisée contre le feu, sinon elle renvoie 0.0 |
query.is_first_person | Renvoie 1.0 si l'entité est rendue en mode première personne, sinon elle renvoie 0.0 |
query.is_gliding | Renvoie 1.0 si l'entité glisse, sinon elle renvoie 0.0 |
query.is_grazing | Renvoie 1.0 si l'entité est en train de paître, ou 0.0 sinon |
requête.is_idling | Renvoie 1.0 si l'entité est inactive, sinon elle renvoie 0.0 |
requête.is_ignited | Renvoie 1.0 si l'entité est allumée, sinon elle renvoie 0.0 |
query.is_illager_captain | Renvoie 1.0 si l'entité est un capitaine illageois, sinon elle renvoie 0.0 |
requête.is_in_love | Renvoie 1.0 si l'entité est amoureuse, sinon elle renvoie 0.0 |
query.is_in_water | Renvoie 1.0 si l'entité est dans l'eau, sinon elle renvoie 0.0 |
query.is_in_water_or_rain | Renvoie 1.0 si l'entité est sous l'eau ou sous la pluie, sinon elle renvoie 0.0 |
query.is_interested | Renvoie 1.0 si l'entité est intéressée, sinon elle renvoie 0.0 |
requête.is_invisible | Renvoie 1.0 si l'entité est invisible, sinon elle renvoie 0.0 |
query.is_jumping | Renvoie 1.0 si l'entité saute, sinon elle renvoie 0.0 |
query.is_laying_down | Renvoie 1.0 si l'entité est en train de se coucher, sinon elle renvoie 0.0 |
query.is_laying_egg | Renvoie 1.0 si l'entité pond un œuf, sinon elle renvoie 0.0 |
requête.is_leashed | Renvoie 1.0 si l'entité est attachée à quelque chose, sinon elle renvoie 0.0 |
requête.is_lingering | Renvoie 1.0 si l'entité est en attente, sinon elle renvoie 0.0 |
requête.is_moving | Renvoie 1.0 si l'entité se déplace, sinon elle renvoie 0.0 |
query.is_on_ground | Renvoie 1.0 si l'entité est au sol, sinon elle renvoie 0.0 |
requête.is_onfire | Renvoie 1.0 si l'entité est en feu, sinon elle renvoie 0.0 |
requête.is_orphaned | Renvoie 1.0 si l'entité est orpheline, sinon elle renvoie 0.0 |
query.is_powered | Renvoie 1.0 si l'entité est alimentée, sinon elle renvoie 0.0 |
requête.is_enceinte | Renvoie 1.0 si l'entité est enceinte, sinon elle renvoie 0.0 |
query.is_resting | Renvoie 1.0 si l'entité est au repos, sinon elle renvoie 0.0 |
requête.is_riding | Renvoie 1.0 si l'entité roule, sinon elle renvoie 0.0 |
requête.is_roaring | renvoie 1.0 si l'entité rugit actuellement, sinon elle renvoie 0.0 |
query.is_rolling | Renvoie 1.0 si l'entité roule, sinon elle renvoie 0.0 |
query.is_saddled | Renvoie 1.0 si l'entité a une selle, sinon elle renvoie 0.0 |
requête.is_effrayé | Renvoie 1.0 si l'entité a peur, sinon elle renvoie 0.0 |
query.is_shaking | Renvoie 1.0 si l'entité est en train de lancer, sinon elle renvoie 0.0 |
query.is_shaking_wetness | renvoie vrai si l'entité secoue l'eau |
query.is_sheared | Renvoie 1.0 si l'entité peut être cisaillée et est cisaillée, sinon elle renvoie 0.0 |
query.is_shield_powered | Renvoie 1.0f si l'entité a un bouclier alimenté actif si cela a du sens, sinon il renvoie 0.0 |
requête.is_silent | Renvoie 1.0 si l'entité est silencieuse, sinon elle renvoie 0.0 |
requête.is_assis | Renvoie 1.0 si l'entité est assise, sinon elle renvoie 0.0 |
requête.is_sleeping | Renvoie 1.0 si l'entité dort, sinon elle renvoie 0.0 |
query.is_sneaking | Renvoie 1.0 si l'entité se faufile, sinon elle renvoie 0.0 |
query.is_sneezing | Renvoie 1.0 si l'entité éternue, sinon elle renvoie 0.0 |
query.is_sprinting | Renvoie 1.0 si l'entité sprinte, sinon elle renvoie 0.0 |
query.is_stackable | Renvoie 1.0 si l'entité est empilable, sinon elle renvoie 0.0 |
requête.is_debout | Renvoie 1.0 si l'entité est debout, sinon elle renvoie 0.0 |
query.is_stunned | renvoie 1.0 si l'entité est actuellement étourdie, sinon elle renvoie 0.0 |
query.is_swimming | Renvoie 1.0 si l'entité nage, sinon elle renvoie 0.0 |
requête.is_tamed | Renvoie 1.0 si l'entité est apprivoisée, sinon elle renvoie 0.0 |
query.is_transforming | Renvoie 1.0 si l'entité se transforme, sinon elle renvoie 0.0 |
query.is_using_item | Renvoie 1.0 si l'entité utilise un élément, sinon elle renvoie 0.0 |
query.is_wall_climbing | Renvoie 1.0 si l'entité escalade un mur, sinon elle renvoie 0.0 |
query.item_in_use_duration | Renvoie la durée d'utilisation d'un élément en secondes jusqu'à la durée maximale, sinon 0.0 si cela n'a pas de sens |
query.item_max_use_duration | Renvoie la durée maximale d'utilisation de l'élément, sinon 0.0 si cela n'a pas de sens |
query.item_remaining_use_duration | Renvoie le temps qu'il reste à un élément à utiliser en secondes, sinon 0.0 si cela n'a pas de sens |
query.key_frame_lerp_time | Renvoie le rapport entre les images clés précédentes et suivantes |
query.lie_amount | Renvoie le montant d'allongement pour l'entité |
requête.life_span | renvoie la durée de vie limitée d'une entité, ou 0.0 si elle vit pour toujours |
requête.life_time | Renvoie le temps en secondes depuis le début de l'animation actuelle, sinon 0.0 s'il n'est pas appelé dans une animation |
requête.log | journal de débogage une valeur (détails nécessaires) |
query.mark_variant | Renvoie la variante de marque de l'entité |
query.max_trade_tier | Renvoie le niveau commercial maximum de l'entité si cela a du sens, sinon il renvoie 0.0 |
query.model_scale | Renvoie l'échelle de l'entité actuelle |
query.modified_distance_moved | Renvoie la distance totale parcourue horizontalement par l'entité en mètres (depuis le dernier chargement de l'entité, pas nécessairement depuis sa création à l'origine) modifiée en cours de route par des indicateurs d'état tels que is_baby ou on_fire |
query.modified_move_speed | Renvoie la vitesse de marche actuelle de l'entité modifiée par des indicateurs d'état tels que is_baby ou on_fire |
query.overlay_alpha | Ne pas utiliser - cette fonction est obsolète et sera supprimée |
query.previous_squish_value | Renvoie la valeur de squish précédente pour l'entité actuelle, ou 0.0 si cela n'a pas de sens |
query.roll_counter | Renvoie le compteur de roulis de l'entité |
requête.shake_angle | renvoie l'angle de tremblement de l'entité loup |
requête.sit_amount | Renvoie le montant assis actuel de l'entité |
requête.skin_id | Renvoie l'ID de skin de l'entité |
query.sneeze_counter | Renvoie le compteur d'éternuement de l'entité |
requête.spellcolor.b | Renvoie le canal de couleur bleu de la couleur du sort de l'entité actuelle si cela a du sens, sinon il renvoie 0.0 |
requête.spellcolor.g | Renvoie le canal de couleur verte de la couleur du sort de l'entité actuelle si cela a du sens, sinon il renvoie 0.0 |
requête.spellcolor.r | Renvoie le canal de couleur rouge de la couleur du sort de l'entité actuelle si cela a du sens, sinon il renvoie 0.0 |
query.standing_scale | Renvoie l'échelle de la position de l'entité |
requête.swell_amount | Renvoie à quel point l'entité est enflée |
requête.swelling_dir | Renvoie la direction de gonflement de l'entité si cela a du sens, sinon elle renvoie 0.0 |
requête.tail_angle | renvoie l'angle de la queue de l'entité loup sinon il renvoie 0.0 |
requête.target_x_rotation | Renvoie la rotation x requise pour viser la cible actuelle de l'entité si elle en a une, sinon elle renvoie 0.0 |
requête.target_y_rotation | Renvoie la rotation y requise pour viser la cible actuelle de l'entité si elle en a une, sinon elle renvoie 0.0 |
requête.horodatage | Renvoie l'horodatage actuel du niveau |
query.trade_experience | Renvoie l'expérience commerciale actuelle de l'entité si cela a du sens, sinon elle renvoie 0.0 |
query.trade_tier | Renvoie le niveau commercial de l'entité si cela a du sens, sinon il renvoie 0.0 |
query.unhappy_counter | Renvoie à quel point l'entité est mécontente |
requête.variante | Renvoie l'index de variante de l'entité |
query.wing_flap_position | Renvoie la position du volet d'aile de l'entité, ou 0.0 si cela n'a pas de sens |
query.wing_flap_speed | Renvoie la vitesse de volet d'aile de l'entité, ou 0.0 si cela n'a pas de sens |
query.yaw_speed | Renvoie la vitesse de lacet de l'entité |
- Choisir
- Consignes pour les créateurs de l'édition Bedrock
- Documentation complémentaire de l'édition Bedrock
- Documentation des composants de l'entité Bedrock Edition
- Documentation des événements d'entité Bedrock Edition
- Documentation d'animation de l'édition Bedrock
- Documentation sur les particules de l'édition Bedrock
- Documentation sur les scripts de l'édition Bedrock
- Documentation de l'interface utilisateur de l'édition Bedrock
- Documentation des schémas de l'édition Bedrock