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

📄 z.java

📁 j2me 武林传之刀剑江湖录[前篇]反编译源代码
💻 JAVA
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space 

import java.io.DataInputStream;
import javax.microedition.lcdui.Graphics;

public final class z
{

	private static short f[] = new short[4];
	private static short g[] = new short[4];
	private short h[];
	public short a;
	private p i[];
	private short j;
	private short k[];
	private short l;
	private byte m[];
	private byte n[];
	private short o[];
	private short p;
	private int q[];
	public short b;
	private byte r[];
	public byte c[];
	public short d[];
	private short s;
	public short e[];
	private short t;
	private short u;
	private short v[];
	private short w[];
	private short x;
	private byte y[];

	public z()
	{
	}

	public final void a(Graphics g1, int i1, int j1, int k1, int l1, boolean flag, short aword0[])
	{
		short aword1[] = aword0 != null ? aword0 : h;
		for (int i2 = 0; i2 < a; i2++)
			i[i2].a(aword1[i2] >> 8 & 0xff, aword1[i2] & 0xff);

		b(g1, i1, j1, k1, l1, flag);
	}

	public final void a(Graphics g1, int i1, int j1, int k1, int l1, boolean flag)
	{
		a(g1, i1, j1, k1, l1, flag, h);
	}

	public final void b(Graphics g1, int i1, int j1, int k1, int l1, boolean flag)
	{
		int l3 = e[d[i1] + (j1 << 1)] >> 0 & 0x3ff;
		for (int i4 = 0; i4 < n[l3]; i4++)
		{
			int i2 = o[l3] + i4;
			int j2 = q[i2] >> 18 & 0x3ff;
			int k2 = q[i2] >> 9 & 0x1ff;
			int l2 = q[i2] & 0x1ff;
			int i3 = q[i2] >> 28 & 7;
			if ((k2 & 0x100) != 0)
				k2 |= 0xfffffe00;
			if ((l2 & 0x100) != 0)
				l2 |= 0xfffffe00;
			z z1;
			if (j2 < 700)
			{
				z1 = this;
			} else
			{
				z1 = y.e[0];
				j2 -= 700;
			}
			int j3 = z1.k[j2] >> 13 & 7;
			int k3 = z1.k[j2] & 0x1fff;
			if (flag)
				if ((i3 = i3 != 0 ? i3 != 4 ? i3 != 2 ? i3 != 5 ? i3 != 1 ? i3 != 3 ? i3 : 7 : 6 : 2 : 5 : 0 : 4) == 6 || i3 == 7)
					k2 = -k2 - z1.i[j3].b(k3);
				else
					k2 = -k2 - z1.i[j3].a(k3);
			z1.i[j3].a(g1, k3, k1 + k2, l1 + l2, 20, i3);
		}

	}

	public final short[] a()
	{
		if (h == null)
		{
			h = new short[a];
			for (int i1 = 0; i1 < a; i1++)
				h[i1] = i[i1].a();

		}
		short aword0[] = new short[h.length];
		System.arraycopy(h, 0, aword0, 0, h.length);
		return aword0;
	}

	public final short[] a(byte byte0, int i1, int j1)
	{
		int k1 = e[d[i1] + (j1 << 1)] >> 0 & 0x3ff;
		boolean flag = false;
		switch (byte0)
		{
		case 1: // '\001'
			int l1 = (m[k1 << 1] & 0xff) << 2;
			System.arraycopy(v, l1, g, 0, 4);
			return g;

		case 2: // '\002'
			int i2 = (m[(k1 << 1) + 1] & 0xff) << 2;
			System.arraycopy(w, i2, f, 0, 4);
			return f;
		}
		return null;
	}

	public final boolean a(int i1, int j1)
	{
		short word0;
		return (word0 = e[d[i1] + ((j1 << 1) + 1)]) > 0;
	}

	public final int b(int i1, int j1)
	{
		short word0;
		return (word0 = e[d[i1] + ((j1 << 1) + 1)]) & 0xf;
	}

	public final int c(int i1, int j1)
	{
		short word0;
		return ((word0 = e[d[i1] + ((j1 << 1) + 1)]) & 0xf0) >> 4;
	}

	public final int d(int i1, int j1)
	{
		short word0;
		return ((word0 = e[d[i1] + ((j1 << 1) + 1)]) & 0xf00) >> 8;
	}

	public final int e(int i1, int j1)
	{
		short word0;
		return ((word0 = e[d[i1] + ((j1 << 1) + 1)]) & 0xf000) >> 12;
	}

	public final void a(short word0, short aword0[])
	{
		aword0[1]++;
		if (aword0[1] < (e[d[word0] + (aword0[0] << 1)] >> 10 & 0x1f))
			return;
		aword0[1] = 0;
		aword0[0]++;
		if (aword0[0] < c[word0])
		{
			return;
		} else
		{
			aword0[0] = 0;
			return;
		}
	}

	public static final z a(DataInputStream datainputstream)
		throws Exception
	{
		z z1;
		(z1 = new z()).a = datainputstream.readByte();
		z1.i = new p[z1.a];
		for (int i1 = 0; i1 < z1.a; i1++)
			z1.i[i1] = p.a(datainputstream);

		z1.j = datainputstream.readShort();
		z1.k = new short[z1.j];
		for (int j1 = 0; j1 < z1.j; j1++)
			z1.k[j1] = datainputstream.readShort();

		z1.l = datainputstream.readShort();
		z1.m = new byte[z1.l << 1];
		datainputstream.read(z1.m);
		z1.n = new byte[z1.l];
		datainputstream.read(z1.n);
		z1.o = new short[z1.l + 1];
		for (int k1 = 0; k1 < z1.o.length; k1++)
			z1.o[k1] = datainputstream.readShort();

		z1.p = datainputstream.readShort();
		z1.q = new int[z1.p];
		for (int l1 = 0; l1 < z1.p; l1++)
			z1.q[l1] = datainputstream.readInt();

		z1.b = datainputstream.readShort();
		z1.r = new byte[z1.b];
		datainputstream.read(z1.r);
		z1.c = new byte[z1.b];
		datainputstream.read(z1.c);
		z1.d = new short[z1.b + 1];
		for (int i2 = 0; i2 < z1.d.length; i2++)
			z1.d[i2] = datainputstream.readShort();

		z1.s = datainputstream.readShort();
		z1.e = new short[z1.s << 1];
		for (int j2 = 0; j2 < z1.e.length; j2++)
			z1.e[j2] = datainputstream.readShort();

		z1.t = datainputstream.readShort();
		z1.u = datainputstream.readShort();
		z1.v = new short[z1.t << 2];
		z1.w = new short[z1.u << 2];
		for (int k2 = 0; k2 < z1.v.length; k2++)
			z1.v[k2] = datainputstream.readShort();

		for (int l2 = 0; l2 < z1.w.length; l2++)
			z1.w[l2] = datainputstream.readShort();

		z1.x = datainputstream.readShort();
		z1.y = new byte[z1.x * 5];
		datainputstream.read(z1.y);
		z1.a();
		return z1;
	}

	public final void b()
	{
		if (i != null)
		{
			for (int i1 = 0; i1 < i.length; i1++)
				i[i1].b();

			i = null;
		}
		k = null;
		m = null;
		n = null;
		q = null;
		r = null;
		c = null;
		e = null;
		v = null;
		w = null;
		y = null;
	}

}

⌨️ 快捷键说明

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