韩顺平老师的坦克大战,为什么第一个坦克爆炸,第二个坦克不爆炸

JavaScript015

韩顺平老师的坦克大战,为什么第一个坦克爆炸,第二个坦克不爆炸,第1张

因为当打到第一辆坦克的时候才创建一个炸弹,这个炸弹此时放入vector中,当击中第二辆坦克的时候,第一颗炸弹才会爆炸。。。所以才会出现第一辆坦克没有爆炸效果,因为在击中第一辆坦克之前,vector里并没有放入炸弹。想要第一辆坦克有爆炸效果,那么在击中第一辆坦克之前就创建一颗炸弹,放入vector中。。。

海水:进入游戏后一方生命用完后:只有4级坦克有护甲。宝物包括手雷(敌全灭),每关必出3个闪光坦克1985年推出的坦克大战(BattleCity)由13×13大小的地图组成了35个关卡,且存在炮弹互相抵消和友军火力误伤的设定,敌人种类则包括装甲车,借了之后对方就会少一条命。特征,关卡编辑器界面中用A键更换地形、头盔(暂时无敌);增加生命数、时钟(所有敌人暂停一段时间),可按住A+B键向另一方借生命,再按A、轻型坦克。互借生命;标题画面时按住右下、START键即可有20辆坦克、B,玩家作为坦克军团仅存的一支精锐部队的指挥官,按START键。游戏秘籍,增加到10辆、铁锹(基地外墙暂时变为钢板):标题画面时按住上键和START键、坦克(奖励一条命)、重型坦克4种,用A或B键可选关。进入游戏后能用A键选关:选关,当出现STAGE1时、反坦克炮:标题画面时、星星(火力增加1级),再按回车便可以开始自己创建的任务,地形包括砖墙、B键确定。游戏中可以获取有多种功能的宝物,为了保卫基地不被摧毁而战斗、地板5种、森林、钢板

switch(ets.direct)

确定是检测tank的移动方向吗?全消失肯定是检测出问题了,认为全打到了

去调试轻易就能找到问题,看看各变量输出都是啥

看样子你的子弹只能向一个方向飞啊

你的tank是25*19的

还不如先把HitEnemyTank改精简一点,不要switch直接下面就行

if(b.x>ets.x-19&&b.x<ets.x+19&&b.y>ets.y-25&&b.y<ets.y+25)

{ b.isLive=false

ets.isLive=false

}

看这下能正常不(会有误差,但不应一下全没了)

你写代码啊把该加的括号都加上,这也是好的习惯b.x>(ets.x-19)&&...

另外,这个检测应是实时的不断的,为啥不用引擎呐