Menu
CoddyTech

Повторение: менеджер раундов

Часть раздела Создание настоящих игр путешествия по Unity на Coddy. Урок 16 из 56.

challenge icon

Задание

Легко

Сбор монет за 3 раунда по 4 секунды. Стрелки управляют движением Player (готового к игре игрока). Напиши скрипты RoundManager и Coin; поля RoundManager в Inspector уже заполнены панелями, текстовыми полями, значениями rounds (3) и roundTime (4).

  • RoundManager — синглтон, поэтому каждая монета обращается к нему без поля Inspector.
  • У него три состояния. Ready показывает только readyPanel, а в roundText указан номер раунда (Round 1, затем Round 2...), и нажатие Space запускает раунд. Playing показывает только playPanel и длится roundTime секунд; затем начинается следующий раунд в состоянии Ready, а после последнего раунда игра переходит в состояние Finished. Finished показывает только finishedPanel, а в finalText отображается количество монет, например Coins: 3; повторный запуск невозможен.
  • Монета, которой игрок касается во время раунда, засчитывается, отображается в общем количестве в coinsText (Coins: 2) и удаляется. Монета, которой игрок касается между раундами, не засчитывается и остается на месте.

Нажми Play и сыграй все три раунда, затем нажми Check.

Попробуйте сами

using UnityEngine;
using TMPro;

public class RoundManager : MonoBehaviour
{
    public GameObject readyPanel;
    public GameObject playPanel;
    public GameObject finishedPanel;
    public TMP_Text roundText;
    public TMP_Text coinsText;
    public TMP_Text finalText;
    public int rounds = 3;
    public float roundTime = 4f;

    // Синглтон с тремя состояниями: Ready, Playing и Finished
}

Все уроки раздела Создание настоящих игр