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

📄 titlegame.java

📁 俄罗斯制作的横版动作游戏
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
                {
                case 2: // '\002'
                    titleMode = 0;
                    break;

                case 0: // '\0'
                    titleMode = 1;
                    break;

                case 1: // '\001'
                    titleMode = 10;
                    initLevel();
                    break;

                case 10: // '\n'
                    titleMode = 20;
                    initLevel();
                    break;
                }
                numTime = 0;
            }
        } else
        if(titleMode == 90)
        {
            if(showNextPlayer)
            {
                showNextPlayer = false;
                realEnd = false;
                levelFinish = 2;
            }
        } else
        if(keyCode == -7 || keyCode == 55)
            switch(titleMode)
            {
            case 60: // '<'
                titleMode = 20;
                selectNewGame = 2;
                break;

            case 30: // '\036'
                titleMode = 20;
                if(showTrue)
                    selectNewGame = 0;
                else
                    selectNewGame = 1;
                break;

            case 20: // '\024'
                if(!showMenu)
                {
                    selectMenu = 0;
                    showMenu = true;
                } else
                {
                    showMenu = false;
                }
                break;
            }
        else
        if(keyCode == -6 || gameAction == 8)
            switch(titleMode)
            {
            case 20: // '\024'
                if(showMenu)
                {
                    if(selectMenu == 0)
                    {
                        playExit = true;
                        if(parent.playSound == 5)
                            try
                            {
                                gameMusic.close();
                            }
                            catch(Exception ex) { }
                        parent.notifyDestroyed();
                    } else
                    {
                        showMenu = false;
                    }
                } else
                {
                    switch(selectNewGame)
                    {
                    case 0: // '\0'
                        titleMode = 30;
                        selectNewGame = 0;
                        showTrue = true;
                        break;

                    case 1: // '\001'
                        if(loadStage() == 1)
                        {
                            levelFinish = 2;
                        } else
                        {
                            titleMode = 30;
                            selectNewGame = 0;
                            showTrue = true;
                        }
                        break;

                    case 2: // '\002'
                        titleMode = 60;
                        selectNewGame = 0;
                        break;
                    }
                }
                break;

            case 30: // '\036'
                if(!playerLock[selectNewGame])
                    if(showTrue)
                    {
                        startLine = -6;
                        titleMode = 40;
                        loadSound(1, true);
                        showTrue = false;
                    } else
                    {
                        levelFinish = 2;
                    }
                break;

            case 40: // '('
                levelFinish = 2;
                break;

            case 60: // '<'
                if(selectNewGame == 0)
                {
                    if(parent.playSound == 5)
                        parent.playSound = 0;
                    else
                        parent.playSound = 5;
                    if(parent.playSound > 0)
                    {
                        try
                        {
                            gameMusic.start();
                        }
                        catch(Exception ex) { }
                        SeReg.Save("sound.dat", "" + parent.playSound);
                    } else
                    {
                        try
                        {
                            gameMusic.stop();
                        }
                        catch(Exception ex) { }
                        SeReg.Save("sound.dat", "" + parent.playSound);
                    }
                } else
                if(selectNewGame == 1)
                {
                    try
                    {
                        gameMusic.stop();
                    }
                    catch(Exception ex) { }
                    parent.setDisplayable(new Instruction("????????", parent, this));
                }
                break;
            }
        else
        if(gameAction == 1)
            switch(titleMode)
            {
            case 20: // '\024'
                if(showMenu)
                    selectMenu -= selectMenu <= 0 ? 0 : 1;
                else
                    selectNewGame -= selectNewGame <= 0 ? 0 : 1;
                break;

            case 60: // '<'
                selectNewGame = 1 - selectNewGame;
                break;
            }
        else
        if(gameAction == 6)
            switch(titleMode)
            {
            case 20: // '\024'
                if(showMenu)
                    selectMenu += selectMenu >= 1 ? 0 : 1;
                else
                    selectNewGame += selectNewGame >= 2 ? 0 : 1;
                break;

            case 60: // '<'
                selectNewGame = 1 - selectNewGame;
                break;
            }
        else
        if(gameAction == 2)
            switch(titleMode)
            {
            case 30: // '\036'
                selectNewGame -= selectNewGame <= 0 ? -2 : 1;
                break;
            }
        else
        if(gameAction == 5)
            switch(titleMode)
            {
            case 30: // '\036'
                selectNewGame += selectNewGame >= 2 ? -2 : 1;
                break;
            }
    }

    public void run()
    {
        while(running) 
        {
            processNext();
            if(!playExit)
            {
                repaint();
                serviceRepaints();
            }
            try
            {
                Thread.sleep(10L);
            }
            catch(InterruptedException ioe) { }
        }
    }

    protected void showNotify()
    {
        if(titleMode >= 10 && parent.playSound > 0)
            try
            {
                gameMusic.start();
            }
            catch(Exception ex) { }
        mainGame = null;
        running = true;
        (new Thread(this)).start();
    }

    protected void hideNotify()
    {
        if(gameMusic != null)
            try
            {
                gameMusic.stop();
            }
            catch(Exception ex) { }
        running = false;
    }

    private void drawThai(Graphics g, String text, int x, int y, int type, int center, int numClip, 
            boolean clip)
    {
        if(text == null)
            return;
        char tempch[] = new char[text.length()];
        int addX = 0;
        int addY = 0;
        int startX = x;
        tempch = text.toCharArray();
        int length = text.length();
        if(center != 0)
        {
            int tempWidth = 0;
            for(int i = 0; i < length; i++)
            {
                int code;
                if(tempch[i] < '\u0E01')
                    code = tempch[i] - 31;
                else
                    code = (tempch[i] - 3584) + 129;
                tempWidth += ADD_FONT[code - 1];
            }

            if(center == 2)
                startX -= tempWidth >> 1;
            else
            if(center == 4)
                startX -= tempWidth;
            else
                startX = x;
        }
        for(int i = 0; i < length; i++)
        {
            int code;
            if(tempch[i] < '\u0E01')
            {
                addX = 0;
                code = tempch[i] - 31;
                if(type == 0)
                {
                    if(numClip == 1)
                        g.setClip(0, 70, 176, 68);
                    else
                    if(numClip == 2)
                        g.setClip(0, 42, 176, 75);
                    thaiFontB.drawImage(g, startX + addX, y, tempch[i] - 31, clip);
                } else
                if(type == 1)
                {
                    if(numClip == 1)
                        g.setClip(0, 70, 176, 68);
                    else
                    if(numClip == 2)
                        g.setClip(0, 42, 176, 75);
                    thaiFontW.drawImage(g, startX + addX, y, tempch[i] - 31, clip);
                }
                startX += ADD_FONT[code - 1];
                continue;
            }
            code = (tempch[i] - 3584) + 129;
            if(code >= 201 && code <= 206)
            {
                if(i + 1 < length && tempch[i + 1] - 3584 == 51)
                    addY = 0;
                if(i - 1 >= 0 && (code == 201 || code == 204))
                {
                    if(tempch[i - 1] - 3584 == 27 || tempch[i - 1] - 3584 == 29)
                        addX -= 2;
                    if(tempch[i - 1] - 3584 == 31)
                        addX--;
                    if((tempch[i - 1] - 3584 == 50 || tempch[i - 1] - 3584 >= 53 && tempch[i - 1] - 3584 <= 59) && i - 2 >= 0)
                    {
                        if(tempch[i - 2] - 3584 == 27 || tempch[i - 2] - 3584 == 29)
                            addX -= 2;
                        if(tempch[i - 2] - 3584 == 31)
                            addX--;
                    }
                }
            } else
            if(code == 178 || code >= 181 && code <= 188 || code >= 200 && code <= 208)
            {
                addY = 0;
            } else
            {
                addY = 0;
                addX = 0;
                if(code == 180)
                    startX -= 3;
            }
            if(type == 0)
            {
                if(numClip == 1)
                    g.setClip(0, 70, 176, 68);
                else
                if(numClip == 2)
                    g.setClip(0, 42, 176, 75);
                thaiFontB.drawImage(g, startX + addX, y + addY, code, clip);
            } else
            if(type == 1)
            {
                if(numClip == 1)
                    g.setClip(0, 70, 176, 68);
                else
                if(numClip == 2)
                    g.setClip(0, 42, 176, 75);
                thaiFontW.drawImage(g, startX + addX, y + addY, code, clip);
            }
            if(code >= 201 && code <= 206)
                continue;
            if(code >= 185 && code <= 187)
            {
                addY = 2;
                continue;
            }
            if(code == 178 || code >= 181 && code <= 188 || code >= 200 && code <= 208)
                continue;
            if(code > 129 && code < 225)
            {
                startX += ADD_FONT[code - 1];
                addX = -ADD_FONT[code - 1];
                addY = 2;
            } else
            {
                startX += 6;
                addX = -6;
                addY = 2;
            }
        }

    }

}

⌨️ 快捷键说明

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