k.java

来自「很好的3款手机游戏源码」· Java 代码 · 共 981 行 · 第 1/2 页

JAVA
981
字号
// 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 javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

public class k
	implements d
{

	private int ds;
	public static int dd;
	private int dM;
	private int df;
	public int dh;
	public boolean dU;
	private static byte dX;
	private c dg;
	private a c4;
	private a c3;
	public Image dK;
	private Image de;
	private Image c8;
	private Image dW;
	private Image dQ;
	private String dt[];
	private int dA;
	public int dz;
	private int dD;
	private int dR;
	private int dC[];
	private int dc;
	public static byte c6 = 1;
	private boolean dx;
	public static int dl;
	private static int du = 50;
	public int dn[];
	private int c5;
	public int dN;
	private int dy;
	public a dY;
	public a c7;
	private boolean dP;
	public int dr;
	private int dH;
	private int db[];
	private int c9;
	private int dV;
	private int dO;
	private int dF;
	private int dE;
	public static boolean da;
	private a dJ;
	private a dv;
	private int dk;
	private boolean di;
	public boolean dp;
	public a dT;
	private static int dI;
	public byte dG[][] = {
		{
			0, 0, 0, 1, 1, 1
		}, {
			0, 0, 0, 1, 1, 1
		}, {
			0, 0, 0, 1, 1, 1
		}, {
			0, 0, 0, 1, 1, 1
		}, {
			0, 0, 0, 1, 1, 1
		}, {
			0, 0, 0, 1, 1, 1
		}, {
			0, 0, 0, 1, 1, 1
		}
	};
	public int dm[][] = {
		{
			44, 44
		}, {
			44, 44
		}, {
			43, 49
		}, {
			43, 49
		}, {
			32, 44
		}, {
			47, 44
		}, {
			35, 55
		}
	};
	private int dB[] = {
		0, 1, 2, 0, 1, 2
	};
	private int dw[][] = {
		{
			120, 120
		}, {
			55, 85
		}, {
			140, 80
		}
	};
	private byte dS[][] = {
		{
			20, 10
		}, {
			20, 10
		}, {
			20, 3
		}, {
			5, 1
		}, {
			6, 1
		}
	};
	private final int dj[][] = {
		{
			1, 999
		}, {
			0, 999
		}, {
			0, 999
		}, {
			0, 99
		}, {
			0, 99
		}
	};
	public final int dq[] = {
		70, 120, 180, 240, 320, 400, 500, 600, 750, 900, 
		1100, 1350, 1600, 1900, 2200, 2500, 3000, 3500, 4000, 5000, 
		0xf423f
	};
	private static int dL[] = {
		200, 100, 20, 20, 20
	};

	public k(c c1)
	{
		ds = 0;
		dd = 0;
		df = 0;
		dh = 0;
		dA = 0;
		dD = 0;
		dR = 1;
		dc = 0;
		dx = true;
		dl = 0;
		c5 = 0;
		dN = 0;
		dP = true;
		db = new int[7];
		c9 = 0;
		dg = c1;
		dX = 0;
		dg.bm = 0;
		de = c.a("/images/warmenu.png");
		c4 = new a(c.a("/images/attackeffect.png"), 49, 34);
		c4.void(19, 34);
		c4.a(new byte[][] {
			new byte[] {
				0, 1, 2, 3
			}, new byte[] {
				4, 5, 6, 7
			}, new byte[] {
				8, 9, 10, 11
			}
		}, new byte[] {
			2, 2, 2
		});
		c3 = new a(c.a("/images/fight.png"), 38, 40);
		c3.a(new byte[][] {
			new byte[] {
				0, 0, 0, 1, 1, 2, 2, 0
			}, new byte[] {
				0, 1, 1, 1, 2, 2, 2, 2
			}
		}, new byte[] {
			1, 2
		});
		c3.void(19, 40);
		c8 = c.a("/images/PNG24.png");
		dW = c.a("/images/PNG24-0.png");
		dQ = c.a("/images/P24-white.png");
	}

	public void a(byte abyte0[], boolean flag, byte byte0)
	{
		k  = this;
		c.aq = true;
		dU = flag;
		int i = c.d(abyte0.length);
		s(abyte0[i]);
		dd = 1;
		ds = 0;
		dV = 0;
		dX = byte0;
		k 1 = this;
		c.bO = true;
		dg.if((byte)5);
	}

	public void J()
	{
		if (j.cU)
		{
			dd = 8;
			dk = 10;
		} else
		{
			dd = 7;
			dk = 0;
		}
		dJ = null;
		dv = null;
		dJ = new a(c.a("/images/pet.png"), 30, 26);
		dJ.void(15, 26);
		dv = new a(c.a("/images/pet1.png"), 30, 92);
		dv.void(15, 92);
		dv.a(new byte[][] {
			new byte[] {
				0, 0, 1, 1, 1
			}
		}, new byte[] {
			2
		});
	}

	public void p(Graphics g)
	{
		if (dK != null)
		{
			g.drawImage(dK, 0, 2, 0);
		} else
		{
			g.setColor(0, 0, 0);
			g.fillRect(0, 0, 176, 208);
		}
		dg.case(g);
		if (dd != 6)
			n(g);
		switch (dd)
		{
		default:
			break;

		case 0: // '\0'
			if (j.cU && da)
				c3.try(g, dw[0][0], dw[0][1], 3);
			else
				byte(g, dw[0][0], dw[0][1]);
			try(g, dw[1][0], dw[1][1]);
			if (da)
				new(g, dw[2][0], dw[2][1]);
			break;

		case 1: // '\001'
			byte(g, dw[0][0], dw[0][1]);
			g.setColor(0xba06e3);
			g.drawImage(de, 1, 135, 0);
			g.drawRect(df * 23, 135, 22, 22);
			for (int i = 0; i < 4; i++)
				if (i != df)
					g.drawImage(dQ, i * 23 + 2, 137, 0);

			try(g, dw[1][0], dw[1][1]);
			if (da)
				new(g, dw[2][0], dw[2][1]);
			c5 = 0;
			break;

		case 2: // '\002'
			try(g, dw[1][0], dw[1][1]);
			if (da)
				new(g, dw[2][0], dw[2][1]);
			do(g, dw[0][0], dw[0][1], c5);
			c5++;
			if (dM >= 0)
			{
				c4.new(g, dw[1][0], dw[1][1], dM);
				c4.F(dM);
			}
			break;

		case 3: // '\003'
			if (j.cU && da)
				c3.try(g, dw[0][0], dw[0][1], 3);
			else
				byte(g, dw[0][0], dw[0][1]);
			if (da)
				new(g, dw[2][0], dw[2][1]);
			if (ds >= 10 && ds < 19)
				int(g, dw[1][0], dw[1][1], ds - 10);
			else
				try(g, dw[1][0], dw[1][1]);
			break;

		case 4: // '\004'
			byte(g, dw[0][0], dw[0][1]);
			try(g, dw[1][0], dw[1][1]);
			if (da)
				new(g, dw[2][0], dw[2][1]);
			c.aw.a(g, 1, dz, dD, dC);
			b.M.try(g, 36, 16, 3);
			break;

		case 5: // '\005'
			byte(g, dw[0][0], dw[0][1]);
			try(g, dw[1][0], dw[1][1]);
			if (da)
				new(g, dw[2][0], dw[2][1]);
			c.aw.a(g, 0, dz, dD, dC);
			if (dC.length > 0)
			{
				if (dz < dC.length && c.aw.L[dC[dz]] > 0)
					c.aw.a(g, dC[dz], 0);
				if (c.aw.L[dC[dz]] != 0)
					dg.do(g, 7, -1);
			}
			b.M.try(g, 36, 16, 4);
			dg.do(g, -1, 4);
			break;

		case 6: // '\006'
			try(g, dw[1][0], dw[1][1]);
			byte(g, dw[0][0], dw[0][1]);
			if (da)
				new(g, dw[2][0], dw[2][1]);
			for (int l = 0; l < 7; l++)
			{
				for (int i1 = 0; i1 < 8; i1++)
					if (dh == 1)
						g.drawImage(c8, 30 + l * 16, 20 + i1 * 16, 0);
					else
						g.drawImage(dW, 30 + l * 16, 20 + i1 * 16, 0);

			}

			g.setColor(0xffffff);
			for (int j1 = 0; j1 < dA; j1++)
				g.drawString(dt[j1], 30, 20 + 20 * j1, 0);

			break;

		case 7: // '\007'
			byte(g, dw[0][0], dw[0][1]);
			try(g, dw[1][0], dw[1][1]);
			dJ.try(g, dw[2][0], (dw[2][1] + 20) - dk * 2, 0);
			break;

		case 8: // '\b'
			if (j.cU && da)
				c3.try(g, dw[0][0], dw[0][1], 3);
			else
				byte(g, dw[0][0], dw[0][1]);
			try(g, dw[1][0], dw[1][1]);
			if (dk > 0 && dk < 8)
				for(g, dw[2][0], dw[2][1], dk);
			else
				new(g, dw[2][0], dw[2][1]);
			break;
		}
		o(g);
	}

	public void N()
	{
		switch (dd)
		{
		case 1: // '\001'
		case 4: // '\004'
		case 5: // '\005'
		default:
			break;

		case 0: // '\0'
			ds++;
			if (ds >= 30)
			{
				ds = 0;
				dd = 3;
			}
			break;

		case 2: // '\002'
			if (ds == 4)
				u(z(dc));
			ds++;
			if (ds < 8)
				break;
			dd = 0;
			ds = 28;
			if (!dP)
				A(1);
			break;

		case 3: // '\003'
			ds++;
			if (ds == 14)
				w(db[4]);
			if (ds != 19)
				break;
			if (da)
				dd = 8;
			else
				dd = 1;
			if (!dx)
				A(2);
			break;

		case 7: // '\007'
			if (dk < 10)
			{
				dk++;
			} else
			{
				dd = 1;
				dk = 0;
			}
			break;

		case 8: // '\b'
			dk++;
			if (dk == 4)
				u(F());
			if (dk < 8)
				break;
			if (j.cU)
				dd = 0;
			else
				dd = 1;
			if (!dP)
				A(1);
			break;

		case 6: // '\006'
			dI++;
			if (dI > 100)
				dI = 11;
			break;
		}
	}

	private void A(int i)
	{
		dd = 6;
		dh = i;
		ds = 0;
		dt = new String[10];
		dt[0] = dh == 1 ? "战斗胜利" : dh == 2 ? "战斗失败" : "逃离成功";
		dA = 1;
		if (dh == 1)
		{
			dt[dA] = "获得" + dH + "点经验值";
			if (B(dH))
			{
				dA++;
				dt[dA] = "恭喜你升级啦";
			}
			int l = c.d((c9 + 1) * 10);
			if (l > 0)
			{
				v(l);
				dA++;
				dt[dA] = "获得" + l + "文钱";
			}
			int i1 = c.bu.null[dr][c.d(c.bu.null[dr].length)];
			if (i1 >= 0 && c.byte(50))
			{
				c.aw.L[i1]++;
				if (c.aw.L[i1] > 99)
					c.aw.L[i1] = 99;
				dA++;
				dt[dA] = "获得" + c.bu.goto[i1];
			}
			dA++;
		}
	}

	private void x(int i)
	{
		if (dd == 1)
			df = (df + 4 + i / 2) % 4;
		if (dd == 4 || dd == 5)
			if (i == -1 && dz > 0)
			{

⌨️ 快捷键说明

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