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

📄 y.java

📁 j2me 武林传之刀剑江湖录[前篇]反编译源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		for (byte byte0 = 2; byte0 >= 0; byte0--)
			if (Q[byte0])
			{
				z z1;
				(z1 = e[((y) (k.s)).f[6]]).a(T[byte0], U[byte0]);
				z1.b(g1, T[byte0], U[byte0][0], i1, j1, false);
			}

	}

	public final int a(int i1, int j1)
	{
		int k1 = 0;
		if ((k1 = ((i1 - j1) * 80) / 100) < 0)
			k1 = 0;
		k1 += (i1 * 20) / 100;
		f(-k1);
		return k1;
	}

	public final boolean e(int i1)
	{
		short word0 = n = f[8];
		short word1 = o = f[9];
		byte byte0 = h.a((byte)1, word0, word1);
		h.a((byte)1, word0, word1, (byte)-1);
		m(i1);
		boolean flag = true;
		if (f[4] != 100)
			flag = h.a(n, o) == 0;
		if ((this instanceof f) && k.at != this && !u.a(n, o, k.aq[0], k.aq[1], k.aq[2], k.aq[3]))
			flag = false;
		if (!flag)
		{
			n = f[8];
			o = f[9];
		} else
		{
			a(n, o);
		}
		h.a((byte)1, word0, word1, byte0);
		return flag;
	}

	public final boolean a(int i1, int j1, int k1, int l1)
	{
		short word0 = g[2];
		g[2] = (short)j1;
		short word1 = n = f[8];
		short word2 = o = f[9];
		byte byte0 = h.a((byte)1, word1, word2);
		h.a((byte)1, word1, word2, (byte)-1);
		m(i1);
		boolean flag = true;
		int i2 = (k1 / h.d()) * h.d();
		int j2 = (l1 / h.e()) * h.e();
		if (u.a(word1, word2, i2, j2, i2 + h.d(), j2 + h.e()) && !u.a(n, o, i2, j2, i2 + h.d(), j2 + h.e()))
			flag = false;
		if ((this instanceof f) && k.at != this && !u.a(n, o, k.aq[0], k.aq[1], k.aq[2], k.aq[3]))
			flag = false;
		if (!flag)
		{
			n = f[8];
			o = f[9];
		} else
		{
			a(n, o);
		}
		h.a((byte)1, word1, word2, byte0);
		g[2] = word0;
		return flag;
	}

	private final void m(int i1)
	{
		short word0 = g[2];
		switch (i1)
		{
		default:
			break;

		case 2: // '\002'
			if (o > word0)
			{
				o -= word0;
				return;
			}
			break;

		case 0: // '\0'
			if (n > word0)
			{
				n -= word0;
				return;
			}
			break;

		case 3: // '\003'
			if (o < h.c() - word0)
			{
				o += word0;
				return;
			}
			break;

		case 1: // '\001'
			if (n < h.b() - word0)
				n += word0;
			break;
		}
	}

	public final void a(int i1, String s1)
	{
		if (s1 == null)
			s1 = String.valueOf(-i1);
		int j1 = 0;
		if (D.size() > 0)
		{
			Integer.parseInt(((String[])D.elementAt(D.size() - 1))[1]);
			j1 = 0 - g.d;
		}
		D.addElement(new String[] {
			s1, String.valueOf(j1)
		});
	}

	public final void f(int i1)
	{
		g[4] += i1;
		if (g[4] <= 0)
			a(128);
		r();
	}

	public final void g(int i1)
	{
		g[6] += i1;
		r();
	}

	public final void r()
	{
		if (g[4] < 0)
			g[4] = 0;
		else
		if (g[4] > g[5])
			g[4] = g[5];
		if (g[6] < 0)
		{
			g[6] = 0;
			return;
		}
		if (g[6] > g[7])
			g[6] = g[7];
	}

	public void b(short word0)
	{
		f[3] = word0;
		p = 0;
		c();
		if (word0 == 8)
			a((short)0);
	}

	public final void c(short word0)
	{
		f[14] = word0;
		c();
	}

	public abstract void c();

	public final void d(short word0)
	{
		f[7] = word0;
		q[1] = 0;
		q[0] = 0;
	}

	public final boolean s()
	{
		return q[0] == 0 && q[1] == 0;
	}

	public final void a(short word0, short word1)
	{
		f[8] = word0;
		f[9] = word1;
	}

	public final void t()
	{
		if (Q[0] && (R[0] & 1) == 0 && f[3] != 8)
			return;
		short word0 = f[6];
		short word1 = f[7];
		if (word0 <= 0 || word1 < 0)
			return;
		z z1;
		if ((z1 = e[word0]) == null)
		{
			return;
		} else
		{
			z1.a(word1, q);
			return;
		}
	}

	public final short c(y y1)
	{
		int i1 = y1.f[8] - f[8];
		int j1 = y1.f[9] - f[9];
		return b(i1, j1);
	}

	public final byte u()
	{
		return h(f[14]);
	}

	public static final short b(int i1, int j1)
	{
		int k1 = u.c(i1, j1);
		if (32 <= k1 && k1 <= 96)
			return 3;
		if (96 < k1 && k1 <= 160)
			return 0;
		return 160 >= k1 || k1 >= 224 ? 1 : 2;
	}

	public static final byte h(int i1)
	{
		switch (i1)
		{
		case 0: // '\0'
			return 1;

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

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

		case 3: // '\003'
			return 2;
		}
		return -1;
	}

	public static final short i(int i1)
	{
		switch (i1)
		{
		case 0: // '\0'
			return 128;

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

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

		case 3: // '\003'
			return 64;
		}
		return 0;
	}

	public final short[] v()
	{
		return a(f[6], f[7], q[0], f[8], f[9]);
	}

	public final short[] a(short word0, short word1, short word2, short word3, short word4)
	{
		short aword0[];
		if (((aword0 = e[word0].a((byte)2, word1, word2))[0] != 0 || aword0[0] != aword0[2]) && f[14] == 1)
		{
			short word5;
			if ((word5 = (short)(aword0[0] + aword0[2])) < 0)
				word5 = (short)(-word5);
			aword0[0] += word5;
			aword0[2] += word5;
		}
		u.a(aword0, word3, word4);
		return aword0;
	}

	public final short[] w()
	{
		short aword0[];
		u.a(aword0 = e[f[6]].a((byte)1, f[7], q[0]), f[8], f[9]);
		return aword0;
	}

	public final boolean x()
	{
		boolean flag = e[f[6]].a(f[7], q[0]);
		return q[1] == 0 && flag;
	}

	public final int y()
	{
		int i1;
		return i1 = e[f[6]].b(f[7], q[0]);
	}

	public final int z()
	{
		int i1;
		return i1 = e[f[6]].c(f[7], q[0]);
	}

	public final int A()
	{
		int i1;
		return i1 = e[f[6]].d(f[7], q[0]);
	}

	public final boolean B()
	{
		int i1 = e[f[6]].e(f[7], q[0]);
		return q[1] == 0 && i1 != 0;
	}

	public final void C()
	{
		short word0;
		if ((word0 = (short)A()) != 0)
		{
			short word1 = g[2];
			g[2] = word0;
			e(f[14]);
			g[2] = word1;
		}
	}

	public final void D()
	{
		short word0;
		if ((word0 = (short)A()) != 0)
		{
			short word1 = g[2];
			g[2] = word0;
			e(w);
			g[2] = word1;
		}
	}

	public final void E()
	{
		short word0;
		if ((word0 = (short)A()) != 0)
			j(word0);
	}

	public final void a(y y1, int i1)
	{
		y = (byte)i1;
		a(y1.f[8], y1.f[9], true);
	}

	public final void a(int i1, int j1, boolean flag)
	{
		int k1 = f[9] - j1;
		int l1 = f[8] - i1;
		V = u.c(l1, k1);
	}

	public final boolean j(int i1)
	{
		int j1 = u.e(i1, V);
		int k1 = u.d(i1, V);
		boolean flag = true;
		short word0 = n = f[8];
		short word1 = o = f[9];
		byte byte0 = h.a((byte)1, word0, word1);
		h.a((byte)1, word0, word1, (byte)-1);
		n += k1;
		o += j1;
		if (n <= 0)
			n = 8;
		else
		if (n >= h.b())
			n = (short)(h.b() - 8);
		if (o <= 0)
			o = 8;
		else
		if (o >= h.c())
			o = (short)(h.c() - 8);
		if ((this instanceof f) && k.at != this)
		{
			if (!u.a(n, o, k.aq[0], k.aq[1], k.aq[2], k.aq[3]))
				flag = false;
		} else
		if (h.a(n, o) != 0)
		{
			flag = false;
		} else
		{
			f[8] = n;
			f[9] = o;
		}
		h.a((byte)1, word0, word1, byte0);
		return flag;
	}

	public final void a(short word0, short word1, short word2, boolean flag)
	{
		r = word0;
		s = word1;
		t = word2;
		u = 0;
		a(64);
		b((short)4);
		if (flag)
		{
			a(512);
			v++;
		}
	}

	public final void F()
	{
		byte byte0 = 1;
		if (f[8] < r)
			byte0 = 1;
		else
		if (f[8] > r)
			byte0 = 0;
		else
		if (f[9] < s)
			byte0 = 3;
		else
		if (f[9] > s)
			byte0 = 2;
		if (byte0 != f[14])
			c(byte0);
		e(f[14]);
		if (u == 4 || f[8] == r && f[9] == s)
		{
			b((short)0);
			c(t);
			b(64);
			if (c(512))
			{
				b(512);
				v--;
			}
		}
	}

	private final void e(short word0)
	{
		short word1 = n = f[8];
		short word2 = o = f[9];
		byte byte0 = h.a((byte)1, word1, word2);
		h.a((byte)1, word1, word2, (byte)-1);
		m(word0);
		switch (word0)
		{
		case 2: // '\002'
			if (o < s)
				o = s;
			break;

		case 3: // '\003'
			if (o > s)
				o = s;
			break;

		case 0: // '\0'
			if (n < r)
				n = r;
			break;

		case 1: // '\001'
			if (n > r)
				n = r;
			break;
		}
		if (h.a(n, o) != 0)
		{
			u++;
			n = f[8];
			o = f[9];
		} else
		{
			f[8] = n;
			f[9] = o;
		}
		h.a((byte)1, word1, word2, byte0);
	}

	public static final int c(int i1, int j1)
	{
		int k1 = 0;
		z z1;
		byte byte0 = (z1 = e[i1]).c[j1];
		for (int l1 = 0; l1 < byte0; l1++)
		{
			int i2 = z1.e[z1.d[j1] + (l1 << 1)] >> 10 & 0x1f;
			k1 += i2 * z1.d(j1, l1);
		}

		return k1;
	}

	public static final int[] b(int i1, int j1, int k1, int l1)
	{
		int i2 = -1;
		int j2 = -1;
		boolean flag = false;
		boolean flag1 = false;
		int k3 = h.d();
		int l3 = h.e();
		byte abyte0[] = null;
		switch (i1)
		{
		default:
			break;

		case 2: // '\002'
			int i3 = k1 - l1;
			(abyte0 = new byte[(k1 / l3 - i3 / l3) + 1])[0] = 0;
			for (int i4 = 1; i4 < abyte0.length; i4++)
				abyte0[i4] = h.a(j1, (k1 / l3 - i4) * l3);

			break;

		case 3: // '\003'
			int j3;
			(abyte0 = new byte[((j3 = k1 + l1) / l3 - k1 / l3) + 1])[0] = 0;
			for (int j4 = 1; j4 < abyte0.length; j4++)
				abyte0[j4] = h.a(j1, (k1 / l3 + j4) * l3);

			break;

		case 0: // '\0'
			int k2 = j1 - l1;
			(abyte0 = new byte[(j1 / l3 - k2 / l3) + 1])[0] = 0;
			for (int k4 = 1; k4 < abyte0.length; k4++)
				abyte0[k4] = h.a((j1 / k3 - k4) * k3, k1);

			break;

		case 1: // '\001'
			int l2;
			(abyte0 = new byte[((l2 = j1 + l1) / l3 - j1 / l3) + 1])[0] = 0;
			for (int l4 = 1; l4 < abyte0.length; l4++)
				abyte0[l4] = h.a((j1 / k3 + l4) * k3, k1);

			break;
		}
		int i5 = 0;
		boolean flag2 = false;
		int j5 = 0;
		do
		{
			if (j5 >= abyte0.length)
				break;
			if ((abyte0[j5] & 1) != 1)
				i5 = j5;
			if ((abyte0[j5] & 2) == 2)
				break;
			j5++;
		} while (true);
		switch (i1)
		{
		case 2: // '\002'
			i2 = j1;
			j2 = (k1 / l3 - i5) * l3;
			break;

		case 3: // '\003'
			i2 = j1;
			j2 = (k1 / l3 + i5) * l3;
			break;

		case 0: // '\0'
			i2 = (j1 / k3 - i5) * k3;
			j2 = k1;
			break;

		case 1: // '\001'
			i2 = (j1 / k3 + i5) * k3;
			j2 = k1;
			break;
		}
		return (new int[] {
			i2, j2
		});
	}

	public boolean f()
	{
		return false;
	}

	static 
	{
		short aword0[] = new short[4];
		aword0[0] = 128;
		aword0[1] = 0;
		aword0[2] = 192;
		aword0[3] = 64;
	}
}

⌨️ 快捷键说明

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