πͺ€ Trigger
A Trigger class is a utility class to trigger events when any Entity enters an Area.
info
Usageβ
local sphere_trigger = Trigger(Vector(-200, 100, 500), Rotator(), Vector(100), TriggerType.Sphere, true, Color(1, 0, 0))
sphere_trigger:Subscribe("BeginOverlap", function(trigger, actor_triggering)
Package.Log("Something entered my Sphere Trigger")
end)
local box_trigger = Trigger(Vector(300, 200, 500), Rotator(0, 45, 0), Vector(150, 150, 150), TriggerType.Box, true, Color(0, 1, 0))
box_trigger:Subscribe("BeginOverlap", function(trigger, actor_triggering)
Package.Log("Something entered my Box Trigger")
end)
box_trigger:Subscribe("EndOverlap", function(trigger, actor_triggering)
Package.Log("Something left my Box Trigger")
end)
Constructor Parametersβ
Type | Name | Default | |
---|---|---|---|
Vector | location | Vector(0, 0, 0) | |
Rotator | rotation | Rotator(0, 0, 0) | |
Vector | extent | Vector(0, 0, 0) | Size of the Trigger. If using Sphere, only the X is used |
TriggerType | trigger_type | TriggerType.Sphere | Currently supports Sphere of Box |
boolean | is_visible | false | Useful for debugging |
Color | color | Color.RED | Color to paint the Trigger bounds - if Visible |
Functionsβ
Inherited Actor Functions
Returns | Name | Description | |
---|---|---|---|
AddImpulse | Applies a Force in world space to this Actor | ||
AttachTo | Attaches this Actor to another Actor | ||
Destroy | Destroys this Actor | ||
Detach | Detaches this Actor if attached | ||
SetCollision | Sets this Actor's collision type | ||
SetForce | Adds a permanent force to this Actor | ||
SetGravityEnabled | Sets whether gravity is enabled on this Actor | ||
![]() | SetVisibility | Sets the Actor visibility | |
SetHighlightEnabled | Sets whether the highlight is enabled on this Actor, and which highlight index to use | ||
SetOutlineEnabled | Sets whether the outline is enabled on this Actor, and which outline index to use | ||
SetLifeSpan | Sets the time (in seconds) before this Actor is destroyed | ||
SetLocation | Sets this Actor's location in the game world | ||
SetNetworkAuthority | Sets the Player this Actor will have its physics calculated on Network Authority | ||
SetRelativeLocation | Sets this Actor's relative location in local space | ||
SetRelativeRotation | Sets this Actor's relative rotation in local space | ||
SetRotation | Sets this Actor's rotation in the game world | ||
SetScale | Sets this Actor's scale | ||
![]() | SetValue | Sets a value in this Actor, which can be accessed by any package | |
TranslateTo | Smoothly moves this Actor to the specified location | ||
RotateTo | Smoothly rotates this Actor to the specified angle | ||
boolean | HasNetworkAuthority | Gets if the LocalPlayer is currently the Network Authority of this Actor | |
boolean | HasAuthority | Gets if this Actor was spawned by the client side | |
![]() | boolean | IsBeingDestroyed | Gets if this Actor is being destroyed |
![]() | boolean | IsGravityEnabled | Gets whether gravity is enabled on this Actor |
![]() | boolean | IsVisible | Gets whether this actor is Visible or not |
![]() | boolean | IsInWater | Gets if this Actor is in water |
![]() | boolean | IsNetworkDistributed | Gets if this Actor is currently Network Distributed |
![]() | boolean | IsValid | Returns if this Actor is valid (i.e. not destroyed) |
![]() | table | GetAttachedEntities | Gets all Actors attached to this Actor |
![]() | any | GetAttachedTo | Gets the Actor this Actor is attached to |
table | GetBounds | Gets this Actor's bounds | |
![]() | number | GetCollision | Gets this Actor's collision type |
![]() | number | GetID | Gets the universal network ID of this Actor |
![]() | Vector | GetLocation | Gets this Actor's location in the game world |
![]() | Rotator | GetRotation | Gets this Actor's angle in the game world |
![]() | Vector | GetForce | Gets this Actor's scale |
![]() | Vector | GetScale | Gets this Actor's scale |
![]() | string | GetType | Gets the type of this Actor |
![]() | any | GetValue | Gets a value stored on this Actor at the given key |
![]() | Vector | GetVelocity | Returns this Actor's current velocity |
string | AddActorTag | Adds an Unreal Actor Tag to this Actor | |
string | RemoveActorTag` | Remove an Unreal Actor Tag from this Actor | |
table | GetActorTags | Gets all Unreal Actor Tags from this Actor | |
![]() | function | Subscribe | Subscribes to an Event |
![]() | Unsubscribe | Unsubscribes from an Event |
Returns | Name | Description | |
---|---|---|---|
ForceOverlapChecking | Forces a Overlap check to occur | ||
SetExtent | Sets the extent size of this trigger |

ForceOverlapChecking
β
Forces a Overlap checking to occur, will immediately trigger overlaps
my_trigger:ForceOverlapChecking()

SetExtent
β
Sets the extent size of this trigger (sphere triggers will use only the .X component for radius)
my_trigger:SetExtent(extent)
Type | Parameter | Description |
---|---|---|
Vector | extent | Sphere triggers will use only the .X component for radius |
Eventsβ
Inherited Actor Events
Name | Description | |
---|---|---|
Destroy | Triggered when an Actor is destroyed | |
Spawn | Triggered when an Actor is spawned/created | |
ValueChange | Triggered when an Actor has a value changed with :SetValue() |
Name | Description | |
---|---|---|
BeginOverlap | Triggered when something overlaps this Trigger | |
EndOverlap | Triggered when something leaves this Trigger |

BeginOverlap
β
Triggered when something overlaps this Trigger
Trigger.Subscribe("BeginOverlap", function(self, entity)
end)
Type | Parameter | Description |
---|---|---|
Trigger | self | The Trigger entity |
Actor | entity | Any Actor which overlaps |

EndOverlap
β
Triggered when something leaves this Trigger
Trigger.Subscribe("EndOverlap", function(self, entity)
end)
Type | Parameter | Description |
---|---|---|
Trigger | self | The Trigger entity |
Actor | entity | Any Actor which left the Trigger |