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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? westgamecanvas.java

?? j2me 橫版過關游戲工程。(demo).可以參考下
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
                blockDraw = new int[3][35];
                mapX = data.getWorldMessage()[0];
                mapY = data.getWorldMessage()[1];
                gameState = 0;//0,正常游戲狀態 1,切換命的狀態 2gameover

                markNum = 0x2000000;
                mark = 0;

                //------------------------------------------------------------->
            }
            else if (mark == 0)
            {
                mark++;
            }
             System.out.println("BBBBBBBBBBBBBB");
        }
        else if (markNum == 0x8000000)
        {
            int sum = 0;
            for (int i = 0; i < 10; i++)
                sum += this.rsNameScore[5][i];
            this.nameOk = sum > 0 ? true : false;
            if (this.menuSubTxtDy != 0)
                this.menuChangeName(0, this.menuSubTxtDy);
        System.out.println("CCCCCCCCCCC");
       }
    }

    private void menuPaint(Graphics g)
    {
        if (( 0xff000000 & markNum ) == 0x4000000)
        {
            switch (mark)
            {

            case 0:
                g.drawImage(imgMenuLoad[9], 31, 77, 0);
                break;
            case 1:
                g.drawImage(imgMenuLoad[0], 0, 0, 0);
                g.drawImage(imgMenuLoad[1], 30, xyCartoon[0], 0);
                g.drawImage(imgMenuLoad[2], 30, xyCartoon[1], 0);
                g.drawImage(imgMenu[27], xyCartoon[2], 100, 0);
                g.drawImage(imgMenu[28], xyCartoon[3], 140, 0);
                break;
            case 2:
//                g.drawImage(imgMenuLoad[5], 85, 135, 0);
                break;
            default:
                g.drawImage(imgMenuLoad[0], 0, 0, 0);
                g.drawImage(imgMenuLoad[6], 35, 69, 0);//畫START
                if (mark == 5)
                {
                    g.drawImage(imgMenuLoad[7], 60, 80, 0);
                    g.setColor(0Xffffff);
                    g.drawString("press 5 to start.", 60, 120, 0);
                }
                else
                    g.drawImage(imgMenuLoad[8], 70, 70, 0);
                break;
            }
        }
        //菜單部分
        if (( markNum & 0xff000000 ) == 0)
        {
            //主菜單繪制
            if (( markNum & 0xf0000 ) == 0)
            {
                int startY = 55;
                int startX, imgIdx;
                g.drawImage(imgMenu[0], 0, 0, 0);
                g.drawImage(imgMenu[27], 5, 15, 0);
                g.drawImage(imgMenu[28], 95, 15, 0);
                g.drawImage(imgMenu[29], 110, 25, 0);
                for (int i = 1; i < 8; i++)
                {
                    if (i == 1 && ( markNum & 0x800000 ) > 0)//back選項
                        imgIdx = ( markNum == 0x800000 ) ? 16 : 8;
                    else
                        //其它選項
                        imgIdx = i
                                + ( ( ( 0xff & ( markNum >> 8 ) ) == i - 1 ) ? 8
                                        : 0 );
                    startX = ( ( screenWidth - imgMenu[imgIdx].getWidth() ) >> 1 ) - 22;
                    g.drawImage(imgMenu[imgIdx], startX, startY, 0);
                    startY += 18;
                }
            }
            else
            {
                g.drawImage(imgMenu[17], 0, 0, 0);
                //自菜單繪制
                int idUse = ( ( markNum & 0xf0000 ) >> 16 ) + 9;
                g.drawImage(imgMenu[idUse], ( screenWidth - imgMenu[idUse]
                        .getWidth() ) / 2 - 10, 25, 0);
                switch (markNum & 0xf0000)
                {
                    case 0x20000://選項
                        g.drawImage(imgMenu[19], 70, 80, 0);
                        g.drawImage(imgMenu[21 - ( ( markNum & 0x100 ) == 0 ? 1
                                : 0 )], 90, 120, 0);
                        g.drawImage(imgMenu[23 - ( ( markNum & 0x100 ) == 0 ? 0
                                : 1 )], 90, 140, 0);
                        break;
                    case 0x40000://高分榜
                        this.menuDrawSubText(g, this.txtScoreInfo, 18, 158, 90);
                        break;
                    case 0x30000://關于
                    case 0x50000://幫助
                        this.menuDrawChinaStr(g);
                        break;
                }
            }
        }
        //loading部分
        if (markNum == 0x1000000)
        {

            g.setColor(0);
            g.fillRect(0, 0, 176, 208);
            g.drawImage(imgMenu[24], 100, 190, 0);
            g.setColor(0xffff);
            g.drawString("AAAAAAAAa",0,0,20);
        }
        else if (markNum == 0x8000000)
        {
            g.drawImage(imgMenu[17], 0, 0, 0);
            this.menuDrawSubText(g, this.txtNameInfo, 53, 123, 80);
            g.setClip(0, 0, screenWidth, screenHeight);
            //下劃線的起始位置
            int ix = 54;
            for (int i = 0; i < 10; i++)
                ix += MENU_SUB_TEXT_W;
        }
        if (!( ( 0xff000000 & markNum ) == 0x4000000 && mark == 0 )
                && markNum != 0x1000000)
            g.drawImage(imgMenu[25], 20, 190, 0);
    }

    void menuKeyPress(int keyCode)
    {
        if (( 0xff000000 & markNum ) == 0x4000000 && mark == 5
                && keyCode == KEY_NUM5)
        {
            mark = 6;
        }
        //菜單部分
        if (( 0xff000000 & markNum ) == 0)
        {
            switch (keyCode)
            {
                case KEY_NUM2:
                case KEYCODE_DIRECT_UP:
                    if (( ( 0xff0000 & markNum ) == 0 //是主菜單狀態
                            || ( 0x820000 & markNum ) > 0 )//是主菜單可以返回游戲 或者
                            // 是選項菜單
                            && ( 0xff00 & markNum ) > 0)//未到達最頂端
                        markNum -= 0x100;
                    break;
                case KEY_NUM8:
                case KEYCODE_DIRECT_DOWN:
                    if (( ( ( 0xff0000 & markNum ) == 0 || ( 0x800000 & markNum ) > 0 ) && ( 0xff00 & markNum ) < 0x600 )//未到達主菜單下端
                            || ( ( 0x20000 & markNum ) > 0 && ( 0xff00 & markNum ) < 0x100 ))//未到達選項菜單下端
                        markNum += 0x100;
                    break;
                case KEY_NUM5:
                case KEYCODE_DIRECT_FIRE:
                    switch (markNum)
                    {
                        case 0x600://退出游戲
                            this.running = false;
                            break;
                        case 0x800600://從可以返回游戲的菜單,退出到新游戲的菜單
                            markNum &= 0;
                            this.saveLevel = gameLevel;
                            break;
                        case 0x800000://返回游戲
                            markNum = 0x2000000;//繼續游戲
                            this.soundStop();
                            break;
                        default://其它狀態
                            if (markNum == 0 || ( 0xfff00 & markNum ) == 0x100)
                            {
                                isContinue=(markNum == 0)?false:true;
                                markNum = 0x08000000;//輸入名字狀態
                                this.menuChangeName(0, 0);
                            }
                            else if (( 0xf0000 & markNum ) == 0)
                            {//當前是主菜單
                                int markuse = markNum & 0xf00;
                                markuse <<= 8;
                                markNum &= 0xfff0f0ff;
                                markNum |= markuse;
                                //子菜單內容處理
                                switch (markNum&0xf0000)
                                {
                                    case 0x40000://高分榜
                                        this.menuScoreTextHandle();
                                        break;
                                    case 0x30000://關于
                                        this.menuSplitStringForVector(this.menuSubStr[1]);
                                        break;
                                    case 0x50000://幫助
                                        this.menuSplitStringForVector(this.menuSubStr[0]);
                                        break;
                                }
                            }
                            else if (( 0x20000 & markNum ) > 0)
                            {//當前是選項菜單
                                this.soundOn = ( 0x100 & markNum ) == 0 ? true
                                        : false;
                            }
                            break;
                    }
                    break;
                case KEYCODE_RIGHT_SOFTKEY:
                case KEYCODE_LEFT_SOFTKEY:
                    if (( 0xf0000 & markNum ) != 0)
                    {
                        int markUse = markNum & 0xf0000;
                        markUse = markUse >> 8;
                        markNum = markNum & 0xfff0f0ff;
                        markNum = markNum | markUse;
                    }
                    break;
            }
        }
        else if (markNum == 0x8000000)
        {
            switch (keyCode)
            {
                case KEY_NUM2:
                case KEYCODE_DIRECT_UP:
                    this.menuSubTxtDy = -1;
                    break;
                case KEY_NUM8:
                case KEYCODE_DIRECT_DOWN:
                    this.menuSubTxtDy = 1;
                    break;
                case KEY_NUM4:
                case KEYCODE_DIRECT_LEFT:
                    this.menuChangeName(-1, 0);
                    break;
                case KEY_NUM6:
                case KEYCODE_DIRECT_RIGHT:
                    this.menuChangeName(1, 0);
                    break;
                case KEY_NUM5:
                case KEYCODE_DIRECT_FIRE:
                    if (nameOk)
                    {//開始新游戲
                        hp = 100;//主角的生命值,等于0時為死亡狀態
                        score = 0;
                        gameLevel = this.isContinue? this.saveLevel
                                : 1;
                        life = 3;
                        this.soundStop();
                        markNum = 0x1000000;//loading
                        this.mark &= 0;
                    }
                    break;
                case KEYCODE_RIGHT_SOFTKEY:
                case KEYCODE_LEFT_SOFTKEY:
                    markNum &= 0;
                    break;
            }
        }
    }
private boolean isContinue=false;

    private void mapMove()
    {
        int k = 0;
        if (mapY > 0)
        {
            startI = 0;
        }
        else
        {
            startI = ( -mapY ) >> 5;
        }
        endI = ( -mapY + screenHeight >> 5 ) + 1;
        if (endI < 0)
        {
            endI = 0;
        }
        else if (endI > data.getWorld().length - 1)
        {
            endI = data.getWorld().length - 1;
        }
        if (endI > startI)
        {
            startJ = ( -mapX ) >> 5;
            if (startJ < 0)
                startJ = 0;
            endJ = ( -mapX + screenHeight >> 5 ) + 1;
            if (endJ >= data.getWorld()[0].length)
            {
                endJ = data.getWorld()[0].length - 1;
            }
            xStartUse = xStart = ( startJ << 5 ) + mapX;
            yStart = ( startI << 5 ) + mapY;
            for (int j = startI; j <= endI; j++)
            {
                for (int i = startJ; i < endJ && k < blockDraw[0].length - 1; i++)
                {
                    if (data.getWorld()[j][i] != 0)
                    {
                        blockDraw[0][k] = data.getWorld()[j][i];
                        blockDraw[1][k] = xStartUse;
                        blockDraw[2][k] = yStart;
                        k++;
                    }
                    xStartUse += 32;
                }
                yStart += 32;
                xStartUse = xStart;
            }
        }
        blockDraw[0][k] = 0;
        //--------------------------------------------------------<1
        xMid = mapX * 2 / 5 % screenWidth;
        xClose = mapX % screenWidth;
        mapId = ( mapY - drawStart ) / screenHeight;
        yFar = ( mapY - drawStart ) % screenHeight;
        yMid = yFar + data.getBackMessagess()[0];
        //----------------------------------------------------------1>
    }

    private void mapDraw(Graphics g)
    {
        //---------------------------------------------------------<1
        drawId(g, 0, 0, yFar);
        if (yFar != 0)
        {
            mapId++;
            drawId(g, 0, 0, yFar - screenHeight);
            mapId--;
        }
        drawLayer(g, 1, xMid, yMid);
        drawLayer(g, 2, xClose, yMid + data.getBackMessagess()[1]);
        //----------------------------------------------------------1>
        for (int i = 0; i < blockDraw[0].length && blockDraw[0][i] != 0; i++)
        {
            g.drawImage(GameDataSimple.imgMap[blockDraw[0][i]],
                    blockDraw[1][i], blockDraw[2][i], 0);
            //TODO網格
//            g.setColor(0);
//            g.drawLine(blockDraw[1][i], blockDraw[2][i], blockDraw[1][i],
//                    blockDraw[2][i] + 32);
//            g.drawLine(blockDraw[1][i], blockDraw[2][i], blockDraw[1][i] + 32,
//                    blockDraw[2][i]);
            //---------------->
        }
    }

    /**
     * 繪制一層背景-------------------------1
     *
     * @param g
     * @param id
     *            0:遠景 1:中景 2:近景
     * @param xDraw
     *            層的x坐標
     * @param yDraw

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品另类一区| 麻豆91精品视频| 奇米精品一区二区三区在线观看 | 精品国产免费人成在线观看| 中文字幕在线不卡国产视频| 久久精品国产999大香线蕉| 色综合天天做天天爱| 久久男人中文字幕资源站| 亚洲自拍欧美精品| 国产精品亚洲一区二区三区妖精| 精品视频全国免费看| 国产精品第一页第二页第三页| 毛片av一区二区| 欧美日韩国产另类不卡| 亚洲精品乱码久久久久| 粉嫩蜜臀av国产精品网站| 欧美成人a∨高清免费观看| 亚洲国产精品一区二区www| av一区二区三区在线| 久久香蕉国产线看观看99| 奇米影视7777精品一区二区| 日本韩国欧美三级| 1024亚洲合集| 99久久亚洲一区二区三区青草| 久久综合狠狠综合久久激情| 国产在线视视频有精品| 欧美r级在线观看| 久久福利资源站| 欧美精品一区二区三区久久久 | 亚洲精品ww久久久久久p站| 国产成人精品综合在线观看| 久久综合国产精品| 国产在线不卡一区| 久久久久久久久久久99999| 国产精品综合视频| 久久色中文字幕| 国产精品伊人色| 国产精品美女久久久久久久久 | 欧美精品第1页| 日日夜夜精品视频天天综合网| 欧美视频在线一区二区三区| 日韩精彩视频在线观看| 日韩一区二区电影| 麻豆国产精品官网| 国产亚洲婷婷免费| av亚洲精华国产精华精华| 亚洲精品videosex极品| 91精品国产手机| 精品亚洲porn| 成人免费在线视频| 欧美日韩在线三级| 精品一区免费av| 国产精品久久久久久久久免费相片| 高清日韩电视剧大全免费| 亚洲综合在线电影| 日韩欧美美女一区二区三区| 国产精品亚洲一区二区三区在线| 中文字幕亚洲不卡| 91精品国产综合久久久蜜臀粉嫩 | 日韩美女视频一区| 欧洲日韩一区二区三区| 久久99久久精品| 国产精品麻豆99久久久久久| 91福利国产精品| 狠狠色狠狠色综合| 亚洲欧美日韩电影| 26uuu另类欧美亚洲曰本| 91在线精品一区二区三区| 日本欧美大码aⅴ在线播放| 国产精品无遮挡| 欧美日韩1区2区| 懂色av中文字幕一区二区三区| 尤物视频一区二区| 国产欧美一区二区精品性色超碰| 欧洲av在线精品| 国产精品一级片在线观看| 五月综合激情婷婷六月色窝| 国产日韩欧美不卡| 日韩精品在线一区二区| 日本二三区不卡| 国产91丝袜在线播放九色| 午夜精品一区在线观看| 国产精品短视频| 国产亚洲一区字幕| 日韩欧美一二三| 欧美日韩一区小说| 成人sese在线| 国产一区二区三区高清播放| 午夜亚洲福利老司机| 亚洲欧美日韩在线播放| 久久女同精品一区二区| 日韩欧美高清一区| 欧美人狂配大交3d怪物一区| 91论坛在线播放| 成人做爰69片免费看网站| 精品写真视频在线观看| 免费观看一级欧美片| 五月天激情小说综合| 一区二区成人在线| 亚洲人123区| 亚洲男人的天堂在线aⅴ视频| 国产精品私房写真福利视频| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 精品粉嫩aⅴ一区二区三区四区| 欧美日韩精品欧美日韩精品| 91猫先生在线| 91麻豆精品一区二区三区| 国产精品一区二区久久精品爱涩| 精品中文字幕一区二区| 极品瑜伽女神91| 国产精品99久久久| 国产成人免费在线| 成人av中文字幕| 99久久综合99久久综合网站| 成人av电影免费观看| 99免费精品在线| 色av一区二区| 欧美日韩精品久久久| 6080国产精品一区二区| 91精品免费观看| 欧美变态口味重另类| 国产亚洲精品bt天堂精选| 国产欧美1区2区3区| 国产精品欧美一级免费| 国产精品久久久久久久久免费丝袜 | 日韩欧美高清在线| 久久新电视剧免费观看| 欧美激情一区三区| 亚洲视频在线一区| 午夜久久久影院| 国产又黄又大久久| 97精品视频在线观看自产线路二| 99国产精品国产精品毛片| 欧美网站一区二区| 精品日韩欧美一区二区| 欧美高清在线视频| 亚洲国产一区在线观看| 久久av资源网| 91网页版在线| 欧美一区永久视频免费观看| 26uuu色噜噜精品一区| 亚洲色图在线看| 美国十次了思思久久精品导航| 国产麻豆视频精品| 色老汉av一区二区三区| 精品精品国产高清a毛片牛牛| 中文字幕的久久| 日本免费新一区视频| 成人av中文字幕| 日韩一区二区在线观看| 中文字幕一区在线观看视频| 日韩精品亚洲专区| 国产成人自拍网| 在线不卡一区二区| 国产欧美日韩亚州综合| 午夜在线成人av| jvid福利写真一区二区三区| 67194成人在线观看| 亚洲视频电影在线| 国产精品一区二区你懂的| 欧美日韩一级大片网址| 国产欧美综合色| 免费观看91视频大全| 色综合久久88色综合天天免费| 日韩精品专区在线| 亚洲国产一区二区视频| 成人a级免费电影| 精品少妇一区二区三区在线播放 | 欧美日韩中文一区| 国产精品视频观看| 玖玖九九国产精品| 欧美在线观看视频在线| 国产精品传媒在线| 国内精品视频666| 91精品国产综合久久久久久久久久 | 日本成人超碰在线观看| 色综合久久精品| 国产精品毛片无遮挡高清| 久久激五月天综合精品| 欧美男男青年gay1069videost| 中文字幕一区二区在线播放| 国产一区二区剧情av在线| 欧美一区二区不卡视频| 亚洲成人资源网| 欧美亚一区二区| 亚洲日本乱码在线观看| 成人免费高清在线观看| 国产女人18水真多18精品一级做| 蜜臀av在线播放一区二区三区| 欧美日韩国产另类一区| 亚洲精品自拍动漫在线| 91视频精品在这里| 日韩一区欧美一区| 色综合色狠狠天天综合色| 国产精品国产三级国产三级人妇 | 91精品国产综合久久久久久久久久| 日韩伦理av电影| 99精品国产91久久久久久| 国产精品精品国产色婷婷| 成人高清视频免费观看|