飞机大战实验报告

上传人:小** 文档编号:91137110 上传时间:2019-06-26 格式:DOC 页数:12 大小:167.51KB
返回 下载 相关 举报
飞机大战实验报告_第1页
第1页 / 共12页
飞机大战实验报告_第2页
第2页 / 共12页
飞机大战实验报告_第3页
第3页 / 共12页
飞机大战实验报告_第4页
第4页 / 共12页
飞机大战实验报告_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《飞机大战实验报告》由会员分享,可在线阅读,更多相关《飞机大战实验报告(12页珍藏版)》请在金锄头文库上搜索。

1、飞机大战实验报告专业:网络工程132班学号:139074298姓名:孙 仁 强计算机科学与技术学院二零一六年十二月一、软件运行所需要的软硬件环境本系统是以Windows系统为操作平台,用Java编程语言来实现本系统所需功能的。本机器的配置如下:处理器:CORE i7主频:1.2Hz以上内存:4G以上硬盘:HHD50G编程语言:Java开发环境:windows7开发软件:EclipseMars二、游戏流程1. 用户打开游戏,进入开始菜单。2. 用户点击开始游戏按钮,进入游戏界面;3. 用户通过触屏方式控制玩家飞机上下左右移动,躲避与子弹相撞;4. 游戏失败后,显示本次游戏得分,用的秒数和水平;5

2、. 退出游戏三、主要代码1、准备代码 设置窗口 使用双缓冲使飞机不闪烁Constant设置窗口大小package com.ahut.准备代码;public class Constant public static final int GAME_WIDTH = 350;public static final int GAME_HEIGHT = 600;package com.ahut.准备代码;import java.awt.Image;import java.awt.image.BufferedImage;import java.io.IOException;import .URL;publi

3、c class GameUtil private GameUtil () public static Image getImage(String path) BufferedImage bi = null; try URL u = GameUtil.class.getClassLoader().getResource(path); bi = javax.imageio.ImageIO.read(u); catch (IOException e) / TODO Auto-generated catch block e.printStackTrace(); return bi; package c

4、om.ahut.准备代码;import java.awt.Frame;import java.awt.Graphics; import java.awt.Image; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent;public class MyFrame extends Framepublic void lauchFrame() setSize(Constant.GAME_WIDTH, Constant.GAME_HEIGHT); setLocation(100, 100); setVisible(

5、true); new PaintThread().start(); addWindowListener(new WindowAdapter() Override public void windowClosing(WindowEvent e) System.exit(0); ); private Image offScreenImage = null; public void update(Graphics g) if (offScreenImage = null) offScreenImage = this.createImage(Constant.GAME_WIDTH, Constant.

6、GAME_HEIGHT); Graphics gOff = offScreenImage.getGraphics(); paint(gOff); g.drawImage(offScreenImage, 0, 0, null); class PaintThread extends Thread public void run() while (true) repaint(); try Thread.sleep(40); catch (InterruptedException e) / TODO Auto-generated catch blocke.printStackTrace(); 主代码飞

7、机:package com.ahut.plane;import java.awt.Graphics;import java.awt.event.KeyEvent;import com.ahut.准备代码.GameUtil;public class Plane extends GameObject private boolean left, up, right, down; private boolean live = true; public void draw(Graphics g) if (live) g.drawImage(img, (int)x, (int)y, null); move

8、(); public void addDirection(KeyEvent e) switch (e.getKeyCode() case KeyEvent.VK_LEFT: /左 left = true; break; case KeyEvent.VK_UP: /上 up = true; break; case KeyEvent.VK_RIGHT: /右 right = true; break; case KeyEvent.VK_DOWN: /下 down = true; break; default: break; public void minusDirection(KeyEvent e)

9、 switch (e.getKeyCode() case KeyEvent.VK_LEFT: /左 left = false; break; case KeyEvent.VK_UP: /上 up = false; break; case KeyEvent.VK_RIGHT: /右 right = false; break; case KeyEvent.VK_DOWN: /下 down = false; break; default: break; public void move() if (left) x -= speed; if (right) x += speed; if (up) y

10、-= speed; if (down) y += speed; public Plane(String imgpath, double x, double y) this.img = GameUtil.getImage(imgpath); this.width = img.getWidth(null); this.height = img.getHeight(null); this.x = x; this.y = y; public Plane() public void setLive(boolean live) this.live = live; public boolean isLive() return live; 子弹:package com.ahut.plane;import java.awt.Color;import java.awt.Graphics;import java.awt.Rectangle;import com.ahut

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号