A Batida Encerra a Corrida
Parte da seção Criando Jogos de Verdade do Journey de Unity da Coddy. Lição 31 de 60.
Desafio
MédioUma colisão deve interromper a corrida.
- Acima de
GameManager, declarepublic enum GameState { Playing, GameOver }; dentro dela, adicionepublic GameState state = GameState.Playing;. public void GameOver()definestatecomoGameState.GameOverespeedcomo 0, e mostragameOverPanel.RunnerchamaGameManager.Instance.GameOver()ao entrar em contato com um gatilho marcado comObstacle.GameManager,RunnereSpawneriniciamUpdate()com umreturn, a menos que estejam emPlaying.
Pressione “Jogar” e colida: tudo para. Depois, pressione “Verificar”.
Experimente você mesmo
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
using TMPro;
public class GameManager : MonoBehaviour
{
public static GameManager Instance;
public float speed = 10f;
public float speedUp = 0.5f;
public float maxSpeed = 20f;
public TMP_Text distanceText;
public GameObject gameOverPanel;
public Button restartButton;
private float distance;
void Awake()
{
Instance = this;
}
void Update()
{
speed = Mathf.Min(speed + speedUp * Time.deltaTime, maxSpeed);
distance += speed * Time.deltaTime;
distanceText.text = "Distance: " + Mathf.FloorToInt(distance) + " m";
}
}
Todas as lições de Criando Jogos de Verdade
1Texto na tela
Canvas e textoExiba a pontuaçãoFormate númerosUm cronômetro regressivoRevisão: velocímetro2Botões e telas
Botões e onClickLambdasConectando no InspectorPainéis ligados e desligadosBarras de vidaRevisão: Loja de melhorias5Salvando com PlayerPrefs
Salvar um númeroCarregar com um valor padrãoRecordeSalvar configuraçõesRevisão: Moedas no banco3O Gerenciador do Jogo
Um Script Controla o JogoO SingletonEstados do JogoAlternando o EstadoRevisão: Gerenciador de Rodadas6Projeto: Corrida sem Fim
Três FaixasObstáculos à FrentePratique por conta própria: Playground de Unity