Author Topic: [TUTO] Ajouter des FXs  (Read 1284 times)

Florent

  • Legomaniaque
  • ****
  • Posts: 1468
    • http://www.florent-poujol.fr
[TUTO] Ajouter des FXs
« on: March 07, 2008, 10:43:40 PM »
Source de ce tutoriel trouvé sur ce lien : http://www.zeroy.com/tacticalnight/index.php?topic=118.0


Ce tutoriel va vous apprendre à ajouter de manière non conventionnelle (mais pratique) quelques FXs sur votre map.



Mode opératoire :[/size]

Dans radiant, placez simplement un script_structs à l'emplacement désiré pour votre FX.
Dans la vue 2D, faite un clique droit puis cliquez sur script > struct.

Il faudra ensuite lui donner un targetname précis, en fonction du FX et éventuellement des angles.

Enfin, il faut penser à déclarer les FXs que vous utilisez dans le fichier zone de votre map.


Lite des FX disponibles :[/size]


Nom du FX : fire/firelp_barrel_pm  
Targetname :  barrel_fireFX_origin
A rajouter au fichier zone :  fx,fire/firelp_barrel_pm



Nom du FX :  misc/light_glow_white  
Targetname :  ch_street_light_01_on
A rajouter au fichier zone :  misc/light_glow_white



