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

Public Member Functions

proto external void ApplyEffect (SCR_ExtendedDamageManagerComponent dmgManager)
 Called when this DamageEffect gets applied on a DamageManager.
 
proto external float GetTotalDamage ()
 Get total damage dealt until this point by this damage effect.
 
proto external EDamageType GetDamageType ()
 Gettor for the DamageType of this DamageEffect.
 
proto external notnull Instigator GetInstigator ()
 Gettor for the Instigator of this DamageEffect.
 
proto external HitZone GetAffectedHitZone ()
 Gettor for which hitzone this DamageEffect was applied to.
 
proto external void SetDamageType (EDamageType type)
 Settor for the DamageType of this DamageEffect.
 
proto external void SetInstigator (notnull Instigator instigator)
 Settor for the instigator of the damage effect.
 
proto external void SetAffectedHitZone (HitZone hitZone)
 Settor for the affected HitZone of the damage effect.
 
proto external bool IsProxy (SCR_ExtendedDamageManagerComponent dmgManager)
 Used to check if you are a proxy or not.
 
bool HijackDamageEffect (SCR_ExtendedDamageManagerComponent dmgManager)
 Called before the damage effect is added to the damage manager If it returns true, damage effect is hijacked/intercepted and therefore not added/applied to the damage manager Any modifications done to the damage effect will persist.
 
void OnEffectAdded (SCR_ExtendedDamageManagerComponent dmgManager)
 Called when this DamageEffect gets added to a DamageManager.
 
void OnEffectApplied (SCR_ExtendedDamageManagerComponent dmgManager)
 Called when this DamageEffect gets applied on a DamageManager.
 
void HandleConsequences (SCR_ExtendedDamageManagerComponent dmgManager, DamageEffectEvaluator evaluator)
 Called from ApplyEffect.
 
void OnEffectRemoved (SCR_ExtendedDamageManagerComponent dmgManager)
 Called when this DamageEffect gets removed from a DamageManager.
 
void OnDiag (SCR_ExtendedDamageManagerComponent dmgManager)
 When DamageEffect info is enabled on the diag menu, this will be called.
 
bool Save (ScriptBitWriter w)
 Since DamageEffects can't have rpl methods, streaming has to be done through this method.
 
bool Load (ScriptBitReader r)
 Since DamageEffects can't have rpl methods, streaming has to be done through this method.
 

Member Function Documentation

◆ ApplyEffect()

proto external void BaseDamageEffect.ApplyEffect ( SCR_ExtendedDamageManagerComponent  dmgManager)

Called when this DamageEffect gets applied on a DamageManager.

InstantDamageEffects get applied whenever they are added. PersistentDamageEffects only get applied when ApplyEffect() gets called. This call gets automatically replicated to clients, which means that BaseDamageEffect.Save will be getting called.

Parameters
SCR_ExtendedDamageManagerComponentdmgManager: Manager containing this DamageEffect

◆ GetAffectedHitZone()

proto external HitZone BaseDamageEffect.GetAffectedHitZone ( )

Gettor for which hitzone this DamageEffect was applied to.

Returns
Returns the HitZone where this DamageEffect got applied

◆ GetDamageType()

proto external EDamageType BaseDamageEffect.GetDamageType ( )

Gettor for the DamageType of this DamageEffect.

Returns
Returns type of the damage dealt by this DamageEffect

◆ GetInstigator()

proto external notnull Instigator BaseDamageEffect.GetInstigator ( )

Gettor for the Instigator of this DamageEffect.

Returns
Instigator of this DamageEffect

◆ GetTotalDamage()

proto external float BaseDamageEffect.GetTotalDamage ( )

Get total damage dealt until this point by this damage effect.

Returns
total damage applied by this damage effect

◆ HandleConsequences()

void BaseDamageEffect.HandleConsequences ( SCR_ExtendedDamageManagerComponent  dmgManager,
DamageEffectEvaluator  evaluator 
)

◆ HijackDamageEffect()

bool BaseDamageEffect.HijackDamageEffect ( SCR_ExtendedDamageManagerComponent  dmgManager)

