Всем привет. Разрабатываю 2D игрушку. Собственно, проблема в следующем: в своей игрушке, у меня есть функция update. В update проверяется, не вышел ли объект за предел какого-то объекта, если вышел, то обращается к функции другого скрипта, а та функция инициализирует новый объект. Трансформ объекта выбирается рандомно из 4. Но иногда в одном месте создается сразу два объекта, что очень не красиво. Инициализирую следующим образом
Код
GameObject[] fishs = GameObject.FindGameObjectsWithTag("fish");
GameObject[] nofishs = GameObject.FindGameObjectsWithTag("nofish");
foreach (GameObject fishN in fishs) if (fish != null) Destroy(fishN); //Перебираем все рыбы. Если число рыб меньше 5, то начинаем функцию создания новых рыб
float fishslenght = fishs.Length + nofishs.Length;
if (fishslenght < 5f)
{
randomTrans = Random.Range(0, 3);
fish = Instantiate(fishPrefab, FishTransforms[randomTrans].transform.position, Quaternion.identity) as GameObject;
}
score += 70 * fishs.Length; // Получаем очки, приумножая уловленные рыбы
scoreText.text = score.ToString();
canfish = 0; //нельзя рыбачить