actionturnonpowergenerator.c 819 B

12345678910111213141516171819202122232425262728293031323334
  1. class ActionTurnOnPowerGenerator: ActionInteractBase
  2. {
  3. void ActionTurnOnPowerGenerator()
  4. {
  5. m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_INTERACTONCE;
  6. m_Text = "#switch_on";
  7. }
  8. override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
  9. {
  10. PowerGeneratorBase pg = PowerGeneratorBase.Cast(target.GetObject());
  11. if (pg)
  12. {
  13. if (pg.HasEnergyManager() && pg.GetCompEM().CanSwitchOn() && pg.HasSparkplug() && pg.GetCompEM().CanWork())
  14. {
  15. return true;
  16. }
  17. }
  18. return false;
  19. }
  20. override void OnExecuteServer(ActionData action_data)
  21. {
  22. Object targetObject = action_data.m_Target.GetObject();
  23. if (targetObject)
  24. {
  25. ItemBase target_IB = ItemBase.Cast(targetObject);
  26. target_IB.GetCompEM().SwitchOn();
  27. target_IB.GetCompEM().InteractBranch(target_IB);
  28. }
  29. }
  30. };