重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

Html飞机大战(九): 使徒来袭 (设计敌机)

好家伙,本篇介绍敌机

创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、网站建设、外贸网站建设、天心网络推广、微信小程序开发、天心网络营销、天心企业策划、天心品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供天心建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com

好了,按照惯例我们来理一下思路:

我们有一个敌机类,第一步当然是实例一个敌机对象,

然后我们把这个敌机放入我们的敌机群(敌机数组)

然后是熟悉的移动和绘制

那我们回顾一下子弹的生成逻辑

变量: 子弹 bullet 弹夹(用来装子弹的东西)bulletList[]

方法:装填子弹 绘制子弹 移动子弹

子弹发射的物理逻辑是很简单的:

生产第一个子弹,推入弹夹中,绘制弹夹(即绘制弹夹中的所有子弹),

生产第二个子弹,同样推入弹夹,移动第一颗子弹(应该说是改变第一颗子弹的y坐标),绘制弹夹中的所有子弹

。。。。。。

生产第n个子弹,推入弹夹中,改变第n-1颗子弹的Y坐标,绘制弹夹中的所有子弹

有没有感觉到两者逻辑的相似之处

(像啊,太像了)

子弹和敌机的处理,本质上是用的是同一套逻辑

那么,开始干活:

1.配置项

这里我们会用到两种类型的配置项E1和E2

(因为我们有两种类型的敌人,大敌机和小敌机,其中e1为小敌机(血少),e2为大敌机(血厚))

先设置一个数组存放图片资源

//e1用于存放小敌机的图片素材
        const e1 = {
            live: [],
            death: [],
        }
        e1.live[0] = new Image();
        e1.live[0].src = "img/enemy1.jpg"
        e1.death[0] = new Image();
        e1.death[0].src = "img/enemy1_boom1.jpg"
        e1.death[1] = new Image();
        e1.death[1].src = "img/enemy1_boom2.jpg"
        e1.death[2] = new Image();
        e1.death[2].src = "img/enemy1_boom3.jpg"

        //e2用于存放小敌机的图片素材
        const e2 = {
            live: [],
            death: [],
        }
        e2.live[0] = new Image();
        e2.live[0].src = "img/enemy2.jpg"
        e2.death[0] = new Image();
        e2.death[0].src = "img/enemy2_boom1.jpg"

新闻名称:Html飞机大战(九): 使徒来袭 (设计敌机)
文章路径:http://cqcxhl.cn/article/dsojgji.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP