Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как сделать обновление плашки? (Юнити, C#)

kamik adze Ученик (100), на голосовании 1 год назад
Всем привет, хочу сделать так, чтобы при достижении 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
Голосование за лучший ответ
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 монет.
kamik adzeУченик (100) 1 год назад
это не то: скрипт не такой, он неправильный
Похожие вопросы