问题:此时的敌方坦克和我方坦克都超出窗口边界了,我们需要去设置修改他们在规定的窗口区域内去移动,不能超过边界,如何做呢?
答:先需要考虑每个敌方坦克的其实x,y坐标
如果向上getY()>0还可以继续往上走,因为往上走y--,但是如果<0为负数,则不能往上走,
如果向右getX()+80<700.可以继续往右走,因为x++.但是它必须getX()+80<700,否则会超过边界
this.setSize(700,700);//画框窗口像素大小
(老出错)如果向下getY()+105>0.可以继续往右走,因为x++.但是它必须getX()+80<700,否则会超过边界
如果向左getX()>0,则x--,所以不能小于0
再修改我方坦克不超过边界,也是要考虑其实xy坐标,只是我们的moveUp/moveDown/moveLift/moveRight()方法是在TankPanel类里的监听时间中的KeyPress()方法里的,所以要在里面加if()条件
敌方坦克在区域内活动了,但是我方坦克向右和向下的时候还是会超出边界!ai