Я новичок в Unity, и я следую учебному пособию, чтобы немного ближе познакомиться с игровым движком. Я следую учебнику CodeMonkey. Я в игре на экране. это скрипт, который я прикрепил к своему GameOverWindow. но только Awake () вызывается. начало неиз-за этого мое событие не работает, поэтому окно «Игра окончена» не отображается.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using CodeMonkey.Utils;
public class GameOverWindow : MonoBehaviour
{
private Text scoreText;
// Start is called before the first frame update
private void Start()
{
Bird.GetInstance().OnDied += Bird_OnDied;
}
private void Awake()
{
scoreText = transform.Find("scoreText").GetComponent<Text>();
transform.Find("retryBtn").GetComponent<Button_UI>().ClickFunc = () => { UnityEngine.SceneManagement.SceneManager.LoadScene("GameScene"); };
Hide();
}
private void Bird_OnDied(object sender, System.EventArgs e)
{
scoreText.text = Level.GetInstance().GetPipesPassedCount().ToString();
Show();
}
// Update is called once per frame
private void Update()
{
}
private void Hide()
{
gameObject.SetActive(false);
}
private void Show()
{
gameObject.SetActive(true);
}
}