和sta帕ame四个子函数和一个主函数MineGame组 基础,可以在很短的时间内写出一个移动应用程序。
成。
其中,靼fMine用来对地雷进行埋藏,D帕wfieId用 MIDlefPascaI有着一个友好的Windows开发界 来绘制当前地手机屏幕状态、pIayGame负责游戏过程 面。
界面集成了编译器、Java字节码预验证器和JAR 中的事件处理,stanGame则对游戏进行级别设置,重 包编译器,因此编译和创建MIDlet就象单击一个按钮 新开始游戏。
这么简单。
3.2代码实现 由于MDIefPascaI可以生成低级的Ja、,a字节码,因 MIDlefPascaI与Pascal语言类似,主函数通过pr0一 此,生成MIDlefs只要简单的几步,而且运行起来非常 gram来执行,子函数或子过程则通过proCedu伧或 快。
网络上也有类似的一些代码和包转换器,但是生成 ~ndion来执行,其中procedure和func『lon的区别在 的JAR文件都非常大,不适合用来分发,执行起来也很 于后者有返回值。
限于篇幅,下面给出程序的主体代 慢。
MDIefPascaI可以直接生成Java字节码的,可以不 码和SfanGame子函数的全部代码。
用在机器上安装Java编译器,因此编译过程非常快。
program MlneGame;//一个程序的开头 MIDletPasCal是面向MlDP 1.0和CLDC 1.O平台 conSf.. 的,主要通过表2中的几大类来实现对应用程序相关 var…//定义全局常量和变量 信息的处理。
{自定义的函数和过程} 表2 MIDl酬’ascaI的类 分类 功能 procedu陀sfarfGame;//游戏开始子函数 画布类 实现对屏幕画布的操作,如画线、加载图像文件等 var cmdLow,cmdMiddie,cmdHjgh:command;// 按键类 处理按键信息 定义选项菜单变量 日期时间类 获取日期和时间信息 LdWID,MlddIeID,HighID:Intege‘;//定义选项 数学函数类 常用的数学函数。
用于数据处理 菜单对应的标志号 宇符串类 常用的字符串函数,用于字符串处理 begIn 表单类 对表单元素(如按钮、文本框等)的属性进行处理 ShovvMenu(请选择游戏级别’,CH_IMPLIC- 记录存储类 基本的数据库处理函数 丌);//添加菜单选项 mTP连接类 网络处理函数 LI刚D:=MenuAppendString(,f氐级(5雷) 声音&音乐类 控制音乐对象的播放和属性等 一); 资源文件类 资源文件处理函数 MiddIeID:=MenuAppendstring(’中级(10 其他 其他的一些函数,如获取Ja怕仿真器的信息等 雷)’); HighID:=MenuAppendStr{ng(篙级(15雷) 3 开发实例 .); 3.1设计思路 cmdpIay:=CreateCommand(’开始’,c』vI— 扫雷是Ⅷndaws自带的一个小游戏,实现的算法相 SCR旺N,1);//设置按钮属性 对简单。
本文利用JvIIDIetPascaI实现一个类似的游戏, AddCommand(cmdplay);//添力口按钮 基本思路如下:首先在游戏开始之前设置难易程度(设 陀peat 置雷数)o然后开始游戏,如果掀开的是地雷,则显示失 DeIay(100);//以下对所选的菜单项设置对 败提示,两秒后退出程序:如果掀开的不是地留,则显示 应雷的数目 周边的地雷信息。
正确地找到所有的地雷之后,就显示 ff MenuGe莨沁IecfedInde×=LowID then nu— 游戏成功的提示,停留一段时间后自动退出。
mOfMlnes:=5://设置5个雷 游戏的实现代码由鲥Mlne、DrawlFieId、PIayGame 阡^^enuGetSeIecfedInde×=MiddIeID then nu-万 方数据 2∞6年第11期 计算机系统应用mOfMlnes:=10://设置10