Propriétés Personnalisées

Un des atouts de Tiled est qu’il permet de définir des propriétés personnalisées sur l’ensemble de ses structures de données. De cette manière, il est possible d’inclure de nombreuses formes d’information personnalisées, qui peuvent être ensuite utilisées par votre jeu ou par l’environnement que vous utilisez pour intégrer les cartes de Tiled.

Les propriétés personnalisées sont affichées dans la vue Propriétés. Cette vue dépend du contexte, et affiche généralement les propriétés du dernier objet sélectionné. Il prend également en charge la multi-sélection pour changer les propriétés de mutiples objets à la fois.

Propriétés de la Vue

Propriétés de la Vue

Ajout de Propriétés

Lorsque vous ajoutez une propriété (en utilisant le bouton “+” en bas de la vue Propriétés), vous êtes invités à entrer son nom et son type. Actuellement Tiled prend en charge les types de base de propriétés suivants :

  • bool (true (vrai) ou false (faux))

  • color (une valeur de couleur sur 32 bits)

  • file (a file reference, which is saved as a relative path)

  • float (un nombre à virgule flottante)

  • int (un nombre entier)

  • object (une référence vers un objet) - Depuis Tiled 1.4

  • string (n’importe quel texte, y compris un texte multi-ligne)

Ajouter la Boîte de Dialogue de Propriété

Ajouter la Boîte de Dialogue de Propriété

Le type de propriété est utilisé pour choisir un éditeur personnalisé dans la vue Propriétés. Le choix d’un type de nombre ou de booléen permet également d’éviter que la valeur obtenue en JSON et Lua soit citée dans les exportations.

Since Tiled 1.4

Le menu de contexte pour les propriétés de fichiers personnalisées offre un façon rapide d’ouvrir le fichier dans votre éditeur préféré. Pour les références d’objet, il y a une action pour sauter rapidement vers l’objet référencé.

New in Tiled 1.8

Types Personnalisés

En plus des propriétés de base listées ci-dessus, vous pouvez définir des types personnalisés dans votre projet. Tiled supporte des énumérations personnalisées et des classes personnalisées.

Éditeur de Types Personnalisés

Éditeur de Types Personnalisés

Note

Ces types sont automatiquement sauvegardés dans le fichier projet. Vous devez donc créer un projet avant de pouvoir mettre vos propres types personnalisés en place.

Énumérations personnalisées

Une énumération est utile si vous voulez limiter les options d’une certaine propriété à un jeu de valeurs fixes.

Une énumération définit aussi comment sa valeur est sauvegardée. Elle peut être sauvegardée comme un chaîne, stockant une de ses valeurs directement. Ou bien elle peut être sauvegardées en tant que nombre, l’index de la valeur courante dans la liste de valeurs. Le premier cas est plus lisible, tandis que le dernier pourrait être plus facile et plus efficient au chargement.

Finally, an enum can also allow multiple values to be chosen. In this case each option is displayed with a checkbox. When saving as string, a comma-separated list is used and when saving as number the selected indexes are encoded as bitflags. In both cases, the maximum number of flags supported is 31, since internally a 32-bit signed integer is used to store the value.

Classes Personnalisées

Une classe est utils si vous voulez pouvoir ajouter un jeu de propriétés en une seule fois, avec des valeurs par défaut prédéfinies. Elle peut aussi éviter des préfixes excessifs dans les noms de propriétés. Les classes peuvent avoir des membres référant d’autres classes.

New in Tiled 1.9

Chaque type de données a une propriété « Classe », qui peut être utilisée pour référencer une classe personnalisée. Les membres de cette classe seront alors directement disponibles en tant que propriétés personnalisées de cette instance (avant Tiled 1.9, cette fonctionnalité n’était disponible que pour les objets et les tuiles en tant que propriété « Type »).

Chaque classe peut aussi avoir une couleur personnalisée, utilisée pour rendre les objets plus distincts. La couleur de classe est utilisée au moment de rendre les formes des objets, les étiquette des noms d’objets, et les connexions entre les objets.

Dans les formats de fichiers JSON et :ref: Lua <lua-export>, les propriétés de classes personnalisées utilisées en tant que valeurs de propriétés sont sauvegardées en utilisant les structures natives d’objets et de tables.

Since Tiled 1.0

Héritage des Propriétés de Tuile

Lorsque des propriétés personnalisées sont ajoutées à une tuile, ces propriétés seront également visibles lorsqu’une instance de l’objet de cette tuile est sélectionnée. Cela permet de réécrire facilement les propriétés associées à une tuile pour chaque objet. Cela devient particulièrement utile lorsqu’il est combiné avec des Tuiles Typées.

Les propriétés héritées seront affichées en gris (couleur de texte désactivée), tandis que les propriétés ré-écrites seront affichées en noir (couleur de texte habituelle).

Since Tiled 1.0

Tuiles Typées

Si vous utilisez des objets tuiles, vous pouvez fixer le type de la tuile pour éviter d’avoir à le faire sur chaque instance de l’objet. Choisir le type sur la tuile rend les propriétés prédéfinies visibles quand la tuile est sélectionnée, ce qui permet d’en remplacer les valeurs. Cela rend aussi ces valeurs potentiellement remplacées visibles quand on une instance de l’objet tuile est sélectionnée, permettant ici aussi de les remplacer.

Un exemple de cas d’utilisation serait de définir des types personnalisés comme « PNJ », « Ennemi » ou « Objet » avec des propriétés comme « Nom », « Santé » ou « Poids ». Vous pouvez ensuite spécifier les valeurs pour ces propriétés sur les tuiles qui représentent ces entités. Quand vous placez ces tuiles comme des objets, vous pouvez si besoin remplacer ces valeurs.