见缝插针小游戏
结束动画
我们的结束动画很简单,就是把画面放大,把背景改成红色,再有一个停顿就可以了
1、对于放大画面和修改背景颜色的操作,在这里可以直接修改相机设置
我们要获取到Hierarchy窗口中的Main Camera,打开GameManager脚本
添加属性
private Camera mainCamera; //场景主相机
在Start ()方法中添加
mainCamera = Camera.main; //获取主相机
1
这样就获取到了相机
2、将结束动画写成一个方法GameOverAnimation()
设置结束动画的速度
private int animationSpeed=3; //结束动画的速度
GameOverAnimation()方法
IEnumerator GameOverAnimation() //游戏结束动画
{
while (true)
{
//背景颜色逐渐变红
mainCamera.backgroundColor = Color.Lerp(mainCamera.backgroundColor, Color.red,animationSpeed*Time.deltaTime);
//图像逐渐变大
mainCamera.orthographicSize = Mathf.Lerp(mainCamera.orthographicSize, 4, animationSpeed * Time.deltaTime);
//当相机的视野为4时跳出循环
if (Mathf.Abs(mainCamera.orthographicSize - 4) < 0.01f)
{
break;
}
yield return 0;
}
yield return new WaitForSeconds(1); //暂停1秒
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex); //重新加载当前场景,再次开始游戏
}
在这里用到了重新加载场景,所以我们要用到头文件
using UnityEngine.SceneManagement; //重新开始关卡(场景管理),需要用到这个头文件
1
在GameOver()方法中调用动画
StartCoroutine(GameOverAnimation()); //调用结束动画
1
保存后运行一下就OK了。
————————————————
版权声明:本文为CSDN博主「???4.24???」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_46684459/article/details/114736186