Les conteneurs de construct 3

Les conteneurs de construct

Les conteneurs sont une fonction avancée qui permet de construire facilement des objets composites, c’est-à-dire des éléments de votre jeu constitués de plusieurs objets. Par exemple, un tank dans un jeu de stratégie peut être composé de deux parties : un sprite pour la base du tank et un sprite différent pour la tourelle dutank.

Cela leur permet de tourner indépendamment l’un de l’autre. En les ajoutant tous les deux dans un conteneur, les événements peuvent alors traiter les deux objets comme s’ils n’en formaient qu’un seul, car ils sont toujours choisis ensemble. Il est essentiel de se familiariser avec le fonctionnement des événements afin de comprendre le fonctionnement des conteneurs.

Création d’un conteneur

Pour ajouter un objet à un conteneur, sélectionnez l’un des objets que vous voulez dans le conteneur et cliquez sur le lien Créer dans ses propriétés (qui apparaît sous la catégorie Conteneur à côté de l’étiquette Aucun conteneur).

Une boîte de dialogue s’ouvre vous permettant de choisir l’objet à ajouter au conteneur. D’autres objets peuvent être ajoutés à un conteneur en cliquant à nouveau sur le lien Ajouter un objet dans la catégorie Conteneur. Les objets peuvent être supprimés en cliquant sur le lien Supprimer.

Ce que font les conteneurs le fait de placer des objets dans un conteneur a les effets suivants :Si un objet dans un conteneur est créé, tous les autres objets dans son conteneur sont également créés automatiquement. Si un objet dans un conteneur est détruit, tous les autres objets associés dans son conteneur sont également détruits. Si une condition prélève un objet dans un conteneur, tous les autres objets associés dans son conteneur sont également prélevés. Les deux premiers points garantissent essentiellement qu’il y a le même nombre d’instances pour tous les objets dans un conteneur. En d’autres termes, les conteneurs sont créés et détruits dans leur ensemble. Si l’on prend l’exemple du conteneur de base et de la tourelle, il est impossible de créer une base de char sans obtenir automatiquement une nouvelle tourelle pour celle-ci.

Le troisième point est l’objectif principal des conteneurs. Les conteneurs sont également choisis dans l’ensemble des événements. Cela fait que les événements traitent les conteneurs comme s’ils n’étaient qu’un seul objet. Par exemple, si une condition choisit une instance de base de chars, elle choisit aussi automatiquement la tourelle associée à la base.

Exemples

Dans les cas suivants, supposons que TankBase et TankTurret se trouvent tous deux dans un conteneur. Événement créant un conteneur. Dans le cas ci-dessus, une instance TankTurret est également créée puisqu’elle se trouve dans un conteneur avec Tank Base. Il peut également être utile d’ajouter une action pour définir la position de la TankTurret afin qu’elle apparaisse au-dessus de la base. Événement détruisant un conteneur. Dans ce cas, l’instance TankTurret associée est également détruite puisqu’elle se trouve dans un conteneur avec TankBase.

Sélection d’événements avec un conteneur

Dans ce cas, lorsqu’une balle frappe la base du char, seule la tourelle associée clignote. Si les objets n’étaient pas dans un conteneur, toutes les tourelles du jeu clignoteraient, conformément aux règles de fonctionnement des événements (comme aucune tourelle n’est référencée dans les conditions, l’action s’applique à toutes les tourelles). Cependant, comme les objets sont dans un conteneur, lorsque le TankBase qui a été touché par une balle est choisi, la tourelle qui lui est associée est également choisie. Cela permet à l’événement de fonctionner comme prévu, et l’événement traite les deux objets comme s’ils ne faisaient qu’un. C’est l’essence même des conteneurs et, pour certains usages comme les jeux de stratégie, un grand nombre d’événements tireront parti de ce type de prélèvement pour s’assurer que les objets fonctionnent comme des unités et n’affectent pas accidentellement d’autres instances.

Placer les objets des conteneurs dans une mise en page

Dans la vue Layout, il est possible de créer une instance dans un conteneur par lui-même. Cela semble enfreindre les règles 1 et 2 de la section « Ce que font les conteneurs », car les objets d’un conteneur doivent toujours être créés et détruits ensemble. Cependant, l’éditeur ne l’applique pas. Au lieu de cela, les objets manquants sont créés automatiquement lorsque la mise en page commence. Il est bon de s’assurer que vous créez quand même suffisamment d’objets pour pouvoir modifier la position de l’objet, les variables d’instance et d’autres propriétés à partir dela vue de la mise en page.

Utilisation de conteneurs dans la vue « Layout View »

Dans la vue Layout, lorsque vous mettez en évidence une instance dans un conteneur, les autres instances du même conteneur sont surlignées en jaune pour vous aider à identifier les instances qui sont regroupées. Vous pouvez également changer la propriété du mode de sélection pour l’une des suivantes : Normal : les instances du conteneur sont sélectionnées individuellement comme si elles étaient normales. Toutes : les instances du conteneur sont toutes sélectionnées ensemble lorsque vous sélectionnez l’une d’entre elles. C’est comme si vous sélectionniez toujours plusieurs instances du conteneur chaque fois que vous cliquez sur l’une d’entre elles. Wrap : sélectionne également toutes les instances du conteneur, puis enroule la sélection de manière à ce qu’elles s’étirent et tournent comme une seule. Cela signifie que vous pouvez traiter les conteneurs comme s’ils ne formaient qu’un seul objet. Pour plus d’informations, voir l’habillage de la sélection dans la vue de lamise en page. Vous pouvez contourner le mode de sélection en maintenant la touche Alt enfoncée eten sélectionnant une instance. Cela vous permettra de ne sélectionner que cette instance, même si le mode de sélection est Tout ou Enveloppe. Cela vous permet également de modifier le conteneur, par exemple pour ajouter ou supprimer un autre type d’objet dans le conteneur. Objets de stockage de données dans un conteneur urIl est possible d’ajouter des objets de stockage de données

Les conteneurs de contruct