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

📄 v.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 com.nokia.mid.ui.DirectGraphics;
import com.nokia.mid.ui.DirectUtils;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.util.Random;
import javax.microedition.lcdui.*;
import javax.microedition.media.Player;

public final class v
{

	public static final Random a = new Random();
	private static int b = 0;
	private static String c = "";
	private static final short d[] = {
		0, 100, 201, 302, 403, 505, 607, 710, 814, 919, 
		1025, 1133, 1242, 1353, 1465, 1580, 1696, 1815, 1937, 2061, 
		2189, 2320, 2455, 2593, 2736, 2884, 3037, 3196, 3361, 3533, 
		3712, 3899, 4095
	};
	private static final short e[] = {
		0, 100, 200, 301, 401, 501, 601, 700, 799, 897, 
		995, 1092, 1189, 1284, 1379, 1474, 1567, 1659, 1751, 1841, 
		1930, 2018, 2105, 2191, 2275, 2358, 2439, 2519, 2598, 2675, 
		2750, 2824, 2896, 2966, 3034, 3101, 3166, 3229, 3289, 3348, 
		3405, 3460, 3513, 3563, 3612, 3658, 3702, 3744, 3784, 3821, 
		3856, 3889, 3919, 3947, 3973, 3996, 4017, 4035, 4051, 4065, 
		4076, 4084, 4091, 4094, 4096
	};
	private static final short f[] = {
		4096, 4094, 4091, 4084, 4076, 4065, 4051, 4035, 4017, 3996, 
		3973, 3947, 3919, 3889, 3856, 3821, 3784, 3744, 3702, 3658, 
		3612, 3563, 3513, 3460, 3405, 3348, 3289, 3229, 3166, 3101, 
		3034, 2966, 2896, 2824, 2750, 2675, 2598, 2519, 2439, 2358, 
		2275, 2191, 2105, 2018, 1930, 1841, 1751, 1659, 1567, 1474, 
		1379, 1284, 1189, 1092, 995, 897, 799, 700, 601, 501, 
		401, 301, 200, 100, 0
	};

	private v()
	{
	}

	public static final void a(short aword0[], DataOutputStream dataoutputstream)
		throws Exception
	{
		int j = aword0.length;
		dataoutputstream.writeShort(j);
		for (int k = 0; k < j; k++)
			dataoutputstream.writeShort(aword0[k]);

	}

	public static final void a(int ai[], DataOutputStream dataoutputstream)
		throws Exception
	{
		int j = ai.length;
		dataoutputstream.writeShort(j);
		for (int k = 0; k < j; k++)
			dataoutputstream.writeInt(ai[k]);

	}

	public static final void a(short aword0[][], DataOutputStream dataoutputstream)
		throws Exception
	{
		int j = aword0.length;
		dataoutputstream.writeShort(j);
		for (int k = 0; k < j; k++)
		{
			dataoutputstream.writeShort(aword0[k].length);
			for (int l = 0; l < aword0[k].length; l++)
				dataoutputstream.writeShort(aword0[k][l]);

		}

	}

	public static final void a(int ai[][], DataOutputStream dataoutputstream)
		throws Exception
	{
		int j = ai.length;
		dataoutputstream.writeShort(j);
		for (int k = 0; k < j; k++)
		{
			dataoutputstream.writeShort(ai[k].length);
			for (int l = 0; l < ai[k].length; l++)
				dataoutputstream.writeInt(ai[k][l]);

		}

	}

	public static final int[][] a(DataInputStream datainputstream)
		throws Exception
	{
		short word0;
		int ai[][] = new int[word0 = datainputstream.readShort()][];
		for (int j = 0; j < ai.length; j++)
		{
			short word1 = datainputstream.readShort();
			ai[j] = new int[word1];
			for (int k = 0; k < ai[j].length; k++)
				ai[j][k] = datainputstream.readInt();

		}

		return ai;
	}

	public static final short[] b(DataInputStream datainputstream)
		throws Exception
	{
		short word0;
		short aword0[] = new short[word0 = datainputstream.readShort()];
		for (int j = 0; j < word0; j++)
			aword0[j] = datainputstream.readShort();

		return aword0;
	}

	public static final int[] c(DataInputStream datainputstream)
		throws Exception
	{
		short word0;
		int ai[] = new int[word0 = datainputstream.readShort()];
		for (int j = 0; j < word0; j++)
			ai[j] = datainputstream.readInt();

		return ai;
	}

	public static final short[][] d(DataInputStream datainputstream)
		throws Exception
	{
		short word0;
		short aword0[][] = new short[word0 = datainputstream.readShort()][];
		for (int j = 0; j < word0; j++)
		{
			aword0[j] = new short[datainputstream.readShort()];
			for (int k = 0; k < aword0[j].length; k++)
				aword0[j][k] = datainputstream.readShort();

		}

		return aword0;
	}

	public static final int a(byte abyte0[], int j, int k)
	{
		int l = 0;
		boolean flag = false;
		for (int j1 = k - 1; j1 >= 0; j1--)
		{
			int i1 = k - j1 - 1 << 3;
			l |= abyte0[j + j1] << i1 & 255 << i1;
		}

		switch (k)
		{
		case 1: // '\001'
			l = (byte)l;
			break;

		case 2: // '\002'
			l = (short)l;
			break;

		case 4: // '\004'
			l = l;
			break;
		}
		return l;
	}

	public static final String a(int j, int k, int l, char c1)
	{
		StringBuffer stringbuffer = new StringBuffer();
		switch (k)
		{
		case 10: // '\n'
			stringbuffer.append(Integer.toString(j));
			break;

		case 16: // '\020'
			stringbuffer.append(Integer.toHexString(j));
			break;
		}
		if (stringbuffer.length() < l)
		{
			for (int i1 = l - stringbuffer.length(); i1 > 0; i1--)
				stringbuffer.insert(0, c1);

		}
		return stringbuffer.toString();
	}

	public static final boolean a(int j)
	{
		return a(j, 100);
	}

	public static final boolean a(int j, int k)
	{
		if (j <= 0)
			return false;
		if (j >= k)
			return true;
		return Math.abs(a.nextInt()) % k <= j;
	}

	public static final int b(int j)
	{
		if (j == 0)
			return 0;
		else
			return Math.abs(a.nextInt()) % j;
	}

	public static final int b(int j, int k)
	{
		int l;
		int i1;
		return i1 = b(l = k - j) + j;
	}

	public static final Image a(String s)
	{
		Image image = null;
		try
		{
			String s1 = "/bin/";
			image = Image.createImage(s1 + s + ".png");
		}
		catch (Exception ) { }
		return image;
	}

	public static final void a(Graphics g1, String s, int j, int k, int l, int i1, int j1)
	{
		int k1 = g1.getColor();
		if (l == 65)
			k += h.f;
		g1.setColor(j1);
		g1.drawString(s, j - 1, k, l);
		g1.drawString(s, j + 1, k, l);
		g1.drawString(s, j, k - 1, l);
		g1.drawString(s, j, k + 1, l);
		g1.setColor(i1);
		g1.drawString(s, j, k, l);
		g1.setColor(k1);
	}

	public static final void a(Graphics g1, int j, int k, int l, int i1, int j1)
	{
		int ai[] = {
			j, j + l, j + l, j
		};
		int ai1[] = {
			k, k, k + i1, k + i1
		};
		DirectUtils.getDirectGraphics(g1).fillPolygon(ai, 0, ai1, 0, 4, j1);
	}

	public static final void a(Graphics g1, int ai[], int j, int k, boolean flag)
	{
		boolean flag1 = false;
		boolean flag2 = false;
		int l = j >> 24 & 0xff;
		int i1 = j >> 16 & 0xff;
		int j1 = j >> 8 & 0xff;
		int k1 = j >> 0 & 0xff;
		int l1 = k >> 24 & 0xff;
		int i2 = k >> 16 & 0xff;
		int j2 = k >> 8 & 0xff;
		int k2 = k >> 0 & 0xff;
		int l2 = ai[1];
		int i3 = ai[2];
		int j3 = ai[3];
		int k3 = ai[4];
		int i4 = 1024;
		int j4 = (flag ? k3 : j3) / 1;
		int k4;
		if ((k4 = (k4 = 1024 / j4) / 6) <= 0)
			k4 = 1;
		for (int l4 = 0; l4 < j4; l4++)
		{
			l = (l - l1) * i4 + (l1 << 10) >> 10;
			i1 = (i1 - i2) * i4 + (i2 << 10) >> 10;
			j1 = (j1 - j2) * i4 + (j2 << 10) >> 10;
			k1 = (k1 - k2) * i4 + (k2 << 10) >> 10;
			int l3 = l << 24 & 0xff000000 | i1 << 16 & 0xff0000 | j1 << 8 & 0xff00 | k1 << 0 & 0xff;
			g1.setColor(l3);
			g1.fillRect(l2, i3, flag ? j3 : 1, flag ? 1 : k3);
			if (i4 > 0)
				i4 -= k4;
			if (flag)
				i3++;
			else
				l2++;
		}

	}