Called before the damage effect is added to the damage manager If it returns true, damage effect is hijacked/intercepted and therefore not added/applied to the damage manager Any modifications done to the damage effect will persist.

Parameters
SCR_ExtendedDamageManagerComponentdmgManager: Manager containing this DamageEffect

Implemented in SCR_BleedingDamageEffect, SCR_MorphineDamageEffect, SCR_PhysicalHitZonesRegenDamageEffect, and SCR_SalineDamageEffect.

◆ IsProxy()

proto external bool BaseDamageEffect.IsProxy ( SCR_ExtendedDamageManagerComponent  dmgManager)

Used to check if you are a proxy or not.

Parameters
SCR_ExtendedDamageManagerComponentdmgManager: manager containing this DamageEffect
Returns
true if this DamageEffect is a proxy

◆ Load()

bool BaseDamageEffect.Load ( ScriptBitReader  r)

Since DamageEffects can't have rpl methods, streaming has to be done through this method.

This method writes the necessary info for the replication of this DamageEffect and sends it through the network

Parameters
ScriptBitReaderr: Streamed data should be read from here.
Returns
true if there were no issues on replication

Implemented in SCR_DamageEffect, SCR_DotDamageEffect, and SCR_BleedingDamageEffect.

◆ OnDiag()

void BaseDamageEffect.OnDiag ( SCR_ExtendedDamageManagerComponent  dmgManager)

When DamageEffect info is enabled on the diag menu, this will be called.

Used to write debug information about this DamageEffect

Parameters
SCR_ExtendedDamageManagerComponentdmgManager: Manager containing this DamageEffect

Implemented in SCR_DamageEffect, SCR_DotDamageEffect, SCR_PersistentDamageEffect, and SCR_BleedingDamageEffect.

◆ OnEffectAdded()

void BaseDamageEffect.OnEffectAdded ( SCR_ExtendedDamageManagerComponent  dmgManager)

Called when this DamageEffect gets added to a DamageManager.

Parameters
SCR_ExtendedDamageManagerComponentdmgManager: Manager containing this DamageEffect

Implemented in SCR_BandageDamageEffect, SCR_BleedingDamageEffect, SCR_MorphineDamageEffect, SCR_PassiveHitZoneRegenDamageEffect, SCR_PhysicalHitZonesRegenDamageEffect, and SCR_TourniquetDamageEffect.

◆ OnEffectApplied()

void BaseDamageEffect.OnEffectApplied ( SCR_ExtendedDamageManagerComponent  dmgManager)

Called when this DamageEffect gets applied on a DamageManager.

Parameters
SCR_ExtendedDamageManagerComponentdmgManager: Manager containing this DamageEffect

◆ OnEffectRemoved()

void BaseDamageEffect.OnEffectRemoved ( SCR_ExtendedDamageManagerComponent  dmgManager)

Called when this DamageEffect gets removed from a DamageManager.

Parameters
SCR_ExtendedDamageManagerComponentdmgManager: Manager containing this DamageEffect

Implemented in SCR_BleedingDamageEffect.

◆ Save()

bool BaseDamageEffect.Save ( ScriptBitWriter  w)

Since DamageEffects can't have rpl methods, streaming has to be done through this method.

This method writes the necessary info for the replication of this DamageEffect and sends it through the network

Parameters
ScriptBitWriterw: data to stream should be written here.
Returns
true if there were no issues on replication

Implemented in SCR_DamageEffect, SCR_DotDamageEffect, and SCR_BleedingDamageEffect.

◆ SetAffectedHitZone()

proto external void BaseDamageEffect.SetAffectedHitZone ( HitZone  hitZone)

Settor for the affected HitZone of the damage effect.

Parameters
HitZonehitZone: new HitZone for this DamageEffect

◆ SetDamageType()

proto external void BaseDamageEffect.SetDamageType ( EDamageType  type)

Settor for the DamageType of this DamageEffect.

Parameters
EDamageTypetype: new damage type

◆ SetInstigator()

proto external void BaseDamageEffect.SetInstigator ( notnull Instigator  instigator)

Settor for the instigator of the damage effect.

Parameters
Instigatorinstigator: new Instigator of the effect

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