开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第11天,点击查看活动详情
上次我们说了如何制作一个警戒线的动画,今天我们说下如何将动画关联到场景上去。
1. 在节点node_xian上添加动画组件
2. 将anima下的动画anima_xian关联到Default Clip,并且开启Play On Load
3.打开game.ts在init函数里定义警戒线的高度,当水果超出这个高度就显示警戒线
this.f_xian=300 //警戒线高度
4.打开game.ts增加显示警戒线的函数
showXian(){
let can_show=false
let children=this.node.children
for (let i = 0; i < children.length; i++) {
let js_block=children[i].getComponent('block')
if(js_block){
if(js_block.is_pz){
let y_block=children[i].getPosition().y
let y_gao=y_block+ (children[i].getComponent(UITransform).height) /2
if(y_gao>this.f_xian){
can_show=true
break
}
}
}
}
if(can_show){
this.node_xian.active=true
}else{
this.node_xian.active=false
} }
5. 在init函数里设置警戒线先隐藏
this.node_xian.active=false
6.在update函数里调用showXian(),这样显示警戒线功能就做完了。
update(deltaTime: number) {
this.showXian()
}
7.制作游戏结束画面。
(1)创建一个空节点,并且命名为layOver
(2)在节点layOver下再创建一个SpriteSplash(单色)精灵,并且命名为bg_hei
(3)调整节点bg_heir的大小为720*1280
(4)颜色设置为黑色,透明度设置200
(5)在layOver节点下创建label(文本),并命名为label_score,用来显示当局游戏得分。
(6)调整位置。设置字体,字的大小设置为50
(7)在layOver节点下增加Button(按钮),并且命名为btn_rePay,作为重玩游戏按钮
(8)关联按钮图片
(9)删除btn_rePay按钮下的label,用不上
(10)在layOver节点下新建一个Sprite(精灵),并且命名为sp_bestScore
(11)关联奖杯图片资源
(12)在layOver节点下新建一个Label(文本),并且命名为label_bestScore,用作显示历史最高分。
(13)设置label_bestScore的字体,调整字体的大小为50
(14)设置Anchor Point为0
(15)在脚本game.ts上增加装饰器
@property({type:Node})
layerOver=null
(16)关联layerOver节点
(17)在init函数里设置游戏结束画面先隐藏
this.layerOver.active=false
今天就到这里了,主要说了如何制作游戏结束面。可能写的过程中还有很多不好的地方,希望大家能指出来,在此,谢谢大家