	public static final void a(short aword0[], int j, int k)
	{
		if (aword0 == null)
		{
			return;
		} else
		{
			aword0[0] += j;
			aword0[1] += k;
			aword0[2] += j;
			aword0[3] += k;
			return;
		}
	}

	public static final boolean a(int j, int k, int l, int i1, int j1, int k1)
	{
		if (l > j1)
		{
			if (j > l || j < j1)
				return false;
		} else
		if (j < l || j > j1)
			return false;
		if (i1 > k1)
		{
			if (k > i1 || k < k1)
				return false;
		} else
		if (k < i1 || k > k1)
			return false;
		return true;
	}

	public static final boolean a(short aword0[], short aword1[])
	{
		if (aword0 == null || aword1 == null)
			return false;
		return aword0[0] <= aword1[2] && aword1[0] <= aword0[2] && aword0[1] <= aword1[3] && aword1[1] <= aword0[3];
	}

	public static final void a(Graphics g1, Image image, String s, int ai[])
	{
		int j = image.getWidth() / 11;
		int k = image.getHeight();
		int l = ai[1];
		int i1 = ai[2];
		for (int j1 = 0; j1 < s.length(); j1++)
		{
			int k1 = 0;
			switch (s.charAt(j1))
			{
			case 45: // '-'
				k1 = 10;
				break;

			default:
				k1 = s.charAt(j1) - 48;
				break;
			}
			g1.setClip(l + j1 * j, i1, j, k);
			g1.drawImage(image, (l + j1 * j) - k1 * j, i1, 20);
		}

		g1.setClip(0, 0, 240, 320);
	}

	public static final void a(Graphics g1, String s, int j, int k, int l, int i1)
	{
		if (s == null || s == "")
			return;
		if (!c.equals(s))
		{
			b = 0;
			c = s;
		}
		g1.setClip(j, k, l - 3, i1);
		g1.drawString(s, j - b, k, 20);
		b += 6;
		if (b > h.a.stringWidth(s))
			b = -l;
		g1.setClip(0, 0, 240, 320);
	}

	public static final int c(int j, int k)
	{
		if (j == 0 && k == 0)
			return 0;
		int l = j < 0 ? -j : j;
		int i1 = k < 0 ? -k : k;
		int j1;
		int k1;
		if (l >= i1)
		{
			j1 = g(k1 = (i1 << 12) / l);
		} else
		{
			int l1;
			j1 = g(l1 = (l << 12) / i1);
			j1 = 64 - j1;
		}
		if (j >= 0)
			if (k >= 0)
				return j1;
			else
				return 256 - j1;
		if (k >= 0)
			return 128 - j1;
		else
			return 128 + j1;
	}

	private static final int g(int j)
	{
		int k = 0;
		int l = 32;
		int i1 = 16;
		for (int j1 = 16; j1 > 0;)
		{
			j1 >>= 1;
			if (d[i1] > j)
			{
				l = i1;
				i1 -= j1;
			} else
			{
				k = i1;
				i1 += j1;
			}
		}

		if (d[l] - j < j - d[k])
			return l;
		else
			return k;
	}

	public static final int d(int j, int k)
	{
		int l;
		if ((l = k) >= 128)
			l = 256 - l;
		if (l > 64)
			l = 128 - l;
		int i1 = j * f[l] >> 12;
		if (k <= 64 || k >= 192)
			return i1;
		else
			return -i1;
	}

	public static final int e(int j, int k)
	{
		int l;
		if ((l = k) >= 128)
			l = 256 - l;
		if (l > 64)
			l = 128 - l;
		int i1 = j * e[l] >> 12;
		if (k <= 128)
			return i1;
		else
			return -i1;
	}

