DayZ 1.26
DayZ Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс HotSpringTrigger

Hot spring area trigger. Подробнее...

+ Граф наследования:HotSpringTrigger:

Защищенные члены

override void EEInit ()
 
override void EEDelete (EntityAI parent)
 
override void OnEnterServerEvent (TriggerInsider insider)
 
override void OnLeaveServerEvent (TriggerInsider insider)
 
override void OnEnterClientEvent (TriggerInsider insider)
 
override void OnLeaveClientEvent (TriggerInsider insider)
 
void SpawnVaporEffect ()
 

Защищенные статические члены

static void ApplyEffects (PlayerBase player)
 

Защищенные данные

ParticleSource m_VaporParticle
 

Закрытые статические данные

static HotSpringTrigger m_SourceDamageInstance
 
static const float HEAT_DAMAGE_MULTIPLIER = 5
 
static const float HEAT_DAMAGE_TICK_TIME = 2
 

Дополнительные унаследованные члены

- Закрытые члены унаследованные от EffectTrigger
void OnStayClientEvent (TriggerInsider insider, float deltaTime)
 
override void OnEnterServerEvent (TriggerInsider insider)
 
override void OnEnterClientEvent (TriggerInsider insider)
 
override void OnLeaveServerEvent (TriggerInsider insider)
 
override void OnLeaveClientEvent (TriggerInsider insider)
 
override bool ShouldRemoveInsider (TriggerInsider insider)
 
- Закрытые статические члены унаследованные от EffectTrigger
static void TriggerEffect (EntityAI insider, typename triggerType)
 

Подробное описание

Hot spring area trigger.

Методы

◆ ApplyEffects()

static void ApplyEffects ( PlayerBase player)
inlinestaticprotected
93 {
94 float waterLevel = player.GetCurrentWaterLevel();
95 if (waterLevel > 0.5)
96 player.ProcessDirectDamage(DamageType.CUSTOM, m_SourceDamageInstance, "", "HeatDamage", "0 0 0", HEAT_DAMAGE_MULTIPLIER * waterLevel);
97 }
DamageType
exposed from C++ (do not change)
Definition DamageSystem.c:11
static HotSpringTrigger m_SourceDamageInstance
Definition HotSpringTrigger.c:4
static const float HEAT_DAMAGE_MULTIPLIER
Definition HotSpringTrigger.c:5
Definition EntityAI.c:95

Перекрестные ссылки HEAT_DAMAGE_MULTIPLIER и m_SourceDamageInstance.

Используется в ManBase::OnUpdateEffectAreaServer().

◆ EEDelete()

override void EEDelete ( EntityAI parent)
inlineprotected
23 {
26
27 super.EEDelete(parent);
28 }
ParticleSource m_VaporParticle
Definition HotSpringTrigger.c:8
void Stop()
Legacy function for backwards compatibility with 1.14 and below.
Definition Particle.c:266

Перекрестные ссылки m_VaporParticle и Particle::Stop().

◆ EEInit()

override void EEInit ( )
inlineprotected
11 {
12 if (GetGame().IsServer() && !m_SourceDamageInstance)
14
15 super.EEInit();
16
17 #ifndef SERVER
19 #endif
20 }
void SpawnVaporEffect()
Definition HotSpringTrigger.c:78
proto native CGame GetGame()

Перекрестные ссылки GetGame(), m_SourceDamageInstance и SpawnVaporEffect().

◆ OnEnterClientEvent()

override void OnEnterClientEvent ( TriggerInsider insider)
inlineprotected
55 {
56 super.OnEnterClientEvent(insider);
57
58 if (insider)
59 {
61 if (playerInsider)
62 playerInsider.SetInEffectAreaTypeFlag(EEffectAreaType.HOT_SPRING);
63 }
64 }
Definition PlayerBaseClient.c:2
Object GetObject()
Definition Trigger.c:28

Перекрестные ссылки TriggerInsider::GetObject().

◆ OnEnterServerEvent()

override void OnEnterServerEvent ( TriggerInsider insider)
inlineprotected
31 {
32 super.OnEnterServerEvent(insider);
33
34 if (insider)
35 {
37 if (playerInsider)
38 playerInsider.SetInEffectAreaTypeFlag(EEffectAreaType.HOT_SPRING);
39 }
40 }

Перекрестные ссылки TriggerInsider::GetObject().

◆ OnLeaveClientEvent()

override void OnLeaveClientEvent ( TriggerInsider insider)
inlineprotected
67 {
68 super.OnLeaveClientEvent(insider);
69
70 if (insider)
71 {
73 if (playerInsider)
74 playerInsider.UnsetInEffectAreaTypeFlag(EEffectAreaType.HOT_SPRING);
75 }
76 }

Перекрестные ссылки TriggerInsider::GetObject().

◆ OnLeaveServerEvent()

override void OnLeaveServerEvent ( TriggerInsider insider)
inlineprotected
43 {
44 super.OnLeaveServerEvent(insider);
45
46 if (insider)
47 {
49 if (playerInsider)
50 playerInsider.UnsetInEffectAreaTypeFlag(EEffectAreaType.HOT_SPRING);
51 }
52 }

Перекрестные ссылки TriggerInsider::GetObject().

◆ SpawnVaporEffect()

void SpawnVaporEffect ( )
inlineprotected
79 {
80 vector pos = GetPosition();
81 pos[1] = GetGame().SurfaceY(pos[0], pos[2]) + 0.5;
82
83 m_VaporParticle = ParticleManager.GetInstance().PlayInWorld(ParticleList.HOTPSRING_WATERVAPOR, pos);
84
87
90 }
void ParticleManager(ParticleManagerSettings settings)
Constructor (ctor)
Definition ParticleManager.c:84
class JsonUndergroundAreaTriggerData GetPosition
Definition UndergroundAreaLoader.c:9
Definition EnMath.c:7
Definition ParticleList.c:12
static const int HOTPSRING_WATERVAPOR
Definition ParticleList.c:334
override void IncrementParticleParam(int parameter_id, float value)
Increments the value of the given parameter relatively from the CURRENT value.
Definition ParticleSource.c:903
Definition EnConvert.c:106
static int RandomIntInclusive(int min, int max)
Returns a random int number between and min [inclusive] and max [inclusive].
Definition EnMath.c:54
EmitorParam
Definition EnVisual.c:114

Перекрестные ссылки GetGame(), GetPosition, ParticleList::HOTPSRING_WATERVAPOR, ParticleSource::IncrementParticleParam(), m_VaporParticle, ParticleManager() и Math::RandomIntInclusive().

Используется в EEInit().

Поля

◆ HEAT_DAMAGE_MULTIPLIER

const float HEAT_DAMAGE_MULTIPLIER = 5
staticprivate

Используется в ApplyEffects().

◆ HEAT_DAMAGE_TICK_TIME

const float HEAT_DAMAGE_TICK_TIME = 2
staticprivate

Используется в ManBase::OnUpdateEffectAreaServer().

◆ m_SourceDamageInstance

HotSpringTrigger m_SourceDamageInstance
staticprivate

Используется в ApplyEffects() и EEInit().

◆ m_VaporParticle

ParticleSource m_VaporParticle
protected

Используется в EEDelete() и SpawnVaporEffect().


Объявления и описания членов класса находятся в файле: