JAVA入门到精通-第41讲-坦克大战8
Posted xuxaut-558
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA入门到精通-第41讲-坦克大战8相关的知识,希望对你有一定的参考价值。
![技术分享图片](https://image.cha138.com/20210702/66d01e24094642c386ab8377501fe740.jpg)
1,门打开; 0,门关闭;是由操作系统自动执行的;
0和1是由操作系统来操作的;
每一个线程都有优先级;操作系统会调用优先级极高的;
中断线程优先级的级别很高;正在执行也得让出;
![技术分享图片](https://image.cha138.com/20210702/009768a881b24467a65129275ff82658.jpg)
数据库会自动有数据库锁;
//子弹连发---运用集合Vector<Shot>
![技术分享图片](https://image.cha138.com/20210702/b3377d2c177140b9aad614df850a1fdc.jpg)
![技术分享图片](https://image.cha138.com/20210702/66cfe53312bf410fbaa3d5192f48a69e.jpg)
把子弹new到向量里面统一管理
![技术分享图片](https://image.cha138.com/20210702/6830fcd7137f48349d4133fda322c0de.jpg)
![技术分享图片](https://image.cha138.com/20210702/461c4d5539de4355a78a5af4e6326e65.jpg)
s既可以指向这个子弹,也可以指向那个;
s是一个代号,面向对象引用;
//画出多颗子弹,用遍历
![技术分享图片](https://image.cha138.com/20210702/e42280fc413d491ea496b4d7db532faf.jpg)
//控制子弹颗数
子弹是在按下J的时候创建的,在开火处加上判断
![技术分享图片](https://image.cha138.com/20210702/7386db282ff345248b30b62a381064fc.jpg)
shotEnemy会滞后一步;
这样做,打完5颗就会没了;
//怎样做?
在向量里面把子弹清除;
myShout.isLive==false;表示子弹已经死亡;
![技术分享图片](https://image.cha138.com/20210702/519939b1599a48ee925187c9917a83d2.jpg)
当子弹碰到边框---remove掉,才可以继续发子弹;
//敌人的坦克消失或者爆炸的效果
子弹的坐标到达敌人坦克的范围;敌人坦克的坐标(x,y);
击中坦克是一种行为-Panel里;这种行为是发生Panel面板上的;
(Shot s,EnemyTank et)
![技术分享图片](https://image.cha138.com/20210702/47e9d62d39414af5b3f76c7e8c0768fd.jpg)
向上/下,坦克形状是一样的;
![技术分享图片](https://image.cha138.com/20210702/a82889f60e5349818b9847392e966286.jpg)
//击中之后,子弹死亡,敌人坦克死亡
![技术分享图片](https://image.cha138.com/20210702/89dbfab8f0f54aea96849f125efbe009.jpg)
![技术分享图片](https://image.cha138.com/20210702/e699898ce3c7401f97040ef15b02979f.jpg)
//击中坦克是需要随时判断是否击中的
run( )函数里面判断是否击中;
让每一个子弹和坦克进行匹配比较:
//取出子弹---判断子弹是否有效
![技术分享图片](https://image.cha138.com/20210702/af089ac2982245fa89b04883539f771b.jpg)
他们都是对象传递的;
![技术分享图片](https://image.cha138.com/20210702/eed272f242784a31890468c949faca6a.jpg)
以上是关于JAVA入门到精通-第41讲-坦克大战8的主要内容,如果未能解决你的问题,请参考以下文章