基于j2me的推箱子游戏毕业设计论文任务书(编辑修改稿)内容摘要:
循环标记位 int sleepSpan = 300。 //睡眠的毫秒数 PushBoxActivity pushBoxActivity。 public MenuViewGoThread(PushBoxActivity pushBoxActivity){ = pushBoxActivity。 } public void run(){ while(flag){ if( != null){ if( 320){//当移动过远时将坐标重置到 0 = 0。 } = 2。 //每次循环向左移两个单位 try{ (sleepSpan)。 //睡眠 } catch(Exception e){ ()。 } } } } } 19 图三 欢迎界面图 图四 菜单界面图 三. 游戏界面 设计 在游戏界面设计中首先要使 菜单界面 MenuView 类 实现。 代码如下: package。 import。 import。 import。 import。 import。 import。 import。 public class MenuView extends SurfaceView implements { PushBoxActivity pushBoxActivity。 //主 Activity 的引用 MenuViewDrawThread menuViewDrawThread。 20 Paint paint。 //画笔 Bitmap start1。 //开始游戏图片 Bitmap sound1。 //声音图片 Bitmap sound2。 Bitmap help1。 //游戏说明图片 Bitmap exit1。 //退出游戏图片 Bitmap menubackground。 //大背景图片 Bitmap menubackground2。 //小背景图片 int menubackgroudX = 0。 //需要移动的背景的坐标 public MenuView(PushBoxActivity pushBoxActivity) {//构造器 super(pushBoxActivity)。 = pushBoxActivity。 menuViewDrawThread = new MenuViewDrawThread(this, getHolder())。 getHolder().addCallback(this)。 paint = new Paint()。 start1 = (getResources(), )。 //初始化开始 sound1 = (getResources(), )。 //初始化打开声音 sound2 = (getResources(), )。 //初始化关闭声音 help1 = (getResources(), )。 //初始化帮助 exit1 = (getResources(), )。 //初始化退出 menubackground = (getResources(), )。 menubackground2 = (getResources(), )。 } protected void onDraw(Canvas canvas) { (canvas)。 (menubackground, menubackgroudX, 0, paint)。 //绘制大背景 (menubackground2, 21, 20, paint)。 //绘制小背景 21 (start1, 60, 60, paint)。 if(){//根据声音的状态绘制声音按钮图片 (sound1, 60, 150, paint)。 } else{ (sound2, 60, 150, paint)。 } (help1, 60, 240, paint)。 //绘制帮助 (exit1, 60, 330, paint)。 //绘制退出按钮 } public boolean onTouchEvent(MotionEvent event) { if(()50 amp。 amp。 () 50+() amp。 amp。 ()60 amp。 amp。 ()60+()){//点击了开始游戏菜单 if(()){ ()。 } (2)。 //向 Activity的 Handler 发送消息 } else if(()50 amp。 amp。 ()50+() amp。 amp。 ()70+() amp。 amp。 ()70+()+()){ //点击了声音菜单 = !。 //将声音开关取反 if(!){ if(()){ ()。 //停止播放声音 } if(()){ ()。 //停止播放声音 } 22 } else{ if(!()){ ()。 //开始播放声音 } } } else if(()50 amp。 amp。 ()50+() amp。 amp。 ()80+()+() amp。 amp。 ()80+()+()+()){ //点击的是游戏说明菜单 } else if(()50 amp。 amp。 ()50+() amp。 amp。 ()90+()+()+() amp。 amp。 ()90+()+()+()+()){ //点击的是退出游戏菜单 (0)。 //退出游戏 } return (event)。 } public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { } public void surfaceCreated(SurfaceHolder holder) { (true)。 ()。 } public void surfaceDestroyed(SurfaceHolder holder) { boolean retry = true。 (false)。 //停止刷帧线程 23 while (retry) { try { ()。 //等待刷帧线程结束 retry = false。 } catch (InterruptedException e) {//不断地循环,直到等待的线程结束 } } } } 基本界面搭建完成,然后绘制线程 MenuViewDrawThread 对菜单界面进行刷帧操作。 MenuViewDrawThread 类的实现方法同 WeleViewDrawThread 的完全相同。 如果希望界面的背景滚动起来,则还需要开发 MenuViewDrawThread 线程类,在该线程类的 run 方法中循环改变 MenuView 中背景图片的坐标即可。 四. 游戏界面框架设计 游戏最主要的环节 游戏界面的开发,下面是对游戏界面的整体框架进行简单介绍。 游戏 界 面设计 基本框架图: 图三 游戏界面设计基本框架图 24 ( 5) GameView 框架的实现。 代码如下: package。 import。 import。 import。 import。 import。 import。 import。 import。 import。 public class GameView extends SurfaceView implements { PushBoxActivity pushBoxActivity。 GameViewDrawThread gameViewDrawThread。 int initX = 70。 //绘制时第一个的坐标 ,即开始绘制的位置 int initY = 50。 Paint paint。 Bitmap greenBox。 //绿色的箱子 Bitmap wall。 //墙 Bitmap box。 //箱子 Bitmap exit2。 //退出按钮图片 Bitmap goon。 //恭喜过关的图片 int tx = 1。 int ty = 1。 //当前移动箱子的坐标 ,1 表示没有移动的 int tempi = 0。 //当前移动箱子的 i int tempj = 0。 //当前移动箱子的 j int status = 0。 //0 正常游戏中 ,1 胜利 public GameView(PushBoxActivity pushBoxActivity) {//构造器 super(pushBoxActivity)。 25 = pushBoxActivity。 gameViewDrawThread = new GameViewDrawThread(this,getHolder())。 getHolder().addCallback(this)。 initBitmap()。 } public void initBitmap(){ paint = new Paint()。 greenBox = (getResources(), )。 //绿色的箱子 wall = (getResources(), )。 //墙 box = (getResources(), )。 //箱子 exit2 = (getResources(), )。 //墙 goon = (getResources(), )。 } protected void onDraw(Canvas canvas) { if(status == 0){//正常游戏中 (true)。 //抗锯齿 ()。 //绘制黑背景 //绘制第一层 ,即地板层 for(int i=0。 i。 i++){ for(int j=0。 j[i].length。 j++){ //根据索引值进行坐 标转换 int X = initX+36*j15*i。 int Y = initY+10*j+25*i。 if([i][j] == 0){//白色空地 ((255, 220, 220, 220))。 (canvas, X, Y)。 } else if([i][j] == 1){//灰色空地 ((255, 170, 170, 170))。 (canvas, X, Y)。 26 } else if([i][j] == 2){//目的地 1 ((255, 127, 255, 130))。 (canvas, X, Y)。 } else if([i][j] == 3){//目的地 2 ((255, 60, 255, 120))。基于j2me的推箱子游戏毕业设计论文任务书(编辑修改稿)
相关推荐
脑、移动设备,用的都是 J2ME。 但是,大部分非企业级软件还是在 J2SE 上开发的比较多。 首先,这是因为很多的应用软件都是在 J2SE 上开发的;其次, J2SE 是和 J2EE 兼容的,企业版是在标准版上的扩充,在 J2SE 的版本上开发的软件,拿到企业的平台上是一样可以运行的;再次,一般开发还是在 J2SE 的环境上,只是说 J2ME 提供微型版的一个环境。 在J2SE
易出错;结合酒店前台管理的需要进行扩展性而开发的一套酒店管理系统。 从而专门设计了本酒店管理系统,本系统是一套适用于中小型星级宾馆使用的优秀系统。 编写目的 在旅游业发展迅速的今天,宾馆、酒店业的特色经营和个性化管理日趋明显,管理日趋信息化、网络化,再加上国际、国内名优企业的扩展力度的加大,宾馆、酒店业集团化的步伐加快,预示着传统的宾馆、酒店正逐步步向信息化管理 —— 这也是宾馆
可以在进程级别后集群级别保存可以在事务中重用的数据。 2)Session 会话 Session 是生命周期的单线程对象,代表应用程序和持久层之间的一次对话。 封装了一个 JDBC 连接,也是 Transaction 的工厂。 保存有必需的(第一级)持久化对象的缓存,用于遍历对象图或通过标识符查找对象。 3)持久化对象( Persistent Object)及其集合( Collection)
项进行编辑、删除、标记、删除符合要求的事项等,整体按照优先级排序;对每个事项能进行设定优先级,闹铃;提供复制粘贴功能,遗憾是没有做到能自由复制。 需求分析 用户需求 本系统是面向所有年龄阶段的用户。 设计时考虑的角度也是从手机小白用户的角度去思考,尽量将界面简洁化、操作简单化、功能明确化、漏洞最少化,简单的 操作让刚刚会使用手机的用户都能很快学会使用。 系统主要是提供记事本功能
了详细说明。 系统测试 介绍了测试计划并从功能方面进行 测试。 最后 对 本游戏 的应用展望 未来。 本章首先简单地介绍手机移动游戏的开发背景、手机游戏的市场状况、用户数量、社会对游戏的反映。 进而发现 了当前一些游戏的弊端,因此提出了绿色健康的益智游戏这个论题。 最后,叙述了本游戏的开发意义和论文的组织安排。 3 2 相关技术与工具介绍 J2ME 简介 J2ME 在 Java 体系中的地位
msuit 启动线程显示时间 Thread th 进入定时系统 Command cmdOk 退出整个程序 Command cmdCan 表 TimeCanvas 类方法表 名称 功能 备注 TimeCanvas () 连接图片添加数据 类的构造方法 paint(Graphics g) 绘制开始界面 Canvas 类自带方法 initList() 初始化数据 刷新数据 run() 获取时间和数据