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

◆ CarScript()

void Car::CarScript ( )
inlineprotected

См. определение в файле CarScript.c строка 308

309 {
310#ifdef DIAG_DEVELOPER
311 _car = this;
312#endif
313
314 SetEventMask(EntityEvent.POSTSIMULATE);
315 SetEventMask(EntityEvent.POSTFRAME);
316
317 m_ContactCache = new CarContactCache;
318
319 m_Time = 0;
320 // sets max health for all components at init
321 m_EngineHealth = 1;
323 m_RadiatorHealth = -1;
324 m_BatteryHealth = -1;
325 m_PlugHealth = -1;
326
327 m_enginePtcFx = -1;
328 m_coolantPtcFx = -1;
329 m_exhaustPtcFx = -1;
330
332
333 m_PlayCrashSoundLight = false;
334 m_PlayCrashSoundHeavy = false;
335
336 m_CarHornState = ECarHornState.OFF;
337 m_CarEngineSoundState = CarEngineSoundState.NONE;
338
339 RegisterNetSyncVariableBool("m_HeadlightsOn");
340 RegisterNetSyncVariableBool("m_BrakesArePressed");
341 RegisterNetSyncVariableBool("m_ForceUpdateLights");
342 RegisterNetSyncVariableBoolSignal("m_PlayCrashSoundLight");
343 RegisterNetSyncVariableBoolSignal("m_PlayCrashSoundHeavy");
344 RegisterNetSyncVariableInt("m_CarHornState", ECarHornState.OFF, ECarHornState.LONG);
345 RegisterNetSyncVariableInt("m_CarEngineSoundState", CarEngineSoundState.NONE, CarEngineSoundState.STOP_NO_FUEL);
346
347 if ( MemoryPointExists("ptcExhaust_end") )
348 {
349 m_exhaustPtcPos = GetMemoryPointPos("ptcExhaust_end");
350 if ( MemoryPointExists("ptcExhaust_start") )
351 {
352 vector exhaustStart = GetMemoryPointPos("ptcExhaust_start");
353 vector tempOri = vector.Direction( exhaustStart, m_exhaustPtcPos);
354
355 m_exhaustPtcDir[0] = -tempOri[2];
356 m_exhaustPtcDir[1] = tempOri[1];
357 m_exhaustPtcDir[2] = tempOri[0];
358
359 m_exhaustPtcDir = m_exhaustPtcDir.Normalized().VectorToAngles();
360 }
361 }
362 else
363 {
364 m_exhaustPtcPos = "0 0 0";
365 m_exhaustPtcDir = "1 1 1";
366 }
367
368 if ( MemoryPointExists("ptcEnginePos") )
369 m_enginePtcPos = GetMemoryPointPos("ptcEnginePos");
370 else
371 m_enginePtcPos = "0 0 0";
372
373 if ( MemoryPointExists("ptcCoolantPos") )
374 m_coolantPtcPos = GetMemoryPointPos("ptcCoolantPos");
375 else
376 m_coolantPtcPos = "0 0 0";
377
378 if ( MemoryPointExists("drown_engine") )
379 m_DrownEnginePos = GetMemoryPointPos("drown_engine");
380 else
381 m_DrownEnginePos = "0 0 0";
382
383 if ( MemoryPointExists("dmgZone_engine") )
384 m_enginePos = GetMemoryPointPos("dmgZone_engine");
385 else
386 m_enginePos = "0 0 0";
387
388 if ( MemoryPointExists("dmgZone_front") )
389 m_frontPos = GetMemoryPointPos("dmgZone_front");
390 else
391 m_frontPos = "0 0 0";
392
393 if ( MemoryPointExists("dmgZone_back") )
394 m_backPos = GetMemoryPointPos("dmgZone_back");
395 else
396 m_backPos = "0 0 0";
397
398 if ( MemoryPointExists("dmgZone_fender_1_1") )
399 m_side_1_1Pos = GetMemoryPointPos("dmgZone_fender_1_1");
400 else
401 m_side_1_1Pos = "0 0 0";
402
403 if ( MemoryPointExists("dmgZone_fender_1_2") )
404 m_side_1_2Pos = GetMemoryPointPos("dmgZone_fender_1_2");
405 else
406 m_side_1_2Pos = "0 0 0";
407
408 if ( MemoryPointExists("dmgZone_fender_2_1") )
409 m_side_2_1Pos = GetMemoryPointPos("dmgZone_fender_2_1");
410 else
411 m_side_2_1Pos = "0 0 0";
412
413 if ( MemoryPointExists("dmgZone_fender_2_2") )
414 m_side_2_2Pos = GetMemoryPointPos("dmgZone_fender_2_2");
415 else
416 m_side_2_2Pos = "0 0 0";
417
418 if (!GetGame().IsDedicatedServer())
419 {
420 m_WheelSmokeFx = new array<ref EffWheelSmoke>;
421 m_WheelSmokeFx.Resize(WheelCount());
422 m_WheelSmokePtcFx = new array<int>;
423 m_WheelSmokePtcFx.Resize(WheelCount());
424 for (int i = 0; i < m_WheelSmokePtcFx.Count(); i++)
425 {
426 m_WheelSmokePtcFx.Set(i, -1);
427 }
428 }
429 }
int m_CarHornState
Определения CarScript.c:271
vector m_side_2_2Pos
Определения CarScript.c:231
int m_CarEngineSoundState
Определения CarScript.c:299
vector m_exhaustPtcDir
Определения CarScript.c:221
vector m_coolantPtcPos
Определения CarScript.c:223
float m_EnviroHeatComfortOverride
Определения CarScript.c:190
vector m_side_1_1Pos
Определения CarScript.c:228
vector m_side_1_2Pos
Определения CarScript.c:229
vector m_enginePos
Определения CarScript.c:225
float m_PlugHealth
Определения CarScript.c:201
vector m_enginePtcPos
Определения CarScript.c:222
vector m_side_2_1Pos
Определения CarScript.c:230
vector m_frontPos
Определения CarScript.c:226
float m_Time
Определения CarScript.c:174
float m_EngineHealth
Определения CarScript.c:197
vector m_exhaustPtcPos
Определения CarScript.c:220
float m_RadiatorHealth
Определения CarScript.c:198
float m_FuelTankHealth
Определения CarScript.c:199
int m_exhaustPtcFx
Определения CarScript.c:218
static vector m_DrownEnginePos
Определения CarScript.c:194
vector m_backPos
Определения CarScript.c:227
bool m_PlayCrashSoundLight
Определения CarScript.c:259
ref array< int > m_WheelSmokePtcFx
Определения CarScript.c:297
ref CarContactCache m_ContactCache
Определения CarScript.c:172
float m_BatteryHealth
Определения CarScript.c:200
int m_coolantPtcFx
Определения CarScript.c:217
ref array< ref EffWheelSmoke > m_WheelSmokeFx
Определения CarScript.c:296
int m_enginePtcFx
Определения CarScript.c:216
bool m_PlayCrashSoundHeavy
Определения CarScript.c:260
proto native CGame GetGame()
EntityEvent
Entity events for event-mask, or throwing event from code.
Определения EnEntity.c:45

Перекрестные ссылки vector::Direction(), GetGame(), m_backPos, m_BatteryHealth, m_CarEngineSoundState, m_CarHornState, m_ContactCache, m_coolantPtcFx, m_coolantPtcPos, m_DrownEnginePos, m_EngineHealth, m_enginePos, m_enginePtcFx, m_enginePtcPos, m_EnviroHeatComfortOverride, m_exhaustPtcDir, m_exhaustPtcFx, m_exhaustPtcPos, m_frontPos, m_FuelTankHealth, m_PlayCrashSoundHeavy, m_PlayCrashSoundLight, m_PlugHealth, m_RadiatorHealth, m_side_1_1Pos, m_side_1_2Pos, m_side_2_1Pos, m_side_2_2Pos, m_Time, m_WheelSmokeFx и m_WheelSmokePtcFx.