Arma Reforger Script API
Loading...
Searching...
No Matches
SCR_XPHandlerComponent Interface Reference
Inheritance diagram for SCR_XPHandlerComponent:
SCR_BaseGameModeComponent

Public Member Functions

int GetMedicalAssistanceRewardCooldown ()
 
int GetSurvivalRewardCooldown ()
 
int GetSurvivalScaleMaxCycleAmount ()
 
int GetSeizeBaseProgressionRewardTimer ()
 
int GetSeizeBaseProgressionXP (string baseFactionKey)
 
override void OnPlayerSpawnFinalize_S (SCR_SpawnRequestComponent requestComponent, SCR_SpawnHandlerComponent handlerComponent, SCR_SpawnData data, IEntity entity)
 
override void OnPlayerDisconnected (int playerId, KickCauseCode cause, int timeout)
 Called after a player is disconnected.
 
override void OnPlayerKilled (notnull SCR_InstigatorContextData instigatorContextData)
 Called after a player gets killed.
 
override void OnControllableDestroyed (notnull SCR_InstigatorContextData instigatorContextData)
 When a controllable entity is destroyed, this event is raised.
 
void OnBaseSeized (SCR_CampaignMilitaryBaseComponent baseComponent)
 
void OnBaseAttackStarted (notnull SCR_CampaignMilitaryBaseComponent base, Faction defendingFaction, Faction attackingFaction)
 
void OnBaseAttackEnded (notnull SCR_CampaignMilitaryBaseComponent base)
 
void EvaluateAllAttackedBasesAttackers ()
 
void EvaluateBaseAttackers (SCR_CampaignMilitaryBaseComponent base)
 
void ProcessSuicide (int playerId)
 
void AwardXP (int playerId, SCR_EXPRewards rewardID, float multiplier=1.0, bool volunteer=false, int customXP=0)
 Add XP to given playerId.
 
void AwardXP (notnull PlayerController controller, SCR_EXPRewards rewardID, float multiplier=1.0, bool volunteer=false, int customXP=0)
 Add XP to given controller.
 
void VeterancyAward (notnull PlayerController controller, float multiplier)
 
SCR_XPRewardInfo GetXpRewardInfo (SCR_EXPRewards reward)
 
int GetXPRewardAmount (SCR_EXPRewards reward)
 Returns XP reward amount.
 
float GetXPMultiplier ()
 Returns XP reward amount.
 
string GetXPRewardName (SCR_EXPRewards reward)
 Returns XP reward name.
 
bool AllowNotification (SCR_EXPRewards reward)
 
override void OnPostInit (IEntity owner)
 
void ~SCR_XPHandlerComponent ()
 
- 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.).
 
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)
 
bool HandlePlayerKilled (int playerId, IEntity playerEntity, IEntity killerEntity, notnull Instigator instigator)
 See SCR_BaseGameMode.HandlePlayerKilled.
 
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 OnControllableSpawned (IEntity entity)
 When a controllable entity is spawned, 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 bool IsXpSystemEnabled ()
 Returns true when Xp handling system is operational.
 

Protected Member Functions

void OnVehicleDestroyed (notnull SCR_InstigatorContextData instigatorContextData)
 
void OnCharacterKilled (notnull SCR_InstigatorContextData instigatorContextData)
 
void OnCompartmentLeft (IEntity targetEntity, BaseCompartmentManagerComponent manager, int mgrID, int slotID, bool move)
 
void OnStatPointsAdded (int playerId, SCR_EDataStats stat, float amount, bool temp)
 
void OnDrivingStatPointsAdded (int playerId, float amount)
 
void OnHealingStatPointsAdded (int playerId)
 
bool IsHealingFriendlyStatPoint (SCR_EDataStats stat)
 Returns true if stat corresponds to healing of friendly characters by any medical item.
 
void OnSupportStationExecuted (SCR_BaseSupportStationComponent supportStation, ESupportStationType supportStationType, IEntity actionTarget, IEntity actionUser, SCR_BaseUseSupportStationAction action)
 Support station was executed.
 
void OnVehicleRepaired (SCR_BaseSupportStationComponent supportStation, ESupportStationType supportStationType, IEntity actionTarget, IEntity actionUser, SCR_BaseUseSupportStationAction action)
 Award XP when repair action is finished.
 
void OnCharacterHealed (SCR_BaseSupportStationComponent supportStation, ESupportStationType supportStationType, IEntity actionTarget, IEntity actionUser, SCR_BaseUseSupportStationAction action)
 Award XP when heal action is finished.
 
