21 super.EEItemAttached(item, slot_name);
24 GetCompEM().SwitchOn();
29 super.EEItemDetached(item, slot_name);
35 m_Strap.UpdateNVGStatus(player,
false,
true);
40 super.OnWasAttached(parent, slot_id);
48 super.OnWasDetached(parent, slot_id);
54 if (
m_Strap == parent &&
PlayerBase.CastTo(player, parent.GetHierarchyRootPlayer()))
57 Clothing.Cast(parent).UpdateNVGStatus(player,
false,
true);
72 headgear = player.FindAttachmentBySlotName(
"Headgear");
73 glasses = player.FindAttachmentBySlotName(
"Eyewear");
82 m_Strap.UpdateNVGStatus(player);
96 headgear = player.FindAttachmentBySlotName(
"Headgear");
97 glasses = player.FindAttachmentBySlotName(
"Eyewear");
102 m_Strap.UpdateNVGStatus(player);
107 override void OnWork(
float consumed_energy)
118 headgear = player.FindAttachmentBySlotName(
"Headgear");
119 glasses = player.FindAttachmentBySlotName(
"Eyewear");
123 if ((headgear ==
m_Strap || glasses ==
m_Strap) && player.IsControlledPlayer())
134 SetAnimationPhase(
"rotate", !state);
141 m_Strap.UpdateNVGStatus(player);
145 if (!state && GetCompEM().CanWork())
146 GetCompEM().SwitchOn();
148 GetCompEM().SwitchOff();
156 if (IsUsingOptics2DModel())
189 GetCompEM().SwitchOn();
190 if (GetCompEM().IsSwitchedOn())
void AddAction(typename actionName)
void RemoveAction(typename actionName)
PlayerSpawnPreset slotName
void SetPlayer(Man player)
override void SetActions()
override void EEItemAttached(EntityAI item, string slot_name)
override void OnWasDetached(EntityAI parent, int slot_id)
override void EEItemDetached(EntityAI item, string slot_name)
override int GetCurrentNVType()
override void OnWasAttached(EntityAI parent, int slot_id)
void LoweredCheck()
check for animation state, if another player lowered them first (or solve by synced variable)
void RotateGoggles(bool state)
ref Timer m_WorkCheckTimer
override void OnWorkStop()
override void OnWork(float consumed_energy)
override void OnWorkStart()
proto native CGame GetGame()