DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
DayZPlayerCameraIronsights.c
См. документацию.
1
3class DayZPlayerCameraIronsights extends DayZPlayerCameraBase
4{
5 static const float CONST_UD_MIN = -85.0;
6 static const float CONST_UD_MAX = 85.0;
7 static const float CONST_UD_MIN_BACK = -25.0;
8
9 static const float CONST_LR_MIN = -160.0;
10 static const float CONST_LR_MAX = 160.0;
11
12 protected bool m_isEntering = false;
13 protected bool m_opticsHasWeaponOverride = false;
14 protected ref array<float> temp_array; //DOF only
15
16 protected PPERequester_CameraADS m_RequesterADS;
17
19 float m_velocityYaw[1];
24
30
31
33 {
34 if (!temp_array)
36 m_iBoneIndex = pPlayer.GetBoneIndexByName("RightHand_Dummy");
37
38 if (m_iBoneIndex == -1)
39 {
40 Print("DayZPlayerCamera1stPerson: main bone not found");
41 }
42
45
48 m_isEntering = true;
50
56
57 Class.CastTo(m_RequesterADS,PPERequester_CameraADS.Cast(PPERequesterBank.GetRequester(PPERequester_CameraADS)));
58
59 Init();
60 }
61
63 {
64 EntityAI inHands = m_pPlayer.GetHumanInventory().GetEntityInHands();
65 if (inHands)
66 {
67 m_weaponUsed = Weapon_Base.Cast(inHands);
68 if( m_weaponUsed )
69 {
70 m_SightMisalignmentModifier = m_weaponUsed.GetPropertyModifierObject().m_SightMisalignment;
73 m_opticsUsed = m_weaponUsed.GetAttachedOptics();
74 if( m_opticsUsed )
75 {
76 m_opticsHasWeaponOverride = m_opticsUsed.HasWeaponIronsightsOverride();
77 }
78 }
79 else
80 {
81 m_opticsUsed = ItemOptics.Cast(inHands);
82 }
83 }
84 }
85
86 //
87 override void OnActivate (DayZPlayerCamera pPrevCamera, DayZPlayerCameraResult pPrevCameraResult)
88 {
89 super.OnActivate(pPrevCamera, pPrevCameraResult);
90
91 if (pPrevCamera)
92 {
93 vector baseAngles = pPrevCamera.GetBaseAngles();
94 m_fUpDownAngle = baseAngles[0];
95 m_fLeftRightAngle = baseAngles[1];
96
97 vector addAngles = pPrevCamera.GetAdditiveAngles();
98 m_fUpDownAngleAdd = addAngles[0];
99 m_fLeftRightAngleAdd = addAngles[1];
100 }
101 }
102
104 {
106 return m_opticsUsed;
107
108 return m_weaponUsed;
109 }
110
111 bool GetCurrentSightInfo (out vector camPos, out vector camDir)
112 {
114 if (e)
115 {
116 if (e == m_weaponUsed)
117 {
118 m_weaponUsed.GetCameraPoint(m_weaponUsed.GetCurrentMuzzle(), camPos, camDir);
119 return true;
120 }
121 else if (e == m_opticsUsed)
122 {
123 m_opticsUsed.UseWeaponIronsightsOverride(m_opticsHasWeaponOverride);
124 m_opticsUsed.GetCameraPoint(camPos, camDir);
125 return true;
126 }
127 }
128 else
129 {
130 ErrorEx("No sight entity found in " + this,ErrorExSeverity.INFO);
131 }
132 return false;
133 }
134
135 //
136 override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
137 {
139 float min;
141 if (player && player.IsPlayerInStance(DayZPlayerConstants.STANCEMASK_RAISEDPRONE))
142 min = CONST_UD_MIN_BACK;
143 else
144 min = CONST_UD_MIN;
145
148
149 // get model space transform matrix of the gun's eye vector
150 vector matTM[4];
151 HumanItemAccessor hia = m_pPlayer.GetItemAccessor();
153 hia.WeaponGetCameraPointBoneRelative(GetCurrentSightEntity(), m_OpticsCamPos, m_OpticsCamDir, m_iBoneIndex, matTM);
154
155 // aim change based on character movement
156 vector aimChangeYPR;
157 float aimChangeX = m_pInput.GetAimDelta(pDt)[0] * Math.RAD2DEG;
158 float aimChangeY = m_pInput.GetAimDelta(pDt)[1] * Math.RAD2DEG;
159
160 HumanCommandMove hcm = m_pPlayer.GetCommand_Move();
161 if (hcm)
162 {
163 float speed = hcm.GetCurrentMovementSpeed();
164
165 if( speed > 0 )
166 m_movementTimeAcc += pDt;
167 else
169
172 }
173
174 aimChangeYPR[0] = Math.SmoothCD(aimChangeYPR[0], -(m_dynamicsStrength * aimChangeY), m_velocityYaw, m_dynamicsSmoothTime, 1000, pDt);
175 aimChangeYPR[1] = Math.SmoothCD(aimChangeYPR[1], -(m_dynamicsStrength * aimChangeX), m_velocityPitch, m_dynamicsSmoothTime, 1000, pDt);
176 aimChangeYPR[2] = 0;
177
178 vector dynamics[4];
179 Math3D.YawPitchRollMatrix(aimChangeYPR, dynamics);
180 dynamics[3] = vector.Zero;
181
182 // aiming model offsets
183 vector aimingMatTM[4];
184 hia.WeaponGetAimingModelDirTm(aimingMatTM);
185
186 // final offset matrix
187 Math3D.MatrixMultiply4(dynamics, aimingMatTM, dynamics);
188 Math3D.MatrixMultiply4(dynamics, matTM, pOutResult.m_CameraTM);
189
190 AdjustCameraParameters(pDt, pOutResult);
193
194 if(m_CameraShake)
195 {
196 float x,y;
197 m_CameraShake.Update(pDt, x, y);
198 DayZPlayerImplement.Cast(m_pPlayer).GetAimingModel().SetCamShakeValues(x, y);
199 }
200 }
201
203 {
204 vector a;
205 a[0] = m_fUpDownAngle;
206 a[1] = m_fLeftRightAngle;
207 a[2] = 0;
208 return a;
209 }
210
212 {
213 vector a;
214 a[0] = m_fUpDownAngleAdd;
216 a[2] = 0;
217 return a;
218 }
219
220 void AdjustCameraParameters(float pDt, inout DayZPlayerCameraResult pOutResult)
221 {
222 pOutResult.m_iDirectBone = m_iBoneIndex;
223 pOutResult.m_iDirectBoneMode = 4;
224
225 pOutResult.m_fFovAbsolute = HoldBreathFOVEffect(pDt);
226
227 pOutResult.m_bUpdateWhenBlendOut = false;
228 pOutResult.m_fDistance = 0;
229 pOutResult.m_fUseHeading = 0;
230 pOutResult.m_fInsideCamera = 1.0;
231 pOutResult.m_fShootFromCamera = m_fShootFromCamera;
232
233 pOutResult.m_fNearPlane = 0.04; //0.07 default
234 }
235
236 float HoldBreathFOVEffect(float pDt)
237 {
238 if (m_pPlayer.IsHoldingBreath())
239 {
241 }
242 else if (m_isEntering) //sets FOV immediatelly to avoid "floating camera" effect
243 {
245 m_isEntering = false;
246 }
247 else
248 {
250 }
251
252 return m_fFovAbsolute;
253 }
254
255 // sets PP for ironsights and optics (override) cameras
256 override void SetCameraPP(bool state, DayZPlayerCamera launchedFrom)
257 {
258 //Print("SetCameraPP - ADS");
259 if (PlayerBase.Cast(m_pPlayer) && launchedFrom.Type() != PlayerBase.Cast(m_pPlayer).GetCurrentPlayerCamera().Type())
260 {
261 //Print("DayZPlayerCameraIronsights | SetCameraPP | skipping, wrong camera type active!");
262 return;
263 }
264
265 //if (!state || !m_weaponUsed || (PlayerBase.Cast(m_pPlayer) && launchedFrom != PlayerBase.Cast(m_pPlayer).GetCurrentPlayerCamera()))
266 if (!state || !m_weaponUsed)
267 {
268 m_RequesterADS.Stop();
269
270 if (IsCameraNV())
271 {
273 }
274 else
275 {
277 }
278 }
279 else
280 {
281 temp_array = {false, 0.0, 0.0, 0.0, 0.0, 1.0};
282
283 if (m_weaponUsed.GetWeaponDOF() || (m_opticsUsed && m_opticsUsed.GetOpticsDOF()))
284 {
285 if (m_opticsUsed && m_opticsUsed.GetOpticsDOF().Count() == 6)
286 {
287 temp_array = m_opticsUsed.GetOpticsDOF();
288 }
289 else
290 {
291 temp_array = m_weaponUsed.GetWeaponDOF();
292 }
293 if (temp_array.Count() != 6)
294 temp_array = {false, 0.0, 0.0, 0.0, 0.0, 1.0};
295 }
296
297 m_RequesterADS.SetValuesIronsights(temp_array); //DOF only
298
299 if (IsCameraNV())
300 {
302 }
303 else
304 {
306 }
307 }
308
309 if (m_weaponUsed)
310 {
311 m_weaponUsed.HideWeaponBarrel(false);
312 }
313 }
314
315 override string GetCameraName()
316 {
317 return "DayZPlayerCameraIronsights";
318 }
319
320 override void SetCameraPPDelay(DayZPlayerCamera pPrevCamera)
321 {
322 if (pPrevCamera.GetCameraName() == "DayZPlayerCamera1stPerson")
323 {
324 //Print("---ironsights---DayZPlayerCamera1stPerson");
326 }
327 else if (pPrevCamera.GetCameraName() == "DayZPlayerCameraOptics")
328 {
329 m_CameraPPDelay = 0;
330 }
331 else
332 {
333 //Print("---ironsights---else");
335 }
336 }
337
339 {
340 ItemOptics optics = ItemOptics.Cast(entity);
341 if (optics)
343 }
344
346 protected float m_fShootFromCamera = 0.0;
347
349 protected int m_iBoneIndex;
352
353 protected float m_fUpDownAngle;
354 protected float m_fUpDownAngleAdd;
355 protected float m_fLeftRightAngle;
356 protected float m_fLeftRightAngleAdd;
357
358}
359
360class DayZPlayerCameraOptics : DayZPlayerCameraIronsights
361{
362 static const float CONST_NEARPLANE_OPTICS = 0.06; //Default near plane value for this camera
363 protected float m_RecoilOffsetZ = 0.0;
364
366 {
367 if (!temp_array)
368 temp_array = new array<float>;
370 }
371
372 override void Init()
373 {
374 if (m_opticsUsed && m_opticsUsed.IsNVOptic() && m_opticsUsed.IsWorking())
375 {
376 SetCameraNV(true);
377 }
378 else
379 {
380 SetCameraNV(false);
381 }
382 }
383
385 {
386 return m_opticsUsed;
387 }
388
389 override bool GetCurrentSightInfo (out vector camPos, out vector camDir)
390 {
391 if (m_opticsUsed)
392 {
393 m_opticsUsed.UseWeaponIronsightsOverride(false);
394 m_opticsUsed.GetCameraPoint(camPos, camDir);
395 return true;
396 }
397 return false;
398 }
399
400 override void OnActivate (DayZPlayerCamera pPrevCamera, DayZPlayerCameraResult pPrevCameraResult)
401 {
402 super.OnActivate(pPrevCamera,pPrevCameraResult);
403
404 PlayerBase player = PlayerBase.Cast(m_pPlayer);
405 if (player && m_opticsUsed)
406 {
407 GetGame().GetCallQueue(CALL_CATEGORY_GUI).CallLater(player.HideClothing,m_CameraPPDelay*1000,false,m_opticsUsed,true);
408 }
409 }
410
411 override void AdjustCameraParameters(float pDt, inout DayZPlayerCameraResult pOutResult)
412 {
413 pOutResult.m_iDirectBone = m_iBoneIndex;
414 pOutResult.m_iDirectBoneMode = 4;
415
416 pOutResult.m_fFovAbsolute = HoldBreathFOVEffect(pDt);
417
418 pOutResult.m_bUpdateWhenBlendOut = false;
419 pOutResult.m_fDistance = 0;
420 pOutResult.m_fUseHeading = 0;
421 pOutResult.m_fInsideCamera = 1.0;
422 pOutResult.m_fShootFromCamera = m_fShootFromCamera;
423
424 if (!m_opticsUsed)
425 pOutResult.m_fNearPlane = Math.Clamp(CONST_NEARPLANE_OPTICS - m_RecoilOffsetZ, CONST_NEARPLANE_OPTICS, 10.0);
426 else
427 pOutResult.m_fNearPlane = Math.Clamp(m_opticsUsed.GetNearPlaneValue() - m_RecoilOffsetZ, CONST_NEARPLANE_OPTICS, 10.0); //some sufficiently nonsensical max
428 }
429
430 override float HoldBreathFOVEffect(float pDt)
431 {
432 //hotfix; two cameras exist and update simultaneously during transition, even if optics/weapons is no longer present!
433 /*PlayerBase player = PlayerBase.Cast(m_pPlayer);
434 if (player && player.GetCurrentCamera() != this)
435 return 0.6;*/
436
438 if (optics)
439 {
440 if (optics.GetCurrentStepFOV() >= GameConstants.DZPLAYER_CAMERA_FOV_EYEZOOM && (m_pPlayer.IsHoldingBreath() || m_pPlayer.GetEyeZoomLevel()))
441 {
443 }
444 else if (m_isEntering) //sets FOV immediatelly to avoid "floating camera" effect
445 {
447 m_isEntering = false;
448 }
449 else
450 {
452 //m_fFovAbsolute = optics.GetCurrentStepFOV();
453 }
454 return m_fFovAbsolute;
455 }
456 else
457 {
458 //Error("optic camera, but there is no optic item or optic on weapon"); //camera update ticks on transitions as well, caused problems
459 return 0.6; //TODO figure some other way to get original FOV here!
460 }
461 }
462
463 override void SetCameraPP(bool state,DayZPlayerCamera launchedFrom)
464 {
465 //Print("SetCameraPP - optics");
466 if (PlayerBase.Cast(m_pPlayer) && launchedFrom.Type() != PlayerBase.Cast(m_pPlayer).GetCurrentPlayerCamera().Type())
467 {
468 //Print("DayZPlayerCameraOptics | SetCameraPP | skipping, wrong camera type active!");
469 return;
470 }
471
472 if (!state || !m_opticsUsed)
473 {
474 m_RequesterADS.Stop();
475
476 if (IsCameraNV())
477 {
479 }
480 else
481 {
483 }
484
485 if (m_weaponUsed)
486 {
487 m_weaponUsed.HideWeaponBarrel(false);
488 }
489 }
490 else
491 {
492 array<float> lens_values = new array<float>;
493 array<float> mask_values = new array<float>;
494 float gauss = 0.0;
495 temp_array = {false, 0.0, 0.0, 0.0, 0.0, 1.0};
496
497 // 1x scopes only
498 if (m_opticsUsed.AllowsDOF() && !NVGoggles.Cast(m_opticsUsed))
499 {
500 if (m_weaponUsed)
501 {
502 if (m_opticsUsed.GetOpticsDOF().Count() == 6)
503 {
504 temp_array = m_opticsUsed.GetOpticsDOF();
505 }
506 else
507 {
508 temp_array = m_weaponUsed.GetWeaponDOF(); //TODO should some optics have own DOF settings (different eye point)?
509 }
510
511 if (temp_array.Count() != 6)
512 temp_array = {false, 0.0, 0.0, 0.0, 0.0, 1.0};
513 }
514
515 m_RequesterADS.SetValuesIronsights(temp_array); //DOF only
516
517 // optics NV mode
518 if (m_opticsUsed.IsNVOptic())
519 {
520 SetCameraNV(true);
521 SetNVPostprocess(m_opticsUsed.GetCurrentNVType());
522 }
523 else
524 {
525 if (IsCameraNV())
526 {
528 }
529 else
530 {
532 }
533 }
534 }
535 else //magnifying scopes
536 {
537 // optics mask
538 if (m_opticsUsed.GetOpticsPPMask() && m_opticsUsed.GetOpticsPPMask().Count() == 4)
539 {
540 mask_values = m_opticsUsed.GetOpticsPPMask();
541 }
542
543 //optics lens
544 if (m_opticsUsed.GetOpticsPPLens() && m_opticsUsed.GetOpticsPPLens().Count() == 4)
545 {
546 lens_values = m_opticsUsed.GetOpticsPPLens();
547 }
548
549 //optics blur
550 if (m_opticsUsed.GetOpticsPPBlur() != 0)
551 {
552 gauss = m_opticsUsed.GetOpticsPPBlur();
553 }
554
555 m_RequesterADS.SetValuesOptics(mask_values,lens_values,gauss);
556
557 // optics NV mode
558 if (m_opticsUsed.IsNVOptic())
559 {
560 SetCameraNV(true);
561 SetNVPostprocess(m_opticsUsed.GetCurrentNVType());
562 }
563 else
564 {
565 SetNVPostprocess(NVTypes.NONE); //magnifying optics do not combine with other NV sources (would render NV optics obsolete)
566 }
567 }
568
569 if (m_weaponUsed)
570 {
571 m_weaponUsed.HideWeaponBarrel(true);
572 }
573 }
574 }
575
576 override string GetCameraName()
577 {
578 return "DayZPlayerCameraOptics";
579 }
580
581 override void SetCameraPPDelay(DayZPlayerCamera pPrevCamera)
582 {
583 if (pPrevCamera.GetCameraName() == "DayZPlayerCameraIronsights")
584 {
586 }
587 else if (pPrevCamera.GetCameraName() == "DayZPlayerCamera1stPerson")
588 {
589 m_CameraPPDelay = DayZPlayerCameras.TIME_CAMERACHANGE_02 - 0.05; //changed to accomodate handheld optics, had to be changed here also
590 }
591 else if (!pPrevCamera.IsCamera3rdRaised())
592 {
594 }
595 else
596 {
598 }
599 }
600
601 override void SendRecoilOffsetZ(float offset)
602 {
603 m_RecoilOffsetZ = offset;
604 }
605};
606
override Widget Init()
Определения DayZGame.c:127
int m_iBoneIndex
main bone
Определения DayZPlayerCamera1stPerson.c:189
static const float CONST_UD_MAX
up limit
Определения DayZPlayerCamera1stPerson.c:106
static const float CONST_UD_MIN
down limit
Определения DayZPlayerCamera1stPerson.c:105
float UpdateLRAngleUnlocked(out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt)
Определения DayZPlayerCamera_Base.c:190
ref CameraShake m_CameraShake
Определения DayZPlayerCamera_Base.c:75
float m_CurrentCameraYaw
Определения DayZPlayerCamera_Base.c:578
float m_CurrentCameraPitch
Определения DayZPlayerCamera_Base.c:579
float UpdateUDAngleUnlocked(out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt)
Определения DayZPlayerCamera_Base.c:129
Weapon_Base m_weaponUsed
Определения DayZPlayerCamera_Base.c:73
NVTypes
Определения DayZPlayerCamera_Base.c:55
bool IsCameraNV()
Определения DayZPlayerCamera_Base.c:406
float m_CameraPPDelay
Определения DayZPlayerCamera_Base.c:576
void SetNVPostprocess(int NVtype)
DayZPlayerCameraOptics handles this separately, otherwise it takes active NVType from PlayerBase::Get...
Определения DayZPlayerCamera_Base.c:477
void SetCameraPP(bool state, DayZPlayerCamera launchedFrom)
by default sets camera PP to zero, regardless of parameter. Override if needed.
Определения DayZPlayerCamera_Base.c:435
void SetCameraNV(bool nightvision)
Определения DayZPlayerCamera_Base.c:401
float m_WeaponSwayModifier
Определения DayZPlayerCamera_Base.c:575
void UpdateCameraNV(PlayerBase player)
Определения DayZPlayerCamera_Base.c:421
float m_fFovAbsVel[1]
Определения DayZPlayerCamera_Base.c:572
int GetCameraNVType()
Определения DayZPlayerCamera_Base.c:416
ItemOptics m_opticsUsed
Определения DayZPlayerCamera_Base.c:74
void SetCameraPPDelay(DayZPlayerCamera pPrevCamera)
Определения DayZPlayerCamera_Base.c:397
void DayZPlayerCameraOptics(DayZPlayer pPlayer, HumanInputController pInput)
Определения DayZPlayerCameraIronsights.c:365
override bool GetCurrentSightInfo(out vector camPos, out vector camDir)
Определения DayZPlayerCameraIronsights.c:389
override float HoldBreathFOVEffect(float pDt)
Определения DayZPlayerCameraIronsights.c:430
override EntityAI GetCurrentSightEntity()
Определения DayZPlayerCameraIronsights.c:384
override void Init()
Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside o...
Определения DayZPlayerCameraIronsights.c:372
override void AdjustCameraParameters(float pDt, inout DayZPlayerCameraResult pOutResult)
Определения DayZPlayerCameraIronsights.c:411
float m_RecoilOffsetZ
Определения DayZPlayerCameraIronsights.c:363
class DayZPlayerCameraIronsights extends DayZPlayerCameraBase CONST_NEARPLANE_OPTICS
Icon x
Icon y
PlayerBase GetPlayer()
Определения ModifierBase.c:51
void OnActivate()
Определения Trap_LandMine.c:67
override ScriptCallQueue GetCallQueue(int call_category)
Определения DayZGame.c:1187
Super root of all classes in Enforce script.
Определения EnScript.c:11
EntityAI GetCurrentSightEntity()
Определения DayZPlayerCameraIronsights.c:103
void SetupSightEntities()
Определения DayZPlayerCameraIronsights.c:62
float m_movementFrequencyY
Определения DayZPlayerCameraIronsights.c:29
float m_fLeftRightAngleAdd
left right angle in rad (in freelook only)
Определения DayZPlayerCamera1stPerson.c:96
override void SetCameraPP(bool state, DayZPlayerCamera launchedFrom)
Определения DayZPlayerCameraIronsights.c:256
override void SetCameraPPDelay(DayZPlayerCamera pPrevCamera)
Определения DayZPlayerCameraIronsights.c:320
float m_movementFrequencyX
Определения DayZPlayerCameraIronsights.c:28
override vector GetAdditiveAngles()
Определения DayZPlayerCameraIronsights.c:211
float m_dynamicsSmoothTime
Определения DayZPlayerCameraIronsights.c:22
float m_movementAmplitudeY
Определения DayZPlayerCameraIronsights.c:27
ref array< float > temp_array
Определения DayZPlayerCameraIronsights.c:14
float m_fShootFromCamera
settings
Определения DayZPlayerCameraIronsights.c:346
static const float CONST_UD_MIN_BACK
down limit on back
Определения DayZPlayerCameraIronsights.c:7
PPERequester_CameraADS m_RequesterADS
Определения DayZPlayerCameraIronsights.c:16
override vector GetBaseAngles()
Определения DayZPlayerCameraIronsights.c:202
float m_movementAmplitudeX
Определения DayZPlayerCameraIronsights.c:26
override void OnActivate(DayZPlayerCamera pPrevCamera, DayZPlayerCameraResult pPrevCameraResult)
Определения DayZPlayerCameraIronsights.c:87
override string GetCameraName()
Определения DayZPlayerCameraIronsights.c:315
int m_iBoneIndex
main bone
Определения DayZPlayerCamera1stPerson.c:90
void AdjustCameraParameters(float pDt, inout DayZPlayerCameraResult pOutResult)
Определения DayZPlayerCameraIronsights.c:220
static const float CONST_LR_MIN
down limit
Определения DayZPlayerCamera1stPerson.c:9
vector m_SightMisalignmentModifier
Определения DayZPlayerCameraIronsights.c:23
static const float CONST_UD_MAX
up limit
Определения DayZPlayerCamera1stPerson.c:7
bool GetCurrentSightInfo(out vector camPos, out vector camDir)
Определения DayZPlayerCameraIronsights.c:111
static const float CONST_UD_MIN
down limit
Определения DayZPlayerCamera1stPerson.c:6
float m_velocityYaw[1]
camera dynamics
Определения DayZPlayerCameraIronsights.c:19
void DayZPlayerCameraIronsights(DayZPlayer pPlayer, HumanInputController pInput)
Определения DayZPlayerCameraIronsights.c:32
override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
Определения DayZPlayerCameraIronsights.c:136
float m_fUpDownAngleAdd
up down angle in rad
Определения DayZPlayerCamera1stPerson.c:94
float m_fLeftRightAngle
left right angle in rad (in freelook only)
Определения DayZPlayerCamera1stPerson.c:95
bool m_opticsHasWeaponOverride
Определения DayZPlayerCameraIronsights.c:13
float HoldBreathFOVEffect(float pDt)
Определения DayZPlayerCameraIronsights.c:236
float m_velocityPitch[1]
Определения DayZPlayerCameraIronsights.c:20
static const float CONST_LR_MAX
up limit
Определения DayZPlayerCamera1stPerson.c:10
void UpdateBatteryOptics(EntityAI entity)
Определения DayZPlayerCameraIronsights.c:338
float m_fUpDownAngle
up down angle in rad
Определения DayZPlayerCamera1stPerson.c:93
this is main camera class
Определения DayZPlayerCamera1stPerson.c:5
static const float TIME_CAMERACHANGE_03
Определения DayZPlayerCameras.c:29
static const float TIME_CAMERACHANGE_02
Определения DayZPlayerCameras.c:28
static const float TIME_CAMERACHANGE_01
for two handed items
Определения DayZPlayerCameras.c:27
Определения ManBase.c:2
Определения Building.c:6
Определения constants.c:659
proto native float GetCurrentMovementSpeed()
0,1,2..3 idle, walk, run, sprint
Определения human.c:434
Определения human.c:18
void UpdateOpticsReddotVisibility()
Определения ItemOptics.c:199
proto native float GetCurrentStepFOV()
returns fov value at current index, or 'OpticsInfo.opticsZoomInit' config value (non-zooming optics)
Определения ItemOptics.c:2
Определения EnMath3D.c:28
Определения EnMath.c:7
Определения PlayerBaseClient.c:2
proto void CallLater(func fn, int delay=0, bool repeat=false, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
shorthand
Определения BoltActionRifle_Base.c:6
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
static const vector Zero
Определения EnConvert.c:110
Определения EnConvert.c:106
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
void SendRecoilOffsetZ(float offset)
m_fCamPosOffsetZ info, used to adjust near plane in DayZPlayerCameraIronsights now
Определения dayzplayer.c:139
DayZPlayer m_pPlayer
data
Определения dayzplayer.c:135
HumanInputController m_pInput
human input
Определения dayzplayer.c:136
float m_fShootFromCamera
1(default) - uses shoot from camera (+aiming sway), 0 pure weapon shoot (ironsights == 0)
Определения dayzplayer.c:71
string GetCameraName()
Определения dayzplayer.c:92
class DayZPlayerCameraResult DayZPlayerCamera(DayZPlayer pPlayer, HumanInputController pInput)
Определения dayzplayer.c:56
float m_fFovAbsolute
fov absolute value override - -1.0 default, if set - overrides absolute fov setting
Определения dayzplayer.c:60
proto native CGame GetGame()
ErrorExSeverity
Определения EnDebug.c:62
proto void Print(void var)
Prints content of variable to console/log.
enum ShapeType ErrorEx
const float DZPLAYER_CAMERA_FOV_EYEZOOM
FOV (vertical angle/2) in radians. Take care to modify also in "basicDefines.hpp".
Определения constants.c:976
const float DZPLAYER_CAMERA_FOV_IRONSIGHTS
Определения constants.c:978
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
static proto void MatrixMultiply4(vector mat0[4], vector mat1[4], out vector res[4])
Transforms matrix.
static proto void YawPitchRollMatrix(vector ang, out vector mat[3])
Creates rotation matrix from angles.
static const float PI2
Определения EnMath.c:13
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 Sin(float angle)
Returns sinus of angle in radians.
static const float RAD2DEG
Определения EnMath.c:16
static proto float SmoothCD(float val, float target, inout float velocity[], float smoothTime, float maxVelocity, float dt)
Does the CD smoothing function - easy in | easy out / S shaped smoothing.
const int CALL_CATEGORY_GUI
Определения tools.c:9
void HumanItemAccessor()
Определения humanitems.c:141