heatpack.c 650 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. class Heatpack : ItemBase
  2. {
  3. override bool CanHaveTemperature()
  4. {
  5. return true;
  6. }
  7. override void OnWorkStart()
  8. {
  9. if (GetGame().IsServer())
  10. {
  11. SetTemperatureDirect(80);
  12. }
  13. }
  14. override void OnWork( float consumed_energy )
  15. {
  16. if (GetGame().IsServer())
  17. {
  18. SetTemperatureDirect(80);
  19. }
  20. }
  21. override void OnWorkStop()
  22. {
  23. if (GetGame().IsServer())
  24. {
  25. SetHealth(0);
  26. }
  27. }
  28. override void SetActions()
  29. {
  30. super.SetActions();
  31. AddAction(ActionTurnOnHeatpack);
  32. }
  33. override float GetQuantityNormalizedScripted()
  34. {
  35. return 1.0;
  36. }
  37. override bool IsSelfAdjustingTemperature()
  38. {
  39. return GetCompEM().IsWorking();
  40. }
  41. }