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

📄 p.java

📁 哈利波特与凤凰令的一个小游戏
💻 JAVA
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 


public final class p extends z
{

    public z a;
    public z b;
    public aj a;
    public int a;
    public int b;
    public int c;
    public int d;
    public int e;
    public int f;
    public int g;
    public int h;
    public byte a;

    public p()
    {
        super((byte)64);
    }

    public final void a(short word0, short word1, z z1, z z2, aj aj1, short word2, short word3)
    {
        super.o = word0;
        super.p = word1;
        e = word0;
        f = word1;
        c = word0 << 6;
        d = word1 << 6;
        a = z1;
        b = z2;
        a = aj1;
        if(word2 >= 0 && word3 >= 0)
        {
            a = word2 - word0;
            b = word3 - word1;
        } else
        if(aa.a.p == 1)
        {
            a = ((q) (z1)).o - word0;
            b = ((q) (z1)).p - word1;
        } else
        {
            t t1 = new t();
            z1.b(t1);
            if(aj1.a == 1)
            {
                a = 0;
                b = (t1.b + t1.d >> 1) - word1;
            } else
            if(aj1.a == 9)
            {
                a = (((q) (z1)).o + ((o)z1).p) - word0;
                b = (((q) (z1)).p + ((o)z1).q) - word1;
            } else
            {
                a = (t1.a + t1.c >> 1) - word0;
                b = (t1.b + t1.d >> 1) - word1;
            }
        }
        if(a == 0 && b == 0)
            return;
        int i = q.a(a);
        int j = q.a(b);
        int k = i <= j ? j : i;
        a = (a << 6) / k;
        b = (b << 6) / k;
        h = 0;
        a = 2;
        if(word2 >= 0 && word3 >= 0)
        {
            g = (word2 - word0) * (word2 - word0) + (word3 - word1) * (word3 - word1);
            return;
        } else
        {
            g = (((q) (z1)).o - word0) * (((q) (z1)).o - word0) + (((q) (z1)).p - word1) * (((q) (z1)).p - word1);
            return;
        }
    }

    public final void a(int i)
    {
        ai ai1 = aa.a;
        if(a.a == 11)
            return;
        if(ai1.p != 1 && (super.o < ai1.a.a - 400 || super.p < ai1.a.b - 400 || super.o > ai1.a.a + 400 || super.p > ai1.a.b + 400))
        {
            super.i = false;
            return;
        }
        int j = a.d * i;
        int k = a * j >> 6;
        int l = b * j >> 6;
        h += a;
        if(b != null && ((q) (b)).i == 1 && b.a.b == 10 && b.a(aa.a.a))
        {
            if(aa.b(0, 100) <= 70)
            {
                int i1 = 600 - aa.b(0, 100);
                ai1.a.a((super.o + 2) - aa.a.a, super.p - 2 - aa.a.b, i1, 0, 1, 0);
            }
            if(aa.b(0, 100) <= 70)
            {
                int j1 = 600 - aa.b(0, 100);
                ai1.a.a(super.o - 2 - aa.a.a, (super.p + 2) - aa.a.b, j1, 0, 1, 0);
            }
        }
        if(a.a == 0)
        {
            if(aa.b(0, 200) <= 60)
            {
                int k1 = 600 - aa.b(0, 100);
                ai1.a.a((super.o + 2) - aa.a.a, super.p - 12 - aa.a.b, k1, 0, 1, 1);
            }
            if(aa.b(0, 200) <= 60)
            {
                int l1 = 600 - aa.b(0, 100);
                ai1.a.a(super.o - 2 - aa.a.a, super.p - 6 - aa.a.b, l1, 0, 1, 1);
            }
        }
        if(a == 2)
        {
            if(h > 4)
                a = -2;
        } else
        if(h < -4)
            a = 2;
        t t1 = new t();
        if(ai1.p == 1)
        {
            z az[] = (z[])ai.a[0];
            for(int j2 = 0; j2 < 16; j2++)
            {
                p p1;
                if((p1 = (p)az[j2]) != this && ((z) (p1)).i && q.a(p1.c - c) <= q.a(5 * k) && q.a(p1.d - d) <= q.a(5 * l))
                {
                    p1.i = false;
                    super.i = false;
                    ai1.a((short)(((q) (p1)).o + super.o >> 1), (short)(super.p + ((q) (p1)).p >> 1));
                    ai1.c(1);
                    aa.c(0);
                    return;
                }
            }

        }
        if(a.E > 0)
        {
            a.b(t1);
            ai1.h = t1.a << 6;
            ai1.i = t1.b << 6;
            ai1.j = t1.c << 6;
            ai1.k = t1.d << 6;
            if(ai1.a(c, d, c + k, d + l, (short)0))
            {
                c();
                super.i = false;
                return;
            }
        }
        c += k;
        d += l;
        if(ai1.p != 1)
        {
            int i2 = (super.o - e) * (super.o - e) + (super.p - f) * (super.p - f);
            h h1;
            if(b != null && ((q) (b)).i == 1 && ((z) (h1 = (h)b)).a.b == 10 && i2 > 40000)
            {
                super.i = false;
                return;
            }
            if(!aa.a.a(super.o, super.p, c >> 6, d >> 6, (byte)0) && i2 > g + 100)
            {
                super.i = false;
                v v1;
                (v1 = (v)ai.a(65)).b((short)(c >> 6), (short)(d >> 6), a.a);
                switch(a.a)
                {
                case 5: // '\005'
                    v1.a(0, 800, 400, 768, 36, 32767, 26431, 639);
                    return;

                case 1: // '\001'
                    v1.b(100, 800, 400, 400, 18, 32767, 32569, 32352);
                    return;

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

                case 0: // '\0'
                    v1.a(100, 500, 0, 400, 36, 32767, 32740, 25952);
                    return;

                case 2: // '\002'
                    v1.a(100, 500, 0, 400, 36, 32767, 32569, 32352);
                    return;

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

                case 4: // '\004'
                    v1.a(100, 500, 0, 400, 36, 32767, 26431, 639);
                    return;

                case 7: // '\007'
                    v1.a(100, 500, 0, 400, 36, 32767, 32575, 32383);
                    return;

                case 8: // '\b'
                    v1.a(0, 800, 400, 768, 36, 32767, 16356, 12064);
                    // fall through

                case 9: // '\t'
                case 10: // '\n'
                default:
                    return;
                }
            }
        }
        super.o = (short)(c >> 6);
        super.p = (short)(d >> 6);
    }