void AwardTransportXP (int playerId)
 
bool IsProxy ()
 
override void EOnFrame (IEntity owner, float timeSlice)
 Returns XP reward skill.
 

Protected Attributes

int m_iVeterancyXPAwardThreshold
 
int m_iSuicidePenaltyCooldown
 
int m_iMedicalAssistanceRewardCooldown
 
float m_fEnemyVehicleDestroyXPMultiplier
 
int m_iSurvivalRewardCooldown
 
int m_iSurvivalScaleMaxCycleAmount
 
float m_fVehicleRepairXPMultiplier
 
ref SCR_SeizeXpRewardConfig m_mSeizeXPRewardConfig
 
ref array< ref SCR_XPRewardInfom_aXPRewardList = {}
 
ref map< int, float > m_mPlayerTransportPoints = new map<int, float>()
 
ref array< SCR_CampaignMilitaryBaseComponentm_aBasesBeingSeized = {}
 
float m_fBaseSeizingCheckTimer
 
float m_fXpMultiplier = 1
 
- Protected Attributes inherited from SCR_BaseGameModeComponent
SCR_BaseGameMode m_pGameMode
 The game mode entity this component is attached to.
 

Static Protected Attributes

static bool s_bXpSystemEnabled
 
static const float TRANSPORT_POINTS_TO_XP_RATIO = 0.01
 
static const float TRANSPORT_HELI_MULTIPLIER = 0.25
 
static const int TRANSPORT_XP_PAYOFF_THRESHOLD = 15
 
const int BASE_SEIZING_CHECK_INTERVAL = 5
 
const int RELAY_SEIZING_RADIUS = 50
 

Constructor & Destructor Documentation

◆ ~SCR_XPHandlerComponent()

void SCR_XPHandlerComponent.~SCR_XPHandlerComponent ( )

Member Function Documentation

◆ AllowNotification()

bool SCR_XPHandlerComponent.AllowNotification ( SCR_EXPRewards reward)
Parameters
[in]reward
Returns

◆ AwardTransportXP()

void SCR_XPHandlerComponent.AwardTransportXP ( int playerId)
protected

◆ AwardXP() [1/2]

void SCR_XPHandlerComponent.AwardXP ( int playerId,
SCR_EXPRewards rewardID,
float multiplier = 1::0,
bool volunteer = false,
int customXP = 0 )

Add XP to given playerId.

Parameters
[in]playerId
[in]rewardID
[in]multiplier
[in]volunteer
[in]customXP

◆ AwardXP() [2/2]

void SCR_XPHandlerComponent.AwardXP ( notnull PlayerController controller,
SCR_EXPRewards rewardID,
float multiplier = 1::0,
bool volunteer = false,
int customXP = 0 )

Add XP to given controller.

Parameters
[in]controller
[in]rewardID
[in]multiplier
[in]volunteer
[in]customXP

◆ EOnFrame()

override void SCR_XPHandlerComponent.EOnFrame ( IEntity owner,
float timeSlice )
protected

Returns XP reward skill.

Parameters
[in]reward
Returns

◆ EvaluateAllAttackedBasesAttackers()

void SCR_XPHandlerComponent.EvaluateAllAttackedBasesAttackers ( )

◆ EvaluateBaseAttackers()

void SCR_XPHandlerComponent.EvaluateBaseAttackers ( SCR_CampaignMilitaryBaseComponent base)

◆ GetMedicalAssistanceRewardCooldown()

int SCR_XPHandlerComponent.GetMedicalAssistanceRewardCooldown ( )

◆ GetSeizeBaseProgressionRewardTimer()

int SCR_XPHandlerComponent.GetSeizeBaseProgressionRewardTimer ( )

◆ GetSeizeBaseProgressionXP()

int SCR_XPHandlerComponent.GetSeizeBaseProgressionXP ( string baseFactionKey)

◆ GetSurvivalRewardCooldown()

int SCR_XPHandlerComponent.GetSurvivalRewardCooldown ( )

◆ GetSurvivalScaleMaxCycleAmount()

int SCR_XPHandlerComponent.GetSurvivalScaleMaxCycleAmount ( )

◆ GetXPMultiplier()

float SCR_XPHandlerComponent.GetXPMultiplier ( )

Returns XP reward amount.

Returns

◆ GetXPRewardAmount()

int SCR_XPHandlerComponent.GetXPRewardAmount ( SCR_EXPRewards reward)

