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

◆ SetCameraPP()

override void SetCameraPP ( bool state,
DayZPlayerCamera launchedFrom )
protected

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

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 }
Weapon_Base m_weaponUsed
Определения DayZPlayerCamera_Base.c:73
NVTypes
Определения DayZPlayerCamera_Base.c:55
bool IsCameraNV()
Определения DayZPlayerCamera_Base.c:406
void SetNVPostprocess(int NVtype)
DayZPlayerCameraOptics handles this separately, otherwise it takes active NVType from PlayerBase::Get...
Определения DayZPlayerCamera_Base.c:477
void SetCameraNV(bool nightvision)
Определения DayZPlayerCamera_Base.c:401
int GetCameraNVType()
Определения DayZPlayerCamera_Base.c:416
ItemOptics m_opticsUsed
Определения DayZPlayerCamera_Base.c:74
Определения PlayerBaseClient.c:2
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
DayZPlayer m_pPlayer
data
Определения dayzplayer.c:135

Перекрестные ссылки DayZPlayerCamera(), GetCameraNVType(), IsCameraNV(), m_opticsUsed, m_pPlayer, m_weaponUsed, SetCameraNV() и SetNVPostprocess().