基于Java坦克大战小游戏设计(3)

剩下的东西也就那样了,具体关卡的设置什么的也交给配置文件.pro来完成。

主要有一个读取配置文件的方法要注意,这个方法具体还没有去研究,估计也就是普通读文件那样来实现的吧。

public static Properties getProperties(String url) {
		InputStream in = GameStartUtil.class.getResourceAsStream(url);
		Properties ps = new Properties();
		try {
			ps.load(in);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return ps;
	}

把这个方法写成静态方法放在GameStartUtil类中,可以方便的调用。

得到的返回值ps中,实际上是一个类似于集合的东西,同时顺序会被打乱,即与你写在.pro文件里的顺序可能会有所不同。

public void readBombPro(String fileName) {
		Properties ps = GameStartUtil.getProperties(fileName);
		
		Set<Object> set = ps.keySet();
		
		int i = 0;
		int j = 0;
		for(Object o : set) {
			if(o.equals("img")) {
				String[] str = ps.getProperty("img").split(";");
				while(j<10)
				{
					System.out.println(str[j]);
					bombImgs[i++] = new ImageIcon(str[j++]).getImage();
				}
			}
		}
	}
	
	public void UpdateHashMap(Map<String, Image> map, String s) {
		// TODO Auto-generated method stub
		map.clear();
		String[] arr = s.split(";");
		
		for(String str : arr) {
			String tempStr[] = str.split(":");
			map.put(tempStr[0], new ImageIcon(tempStr[1]).getImage());
		}
	}

在.pro文件里,按照规定的格式来写。

比方说像这样在bomb.pro中写:

img:img/0.gif;img/1.gif;img/2.gif;img/3.gif;img/4.gif;img/5.gif;img/6.gif;img/7.gif;img/8.gif;img/9.gif

这表示坦克被打中后的爆炸效果图,它是由10张图片组成。

这里冒号前面就是返回值ps的键key,后面的则是它的值。同时我们自己规定分号“;”来分出不同的图片

假如是敌人的话,我们甚至还可以加上他们出现的时间,来控制整个游戏的进度。

我们用一个set集合来存储返回值ps的所有的键key,再用判断语句来对不同的key做不同的逻辑处理。如上代码所示。

其它的也就那样,都比较简单。

代码:https://github.com/1998y12/TankFightGame

下载地址:https://download.csdn.net/download/qq_41508508/10582420

图片素材来源于网上。

接下来,想尝试实现局域网内联机,应该是要用到socket这方面的知识,都忘光了......

 

J2SE ( Java 2 Standard Edition)就是Java2的标准版,主要用于桌面应用软件的编程,是伴随着计算机技术的飞速发展而诞生的一项新的开发技术。随着个人电脑的日益普及、Java功能在个人电脑上的实现Java应用程序产生的单机增值服务逐渐体现出其影响力,对丰富人们的生活内容、愉悦身心、开发智力等起着不可忽视的作用。而随着网络的普及,信息技术的发展,电子竞技也以一种正规的行业逐步走进了人们的生活,特别是对年轻的一代,游戏更是娱乐项目中不可缺少的一种,玩游戏是一种娱乐,其实开发游戏更会使人乐在其中。 局域网坦克大战采用MyEclipse平台开发调试。玩家坦克的运行是通过键盘响应事件控制,敌方坦克则是自动运行并具有了一定的智能性。程序进行了精简和优化,游戏运行流畅,具有一定的吸引力。 论文通过总结和分析JAVA游戏的开发流程和代码框架的设计,开发了一款基于J2SE架构的游戏——局域网坦克大战,该游戏主要分为场景类、子弹类、坦克类、敌方坦克类、我方坦克类等几个类,能够实现敌方坦克和子弹的智能化运行等,具有一定的复杂性和可玩性。 题目:基于J2SE的局域网坦克大战设计实现 运行平台要求: 1 首先电脑里按有JDK,然后安装MyEclipse。如果没有MyEclipse,只安装JDK也可以。 2 电脑系统Wxp,W7都可以,最好是Wxp 导入工程步骤和运行程序: 1 先讲解用JDK如何运行 (1)找到tank_java里的src文件夹,把src文件夹放到硬盘里,例如是D盘。 (2)开始->运行->cmd->输入d: ->cd src ->cd wyf ->cd cgq ->javac TankServer.java->java TankServer (3)开始->运行->cmd->输入d: ->cd src ->cd wyf ->cd cgq ->javac ClientServer.java->java ClientServer (4)输入用户名和IP等即可游戏。 2 用MyEclipse如何运行 (1)打开Myeclipse->File->import->General->Existing Projects into Workspace->选中Select root directory->单击右边的Browse ->找到Tank_Java,选中,确定->Finish (2)找到src打开->wyf.cgq->鼠标右键TankServer.java->Run As->Java Application (3)找到src打开->wyf.cgq->鼠标右键ClientServer.java->Run As->Java Application (4)输入用户名和IP等即可游戏
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值