Я пытаюсь сделать игру, в которой вы можете получать деньги каждые 5 секунд. Я пытался вызывать сопрограммы, повторяя и находясь в сопрограмме, чтобы я мог добавить значение в число с плавающей точкой, а затем через 5 секунд снова добавить значение к нему, но это не работает, просто добавлю значение в число без задержки, помогите.
Один пример, который не работал:
StartCoroutine(Job(2.0f));
void salary()
{
money += 10;
}
private IEnumerator Job(float waitTime)
{
yield return new WaitForSeconds(waitTime);
//After waitTime, you can use InvokeRepeating() for infinite loop infinite loop or you use a while(true) loop here
InvokeRepeating("salary", 0.0f, 2.0f);
}
Другой пример:
StartCoroutine(Job(2));
private IEnumerator Job(float waitTime)
{
while (true)
{
money += 10;
yield return new WaitForSeconds(waitTime);
}
И другой пример:
StartCoroutine(Job());
IEnumerator Job()
{
while (true)
{
yield return new WaitForSeconds(1);
money += 10;
}
}