3#define ENABLE_BASE_DESTRUCTION
30#ifdef ENABLE_BASE_DESTRUCTION
40 super.OnInit(pOwnerEntity, pManagerComponent);
79 super.OnDamageStateChanged(newState, previousDamageState, isJIP);
110 bool allEjectedImmediately;
111 if (
m_CompartmentManager.EjectRandomOccupants(1,
true, allEjectedImmediately,
true) && !allEjectedImmediately)
113 array<BaseCompartmentSlot> compartments = {};
131 if (playerMGR && playerMGR.GetPlayerIdFromControlledEntity(character) == 0)
211 if (!hitZoneContainer)
216 return damageManager;
220 return damageManager;
227 return damageManager;
232 return damageManager;
240 if (
System.IsConsoleApp())
268 slotInfo.GetModelTransform(mat);
269 center = center + mat[3];
293 if (
System.IsConsoleApp())
301 spawnParams.UseFrameEvent =
true;
ArmaReforgerScripted GetGame()
void ParticleEffectEntity(IEntitySource src, IEntity parent)
UI Textures DeployMenu Briefing conflict_HintBanner_1_UI desc
void SCR_VehicleDamageManagerComponent(IEntityComponentSource src, IEntity ent, IEntity parent)
Adds ability to attach an object to a slot.
proto external Managed FindComponent(typename typeName)
proto external void GetBounds(out vector mins, out vector maxs)
proto external IEntity GetParent()
proto external IEntity GetRootParent()
PointInfo - allows to define position.
OnPlayerExitCompartment GetOnPlayerCompartmentExit(bool createNew=true)
void PlayDestructionParticle(EDamageState state)
Start destruction particle.
ResourceName m_sDestructionParticle
override void OnInit(IEntity pOwnerEntity, GenericComponent pManagerComponent)
string m_sDestructionSoundEvent
void OnCharacterEjectedFromDestroyedCompartment(ChimeraCharacter playerCharacter, IEntity compartmentEntity)
ref SCR_DestructionBaseHandler m_pDestructionHandler
void PlayDestructionSound(EDamageState damageState)
Start destruction sounds.
float GetSecondaryExplosionScale()
Get secondary explosion desired scale. It will determine the prefab retrieved from secondary explosio...
void ForceStartDestruction()
Force begining of the destruction process.
SCR_BaseCompartmentManagerComponent m_CompartmentManager
ref SCR_DestructionBaseHandler GetDestructionHandler()
ref array< ChimeraCharacter > m_aEjectedCharacters
PointInfo GetSecondaryExplosionPoint()
Get secondary explosion desired scale. It will determine the prefab retrieved from secondary explosio...
SCR_VehicleDamageManagerComponent FindParentVehicleDamageManager()
const int FORCED_DESTRUCTION_DELAY
Time after which we will no longer wait for players to leave destroyed vehicle and force start the de...
ParticleEffectEntity m_DstParticle
void StopDestruction()
Stop destruction effects.
void StartDestruction(bool immediate=false)
Start destruction effects.
override void OnDamageStateChanged(EDamageState newState, EDamageState previousDamageState, bool isJIP)
Kill occupants and start destruction.
SCR_DamageManagerComponent m_RootDamageManager
SCR_DamageManagerComponent m_ParentDamageManager
ref PointInfo m_SecondaryExplosionPoint
static IEntity GetMainParent(IEntity entity, bool self=false)
EHitZoneGroup GetHitZoneGroup()
SCR_FieldOfViewSettings Attribute