先来制作死亡後开启死亡画面,把之前死亡画面的Active(开启)暂时先关闭,等Player死亡时候才开启
(如果不会开启动画视窗在window->Animation->Animator)再次提醒 ^^
Player死亡动画大约0.5秒,简单做个淡入动画,在死亡画面透明度0.95的背景上创造一个动画,按Create创造一个动画,会需要存动画位置跟名称
按下动画录影的˙把第0秒的背景透明度调到0一秒时透明度调回0.95
设定完成再次按下录影的˙就完成一个一秒的淡入动画(可自行调整时间或其他动画比方调整位置Y从上到下等等…)
最後找到刚刚的动画,把这个动画的LoopTime的打勾取消掉(未取消就会一直重复淡入)
最後开一下PlayerControl的程序
新增一个死亡画面的物件,记得在unity放入死亡画面的物件
[SerializeField] GameObject dieWindow = null;
碰撞器跟Start的地方加上开启死亡画面或关闭死亡画面
private void Start()
{
anim = GetComponent<Animator>();
rig = GetComponent<Rigidbody2D>();
InvokeRepeating("Attack", 1f, 1f);
hpBar.fillAmount = hp / hpMax;
//死亡画面的状态为(false)
dieWindow.SetActive(false);
}
private void OnTriggerEnter2D(Collider2D collision)
{
if (collision.tag == "EnemyBullet")
{
hp -= 5f;
hpBar.fillAmount = hp / hpMax;
if (hp <= 0)
{
anim.SetBool("die", true);
//死亡画面的状态为(true)
dieWindow.SetActive(true);
Destroy(gameObject,0.5f);
}
}
}
现在游戏死亡时就会开启死亡画面,下一篇再来制作按钮
>>: Day04 | Dart基本介绍 - 变数宣告与基本型别
今天的目标是:用NodeJS练习写一个简单的Web Server,所以会先介绍一下NodeJS中的h...
今天我们要来将 Chatbot 与 Language Understanding Service (...
我认为整个 Scrum 架构中,对系统以及最终的自组织目标,最重要、最有价值的一场活动,就是检讨会议...
在介绍 Spread Operator 和 Rest Operator 之前,先来介绍阵列相加的方法...
成功打造好一个让团队感觉安全、平静的环境,是否就以足够?当然不是。接下来,我们来谈谈人的管理 — 如...