Les gardes portant des torches
Patrouilles et Navmesh
Comment montrer si un AI est inconscient
ou mort
Personnalisation d'AI – Exemple d'un Elément
de feu (Fire Elemental)
Un garde
Vous pouvez attacher une torche à n'importe quel membre (plutôt) humanoïde de la caste AI, le garde n'est pas obligatoire. En fait, on peut attacher beaucoup de choses à quasiment n'importe qui/quoi. Mais ici, on prendra un garde et une torche.
Ouvrez le Actor Class Browser.
On trouve les gardes (Combat Class Human Thief3 AI Pawns) dans l'arborescence
Actor à Pawn à AIPawn. Prenez le *CastleGuard_GNormal_04, il fera l'affaire.
Pour le placer dans le niveau, cliquez dessus pour le mettre en surbrillance, puis faites un clic droit sur une des fenêtres de T3ed, sélectionnez Add *CastleGuard_GNormal_04 Here du menu. Placez-le correctement dans la bonne position. Peu importe s'il flotte légèrement au dessus du sol, il sera mis correctement dès que la map commencera.
Une torche
Allez dans l'Actor Class Browser, puis Actor
> WorldObj > Light_ > FlameLight > TorchLight > *HandTorch pour trouver
une torche qu'un AI peut tenir.
Faites un clic droit dans une fenêtre et sélectionnez Add
*HandTorch Here. Sélectionnez la torche et regardez sa boîte de dialogue
Actor Properties.
Prenez bien note de son nom, cela doit être HandTorch__0.
Faites bien attention, il y a deux underscores( _ et _ ) entre HandTorch
et le nombre.
Associons le garde et la torche
Sélectionnez le garde et ouvrez la boîte de dialogue Show Actor Links. Le garde est déjà linké à ses yeux, dents et son armure. Nous devons créer un link avec la torche. Cliquez sur le bouton Add Link.
Vous voilà avec une liste de links de différents types. Sélectionnez RigidAttachment.
Le champ FROM: devrait déjà contenir l'identité de notre garde.
On doit écrire dans le champ TO: le nom de notre torche, HandTorch__0.
Une fois ceci fait, cliquez sur OK pour confirmer.
Un peu de thé, Monseigneur ?
Nous avons un garde portant une torche. Mais dès qu'on teste, on peut voir que la torche est attachée au milieu du corps du garde. Le pauvre garde se balade et des flammes émergent de son postérieur. On ne peut le laisser comme cela. Il faut attacher la torche à la main gauche du garde.
Allez dans la boîte de dialogue Show Actor Links du garde. Mettez en surbrillance le link vers la torche (consultez la colonne Destination pour être sûr) et cliquez sur le bouton Edit Selected Link.
A partir du menu Edit Link Data, déroulez l'élément de la dernière propriété de l'arborescence.
Vous trouverez une propriété appelée Attachment,
déroulez-la pour pouvoir choisir 2 emplacements anatomiques possibles. Mettez
en surbrillance l'un d'eux et cliquez sur le bouton "…"
Sélectionnez hp_LeftHand pour les deux propriétés
Attachment Bone et Parent Bone.
Presque terminé…
Pour bien finir la chose, nous devrions personnaliser les animations du garde pour qu'il tienne sa torche assez haut et qu'il ne se brûle pas quand il agite les bras.
Sélectionnez le garde et ouvrez ses Actor Properties.
Déroulez la dernière branche de propriétés de l'arborescence. Mettez en
surbrillance AIPawn, faites un clic droit et choisissez
Add Property.
Il y a deux listes : celle de gauche (Property Categories)
avec AI Pawn, déjà sélectionné. Sur celle de droite,
sélectionnez MovementModelClass.
Cliquez sur Add Property pour confirmer.
Repasser dans Actor Properties, déroulez la branche AIPawn pour voir la nouvelle propriété MovementClassModel. Mettez-la en surbrillance et cliquez sur le bouton … puis sélectionnez HoldingTorchMovementModel de la liste.
Personnalisons les scripts
Nous devons ajouter quelques scripts au garde et à la torche pour personnaliser
leur comportement.
Ouvrez le menu Trigger Script Manager. Parcourez
la liste pour trouver TorchGuard. Déroulez TorchGuard pour avoir accès aux
scripts.
Le garde a besoin des scripts suivants : TorchGuard_AIDeadUnconsciousFleeing et TorchGuard_AIHitWithWaterStim. Ils lui permettent de lâcher la torche et d'adopter une classe d'animation normale quand il meurt ou la torche est éteinte.
Mettez en surbrillance TorchGuard_AIDeadUnconsciousFleeing
dans le Trigger Script Manager. Maintenant sélectionnez
le garde dans l'une des fenêtres de T3ed. Faites un clic droit sur le garde
et sélectionnez
Add script TorchGuard_AIDeadUnconsciousFleeing to selected actors. Retournez
dans le Trigger Script Manager et sélectionnez TorchGuard_AIHitWithWaterStim,
puis ajoutez la même chose au garde.
La torche a besoin des scripts suivants : TorchGuard_TorchDropped et TorchGuard_TorchExtinguished. Ils lui permettent de s'éteindre si le garde la laisse tomber ou si elle est touchée par une flèche à eau.
Vous n'avez qu'à appliquer ces scripts de la même manière que pour le garde.
Précision : Faites un clic droit sur le garde et ouvrez ses Actor Links. Editez le link HandTorch. Dans la liste des propriétés, dans "Link", mettez m_name to Torch. Sans cela, les scripts ne sauront pas à quoi s'appliquer.
On peut effacer les scripts d'un actor en effaçant son entrée de la boîte de dialogue Actor Properties de l'Actor.
Tutoriels sur T3ed
t3ed.tutoriel.free.fr