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

📄 game.java

📁 传说中的小蜜蜂游戏,回忆下小时候 WTK编译可运行,内有图
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
                            e_x[k2] = -999;
                    } else
                    if(a[11] == 0)
                    {
                        int i7 = u_x(160);
                        if(i7 < 10)
                        {
                            for(int i5 = 4; i5 >= 0; i5--)
                            {
                                if(inv_kaseki[i5 * 10 + i7] != 0 || inv_shot[i5 * 10 + i7] != 1 || inv_state[i5 * 10 + i7] < 0)
                                    continue;
                                e_x[k2] = inv_x[i5 * 10 + i7];
                                e_y[k2] = inv_y[i5 * 10 + i7] + 10;
                                break;
                            }

                        }
                    }

            }
        }
        if(Main.l[3] > 15000L && bonus_flg)
        {
            a[7] = a[4];
            stage = preStage;
            mode = 1;
            nokLeft = 0;
            rdisp_flg = true;
            sT[stage] = Main.l[0];
            sT1[stage] = Main.l[1];
            Main.play = false;
            Main.l[3] = 0L;
        }
        if(m_x != -999)
        {
            for(int l2 = 0; l2 < inv_num; l2++)
                if(inv_state[l2] >= 0 && inv_y[l2] - 2 <= m_y && m_y < inv_y[l2] + 5 && (inv_row[l2] == 0 && inv_x[l2] + 1 <= m_x && m_x < inv_x[l2] + 8 || inv_row[l2] == 1 && inv_x[l2] + 1 <= m_x && m_x < inv_x[l2] + 8 || inv_row[l2] == 2 && inv_x[l2] <= m_x && m_x < inv_x[l2] + 8 || inv_row[l2] == 3 && inv_x[l2] <= m_x && m_x < inv_x[l2] + 8 || inv_row[l2] == 4 && inv_x[l2] <= m_x && m_x < inv_x[l2] + 8 || bonus_flg && inv_x[l2] + 10 <= m_x && m_x < inv_x[l2] + 20))
                {
                    add_x = 0;
                    if(inv_kaseki[l2] == 0)
                    {
                        score += inv_score[l2];
                        if(score >= 10000)
                            score -= 10000;
                        inv_state[l2] = -1;
                        inv_time[l2] = a[4];
                        m_x = -999;
                        inv_left--;
                        inv_shot[l2] = 0;
                        if(Main.gaM == 1 && inv_kind[l2] == 0)
                            nokLeft--;
                    }
                    if(score >= inv_extend && a[6] != 6 && !isGet)
                    {
                        isGet = true;
                        a[6]++;
                    }
                    if(Main.gaM == 0)
                    {
                        if(inv_state[l2] == -1 && inv_row[l2] == 0)
                            a[14] = 0;
                        else
                        if(inv_state[l2] == -1 && (inv_row[l2] == 1 || inv_row[l2] == 2))
                            a[14] = 1;
                        else
                        if(inv_state[l2] == -1 && (inv_row[l2] == 3 || inv_row[l2] == 4))
                            a[14] = 2;
                        else
                            a[14] = 2;
                    } else
                    if(inv_kind[l2] == 0)
                        a[14] = 1;
                    else
                        a[14] = 2;
                    if(Main.gaM == 0)
                        switch(inv_left)
                        {
                        case 0: // '\0'
                            if(u_state == 2)
                            {
                                score += u_score;
                                if(score >= inv_extend && a[6] != 6 && !isGet)
                                {
                                    isGet = true;
                                    a[6]++;
                                }
                                if(score >= 10000)
                                    score -= 10000;
                            }
                            down6dot += 4;
                            if(down6dot >= 13)
                                down6dot = 4;
                            mode = 1;
                            a[7] = a[4];
                            return;

                        case 3: // '\003'
                            a[20] = 1;
                            a[21] = 5;
                            break;

                        case 1: // '\001'
                            a[21] = 1;
                            break;
                        }
                    else
                        switch(nokLeft)
                        {
                        default:
                            break;

                        case 0: // '\0'
                            mode = 1;
                            tmp_time = Main.l[1];
                            a[7] = a[4];
                            rdisp_flg = false;
                            return;

                        case 1: // '\001'
                            if(bonus_flg)
                                stage = preStage;
                            break;
                        }
                }

        }
        if(!bonus_flg)
        {
            for(int i3 = 0; i3 < 4; i3++)
            {
                int j8 = m_x - (13 + 30 * i3);
                if(0 <= j8 && j8 < 9)
                {
                    for(int j5 = 4; j5 >= 0; j5--)
                    {
                        int i9 = (m_y + j5) - 84;
                        if(0 > i9 || i9 >= 7 || shield[i3][i9][j8] != 1)
                            continue;
                        shield[i3][i9][j8] = 2;
                        if(j8 > 0)
                        {
                            if(i9 > 0)
                                shield[i3][i9 - 1][j8 - 1] = 2;
                            if(i9 < 8)
                                shield[i3][i9 + 1][j8 - 1] = 2;
                        }
                        if(j8 < 10)
                        {
                            if(i9 > 0)
                                shield[i3][i9 - 1][j8 + 1] = 2;
                            if(i9 < 8)
                                shield[i3][i9 + 1][j8 + 1] = 2;
                        }
                        m_x = -999;
                        int i10 = -50;
                        int l9 = Math.abs(rnd.nextInt() % 100);
                        for(int j10 = 40; j10 < 45; j10++)
                        {
                            if(kaseki_flg != 0 || Main.gaM != 0)
                                continue;
                            if(inv_state[j10] >= 0 && i10 == -50)
                                i10 = inv_x[j10];
                            if(inv_y[j10] < 70 || inv_y[j10] > 80 || inv_dir != 0 || a[10] >= i10 || l9 % 4 != 0)
                                continue;
                            kaseki_num = Math.abs(rnd.nextInt() % 5) + 40;
                            if(a[18] != 0 || inv_state[kaseki_num] != 4)
                                continue;
                            kaseki_flg = 1;
                            a[18] = 1;
                            inv_left--;
                            inv_kaseki[kaseki_num] = 1;
                            a[16] = inv_x[kaseki_num];
                            a[17] = inv_y[kaseki_num];
                            score += inv_score[kaseki_num];
                            inv_time[kaseki_num] = a[4];
                            break;
                        }

                        break;
                    }

                }
            }

            for(int j3 = 0; j3 < 3; j3++)
                if(e_x[j3] != -999)
                {
                    boolean flag = false;
                    for(int k5 = 0; k5 < 4; k5++)
                    {
                        int k8 = e_x[j3] - (9 + 30 * k5);
                        if(k8 < 0 || k8 >= 10)
                            continue;
                        int j9 = e_y[j3] - 84;
                        for(int j7 = k8; j7 < k8 + 3; j7++)
                            if(j7 >= 0 && 10 > j7)
                            {
                                for(int l7 = j9; l7 < j9 + 5; l7++)
                                    if(0 <= l7 && l7 < 8 && shield[k5][l7][j7] == 1)
                                    {
                                        shield[k5][l7][j7] = 2;
                                        flag = true;
                                    }

                            }

                        if(!flag)
                            continue;
                        e_x[j3] = -999;
                        break;
                    }

                }

            for(int k3 = 0; k3 < inv_num; k3++)
                if(inv_state[k3] >= 0 && inv_y[k3] >= 79)
                {
                    for(int i8 = 1; i8 < 5; i8++)
                    {
                        int k9 = (inv_y[k3] + i8) - 84;
                        if(k9 >= 0 && k9 <= 8)
                        {
                            for(int l5 = 0; l5 < 4; l5++)
                            {
                                for(int k7 = inv_l[inv_row[k3]]; k7 < inv_r[inv_row[k3]]; k7++)
                                {
                                    int l8 = (inv_x[k3] + k7) - (15 + 30 * l5);
                                    if(0 <= l8 && l8 < 10 && 0 <= k9 && k9 < 8)
                                        shield[l5][k9][l8] = 2;
                                }

                            }

                        }
                    }

                }

            for(int l3 = 0; l3 < 4; l3++)
            {
                for(int i6 = 0; i6 < 8; i6++)
                {
                    for(int k6 = 0; k6 < 10; k6++)
                        if(shield[l3][i6][k6] == 2)
                            shield[l3][i6][k6] = 0;

                }

            }

        }
        if(m_x != -999 && u_x != -999 && u_state <= 4 && u_x + 1 <= m_x && m_x < u_x + 11 && m_y < 28 && m_y > 21)
        {
            if(u_x <= 0)
                u_score_p = 12;
            else
            if(u_x >= 118)
                u_score_p = -12;
            else
                u_score_p = 0;
            m_x = -999;
            u_state = 2;
            u_score = u_p[a[15]];
            u_time = a[4];
            if(Main.gaM == 1)
                if(Main.l[0] / 1000L >= 0L && Main.l[0] / 1000L < 5L)
                {
                    old_time -= 55000L;
                    old_time1 += 5000L;
                } else
                {
                    old_time += 5000L;
                    old_time1 += 5000L;
                }
        }
        if(m_x != -999)
        {
            for(int i4 = 0; i4 < 3; i4++)
            {
                if(e_x[i4] - 1 > m_x || m_x > e_x[i4] + 1 || m_y - 2 > e_y[i4] || e_y[i4] > m_y + 2)
                    continue;
                e_x[i4] = -999;
                m_x = -999;
                break;
            }

        }
        if(a[11] == 0)
        {
            for(int j4 = 0; j4 < 3; j4++)
            {
                if(e_x[j4] == -999 || a[10] + 2 > e_x[j4] + 5 || e_x[j4] + 7 > a[10] + 2 + 7 || a[3] + e_y[j4] + 4 <= a[3] + 94 || a[3] + e_y[j4] >= 106)
                    continue;
                if(Main.gaM == 1)
                    if(Main.l[0] / 1000L > 55L && Main.l[0] / 1000L <= 59L)
                    {
                        old_time += 55000L;
                        old_time1 -= 5000L;
                    } else
                    {
                        old_time -= 5000L;
                        old_time1 -= 5000L;
                    }
                a[11] = 1;
                a[12] = a[4];
                for(int j6 = 0; j6 < 3; j6++)
                    e_x[j6] = -999;

                break;
            }

        }
    }

    public void paint(Graphics g)
    {
        g.setColor(0);
        g.fillRect(0, 0, a[0], a[1]);
        g.setFont(Font.getFont(0, 0, 8));
        g.setColor(0xfefefe);
        if(bonus_flg && Main.disp_cnt <= 200)
        {
            g.drawImage(Main.abs[8], 10, a[3] + 94, 0);
            g.drawImage(Main.abs[56], 32, 31, 0);
            g.drawImage(Main.abs[57], 32, 49, 0);
            g.drawImage(Main.abs[84], a[0] - Main.abs[84].getWidth(), a[1] - Main.abs[84].getHeight(), 0);
            g.setColor(0xff0000);
            g.drawLine(0, 106, a[0], 106);
            Main.l[3] = 0L;
            old_time = System.currentTimeMillis();
            return;
        }
        g.drawImage(Main.abs[84], a[0] - Main.abs[84].getWidth(), a[1] - Main.abs[84].getHeight(), 0);
        if(mode == 2 && Main.gaM == 1)
            g.drawImage(Main.abs[5], 0, a[1] - Main.abs[5].getHeight(), 0);
        else
            g.drawImage(Main.abs[7], 0, a[1] - Main.abs[7].getHeight(), 0);
        if(Main.gaM == 0)
        {
            g.drawImage(Main.abs[2], 8, 0, 0);
            int l2 = 1000;
            for(int i = 0; i < 4; i++)
            {
                g.drawString("" + (score / l2) % 10, 15 + i * 6, 9, 0);
                g.drawString("" + (hi_score / l2) % 10, 84 + i * 6, 9, 0);
                l2 /= 10;
            }

            g.drawImage(Main.abs[1], 72, 0, 0);
        } else
        if(!bonus_flg || bonus_flg && Main.disp_cnt > 200)
        {
            g.drawImage(Main.abs[50], 52, 0, 0);
            g.drawImage(Main.abs[21], 90, 0, 0);
            g.drawImage(Main.abs[21], 108, 0, 0);
            int i3 = 10;
            for(int j = 0; j < 2; j++)
            {
                if(timer_cnt2 <= 20)
                {
                    g.drawString("0", 78 + 6 * j, 0, 0);
                    g.drawString("0", 96 + 6 * j, 0, 0);
                    g.drawString("0", 114 + 6 * j, 0, 0);

⌨️ 快捷键说明

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