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

Public Member Functions

void OnImpact (notnull IEntity other, float impulse, vector impactPosition, vector impactNormal, GameMaterial mat, vector velocityBefore=vector.Zero, vector velocityAfter=vector.Zero)
 
SCR_EImpactSoundEvent GetImpactSoundEventIndex (vector normal)
 
override void EOnInit (IEntity owner)
 
override void OnPostInit (IEntity owner)
 

Protected Member Functions

array< ResourceName > GetDefaultParticles ()
 
array< ResourceName > GetWaterParticles ()
 
int GetEffectMagnitude ()
 
void OnWaterEnter ()
 
void UpdateParticlesMagnitude (notnull IEntity other, float impulse)
 
void EmitParticles (vector transform[4], ResourceName particleResource)
 
void PlaySound (string soundEvent)
 
void ScheduleImpactEffect ()
 
void HandleImpactEffect ()
 
void PlayImpactParticle (vector position, int magnitude, GameMaterial material)
 
void PlayImpactSound (SCR_EImpactSoundEvent eventIndex, vector position, int surface, float collisionDM)
 
float GetAproximatedMass (IEntity entity)
 
void ResetContactLastPosition ()
 
void RPC_OnImpactParticlesBroadcast (vector contactPos, vector contactNormal, int magnitude)
 
void RPC_OnImpactSoundBroadcast (SCR_EImpactSoundEvent eventIndex, vector impactPosition, int impactSurface, float collisionDM)
 
void RPC_OnImpactSoundAndParticlesBroadcast (vector impactPosition, float collisionDM, vector contactNormal, int magnitude)
 
void RPC_OnWaterEnterBroadcast (vector transform[4], int magnitude)
 
bool IsPhysicActive ()
 
bool TraceFilter (notnull IEntity e)
 

Protected Attributes

ref ParticleEffectEntitySpawnParams m_ParticleSpawnParams
 
SoundComponent m_SoundComponent
 
SignalsManagerComponent m_SignalsManagerComponent
 
bool m_bIsImpactEffectScheduled
 
vector m_vPosition
 
vector m_vPositionLast
 
vector m_vNormal
 
int m_iMagnitude = -1
 
GameMaterial m_GameMaterial
 
SCR_EImpactSoundType m_eImpactType
 
int m_iSurface
 
float m_fdM
 
float m_fMass = 2000
 

Static Protected Attributes

const float IMPACT_DIST_SQ_THRESHOLD = 2
 
const float VELOCITY_IMPACT_THRESHOLD = 0.8
 
const float MIN_TINY_IMPULSE = 2500
 
const float MIN_SMALL_IMPULSE = 5000
 
const float MIN_MEDIUM_IMPULSE = 10000
 
const float MIN_BIG_IMPULSE = 20000
 
const float MIN_HUGE_IMPULSE = 40000
 
const string IMPACT_SURFACE_SIGNAL_NAME = "ImpactSurface"
 
const string COLLISION_D_M_SIGNAL_NAME = "CollisionDM"
 
const float DEFAULT_DENSITY = 100
 
const float VEHICLE_VELOCITY_MINIMUM = 3
 
const float COLLISION_LAST_POSITION_REST_TIME = 500
 
const float CHARACTER_IMPULSE_MINIMUM = 20
 
const float SMALL_OBJECT_IMPULSE_MINIMUM = 10000
 
const float SMALL_OBJECT_VOLUME_MAXIMUM = 90
 
static const ref array< string > WATER_SOUNDS = { SCR_SoundEvent.SOUND_VEHICLE_WATER_SMALL, SCR_SoundEvent.SOUND_VEHICLE_WATER_MEDIUM, SCR_SoundEvent.SOUND_VEHICLE_WATER_BIG, SCR_SoundEvent.SOUND_VEHICLE_WATER_BIG }
 
static const int m_aAproximatedMasses [5] = { 250, 400, 1500, 3500, 10000 }
 

Member Function Documentation

◆ EmitParticles()

void SCR_ImpactEffectComponent.EmitParticles ( vector  transform[4],
ResourceName  particleResource 
)
protected

