DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
BreathVapourMdfr.c
См. документацию.
2
3class BreathVapourMdfr extends ModifierBase
4{
5 override void Init()
6 {
8 m_ID = eModifiers.MDF_BREATH_VAPOUR;
12
13 }
14
15 override bool ActivateCondition(PlayerBase player)
16 {
17 return true;
18 }
19
20 override bool DeactivateCondition(PlayerBase player)
21 {
22 return false;
23 }
24
25 override void OnReconnect(PlayerBase player)
26 {
27
28 }
29
30 override string GetDebugText()
31 {
32 //return m_Player.GetStatHeatComfort().Get().ToString();
33 }
34
35 override string GetDebugTextSimple()
36 {
37 //return m_Player.GetStatHeatComfort().Get().ToString();
38 }
39
40
41 override void OnTick(PlayerBase player, float deltaT)
42 {
43 if( !player.m_Environment.IsTemperatureSet() )
44 return;
45 float air_temperature = player.m_Environment.GetTemperature();
46 int level = 0;//default
47 if( MiscGameplayFunctions.IsValueInRange( air_temperature, PlayerConstants.BREATH_VAPOUR_THRESHOLD_HIGH, PlayerConstants.BREATH_VAPOUR_THRESHOLD_LOW) )
48 {
50 value = Math.Clamp(value,0,1);
51 level = Math.Round(Math.Lerp(1,BREATH_VAPOUR_LEVEL_MAX,value));
52 }
53 else if(air_temperature < PlayerConstants.BREATH_VAPOUR_THRESHOLD_HIGH)
54 {
56 }
57 if( level != player.m_BreathVapour )
58 {
59 player.m_BreathVapour = level;
60 player.SetSynchDirty();
61 }
62 }
63};
const int BREATH_VAPOUR_LEVEL_MAX
Определения BreathVapourMdfr.c:1
int m_ID
ID of effect, given by SEffectManager when registered (automatically done when playing through it)
Определения Effect.c:49
bool m_TrackActivatedTime
overall time this modifier was active
Определения ModifierBase.c:14
void DisableDeactivateCheck()
Определения ModifierBase.c:86
float m_TickIntervalActive
Определения ModifierBase.c:18
float m_TickIntervalInactive
Определения ModifierBase.c:17
const int DEFAULT_TICK_TIME_INACTIVE
Определения ModifiersManager.c:29
Определения EnMath.c:7
override void OnReconnect(PlayerBase player)
Определения BreathVapourMdfr.c:25
override bool DeactivateCondition(PlayerBase player)
Определения BreathVapourMdfr.c:20
override string GetDebugText()
Определения BreathVapourMdfr.c:30
override string GetDebugTextSimple()
Определения BreathVapourMdfr.c:35
override void Init()
Определения BreathVapourMdfr.c:5
override bool ActivateCondition(PlayerBase player)
Определения BreathVapourMdfr.c:15
override void OnTick(PlayerBase player, float deltaT)
Определения BreathVapourMdfr.c:41
Определения BreathVapourMdfr.c:4
Определения PlayerBaseClient.c:2
static const float BREATH_VAPOUR_THRESHOLD_LOW
Определения PlayerConstants.c:185
static const float BREATH_VAPOUR_THRESHOLD_HIGH
Определения PlayerConstants.c:184
Определения PlayerConstants.c:2
eModifiers
Определения eModifiers.c:2
static proto float Lerp(float a, float b, float time)
Linearly interpolates between 'a' and 'b' given 'time'.
static proto float Round(float f)
Returns mathematical round of value.
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...