国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

GameAction的使用范例

2019-11-18 16:07:31
字體:
來源:轉載
供稿:網友

GameActionExample描述了如何使用Canvas開發游戲,重點突出了如何將keyCode轉換為GameAction處理用戶的輸入。

GameAction的使用范例

/*
 * GameActionExample.java
 *
 * Created on 2005年12月2日, 下午12:53
 */

package com.j2medev.game;

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class GameActionExample extends MIDlet {
   
    PRivate Display  display;
    private MyCanvas canvas;
    public GameActionExample() {
        display = Display.getDisplay(this);
        canvas  = new MyCanvas(this);
    }
    protected void startApp() {
        display.setCurrent(canvas);
    }
    protected void pauseApp() {
    }
    protected void destroyApp( boolean unconditional ) {
    }
    public void exitMIDlet() {
        destroyApp(true);
        notifyDestroyed();
    }
}
class MyCanvas extends Canvas implements CommandListener {
   
    private Command exit;
    private String message;
    private GameActionExample gameActionExample;
    private int x, y;
   
    public MyCanvas(GameActionExample gameActionExample) {
        x = 5;
        y = 5;
        message = "演示游戲動作按鍵";
        this.gameActionExample = gameActionExample;
        exit = new Command("退出", Command.EXIT, 1);
        addCommand(exit);
        setCommandListener(this);
    }
    protected void paint(Graphics graphics) {
        graphics.setColor(255,255,255);
        graphics.fillRect(0, 0, getWidth(), getHeight());
        graphics.setColor(255, 0, 0);
        graphics.drawString(message, x, y, Graphics.TOP Graphics.LEFT);
    }
    public void commandAction(Command command, Displayable displayable) {
        if (command == exit) {
            gameActionExample.exitMIDlet();
        }
    }
    protected void keyPressed(int key) {
        switch ( getGameAction(key) ){
            case Canvas.UP:
                message = "向上";
                y--;
                break;
            case Canvas.DOWN:
                message = "向下";
                y++;
                break;
            case Canvas.LEFT:
                message = "向左";
                x--;
                break;
            case Canvas.RIGHT:
                message = "向右";
                x++;
                break;
            case Canvas.FIRE:
                message = "開火";
                break;
        }
        repaint();
    }
}


(出處:http://m.survivalescaperooms.com)



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 富顺县| 鸡泽县| 南召县| 巴彦县| 巩义市| 昌邑市| 淮安市| 杭锦后旗| 连南| 东兰县| 高青县| 吉隆县| 宜丰县| 闸北区| 新化县| 共和县| 长岭县| 金川县| 安多县| 林芝县| 屏山县| 琼海市| 曲阜市| 阳东县| 聂荣县| 清流县| 虎林市| 阿拉善盟| 吴忠市| 平遥县| 南郑县| 曲阳县| 稻城县| 同江市| 获嘉县| 胶南市| 兰坪| 云龙县| 台前县| 海林市| 来宾市|