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

◆ SetNVPostprocess()

void SetNVPostprocess ( int NVtype)
protected

DayZPlayerCameraOptics handles this separately, otherwise it takes active NVType from PlayerBase::GetCameraNVType.

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

478 {
479 //Print("+++Setting NV type: " + NVtype + " +++");
480 switch (NVtype)
481 {
482 case NVTypes.NONE:
483 {
484 PPERequesterBank.GetRequester(PPERequester_CameraNV).Stop();
485 if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets())
486 {
487 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER});
488 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER});
489 }
490 }
491 break;
492
493 //night-vision modes
494 case NVTypes.NV_OPTICS_KAZUAR_NIGHT:
495 case NVTypes.NV_OPTICS_STARLIGHT_NIGHT:
496 case NVTypes.NV_OPTICS_ON:
497 {
498 PPERequesterBank.GetRequester(PPERequesterBank.REQ_CAMERANV).Start( new Param1<int>(PPERequester_CameraNV.NV_DEFAULT_OPTICS) );
499 if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets())
500 {
501 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER});
502 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER});
503 }
504 }
505 break;
506
507 //daytime filter modes
508 case NVTypes.NV_OPTICS_KAZUAR_DAY:
509 case NVTypes.NV_OPTICS_STARLIGHT_DAY:
510 {
511 PPERequesterBank.GetRequester(PPERequesterBank.REQ_CAMERANV).Start( new Param1<int>(PPERequester_CameraNV.NV_DAYTIME_OPTICS) );
512 if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets())
513 {
514 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER});
515 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER});
516 }
517 }
518 break;
519
520 case NVTypes.NV_GOGGLES_OFF:
521 case NVTypes.NV_OPTICS_OFF:
522 {
523 PPERequesterBank.GetRequester(PPERequesterBank.REQ_CAMERANV).Start( new Param1<int>(PPERequester_CameraNV.NV_NO_BATTERY) );
524 if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets())
525 {
526 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER});
527 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER});
528 }
529 }
530 break;
531
532 case NVTypes.NV_GOGGLES:
533 {
534 PPERequesterBank.GetRequester(PPERequesterBank.REQ_CAMERANV).Start( new Param1<int>(PPERequester_CameraNV.NV_DEFAULT_GLASSES) );
535 if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets())
536 {
537 GetGame().GetMission().GetEffectWidgets().AddActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER});
538 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER});
539 }
540 }
541 break;
542
543 case NVTypes.NV_PUMPKIN:
544 {
545 PPERequesterBank.GetRequester(PPERequesterBank.REQ_CAMERANV).Start( new Param1<int>(PPERequester_CameraNV.NV_PUMPKIN) );
546 if (GetGame().GetMission() && GetGame().GetMission().GetEffectWidgets())
547 {
548 GetGame().GetMission().GetEffectWidgets().AddActiveEffects({EffectWidgetsTypes.PUMPKIN_OCCLUDER});
549 GetGame().GetMission().GetEffectWidgets().RemoveActiveEffects({EffectWidgetsTypes.NVG_OCCLUDER});
550 }
551 }
552 break;
553 }
554
555 if (PlayerBaseClient.Cast(m_pPlayer))
556 {
557 PlayerBaseClient.Cast(m_pPlayer).SwitchPersonalLight(NVtype < 1);
558 }
559 }
NVTypes
Определения DayZPlayerCamera_Base.c:55
proto native Mission GetMission()
override void RemoveActiveEffects(array< int > effects)
Определения GameplayEffectWidgets.c:301
override void AddActiveEffects(array< int > effects)
Определения GameplayEffectWidgets.c:281
GameplayEffectWidgets_base GetEffectWidgets()
Определения SurvivorBase.c:2
DayZPlayer m_pPlayer
data
Определения dayzplayer.c:135
proto native CGame GetGame()

Перекрестные ссылки GameplayEffectWidgets_base::AddActiveEffects(), Mission::GetEffectWidgets(), GetGame(), CGame::GetMission(), m_pPlayer и GameplayEffectWidgets_base::RemoveActiveEffects().

Используется в DayZPlayerCameraBase::SetCameraPP() и SetCameraPP().