Gaming Zone Communautes Battlefield PiTrust Communautes Mods
SommairemapstutorielsforumtétéchargementsdiversLes liensLivre d'Or
19/. Ajouter des fenêtres cassables

 

Continuons notre l'apprentissage du script avec l'utilisation maintenant du script, des script_brushmodel ainsi que des trigger_damage pour la création de fenêtres cassables. Nous allons donc modifier les fenêtres de notre maison pour qu'elles se brisent en cas d'impact.

Avant toute chose, nous allons filter notre éditeur pour travailler dans de meilleures conditions à savoir : curves - detail - lights et static (surtout pas entity, cela ferait disparaître les script_brushmodels dès leur création).

Chose faite, nous allons donc reprendre une de nos fenêtres puisqu'elle a la bonne dimension en hauteur et largeur. Nous allons simplement la rendre moins épaisse en réduissant son épaiseur à 2 unités.

Dupliquez maintenant le brush de manière à avoir 4 fenêtres identiques que vous alignerez de la même manière que sur le screenshot suivant, ceci est important pour la suite.

A partir d'ici, attention à bien lire ce qui est dit. Une inversion de texture, de commande ou de type d'entité, et le résultat ne sera pas au rendez-vous.

Sélectionnez les 2 brushs de droite et donnez leur la texture (1) NODRAW. Maintenant sélectionnez les 2 brushs de gauche et, à partir des textures contenues dans le menu COMMON, sélectionnez la texture (2) ORIGIN.

Pour notre brush NODRAW le plus haut, nous allons appliquer une texture de fenêtre cassée. Celle-ci se trouve dans le menu AUSTRIA : austria/windows/glass_blend_in@shopwin2broken. Son nom est d'ailleurs très explicite : @shopwin2broken. Appliquez donc cette texture uniquement sur les 2 faces (avant et arrière) du brush. Un FIT (CTRL+ F) permettra de positionner la texture intégralement sur la face du brush.

Maintenant, nous allons faire de même avec le brush NODRAW du bas, mais nous allons lui appliquer une texture normale à savoir austria/windows/workshopwindow2, toujours sur les 2 faces (avant et arrière) du brush avec un FIT. Ces 4 brushs serviront à rendre notre fenêtre cassable.

Une fois terminé, sélectionnez ces 4 brushs et dupliquez-les 2 fois, ceci pour faire de même pour nos 2 autres fenêtres (que vous pouvez d'ailleurs supprimer de leur emplacement actuel).

Tracez un nouveau brush aux mêmes dimensions que notre fenêtre à l'exception prêt qu'il doit avoir une épaisseur de 8 unités. Texturez-le ensuite avec la texture TRIGGER du menu COMMON.

A partir d'ici, attention à ne pas vous tromper de manipulation. Nous allons lui attribuer la fonction trigger_damage. Cette fonction permet de déclencher des dommages aux joueurs ou aux objets. Le TRIGGER toujours sélectionné, faites un CDS et (1) donnez-lui la fonction trigger_damage. Attention à bien donner cette fonction en ne sélectionnant qu'un seul TRIGGER à la fois. Normalement, (2) cette information doit être indiqué sur les vues 2 D.

Nous allons lui donner un targetname pour le lier par la suite à notre script. Appelez la fenêtre ENTITY (touche N) et entrez targetname window.

Recommencez la procédure pour les 2 autres fenêtres en créant 2 autres trigger_damage et en procédant de la même manière avec le même targetname.

Nous allons maintenant créer nos premiers script_brushmodel. Un script_brushmodel permet de donner vie au jeu, grâce à un déclencheur (trigger), un script_brushmodel permet de modifier l'apparence d'une construction, c'est dire avant et après un déclencheur. Cela permet de rendre la map plus réaliste. (1) A partir de la vue 3D, sélectionnez donc le brush NODRAW (avec la texture fenêtre) puis (2) le brush ORIGIN, et avec un CDS, sélectionnez script_brushmodel. Attention à bien prendre ces brushs dans cet ordre et de les sélectionnez tous les deux avant de donner cette fonction. Il ne faut en aucun cas le faire l'un après l'autre.

Répétez cette opération pour tous les autres brushs NODRAW et ORIGIN (normalement 5 fois).

Attention à l'ordre de sélection ici, inversez la sélection des brushs et vous constaterez de drôles de choses une fois dans le jeu. Toujours à partir de la vue 3D, sélectionnez d'abord (1) le brush NODRAW (fenêtre intacte) puis (2) le brush NODRAW (fenêtre cassée). Nous allons lier ces 2 entités (un script_brushmodel est une entité) à l'aide du raccourci CTRL + K. Normalement, une flèche bleu doit relier ces 2 entités dans le sens de sélection (c'est-à-dire de notre (1) fenêtre intacte vers notre (2) fenêtre cassée).

Pour l'explication, au moment du déclenchement de notre trigger_damage, le jeu saura qu'il faut effacer la fenêtre intacte et afficher la fenêtre cassée.

Il nous faut maintenant relier notre déclencheur à notre fenêtre intacte. Toujours la même manipulation dans le bon ordre. Sélectionnez le trigger_damage puis le brush NODRAW (fenêtre intacte) et liez les avec les touches CTRL + K. Même chose une flèche bleu doit relier ces 2 entités dans le sens de sélection (c'est-à-dire de notre (1) trigger_damage vers notre (2) fenêtre intacte).

Il ne reste plus qu'à replacer nos 4 brushs (2 NODRAW + 2 ORIGIN) à leur place, c'est-à-dire bien au centre de son emplacement.

Placez maintenant le trigger_multiple dans son emplacement, celui-ci doit être dans le prolongement des murs intérieurs et extérieurs. Nous en avons fini avec la première fenêtre, il va donc falloir répéter ces opérations pour les 2 autres fenêtres.

Si tout va bien, vous devez vous retrouver avec (1) (2) (3) vos 3 trigger_damage à leur place respective, accompagné des autres brushs. La partie mapping est maintenant terminée, il va maintenant falloir faire la partie script.

Reprenons notre script principal, nous allons lui ajouter donc le script nécessaire au fonctionnement des vitres cassées en multijoueurs. En effet, par défaut cette fonction n'est pas présente dans le jeu (uniquement en solo). Un bon scripteur (un certain n00bCODmapper) a donc apporté au jeu ce dont il avait besoin pour que cela fonctionne aussi en multijoueurs.

Ouvrez donc votre script, et ajoutez cette ligne : level thread maps\mp\tuto_fenetre::main(); (après level thread maps\mp\tuto_fx::main();).

Ce script étant assez long, je vous propose de le télécharger à partir de ce lien. Il suffit simplement de le placer au même endroit que votre script principal.

Vous pouvez maintenant compiler votre map et tester le fruit de votre travail.

Les fichiers (.map - .gsc) de notre tuto 19/. se trouve ici. Pour l'utiliser, à partir du menu FICHIER, sélectionnez IMPORTEZ (.map) ==> IMPORTEZ NOUVELLE MAP.

 

Par Caskou - 2005 Copyright © by CaskAmi Prod. Tout droit réservé.

 

Page générée en

Design / concept Amigos3D - Copyright ©2006 CaskAmi Prod. Tous droits réservés.
Caskami.com est hébergé; par Eliott-Ness.