Arma Reforger Script API
Loading...
Searching...
No Matches
Protected Member Functions | List of all members
InteractionHandlerComponent Interface Reference

Collects interactions by performing a sphere cast initially and then a sphere query at the end. More...

Inheritance diagram for InteractionHandlerComponent:
[legend]

Protected Member Functions

override bool CanContextChange (UserActionContext currentContext, UserActionContext newContext)
 Called before a context is set to determine whether a change can occur.
 
override bool DoIntersectCheck (IEntity controlledEntity)
 Should preferred context collection use intersect checks? This will make a ray check against the context's radius.
 
override bool GetIsInteractionAvailableScript ()
 Are any user actions available to interact with? Implement and return true if yes, false otherwise.
 
override bool GetCanInteractScript (IEntity controlledEntity)
 Are we allowed to start collecting and processing interactions? Implement custom logic and return true if yes, false otherwise.
 
override BaseUserAction GetSelectedActionScript ()
 Currently sected action or null if none.
 
- Protected Member Functions inherited from ExtBaseInteractionHandlerComponent
proto external void SetSelectedAction (BaseUserAction action)
 Sets currently select action.
 
void OnContextChanged (UserActionContext previousContext, UserActionContext newContext)
 Event called when InteractionHandlerComponent finds new target UserActionContext and a change occurs.
 
void OnPostFrame (IEntity owner, IEntity controlledEntity, float timeSlice)
 Called once per frame after simulation.
 
bool CanContextChange (UserActionContext currentContext, UserActionContext newContext)
 Called before a context is set to determine whether a change can occur.
 
bool DoIntersectCheck (IEntity controlledEntity)
 Should preferred context collection use intersect checks? This will make a ray check against the context's radius.
 
bool GetIsInteractionAvailableScript ()
 Are any user actions available to interact with? Implement and return true if yes, false otherwise.
 
bool GetCanInteractScript (IEntity controlledEntity)
 Are we allowed to start collecting and processing interactions? Implement custom logic and return true if yes, false otherwise.
 
BaseUserAction GetSelectedActionScript ()
 Currently sected action or null if none.
 
array< IEntity > GetManualOverrideList (IEntity owner, out vector referencePoint)
 Callback whem manual collection override is enabled.
 

Additional Inherited Members

- Public Member Functions inherited from ExtBaseInteractionHandlerComponent
proto external UserActionContext GetCurrentContext ()
 Returns currently gathered (active-preferred) context or null if none.
 
proto external IEntity GetControlledEntity ()
 Returns the controlled entity or null if none.
 
proto external int GetFilteredActions (out notnull array< BaseUserAction > outActions, out notnull array< bool > outCanBePerformed)
 After collection is done, this method can be used for retrieving already checked user actions from current context.
 
proto external bool IsContextAvailable ()
 Returns true when there is a gathered context available.
 
proto external void SetManualCollectionOverride (bool enabled)
 If set to true, we expect a list of entities to be provided from the user instead.
 
proto external bool GetManualCollectionOverride ()
 Returns whether manual collection override is set (we expect a list of entities to be provided from the user instead)
 
proto external void SetNearbyCollectionEnabled (bool enabled)
 Sets whether nearby available context collection should be enabled.
 
proto external bool GetNearbyCollectionEnabled ()
 Returns whether nearby available context collection is enabled.
 
proto external float GetNearbyCollectionRadius ()
 Returns the radius in meters that is used for nearby available context collection.
 
proto external int GetNearbyAvailableContextList (out notnull array< UserActionContext > outContexts)
 If nearby collection is enabled, fills the provided array with collected contexts nearby.
 
proto external int GetNearbyShowableContextList (out notnull array< UserActionContext > outContexts)
 If nearby collection is enabled, fills the provided array with collected contexts nearby.
 
proto external int GetNearbyUnavailableContextList (out notnull array< UserActionContext > outContexts)
 If nearby collection is enabled, fills the provided array with collected contexts nearby.
 
- Public Member Functions inherited from BaseInteractionHandlerComponent
proto external bool IsInteractionAvailable ()
 Returns true if any interaction can be done at given moment, i.e. UI should be shown.
 
proto external BaseUserAction GetSelectedAction ()
 Return currently selected user action or null if none.
 
proto external float GetVisibilityRange ()
 Returns the global actions visibility range value defined by attribute in this component.
 
void OnInit (IEntity owner)
 Called on initialization.
 
void OnFrame (IEntity owner, float timeSlice)
 Called every frame, only for local player controller.
 
void OnAfterPostSimulate (IEntity owner, float timeSlice)
 Called after post simulate, only for local player controller.
 
- Public Member Functions inherited from GameComponent
bool OnTicksOnRemoteProxy ()
 

Detailed Description

Collects interactions by performing a sphere cast initially and then a sphere query at the end.

Iterates through hit entities and tries to find closest entity with ActionsManagerComponent that has a valid context.

Member Function Documentation

◆ CanContextChange()

override bool InteractionHandlerComponent.CanContextChange ( UserActionContext  currentContext,
UserActionContext  newContext 
)
protected

Called before a context is set to determine whether a change can occur.

Implements ExtBaseInteractionHandlerComponent.

Implemented in SCR_InteractionHandlerComponent.

◆ DoIntersectCheck()

override bool InteractionHandlerComponent.DoIntersectCheck ( IEntity  controlledEntity)
protected

Should preferred context collection use intersect checks? This will make a ray check against the context's radius.

This works well in tight places where relying on physical collisions is impossible - e.g. in vehicle interiors.

Implements ExtBaseInteractionHandlerComponent.

Implemented in SCR_InteractionHandlerComponent.

◆ GetCanInteractScript()

override bool InteractionHandlerComponent.GetCanInteractScript ( IEntity  controlledEntity)
protected

Are we allowed to start collecting and processing interactions? Implement custom logic and return true if yes, false otherwise.

Parameters
controlledEntityThe entity that wants to be able to interact (player controlled)

Implements ExtBaseInteractionHandlerComponent.

Implemented in SCR_InteractionHandlerComponent.

◆ GetIsInteractionAvailableScript()

override bool InteractionHandlerComponent.GetIsInteractionAvailableScript ( )
protected

Are any user actions available to interact with? Implement and return true if yes, false otherwise.

Implements ExtBaseInteractionHandlerComponent.

Implemented in SCR_InteractionHandlerComponent.

◆ GetSelectedActionScript()

override BaseUserAction InteractionHandlerComponent.GetSelectedActionScript ( )
protected

Currently sected action or null if none.

Implement and return currently selected action.

Implements ExtBaseInteractionHandlerComponent.

Implemented in SCR_InteractionHandlerComponent.


The documentation for this interface was generated from the following file: