Files
2006Scape/2006Redone Client/src/DrawingArea.java
T
2019-06-18 15:04:35 -04:00

234 lines
4.9 KiB
Java

// Decompiled by Jad v1.5.8f. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
public class DrawingArea extends NodeSub {
public static void initDrawingArea(int i, int j, int ai[]) {
pixels = ai;
width = j;
height = i;
setDrawingArea(i, 0, j, 0);
}
public static void defaultDrawingAreaSize() {
topX = 0;
topY = 0;
bottomX = width;
bottomY = height;
centerX = bottomX - 1;
centerY = bottomX / 2;
}
public static void setDrawingArea(int i, int j, int k, int l) {
if (j < 0) {
j = 0;
}
if (l < 0) {
l = 0;
}
if (k > width) {
k = width;
}
if (i > height) {
i = height;
}
topX = j;
topY = l;
bottomX = k;
bottomY = i;
centerX = bottomX - 1;
centerY = bottomX / 2;
anInt1387 = bottomY / 2;
}
public static void setAllPixelsToZero() {
int i = width * height;
for (int j = 0; j < i; j++) {
pixels[j] = 0;
}
}
public static void method335(int i, int j, int k, int l, int i1, int k1) {
if (k1 < topX) {
k -= topX - k1;
k1 = topX;
}
if (j < topY) {
l -= topY - j;
j = topY;
}
if (k1 + k > bottomX) {
k = bottomX - k1;
}
if (j + l > bottomY) {
l = bottomY - j;
}
int l1 = 256 - i1;
int i2 = (i >> 16 & 0xff) * i1;
int j2 = (i >> 8 & 0xff) * i1;
int k2 = (i & 0xff) * i1;
int k3 = width - k;
int l3 = k1 + j * width;
for (int i4 = 0; i4 < l; i4++) {
for (int j4 = -k; j4 < 0; j4++) {
int l2 = (pixels[l3] >> 16 & 0xff) * l1;
int i3 = (pixels[l3] >> 8 & 0xff) * l1;
int j3 = (pixels[l3] & 0xff) * l1;
int k4 = (i2 + l2 >> 8 << 16) + (j2 + i3 >> 8 << 8) + (k2 + j3 >> 8);
pixels[l3++] = k4;
}
l3 += k3;
}
}
public static void method336(int i, int j, int l, int i1, int k) {
if (k < topX) {
i1 -= topX - k;
k = topX;
}
if (j < topY) {
i -= topY - j;
j = topY;
}
if (k + i1 > bottomX) {
i1 = bottomX - k;
}
if (j + i > bottomY) {
i = bottomY - j;
}
int k1 = width - i1;
int l1 = k + j * width;
for (int i2 = -i; i2 < 0; i2++) {
for (int j2 = -i1; j2 < 0; j2++) {
pixels[l1++] = l;
}
l1 += k1;
}
}
public static void fillPixels(int i1, int k, int l, int i, int j) {
method339(i1, l, j, i);
method339(i1 + k - 1, l, j, i);
method341(i1, l, k, i);
method341(i1, l, k, i + j - 1);
}
public static void method338(int i, int j, int k, int l, int i1, int j1) {
method340(l, i1, i, k, j1);
method340(l, i1, i + j - 1, k, j1);
if (j >= 3) {
method342(l, j1, k, i + 1, j - 2);
method342(l, j1 + i1 - 1, k, i + 1, j - 2);
}
}
public static void method339(int i, int j, int k, int l) {
if (i < topY || i >= bottomY) {
return;
}
if (l < topX) {
k -= topX - l;
l = topX;
}
if (l + k > bottomX) {
k = bottomX - l;
}
int i1 = l + i * width;
for (int j1 = 0; j1 < k; j1++) {
pixels[i1 + j1] = j;
}
}
private static void method340(int i, int j, int k, int l, int i1) {
if (k < topY || k >= bottomY) {
return;
}
if (i1 < topX) {
j -= topX - i1;
i1 = topX;
}
if (i1 + j > bottomX) {
j = bottomX - i1;
}
int j1 = 256 - l;
int k1 = (i >> 16 & 0xff) * l;
int l1 = (i >> 8 & 0xff) * l;
int i2 = (i & 0xff) * l;
int i3 = i1 + k * width;
for (int j3 = 0; j3 < j; j3++) {
int j2 = (pixels[i3] >> 16 & 0xff) * j1;
int k2 = (pixels[i3] >> 8 & 0xff) * j1;
int l2 = (pixels[i3] & 0xff) * j1;
int k3 = (k1 + j2 >> 8 << 16) + (l1 + k2 >> 8 << 8) + (i2 + l2 >> 8);
pixels[i3++] = k3;
}
}
public static void method341(int i, int j, int k, int l) {
if (l < topX || l >= bottomX) {
return;
}
if (i < topY) {
k -= topY - i;
i = topY;
}
if (i + k > bottomY) {
k = bottomY - i;
}
int j1 = l + i * width;
for (int k1 = 0; k1 < k; k1++) {
pixels[j1 + k1 * width] = j;
}
}
private static void method342(int i, int j, int k, int l, int i1) {
if (j < topX || j >= bottomX) {
return;
}
if (l < topY) {
i1 -= topY - l;
l = topY;
}
if (l + i1 > bottomY) {
i1 = bottomY - l;
}
int j1 = 256 - k;
int k1 = (i >> 16 & 0xff) * k;
int l1 = (i >> 8 & 0xff) * k;
int i2 = (i & 0xff) * k;
int i3 = j + l * width;
for (int j3 = 0; j3 < i1; j3++) {
int j2 = (pixels[i3] >> 16 & 0xff) * j1;
int k2 = (pixels[i3] >> 8 & 0xff) * j1;
int l2 = (pixels[i3] & 0xff) * j1;
int k3 = (k1 + j2 >> 8 << 16) + (l1 + k2 >> 8 << 8) + (i2 + l2 >> 8);
pixels[i3] = k3;
i3 += width;
}
}
DrawingArea() {
}
public static int pixels[];
public static int width;
public static int height;
public static int topY;
public static int bottomY;
public static int topX;
public static int bottomX;
public static int centerX;
public static int centerY;
public static int anInt1387;
}