您的位置:首页 > 移动开发 > Unity3D

Unity使用委托,事件

2018-03-19 16:51 344 查看
public class EventSender : MonoBehaviour {

//定义一个委托
public delegate void delGameOver();
//事件是委托的实例,该实例可在外部持有方法的引用
public event delGameOver GameOver;
private int score=0;
private bool isGameOver = false;

// Update is called once per frame
void Update () {
if (Input.GetKeyDown(KeyCode.Space))
{
score++;
}
if (score >= 5&&!isGameOver)
{
//发送游戏结束事件到各个类中
GameOver();
isGameOver = true;
}
}
}
public class EventListener : MonoBehaviour {

void Start () {
//监听该事件,事件启动则调用OnGameOver方法
GetComponent<EventSender>().GameOver += OnGameOver;
}

void OnGameOver()
{
Debug.Log("GameOver");
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