AreaTrigger

Associated namespace: sm.areaTrigger

A userdata object representing an area trigger in the game.

Values:

Functions:

Operations:

OperationDescription
AreaTrigger == AreaTriggerChecks if two instances of AreaTrigger refer to the same AreaTrigger.

id integer

Get:

Returns the id of an area trigger.


bindOnEnter(areaTrigger, callback, object=nil)

Binds an area trigger's onEnter event to a custom callback. The onEnter event is triggered when an object enters the trigger area.

The callback receives:

function MyClass.onEnter( self, trigger, results ) ...

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
stringcallbackThe name of the Lua function to bind.
tableobject=nilThe object that will receive the callback. (optional)

bindOnExit(areaTrigger, callback, object=nil)

Binds an area trigger's onExit event to a custom callback. The onExit event is triggered when an object leaves the trigger area.

The callback receives:

function MyClass.onExit( self, trigger, results ) ...

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
stringcallbackThe name of the Lua function to bind.
tableobject=nilThe object that will receive the callback. (optional)

bindOnProjectile(areaTrigger, callback, object=nil)

Binds an area trigger's onProjectile event to a custom callback. The onProjectile event is triggered if a projectile collides with the trigger area

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
stringcallbackThe name of the Lua function to bind.
tableobject=nilThe object that will receive the callback. (optional)

bindOnStay(areaTrigger, callback, object=nil)

Binds an area trigger's onStay event to a custom callback. The onStay event is triggered every tick as long as an object is staying inside of the trigger area.

The callback receives:

function MyClass.onStay( self, trigger, results ) ...

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
stringcallbackThe name of the Lua function to bind.
tableobject=nilThe object that will receive the callback. (optional)

getContents(areaTrigger)

Gets the contents of the area trigger.

Returns a table of characters and/or bodies and/or harvestables and/or lifts and/or areaTriggers.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
tableThe table with the content.

getHostInteractable(areaTrigger)

Returns the attached host interactable.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
InteractableThe area trigger's host interactable.

getId(areaTrigger)

Returns the id of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
integerThe area trigger's id.

getShapes(areaTrigger)

Gets the shapes inside the area trigger

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
tableA table of shapes. {Shape, ...}

getSize(areaTrigger)

Returns the size of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
Vec3The area trigger's size.

getUserData(areaTrigger)

Returns the user data set on the area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
tableThe user data set on this trigger

getWorldMax(areaTrigger)

Returns the world max corner position of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
Vec3The area trigger's max corner position.

getWorldMin(areaTrigger)

Returns the world min corner position of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
Vec3The area trigger's min corner position.

getWorldPosition(areaTrigger)

Returns the world position of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
Vec3The area trigger's world position.

getWorldRotation(areaTrigger)

Returns the world rotation of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
QuatThe area trigger's world rotation.

hasVoxelTerrainContact(areaTrigger)

Returns true if the AreaTrigger is in contact with destructable terrain.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.

Returns:

TypeDescription
booleanDestructable terrain contact.

setShapeDetection(areaTrigger, detectShapes)

Shape detection is off by default. When set to true the area trigger can calculate which shapes are inside of the trigger

with a call to AreaTrigger: getShapes

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
booleandetectShapesShape detection on or off.

setSize(areaTrigger, size)

Sets the new size of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
Vec3sizeThe area trigger's new size.

setWorldPosition(areaTrigger, position)

Sets the new world position of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
Vec3positionThe area trigger's new world position.

setWorldRotation(areaTrigger, rotation)

Sets the new world rotation of an area trigger.

Parameters:

TypeNameDescription
AreaTriggerareaTriggerThe area trigger instance.
QuatrotationThe area trigger's new world rotation.