Arma Reforger Script API
|
Public Member Functions | |
void | GetGroupFlags (notnull array< ResourceName > targetArray) |
ScriptInvoker | GetOnPlayableGroupCreated () |
int | MovePlayerToGroup (int playerID, int previousGroupID, int newGroupID) |
void | ClearRequests (int groupID, int playerID) |
int | AddPlayerToGroup (int groupID, int playerID) |
void | CreatePredefinedGroups () |
void | SetGroupLeader (int groupID, int playerID) |
void | SetNewGroupsAllowed (bool isAllowed) |
called on server only | |
void | RPC_DoSetNewGroupsAllowed (bool isAllowed) |
void | SetCanPlayersChangeAttributes (bool isAllowed) |
called on server only | |
void | RPC_SetCanPlayersChangeAttributes (bool isAllowed) |
void | SetPrivateGroup (int groupID, bool isPrivate) |
SCR_AIGroup | FindGroup (int groupID) |
ScriptInvoker | GetOnPlayableGroupRemoved () |
ScriptInvoker | GetOnNewGroupsAllowedChanged () |
ScriptInvoker | GetOnCanPlayersChangeAttributeChanged () |
SCR_AIGroup | GetPlayerGroup (int playerID) |
bool | IsPlayerInAnyGroup (int playerID) |
array< SCR_AIGroup > | GetPlayableGroupsByFaction (Faction faction) |
void | GetAllPlayableGroups (out array< SCR_AIGroup > outAllGroups) |
void | DeleteGroupDelayed (SCR_AIGroup group) |
void | OnGroupPlayerRemoved (SCR_AIGroup group, int playerID) |
void | OnGroupPlayerAdded (SCR_AIGroup group, int playerID) |
void | OnGroupAgentAdded (AIAgent child) |
void | OnGroupAgentRemoved (SCR_AIGroup group, AIAgent child) |
void | DeleteAndUnregisterGroup (notnull SCR_AIGroup group) |
void | UnregisterGroup (notnull SCR_AIGroup group) |
void | RegisterGroup (SCR_AIGroup group) |
void | RPC_DoSetGroupFaction (RplId groupID, int factionIndex) |
void | OnPlayerFactionChanged (notnull FactionAffiliationComponent owner, Faction previousFaction, Faction newFaction) |
Is called only on the server (authority) | |
void | OnGroupCreated (SCR_AIGroup group) |
Called on clients (proxies) to notice a playable group has been created. | |
SCR_AIGroup | TryFindEmptyGroup (notnull Faction faction) |
SCR_AIGroup | CreateNewPlayableGroup (Faction faction) |
SCR_AIGroup | GetFirstNotFullForFaction (notnull Faction faction, SCR_AIGroup ownGroup=null, bool respectPrivate=false) |
bool | CanCreateNewGroup (notnull Faction newGroupFaction) |
bool | CanPlayersChangeAttributes () |
int | GetFreeFrequency (Faction frequencyFaction) |
void | ClaimFrequency (int frequency, Faction faction) |
bool | IsFrequencyClaimed (int frequency, Faction faction) |
void | ReleaseFrequency (int frequency, Faction faction) |
void | RequestSetGroupSlave (RplId compID, RplId slaveID) |
void | RpcWrapper (RplId compID, RplId slaveID) |
void | RPC_DoSetGroupSlave (RplId masterGroupID, RplId slaveGroupID) |
void | RPC_DoRemoveAIMemberFromGroup (RplId groupRplCompID, RplId aiCharacterComponentID) |
void | GetAIMembers (RplId groupRplCompID, RplId aiCharacterComponentID, out array< SCR_ChimeraCharacter > members, out SCR_ChimeraCharacter AIMember) |
void | AskRemoveAiMemberFromGroup (RplId groupRplCompID, RplId aiCharacterComponentID) |
void | AskAddAiMemberToGroup (RplId groupRplCompID, RplId aiCharacterComponentID) |
void | RPC_DoAddAIMemberToGroup (RplId groupRplCompID, RplId aiCharacterComponentID) |
void | OnAIMemberRemoved (SCR_AIGroup group, AIAgent agent) |
bool | GetConfirmedByPlayer () |
bool | IsGroupMenuAllowed () |
bool | GetNewGroupsAllowed () |
void | SetConfirmedByPlayer (bool isConfirmed) |
override void | EOnFrame (IEntity owner, float timeSlice) |
void | DeleteGroups () |
void | TunePlayersFrequency (int playerId, IEntity player) |
void | OnPlayerReconnected (SCR_ReconnectData reconnectData) |
override void | OnPostInit (IEntity owner) |
override void | EOnInit (IEntity owner) |
void | SCR_GroupsManagerComponent (IEntityComponentSource src, IEntity ent, IEntity parent) |
void | ~SCR_GroupsManagerComponent () |
Public Member Functions inherited from SCR_BaseGameModeComponent | |
SCR_BaseGameMode | GetGameMode () |
void | OnGameEnd () |
Called on all machines when the world ends. | |
void | OnGameStateChanged (SCR_EGameModeState state) |
Called when game mode state changes called on all machines. | |
void | OnGameModeStart () |
Called on every machine when game mode starts. | |
void | OnGameModeEnd (SCR_GameModeEndData data) |
Called when game mode ends. | |
void | OnPlayerConnected (int playerId) |
Called after a player is connected. | |
void | OnPlayerAuditSuccess (int playerId) |
Event is called when player connecting Session hosting current Game Mode where is required authentication verification via. | |
void | OnPlayerAuditFail (int playerId) |
Event is called when player connecting Session hosting current Game Mode AuditFail() call may be called under two occasions: 1) verification is required but failed (account is not valid, player is banned, internet issues) 2) player cannot be verified as authentication is not required or possible - where it may be valid behavior (server online connectivity turned off for example) Basically non-audited player cannot access persistency/ etc. | |
void | OnPlayerAuditTimeouted (int playerId) |
Event is called when player connected to Session was kicked and did not reconnected in time This mean that slot reservation can be canceled. | |
void | OnPlayerAuditRevived (int playerId) |
Event is called when player reconnected successfully back to Session after kick This mean that slot reservation need to be finished (closed). | |
void | OnPlayerRegistered (int playerId) |
Called on every machine after a player is registered (identity, name etc.). | |
void | OnPlayerDisconnected (int playerId, KickCauseCode cause, int timeout) |
Called after a player is disconnected. | |
void | OnPlayerSpawned (int playerId, IEntity controlledEntity) |
Called after a player is spawned. | |
bool | PreparePlayerEntity_S (SCR_SpawnRequestComponent requestComponent, SCR_SpawnHandlerComponent handlerComponent, SCR_SpawnData data, IEntity entity) |
void | OnSpawnPlayerEntityFailure_S (SCR_SpawnRequestComponent requestComponent, SCR_SpawnHandlerComponent handlerComponent, IEntity entity, SCR_SpawnData data, SCR_ESpawnResult reason) |
void | OnPlayerSpawnFinalize_S (SCR_SpawnRequestComponent requestComponent, SCR_SpawnHandlerComponent handlerComponent, SCR_SpawnData data, IEntity entity) |
bool | HandlePlayerKilled (int playerId, IEntity playerEntity, IEntity killerEntity, notnull Instigator instigator) |
See SCR_BaseGameMode.HandlePlayerKilled. | |
void | OnPlayerKilled (notnull SCR_InstigatorContextData instigatorContextData) |
Called after a player gets killed. | |
void | OnPlayerKilledHandled (int playerId, IEntity playerEntity, IEntity killerEntity, notnull Instigator instigator) |
Called after player gets killed in cases where the kill was handled by the game mode, supressing the default OnPlayerKilled behaviour. | |
void | OnPlayerDeleted (int playerId, IEntity player) |
Called after a player gets deleted. | |
void | OnPlayerRoleChange (int playerId, EPlayerRole roleFlags) |
Called when player role changes. | |
void | OnWorldPostProcess (World world) |
Called once loading of all entities of the world have been finished (still within the loading) | |
void | HandleOnLoadoutAssigned (int playerID, SCR_BasePlayerLoadout assignedLoadout) |
What happens when a player is assigned a loadout. | |
void | HandleOnFactionAssigned (int playerID, Faction assignedFaction) |
What happens when a player is assigned a faction. | |
void | HandleOnSpawnPointAssigned (int playerID, SCR_SpawnPoint spawnPoint) |
What happens when a player is assigned a spawn point. | |
void | OnControllableSpawned (IEntity entity) |
When a controllable entity is spawned, this event is raised. | |
void | OnControllableDestroyed (notnull SCR_InstigatorContextData instigatorContextData) |
When a controllable entity is destroyed, this event is raised. | |
void | OnControllableDeleted (IEntity entity) |
Prior to a controllable entity being DELETED, this event is raised. | |
void | SCR_BaseGameModeComponent (IEntityComponentSource src, IEntity ent, IEntity parent) |
Static Public Member Functions | |
static SCR_GroupsManagerComponent | GetInstance () |
Protected Member Functions | |
bool | IsProxy () |
void | AssignGroupFrequency (notnull SCR_AIGroup group) |
void | AssignGroupID (SCR_AIGroup group) |
override void | OnPlayerRegistered (int playerId) |
Called on every machine after a player is registered (identity, name etc.). | |
override void | OnPlayerDisconnected (int playerId, KickCauseCode cause, int timeout) |
Called after a player is disconnected. | |
Protected Attributes | |
ResourceName | m_sDefaultGroupPrefab |
int | m_iPlayableGroupFrequencyOffset |
int | m_iPlayableGroupFrequencyMin |
int | m_iPlayableGroupFrequencyMax |
bool | m_bAllowGroupMenu |
bool | m_bConfirmedByPlayer |
bool | m_bNewGroupsAllowed = true |
bool | m_bCanPlayersChangeAttributes = true |
ref ScriptInvoker | m_OnPlayableGroupCreated = new ScriptInvoker() |
ref ScriptInvoker | m_OnPlayableGroupRemoved = new ScriptInvoker() |
ref ScriptInvoker | m_OnNewGroupsAllowedChanged = new ScriptInvoker() |
ref ScriptInvoker | m_OnCanPlayersChangeAttributeChanged = new ScriptInvoker() |
int | m_iLatestGroupID = 0 |
ref map< Faction, ref array< SCR_AIGroup > > | m_mPlayableGroups = new map<Faction, ref array<SCR_AIGroup>>() |
ref map< Faction, int > | m_mPlayableGroupFrequencies = new map<Faction, int>() |
ref map< int, ref FactionHolder > | m_mUsedFrequenciesMap = new map<int, ref FactionHolder>() |
ref array< SCR_AIGroup > | m_aDeletionQueue = {} |
int | m_iMovingPlayerToGroupID = -1 |
Protected Attributes inherited from SCR_BaseGameModeComponent | |
SCR_BaseGameMode | m_pGameMode |
The game mode entity this component is attached to. | |
Static Protected Attributes | |
static SCR_GroupsManagerComponent | s_Instance |
void SCR_GroupsManagerComponent.SCR_GroupsManagerComponent | ( | IEntityComponentSource | src, |
IEntity | ent, | ||
IEntity | parent | ||
) |
[in] | src | |
[in] | ent | |
[in] | parent |
void SCR_GroupsManagerComponent.~SCR_GroupsManagerComponent | ( | ) |
int SCR_GroupsManagerComponent.AddPlayerToGroup | ( | int | groupID, |
int | playerID | ||
) |
[in] | groupID | |
[in] | playerID |
void SCR_GroupsManagerComponent.AskAddAiMemberToGroup | ( | RplId | groupRplCompID, |
RplId | aiCharacterComponentID | ||
) |
[in] | groupRplCompID | |
[in] | aiCharacterComponentID |
void SCR_GroupsManagerComponent.AskRemoveAiMemberFromGroup | ( | RplId | groupRplCompID, |
RplId | aiCharacterComponentID | ||
) |
[in] | groupRplCompID | |
[in] | aiCharacterComponentID |
|
protected |
|
protected |
bool SCR_GroupsManagerComponent.CanCreateNewGroup | ( | notnull Faction | newGroupFaction | ) |
[in] | newGroupFaction |
bool SCR_GroupsManagerComponent.CanPlayersChangeAttributes | ( | ) |
void SCR_GroupsManagerComponent.ClaimFrequency | ( | int | frequency, |
Faction | faction | ||
) |
[in] | frequency | |
[in] | faction |
void SCR_GroupsManagerComponent.ClearRequests | ( | int | groupID, |
int | playerID | ||
) |
[in] | groupID | |
[in] | playerID |
SCR_AIGroup SCR_GroupsManagerComponent.CreateNewPlayableGroup | ( | Faction | faction | ) |
[in] | faction |
void SCR_GroupsManagerComponent.CreatePredefinedGroups | ( | ) |
void SCR_GroupsManagerComponent.DeleteAndUnregisterGroup | ( | notnull SCR_AIGroup | group | ) |
[in] | group |
void SCR_GroupsManagerComponent.DeleteGroupDelayed | ( | SCR_AIGroup | group | ) |
[in] | group |
void SCR_GroupsManagerComponent.DeleteGroups | ( | ) |
override void SCR_GroupsManagerComponent.EOnFrame | ( | IEntity | owner, |
float | timeSlice | ||
) |
override void SCR_GroupsManagerComponent.EOnInit | ( | IEntity | owner | ) |
SCR_AIGroup SCR_GroupsManagerComponent.FindGroup | ( | int | groupID | ) |
[in] | groupID |
void SCR_GroupsManagerComponent.GetAIMembers | ( | RplId | groupRplCompID, |
RplId | aiCharacterComponentID, | ||
out array< SCR_ChimeraCharacter > | members, | ||
out SCR_ChimeraCharacter | AIMember | ||
) |
[in] | groupRplCompID | |
[in] | aiCharacterComponentID | |
[out] | members | |
[out] | AIMember |
void SCR_GroupsManagerComponent.GetAllPlayableGroups | ( | out array< SCR_AIGroup > | outAllGroups | ) |
[out] | outAllGroups |
bool SCR_GroupsManagerComponent.GetConfirmedByPlayer | ( | ) |
SCR_AIGroup SCR_GroupsManagerComponent.GetFirstNotFullForFaction | ( | notnull Faction | faction, |
SCR_AIGroup | ownGroup = null , |
||
bool | respectPrivate = false |
||
) |
[in] | faction | |
[in] | ownGroup | |
[in] | respectPrivate |
int SCR_GroupsManagerComponent.GetFreeFrequency | ( | Faction | frequencyFaction | ) |
[in] | frequencyFaction |
void SCR_GroupsManagerComponent.GetGroupFlags | ( | notnull array< ResourceName > | targetArray | ) |
[in] | targetArray |
|
static |
bool SCR_GroupsManagerComponent.GetNewGroupsAllowed | ( | ) |
ScriptInvoker SCR_GroupsManagerComponent.GetOnCanPlayersChangeAttributeChanged | ( | ) |
ScriptInvoker SCR_GroupsManagerComponent.GetOnNewGroupsAllowedChanged | ( | ) |
ScriptInvoker SCR_GroupsManagerComponent.GetOnPlayableGroupCreated | ( | ) |
ScriptInvoker SCR_GroupsManagerComponent.GetOnPlayableGroupRemoved | ( | ) |
array< SCR_AIGroup > SCR_GroupsManagerComponent.GetPlayableGroupsByFaction | ( | Faction | faction | ) |
[in] | faction |
SCR_AIGroup SCR_GroupsManagerComponent.GetPlayerGroup | ( | int | playerID | ) |
[in] | playerID |
bool SCR_GroupsManagerComponent.IsFrequencyClaimed | ( | int | frequency, |
Faction | faction | ||
) |
[in] | frequency | |
[in] | faction |
bool SCR_GroupsManagerComponent.IsGroupMenuAllowed | ( | ) |
bool SCR_GroupsManagerComponent.IsPlayerInAnyGroup | ( | int | playerID | ) |
[in] | playerID |
|
protected |
int SCR_GroupsManagerComponent.MovePlayerToGroup | ( | int | playerID, |
int | previousGroupID, | ||
int | newGroupID | ||
) |
[in] | playerID | |
[in] | previousGroupID | |
[in] | newGroupID |
void SCR_GroupsManagerComponent.OnAIMemberRemoved | ( | SCR_AIGroup | group, |
AIAgent | agent | ||
) |
[in] | group | |
[in] | agent |
void SCR_GroupsManagerComponent.OnGroupAgentAdded | ( | AIAgent | child | ) |
[in] | child |
void SCR_GroupsManagerComponent.OnGroupAgentRemoved | ( | SCR_AIGroup | group, |
AIAgent | child | ||
) |
[in] | group | |
[in] | child |
void SCR_GroupsManagerComponent.OnGroupCreated | ( | SCR_AIGroup | group | ) |
Called on clients (proxies) to notice a playable group has been created.
void SCR_GroupsManagerComponent.OnGroupPlayerAdded | ( | SCR_AIGroup | group, |
int | playerID | ||
) |
[in] | group | |
[in] | playerID |
void SCR_GroupsManagerComponent.OnGroupPlayerRemoved | ( | SCR_AIGroup | group, |
int | playerID | ||
) |
[in] | group | |
[in] | playerID |
|
protected |
Called after a player is disconnected.
[in] | playerId | PlayerId of disconnected player. |
[in] | cause | Reason player disconnected |
[in] | timeout | Timeout for when players are allowed to connect again. -1 means Ban without an assigned timeout |
Implements SCR_BaseGameModeComponent.
void SCR_GroupsManagerComponent.OnPlayerFactionChanged | ( | notnull FactionAffiliationComponent | owner, |
Faction | previousFaction, | ||
Faction | newFaction | ||
) |
Is called only on the server (authority)
void SCR_GroupsManagerComponent.OnPlayerReconnected | ( | SCR_ReconnectData | reconnectData | ) |
[in] | reconnectData |
|
protected |
Called on every machine after a player is registered (identity, name etc.).
Always called after OnPlayerConnected.
[in] | playerId | PlayerId of registered player. |
Implements SCR_BaseGameModeComponent.
override void SCR_GroupsManagerComponent.OnPostInit | ( | IEntity | owner | ) |
void SCR_GroupsManagerComponent.RegisterGroup | ( | SCR_AIGroup | group | ) |
[in] | group |
void SCR_GroupsManagerComponent.ReleaseFrequency | ( | int | frequency, |
Faction | faction | ||
) |
[in] | frequency | |
[in] | faction |
void SCR_GroupsManagerComponent.RequestSetGroupSlave | ( | RplId | compID, |
RplId | slaveID | ||
) |
[in] | compID | |
[in] | slaveID |
void SCR_GroupsManagerComponent.RPC_DoAddAIMemberToGroup | ( | RplId | groupRplCompID, |
RplId | aiCharacterComponentID | ||
) |
[in] | groupRplCompID | |
[in] | aiCharacterComponentID |
void SCR_GroupsManagerComponent.RPC_DoRemoveAIMemberFromGroup | ( | RplId | groupRplCompID, |
RplId | aiCharacterComponentID | ||
) |
[in] | groupRplCompID | |
[in] | aiCharacterComponentID |
void SCR_GroupsManagerComponent.RPC_DoSetGroupFaction | ( | RplId | groupID, |
int | factionIndex | ||
) |
[in] | groupID | |
[in] | factionIndex |
void SCR_GroupsManagerComponent.RPC_DoSetGroupSlave | ( | RplId | masterGroupID, |
RplId | slaveGroupID | ||
) |
[in] | masterGroupID | |
[in] | slaveGroupID |
void SCR_GroupsManagerComponent.RPC_DoSetNewGroupsAllowed | ( | bool | isAllowed | ) |
[in] | isAllowed |
void SCR_GroupsManagerComponent.RPC_SetCanPlayersChangeAttributes | ( | bool | isAllowed | ) |
[in] | isAllowed |
void SCR_GroupsManagerComponent.RpcWrapper | ( | RplId | compID, |
RplId | slaveID | ||
) |
[in] | compID | |
[in] | slaveID |
void SCR_GroupsManagerComponent.SetCanPlayersChangeAttributes | ( | bool | isAllowed | ) |
called on server only
void SCR_GroupsManagerComponent.SetConfirmedByPlayer | ( | bool | isConfirmed | ) |
[in] | isConfirmed |
void SCR_GroupsManagerComponent.SetGroupLeader | ( | int | groupID, |
int | playerID | ||
) |
[in] | groupID | |
[in] | playerID |
void SCR_GroupsManagerComponent.SetNewGroupsAllowed | ( | bool | isAllowed | ) |
called on server only
void SCR_GroupsManagerComponent.SetPrivateGroup | ( | int | groupID, |
bool | isPrivate | ||
) |
[in] | groupID | |
[in] | isPrivate |
SCR_AIGroup SCR_GroupsManagerComponent.TryFindEmptyGroup | ( | notnull Faction | faction | ) |
[in] | faction |
void SCR_GroupsManagerComponent.TunePlayersFrequency | ( | int | playerId, |
IEntity | player | ||
) |
[in] | playerId | |
[in] | player |
void SCR_GroupsManagerComponent.UnregisterGroup | ( | notnull SCR_AIGroup | group | ) |
[in] | group |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |