|
| proto external void | AddDamageEffect (notnull BaseDamageEffect damageEffect) |
| | Adds A CLONE of a DamageEffect to this DamageManager.
|
| |
| proto external bool | TerminateDamageEffect (notnull PersistentDamageEffect dmgEffect) |
| | If this persistent effect is contained on the damage manger, it will be removed.
|
| |
| proto external void | TerminateDamageEffectsOfType (TypeName typeName) |
| | Terminates all damage effects of the given type Note: Function checks PersistentDamageEffects.
|
| |
| proto external DamageEffectEvaluator | GetEvaluator () |
| | Returns the DamageEffectEvaluator this ExtendedDamageManager is using.
|
| |
| proto external void | SetEvaluator (notnull DamageEffectEvaluator evaluator) |
| | Switches the DamageEffectEvaluator this ExtendedDamageManager is using.
|
| |
| proto external void | GetPersistentEffects (out notnull array< ref SCR_PersistentDamageEffect > persistentEffects) |
| | Clears passed array (persistentEffects) and fills it with all current PersistentEffects contained in the damage manager.
|
| |
| proto external bool | IsDamageEffectPresent (TypeName typeName) |
| | Returns true if a persistent effect of the type is currently present.
|
| |
| proto external SCR_PersistentDamageEffect | FindDamageEffectOfType (TypeName typeName) |
| | Finds a DamageEffect of the requested type contained on this ExtendedDamageManager Note: Function checks PersistentDamageEffects.
|
| |
| proto external int | FindAllDamageEffectsOfType (TypeName typeName, out notnull array< ref SCR_PersistentDamageEffect > damageEffects) |
| | Fills damageEffects array with all the DamageEffects of the given type present on this manager.
|
| |
| proto external void | FindDamageEffectsOnHitZone (HitZone hitzone, out notnull array< ref SCR_PersistentDamageEffect > damageEffects) |
| | Fills passed array with all current persistent DamageEffects affecting the chosen hitzone.
|
| |
| proto external SCR_PersistentDamageEffect | FindDamageEffectOnHitZone (TypeName typeName, HitZone hitzone) |
| | Finds a DamageEffect of the requested type contained on this ExtendedDamageManager, that is being applied to the HitZone.
|
| |
| proto external int | FindAllDamageEffectsOfTypeOnHitZone (TypeName typeName, HitZone hitzone, out notnull array< ref SCR_PersistentDamageEffect > damageEffects) |
| | Finds all the DamageEffects of the requested type contained on this ExtendedDamageManager, that is being applied to the requested HitZone Note: Function checks PersistentDamageEffects.
|
| |
| proto external bool | IsDamageEffectPresentOnHitZones (TypeName typeName, notnull array< HitZone > hitZones) |
| | Returns true if a persistent effect of the type is currently present in any of the hitzones passed Note: Function checks PersistentDamageEffects.
|
| |
| proto external void | GetDamageHistory (out notnull array< ref BaseDamageEffect > damageHistory) |
| | Clears passed array (damageHistory) and fills it with all DamageEffects stored in this damage managers damage history.
|
| |
| proto external void | ClearDamageHistory () |
| | Clears the DamageHistory, containing all the DamageEffects applied to this DamageManager.
|
| |
| void | OnDamageEffectAdded (notnull SCR_DamageEffect dmgEffect) |
| | Called when a damage effect has been added.
|
| |
| void | OnDamageEffectRemoved (notnull SCR_DamageEffect dmgEffect) |
| | Called when a damage effect has been removed.
|
| |
| bool | IsRplReady () |
| | Check if replication loading is completed. Important for join in progress and when streaming entities in.
|
| |
| HitZone | GetHitZoneByName (string hitZoneName, bool caseSensitive=false) |
| | Get the HitZone that matches the provided name.
|
| |
| void | GetPhysicalHitZones (out notnull array< HitZone > physicalHitZones) |
| | Return hit zones with colliders assigned.
|
| |
| void | GetRegeneratingHitZones (out notnull array< SCR_RegeneratingHitZone > regeneratingHitZones) |
| | Return hit zones with passive regeneration enabled.
|
| |
| void | RpcDo_SetFireState (int hitZoneIndex, SCR_EBurningState fireState) |
| | Set fire rate of a flammable hitzone.
|
| |
| override bool | FilterContact (IEntity owner, IEntity other, Contact contact) |
| | No contacts for destroyed entities.
|
| |
| int | GetSurroundingHitzones (vector origin, Physics physics, float maxDistance, out array< HitZone > outHitzones) |
| |
| float | GetMinDestroyDamage (EDamageType damageType, array< HitZone > hitzones, int count) |
| |
| ScriptInvoker | GetOnDamage () |
| |
| ScriptInvoker | GetOnDamageOverTimeAdded () |
| |
| ScriptInvoker | GetOnDamageOverTimeRemoved () |
| |
| ScriptInvoker | GetOnDamageStateChanged () |
| |
| void | ~SCR_DamageManagerComponent () |
| |
| int | GetHitZonesOfGroup (EHitZoneGroup hitZoneGroup, out notnull array< HitZone > groupHitZones, bool clearArray=true) |
| | Get a list of all hitzones of specific hitzone group.
|
| |
| int | GetHitZonesOfGroups (notnull array< EHitZoneGroup > hitZoneGroups, out notnull array< HitZone > groupHitZones) |
| | Get a list of all hitzones of specific hitzone group.
|
| |
| float | GetGroupDamageOverTime (ECharacterHitZoneGroup hitZoneGroup, EDamageType damageType) |
| | Get total damage over time of given hitzone group.
|
| |
| void | Kill (notnull Instigator instigator) |
| | Neutralize the entity with a specific damage type, registering the killer entity.
|
| |
| void | DamageRandomHitZones (float damage, EDamageType type, notnull Instigator instigator, bool onlyPhysical=true, vector outMat[3]={}, bool damageDefault=false) |
| | Damage random physical hit zones up to damage amount.
|
| |
| bool | CanBeHealed (bool ignoreHealingDOT=true) |
| | Return true if there is damage that can be repaired.
|
| |
| void | FullHeal (bool ignoreHealingDOT=true) |
| | Fix all the damage.
|
| |
| float | HealHitZones (float healthToDistribute, bool sequential=false, float maxHealThresholdScaled=1, array< HitZone > alternativeHitZones=null) |
| | Partially heal the hitZones of an entity.
|
| |
| void | ReduceSmoke () |
| | Reduce smoke output based on the total health of hit zones.
|
| |
| float | GetHitZonesDamage (float untilThresholdScaled=1, array< HitZone > alternativeHitZones=null) |
| | Get all damage dealt to hitzones.
|
| |
| float | GetHitZonesHealthScaled (array< HitZone > alternativeHitZones=null) |
| | Get Health scaled of all hitzones.
|
| |
| float | GetSingleHitZonesHealthScaled (array< HitZone > alternativeHitZones=null, bool getLowestHealth=true) |
| | Get single Health scaled from hitzones.
|
| |
| ResourceName | GetSecondaryExplosion (float value, SCR_ESecondaryExplosionType explosionType, EResourceType resourceType=EResourceType.SUPPLIES, bool fire=false) |
| | Determine secondary explosion prefab based on explosion value, type and resource type if defined.
|
| |
| SCR_SecondaryExplosion | GetSecondaryExplosionForScale (SCR_ESecondaryExplosionScale scale, SCR_ESecondaryExplosionType explosionType, EResourceType resourceType=EResourceType.SUPPLIES) |
| | Determine secondary explosion prefab based on explosion scale, type and resource type if defined.
|
| |
| SCR_ESecondaryExplosionScale | GetSecondaryExplosionScale (float value, SCR_ESecondaryExplosionType explosionType, EResourceType resourceType=EResourceType.SUPPLIES) |
| | Determine secondary explosion prefab based on explosion value, type and resource type if defined.
|
| |
| ResourceName | GetSecondaryFireParticle (float value, SCR_ESecondaryExplosionType explosionType, EResourceType resourceType=EResourceType.SUPPLIES) |
| | Determine secondary explosion prefab based on explosion value, type and resource type if defined.
|
| |
| bool | IsOnFire (HitZone hitZone=null) |
| | Determine if provided or any hit zone from this damage manager is on fire.
|
| |
| bool | IsOnFire (notnull array< HitZone > hitZones) |
| | Determine if any hit zone from this damage manager is on fire.
|
| |
| void | SecondaryExplosion (ResourceName prefabName, notnull Instigator instigator, notnull EntitySpawnParams spawnParams) |
| | Spawn secondary explosion.
|
| |
| SCR_ResourceEncapsulator | GetResourceEncapsulator (EResourceType suppliesType=EResourceType.SUPPLIES) |
| |
| void | SupplySecondaryExplosion (notnull Instigator instigator) |
| | Spawn supply secondary explosion when vehicle becomes destroyed.
|
| |
| vector | GetSecondaryExplosionPosition (TypeName hitZoneType, out float totalWeight=0) |
| | Get weighed average position of explosion for hitzones of specified type.
|
| |
| void | FuelSecondaryExplosion (notnull Instigator instigator) |
| | Spawn fuel secondary explosion when vehicle becomes destroyed.
|
| |
| void | UpdateFireDamage (float timeSlice) |
| |
| void | UpdateFireParticles (vector position, out ParticleEffectEntity particles, SCR_ESecondaryExplosionScale state, SCR_ESecondaryExplosionType fireType, EResourceType resourceType=EResourceType.SUPPLIES) |
| | Update visual effects and store result in particles variable.
|
| |
| override void | OnDamageOverTimeAdded (EDamageType dType, float dps, HitZone hz) |
| | Invoked every time the DoT is added to certain hitzone.
|
| |
| override void | OnDamageOverTimeRemoved (EDamageType dType, HitZone hz) |
| | Invoked when provided damage type is removed from certain hitzone.
|
| |
| override bool | HijackDamageHandling (notnull BaseDamageContext damageContext) |
| |
| override int | _WB_GetAfterWorldUpdateSpecs (IEntity owner, IEntitySource src) |
| |
| proto external int | ComputeStruckHitZones (out notnull array< HitZone > struckHitZones, notnull BaseDamageContext damageContext) |
| | Clears and fills struckHitZones array with all HZs that should get damaged by this BaseDamageContext.
|
| |
| proto external void | EnableDamageHandling (bool enable) |
| |
| proto external bool | IsDamageHandlingEnabled () |
| |
| proto external float | GetMovementDamage () |
| |
| proto external float | GetAimingDamage () |
| |
| proto external void | SetMovementDamage (float damage) |
| |
| proto external void | SetAimingDamage (float damage) |
| |
| proto external float | GetHealthScaled () |
| |
| proto external bool | SetHealthScaled (float health) |
| |
| proto external float | GetHealth () |
| |
| proto external float | GetMaxHealth () |
| |
| proto external EDamageState | GetState () |
| |
| proto external bool | IsDestroyed () |
| |
| proto external void | SetInstigatorEntity (IEntity instigator) |
| |
| proto external void | SetInstigator (notnull Instigator instigator) |
| |
| proto external notnull Instigator | GetInstigator () |
| |
| proto external int | GetAttachedColliderIDs (out notnull array< int > outAttachedColliderIDs) |
| | Fills colliderIDs with all the colliders attached to hitzones this dmg manager owns.
|
| |
| proto external void | HandleDamage (notnull BaseDamageContext damageContext) |
| |
| proto external bool | IsDamagedOverTime (EDamageType dType) |
| |
| proto external float | GetDamageOverTime (EDamageType dType) |
| |
| proto external void | RemoveDamageOverTime (EDamageType dType) |
| | Removes DOT of provided damageType from all currently affected HitZones.
|
| |
| GameMaterial | OverrideHitMaterial (HitZone struckHitzone) |
| | Not all armors are physical so the surface that gets struck by projectiles will not be the one the armor, but the hitzone.
|
| |
| bool | ShouldCountAsHit (notnull BaseDamageContext damageContext) |
| | Called after HijackDamageHandling.
|
| |
| proto external IEntity | GetOwner () |
| |
| proto external HitZone | GetDefaultHitZone () |
| |
| proto external HitZone | GetHitZoneByColliderID (int colliderID) |
| |
| proto external int | GetHitZonesByColliderIDs (out notnull array< HitZone > outHitZones, notnull array< int > colliderIDs) |
| | Clears and fills the specified outHitZones array with all HZs that are attached to colliderIDs.
|
| |
| proto external HitZone | GetHitZone (string colliderName) |
| |
| proto external int | GetAllHitZones (out notnull array< HitZone > outHitZones) |
| | Clears and fills the specified outHitZones array with all HZs in this entity Returns the count of elements that were filled into the array.
|
| |
| proto external int | GetAllHitZonesInHierarchy (out notnull array< HitZone > outHitZones) |
| | Clears and fills the specified outHitZones array with all HZs in this entity and its children.
|
| |
| proto external HitZoneContainerComponent | GetParentHitZoneContainer () |
| |
| bool | OnTicksOnRemoteProxy () |
| |
|
| static SCR_DamageManagerComponent | GetDamageManager (notnull IEntity owner) |
| | Get damage manager from given owner.
|
| |
| static const int | MAX_DESTRUCTION_RESPONSE_INDEX = 10 |
| |
| static const string | MAX_DESTRUCTION_RESPONSE_INDEX_NAME = "HugeDestructible" |
| |
| static const ref array< EDamageType > | HEALING_DAMAGE_TYPES = {EDamageType.HEALING, EDamageType.REGENERATION} |
| |
| override bool | OnRplSave (ScriptBitWriter writer) |
| |
| override bool | OnRplLoad (ScriptBitReader reader) |
| |
| notnull SCR_DamageManagerData | GetScriptedDamageManagerData () |
| |
| override void | OnDamage (notnull BaseDamageContext damageContext) |
| |
| override bool | ShouldOverrideInstigator (notnull Instigator currentInstigator, notnull Instigator newInstigator) |
| | Called whenever an instigator is going to be set.
|
| |
| float | HealHitZonesInSequence (float healthToDistribute, float maxHealThresholdScaled, array< HitZone > targetHitZones) |
| |
| float | HealHitZonesInParallel (float healthToDistribute, float maxHealThresholdScaled, array< HitZone > targetHitZones) |
| |
| void | ConnectToFireDamageSystem () |
| |
| void | DisconnectFromFireDamageSystem () |
| |
| override void | OnDamageStateChanged (EDamageState state) |
| | Invoked when damage state changes.
|
| |
| override void | _WB_AfterWorldUpdate (IEntity owner, float timeSlice) |
| |
| void | OnHandleFallDamage (EFallDamageType fallDamageType, vector velocityVector) |
| | Called when fall related damage is relevant.
|
| |
| void | OnHealthSet () |
| | Called when SetHealth() is used on default hitzone.
|
| |
| void | OnMaxHealthChanged () |
| | Called when SetMaxHealth() is used on default hitzone.
|
| |
| void | OnPostInit (IEntity owner) |
| | Called after all components are initialized.
|
| |
| void | OnDelete (IEntity owner) |
| |
| void | OnFrame (IEntity owner, float timeSlice) |
| | Called during EOnFrame.
|
| |
| void | OnFilteredContact (IEntity owner, IEntity other, Contact contact) |
| | Only called if FilterContact returned true.
|
| |
| void | OnDiag (IEntity owner, float timeSlice) |
| | Called during EOnDiag.
|
| |
| SCR_EBurningState | m_iMinimumBurningState |
| |
| int | m_iTimetickInstigator = System.GetTickCount() |
| |
| int | m_iTimeThresholdInstigatorReplacement = 180000 |
| |
| int | m_iPlayerId = 0 |
| |
| int | m_iDamageManagerDataIndex = -1 |
| |
| bool | m_bRplReady |
| |
| static const int | MIN_MOMENTUM_RESPONSE_INDEX = 1 |
| |
| static const int | MAX_MOMENTUM_RESPONSE_INDEX = 5 |
| |
| static const int | MIN_DESTRUCTION_RESPONSE_INDEX = 6 |
| |
| const float | SIMULATION_IMPRECISION_MULTIPLIER = 1.1 |
| |
| static ref array< ref SCR_DamageManagerData > | s_aDamageManagerData = {} |
| |