Provides an interface to a physics mover / character controller.
Constructors and accessors
Related sample code
Other related reference items
actor_colliding_down ( self ) : stingray.Actor
Returns the actor, if any, that the mover is standing upon.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
The actor that was last collided with in the downward direction. |
collides_down ( self ) : boolean
Indicates whether or not the Mover is colliding in the downward direction: i.e. whether
the surface it is hitting is a walkable surface.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
boolean |
Returns true if the mover collides in the downward direction, or false otherwise. |
collides_sides ( self ) : boolean
Indicates whether or not the Mover is colliding horizontally: i.e. its side, front or rear orientation is
colliding with another object.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
boolean |
Returns true if the mover collides in a horizontal direction, or false otherwise. |
collides_up ( self ) : boolean
Indicates whether or not the Mover is colliding in the upward direction: i.e. it is hitting its head
on a surface.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
boolean |
Returns true if the mover collides in the upward direction, or false otherwise. |
flying_frames ( self ) : integer
Returns the number of frames the mover has been flying: i.e. not colliding downward
with any walkable surface.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
integer |
The number of frames the mover has been flying. |
This function returns 1 for the first frame the mover is flying.
standing_frames ( self ) : integer
Returns the number of frames the mover has been "standing" on a surface.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
integer |
The number of frames the mover has been standing. |
The mover is considered to be "standing" if it is colliding downward with a walkable surface: a surface whose slope is less than the maximum slope value set for the Mover.
This function returns 1 for the first frame the mover is standing.
max_slope_angle ( self ) : number
Returns the maximum slope angle that the mover can walk on.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
number |
The maximum slope angle set for the mover, in radians. |
set_collision_filter ( self, filter )
Changes the collision filter used by the mover.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. | |
filter : | string |
The new collision filter to set for the mover. |
This function does not return any values. |
set_max_slope_angle ( self, slope )
Sets the maximum slope angle that the mover can walk on.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. | |
slope : | number |
The new maximum slope angle to set for the mover, in radians. |
This function does not return any values. |
fits_at ( self, position, allow_move ) : boolean, stingray.Vector3?
Indicates whether or not the mover fits at the specified position without colliding with
any world geometry.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. | |
position : |
The position to place the mover. | |
allow_move : | number? |
If non-zero, specifies the distance to search for a non-colliding position. The ? notation indicates that this type is optional: there may be zero or one instances of it. |
boolean |
Returns true if the mover fits at the position, or false otherwise. |
If a non-colliding position was found, it is returned as the second paramter. The ? notation indicates that this type is optional: there may be zero or one instances of it. |
move ( self, offset, delta_time )
Attempts to move the mover by the specified position.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. | |
offset : |
The vector along which the mover slides. | |
delta_time : | number |
The delta time in seconds. Used to resolve interactions with kinematic platforms. |
This function does not return any values. |
The mover will slide against physical objects.
Other related reference items
position ( self ) : stingray.Vector3
Returns the current position of the mover.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
The position of the mover. |
radius ( self ) : number
Returns the outer radius of the mover.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
number |
The radius of the mover. |
separate ( self, allow_move ) : boolean, stingray.Actor?, stingray.Vector3?, stingray.Vector3?
Tries to separate the mover from any colliding geometry and returns the result.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. | |
allow_move : | number? |
If non-zero, specifies the distance to search for a non-colliding position. The ? notation indicates that this type is optional: there may be zero or one instances of it. |
boolean |
True if the mover is colliding in the start position. |
The actor that the mover is colliding with in the start position. The ? notation indicates that this type is optional: there may be zero or one instances of it. | |
If the collision can be resolved by moving the mover a distance below allow_move, this is the distance the mover needs to move to resolve the collision. The ? notation indicates that this type is optional: there may be zero or one instances of it. | |
If the collision can be resolved by moving the mover, this is the mover's final position. The ? notation indicates that this type is optional: there may be zero or one instances of it. |
Note that this function will not actually move the mover, you need to call move() to do that.
set_position ( self, pos )
Teleports the mover to the specified position.
|
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. | |
pos : |
The position to reach. |
This function does not return any values. |
self : |
Specifies the object instance that this function will act on. You must always provide this self parameter when you call this function. You must use the dot . calling syntax, not the object-oriented colon : calling syntax.For more information, see Object lifetimes and userdata binding, or this page in the Lua documentation. |
The Unit that owns the mover. |