📄 i.java
字号:
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 + -