Dayz Explorer 1.28.160049
Loading...
Searching...
No Matches
crashbase.c
Go to the documentation of this file.
1class CrashBase extends House
2{
3 Particle m_ParticleEfx;
4 static bool m_Init = Init();
5
6 static bool Init()
7 {
8 CrashSoundSets.RegisterSoundSet("HeliCrash_Distant_SoundSet");
9 CrashSoundSets.RegisterSoundSet("SledgeCrash_Distant_SoundSet");
10 return true;
11 }
12
13 override void EEOnCECreate()
14 {
15 super.EEOnCECreate();
16 RequestSoundEvent();
17 }
18
19 void RequestSoundEvent()
20 {
21 Param3<bool, vector, int> playSound = new Param3<bool, vector, int>(true, GetPosition(), GetSoundSet().Hash());
22 GetGame().RPCSingleParam( null, ERPCs.RPC_SOUND_HELICRASH, playSound, true );
23 }
24
25 // needs to have the soundset registered in CrashBase.Init()
26 string GetSoundSet()
27 {
28 return "HeliCrash_Distant_SoundSet";
29 }
30
31 override void EEInit()
32 {
33 super.EEInit();
34 //Setup for local sound tests
35 #ifdef DEVELOPER
36 if ( !GetGame().IsMultiplayer() )
37 {
38 EffectSound eff = SEffectManager.PlaySound( GetSoundSet(), GetPosition(), 0.1, 0.1 );
39 eff.SetAutodestroy(true);
40 }
41 #endif
42 }
43
44 override void EEDelete(EntityAI parent)
45 {
46 if ( !GetGame().IsDedicatedServer() )
47 {
48 if ( m_ParticleEfx )
49 m_ParticleEfx.Stop();
50 }
51 }
52};
Wrapper class for managing sound through SEffectManager.
Definition effectsound.c:5
override void SetAutodestroy(bool auto_destroy)
Sets whether Effect automatically cleans up when it stops.
Legacy way of using particles in the game.
Definition particle.c:7
void Stop()
Legacy function for backwards compatibility with 1.14 and below.
Definition particle.c:266
Manager class for managing Effect (EffectParticle, EffectSound)
static EffectSound PlaySound(string sound_set, vector position, float play_fade_in=0, float stop_fade_out=0, bool loop=false)
Create and play an EffectSound.
ContaminatedArea_Base EffectArea EEInit()
override Widget Init()
Definition dayzgame.c:127
ERPCs
Definition erpcs.c:2
proto native CGame GetGame()
class JsonUndergroundAreaTriggerData GetPosition