@Haddle
Делаю игры 2Д на юнити

Почему так медленно проверяется куратина/апдейт?

У меня есть пшеница, при ее срубании отсчитывается время до ее появления (2 секунды) при этом идет проверка, что если воды меньше или ровно 0 то пшеница не вырастает. this.GetComponent().color = colTwo; это я возвращаю пшенице 100 процентов прозрачности (я не дестрою пшеницы, а делаю их невидимыми, да я даун но мне так нужно сейчас).
Так вот, если медленно срубать по одной пшеницу, то все работает и если воды не хватает то пшеница не растет. Но если срубить много пшеницы за 1 секунду, то юнити не успевает проверить воду, и даже если её меньше, чем надо то пшеница все равно успевает вернуть 100 процентную прозрачность. Как это исправить?

Вот мой код:
using System.Collections;
using UnityEngine;

public class GotWheat : MonoBehaviour
{
	#region Variables
	public Color col;
	public Color colTwo;

	private bool isAlive = true;

	static public float timeToGrowUp = 2f;
	private int a = 0;
	static public int b = 0;
	#endregion

	#region UnityMethods
	void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.tag == "Cursor" && Input.GetKey(KeyCode.Mouse0))
        {
			if (isAlive)
			{
				StartCoroutine(timeToReincornation());
				this.GetComponent<SpriteRenderer>().color = col;
				AmmountThings._Ammount++;
				isAlive = false;
			}
        }
    }
	IEnumerator timeToReincornation()
    {
        while (a==0)
        {
			if (WaterSense.currentWater > 0)
			{
				yield return new WaitForSeconds(timeToGrowUp);
				a = 1;
				isAlive = true;
				this.GetComponent<SpriteRenderer>().color = colTwo;
				WaterSense.currentWater-=0.125f;
			}
			yield return new WaitForEndOfFrame();
		}
		a = 0;
	}
	#endregion
}
  • Вопрос задан
  • 55 просмотров
Решения вопроса 1
@Haddle Автор вопроса
Делаю игры 2Д на юнити
Я понял свою ошибку, можете не помогать. Я сначала проверял воду а потом уже ставил откат времени
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы