Himera
Мастер
(2091)
1 год назад
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class YourScript : MonoBehaviour
{
public Text ScoreText;
public GameObject Achive;
public GameObject DefoltAchiv;
public GameObject Plashka;
private int Score = 0;
public void UpdateScore()
{
ScoreText.text = Score.ToString() + "р";
if (Score == 150)
{
Achive.SetActive(true);
DefoltAchiv.SetActive(false);
Score += 45;
Plashka.SetActive(true);
StartCoroutine(HidePlashkaAfterDelay(5f)); // Вызываем корутину для задержки и скрытия плашки
}
}
// Корутина для задержки и скрытия плашки
private IEnumerator HidePlashkaAfterDelay(float delay)
{
yield return new WaitForSeconds(delay);
Plashka.SetActive(false); // Скрываем плашку после заданной задержки
}
}
В этом примере я добавил новый метод HidePlashkaAfterDelay, который использует StartCoroutine для вызова корутины. Эта корутина ожидает заданное количество секунд (delay) и затем скрывает объект Plashka. В основном методе UpdateScore я добавил вызов этой корутины после отображения плашки при достижении 150 монет.
public void Update()
{
ScoreText.text = Score.ToString() + "р";
if (Score == 150)
{
Achive.SetActive(true);
DefoltAchiv.SetActive(false);
Score += 45;
Plashka.SetActive(true);
yield return new WaitForSeconds(5);
}
}
поправьте пожалуйста: сделайте так, чтобы и появлялась плашка, и исчезала через время. Заранее спасибо :3