Dayz 1.25
Dayz Code Explorer by KGB
Загрузка...
Поиск...
Не найдено
Файл ClockBase.c

См. исходные тексты.

Перечисления

enum  EAlarmClockState { UNSET , SET , RINGING , COUNT }
 

Функции

void ClockBase ()
 
void ~ClockBase ()
 
void Init ()
 Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside of a non-static system)
 
override void SetActions ()
 
int GetAlarmInMin ()
 
static int ConvertAlarmHand01ToMins12h (float time01)
 
static int ConvertAlarmHand01ToMins (float time01, int mins_max)
 
static float ConvertMins12hToAlarmHand01 (int mins)
 
static int ConvertTimeToMins12h (int hour, int minute)
 
static int GetTimeDiffInMins12h (int from_mins, int to_mins)
 
string GetToggleSound ()
 
string GetRingingSound ()
 
string GetHitSound ()
 
string GetDestroyedSound ()
 
string GetWorkingSound ()
 
override void EEKilled (Object killer)
 
override void EEHitByRemote (int damageType, EntityAI source, int component, string dmgZone, string ammo, vector modelPos)
 
override void OnDamageDestroyed (int oldLevel)
 
void OnRingingStartServer ()
 
void OnRingingStartClient ()
 
void OnRingingStopServer ()
 
void OnRingingStopClient ()
 
void SetAlarmInXMins (int in_mins)
 
float GetRingingDurationMax ()
 
void SetupTimerServer ()
 
void SetState (EAlarmClockState state)
 
void Disarm ()
 
void Arm ()
 
void ActivateParent ()
 
void MakeRingingStart ()
 
void MakeRingingStop ()
 
void TurnOnClient ()
 
void TurnOffClient ()
 
override void OnVariablesSynchronized ()
 
bool IsRinging ()
 
bool IsAlarmOn ()
 
void TurnOn ()
 
void TurnOff ()
 
void SetAlarmTimeServer (float time01)
 

Переменные

enum EAlarmClockState m_AlarmTime01
 
int m_State = EAlarmClockState.UNSET
 
static const float UPDATE_TICK_RATE = 1
 
ref Timer m_TimerUpdate
 
float m_RingingDuration
 
int m_StatePrev = -1
 
EffectSound m_RingingSoundLoop
 
EffectSound m_TurnOnSound
 
EffectSound m_DestoryedSound
 
EffectSound m_HitSound
 
EffectSound m_WorkingSound
 
const float RINGING_DURATION_MAX = 60
 

Перечисления

◆ EAlarmClockState

Элементы перечислений
UNSET 
SET 
RINGING 
COUNT 
2{
3 UNSET,
4 SET,
6 //-----------
8}
@ COUNT
Definition ClockBase.c:7
@ SET
Definition ClockBase.c:4
@ RINGING
Definition ClockBase.c:5
@ UNSET
Definition ClockBase.c:3

Функции

◆ ActivateParent()

void ActivateParent ( )
protected
212 {
213 if (GetHierarchyParent())
214 {
215 ItemBase parent = ItemBase.Cast(GetHierarchyParent());
216 if (parent)
217 {
218 parent.OnActivatedByItem(this);
219 }
220 }
221 }
Definition InventoryItem.c:731

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

◆ Arm()

void Arm ( )
protected
205 {
209 }
void SetupTimerServer()
Definition ClockBase.c:187
void SetState(EAlarmClockState state)
Definition ClockBase.c:193
float m_RingingDuration
Definition ClockBase.c:16
EAlarmClockState
Definition ClockBase.c:2

Перекрестные ссылки m_RingingDuration, SetState() и SetupTimerServer().

◆ ClockBase()

void ClockBase ( )
28 {
29 Init();
30 }
void Init()
Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside o...
Definition ClockBase.c:41

Перекрестные ссылки Init().

◆ ConvertAlarmHand01ToMins()

static int ConvertAlarmHand01ToMins ( float time01,
int mins_max )
staticprotected
71 {
72 return Math.Lerp(0,mins_max,time01);
73 }
Definition EnMath.c:7
Definition EntityAI.c:95
static proto float Lerp(float a, float b, float time)
Linearly interpolates between 'a' and 'b' given 'time'.

Перекрестные ссылки Math::Lerp().

◆ ConvertAlarmHand01ToMins12h()

static int ConvertAlarmHand01ToMins12h ( float time01)
staticprotected
66 {
67 return Math.Lerp(0,12*60,time01);
68 }

