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

📄 z.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 class z extends q
{

    public ad a;
    public byte b;
    public byte k;
    public short q;
    public short r;
    public byte l;
    public byte m;
    public int D;
    public short s;
    public boolean i;
    public int E;

    public z(byte byte0)
    {
        super(byte0);
        i = false;
        b = -1;
        a = null;
    }

    public void a(short word0, short word1, byte byte0)
    {
        i = false;
        b = -1;
        super.a(word0, word1, byte0);
        q = word0;
        r = word1;
        m = byte0;
    }

    public final boolean c()
    {
        return (s & 0xffff) == 65535;
    }

    public void a(int j)
    {
    }

    public final void d(int j)
    {
        b = (byte)j;
        k = 0;
        D = 0;
        b();
    }

    public final boolean a(int j, int i1)
    {
        if(b != (byte)j)
        {
            b = (byte)j;
            k = -1;
            s = 0;
            D = 0;
        }
        if(s == -1)
            return false;
        D += i1;
        if(D < s)
            return false;
        else
            return d();
    }

    public final boolean d()
    {
        k++;
        l l1 = a.a[b];
        if(k == l1.a)
            if(l1.a)
            {
                k = 0;
            } else
            {
                k = (byte)(l1.a - 1);
                s = -1;
                return false;
            }
        b();
        return true;
    }

    public final boolean e()
    {
        k--;
        l l1 = a.a[b];
        if(k == -1)
            if(l1.a)
            {
                k = (byte)(l1.a - 1);
            } else
            {
                k = 0;
                s = -1;
                return false;
            }
        b();
        return true;
    }

    public final void b()
    {
        s = 100;
        D = 0;
    }

    public final void h()
    {
        k = (byte)(a.a[b].a - 1);
        s = -1;
        b();
    }

    public void b(e e1)
    {
        g g1;
        if((g1 = a.a) == null || (b & 0xff) == 255)
            return;
        l l1;
        int ai1[] = (l1 = a.a[b]).a[k];
        for(int j = l1.a[k] - 1; j >= 0; j--)
        {
            int i1;
            int j1 = (i1 = ai1[j]) & 0xff;
            byte byte0 = (byte)(i1 >> 8 & 0xff);
            byte byte1 = (byte)(i1 >> 16 & 0xff);
            int k1 = i1 >> 24 & 0xff;
            int i2 = o + byte0;
            if(g1.a == null && g1.a == null)
            {
                if(super.a_ == 1)
                {
                    k1 = b(k1);
                    i2 = o - (byte0 + g1.a[j1]);
                }
            } else
            if(super.a_ == 1)
                k1 = 1;
            g1.a(j1, i2, p + byte1, k1, e1, 0);
        }

    }

    public byte a(int j, int i1)
    {
        if(j == 0 && i1 == 0)
            return super.a_;
        if(j >= 0)
        {
            if(i1 >= 0)
                return j <= i1 ? 3 : 0;
            return j < -i1 ? 2 : 0;
        }
        if(i1 >= 0)
            return -j < i1 ? 3 : 1;
        return j >= i1 ? 2 : 1;
    }

    public static byte a(short word0, short word1)
    {
        int j = 0;
        int i1 = 0;
        j = aa.a(315, 0);
        i1 = aa.a(200, 0);
        short word2 = aa.a(j);
        short word3 = aa.b(j);
        short word4 = aa.a(i1);
        short word5 = aa.b(i1);
        int j1 = q.a(word2 * word0 + word3 * word1);
        int k1 = q.a(word4 * word0 + word5 * word1);
        if(j1 >= k1)
            return (byte)(word1 >= 0 ? 3 : 2);
        else
            return (byte)(word0 >= 0 ? 0 : 1);
    }

    public int a()
    {
        if(super.a_ == 0)
            return 0;
        if(super.a_ == 2)
            return 1;
        return super.a_ != 3 ? 0 : 2;
    }

    public final void b(t t1)
    {
        g g1 = a.a;
        l l1;
        int ai1[] = (l1 = a.a[b]).a[k];
        int i2 = 0xf423f;
        int j2 = 0xf423f;
        int k2 = 0;
        int l2 = 0;
        for(int i3 = l1.a[k] - 1; i3 >= 0; i3--)
        {
            int j3;
            int k3 = (j3 = ai1[i3]) & 0xff;
            byte byte0 = (byte)(j3 >> 8 & 0xff);
            byte byte1 = (byte)(j3 >> 16 & 0xff);
            int i1 = p + byte1;
            int k1 = p + byte1 + g1.b[k3];
            int j;
            int j1;
            if(super.a_ == 1)
            {
                j = o - ((g1.a[k3] - 1) + byte0);
                j1 = (o - byte0) + 1;
            } else
            {
                j = o + byte0;
                j1 = o + byte0 + g1.a[k3];
            }
            if(j < i2)
                i2 = j;
            if(i1 < j2)
                j2 = i1;
            if(j1 > k2)
                k2 = j1;
            if(k1 > l2)
                l2 = k1;
        }

        t1.a = (short)i2;
        t1.b = (short)j2;
        t1.c = (short)k2;
        t1.d = (short)l2;
    }

    public final boolean a(e e1)
    {
        t t1 = new t();
        b(t1);
        return t1.a(e1.a, e1.b, (e1.a + e1.i) - 1, (e1.b + e1.j) - 1);
    }

    public final boolean a(int j, int i1, int j1, int k1)
    {
        int l1;
        if((l1 = j - (a.c + o)) > 0)
            return false;
        if((l1 = j1 - (a.a + o)) < 0)
            return false;
        if((l1 = i1 - (a.d + p)) > 0)
            return false;
        return (l1 = k1 - (a.b + p)) >= 0;
    }

    public void a(short word0)
    {
    }

    public void a(t t1)
    {
        t1.a = (short)(o + a.a);
        t1.b = (short)(p + a.b);
        t1.c = (short)(o + a.c);
        t1.d = (short)(p + a.d);
    }

    public final void a(ai ai1)
    {
        t t1 = new t();
        a(t1);
        ai1.a(t1.a, t1.b, t1.c, t1.d);
    }

    public void a_()
    {
        af af1;
        if((af1 = a.a) == null)
            return;
        int ai1[] = ai.a;
        short word0 = aa.a.c;
        for(int j = 0; j < af1.a; j++)
        {
            int i1 = af1.a[j];
            int j1;
            if(j < af1.a - 1)
                j1 = af1.a[j + 1];
            else
                j1 = af1.a[0];
            if(word0 < 400)
            {
                ai1[word0++] = aa.a((short)(aa.a(i1) + o), (short)(aa.b(i1) + p));
                ai1[word0++] = aa.a((short)(aa.a(j1) + o), (short)(aa.b(j1) + p));
            }
        }

        aa.a.c = word0;
    }

    public static int b(int j)
    {
        switch(j)
        {
        case 0: // '\0'
            return 2;

        case 2: // '\002'
            return 0;

        case 7: // '\007'
            return 6;

        case 1: // '\001'
            return 3;

        case 4: // '\004'
            return 5;

        case 5: // '\005'
            return 4;

        case 3: // '\003'
            return 1;

        case 6: // '\006'
            return 7;
        }
        return 0;
    }
}

⌨️ 快捷键说明

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