游戏结构

转载 2006年05月19日 14:39:00

MIDlet

public class GameMidlet
    extends MIDlet
{
    private PlayCanvas play;

    public static GameMidlet  instance;

  public GameMidlet()
  {

      instance = this;
    play=new PlayCanvas(this);
      }

  protected void pauseApp()
  {
  }

  protected void startApp()
  {
    Displayable cc=Display.getDisplay(this).getCurrent();
    if(cc==null)
      Display.getDisplay(this).setCurrent(play);
    else
      Display.getDisplay(this).setCurrent(cc);
  }

  protected void destroyApp(boolean parm1)
  {
    if(play!=null)
      play.Release();
      play=null;
  }

  public static void quitApp() {

    instance.destroyApp(true);
    instance.notifyDestroyed();
    //System.gc();
  }

}  

 

canvas:

public class PlayCanvas extends Canvas implements Runnable{

   GameMidlet  parent;

   private boolean running;

  private Image imgBody;
  private Graphics gBody;

   private int TIME=100;

   private Thread thread=null;

  private width ,height;

   public PlayCanvas(GameMidlet parent) {

        this.parent = parent;

        width = getWidth();

        height =  getHeight();

       imgBody = Image.createImage(width, height); // 缓冲界面
       gBody = this.imgBody.getGraphics();

    }

   /*

    线程启动

   */

    public void start(){

      if(!running){

        thread = null;
        System.gc();

        running=true;

        thread=new Thread(this);

        thread.start();

      }

  }

  

   /*

    线程停止

   */

   public void stop(){

    if(running){

      running = false;

    }

  }

   /*

    按键处理

  */

    public void keyPressed(int keyCode) {

             switch (keyCode) {
                case KEY_UP_ARROW:

.                   .......................

                 break;

               case KEY_DOWN_ARROW:

              .          .............

                 break;

            .......................

   }

  public void paint(Graphics g){

           if (imgBody != null) {
             g.drawImage(imgBody, 0, 0, Graphics.LEFT | Graphics.TOP); //游戏中的   精灵背景都画在imgBody上。
             }

    }

    public void run(){

        while(running){

           long start = System.currentTimeMillis();

....... //运行一些逻辑和游戏界面的处理

           int time = (int)(System.currentTimeMillis() - start);

           if (time < TIME){
            
             try {

                Thread.sleep(TIME- time);

              }catch (InterruptedException ex) {}

        }else{

        }

   }

  }

    public void Release(){// 退出游戏 释放对象

       thread = null;

       imgBody = null;

       System.gc();

    }

}

数据结构 翻牌游戏

  • 2012年06月21日 16:26
  • 2KB
  • 下载

数据结构--填词游戏

  • 2011年11月29日 17:22
  • 878B
  • 下载

数据结构和算法设计专题之---24点游戏(穷举法和递归法)

一个简单的24点程序        下面本文将通过两个题目实例,分别给出用递归方法和循环方法的解决方案以及解题思路,便于读者更好地掌握两种方法。首先是一个简单的计算24点的问题(为了简化问题,我...

网络游戏服务器组织结构分析

  • 2011年09月01日 17:31
  • 217KB
  • 下载

数据结构在游戏中的简单应用

在游戏的编写中,不可避免的出现很多应用数据结构的地方,有些简单的游戏,只是由几个数据结构的组合,所以说,数据结构在游戏编程中扮演着很重要的角色。   本文主要讲述数据结构在游戏中的应用,其中包括对链...

数据结构课程设计 24点游戏

  • 2011年06月11日 20:11
  • 262KB
  • 下载

数据结构之循环链表的应用-约瑟夫游戏

#ifndef _HEAD_H_ #define _HEAD_H_ #include #include typedef int DataType; typedef struct node { ...

J2ME游戏的基本结构

  • 2016年08月02日 17:19
  • 24KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:游戏结构
举报原因:
原因补充:

(最多只允许输入30个字)