Перекрестные ссылки Math::Lerp().

Используется в GetAlarmInMin() и AlarmClock_ColorBase::OnUpdate().

◆ ConvertMins12hToAlarmHand01()

static float ConvertMins12hToAlarmHand01 ( int mins)
staticprotected
76 {
77 return Math.InverseLerp(0,12*60,mins);
78 }
static proto float InverseLerp(float a, float b, float value)
Calculates the linear value that produces the interpolant value within the range [a,...

Перекрестные ссылки Math::InverseLerp().

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

◆ ConvertTimeToMins12h()

static int ConvertTimeToMins12h ( int hour,
int minute )
staticprotected
82 {
83 if (hour >= 12)
84 hour -= 12;
85 return hour * 60 + minute;
86 }

Используется в GetAlarmInMin(), AlarmClock_ColorBase::OnUpdate() и SetAlarmInXMins().

◆ Disarm()

void Disarm ( )
protected
200 {
202 }

Перекрестные ссылки SetState().

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

◆ EEHitByRemote()

override void EEHitByRemote ( int damageType,
EntityAI source,
int component,
string dmgZone,
string ammo,
vector modelPos )
protected
129 {
131 PlaySoundSet( m_HitSound, GetHitSound(), 0, 0 );
132 }
string GetHitSound()
Definition ClockBase.c:109
EffectSound m_HitSound
Definition ClockBase.c:22
class BoxCollidingParams component
ComponentInfo for BoxCollidingResult.

Перекрестные ссылки component, GetHitSound() и m_HitSound.

◆ EEKilled()

override void EEKilled ( Object killer)
protected
123 {
124 super.EEKilled(killer);
125 TurnOff();
126 }
void TurnOff()
Definition ClockBase.c:306

Перекрестные ссылки TurnOff().

◆ GetAlarmInMin()

int GetAlarmInMin ( )
protected
54 {
56
57 int pass, hour, minute;
58 GetGame().GetWorld().GetDate(pass, pass, pass, hour, minute);
59
62 return ring_in_mins;
63 }
enum EAlarmClockState m_AlarmTime01
static int GetTimeDiffInMins12h(int from_mins, int to_mins)
Definition ClockBase.c:88
static int ConvertAlarmHand01ToMins12h(float time01)
Definition ClockBase.c:65
static int ConvertTimeToMins12h(int hour, int minute)
Definition ClockBase.c:81
proto native CGame GetGame()

Перекрестные ссылки ConvertAlarmHand01ToMins12h(), ConvertTimeToMins12h(), GetGame(), GetTimeDiffInMins12h() и m_AlarmTime01.

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

◆ GetDestroyedSound()

string GetDestroyedSound ( )
protected
114 {
115 return "";
116 }

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

◆ GetHitSound()

string GetHitSound ( )
protected
110 {
111 return "";
112 }

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

◆ GetRingingDurationMax()

float GetRingingDurationMax ( )
protected
182 {
184 }
const float RINGING_DURATION_MAX
Definition ClockBase.c:25

Перекрестные ссылки RINGING_DURATION_MAX.

Используется в AlarmClock_ColorBase::GetDebugText() и AlarmClock_ColorBase::OnUpdate().

◆ GetRingingSound()

string GetRingingSound ( )
protected
106 {
107 return "";
108 }

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

◆ GetTimeDiffInMins12h()

static int GetTimeDiffInMins12h ( int from_mins,
int to_mins )
staticprotected
89 {
90 if (to_mins > from_mins)
91 {
92 return to_mins - from_mins;
93 }
94 else if (to_mins < from_mins)
95 {
96 return ((12 * 60) - from_mins) + to_mins;
97 }
98 else return 0;
99 }

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

◆ GetToggleSound()

string GetToggleSound ( )
protected
102 {
103 return "";
104 }

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

◆ GetWorkingSound()

string GetWorkingSound ( )
protected
118 {
119 return "";
120 }

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

◆ Init()

void Init ( )

Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside of a non-static system)

pre-init arrays

42 {
43 RegisterNetSyncVariableInt("m_State", 0, EAlarmClockState.COUNT - 1);
44 }

◆ IsAlarmOn()

bool IsAlarmOn ( )
protected
297 {
298 return (m_State == EAlarmClockState.SET);
299 }
int m_State
Definition ClockBase.c:13

Перекрестные ссылки m_State.

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

◆ IsRinging()

