Нужно реализовать таймер c#
Делаю игру в unity и мне нужно, чтобы метод Timer каждые 5 секунд выполнялся 6 раз, но он выполняется сразу.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using System.Threading.Tasks;
public class LevelManager : MonoBehaviour
{
public int level;
public Text textLevel;
public int time;
public Text timeGame;
// Проверка ключа на присутствие
void Start()
{
if (PlayerPrefs.HasKey("level"))
{
level = PlayerPrefs.GetInt("level");
}
Timer();
}
// Метод, который прибавляет к времени 1 час и при достижении 6 часов, следующая ночь наступает
public void Timer()
{
time += 1;
if (time == 6)
{
NextLevel();
time = 1;
}
}
// При изменении часов они сразу выводятся на экране
void Update()
{
textLevel.text = "" + level;
timeGame.text = "" + time;
if(Input.GetKeyDown(KeyCode.Space))
{
DeleteAll();
}
}
// Переход на следующую ночь и сохранение в память
public void NextLevel()
{
level += 1;
PlayerPrefs.SetInt("level", level);
PlayerPrefs.Save();
}
// Сброс до первой ночи
public void DeleteAll()
{
level = 1;
PlayerPrefs.DeleteAll();
}
}