贪吃蛇.jar
import java.io.IOException;
import java.util.Hashtable;
import java.util.Vector;
import javax.microedition.lcdui.Font;
import javax.microedition.lcdui.Graphics;
public class DCSnake extends i
{
private h jdField_a_of_type_H;
private h jdField_b_of_type_H;
private h jdField_c_of_type_H;
private boolean jdField_c_of_type_Boolean;
private boolean d;
private int jdField_a_of_type_Int;
private int jdField_b_of_type_Int;
private int jdField_c_of_type_Int;
private boolean e;
private f jdField_a_of_type_F;
private f jdField_b_of_type_F;
private f jdField_c_of_type_F;
public final void a(int paramInt)
{
if (!this.jdField_c_of_type_Boolean)
{
paramInt = this;
if (!this.d)
{
paramInt.jdField_a_of_type_Int = 6;
paramInt.jdField_b_of_type_Int = 0;
paramInt.d = true;
return;
}
if (paramInt.jdField_b_of_type_Int < paramInt.jdField_a_of_type_Int)
{
Object localObject1;
switch (paramInt.jdField_b_of_type_Int)
{
case 0:
a.a();
break;
case 1:
this = paramInt;
try
{
localObject1 = null;
localObject1 = Font.getFont(32, 0, 8);
Font localFont1 = Font.getFont(32, 1, 8);
Font localFont2 = Font.getFont(32, 1, 0);
this.jdField_a_of_type_F = new f((Font)localObject1, 0, -1);
this.jdField_b_of_type_F = new f(localFont1, 16777215, 0);
this.jdField_c_of_type_F = new f(localFont2, 16776960, 32768);
t.a(this.jdField_c_of_type_F, this.jdField_a_of_type_F, this.jdField_b_of_type_F);
}
catch (IOException localIOException)
{
}
case 2:
localObject1 = a.a(new int[] { 1245188, 1245190, 1245189 });
v[] arrayOfv = a.a(new int[] { 1245191, 1245193, 1245192 });
t.a(new c(localObject1, true), new c(arrayOfv, true));
break;
case 3:
paramInt.jdField_a_of_type_H = new h(851968, new m(paramInt, paramInt.jdField_c_of_type_F, paramInt.jdField_b_of_type_F));
break;
case 4:
paramInt.b();
break;
case 5:
for (int i2 = 0; i2 < a.a(); i2++)
a.c();
}
paramInt.jdField_b_of_type_Int += 1;
return;
}
paramInt.jdField_c_of_type_Boolean = true;
paramInt.d = false;
paramInt.jdField_c_of_type_H = paramInt.jdField_a_of_type_H;
paramInt.a();
return;
}
if (this.jdField_c_of_type_H != this.jdField_b_of_type_H)
this.jdField_b_of_type_H = this.jdField_c_of_type_H;
if (this.jdField_b_of_type_H != null)
{
int i = paramInt;
int j;
int i7;
if ((paramInt = this.jdField_b_of_type_H).g != 0)
{
i.jdField_b_of_type_Boolean = true;
if (paramInt.g == 3)
{
if ((j = paramInt).d < j.jdField_c_of_type_Int)
{
long l1 = System.currentTimeMillis();
do
{
if (j.jdField_a_of_type_Boolean)
{
a.c();
}
else if ((paramInt = j.d) < j.e)
{
k = j.jdField_b_of_type_ArrayOfByte[j.jdField_b_of_type_Int];
j.jdField_a_of_type_M.a(k, paramInt);
}
else if (paramInt -= j.e < j.f)
{
j.jdField_a_of_type_M.b(j.jdField_b_of_type_Int, paramInt);
}
else
{
paramInt -= j.f;
k = j.jdField_b_of_type_ArrayOfShort[paramInt];
paramInt = j;
if (h.jdField_a_of_type_JavaUtilHashtable == null)
h.jdField_a_of_type_JavaUtilHashtable = new Hashtable();
byte[] arrayOfByte = paramInt.jdField_a_of_type_ArrayOfByte;
int i12 = paramInt.jdField_a_of_type_ArrayOfShort[k];
m = arrayOfByte[(i12++)];
Vector localVector = new Vector();
javax.microedition.lcdui.Image[][] arrayOfImage; = new javax.microedition.lcdui.Image[1][];
c[] arrayOfc = new c[1];
int i4 = arrayOfByte[(i12++)];
int i6 = arrayOfByte[(i12++)];
t localt = new t();
paramInt.jdField_a_of_type_M.a(k, localt, 0);
paramInt.jdField_a_of_type_M.a(k, localt, i4, m, i6);
i4 = arrayOfByte[(i12++)];
m.a(localt, i4);
i6 = h.a(arrayOfByte, i12);
i12 += 4;
String str = paramInt.jdField_a_of_type_M.a(k, i6, -1);
i12 = h.a(arrayOfByte, i12, 1, arrayOfImage;, arrayOfc);
javax.microedition.lcdui.Image localImage = arrayOfImage;[0] == null ? null : arrayOfImage;[0][0];
c localc1 = arrayOfc[0];
i6 = arrayOfByte[(i12++)];
if ((str != null) || (localc1 != null) || (localImage != null))
if (localc1 != null)
m.a(localt, str, localc1, i6);
else
m.a(localt, str, localImage, i6);
int i5 = arrayOfByte[(i12++)];
if ((i6 = arrayOfByte[(i12++)] & 0xFF) != 255)
{
localVector.addElement(new Integer(i5));
localVector.addElement(new Integer(i6));
}
m.a(localt, i5, 0);
i5 = arrayOfByte[(i12++)];
if ((i6 = arrayOfByte[(i12++)] & 0xFF) != 255)
{
localVector.addElement(new Integer(i5));
localVector.addElement(new Integer(i6));
}
m.a(localt, i5, 1);
for (int i8 = 0; i8 < m; i8++)
{
int i9;
[Ljavax.microedition.lcdui.Image localImage;1;
switch (i9 = arrayOfByte[(i12++)])
{
case 0:
i6 = h.a(arrayOfByte, i12);
i12 += 4;
str = paramInt.jdField_a_of_type_M.a(k, i6, i8);
i12 = h.a(arrayOfByte, i12, 3, arrayOfImage;, arrayOfc);
localImage;1 = arrayOfImage;[0];
localc1 = arrayOfc[0];
i6 = h.a(arrayOfByte[(i12++)]);
paramInt.jdField_a_of_type_M.a(k, localt, i8, i9, str, localc1, localImage;1, i6);
break;
case 1:
i6 = h.a(arrayOfByte, i12);
i12 += 4;
str = paramInt.jdField_a_of_type_M.a(k, i6, i8);
i12 = h.a(arrayOfByte, i12, 4, arrayOfImage;, arrayOfc);
localImage;1 = arrayOfImage;[0];
localc1 = arrayOfc[0];
String[] arrayOfString = new String[i9 = arrayOfByte[(i12++)]];
for (int i11 = 0; i11 < i9; i11++)
{
i6 = h.a(arrayOfByte, i12);
i12 += 4;
arrayOfString[i11] = paramInt.jdField_a_of_type_M.a(k, i6, i8);
}
i12 = h.a(arrayOfByte, i12, i9, arrayOfImage;, arrayOfc);
[Ljavax.microedition.lcdui.Image localImage;2 = arrayOfImage;[0];
c localc2 = arrayOfc[0];
i6 = h.a(arrayOfByte[(i12++)]);
paramInt.jdField_a_of_type_M.a(k, localt, i8, str, localc1, localImage;1, arrayOfString, localc2, localImage;2, i6);
break;
case 2:
i12 += 4;
i12 = h.a(arrayOfByte, i12, 4, arrayOfImage;, arrayOfc);
i12 += 3;
break;
case 3:
i12 += 9;
i12 = h.a(arrayOfByte, i12, 3, arrayOfImage;, arrayOfc);
i12 += 2;
break;
case 4:
i6 = h.a(arrayOfByte, i12);
i12 += 4;
str = paramInt.jdField_a_of_type_M.a(k, i6, i8);
i12 = h.a(arrayOfByte, i12, 1, arrayOfImage;, arrayOfc);
localImage;1 = arrayOfImage;[0];
localc1 = arrayOfc[0];
paramInt.jdField_a_of_type_M.a(k, localt, i8, 1, str, localc1, localImage;1, -1);
}
}
paramInt.jdField_a_of_type_M.a(k, localt, 1);
paramInt.jdField_a_of_type_M.a(k, localt);
localt.b(0);
paramInt.jdField_a_of_type_ArrayOfT[k] = localt;
if (localVector.size() > 0)
{
short[] arrayOfShort2 = new short[localVector.size()];
for (int i10 = 0; i10 < localVector.size(); i10++)
arrayOfShort2[i10] = (short)((Integer)localVector.elementAt(i10)).intValue();
paramInt.jdField_a_of_type_Array2dOfShort[k] = arrayOfShort2;
}
}
j.d += 1;
paramInt = (int)(System.currentTimeMillis() - l1);
}
while ((j.d < j.jdField_c_of_type_Int) && (paramInt < 50));
break label1789;
}
if ((!j.jdField_a_of_type_Boolean) && ((i7 = a.a()) > 0))
{
j.d = 0;
j.jdField_c_of_type_Int = i7;
j.jdField_a_of_type_Boolean = true;
break label1789;
}
paramInt = j;
long l2 = System.currentTimeMillis();
if (!paramInt.jdField_b_of_type_Boolean)
{
paramInt.jdField_b_of_type_Boolean = true;
paramInt.jdField_a_of_type_Long = l2;
}
int m = 0;
paramInt.jdField_b_of_type_Boolean = false;
if (((int)(l2 - paramInt.jdField_a_of_type_Long) < 150 ? 0 : 1) != 0)
j.a();
break label1789;
}
}
else if (paramInt.jdField_b_of_type_Int != -1)
{
i.jdField_b_of_type_Boolean = true;
paramInt.b();
break label1789;
}
int k = paramInt.jdField_a_of_type_M.a(paramInt.jdField_a_of_type_Int, j);
paramInt.a(k);
if (paramInt.jdField_a_of_type_T != null)
{
Object localObject2 = paramInt.jdField_a_of_type_T.a(j);
paramInt.jdField_c_of_type_ArrayOfByte[paramInt.jdField_a_of_type_Int] = (byte)paramInt.jdField_a_of_type_T.f();
if (localObject2 != null)
if (localObject2[0] == 1)
{
paramInt.a(localObject2[1]);
}
else if (localObject2[0] == 0)
{
k = 0;
short[] arrayOfShort1;
if ((arrayOfShort1 = paramInt.jdField_a_of_type_Array2dOfShort[paramInt.jdField_a_of_type_Int]) != null)
{
int n = 0;
while (n < arrayOfShort1.length)
{
int i1 = arrayOfShort1[(n++)];
int i3 = arrayOfShort1[(n++)];
if (i1 != localObject2[1])
continue;
paramInt.a(i3);
k = 1;
}
}
if (k == 0)
{
i7 = localObject2[1];
localObject2 = paramInt;
if ((i7 != -1) && (j.b(i7) == 2))
((h)localObject2).a(-3);
}
}
}
label1789: if (this.jdField_c_of_type_Int != -1)
this.jdField_c_of_type_Int = this.jdField_b_of_type_H.a();
}
}
private void b()
{
if (this.e)
return;
byte[] arrayOfByte;
int i = (arrayOfByte = j.a(1507333)).length;
int j = 0;
while (j < i)
{
int k = arrayOfByte[(j++)];
int m = h.a(arrayOfByte, j);
j += 4;
j++;
int n = h.a(arrayOfByte, j);
j += 4;
int i1 = arrayOfByte[(j++)];
javax.microedition.lcdui.Image localImage = null;
if (n != -1)
localImage = j.a(n);
j.a(k, m, localImage, i1);
}
this.e = true;
}
public final void a(Graphics paramGraphics)
{
if (this.d)
{
a(paramGraphics, this.jdField_b_of_type_Int * 50 / this.jdField_a_of_type_Int);
return;
}
if (this.jdField_b_of_type_H != null)
{
if (this.jdField_c_of_type_Int != -1)
{
a(paramGraphics, 50 + (this.jdField_c_of_type_Int >> 1));
return;
}
if ((this = this.jdField_b_of_type_H).a())
{
m.a(paramGraphics, a());
return;
}
this.jdField_a_of_type_M.a(this.jdField_a_of_type_Int, paramGraphics);
if (this.jdField_a_of_type_T != null)
this.jdField_a_of_type_M.a(this.jdField_a_of_type_Int, paramGraphics, this.jdField_a_of_type_T);
}
}
public final void a(int paramInt1, int paramInt2)
{
if (this.d)
return;
if (this.jdField_b_of_type_H != null)
{
paramInt1 = paramInt1;
h localh;
if ((((localh = this = this.jdField_b_of_type_H).g != 0) && (localh.g != 5) ? 1 : 0) == 0)
{
if (this.jdField_a_of_type_T != null)
this.jdField_a_of_type_T.c(paramInt1, paramInt2);
if (this.jdField_a_of_type_M != null)
this.jdField_a_of_type_M.a(this.jdField_a_of_type_Int, paramInt1, paramInt2);
}
}
}
public final void b(int paramInt)
{
if (this.d)
return;
if (this.jdField_b_of_type_H != null)
{
if (paramInt == 1)
{
if (!(this = this.jdField_b_of_type_H).a())
this.jdField_a_of_type_M.a();
return;
}
if (paramInt == 5)
this.jdField_b_of_type_H.jdField_a_of_type_M.b();
}
}
public final void c(int paramInt)
{
if (this.jdField_c_of_type_Boolean)
{
h localh = null;
(localh = this.jdField_a_of_type_H).jdField_c_of_type_Boolean = true;
if (localh.jdField_b_of_type_Int == -1)
localh.jdField_b_of_type_Int = localh.jdField_a_of_type_Int;
if (localh.g != 0)
{
localh.g = 1;
localh.b();
}
}
j.a(paramInt);
this.e = false;
b();
}
private static void a(Graphics paramGraphics, int paramInt)
{
paramGraphics.setColor(16777215);
paramGraphics.fillRect(0, 0, 176, 204);
paramInt = paramInt * 84 / 100;
paramGraphics.setColor(0);
paramGraphics.drawRect(44, 98, 87, 6);
paramGraphics.fillRect(46, 100, paramInt, 3);
}
}
1