private float timeStamp = 0.0f; // временной штамп последнего состояния готовки #endregion Fields #region Constructors public ObjectCooked(ICookedType cookedType, AudioClip cookingSound, int cookingInSeconds = 5) { this.cookedType = cookedType; this.cookingSound = cookingSound; this.cookingInSeconds = cookingInSeconds; cookSpeed = 1.0f / (float)cookingInSeconds; // вычисляем шаг готовки }
/// <summary> /// Метод удаления еды из очереди готовки /// </summary> /// <param name="food"></param> public void removeFood(ICookedType food) { if (!foods.Contains(food)) return; if (!cook) { // если коллекция очереди не занята foods.Remove(food); // удаляем еду из очереди food.onDestroyCook(this); // посылаем команду еде, что она больше не готовится } else { removeList.Add(food); // добавляем еду в очередь на удаление } }
private List<ICookedType> removeList; // очередь еды на удаление из очереди на готовку #endregion Fields #region Methods /// <summary> /// Добавление еды в очередь на готовку /// </summary> /// <param name="food"></param> public void addFood(ICookedType food) { if (foods.Contains(food)) return; foods.Add(food); }