    public final void b(e e1)
    {
    }

    public final void c()
    {
        if(a.a == 9 || a.a == 10)
            return;
        v v1;
        if((v1 = (v)ai.a(65)) == null)
            return;
        o o1 = aa.a.a;
        t t1 = new t();
        a.b(t1);
        switch(a.a)
        {
        case 5: // '\005'
            if(a != o1.a)
            {
                v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
                v1.a(0, 800, 400, 768, 36, 32767, 26431, 639);
            }
            break;

        case 1: // '\001'
            v1.b(super.o, t1.b, a.a);
            v1.b(100, 800, 400, 400, 18, 32767, 32569, 32352);
            break;

        case 6: // '\006'
        case 11: // '\013'
            v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
            v1.a(0, 800, 400, 768, 36, 32767, 16356, 12064);
            break;

        case 0: // '\0'
            v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
            v1.a(100, 500, 0, 400, 36, 32767, 32740, 25952);
            break;

        case 2: // '\002'
            v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
            v1.a(100, 500, 0, 400, 36, 32767, 32569, 32352);
            break;

        case 3: // '\003'
            if(a != o1.a)
            {
                v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
                v1.a(0, 800, 400, 768, 36, 32767, 32575, 32383);
            }
            break;

        case 4: // '\004'
            v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
            v1.a(100, 500, 0, 400, 36, 32767, 26431, 639);
            break;

        case 7: // '\007'
            v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
            v1.a(100, 500, 0, 400, 36, 32767, 32575, 32383);
            break;

        case 8: // '\b'
            v1.b((short)(t1.a + t1.c >> 1), (short)(t1.b + t1.d >> 1), a.a);
            v1.a(0, 800, 400, 768, 36, 32767, 16356, 12064);
            break;
        }
        switch(((q) (a)).i)
        {
        case 0: // '\0'
            if(aa.a.p != 1)
            {
                a.a(a.c);
                if(b != null && ((q) (b)).i == 1 && b.a.b == 10)
                {
                    aa.a.b[4]++;
                    return;
                }
                break;
            }
            if(b.a.b == 11)
            {
                a.a((short)255);
                return;
            } else
            {
                byte byte0;
                aj aj1 = aa.a(byte0 = (byte)o1.a.b[o1.t]);
                a.a(aj1.e);
                return;
            }

        case 1: // '\001'
            a.a(a.c);
            return;

        case 6: // '\006'
            a.a(a.e);
            return;

        default:
            a.a(a.c);
            break;
        }
    }

