J2ME游戏源代码—Eliminator Demo

 

Eliminator是我翻译的《J2ME游戏开发》中的实例,这里给出它的Demo版本,没有什么游戏性,但是演示了基于MIDP2.0的手机游戏开发中,游戏的基本框架。其可执行文件如下:

附件 Eliminator-没有敌人的版本(可执行文件).rar

Eliminator是一个垂直滚动背景的射击游戏,这里是它的Demo,包括了开机的启动界面、主界面、还有游戏运行场景,但是没有加入敌人。相关的界面如下:

J2ME游戏源代码—Eliminator <wbr>DemoDemo” TITLE=”J2ME游戏源代码—Eliminator Demo” />

如果你对这个游戏感兴趣,这里有它的工程文件,使用JBuilderX建立。工程文件如下:

附件 Eliminator-没有敌人的版本(工程文件).rar

如果想仔细阅读本游戏,并制作出自己的游戏,请参考我前文《J2ME游戏开发(J2ME_Game_Development_with_MIDP2中文版)》中的附件,它是本游戏对应的pdf格式的电子书。

这里给出了目前最完善的可执行文件和JBuilderX的工程文件。

Eliminator是我翻译的《J2ME游戏开发》中的实例,这里给出它的Demo2版本,仍然没有什么游戏性,但是有所改进。其可执行文件如下:

附件 Eliminator-精简版本可执行文件.rar

Eliminator是一个垂直滚动背景的射击游戏,如书中第71页所述:”这里使用Sun公司的WTK2.0(J2ME
Wireless Toolkit version
2.0),它在渲染滚动的TiledLayer时有一些问题,Nokia的J2ME开发包对滚动TiledLayer处理得更有效率,最好的选择是使用
Nokia的开发包。在本书创作过程中,据说Sun公司新发布的WTK已经解决了这些问题。”在使用JBuilderX建立工程文件时,如果使用其自带的
WTK(”J2ME Wireless Toolkit 2.0_01″),游戏在模拟器运行就会非常顿,而使用”J2ME Wireless
Toolkit 2.1_01″就没有这种情况,建议读者到http://wireless.java.sun.com/下载。但是请不要使用最新的”J2ME
Wireless Toolkit 2.2″,否则游戏不能正常运行。

Demo2包括了开机的启动界面、主界面、还有游戏运行场景,但是没有加入敌人。相关的界面如下:

 

 

J2ME游戏源代码—Eliminator <wbr>DemoDemo” TITLE=”J2ME游戏源代码—Eliminator Demo” />

J2ME游戏源代码—Eliminator <wbr>DemoDemo” TITLE=”J2ME游戏源代码—Eliminator Demo” />

J2ME游戏源代码—Eliminator <wbr>DemoDemo” TITLE=”J2ME游戏源代码—Eliminator Demo” />

如果你对这个游戏感兴趣,这里有它的工程文件,使用JBuilderX建立。工程文件如下:

附件 Eliminator-精简版本工程文件.rar

如果想仔细阅读本游戏,并制作出自己的游戏,请参考我前文《J2ME游戏开发(J2ME_Game_Development_with_MIDP2中文版)》一文中的附件,它是本游戏对应的pdf格式的电子书。

J2ME游戏开发(J2ME_Game_Development_with_MIDP2中文版)

这个是本博主在2004年翻译的一篇文章,希望对大家有帮助。


[J2ME游戏开发(第一版)的PDF文档]

  I have a dream! It’s “Play
Games Everywhere…”.

  我有一个梦想,就是”让游戏无处不在”!

时光匆匆滑过了2004年,也带来了很多改变。从MIDP
2.0发布开始到现在已经有两年多了,它的出现让移动设备上的游戏开发更加方便、也更为简单快捷。当我一年前发现MIDP
2.0技术的时候,我同时感觉到我们离随时随地玩游戏的那一天不再遥远。

[J2ME游戏开发(第一版)的PDF文档]

  I have a dream! It’s “Play
Games Everywhere…”.

  我有一个梦想,就是”让游戏无处不在”!

时光匆匆滑过了2004年,也带来了很多改变。从MIDP
2.0发布开始到现在已经有两年多了,它的出现让移动设备上的游戏开发更加方便、也更为简单快捷。当我一年前发现MIDP
2.0技术的时候,我同时感觉到我们离随时随地玩游戏的那一天不再遥远。