bool IsRinging ( )
protected
292 {
293 return (m_State == EAlarmClockState.RINGING);
294 }

Перекрестные ссылки m_State.

Используется в AlarmClock_ColorBase::OnUpdate(), KitchenTimer::OnUpdate() и TurnOff().

◆ MakeRingingStart()

void MakeRingingStart ( )
protected
224 {
225 if (!m_TimerUpdate)
227 SetState(EAlarmClockState.RINGING);
228
230 }
ref Timer m_TimerUpdate
Definition ClockBase.c:15
void OnRingingStartServer()
Definition ClockBase.c:149

Перекрестные ссылки m_TimerUpdate, OnRingingStartServer(), SetState() и SetupTimerServer().

Используется в AlarmClock_ColorBase::OnDebugSpawn(), AlarmClock_ColorBase::OnStoreLoad(), KitchenTimer::OnStoreLoad(), AlarmClock_ColorBase::OnUpdate() и KitchenTimer::OnUpdate().

◆ MakeRingingStop()

void MakeRingingStop ( )
protected
233 {
235
237 }
void OnRingingStopServer()

Перекрестные ссылки OnRingingStopServer() и SetState().

Используется в KitchenTimer::OnUpdate() и TurnOff().

◆ OnDamageDestroyed()

override void OnDamageDestroyed ( int oldLevel)
protected
135 {
136 super.OnDamageDestroyed(oldLevel);
137
138 if (GetGame().IsClient())
139 {
141
142 if (oldLevel != -1)
143 {
144 PlaySoundSet(m_DestoryedSound, GetDestroyedSound(), 0, 0);
145 }
146 }
147 }
void OnRingingStopClient()
Definition ClockBase.c:166
EffectSound m_DestoryedSound
Definition ClockBase.c:21
string GetDestroyedSound()
Definition ClockBase.c:113

Перекрестные ссылки GetDestroyedSound(), GetGame(), m_DestoryedSound и OnRingingStopClient().

◆ OnRingingStartClient()

void OnRingingStartClient ( )
protected
155 {
156 PlaySoundSetLoop( m_RingingSoundLoop, GetRingingSound(), 0, 0 );
157
158 if (m_WorkingSound)
159 {
161 }
162 }
EffectSound m_WorkingSound
Definition ClockBase.c:23
string GetRingingSound()
Definition ClockBase.c:105
EffectSound m_RingingSoundLoop
Definition ClockBase.c:19
Manager class for managing Effect (EffectParticle, EffectSound)
Definition EffectManager.c:6
static void DestroyEffect(Effect effect)
Unregisters, stops and frees the Effect.
Definition EffectManager.c:267

Перекрестные ссылки SEffectManager::DestroyEffect(), GetRingingSound(), m_RingingSoundLoop и m_WorkingSound.

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

◆ OnRingingStartServer()

void OnRingingStartServer ( )
protected
150 {
152 }
void ActivateParent()
Definition ClockBase.c:211

Перекрестные ссылки ActivateParent().

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

◆ OnRingingStopClient()

void OnRingingStopClient ( )
protected

◆ OnRingingStopServer()

void OnRingingStopServer ( )
protected

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

◆ OnVariablesSynchronized()

override void OnVariablesSynchronized ( )
protected
244 {
245 super.OnVariablesSynchronized();
246
247 if (m_State != m_StatePrev)//state changed
248 {
249 if (m_StatePrev == EAlarmClockState.RINGING)
250 {
252 }
253 else if (m_State == EAlarmClockState.RINGING)
254 {
256 }
257 if (m_State == EAlarmClockState.SET)
258 {
259 if (m_StatePrev != -1 || IsInitialized())
260 {
261 PlaySoundSet( m_TurnOnSound, GetToggleSound(), 0, 0 );
262 }
263 if (GetWorkingSound())
264 {
265 PlaySoundSet( m_WorkingSound, GetWorkingSound(), 0, 0, true );
266 }
267 }
268 else if (m_State == EAlarmClockState.UNSET)
269 {
270 if (m_StatePrev == EAlarmClockState.SET)
271 {
272 if (m_WorkingSound)
273 {
275 }
276 if (m_StatePrev != -1 || IsInitialized())
277 {
278 PlaySoundSet( m_TurnOnSound, GetToggleSound(), 0, 0 );
279 }
280 }
281 }
283 }
284 }
int m_StatePrev
Definition ClockBase.c:17
string GetToggleSound()
Definition ClockBase.c:101
EffectSound m_TurnOnSound
Definition ClockBase.c:20
void OnRingingStartClient()
Definition ClockBase.c:154
string GetWorkingSound()
Definition ClockBase.c:117
override bool IsInitialized()
Definition CombinationLock.c:70

