这个坦克大战参考了初学java时看的马士兵的一个教程和小霸王上的坦克大战,并且加入了很多在魔兽中的英雄属性(移动速度,攻击速度,攻击力,生命上限等),还加入了一个小巧的地图编辑器。

废话不多说,先上图:

游戏界面:

地图编辑器:

详细说明:

1,除了坦克的图片外,其他图片全部为自己手绘,可能有点丑,特别是那个基地——!

2,游戏主界面,右边为属性窗口,在主界面按F4打开地图编辑器

3,游戏规则说明:每一局 会有3波敌人,每一波有6个,每当上一波敌人快被全部消灭时,下一波敌人就会出现。3波敌人全部被消灭则自动进入下一关。攻击敌人有一定的概率会在地图上随机出现不同的食物,食物总共有10种,吃完之后可以增强各种属性(比如增加生命上限,子弹威力,攻击速度,移动速度,无敌等),基地每隔一分钟会随机产生一个食物在基地正上方。基地被消灭或者生命树为0则游戏结束。敌人无法吃到食物。土墙生命值较少,可以被摧毁。钢板无法被摧毁。河流无法被摧毁,但是子弹可以从河流上飞过。每过一关,敌人的属性都会增强,同时自己的属性也会增强(死亡复活后保持不变)。超级子弹是向八个防线发射的,有个数限制,通过吃食物可以增加个数。敌人的子弹不会攻击到敌人,但是自己的子弹会攻击到自己的基地!所有坦克互相之间无碰撞体积。

4,地图加载

每一关的地图文件保存在根目录下的 maps文件夹中,分别以0,1,2,3……表示第1,2,3,4……关,后缀名为.tkm,游戏会自动根据当前关卡加载相应地图。

5,消息

受到攻击,以及吃到食物之后都会产生一个消息在屏幕上,并缓慢上升,几秒后消失。比如被攻击后会产生一个类似于 -20 的消息。

6,属性

自己和敌人都有大约10中属性,分别是坐标,hp,运动方向,炮筒方向,子弹威力,子弹速度,子弹间隔,移动速度,超级子弹个数,无敌时间等,(注意,其中子弹速度是子弹的飞行速度,而子弹间隔是上一颗子弹发出到下一刻子弹发出的最小间隔时间),这些属性都可以通过相应的食物来获得提升,但是有些属性有上县。

7,障碍物

障碍物有3种:土墙,钢板,河流,土墙有较少生命值,可被摧毁。钢板无法被摧毁。河流无法被摧毁,但可被子弹穿过。

8,基地

基地有生命值,基地生命值为0,则游戏结束。基地每1分钟会产生一个随机食物。有些食物可以增加基地生命上限或者使基地恢复满生命。

9,敌人AI

敌人的ai设定是随机向一个方向走,并根据开火频率设定,每走一步以一定的概率发射子弹。碰到障碍物后会自动改变方向。

10,地图编辑器

地图编辑器可以从右边选择相应的障碍物并放到地图上,选择铲子可以清除。点击保存按钮(其实这不是一个按钮),则自动将地图保存到maps目录中的edit.tkm文件中,将此文件改名则可以当做正常地图使用(比如改为 5.tkm 则变成了第五关的地图,游戏到第五关会自动加载,但请按1,2,3,4的顺序命名),不用编辑基地,因为基地是自动加入到画面下方中央的。没有网格的自动对齐功能,可放置任意位置。替换相应的图片可以改变画面。

11,其他

系统画面刷新频率为 20hz。所有的游戏中的物体的行为都是以此刷新频率为时间基础。

导出为jar文件后无法正常使用,因为图片的加载方法有问题(当时不太懂,现在又懒得改了)。所以请在myeclipse中运行。

敌人参数可能设计的不严谨,可能过难或者过简单,可以自行调整。

文件结构有些混乱,将就着看吧。

目前有四关的地图,可以自己用地图编辑器编辑新的地图

声明:仅供学习娱乐之用。

附:源码下载地址

http://download.csdn.net/source/3124636

2011/3/24  axun

加强版坦克大战(java版)相关推荐

  1. 坦克大战Java版(文末附下载地址)

    坦克大战Java版(文末附下载地址) 未用框架纯手打Java制作坦克大战游戏,实现基本的玩家对战NPC,积分记录保存,排行榜展示等功能 以下是当初我们组制作的简单坦克大战游戏项目展示(文章最后附上项目 ...

  2. 坦克大战 Java版

    由于博客开通不久,以前没有博客,顺便把以前做的项目也介绍下 希望大家支持,谢谢 坦克大战 IDE:MyEclipse 9.0 语言:Java SE 数据库:由于是单机版,不需要较高的安全性,且数据量较 ...

  3. 坦克大战JAVA版(全码)

    游戏运行图片 源码分两大块: java类和resources 其中java中又分了constant.tank.util.window.StartGame(主类):constant里只有Constant ...

  4. 经典90坦克大战 java_坦克大战java版

    import java.awt.*;import java.awt.event.*;importjava.util.Random;importjava.util.List;importjava.awt ...

  5. 仿FC版坦克大战JAVA版

    游戏演示视频地址:https://www.bilibili.com/video/BV1134y1v7Tx?p=1 游戏主界面 关卡1 当在主界面停留10秒钟进入游戏演示模式,已方坦克AI双打 战斗统计 ...

  6. 视频教程-坦克大战-Java

    坦克大战 精通Java Web.手机App.Qt桌面软件开发,6年项目开发经验 曹冬冬 ¥118.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+技术好课免费看 APP订阅课程,领取优 ...

  7. 韩顺平老师坦克大战优化版

    一.项目介绍 1.前言 基于韩顺平老师坦克大战的框架和思路,进行了一些优化.编码上尽量按照阿里的代码规约:有非常详尽的注释:引入了线程池,线程安全集合类,原子类等:通过这个小项目的学习,可以深入地理解 ...

  8. Unity3D_(游戏)2D坦克大战 像素版

    2D坦克大战    像素版 游戏规则: 玩家通过上.下.左.右移动坦克,空格键发射子弹 敌人AI出身时朝向己方大本营(未防止游戏快速结束,心脏上方三个单位障碍物设为刚体) 当玩家被击杀次数>=3 ...

  9. 优秀课程案例:使用Scratch制作坦克大战增强版!

    点击上面微信号关注我关注我哟每天坚持推送文章,争取做到日更,喜欢的可以设置星标,并分享点赞我们的文章,非常感谢大家的支持,您的点击的在看就是我们的动力! 今天我们来分享一个坦克大战增强版.同时大家持续 ...

  10. 【180622】VC++ 超经典坦克大战双人版

    超经典坦克大战双人版,VC++完整版,含声音.地图.资源文件,编译后请将Map.Sound.graphics拷贝至可执行文件同级目录内,否则出错.大家看看界面就知这游戏有多经典了吧?小时候没玩过的不多 ...

最新文章

  1. Linux 文件系统权限(一)
  2. 圆圈在动吗?这个骗过人眼的动图火了,LeCun解释原理:和CNN对抗攻击类似
  3. 在UpdatePanel中弹出对话框
  4. python对文件的读操作方法有哪些-python--文件的读写操作
  5. 一文探讨 RPC 框架中的服务线程隔离
  6. Register-SPWorkflowService 远程服务器返回错误: (404) 未找到
  7. 春节回来了,你收获了什么?
  8. python怎样查看describe的结果_Python学习第126课--pandas拿到数据后的总体描述
  9. Python_字符串
  10. 【论文写作】精品课程教学网站中系统内核设计如何写
  11. java 线程间通信方式_「转」JAVA多线程之线程间的通信方式
  12. [Asp.net Mvc]通过UrlHelper扩展为js,css静态文件添加版本号
  13. Pygame教程(非常详细)
  14. Django菜鸟教程学习记录(一)
  15. 编译原理——将代码翻译成四元式序列
  16. 【180629】VC++ QQ头像连连看游戏源码
  17. 嗖嗖移动业务大厅(源码下载+注释全 值得收藏)
  18. 服务器被攻击怎么办?常见处理方法
  19. 长城汽车召回上万辆欧拉IQ:电池存在安全隐患,曾因自燃被拉黑
  20. 计算机管理用户组不见了,win7系统计算机管理本地用户和组不见了的解决方法...

热门文章

  1. Canvas drawImage在高清屏幕下变模糊,解决方案
  2. iphone照片恢复至android,绝招!如何恢复苹果/安卓手机上误删的照片,详细教程奉上!...
  3. 关于三角形的心及费马点
  4. python算法工程师面试_算法工程师的面试经历及总结
  5. php-fpm彻底解决502(php-fpm多开、nginx限制并发、定时重启)解决网站卡顿的终极奥义
  6. 通过线构造面(C# + ArcGIS Engine 9.2)
  7. 【从饮水机到名人堂之c语言】日常学习总结
  8. 【Python】5行代码采集3000+上市公司信息
  9. vm本地虚拟机导入服务器,vmware虚拟机导入到云服务器
  10. 专访王博,国内资深游戏3D角色美术大神