public void CutTime(float value, OutOfFuel outOfFuel = null) { if (_outOfFuel == null) { _outOfFuel = outOfFuel; } transform.GetComponent <Image>().fillAmount -= value / 100; if (transform.GetComponent <Image>().fillAmount == 0) { OilEnded(); } }
public void Travel(int time) { if (isBroken == false) { double traveled = time * Speed; double fuelSpent = traveled / 100 * 3; if (fuelSpent > FuelAmmount) { traveled = FuelAmmount / 100 * 3; OutOfFuel?.Invoke(this, new CarEventArgs("Out of fuel, traveled as much as possible")); } else { FuelAmmount -= fuelSpent; } DistanceTraveled += traveled; if (DistanceTraveled >= 500) { ExcededMileage?.Invoke(this, new CarEventArgs("Traveled way too much, now broken")); } } }
public void TimeCount(OutOfFuel outOfFuel) { _outOfFuel = outOfFuel; StartCoroutine(TickTime(0, Speed)); }