一个人都会玩游戏,都喜欢玩游戏;但是并不是每一个人都会开发制作游戏。要让游戏无处不在,还需要更多的人学会开发游戏。相信好学的你在玩过几个好玩的游
戏后总会问:这个游戏是怎么做出来的?我是否也可以做出同样出色的游戏?我该如何学习游戏的制作?…… 
游戏有很多种——这在本书中会讲到——在当今的2004年如果想找一种游戏,它甚至只需要一个人业余很少的时间和精力就可以制作出,而且有可能会非常受欢
迎的游戏,我想非移动游戏莫属!

本书就是J2ME移动游戏(主要是手机游戏)制作的入门读物,只要你具备JAVA编程的基础知识并且了解一些J2ME的背景知识,通过本书的学习,你就能创造出自己的游戏。当然,最最重要的还是读者你的创意!毕竟知识有崖,创意无限!


者本身也是一个业余的游戏制作者,本着自由软件的精神翻译这本书,读者可以在确保完整性的前提下自由的分发本电子书,出版本书请联系译者,出版原英文版请
联系原作者。由于本书原文还没有完成,译者将在原作者写作的同时进行翻译。由于翻译都是在业余时间进行,在工作了一整天后,精力难免难以集中,本书中肯定
会有很多错误,期待读者的批评指正,译者绝对知错就改。JJJJJ

接下来,译者准备制作几个基于MIDP 2.0的手机游戏,并且打算翻译J2ME
API,感兴趣的朋友请跟我联系。此外,也希望同对RUP感兴趣的读者交个朋友。

Escape_MIDP2.0 Demo1

刚刚翻了下2004年的博客,发现了一些有用的古董,放到这里给大家看看吧。

也许对你有用哦,呵呵。

Escape_MIDP2.0 Demo1 ——类似于”是男人就飞10000米”

Author:deaboway
Email: [email protected]
Copy Right by deaboway 2004

版权声明Licence:
————————
此软件为共享软件,任何个人和单位均可免费复制,拷贝,复制时请注明出处。但如需商业用途或者使用,修改其中的全部或者部分代码,图片。请先和作者联系.

概述OverView:
————————
是男人就飞一万米”想必大家都玩过的,这是它的手机clone版本的Demo。当然很多地方还不完善,但是已经可以玩了……本游戏在WTK2.2
Beta 2上运行良好,等游戏进一步完善再考虑是否放出源代码……:)

操作说明Introduction:
————————
单键操作:\n按住”select”或”5″键是向上飞;\n松开是向下飞。很快会出正式版,当然会放在这个blog上面enjoy!!!

版本更新:
Escape_MIDP2.0_v0.1.0 2004-12-16
————————
建立初始Demo版本
————————

下载DownLoad
————————

 escape_midp2.0_v0.1.0.rar

视图View
————————

Demo1″ />
Demo1″ />

增强J2ME的String能力——分割字符串(附源代码)

从JDK1.4以后,String类中新增了split方法来实现字符串的分割,但是在J2ME中却没有该方法(MIDP2.0中也没有实现),但是在实际使用过程中,有些时候的确要用到这种操作,这里将我以前实现的一段代码和大家共享,不足之处大家多提意见和建议:

 private static String[] split(String
original,String regex)
 {
  //取子串的起始位置
  int startIndex = 0;
  //将结果数据先放入Vector中
  Vector v = new Vector();
  //返回的结果字符串数组
  String[] str = null;
 
  //存储取子串时起始位置
  int index = 0;
  //获得匹配子串的位置
  startIndex = original.indexOf(regex);
 
  //System.out.println(“0” + startIndex);
 
  //如果起始字符串的位置小于字符串的长度,则证明没有取到字符串末尾。
  //-1代表取到了末尾
  while(startIndex <
original.length() && startIndex !=
-1)
  {
   String temp =
original.substring(index,startIndex);
 
  
System.out.println(”    
”  + startIndex);
 
   //取子串
   v.addElement(temp);
           
//设置取子串的起始位置
   index = startIndex +
regex.length();
   //获得匹配子串的位置
   startIndex =
original.indexOf(regex,startIndex + regex.length());
  }
  //取结束的子串
  v.addElement(original.substring(index + 1 –
regex.length()));
 
  //将Vector对象转换成数组
  str = new String[v.size()];
  for(int i=0;i<v.size();i++)
  {
   str[i] =
(String)v.elementAt(i);
  }
  //返回生成的数组
  return str;
}