Returns XP reward amount.

Parameters
[in]reward
Returns

◆ GetXpRewardInfo()

SCR_XPRewardInfo SCR_XPHandlerComponent.GetXpRewardInfo ( SCR_EXPRewards reward)

◆ GetXPRewardName()

string SCR_XPHandlerComponent.GetXPRewardName ( SCR_EXPRewards reward)

Returns XP reward name.

Parameters
[in]reward
Returns
XP reward name

◆ IsHealingFriendlyStatPoint()

bool SCR_XPHandlerComponent.IsHealingFriendlyStatPoint ( SCR_EDataStats stat)
protected

Returns true if stat corresponds to healing of friendly characters by any medical item.

Parameters
[in]stat

◆ IsProxy()

bool SCR_XPHandlerComponent.IsProxy ( )
protected

◆ IsXpSystemEnabled()

static bool SCR_XPHandlerComponent.IsXpSystemEnabled ( )
static

Returns true when Xp handling system is operational.

◆ OnBaseAttackEnded()

void SCR_XPHandlerComponent.OnBaseAttackEnded ( notnull SCR_CampaignMilitaryBaseComponent base)

◆ OnBaseAttackStarted()

void SCR_XPHandlerComponent.OnBaseAttackStarted ( notnull SCR_CampaignMilitaryBaseComponent base,
Faction defendingFaction,
Faction attackingFaction )

◆ OnBaseSeized()

void SCR_XPHandlerComponent.OnBaseSeized ( SCR_CampaignMilitaryBaseComponent baseComponent)

◆ OnCharacterHealed()

void SCR_XPHandlerComponent.OnCharacterHealed ( SCR_BaseSupportStationComponent supportStation,
ESupportStationType supportStationType,
IEntity actionTarget,
IEntity actionUser,
SCR_BaseUseSupportStationAction action )
protected

Award XP when heal action is finished.

Parameters
[in]supportStation
[in]supportStationType
[in]actionTarget
[in]actionUser
[in]action

◆ OnCharacterKilled()

void SCR_XPHandlerComponent.OnCharacterKilled ( notnull SCR_InstigatorContextData instigatorContextData)
protected

◆ OnCompartmentLeft()

void SCR_XPHandlerComponent.OnCompartmentLeft ( IEntity targetEntity,
BaseCompartmentManagerComponent manager,
int mgrID,
int slotID,
bool move )
protected

◆ OnControllableDestroyed()

override void SCR_XPHandlerComponent.OnControllableDestroyed ( notnull SCR_InstigatorContextData instigatorContextData)

When a controllable entity is destroyed, this event is raised.

Parameters
[in]instigatorContextDataHolds the data of the victim and killer

Implements SCR_BaseGameModeComponent.

◆ OnDrivingStatPointsAdded()

void SCR_XPHandlerComponent.OnDrivingStatPointsAdded ( int playerId,
float amount )
protected

◆ OnHealingStatPointsAdded()

void SCR_XPHandlerComponent.OnHealingStatPointsAdded ( int playerId)
protected

◆ OnPlayerDisconnected()

override void SCR_XPHandlerComponent.OnPlayerDisconnected ( int playerId,
KickCauseCode cause,
int timeout )

Called after a player is disconnected.

Parameters
[in]playerIdPlayerId of disconnected player.
[in]causeReason player disconnected
[in]timeoutTimeout for when players are allowed to connect again. -1 means Ban without an assigned timeout

Implements SCR_BaseGameModeComponent.

◆ OnPlayerKilled()

override void SCR_XPHandlerComponent.OnPlayerKilled ( notnull SCR_InstigatorContextData instigatorContextData)

Called after a player gets killed.

Parameters
[in]instigatorContextDataHolds the data of the victim and killer

Implements SCR_BaseGameModeComponent.

◆ OnPlayerSpawnFinalize_S()

override void SCR_XPHandlerComponent.OnPlayerSpawnFinalize_S ( SCR_SpawnRequestComponent requestComponent,
SCR_SpawnHandlerComponent handlerComponent,
SCR_SpawnData data,
IEntity entity )
Parameters
[in]requestComponent
[in]handlerComponent
[in]data
[in]entity

Implements SCR_BaseGameModeComponent.

◆ OnPostInit()

override void SCR_XPHandlerComponent.OnPostInit ( IEntity owner)

◆ OnStatPointsAdded()

void SCR_XPHandlerComponent.OnStatPointsAdded ( int playerId,
SCR_EDataStats stat,
float amount,
bool temp )
protected

◆ OnSupportStationExecuted()

void SCR_XPHandlerComponent.OnSupportStationExecuted ( SCR_BaseSupportStationComponent supportStation,
ESupportStationType supportStationType,
IEntity actionTarget,
IEntity actionUser,
SCR_BaseUseSupportStationAction action )
protected

Support station was executed.

Parameters
[in]supportStation
[in]supportStationType
[in]actionTarget
[in]actionUser
[in]action

◆ OnVehicleDestroyed()

void SCR_XPHandlerComponent.OnVehicleDestroyed ( notnull SCR_InstigatorContextData instigatorContextData)
protected

◆ OnVehicleRepaired()

void SCR_XPHandlerComponent.OnVehicleRepaired ( SCR_BaseSupportStationComponent supportStation,
ESupportStationType supportStationType,
IEntity actionTarget,
IEntity actionUser,
SCR_BaseUseSupportStationAction action )
protected

Award XP when repair action is finished.

Parameters
[in]supportStation
[in]supportStationType
[in]actionTarget
[in]actionUser
[in]action

◆ ProcessSuicide()

void SCR_XPHandlerComponent.ProcessSuicide ( int playerId)
Parameters
[in]playerId

◆ VeterancyAward()

void SCR_XPHandlerComponent.VeterancyAward ( notnull PlayerController controller,
float multiplier )
Parameters
[in]controller
[in]multiplier

Member Data Documentation

◆ BASE_SEIZING_CHECK_INTERVAL

const int SCR_XPHandlerComponent.BASE_SEIZING_CHECK_INTERVAL = 5
staticprotected

◆ m_aBasesBeingSeized

ref array<SCR_CampaignMilitaryBaseComponent> SCR_XPHandlerComponent.m_aBasesBeingSeized = {}
protected

◆ m_aXPRewardList

ref array<ref SCR_XPRewardInfo> SCR_XPHandlerComponent.m_aXPRewardList = {}
protected

◆ m_fBaseSeizingCheckTimer

float SCR_XPHandlerComponent.m_fBaseSeizingCheckTimer
protected

◆ m_fEnemyVehicleDestroyXPMultiplier

float SCR_XPHandlerComponent.m_fEnemyVehicleDestroyXPMultiplier
protected

◆ m_fVehicleRepairXPMultiplier

float SCR_XPHandlerComponent.m_fVehicleRepairXPMultiplier
protected

◆ m_fXpMultiplier

float SCR_XPHandlerComponent.m_fXpMultiplier = 1
protected

◆ m_iMedicalAssistanceRewardCooldown

int SCR_XPHandlerComponent.m_iMedicalAssistanceRewardCooldown
protected

◆ m_iSuicidePenaltyCooldown

int SCR_XPHandlerComponent.m_iSuicidePenaltyCooldown
protected

◆ m_iSurvivalRewardCooldown

int SCR_XPHandlerComponent.m_iSurvivalRewardCooldown
protected

◆ m_iSurvivalScaleMaxCycleAmount

int SCR_XPHandlerComponent.m_iSurvivalScaleMaxCycleAmount
protected

◆ m_iVeterancyXPAwardThreshold

int SCR_XPHandlerComponent.m_iVeterancyXPAwardThreshold
protected

◆ m_mPlayerTransportPoints

ref map<int, float> SCR_XPHandlerComponent.m_mPlayerTransportPoints = new map<int, float>()
protected

◆ m_mSeizeXPRewardConfig

ref SCR_SeizeXpRewardConfig SCR_XPHandlerComponent.m_mSeizeXPRewardConfig
protected

◆ RELAY_SEIZING_RADIUS

const int SCR_XPHandlerComponent.RELAY_SEIZING_RADIUS = 50
staticprotected

◆ s_bXpSystemEnabled

bool SCR_XPHandlerComponent.s_bXpSystemEnabled
staticprotected

◆ TRANSPORT_HELI_MULTIPLIER

const float SCR_XPHandlerComponent.TRANSPORT_HELI_MULTIPLIER = 0.25
staticprotected

◆ TRANSPORT_POINTS_TO_XP_RATIO

const float SCR_XPHandlerComponent.TRANSPORT_POINTS_TO_XP_RATIO = 0.01
staticprotected

◆ TRANSPORT_XP_PAYOFF_THRESHOLD

const int SCR_XPHandlerComponent.TRANSPORT_XP_PAYOFF_THRESHOLD = 15
staticprotected

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