containerwithelectricmanager.c 802 B

1234567891011121314151617181920212223242526272829303132
  1. class ContainerWithElectricManager : ContainerWithCargoAndAttachments
  2. {
  3. override void UpdateInterval()
  4. {
  5. super.UpdateInterval();
  6. if (m_Entity)
  7. ElectricityIcon();
  8. }
  9. override void SetEntity(EntityAI entity, bool immedUpdate = true)
  10. {
  11. super.SetEntity(entity, immedUpdate);
  12. ElectricityIcon();
  13. }
  14. void ElectricityIcon()
  15. {
  16. if (GetRootWidget().FindAnyWidget("electricity"))
  17. {
  18. bool hasElectricityIcon = m_Entity.GetCompEM().HasElectricityIcon();
  19. GetRootWidget().FindAnyWidget("electricity").Show(hasElectricityIcon);
  20. }
  21. if (GetRootWidget().FindAnyWidget("electricity_can_work"))
  22. {
  23. bool electricityCanWorkIcon = m_Entity.GetCompEM().CanWork() && !m_Entity.IsRuined();
  24. GetRootWidget().FindAnyWidget("electricity_can_work").Show(electricityCanWorkIcon);
  25. }
  26. }
  27. }