@coutBohdan

Почему код не работает. Это из-за FixUpdate и Void Start??

Как сделать эту задержку????? Я уже много способов перепробовал.
StartCoroutine должно запускатся не в начале сцены??
using System.Collections;
using UnityEngine;

public class SpawnBox : MonoBehaviour
{
public float miliSecond;
public float second;
public GameObject bomb;
public void FixedUpdate()
{
miliSecond += 0.02f;
if (miliSecond >= 1f)
{
second++;
miliSecond = 0f;

}
}
void Start()

{
if (second >= 1f)
{
StartCoroutine(Spawn());
}
}
IEnumerator Spawn()
{
while (!Player.lose)
{
Instantiate(bomb, new Vector2(Random.Range(-2.5f, 2.5f), 5.9f), Quaternion.identity);
yield return new WaitForSeconds(2f);

}

}

}
  • Вопрос задан
  • 176 просмотров
Пригласить эксперта
Ответы на вопрос 3
GavriKos
@GavriKos Куратор тега Unity
Код в Start выполняется при старте скрипта (грубо говоря) и раньше чем FixedUpdate. На этот момент second еще будет равна 0. И никакая корутина не выполнится.
Ответ написан
@coutBohdan Автор вопроса
StartCoroutine должно запускатся не в начале сцены??- тут без знаков вопроса.
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Ваш ответ на вопрос

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

Похожие вопросы