答辩(徐金荣).ppt

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
答辩(徐金荣)

一、游戏开始前的准备工作 一些游戏中用到的图 游戏画面预览 二:概要设计 游戏开始时的进度条 使用进度条的原因时因为有时加载资源时所需时间太多,防止玩家误以为程序没有响应,而直接关闭游戏。 该进度条使用了线程的概念,定义如下: public class LPProgressThread extends Canvas implements Runnable{ 启动该线程的代码如下: progressThread = new Thread(this); progressThread.start(); 关闭线程的代码如下: progressThread = null; 当主程序的资源加载完时,必须将进度条线程关闭并切换到主线程. Display.getDisplay(midlet).setCurrent(MarioDemoMIDlet.marioDemoCanvas); MarioDemoMIDlet.marioDemoCanvas.start(); } 游戏开始界面和帮助界面 一个好的开始界面能让玩家有个好的印象,觉得应该试玩一下. 代码如下: if(gameState == HELP){ addCommand(BACK); g.drawImage(marioManager.imgHelp, 0, 0, 0); }else{ g.drawImage(marioManager.imgBenjing, 0, 0, 0); g.drawImage(marioManager.imgCandan, width/4, height/4, 0); g.setColor(0xFF0000); g.drawRect(width/6, height/4+font.getHeight()*index, 110, font.getHeight()); g.setColor(0x00FF00); g.drawRect(width/6-1, height/4+font.getHeight()*index-1, 111, font.getHeight()+1); g.setColor(0x0000FF); g.drawRect(width/6-2, height/4+font.getHeight()*index-2, 112, font.getHeight()+2); } 加载资源 在MarioManager 中加载的是NPC(玛丽小时,变大时),乌龟和蘑菇以及菜单、背景、帮助,以及等的图片方法。 加载第一层地图图片: imgMap = Image.createImage(/level_1_1.png); 加载第二层地图图片: imgMap1 = Image.createImage(/sprite16.png); 加载玛丽小时,变大时: imgSmallMario = Image.createImage(/small16.png); imgNormalMario = Image.createImage(/normal32.png); imgFireMario = Image.createImage(/fire32.png); 加载蘑菇的图片: marioImg = Image.createImage(/mario.png); 加载乌龟的图片: enemy_img16 = Image.createImage(/enemy24.png); 加载菜单的图片: imgCandan = Image.createImage(/caidan.png); 加载背景的图片: imgBenjing = Image.createImage(/benjing.png); 加载帮助界面的图片: imgHelp = Image.createImage(/help.png); 绘制地图 绘制地图的效果:满足NPC(玛丽)在移动过程中能在图中随处行走(即在图中有障碍物)。需要绘制两层图:一层为可视的,即绘制了墙与砖以及管道等;另一层则放置一些金币和一些。过程如下: 加载源图片,将源图片大小为16*624像素,分为 16*16的像素贴图。还有一张源图大小为 16 * 160像素,分成16 * 16像素。代码如下: 其中将地图数组放在map01.dat,map02文件中 建立输入流,以便从文件中读取出地图数据 建立输入流的代码如下: InputStream is = this.getClass().getResourceAsStream(/m

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档