◆ EOnInit()

override void SCR_ImpactEffectComponent.EOnInit ( IEntity  owner)

◆ GetAproximatedMass()

float SCR_ImpactEffectComponent.GetAproximatedMass ( IEntity  entity)
protected

◆ GetDefaultParticles()

array< ResourceName > SCR_ImpactEffectComponent.GetDefaultParticles ( )
protected

◆ GetEffectMagnitude()

int SCR_ImpactEffectComponent.GetEffectMagnitude ( )
protected

◆ GetImpactSoundEventIndex()

SCR_EImpactSoundEvent SCR_ImpactEffectComponent.GetImpactSoundEventIndex ( vector  normal)

◆ GetWaterParticles()

array< ResourceName > SCR_ImpactEffectComponent.GetWaterParticles ( )
protected

◆ HandleImpactEffect()

void SCR_ImpactEffectComponent.HandleImpactEffect ( )
protected

◆ IsPhysicActive()

bool SCR_ImpactEffectComponent.IsPhysicActive ( )
protected

◆ OnImpact()

void SCR_ImpactEffectComponent.OnImpact ( notnull IEntity  other,
float  impulse,
vector  impactPosition,
vector  impactNormal,
GameMaterial  mat,
vector  velocityBefore = vector::Zero,
vector  velocityAfter = vector::Zero 
)

Implemented in SCR_BayonetEffectComponent.

◆ OnPostInit()

override void SCR_ImpactEffectComponent.OnPostInit ( IEntity  owner)

◆ OnWaterEnter()

void SCR_ImpactEffectComponent.OnWaterEnter ( )
protected

◆ PlayImpactParticle()

void SCR_ImpactEffectComponent.PlayImpactParticle ( vector  position,
int  magnitude,
GameMaterial  material 
)
protected

◆ PlayImpactSound()

void SCR_ImpactEffectComponent.PlayImpactSound ( SCR_EImpactSoundEvent  eventIndex,
vector  position,
int  surface,
float  collisionDM 
)
protected

◆ PlaySound()

void SCR_ImpactEffectComponent.PlaySound ( string  soundEvent)
protected

◆ ResetContactLastPosition()

void SCR_ImpactEffectComponent.ResetContactLastPosition ( )
protected

◆ RPC_OnImpactParticlesBroadcast()

void SCR_ImpactEffectComponent.RPC_OnImpactParticlesBroadcast ( vector  contactPos,
vector  contactNormal,
int  magnitude 
)
protected

Implemented in SCR_BayonetEffectComponent.

◆ RPC_OnImpactSoundAndParticlesBroadcast()

void SCR_ImpactEffectComponent.RPC_OnImpactSoundAndParticlesBroadcast ( vector  impactPosition,
float  collisionDM,
vector  contactNormal,
int  magnitude 
)
protected

◆ RPC_OnImpactSoundBroadcast()

void SCR_ImpactEffectComponent.RPC_OnImpactSoundBroadcast ( SCR_EImpactSoundEvent  eventIndex,
vector  impactPosition,
int  impactSurface,
float  collisionDM 
)
protected

◆ RPC_OnWaterEnterBroadcast()

void SCR_ImpactEffectComponent.RPC_OnWaterEnterBroadcast ( vector  transform[4],
int  magnitude 
)
protected

◆ ScheduleImpactEffect()

void SCR_ImpactEffectComponent.ScheduleImpactEffect ( )
protected

◆ TraceFilter()

bool SCR_ImpactEffectComponent.TraceFilter ( notnull IEntity  e)
protected

◆ UpdateParticlesMagnitude()

void SCR_ImpactEffectComponent.UpdateParticlesMagnitude ( notnull IEntity  other,
float  impulse 
)
protected

Member Data Documentation

◆ CHARACTER_IMPULSE_MINIMUM

const float SCR_ImpactEffectComponent.CHARACTER_IMPULSE_MINIMUM = 20
staticprotected

◆ COLLISION_D_M_SIGNAL_NAME

