Arma Reforger Script API
|
Public Member Functions | |
ref SCR_DestructionBaseHandler | GetDestructionHandler () |
override void | OnInit (IEntity pOwnerEntity, GenericComponent pManagerComponent) |
Call OnInit method from script. | |
float | GetSecondaryExplosionScale () |
Get secondary explosion desired scale. It will determine the prefab retrieved from secondary explosion config. | |
PointInfo | GetSecondaryExplosionPoint () |
Get secondary explosion desired scale. It will determine the prefab retrieved from secondary explosion config. | |
override void | OnDamageStateChanged (EDamageState newState, EDamageState previousDamageState, bool isJIP) |
Kill occupants and start destruction. | |
void | StartDestruction (bool immediate=false) |
Start destruction effects. | |
void | PlayDestructionParticle (EDamageState state) |
Start destruction particle. | |
![]() | |
EHitZoneGroup | GetHitZoneGroup () |
Hit zone group getter to be overridden. | |
ScriptInvokerVoid | GetOnHealthChanged (bool createNew=true) |
Get event called when hitzone damage changes. | |
ScriptInvoker | GetOnDamageStateChanged (bool createNew=true) |
Get event called when hitzone damage state changes. | |
IEntity | GetOwner () |
override float | ComputeEffectiveDamage (notnull BaseDamageContext damageContext, bool isDOT) |
Calculates the amount of damage a hitzone will receive. | |
void | DrawDebug () |
void | ApplyDamagePassRules (notnull BaseDamageContext damageContext) |
void | HandlePassedDamage (notnull BaseDamageContext damageContext) |
![]() | |
proto external float | GetBaseDamageMultiplier () |
proto external bool | HasColliderNodes () |
proto external int | GetColliderDescriptorIndex (int colliderID) |
proto external float | GetDamageMultiplier (EDamageType dmgType) |
proto external float | GetDamageReduction () |
proto external float | GetDamageThreshold () |
proto external int | GetAllColliderNames (out notnull array< string > colliderNames) |
proto external void | SetDamageOverTime (EDamageType dmgType, float dps) |
Sets damage over time for this particular hitzone. | |
proto external float | GetDamageOverTime (EDamageType dmgType) |
proto external int | GetNumColliderDescriptors () |
proto external HitZoneContainerComponent | GetHitZoneContainer () |
proto external void | SetHealth (float health) |
proto external void | SetHealthScaled (float health) |
proto external void | SetMaxHealth (float maxHealth, ESetMaxHealthFlags flag=ESetMaxHealthFlags.NONE) |
proto external float | GetHealth () |
proto external float | GetHealthScaled () |
proto external float | GetDamageStateThreshold (EDamageState damageState) |
proto external float | GetMaxHealth () |
proto external string | GetName () |
proto external EDamageState | GetDamageState () |
proto external float | GetCriticalDamageThreshold () |
proto external EDamageState | GetPreviousDamageState () |
proto external void | HandleDamage (float damage, int damageType, IEntity instigator) |
proto external bool | IsProxy () |
proto external int | GetColliderIDs (out notnull array< int > outIDs) |
Returns all collider IDs attached to this hitzone. | |
proto bool | TryGetColliderDescription (IEntity owner, int descIndex, out vector transformLS[4], out int boneIndex, out int nodeID) |
proto bool | TryGetColliderDescriptionFromName (IEntity owner, string colliderName, out vector transformLS[4], out int boneIndex, out int nodeID) |
void | OnDamage (notnull BaseDamageContext damageContext) |
Called when the damage has been dealt by the server, doesn't get called for DOT. | |
Protected Member Functions | |
void | OnCharacterEjectedFromDestroyedCompartment (ChimeraCharacter playerCharacter, IEntity compartmentEntity) |
Callback that will be triggered when character will be removed from the destroyed vehicle. | |
void | ForceStartDestruction () |
Force begining of the destruction process. | |
void | StopDestruction () |
Stop destruction effects. | |
SCR_VehicleDamageManagerComponent | FindParentVehicleDamageManager () |
void | PlayDestructionSound (EDamageState damageState) |
Start destruction sounds. | |
![]() | |
override void | OnHealthSet () |
Called when damage changes. | |
![]() | |
void | OnMaxHealthChanged () |
Called when max damage changes. | |
Protected Attributes | |
ref PointInfo | m_SecondaryExplosionPoint |
ref SCR_DestructionBaseHandler | m_pDestructionHandler |
string | m_sDestructionSoundEvent |
ResourceName | m_sDestructionParticle |
vector | m_vParticleOffset |
ParticleEffectEntity | m_DstParticle |
SCR_DamageManagerComponent | m_ParentDamageManager |
SCR_DamageManagerComponent | m_RootDamageManager |
SCR_BaseCompartmentManagerComponent | m_CompartmentManager |
ref array< ChimeraCharacter > | m_aEjectedCharacters |
![]() | |
ref array< ref SCR_DamagePassRule > | m_aDamagePassRules |
float | m_fFireMultiplier |
ref ScriptInvokerVoid | m_OnHealthChanged |
ref ScriptInvoker | m_OnDamageStateChanged |
Static Protected Attributes | |
const int | FORCED_DESTRUCTION_DELAY = 1000 |
Time after which we will no longer wait for players to leave destroyed vehicle and force start the destruction. | |
|
protected |
|
protected |
Force begining of the destruction process.
ref SCR_DestructionBaseHandler SCR_DestructibleHitzone.GetDestructionHandler | ( | ) |
PointInfo SCR_DestructibleHitzone.GetSecondaryExplosionPoint | ( | ) |
Get secondary explosion desired scale. It will determine the prefab retrieved from secondary explosion config.
float SCR_DestructibleHitzone.GetSecondaryExplosionScale | ( | ) |
Get secondary explosion desired scale. It will determine the prefab retrieved from secondary explosion config.
Implemented in SCR_FlammableHitZone, and SCR_FuelHitZone.
|
protected |
Callback that will be triggered when character will be removed from the destroyed vehicle.
[in] | playerCharacter | character that left the compartment |
[in] | compartmentEntity |
override void SCR_DestructibleHitzone.OnDamageStateChanged | ( | EDamageState | newState, |
EDamageState | previousDamageState, | ||
bool | isJIP ) |
Kill occupants and start destruction.
Implements SCR_HitZone.
Implemented in SCR_BatteryHitZone, SCR_EngineHitZone, SCR_FlammableHitZone, SCR_FuelHitZone, SCR_GearboxHitZone, SCR_LightHitZone, SCR_RotorHitZone, and SCR_WheelHitZone.
override void SCR_DestructibleHitzone.OnInit | ( | IEntity | pOwnerEntity, |
GenericComponent | pManagerComponent ) |
Call OnInit method from script.
Implements HitZone.
Implemented in SCR_BatteryHitZone, SCR_EngineHitZone, SCR_FlammableHitZone, SCR_FuelHitZone, SCR_GearboxHitZone, SCR_RotorHitZone, and SCR_WheelHitZone.
void SCR_DestructibleHitzone.PlayDestructionParticle | ( | EDamageState | state | ) |
Start destruction particle.
|
protected |
Start destruction sounds.
Implemented in SCR_WheelHitZone.
void SCR_DestructibleHitzone.StartDestruction | ( | bool | immediate = false | ) |
Start destruction effects.
|
protected |
Stop destruction effects.
|
staticprotected |
Time after which we will no longer wait for players to leave destroyed vehicle and force start the destruction.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |