Menu
CoddyTech

Повторение: таймер всплывающего окна

Часть раздела Архитектура игр в Unity путешествия по Unity на Coddy. Урок 17 из 64.

В этой главе скрипты связывались с событиями: событиями C# для кода, который ожидает их, UnityEvents для строк, связанных через Inspector, и OnEnable с OnDisable, чтобы ожидать события только во время активности.

challenge icon

Задание

Легко

Сделай так, чтобы всплывающее окно достижения скрывалось само.

  1. В AchievementPopup добавь private float timeLeft; и присвой ему значение showTime в Show.
  2. В Update(), пока timeLeft больше 0, вычитай из него Time.deltaTime и вызывай panel.SetActive(false), когда время истечёт.

Нажми «Играть» и подбери монету: всплывающее окно скроется через 2 секунды. Затем нажми «Проверить».

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

using UnityEngine;
using TMPro;

// Отображает название разблокированного достижения на игровом интерфейсе.
public class AchievementPopup : MonoBehaviour
{
    public GameObject panel;
    public TMP_Text titleText;
    public float showTime = 2f;

    public void Show(string title)
    {
        titleText.text = "Unlocked: " + title;
        panel.SetActive(true);
    }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Архитектура игр в Unity

Потренируйтесь самостоятельно: Песочница Unity