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

📄 i.java

📁 j2me武林传之刀剑江湖录[中篇]反编译的源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		Q++;
		R++;
		ag = true;
		i();
	}

	public static final byte a(byte byte0, int i1, int j1)
	{
		int k1 = (j1 / h[e].k) * h[e].i + i1 / h[e].l;
		switch (byte0)
		{
		case 0: // '\0'
			return h[e].o[k1];

		case 1: // '\001'
			return h[e].p[k1];

		case 2: // '\002'
			return h[e].q[k1];

		case 3: // '\003'
			return h[e].r[k1];
		}
		return -1;
	}

	public static final short a(byte byte0, int i1, int j1, byte byte1)
	{
		int k1 = 0;
		if (byte0 == 0)
			k1 = h[e].v.length >> 1;
		else
		if (byte0 == 1)
			k1 = h[e].D.length;
		if ((byte0 == 0 || byte0 == 1) && byte1 > k1 + -1)
		{
			String s1 = byte0 != 0 ? byte0 != 1 ? "DATA" : "BUILD" : "MAP";
			System.out.println("ERROR! setLayerData():value is invalid, exceed the max index, oprate \"" + s1 + "\", value=" + byte1);
			return -1;
		} else
		{
			int l1 = (j1 / h[e].k) * h[e].i + i1 / h[e].l;
			a(byte0, byte1, l1);
			return (short)l1;
		}
	}

	private static void a(byte byte0, byte byte1, int i1)
	{
		switch (byte0)
		{
		case 0: // '\0'
			h[e].o[i1] = byte1;
			return;

		case 1: // '\001'
			h[e].p[i1] = byte1;
			return;

		case 2: // '\002'
			h[e].q[i1] = byte1;
			return;

		case 3: // '\003'
			h[e].r[i1] = byte1;
			break;
		}
	}

	public static final short b(byte byte0, int i1, int j1, byte byte1)
	{
		int k1 = 0;
		if (byte0 == 0)
			k1 = h[e].v.length >> 1;
		else
		if (byte0 == 1)
			k1 = h[e].D.length;
		if (byte1 > k1 + -1)
		{
			String s1 = byte0 != 0 ? byte0 != 1 ? "DATA" : "BUILD" : "MAP";
			System.out.println("ERROR! setLayerData():value is invalid, exceed the max index, oprate \"" + s1 + "\", value=" + byte1);
			return -1;
		} else
		{
			int l1 = j1 * h[e].i + i1;
			a(byte0, byte1, l1);
			return (short)l1;
		}
	}

	public static final short a(byte byte0, short word0, byte byte1)
	{
		a(byte0, byte1, word0);
		return word0;
	}

	public static final byte a(int i1, int j1)
	{
		int k1;
		if ((k1 = (j1 / h[e].k) * h[e].i + i1 / h[e].l) < 0 || k1 >= h[e].o.length)
			return 3;
		byte byte0;
		if ((byte0 = h[e].q[k1]) > 0)
			switch (byte0)
			{
			case 1: // '\001'
				return 3;

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

			case 7: // '\007'
				return 4;
			}
		int l1;
		if ((l1 = h[e].p[k1]) == -1)
			return 0;
		if (l1 > -1)
			return 0;
		if (l1 <= -2 && -123 < l1)
		{
			l1 = -l1 + -2;
			if (a[l1] == 5)
				return 3;
			Object obj = null;
			for (int i2 = 0; i2 < a[l1]; i2++)
			{
				Object obj1;
				short word0;
				if ((word0 = b[l1 * 5 + i2]) < 120)
					obj1 = k.u[k.w[word0]];
				else
					obj1 = k.q[word0 - 120];
				if (obj1 == null)
					return 0;
				if (((z) (obj1)).e[4] != 0 && ((z) (obj1)).e[4] != 100 && ((z) (obj1)).e[0] != 42 && ((z) (obj1)).e[0] != 46)
					return 3;
			}

			return 0;
		} else
		{
			return 3;
		}
	}

	public static final void c(int i1)
	{
		if (i1 != -1)
		{
			for (int j1 = 0; j1 < h.length; j1++)
			{
				boolean flag = true;
				int l1 = 0;
				do
				{
					if (l1 >= k.ae[i1].length)
						break;
					if (k.ae[i1][l1] == j1)
					{
						flag = false;
						break;
					}
					l1++;
				} while (true);
				if (flag && h[j1] != null)
				{
					h[j1].h();
					h[j1] = null;
				}
			}

			return;
		}
		for (int k1 = 0; k1 < h.length; k1++)
			if (h[k1] != null)
			{
				h[k1].h();
				h[k1] = null;
			}

	}

	private void h()
	{
		o = null;
		p = null;
		q = null;
		r = null;
		t = null;
		u = null;
		v = null;
		x[s] = null;
		y[s] = null;
		z[s] = null;
		B = null;
		C = null;
		D = (byte[][])null;
		F[s] = null;
		G[s] = null;
		H[s] = (byte[][])null;
	}

	public static final void a(Graphics g1, int i1, int j1)
	{
		I = i1;
		J = j1;
		L = j1 / h[e].l;
		K = i1 / h[e].k;
		P = L + R;
		O = K + Q;
		N = -(j1 % h[e].l);
		M = -(i1 % h[e].k);
		int k1 = i1 % Y;
		int l1 = j1 % Z;
		int i2 = (i1 + 240) % Y;
		int j2 = (j1 + 320) % Z;
		if (ag)
		{
			a(i1, j1, ag);
			ag = !ag;
		}
		if (i2 > k1)
		{
			if (j2 > l1)
			{
				a(g1, k1, l1, 240, 320, 0, 0);
			} else
			{
				a(g1, k1, l1, 240, 320 - j2, 0, 0);
				a(g1, k1, 0, 240, j2, 0, 320 - j2);
			}
		} else
		if (j2 > l1)
		{
			a(g1, k1, l1, 240 - i2, 320, 0, 0);
			a(g1, 0, l1, i2, 320, 240 - i2, 0);
		} else
		{
			a(g1, k1, l1, 240 - i2, 320 - j2, 0, 0);
			a(g1, k1, 0, 240 - i2, j2, 0, 320 - j2);
			a(g1, 0, l1, i2, 320 - j2, 240 - i2, 0);
			a(g1, 0, 0, i2, j2, 240 - i2, 320 - j2);
		}
		a(g1);
	}

	private static void i()
	{
		int i1;
		if (240 % h[e].k == 0)
			i1 = 240 + h[e].k;
		else
			i1 = (240 / h[e].k + 2) * h[e].k;
		int j1;
		if (320 % h[e].l == 0)
			j1 = 320 + 2 * h[e].l;
		else
			j1 = (320 / h[e].l + 2) * h[e].l;
		if (i1 != Y && j1 != Z)
		{
			Y = i1;
			Z = j1;
			aa = Image.createImage(Y, Z);
			ab = aa.getGraphics();
		}
	}

	public static final void a()
	{
		ab = null;
		aa = null;
	}

	public static final void a(int i1, int j1, boolean flag)
	{
		int k2;
		int l2 = (k2 = i1 / h[e].k) + ((240 + h[e].k) - 1) / h[e].k;
		int i3;
		int j3 = (i3 = j1 / h[e].l) + 320 / h[e].l + 1;
		if (flag)
		{
			a(k2, i3, l2, j3);
			ac = k2;
			ae = i3;
			ad = l2;
			af = j3;
		}
		if (ac != k2 || ad != l2)
		{
			int k1;
			int i2;
			if (ac < k2)
			{
				k1 = ad + 1;
				i2 = l2;
			} else
			{
				k1 = k2;
				i2 = ac - 1;
			}
			a(k1, i3, i2, j3);
			ac = k2;
			ad = l2;
		}
		if (ae != i3 || af != j3)
		{
			int l1;
			int j2;
			if (ae < i3)
			{
				l1 = af + 1;
				j2 = j3;
			} else
			{
				l1 = i3;
				j2 = ae - 1;
			}
			a(k2, l1, l2, j2);
			ae = i3;
			af = j3;
		}
	}

	private static void a(int i1, int j1, int k1, int l1)
	{
		if (i1 < 0)
			i1 = 0;
		if (j1 < 0)
			j1 = 0;
		if (k1 >= h[e].i)
			k1 = h[e].i - 1;
		if (l1 >= h[e].j)
			l1 = h[e].j - 1;
		int k2 = (j1 * h[e].l) % Z;
		for (int l2 = j1; l2 <= l1; l2++)
		{
			int j2 = (i1 * h[e].k) % Y;
			for (int i3 = i1; i3 <= k1; i3++)
			{
				int i2;
				if ((i2 = h[e].o[h[e].i * l2 + i3]) > -1)
				{
					byte byte0 = h[e].v[i2 << 1];
					byte byte1 = h[e].v[(i2 << 1) + 1];
					i2 = byte0 << 1;
					byte byte2 = h[e].u[i2++];
					byte byte3 = h[e].u[i2];
					h[e].t[byte2].a(ab, byte3, j2, k2, 20, byte1);
				}
				if ((j2 += h[e].k) >= Y)
					j2 -= Y;
			}

			if ((k2 += h[e].l) >= Z)
				k2 -= Z;
		}

	}

	private static void a(Graphics g1, int i1, int j1, int k1, int l1, int i2, int j2)
	{
		g1.setClip(i2, j2, k1, l1);
		g1.drawImage(aa, i2 - i1, j2 - j1, 20);
		g1.setClip(0, 0, 240, 320);
	}

	public static final void d(int i1)
	{
		boolean flag = true;
		int j1 = 0;
		do
		{
			if (j1 >= k.ae[e].length)
				break;
			if (k.ae[e][j1] == i1)
			{
				flag = false;
				break;
			}
			j1++;
		} while (true);
		if (flag)
		{
			System.out.println("地图加载错误:ID=" + i1 + ",不在当前地图缓存中!");
			return;
		} else
		{
			e = i1;
			byte byte0 = h[e].s;
			h[e].t = x[byte0];
			h[e].v = z[byte0];
			h[e].u = y[byte0];
			byte byte1 = h[e].A;
			h[e].B = F[byte1];
			h[e].D = H[byte1];
			h[e].C = G[byte1];
			g();
			return;
		}
	}

	public static final int b()
	{
		return h[e].m;
	}

	public static final int c()
	{
		return h[e].n;
	}

	public static final int d()
	{
		return h[e].k;
	}

	public static final int e()
	{
		return h[e].l;
	}

	public static final void f()
	{
		for (int i1 = c - 1; i1 >= 0; i1--)
			a((byte)1, d[i1], (byte)-1);

	}

	static 
	{
		f = k.y.length;
		g = k.y.length + 100;
		S = new short[f * 3];
		T = new short[g * 3];
	}
}

⌨️ 快捷键说明

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