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

📄 ai.java

📁 哈利波特与凤凰令的一个小游戏
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
// 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 

import java.util.Random;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

public final class ai
{

    public static int a;
    public int b;
    public short a[];
    public short a;
    public short b[];
    public short b;
    public short c[];
    public q a[][];
    public static int c;
    public static z a[][];
    public o a;
    public ae a;
    public static q a[] = new q[512];
    public int d;
    public static x a[] = new x[200];
    public int e;
    public g a;
    public e a;
    public int f;
    public int g;
    public short c;
    public static int a[] = new int[400];
    public short d;
    public short d[];
    public int h;
    public int i;
    public int j;
    public int k;
    public boolean a;
    public int l;
    public int m;
    public short e;
    public int n;
    public int o;
    public int p;
    public s a;
    public short f;
    public int b[];
    public static int c[];
    public static int d[];
    public int q;
    public short g;
    public short h;
    public short i;
    public short j;
    public short k;
    public short l;
    public int r;
    public byte a;
    public byte a[];
    public short e[];
    public static s b = new s();
    public static boolean b = true;
    public static int s;
    public static int t;
    public static int u;
    public static int v;
    public static int w;
    public static int x;
    public static int y;
    public static int z;
    public static int A;
    public static m a[] = new m[24];
    public static int B;
    public static Image a;
    public static Graphics a;
    private static t a = new t();
    private static t b = new t();

    public ai()
    {
        b = new short[2048];
        d = new short[64];
        c = new short[14];
        d = new int[10];
        c = new int[10];
        b = c;
        a = null;
        a = new s();
        g = 0;
        h = 0;
        i = 0;
        j = 0;
        k = 0;
        l = 0;
    }

    public final void a(String s1, int i1)
    {
        p = i1;
        aa.c();
        a = aa.a[0];
        a = aa.a;
        y = a.i;
        z = a.j;
        aa.a(s1);
        aa.a();
        aa.a();
        a = g.d = (aa.a() & 0x7fff) << 16;
        b = aa.a();
        int j3 = b * 3;
        if(b != 0)
            a = new short[j3];
        for(int j1 = 0; j1 < j3; j1 += 3)
            a[j1] = (short)(aa.a() & 0xffff);

        for(int k1 = 0; k1 < j3; k1 += 3)
        {
            if(k1 == 0)
            {
                if((a[k1] & 0x200) != 0)
                    a[k1 + 1] = aa.a();
                else
                    a[k1 + 1] = aa.a();
                continue;
            }
            if((a[k1] & 0x200) != 0)
                a[k1 + 1] = (short)(a[k1 - 2] + aa.a());
            else
                a[k1 + 1] = (short)(a[k1 - 2] + aa.a());
        }

        aa.c();
        for(int l1 = 0; l1 < j3; l1 += 3)
        {
            if(l1 == 0)
            {
                if((a[l1] & 0x100) != 0)
                    a[l1 + 2] = aa.a();
                else
                    a[l1 + 2] = aa.a();
                continue;
            }
            if((a[l1] & 0x100) != 0)
                a[l1 + 2] = (short)(a[l1 - 1] + aa.a());
            else
                a[l1 + 2] = (short)(a[l1 - 1] + aa.a());
        }

        aa.c();
        b = aa.a();
        for(int k3 = 0; k3 < b; k3++)
        {
            int l3 = aa.a();
            c[k3] = (short)l3;
            if(c[k3] == 0)
                continue;
            q aq[] = a[k3];
            for(int i2 = 0; i2 < l3; i2++)
            {
                q q1;
                a(q1 = aq[i2], k3);
                q1.g();
                aq[i2] = q1;
            }

        }

        a = (o)a[0][0];
        aa.d();
        aa.c();
        for(int j2 = 0; j2 < 512; j2++)
            a[j2] = null;

        for(int k2 = 0; k2 < 200; k2++)
            a[k2] = null;

        b(64);
        b(65);
        b(66);
        b(67);
        aa.c();
        if(i1 == 1)
            a.a = (n)a[6][0];
        else
            a.a = null;
        a.a = null;
        a.a = null;
        a.b = null;
        a.a = null;
        j();
        if(i1 == 1)
            a.a.e();
        if(i1 == 4)
            l(83);
        if(aa.m == 18)
            a(true);
        else
            a(false);
        if(aa.m != 8)
        {
            if(aa.a != 8 && aa.a != 9 && aa.a != 10)
            {
                for(int l2 = 0; l2 < 10; l2++)
                    b[l2] = 0;

            }
            w.d();
        } else
        {
            aa.m = 3;
            for(int i3 = 0; i3 < d; i3++)
            {
                h h1;
                if(a[i3].i == 1)
                    (h1 = (h)a[i3]).c = h1.a();
            }

        }
        if(g.d == null)
            g.d = new int[18304];
        aa.c();
    }

    public final void a()
    {
        a = null;
        aa.c();
        g = 0;
        h = 0;
        i = 0;
        j = 0;
        k = 0;
        l = 0;
        for(int i2 = 0; i2 < b; i2++)
        {
            if(c[i2] == 0)
                continue;
            q aq[] = a[i2];
            for(int i1 = 0; i1 < c[i2]; i1++)
            {
                q q1;
                (q1 = aq[i1]).d = null;
            }

        }

        for(int j1 = 0; j1 < 512; j1++)
            a[j1] = null;

        for(int k1 = 0; k1 < 200; k1++)
            a[k1] = null;

        c = 0;
        for(int l1 = 0; l1 < 400; l1++)
            a[l1] = 0;

        aa.c();
    }

