网页游戏Flappy Birds从0开始制作(三):场景Sky类

本文介绍如何从零开始制作FlappyBirds网页游戏,重点讲解Sky类的设计与实现,包括构造函数、绘制方法及更新背景位置的逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网页游戏Flappy Birds从0开始制作(三):场景Sky类

同Land类类似,Sky也属于背景层,也是以一定速度向后方移动。

原理一样,我直接上代码:

//同Land类似设置sky的构造函数
var Sky=function (img,x,speed,ctx) {
this.img=img;
this.x=x;
this.speed=speed;
this.ctx=ctx}
this.ctx.drawImage(
Sky.prototype.draw=function() {
this.img,this.x,0)}
//背景向左以规定速度移动,当地图完全消失时,重新设置x坐标为起点
//设置地图的数目
Sky.prototype.setNum=function(num){
Sky.num=num;}
this.x=this.x+this.speed*duration;
Sky.prototype.update=function(duration){
if(this.x<-800)
}
this.x=Sky.num*800+this.x;

补充说明一下
this.x=Sky.num*800+this.x;

因为图片宽为800px,所以更新背景层位置时是用 num*800,

在land类下由于land的素材图片宽度时336px,所以更新位置时num*336

this.x=this.x+Land.num*336;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值