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

📄 a.java

📁 雪人的游戏代码
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
            {
                if(U[k1][0] == 0)
                    a(g1, t[0], U[k1][1], U[k1][2], 147, 68, 6, 6, false);
                else
                    a(g1, t[0], U[k1][1], U[k1][2], 148, 76, 3, 3, false);
                U[k1][1] += y.nextInt() % 2;
                U[k1][2] += Math.abs(y.nextInt() % 2);
                if(U[k1][2] > _fldfor)
                {
                    U[k1][1] = Math.abs(y.nextInt() % _fldfor);
                    U[k1][2] = 0;
                }
            }

            a(g1, t[0], 45, 147, 116, 0, 9, 10, false);
            a(g1, t[0], 122, 147, 116, 0, 9, 10, true);
            a(g1, t[0], 45, 23, 0, 67, 75, 65, false);
            a(g1, t[0], 35, 65, 74, 107, 85, 21, false);
            a(g1, t[0], 29, 27, 0, 0, 27, 28, false);
            a(g1, t[0], 59, 13, 28, 0, 26, 25, false);
            a(g1, t[0], 92, 44, 129, 0, 26, 26, false);
            a(g1, t[0], 120, 36, 127, 27, 27, 27, false);
            a(g1, t[0], 121, 68, 0, 48, 26, 8, false);
            a(g1, t[0], 8, 200, 26, 48, 35, 7, false);
            a(g1, t[0], 53, 199, 0, 60, 114, 7, false);
            int ai[][] = {
                {
                    54, 0, 62, 20
                }, {
                    75, 86, 62, 20
                }, {
                    0, 28, 62, 20
                }, {
                    74, 67, 62, 20
                }, {
                    62, 19, 62, 20
                }, {
                    61, 40, 62, 20
                }
            };
            a(g1, t[0], 87 - (ai[H][2] >> 1), 152 - (ai[H][3] >> 1), ai[H][0], ai[H][1], ai[H][2], ai[H][3], false);
            a(g1, D[0], l[0], 97, L[0][5][l[0] % 8][0], L[0][5][l[0] % 8][1], L[0][5][l[0] % 8][2], L[0][5][l[0] % 8][3], false);
            a(g1, D[1], l[0] - L[0][5][l[0] % 2][2], 99, L[1][0][l[0] % 2][0], L[1][0][l[0] % 2][1], L[1][0][l[0] % 2][2], L[1][0][l[0] % 2][3], false);
            l[0]--;
            if(l[0] < 0)
                l[0] = _fldfor;
            break;

        case 13: // '\r'
            g1.setColor(0);
            g1.fillRect(0, 0, _fldfor, A);
            for(int l1 = 0; l1 < 5; l1++)
            {
                a(g1, t[1], 10 + l1 * 39, 0, 11, 0, 39, 10, false);
                a(g1, t[1], 10 + l1 * 39, 198, 11, 0, 39, 10, false);
            }

            for(int i2 = 0; i2 < 5; i2++)
            {
                a(g1, t[1], 0, 10 + i2 * 39, 0, 11, 10, 39, false);
                a(g1, t[1], 166, 10 + i2 * 39, 0, 11, 10, 39, false);
            }

            a(g1, t[1], 0, 0, 0, 0, 10, 10, false);
            a(g1, t[1], 166, 0, 0, 0, 10, 10, true);
            a(g1, t[1], 0, 198, 10, 10, 10, 10, false);
            a(g1, t[1], 141, 163, 50, 0, 35, 45, false);
            a(g1, t[1], 0, 0, 20, 10, 17, 17, false);
            a(g1, t[1], 23, 0, 37, 10, 9, 10, false);
            a(g1, t[1], 0, 20, 37, 10, 9, 10, false);
            for(int j2 = 0; j2 < 3; j2++)
                a(g1, t[0], 50 + j2 * 30, 20, 76 + j2 * 21, 67, 19, 19, false);

            H++;
            if(H >= 10)
                H = 0;
            for(int k2 = 0; k2 < 5; k2++)
            {
                _mthif(g1, 26, 54 + k2 * 30, k2 + 1);
                if(k2 != m || H >= 5)
                    _mthif(g1, 105, 54 + k2 * 30, c[k2]);
            }

            break;

        case 3: // '\003'
            g1.setColor(0);
            g1.fillRect(0, 0, _fldfor, A);
            g1.drawImage(P, 0, 32, 0);
            _mthchar(g1);
            g1.setClip(0, 0, _fldfor, A);
            g1.clipRect(0, 0, _fldfor, A);
            if(H == 0)
            {
                g1.setColor(0xffffff);
                g1.fillRect(62, 111, 20, 15);
                g1.setColor(0);
                g1.fillRect(99, 111, 20, 15);
            } else
            {
                g1.setColor(0);
                g1.fillRect(62, 111, 20, 15);
                g1.setColor(0xffffff);
                g1.fillRect(99, 111, 20, 15);
            }
            g1.setClip(0, 0, _fldfor, A);
            g1.clipRect(0, 0, _fldfor, A);
            g1.drawImage(D[5], 47, 71, 0);
            break;

        case 4: // '\004'
            if(g)
                _mthdo();
            if(_fldcase == null)
                break;
            g1.setFont(Font.getFont(0, 0, 8));
            g1.setColor(0);
            g1.fillRect(0, 0, _fldfor, A);
            g1.setColor(0xffffff);
            g1.translate(15, 0);
            for(int l2 = 0; l2 < _fldcase.length; l2++)
                if(_fldcase[l2].equals("line"))
                    g1.drawLine(0, C + l2 * 14 + 7, _fldfor, C + l2 * 14 + 7);
                else
                if(l2 >= 20 && l2 <= 23)
                {
                    a(g1, D[1], 2, C + l2 * 14 + 2, k[l2 - 20][0], k[l2 - 20][1], k[l2 - 20][2], k[l2 - 20][3], false);
                    g1.setClip(0, 0, _fldfor, A);
                    g1.clipRect(0, 0, _fldfor, A);
                    g1.drawString(_fldcase[l2], 2 + k[l2 - 20][2] + 5, C + l2 * 14, 0);
                } else
                if(l2 >= 24 && l2 <= 25)
                {
                    a(g1, D[1], 2, C + l2 * 14 + 2, k[l2 - 15][0], k[l2 - 15][1], k[l2 - 15][2], k[l2 - 15][3], false);
                    g1.setClip(0, 0, _fldfor, A);
                    g1.clipRect(0, 0, _fldfor, A);
                    g1.drawString(_fldcase[l2], 2 + k[l2 - 15][2] + 5, C + l2 * 14, 0);
                } else
                if(l2 == 26)
                {
                    a(g1, D[3], 2, C + l2 * 14 + 3, 0, 35, 72, 12, false);
                    g1.setClip(0, 0, _fldfor, A);
                    g1.clipRect(0, 0, _fldfor, A);
                    g1.drawString(_fldcase[l2], 79, C + l2 * 14, 0);
                } else
                if(C + l2 * 14 > -14 && C + l2 * 14 < A)
                    g1.drawString(_fldcase[l2], 2, C + l2 * 14, 0);

            g1.translate(-15, 0);
            for(int i3 = 0; i3 < 5; i3++)
            {
                a(g1, t[0], 10 + i3 * 39, 0, 11, 0, 39, 10, false);
                a(g1, t[0], 10 + i3 * 39, 198, 11, 0, 39, 10, false);
            }

            for(int j3 = 0; j3 < 5; j3++)
            {
                a(g1, t[0], 0, 10 + j3 * 39, 0, 11, 10, 39, false);
                a(g1, t[0], 166, 10 + j3 * 39, 0, 11, 10, 39, false);
            }

            a(g1, t[0], 0, 0, 0, 0, 10, 10, false);
            a(g1, t[0], 166, 0, 0, 0, 10, 10, true);
            a(g1, t[0], 0, 198, 10, 10, 10, 10, false);
            a(g1, t[0], 141, 163, 50, 0, 35, 45, false);
            a(g1, t[0], 0, 0, 20, 10, 17, 17, false);
            a(g1, t[0], 23, 0, 37, 10, 9, 10, false);
            a(g1, t[0], 0, 20, 37, 10, 9, 10, false);
            break;

        case 5: // '\005'
            g1.setColor(0);
            g1.fillRect(0, 0, _fldfor, A);
            g1.setFont(Font.getFont(0, 0, 8));
            g1.setColor(0xffffff);
            String as[] = {
                "音效:", "背景音乐:", "自动发射:"
            };
            for(int k3 = 0; k3 < as.length; k3++)
            {
                if(k3 == H)
                    g1.setColor(74, 175, 255);
                else
                    g1.setColor(0xffffff);
                g1.drawString(as[k3], 40, 60 + k3 * 40, 0);
                if(E[k3])
                    g1.drawString("开", 115, 60 + k3 * 40, 0);
                else
                    g1.drawString("关", 115, 60 + k3 * 40, 0);
            }

            for(int l3 = 0; l3 < 5; l3++)
            {
                a(g1, t[0], 10 + l3 * 39, 0, 11, 0, 39, 10, false);
                a(g1, t[0], 10 + l3 * 39, 198, 11, 0, 39, 10, false);
            }

            for(int i4 = 0; i4 < 5; i4++)
            {
                a(g1, t[0], 0, 10 + i4 * 39, 0, 11, 10, 39, false);
                a(g1, t[0], 166, 10 + i4 * 39, 0, 11, 10, 39, false);
            }

            a(g1, t[0], 0, 0, 0, 0, 10, 10, false);
            a(g1, t[0], 166, 0, 0, 0, 10, 10, true);
            a(g1, t[0], 0, 198, 10, 10, 10, 10, false);
            a(g1, t[0], 141, 163, 50, 0, 35, 45, false);
            a(g1, t[0], 0, 0, 20, 10, 17, 17, false);
            a(g1, t[0], 23, 0, 37, 10, 9, 10, false);
            a(g1, t[0], 0, 20, 37, 10, 9, 10, false);
            break;

        case 14: // '\016'
            g1.setColor(0);
            g1.fillRect(0, 0, _fldfor, A);
            g1.setColor(232, 233, 144);
            Font font = Font.getFont(0, 0, 8);
            g1.setFont(font);
            g1.translate(15, 0);
            for(int i5 = 0; i5 < B.length; i5++)
                g1.drawString(B[i5], 0, R + i5 * 14, 0);

            if(R > (A - B.length * 14) / 2)
                R--;
            g1.translate(-15, 0);
            int i6 = 0;
            for(int j5 = 0; j5 < U.length; j5++)
            {
                g1.setColor(U[j5][4]);
                g1.drawLine(U[j5][0] >> 8, U[j5][1] >> 8, U[j5][0] >> 8, U[j5][1] >> 8);
                U[j5][0] += U[j5][2];
                U[j5][1] += U[j5][3];
                g1.drawLine(U[j5][0] >> 8, U[j5][1] >> 8, U[j5][0] >> 8, U[j5][1] >> 8);
                U[j5][3] += 80;
                if(U[j5][3] > 0)
                {
                    int j4 = (U[j5][4] & 0xff0000) >> 16;
                    int k4 = (U[j5][4] & 0xff00) >> 8;
                    int l4 = U[j5][4] & 0xff;
                    if((j4 -= 8) < 0)
                        j4 = 0;
                    if((k4 -= 8) < 0)
                        k4 = 0;
                    if((l4 -= 8) < 0)
                        l4 = 0;
                    U[j5][4] = (j4 << 16) + (k4 << 8) + l4;
                }
                if(U[j5][4] == 0 || U[j5][1] >> 8 > A)
                    i6++;
            }

            if(i6 != U.length)
                break;
            int j6 = Math.abs(y.nextInt() % 90) + 20;
            int k6 = Math.abs(y.nextInt() % 90) + 20;
            for(int k5 = 0; k5 < U.length; k5++)
            {
                U[k5][0] = j6 << 8;
                U[k5][1] = k6 << 8;
                U[k5][2] = y.nextInt() % 400;
                U[k5][3] = -500 - Math.abs(y.nextInt() % 500);
                U[k5][4] = Math.abs(y.nextInt() % 0xff0000);
            }

            break;

        case 0: // '\0'
            g1.setColor(0xffffff);
            g1.fillRect(0, 0, _fldfor, A);
            a(g1, t[0], 30, 64, 0, 0, 116, 79, false);
            if(2000L < System.currentTimeMillis() - z)
            {
                u = 1;
                z = System.currentTimeMillis();
            }
            break;

        case 1: // '\001'
            g1.setColor(0xffffff);
            g1.fillRect(0, 0, _fldfor, A);
            a(g1, t[0], 32, 115, 48, 116, 70, 11, false);
            a(g1, t[0], 107, 97, 48, 79, 45, 37, false);
            a(g1, t[0], 51, 130, 48, 127, 74, 13, false);
            a(g1, t[0], 25, 44, 0, 80, 48, 51, false);
            if(2000L >= System.currentTimeMillis() - z)
                break;
            a(new String[] {
                "/ui/title.png", "/ui/titleback.png"
            });
            u = 2;
            l[0] = 1;
            l[1] = 0;
            H = 0;
            U = new int[30][12];
            for(int l5 = 0; l5 < U.length; l5++)
            {
                U[l5][1] = Math.abs(y.nextInt() % _fldfor);
                U[l5][2] = Math.abs(y.nextInt() % A);
                U[l5][0] = Math.abs(y.nextInt() % 2);
            }

            break;
        }
    }

    public void keyPressed(int i1)
    {
        _fldvoid = i1;
        g = true;
label0:
        switch(u)
        {
        case 4: // '\004'
        case 6: // '\006'
        case 7: // '\007'
        default:
            break;

        case 8: // '\b'
        case 9: // '\t'
        case 10: // '\n'
        case 11: // '\013'
        case 12: // '\f'
            switch(_fldvoid)
            {
            default:
                break;

            case -6: 
                W = u;
                u = 3;
                H = 0;
                if(E[1])
                    _mthif(_fldgoto);
                break label0;

            case -1: 
            case 50: // '2'
                switch(U[0][5])
                {
                case 0: // '\0'
                case 1: // '\001'
                case 2: // '\002'
                case 5: // '\005'
                case 6: // '\006'
                case 7: // '\007'
                case 8: // '\b'
                    U[0][5] = 3;
                    U[0][6] = 0;
                    break;
                }
                break label0;

            case -5: 
            case 53: // '5'
                if(U[0][5] >= 10)
                    break label0;
                int j1;
                for(j1 = 1; j1 < U.length; j1++)
                {
                    if(U[j1][0] < 0 || U[j1][8] <= 120 || !a(U[j1][1] >> 8, (U[j1][2] >> 8) - 19, 19, 19, U[0][1] >> 8, (U[0][2] >> 8) - 15, 15, 15))
                        continue;
                    if(!r)
                    {
                        r = true;
                        N = 1;
                        _fldtry += 100;
                        if((_fldtry - p) / 30000 > 0)
                        {
                            p = _fldtry - _fldtry % 30000;
                            M++;
                        }
                    } else
                    {
                        N = 1;
                        _fldtry += 100;
                        if((_fldtry - p) / 30000 > 0)
                        {
                            p = _fldtry - _fldtry % 30000;
                            M++;
                        }
                    }
                    if(U[0][1] > U[j1][1])
                        _mthif(j1, 0);
                    else
                        _mthif(j1, 1);
                    break;
                }

                if(j1 != U.length || !E[2])
                    break label0;
                if(l[0] != 1)
                    l[0] = 1;
                else
                    l[0] = 0;
                _mthif();
                break;
            }
            break;

        case 2: // '\002'
            switch(_fldvoid)
            {
            default:
                break;

            case -3: 
            case -1: 
                H = (H + 5) % 6;
                break label0;

            case -4: 
            case -2: 
                H = (H + 1) % 6;
                break label0;

            case -6: 
            case -5: 
            case 53: // '5'
                switch(H)
                {
                case 0: // '\0'
                    t = null;
                    System.gc();
                    _flddo = false;
                    Thread thread = new Thread(new aa());
                    thread.start();
                    P = Image.createImage(176, 143);
                    u = 6;
                    _fldtry = 0;
                    b = 0;
                    M = 3;
                    m = -1;
                    G = 0;
                    _fldchar = 0;
                    a();
                    break;

⌨️ 快捷键说明

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