网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月28日漏签0天
n维解析几何吧 关注:28贴子:465
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 9回复贴,共1页
<<返回n维解析几何吧
>0< 加载中...

坦克大战

  • 只看楼主
  • 收藏

  • 回复
  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
坦克大战
WWJ 20110XXXXXXX
DZK 20111XXXXXXX
坦克大战是我们从小就开始玩的游戏,小时候我们只是在联电视的小游戏机里,手握手柄,目视屏幕,那时候,看着一个个的敌人被我们击灭,听着激动人心的背景音乐,我们玩得乐此不疲,那是我们童年的乐趣,是现代科技给我们带来的难以忘怀的美好回忆,彼时的孩童,是怎么也不会想到今天,利用所学的知识,能自己制作出原模原样的坦克大战,虽然少了一些复杂内容,但至少是我们自己的心血,我们倍感荣幸也倍加珍惜这样的作品。


  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
说实话,编写这一程序的过程并不简单,我们所学知识甚少,又极度缺乏实战经验,突如其来的艰巨任务使得我们不得不抓紧时间做好充分准备,


2025-05-28 13:06:17
广告
  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
在我们的预想中,可以做到与玩过的坦克游戏并无两样的效果,包括间接流畅的开头提示面板,漂亮的背景图案,小巧美观的坦克造型,精彩的发射子弹的画面,重重的障碍物阻挡,击中敌方坦克时的爆炸,坦克生命数,激发斗志的背景音乐,坦克行走范围的界定,游戏记录的储存,甚至还有大本营的存在,总之,关于游戏能想到的一切,我们都希望把它用知识在程序运行时良好地体现出来


  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
但是,由于知识与能力的限制,很多方面,我们根本无法实现,因此,能简化的简化,不能用简单方法替代的,我们就直接省略。首先,障碍物及大本营的描述相当复杂,我们尝试了很多力所能及的方法得到的都是错误频出,其次,子弹类的编写达不到相互区分的层次,使得难以避免敌方坦克自相残杀,还有,由于游戏总体较简单,故只设计一关,玩家仅一条命。背景音乐也因时间太短而没添加上去。


  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
int enSize = 6;
Vector<Node> nodes=new Vector<Node>();定义炸弹**,Vector<Bomb> bombs = new Vector<Bomb>()定义形成炸弹的图片,
4.public void showInfo(Graphics g)为提示信息类,包括提示玩家杀敌数,画图画出坦克图像、子弹,
5.public void drawTank(int x, int y, Graphics g, int direct, int type)判断敌我双方兵选择颜色
6.switch (type) {
case 0:
g.setColor(Color.cyan);
break;
case 1:
g.setColor(Color.yellow);
break;
}判断方向,绘制正确图像
7.public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_E) {
//
this.hero.setDirect(0);
this.hero.moveUp(); } else if (e.getKeyCode() == KeyEvent.VK_F) {// //char a =
// e.getKeyChar();注意小写e.getKeyChar()=='f'
this.hero.setDirect(1);
this.hero.moveRight();
} else if (e.getKeyCode() == KeyEvent.VK_D) {
this.hero.setDirect(2);
this.hero.moveDown();
} else if (e.getKeyCode() == KeyEvent.VK_S) {
this.hero.setDirect(3);
this.hero.moveLeft();
} if (e.getKeyCode() == KeyEvent.VK_J) 判断敌方是否发射子弹


  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
8.记录类
private static int enNum = 20记录每关有多少敌人
private static int myLife = 3设置我有多少条命、
private static int allEnNum = 0 记录消灭了多少敌人
public static void getRecord() {
try {
fr = new FileReader("f:\\test\\record.txt");
br = new BufferedReader(fr);
String n = br.readLine();
allEnNum = Integer.parseInt(n);
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
br.close();
fr.close();
} catch (Exception e1) {
e1.printStackTrace();
}
}
} // 保存击毁敌人的数量和敌人坦克坐标,方向



  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
9.public void actionPerformed(ActionEvent e) 对用户不同的点击做不同的处理
(e.getActionCommand().equals("new")) 创建战场面板
mp = new MyPanel("new"); 启动线程
this.addKeyListener(mp); 显示刷新JFrame
(e.getActionCommand().equals("EXIT")) 用户要退出 先保存击毁数量
Record.keepRecord() System.exit(0); 对存盘退出做处理
(e.getActionCommand().equals("save")) {
new Record().setEts(mp.ets);其他工作保存击毁敌人的数量和敌人的坐标
new Record().keepRecordAndEnemy(); 退出游戏
(e.getActionCommand().equals("goOn")) {恢复上局游戏 创建战场面板


  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
**


2025-05-28 13:00:17
广告
  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这是昨晚我跟你王学长在一张床上一起写的


  • N维解析几何
  • 大一
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼













登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 9回复贴,共1页
<<返回n维解析几何吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示