	public static final int f(int j, int k)
	{
		int l = j < 0 ? -j : j;
		int i1 = k < 0 ? -k : k;
		int j1 = l <= i1 ? l : i1;
		return j1 = ((l + i1) - (j1 >> 1) - (j1 >> 2)) + (j1 >> 3);
	}

	public static final int c(int j)
	{
		if (j <= 0)
			return 0;
		int k;
		int l;
		for (k = j; (k = (l = k) + j / l >> 1) < l && k > 0;);
		return k;
	}

	public static final void b(short aword0[], int j, int k)
	{
		short word0 = aword0[j];
		aword0[j] = aword0[k];
		aword0[k] = word0;
	}

	public static final Player b(String s)
	{
		return null;
	}

	public static final boolean a(int j, int k, int l, int i1)
	{
		int j1 = j / i.d();
		int k1 = k / i.e();
		int l1 = l / i.d();
		int i2 = i1 / i.e();
		return j1 == l1 && k1 == i2;
	}

	public static final boolean a(int j, int k, int l, int i1, int j1, int k1, int l1)
	{
		int i2 = k1 - k;
		int j2 = l1 - l;
		if (c(Math.abs(i2 * i2) + Math.abs(j2 * j2)) > j1)
			return false;
		int k2 = c(i2, j2);
		int l2;
		if ((l2 = j - k2) < 0)
			l2 = -l2;
		if (l2 > 128)
			l2 = 256 - l2;
		return l2 <= i1 >> 1;
	}

	public static final int a(Graphics g1, String s, int j, int k, int l, int i1, int j1, int k1)
	{
		boolean flag = false;
		String s1 = null;
		int l1 = 0;
		int i2 = k;
		int j2 = l;
		int k2 = i1;
		boolean flag1 = false;
		int l2 = 0;
		int i3 = j1;
		boolean flag2 = false;
		int j3 = 0;
		boolean flag3 = false;
		if (k2 <= 0 || i3 <= 0)
			return 0;
		for (int j4 = 0; j4 < s.length(); j4++)
		{
			l1 += g1.getFont().charWidth(s.charAt(j4));
			if (s.charAt(j4) == '&')
			{
				int k3 = j4 - 1;
				s1 = s.substring(j3, k3 + 1);
				j3 = j4 + 1;
				l1 = 0;
			} else
			if (l1 > k2)
			{
				int l3 = --j4;
				s1 = s.substring(j3, l3 + 1);
				l1 = 0;
				j3 = j4 + 1;
			} else
			if (j4 == s.length() - 1)
			{
				int i4 = j4;
				s1 = s.substring(j3, i4 + 1);
				l1 = 0;
			}
			if (s1 == null)
				continue;
			g1.setClip(k, l, i1, j1);
			switch (k1)
			{
			case 17: // '\021'
				i2 = k + i1 / 2;
				g1.drawString(s1, i2, j2 + j, k1);
				break;

			case 20: // '\024'
				g1.drawString(s1, i2, j2 + j, k1);
				break;
			}
			l2 = j2 += g1.getFont().getHeight() + 2;
			s1 = null;
			g1.setClip(0, 0, 240, 320);
		}

		return l2 - l;
	}

	public static final int a(Graphics g1, String s, int j, int ai[], int k)
	{
		return a(g1, s, j, ai[1], ai[2], ai[3], ai[4], k);
	}

	public static final int d(int j)
	{
		return j >> 16 & 0xff;
	}

	public static final int e(int j)
	{
		return j >> 8 & 0xff;
	}

	public static final int f(int j)
	{
		return j >> 0 & 0xff;
	}

	static 
	{
		String as[] = new String[5];
		as[0] = "(金)";
		as[1] = "(木)";
		as[2] = "(水)";
		as[3] = "(火)";
		as[4] = "(土)";
		byte abyte0[][] = new byte[5][];
		abyte0[0] = (new byte[] {
			1, 3, 2, 4
		});
		abyte0[1] = (new byte[] {
			4, 0, 3, 2
		});
		abyte0[2] = (new byte[] {
			3, 4, 1, 0
		});
		abyte0[3] = (new byte[] {
			0, 2, 4, 1
		});
		abyte0[4] = (new byte[] {
			2, 1, 0, 3
		});
	}
}

⌨️ 快捷键说明

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