站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2ME 专题J2ME游戏开心药丸开发过程(一)

J2ME游戏开心药丸开发过程(一)

摘要: J2ME游戏开心药丸开发过程(一)

文章来源:J2ME开发网

如果问你个问题,小时候玩的最多的是什么游戏,我想,你肯定会立刻回答,俄罗斯方块,后来随着时间的推移,各种方块类游戏层出不穷,下面笔者将要介绍的一款游戏,也可以归结到俄罗斯方块类游戏的范畴里去。由于最近看这方面的代码比较多,所以参考了一下多种方案,自己也来了个创新。

笔者把这款游戏命名为开心药丸,下面开始做简单介绍:

游戏名:开心药丸

运行平台:MIDP1.0

游戏方法介绍:

游戏屏幕上方会随机掉下由两个方块组成的方块组,每个方块从红黄蓝绿四种颜色中随机产生一种,这样共有4*4=16种组合方式,(是不是很象我们感冒时吃的胶囊!这就是名字的由来),每4个相同的颜色组合在一起的方块会自动消去,随着游戏的不断发展,速度会不断提高,直到GAMEOVER。。。。。。。。

在进行开发之前我们要画出程序的流程图:

下面我们就这个游戏来介绍以下类的结构:

笔者设计的是

SquareMIDlet:主程序,对整个游戏的生命周期进行控制。

Piece:存储各个方块组合的详细参数。

GameCanvas:这是精华所在,对这个画面的绘制和操作包含在这个类里,大家千万要注意,这是笔者自己写的GameCanvas,千万不要和MIDP2.0里的game包弄混淆。

具体实现详解:

首先从主程序入手: 在设计的时候我们不需要为这个类添加太多的功能,我们只需要在在这个类里面加入适当的控制机制,对整个游戏的生命周期进行控制,太多的代码会导致游戏结构的混乱。

我们这个系列文章将会围绕这三个关键类进行描述,先看一看主程序:

import javax.microedition.lcdui.*;

import javax.microedition.midlet.*;

public class SquareMIDlet extends MIDlet

{

public void SquareMIDlet()

{

gc=new GameCanvas(this);

display=Display.getDisplay(this);

display.setCurrent(gc);

}

public void startApp()

{

gc.start();

}

public void pauseApp()

{

gc.pause();

}

public void destroyApp(boolean unconditional)

{

}

void Exit()

{

try

{

destroyApp(false);

notifyDestroyed();

}catch(Exception e){}

}

private GameCanvas gc;

private Display display;

}

在此 我们给出相应的主程序的UML图 方便读者了解整个游戏的架构!~

很明显,我们通过调用GameCanvas里的开始(start)和暂停(pause)等等方法来控制程序的状态,呵呵,主程序是不是很简单,别心急,下一篇文章,我们介绍Piece类和一些GameCanvas的实现细节。



↑返回目录
前一篇: J2ME游戏开心药丸开发过程(二)
后一篇: J2ME潜艇大战游戏设计与实现