后期遇到问题以和解答

后期遇到问题以和解答

ID:20480298

大小:28.50 KB

页数:6页

时间:2018-10-13

后期遇到问题以和解答_第1页
后期遇到问题以和解答_第2页
后期遇到问题以和解答_第3页
后期遇到问题以和解答_第4页
后期遇到问题以和解答_第5页
资源描述:

《后期遇到问题以和解答》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、后期遇到问题以及解答分类:项目开发流程详解2008-10-0614:47373人阅读评论(0)收藏举报1.建立一个无返回值的lauchFrame()方法来完成画框架框架800*600颜色lightGray浅灰色不可以改变大小初始化显示位置调用Component里面的setLocation(x,y);2.通过paint(Graphicsg)来画出圆。调用g.fillOvar(x,x,width,height);3.通过双缓冲技术来实现坦克画面动起来不流畅的感觉坦克动起来,采用线程技术(线程用内部类表示),每间隔50MS重画一次画面,重画采用repaint();调用update(Graphics

2、g)1.画一个800,600的iamge2.在图片上面画一个跟主窗体一样大方形3.调用paint(Graphicsg)来画坦克(也就是圆)注意:在IMAGE上面画方块的时候一定要和主体窗口一样大,要不回出现画一长条粗线的状况。技巧:把所有数字都用变量代替,修改起来方便4.定义接收键盘的内部类KeyMonitorextendsKeyAdapter5.定义坦克自己的类,并且定义自己接收键盘按下事件。6.如何让坦克朝八个方向走1.把每一个按下事件用一个BOOLEAN值记录下来,当按下是就把值设置为TRUE,否则FALSE;2.在定义一个枚举enum设置八个值记录下八个方向,再用switch来确定该

3、往那里走。3.利用switch来确定enum中的哪个方向,当按下的时候把值设置为true当键盘弹起是把值设为false;7.画出子弹,运用面向对象思维,定义一个子弹类,通过坦克的方向来确定子弹的方向,定义一个move方法来接收移动参数。定义一个容器保存子弹,按下CTRL时加入子弹,当子弹出界的时候就在容器里面移除删除。8.坦克被打中时消失。给子弹和坦克定义一个Rectangle返回值的方法,在子弹类里面检测两个方法是否有接触。当接触了后就把坏坦克从坏坦克容器里面移除。在坦克里面定义一个boolean值代表坦克是否活着,当坦克活着的时候值为true;当坦克死了之后值为false;注意:机器坦克

4、在Rectangle返回值的方法里传入的是机器坦克容器,主战坦克在Rectangle返回值的方法里传入的是主战坦克引用9.坦克死掉后子弹也死亡。为子弹设置一个boolean值代表子弹的死活,当子弹活着时为true;子弹死了后值为false;10.坦克死掉后有爆炸产生,定义一个爆炸类在类。难点,爆炸需要在子弹与坦克相撞的地方发生,在tankClient里面定义一个装爆炸的容器,采用ArrayList和LinkedList在这里的效果差不多。在子弹类里面的getRect()方法里面调用爆炸类容器没相交一次就往里加一个爆炸,接着在tankClient里面画出来。位置就是坦克和子弹相交的地方。11.

5、坦克和子弹不能跑出屏幕当子弹跑出屏幕的时候让它消亡当坦克跑出屏幕的时候要它呆在屏幕边缘不给出去,坦克具体做法,当坦克小于边缘坐标时让坦克等于边缘坐标,当坦克大于边缘坐标时,让它等于边缘坐标。12.机器坦克发射也发射子弹,并且子弹不会伤到自己方。在创建子弹时指定好坏蛋,在子弹构造方法里面加入,当坏子弹碰到坏坦克时在子弹里面的hitTanks(Listtank)里面加入一个判断,判断是否是友方发出的如果是,就不死亡,反之。13。出现问题注意:1.当坦克死亡之后,坦克还可以发射子弹。在坦克里面的fire方法中加入当坦克死亡时返回null,而不是继续往里加子弹2.当坦克死亡后,机器坦克打

6、坦克死亡的地方时,还是会出现爆炸,这是由于在Missile类里面没有判断主战坦克死了以后该怎么处理,在判断语句里面加上一句当坦克死亡的时候不能产生爆炸。14.给当前游戏添加一堵不可穿越的墙壁,墙也是一个对象,把墙单独设置成为一个类。在墙里面也设置一个碰撞类,在坦克类里面调用,用两个变量记录前一个X,Y的值,当坦克碰到墙壁时,把坦克的X,Y值赋值为前一个X,Y的值。随机生成墙壁:在墙壁里面建立一个方法,方法里面定义一个随机for循环的随机数,再在for循环里面,加入随机生成的X,Y值和width,height值,横墙和竖墙通过两个for循环来确定。再加入个一个List当中。15.坦克不能互相穿

7、越,在坦克里面设置一个碰撞类穿入敌人所有坦克,也就是list数组,一个一个遍历,当坦克不是当前坦克时就检测是否发生碰撞,如果发生碰撞了,就stay()到前一个X,Y位置。16.给当前坦克设置一个超级炮弹可以八方向发射子弹,首先考虑子弹是由什么控制发出来的,根据子弹的方向是由坦克的方向确定这个前提,可以在tank类里面设立另一个发射子弹的方法,把坦克8个方向一次都传进去,先把妹举enum转化为数组在做一个for

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。