Ericl的j2me手机游戏之旅(四)主要游戏代码
相当对不起大家,因为前段时间一直忙论文的事情,BLOG完全没有更新,惭愧啊。不过终于弄完了,得了个优,嘿嘿。
==================================
那从(三)开始,我就仔细分析我的游戏代码。
首先从begin.java开始,代码如下:
import javax.microedition.lcdui.*;//头文件
import javax.microedition.midlet.MIDlet;
public class Begin extends MIDlet implements CommandListener {//继承/ //MIDlet超类和CommandListener(按钮监听事件)接口。
static Display display;//定义屏幕对象display,是抽象(static)对象,为//了能在其他类里直接通过Begin.display能够调用
static List l;//列表List对象l,也是(static)对象
Game g;//这里定义游戏类g,在commandAction中使用
public Begin() {//Begin的构着函数
display = Display.getDisplay(this);//获取display在本机上的对象
l = new List("",Choice.IMPLICIT);//生成l对象,名字为“”,类型//是IMPLICIT。
l.append("开始游戏",null);//选项1"开始游戏",代码是0。
l.append("最高分",null);//选项2“最高分",代码1。
l.append("帮助及版权说明",null);//选项3"帮助及版权说明",代码3
l.append("退出",null);//选项4“退出”,代码4
l.addCommand(new Command("确定",Command.OK,1));//增加新///按钮“确定”,按钮类型是OK,代码是1。
l.setCommandListener(this);//增加监听l上按钮的事件。
}
protected void startApp() {
display.setCurrent(l);//把l显示到屏幕上。
}
protected void pauseApp() {//暂停方法。
}
protected void destroyApp(boolean b) {//结束方法,在这里我们用按钮监//听事件的方法commandAction来实现。
}
public void commandAction(Command c, Displayable dis) {//按钮监听事//件方法。
if(c.getLabel()=="确定") {//如果监听到按钮事件并且按钮的文字为//“确定”。
switch(l.getSelectedIndex()) {//获得l的选项代码。
case 0://为0则开始游戏。
g = new Game();//生成g对象。
g.start();//g开始start()方法,是游戏线程开始。
display.setCurrent(g);//把g显示到屏幕上。
break;
case 1:
display.setCurrent(new Text(1));//屏幕显示Text新对象,输//入参数1。
break;
case 2:
display.setCurrent(new Text(2)); //屏幕显示Text新对象,输//入参数1
break;
case 3:
notifyDestroyed();//调用notifyDestroyed()方法结束应用程序
break;
}
}
}
}
=======================================
这个就是Bengin的源代码和注释,很简单,有c语言语法体系经验的程序员都可以看明白,那么我在下一篇中就会放出Text的源代码。