26 super.EEItemAttached(item, slot_name);
29 GetCompEM().SwitchOn();
34 super.EEItemDetached(item, slot_name);
41 if (!
g_Game.IsDedicatedServer())
43 EntityAI headgear = player.FindAttachmentBySlotName(
"Headgear");
44 EntityAI glasses = player.FindAttachmentBySlotName(
"Eyewear");
47 m_Strap.UpdateNVGStatus(player,
false,
true);
54 super.OnWasAttached(parent, slot_id);
62 super.OnWasDetached(parent, slot_id);
68 if (
m_Strap == parent &&
PlayerBase.CastTo(player, parent.GetHierarchyRootPlayer()))
70 if (!
g_Game.IsDedicatedServer())
72 EntityAI headgear = player.FindAttachmentBySlotName(
"Headgear");
73 EntityAI glasses = player.FindAttachmentBySlotName(
"Eyewear");
76 m_Strap.UpdateNVGStatus(player,
false,
true);
94 return super.GetProtectionLevel(type, consider_filter, system);
104 EntityAI headgear = player.FindAttachmentBySlotName(
"Headgear");
105 EntityAI glasses = player.FindAttachmentBySlotName(
"Eyewear");
114 m_Strap.UpdateNVGStatus(player);
126 EntityAI headgear = player.FindAttachmentBySlotName(
"Headgear");
127 EntityAI glasses = player.FindAttachmentBySlotName(
"Eyewear");
132 m_Strap.UpdateNVGStatus(player);
137 override void OnWork(
float consumed_energy)
148 headgear = player.FindAttachmentBySlotName(
"Headgear");
149 glasses = player.FindAttachmentBySlotName(
"Eyewear");
153 if ((headgear ==
m_Strap || glasses ==
m_Strap) && player.IsControlledPlayer())
164 SetAnimationPhase(
"rotate", !state);
171 m_Strap.UpdateNVGStatus(player);
175 if (!state && GetCompEM().CanWork())
176 GetCompEM().SwitchOn();
178 GetCompEM().SwitchOff();
186 if (IsUsingOptics2DModel())
219 GetCompEM().SwitchOn();
220 if (GetCompEM().IsSwitchedOn())
bool IsDamageDestroyed(ActionTarget target)
void AddAction(typename actionName)
void RemoveAction(typename actionName)
PlayerSpawnPreset slotName
ECachedEquipmentItemCategory
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)
override float GetProtectionLevel(int type, bool consider_filter=false, int system=0)
override ECachedEquipmentItemCategory GetCachedEquipmentCategory()
ref Timer m_WorkCheckTimer
override void OnWorkStop()
override void OnWork(float consumed_energy)
override void OnWorkStart()
const int DEF_DUST_PARTICLE_EYES