亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? engine.java~52~

?? j2me源代碼
?? JAVA~52~
字號:
package pinball;import javax.microedition.lcdui.*;public class Engine implements Runnable {    public static final int PATTERN_WIDTH = 11;    public final static int TITLE = 0;    public final static int PLAY = 1;    public final static int OVER = 2;    public final static int DEMO = 3;    private Ball ball;        //彈球    private Brick board;     //可移動的板子    private BrickList bricks; //磚塊列表    private Screen screen;   //屏幕    private int nScore;       //得分    private int nHighScore;    //最高分    private int nLevel;       //游戲級別    private int nLives;       //生命數(shù)    private int nState;       //游戲狀態(tài)    private int nKey;         //按鍵    private int nTimeIntervel; //時間間隔    private boolean bPaused;   //是否暫停    private long nLastKey;  //最后一次按鍵的時間    private boolean bStarted;  //是否開始游戲    private boolean bDone;           //游戲是否結(jié)束    private static final int KEY_DELTA = 10000;     //無按鍵消息的時間間隔    private static final int STD = Brick.STANDARD;    private static final int FIX = Brick.FIXED;    private static final int SLI = Brick.SLIDE;    private static final int ZOM = Brick.ZOMBIE;    private int[] title_pattern = {        STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,        FIX, FIX, FIX, FIX, FIX, STD, STD, STD, STD, STD, STD, STD, STD, STD,        STD, FIX, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, FIX, STD,        STD, STD, STD, STD, STD, STD, STD, STD, STD, FIX, STD, STD, STD, STD,        STD, STD, FIX, STD, STD, STD, FIX, STD, STD, STD, STD, STD, STD, STD,        FIX, FIX, FIX, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,        STD, STD, STD, STD,    };    private int[][] pattern_list = {         {            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,        }, {            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, ZOM, SLI,            ZOM, ZOM, SLI, ZOM, ZOM, SLI, ZOM, ZOM, SLI, ZOM, ZOM, ZOM, ZOM,            ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, SLI, ZOM, ZOM, SLI, ZOM, ZOM,            SLI, ZOM, ZOM, SLI, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM,            ZOM, ZOM, ZOM, ZOM, SLI, ZOM, ZOM, SLI, ZOM, ZOM, SLI, ZOM, ZOM,            SLI, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, SLI,            ZOM, ZOM, SLI, ZOM, ZOM, SLI, ZOM, ZOM, SLI, ZOM,        }, {            ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, FIX,            SLI, FIX, FIX, FIX, FIX, FIX, SLI, FIX, ZOM, ZOM, FIX, ZOM, ZOM,            ZOM, ZOM, ZOM, ZOM, ZOM, FIX, ZOM, ZOM, FIX, ZOM, STD, STD, STD,            STD, STD, ZOM, FIX, ZOM, ZOM, FIX, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM,            ZOM, FIX, ZOM, ZOM, FIX, FIX, FIX, FIX, FIX, FIX, FIX, FIX, FIX,            ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, ZOM, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,        }, {            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, FIX,            FIX, FIX, FIX, FIX, FIX, FIX, FIX, FIX, STD, STD, FIX, STD, STD,            STD, STD, STD, STD, STD, FIX, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD, STD,            STD, STD, STD, STD, FIX, STD, STD, STD, STD, STD, STD, STD, FIX,            STD, STD, FIX, FIX, FIX, FIX, FIX, FIX, FIX, FIX, FIX, STD, STD,            STD, STD, STD, STD, STD, STD, STD, STD, STD, STD        }    };    public Engine(Screen screen) {        int i, n;        long then;        this.screen = screen;        //綁定屏幕顯示        screen.setEngine(this);        //創(chuàng)建滑板        board = new Brick(null, Screen.width / 2 - Brick.WIDTH / 2,                           Screen.VDIVIDER - Brick.HEIGHT - 4, -1, 2);        board.setColor(ThreeDColor.lightGray);        board.width = Screen.width / 8;        board.height = Brick.HEIGHT / 2;        ball = new Ball(Screen.width / 2 - Brick.WIDTH / 4,                        board.y - 2 * Ball.RADIUS,                        2 * Math.max(1, Screen.width / 80),                        2 * -Math.max(1, Screen.width / 80));        nLevel = 0;        nState = TITLE;        bDone = false;        bricks = new BrickList(title_pattern, PATTERN_WIDTH, -1);        nLastKey = System.currentTimeMillis();        then = System.currentTimeMillis();        n = 0;        for (i = 0; i < 30000; i++) {            n++;        }        if (n > 0) {            nTimeIntervel = (int) (System.currentTimeMillis() - then);        }        Thread runner = new Thread(this);        runner.start();    }    /**     * 重新開始游戲     */    private void reset() {        nLevel = 0;        nLives = 2;        nScore = 0;        startLevel();    }    /**     * 開始新的游戲級別     */    private void restartLevel() {        if (nState == PLAY) {            bPaused = true;        }        synchronized (this) {            bStarted = true;        }        board.moveTo(Screen.width / 2 - Brick.WIDTH / 2,                      Screen.VDIVIDER - Brick.HEIGHT - 4);        ball.moveTo(Screen.width / 2 - Brick.WIDTH / 4,                    board.y - 2 * Ball.RADIUS);        ball.setSteps(Math.max(1, Screen.width / 80),                      -Math.max(1, Screen.width / 80));        screen.repaint();        screen.serviceRepaints();    }    /**     * 開始新一關(guān)游戲     */    private void startLevel() {        bricks = new BrickList(pattern_list[nLevel], PATTERN_WIDTH, nLevel);        restartLevel();    }    /**     * 過關(guān)     */    private void nextLevel() {        nLevel++;        if (nLevel == pattern_list.length) {            nLevel = 0;        }        startLevel();    }    public void keyPressed(int key_code, int game_action) {        nKey = game_action;        nLastKey = System.currentTimeMillis();        if (key_code == Canvas.KEY_NUM0 || game_action == Canvas.GAME_A) {            nextLevel();            return;        }        if (nState == TITLE || nState == OVER || nState == DEMO) {            nState = PLAY;            reset();        } else if (nState == PLAY                   && (nKey == Canvas.LEFT || nKey == Canvas.RIGHT                       || nKey == Canvas.FIRE)) {            bPaused = false;        }    }    public void keyReleased(int key_code, int game_action) {        nKey = 0;    }    public void getState(EngineState engineState) {        engineState.bricks = bricks;        engineState.ball = ball;        engineState.board = board;        engineState.state = nState;        engineState.score = nScore;        engineState.highscore = nHighScore;        engineState.lives = nLives;    }    public synchronized boolean levelStarted() {        boolean x = bStarted;        bStarted = false;        return x;    }    public void stop() {        bDone = true;    }    public void run() {        boolean recent_collision;        long then;        int px, pw, delta;        int board_speed = 0;        recent_collision = false;        then = System.currentTimeMillis();        while (!bDone) {            if ((nState == TITLE || nState == OVER)                    && System.currentTimeMillis() - nLastKey                       > KEY_DELTA) {                nState = DEMO;                reset();            }            px = board.x;            pw = board.width;            if (nState == DEMO) {  //演示狀態(tài)                int ball_center = ball.x + Ball.RADIUS;                int board_center = px + Brick.WIDTH / 2;                int epsilon = pw / 4;                if (ball_center >= px + epsilon                        && ball_center <= px + pw - epsilon) {                    nKey = 0;                } else if (ball_center < board_center) {                    nKey = Canvas.LEFT;                } else {                    nKey = Canvas.RIGHT;                }            }            if ((nState == PLAY || nState == DEMO) &&!bPaused) {                if (nKey == Canvas.LEFT) {                    board_speed = Math.min(-1,                                            -Brick.STEP                                            / (nState == DEMO ? 3 : 1));                } else if (nKey == Canvas.RIGHT) {                    board_speed = Math.max(1,                                            Brick.STEP                                            / (nState == DEMO ? 3 : 1));                } else {                    board_speed = 0;                }                if (board_speed < 0 && px > 0                        || board_speed > 0 && px + pw < Screen.width) {                    board.moveBy(board_speed, 0);                }                ball.move();                if (ball.x <= 0 || ball.x >= Screen.width - ball.width - 1) {                    ball.bounceHorizontal();                }                if (ball.y <= 0) {                    ball.bounceVertical();                }                if (ball.intersects(board)) {                    if (!recent_collision) {                        ball.bounce(board);                    }                    recent_collision = true;                } else {                    recent_collision = false;                }                nScore += bricks.checkForCollision(ball);                if (nState == PLAY && nScore >= nHighScore) {                    nHighScore = nScore;                }                if (bricks.isClean()) {                    nextLevel();                }                if (ball.y >= board.y + board.height) {                    if (nState == PLAY) {                        nLives--;                    }                    if (nLives < 0) {                        nState = OVER;                        nLevel = 0;                    }                    restartLevel();                }            }            screen.repaint();            delta = (int) (System.currentTimeMillis() - then);            if (delta < 30 && nTimeIntervel < 100) {                try {                    Thread.sleep(30 - delta);                } catch (InterruptedException e) {}            }            then = System.currentTimeMillis();        }    }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲va欧美va人人爽| 久久精品亚洲一区二区三区浴池| 91精品免费观看| 精品第一国产综合精品aⅴ| 国产精品美女一区二区在线观看| 一区二区三区日韩在线观看| 伦理电影国产精品| 99免费精品视频| 日韩限制级电影在线观看| 国产精品久久午夜| 日韩电影在线免费看| 高清久久久久久| 欧美日韩在线三级| 中文字幕巨乱亚洲| 免费成人小视频| 99精品视频中文字幕| 欧美va日韩va| 一区二区激情视频| 国产精品一区免费视频| 欧美日韩国产综合视频在线观看 | 一区二区三区四区不卡在线| 麻豆精品视频在线观看视频| va亚洲va日韩不卡在线观看| 日韩视频免费观看高清完整版在线观看 | 2017欧美狠狠色| 亚洲第一成人在线| www.亚洲人| 精品免费国产一区二区三区四区| 亚洲精品成a人| 国产盗摄一区二区| 91精品国产丝袜白色高跟鞋| 亚洲欧美色图小说| 国产福利精品一区| 日韩视频永久免费| 亚洲成va人在线观看| 99热国产精品| 国产日本欧美一区二区| 国产.欧美.日韩| 欧美一二三四在线| 亚洲福利一二三区| 99久久er热在这里只有精品15| 欧美精品一区二区高清在线观看| 亚洲主播在线观看| 91网站最新地址| 国产人久久人人人人爽| 精品一区二区在线播放| 91麻豆精品国产91久久久久久| 亚洲视频一区二区在线| 成人免费高清视频在线观看| 久久综合九色综合欧美98 | 精品久久久久久无| 免费在线观看成人| 9191久久久久久久久久久| 一卡二卡欧美日韩| 91久久一区二区| 亚洲天堂a在线| 99久久婷婷国产| 久久亚洲二区三区| 激情欧美一区二区三区在线观看| 欧美一级二级三级蜜桃| 日本亚洲欧美天堂免费| 69久久夜色精品国产69蝌蚪网| 亚洲一二三四在线| 在线观看日韩电影| 亚洲成在线观看| 欧美私模裸体表演在线观看| 亚洲一区二区免费视频| 欧美日韩国产不卡| 天天做天天摸天天爽国产一区 | 人人精品人人爱| 欧美喷潮久久久xxxxx| 五月婷婷另类国产| 欧美精品vⅰdeose4hd| 五月婷婷欧美视频| 欧美一级久久久久久久大片| 美国三级日本三级久久99| 日韩丝袜情趣美女图片| 极品瑜伽女神91| 欧美国产禁国产网站cc| hitomi一区二区三区精品| 亚洲欧洲中文日韩久久av乱码| 91啪亚洲精品| 亚洲已满18点击进入久久| 欧美日韩一级二级三级| 日韩精品视频网站| 精品国产一区二区三区不卡 | 国产欧美1区2区3区| 成人av免费在线观看| 亚洲色图在线播放| 欧美美女网站色| 久久福利资源站| 国产色婷婷亚洲99精品小说| 99九九99九九九视频精品| 亚洲综合在线观看视频| 欧美一区二区在线免费观看| 国产一区二区在线观看视频| 亚洲欧洲av一区二区三区久久| 欧美中文字幕不卡| 成人av电影免费在线播放| 中文字幕在线免费不卡| 欧美网站一区二区| 久久不见久久见免费视频1| 日本一区二区动态图| 在线视频综合导航| 另类小说视频一区二区| 国产精品美女视频| 在线播放欧美女士性生活| 国产伦精品一区二区三区免费迷 | 欧洲视频一区二区| 麻豆国产精品官网| 国产精品欧美一区二区三区| 欧美性色欧美a在线播放| 久久精品国产秦先生| 国产精品国产三级国产普通话蜜臀| 91国产免费观看| 久久不见久久见免费视频7| 亚洲三级小视频| 欧美大片日本大片免费观看| 成人免费黄色在线| 日本特黄久久久高潮| 国产亚洲精品免费| 在线观看视频一区| 国产成人99久久亚洲综合精品| 亚洲国产精品久久久久婷婷884| 久久综合狠狠综合| 欧美在线观看禁18| 国产精品88av| 婷婷久久综合九色国产成人 | 99久久免费精品| 日韩成人精品在线观看| 国产精品电影一区二区| 日韩欧美激情四射| 色国产综合视频| 国产传媒日韩欧美成人| 日韩激情视频在线观看| 亚洲视频在线一区| www国产精品av| 精品视频色一区| 成人18视频日本| 久久国产婷婷国产香蕉| 一区二区三区 在线观看视频| 国产日韩欧美综合一区| 欧美日韩高清在线播放| 91首页免费视频| 国产精品一区免费在线观看| 日韩av一区二区在线影视| 亚洲精品亚洲人成人网| 国产日韩欧美a| 亚洲精品在线免费观看视频| 欧美日韩一区二区三区免费看| 成人午夜电影小说| 精品一区二区免费| 男人的天堂亚洲一区| 亚洲午夜av在线| 亚洲色图色小说| 国产精品久久久久久久久晋中| 26uuu国产在线精品一区二区| 欧美久久久久久蜜桃| 欧美视频精品在线观看| 91九色最新地址| caoporen国产精品视频| 国产不卡视频一区| 国产综合久久久久影院| 久久草av在线| 玖玖九九国产精品| 麻豆精品视频在线观看| 成人av免费在线| 国产高清精品网站| 国产成人一区在线| 国产精品亚洲成人| 国产激情偷乱视频一区二区三区| 激情文学综合插| 国产综合色视频| 国产麻豆成人传媒免费观看| 国产精品一二三四区| 国产成人自拍在线| 国产999精品久久久久久| 粉嫩嫩av羞羞动漫久久久| 国产精品系列在线播放| 国产成人自拍网| 成人黄色一级视频| 91在线国产福利| 一本色道久久综合亚洲精品按摩| 色综合久久六月婷婷中文字幕| 91猫先生在线| 精品视频一区三区九区| 777午夜精品免费视频| 日韩免费观看高清完整版| 精品999在线播放| 欧美国产日韩亚洲一区| 亚洲婷婷国产精品电影人久久| 亚洲欧美日韩电影| 亚洲一二三区在线观看| 日韩av一区二区三区| 精品影视av免费| 成人黄色免费短视频| 一本色道久久加勒比精品| 欧美性大战久久久久久久| 制服.丝袜.亚洲.另类.中文| 欧美mv日韩mv国产网站|