思路:要让我方坦克的子弹击中敌方坦克,那么也就是说我方坦克的子弹x,y要在敌方坦克x,y区域内,这样我方坦克发射的子弹落入这个地方坦克区域内,敌方坦克就消失了!

如何写呢?

(1)首先我们得在TankPanel类里去写一个hitTank()方法--并且传入参数(Shot s,EnemyTank enemyTank)--并且开始判断当敌方坦克炮筒向上或者向下,它的区域都是一样的,只是炮筒方向不一样,只要子弹落入在这个区域内,就可以消灭敌方坦克,同理敌方坦克炮筒向左或向右也是一样的,但是子弹我们有设置boolean bulletIsLive=true;只要击中敌方坦克就消失,那么敌方坦克也消失,我们也得需要再EnemyTank类里去添加boolean enemytankIsLive=true;最开始存活,被击中后消亡

(2)此时写完了我方坦克子弹要击中敌方坦克,就得让子弹落在敌方坦克的区域内,但是现在就是要判断你击中的到底是哪一个敌方的坦克,因为现在并不知道击中的是哪个敌方坦克!!!所以写完以后还要去判断什么时候我方坦克是否击中了敌方的哪个坦克,需要把上诉方法放在一个循环里去遍历判断比较好,放在run()方法里面去判断,因为它每隔100毫秒就会去重绘,你不知道哪个敌方坦克将被击中

(3)以上都写好以后,最后要开始绘制,在paint()方法里,之前我们绘制敌方坦克时,

把敌人坦克遍历出来,就开始绘制,现在不可以直接这么做了!!!

要去判断敌人的坦克是否存活,如果没有存活,才绘制!!!

(4)成果展示

 

(6)最后一步,当你射中敌方坦克时,你的子弹并没有马上消亡,而是到了窗口临界点才消失,所以 写到这里时还要再Shot线程里加入一个条件,之前有了一个,当子弹碰到窗口灵界点时,子弹才消亡,现在还要写,当子弹碰到坦克时,也消亡

初学4之坦克要求(我方坦克击中敌方坦克,敌方坦克消失)相关推荐

  1. 100行JS代码实现❤坦克大战js小游戏源码 HTML5坦克大战游戏代码(HTML+CSS+JavaScript )

    坦克大战js小游戏源码 HTML5坦克大战游戏代码(HTML+CSS+JavaScript ) HTML5坦克大战网页小游戏,完美还原小霸王学习机效果,以坦克战斗及保卫基地为主题,属于策略型类游戏. ...

  2. 坦克大战java_清华毕业大佬用一个坦克大战项目讲完了23种设计模式

    先给大家讲述一下坦克大战是怎么进行运行的. 坦克大战第一节: new 出一个窗口: 设定标题栏内容: TankFrame从Frame继承+显示: 认识paint方法,重写: 坦克大战第二节 学习gra ...

  3. 微信小游戏制作坦克大战(六)碰撞检测,主角坦克碰到敌方坦克、炮弹爆炸

    微信小游戏制作坦克大战(六)碰撞检测,主角坦克碰到敌方坦克.炮弹爆炸 导入坦克爆炸效果的图片和声音素材 给主角坦克添加事件 给爆炸动画添加事件 当主角坦克碰到敌方坦克或者炮弹时显示爆炸效果 下一篇文章 ...

  4. java画好看坦克_坦克大战第一节——画出自己的坦克(新手篇)

    刚刚开始学习java,对java不是很熟悉,但是自己的兴趣挺喜欢java.现在自己在自学java做一个小游戏,坦克大战. 自己现在完成了画出自己的坦克和坦克的移动方向.希望各位大神指导一下我这个刚刚学 ...

  5. 坦克大战第一节——画出自己的坦克(新手篇)

    刚刚开始学习Java,对Java不是很熟悉,但是自己的兴趣挺喜欢Java.现在自己在自学Java做一个小游戏,坦克大战. 自己现在完成了画出自己的坦克和坦克的移动方向.希望各位大神指导一下我这个刚刚学 ...

  6. java坦克大战代码脚本之家,javascript制作坦克大战全纪录(1)

    本文写作的目的是巩固一下自己最近学习的js知识, 这个教程适合熟悉js基本语法和面向对象语法的小伙伴学习.由于自己也是刚学js不久,所以难免出现错误.如果发现希望给予指正. PS:这个坦克大战是在网上 ...

  7. 微信小游戏制作坦克大战(七)碰撞检测,敌方坦克碰到主角坦克炮弹爆炸

    微信小游戏制作坦克大战(七)碰撞检测,敌方坦克碰到主角坦克炮弹爆炸 导入发生炮弹的音效素材 主角坦克发射炮弹或者敌方坦克发射炮弹时播放音效 修改敌方坦克积木 4.效果: 敌方坦克碰到主角坦克炮弹爆炸 ...

  8. java 坦克重叠_【Java】我所知道坦克大战(单机版)之画出坦克的实心圆、让圆动起来、双缓冲解决闪烁问题...

    28640发布于 今天 02:47 本篇文章目的 画出坦克的实心圆 让坦克圆动起来 双缓冲解决闪烁问题 一.画出代表坦克的实心圆 我们需要画出一个圆,那么可以使用fillOval方法 fillOval ...

  9. c语言坦克大战程序设计,用纯C语言实现坦克大战

    好久没给大家看有意思的C语言实现的代码了,今天给大家分享一个C语言实现坦克大战的游戏源码,依旧是纯C语言,点c文件,但是是在TC的环境下,运行效果截图如下: 上下左右控制方向,空格为发射炮弹,还带声音 ...

最新文章

  1. 原来... C++ explicit的作用
  2. 脊柱关节炎的目标治疗推荐
  3. GAE、SAE与BAE的对比分析
  4. SQL 2005启用组件Ad Hoc Distributed Queries
  5. 数据结构-数组模拟队列-环形实现(JAVA)
  6. SQLServer重建索引
  7. Cloud Toolkit 部署应用到阿里云轻量应用服务器
  8. css div里引用em字体会变斜体_CSS文字加粗斜体[解决代码]
  9. spring总结(01)
  10. 数据库半年回顾:国外波澜不惊,国内势如破竹
  11. SCCM 2012系列2 服务器准备下
  12. spring事件监听器系列二:@EventListener注解原理
  13. 数据库系统概论 思维导图
  14. Python调整图片透明度
  15. 设计一个时间片轮转调度算法实现处理机调度的程序,具体内容如下
  16. 初中计算机考试素材,初中信息技术素材.ppt
  17. [亲测可用]Premiere Pro 2020视频剪辑软件,premiere2020软件安装包
  18. VScode:禁止VScode自动升级
  19. 2021年茶艺师(初级)报名考试及茶艺师(初级)模拟考试题库
  20. python数据分析怎么画_跟小白学Python数据分析——绘制维恩图

热门文章

  1. 一小时让你Get到面试套路:记一次Java初中级程序员面试流程梳理
  2. wait 和 waitpid 详解及代码示例
  3. windows之 访问控制模型
  4. ASP.NET Core MVC 和 EF Core 教程 - 创建、读取、更新和删除
  5. Python和Excel终于互通了!这个Jupyter插件能自动生成代码并实现数据分析
  6. 2023.3.29-2023.04.04 巽风答题答案大全
  7. Python Numpy 教程(下)
  8. 详解clientWidth,scrollWidth,offsetWidth,innerWidth,outerWidth
  9. python驼峰命名法_蛇形命名,驼峰命名,你的选择?
  10. ios系统 微信时间显示NANANANA