    public final void a(e e1)
    {
        if(aa.k != 2)
            return;
        switch(a.a)
        {
        case 5: // '\005'
            a(e1, 32767, 639);
            return;

        case 1: // '\001'
            b(0, e1);
            return;

        case 6: // '\006'
        case 11: // '\013'
            a(e1, 32767, 20448);
            return;

        case 0: // '\0'
            a(1, e1);
            return;

        case 2: // '\002'
            b(0, e1);
            return;

        case 3: // '\003'
            c(3, e1);
            return;

        case 4: // '\004'
            b(2, e1);
            return;

        case 7: // '\007'
            b(3, e1);
            return;

        case 8: // '\b'
            d(4, e1);
            return;

        case 9: // '\t'
            e(1, e1);
            return;

        case 10: // '\n'
            f(1, e1);
            break;
        }
    }

    private void a(e e1, int i, int j)
    {
        int k = q.a(super.o - e);
        int l = q.a(super.p - f);
        if(k < q.a(a) || l < q.a(b))
        {
            aa.a(e1, e << 6, f << 6, c, d, 32, 128, i, j);
            return;
        } else
        {
            aa.a(e1, c - (a << 6), d - (b << 6), c, d, 32, 128, i, j);
            return;
        }
    }

    private void a(int i, e e1)
    {
        g g1;
        (g1 = aa.a[2]).a(0, 12, super.o - g1.a[0], super.p - g1.b[0], i, e1);
    }

    private void b(int i, e e1)
    {
        g g1 = aa.a[2];
        int j = q.a(super.o - e);
        int k = q.a(super.p - f);
        g1.a(0, 15, super.o - g1.a[0], super.p - g1.b[0], i, e1);
        if(j > 6 || k > 6)
            g1.a(0, 12, super.o - (a * 6 >> 6) - g1.a[0], super.p - (b * 6 >> 6) - g1.b[0], i, e1);
        if(j > 12 || k > 12)
            g1.a(0, 10, super.o - (a * 12 >> 6) - g1.a[0], super.p - (b * 12 >> 6) - g1.b[0], i, e1);
        if(j > 18 || k > 18)
            g1.a(0, 8, super.o - (a * 18 >> 6) - g1.a[0], super.p - (b * 18 >> 6) - g1.b[0], i, e1);
        if(j > 23 || k > 23)
            g1.a(0, 6, super.o - (a * 23 >> 6) - g1.a[0], super.p - (b * 23 >> 6) - g1.b[0], i, e1);
        if(j > 28 || k > 28)
            g1.a(0, 4, super.o - (a * 28 >> 6) - g1.a[0], super.p - (b * 28 >> 6) - g1.b[0], i, e1);
    }

    private void c(int i, e e1)
    {
        int j = -(h * b) >> 6;
        int k = h * a >> 6;
        aa.a(c + (j << 6), d + (k << 6), e1, 8, 32767);
        g g1;
        (g1 = aa.a[2]).a(0, 12, (super.o + j) - g1.a[0], (super.p + k) - g1.b[0], i, e1);
    }

    private void d(int i, e e1)
    {
        int j = -(h * b) >> 6;
        int k = h * a >> 6;
        aa.b(c + (j << 6), d + (k << 6), e1, 10, 32767);
        g g1;
        (g1 = aa.a[2]).a(0, 12, (super.o + j) - g1.a[0], (super.p + k) - g1.b[0], i, e1);
    }

    private void e(int i, e e1)
    {
        g g1 = aa.a[2];
        int j = (super.o - e) * (super.o - e) + (super.p - f) * (super.p - f);
        int k;
        if((k = 15 - (j >> 8)) < 2)
            k = 2;
        g1.a(0, k, super.o - g1.a[0], super.p - g1.b[0], i, e1);
    }

    private void f(int i, e e1)
    {
        g g1 = aa.a[2];
        int j;
        int k;
        if((k = (j = (super.o - e) * (super.o - e) + (super.p - f) * (super.p - f)) >> 8) > 15)
            k = 15;
        g1.a(0, k, super.o - g1.a[0], super.p - g1.b[0], i, e1);
    }
}

⌨️ 快捷键说明

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