Difference between revisions of "Fieldname"
From WolfWiki
m (clean up vec3 example. You don't need t = {} before calling a function that returns a table.) |
(trajectory, pedantry for vec3, category) |
||
Line 130: | Line 130: | ||
'''vec3''' : a '''vec3''' is a 3-element array of numbers (C definition: <tt>typedef float vec3_t[3]; | '''vec3''' : a '''vec3''' is a 3-element array of numbers (C definition: <tt>typedef float vec3_t[3]; | ||
</tt>). It is usually used to store and process coordinates in 3D space.<br> | </tt>). It is usually used to store and process coordinates in 3D space.<br> | ||
− | In etpro-lua a vector is | + | In etpro-lua a vector is an array (table indexed by integers) containing 3 numbers. It can be accessed by |
doing: | doing: | ||
<pre> | <pre> | ||
origin = et.gentity_get(entNum,"r.currentOrigin") --a vec3 value | origin = et.gentity_get(entNum,"r.currentOrigin") --a vec3 value | ||
x,y,z = origin[1],origin[2],origin[3]</pre> | x,y,z = origin[1],origin[2],origin[3]</pre> | ||
+ | |||
+ | |||
+ | |||
+ | '''trajectory''': a '''trajectory''' is returned as a lua table described below | ||
+ | { | ||
+ | trDuration = <number>, --- int | ||
+ | trTime = <number>, -- int | ||
+ | trType = <number>, -- see below for allowed values | ||
+ | trBase { -- this is a vec3, as described above | ||
+ | [1] = <number> | ||
+ | [2] = <number> | ||
+ | [3] = <number> | ||
+ | }, | ||
+ | trDelta { -- also a vec3 | ||
+ | [1] = <number> | ||
+ | [2] = <number> | ||
+ | [3] = <number> | ||
+ | }, | ||
+ | } | ||
+ | : the allowed values for trType (along with the enum names and original comments from the ET source), are as follows. Note | ||
+ | : that not all values make sense for all entity types <tt> | ||
+ | <ol start=0> | ||
+ | <li>TR_STATIONARY</li> | ||
+ | <li>TR_INTERPOLATE // non-parametric, but interpolate between snapshots</li> | ||
+ | <li> TR_LINEAR</li> | ||
+ | <li>TR_LINEAR_STOP</li> | ||
+ | <li>TR_LINEAR_STOP_BACK //----(SA) added. so reverse movement can be different than forward</li> | ||
+ | <li>TR_SINE // value = base + sin( time / duration ) * delta</li> | ||
+ | <li>TR_GRAVITY</li> | ||
+ | <li>TR_GRAVITY_LOW</li> | ||
+ | <li>TR_GRAVITY_FLOAT // super low grav with no gravity acceleration (floating feathers/fabric/leaves/...)</li> | ||
+ | <li>TR_GRAVITY_PAUSED //----(SA) has stopped, but will still do a short trace to see if it should be switched back to TR_GRAVITY</li> | ||
+ | <li>TR_ACCELERATE</li> | ||
+ | <li>TR_DECCELERATE</li> | ||
+ | <li>TR_SPLINE</li> | ||
+ | <li>TR_LINEAR_PATH</li> | ||
+ | </ol> | ||
+ | </tt> | ||
[[Category:ETPro]] | [[Category:ETPro]] | ||
+ | [[Category:ETPro:Mods]] |
Revision as of 00:25, 17 November 2005
List of fields supported by et.gentity_get() and et.gentity_set()
|
ET variable types:
vec3 : a vec3 is a 3-element array of numbers (C definition: typedef float vec3_t[3];
). It is usually used to store and process coordinates in 3D space.
In etpro-lua a vector is an array (table indexed by integers) containing 3 numbers. It can be accessed by
doing:
origin = et.gentity_get(entNum,"r.currentOrigin") --a vec3 value x,y,z = origin[1],origin[2],origin[3]
trajectory: a trajectory is returned as a lua table described below
{ trDuration = <number>, --- int trTime = <number>, -- int trType = <number>, -- see below for allowed values trBase { -- this is a vec3, as described above [1] = <number> [2] = <number> [3] = <number> }, trDelta { -- also a vec3 [1] = <number> [2] = <number> [3] = <number> }, }
- the allowed values for trType (along with the enum names and original comments from the ET source), are as follows. Note
- that not all values make sense for all entity types
- TR_STATIONARY
- TR_INTERPOLATE // non-parametric, but interpolate between snapshots
- TR_LINEAR
- TR_LINEAR_STOP
- TR_LINEAR_STOP_BACK //----(SA) added. so reverse movement can be different than forward
- TR_SINE // value = base + sin( time / duration ) * delta
- TR_GRAVITY
- TR_GRAVITY_LOW
- TR_GRAVITY_FLOAT // super low grav with no gravity acceleration (floating feathers/fabric/leaves/...)
- TR_GRAVITY_PAUSED //----(SA) has stopped, but will still do a short trace to see if it should be switched back to TR_GRAVITY
- TR_ACCELERATE
- TR_DECCELERATE
- TR_SPLINE
- TR_LINEAR_PATH