BattleClock.cs 752 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. using UnityEngine;
  2. using System.Collections;
  3. public class BattleClock
  4. {
  5. private float timeLeftUpdateTime;
  6. public float _timeLeft = -1f;
  7. public float timeLeft
  8. {
  9. set{
  10. _timeLeft = value;
  11. timeLeftUpdateTime = GameTime.time;
  12. }
  13. get{
  14. if(freeTimeLeft > 0)
  15. return _timeLeft;
  16. float currentTimeLeft = _timeLeft - (GameTime.time - timeLeftUpdateTime);
  17. return Mathf.Max(0, currentTimeLeft);
  18. }
  19. }
  20. private float freeTimeLeftUpdateTime;
  21. private float _freeTimeLeft = -1f;
  22. public float freeTimeLeft
  23. {
  24. set{
  25. _freeTimeLeft = value;
  26. freeTimeLeftUpdateTime = GameTime.time;
  27. }
  28. get{
  29. float currentFreeTimeLeft = _freeTimeLeft - (GameTime.time - timeLeftUpdateTime);
  30. return Mathf.Max(0, currentFreeTimeLeft);
  31. }
  32. }
  33. }