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

📄 ai.java

📁 哈利波特与凤凰令的一个小游戏
💻 JAVA
📖 第 1 页 / 共 5 页
字号:

            case 3: // '\003'
                v1.a(0, 800, 400, 768, 36, 32767, 32575, 32383);
                break;

            case 6: // '\006'
            case 11: // '\013'
                v1.a(0, 800, 400, 768, 36, 32767, 16356, 12064);
                break;

            case 2: // '\002'
                v1.a(100, 500, 0, 400, 36, 32767, 32569, 32352);
                break;
            }
        }
        if((v1 = (v)a(65)) != null)
        {
            aj aj2 = aa.a((byte)a.a.f);
            v1.b(word0, word1, aj2.a);
            switch(aj2.a)
            {
            case 5: // '\005'
                v1.a(0, 800, 400, 768, 36, 32767, 26431, 639);
                break;

            case 3: // '\003'
                v1.a(0, 800, 400, 768, 36, 32767, 32575, 32383);
                break;

            case 6: // '\006'
            case 11: // '\013'
                v1.a(0, 800, 400, 768, 36, 32767, 16356, 12064);
                break;

            case 2: // '\002'
                v1.a(100, 500, 0, 400, 36, 32767, 32569, 32352);
                break;
            }
        }
        int i1 = aa.b(0, aa.C - 1);
        a = aa.a(i1);
        a.a(word0, word1);
        a.c();
        a.a.d();
    }

    public final void a(ab ab1, int i1)
    {
        a.a = ab1;
        a.a.c();
        a.j = 29;
        int j1 = aa.b(0, 2);
        a.a.a(aa.a(ab1.a[j1]), 0, 0, 1);
        aa.a();
        if(i1 > 0)
            aa.h(i1);
    }

    public final void g()
    {
        if(p == 4)
        {
            aa.h();
            aa.d(8);
            if(aa.b == 0)
                aa.a(12, 463, 68, 3, 2);
            else
            if(aa.b == 4)
                aa.a(12, 464, 68, 3, 2);
            aa.l = 8;
            return;
        } else
        {
            a.a = null;
            a.j = 0;
            aa.a();
            a.a(a, true);
            return;
        }
    }

    public final int a(int i1, int j1)
    {
        int k1 = 0;
        g g1 = aa.a[1];
        boolean flag = false;
        boolean flag1 = false;
        for(int l1 = 0; l1 < e; l1++)
        {
            x x1 = a[l1];
            short word0 = g1.a[x1.a];
            short word1 = g1.b[x1.a];
            switch(x1.a)
            {
            case 0: // '\0'
            case 1: // '\001'
                if(((q) (x1)).o > i1 || ((q) (x1)).p > j1 || ((q) (x1)).o + word0 <= i1 || ((q) (x1)).p + word1 <= j1)
                {
                    if(((q) (x1)).o > i1 || ((q) (x1)).p + g1.b[x1.a] > j1 || ((q) (x1)).o + word0 <= i1 || ((q) (x1)).p + g1.b[x1.a] + word1 <= j1)
                    {
                        if(((q) (x1)).o + g1.a[x1.a] > i1 || ((q) (x1)).p > j1 || ((q) (x1)).o + g1.a[x1.a] + word0 <= i1 || ((q) (x1)).p + word1 <= j1)
                        {
                            if(((q) (x1)).o + g1.a[x1.a] <= i1 && ((q) (x1)).p + g1.b[x1.a] <= j1 && ((q) (x1)).o + g1.a[x1.a] + word0 > i1 && ((q) (x1)).p + g1.b[x1.a] + word1 > j1)
                                k1 += x1.a(((q) (x1)).o + g1.a[x1.a], ((q) (x1)).p + g1.b[x1.a], i1, j1, (byte)3);
                        } else
                        {
                            k1 += x1.a(((q) (x1)).o + g1.a[x1.a], ((q) (x1)).p, i1, j1, (byte)1);
                        }
                    } else
                    {
                        k1 += x1.a(((q) (x1)).o, ((q) (x1)).p + g1.b[x1.a], i1, j1, (byte)2);
                    }
                } else
                {
                    k1 += x1.a(((q) (x1)).o, ((q) (x1)).p, i1, j1, ((q) (x1)).a_);
                }
                break;

            default:
                if(((q) (x1)).o <= i1 && ((q) (x1)).p <= j1 && ((q) (x1)).o + word0 > i1 && ((q) (x1)).p + word1 > j1)
                    k1 += x1.a(((q) (x1)).o, ((q) (x1)).p, i1, j1, ((q) (x1)).a_);
                break;
            }
        }

        return k1;
    }

    public final boolean a(int i1, int j1, int k1, int l1, byte byte0)
    {
        if(byte0 > 0)
        {
            for(int i2 = 0; i2 < c; i2 += 2)
            {
                if(a(i1, j1, k1 - byte0, l1 - byte0, aa.a(a[i2]), aa.b(a[i2]), aa.a(a[i2 + 1]), aa.b(a[i2 + 1]), null))
                    return false;
                if(a(i1, j1, k1 + byte0, l1 - byte0, aa.a(a[i2]), aa.b(a[i2]), aa.a(a[i2 + 1]), aa.b(a[i2 + 1]), null))
                    return false;
                if(a(i1, j1, k1 - byte0, l1 + byte0, aa.a(a[i2]), aa.b(a[i2]), aa.a(a[i2 + 1]), aa.b(a[i2 + 1]), null))
                    return false;
                if(a(i1, j1, k1 + byte0, l1 + byte0, aa.a(a[i2]), aa.b(a[i2]), aa.a(a[i2 + 1]), aa.b(a[i2 + 1]), null))
                    return false;
            }

        } else
        {
            for(int j2 = 0; j2 < c; j2 += 2)
                if(a(i1, j1, k1, l1, aa.a(a[j2]), aa.b(a[j2]), aa.a(a[j2 + 1]), aa.b(a[j2 + 1]), null))
                    return false;

        }
        return true;
    }

    public final void c(int i1)
    {
        if(aa.a != 12 && aa.a != 11 || aa.a == 12 && aa.b > 8)
            return;
        switch(i1)
        {
        default:
            break;

        case 0: // '\0'
            j++;
            if(j == 1)
            {
                aa.h(109);
                return;
            }
            break;

        case 1: // '\001'
            g++;
            if(g == 1)
            {
                aa.a(2000, 422, 68, 4, -1);
                return;
            }
            break;

        case 2: // '\002'
            h++;
            if(h == 1)
            {
                aa.h(107);
                return;
            }
            break;

        case 3: // '\003'
            i++;
            if(i == 1)
            {
                aa.h(108);
                return;
            }
            break;

        case 4: // '\004'
            k++;
            if(k == 1)
            {
                aa.a(-1, 427, 68, 1, -1);
                return;
            }
            break;

        case 5: // '\005'
            l++;
            if(l == 1)
                aa.h(115);
            break;
        }
    }

    public final void h()
    {
        if(aa.a == 3)
        {
            aa.a = 8;
            aa.d(3);
            return;
        }
        if(aa.a == 4)
        {
            aa.a = 9;
            aa.d(3);
            return;
        }
        if(aa.a == 8)
            aa.a = 3;
        if(aa.a == 9)
            aa.a = 4;
        aa.Q = aa.a;
        aa.e(8);
        aa.h();
        aa.d(21);
        if(aa.a < 7 && aa.a + 1 >= w.d)
            w.d = (byte)(aa.a + 2);
        i();
    }

    public final void i()
    {
        int i1 = b[0];
        int j1 = b[2];
        if(aa.a.p == 2)
            j1 = b[4] * 100;
        int k1 = b[5];
        int l1 = 0;
        switch(aa.a)
        {
        case 18: // '\022'
            if(aa.h)
                aa.A = ((z) (aa.a.a)).E;
            b[7] = w.a(aa.x) + 1;
            aa.D += b[0];
            b[0] = aa.D;
            if(b[9] > 0 && ((z) (aa.a.a)).E >= 0)
                l1 = (b[8] / b[9]) * ((z) (aa.a.a)).E;
            if(!aa.h)
                l1 /= 10;
            b[1] += l1;
            break;

        case 16: // '\020'
            b[1] = (short)(b[7] * 200);
            break;

        default:
            b[1] = (short)aa.a(i1, j1, k1);
            break;
        }
        if(aa.a < 8 && b[1] > w.c[aa.a])
            w.c[aa.a] = b[1];
    }

    private void l(int i1)
    {
        aa.i(i1);
        aa.d();
        aa.e();
        aa.e();
        r = aa.a(aa.a);
        aa.d();
        aa.e();
        aa.e();
        a = aa.a(aa.a);
        if(a > 0)
        {
            a = new byte[a];
            e = new short[a + 1];
        }
        aa.d();
        aa.e();
        for(int j1 = 0; j1 < a; j1++)
        {
            aa.e();
            a[j1] = aa.a(aa.a);
        }

        aa.d();
        aa.e();
        if(a > 0)
        {
            for(int k1 = 0; k1 < a + 1; k1++)
            {
                aa.e();
                byte byte0 = aa.a(aa.a);
                aa.e();
                byte byte1 = aa.a(aa.a);
                aa.e();
                byte byte2 = aa.a(aa.a);
                e[k1] = (short)(byte0 << 10 | byte1 << 5 | byte2);
            }

        }
    }

    private static void q()
    {
        z az[] = (z[])a[2];
        for(int i1 = 0; i1 < 16; i1++)
            if(az[i1].i)
                az[i1].i = false;

    }

    private static void b(int i1, int j1)
    {
        B = -1;
        w = i1;
        x = j1;
        s = 0;
        t = 0;
        u = i1;
        v = j1;
        A = 0;
        a(i1, j1, s, t, y, z);
    }

    private static void m(int i1)
    {
        int j1 = s;
        s += i1;
        if(s >= y)
        {
            s -= y;
            a(w + y, j1, y - j1);
            a(w + y + (y - j1), 0, s);
            return;
        }
        if(s < 0)
        {
            s += y;
            a(w + i1, s, y - s);
            a((w + i1 + y) - s, 0, j1);
            return;
        }
        if(i1 > 0)
        {
            a(w + y, j1, i1);
            return;
        } else
        {
            a(w + i1, j1 + i1, -i1);
            return;
        }
    }

    private static void a(int i1, int j1, int k1)
    {
        if(k1 == 0)
            return;
        a(i1, x, j1, t, k1, z - t);
        if(t != 0)
            a(i1, x + (z - t), j1, 0, k1, t);
    }

    private static void n(int i1)
    {
        int j1 = t;
        t += i1;
        if(t >= z)
        {
            t -= z;
            b(x + z, j1, z - j1);
            b(x + z + (z - j1), 0, t);
            return;
        }
        if(t < 0)
        {
            t += z;
            b(x + i1, t, z - t);
            b((x + i1 + z) - t, 0, j1);
            return;
        }
        if(i1 > 0)
        {
            b(x + z, j1, i1);
            return;
        } else
        {
            b(x + i1, j1 + i1, -i1);
            return;
        }
    }

    private static void b(int i1, int j1, int k1)
    {
        if(k1 == 0)
            return;
        a(w, i1, s, j1, y - s, k1);
        if(s != 0)
            a(w + (y - s), i1, 0, j1, s, k1);
    }

    private static void a(int i1, int j1, int k1, int l1, int i2, int j2)
    {
        if(i2 * j2 > 18304)
        {
            int k2 = i2 >> 1;
            a(i1, j1, k1, l1, k2, j2);
            a(i1 + k2, j1, k1 + k2, l1, i2 - k2, j2);
            return;
        } else
        {
            m m1;
            (m1 = new m()).a = (short)i1;
            m1.b = (short)j1;
            m1.e = (short)k1;
            m1.f = (short)l1;
            m1.c = (short)i2;
            m1.d = (short)j2;
            a[A++] = m1;
            return;
        }
    }

    private static void c(int i1, int j1)
    {
        B = 0;
        if(b)
        {
            b(i1, j1);
            b = false;
            return;
        }
        A = 0;
        int k1;
        if((k1 = i1 - u) <= -y || k1 >= y)
        {
            b(i1, j1);
            return;
        }
        if(k1 != 0)
            m(k1);
        w = i1;
        u = i1;
        if(B != -1)
            B = A;
        int l1;
        if((l1 = j1 - v) <= -z || l1 >= z)
        {
            b(i1, j1);
            return;
        }
        if(l1 != 0)
            n(l1);
        x = j1;
        v = j1;
    }

    private static void a(t t1, t t2)
    {
        t t3;
        (t3 = t2).a = 29999;
        t3.b = 29999;
        t3.c = 0;
        t3.d = 0;
        (t3 = t1).a = 29999;
        t3.b = 29999;
        t3.c = 0;
        t3.d = 0;
        if(B == -1)
        {
            t3.a = (short)w;
            t3.b = (short)x;
            t3.c = (short)(w + y);
            t3.d = (short)(x + z);
            return;
        }
        t3 = t1;
        for(int i1 = 0; i1 < B; i1++)
        {
            m m1;
            if((m1 = a[i1]).a < t3.a)
                t3.a = m1.a;
            if(m1.b < t3.b)
                t3.b = m1.b;
            if(m1.a + m1.c > t3.c)
                t3.c = (short)(m1.a + m1.c);
            if(m1.b + m1.d > t3.d)
                t3.d = (short)(m1.b + m1.d);
        }

        t3 = t2;
        for(int j1 = B; j1 < A; j1++)
        {
            m m

⌨️ 快捷键说明

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