const string SCR_ImpactEffectComponent.COLLISION_D_M_SIGNAL_NAME = "CollisionDM"
staticprotected

◆ COLLISION_LAST_POSITION_REST_TIME

const float SCR_ImpactEffectComponent.COLLISION_LAST_POSITION_REST_TIME = 500
staticprotected

◆ DEFAULT_DENSITY

const float SCR_ImpactEffectComponent.DEFAULT_DENSITY = 100
staticprotected

◆ IMPACT_DIST_SQ_THRESHOLD

const float SCR_ImpactEffectComponent.IMPACT_DIST_SQ_THRESHOLD = 2
staticprotected

◆ IMPACT_SURFACE_SIGNAL_NAME

const string SCR_ImpactEffectComponent.IMPACT_SURFACE_SIGNAL_NAME = "ImpactSurface"
staticprotected

◆ m_aAproximatedMasses

const int SCR_ImpactEffectComponent.m_aAproximatedMasses[5] = { 250, 400, 1500, 3500, 10000 }
staticprotected

◆ m_bIsImpactEffectScheduled

bool SCR_ImpactEffectComponent.m_bIsImpactEffectScheduled
protected

◆ m_eImpactType

SCR_EImpactSoundType SCR_ImpactEffectComponent.m_eImpactType
protected

◆ m_fdM

float SCR_ImpactEffectComponent.m_fdM
protected

◆ m_fMass

float SCR_ImpactEffectComponent.m_fMass = 2000
protected

◆ m_GameMaterial

GameMaterial SCR_ImpactEffectComponent.m_GameMaterial
protected

◆ m_iMagnitude

int SCR_ImpactEffectComponent.m_iMagnitude = -1
protected

◆ m_iSurface

int SCR_ImpactEffectComponent.m_iSurface
protected

◆ m_ParticleSpawnParams

ref ParticleEffectEntitySpawnParams SCR_ImpactEffectComponent.m_ParticleSpawnParams
protected

◆ m_SignalsManagerComponent

SignalsManagerComponent SCR_ImpactEffectComponent.m_SignalsManagerComponent
protected

◆ m_SoundComponent

SoundComponent SCR_ImpactEffectComponent.m_SoundComponent
protected

◆ m_vNormal

vector SCR_ImpactEffectComponent.m_vNormal
protected

◆ m_vPosition

vector SCR_ImpactEffectComponent.m_vPosition
protected

◆ m_vPositionLast

vector SCR_ImpactEffectComponent.m_vPositionLast
protected

◆ MIN_BIG_IMPULSE

const float SCR_ImpactEffectComponent.MIN_BIG_IMPULSE = 20000
staticprotected

◆ MIN_HUGE_IMPULSE

const float SCR_ImpactEffectComponent.MIN_HUGE_IMPULSE = 40000
staticprotected

◆ MIN_MEDIUM_IMPULSE

const float SCR_ImpactEffectComponent.MIN_MEDIUM_IMPULSE = 10000
staticprotected

◆ MIN_SMALL_IMPULSE

const float SCR_ImpactEffectComponent.MIN_SMALL_IMPULSE = 5000
staticprotected

◆ MIN_TINY_IMPULSE

const float SCR_ImpactEffectComponent.MIN_TINY_IMPULSE = 2500
staticprotected

◆ SMALL_OBJECT_IMPULSE_MINIMUM

const float SCR_ImpactEffectComponent.SMALL_OBJECT_IMPULSE_MINIMUM = 10000
staticprotected

◆ SMALL_OBJECT_VOLUME_MAXIMUM

const float SCR_ImpactEffectComponent.SMALL_OBJECT_VOLUME_MAXIMUM = 90
staticprotected

◆ VEHICLE_VELOCITY_MINIMUM

const float SCR_ImpactEffectComponent.VEHICLE_VELOCITY_MINIMUM = 3
staticprotected

◆ VELOCITY_IMPACT_THRESHOLD

const float SCR_ImpactEffectComponent.VELOCITY_IMPACT_THRESHOLD = 0.8
staticprotected

◆ WATER_SOUNDS


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