📄 d.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi
public final class d
{
public short a;
public short b;
public int a;
public int b;
public int c;
public int d;
public k a;
public int e;
public int f;
public int g;
public int h;
public int i;
public int j;
public int k;
public int l;
public int m;
public boolean a;
public byte a;
public int n;
public int o;
public s a;
public int p;
public int q;
public int r;
public int s;
public int t;
public int u;
public int v;
public int w;
public int x;
public int y;
public int z;
public int A;
public static int a[] = new int[4];
public d()
{
}
public final void a(k k1, int i1, int j1, int l1)
{
a = k1;
if(aa.a != null)
a = aa.a.a;
j = 0;
k = 0;
if(aa.a != null && aa.a.p == 1)
k += 30;
h = (aa.o >> 1) - 88;
i = (aa.p >> 1) - 101;
e = i1;
c = j1;
d = l1;
if(i1 == -1)
{
a = (short)((aa.o >> 1) + j);
b = (short)((aa.p >> 1) + k);
} else
{
a = (short)(aa.a(k1.a[i1]) + h + j);
b = (short)(aa.b(k1.a[i1]) + i + k);
}
a = a << 6;
b = b << 6;
q = 0;
m = 500;
o = 5;
f = 0;
p = 0;
r = 100;
s = -1;
}
private void a()
{
e e1 = aa.a;
f = 0;
int i1 = (e1.i >> 1) + j;
int j1 = (e1.j >> 1) + k;
if(b <= j1 - 27)
{
n = a(3);
if(n != -1)
{
f = 3;
return;
}
} else
if(b >= (j1 + 27) - 3)
{
n = a(4);
if(n != -1)
{
f = 4;
return;
}
}
if(a <= (i1 - 27) + 3)
{
n = a(1);
if(n != -1)
{
f = 1;
return;
}
} else
if(a >= (i1 + 27) - 3)
{
n = a(2);
if(n != -1)
{
f = 2;
return;
}
}
}
private int a(int i1)
{
e e1;
int j1 = ((e1 = aa.a.a).i >> 1) + j;
int k1 = (e1.j >> 1) + k;
int l1 = -1;
int i2 = -1;
if(i1 == 3)
{
l1 = j1;
i2 = k1 - 27 - 15;
} else
if(i1 == 4)
{
l1 = j1;
i2 = k1 + 27 + 15;
} else
if(i1 == 1)
{
l1 = j1 - 27 - 15;
i2 = k1;
} else
if(i1 == 2)
{
l1 = j1 + 27 + 15;
i2 = k1;
}
if(l1 != -1 || i2 != -1)
{
if((a - l1) * (a - l1) + (b - i2) * (b - i2) <= 49)
return 2;
if((a - l1) * (a - l1) + (b - i2) * (b - i2) <= 225)
return 1;
}
return -1;
}
public final void a(int i1)
{
if(f == 0)
p = 0;
g = f;
if(e == -1)
c(i1);
else
b(i1);
a();
m += i1;
if(m >= 500)
m = 500;
o++;
if(o > 13)
o = 10;
}
public final void a(e e1)
{
g g1 = aa.a[9];
int i1 = (e1.i - 31 >> 1) + j;
int j1 = (e1.j - 31 >> 1) + k;
byte byte0 = 0;
if(m < 500)
byte0 = a ? 1 : 3;
g1.a(22 + byte0, i1, j1, 0, e1, true, 0);
}
public final void a(e e1, boolean flag)
{
g g1 = aa.a[9];
int i1 = (e1.i >> 1) + j;
int j1 = (e1.j >> 1) + k;
if(flag)
{
byte byte0 = 0;
byte byte1 = 0;
byte byte2 = 0;
byte byte3 = 0;
if(m < 500)
if(a)
{
byte0 = l != 1 ? 0 : a;
byte1 = l != 2 ? 0 : a;
byte2 = l != 3 ? 0 : a;
byte3 = l != 4 ? 0 : a;
} else
{
byte0 = 3;
byte1 = 3;
byte2 = 3;
byte3 = 3;
}
int k1 = i1 - 27 - 31;
int l1 = j1 - 15;
g1.a(22 + byte0, k1, l1, 0, e1, true, 0);
k1 = i1 + 27;
l1 = j1 - 15;
g1.a(22 + byte1, k1, l1, 0, e1, true, 0);
k1 = i1 - 15;
l1 = j1 - 27 - 31;
g1.a(22 + byte2, k1, l1, 0, e1, true, 0);
k1 = i1 - 15;
l1 = j1 + 27;
g1.a(22 + byte3, k1, l1, 0, e1, true, 0);
}
short word0 = a;
short word1 = b;
g1.a(10, word0 - 30, word1 - 2, 0, e1, true, 0);
g g2 = aa.a[2];
if(m < 500 && a)
{
g2.a(0, o, (word0 + e1.a) - 18, (word1 + e1.b) - 17, 4, e1);
return;
}
if(m < 500 && !a)
{
return;
} else
{
g2.a(0, o, (word0 + e1.a) - 18, (word1 + e1.b) - 17, 2, e1);
return;
}
}
private void b(int i1)
{
int j1 = a.a;
int k1 = (a.a[e] * r) / 100;
if(d == -1)
k1 = (a.a[((j1 + e) - 1) % j1] * r) / 100;
for(q += i1; q >= k1;)
{
q -= k1;
e += d;
e = (j1 + e) % j1;
}
int l1 = a(e, q, k1);
a = aa.a(l1);
b = aa.b(l1);
a = (short)(a >> 6);
b = (short)(b >> 6);
}
private static int a(int i1, int j1)
{
return i1 * j1 >> 6;
}
private static int b(int i1)
{
return i1 << 1;
}
private static int c(int i1)
{
return (i1 << 1) + i1;
}
private static int d(int i1)
{
return i1 << 2;
}
private static int e(int i1)
{
return (i1 << 2) + i1;
}
private int a(int i1, int j1, int k1)
{
if(s != i1)
{
s = i1;
int l1 = a.a;
if(d == 1)
{
a[0] = a.a[((l1 + i1) - 1) % l1];
a[1] = a.a[(l1 + i1) % l1];
a[2] = a.a[(l1 + i1 + 1) % l1];
a[3] = a.a[(l1 + i1 + 2) % l1];
} else
{
a[0] = a.a[(l1 + i1 + 1) % l1];
a[1] = a.a[(l1 + i1) % l1];
a[2] = a.a[((l1 + i1) - 1) % l1];
a[3] = a.a[((l1 + i1) - 2) % l1];
}
t = ((-aa.a(a[0]) + c(aa.a(a[1]))) - c(aa.a(a[2]))) + aa.a(a[3]) << 5;
u = ((b(aa.a(a[0])) - e(aa.a(a[1]))) + d(aa.a(a[2]))) - aa.a(a[3]) << 5;
v = -aa.a(a[0]) + aa.a(a[2]) << 5;
w = b(aa.a(a[1])) << 5;
x = ((-aa.b(a[0]) + c(aa.b(a[1]))) - c(aa.b(a[2]))) + aa.b(a[3]) << 5;
y = ((b(aa.b(a[0])) - e(aa.b(a[1]))) + d(aa.b(a[2]))) - aa.b(a[3]) << 5;
z = -aa.b(a[0]) + aa.b(a[2]) << 5;
A = b(aa.b(a[1])) << 5;
}
int i2 = (j1 << 6) / k1;
int j2;
return j2 = aa.a((short)(a(a(a(t, i2) + u, i2) + v, i2) + w + (j + h << 6)), (short)(a(a(a(x, i2) + y, i2) + z, i2) + A + (k + i << 6)));
}
private void c(int i1)
{
int j1;
int k1;
int l1;
int i2;
int k2;
int l2;
int i3;
int j3;
int k3;
j1 = (aa.o >> 1) + j << 6;
k1 = (aa.p >> 1) + k << 6;
l1 = aa.a(a.a[c]) + h + j << 6;
i2 = aa.b(a.a[c]) + i + k << 6;
int j2 = 192 * i1 >> 6;
k2 = l1 - j1;
l2 = i2 - k1;
if(k2 == 0 && l2 == 0)
break MISSING_BLOCK_LABEL_323;
i3 = j2;
j3 = k2 >= 0 ? k2 : -k2;
k3 = l2 >= 0 ? l2 : -l2;
if(j3 <= k3) goto _L2; else goto _L1
_L1:
a += k2 < 0 ? -i3 : i3;
this;
b;
(i3 * l2) / j3;
goto _L3
_L2:
a += (i3 * k2) / k3;
this;
b;
l2 < 0 ? -i3 : i3;
_L3:
JVM INSTR iadd ;
b;
int l3 = (a - j1) * (a - j1) + (b - k1) * (b - k1);
int i4 = (l1 - j1) * (l1 - j1) + (i2 - k1) * (i2 - k1);
if(l3 > i4)
{
a = l1;
b = i2;
e = c;
q = 0;
}
break MISSING_BLOCK_LABEL_346;
a = j1;
b = k1;
e = c;
q = 0;
a = (short)(a >> 6);
b = (short)(b >> 6);
return;
}
private void a(int i1, boolean flag)
{
l = i1;
m = 0;
a = flag;
}
public final int a()
{
int i1 = -1;
if(aa.a(16))
{
i1 = f;
aa.b(16);
}
if(i1 == -1)
return 0;
if(m < 500 && l == i1)
return 0;
if(i1 == f && f != 0)
{
a(i1, true);
a = (byte)n;
if(aa.a.p == 1 && ((q) (aa.a.a)).j == 16)
if(n == 1)
a.a(a - 6, b - 8, 8, 30, 700, 4, 10);
else
a.a(a - 6, b - 8, 25, 30, 700, 4, 10);
p = 1;
return 1;
} else
{
p = -1;
a(i1, false);
return -1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -