⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 westgamecanvas.java~52~

📁 j2me 横版过关游戏工程。(demo).可以参考下
💻 JAVA~52~
📖 第 1 页 / 共 5 页
字号:
                            }
                            break;
                    }
                    objPlayer.keyPress(key);
                    break;
                case 2://成功过关
                    switch (key)
                    {
                        case KEYCODE_RIGHT_SOFTKEY:
                            if(++gameLevel>4)
                                scoreSort = true;
                            else
                                markNum=0x1000000;
//                            gameState = 0;
                            break;
                        case KEYCODE_LEFT_SOFTKEY:
                            scoreSort=true;
                            break;
                    }
                    break;
                case 4://死了一条命
                    switch (key)
                    {
                        case KEYCODE_RIGHT_SOFTKEY:
                            int idx;
                            if (mapX > data.getWorldMessage()[8])
                                idx = 0;
                            else if (mapX > data.getWorldMessage()[10])
                                idx = 8;
                            else
                                idx = 10;
                            mapX = data.getWorldMessage()[idx];
                            mapY = data.getWorldMessage()[idx + 1];
                            npc.npc = new Npc_West[15];
                            hp = 100;
                            life--;
                            gameState = 0;
                            objPlayer.playerState = 2;
                            break;
                        case KEYCODE_LEFT_SOFTKEY:
                            scoreSort=true;
                            break;
                    }
                    break;
                case 8://游戏失败
                    switch (key)
                    {
                        case KEYCODE_RIGHT_SOFTKEY:
                        case KEYCODE_LEFT_SOFTKEY:
                            scoreSort=true;
                            break;
                    }
                    break;
            }
            //高分榜排序
            if(scoreSort)
            {
                this.saveLevel = gameLevel>4?4:gameLevel;
                this.menuScoreSort();
                this.soundStop();
            }
        }
    }
    /**
     * 松开按键
     *
     * @param key
     */
    protected void keyReleased(int key)
    {
        switch (markNum)
        {
            case 0x2000000:
                objPlayer.keyRelease(key);
                break;
            case 0x8000000:
                this.menuSubTxtDy &= 0;//名字字符变化为0
                break;
        }
    }

    protected void showNotify()
    {
        //TODO showNotify
        this.gameIsOut = false;
    }

    protected void hideNotify()
    {
        //TODO hideNotify
        this.gameIsOut = true;
        if (this.soundPlaying)
            this.soundStop();
        if (markNum == 0x2000000)//当前为游戏状态的时候
            markNum = 0x800000;
    }

    //--------------------------------------------------------------------<menu
    private void menuMove()
    {
        if (( markNum & 0xff000000 ) == 0x4000000)
        {
            switch (mark)
            {
                case 0:
                    //菜单的loading
                    //菜单
                	Image img[];
                	img = dataGetImg(0);

                	for(int i = 0;i<23;i++)
                	{
                		imgMenu[i] = img[i];
                	}
                	img = dataGetImg(1);
                	for(int i = 0;i<6;i++)
                	{
                		imgMenu[i+24] = img[i];
                	}
                	//压缩数据
//                    for (int i = 0; i < 24; i++)
//                    	if(i!=18)
//                    		data.createImg("menu" + i, imgMenu, i);
//                    data.createImg("loading", imgMenu, 24);
//                    data.createImg("owner", imgMenu, 25);
//                    data.createImg("menuTxt", imgMenu, 26);
//                    data.createImg("yamaxun",imgMenu,27);
//                    data.createImg("monkey",imgMenu,28);
//                    data.createImg("monkeyHead",imgMenu,29);

                    //---------------------------------------------------------------add
                    data.createImg("hundrandLogo", imgMenuLoad, 11);
                    imgMenuLoad[0] = img[6];
                    imgMenuLoad[1] = img[7];
                    imgMenuLoad[2] = img[8];
                    imgMenuLoad[6] = img[9];
                    imgMenuLoad[7] = img[10];
                    imgMenuLoad[8] = img[11];
                    img = null;
//
//                    data.createImg("menu_0",imgMenuLoad,0);
//                    data.createImg("menu_1",imgMenuLoad,1);
//                    data.createImg("menu_2",imgMenuLoad,2);
//                    data.createImg("menu_6",imgMenuLoad,6);
//                    data.createImg("menu_7",imgMenuLoad,7);
//                    data.createImg("menu_8",imgMenuLoad,8);
//
                    data.createImg("spLogo", imgMenuLoad, 12);
                    //music
                    this.sounds[SOUND_MENU_IDX] = this
                            .soundOpen(SOUND_MENU_NUM);
                    this.sounds[SOUND_FAIL_IDX] = this
                            .soundOpen(SOUND_FAIL_NUM);
                    this.sounds[SOUND_WIN_IDX] = this.soundOpen(SOUND_WIN_NUM);

                    RecordStore rs = this.rsOpen(this.rsName, false);
                    if (null == rs)
                    {//如果没有数据库就创建数据库,创建数据库的关卡纪录数据都为空
                        rs = this.rsOpen(this.rsName, true);
                        this.rsAddRecord(rs, new byte[] { 0, 1 });
                        this.rsAddRecord(rs, new byte[90]);
                    }
                    this.menuStrFont = Font.getFont(Font.FACE_MONOSPACE,
                            Font.STYLE_PLAIN, Font.SIZE_SMALL);
                    this.menuSubStrVector = new Vector(20, 5);
                    byte[][] temp = this.rsGetRecord(rs, 1, 1);
                    this.soundOn =temp[0][0]==0?false:true;
                    this.saveLevel=temp[1][0];
                    this.rsNameScore = this.rsGetRecord(rs, 2, 15);
                    this.rsClose(rs);
                    data.createImg("fireAnt",imgMenuLoad,9);
                    mark++;
                    repaint();
                    break;
                case 9:
                    markNum = 0;
                    imgMenuLoad = null;
                    xyCartoon = null;
                    break;
                case 8:
                case 7:
                case 6:
                case 4:
                case 3:
                case 2:
                    mark++;
                    break;
                case 1://树枝掉下来,猴子掉下来,俩个字移动出来
                    if (xyCartoon[0] < 0)
                        xyCartoon[0] += 10;
                    else if (xyCartoon[1] <= 20)
                        xyCartoon[1] += 15;
                    else if (xyCartoon[2] < 4)
                        xyCartoon[2] += 8;
                    else if (xyCartoon[3] > 90)
                        xyCartoon[3] -= 5;
                    else
                        mark++;
                    break;

            }
            System.out.println("AAAAAAAAA");
        }
        else if (( markNum & 0xff000000 ) == 0x1000000)
        {
        	Image img[];
            if (mark == 1)
            {
                 System.out.println("DDDDDDDDDDDDDDDD");
                /* 初始化游戏音乐***************************************** */
                this.soundClose(0);
                //Tools.txtOut("gameInit 1:2");
                this.sounds[SOUND_GAME_IDX] = this
                        .soundOpen(WestGameCanvas.gameLevel);
                    System.out.println("EEEEEEEEEEEEEEEE");
                //				------------------------------------------------<load picture
                GameDataSimple.imgMain  = dataGetImg(2);/*= new Image[5];
                Image imgUse[] = dataGetImg(2);
                for (int i = GameDataSimple.imgMain.length; --i >= 0; )
                	GameDataSimple.imgMain[i] = imgUse[i];*/
//                for (int i = GameDataSimple.imgMain.length; --i >= 0; )
//                {
//                    data.createImg("main_" + i, GameDataSimple.imgMain, i);
//                }
                GameDataSimple.imgSurface = dataGetImg(3);
//                String nameUse2[] = { "surHead", "surLP", "surLifeNum",
//                        "surScoreNum" };
//                GameDataSimple.imgSurface = new Image[nameUse2.length];
//                for (int i = GameDataSimple.imgSurface.length - 1; i >= 0; i--)
//                {
//                    data.createImg(nameUse2[i], GameDataSimple.imgSurface, i);
//                }
//                nameUse2 = null;
                System.out.println("FFFFFFFFFFFFF" + WestGameCanvas.gameLevel);
                switch (WestGameCanvas.gameLevel)
                {
                    case 1:
                    case 4:
                    	img = dataGetImg(4);
                        GameDataSimple.imgMap = new Image[13];
                        for (int i = 12; i > 0; i--)
                        {
                        	GameDataSimple.imgMap[i] = img[i-1];
                        }
                    GameDataSimple.imgNpc = new Image[6];
//                            String nameUse[] = { "npc_prop", "npc1_moveNpc",
//                                    "npc1_callNpc", "npc1_boss", "npc1_throw",
//                                    "npc1_npc" };
//                            for (int i = nameUse.length - 1; i >= 0; i--)
//                            {
//                                data.createImg(nameUse[i],
//                                        GameDataSimple.imgNpc, i);
//                            }
//                            nameUse = null;
                    	GameDataSimple.imgNpc = dataGetImg(5);
                    	img = dataGetImg(6);
                    	GameDataSimple.imgBack = new Image[6];
                    	GameDataSimple.imgBack[0] = img[0];
                    	GameDataSimple.imgBack[1] = img[1];
                    	GameDataSimple.imgBack[2] = img[2];
                    	GameDataSimple.imgBack[4] = img[3];
                    	GameDataSimple.imgBack[5] = img[4];

//                        for (int i = 5; i >= 0; i--)
//                        {
//                            data.createImg("back_1_" + i,
//                                    GameDataSimple.imgBack, i);
//                        }
                        break;

                    case 2:
                    	img = dataGetImg(7);
                        GameDataSimple.imgMap = new Image[10];
                        for (int i = 9; i > 0; i--)
                        	GameDataSimple.imgMap[i] = img[i-1];
//                        {
//                            data.createImg("mapTwo" + i, GameDataSimple.imgMap,
//                                    i);
//                        }

                        GameDataSimple.imgNpc = new Image[6];
                        GameDataSimple.imgNpc[0] = dataGetImg(5)[0];
                        for(int i = 1;i<6;i++)
                        	GameDataSimple.imgNpc[i] = dataGetImg(8)[i-1];
//                        String nameUse3[] = { "npc_prop", "npc2_moveNpc",
//                                "npc2_callNpc", "npc2_boss", "npc2_throw",
//                                "npc2_npc" };
//                        for (int i = nameUse3.length - 1; i >= 0; i--)
//                        {
//                            data.createImg(nameUse3[i], GameDataSimple.imgNpc,
//                                    i);
//                        }
                        img = dataGetImg(9);

                        GameDataSimple.imgBack = new Image[6];
                        GameDataSimple.imgBack[0] = img[0];
                        GameDataSimple.imgBack[1] = img[1];
                        GameDataSimple.imgBack[2] = img[2];
                        GameDataSimple.imgBack[5] = img[3];
//                        for (int i = 5; i >= 0; i--)
//                        {
//                            data.createImg("back_2_" + i,
//                                    GameDataSimple.imgBack, i);
//                        }
                        break;

                    case 3:
                       System.out.println("11111111111111111");
                    	img = dataGetImg(10);

                        GameDataSimple.imgMap = new Image[10];
                         System.out.println("1.51.51.51.51.51.5:" +img );
                        for (int i = 9; i > 0; i--)
                        	GameDataSimple.imgMap[i] = img[i-1];
//                        {
//                            data.createImg("mapThree" + i,
//                                    GameDataSimple.imgMap, i);
//                        }
                                System.out.println("22222222222222");
                        img = dataGetImg(11);
                        GameDataSimple.imgNpc = new Image[6];
                        GameDataSimple.imgNpc[0] = dataGetImg(5)[0];
                        GameDataSimple.imgNpc[1] = img[0];
                        GameDataSimple.imgNpc[2] = img[1];
                        GameDataSimple.imgNpc[3] = img[2];
                        GameDataSimple.imgNpc[5] = img[3];
                        System.out.println("3333333333");
//                        String nameUse4[] = { "npc_prop", "npc3_moveNpc",
//                                "npc3_callNpc", "npc3_boss", "npc3_throw",
//                                "npc3_npc" };
//                        for (int i = nameUse4.length - 1; i >= 0; i--)
//                        {
//                            data.createImg(nameUse4[i], GameDataSimple.imgNpc,
//                                    i);
//                        }

                        GameDataSimple.imgBack = dataGetImg(12);
//                        GameDataSimple.imgBack = new Image[3];
//                        for (int i = 2; i >= 0; i--)
//                        {
//                            data.createImg("back_3_" + i,
//                                    GameDataSimple.imgBack, i);
//                        }
                        break;
                }
                System.out.println("GGGGGGGGGG");
                img = null;
                data.getArray();
                objPlayer = new Player_West(0, GameDataSimple.imgMain[data
                        .getPlayer()[0]], data.getPlayer()[1],
                        data.getPlayer()[2]);
                objPlayer.setPosition(data.getPlayer()[3], data.getPlayer()[4]);
                if (gameLevel > 2)
                {
                	objPlayer.imgWeapon = dataGetImg(13);
//                    objPlayer.imgWeapon = new Image[6];
//                    for (int i = objPlayer.imgWeapon.length - 1; i >= 0; i--)
//                    {
//                        data.createImg("weapon_" + i, objPlayer.imgWeapon, i);
//                    }
                }
                npc = new Npc_Bound();

                drawStart = data.getWorldMessage()[1];
                blockDraw = new int[3][35];

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -