使用J2ME技术开发RPG游戏之按键处理机制

豆豆网   技术应用频道   2007年11月22日  【字号: 收藏本文

内容摘要:RPG(角色扮演游戏)是手机游戏中的一类主要类型,也是相对来说比较麻烦的一类游戏。本文介绍使用J2ME技术来开发RPG游戏的按键处理机制。

  在游戏中,按键处理机制也需要小心的实现,这里就介绍一种实用的按键处理机制。

  在实际的游戏中,一般为了按键灵敏,我们一般不会直接在keyPressed或keyReleased方法内部书写逻辑的代码,而只是在这些方法内部记录或清除按键的记录,而把实际的处理放在线程中进行。这个是本机制中采用的方式。

  而且不同手机的按键键值存在不同,为了方便移植,我们把按键转换成自己定义的数值,然后在程序中使用自定义的值进行处理。

  该机制中最核心的变量为;

  private int keyStates;

  用该变量中的一个二进制位来代表一种按键是否按下,如果按下为1,否则为0。每个按键自己进行了定义,定义的代码如下:

使用J2ME技术开发RPG游戏之按键处理机制

  转换按键键值的方法根据手机型号不同,也存在很多的不同,下面是WTK模拟器的实现代码:

使用J2ME技术开发RPG游戏之按键处理机制

  按键按下时,首先把物理按键的键值转换为自定义的键值,然后把按键信息保存到按键状态变量keyStates中,保存时采用的是位运算符位或实现的。实现代码如下:

使用J2ME技术开发RPG游戏之按键处理机制

  按键释放时,和按键按下类似,首先转换键值,然后清除按键信息。清除时把按键状态取反,然后与keyStates位与即可。实现代码如下:

使用J2ME技术开发RPG游戏之按键处理机制

  在界面切换时,需要把按键状态清空,这样只需要把keyStates清零即可。实现代码如下:

使用J2ME技术开发RPG游戏之按键处理机制

  实际的按键处理的代码可以在线程中实现。

责编:豆豆技术应用

正在加载评论...