    private void j()
    {
        for(int i1 = 0; i1 < c[10]; i1++)
        {
            y y1;
            (y1 = (y)a[10][i1]).b();
        }

        aa.c();
    }

    public static void a(int i1)
    {
        a[i1 - 64] = new z[16];
        z az[] = a[i1 - 64];
        for(int j1 = 0; j1 < 16; j1++)
        {
            az[j1] = null;
            switch(i1)
            {
            case 64: // '@'
                az[j1] = new p();
                break;

            case 65: // 'A'
                az[j1] = new v();
                break;

            case 66: // 'B'
                az[j1] = new u();
                break;

            case 67: // 'C'
                az[j1] = new z((byte)67);
                az[j1].a = aa.a((byte)67, (byte)0);
                az[j1].d(az[j1].a.a);
                break;
            }
        }

        c++;
        aa.c();
    }

    public static z a(int i1)
    {
        z az[] = a[i1 - 64];
        for(int j1 = 0; j1 < 16; j1++)
        {
            z z1;
            if(!(z1 = az[j1]).i)
            {
                z1.i = true;
                return z1;
            }
        }

        return null;
    }

    public static int a(int i1)
    {
        z az[] = a[i1 - 64];
        int j1 = 0;
        for(int k1 = 0; k1 < 16; k1++)
        {
            z z1;
            if((z1 = az[k1]).i)
                j1++;
        }

        return j1;
    }

    public static void b(int i1)
    {
        z az[] = a[i1 - 64];
        for(int j1 = 0; j1 < 16; j1++)
            az[j1].i = false;

    }

    private static void d(int i1)
    {
        for(int j1 = 0; j1 < c; j1++)
        {
            z az[] = a[j1];
            for(int k1 = 0; k1 < 16; k1++)
            {
                z z1;
                if((z1 = az[k1]).i)
                    z1.a(i1);
            }

        }

    }

    private void e(int i1)
    {
        x ax[] = a;
        int j1 = e;
        for(int k1 = 0; k1 < j1; k1++)
            if(ax[k1].a)
                ax[k1].a(i1);

    }

    private static void a(int i1, e e1)
    {
        z az[] = a[i1 - 64];
        for(int j1 = 0; j1 < 16; j1++)
        {
            z z1;
            if((z1 = az[j1]).i)
                z1.b(e1);
        }

    }

    private static void b(int i1, e e1)
    {
        z az[] = a[i1 - 64];
        for(int j1 = 0; j1 < 16; j1++)
        {
            z z1;
            if((z1 = az[j1]).i)
                z1.a(e1);
        }

    }

    public final u a(z z1, int i1)
    {
        z az[] = (z[])a[2];
        int j1 = 0xf423f;
        u u1 = null;
        t t1 = new t();
        a.b(t1);
        for(int k1 = 0; k1 < 16; k1++)
        {
            u u2;
            int l1;
            if(az[k1].i && (u2 = (u)az[k1]).a(i1, z1) && (l1 = (((q) (z1)).o - ((q) (u2)).o) * (((q) (z1)).o - ((q) (u2)).o) + (((q) (z1)).p - ((q) (u2)).p) * (((q) (z1)).p - ((q) (u2)).p)) < j1)
            {
                j1 = l1;
                u1 = u2;
            }
        }

        return u1;
    }

    private static q a(q q1, int i1)
    {
        if(i1 == 7)
        {
            af af1;
            (af1 = (af)q1).b();
            return af1;
        }
        short word0 = aa.a();
        short word1 = aa.a();
        byte byte0 = aa.a();
        Object obj = null;
        Object obj1 = null;
        Object obj2 = null;
        Object obj3 = null;
        Object obj4 = null;
        Object obj5 = null;
        Object obj6 = null;
        Object obj7 = null;
        Object obj8 = null;
        Object obj9 = null;
        Object obj10 = null;
        Object obj11 = null;
        switch(i1)
        {
        case 0: // '\0'
            o o1;
            (o1 = (o)q1).a(word0, word1, byte0);
            return o1;

        case 2: // '\002'
            x x1;
            (x1 = (x)q1).a(word0, word1, byte0);
            return x1;

        case 4: // '\004'
            ah ah1;
            (ah1 = (ah)q1).a(word0, word1, byte0);
            return ah1;

        case 5: // '\005'
            a a1;
            (a1 = (a)q1).a(word0, word1, byte0);
            return a1;

        case 6: // '\006'
            n n1;
            (n1 = (n)q1).a(word0, word1, byte0);
            return n1;

        case 1: // '\001'
            h h1;
            (h1 = (h)q1).a(word0, word1, byte0);
            return h1;

        case 8: // '\b'
            c c1;
            (c1 = (c)q1).a(word0, word1, byte0);
            return c1;

        case 9: // '\t'
            ab ab1;
            (ab1 = (ab)q1).a(word0, word1, byte0);
            return ab1;

        case 10: // '\n'
            y y1;
            (y1 = (y)q1).a(word0, word1, byte0);
            return y1;

        case 11: // '\013'
            j j1;
            (j1 = (j)q1).a(word0, word1, byte0);
            return j1;

        case 12: // '\f'
            r r1;
            (r1 = (r)q1).b();
            return r1;

        case 13: // '\r'
            b b1;
            (b1 = (b)q1).a(word0, word1, byte0);
            return b1;

        case 3: // '\003'
        case 7: // '\007'
        default:
            return null;
        }
    }

    public final void a(boolean flag)
    {
        aa.j();
        l = 0;
        b = true;

⌨️ 快捷键说明

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