Arma Reforger Script API
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
SCR_ScenarioFrameworkLayerStruct Interface Reference
Inheritance diagram for SCR_ScenarioFrameworkLayerStruct:
[legend]

Public Member Functions

void StoreLayerState (notnull SCR_ScenarioFrameworkLayerBase layer)
 Stores layer state data into structs, cleans empty structs, and inserts non-empty ones into list.
 
void StoreActivationTypeStatus (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Updates layer's activation type in scenario structure if it differs from default, otherwise removes it from structure.
 
void StoreTerminationStatus (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Updates termination status in scenario layer structure based on current termination status in scenario layer.
 
void StoreRepeatedSpawn (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Updates scenario layer's repeated spawn settings from layer struct.
 
void StoreLayerTask (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Updates layer task state in scenario layer structure if it exists, otherwise removes it.
 
void StoreChildren (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Stores children layers, handles random spawning, and updates layer states in scenario framework layer structure.
 
void StoreLogic (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Stores logic states for scenario framework layer.
 
void StoreSlotAndRandomObject (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Stores AI prefab removal list and random object from scenario layer to scenario layer struct.
 
void CleanEmptyStoredLayers (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Removes empty layer structs from scenario layer.
 
void CleanEmptyStoredLogic (notnull SCR_ScenarioFrameworkLayerBase layer, notnull SCR_ScenarioFrameworkLayerStruct layerStruct)
 Clears empty logic structs from scenario layer.
 
void CleanEmptyStructs ()
 Clears empty layer and logic structs in the object.
 
void StoreLogicState (notnull SCR_ScenarioFrameworkLogic logic)
 Stores scenario logic state, handles counter and struct variables, and adds to list if struct count is more than 1.
 
void StoreLogicCounterValue (notnull SCR_ScenarioFrameworkLogicCounter logicCounter, notnull SCR_ScenarioFrameworkLogicStruct logicStruct)
 Updates logic struct with counter value if non-zero, otherwise unregisters it.
 
void StoreLogicCounterTermination (notnull SCR_ScenarioFrameworkLogicCounter logicCounter, notnull SCR_ScenarioFrameworkLogicStruct logicStruct)
 Checks if counter is terminated, increments struct var count if terminated, sets termination flag in struct if not.
 
void ClearEmptyLayerStructs (notnull array< ref SCR_ScenarioFrameworkLayerStruct > layerStructsToClear)
 Removes empty layer structs from an array by recursively checking their contents.
 
void ClearEmptyLogicStructs (notnull array< ref SCR_ScenarioFrameworkLogicStruct > logicStructsToClear)
 Clears empty logic structs from an array by copying them into another array, then removing those with less than 2.
 
void IncreaseStructVarCount ()
 Increases struct variable count by 1.
 
void DecreaseStructVarCount ()
 Decreases struct variable count by 1.
 
array< ref SCR_ScenarioFrameworkLayerStructGetLayerStructs ()
 
array< ref SCR_ScenarioFrameworkLogicStructGetLogicStructs ()
 
array< string > GetRandomlySpawnedChildren ()
 
int GetStructVarCount ()
 
SCR_ScenarioFrameworkEActivationType GetActivationType ()
 
bool GetIsTerminated ()
 
ref array< ResourceName > GetAIPrefabsForRemoval ()
 
string GetName ()
 
int GetLayerTaskState ()
 
ResourceName GetRandomlySpawnedObject ()
 
int GetRepeatedSpawnNumber ()
 
bool GetEnableRepeatedSpawn ()
 
void InsertRandomlySpawnedChildren (string child)
 Adds child to randomly spawned children list.
 
void SetActivationType (SCR_ScenarioFrameworkEActivationType type)
 
void SetIsTerminated (bool state)
 
void SetName (string name)
 
void SetLayerTaskState (int state)
 
void SetAIPrefabsForRemoval (array< ResourceName > arrayForRemoval)
 
void SetRandomlySpawnedObject (ResourceName name)
 
void SetRepeatedSpawnNumber (int number)
 
void SetEnableRepeatedSpawn (bool value)
 
void SCR_ScenarioFrameworkLayerStruct ()
 Registers variables for scenario framework layer structure.
 
- Public Member Functions inherited from SCR_JsonApiStruct
bool Serialize ()
 Write world data into the struct.
 
bool Deserialize ()
 Read data from the struct and apply them in the world.
 
void ClearCache ()
 Clear struct's data.
 
void Log ()
 Log struct's data.
 

Protected Attributes

string m_sName
 
ResourceName m_sRandomlySpawnedObject
 
ref array< ref SCR_ScenarioFrameworkLayerStructm_aLayersStructs = {}
 
ref array< ref SCR_ScenarioFrameworkLogicStructm_aLogicStructs = {}
 
ref array< SCR_ScenarioFrameworkLayerBasem_aChildren = {}
 
ref array< SCR_ScenarioFrameworkLogicm_aLogic = {}
 
ref array< ResourceName > m_aAIPrefabsForRemoval = {}
 
ref array< string > m_aRandomlySpawnedChildren = {}
 
int m_iLayerTaskState
 
SCR_ScenarioFrameworkEActivationType m_eActivationType = -1
 
bool m_bIsTerminated
 
int m_iRepeatedSpawnNumber
 
bool m_bEnableRepeatedSpawn
 
int m_iStructVarCount
 

Constructor & Destructor Documentation

◆ SCR_ScenarioFrameworkLayerStruct()

void SCR_ScenarioFrameworkLayerStruct.SCR_ScenarioFrameworkLayerStruct ( )

Registers variables for scenario framework layer structure.

Member Function Documentation

◆ CleanEmptyStoredLayers()

void SCR_ScenarioFrameworkLayerStruct.CleanEmptyStoredLayers ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Removes empty layer structs from scenario layer.

Parameters
[in]layerRemoves empty layer structs from scenario framework layer.
[in]layerStructRepresents a container for storing layers in scenario framework.

◆ CleanEmptyStoredLogic()

void SCR_ScenarioFrameworkLayerStruct.CleanEmptyStoredLogic ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Clears empty logic structs from scenario layer.

Parameters
[in]layerClears empty logic structs from scenario layer.
[in]layerStructRepresents scenario framework layer structure with logic structs.

◆ CleanEmptyStructs()

void SCR_ScenarioFrameworkLayerStruct.CleanEmptyStructs ( )

Clears empty layer and logic structs in the object.

◆ ClearEmptyLayerStructs()

void SCR_ScenarioFrameworkLayerStruct.ClearEmptyLayerStructs ( notnull array< ref SCR_ScenarioFrameworkLayerStruct layerStructsToClear)

Removes empty layer structs from an array by recursively checking their contents.

Parameters
[in]layerStructsToClearArray of layer structs to clear empty structures from.

◆ ClearEmptyLogicStructs()

void SCR_ScenarioFrameworkLayerStruct.ClearEmptyLogicStructs ( notnull array< ref SCR_ScenarioFrameworkLogicStruct logicStructsToClear)

Clears empty logic structs from an array by copying them into another array, then removing those with less than 2.

Parameters
[in]logicStructsToClearArray of scenario framework logic structures to clear empty ones from.

◆ DecreaseStructVarCount()

void SCR_ScenarioFrameworkLayerStruct.DecreaseStructVarCount ( )

Decreases struct variable count by 1.

◆ GetActivationType()

SCR_ScenarioFrameworkEActivationType SCR_ScenarioFrameworkLayerStruct.GetActivationType ( )
Returns
Represents the activation type for the scenario event action.

◆ GetAIPrefabsForRemoval()

ref array< ResourceName > SCR_ScenarioFrameworkLayerStruct.GetAIPrefabsForRemoval ( )
Returns
Array of AI prefab resources marked for removal.

◆ GetEnableRepeatedSpawn()

bool SCR_ScenarioFrameworkLayerStruct.GetEnableRepeatedSpawn ( )
Returns
Represents whether repeated spawning is enabled or not.

◆ GetIsTerminated()

bool SCR_ScenarioFrameworkLayerStruct.GetIsTerminated ( )
Returns
whether the object is terminated or not.

◆ GetLayerStructs()

array< ref SCR_ScenarioFrameworkLayerStruct > SCR_ScenarioFrameworkLayerStruct.GetLayerStructs ( )
Returns
Array of layer structure references.

◆ GetLayerTaskState()

int SCR_ScenarioFrameworkLayerStruct.GetLayerTaskState ( )
Returns
Represents current layer task state.

◆ GetLogicStructs()

array< ref SCR_ScenarioFrameworkLogicStruct > SCR_ScenarioFrameworkLayerStruct.GetLogicStructs ( )
Returns
Array of logic structs for scenario framework logic.

◆ GetName()

string SCR_ScenarioFrameworkLayerStruct.GetName ( )
Returns
the name stored in the variable m_sName.

◆ GetRandomlySpawnedChildren()

array< string > SCR_ScenarioFrameworkLayerStruct.GetRandomlySpawnedChildren ( )
Returns
Randomly spawned children array.

◆ GetRandomlySpawnedObject()

ResourceName SCR_ScenarioFrameworkLayerStruct.GetRandomlySpawnedObject ( )
Returns
Randomly spawned object ResourceName.

◆ GetRepeatedSpawnNumber()

int SCR_ScenarioFrameworkLayerStruct.GetRepeatedSpawnNumber ( )
Returns
Repetition count for spawning an object.

◆ GetStructVarCount()

int SCR_ScenarioFrameworkLayerStruct.GetStructVarCount ( )
Returns
The number of structure variables in the class.

◆ IncreaseStructVarCount()

void SCR_ScenarioFrameworkLayerStruct.IncreaseStructVarCount ( )

Increases struct variable count by 1.

◆ InsertRandomlySpawnedChildren()

void SCR_ScenarioFrameworkLayerStruct.InsertRandomlySpawnedChildren ( string  child)

Adds child to randomly spawned children list.

Parameters
[in]childRandomly spawned child entity added to list.

◆ SetActivationType()

void SCR_ScenarioFrameworkLayerStruct.SetActivationType ( SCR_ScenarioFrameworkEActivationType  type)
Parameters
[in]typeSets the activation type for the scenario event action.

◆ SetAIPrefabsForRemoval()

void SCR_ScenarioFrameworkLayerStruct.SetAIPrefabsForRemoval ( array< ResourceName >  arrayForRemoval)
Parameters
[in]arrayForRemovalArray of resource names for AI prefab removal.

◆ SetEnableRepeatedSpawn()

void SCR_ScenarioFrameworkLayerStruct.SetEnableRepeatedSpawn ( bool  value)
Parameters
[in]valueEnables or disables repeated spawning of units in the mission.

◆ SetIsTerminated()

void SCR_ScenarioFrameworkLayerStruct.SetIsTerminated ( bool  state)
Parameters
[in]stateindicating termination status.

◆ SetLayerTaskState()

void SCR_ScenarioFrameworkLayerStruct.SetLayerTaskState ( int  state)
Parameters
[in]stateSets layer task state, controls layer visibility and functionality.

◆ SetName()

void SCR_ScenarioFrameworkLayerStruct.SetName ( string  name)
Parameters
[in]nameSets layer name.

◆ SetRandomlySpawnedObject()

void SCR_ScenarioFrameworkLayerStruct.SetRandomlySpawnedObject ( ResourceName  name)
Parameters
[in]nameRepresents an object to spawn randomly in the world.

◆ SetRepeatedSpawnNumber()

void SCR_ScenarioFrameworkLayerStruct.SetRepeatedSpawnNumber ( int  number)
Parameters
[in]numberRepresents the number of repeated spawns for an entity in the game.

◆ StoreActivationTypeStatus()

void SCR_ScenarioFrameworkLayerStruct.StoreActivationTypeStatus ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Updates layer's activation type in scenario structure if it differs from default, otherwise removes it from structure.

Parameters
[in]layerRepresents scenario layer's activation type status in the scenario framework.
[in]layerStructRepresents the scenario framework layer structure where activation type changes are stored.

◆ StoreChildren()

void SCR_ScenarioFrameworkLayerStruct.StoreChildren ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Stores children layers, handles random spawning, and updates layer states in scenario framework layer structure.

Parameters
[in]layerStores children layers and their states, updates struct variables count based on conditions.
[in]layerStructStores layer's children and their states, updates struct variables count based on conditions.

◆ StoreLayerState()

void SCR_ScenarioFrameworkLayerStruct.StoreLayerState ( notnull SCR_ScenarioFrameworkLayerBase  layer)

Stores layer state data into structs, cleans empty structs, and inserts non-empty ones into list.

Parameters
[in]layerStores layer state data for further processing in the scenario framework.

◆ StoreLayerTask()

void SCR_ScenarioFrameworkLayerStruct.StoreLayerTask ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Updates layer task state in scenario layer structure if it exists, otherwise removes it.

Parameters
[in]layerUpdates layer state in scenario framework layer structure.
[in]layerStructRepresents layer's state data structure in scenario framework.

◆ StoreLogic()

void SCR_ScenarioFrameworkLayerStruct.StoreLogic ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Stores logic states for scenario framework layer.

Parameters
[in]layerStores logic data for scenario layer.
[in]layerStructStores logic state for scenario framework layer structures.

◆ StoreLogicCounterTermination()

void SCR_ScenarioFrameworkLayerStruct.StoreLogicCounterTermination ( notnull SCR_ScenarioFrameworkLogicCounter  logicCounter,
notnull SCR_ScenarioFrameworkLogicStruct  logicStruct 
)

Checks if counter is terminated, increments struct var count if terminated, sets termination flag in struct if not.

Parameters
[in]logicCounterrepresents a scenario counter with termination status, used for incrementing struct's termination count if it's terminated
[in]logicStructRepresents scenario framework logic structure, tracks termination state.

◆ StoreLogicCounterValue()

void SCR_ScenarioFrameworkLayerStruct.StoreLogicCounterValue ( notnull SCR_ScenarioFrameworkLogicCounter  logicCounter,
notnull SCR_ScenarioFrameworkLogicStruct  logicStruct 
)

Updates logic struct with counter value if non-zero, otherwise unregisters it.

Parameters
[in]logicCounterRepresents a counter value in the scenario logic.
[in]logicStructRepresents a struct containing variables and counter value for scenario logic.

◆ StoreLogicState()

void SCR_ScenarioFrameworkLayerStruct.StoreLogicState ( notnull SCR_ScenarioFrameworkLogic  logic)

Stores scenario logic state, handles counter and struct variables, and adds to list if struct count is more than 1.

Parameters
[in]logicStores scenario framework logic state, handles counter values, names, and adds to list if multiple variables exist.

◆ StoreRepeatedSpawn()

void SCR_ScenarioFrameworkLayerStruct.StoreRepeatedSpawn ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Updates scenario layer's repeated spawn settings from layer struct.

Parameters
[in]layerStores repeated spawn settings from layer to layer struct.
[in]layerStructRepresents scenario layer structure with repeated spawn settings.

◆ StoreSlotAndRandomObject()

void SCR_ScenarioFrameworkLayerStruct.StoreSlotAndRandomObject ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Stores AI prefab removal list and random object from scenario layer to scenario layer struct.

Parameters
[in]layerStores AI prefab removal list and random object for scenario layer.
[in]layerStructStores AI prefab removal list and random object for scenario layer.

◆ StoreTerminationStatus()

void SCR_ScenarioFrameworkLayerStruct.StoreTerminationStatus ( notnull SCR_ScenarioFrameworkLayerBase  layer,
notnull SCR_ScenarioFrameworkLayerStruct  layerStruct 
)

Updates termination status in scenario layer structure based on current termination status in scenario layer.

Parameters
[in]layerRepresents scenario layer's termination status in the method, updates termination flag in layer struct.
[in]layerStructRepresents scenario termination status data structure.

Member Data Documentation

◆ m_aAIPrefabsForRemoval

ref array<ResourceName> SCR_ScenarioFrameworkLayerStruct.m_aAIPrefabsForRemoval = {}
protected

◆ m_aChildren

ref array<SCR_ScenarioFrameworkLayerBase> SCR_ScenarioFrameworkLayerStruct.m_aChildren = {}
protected

◆ m_aLayersStructs

ref array<ref SCR_ScenarioFrameworkLayerStruct> SCR_ScenarioFrameworkLayerStruct.m_aLayersStructs = {}
protected

◆ m_aLogic

ref array<SCR_ScenarioFrameworkLogic> SCR_ScenarioFrameworkLayerStruct.m_aLogic = {}
protected

◆ m_aLogicStructs

ref array<ref SCR_ScenarioFrameworkLogicStruct> SCR_ScenarioFrameworkLayerStruct.m_aLogicStructs = {}
protected

◆ m_aRandomlySpawnedChildren

ref array<string> SCR_ScenarioFrameworkLayerStruct.m_aRandomlySpawnedChildren = {}
protected

◆ m_bEnableRepeatedSpawn

bool SCR_ScenarioFrameworkLayerStruct.m_bEnableRepeatedSpawn
protected

◆ m_bIsTerminated

bool SCR_ScenarioFrameworkLayerStruct.m_bIsTerminated
protected

◆ m_eActivationType

SCR_ScenarioFrameworkEActivationType SCR_ScenarioFrameworkLayerStruct.m_eActivationType = -1
protected

◆ m_iLayerTaskState

int SCR_ScenarioFrameworkLayerStruct.m_iLayerTaskState
protected

◆ m_iRepeatedSpawnNumber

int SCR_ScenarioFrameworkLayerStruct.m_iRepeatedSpawnNumber
protected

◆ m_iStructVarCount

int SCR_ScenarioFrameworkLayerStruct.m_iStructVarCount
protected

◆ m_sName

string SCR_ScenarioFrameworkLayerStruct.m_sName
protected

◆ m_sRandomlySpawnedObject

ResourceName SCR_ScenarioFrameworkLayerStruct.m_sRandomlySpawnedObject
protected

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