CEG For Units: Difference between revisions
no you can't call cegs via lua |
|||
| Line 4: | Line 4: | ||
CEGs need to be linked to a Unit's data to be generated via COB | CEGs need to be linked to a Unit's data to be generated via COB. | ||
To do so, create a section in your Unit's TDF like this: | To do so, create a section in your Unit's TDF like this: | ||
<p> | |||
<b>[SFXTypes]</b><br> | |||
{ | <b>{</b><br> | ||
ExplosionGenerator0=custom:MyNiftyExplosionGenerator; | ExplosionGenerator0=custom:MyNiftyExplosionGenerator;<br> | ||
} | <b>}</b></p> | ||
This tells Spring that the CEG called '''MyNiftyExplosionGenerator''' is attached to this Unit, and allows COB to call it. If you have more than one, then the next one uses a 1 instead of a 0, e.g. '''ExplosionGenerator1=custom:MyNiftyExplosionGenerator;''' ... and so forth. | |||
This tells Spring that the CEG called MyNiftyExplosionGenerator is attached to this Unit, and allows COB to call it. If you have more than one, then the next one uses a 1 instead of a 0, e.g. ExplosionGenerator1=custom:MyNiftyExplosionGenerator; ... and so forth. | |||
== Step 2: Calling the CEG via COB == | == Step 2: Calling the CEG via COB == | ||
Revision as of 19:37, 20 January 2008
Creating Custom Explosion Generators (CEGs) and using them with Units in Spring, via COB, is quite easy. This tutorial will show you how to do so.
Step 1: Link your CEGs to your Unit.
CEGs need to be linked to a Unit's data to be generated via COB.
To do so, create a section in your Unit's TDF like this:
[SFXTypes]
{
ExplosionGenerator0=custom:MyNiftyExplosionGenerator;
}
This tells Spring that the CEG called MyNiftyExplosionGenerator is attached to this Unit, and allows COB to call it. If you have more than one, then the next one uses a 1 instead of a 0, e.g. ExplosionGenerator1=custom:MyNiftyExplosionGenerator; ... and so forth.
Step 2: Calling the CEG via COB
The easiest way to do this is to use a #DEFINE statement, using the appropriate number for the type of Explosion you want to invoke. So, what I typically do is put in lines at the start of the COB, like this:
#DEFINE MyNiftyExplosionGenerator 1024+0
This means that, wherever in the COB I call MyNiftyExplosionGenerator, Spring will call the appropriate CEG.
To actually call the CEG, just use the following:
emit-sfx MyNiftyExplosionGenerator from PieceName;
It's just that simple :-) Just make darn sure you've gotten everything right before you use this, or you will cause to Spring to crash!