Arma Reforger Script API
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Protected Member Functions | List of all members
SCR_AICoverLock Interface Reference

Holds data about a cover point. More...

Public Member Functions

vector GetPosition ()
 
bool IsValid ()
 Returns true if cover position is not zero.
 
void Release ()
 Unlocks the cover and invalidates it.
 
void SCR_AICoverLock (int tilex, int tiley, int coverId, vector coverPos, vector coverTallestPos)
 
void ~SCR_AICoverLock ()
 
float CosAngleToThreat (vector threatPos)
 Calculates cos of angle between cover direction and threat direction, in XZ plane.
 

Public Attributes

vector m_vCoverPos
 
vector m_vCoverTallestPos
 
vector m_vCoverDirXZ
 
int m_iTileX
 
int m_iTileY
 
int m_iCoverId
 

Static Protected Member Functions

static ChimeraCoverManagerComponent GetCoverManager ()
 

Detailed Description

Holds data about a cover point.

Performs automatic release of cover point upon its destruction.

Work flow when searching for covers:

  1. Find cover with SCR_AIFindCover node.
  2. The node assigns the found cover to CombatMoveState.
  3. SCR_AICoverLock automatically locks the cover through CoverManager.
  4. Move the AI to cover, and once he arrives, set m_bInCover=true in CombatMoveState.
  5. As long as m_bInCover is true, CombatMoveState.VerifyCurrentCover() will be actively validating that AI is still at that cover. The cover will be released when the AI is physically no longer there. Alternatively, SCR_AICoverLock will release the cover once it is destroyed.

Constructor & Destructor Documentation

◆ SCR_AICoverLock()

void SCR_AICoverLock.SCR_AICoverLock ( int  tilex,
int  tiley,
int  coverId,
vector  coverPos,
vector  coverTallestPos 
)

◆ ~SCR_AICoverLock()

void SCR_AICoverLock.~SCR_AICoverLock ( )

Member Function Documentation

◆ CosAngleToThreat()

float SCR_AICoverLock.CosAngleToThreat ( vector  threatPos)

Calculates cos of angle between cover direction and threat direction, in XZ plane.

◆ GetCoverManager()

static ChimeraCoverManagerComponent SCR_AICoverLock.GetCoverManager ( )
staticprotected

◆ GetPosition()

vector SCR_AICoverLock.GetPosition ( )

◆ IsValid()

bool SCR_AICoverLock.IsValid ( )

Returns true if cover position is not zero.

◆ Release()

void SCR_AICoverLock.Release ( )

Unlocks the cover and invalidates it.

Member Data Documentation

◆ m_iCoverId

int SCR_AICoverLock.m_iCoverId

◆ m_iTileX

int SCR_AICoverLock.m_iTileX

◆ m_iTileY

int SCR_AICoverLock.m_iTileY

◆ m_vCoverDirXZ

vector SCR_AICoverLock.m_vCoverDirXZ

◆ m_vCoverPos

vector SCR_AICoverLock.m_vCoverPos

◆ m_vCoverTallestPos

vector SCR_AICoverLock.m_vCoverTallestPos

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