Перекрестные ссылки SEffectManager::DestroyEffect(), GetToggleSound(), GetWorkingSound(), IsInitialized(), m_State, m_StatePrev, m_TurnOnSound, m_WorkingSound, OnRingingStartClient() и OnRingingStopClient().

◆ SetActions()

override void SetActions ( )
47 {
48 super.SetActions();
49
51 }
ActionAttachExplosivesTriggerCB ActionContinuousBaseCB ActionAttachExplosivesTrigger()
Definition ActionAttachExplosivesTrigger.c:11
void AddAction(typename actionName)
Definition AdvancedCommunication.c:220

Перекрестные ссылки ActionAttachExplosivesTrigger() и AddAction().

◆ SetAlarmInXMins()

void SetAlarmInXMins ( int in_mins)
protected
172 {
173 int pass, hour, minute;
174 GetGame().GetWorld().GetDate(pass, pass, pass, hour, minute);
178 Arm();
179 }
static float ConvertMins12hToAlarmHand01(int mins)
Definition ClockBase.c:75
void Arm()
Definition ClockBase.c:204
void SetAlarmTimeServer(float time01)
Definition ClockBase.c:320

Перекрестные ссылки Arm(), ConvertMins12hToAlarmHand01(), ConvertTimeToMins12h(), GetGame() и SetAlarmTimeServer().

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

◆ SetAlarmTimeServer()

void SetAlarmTimeServer ( float time01)
protected
321 {
322 SetAnimationPhaseNow("ClockAlarm", time01);
324 }

Перекрестные ссылки m_AlarmTime01.

Используется в AlarmClock_ColorBase::OnStoreLoad() и SetAlarmInXMins().

◆ SetState()

void SetState ( EAlarmClockState state)
protected
194 {
195 m_State = state;
196 SetSynchDirty();
197 }

Перекрестные ссылки m_State.

◆ SetupTimerServer()

void SetupTimerServer ( )
protected
188 {
189 m_TimerUpdate = new Timer();
190 m_TimerUpdate.Run(UPDATE_TICK_RATE , this, "OnUpdate", null, true);
191 }
static const float UPDATE_TICK_RATE
Definition ClockBase.c:14
Definition DayZPlayerImplement.c:63

Перекрестные ссылки m_TimerUpdate и UPDATE_TICK_RATE.

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

◆ TurnOff()

void TurnOff ( )
protected
307 {
308 if ( IsRinging() )
309 {
311 }
312 else
313 {
314 Disarm();
315 }
316
318 }
bool IsRinging()
Definition ClockBase.c:291
void Disarm()
Definition ClockBase.c:199
void MakeRingingStop()
Definition ClockBase.c:232

Перекрестные ссылки Disarm(), IsRinging(), m_TimerUpdate и MakeRingingStop().

Используется в EEKilled() и AlarmClock_ColorBase::OnUpdate().

◆ TurnOffClient()

void TurnOffClient ( )
protected

◆ TurnOn()

void TurnOn ( )
protected
302 {
303 Arm();
304 }

Перекрестные ссылки Arm().

Используется в AlarmClock_ColorBase::OnDebugSpawn(), AlarmClock_ColorBase::OnStoreLoad() и KitchenTimer::SetAlarmTimeServer().

◆ TurnOnClient()

void TurnOnClient ( )
protected

◆ ~ClockBase()

Переменные

◆ m_AlarmTime01

◆ m_DestoryedSound

EffectSound m_DestoryedSound

Используется в OnDamageDestroyed() и ~ClockBase().

◆ m_HitSound

EffectSound m_HitSound

Используется в EEHitByRemote() и ~ClockBase().

◆ m_RingingDuration

◆ m_RingingSoundLoop

◆ m_State

◆ m_StatePrev

int m_StatePrev = -1

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

◆ m_TimerUpdate

ref Timer m_TimerUpdate

◆ m_TurnOnSound

EffectSound m_TurnOnSound

Используется в OnVariablesSynchronized() и ~ClockBase().

◆ m_WorkingSound

◆ RINGING_DURATION_MAX

const float RINGING_DURATION_MAX = 60

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

◆ UPDATE_TICK_RATE

const float UPDATE_TICK_RATE = 1
static