как вывести значения WaitForSeconds в unity c#

166
12 мая 2021, 17:20

как показать отсчет времени при запуске/перезапуске сцены?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class Timer : MonoBehaviour
{
public Text timeLeft; // ссылка на текстовое поле, которое должно 
 //показывать, сколько времени осталось у игрока
public float startTime; // начальное время
void Start(){
    timeLeft.color = Color.white;
    startTime = 20f; //время, после которого сцена перезапускается
  //вызываю таймер
    StartCoroutine(ExecuteAfterTime(startTime));
}
//после 20 секунд (если игрок не успеет 
//за это время найти выход на следующую сцену) 
//текущая сцена загрузится заново и отсчет начнется заново
IEnumerator ExecuteAfterTime(float startTime){
    yield return new WaitForSeconds(startTime);
    SceneManager.LoadScene(2);
}
}
Answer 1

Я использовал обычный таймер. Потому что в вашем примере нет необходимости использовать WaitForSeconds().

Работоспособность

Только в этом примере я использовал свой панель загрузки.

Код
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
private void Start()
{
    maxTime = 3.0f;
    timeLeft = maxTime;
}
private void Update()
{
    if (timeLeft > 0.0f)
    {
        timeLeft -= Time.deltaTime;
        Timer.text = timeLeft.ToString("0");
    }
    else
    {
        DoSomething();
        timeLeft = maxTime;
    }
}
void DoSomething()
{
    SceneManager.LoadScene(SceneManager.GetActiveScene().name);
}
READ ALSO
Миграция переводит названия таблиц в нижний регистр

Миграция переводит названия таблиц в нижний регистр

Проект ASPNET Core WebAPI, ORM EF Core, база данных MySQL, провайдер Pomelo

99
Не скрываются папки после обновления через функцию SHChangeNotify

Не скрываются папки после обновления через функцию SHChangeNotify

Сначала я отключаю просмотр всех скрытых файлов и папок через реестр: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced

131
Как бегущую строку сделать более плавной и гладкой?

Как бегущую строку сделать более плавной и гладкой?

Имеется код который запускает label и он движется ровно от середины до края

249
C#, Не удается запустить службу Windows

C#, Не удается запустить службу Windows

Написал службу Windows на C#При запуске выдается ошибка: Не удалось запустить службу TFFU на Локальный компьютер

113