使用MIDP.开发游戏【DOC精选】.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用MIDP.开发游戏【DOC精选】

使用MIDP2.0开发游戏(1)GameCanvas基础 MIDP2.0提供了对游戏的强有力支持,通过javax.microedition.lcdui.game包,原来在MIDP1.0中很多需要自己写的功能现在都被当作标准API实现了,包括GameCanvas,Sprite,Layer等等。 我们将使用MIDP2.0编写一个坦克大战的手机游戏,我也是初学J2ME不久,准备边看书边做,争取把这个游戏做出来!J2ME高手请多指点,和我一样学习中的朋友欢迎多多交流! 我们的开发环境为Windows XP SP1 + J2DK1.4 + J2ME WTK2.1 + Eclipse 3.0 + EclipseMe,关于如何配置Eclipse的J2ME开发环境,请参考: /mingjava/archive/2004/06/23/24022.aspx 下面是一个最简单的GameCanvas的例子,出自《J2ME? Gaming》: // MyGameCanvas.java // 编写Canvas类 import javax.microedition.lcdui.*; import javax.microedition.lcdui.game.*; public class MyGameCanvas extends GameCanvas implements Runnable { 牋?private boolean isPlay; // Game Loop runs when isPlay is true 牋?private long delay; // To give thread consistency 牋?private int currentX, currentY; // To hold current position of the X 牋?private int width; // To hold screen width 牋?private int height; // To hold screen height 牋?// Constructor and initialization 牋?public MyGameCanvas() { 牋牋牋?super(true); 牋牋牋?width = getWidth(); 牋牋牋?height = getHeight(); 牋牋牋?currentX = width / 2; 牋牋牋?currentY = height / 2; 牋牋牋?delay = 20; 牋?} 牋?// Automatically start thread for game loop 牋?public void start() { 牋牋牋?isPlay = true; 牋牋牋?new Thread(this).start(); 牋?} 牋?public void stop() { isPlay = false; } 牋?// Main Game Loop 牋?public void run() { 牋牋牋?Graphics g = getGraphics(); 牋牋牋?while (isPlay) { 牋牋牋牋牋?input(); 牋牋牋牋牋?drawScreen(g); 牋牋牋牋牋?try { 牋牋牋牋牋牋牋?Thread.sleep(delay); 牋牋牋牋牋?} 牋牋牋牋牋?catch (InterruptedException ie) {} 牋牋牋?} 牋?} 牋?// Method to Handle User Inputs 牋?private void input() { ?牋牋牋 int keyStates = getKeyStates(); 牋牋牋?// Left 牋牋牋?if ((keyStates LEFT_PRESSED) != 0) 牋牋牋牋牋?currentX = Math.max(0, currentX - 1); 牋牋牋?// Right 牋牋牋?if ((keyStates RIGHT_PRESSED) !=0 ) 牋牋牋牋牋?if ( currentX + 5 width) 牋牋牋牋牋牋牋?currentX = Math.min(width, currentX + 1); 牋牋牋?// Up 牋牋牋?if ((keyStates UP_PRESSED) !=

文档评论(0)

taotao0c + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档