Nom du FX :  misc/lighthaze
Targetname :  ch_streetlight_02_FX_origin
Angles (pour que le FX soit orienté vers le bas comme sur l'image) : 90 0 0
A rajouter au fichier zone :  fx,misc/lighthaze



Nom du FX :  misc/lighthaze_bog_a  
Targetname :  me_streetlight_01_FX_origin
Angles (pour que le FX soit orienté vers le bas comme sur l'image) : 90 0 0
A rajouter au fichier zone :  fx,misc/lighthaze_bog_a



Nom du FX :  misc/lighthaze_villassault  
Targetname :  highway_lamp_post
Angles (pour que le FX soit orienté vers le bas comme sur l'image) : 90 0 0
A rajouter au fichier zone :  fx,misc/lighthaze_villassault



Nom du FX :   fire/tire_fire_med  
Targetname : com_tires_burning01_FX_origin
Angles (le chiffre du milieu peu être modifié suivant l'orientation voulue du FX) : 270 0 0
A rajouter au fichier zone :  fx,fire/tire_fire_med



Nom du FX :  fire/firelp_med_pm_nodistort  
Targetname :  me_dumpster_fire_FX_origin
Angles (pour que le FX soit orienté vers le haut comme sur l'image) : 326 151 -135
A rajouter au fichier zone :  fx,fire/firelp_med_pm_nodistort



Pour ajouter n'importe quel autre FX par cette méthode :[/size]

Les targetnames utilisés dans cette méthode se semblent pas avoir été définis pour d'autres FXs que ceux présentés précédemment.

C'est à nous de les créer en utilisant le script suivant :
Code: [Select]
#include common_scripts\utility;
#include maps\mp\_utility;

init()
{
randomStartDelay = randomfloatrange( -20, -15);



}

global_FX( targetname, fxName, fxFile, delay, soundalias )
{
// script_structs
ents = getstructarray(targetname,"targetname");
if ( !isdefined( ents ) )
  return;
if ( ents.size <= 0 )
  return;

for ( i = 0; i < ents.size; i++ )
  ents[i] global_FX_create( fxName, fxFile, delay, soundalias );
}

global_FX_create( fxName, fxFile, delay, soundalias )
{
if ( !isdefined( level._effect ) )
  level._effect = [];
if ( !isdefined( level._effect[ fxName ] ) )
  level._effect[ fxName ] = loadfx( fxFile );

// default effect angles if they dont exist
if ( !isdefined( self.angles ) )
  self.angles = ( 0, 0, 0 );

ent = createOneshotEffect( fxName );
ent.v[ "origin" ] = ( self.origin );
ent.v[ "angles" ] = ( self.angles );
ent.v[ "fxid" ] = fxName;
ent.v[ "delay" ] = delay;
if ( isdefined( soundalias ) )
{
  ent.v[ "soundalias" ] = soundalias;
}
}

Copiez/collez-le dans le script de votre map ou dans un autre fichier que vous appellerez _custom_structs.gsc et que vous placerez dans le dossier raw/maps/mp. Pensez, dans ce 2ème cas à rajouter la ligne maps\mp\_custom_structs::init(); au début du script de votre map.

Ce script va servir à générer les targetnames à donner aux script_struct et c'est nous allons les choisir en fonction des FX voulus.

Pour chaque FX dont vous voulez créer un targetname, rajoutez au script précédent, dans la partie init() -en dessous de randomStartDelay- la ligne suivante (autant de fois que vous ne voulez d'FX) :
global_FX( "targetname", "fxID", "actualFX", randomStartDelay );

Avec :
- Targetname : c'est le targetname que vous voulez créer. Mettez ce que vous voulez.

- fxID : c'est un nom que le script va utiliser, cela peu être absolument n'importe quoi du moment qu'il est unique à chaque FX.

- actualFX : le chemin du FX que vous voulez. Tous les fx sont dans le dossier raw/fx. Vous avez juste besoin ici d'indiquez le chemin du fx dans le dossier fx. Il n'y a pas beosoin d'écrire l'extention du fx (.efx)

- randomStartDelay : ne touchez pas à cela

Il est recommandé pour Targetname et fxID d'utiliser des noms à la fois évocateur du fx et relativement compliqué, afin qu'il n'y ait pas d'éventuel conflit avec d'autres scripts.


Exemple : pour le fx fluorescent_glow situé dans raw/fx/misc/fluorescent_glow.efx, ajoutez une ligne telle que celle-ci :
global_FX( "me_lightfluohang_on", "flurohang_glow", "misc/fluorescent_glow", randomStartDelay );


Afin d'éviter le maximum d'erreur et d'avoir à mettre à jour votre fichier zone plein de fois, pensez à rajouter dans le fichier zone les lignes :
- rawfile,maps/mp/_custom_structs.gsc (si vous avez placé le script dans un fichier à part du script de votre map (recommandé))
- fx,(lechemin du fx et sont nom sans extension) . remplacez la phrase entre parenthèse par la même chose que "actualFX". Exemple : misc/fluorescent_glow (ce qui donne fx,misc/fluorescent_glow)
mettez cette dernière ligne autant de fois que vous avez d'FX (et adaptez-la en fonction du FX évidement)
« Last Edit: April 15, 2008, 10:27:54 PM by Florent »

narcozz83

  • Bleusaille
  • Posts: 19
[TUTO] Ajouter des FXs
« Reply #1 on: April 15, 2008, 08:09:36 PM »
salut
Merci florent pour ton tuto bien pratique .
Je cherche les nom des papiers  et l=des feuilles mortes qui volent  pour ma map impossible de trouver leurs targetname peut tu m orienter vers un tuto voir une liste des fx ainsi que de leurs target merci
Amicalement.

Florent

  • Legomaniaque
  • ****
  • Posts: 1468
    • http://www.florent-poujol.fr
[TUTO] Ajouter des FXs
« Reply #2 on: April 15, 2008, 10:40:14 PM »
J'ai édité le tuto en rajoutant tout une partie qui manquait et qui permet d'utiliser le tuto avec n'importe quel FX.  :)

A priori les fx que tu recherches, Narcozz83 sont
mp_overgrown_leavesfall01.efx
mp_overgrown_leavesground01.efx
dans le dossier raw/fx/ambient_runners.

narcozz83

  • Bleusaille
  • Posts: 19
[TUTO] Ajouter des FXs
« Reply #3 on: April 16, 2008, 07:41:06 PM »
Encore un grand merci  Florent pour ta reponse si rapide, je vient d'ajouter les fx ;) et suis en train de terminer mes script helico,toujours pas trouver la solution pour ajouter mes 2 sons wav sur ma map,je m'accroche et espére trouver rapidement, pour boucler ma map After_tchernobyl_v1
Amicalement