Creating your FX
* Create a GSC file, Intro To Scripting but fill it with the text below instead.
Code: Select all
#include maps\mp\_utility;
main()
{
precacheFX();
spawnFX();
}
precacheFX()
{
level._effect["mp_fire_medium"] = loadfx("maps/mp_maps/fx_mp_fire_medium");
}
spawnFX()
{
ent = maps\mp\_utility::createOneshotEffect( "mp_fire_medium" );
ent.v[ "origin" ] = ( 0, 0, 0 );
ent.v[ "angles" ] = ( 270, 0, 0 );
ent.v[ "fxid" ] = "mp_fire_medium";
ent.v[ "delay" ] = -15;
}
3. Add the below line to your mp_yourmapname.gsc right under "maps\mp\_load::main();".
Code: Select all
maps\mp\mp_yourmapname_fx::main();
Description of your FX GSC
1. Your main function.
Code: Select all
main()
{
precacheFX();
spawnFX();
}
2. precacheFX() function
Code: Select all
precacheFX()
{
level._effect["mp_fire_medium"] = loadfx("maps/mp_maps/fx_mp_fire_medium");
}
* level._effect["mp_fire_medium"] is the name "mp_fire_medium" that will be referenced by all your scripts, this can be anything.
* loadfx("maps/mp_maps/fx_mp_fire_medium") is the path to the tagged FX, notice that there is no extension on the end of the path.
Code: Select all
spawnFX()
{
ent = maps\mp\_utility::createOneshotEffect( "mp_fire_medium" );
ent.v[ "origin" ] = ( 0, 0, 0 );
ent.v[ "angles" ] = ( 270, 0, 0 );
ent.v[ "fxid" ] = "mp_fire_medium";
ent.v[ "delay" ] = -15;
}
* ent = maps\mp\_utility::createOneshotEffect( "mp_fire_medium" );
o This calls what FX you want to play.
* ent.v[ "origin" ] = ( 0, 0, 0 );
o Where the FX will be located in X, Y, Z coordinates.
* ent.v[ "angles" ] = ( 270, 0, 0 );
o This is how the FX will be oriented by rotating the X, Y, Z.
* ent.v[ "fxid" ] = "mp_fire_medium";
o The name of the FX should be the same as the first line.
* ent.v[ "delay" ] = -15;
o This is the repeat rate.