23 super.EEItemAttached( item, slot_name );
32 super.EEItemDetached( item, slot_name );
34 GetCompEM().SwitchOff();
39 super.OnWasAttached(parent, slot_id);
49 super.OnWasDetached(parent, slot_id);
53 if (
m_Strap == parent &&
PlayerBase.CastTo(player, parent.GetHierarchyRootPlayer()) )
55 if ( parent &&
Clothing.Cast(parent) )
57 Clothing.Cast(parent).UpdateNVGStatus(player,
false,
true);
72 headgear = player.FindAttachmentBySlotName(
"Headgear");
73 glasses = player.FindAttachmentBySlotName(
"Eyewear");
83 if ( (headgear ==
m_Strap || glasses ==
m_Strap) && player.IsControlledPlayer() )
85 player.AddActiveNV(
NVTypes.NV_GOGGLES);
98 headgear = player.FindAttachmentBySlotName(
"Headgear");
99 glasses = player.FindAttachmentBySlotName(
"Eyewear");
103 if ( (headgear ==
m_Strap || glasses ==
m_Strap) && player.IsControlledPlayer() )
105 player.RemoveActiveNV(
NVTypes.NV_GOGGLES);
111 override void OnWork(
float consumed_energy )
124 headgear = player.FindAttachmentBySlotName(
"Headgear");
125 glasses = player.FindAttachmentBySlotName(
"Eyewear");
129 if ( (headgear ==
m_Strap || glasses ==
m_Strap) && player.IsControlledPlayer() )
131 player.AddActiveNV(
NVTypes.NV_GOGGLES);
151 SetAnimationPhase(
"rotate",!state);
164 if ( !state && GetCompEM().CanWork() )
165 GetCompEM().SwitchOn();
167 GetCompEM().SwitchOff();
174 GetCompEM().SwitchOn();
175 if (GetCompEM().IsSwitchedOn())
186 switch (m_CurrentOpticMode)
196 Error(
"Undefined optic mode of " +
this);
void AddAction(typename actionName)
void RemoveAction(typename actionName)
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 RotateGoggles(bool state)
ref Timer m_WorkCheckTimer
override void OnWorkStop()
override void OnWork(float consumed_energy)
override void OnWorkStart()
proto native CGame GetGame()
void Error(string err)
Messagebox with error message.