NO.18 飞机大战(2)

今天将接着昨天的项目完成,昨天已实现出现英雄机、敌机、小蜜蜂的功能,接下来要实现的功能有以下3个:

1)可以鼠标控制英雄机移动

2)敌机竖直下落,小蜜蜂先右移遇到边界左移

3)英雄机可以发子弹

ShootGame类中主方法内容不变,只需要在action中添加内容即可,如下:

ShootGame中方法

实现鼠标控制英雄机移动:

ShootGame中方法的部分,获取鼠标x,y的坐标通过hero.moveTo方法改变英雄机的坐标
Hero中的方法,使鼠标停留在英雄机的中心位置

实现敌机竖直下落,小蜜蜂先右移遇到边界左移:

ShootGame中方法调用其它类的step方法
由于飞行物都有移动功能,把FlyingObject定义为抽象类,增加step抽象方法
Airplane中方法重写
Bee中方法重写
Bullet中方法重写
Hero终方法重写,实现图片间隔时间切换

英雄机可以发子弹:

ShootGame中方法
Hero中方法,根据火力值返回数组,使画出子弹列数不同(上为2和1列子弹数)

最后运行结果是(默认火力为零,返回一个长度的数组):

有些东西还没学到,虽然不是很理解,但能大概知道。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 今天开始做一个小型项目: 实现一个英雄机发子弹可以消灭上方掉落的敌机和小蜜蜂,打掉敌机可以得分,而打掉小蜜蜂可以获...
    smallnumber阅读 2,047评论 0 0
  • 您好,本篇文章主要描述如何用面向对象编程思想仿写微信飞机大战。采用JS脚本来控制HTML5新标签canvas画布,...
    梁煜辉阅读 4,971评论 2 2
  • 2012年我认识了大为,好高冷一个人,一般不笑,第一次见面带我吃饭,吃的湘菜还是川菜来着,就两个人吃,还拼命的点菜...
    杨好命阅读 1,657评论 0 0
  • 一念一望 一步风雨 一次伪装
    顾陈阅读 1,805评论 0 0

友情链接更多精彩内容