Professor, a dificuldade não reinicia junto ao jogo e já pesquisei bastante sobre o assunto, mas não consigo resolver sozinho vou te mandar as linhas de códigos!
Códigos: Diretor
using System.Collections; using System.Collections.Generic; using UnityEngine;
public class Diretor : MonoBehaviour { private Aviao aviao; private Pontuacao pontuacao; private InterfaceGameOver interfaceGameOver;
private void Start()
{
this.aviao = GameObject.FindObjectOfType<Aviao>();
this.pontuacao = GameObject.FindObjectOfType<Pontuacao>();
this.interfaceGameOver = GameObject.FindObjectOfType<InterfaceGameOver>();
}
public void FinalizarJogo()
{
Time.timeScale = 0;
this.pontuacao.SalvarRecorde();
this.interfaceGameOver.MostrarInterface();
}
public void ReiniciarJogo()
{
this.interfaceGameOver.EsconderInterface();
Time.timeScale = 1;
this.aviao.Reiniciar();
this.DestruirObstaculos();
this.pontuacao.Reiniciar();
}
private void DestruirObstaculos()
{
Obstaculo[] obstaculos = GameObject.FindObjectsOfType<Obstaculo>();
foreach(Obstaculo obstaculo in obstaculos)
{
obstaculo.Destruir();
}
}
}
Códigos: ControlaDificuldade
using System.Collections; using System.Collections.Generic; using UnityEngine;
public class ControleDeDificuldade : MonoBehaviour { [SerializeField] private float tempoParaDificuldadeMaxima; private float tempoPassado; public float Dificuldade { get; private set; }
private void Update()
{
this.tempoPassado += Time.deltaTime;
this.Dificuldade = this.tempoPassado / this.tempoParaDificuldadeMaxima;
this.Dificuldade = Mathf.Min(1, this.Dificuldade);
}
}
Tentei fazer alguns códigos mas acabou que ficou muito confuso, então vim pedir ajuda!