More refactoring (tm)

This commit is contained in:
Lucas
2019-07-07 21:43:55 +02:00
parent e1a815eddd
commit e2aac6d899
159 changed files with 38213 additions and 46222 deletions
@@ -37,6 +37,7 @@ import net.runelite.deob.deobfuscators.mapping.AnnotationIntegrityChecker;
import net.runelite.deob.deobfuscators.mapping.AnnotationMapper;
import net.runelite.deob.deobfuscators.mapping.Mapper;
import net.runelite.deob.deobfuscators.mapping.ParallelExecutorMapping;
import net.runelite.deob.deobfuscators.transformers.ScriptOpcodesTransformer;
import net.runelite.deob.util.JarUtil;
import org.junit.Assert;
import org.junit.Ignore;
@@ -87,6 +88,19 @@ public class UpdateMappingsTest
check(group1, group2);
}
@Test
@Ignore
public void testScriptopcodes() throws Exception
{
File client = new File("C:\\Users\\Lucas\\IdeaProjects\\runelitexxx\\client.jar");
ClassGroup group = JarUtil.loadJar(client);
new ScriptOpcodesTransformer().transform(group);
JarUtil.saveJar(group, new File("C:/Users/Lucas/Desktop/Apapapapapap.jar"));
}
private void unannotate(ClassGroup group)
{
for (ClassFile cf : group.getClasses())
@@ -187,7 +187,7 @@ public class HookImporter
for (int i = 0; i < hm.parameters.size(); i++)
{
String name = hm.parameters.get(i);
if (name.matches("arg[0-9]") || name.length() <= 2 && (name.charAt(0) != 'x' || name.charAt(0) != 'y'))
if (name.matches("arg[0-9]") || name.length() <= 2 && (name.charAt(0) != 'x' && name.charAt(0) != 'y'))
{
continue;
}
File diff suppressed because it is too large Load Diff
@@ -1,29 +0,0 @@
/*
* Copyright (c) 2017, Adam <Adam@sigterm.info>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.runelite.api;
public interface PacketBuffer
{
}
@@ -35,4 +35,10 @@ public final class WidgetType
public static final int TEXT_INVENTORY = 7;
public static final int IF1_TOOLTIP = 8;
public static final int LINE = 9;
public static final int FPS = 1336;
public static final int VIEWPORT = 1337;
public static final int MINIMAP = 1338;
public static final int COMPASS = 1339;
public static final int WORLD_MAP = 1400;
public static final int WORLD_MAP_OVERVIEW = 1401;
}
@@ -51,7 +51,6 @@ import net.runelite.api.MenuEntry;
import net.runelite.api.MessageNode;
import net.runelite.api.NPC;
import net.runelite.api.Node;
import net.runelite.api.PacketBuffer;
import static net.runelite.api.Perspective.LOCAL_TILE_SIZE;
import net.runelite.api.Player;
import net.runelite.api.Point;
@@ -111,6 +110,7 @@ import net.runelite.api.mixins.MethodHook;
import net.runelite.api.mixins.Mixin;
import net.runelite.api.mixins.Replace;
import net.runelite.api.mixins.Shadow;
import net.runelite.rs.api.RSPacketBuffer;
import org.slf4j.Logger;
import net.runelite.rs.api.RSAbstractArchive;
import net.runelite.rs.api.RSChatChannel;
@@ -1329,13 +1329,13 @@ public abstract class RSClientMixin implements RSClient
@Inject
@MethodHook("updateNpcs")
public static void updateNpcs(boolean var0, PacketBuffer var1)
public static void updateNpcs(boolean var0, RSPacketBuffer var1)
{
client.getCallbacks().updateNpcs();
}
@Inject
@MethodHook(value = "addMessage", end = true)
@MethodHook(value = "addChatMessage", end = true)
public static void onAddChatMessage(int type, String name, String message, String sender)
{
Logger logger = client.getLogger();
@@ -328,7 +328,7 @@ public interface RSClient extends RSGameShell, Client
@Override
RSWorld[] getWorldList();
@Import("addMessage")
@Import("addChatMessage")
void addChatMessage(int type, String name, String message, String sender);
@Override
@@ -1,7 +1,5 @@
package net.runelite.rs.api;
import net.runelite.api.PacketBuffer;
public interface RSPacketBuffer extends PacketBuffer
public interface RSPacketBuffer
{
}
@@ -708,28 +708,28 @@ public abstract class AbstractArchive {
garbageValue = "15597880"
)
@Export("readStringIntParameters")
static final IterableNodeHashTable readStringIntParameters(Buffer var0, IterableNodeHashTable var1) {
int var2 = var0.readUnsignedByte();
static final IterableNodeHashTable readStringIntParameters(Buffer buffer, IterableNodeHashTable hashTable) {
int var2 = buffer.readUnsignedByte();
int var3;
if (var1 == null) {
if (hashTable == null) {
var3 = World.method1759(var2);
var1 = new IterableNodeHashTable(var3);
hashTable = new IterableNodeHashTable(var3);
}
for (var3 = 0; var3 < var2; ++var3) {
boolean var4 = var0.readUnsignedByte() == 1;
int var5 = var0.readMedium();
boolean var4 = buffer.readUnsignedByte() == 1;
int var5 = buffer.readMedium();
Object var6;
if (var4) {
var6 = new ObjectNode(var0.readStringCp1252NullTerminated());
var6 = new ObjectNode(buffer.readStringCp1252NullTerminated());
} else {
var6 = new IntegerNode(var0.readInt());
var6 = new IntegerNode(buffer.readInt());
}
var1.put((Node)var6, (long)var5);
hashTable.put((Node)var6, (long)var5);
}
return var1;
return hashTable;
}
@ObfuscatedName("m")
@@ -738,8 +738,8 @@ public abstract class AbstractArchive {
garbageValue = "-4702"
)
@Export("runScript")
public static void runScript(ScriptEvent var0) {
GrandExchangeEvent.runScript0(var0, 500000);
public static void runScript(ScriptEvent scriptEvent) {
GrandExchangeEvent.runScript0(scriptEvent, 500000);
}
@ObfuscatedName("eg")
@@ -29,7 +29,7 @@ public abstract class AbstractByteArrayCopier {
garbageValue = "-2034091753"
)
@Export("set")
abstract void set(byte[] var1);
abstract void set(byte[] array);
@ObfuscatedName("f")
@ObfuscatedSignature(
+157 -157
View File
@@ -111,28 +111,28 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("m")
@Export("drawGlyph")
abstract void drawGlyph(byte[] var1, int var2, int var3, int var4, int var5, int var6);
abstract void drawGlyph(byte[] pixels, int x, int y, int width, int height, int color);
@ObfuscatedName("f")
@Export("drawGlyphAlpha")
abstract void drawGlyphAlpha(byte[] var1, int var2, int var3, int var4, int var5, int var6, int var7);
abstract void drawGlyphAlpha(byte[] pixels, int x, int y, int width, int height, int color, int alpha);
@ObfuscatedName("l")
@Export("readMetrics")
void readMetrics(byte[] var1) {
void readMetrics(byte[] bytes) {
this.advances = new int[256];
int var2;
if (var1.length == 257) {
if (bytes.length == 257) {
for (var2 = 0; var2 < this.advances.length; ++var2) {
this.advances[var2] = var1[var2] & 255;
this.advances[var2] = bytes[var2] & 255;
}
this.ascent = var1[256] & 255;
this.ascent = bytes[256] & 255;
} else {
var2 = 0;
for (int var3 = 0; var3 < 256; ++var3) {
this.advances[var3] = var1[var2++] & 255;
this.advances[var3] = bytes[var2++] & 255;
}
int[] var12 = new int[256];
@@ -140,11 +140,11 @@ public abstract class AbstractFont extends Rasterizer2D {
int var5;
for (var5 = 0; var5 < 256; ++var5) {
var12[var5] = var1[var2++] & 255;
var12[var5] = bytes[var2++] & 255;
}
for (var5 = 0; var5 < 256; ++var5) {
var4[var5] = var1[var2++] & 255;
var4[var5] = bytes[var2++] & 255;
}
byte[][] var6 = new byte[256][];
@@ -155,7 +155,7 @@ public abstract class AbstractFont extends Rasterizer2D {
byte var9 = 0;
for (var7 = 0; var7 < var6[var8].length; ++var7) {
var9 += var1[var2++];
var9 += bytes[var2++];
var6[var8][var7] = var9;
}
}
@@ -168,7 +168,7 @@ public abstract class AbstractFont extends Rasterizer2D {
byte var10 = 0;
for (int var11 = 0; var11 < var13[var14].length; ++var11) {
var10 += var1[var2++];
var10 += bytes[var2++];
var13[var14][var11] = var10;
}
}
@@ -258,7 +258,7 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("a")
@Export("breakLines")
public int breakLines(String var1, int[] var2, String[] var3) {
public int breakLines(String var1, int[] lineWidths, String[] linesDst) {
if (var1 == null) {
return 0;
} else {
@@ -285,7 +285,7 @@ public abstract class AbstractFont extends Rasterizer2D {
var6.append(var16);
var6.append('>');
if (var16.equals("br")) {
var3[var12] = var6.toString().substring(var5, var6.length());
linesDst[var12] = var6.toString().substring(var5, var6.length());
++var12;
var5 = var6.length();
var4 = 0;
@@ -334,8 +334,8 @@ public abstract class AbstractFont extends Rasterizer2D {
var9 = 1;
}
if (var2 != null && var4 > var2[var12 < var2.length ? var12 : var2.length - 1] && var7 >= 0) {
var3[var12] = var6.toString().substring(var5, var7 - var9);
if (lineWidths != null && var4 > lineWidths[var12 < lineWidths.length ? var12 : lineWidths.length - 1] && var7 >= 0) {
linesDst[var12] = var6.toString().substring(var5, var7 - var9);
++var12;
var5 = var7;
var7 = -1;
@@ -354,7 +354,7 @@ public abstract class AbstractFont extends Rasterizer2D {
String var19 = var6.toString();
if (var19.length() > var5) {
var3[var12++] = var19.substring(var5, var19.length());
linesDst[var12++] = var19.substring(var5, var19.length());
}
return var12;
@@ -363,8 +363,8 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("z")
@Export("lineWidth")
public int lineWidth(String var1, int var2) {
int var3 = this.breakLines(var1, new int[]{var2}, AbstractFont_lines);
public int lineWidth(String var1, int lineWidth) {
int var3 = this.breakLines(var1, new int[]{lineWidth}, AbstractFont_lines);
int var4 = 0;
for (int var5 = 0; var5 < var3; ++var5) {
@@ -379,106 +379,106 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("j")
@Export("lineCount")
public int lineCount(String var1, int var2) {
return this.breakLines(var1, new int[]{var2}, AbstractFont_lines);
public int lineCount(String var1, int lineWidth) {
return this.breakLines(var1, new int[]{lineWidth}, AbstractFont_lines);
}
@ObfuscatedName("t")
@Export("draw")
public void draw(String var1, int var2, int var3, int var4, int var5) {
public void draw(String var1, int x, int y, int color, int shadow) {
if (var1 != null) {
this.reset(var4, var5);
this.draw0(var1, var2, var3);
this.reset(color, shadow);
this.draw0(var1, x, y);
}
}
@ObfuscatedName("y")
@Export("drawAlpha")
public void drawAlpha(String var1, int var2, int var3, int var4, int var5, int var6) {
public void drawAlpha(String var1, int x, int y, int color, int shadow, int alpha) {
if (var1 != null) {
this.reset(var4, var5);
AbstractFont_alpha = var6;
this.draw0(var1, var2, var3);
this.reset(color, shadow);
AbstractFont_alpha = alpha;
this.draw0(var1, x, y);
}
}
@ObfuscatedName("h")
@Export("drawRightAligned")
public void drawRightAligned(String var1, int var2, int var3, int var4, int var5) {
public void drawRightAligned(String var1, int x, int y, int color, int shadow) {
if (var1 != null) {
this.reset(var4, var5);
this.draw0(var1, var2 - this.stringWidth(var1), var3);
this.reset(color, shadow);
this.draw0(var1, x - this.stringWidth(var1), y);
}
}
@ObfuscatedName("b")
@Export("drawCentered")
public void drawCentered(String var1, int var2, int var3, int var4, int var5) {
public void drawCentered(String var1, int x, int y, int color, int shadow) {
if (var1 != null) {
this.reset(var4, var5);
this.draw0(var1, var2 - this.stringWidth(var1) / 2, var3);
this.reset(color, shadow);
this.draw0(var1, x - this.stringWidth(var1) / 2, y);
}
}
@ObfuscatedName("c")
@Export("drawLines")
public int drawLines(String var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, int var9, int var10) {
public int drawLines(String var1, int x, int y, int width, int height, int color, int shadow, int xAlignment, int yAlignment, int lineHeight) {
if (var1 == null) {
return 0;
} else {
this.reset(var6, var7);
if (var10 == 0) {
var10 = this.ascent;
this.reset(color, shadow);
if (lineHeight == 0) {
lineHeight = this.ascent;
}
int[] var11 = new int[]{var4};
if (var5 < var10 + this.maxAscent + this.maxDescent && var5 < var10 + var10) {
int[] var11 = new int[]{width};
if (height < lineHeight + this.maxAscent + this.maxDescent && height < lineHeight + lineHeight) {
var11 = null;
}
int var12 = this.breakLines(var1, var11, AbstractFont_lines);
if (var9 == 3 && var12 == 1) {
var9 = 1;
if (yAlignment == 3 && var12 == 1) {
yAlignment = 1;
}
int var13;
int var14;
if (var9 == 0) {
var13 = var3 + this.maxAscent;
} else if (var9 == 1) {
var13 = var3 + (var5 - this.maxAscent - this.maxDescent - var10 * (var12 - 1)) / 2 + this.maxAscent;
} else if (var9 == 2) {
var13 = var3 + var5 - this.maxDescent - var10 * (var12 - 1);
if (yAlignment == 0) {
var13 = y + this.maxAscent;
} else if (yAlignment == 1) {
var13 = y + (height - this.maxAscent - this.maxDescent - lineHeight * (var12 - 1)) / 2 + this.maxAscent;
} else if (yAlignment == 2) {
var13 = y + height - this.maxDescent - lineHeight * (var12 - 1);
} else {
var14 = (var5 - this.maxAscent - this.maxDescent - var10 * (var12 - 1)) / (var12 + 1);
var14 = (height - this.maxAscent - this.maxDescent - lineHeight * (var12 - 1)) / (var12 + 1);
if (var14 < 0) {
var14 = 0;
}
var13 = var3 + var14 + this.maxAscent;
var10 += var14;
var13 = y + var14 + this.maxAscent;
lineHeight += var14;
}
for (var14 = 0; var14 < var12; ++var14) {
if (var8 == 0) {
this.draw0(AbstractFont_lines[var14], var2, var13);
} else if (var8 == 1) {
this.draw0(AbstractFont_lines[var14], var2 + (var4 - this.stringWidth(AbstractFont_lines[var14])) / 2, var13);
} else if (var8 == 2) {
this.draw0(AbstractFont_lines[var14], var2 + var4 - this.stringWidth(AbstractFont_lines[var14]), var13);
if (xAlignment == 0) {
this.draw0(AbstractFont_lines[var14], x, var13);
} else if (xAlignment == 1) {
this.draw0(AbstractFont_lines[var14], x + (width - this.stringWidth(AbstractFont_lines[var14])) / 2, var13);
} else if (xAlignment == 2) {
this.draw0(AbstractFont_lines[var14], x + width - this.stringWidth(AbstractFont_lines[var14]), var13);
} else if (var14 == var12 - 1) {
this.draw0(AbstractFont_lines[var14], var2, var13);
this.draw0(AbstractFont_lines[var14], x, var13);
} else {
this.calculateLineJustification(AbstractFont_lines[var14], var4);
this.draw0(AbstractFont_lines[var14], var2, var13);
this.calculateLineJustification(AbstractFont_lines[var14], width);
this.draw0(AbstractFont_lines[var14], x, var13);
AbstractFont_justificationTotal = 0;
}
var13 += var10;
var13 += lineHeight;
}
return var12;
@@ -487,44 +487,44 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("p")
@Export("drawCenteredWave")
public void drawCenteredWave(String var1, int var2, int var3, int var4, int var5, int var6) {
public void drawCenteredWave(String var1, int x, int y, int color, int shadow, int seed) {
if (var1 != null) {
this.reset(var4, var5);
this.reset(color, shadow);
int[] var7 = new int[var1.length()];
for (int var8 = 0; var8 < var1.length(); ++var8) {
var7[var8] = (int)(Math.sin((double)var8 / 2.0D + (double)var6 / 5.0D) * 5.0D);
var7[var8] = (int)(Math.sin((double)var8 / 2.0D + (double)seed / 5.0D) * 5.0D);
}
this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, (int[])null, var7);
this.drawWithOffsets0(var1, x - this.stringWidth(var1) / 2, y, (int[])null, var7);
}
}
@ObfuscatedName("v")
@Export("drawCenteredWave2")
public void drawCenteredWave2(String var1, int var2, int var3, int var4, int var5, int var6) {
public void drawCenteredWave2(String var1, int x, int y, int color, int shadow, int seed) {
if (var1 != null) {
this.reset(var4, var5);
this.reset(color, shadow);
int[] var7 = new int[var1.length()];
int[] var8 = new int[var1.length()];
for (int var9 = 0; var9 < var1.length(); ++var9) {
var7[var9] = (int)(Math.sin((double)var9 / 5.0D + (double)var6 / 5.0D) * 5.0D);
var8[var9] = (int)(Math.sin((double)var9 / 3.0D + (double)var6 / 5.0D) * 5.0D);
var7[var9] = (int)(Math.sin((double)var9 / 5.0D + (double)seed / 5.0D) * 5.0D);
var8[var9] = (int)(Math.sin((double)var9 / 3.0D + (double)seed / 5.0D) * 5.0D);
}
this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, var7, var8);
this.drawWithOffsets0(var1, x - this.stringWidth(var1) / 2, y, var7, var8);
}
}
@ObfuscatedName("ag")
@Export("drawCenteredShake")
public void drawCenteredShake(String var1, int var2, int var3, int var4, int var5, int var6, int var7) {
public void drawCenteredShake(String var1, int x, int y, int color, int shadow, int seed, int seed2) {
if (var1 != null) {
this.reset(var4, var5);
double var8 = 7.0D - (double)var7 / 8.0D;
this.reset(color, shadow);
double var8 = 7.0D - (double)seed2 / 8.0D;
if (var8 < 0.0D) {
var8 = 0.0D;
}
@@ -532,20 +532,20 @@ public abstract class AbstractFont extends Rasterizer2D {
int[] var10 = new int[var1.length()];
for (int var11 = 0; var11 < var1.length(); ++var11) {
var10[var11] = (int)(Math.sin((double)var11 / 1.5D + (double)var6 / 1.0D) * var8);
var10[var11] = (int)(Math.sin((double)var11 / 1.5D + (double)seed / 1.0D) * var8);
}
this.drawWithOffsets0(var1, var2 - this.stringWidth(var1) / 2, var3, (int[])null, var10);
this.drawWithOffsets0(var1, x - this.stringWidth(var1) / 2, y, (int[])null, var10);
}
}
@ObfuscatedName("aq")
@Export("drawRandomAlphaAndSpacing")
public void drawRandomAlphaAndSpacing(String var1, int var2, int var3, int var4, int var5, int var6) {
public void drawRandomAlphaAndSpacing(String var1, int x, int y, int color, int shadow, int seed) {
if (var1 != null) {
this.reset(var4, var5);
AbstractFont_random.setSeed((long)var6);
this.reset(color, shadow);
AbstractFont_random.setSeed((long)seed);
AbstractFont_alpha = 192 + (AbstractFont_random.nextInt() & 31);
int[] var7 = new int[var1.length()];
int var8 = 0;
@@ -557,20 +557,20 @@ public abstract class AbstractFont extends Rasterizer2D {
}
}
this.drawWithOffsets0(var1, var2, var3, var7, (int[])null);
this.drawWithOffsets0(var1, x, y, var7, (int[])null);
}
}
@ObfuscatedName("aj")
@Export("reset")
void reset(int var1, int var2) {
void reset(int color, int shadow) {
AbstractFont_strike = -1;
AbstractFont_underline = -1;
AbstractFont_previousShadow = var2;
AbstractFont_shadow = var2;
AbstractFont_previousColor = var1;
AbstractFont_color = var1;
AbstractFont_previousShadow = shadow;
AbstractFont_shadow = shadow;
AbstractFont_previousColor = color;
AbstractFont_color = color;
AbstractFont_alpha = 256;
AbstractFont_justificationTotal = 0;
AbstractFont_justificationCurrent = 0;
@@ -612,7 +612,7 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("ar")
@Export("calculateLineJustification")
void calculateLineJustification(String var1, int var2) {
void calculateLineJustification(String var1, int lineWidth) {
int var3 = 0;
boolean var4 = false;
@@ -628,15 +628,15 @@ public abstract class AbstractFont extends Rasterizer2D {
}
if (var3 > 0) {
AbstractFont_justificationTotal = (var2 - this.stringWidth(var1) << 8) / var3;
AbstractFont_justificationTotal = (lineWidth - this.stringWidth(var1) << 8) / var3;
}
}
@ObfuscatedName("ac")
@Export("draw0")
void draw0(String var1, int var2, int var3) {
var3 -= this.ascent;
void draw0(String var1, int x, int y) {
y -= this.ascent;
int var4 = -1;
int var5 = -1;
@@ -658,8 +658,8 @@ public abstract class AbstractFont extends Rasterizer2D {
try {
var8 = MouseHandler.method1085(var9.substring(4));
IndexedSprite var13 = AbstractFont_modIconSprites[var8];
var13.drawAt(var2, var3 + this.ascent - var13.height);
var2 += var13.width;
var13.drawAt(x, y + this.ascent - var13.height);
x += var13.width;
var5 = -1;
} catch (Exception var11) {
}
@@ -679,7 +679,7 @@ public abstract class AbstractFont extends Rasterizer2D {
if (var4 == -1) {
if (this.kerning != null && var5 != -1) {
var2 += this.kerning[var7 + (var5 << 8)];
x += this.kerning[var7 + (var5 << 8)];
}
int var12 = this.widths[var7];
@@ -687,33 +687,33 @@ public abstract class AbstractFont extends Rasterizer2D {
if (var7 != ' ') {
if (AbstractFont_alpha == 256) {
if (AbstractFont_shadow != -1) {
AbstractFont_drawGlyph(this.pixels[var7], var2 + this.leftBearings[var7] + 1, var3 + this.topBearings[var7] + 1, var12, var8, AbstractFont_shadow);
AbstractFont_drawGlyph(this.pixels[var7], x + this.leftBearings[var7] + 1, y + this.topBearings[var7] + 1, var12, var8, AbstractFont_shadow);
}
this.drawGlyph(this.pixels[var7], var2 + this.leftBearings[var7], var3 + this.topBearings[var7], var12, var8, AbstractFont_color);
this.drawGlyph(this.pixels[var7], x + this.leftBearings[var7], y + this.topBearings[var7], var12, var8, AbstractFont_color);
} else {
if (AbstractFont_shadow != -1) {
AbstractFont_drawGlyphAlpha(this.pixels[var7], var2 + this.leftBearings[var7] + 1, var3 + this.topBearings[var7] + 1, var12, var8, AbstractFont_shadow, AbstractFont_alpha);
AbstractFont_drawGlyphAlpha(this.pixels[var7], x + this.leftBearings[var7] + 1, y + this.topBearings[var7] + 1, var12, var8, AbstractFont_shadow, AbstractFont_alpha);
}
this.drawGlyphAlpha(this.pixels[var7], var2 + this.leftBearings[var7], var3 + this.topBearings[var7], var12, var8, AbstractFont_color, AbstractFont_alpha);
this.drawGlyphAlpha(this.pixels[var7], x + this.leftBearings[var7], y + this.topBearings[var7], var12, var8, AbstractFont_color, AbstractFont_alpha);
}
} else if (AbstractFont_justificationTotal > 0) {
AbstractFont_justificationCurrent += AbstractFont_justificationTotal;
var2 += AbstractFont_justificationCurrent >> 8;
x += AbstractFont_justificationCurrent >> 8;
AbstractFont_justificationCurrent &= 255;
}
int var10 = this.advances[var7];
if (AbstractFont_strike != -1) {
Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + (int)((double)this.ascent * 0.7D), var10, AbstractFont_strike);
Rasterizer2D.Rasterizer2D_drawHorizontalLine(x, y + (int)((double)this.ascent * 0.7D), var10, AbstractFont_strike);
}
if (AbstractFont_underline != -1) {
Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + this.ascent + 1, var10, AbstractFont_underline);
Rasterizer2D.Rasterizer2D_drawHorizontalLine(x, y + this.ascent + 1, var10, AbstractFont_underline);
}
var2 += var10;
x += var10;
var5 = var7;
}
}
@@ -724,8 +724,8 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("ay")
@Export("drawWithOffsets0")
void drawWithOffsets0(String var1, int var2, int var3, int[] var4, int[] var5) {
var3 -= this.ascent;
void drawWithOffsets0(String var1, int x, int y, int[] xs, int[] ys) {
y -= this.ascent;
int var6 = -1;
int var7 = -1;
int var8 = 0;
@@ -748,14 +748,14 @@ public abstract class AbstractFont extends Rasterizer2D {
if (!var14.equals("gt")) {
if (var14.startsWith("img=")) {
try {
if (var4 != null) {
var11 = var4[var8];
if (xs != null) {
var11 = xs[var8];
} else {
var11 = 0;
}
if (var5 != null) {
var12 = var5[var8];
if (ys != null) {
var12 = ys[var8];
} else {
var12 = 0;
}
@@ -763,8 +763,8 @@ public abstract class AbstractFont extends Rasterizer2D {
++var8;
var13 = MouseHandler.method1085(var14.substring(4));
IndexedSprite var18 = AbstractFont_modIconSprites[var13];
var18.drawAt(var11 + var2, var12 + (var3 + this.ascent - var18.height));
var2 += var18.width;
var18.drawAt(var11 + x, var12 + (y + this.ascent - var18.height));
x += var18.width;
var7 = -1;
} catch (Exception var16) {
}
@@ -784,19 +784,19 @@ public abstract class AbstractFont extends Rasterizer2D {
if (var6 == -1) {
if (this.kerning != null && var7 != -1) {
var2 += this.kerning[var10 + (var7 << 8)];
x += this.kerning[var10 + (var7 << 8)];
}
int var17 = this.widths[var10];
var11 = this.heights[var10];
if (var4 != null) {
var12 = var4[var8];
if (xs != null) {
var12 = xs[var8];
} else {
var12 = 0;
}
if (var5 != null) {
var13 = var5[var8];
if (ys != null) {
var13 = ys[var8];
} else {
var13 = 0;
}
@@ -805,33 +805,33 @@ public abstract class AbstractFont extends Rasterizer2D {
if (var10 != ' ') {
if (AbstractFont_alpha == 256) {
if (AbstractFont_shadow != -1) {
AbstractFont_drawGlyph(this.pixels[var10], var12 + var2 + this.leftBearings[var10] + 1, var3 + var13 + this.topBearings[var10] + 1, var17, var11, AbstractFont_shadow);
AbstractFont_drawGlyph(this.pixels[var10], var12 + x + this.leftBearings[var10] + 1, y + var13 + this.topBearings[var10] + 1, var17, var11, AbstractFont_shadow);
}
this.drawGlyph(this.pixels[var10], var12 + var2 + this.leftBearings[var10], var3 + var13 + this.topBearings[var10], var17, var11, AbstractFont_color);
this.drawGlyph(this.pixels[var10], var12 + x + this.leftBearings[var10], y + var13 + this.topBearings[var10], var17, var11, AbstractFont_color);
} else {
if (AbstractFont_shadow != -1) {
AbstractFont_drawGlyphAlpha(this.pixels[var10], var12 + var2 + this.leftBearings[var10] + 1, var3 + var13 + this.topBearings[var10] + 1, var17, var11, AbstractFont_shadow, AbstractFont_alpha);
AbstractFont_drawGlyphAlpha(this.pixels[var10], var12 + x + this.leftBearings[var10] + 1, y + var13 + this.topBearings[var10] + 1, var17, var11, AbstractFont_shadow, AbstractFont_alpha);
}
this.drawGlyphAlpha(this.pixels[var10], var12 + var2 + this.leftBearings[var10], var3 + var13 + this.topBearings[var10], var17, var11, AbstractFont_color, AbstractFont_alpha);
this.drawGlyphAlpha(this.pixels[var10], var12 + x + this.leftBearings[var10], y + var13 + this.topBearings[var10], var17, var11, AbstractFont_color, AbstractFont_alpha);
}
} else if (AbstractFont_justificationTotal > 0) {
AbstractFont_justificationCurrent += AbstractFont_justificationTotal;
var2 += AbstractFont_justificationCurrent >> 8;
x += AbstractFont_justificationCurrent >> 8;
AbstractFont_justificationCurrent &= 255;
}
int var15 = this.advances[var10];
if (AbstractFont_strike != -1) {
Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + (int)((double)this.ascent * 0.7D), var15, AbstractFont_strike);
Rasterizer2D.Rasterizer2D_drawHorizontalLine(x, y + (int)((double)this.ascent * 0.7D), var15, AbstractFont_strike);
}
if (AbstractFont_underline != -1) {
Rasterizer2D.Rasterizer2D_drawHorizontalLine(var2, var3 + this.ascent, var15, AbstractFont_underline);
Rasterizer2D.Rasterizer2D_drawHorizontalLine(x, y + this.ascent, var15, AbstractFont_underline);
}
var2 += var15;
x += var15;
var7 = var10;
}
}
@@ -907,43 +907,43 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("ah")
@Export("AbstractFont_drawGlyph")
static void AbstractFont_drawGlyph(byte[] var0, int var1, int var2, int var3, int var4, int var5) {
int var6 = var1 + var2 * Rasterizer2D.Rasterizer2D_width;
int var7 = Rasterizer2D.Rasterizer2D_width - var3;
static void AbstractFont_drawGlyph(byte[] pixels, int x, int y, int width, int height, int color) {
int var6 = x + y * Rasterizer2D.Rasterizer2D_width;
int var7 = Rasterizer2D.Rasterizer2D_width - width;
int var8 = 0;
int var9 = 0;
int var10;
if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) {
var10 = Rasterizer2D.Rasterizer2D_yClipStart - var2;
var4 -= var10;
var2 = Rasterizer2D.Rasterizer2D_yClipStart;
var9 += var3 * var10;
if (y < Rasterizer2D.Rasterizer2D_yClipStart) {
var10 = Rasterizer2D.Rasterizer2D_yClipStart - y;
height -= var10;
y = Rasterizer2D.Rasterizer2D_yClipStart;
var9 += width * var10;
var6 += var10 * Rasterizer2D.Rasterizer2D_width;
}
if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) {
var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd;
if (y + height > Rasterizer2D.Rasterizer2D_yClipEnd) {
height -= y + height - Rasterizer2D.Rasterizer2D_yClipEnd;
}
if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) {
var10 = Rasterizer2D.Rasterizer2D_xClipStart - var1;
var3 -= var10;
var1 = Rasterizer2D.Rasterizer2D_xClipStart;
if (x < Rasterizer2D.Rasterizer2D_xClipStart) {
var10 = Rasterizer2D.Rasterizer2D_xClipStart - x;
width -= var10;
x = Rasterizer2D.Rasterizer2D_xClipStart;
var9 += var10;
var6 += var10;
var8 += var10;
var7 += var10;
}
if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) {
var10 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd;
var3 -= var10;
if (width + x > Rasterizer2D.Rasterizer2D_xClipEnd) {
var10 = width + x - Rasterizer2D.Rasterizer2D_xClipEnd;
width -= var10;
var8 += var10;
var7 += var10;
}
if (var3 > 0 && var4 > 0) {
AbstractFont_placeGlyph(Rasterizer2D.Rasterizer2D_pixels, var0, var5, var9, var6, var3, var4, var7, var8);
if (width > 0 && height > 0) {
AbstractFont_placeGlyph(Rasterizer2D.Rasterizer2D_pixels, pixels, color, var9, var6, width, height, var7, var8);
}
}
@@ -998,43 +998,43 @@ public abstract class AbstractFont extends Rasterizer2D {
@ObfuscatedName("aw")
@Export("AbstractFont_drawGlyphAlpha")
static void AbstractFont_drawGlyphAlpha(byte[] var0, int var1, int var2, int var3, int var4, int var5, int var6) {
int var7 = var1 + var2 * Rasterizer2D.Rasterizer2D_width;
int var8 = Rasterizer2D.Rasterizer2D_width - var3;
static void AbstractFont_drawGlyphAlpha(byte[] pixels, int x, int y, int width, int height, int color, int alpha) {
int var7 = x + y * Rasterizer2D.Rasterizer2D_width;
int var8 = Rasterizer2D.Rasterizer2D_width - width;
int var9 = 0;
int var10 = 0;
int var11;
if (var2 < Rasterizer2D.Rasterizer2D_yClipStart) {
var11 = Rasterizer2D.Rasterizer2D_yClipStart - var2;
var4 -= var11;
var2 = Rasterizer2D.Rasterizer2D_yClipStart;
var10 += var3 * var11;
if (y < Rasterizer2D.Rasterizer2D_yClipStart) {
var11 = Rasterizer2D.Rasterizer2D_yClipStart - y;
height -= var11;
y = Rasterizer2D.Rasterizer2D_yClipStart;
var10 += width * var11;
var7 += var11 * Rasterizer2D.Rasterizer2D_width;
}
if (var2 + var4 > Rasterizer2D.Rasterizer2D_yClipEnd) {
var4 -= var2 + var4 - Rasterizer2D.Rasterizer2D_yClipEnd;
if (y + height > Rasterizer2D.Rasterizer2D_yClipEnd) {
height -= y + height - Rasterizer2D.Rasterizer2D_yClipEnd;
}
if (var1 < Rasterizer2D.Rasterizer2D_xClipStart) {
var11 = Rasterizer2D.Rasterizer2D_xClipStart - var1;
var3 -= var11;
var1 = Rasterizer2D.Rasterizer2D_xClipStart;
if (x < Rasterizer2D.Rasterizer2D_xClipStart) {
var11 = Rasterizer2D.Rasterizer2D_xClipStart - x;
width -= var11;
x = Rasterizer2D.Rasterizer2D_xClipStart;
var10 += var11;
var7 += var11;
var9 += var11;
var8 += var11;
}
if (var3 + var1 > Rasterizer2D.Rasterizer2D_xClipEnd) {
var11 = var3 + var1 - Rasterizer2D.Rasterizer2D_xClipEnd;
var3 -= var11;
if (width + x > Rasterizer2D.Rasterizer2D_xClipEnd) {
var11 = width + x - Rasterizer2D.Rasterizer2D_xClipEnd;
width -= var11;
var9 += var11;
var8 += var11;
}
if (var3 > 0 && var4 > 0) {
AbstractFont_placeGlyphAlpha(Rasterizer2D.Rasterizer2D_pixels, var0, var5, var10, var7, var3, var4, var8, var9, var6);
if (width > 0 && height > 0) {
AbstractFont_placeGlyphAlpha(Rasterizer2D.Rasterizer2D_pixels, pixels, color, var10, var7, width, height, var8, var9, alpha);
}
}
@@ -32,7 +32,7 @@ public abstract class AbstractRasterProvider {
garbageValue = "-430495007"
)
@Export("drawFull")
public abstract void drawFull(int var1, int var2);
public abstract void drawFull(int x, int y);
@ObfuscatedName("q")
@ObfuscatedSignature(
@@ -40,7 +40,7 @@ public abstract class AbstractRasterProvider {
garbageValue = "18"
)
@Export("draw")
public abstract void draw(int var1, int var2, int var3, int var4);
public abstract void draw(int x, int y, int width, int height);
@ObfuscatedName("b")
@ObfuscatedSignature(
@@ -13,7 +13,7 @@ public abstract class AbstractSocket {
garbageValue = "1765046516"
)
@Export("isAvailable")
public abstract boolean isAvailable(int var1) throws IOException;
public abstract boolean isAvailable(int length) throws IOException;
@ObfuscatedName("q")
@ObfuscatedSignature(
@@ -37,7 +37,7 @@ public abstract class AbstractSocket {
garbageValue = "-1089665746"
)
@Export("read")
public abstract int read(byte[] var1, int var2, int var3) throws IOException;
public abstract int read(byte[] dst, int dstIndex, int length) throws IOException;
@ObfuscatedName("u")
@ObfuscatedSignature(
@@ -45,7 +45,7 @@ public abstract class AbstractSocket {
garbageValue = "-86"
)
@Export("write")
public abstract void write(byte[] var1, int var2, int var3) throws IOException;
public abstract void write(byte[] src, int srcIndex, int length) throws IOException;
@ObfuscatedName("g")
@ObfuscatedSignature(
@@ -54,14 +54,16 @@ public abstract class AbstractWorldMapIcon {
signature = "(I)I",
garbageValue = "1990181988"
)
public abstract int vmethod395();
@Export("element")
public abstract int element();
@ObfuscatedName("f")
@ObfuscatedSignature(
signature = "(I)Laj;",
garbageValue = "1159446036"
)
abstract WorldMapLabel vmethod396();
@Export("label")
abstract WorldMapLabel label();
@ObfuscatedName("q")
@ObfuscatedSignature(
@@ -92,7 +94,7 @@ public abstract class AbstractWorldMapIcon {
garbageValue = "1150380891"
)
boolean method19() {
return this.vmethod395() >= 0;
return this.element() >= 0;
}
@ObfuscatedName("b")
@@ -104,7 +106,7 @@ public abstract class AbstractWorldMapIcon {
if (!this.method19()) {
return false;
} else {
WorldMapElement var3 = ViewportMouse.getWorldMapElement(this.vmethod395());
WorldMapElement var3 = ViewportMouse.getWorldMapElement(this.element());
int var4 = this.vmethod397();
int var5 = this.vmethod398();
switch(var3.field3287.field3528) {
@@ -153,7 +155,7 @@ public abstract class AbstractWorldMapIcon {
garbageValue = "1201712205"
)
boolean method21(int var1, int var2) {
WorldMapLabel var3 = this.vmethod396();
WorldMapLabel var3 = this.label();
return var3 == null ? false : (var1 >= this.field5 - var3.width / 2 && var1 <= var3.width / 2 + this.field5 ? var2 >= this.field6 && var2 <= var3.height + this.field6 : false);
}
+11 -11
View File
@@ -61,9 +61,9 @@ public final class AccessFile {
@ObfuscatedName("m")
@Export("seek")
final void seek(long var1) throws IOException {
this.file.seek(var1);
this.index = var1;
final void seek(long index) throws IOException {
this.file.seek(index);
this.index = index;
}
@ObfuscatedName("f")
@@ -72,14 +72,14 @@ public final class AccessFile {
garbageValue = "-86"
)
@Export("write")
public final void write(byte[] var1, int var2, int var3) throws IOException {
if ((long)var3 + this.index > this.capacity) {
public final void write(byte[] src, int srcIndex, int length) throws IOException {
if ((long)length + this.index > this.capacity) {
this.file.seek(this.capacity + 1L);
this.file.write(1);
throw new EOFException();
} else {
this.file.write(var1, var2, var3);
this.index += (long)var3;
this.file.write(src, srcIndex, length);
this.index += (long)length;
}
}
@@ -99,9 +99,9 @@ public final class AccessFile {
garbageValue = "166642884"
)
@Export("closeSync")
public final void closeSync(boolean var1) throws IOException {
public final void closeSync(boolean sync) throws IOException {
if (this.file != null) {
if (var1) {
if (sync) {
try {
this.file.getFD().sync();
} catch (SyncFailedException var3) {
@@ -130,8 +130,8 @@ public final class AccessFile {
garbageValue = "971670468"
)
@Export("read")
public final int read(byte[] var1, int var2, int var3) throws IOException {
int var4 = this.file.read(var1, var2, var3);
public final int read(byte[] dst, int dstIndex, int length) throws IOException {
int var4 = this.file.read(dst, dstIndex, length);
if (var4 > 0) {
this.index += (long)var4;
}
File diff suppressed because it is too large Load Diff
+12 -12
View File
@@ -245,7 +245,9 @@ public class Archive extends AbstractArchive {
if (var1 == this.masterDisk) {
if (this.field403) {
throw new RuntimeException();
} else if (var3 == null) {
}
if (var3 == null) {
PacketBuffer.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true);
} else {
Archive_crc.reset();
@@ -254,14 +256,15 @@ public class Archive extends AbstractArchive {
if (var5 != this.indexCrc) {
PacketBuffer.requestNetFile(this, 255, this.index, this.indexCrc, (byte)0, true);
} else {
Buffer var9 = new Buffer(Strings.decompressBytes(var3));
int var7 = var9.readUnsignedByte();
Buffer var6 = new Buffer(Strings.decompressBytes(var3));
int var7 = var6.readUnsignedByte();
if (var7 != 5 && var7 != 6) {
throw new RuntimeException(var7 + "," + this.index + "," + var2);
} else {
}
int var8 = 0;
if (var7 >= 6) {
var8 = var9.readInt();
var8 = var6.readInt();
}
if (var8 != this.indexVersion) {
@@ -272,7 +275,6 @@ public class Archive extends AbstractArchive {
}
}
}
}
} else {
if (!var4 && var2 == this.field405) {
this.field403 = true;
@@ -282,29 +284,27 @@ public class Archive extends AbstractArchive {
Archive_crc.reset();
Archive_crc.update(var3, 0, var3.length - 2);
var5 = (int)Archive_crc.getValue();
int var6 = ((var3[var3.length - 2] & 255) << 8) + (var3[var3.length - 1] & 255);
if (var5 == super.groupCrcs[var2] && var6 == super.groupVersions[var2]) {
int var9 = ((var3[var3.length - 2] & 255) << 8) + (var3[var3.length - 1] & 255);
if (var5 == super.groupCrcs[var2] && var9 == super.groupVersions[var2]) {
this.validGroups[var2] = true;
if (var4) {
super.groups[var2] = Projectile.byteArrayToObject(var3, false);
}
} else {
this.validGroups[var2] = false;
if (this.field404 || var4) {
PacketBuffer.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4);
}
}
} else {
this.validGroups[var2] = false;
if (this.field404 || var4) {
PacketBuffer.requestNetFile(this, this.index, var2, super.groupCrcs[var2], (byte)2, var4);
}
}
}
}
}
}
@ObfuscatedName("dt")
@ObfuscatedSignature(
+169 -158
View File
@@ -8,8 +8,7 @@ import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("ff")
@Implements("ArchiveDisk")
public final class ArchiveDisk
{
public final class ArchiveDisk {
@ObfuscatedName("m")
@Export("ArchiveDisk_buffer")
static byte[] ArchiveDisk_buffer;
@@ -57,83 +56,86 @@ public final class ArchiveDisk
garbageValue = "-294587791"
)
@Export("read")
public byte[] read(int var1) {
public byte[] read(int entry) {
BufferedFile var2 = this.datFile;
synchronized(this.datFile) {
byte[] var10000;
try {
Object var4;
if (this.idxFile.length() < (long)(var1 * 6 + 6)) {
var4 = null;
var10000 = ((byte[])var4);
byte[] var4;
Object var5;
byte[] var10000;
if (this.idxFile.length() < (long)(entry * 6 + 6)) {
var5 = null;
var4 = ((byte[])var5);
var10000 = var4;
return var10000;
}
this.idxFile.seek((long)(var1 * 6));
} else {
this.idxFile.seek((long)(entry * 6));
this.idxFile.read(ArchiveDisk_buffer, 0, 6);
int var5 = ((ArchiveDisk_buffer[0] & 255) << 16) + (ArchiveDisk_buffer[2] & 255) + ((ArchiveDisk_buffer[1] & 255) << 8);
int var6 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[3] & 255) << 16) + ((ArchiveDisk_buffer[4] & 255) << 8);
if (var5 < 0 || var5 > this.maxEntrySize) {
var4 = null;
var10000 = ((byte[])var4);
int var6 = ((ArchiveDisk_buffer[0] & 255) << 16) + (ArchiveDisk_buffer[2] & 255) + ((ArchiveDisk_buffer[1] & 255) << 8);
int var7 = (ArchiveDisk_buffer[5] & 255) + ((ArchiveDisk_buffer[3] & 255) << 16) + ((ArchiveDisk_buffer[4] & 255) << 8);
if (var6 < 0 || var6 > this.maxEntrySize) {
var5 = null;
var4 = ((byte[])var5);
var10000 = var4;
return var10000;
}
if (var6 > 0 && (long)var6 <= this.datFile.length() / 520L) {
byte[] var7 = new byte[var5];
int var8 = 0;
} else if (var7 <= 0 || (long)var7 > this.datFile.length() / 520L) {
var5 = null;
var4 = ((byte[])var5);
return var4;
} else {
byte[] var8 = new byte[var6];
int var9 = 0;
int var10 = 0;
while (var8 < var5) {
if (var6 == 0) {
var4 = null;
var10000 = ((byte[])var4);
while (var9 < var6) {
if (var7 == 0) {
var5 = null;
var4 = ((byte[])var5);
var10000 = var4;
return var10000;
}
this.datFile.seek((long)(var6 * 520));
int var10 = var5 - var8;
if (var10 > 512) {
var10 = 512;
this.datFile.seek((long)(var7 * 520));
int var11 = var6 - var9;
if (var11 > 512) {
var11 = 512;
}
this.datFile.read(ArchiveDisk_buffer, 0, var10 + 8);
int var11 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8);
int var12 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8);
int var13 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255);
int var14 = ArchiveDisk_buffer[7] & 255;
if (var11 == var1 && var9 == var12 && var14 == this.archive) {
if (var13 >= 0 && (long)var13 <= this.datFile.length() / 520L) {
for (int var15 = 0; var15 < var10; ++var15) {
var7[var8++] = ArchiveDisk_buffer[var15 + 8];
this.datFile.read(ArchiveDisk_buffer, 0, var11 + 8);
int var12 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8);
int var13 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8);
int var14 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255);
int var15 = ArchiveDisk_buffer[7] & 255;
if (var12 == entry && var10 == var13 && var15 == this.archive) {
if (var14 >= 0 && (long)var14 <= this.datFile.length() / 520L) {
for (int var16 = 0; var16 < var11; ++var16) {
var8[var9++] = ArchiveDisk_buffer[var16 + 8];
}
var6 = var13;
++var9;
var7 = var14;
++var10;
continue;
}
var4 = null;
var10000 = ((byte[])var4);
var5 = null;
var4 = ((byte[])var5);
var10000 = var4;
return var10000;
}
var4 = null;
var10000 = ((byte[])var4);
var5 = null;
var4 = ((byte[])var5);
var10000 = var4;
return var10000;
}
var10000 = var7;
var10000 = var8;
return var10000;
}
var4 = null;
var10000 = ((byte[])var4);
} catch (IOException var17) {
}
} catch (IOException var18) {
return null;
}
return var10000;
}
}
@@ -202,75 +204,75 @@ public final class ArchiveDisk
ArchiveDisk_buffer[5] = (byte)var7;
this.idxFile.seek((long)(var1 * 6));
this.idxFile.write(ArchiveDisk_buffer, 0, 6);
int var9 = 0;
int var10 = 0;
int var11 = 0;
while (true) {
if (var9 < var3) {
if (var10 < var3) {
label129: {
int var11 = 0;
int var12;
int var12 = 0;
int var13;
if (var4) {
this.datFile.seek((long)(var7 * 520));
try {
this.datFile.read(ArchiveDisk_buffer, 0, 8);
} catch (EOFException var16) {
} catch (EOFException var17) {
break label129;
}
var12 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8);
int var13 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8);
var11 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255);
int var14 = ArchiveDisk_buffer[7] & 255;
if (var12 != var1 || var13 != var10 || var14 != this.archive) {
var13 = (ArchiveDisk_buffer[1] & 255) + ((ArchiveDisk_buffer[0] & 255) << 8);
int var14 = (ArchiveDisk_buffer[3] & 255) + ((ArchiveDisk_buffer[2] & 255) << 8);
var12 = ((ArchiveDisk_buffer[5] & 255) << 8) + ((ArchiveDisk_buffer[4] & 255) << 16) + (ArchiveDisk_buffer[6] & 255);
int var15 = ArchiveDisk_buffer[7] & 255;
if (var13 != var1 || var14 != var11 || var15 != this.archive) {
var8 = false;
var10000 = var8;
return var10000;
}
if (var11 < 0 || (long)var11 > this.datFile.length() / 520L) {
if (var12 < 0 || (long)var12 > this.datFile.length() / 520L) {
var8 = false;
var10000 = var8;
return var10000;
}
}
if (var11 == 0) {
if (var12 == 0) {
var4 = false;
var11 = (int)((this.datFile.length() + 519L) / 520L);
if (var11 == 0) {
++var11;
var12 = (int)((this.datFile.length() + 519L) / 520L);
if (var12 == 0) {
++var12;
}
if (var7 == var11) {
++var11;
if (var7 == var12) {
++var12;
}
}
if (var3 - var9 <= 512) {
var11 = 0;
if (var3 - var10 <= 512) {
var12 = 0;
}
ArchiveDisk_buffer[0] = (byte)(var1 >> 8);
ArchiveDisk_buffer[1] = (byte)var1;
ArchiveDisk_buffer[2] = (byte)(var10 >> 8);
ArchiveDisk_buffer[3] = (byte)var10;
ArchiveDisk_buffer[4] = (byte)(var11 >> 16);
ArchiveDisk_buffer[5] = (byte)(var11 >> 8);
ArchiveDisk_buffer[6] = (byte)var11;
ArchiveDisk_buffer[2] = (byte)(var11 >> 8);
ArchiveDisk_buffer[3] = (byte)var11;
ArchiveDisk_buffer[4] = (byte)(var12 >> 16);
ArchiveDisk_buffer[5] = (byte)(var12 >> 8);
ArchiveDisk_buffer[6] = (byte)var12;
ArchiveDisk_buffer[7] = (byte)this.archive;
this.datFile.seek((long)(var7 * 520));
this.datFile.write(ArchiveDisk_buffer, 0, 8);
var12 = var3 - var9;
if (var12 > 512) {
var12 = 512;
var13 = var3 - var10;
if (var13 > 512) {
var13 = 512;
}
this.datFile.write(var2, var9, var12);
var9 += var12;
var7 = var11;
++var10;
this.datFile.write(var2, var10, var13);
var10 += var13;
var7 = var12;
++var11;
continue;
}
}
@@ -279,7 +281,7 @@ public final class ArchiveDisk
var10000 = var8;
return var10000;
}
} catch (IOException var17) {
} catch (IOException var18) {
return false;
}
}
@@ -306,188 +308,197 @@ public final class ArchiveDisk
class178.bufferY[var11] = var1;
int[][] var14 = var4.flags;
label204:
while (var13 != var12) {
while (true) {
label241:
while (true) {
int var15;
int var16;
int var17;
int var18;
int var19;
int var20;
do {
do {
do {
label218:
do {
if (var13 == var12) {
InterfaceParent.field986 = var5;
UrlRequester.field929 = var6;
return false;
}
var5 = class178.bufferX[var12];
var6 = class178.bufferY[var12];
var12 = var12 + 1 & 4095;
int var19 = var5 - var9;
int var20 = var6 - var10;
int var15 = var5 - var4.xInset;
int var16 = var6 - var4.yInset;
var15 = var5 - var9;
var16 = var6 - var10;
var17 = var5 - var4.xInset;
var18 = var6 - var4.yInset;
if (var3.vmethod3644(var2, var5, var6, var4)) {
InterfaceParent.field986 = var5;
UrlRequester.field929 = var6;
return true;
}
int var17 = class178.distances[var19][var20] + 1;
int var18;
if (var19 > 0 && class178.directions[var19 - 1][var20] == 0 && (var14[var15 - 1][var16] & 19136782) == 0 && (var14[var15 - 1][var16 + var2 - 1] & 19136824) == 0) {
var18 = 1;
var19 = class178.distances[var15][var16] + 1;
if (var15 > 0 && class178.directions[var15 - 1][var16] == 0 && (var14[var17 - 1][var18] & 19136782) == 0 && (var14[var17 - 1][var18 + var2 - 1] & 19136824) == 0) {
var20 = 1;
while (true) {
if (var18 >= var2 - 1) {
if (var20 >= var2 - 1) {
class178.bufferX[var13] = var5 - 1;
class178.bufferY[var13] = var6;
var13 = var13 + 1 & 4095;
class178.directions[var19 - 1][var20] = 2;
class178.distances[var19 - 1][var20] = var17;
class178.directions[var15 - 1][var16] = 2;
class178.distances[var15 - 1][var16] = var19;
break;
}
if ((var14[var15 - 1][var18 + var16] & 19136830) != 0) {
if ((var14[var17 - 1][var20 + var18] & 19136830) != 0) {
break;
}
++var18;
++var20;
}
}
if (var19 < 128 - var2 && class178.directions[var19 + 1][var20] == 0 && (var14[var15 + var2][var16] & 19136899) == 0 && (var14[var15 + var2][var16 + var2 - 1] & 19136992) == 0) {
var18 = 1;
if (var15 < 128 - var2 && class178.directions[var15 + 1][var16] == 0 && (var14[var17 + var2][var18] & 19136899) == 0 && (var14[var17 + var2][var18 + var2 - 1] & 19136992) == 0) {
var20 = 1;
while (true) {
if (var18 >= var2 - 1) {
if (var20 >= var2 - 1) {
class178.bufferX[var13] = var5 + 1;
class178.bufferY[var13] = var6;
var13 = var13 + 1 & 4095;
class178.directions[var19 + 1][var20] = 8;
class178.distances[var19 + 1][var20] = var17;
class178.directions[var15 + 1][var16] = 8;
class178.distances[var15 + 1][var16] = var19;
break;
}
if ((var14[var15 + var2][var16 + var18] & 19136995) != 0) {
if ((var14[var17 + var2][var18 + var20] & 19136995) != 0) {
break;
}
++var18;
++var20;
}
}
if (var20 > 0 && class178.directions[var19][var20 - 1] == 0 && (var14[var15][var16 - 1] & 19136782) == 0 && (var14[var15 + var2 - 1][var16 - 1] & 19136899) == 0) {
var18 = 1;
if (var16 > 0 && class178.directions[var15][var16 - 1] == 0 && (var14[var17][var18 - 1] & 19136782) == 0 && (var14[var17 + var2 - 1][var18 - 1] & 19136899) == 0) {
var20 = 1;
while (true) {
if (var18 >= var2 - 1) {
if (var20 >= var2 - 1) {
class178.bufferX[var13] = var5;
class178.bufferY[var13] = var6 - 1;
var13 = var13 + 1 & 4095;
class178.directions[var19][var20 - 1] = 1;
class178.distances[var19][var20 - 1] = var17;
class178.directions[var15][var16 - 1] = 1;
class178.distances[var15][var16 - 1] = var19;
break;
}
if ((var14[var18 + var15][var16 - 1] & 19136911) != 0) {
if ((var14[var20 + var17][var18 - 1] & 19136911) != 0) {
break;
}
++var18;
++var20;
}
}
if (var20 < 128 - var2 && class178.directions[var19][var20 + 1] == 0 && (var14[var15][var16 + var2] & 19136824) == 0 && (var14[var15 + var2 - 1][var16 + var2] & 19136992) == 0) {
var18 = 1;
if (var16 < 128 - var2 && class178.directions[var15][var16 + 1] == 0 && (var14[var17][var18 + var2] & 19136824) == 0 && (var14[var17 + var2 - 1][var18 + var2] & 19136992) == 0) {
var20 = 1;
while (true) {
if (var18 >= var2 - 1) {
if (var20 >= var2 - 1) {
class178.bufferX[var13] = var5;
class178.bufferY[var13] = var6 + 1;
var13 = var13 + 1 & 4095;
class178.directions[var19][var20 + 1] = 4;
class178.distances[var19][var20 + 1] = var17;
class178.directions[var15][var16 + 1] = 4;
class178.distances[var15][var16 + 1] = var19;
break;
}
if ((var14[var18 + var15][var16 + var2] & 19137016) != 0) {
if ((var14[var20 + var17][var18 + var2] & 19137016) != 0) {
break;
}
++var18;
++var20;
}
}
if (var19 > 0 && var20 > 0 && class178.directions[var19 - 1][var20 - 1] == 0 && (var14[var15 - 1][var16 - 1] & 19136782) == 0) {
var18 = 1;
if (var15 > 0 && var16 > 0 && class178.directions[var15 - 1][var16 - 1] == 0 && (var14[var17 - 1][var18 - 1] & 19136782) == 0) {
var20 = 1;
while (true) {
if (var18 >= var2) {
if (var20 >= var2) {
class178.bufferX[var13] = var5 - 1;
class178.bufferY[var13] = var6 - 1;
var13 = var13 + 1 & 4095;
class178.directions[var19 - 1][var20 - 1] = 3;
class178.distances[var19 - 1][var20 - 1] = var17;
class178.directions[var15 - 1][var16 - 1] = 3;
class178.distances[var15 - 1][var16 - 1] = var19;
break;
}
if ((var14[var15 - 1][var18 + (var16 - 1)] & 19136830) != 0 || (var14[var18 + (var15 - 1)][var16 - 1] & 19136911) != 0) {
if ((var14[var17 - 1][var20 + (var18 - 1)] & 19136830) != 0 || (var14[var20 + (var17 - 1)][var18 - 1] & 19136911) != 0) {
break;
}
++var18;
++var20;
}
}
if (var19 < 128 - var2 && var20 > 0 && class178.directions[var19 + 1][var20 - 1] == 0 && (var14[var15 + var2][var16 - 1] & 19136899) == 0) {
var18 = 1;
if (var15 < 128 - var2 && var16 > 0 && class178.directions[var15 + 1][var16 - 1] == 0 && (var14[var17 + var2][var18 - 1] & 19136899) == 0) {
var20 = 1;
while (true) {
if (var18 >= var2) {
if (var20 >= var2) {
class178.bufferX[var13] = var5 + 1;
class178.bufferY[var13] = var6 - 1;
var13 = var13 + 1 & 4095;
class178.directions[var19 + 1][var20 - 1] = 9;
class178.distances[var19 + 1][var20 - 1] = var17;
class178.directions[var15 + 1][var16 - 1] = 9;
class178.distances[var15 + 1][var16 - 1] = var19;
break;
}
if ((var14[var15 + var2][var18 + (var16 - 1)] & 19136995) != 0 || (var14[var18 + var15][var16 - 1] & 19136911) != 0) {
if ((var14[var17 + var2][var20 + (var18 - 1)] & 19136995) != 0 || (var14[var20 + var17][var18 - 1] & 19136911) != 0) {
break;
}
++var18;
++var20;
}
}
if (var19 > 0 && var20 < 128 - var2 && class178.directions[var19 - 1][var20 + 1] == 0 && (var14[var15 - 1][var16 + var2] & 19136824) == 0) {
var18 = 1;
if (var15 > 0 && var16 < 128 - var2 && class178.directions[var15 - 1][var16 + 1] == 0 && (var14[var17 - 1][var18 + var2] & 19136824) == 0) {
for (var20 = 1; var20 < var2; ++var20) {
if ((var14[var17 - 1][var18 + var20] & 19136830) != 0 || (var14[var20 + (var17 - 1)][var18 + var2] & 19137016) != 0) {
continue label218;
}
}
while (true) {
if (var18 >= var2) {
class178.bufferX[var13] = var5 - 1;
class178.bufferY[var13] = var6 + 1;
var13 = var13 + 1 & 4095;
class178.directions[var19 - 1][var20 + 1] = 6;
class178.distances[var19 - 1][var20 + 1] = var17;
break;
class178.directions[var15 - 1][var16 + 1] = 6;
class178.distances[var15 - 1][var16 + 1] = var19;
}
} while(var15 >= 128 - var2);
} while(var16 >= 128 - var2);
} while(class178.directions[var15 + 1][var16 + 1] != 0);
} while((var14[var17 + var2][var18 + var2] & 19136992) != 0);
if ((var14[var15 - 1][var16 + var18] & 19136830) != 0 || (var14[var18 + (var15 - 1)][var16 + var2] & 19137016) != 0) {
break;
}
++var18;
}
}
if (var19 < 128 - var2 && var20 < 128 - var2 && class178.directions[var19 + 1][var20 + 1] == 0 && (var14[var15 + var2][var16 + var2] & 19136992) == 0) {
for (var18 = 1; var18 < var2; ++var18) {
if ((var14[var15 + var18][var16 + var2] & 19137016) != 0 || (var14[var15 + var2][var18 + var16] & 19136995) != 0) {
continue label204;
for (var20 = 1; var20 < var2; ++var20) {
if ((var14[var17 + var20][var18 + var2] & 19137016) != 0 || (var14[var17 + var2][var20 + var18] & 19136995) != 0) {
continue label241;
}
}
class178.bufferX[var13] = var5 + 1;
class178.bufferY[var13] = var6 + 1;
var13 = var13 + 1 & 4095;
class178.directions[var19 + 1][var20 + 1] = 12;
class178.distances[var19 + 1][var20 + 1] = var17;
class178.directions[var15 + 1][var16 + 1] = 12;
class178.distances[var15 + 1][var16 + 1] = var19;
}
}
InterfaceParent.field986 = var5;
UrlRequester.field929 = var6;
return false;
}
static {
+187 -186
View File
@@ -6,8 +6,7 @@ import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("bd")
@Implements("ArchiveLoader")
public class ArchiveLoader
{
public class ArchiveLoader {
@ObfuscatedName("pf")
@ObfuscatedSignature(
signature = "Lko;"
@@ -90,53 +89,53 @@ public class ArchiveLoader
int var8;
int var9;
int var10;
boolean var20;
boolean var11;
if (Login.worldSelectOpen) {
if (class30.worldSelectBackSprites == null) {
class30.worldSelectBackSprites = class2.method20(WorldMapSection3.archive8, "sl_back", "");
}
Archive var11;
int var12;
Archive var12;
int var13;
IndexedSprite[] var14;
int var14;
IndexedSprite[] var15;
if (Frames.worldSelectFlagSprites == null) {
var11 = WorldMapSection3.archive8;
var13 = var11.getGroupId("sl_flags");
var12 = var11.getFileId(var13, "");
if (!SpriteMask.loadSprite(var11, var13, var12)) {
var14 = null;
var12 = WorldMapSection3.archive8;
var14 = var12.getGroupId("sl_flags");
var13 = var12.getFileId(var14, "");
if (!SpriteMask.loadSprite(var12, var14, var13)) {
var15 = null;
} else {
var14 = WorldMapLabel.createIndexedSpriteArray();
var15 = WorldMapLabel.createIndexedSpriteArray();
}
Frames.worldSelectFlagSprites = var14;
Frames.worldSelectFlagSprites = var15;
}
if (AttackOption.worldSelectArrows == null) {
var11 = WorldMapSection3.archive8;
var13 = var11.getGroupId("sl_arrows");
var12 = var11.getFileId(var13, "");
if (!SpriteMask.loadSprite(var11, var13, var12)) {
var14 = null;
var12 = WorldMapSection3.archive8;
var14 = var12.getGroupId("sl_arrows");
var13 = var12.getFileId(var14, "");
if (!SpriteMask.loadSprite(var12, var14, var13)) {
var15 = null;
} else {
var14 = WorldMapLabel.createIndexedSpriteArray();
var15 = WorldMapLabel.createIndexedSpriteArray();
}
AttackOption.worldSelectArrows = var14;
AttackOption.worldSelectArrows = var15;
}
if (UrlRequest.worldSelectStars == null) {
var11 = WorldMapSection3.archive8;
var13 = var11.getGroupId("sl_stars");
var12 = var11.getFileId(var13, "");
if (!SpriteMask.loadSprite(var11, var13, var12)) {
var14 = null;
var12 = WorldMapSection3.archive8;
var14 = var12.getGroupId("sl_stars");
var13 = var12.getFileId(var14, "");
if (!SpriteMask.loadSprite(var12, var14, var13)) {
var15 = null;
} else {
var14 = WorldMapLabel.createIndexedSpriteArray();
var15 = WorldMapLabel.createIndexedSpriteArray();
}
UrlRequest.worldSelectStars = var14;
UrlRequest.worldSelectStars = var15;
}
if (SecureRandomFuture.worldSelectLeftSprite == null) {
@@ -187,34 +186,34 @@ public class ArchiveLoader
}
var0.draw("Players", var7 + 32, 17, 16777215, -1);
var13 = Login.xPadding + 500;
var14 = Login.xPadding + 500;
if (World.sortOption1[0] == 2 && World.sortOption2[0] == 0) {
AttackOption.worldSelectArrows[2].drawAt(var14, 4);
} else {
AttackOption.worldSelectArrows[0].drawAt(var14, 4);
}
if (World.sortOption1[0] == 2 && World.sortOption2[0] == 1) {
AttackOption.worldSelectArrows[3].drawAt(var14 + 15, 4);
} else {
AttackOption.worldSelectArrows[1].drawAt(var14 + 15, 4);
}
var0.draw("Location", var14 + 32, 17, 16777215, -1);
var13 = Login.xPadding + 610;
if (World.sortOption1[0] == 3 && World.sortOption2[0] == 0) {
AttackOption.worldSelectArrows[2].drawAt(var13, 4);
} else {
AttackOption.worldSelectArrows[0].drawAt(var13, 4);
}
if (World.sortOption1[0] == 2 && World.sortOption2[0] == 1) {
if (World.sortOption1[0] == 3 && World.sortOption2[0] == 1) {
AttackOption.worldSelectArrows[3].drawAt(var13 + 15, 4);
} else {
AttackOption.worldSelectArrows[1].drawAt(var13 + 15, 4);
}
var0.draw("Location", var13 + 32, 17, 16777215, -1);
var12 = Login.xPadding + 610;
if (World.sortOption1[0] == 3 && World.sortOption2[0] == 0) {
AttackOption.worldSelectArrows[2].drawAt(var12, 4);
} else {
AttackOption.worldSelectArrows[0].drawAt(var12, 4);
}
if (World.sortOption1[0] == 3 && World.sortOption2[0] == 1) {
AttackOption.worldSelectArrows[3].drawAt(var12 + 15, 4);
} else {
AttackOption.worldSelectArrows[1].drawAt(var12 + 15, 4);
}
var0.draw("Type", var12 + 32, 17, 16777215, -1);
var0.draw("Type", var13 + 32, 17, 16777215, -1);
}
Rasterizer2D.Rasterizer2D_fillRectangle(Login.xPadding + 708, 4, 50, 16, 0);
@@ -222,40 +221,40 @@ public class ArchiveLoader
Login.hoveredWorldIndex = -1;
if (class30.worldSelectBackSprites != null) {
var6 = 88;
byte var15 = 19;
var13 = 765 / (var6 + 1) - 1;
var12 = 480 / (var15 + 1);
byte var16 = 19;
var14 = 765 / (var6 + 1) - 1;
var13 = 480 / (var16 + 1);
while (true) {
var8 = var12;
var9 = var13;
if (var12 * (var13 - 1) >= World.worldsCount) {
var8 = var13;
var9 = var14;
if (var13 * (var14 - 1) >= World.worldsCount) {
--var14;
}
if (var14 * (var13 - 1) >= World.worldsCount) {
--var13;
}
if (var13 * (var12 - 1) >= World.worldsCount) {
--var12;
if (var14 * (var13 - 1) >= World.worldsCount) {
--var13;
}
if (var13 * (var12 - 1) >= World.worldsCount) {
--var12;
}
if (var12 == var8 && var13 == var9) {
var8 = (765 - var6 * var13) / (var13 + 1);
if (var13 == var8 && var14 == var9) {
var8 = (765 - var6 * var14) / (var14 + 1);
if (var8 > 5) {
var8 = 5;
}
var9 = (480 - var15 * var12) / (var12 + 1);
var9 = (480 - var16 * var13) / (var13 + 1);
if (var9 > 5) {
var9 = 5;
}
var3 = (765 - var13 * var6 - var8 * (var13 - 1)) / 2;
int var16 = (480 - var12 * var15 - var9 * (var12 - 1)) / 2;
var4 = (var12 + World.worldsCount - 1) / var12;
Login.worldSelectPagesCount = var4 - var13;
var3 = (765 - var14 * var6 - var8 * (var14 - 1)) / 2;
int var17 = (480 - var13 * var16 - var9 * (var13 - 1)) / 2;
var4 = (var13 + World.worldsCount - 1) / var13;
Login.worldSelectPagesCount = var4 - var14;
if (SecureRandomFuture.worldSelectLeftSprite != null && Login.worldSelectPage > 0) {
SecureRandomFuture.worldSelectLeftSprite.drawAt(8, Huffman.canvasHeight / 2 - SecureRandomFuture.worldSelectLeftSprite.subHeight / 2);
}
@@ -264,14 +263,14 @@ public class ArchiveLoader
NetSocket.worldSelectRightSprite.drawAt(SoundCache.canvasWidth - NetSocket.worldSelectRightSprite.subWidth - 8, Huffman.canvasHeight / 2 - NetSocket.worldSelectRightSprite.subHeight / 2);
}
int var17 = var16 + 23;
int var18 = var3 + Login.xPadding;
int var19 = 0;
var20 = false;
int var18 = var17 + 23;
int var19 = var3 + Login.xPadding;
int var20 = 0;
var11 = false;
int var21 = Login.worldSelectPage;
int var22;
for (var22 = var12 * var21; var22 < World.worldsCount && var21 - Login.worldSelectPage < var13; ++var22) {
for (var22 = var13 * var21; var22 < World.worldsCount && var21 - Login.worldSelectPage < var14; ++var22) {
World var23 = ItemContainer.worlds[var22];
boolean var24 = true;
String var25 = Integer.toString(var23.population);
@@ -310,40 +309,40 @@ public class ArchiveLoader
var27 = 0;
}
if (MouseHandler.MouseHandler_x >= var18 && MouseHandler.MouseHandler_y >= var17 && MouseHandler.MouseHandler_x < var18 + var6 && MouseHandler.MouseHandler_y < var15 + var17 && var24) {
if (MouseHandler.MouseHandler_x >= var19 && MouseHandler.MouseHandler_y >= var18 && MouseHandler.MouseHandler_x < var19 + var6 && MouseHandler.MouseHandler_y < var16 + var18 && var24) {
Login.hoveredWorldIndex = var22;
class30.worldSelectBackSprites[var27].drawAtTransOverlay(var18, var17, 128, 16777215);
var20 = true;
class30.worldSelectBackSprites[var27].drawAtTransOverlay(var19, var18, 128, 16777215);
var11 = true;
} else {
class30.worldSelectBackSprites[var27].drawAt(var18, var17);
class30.worldSelectBackSprites[var27].drawAt(var19, var18);
}
if (Frames.worldSelectFlagSprites != null) {
Frames.worldSelectFlagSprites[(var23.isMembersOnly() ? 8 : 0) + var23.location].drawAt(var18 + 29, var17);
Frames.worldSelectFlagSprites[(var23.isMembersOnly() ? 8 : 0) + var23.location].drawAt(var19 + 29, var18);
}
var0.drawCentered(Integer.toString(var23.id), var18 + 15, var15 / 2 + var17 + 5, var26, -1);
var1.drawCentered(var25, var18 + 60, var15 / 2 + var17 + 5, 268435455, -1);
var17 = var17 + var9 + var15;
++var19;
if (var19 >= var12) {
var17 = var16 + 23;
var18 = var18 + var6 + var8;
var19 = 0;
var0.drawCentered(Integer.toString(var23.id), var19 + 15, var16 / 2 + var18 + 5, var26, -1);
var1.drawCentered(var25, var19 + 60, var16 / 2 + var18 + 5, 268435455, -1);
var18 = var18 + var9 + var16;
++var20;
if (var20 >= var13) {
var18 = var17 + 23;
var19 = var19 + var6 + var8;
var20 = 0;
++var21;
}
}
if (var20) {
if (var11) {
var22 = var1.stringWidth(ItemContainer.worlds[Login.hoveredWorldIndex].activity) + 6;
int var47 = var1.ascent + 8;
int var44 = var1.ascent + 8;
var5 = MouseHandler.MouseHandler_y + 25;
if (var47 + var5 > 480) {
var5 = MouseHandler.MouseHandler_y - 25 - var47;
if (var44 + var5 > 480) {
var5 = MouseHandler.MouseHandler_y - 25 - var44;
}
Rasterizer2D.Rasterizer2D_fillRectangle(MouseHandler.MouseHandler_x - var22 / 2, var5, var22, var47, 16777120);
Rasterizer2D.Rasterizer2D_drawRectangle(MouseHandler.MouseHandler_x - var22 / 2, var5, var22, var47, 0);
Rasterizer2D.Rasterizer2D_fillRectangle(MouseHandler.MouseHandler_x - var22 / 2, var5, var22, var44, 16777120);
Rasterizer2D.Rasterizer2D_drawRectangle(MouseHandler.MouseHandler_x - var22 / 2, var5, var22, var44, 0);
var1.drawCentered(ItemContainer.worlds[Login.hoveredWorldIndex].activity, MouseHandler.MouseHandler_x, var5 + var1.ascent + 4, 0, -1);
}
break;
@@ -369,16 +368,16 @@ public class ArchiveLoader
String var28;
String var29;
String var30;
short var30;
String var31;
short var32;
String var32;
String var33;
short var34;
if (Client.gameState == 20) {
Login.titleboxSprite.drawAt(Login.loginBoxX + 180 - Login.titleboxSprite.subWidth / 2, 271 - Login.titleboxSprite.subHeight / 2);
var32 = 201;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 15;
var30 = 201;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 15;
var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var10, 16776960, 0);
@@ -390,20 +389,20 @@ public class ArchiveLoader
if (ReflectionCheck.clientPreferences.hideUsername) {
var29 = Login.Login_username;
var28 = class168.method3450('*', var29.length());
var30 = var28;
var31 = var28;
} else {
var30 = Login.Login_username;
var31 = Login.Login_username;
}
for (var30 = var30; var0.stringWidth(var30) > var34; var30 = var30.substring(0, var30.length() - 1)) {
for (var31 = var31; var0.stringWidth(var31) > var34; var31 = var31.substring(0, var31.length() - 1)) {
}
var0.draw(AbstractFont.escapeBrackets(var30), Login.loginBoxX + 180 - 70, var10, 16777215, 0);
var0.draw(AbstractFont.escapeBrackets(var31), Login.loginBoxX + 180 - 70, var10, 16777215, 0);
var10 += 15;
var29 = "Password: ";
var33 = Login.Login_password;
var31 = class168.method3450('*', var33.length());
var0.draw(var29 + var31, Login.loginBoxX + 180 - 108, var10, 16777215, 0);
var32 = Login.Login_password;
var33 = class168.method3450('*', var32.length());
var0.draw(var29 + var33, Login.loginBoxX + 180 - 108, var10, 16777215, 0);
var10 += 15;
}
}
@@ -412,9 +411,9 @@ public class ArchiveLoader
Login.titleboxSprite.drawAt(Login.loginBoxX, 171);
short var35;
if (Login.loginIndex == 0) {
var32 = 251;
var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 30;
var30 = 251;
var0.drawCentered("Welcome to RuneScape", Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 30;
var7 = Login.loginBoxX + 180 - 80;
var35 = 291;
titlebuttonSprite.drawAt(var7 - 73, var35 - 20);
@@ -424,9 +423,9 @@ public class ArchiveLoader
var0.drawLines("Existing User", var7 - 73, var35 - 20, 144, 40, 16777215, 0, 1, 1, 0);
} else if (Login.loginIndex == 1) {
var0.drawCentered(Login.Login_response0, Login.loginBoxX + 180, 201, 16776960, 0);
var32 = 236;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var32, 16777215, 0);
var10 = var32 + 15;
var30 = 236;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16777215, 0);
var10 = var30 + 15;
var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var10, 16777215, 0);
var10 += 15;
var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var10, 16777215, 0);
@@ -438,10 +437,12 @@ public class ArchiveLoader
var7 = Login.loginBoxX + 180 + 80;
titlebuttonSprite.drawAt(var7 - 73, var35 - 20);
var0.drawCentered("Cancel", var7, var35 + 5, 16777215, 0);
} else if (Login.loginIndex == 2) {
var32 = 201;
var0.drawCentered(Login.Login_response1, Varps.loginBoxCenter, var32, 16776960, 0);
var10 = var32 + 15;
} else {
IndexedSprite var42;
if (Login.loginIndex == 2) {
var30 = 201;
var0.drawCentered(Login.Login_response1, Varps.loginBoxCenter, var30, 16776960, 0);
var10 = var30 + 15;
var0.drawCentered(Login.Login_response2, Varps.loginBoxCenter, var10, 16776960, 0);
var10 += 15;
var0.drawCentered(Login.Login_response3, Varps.loginBoxCenter, var10, 16776960, 0);
@@ -452,45 +453,45 @@ public class ArchiveLoader
if (ReflectionCheck.clientPreferences.hideUsername) {
var29 = Login.Login_username;
var28 = class168.method3450('*', var29.length());
var30 = var28;
var31 = var28;
} else {
var30 = Login.Login_username;
var31 = Login.Login_username;
}
for (var30 = var30; var0.stringWidth(var30) > var34; var30 = var30.substring(1)) {
for (var31 = var31; var0.stringWidth(var31) > var34; var31 = var31.substring(1)) {
}
var0.draw(AbstractFont.escapeBrackets(var30) + (Login.currentLoginField == 0 & Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Varps.loginBoxCenter - 70, var10, 16777215, 0);
var0.draw(AbstractFont.escapeBrackets(var31) + (Login.currentLoginField == 0 & Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Varps.loginBoxCenter - 70, var10, 16777215, 0);
var10 += 15;
var29 = "Password: ";
var33 = Login.Login_password;
var31 = class168.method3450('*', var33.length());
var0.draw(var29 + var31 + (Login.currentLoginField == 1 & Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Varps.loginBoxCenter - 108, var10, 16777215, 0);
var32 = Login.Login_password;
var33 = class168.method3450('*', var32.length());
var0.draw(var29 + var33 + (Login.currentLoginField == 1 & Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Varps.loginBoxCenter - 108, var10, 16777215, 0);
var10 += 15;
var32 = 277;
var30 = 277;
var4 = Varps.loginBoxCenter + -117;
boolean var40 = Client.Login_isUsernameRemembered;
var20 = Login.field468;
IndexedSprite var46 = var40 ? (var20 ? KeyHandler.options_buttons_6Sprite : class308.options_buttons_2Sprite) : (var20 ? GraphicsObject.options_buttons_4Sprite : Login.options_buttons_0Sprite);
var46.drawAt(var4, var32);
var4 = var4 + var46.subWidth + 5;
var1.draw("Remember username", var4, var32 + 13, 16776960, 0);
var11 = Login.field468;
var42 = var40 ? (var11 ? KeyHandler.options_buttons_6Sprite : class308.options_buttons_2Sprite) : (var11 ? GraphicsObject.options_buttons_4Sprite : Login.options_buttons_0Sprite);
var42.drawAt(var4, var30);
var4 = var4 + var42.subWidth + 5;
var1.draw("Remember username", var4, var30 + 13, 16776960, 0);
var4 = Varps.loginBoxCenter + 24;
boolean var44 = ReflectionCheck.clientPreferences.hideUsername;
boolean var48 = Login.field469;
IndexedSprite var49 = var44 ? (var48 ? KeyHandler.options_buttons_6Sprite : class308.options_buttons_2Sprite) : (var48 ? GraphicsObject.options_buttons_4Sprite : Login.options_buttons_0Sprite);
var49.drawAt(var4, var32);
var4 = var4 + var49.subWidth + 5;
var1.draw("Hide username", var4, var32 + 13, 16776960, 0);
var10 = var32 + 15;
boolean var47 = ReflectionCheck.clientPreferences.hideUsername;
boolean var45 = Login.field469;
IndexedSprite var48 = var47 ? (var45 ? KeyHandler.options_buttons_6Sprite : class308.options_buttons_2Sprite) : (var45 ? GraphicsObject.options_buttons_4Sprite : Login.options_buttons_0Sprite);
var48.drawAt(var4, var30);
var4 = var4 + var48.subWidth + 5;
var1.draw("Hide username", var4, var30 + 13, 16776960, 0);
var10 = var30 + 15;
var5 = Varps.loginBoxCenter - 80;
short var50 = 321;
titlebuttonSprite.drawAt(var5 - 73, var50 - 20);
var0.drawCentered("Login", var5, var50 + 5, 16777215, 0);
short var49 = 321;
titlebuttonSprite.drawAt(var5 - 73, var49 - 20);
var0.drawCentered("Login", var5, var49 + 5, 16777215, 0);
var5 = Varps.loginBoxCenter + 80;
titlebuttonSprite.drawAt(var5 - 73, var50 - 20);
var0.drawCentered("Cancel", var5, var50 + 5, 16777215, 0);
var32 = 357;
titlebuttonSprite.drawAt(var5 - 73, var49 - 20);
var0.drawCentered("Cancel", var5, var49 + 5, 16777215, 0);
var30 = 357;
switch(Login.field467) {
case 2:
AttackOption.field31 = "Having trouble logging in?";
@@ -499,13 +500,13 @@ public class ArchiveLoader
AttackOption.field31 = "Can't login? Click here.";
}
TilePaint.field907 = new Bounds(Varps.loginBoxCenter, var32, var1.stringWidth(AttackOption.field31), 11);
UrlRequester.field930 = new Bounds(Varps.loginBoxCenter, var32, var1.stringWidth("Still having trouble logging in?"), 11);
var1.drawCentered(AttackOption.field31, Varps.loginBoxCenter, var32, 16777215, 0);
TilePaint.field907 = new Bounds(Varps.loginBoxCenter, var30, var1.stringWidth(AttackOption.field31), 11);
UrlRequester.field930 = new Bounds(Varps.loginBoxCenter, var30, var1.stringWidth("Still having trouble logging in?"), 11);
var1.drawCentered(AttackOption.field31, Varps.loginBoxCenter, var30, 16777215, 0);
} else if (Login.loginIndex == 3) {
var32 = 201;
var0.drawCentered("Invalid credentials.", Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 20;
var30 = 201;
var0.drawCentered("Invalid credentials.", Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 20;
var1.drawCentered("For accounts created after 24th November 2010, please use your", Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var1.drawCentered("email address to login. Otherwise please login with your username.", Login.loginBoxX + 180, var10, 16776960, 0);
@@ -522,47 +523,46 @@ public class ArchiveLoader
String var36;
if (Login.loginIndex == 4) {
var0.drawCentered("Authenticator", Login.loginBoxX + 180, 201, 16776960, 0);
var32 = 236;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var32, 16777215, 0);
var10 = var32 + 15;
var30 = 236;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16777215, 0);
var10 = var30 + 15;
var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var10, 16777215, 0);
var10 += 15;
var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var10, 16777215, 0);
var10 += 15;
var36 = "PIN: ";
var28 = Login.otp;
var30 = class168.method3450('*', var28.length());
var0.draw(var36 + var30 + (Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 108, var10, 16777215, 0);
var31 = class168.method3450('*', var28.length());
var0.draw(var36 + var31 + (Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 108, var10, 16777215, 0);
var10 -= 8;
var0.draw("Trust this computer", Login.loginBoxX + 180 - 9, var10, 16776960, 0);
var10 += 15;
var0.draw("for 30 days: ", Login.loginBoxX + 180 - 9, var10, 16776960, 0);
var9 = Login.loginBoxX + 180 - 9 + var0.stringWidth("for 30 days: ") + 15;
var3 = var10 - var0.ascent;
IndexedSprite var43;
if (Login.field470) {
var43 = class308.options_buttons_2Sprite;
var42 = class308.options_buttons_2Sprite;
} else {
var43 = Login.options_buttons_0Sprite;
var42 = Login.options_buttons_0Sprite;
}
var43.drawAt(var9, var3);
var42.drawAt(var9, var3);
var10 += 15;
var4 = Login.loginBoxX + 180 - 80;
short var45 = 321;
titlebuttonSprite.drawAt(var4 - 73, var45 - 20);
var0.drawCentered("Continue", var4, var45 + 5, 16777215, 0);
short var46 = 321;
titlebuttonSprite.drawAt(var4 - 73, var46 - 20);
var0.drawCentered("Continue", var4, var46 + 5, 16777215, 0);
var4 = Login.loginBoxX + 180 + 80;
titlebuttonSprite.drawAt(var4 - 73, var45 - 20);
var0.drawCentered("Cancel", var4, var45 + 5, 16777215, 0);
var1.drawCentered("<u=ff>Can't Log In?</u>", Login.loginBoxX + 180, var45 + 36, 255, 0);
titlebuttonSprite.drawAt(var4 - 73, var46 - 20);
var0.drawCentered("Cancel", var4, var46 + 5, 16777215, 0);
var1.drawCentered("<u=ff>Can't Log In?</u>", Login.loginBoxX + 180, var46 + 36, 255, 0);
} else {
short var37;
if (Login.loginIndex != 5) {
if (Login.loginIndex == 6) {
var32 = 201;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 15;
var30 = 201;
var0.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 15;
var0.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var0.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var10, 16776960, 0);
@@ -572,9 +572,9 @@ public class ArchiveLoader
titlebuttonSprite.drawAt(var7 - 73, var35 - 20);
var0.drawCentered("Back", var7, var35 + 5, 16777215, 0);
} else if (Login.loginIndex == 7) {
var32 = 216;
var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 15;
var30 = 216;
var0.drawCentered("Your date of birth isn't set.", Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 15;
var2.drawCentered("Please verify your account status by", Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var2.drawCentered("setting your date of birth.", Login.loginBoxX + 180, var10, 16776960, 0);
@@ -587,9 +587,9 @@ public class ArchiveLoader
titlebuttonSprite.drawAt(var7 - 73, var35 - 20);
var0.drawCentered("Back", var7, var35 + 5, 16777215, 0);
} else if (Login.loginIndex == 8) {
var32 = 216;
var0.drawCentered("Sorry, but your account is not eligible to play.", Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 15;
var30 = 216;
var0.drawCentered("Sorry, but your account is not eligible to play.", Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 15;
var2.drawCentered("For more information, please take a look at", Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var2.drawCentered("our privacy policy.", Login.loginBoxX + 180, var10, 16776960, 0);
@@ -602,30 +602,30 @@ public class ArchiveLoader
titlebuttonSprite.drawAt(var7 - 73, var35 - 20);
var0.drawCentered("Back", var7, var35 + 5, 16777215, 0);
} else if (Login.loginIndex == 12) {
var32 = 201;
String var41 = "";
var30 = 201;
String var43 = "";
var36 = "";
var30 = "";
var31 = "";
switch(Login.field466) {
case 0:
var41 = "Your account has been disabled.";
var43 = "Your account has been disabled.";
var36 = Strings.field880;
var30 = "";
var31 = "";
break;
case 1:
var41 = "Account locked as we suspect it has been stolen.";
var43 = "Account locked as we suspect it has been stolen.";
var36 = Strings.field881;
var30 = "";
var31 = "";
break;
default:
MouseHandler.method1084(false);
}
var0.drawCentered(var41, Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 15;
var0.drawCentered(var43, Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 15;
var2.drawCentered(var36, Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var2.drawCentered(var30, Login.loginBoxX + 180, var10, 16776960, 0);
var2.drawCentered(var31, Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var8 = Login.loginBoxX + 180;
var37 = 276;
@@ -638,9 +638,9 @@ public class ArchiveLoader
}
} else {
var0.drawCentered("Forgotten your password?", Login.loginBoxX + 180, 201, 16776960, 0);
var32 = 221;
var2.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var32, 16776960, 0);
var10 = var32 + 15;
var30 = 221;
var2.drawCentered(Login.Login_response1, Login.loginBoxX + 180, var30, 16776960, 0);
var10 = var30 + 15;
var2.drawCentered(Login.Login_response2, Login.loginBoxX + 180, var10, 16776960, 0);
var10 += 15;
var2.drawCentered(Login.Login_response3, Login.loginBoxX + 180, var10, 16776960, 0);
@@ -651,15 +651,15 @@ public class ArchiveLoader
if (ReflectionCheck.clientPreferences.hideUsername) {
var29 = Login.Login_username;
var28 = class168.method3450('*', var29.length());
var30 = var28;
var31 = var28;
} else {
var30 = Login.Login_username;
var31 = Login.Login_username;
}
for (var30 = var30; var0.stringWidth(var30) > var34; var30 = var30.substring(1)) {
for (var31 = var31; var0.stringWidth(var31) > var34; var31 = var31.substring(1)) {
}
var0.draw(AbstractFont.escapeBrackets(var30) + (Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 34, var10, 16777215, 0);
var0.draw(AbstractFont.escapeBrackets(var31) + (Client.cycle % 40 < 20 ? BufferedFile.colorStartTag(16776960) + "|" : ""), Login.loginBoxX + 180 - 34, var10, 16777215, 0);
var10 += 15;
var8 = Login.loginBoxX + 180 - 80;
var37 = 321;
@@ -674,6 +674,7 @@ public class ArchiveLoader
}
}
}
}
if (Client.gameState >= 10) {
int[] var38 = new int[4];
@@ -690,13 +691,13 @@ public class ArchiveLoader
var10 = Login.xPadding + 5;
var34 = 463;
byte var39 = 100;
byte var42 = 35;
byte var41 = 35;
class277.field1144.drawAt(var10, var34);
var0.drawCentered("World " + Client.worldId, var39 / 2 + var10, var42 / 2 + var34 - 2, 16777215, 0);
var0.drawCentered("World " + Client.worldId, var39 / 2 + var10, var41 / 2 + var34 - 2, 16777215, 0);
if (FriendLoginUpdate.field356 != null) {
var1.drawCentered("Loading...", var39 / 2 + var10, var42 / 2 + var34 + 12, 16777215, 0);
var1.drawCentered("Loading...", var39 / 2 + var10, var41 / 2 + var34 + 12, 16777215, 0);
} else {
var1.drawCentered("Click to switch", var39 / 2 + var10, var42 / 2 + var34 + 12, 16777215, 0);
var1.drawCentered("Click to switch", var39 / 2 + var10, var41 / 2 + var34 + 12, 16777215, 0);
}
} else {
class277.field1144 = MenuAction.loadIndexedSpriteByName(WorldMapSection3.archive8, "sl_button", "");
+20 -20
View File
@@ -60,35 +60,35 @@ public class AudioFilter {
field32[var1][0] = -2.0F * var3 * (float)Math.cos((double)this.method25(var1, 0, var2));
field32[var1][1] = var3 * var3;
float[] var10000;
int var4;
for (var4 = 1; var4 < this.field36[var1]; ++var4) {
var3 = this.method24(var1, var4, var2);
float var5 = -2.0F * var3 * (float)Math.cos((double)this.method25(var1, var4, var2));
float var6 = var3 * var3;
field32[var1][var4 * 2 + 1] = field32[var1][var4 * 2 - 1] * var6;
field32[var1][var4 * 2] = field32[var1][var4 * 2 - 1] * var5 + field32[var1][var4 * 2 - 2] * var6;
float[] var4;
int var5;
for (var5 = 1; var5 < this.field36[var1]; ++var5) {
var3 = this.method24(var1, var5, var2);
float var6 = -2.0F * var3 * (float)Math.cos((double)this.method25(var1, var5, var2));
float var7 = var3 * var3;
field32[var1][var5 * 2 + 1] = field32[var1][var5 * 2 - 1] * var7;
field32[var1][var5 * 2] = field32[var1][var5 * 2 - 1] * var6 + field32[var1][var5 * 2 - 2] * var7;
for (int var7 = var4 * 2 - 1; var7 >= 2; --var7) {
var10000 = field32[var1];
var10000[var7] += field32[var1][var7 - 1] * var5 + field32[var1][var7 - 2] * var6;
for (int var8 = var5 * 2 - 1; var8 >= 2; --var8) {
var4 = field32[var1];
var4[var8] += field32[var1][var8 - 1] * var6 + field32[var1][var8 - 2] * var7;
}
var10000 = field32[var1];
var10000[1] += field32[var1][0] * var5 + var6;
var10000 = field32[var1];
var10000[0] += var5;
var4 = field32[var1];
var4[1] += field32[var1][0] * var6 + var7;
var4 = field32[var1];
var4[0] += var6;
}
if (var1 == 0) {
for (var4 = 0; var4 < this.field36[0] * 2; ++var4) {
var10000 = field32[0];
var10000[var4] *= field34;
for (var5 = 0; var5 < this.field36[0] * 2; ++var5) {
var4 = field32[0];
var4[var5] *= field34;
}
}
for (var4 = 0; var4 < this.field36[var1] * 2; ++var4) {
field33[var1][var4] = (int)(field32[var1][var4] * 65536.0F);
for (var5 = 0; var5 < this.field36[var1] * 2; ++var5) {
field33[var1][var5] = (int)(field32[var1][var5] * 65536.0F);
}
return this.field36[var1] * 2;
+61 -61
View File
@@ -51,8 +51,8 @@ public class Buffer extends Node {
garbageValue = "-654332799"
)
@Export("writeByte")
public void writeByte(int var1) {
this.array[++this.index - 1] = (byte)var1;
public void writeByte(int value) {
this.array[++this.index - 1] = (byte)value;
}
@ObfuscatedName("w")
@@ -61,9 +61,9 @@ public class Buffer extends Node {
garbageValue = "0"
)
@Export("writeShort")
public void writeShort(int var1) {
this.array[++this.index - 1] = (byte)(var1 >> 8);
this.array[++this.index - 1] = (byte)var1;
public void writeShort(int value) {
this.array[++this.index - 1] = (byte)(value >> 8);
this.array[++this.index - 1] = (byte)value;
}
@ObfuscatedName("o")
@@ -72,10 +72,10 @@ public class Buffer extends Node {
garbageValue = "-26"
)
@Export("writeMedium")
public void writeMedium(int var1) {
this.array[++this.index - 1] = (byte)(var1 >> 16);
this.array[++this.index - 1] = (byte)(var1 >> 8);
this.array[++this.index - 1] = (byte)var1;
public void writeMedium(int value) {
this.array[++this.index - 1] = (byte)(value >> 16);
this.array[++this.index - 1] = (byte)(value >> 8);
this.array[++this.index - 1] = (byte)value;
}
@ObfuscatedName("u")
@@ -84,11 +84,11 @@ public class Buffer extends Node {
garbageValue = "-106996411"
)
@Export("writeInt")
public void writeInt(int var1) {
this.array[++this.index - 1] = (byte)(var1 >> 24);
this.array[++this.index - 1] = (byte)(var1 >> 16);
this.array[++this.index - 1] = (byte)(var1 >> 8);
this.array[++this.index - 1] = (byte)var1;
public void writeInt(int value) {
this.array[++this.index - 1] = (byte)(value >> 24);
this.array[++this.index - 1] = (byte)(value >> 16);
this.array[++this.index - 1] = (byte)(value >> 8);
this.array[++this.index - 1] = (byte)value;
}
@ObfuscatedName("g")
@@ -121,8 +121,8 @@ public class Buffer extends Node {
garbageValue = "-125"
)
@Export("writeBoolean")
public void writeBoolean(boolean var1) {
this.writeByte(var1 ? 1 : 0);
public void writeBoolean(boolean value) {
this.writeByte(value ? 1 : 0);
}
@ObfuscatedName("d")
@@ -131,12 +131,12 @@ public class Buffer extends Node {
garbageValue = "-9"
)
@Export("writeStringCp1252NullTerminated")
public void writeStringCp1252NullTerminated(String var1) {
int var2 = var1.indexOf(0);
public void writeStringCp1252NullTerminated(String string) {
int var2 = string.indexOf(0);
if (var2 >= 0) {
throw new IllegalArgumentException("");
} else {
this.index += SoundCache.encodeStringCp1252(var1, 0, var1.length(), this.array, this.index);
this.index += SoundCache.encodeStringCp1252(string, 0, string.length(), this.array, this.index);
this.array[++this.index - 1] = 0;
}
}
@@ -147,13 +147,13 @@ public class Buffer extends Node {
garbageValue = "22356"
)
@Export("writeStringCp1252NullCircumfixed")
public void writeStringCp1252NullCircumfixed(String var1) {
int var2 = var1.indexOf(0);
public void writeStringCp1252NullCircumfixed(String string) {
int var2 = string.indexOf(0);
if (var2 >= 0) {
throw new IllegalArgumentException("");
} else {
this.array[++this.index - 1] = 0;
this.index += SoundCache.encodeStringCp1252(var1, 0, var1.length(), this.array, this.index);
this.index += SoundCache.encodeStringCp1252(string, 0, string.length(), this.array, this.index);
this.array[++this.index - 1] = 0;
}
}
@@ -232,15 +232,15 @@ public class Buffer extends Node {
garbageValue = "1324532803"
)
@Export("writeSmartByteShort")
public void writeSmartByteShort(int var1) {
if (var1 >= 0 && var1 < 128) {
this.writeByte(var1);
public void writeSmartByteShort(int value) {
if (value >= 0 && value < 128) {
this.writeByte(value);
} else {
if (var1 < 0 || var1 >= 32768) {
if (value < 0 || value >= 32768) {
throw new IllegalArgumentException();
}
this.writeShort(var1 + 32768);
this.writeShort(value + 32768);
}
}
@@ -578,7 +578,7 @@ public class Buffer extends Node {
garbageValue = "36"
)
@Export("xteaEncryptAll")
public void xteaEncryptAll(int[] var1) {
public void xteaEncryptAll(int[] xteaKey) {
int var2 = this.index / 8;
this.index = 0;
@@ -588,8 +588,8 @@ public class Buffer extends Node {
int var6 = 0;
int var7 = -1640531527;
for (int var8 = 32; var8-- > 0; var5 += var4 + (var4 << 4 ^ var4 >>> 5) ^ var1[var6 >>> 11 & 3] + var6) {
var4 += var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + var1[var6 & 3];
for (int var8 = 32; var8-- > 0; var5 += var4 + (var4 << 4 ^ var4 >>> 5) ^ xteaKey[var6 >>> 11 & 3] + var6) {
var4 += var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + xteaKey[var6 & 3];
var6 += var7;
}
@@ -606,7 +606,7 @@ public class Buffer extends Node {
garbageValue = "1682045100"
)
@Export("xteaDecryptAll")
public void xteaDecryptAll(int[] var1) {
public void xteaDecryptAll(int[] xteaKey) {
int var2 = this.index / 8;
this.index = 0;
@@ -616,8 +616,8 @@ public class Buffer extends Node {
int var6 = -957401312;
int var7 = -1640531527;
for (int var8 = 32; var8-- > 0; var4 -= var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + var1[var6 & 3]) {
var5 -= var4 + (var4 << 4 ^ var4 >>> 5) ^ var1[var6 >>> 11 & 3] + var6;
for (int var8 = 32; var8-- > 0; var4 -= var5 + (var5 << 4 ^ var5 >>> 5) ^ var6 + xteaKey[var6 & 3]) {
var5 -= var4 + (var4 << 4 ^ var4 >>> 5) ^ xteaKey[var6 >>> 11 & 3] + var6;
var6 -= var7;
}
@@ -634,10 +634,10 @@ public class Buffer extends Node {
garbageValue = "-1341435074"
)
@Export("xteaEncrypt")
public void xteaEncrypt(int[] var1, int var2, int var3) {
public void xteaEncrypt(int[] xteaKey, int start, int end) {
int var4 = this.index;
this.index = var2;
int var5 = (var3 - var2) / 8;
this.index = start;
int var5 = (end - start) / 8;
for (int var6 = 0; var6 < var5; ++var6) {
int var7 = this.readInt();
@@ -645,8 +645,8 @@ public class Buffer extends Node {
int var9 = 0;
int var10 = -1640531527;
for (int var11 = 32; var11-- > 0; var8 += var7 + (var7 << 4 ^ var7 >>> 5) ^ var1[var9 >>> 11 & 3] + var9) {
var7 += var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + var1[var9 & 3];
for (int var11 = 32; var11-- > 0; var8 += var7 + (var7 << 4 ^ var7 >>> 5) ^ xteaKey[var9 >>> 11 & 3] + var9) {
var7 += var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + xteaKey[var9 & 3];
var9 += var10;
}
@@ -664,10 +664,10 @@ public class Buffer extends Node {
garbageValue = "307218624"
)
@Export("xteaDecrypt")
public void xteaDecrypt(int[] var1, int var2, int var3) {
public void xteaDecrypt(int[] xteaKey, int start, int end) {
int var4 = this.index;
this.index = var2;
int var5 = (var3 - var2) / 8;
this.index = start;
int var5 = (end - start) / 8;
for (int var6 = 0; var6 < var5; ++var6) {
int var7 = this.readInt();
@@ -675,8 +675,8 @@ public class Buffer extends Node {
int var9 = -957401312;
int var10 = -1640531527;
for (int var11 = 32; var11-- > 0; var7 -= var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + var1[var9 & 3]) {
var8 -= var7 + (var7 << 4 ^ var7 >>> 5) ^ var1[var9 >>> 11 & 3] + var9;
for (int var11 = 32; var11-- > 0; var7 -= var8 + (var8 << 4 ^ var8 >>> 5) ^ var9 + xteaKey[var9 & 3]) {
var8 -= var7 + (var7 << 4 ^ var7 >>> 5) ^ xteaKey[var9 >>> 11 & 3] + var9;
var9 -= var10;
}
@@ -835,9 +835,9 @@ public class Buffer extends Node {
garbageValue = "51"
)
@Export("writeShortLE")
public void writeShortLE(int var1) {
this.array[++this.index - 1] = (byte)var1;
this.array[++this.index - 1] = (byte)(var1 >> 8);
public void writeShortLE(int value) {
this.array[++this.index - 1] = (byte)value;
this.array[++this.index - 1] = (byte)(value >> 8);
}
@ObfuscatedName("bo")
@@ -936,11 +936,11 @@ public class Buffer extends Node {
garbageValue = "78"
)
@Export("writeIntLE")
public void writeIntLE(int var1) {
this.array[++this.index - 1] = (byte)var1;
this.array[++this.index - 1] = (byte)(var1 >> 8);
this.array[++this.index - 1] = (byte)(var1 >> 16);
this.array[++this.index - 1] = (byte)(var1 >> 24);
public void writeIntLE(int value) {
this.array[++this.index - 1] = (byte)value;
this.array[++this.index - 1] = (byte)(value >> 8);
this.array[++this.index - 1] = (byte)(value >> 16);
this.array[++this.index - 1] = (byte)(value >> 24);
}
@ObfuscatedName("bz")
@@ -949,11 +949,11 @@ public class Buffer extends Node {
garbageValue = "80"
)
@Export("writeIntME")
public void writeIntME(int var1) {
this.array[++this.index - 1] = (byte)(var1 >> 8);
this.array[++this.index - 1] = (byte)var1;
this.array[++this.index - 1] = (byte)(var1 >> 24);
this.array[++this.index - 1] = (byte)(var1 >> 16);
public void writeIntME(int value) {
this.array[++this.index - 1] = (byte)(value >> 8);
this.array[++this.index - 1] = (byte)value;
this.array[++this.index - 1] = (byte)(value >> 24);
this.array[++this.index - 1] = (byte)(value >> 16);
}
@ObfuscatedName("bg")
@@ -962,11 +962,11 @@ public class Buffer extends Node {
garbageValue = "2115295559"
)
@Export("writeIntLE16")
public void writeIntLE16(int var1) {
this.array[++this.index - 1] = (byte)(var1 >> 16);
this.array[++this.index - 1] = (byte)(var1 >> 24);
this.array[++this.index - 1] = (byte)var1;
this.array[++this.index - 1] = (byte)(var1 >> 8);
public void writeIntLE16(int value) {
this.array[++this.index - 1] = (byte)(value >> 16);
this.array[++this.index - 1] = (byte)(value >> 24);
this.array[++this.index - 1] = (byte)value;
this.array[++this.index - 1] = (byte)(value >> 8);
}
@ObfuscatedName("bt")
@@ -91,11 +91,11 @@ public class BufferedFile {
@ObfuscatedName("f")
@Export("seek")
public void seek(long var1) throws IOException {
if (var1 < 0L) {
public void seek(long index) throws IOException {
if (index < 0L) {
throw new IOException("");
} else {
this.field51 = var1;
this.field51 = index;
}
}
@@ -115,8 +115,8 @@ public class BufferedFile {
garbageValue = "617965847"
)
@Export("readFill")
public void readFill(byte[] var1) throws IOException {
this.read(var1, 0, var1.length);
public void readFill(byte[] dst) throws IOException {
this.read(dst, 0, dst.length);
}
@ObfuscatedName("o")
@@ -125,69 +125,69 @@ public class BufferedFile {
garbageValue = "-35"
)
@Export("read")
public void read(byte[] var1, int var2, int var3) throws IOException {
public void read(byte[] dst, int dstIndex, int length) throws IOException {
try {
if (var3 + var2 > var1.length) {
throw new ArrayIndexOutOfBoundsException(var3 + var2 - var1.length);
if (length + dstIndex > dst.length) {
throw new ArrayIndexOutOfBoundsException(length + dstIndex - dst.length);
}
if (-1L != this.field49 && this.field51 >= this.field49 && this.field51 + (long)var3 <= this.field49 + (long)this.field50) {
System.arraycopy(this.writeBuffer, (int)(this.field51 - this.field49), var1, var2, var3);
this.field51 += (long)var3;
if (-1L != this.field49 && this.field51 >= this.field49 && this.field51 + (long)length <= this.field49 + (long)this.field50) {
System.arraycopy(this.writeBuffer, (int)(this.field51 - this.field49), dst, dstIndex, length);
this.field51 += (long)length;
return;
}
long var4 = this.field51;
int var6 = var3;
int var6 = length;
int var7;
if (this.field51 >= this.field47 && this.field51 < this.field47 + (long)this.field48) {
var7 = (int)((long)this.field48 - (this.field51 - this.field47));
if (var7 > var3) {
var7 = var3;
if (var7 > length) {
var7 = length;
}
System.arraycopy(this.readBuffer, (int)(this.field51 - this.field47), var1, var2, var7);
System.arraycopy(this.readBuffer, (int)(this.field51 - this.field47), dst, dstIndex, var7);
this.field51 += (long)var7;
var2 += var7;
var3 -= var7;
dstIndex += var7;
length -= var7;
}
if (var3 > this.readBuffer.length) {
if (length > this.readBuffer.length) {
this.accessFile.seek(this.field51);
for (this.field53 = this.field51; var3 > 0; var3 -= var7) {
var7 = this.accessFile.read(var1, var2, var3);
for (this.field53 = this.field51; length > 0; length -= var7) {
var7 = this.accessFile.read(dst, dstIndex, length);
if (var7 == -1) {
break;
}
this.field53 += (long)var7;
this.field51 += (long)var7;
var2 += var7;
dstIndex += var7;
}
} else if (var3 > 0) {
} else if (length > 0) {
this.load();
var7 = var3;
if (var3 > this.field48) {
var7 = length;
if (length > this.field48) {
var7 = this.field48;
}
System.arraycopy(this.readBuffer, 0, var1, var2, var7);
var2 += var7;
var3 -= var7;
System.arraycopy(this.readBuffer, 0, dst, dstIndex, var7);
dstIndex += var7;
length -= var7;
this.field51 += (long)var7;
}
if (-1L != this.field49) {
if (this.field49 > this.field51 && var3 > 0) {
var7 = var2 + (int)(this.field49 - this.field51);
if (var7 > var3 + var2) {
var7 = var3 + var2;
if (this.field49 > this.field51 && length > 0) {
var7 = dstIndex + (int)(this.field49 - this.field51);
if (var7 > length + dstIndex) {
var7 = length + dstIndex;
}
while (var2 < var7) {
var1[var2++] = 0;
--var3;
while (dstIndex < var7) {
dst[dstIndex++] = 0;
--length;
++this.field51;
}
}
@@ -208,9 +208,9 @@ public class BufferedFile {
if (var8 > -1L && var10 > var8) {
int var12 = (int)(var10 - var8);
System.arraycopy(this.writeBuffer, (int)(var8 - this.field49), var1, (int)(var8 - var4) + var2, var12);
System.arraycopy(this.writeBuffer, (int)(var8 - this.field49), dst, (int)(var8 - var4) + dstIndex, var12);
if (var10 > this.field51) {
var3 = (int)((long)var3 - (var10 - this.field51));
length = (int)((long)length - (var10 - this.field51));
this.field51 = var10;
}
}
@@ -220,7 +220,7 @@ public class BufferedFile {
throw var13;
}
if (var3 > 0) {
if (length > 0) {
throw new EOFException();
}
}
@@ -256,34 +256,34 @@ public class BufferedFile {
garbageValue = "-601174169"
)
@Export("write")
public void write(byte[] var1, int var2, int var3) throws IOException {
public void write(byte[] src, int srcIndex, int length) throws IOException {
try {
if (this.field51 + (long)var3 > this.capacity) {
this.capacity = this.field51 + (long)var3;
if (this.field51 + (long)length > this.capacity) {
this.capacity = this.field51 + (long)length;
}
if (-1L != this.field49 && (this.field51 < this.field49 || this.field51 > this.field49 + (long)this.field50)) {
this.flush();
}
if (this.field49 != -1L && (long)var3 + this.field51 > this.field49 + (long)this.writeBuffer.length) {
if (this.field49 != -1L && (long)length + this.field51 > this.field49 + (long)this.writeBuffer.length) {
int var4 = (int)((long)this.writeBuffer.length - (this.field51 - this.field49));
System.arraycopy(var1, var2, this.writeBuffer, (int)(this.field51 - this.field49), var4);
System.arraycopy(src, srcIndex, this.writeBuffer, (int)(this.field51 - this.field49), var4);
this.field51 += (long)var4;
var2 += var4;
var3 -= var4;
srcIndex += var4;
length -= var4;
this.field50 = this.writeBuffer.length;
this.flush();
}
if (var3 <= this.writeBuffer.length) {
if (var3 > 0) {
if (length <= this.writeBuffer.length) {
if (length > 0) {
if (this.field49 == -1L) {
this.field49 = this.field51;
}
System.arraycopy(var1, var2, this.writeBuffer, (int)(this.field51 - this.field49), var3);
this.field51 += (long)var3;
System.arraycopy(src, srcIndex, this.writeBuffer, (int)(this.field51 - this.field49), length);
this.field51 += (long)length;
if (this.field51 - this.field49 > (long)this.field50) {
this.field50 = (int)(this.field51 - this.field49);
}
@@ -294,8 +294,8 @@ public class BufferedFile {
this.field53 = this.field51;
}
this.accessFile.write(var1, var2, var3);
this.field53 += (long)var3;
this.accessFile.write(src, srcIndex, length);
this.field53 += (long)length;
if (this.field53 > this.field52) {
this.field52 = this.field53;
}
@@ -304,22 +304,22 @@ public class BufferedFile {
long var6 = -1L;
if (this.field51 >= this.field47 && this.field51 < (long)this.field48 + this.field47) {
var10 = this.field51;
} else if (this.field47 >= this.field51 && this.field47 < (long)var3 + this.field51) {
} else if (this.field47 >= this.field51 && this.field47 < (long)length + this.field51) {
var10 = this.field47;
}
if (this.field51 + (long)var3 > this.field47 && (long)var3 + this.field51 <= (long)this.field48 + this.field47) {
var6 = this.field51 + (long)var3;
} else if ((long)this.field48 + this.field47 > this.field51 && this.field47 + (long)this.field48 <= (long)var3 + this.field51) {
if (this.field51 + (long)length > this.field47 && (long)length + this.field51 <= (long)this.field48 + this.field47) {
var6 = this.field51 + (long)length;
} else if ((long)this.field48 + this.field47 > this.field51 && this.field47 + (long)this.field48 <= (long)length + this.field51) {
var6 = (long)this.field48 + this.field47;
}
if (var10 > -1L && var6 > var10) {
int var8 = (int)(var6 - var10);
System.arraycopy(var1, (int)(var10 + (long)var2 - this.field51), this.readBuffer, (int)(var10 - this.field47), var8);
System.arraycopy(src, (int)(var10 + (long)srcIndex - this.field51), this.readBuffer, (int)(var10 - this.field47), var8);
}
this.field51 += (long)var3;
this.field51 += (long)length;
}
} catch (IOException var9) {
@@ -387,8 +387,8 @@ public class BufferedFile {
garbageValue = "-792629541"
)
@Export("colorStartTag")
static String colorStartTag(int var0) {
return "<col=" + Integer.toHexString(var0) + ">";
static String colorStartTag(int color) {
return "<col=" + Integer.toHexString(color) + ">";
}
@ObfuscatedName("er")
@@ -40,8 +40,8 @@ public class BufferedNetSocket extends AbstractSocket {
garbageValue = "1765046516"
)
@Export("isAvailable")
public boolean isAvailable(int var1) throws IOException {
return this.source.isAvailable(var1);
public boolean isAvailable(int length) throws IOException {
return this.source.isAvailable(length);
}
@ObfuscatedName("q")
@@ -70,8 +70,8 @@ public class BufferedNetSocket extends AbstractSocket {
garbageValue = "-1089665746"
)
@Export("read")
public int read(byte[] var1, int var2, int var3) throws IOException {
return this.source.read(var1, var2, var3);
public int read(byte[] dst, int dstIndex, int length) throws IOException {
return this.source.read(dst, dstIndex, length);
}
@ObfuscatedName("u")
@@ -80,8 +80,8 @@ public class BufferedNetSocket extends AbstractSocket {
garbageValue = "-86"
)
@Export("write")
public void write(byte[] var1, int var2, int var3) throws IOException {
this.sink.write(var1, var2, var3);
public void write(byte[] src, int srcIndex, int length) throws IOException {
this.sink.write(src, srcIndex, length);
}
@ObfuscatedName("g")
@@ -85,8 +85,8 @@ public class BufferedSink implements Runnable {
garbageValue = "0"
)
@Export("write")
void write(byte[] var1, int var2, int var3) throws IOException {
if (var3 >= 0 && var2 >= 0 && var3 + var2 <= var1.length) {
void write(byte[] src, int srcIndex, int length) throws IOException {
if (length >= 0 && srcIndex >= 0 && length + srcIndex <= src.length) {
synchronized(this) {
if (this.exception != null) {
throw new IOException(this.exception.toString());
@@ -98,18 +98,18 @@ public class BufferedSink implements Runnable {
var5 = this.position - this.limit - 1;
}
if (var5 < var3) {
if (var5 < length) {
throw new IOException("");
} else {
if (var3 + this.limit <= this.capacity) {
System.arraycopy(var1, var2, this.buffer, this.limit, var3);
if (length + this.limit <= this.capacity) {
System.arraycopy(src, srcIndex, this.buffer, this.limit, length);
} else {
int var6 = this.capacity - this.limit;
System.arraycopy(var1, var2, this.buffer, this.limit, var6);
System.arraycopy(var1, var6 + var2, this.buffer, 0, var3 - var6);
System.arraycopy(src, srcIndex, this.buffer, this.limit, var6);
System.arraycopy(src, var6 + srcIndex, this.buffer, 0, length - var6);
}
this.limit = (var3 + this.limit) % this.capacity;
this.limit = (length + this.limit) % this.capacity;
this.notifyAll();
}
}
@@ -142,29 +142,31 @@ public class BufferedSink implements Runnable {
@ObfuscatedName("run")
public void run() {
while (true) {
synchronized(this){}
synchronized(this) {
;
}
while (true) {
boolean var13 = false;
boolean var1 = false;
int var1;
int var2;
try {
var13 = true;
var1 = true;
if (this.exception != null) {
return;
}
if (this.position <= this.limit) {
var1 = this.limit - this.position;
var2 = this.limit - this.position;
} else {
var1 = this.capacity - this.position + this.limit;
var2 = this.capacity - this.position + this.limit;
}
if (var1 <= 0) {
if (var2 <= 0) {
try {
this.outputStream.flush();
} catch (IOException var17) {
this.exception = var17;
} catch (IOException var20) {
this.exception = var20;
return;
}
@@ -179,31 +181,31 @@ public class BufferedSink implements Runnable {
continue;
}
var13 = false;
var1 = false;
} finally {
if (var13) {
;
if (var1) {
}
}
try {
if (var1 + this.position <= this.capacity) {
this.outputStream.write(this.buffer, this.position, var1);
} else {
int var2 = this.capacity - this.position;
if (var2 + this.position <= this.capacity) {
this.outputStream.write(this.buffer, this.position, var2);
this.outputStream.write(this.buffer, 0, var1 - var2);
} else {
int var3 = this.capacity - this.position;
this.outputStream.write(this.buffer, this.position, var3);
this.outputStream.write(this.buffer, 0, var2 - var3);
}
} catch (IOException var16) {
IOException var3 = var16;
} catch (IOException var17) {
IOException var4 = var17;
synchronized(this) {
this.exception = var3;
this.exception = var4;
return;
}
}
synchronized(this) {
this.position = (var1 + this.position) % this.capacity;
this.position = (var2 + this.position) % this.capacity;
}
if (!this.isClosed()) {
@@ -221,13 +223,13 @@ public class BufferedSink implements Runnable {
garbageValue = "449588720"
)
static void method3603() {
Tiles.field908 = (byte[][][])null;
Fonts.field350 = (byte[][][])null;
class32.field1157 = (byte[][][])null;
class307.field1155 = (byte[][][])null;
Tiles.field910 = (int[][][])null;
Tiles.field909 = (byte[][][])null;
Huffman.field398 = (int[][])null;
Tiles.field908 = ((byte[][][])null);
Fonts.field350 = ((byte[][][])null);
class32.field1157 = ((byte[][][])null);
class307.field1155 = ((byte[][][])null);
Tiles.field910 = ((int[][][])null);
Tiles.field909 = ((byte[][][])null);
Huffman.field398 = ((int[][])null);
class13.field1112 = null;
Formatting.field353 = null;
class214.field1131 = null;
@@ -63,10 +63,10 @@ public class BufferedSource implements Runnable {
garbageValue = "1727240458"
)
@Export("isAvailable")
boolean isAvailable(int var1) throws IOException {
if (var1 == 0) {
boolean isAvailable(int length) throws IOException {
if (length == 0) {
return true;
} else if (var1 > 0 && var1 < this.capacity) {
} else if (length > 0 && length < this.capacity) {
synchronized(this) {
int var3;
if (this.position <= this.limit) {
@@ -75,7 +75,7 @@ public class BufferedSource implements Runnable {
var3 = this.capacity - this.position + this.limit;
}
if (var3 < var1) {
if (var3 < length) {
if (this.exception != null) {
throw new IOException(this.exception.toString());
} else {
@@ -144,8 +144,8 @@ public class BufferedSource implements Runnable {
garbageValue = "-37"
)
@Export("read")
int read(byte[] var1, int var2, int var3) throws IOException {
if (var3 >= 0 && var2 >= 0 && var3 + var2 <= var1.length) {
int read(byte[] dst, int dstIndex, int length) throws IOException {
if (length >= 0 && dstIndex >= 0 && length + dstIndex <= dst.length) {
synchronized(this) {
int var5;
if (this.position <= this.limit) {
@@ -154,24 +154,24 @@ public class BufferedSource implements Runnable {
var5 = this.capacity - this.position + this.limit;
}
if (var3 > var5) {
var3 = var5;
if (length > var5) {
length = var5;
}
if (var3 == 0 && this.exception != null) {
if (length == 0 && this.exception != null) {
throw new IOException(this.exception.toString());
} else {
if (var3 + this.position <= this.capacity) {
System.arraycopy(this.buffer, this.position, var1, var2, var3);
if (length + this.position <= this.capacity) {
System.arraycopy(this.buffer, this.position, dst, dstIndex, length);
} else {
int var6 = this.capacity - this.position;
System.arraycopy(this.buffer, this.position, var1, var2, var6);
System.arraycopy(this.buffer, 0, var1, var6 + var2, var3 - var6);
System.arraycopy(this.buffer, this.position, dst, dstIndex, var6);
System.arraycopy(this.buffer, 0, dst, var6 + dstIndex, length - var6);
}
this.position = (var3 + this.position) % this.capacity;
this.position = (length + this.position) % this.capacity;
this.notifyAll();
return var3;
return length;
}
}
} else {
@@ -292,49 +292,49 @@ public final class Bzip2Decompressor {
}
int var33;
int var50;
for (var50 = 0; var50 < var28; ++var50) {
var33 = method3708(5, var0);
int var52;
for (var33 = 0; var33 < var28; ++var33) {
var52 = method3708(5, var0);
for (var25 = 0; var25 < var27; ++var25) {
while (true) {
var24 = method3711(var0);
if (var24 == 0) {
var0.field88[var50][var25] = (byte)var33;
var0.field88[var33][var25] = (byte)var52;
break;
}
var24 = method3711(var0);
if (var24 == 0) {
++var33;
++var52;
} else {
--var33;
--var52;
}
}
}
}
for (var50 = 0; var50 < var28; ++var50) {
byte var51 = 32;
byte var34 = 0;
for (var33 = 0; var33 < var28; ++var33) {
byte var34 = 32;
byte var35 = 0;
for (var25 = 0; var25 < var27; ++var25) {
if (var0.field88[var50][var25] > var34) {
var34 = var0.field88[var50][var25];
if (var0.field88[var33][var25] > var35) {
var35 = var0.field88[var33][var25];
}
if (var0.field88[var50][var25] < var51) {
var51 = var0.field88[var50][var25];
if (var0.field88[var33][var25] < var34) {
var34 = var0.field88[var33][var25];
}
}
method3706(var0.field89[var50], var0.field90[var50], var0.field91[var50], var0.field88[var50], var51, var34, var27);
var0.field92[var50] = var51;
method3706(var0.field89[var33], var0.field90[var33], var0.field91[var33], var0.field88[var33], var34, var35, var27);
var0.field92[var33] = var34;
}
var33 = var0.field80 + 1;
int var52 = -1;
byte var35 = 0;
var52 = var0.field80 + 1;
int var53 = -1;
byte var54 = 0;
for (var25 = 0; var25 <= 255; ++var25) {
var0.field77[var25] = 0;
@@ -355,17 +355,17 @@ public final class Bzip2Decompressor {
int var39 = 0;
byte var40;
if (var35 == 0) {
++var52;
var35 = 50;
var40 = var0.field86[var52];
if (var54 == 0) {
++var53;
var54 = 50;
var40 = var0.field86[var53];
var19 = var0.field92[var40];
var20 = var0.field89[var40];
var22 = var0.field91[var40];
var21 = var0.field90[var40];
}
int var41 = var35 - 1;
int var41 = var54 - 1;
int var42 = var19;
int var43;
@@ -378,46 +378,46 @@ public final class Bzip2Decompressor {
int var45 = var22[var43 - var21[var42]];
while (true) {
int[] var10000;
int var54;
while (var45 != var33) {
int var46;
int var47;
if (var45 != 0 && var45 != 1) {
var46 = var45 - 1;
int[] var46;
int var48;
if (var46 < 16) {
var47 = var0.field85[0];
while (var45 != var52) {
int var49;
if (var45 != 0 && var45 != 1) {
var48 = var45 - 1;
int var10003;
int var50;
if (var48 < 16) {
var49 = var0.field85[0];
for (var24 = var0.field84[var47 + var46]; var46 > 3; var46 -= 4) {
var48 = var47 + var46;
var0.field84[var48] = var0.field84[var48 - 1];
var0.field84[var48 - 1] = var0.field84[var48 - 2];
var0.field84[var48 - 2] = var0.field84[var48 - 3];
var0.field84[var48 - 3] = var0.field84[var48 - 4];
for (var24 = var0.field84[var49 + var48]; var48 > 3; var48 -= 4) {
var50 = var49 + var48;
var0.field84[var50] = var0.field84[var50 - 1];
var0.field84[var50 - 1] = var0.field84[var50 - 2];
var0.field84[var50 - 2] = var0.field84[var50 - 3];
var0.field84[var50 - 3] = var0.field84[var50 - 4];
}
while (var46 > 0) {
var0.field84[var47 + var46] = var0.field84[var47 + var46 - 1];
--var46;
while (var48 > 0) {
var0.field84[var49 + var48] = var0.field84[var49 + var48 - 1];
--var48;
}
var0.field84[var47] = var24;
var0.field84[var49] = var24;
} else {
var48 = var46 / 16;
int var49 = var46 % 16;
var47 = var0.field85[var48] + var49;
var50 = var48 / 16;
int var51 = var48 % 16;
var49 = var0.field85[var50] + var51;
for (var24 = var0.field84[var47]; var47 > var0.field85[var48]; --var47) {
var0.field84[var47] = var0.field84[var47 - 1];
for (var24 = var0.field84[var49]; var49 > var0.field85[var50]; --var49) {
var0.field84[var49] = var0.field84[var49 - 1];
}
for (var54 = var0.field85[var48]++; var48 > 0; --var48) {
var54 = var0.field85[var48]--;
var0.field84[var0.field85[var48]] = var0.field84[var0.field85[var48 - 1] + 16 - 1];
for (var10003 = var0.field85[var50]++; var50 > 0; --var50) {
var10003 = var0.field85[var50]--;
var0.field84[var0.field85[var50]] = var0.field84[var0.field85[var50 - 1] + 16 - 1];
}
var54 = var0.field85[0]--;
var10003 = var0.field85[0]--;
var0.field84[var0.field85[0]] = var24;
if (var0.field85[0] == 0) {
var36 = 4095;
@@ -433,13 +433,13 @@ public final class Bzip2Decompressor {
}
}
var54 = var0.field77[var0.field83[var24 & 255] & 255]++;
var10003 = var0.field77[var0.field83[var24 & 255] & 255]++;
WorldMapSection0.field1056[var39] = var0.field83[var24 & 255] & 255;
++var39;
if (var41 == 0) {
++var52;
++var53;
var41 = 50;
var40 = var0.field86[var52];
var40 = var0.field86[var53];
var19 = var0.field92[var40];
var20 = var0.field89[var40];
var22 = var0.field91[var40];
@@ -456,21 +456,21 @@ public final class Bzip2Decompressor {
var45 = var22[var43 - var21[var42]];
} else {
var46 = -1;
var47 = 1;
var48 = -1;
var49 = 1;
do {
if (var45 == 0) {
var46 += var47;
var48 += var49;
} else if (var45 == 1) {
var46 += var47 * 2;
var48 += var49 * 2;
}
var47 *= 2;
var49 *= 2;
if (var41 == 0) {
++var52;
++var53;
var41 = 50;
var40 = var0.field86[var52];
var40 = var0.field86[var53];
var19 = var0.field92[var40];
var20 = var0.field89[var40];
var22 = var0.field91[var40];
@@ -488,11 +488,11 @@ public final class Bzip2Decompressor {
var45 = var22[var43 - var21[var42]];
} while(var45 == 0 || var45 == 1);
++var46;
++var48;
var24 = var0.field83[var0.field84[var0.field85[0]] & 255];
var10000 = var0.field77;
var46 = var0.field77;
for (var10000[var24 & 255] += var46; var46 > 0; --var46) {
for (var46[var24 & 255] += var48; var48 > 0; --var48) {
WorldMapSection0.field1056[var39] = var24 & 255;
++var39;
}
@@ -508,16 +508,16 @@ public final class Bzip2Decompressor {
}
for (var25 = 1; var25 <= 256; ++var25) {
var10000 = var0.field79;
var10000[var25] += var0.field79[var25 - 1];
var46 = var0.field79;
var46[var25] += var0.field79[var25 - 1];
}
for (var25 = 0; var25 < var39; ++var25) {
var24 = (byte)(WorldMapSection0.field1056[var25] & 255);
var10000 = WorldMapSection0.field1056;
int var53 = var0.field79[var24 & 255];
var10000[var53] |= var25 << 8;
var54 = var0.field79[var24 & 255]++;
var46 = WorldMapSection0.field1056;
var48 = var0.field79[var24 & 255];
var46[var48] |= var25 << 8;
++var0.field79[var24 & 255];
}
var0.field75 = WorldMapSection0.field1056[var0.field74] >> 8;
+28 -28
View File
@@ -118,7 +118,7 @@ public final class Canvas extends java.awt.Canvas {
static int method861(int var0, Script var1, boolean var2) {
int var3;
int var4;
Widget var6;
Widget var5;
if (var0 == ScriptOpcodes.CC_CREATE) {
RouteStrategy.Interpreter_intStackSize -= 3;
var3 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
@@ -127,62 +127,62 @@ public final class Canvas extends java.awt.Canvas {
if (var4 == 0) {
throw new RuntimeException();
} else {
var6 = Huffman.getWidget(var3);
if (var6.children == null) {
var6.children = new Widget[var9 + 1];
var5 = Huffman.getWidget(var3);
if (var5.children == null) {
var5.children = new Widget[var9 + 1];
}
if (var6.children.length <= var9) {
if (var5.children.length <= var9) {
Widget[] var7 = new Widget[var9 + 1];
for (int var8 = 0; var8 < var6.children.length; ++var8) {
var7[var8] = var6.children[var8];
for (int var8 = 0; var8 < var5.children.length; ++var8) {
var7[var8] = var5.children[var8];
}
var6.children = var7;
var5.children = var7;
}
if (var9 > 0 && var6.children[var9 - 1] == null) {
if (var9 > 0 && var5.children[var9 - 1] == null) {
throw new RuntimeException("" + (var9 - 1));
} else {
Widget var10 = new Widget();
var10.type = var4;
var10.parentId = var10.id = var6.id;
var10.parentId = var10.id = var5.id;
var10.childIndex = var9;
var10.isIf3 = true;
var6.children[var9] = var10;
var5.children[var9] = var10;
if (var2) {
WorldMapIcon1.field1030 = var10;
} else {
class12.field1111 = var10;
}
class22.method295(var6);
class22.method295(var5);
return 1;
}
}
} else {
Widget var5;
Widget var6;
if (var0 == ScriptOpcodes.CC_DELETE) {
var5 = var2 ? WorldMapIcon1.field1030 : class12.field1111;
var6 = Huffman.getWidget(var5.id);
var6.children[var5.childIndex] = null;
class22.method295(var6);
var6 = var2 ? WorldMapIcon1.field1030 : class12.field1111;
var5 = Huffman.getWidget(var6.id);
var5.children[var6.childIndex] = null;
class22.method295(var5);
return 1;
} else if (var0 == ScriptOpcodes.CC_DELETEALL) {
var5 = Huffman.getWidget(Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]);
var5.children = null;
class22.method295(var5);
var6 = Huffman.getWidget(Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]);
var6.children = null;
class22.method295(var6);
return 1;
} else if (var0 != ScriptOpcodes.CC_FIND) {
if (var0 == ScriptOpcodes.IF_FIND) {
var5 = Huffman.getWidget(Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]);
if (var5 != null) {
var6 = Huffman.getWidget(Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize]);
if (var6 != null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 1;
if (var2) {
WorldMapIcon1.field1030 = var5;
WorldMapIcon1.field1030 = var6;
} else {
class12.field1111 = var5;
class12.field1111 = var6;
}
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
@@ -196,13 +196,13 @@ public final class Canvas extends java.awt.Canvas {
RouteStrategy.Interpreter_intStackSize -= 2;
var3 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
var4 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1];
var6 = class204.getWidgetChild(var3, var4);
if (var6 != null && var4 != -1) {
var5 = class204.getWidgetChild(var3, var4);
if (var5 != null && var4 != -1) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 1;
if (var2) {
WorldMapIcon1.field1030 = var6;
WorldMapIcon1.field1030 = var5;
} else {
class12.field1111 = var6;
class12.field1111 = var5;
}
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
@@ -30,7 +30,7 @@ public class ChatChannel {
garbageValue = "463993373"
)
@Export("addMessage")
Message addMessage(int var1, String var2, String var3, String var4) {
Message addMessage(int type, String sender, String text, String prefix) {
Message var5 = this.messages[99];
for (int var6 = this.count; var6 > 0; --var6) {
@@ -40,11 +40,11 @@ public class ChatChannel {
}
if (var5 == null) {
var5 = new Message(var1, var2, var4, var3);
var5 = new Message(type, sender, prefix, text);
} else {
var5.remove();
var5.removeDual();
var5.set(var1, var2, var4, var3);
var5.set(type, sender, prefix, text);
}
this.messages[0] = var5;
@@ -61,8 +61,8 @@ public class ChatChannel {
garbageValue = "-195254780"
)
@Export("getMessage")
Message getMessage(int var1) {
return var1 >= 0 && var1 < this.count ? this.messages[var1] : null;
Message getMessage(int index) {
return index >= 0 && index < this.count ? this.messages[index] : null;
}
@ObfuscatedName("q")
+11 -10
View File
@@ -26,7 +26,8 @@ public class ClanChat extends UserList {
@Export("owner")
public String owner;
@ObfuscatedName("k")
public byte field96;
@Export("minKick")
public byte minKick;
@ObfuscatedName("n")
@ObfuscatedGetter(
intValue = -1534670751
@@ -95,9 +96,9 @@ public class ClanChat extends UserList {
garbageValue = "455791964"
)
@Export("readUpdate")
public final void readUpdate(Buffer var1) {
this.method77(var1.readStringCp1252NullTerminated());
long var2 = var1.readLong();
public final void readUpdate(Buffer buffer) {
this.method77(buffer.readStringCp1252NullTerminated());
long var2 = buffer.readLong();
long var4 = var2;
String var6;
int var7;
@@ -126,17 +127,17 @@ public class ClanChat extends UserList {
}
this.method76(var6);
this.field96 = var1.readByte();
var7 = var1.readUnsignedByte();
this.minKick = buffer.readByte();
var7 = buffer.readUnsignedByte();
if (var7 != 255) {
this.clear();
for (int var12 = 0; var12 < var7; ++var12) {
ClanMate var13 = (ClanMate)this.addLastNoPreviousUsername(new Username(var1.readStringCp1252NullTerminated(), this.loginType));
int var10 = var1.readUnsignedShort();
ClanMate var13 = (ClanMate)this.addLastNoPreviousUsername(new Username(buffer.readStringCp1252NullTerminated(), this.loginType));
int var10 = buffer.readUnsignedShort();
var13.set(var10, ++this.field97 - 1);
var13.rank = var1.readByte();
var1.readStringCp1252NullTerminated();
var13.rank = buffer.readByte();
buffer.readStringCp1252NullTerminated();
this.method79(var13);
}
}
File diff suppressed because it is too large Load Diff
+12 -12
View File
@@ -27,7 +27,7 @@ public abstract class Clock {
garbageValue = "-126803683"
)
@Export("wait")
public abstract int wait(int var1, int var2);
public abstract int wait(int cycleMs, int minSleepMs);
@ObfuscatedName("m")
public static String method3534(long var0) {
@@ -41,22 +41,22 @@ public abstract class Clock {
++var2;
}
char var4;
StringBuilder var8;
for (var8 = new StringBuilder(var2); var0 != 0L; var8.append(var4)) {
StringBuilder var4;
char var8;
for (var4 = new StringBuilder(var2); var0 != 0L; var4.append(var8)) {
long var5 = var0;
var0 /= 37L;
var4 = class306.base37Table[(int)(var5 - 37L * var0)];
if (var4 == '_') {
int var7 = var8.length() - 1;
var8.setCharAt(var7, Character.toUpperCase(var8.charAt(var7)));
var4 = 160;
var8 = class306.base37Table[(int)(var5 - 37L * var0)];
if (var8 == '_') {
int var7 = var4.length() - 1;
var4.setCharAt(var7, Character.toUpperCase(var4.charAt(var7)));
var8 = 160;
}
}
var8.reverse();
var8.setCharAt(0, Character.toUpperCase(var8.charAt(0)));
return var8.toString();
var4.reverse();
var4.setCharAt(0, Character.toUpperCase(var4.charAt(0)));
return var4.toString();
}
} else {
return null;
@@ -249,8 +249,8 @@ public class CollisionMap {
public void method92(int var1, int var2) {
var1 -= this.xInset;
var2 -= this.yInset;
int[] var10000 = this.flags[var1];
var10000[var2] |= 2097152;
int[] var3 = this.flags[var1];
var3[var2] |= 2097152;
}
@ObfuscatedName("o")
@@ -261,8 +261,8 @@ public class CollisionMap {
public void method93(int var1, int var2) {
var1 -= this.xInset;
var2 -= this.yInset;
int[] var10000 = this.flags[var1];
var10000[var2] |= 262144;
int[] var3 = this.flags[var1];
var3[var2] |= 262144;
}
@ObfuscatedName("u")
@@ -271,8 +271,8 @@ public class CollisionMap {
garbageValue = "953350100"
)
void method94(int var1, int var2, int var3) {
int[] var10000 = this.flags[var1];
var10000[var2] |= var3;
int[] var4 = this.flags[var1];
var4[var2] |= var3;
}
@ObfuscatedName("g")
@@ -465,8 +465,8 @@ public class CollisionMap {
garbageValue = "52290294"
)
void method97(int var1, int var2, int var3) {
int[] var10000 = this.flags[var1];
var10000[var2] &= ~var3;
int[] var4 = this.flags[var1];
var4[var2] &= ~var3;
}
@ObfuscatedName("x")
@@ -477,8 +477,8 @@ public class CollisionMap {
public void method98(int var1, int var2) {
var1 -= this.xInset;
var2 -= this.yInset;
int[] var10000 = this.flags[var1];
var10000[var2] &= -262145;
int[] var3 = this.flags[var1];
var3[var2] &= -262145;
}
@ObfuscatedName("m")
+5 -6
View File
@@ -6,8 +6,7 @@ import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("hu")
@Implements("Coord")
public class Coord
{
public class Coord {
@ObfuscatedName("m")
@ObfuscatedGetter(
intValue = 503621925
@@ -69,8 +68,8 @@ public class Coord
garbageValue = "-1"
)
@Export("equals0")
boolean equals0(Coord var1) {
return this.plane != var1.plane ? false : (this.x != var1.x ? false : this.y == var1.y);
boolean equals0(Coord other) {
return this.plane != other.plane ? false : (this.x != other.x ? false : this.y == other.y);
}
@ObfuscatedName("q")
@@ -79,8 +78,8 @@ public class Coord
garbageValue = "997364398"
)
@Export("toString0")
String toString0(String var1) {
return this.plane + var1 + (this.x >> 6) + var1 + (this.y >> 6) + var1 + (this.x & 63) + var1 + (this.y & 63);
String toString0(String separator) {
return this.plane + separator + (this.x >> 6) + separator + (this.y >> 6) + separator + (this.x & 63) + separator + (this.y & 63);
}
@ObfuscatedName("equals")
@@ -126,12 +126,12 @@ public class Decimator {
garbageValue = "-1419232405"
)
@Export("scaleRate")
int scaleRate(int var1) {
int scaleRate(int rate) {
if (this.table != null) {
var1 = (int)((long)this.outputRate * (long)var1 / (long)this.inputRate);
rate = (int)((long)this.outputRate * (long)rate / (long)this.inputRate);
}
return var1;
return rate;
}
@ObfuscatedName("q")
@@ -140,12 +140,12 @@ public class Decimator {
garbageValue = "25"
)
@Export("scalePosition")
int scalePosition(int var1) {
int scalePosition(int position) {
if (this.table != null) {
var1 = (int)((long)this.outputRate * (long)var1 / (long)this.inputRate) + 6;
position = (int)((long)this.outputRate * (long)position / (long)this.inputRate) + 6;
}
return var1;
return position;
}
@ObfuscatedName("f")
@@ -6,13 +6,13 @@ import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("ka")
@Implements("DefaultsGroup")
public class DefaultsGroup
{
public class DefaultsGroup {
@ObfuscatedName("m")
@ObfuscatedSignature(
signature = "Lka;"
)
static final DefaultsGroup field3810;
@Export("DefaultsGroup_graphics")
static final DefaultsGroup DefaultsGroup_graphics;
@ObfuscatedName("e")
@ObfuscatedGetter(
intValue = -2077113503
@@ -39,6 +39,6 @@ public class DefaultsGroup
}
static {
field3810 = new DefaultsGroup(3);
DefaultsGroup_graphics = new DefaultsGroup(3);
}
}
@@ -39,8 +39,8 @@ public final class DemotingHashTable {
@ObfuscatedName("m")
@Export("get")
public Object get(long var1) {
Wrapper var3 = (Wrapper)this.hashTable.get(var1);
public Object get(long key) {
Wrapper var3 = (Wrapper)this.hashTable.get(key);
if (var3 == null) {
return null;
} else {
@@ -70,8 +70,8 @@ public final class DemotingHashTable {
@ObfuscatedName("f")
@Export("remove")
void remove(long var1) {
Wrapper var3 = (Wrapper)this.hashTable.get(var1);
void remove(long key) {
Wrapper var3 = (Wrapper)this.hashTable.get(key);
this.removeWrapper(var3);
}
@@ -80,31 +80,31 @@ public final class DemotingHashTable {
signature = "(Leu;)V"
)
@Export("removeWrapper")
void removeWrapper(Wrapper var1) {
if (var1 != null) {
var1.remove();
var1.removeDual();
this.remaining += var1.size;
void removeWrapper(Wrapper wrapper) {
if (wrapper != null) {
wrapper.remove();
wrapper.removeDual();
this.remaining += wrapper.size;
}
}
@ObfuscatedName("w")
@Export("put")
public void put(Object var1, long var2, int var4) {
if (var4 > this.capacity) {
public void put(Object value, long key, int size) {
if (size > this.capacity) {
throw new IllegalStateException();
} else {
this.remove(var2);
this.remaining -= var4;
this.remove(key);
this.remaining -= size;
while (this.remaining < 0) {
Wrapper var5 = (Wrapper)this.queue.removeLast();
this.removeWrapper(var5);
}
DirectWrapper var6 = new DirectWrapper(var1, var4);
this.hashTable.put(var6, var2);
DirectWrapper var6 = new DirectWrapper(value, size);
this.hashTable.put(var6, key);
this.queue.add(var6);
var6.keyDual = 0L;
}
@@ -112,7 +112,7 @@ public final class DemotingHashTable {
@ObfuscatedName("o")
@Export("demote")
public void demote(int var1) {
public void demote(int softeningLevel) {
for (Wrapper var2 = (Wrapper)this.queue.last(); var2 != null; var2 = (Wrapper)this.queue.previous()) {
if (var2.isSoft()) {
if (var2.get() == null) {
@@ -120,7 +120,7 @@ public final class DemotingHashTable {
var2.removeDual();
this.remaining += var2.size;
}
} else if (++var2.keyDual > (long)var1) {
} else if (++var2.keyDual > (long)softeningLevel) {
SoftWrapper var3 = new SoftWrapper(var2.get(), var2.size);
this.hashTable.put(var3, var2.key);
DualNodeDeque.DualNodeDeque_addBefore(var3, var2);
@@ -45,15 +45,15 @@ public class DevicePcmPlayer extends PcmPlayer {
garbageValue = "-1738349775"
)
@Export("open")
protected void open(int var1) throws LineUnavailableException {
protected void open(int bufferSize) throws LineUnavailableException {
try {
Info var2 = new Info(SourceDataLine.class, this.format, var1 << (PcmPlayer.isStereo ? 2 : 1));
Info var2 = new Info(SourceDataLine.class, this.format, bufferSize << (PcmPlayer.isStereo ? 2 : 1));
this.line = (SourceDataLine)AudioSystem.getLine(var2);
this.line.open();
this.line.start();
this.capacity2 = var1;
this.capacity2 = bufferSize;
} catch (LineUnavailableException var5) {
int var3 = (var1 >>> 1 & 1431655765) + (var1 & 1431655765);
int var3 = (bufferSize >>> 1 & 1431655765) + (bufferSize & 1431655765);
var3 = (var3 >>> 2 & 858993459) + (var3 & 858993459);
var3 = (var3 >>> 4) + var3 & 252645135;
var3 += var3 >>> 8;
@@ -64,7 +64,7 @@ public class DevicePcmPlayer extends PcmPlayer {
throw var5;
}
this.open(World.method1759(var1));
this.open(World.method1759(bufferSize));
}
}
@@ -358,17 +358,17 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
for (var19 = 0; var19 < var10.rawHeight; ++var19) {
for (var20 = 0; var20 < var10.rawWidth; ++var20) {
var21 = var12 + var20 * (var10.paddingX + 32);
var33 = var13 + var19 * (var10.paddingY + 32);
var26 = var13 + var19 * (var10.paddingY + 32);
if (var22 < 20) {
var21 += var10.inventoryXOffsets[var22];
var33 += var10.inventoryYOffsets[var22];
var26 += var10.inventoryYOffsets[var22];
}
if (var10.itemIds[var22] <= 0) {
if (var10.inventorySprites != null && var22 < 20) {
Sprite var36 = var10.getInventorySprite(var22);
if (var36 != null) {
var36.drawAt2(var21, var33);
var36.drawAt2(var21, var26);
} else if (Widget.field957) {
class22.method295(var10);
}
@@ -376,38 +376,38 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
} else {
boolean var35 = false;
boolean var46 = false;
var26 = var10.itemIds[var22] - 1;
if (var21 + 32 > var2 && var21 < var4 && var33 + 32 > var3 && var33 < var5 || var10 == dragInventoryWidget && var22 == Client.dragItemSlotSource) {
var25 = var10.itemIds[var22] - 1;
if (var21 + 32 > var2 && var21 < var4 && var26 + 32 > var3 && var26 < var5 || var10 == dragInventoryWidget && var22 == Client.dragItemSlotSource) {
Sprite var42;
if (Client.isItemSelected == 1 && var22 == HealthBarDefinition.selectedItemSlot && var10.id == ServerPacket.selectedItemWidget) {
var42 = class226.getItemSprite(var26, var10.itemQuantities[var22], 2, 0, 2, false);
var42 = class226.getItemSprite(var25, var10.itemQuantities[var22], 2, 0, 2, false);
} else {
var42 = class226.getItemSprite(var26, var10.itemQuantities[var22], 1, 3153952, 2, false);
var42 = class226.getItemSprite(var25, var10.itemQuantities[var22], 1, 3153952, 2, false);
}
if (var42 != null) {
if (var10 == dragInventoryWidget && var22 == Client.dragItemSlotSource) {
var24 = MouseHandler.MouseHandler_x - Client.field205;
var25 = MouseHandler.MouseHandler_y - Client.field206;
var33 = MouseHandler.MouseHandler_x - Client.field205;
var24 = MouseHandler.MouseHandler_y - Client.field206;
if (var33 < 5 && var33 > -5) {
var33 = 0;
}
if (var24 < 5 && var24 > -5) {
var24 = 0;
}
if (var25 < 5 && var25 > -5) {
var25 = 0;
}
if (Client.itemDragDuration < 5) {
var33 = 0;
var24 = 0;
var25 = 0;
}
var42.method310(var21 + var24, var33 + var25, 128);
var42.method310(var21 + var33, var26 + var24, 128);
if (var1 != -1) {
Widget var47 = var0[var1 & 65535];
int var45;
if (var33 + var25 < Rasterizer2D.Rasterizer2D_yClipStart && var47.scrollY > 0) {
var45 = (Rasterizer2D.Rasterizer2D_yClipStart - var33 - var25) * Client.field183 / 3;
if (var26 + var24 < Rasterizer2D.Rasterizer2D_yClipStart && var47.scrollY > 0) {
var45 = (Rasterizer2D.Rasterizer2D_yClipStart - var26 - var24) * Client.field183 / 3;
if (var45 > Client.field183 * 10) {
var45 = Client.field183 * 10;
}
@@ -421,8 +421,8 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
class22.method295(var47);
}
if (var25 + var33 + 32 > Rasterizer2D.Rasterizer2D_yClipEnd && var47.scrollY < var47.scrollHeight - var47.height) {
var45 = (var33 + var25 + 32 - Rasterizer2D.Rasterizer2D_yClipEnd) * Client.field183 / 3;
if (var24 + var26 + 32 > Rasterizer2D.Rasterizer2D_yClipEnd && var47.scrollY < var47.scrollHeight - var47.height) {
var45 = (var26 + var24 + 32 - Rasterizer2D.Rasterizer2D_yClipEnd) * Client.field183 / 3;
if (var45 > Client.field183 * 10) {
var45 = Client.field183 * 10;
}
@@ -437,9 +437,9 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
}
}
} else if (var10 == BoundaryObject.field40 && var22 == Client.field204) {
var42.method310(var21, var33, 128);
var42.method310(var21, var26, 128);
} else {
var42.drawAt2(var21, var33);
var42.drawAt2(var21, var26);
}
} else {
class22.method295(var10);
@@ -569,16 +569,16 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
} else {
Rasterizer2D.Rasterizer2D_expandClip(var12, var13, var12 + var10.width, var13 + var10.height);
var21 = (var19 - 1 + var10.width) / var19;
var33 = (var20 - 1 + var10.height) / var20;
var26 = (var20 - 1 + var10.height) / var20;
for (var24 = 0; var24 < var21; ++var24) {
for (var25 = 0; var25 < var33; ++var25) {
for (var33 = 0; var33 < var21; ++var33) {
for (var24 = 0; var24 < var26; ++var24) {
if (var10.spriteAngle != 0) {
var37.method317(var19 / 2 + var12 + var19 * var24, var20 / 2 + var13 + var25 * var20, var10.spriteAngle, 4096);
var37.method317(var19 / 2 + var12 + var19 * var33, var20 / 2 + var13 + var24 * var20, var10.spriteAngle, 4096);
} else if (var14 != 0) {
var37.method310(var12 + var19 * var24, var13 + var20 * var25, 256 - (var14 & 255));
var37.method310(var12 + var19 * var33, var13 + var20 * var24, 256 - (var14 & 255));
} else {
var37.drawAt2(var12 + var19 * var24, var13 + var25 * var20);
var37.drawAt2(var12 + var19 * var33, var13 + var24 * var20);
}
}
}
@@ -602,7 +602,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
if (var10.itemId != -1) {
var28 = Skills.getItemDefinition(var10.itemId);
if (var28 != null) {
var28 = var28.method144(var10.itemQuantity);
var28 = var28.getCountObj(var10.itemQuantity);
var43 = var28.getModel(1);
if (var43 != null) {
var43.calculateBoundsCylinder();
@@ -631,17 +631,17 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
}
Rasterizer3D.method2989(var10.width / 2 + var12, var10.height / 2 + var13);
var33 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16;
var24 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16;
var26 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16;
var33 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16;
if (var43 != null) {
if (!var10.isIf3) {
var43.method199(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var33, var24);
var43.method199(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var26, var33);
} else {
var43.calculateBoundsCylinder();
if (var10.modelOrthog) {
var43.method200(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var21 + var33 + var10.modelOffsetY, var24 + var10.modelOffsetY, var10.modelZoom);
var43.method200(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var21 + var26 + var10.modelOffsetY, var33 + var10.modelOffsetY, var10.modelZoom);
} else {
var43.method199(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var33 + var21 + var10.modelOffsetY, var24 + var10.modelOffsetY);
var43.method199(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var26 + var21 + var10.modelOffsetY, var33 + var10.modelOffsetY);
}
}
}
@@ -670,14 +670,14 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
var29 = BufferedFile.colorStartTag(16748608) + var28.name + "</col> " + 'x' + GrandExchangeEvent.method88(var10.itemQuantities[var19]);
}
var25 = var21 * (var10.paddingX + 115) + var12;
var26 = var20 * (var10.paddingY + 12) + var13;
var24 = var21 * (var10.paddingX + 115) + var12;
var25 = var20 * (var10.paddingY + 12) + var13;
if (var10.textXAlignment == 0) {
var27.draw(var29, var25, var26, var10.color, var10.textShadowed ? 0 : -1);
var27.draw(var29, var24, var25, var10.color, var10.textShadowed ? 0 : -1);
} else if (var10.textXAlignment == 1) {
var27.drawCentered(var29, var10.width / 2 + var25, var26, var10.color, var10.textShadowed ? 0 : -1);
var27.drawCentered(var29, var10.width / 2 + var24, var25, var10.color, var10.textShadowed ? 0 : -1);
} else {
var27.drawRightAligned(var29, var25 + var10.width - 1, var26, var10.color, var10.textShadowed ? 0 : -1);
var27.drawRightAligned(var29, var24 + var10.width - 1, var25, var10.color, var10.textShadowed ? 0 : -1);
}
}
@@ -694,43 +694,43 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
String var31;
for (var30 = MouseRecorder.method1194(var30, var10); var30.length() > 0; var19 = var19 + var39.ascent + 1) {
var24 = var30.indexOf("<br>");
if (var24 != -1) {
var31 = var30.substring(0, var24);
var30 = var30.substring(var24 + 4);
var33 = var30.indexOf("<br>");
if (var33 != -1) {
var31 = var30.substring(0, var33);
var30 = var30.substring(var33 + 4);
} else {
var31 = var30;
var30 = "";
}
var25 = var39.stringWidth(var31);
if (var25 > var22) {
var22 = var25;
var24 = var39.stringWidth(var31);
if (var24 > var22) {
var22 = var24;
}
}
var22 += 6;
var19 += 7;
var24 = var12 + var10.width - 5 - var22;
var25 = var13 + var10.height + 5;
if (var24 < var12 + 5) {
var24 = var12 + 5;
var33 = var12 + var10.width - 5 - var22;
var24 = var13 + var10.height + 5;
if (var33 < var12 + 5) {
var33 = var12 + 5;
}
if (var22 + var24 > var4) {
var24 = var4 - var22;
if (var22 + var33 > var4) {
var33 = var4 - var22;
}
if (var25 + var19 > var5) {
var25 = var5 - var19;
if (var24 + var19 > var5) {
var24 = var5 - var19;
}
Rasterizer2D.Rasterizer2D_fillRectangle(var24, var25, var22, var19, 16777120);
Rasterizer2D.Rasterizer2D_drawRectangle(var24, var25, var22, var19, 0);
Rasterizer2D.Rasterizer2D_fillRectangle(var33, var24, var22, var19, 16777120);
Rasterizer2D.Rasterizer2D_drawRectangle(var33, var24, var22, var19, 0);
var30 = var10.text;
var26 = var25 + var39.ascent + 2;
var25 = var24 + var39.ascent + 2;
for (var30 = MouseRecorder.method1194(var30, var10); var30.length() > 0; var26 = var26 + var39.ascent + 1) {
for (var30 = MouseRecorder.method1194(var30, var10); var30.length() > 0; var25 = var25 + var39.ascent + 1) {
int var32 = var30.indexOf("<br>");
if (var32 != -1) {
var31 = var30.substring(0, var32);
@@ -740,7 +740,7 @@ public class DevicePcmPlayerProvider implements PcmPlayerProvider {
var30 = "";
}
var39.draw(var31, var24 + 3, var26, 0, -1);
var39.draw(var31, var33 + 3, var25, 0, -1);
}
}
@@ -30,9 +30,9 @@ public class DirectByteArrayCopier extends AbstractByteArrayCopier {
garbageValue = "-2034091753"
)
@Export("set")
void set(byte[] var1) {
this.directBuffer = ByteBuffer.allocateDirect(var1.length);
void set(byte[] array) {
this.directBuffer = ByteBuffer.allocateDirect(array.length);
this.directBuffer.position(0);
this.directBuffer.put(var1);
this.directBuffer.put(array);
}
}
+145 -145
View File
@@ -236,27 +236,27 @@ public class DynamicObject extends Entity {
RouteStrategy.Interpreter_intStackSize -= 2;
var4 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
var5 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1];
PacketBufferNode var13 = Interpreter.method1915(ClientPacket.field260, Client.packetWriter.isaacCipher);
var13.packetBuffer.writeByte(WorldMapRegion.method550(var3) + 2);
var13.packetBuffer.writeStringCp1252NullTerminated(var3);
var13.packetBuffer.writeByte(var4 - 1);
var13.packetBuffer.writeByte(var5);
Client.packetWriter.method241(var13);
PacketBufferNode var12 = Interpreter.method1915(ClientPacket.field260, Client.packetWriter.isaacCipher);
var12.packetBuffer.writeByte(WorldMapRegion.method550(var3) + 2);
var12.packetBuffer.writeStringCp1252NullTerminated(var3);
var12.packetBuffer.writeByte(var4 - 1);
var12.packetBuffer.writeByte(var5);
Client.packetWriter.method241(var12);
return 1;
} else {
Message var11;
Message var6;
if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYTYPEANDLINE) {
RouteStrategy.Interpreter_intStackSize -= 2;
var5 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
var4 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1];
var11 = Message.method1226(var5, var4);
if (var11 != null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var11.count;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var11.cycle;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var11.sender != null ? var11.sender : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var11.prefix != null ? var11.prefix : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var11.text != null ? var11.text : "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var11.isFromFriend() ? 1 : (var11.isFromIgnored() ? 2 : 0);
var6 = Message.method1226(var5, var4);
if (var6 != null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.count;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.cycle;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.sender != null ? var6.sender : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.prefix != null ? var6.prefix : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.text != null ? var6.text : "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.isFromFriend() ? 1 : (var6.isFromIgnored() ? 2 : 0);
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = -1;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
@@ -269,14 +269,14 @@ public class DynamicObject extends Entity {
return 1;
} else if (var0 == ScriptOpcodes.CHAT_GETHISTORY_BYUID) {
var5 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
var11 = NetCache.method4708(var5);
if (var11 != null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var11.type;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var11.cycle;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var11.sender != null ? var11.sender : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var11.prefix != null ? var11.prefix : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var11.text != null ? var11.text : "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var11.isFromFriend() ? 1 : (var11.isFromIgnored() ? 2 : 0);
var6 = NetCache.method4708(var5);
if (var6 != null) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.type;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.cycle;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.sender != null ? var6.sender : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.prefix != null ? var6.prefix : "";
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.text != null ? var6.text : "";
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.isFromFriend() ? 1 : (var6.isFromIgnored() ? 2 : 0);
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = -1;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;
@@ -296,145 +296,145 @@ public class DynamicObject extends Entity {
return 1;
} else {
String var6;
String var7;
if (var0 == ScriptOpcodes.CHAT_SENDPUBLIC) {
var3 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
var4 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
var6 = var3.toLowerCase();
byte var12 = 0;
if (var6.startsWith("yellow:")) {
var12 = 0;
var7 = var3.toLowerCase();
byte var13 = 0;
if (var7.startsWith("yellow:")) {
var13 = 0;
var3 = var3.substring("yellow:".length());
} else if (var6.startsWith("red:")) {
var12 = 1;
} else if (var7.startsWith("red:")) {
var13 = 1;
var3 = var3.substring("red:".length());
} else if (var6.startsWith("green:")) {
var12 = 2;
} else if (var7.startsWith("green:")) {
var13 = 2;
var3 = var3.substring("green:".length());
} else if (var6.startsWith("cyan:")) {
var12 = 3;
} else if (var7.startsWith("cyan:")) {
var13 = 3;
var3 = var3.substring("cyan:".length());
} else if (var6.startsWith("purple:")) {
var12 = 4;
} else if (var7.startsWith("purple:")) {
var13 = 4;
var3 = var3.substring("purple:".length());
} else if (var6.startsWith("white:")) {
var12 = 5;
} else if (var7.startsWith("white:")) {
var13 = 5;
var3 = var3.substring("white:".length());
} else if (var6.startsWith("flash1:")) {
var12 = 6;
} else if (var7.startsWith("flash1:")) {
var13 = 6;
var3 = var3.substring("flash1:".length());
} else if (var6.startsWith("flash2:")) {
var12 = 7;
} else if (var7.startsWith("flash2:")) {
var13 = 7;
var3 = var3.substring("flash2:".length());
} else if (var6.startsWith("flash3:")) {
var12 = 8;
} else if (var7.startsWith("flash3:")) {
var13 = 8;
var3 = var3.substring("flash3:".length());
} else if (var6.startsWith("glow1:")) {
var12 = 9;
} else if (var7.startsWith("glow1:")) {
var13 = 9;
var3 = var3.substring("glow1:".length());
} else if (var6.startsWith("glow2:")) {
var12 = 10;
} else if (var7.startsWith("glow2:")) {
var13 = 10;
var3 = var3.substring("glow2:".length());
} else if (var6.startsWith("glow3:")) {
var12 = 11;
} else if (var7.startsWith("glow3:")) {
var13 = 11;
var3 = var3.substring("glow3:".length());
} else if (Client.language != 0) {
if (var6.startsWith("yellow:")) {
var12 = 0;
if (var7.startsWith("yellow:")) {
var13 = 0;
var3 = var3.substring("yellow:".length());
} else if (var6.startsWith("red:")) {
var12 = 1;
} else if (var7.startsWith("red:")) {
var13 = 1;
var3 = var3.substring("red:".length());
} else if (var6.startsWith("green:")) {
var12 = 2;
} else if (var7.startsWith("green:")) {
var13 = 2;
var3 = var3.substring("green:".length());
} else if (var6.startsWith("cyan:")) {
var12 = 3;
} else if (var7.startsWith("cyan:")) {
var13 = 3;
var3 = var3.substring("cyan:".length());
} else if (var6.startsWith("purple:")) {
var12 = 4;
} else if (var7.startsWith("purple:")) {
var13 = 4;
var3 = var3.substring("purple:".length());
} else if (var6.startsWith("white:")) {
var12 = 5;
} else if (var7.startsWith("white:")) {
var13 = 5;
var3 = var3.substring("white:".length());
} else if (var6.startsWith("flash1:")) {
var12 = 6;
} else if (var7.startsWith("flash1:")) {
var13 = 6;
var3 = var3.substring("flash1:".length());
} else if (var6.startsWith("flash2:")) {
var12 = 7;
} else if (var7.startsWith("flash2:")) {
var13 = 7;
var3 = var3.substring("flash2:".length());
} else if (var6.startsWith("flash3:")) {
var12 = 8;
} else if (var7.startsWith("flash3:")) {
var13 = 8;
var3 = var3.substring("flash3:".length());
} else if (var6.startsWith("glow1:")) {
var12 = 9;
} else if (var7.startsWith("glow1:")) {
var13 = 9;
var3 = var3.substring("glow1:".length());
} else if (var6.startsWith("glow2:")) {
var12 = 10;
} else if (var7.startsWith("glow2:")) {
var13 = 10;
var3 = var3.substring("glow2:".length());
} else if (var6.startsWith("glow3:")) {
var12 = 11;
} else if (var7.startsWith("glow3:")) {
var13 = 11;
var3 = var3.substring("glow3:".length());
}
}
var6 = var3.toLowerCase();
var7 = var3.toLowerCase();
byte var14 = 0;
if (var6.startsWith("wave:")) {
if (var7.startsWith("wave:")) {
var14 = 1;
var3 = var3.substring("wave:".length());
} else if (var6.startsWith("wave2:")) {
} else if (var7.startsWith("wave2:")) {
var14 = 2;
var3 = var3.substring("wave2:".length());
} else if (var6.startsWith("shake:")) {
} else if (var7.startsWith("shake:")) {
var14 = 3;
var3 = var3.substring("shake:".length());
} else if (var6.startsWith("scroll:")) {
} else if (var7.startsWith("scroll:")) {
var14 = 4;
var3 = var3.substring("scroll:".length());
} else if (var6.startsWith("slide:")) {
} else if (var7.startsWith("slide:")) {
var14 = 5;
var3 = var3.substring("slide:".length());
} else if (Client.language != 0) {
if (var6.startsWith("wave:")) {
if (var7.startsWith("wave:")) {
var14 = 1;
var3 = var3.substring("wave:".length());
} else if (var6.startsWith("wave2:")) {
} else if (var7.startsWith("wave2:")) {
var14 = 2;
var3 = var3.substring("wave2:".length());
} else if (var6.startsWith("shake:")) {
} else if (var7.startsWith("shake:")) {
var14 = 3;
var3 = var3.substring("shake:".length());
} else if (var6.startsWith("scroll:")) {
} else if (var7.startsWith("scroll:")) {
var14 = 4;
var3 = var3.substring("scroll:".length());
} else if (var6.startsWith("slide:")) {
} else if (var7.startsWith("slide:")) {
var14 = 5;
var3 = var3.substring("slide:".length());
}
}
PacketBufferNode var9 = Interpreter.method1915(ClientPacket.field319, Client.packetWriter.isaacCipher);
var9.packetBuffer.writeByte(0);
int var10 = var9.packetBuffer.index;
var9.packetBuffer.writeByte(var4);
var9.packetBuffer.writeByte(var12);
var9.packetBuffer.writeByte(var14);
TextureProvider.method2777(var9.packetBuffer, var3);
var9.packetBuffer.method41(var9.packetBuffer.index - var10);
Client.packetWriter.method241(var9);
PacketBufferNode var10 = Interpreter.method1915(ClientPacket.field319, Client.packetWriter.isaacCipher);
var10.packetBuffer.writeByte(0);
int var11 = var10.packetBuffer.index;
var10.packetBuffer.writeByte(var4);
var10.packetBuffer.writeByte(var13);
var10.packetBuffer.writeByte(var14);
TextureProvider.method2777(var10.packetBuffer, var3);
var10.packetBuffer.method41(var10.packetBuffer.index - var11);
Client.packetWriter.method241(var10);
return 1;
} else if (var0 == ScriptOpcodes.CHAT_SENDPRIVATE) {
Interpreter.Interpreter_stringStackSize -= 2;
var3 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize];
var6 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1];
PacketBufferNode var7 = Interpreter.method1915(ClientPacket.field247, Client.packetWriter.isaacCipher);
var7.packetBuffer.writeShort(0);
int var8 = var7.packetBuffer.index;
var7.packetBuffer.writeStringCp1252NullTerminated(var3);
TextureProvider.method2777(var7.packetBuffer, var6);
var7.packetBuffer.method40(var7.packetBuffer.index - var8);
Client.packetWriter.method241(var7);
var7 = Interpreter.Interpreter_stringStack[Interpreter.Interpreter_stringStackSize + 1];
PacketBufferNode var8 = Interpreter.method1915(ClientPacket.field247, Client.packetWriter.isaacCipher);
var8.packetBuffer.writeShort(0);
int var9 = var8.packetBuffer.index;
var8.packetBuffer.writeStringCp1252NullTerminated(var3);
TextureProvider.method2777(var8.packetBuffer, var7);
var8.packetBuffer.method40(var8.packetBuffer.index - var9);
Client.packetWriter.method241(var8);
return 1;
} else if (var0 != ScriptOpcodes.CHAT_PLAYERNAME) {
if (var0 == ScriptOpcodes.CHAT_GETFILTER_TRADE) {
@@ -547,76 +547,76 @@ public class DynamicObject extends Entity {
int var7;
int var8;
int[] var10000;
int[] var9;
for (var7 = 0; var7 < 32768; ++var7) {
NPC var9 = Client.npcs[var7];
if (var9 != null) {
NPC var10 = Client.npcs[var7];
if (var10 != null) {
for (var8 = 0; var8 < 10; ++var8) {
var10000 = var9.pathX;
var10000[var8] -= var5;
var10000 = var9.pathY;
var10000[var8] -= var6;
var9 = var10.pathX;
var9[var8] -= var5;
var9 = var10.pathY;
var9[var8] -= var6;
}
var9.x -= var5 * 128;
var9.y -= var6 * 128;
var10.x -= var5 * 128;
var10.y -= var6 * 128;
}
}
for (var7 = 0; var7 < 2048; ++var7) {
Player var20 = Client.players[var7];
if (var20 != null) {
Player var21 = Client.players[var7];
if (var21 != null) {
for (var8 = 0; var8 < 10; ++var8) {
var10000 = var20.pathX;
var10000[var8] -= var5;
var10000 = var20.pathY;
var10000[var8] -= var6;
var9 = var21.pathX;
var9[var8] -= var5;
var9 = var21.pathY;
var9[var8] -= var6;
}
var20.x -= var5 * 128;
var20.y -= var6 * 128;
var21.x -= var5 * 128;
var21.y -= var6 * 128;
}
}
byte var21 = 0;
byte var10 = 104;
byte var11 = 1;
byte var22 = 0;
byte var11 = 104;
byte var12 = 1;
if (var5 < 0) {
var21 = 103;
var10 = -1;
var22 = 103;
var11 = -1;
var12 = -1;
}
byte var12 = 0;
byte var13 = 104;
byte var14 = 1;
byte var13 = 0;
byte var14 = 104;
byte var15 = 1;
if (var6 < 0) {
var12 = 103;
var13 = -1;
var13 = 103;
var14 = -1;
var15 = -1;
}
int var15;
for (int var16 = var21; var16 != var10; var16 += var11) {
for (var15 = var12; var13 != var15; var15 += var14) {
int var17 = var16 + var5;
int var18 = var15 + var6;
int var16;
for (int var17 = var22; var17 != var11; var17 += var12) {
for (var16 = var13; var14 != var16; var16 += var15) {
int var18 = var17 + var5;
int var19 = var16 + var6;
for (int var19 = 0; var19 < 4; ++var19) {
if (var17 >= 0 && var18 >= 0 && var17 < 104 && var18 < 104) {
Client.groundItems[var19][var16][var15] = Client.groundItems[var19][var17][var18];
for (int var20 = 0; var20 < 4; ++var20) {
if (var18 >= 0 && var19 >= 0 && var18 < 104 && var19 < 104) {
Client.groundItems[var20][var17][var16] = Client.groundItems[var20][var18][var19];
} else {
Client.groundItems[var19][var16][var15] = null;
Client.groundItems[var20][var17][var16] = null;
}
}
}
}
for (PendingSpawn var22 = (PendingSpawn)Client.pendingSpawns.last(); var22 != null; var22 = (PendingSpawn)Client.pendingSpawns.previous()) {
var22.x -= var5;
var22.y -= var6;
if (var22.x < 0 || var22.y < 0 || var22.x >= 104 || var22.y >= 104) {
var22.remove();
for (PendingSpawn var23 = (PendingSpawn)Client.pendingSpawns.last(); var23 != null; var23 = (PendingSpawn)Client.pendingSpawns.previous()) {
var23.x -= var5;
var23.y -= var6;
if (var23.x < 0 || var23.y < 0 || var23.x >= 104 || var23.y >= 104) {
var23.remove();
}
}
@@ -635,8 +635,8 @@ public class DynamicObject extends Entity {
Client.graphicsObjects.clear();
Client.projectiles.clear();
for (var15 = 0; var15 < 4; ++var15) {
Client.collisionMaps[var15].clear();
for (var16 = 0; var16 < 4; ++var16) {
Client.collisionMaps[var16].clear();
}
}
+2 -2
View File
@@ -30,11 +30,11 @@ public abstract class Entity extends DualNode {
@ObfuscatedName("cy")
@Export("draw")
void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, long var9) {
void draw(int yaw, int cameraPitchSine, int cameraPitchCosine, int cameraYawSine, int cameraYawCosine, int x, int y, int var8, long tag) {
Model var11 = this.getModel();
if (var11 != null) {
this.height = var11.height;
var11.draw(var1, var2, var3, var4, var5, var6, var7, var8, var9);
var11.draw(yaw, cameraPitchSine, cameraPitchCosine, cameraYawSine, cameraYawCosine, x, y, var8, tag);
}
}
@@ -48,8 +48,8 @@ public final class EvictingDualNodeHashTable {
signature = "(J)Lfn;"
)
@Export("get")
public DualNode get(long var1) {
DualNode var3 = (DualNode)this.hashTable.get(var1);
public DualNode get(long key) {
DualNode var3 = (DualNode)this.hashTable.get(key);
if (var3 != null) {
this.deque.addFirst(var3);
}
@@ -59,8 +59,8 @@ public final class EvictingDualNodeHashTable {
@ObfuscatedName("f")
@Export("remove")
public void remove(long var1) {
DualNode var3 = (DualNode)this.hashTable.get(var1);
public void remove(long key) {
DualNode var3 = (DualNode)this.hashTable.get(key);
if (var3 != null) {
var3.remove();
var3.removeDual();
@@ -74,7 +74,7 @@ public final class EvictingDualNodeHashTable {
signature = "(Lfn;J)V"
)
@Export("put")
public void put(DualNode var1, long var2) {
public void put(DualNode value, long key) {
if (this.remainingCapacity == 0) {
DualNode var4 = this.deque.removeLast();
var4.remove();
@@ -88,8 +88,8 @@ public final class EvictingDualNodeHashTable {
--this.remainingCapacity;
}
this.hashTable.put(var1, var2);
this.deque.addFirst(var1);
this.hashTable.put(value, key);
this.deque.addFirst(value);
}
@ObfuscatedName("w")
@@ -141,10 +141,10 @@ public class FloorOverlayDefinition extends DualNode {
garbageValue = "489697731"
)
@Export("setHsl")
void setHsl(int var1) {
double var2 = (double)(var1 >> 16 & 255) / 256.0D;
double var4 = (double)(var1 >> 8 & 255) / 256.0D;
double var6 = (double)(var1 & 255) / 256.0D;
void setHsl(int rgb) {
double var2 = (double)(rgb >> 16 & 255) / 256.0D;
double var4 = (double)(rgb >> 8 & 255) / 256.0D;
double var6 = (double)(rgb & 255) / 256.0D;
double var8 = var2;
if (var4 < var2) {
var8 = var4;
@@ -208,33 +208,33 @@ public class FloorOverlayDefinition extends DualNode {
garbageValue = "30"
)
@Export("alignWidgetPosition")
static void alignWidgetPosition(Widget var0, int var1, int var2) {
if (var0.xAlignment == 0) {
var0.x = var0.rawX;
} else if (var0.xAlignment == 1) {
var0.x = var0.rawX + (var1 - var0.width) / 2;
} else if (var0.xAlignment == 2) {
var0.x = var1 - var0.width - var0.rawX;
} else if (var0.xAlignment == 3) {
var0.x = var0.rawX * var1 >> 14;
} else if (var0.xAlignment == 4) {
var0.x = (var0.rawX * var1 >> 14) + (var1 - var0.width) / 2;
static void alignWidgetPosition(Widget component, int parentWidth, int parentHeight) {
if (component.xAlignment == 0) {
component.x = component.rawX;
} else if (component.xAlignment == 1) {
component.x = component.rawX + (parentWidth - component.width) / 2;
} else if (component.xAlignment == 2) {
component.x = parentWidth - component.width - component.rawX;
} else if (component.xAlignment == 3) {
component.x = component.rawX * parentWidth >> 14;
} else if (component.xAlignment == 4) {
component.x = (component.rawX * parentWidth >> 14) + (parentWidth - component.width) / 2;
} else {
var0.x = var1 - var0.width - (var0.rawX * var1 >> 14);
component.x = parentWidth - component.width - (component.rawX * parentWidth >> 14);
}
if (var0.yAlignment == 0) {
var0.y = var0.rawY;
} else if (var0.yAlignment == 1) {
var0.y = (var2 - var0.height) / 2 + var0.rawY;
} else if (var0.yAlignment == 2) {
var0.y = var2 - var0.height - var0.rawY;
} else if (var0.yAlignment == 3) {
var0.y = var2 * var0.rawY >> 14;
} else if (var0.yAlignment == 4) {
var0.y = (var2 * var0.rawY >> 14) + (var2 - var0.height) / 2;
if (component.yAlignment == 0) {
component.y = component.rawY;
} else if (component.yAlignment == 1) {
component.y = (parentHeight - component.height) / 2 + component.rawY;
} else if (component.yAlignment == 2) {
component.y = parentHeight - component.height - component.rawY;
} else if (component.yAlignment == 3) {
component.y = parentHeight * component.rawY >> 14;
} else if (component.yAlignment == 4) {
component.y = (parentHeight * component.rawY >> 14) + (parentHeight - component.height) / 2;
} else {
var0.y = var2 - var0.height - (var2 * var0.rawY >> 14);
component.y = parentHeight - component.height - (parentHeight * component.rawY >> 14);
}
}
@@ -100,10 +100,10 @@ public class FloorUnderlayDefinition extends DualNode {
garbageValue = "-107"
)
@Export("setHsl")
void setHsl(int var1) {
double var2 = (double)(var1 >> 16 & 255) / 256.0D;
double var4 = (double)(var1 >> 8 & 255) / 256.0D;
double var6 = (double)(var1 & 255) / 256.0D;
void setHsl(int rgb) {
double var2 = (double)(rgb >> 16 & 255) / 256.0D;
double var4 = (double)(rgb >> 8 & 255) / 256.0D;
double var6 = (double)(rgb & 255) / 256.0D;
double var8 = var2;
if (var4 < var2) {
var8 = var4;
+33 -33
View File
@@ -57,9 +57,9 @@ public class FontName {
)
@Export("calculateTag")
public static long calculateTag(int x, int y, int type, boolean isNotInteractable, int identifier) {
long var5 = (long)((x & 0b1111111) << 0 | (y & 0b1111111) << 7 | (type & 0b11) << 14) | ((long)identifier & 0xffffffffL) << 17;
long var5 = (long)((x & 127) << 0 | (y & 127) << 7 | (type & 3) << 14) | ((long)identifier & 4294967295L) << 17;
if (isNotInteractable) {
var5 |= 0x10000L;
var5 |= 65536L;
}
return var5;
@@ -211,7 +211,7 @@ public class FontName {
return 1;
} else if (var0 == ScriptOpcodes.CLAN_GETCHATMINKICK) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = PacketWriter.clanChat != null ? PacketWriter.clanChat.field96 : 0;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = PacketWriter.clanChat != null ? PacketWriter.clanChat.minKick : 0;
return 1;
} else if (var0 == ScriptOpcodes.CLAN_KICKUSER) {
var4 = Interpreter.Interpreter_stringStack[--Interpreter.Interpreter_stringStackSize];
@@ -498,16 +498,16 @@ public class FontName {
garbageValue = "-2003105831"
)
@Export("setViewportShape")
static final void setViewportShape(int var0, int var1, int var2, int var3, boolean var4) {
if (var2 < 1) {
var2 = 1;
static final void setViewportShape(int x, int y, int width, int height, boolean clear) {
if (width < 1) {
width = 1;
}
if (var3 < 1) {
var3 = 1;
if (height < 1) {
height = 1;
}
int var5 = var3 - 334;
int var5 = height - 334;
int var6;
if (var5 < 0) {
var6 = Client.field130;
@@ -517,53 +517,53 @@ public class FontName {
var6 = (Client.field131 - Client.field130) * var5 / 100 + Client.field130;
}
int var7 = var3 * var6 * 512 / (var2 * 334);
int var7 = height * var6 * 512 / (width * 334);
int var8;
int var9;
short var10;
if (var7 < Client.field132) {
var10 = Client.field132;
var6 = var10 * var2 * 334 / (var3 * 512);
var6 = var10 * width * 334 / (height * 512);
if (var6 > Client.field134) {
var6 = Client.field134;
var8 = var3 * var6 * 512 / (var10 * 334);
var9 = (var2 - var8) / 2;
if (var4) {
var8 = height * var6 * 512 / (var10 * 334);
var9 = (width - var8) / 2;
if (clear) {
Rasterizer2D.Rasterizer2D_resetClip();
Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var9, var3, -16777216);
Rasterizer2D.Rasterizer2D_fillRectangle(var0 + var2 - var9, var1, var9, var3, -16777216);
Rasterizer2D.Rasterizer2D_fillRectangle(x, y, var9, height, -16777216);
Rasterizer2D.Rasterizer2D_fillRectangle(x + width - var9, y, var9, height, -16777216);
}
var0 += var9;
var2 -= var9 * 2;
x += var9;
width -= var9 * 2;
}
} else if (var7 > Client.field133) {
var10 = Client.field133;
var6 = var10 * var2 * 334 / (var3 * 512);
var6 = var10 * width * 334 / (height * 512);
if (var6 < Client.field135) {
var6 = Client.field135;
var8 = var10 * var2 * 334 / (var6 * 512);
var9 = (var3 - var8) / 2;
if (var4) {
var8 = var10 * width * 334 / (var6 * 512);
var9 = (height - var8) / 2;
if (clear) {
Rasterizer2D.Rasterizer2D_resetClip();
Rasterizer2D.Rasterizer2D_fillRectangle(var0, var1, var2, var9, -16777216);
Rasterizer2D.Rasterizer2D_fillRectangle(var0, var3 + var1 - var9, var2, var9, -16777216);
Rasterizer2D.Rasterizer2D_fillRectangle(x, y, width, var9, -16777216);
Rasterizer2D.Rasterizer2D_fillRectangle(x, height + y - var9, width, var9, -16777216);
}
var1 += var9;
var3 -= var9 * 2;
y += var9;
height -= var9 * 2;
}
}
Client.viewportZoom = var3 * var6 / 334;
if (var2 != Client.viewportWidth || var3 != Client.viewportHeight) {
ScriptEvent.method1183(var2, var3);
Client.viewportZoom = height * var6 / 334;
if (width != Client.viewportWidth || height != Client.viewportHeight) {
ScriptEvent.method1183(width, height);
}
Client.viewportOffsetX = var0;
Client.viewportOffsetY = var1;
Client.viewportWidth = var2;
Client.viewportHeight = var3;
Client.viewportOffsetX = x;
Client.viewportOffsetY = y;
Client.viewportWidth = width;
Client.viewportHeight = height;
}
@ObfuscatedName("km")
+22 -22
View File
@@ -51,33 +51,33 @@ public class Formatting {
int var3;
int var4;
int var5;
EnumDefinition var9;
EnumDefinition var6;
if (var0 == ScriptOpcodes.ENUM_STRING) {
RouteStrategy.Interpreter_intStackSize -= 2;
var3 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
var4 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1];
var9 = Interpreter.getEnum(var3);
if (var9.outputType != 's') {
var6 = Interpreter.getEnum(var3);
if (var6.outputType != 's') {
}
for (var5 = 0; var5 < var9.outputCount; ++var5) {
if (var4 == var9.keys[var5]) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9.strVals[var5];
var9 = null;
for (var5 = 0; var5 < var6.outputCount; ++var5) {
if (var4 == var6.keys[var5]) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.strVals[var5];
var6 = null;
break;
}
}
if (var9 != null) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var9.defaultStr;
if (var6 != null) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var6.defaultStr;
}
return 1;
} else if (var0 != ScriptOpcodes.ENUM) {
if (var0 == ScriptOpcodes.ENUM_GETOUTPUTCOUNT) {
var3 = Interpreter.Interpreter_intStack[--RouteStrategy.Interpreter_intStackSize];
var9 = Interpreter.getEnum(var3);
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var9.size();
var6 = Interpreter.getEnum(var3);
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var6.size();
return 1;
} else {
return 2;
@@ -86,28 +86,28 @@ public class Formatting {
RouteStrategy.Interpreter_intStackSize -= 4;
var3 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize];
var4 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 1];
int var6 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 2];
int var7 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 2];
var5 = Interpreter.Interpreter_intStack[RouteStrategy.Interpreter_intStackSize + 3];
EnumDefinition var7 = Interpreter.getEnum(var6);
if (var3 == var7.inputType && var4 == var7.outputType) {
for (int var8 = 0; var8 < var7.outputCount; ++var8) {
if (var5 == var7.keys[var8]) {
EnumDefinition var8 = Interpreter.getEnum(var7);
if (var3 == var8.inputType && var4 == var8.outputType) {
for (int var9 = 0; var9 < var8.outputCount; ++var9) {
if (var5 == var8.keys[var9]) {
if (var4 == 115) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.strVals[var8];
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var8.strVals[var9];
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var7.intVals[var8];
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var8.intVals[var9];
}
var7 = null;
var8 = null;
break;
}
}
if (var7 != null) {
if (var8 != null) {
if (var4 == 115) {
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var7.defaultStr;
Interpreter.Interpreter_stringStack[++Interpreter.Interpreter_stringStackSize - 1] = var8.defaultStr;
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var7.defaultInt;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var8.defaultInt;
}
}
+2 -2
View File
@@ -61,8 +61,8 @@ public class Frames extends DualNode {
garbageValue = "-1018278334"
)
@Export("hasAlphaTransform")
public boolean hasAlphaTransform(int var1) {
return this.frames[var1].hasAlphaTransform;
public boolean hasAlphaTransform(int frame) {
return this.frames[frame].hasAlphaTransform;
}
@ObfuscatedName("m")
+2 -2
View File
@@ -21,8 +21,8 @@ public class Friend extends Buddy {
garbageValue = "-1559116693"
)
@Export("compareTo00")
int compareTo00(Friend var1) {
return super.world0 == Client.worldId && Client.worldId != var1.world0 ? -1 : (Client.worldId == var1.world0 && super.world0 != Client.worldId ? 1 : (super.world0 != 0 && var1.world0 == 0 ? -1 : (var1.world0 != 0 && super.world0 == 0 ? 1 : (this.field354 && !var1.field354 ? -1 : (!this.field354 && var1.field354 ? 1 : (this.field355 && !var1.field355 ? -1 : (!this.field355 && var1.field355 ? 1 : (super.world0 != 0 ? super.int2 - var1.int2 : var1.int2 - super.int2))))))));
int compareTo00(Friend other) {
return super.world0 == Client.worldId && Client.worldId != other.world0 ? -1 : (Client.worldId == other.world0 && super.world0 != Client.worldId ? 1 : (super.world0 != 0 && other.world0 == 0 ? -1 : (other.world0 != 0 && super.world0 == 0 ? 1 : (this.field354 && !other.field354 ? -1 : (!this.field354 && other.field354 ? 1 : (this.field355 && !other.field355 ? -1 : (!this.field355 && other.field355 ? 1 : (super.world0 != 0 ? super.int2 - other.int2 : other.int2 - super.int2))))))));
}
@ObfuscatedName("aj")
@@ -240,15 +240,15 @@ public class FriendSystem {
garbageValue = "-2122207917"
)
@Export("removeFriend")
final void removeFriend(String var1) {
if (var1 != null) {
Username var2 = new Username(var1, this.loginType);
final void removeFriend(String name) {
if (name != null) {
Username var2 = new Username(name, this.loginType);
if (var2.hasCleanName()) {
if (this.friendsList.removeByUsername(var2)) {
WorldMapManager.method668();
PacketBufferNode var3 = Interpreter.method1915(ClientPacket.field276, Client.packetWriter.isaacCipher);
var3.packetBuffer.writeByte(WorldMapRegion.method550(var1));
var3.packetBuffer.writeStringCp1252NullTerminated(var1);
var3.packetBuffer.writeByte(WorldMapRegion.method550(name));
var3.packetBuffer.writeStringCp1252NullTerminated(name);
Client.packetWriter.method241(var3);
}
@@ -264,15 +264,15 @@ public class FriendSystem {
garbageValue = "-1673636127"
)
@Export("removeIgnore")
final void removeIgnore(String var1) {
if (var1 != null) {
Username var2 = new Username(var1, this.loginType);
final void removeIgnore(String name) {
if (name != null) {
Username var2 = new Username(name, this.loginType);
if (var2.hasCleanName()) {
if (this.ignoreList.removeByUsername(var2)) {
WorldMapManager.method668();
PacketBufferNode var3 = Interpreter.method1915(ClientPacket.field250, Client.packetWriter.isaacCipher);
var3.packetBuffer.writeByte(WorldMapRegion.method550(var1));
var3.packetBuffer.writeStringCp1252NullTerminated(var1);
var3.packetBuffer.writeByte(WorldMapRegion.method550(name));
var3.packetBuffer.writeStringCp1252NullTerminated(name);
Client.packetWriter.method241(var3);
}
+12 -12
View File
@@ -72,24 +72,24 @@ public class FriendsList extends UserList {
garbageValue = "-11"
)
@Export("read")
public void read(Buffer var1, int var2) {
public void read(Buffer buffer, int var2) {
while (true) {
if (var1.index < var2) {
boolean var3 = var1.readUnsignedByte() == 1;
Username var4 = new Username(var1.readStringCp1252NullTerminated(), this.loginType);
Username var5 = new Username(var1.readStringCp1252NullTerminated(), this.loginType);
int var6 = var1.readUnsignedShort();
int var7 = var1.readUnsignedByte();
int var8 = var1.readUnsignedByte();
if (buffer.index < var2) {
boolean var3 = buffer.readUnsignedByte() == 1;
Username var4 = new Username(buffer.readStringCp1252NullTerminated(), this.loginType);
Username var5 = new Username(buffer.readStringCp1252NullTerminated(), this.loginType);
int var6 = buffer.readUnsignedShort();
int var7 = buffer.readUnsignedByte();
int var8 = buffer.readUnsignedByte();
boolean var9 = (var8 & 2) != 0;
boolean var10 = (var8 & 1) != 0;
if (var6 > 0) {
var1.readStringCp1252NullTerminated();
var1.readUnsignedByte();
var1.readInt();
buffer.readStringCp1252NullTerminated();
buffer.readUnsignedByte();
buffer.readInt();
}
var1.readStringCp1252NullTerminated();
buffer.readStringCp1252NullTerminated();
if (var4 != null && var4.hasCleanName()) {
Friend var11 = (Friend)this.getByCurrentUsername(var4);
if (var3) {
+18 -18
View File
@@ -469,7 +469,7 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
garbageValue = "559367680"
)
@Export("startThread")
protected final void startThread(int var1, int var2, int var3) {
protected final void startThread(int width, int height, int revision) {
try {
if (gameShell != null) {
++field361;
@@ -483,9 +483,9 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
}
gameShell = this;
SoundCache.canvasWidth = var1;
Huffman.canvasHeight = var2;
RunException.revision = var3;
SoundCache.canvasWidth = width;
Huffman.canvasHeight = height;
RunException.revision = revision;
RunException.applet = this;
if (taskHandler == null) {
taskHandler = new TaskHandler();
@@ -810,13 +810,13 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
garbageValue = "39"
)
@Export("error")
protected void error(String var1) {
protected void error(String type) {
if (!this.hasErrored) {
this.hasErrored = true;
System.out.println("error_game_" + var1);
System.out.println("error_game_" + type);
try {
this.getAppletContext().showDocument(new URL(this.getCodeBase(), "error_game_" + var1 + ".ws"), "_self");
this.getAppletContext().showDocument(new URL(this.getCodeBase(), "error_game_" + type + ".ws"), "_self");
} catch (Exception var3) {
}
}
@@ -1002,7 +1002,7 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
}
@ObfuscatedName("postDecode")
public abstract void vmethod117();
public abstract void init();
@ObfuscatedName("stop")
public final void method118() {
@@ -1034,23 +1034,23 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
garbageValue = "17"
)
@Export("updateGameState")
static void updateGameState(int var0) {
if (var0 != Client.gameState) {
static void updateGameState(int gameState) {
if (gameState != Client.gameState) {
if (Client.gameState == 0) {
TextureProvider.client.method113();
}
if (var0 == 20 || var0 == 40 || var0 == 45) {
if (gameState == 20 || gameState == 40 || gameState == 45) {
Client.loginState = 0;
Client.field168 = 0;
Client.field169 = 0;
Client.timer.method331(var0);
if (var0 != 20) {
Client.timer.method331(gameState);
if (gameState != 20) {
class15.method184(false);
}
}
if (var0 != 20 && var0 != 40 && ClientParameter.field341 != null) {
if (gameState != 20 && gameState != 40 && ClientParameter.field341 != null) {
ClientParameter.field341.close();
ClientParameter.field341 = null;
}
@@ -1063,10 +1063,10 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
Client.field180 = 1;
}
if (var0 != 5 && var0 != 10) {
if (var0 == 20) {
if (gameState != 5 && gameState != 10) {
if (gameState == 20) {
class2.method27(class16.archive10, WorldMapSection3.archive8, true, Client.gameState == 11 ? 4 : 0);
} else if (var0 == 11) {
} else if (gameState == 11) {
class2.method27(class16.archive10, WorldMapSection3.archive8, false, 4);
} else {
class80.method2015();
@@ -1075,7 +1075,7 @@ public abstract class GameShell extends Applet implements Runnable, FocusListene
class2.method27(class16.archive10, WorldMapSection3.archive8, true, 0);
}
Client.gameState = var0;
Client.gameState = gameState;
}
}
@@ -76,14 +76,14 @@ public class GrandExchangeEvent {
garbageValue = "-1003049523"
)
@Export("runScript0")
static void runScript0(ScriptEvent var0, int var1) {
Object[] var2 = var0.args0;
static void runScript0(ScriptEvent scriptEvent, int var1) {
Object[] var2 = scriptEvent.args0;
Script var3;
int var4;
if (class12.method162(var0.type0)) {
if (class12.method162(scriptEvent.type0)) {
class15.worldMapEvent = (WorldMapEvent)var2[0];
WorldMapElement var5 = ViewportMouse.getWorldMapElement(class15.worldMapEvent.mapElement);
var3 = FaceNormal.method3236(var0.type0, var5.field1020, var5.category);
var3 = FaceNormal.method3236(scriptEvent.type0, var5.field1020, var5.category);
} else {
var4 = (Integer)var2[0];
var3 = SoundSystem.method2451(var4);
@@ -113,46 +113,46 @@ public class GrandExchangeEvent {
if (var2[var8] instanceof Integer) {
var11 = (Integer)var2[var8];
if (var11 == -2147483647) {
var11 = var0.mouseX;
var11 = scriptEvent.mouseX;
}
if (var11 == -2147483646) {
var11 = var0.mouseY;
var11 = scriptEvent.mouseY;
}
if (var11 == -2147483645) {
var11 = var0.widget != null ? var0.widget.id : -1;
var11 = scriptEvent.widget != null ? scriptEvent.widget.id : -1;
}
if (var11 == -2147483644) {
var11 = var0.opIndex;
var11 = scriptEvent.opIndex;
}
if (var11 == -2147483643) {
var11 = var0.widget != null ? var0.widget.childIndex : -1;
var11 = scriptEvent.widget != null ? scriptEvent.widget.childIndex : -1;
}
if (var11 == -2147483642) {
var11 = var0.dragTarget != null ? var0.dragTarget.id : -1;
var11 = scriptEvent.dragTarget != null ? scriptEvent.dragTarget.id : -1;
}
if (var11 == -2147483641) {
var11 = var0.dragTarget != null ? var0.dragTarget.childIndex : -1;
var11 = scriptEvent.dragTarget != null ? scriptEvent.dragTarget.childIndex : -1;
}
if (var11 == -2147483640) {
var11 = var0.keyTyped;
var11 = scriptEvent.keyTyped;
}
if (var11 == -2147483639) {
var11 = var0.keyPressed;
var11 = scriptEvent.keyPressed;
}
Username.Interpreter_intLocals[var9++] = var11;
} else if (var2[var8] instanceof String) {
var12 = (String)var2[var8];
if (var12.equals("event_opbase")) {
var12 = var0.targetName;
var12 = scriptEvent.targetName;
}
Interpreter.Interpreter_stringLocals[var26++] = var12;
@@ -160,7 +160,7 @@ public class GrandExchangeEvent {
}
var8 = 0;
Interpreter.field425 = var0.field772;
Interpreter.field425 = scriptEvent.field772;
while (true) {
++var8;
@@ -78,15 +78,15 @@ public class GrandExchangeEvents {
signature = "(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V",
garbageValue = "1601363438"
)
@Export("addMessage")
static void addMessage(int var0, String var1, String var2, String var3) {
ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(var0);
@Export("addChatMessage")
static void addChatMessage(int type, String sender, String text, String prefix) {
ChatChannel var4 = (ChatChannel)Messages.Messages_channels.get(type);
if (var4 == null) {
var4 = new ChatChannel();
Messages.Messages_channels.put(var0, var4);
Messages.Messages_channels.put(type, var4);
}
Message var5 = var4.addMessage(var0, var1, var2, var3);
Message var5 = var4.addMessage(type, sender, text, prefix);
Messages.Messages_hashTable.put(var5, (long)var5.count);
Messages.Messages_queue.add(var5);
Client.chatCycle = Client.cycleCntr;
@@ -153,7 +153,7 @@ public class GrandExchangeEvents {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.rectangleMode.rsOrdinal();
return 1;
} else if (var0 == 2614) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.field964 ? 1 : 0;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0;
return 1;
} else {
return 2;
@@ -6,8 +6,7 @@ import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("lg")
@Implements("GraphicsDefaults")
public class GraphicsDefaults
{
public class GraphicsDefaults {
@ObfuscatedName("m")
@ObfuscatedGetter(
intValue = 1673796151
@@ -93,8 +92,8 @@ public class GraphicsDefaults
garbageValue = "1764356022"
)
@Export("decode")
public void decode(AbstractArchive var1) {
byte[] var2 = var1.takeFileFlat(DefaultsGroup.field3810.group);
public void decode(AbstractArchive index) {
byte[] var2 = index.takeFileFlat(DefaultsGroup.DefaultsGroup_graphics.group);
Buffer var3 = new Buffer(var2);
while (true) {
@@ -143,7 +142,7 @@ public class GraphicsDefaults
VarbitDefinition.indexedSpriteWidths = null;
SecureRandomCallable.indexedSpriteHeights = null;
class328.indexedSpritePalette = null;
class328.spritePixels = (byte[][])null;
class328.spritePixels = ((byte[][])null);
var5 = var6;
}
@@ -108,9 +108,9 @@ public final class GraphicsObject extends Entity {
garbageValue = "-730240149"
)
@Export("advance")
final void advance(int var1) {
final void advance(int cycles) {
if (!this.isFinished) {
this.frameCycle += var1;
this.frameCycle += cycles;
while (this.frameCycle > this.sequenceDefinition.frameLengths[this.frame]) {
this.frameCycle -= this.sequenceDefinition.frameLengths[this.frame];
@@ -68,37 +68,37 @@ public final class GroundItemPile {
garbageValue = "-60"
)
@Export("loadInterface")
public static boolean loadInterface(int var0) {
if (Widget.loadedInterfaces[var0]) {
public static boolean loadInterface(int itf) {
if (Widget.loadedInterfaces[itf]) {
return true;
} else if (!Widget.Widget_archive.tryLoadGroup(var0)) {
} else if (!Widget.Widget_archive.tryLoadGroup(itf)) {
return false;
} else {
int var1 = Widget.Widget_archive.method4(var0);
int var1 = Widget.Widget_archive.method4(itf);
if (var1 == 0) {
Widget.loadedInterfaces[var0] = true;
Widget.loadedInterfaces[itf] = true;
return true;
} else {
if (Widget.interfaceComponents[var0] == null) {
Widget.interfaceComponents[var0] = new Widget[var1];
if (Widget.interfaceComponents[itf] == null) {
Widget.interfaceComponents[itf] = new Widget[var1];
}
for (int var2 = 0; var2 < var1; ++var2) {
if (Widget.interfaceComponents[var0][var2] == null) {
byte[] var3 = Widget.Widget_archive.takeFile(var0, var2);
if (Widget.interfaceComponents[itf][var2] == null) {
byte[] var3 = Widget.Widget_archive.takeFile(itf, var2);
if (var3 != null) {
Widget.interfaceComponents[var0][var2] = new Widget();
Widget.interfaceComponents[var0][var2].id = var2 + (var0 << 16);
Widget.interfaceComponents[itf][var2] = new Widget();
Widget.interfaceComponents[itf][var2].id = var2 + (itf << 16);
if (var3[0] == -1) {
Widget.interfaceComponents[var0][var2].decode(new Buffer(var3));
Widget.interfaceComponents[itf][var2].decode(new Buffer(var3));
} else {
Widget.interfaceComponents[var0][var2].decodeLegacy(new Buffer(var3));
Widget.interfaceComponents[itf][var2].decodeLegacy(new Buffer(var3));
}
}
}
}
Widget.loadedInterfaces[var0] = true;
Widget.loadedInterfaces[itf] = true;
return true;
}
}
@@ -68,15 +68,15 @@ public class HealthBar extends Node {
garbageValue = "1594721795"
)
@Export("get")
HealthBarUpdate get(int var1) {
HealthBarUpdate get(int cycle) {
HealthBarUpdate var2 = (HealthBarUpdate)this.updates.last();
if (var2 != null && var2.cycle <= var1) {
for (HealthBarUpdate var3 = (HealthBarUpdate)this.updates.previous(); var3 != null && var3.cycle <= var1; var3 = (HealthBarUpdate)this.updates.previous()) {
if (var2 != null && var2.cycle <= cycle) {
for (HealthBarUpdate var3 = (HealthBarUpdate)this.updates.previous(); var3 != null && var3.cycle <= cycle; var3 = (HealthBarUpdate)this.updates.previous()) {
var2.remove();
var2 = var3;
}
if (this.definition.int5 + var2.cycleOffset + var2.cycle > var1) {
if (this.definition.int5 + var2.cycleOffset + var2.cycle > cycle) {
return var2;
} else {
var2.remove();
@@ -105,8 +105,9 @@ public class HealthBar extends Node {
@Export("charToByteCp1252")
public static byte charToByteCp1252(char var0) {
byte var1;
if ((var0 <= 0 || var0 >= 128) && (var0 < 160 || var0 > 255)) {
if (var0 == 8364) {
if (var0 > 0 && var0 < 128 || var0 >= 160 && var0 <= 255) {
var1 = (byte)var0;
} else if (var0 == 8364) {
var1 = -128;
} else if (var0 == 8218) {
var1 = -126;
@@ -163,9 +164,6 @@ public class HealthBar extends Node {
} else {
var1 = 63;
}
} else {
var1 = (byte)var0;
}
return var1;
}
@@ -47,14 +47,14 @@ public class IgnoreList extends UserList {
garbageValue = "32"
)
@Export("read")
public void read(Buffer var1, int var2) {
public void read(Buffer buffer, int var2) {
while (true) {
if (var1.index < var2) {
int var3 = var1.readUnsignedByte();
if (buffer.index < var2) {
int var3 = buffer.readUnsignedByte();
boolean var4 = (var3 & 1) == 1;
Username var5 = new Username(var1.readStringCp1252NullTerminated(), this.loginType);
Username var6 = new Username(var1.readStringCp1252NullTerminated(), this.loginType);
var1.readStringCp1252NullTerminated();
Username var5 = new Username(buffer.readStringCp1252NullTerminated(), this.loginType);
Username var6 = new Username(buffer.readStringCp1252NullTerminated(), this.loginType);
buffer.readStringCp1252NullTerminated();
if (var5 != null && var5.hasCleanName()) {
Ignored var7 = (Ignored)this.getByCurrentUsername(var5);
if (var4) {
+2 -2
View File
@@ -22,8 +22,8 @@ public class Ignored extends User {
garbageValue = "-842469150"
)
@Export("compareTo00")
int compareTo00(Ignored var1) {
return this.id - var1.id;
int compareTo00(Ignored other) {
return this.id - other.id;
}
@ObfuscatedName("aj")
+58 -58
View File
@@ -159,7 +159,7 @@ public class Instrument {
int var13;
int var14;
int var15;
int[] var10000;
int[] var16;
for (var11 = 0; var11 < var1; ++var11) {
var12 = this.field413.doStep(var1);
var13 = this.field414.doStep(var1);
@@ -181,39 +181,39 @@ public class Instrument {
if (this.oscillatorVolume[var14] != 0) {
var15 = Instrument_delays[var14] + var11;
if (var15 < var1) {
var10000 = Instrument_samples;
var10000[var15] += this.evaluateWave(Instrument_phases[var14], var13 * Instrument_volumeSteps[var14] >> 15, this.field413.form);
var10000 = Instrument_phases;
var10000[var14] += (var12 * Instrument_pitchSteps[var14] >> 16) + Instrument_pitchBaseSteps[var14];
var16 = Instrument_samples;
var16[var15] += this.evaluateWave(Instrument_phases[var14], var13 * Instrument_volumeSteps[var14] >> 15, this.field413.form);
var16 = Instrument_phases;
var16[var14] += (var12 * Instrument_pitchSteps[var14] >> 16) + Instrument_pitchBaseSteps[var14];
}
}
}
}
int var16;
int var17;
if (this.field419 != null) {
this.field419.reset();
this.field420.reset();
var11 = 0;
boolean var17 = false;
boolean var18 = true;
boolean var18 = false;
boolean var19 = true;
for (var14 = 0; var14 < var1; ++var14) {
var15 = this.field419.doStep(var1);
var16 = this.field420.doStep(var1);
if (var18) {
var17 = this.field420.doStep(var1);
if (var19) {
var12 = (var15 * (this.field419.end - this.field419.start) >> 8) + this.field419.start;
} else {
var12 = (var16 * (this.field419.end - this.field419.start) >> 8) + this.field419.start;
var12 = (var17 * (this.field419.end - this.field419.start) >> 8) + this.field419.start;
}
var11 += 256;
if (var11 >= var12) {
var11 = 0;
var18 = !var18;
var19 = !var19;
}
if (var18) {
if (var19) {
Instrument_samples[var14] = 0;
}
}
@@ -223,8 +223,8 @@ public class Instrument {
var11 = (int)((double)this.delayTime * var3);
for (var12 = var11; var12 < var1; ++var12) {
var10000 = Instrument_samples;
var10000[var12] += Instrument_samples[var12 - var11] * this.delayDecay / 100;
var16 = Instrument_samples;
var16[var12] += Instrument_samples[var12 - var11] * this.delayDecay / 100;
}
}
@@ -240,19 +240,19 @@ public class Instrument {
var15 = var1 - var12;
}
int var19;
int var20;
while (var14 < var15) {
var16 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.field35 >> 16);
var17 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.field35 >> 16);
for (var19 = 0; var19 < var12; ++var19) {
var16 += (int)((long)Instrument_samples[var14 + var12 - 1 - var19] * (long)AudioFilter.field33[0][var19] >> 16);
for (var20 = 0; var20 < var12; ++var20) {
var17 += (int)((long)Instrument_samples[var14 + var12 - 1 - var20] * (long)AudioFilter.field33[0][var20] >> 16);
}
for (var19 = 0; var19 < var14; ++var19) {
var16 -= (int)((long)Instrument_samples[var14 - 1 - var19] * (long)AudioFilter.field33[1][var19] >> 16);
for (var20 = 0; var20 < var14; ++var20) {
var17 -= (int)((long)Instrument_samples[var14 - 1 - var20] * (long)AudioFilter.field33[1][var20] >> 16);
}
Instrument_samples[var14] = var16;
Instrument_samples[var14] = var17;
var11 = this.field421.doStep(var1 + 1);
++var14;
}
@@ -264,36 +264,36 @@ public class Instrument {
var15 = var1 - var12;
}
int var20;
int var21;
while (var14 < var15) {
var19 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.field35 >> 16);
var20 = (int)((long)Instrument_samples[var14 + var12] * (long)AudioFilter.field35 >> 16);
for (var20 = 0; var20 < var12; ++var20) {
var19 += (int)((long)Instrument_samples[var14 + var12 - 1 - var20] * (long)AudioFilter.field33[0][var20] >> 16);
for (var21 = 0; var21 < var12; ++var21) {
var20 += (int)((long)Instrument_samples[var14 + var12 - 1 - var21] * (long)AudioFilter.field33[0][var21] >> 16);
}
for (var20 = 0; var20 < var13; ++var20) {
var19 -= (int)((long)Instrument_samples[var14 - 1 - var20] * (long)AudioFilter.field33[1][var20] >> 16);
for (var21 = 0; var21 < var13; ++var21) {
var20 -= (int)((long)Instrument_samples[var14 - 1 - var21] * (long)AudioFilter.field33[1][var21] >> 16);
}
Instrument_samples[var14] = var19;
Instrument_samples[var14] = var20;
var11 = this.field421.doStep(var1 + 1);
++var14;
}
if (var14 >= var1 - var12) {
while (var14 < var1) {
var19 = 0;
var20 = 0;
for (var20 = var14 + var12 - var1; var20 < var12; ++var20) {
var19 += (int)((long)Instrument_samples[var14 + var12 - 1 - var20] * (long)AudioFilter.field33[0][var20] >> 16);
for (var21 = var14 + var12 - var1; var21 < var12; ++var21) {
var20 += (int)((long)Instrument_samples[var14 + var12 - 1 - var21] * (long)AudioFilter.field33[0][var21] >> 16);
}
for (var20 = 0; var20 < var13; ++var20) {
var19 -= (int)((long)Instrument_samples[var14 - 1 - var20] * (long)AudioFilter.field33[1][var20] >> 16);
for (var21 = 0; var21 < var13; ++var21) {
var20 -= (int)((long)Instrument_samples[var14 - 1 - var21] * (long)AudioFilter.field33[1][var21] >> 16);
}
Instrument_samples[var14] = var19;
Instrument_samples[var14] = var20;
this.field421.doStep(var1 + 1);
++var14;
}
@@ -332,56 +332,56 @@ public class Instrument {
signature = "(Lgr;)V"
)
@Export("decode")
final void decode(Buffer var1) {
final void decode(Buffer buffer) {
this.field413 = new SoundEnvelope();
this.field413.decode(var1);
this.field413.decode(buffer);
this.field414 = new SoundEnvelope();
this.field414.decode(var1);
int var2 = var1.readUnsignedByte();
this.field414.decode(buffer);
int var2 = buffer.readUnsignedByte();
if (var2 != 0) {
--var1.index;
--buffer.index;
this.field415 = new SoundEnvelope();
this.field415.decode(var1);
this.field415.decode(buffer);
this.field416 = new SoundEnvelope();
this.field416.decode(var1);
this.field416.decode(buffer);
}
var2 = var1.readUnsignedByte();
var2 = buffer.readUnsignedByte();
if (var2 != 0) {
--var1.index;
--buffer.index;
this.field417 = new SoundEnvelope();
this.field417.decode(var1);
this.field417.decode(buffer);
this.field418 = new SoundEnvelope();
this.field418.decode(var1);
this.field418.decode(buffer);
}
var2 = var1.readUnsignedByte();
var2 = buffer.readUnsignedByte();
if (var2 != 0) {
--var1.index;
--buffer.index;
this.field419 = new SoundEnvelope();
this.field419.decode(var1);
this.field419.decode(buffer);
this.field420 = new SoundEnvelope();
this.field420.decode(var1);
this.field420.decode(buffer);
}
for (int var3 = 0; var3 < 10; ++var3) {
int var4 = var1.method48();
int var4 = buffer.method48();
if (var4 == 0) {
break;
}
this.oscillatorVolume[var3] = var4;
this.oscillatorPitch[var3] = var1.method47();
this.oscillatorDelays[var3] = var1.method48();
this.oscillatorPitch[var3] = buffer.method47();
this.oscillatorDelays[var3] = buffer.method48();
}
this.delayTime = var1.method48();
this.delayDecay = var1.method48();
this.duration = var1.readUnsignedShort();
this.offset = var1.readUnsignedShort();
this.delayTime = buffer.method48();
this.delayDecay = buffer.method48();
this.duration = buffer.readUnsignedShort();
this.offset = buffer.readUnsignedShort();
this.filter = new AudioFilter();
this.field421 = new SoundEnvelope();
this.filter.method27(var1, this.field421);
this.filter.method27(buffer, this.field421);
}
static {
@@ -77,12 +77,12 @@ public class InterfaceParent extends Node {
garbageValue = "619422509"
)
@Export("decodeStringCp1252")
public static String decodeStringCp1252(byte[] var0, int var1, int var2) {
char[] var3 = new char[var2];
public static String decodeStringCp1252(byte[] src, int srcStart, int length) {
char[] var3 = new char[length];
int var4 = 0;
for (int var5 = 0; var5 < var2; ++var5) {
int var6 = var0[var5 + var1] & 255;
for (int var5 = 0; var5 < length; ++var5) {
int var6 = src[var5 + srcStart] & 255;
if (var6 != 0) {
if (var6 >= 128 && var6 < 160) {
char var7 = class304.cp1252AsciiExtension[var6 - 128];
@@ -47,7 +47,8 @@ public class ItemDefinition extends DualNode {
@ObfuscatedGetter(
intValue = 1070080857
)
int field435;
@Export("model")
int model;
@ObfuscatedName("z")
@Export("name")
public String name;
@@ -199,9 +200,11 @@ public class ItemDefinition extends DualNode {
@Export("femaleHeadModel2")
int femaleHeadModel2;
@ObfuscatedName("az")
int[] field436;
@Export("countobj")
int[] countobj;
@ObfuscatedName("au")
int[] field437;
@Export("countco")
int[] countco;
@ObfuscatedName("ao")
@ObfuscatedGetter(
intValue = 619422509
@@ -359,7 +362,7 @@ public class ItemDefinition extends DualNode {
@Export("decodeNext")
void decodeNext(Buffer var1, int var2) {
if (var2 == 1) {
this.field435 = var1.readUnsignedShort();
this.model = var1.readUnsignedShort();
} else if (var2 == 2) {
this.name = var1.readStringCp1252NullTerminated();
} else if (var2 == 4) {
@@ -445,13 +448,13 @@ public class ItemDefinition extends DualNode {
} else if (var2 == 98) {
this.noteTemplate = var1.readUnsignedShort();
} else if (var2 >= 100 && var2 < 110) {
if (this.field436 == null) {
this.field436 = new int[10];
this.field437 = new int[10];
if (this.countobj == null) {
this.countobj = new int[10];
this.countco = new int[10];
}
this.field436[var2 - 100] = var1.readUnsignedShort();
this.field437[var2 - 100] = var1.readUnsignedShort();
this.countobj[var2 - 100] = var1.readUnsignedShort();
this.countco[var2 - 100] = var1.readUnsignedShort();
} else if (var2 == 110) {
this.resizeX = var1.readUnsignedShort();
} else if (var2 == 111) {
@@ -484,21 +487,22 @@ public class ItemDefinition extends DualNode {
signature = "(Ljv;Ljv;I)V",
garbageValue = "2051877377"
)
void method140(ItemDefinition var1, ItemDefinition var2) {
this.field435 = var1.field435;
this.zoom2d = var1.zoom2d;
this.xan2d = var1.xan2d;
this.yan2d = var1.yan2d;
this.zan2d = var1.zan2d;
this.offsetX2d = var1.offsetX2d;
this.offsetY2d = var1.offsetY2d;
this.recolorFrom = var1.recolorFrom;
this.recolorTo = var1.recolorTo;
this.retextureFrom = var1.retextureFrom;
this.retextureTo = var1.retextureTo;
this.name = var2.name;
this.isMembersOnly = var2.isMembersOnly;
this.price = var2.price;
@Export("genCert")
void genCert(ItemDefinition template, ItemDefinition link) {
this.model = template.model;
this.zoom2d = template.zoom2d;
this.xan2d = template.xan2d;
this.yan2d = template.yan2d;
this.zan2d = template.zan2d;
this.offsetX2d = template.offsetX2d;
this.offsetY2d = template.offsetY2d;
this.recolorFrom = template.recolorFrom;
this.recolorTo = template.recolorTo;
this.retextureFrom = template.retextureFrom;
this.retextureTo = template.retextureTo;
this.name = link.name;
this.isMembersOnly = link.isMembersOnly;
this.price = link.price;
this.isStackable = 1;
}
@@ -507,37 +511,38 @@ public class ItemDefinition extends DualNode {
signature = "(Ljv;Ljv;I)V",
garbageValue = "227754762"
)
void method141(ItemDefinition var1, ItemDefinition var2) {
this.field435 = var1.field435;
this.zoom2d = var1.zoom2d;
this.xan2d = var1.xan2d;
this.yan2d = var1.yan2d;
this.zan2d = var1.zan2d;
this.offsetX2d = var1.offsetX2d;
this.offsetY2d = var1.offsetY2d;
this.recolorFrom = var2.recolorFrom;
this.recolorTo = var2.recolorTo;
this.retextureFrom = var2.retextureFrom;
this.retextureTo = var2.retextureTo;
this.name = var2.name;
this.isMembersOnly = var2.isMembersOnly;
this.isStackable = var2.isStackable;
this.maleModel = var2.maleModel;
this.maleModel1 = var2.maleModel1;
this.maleModel2 = var2.maleModel2;
this.femaleModel = var2.femaleModel;
this.femaleModel1 = var2.femaleModel1;
this.femaleModel2 = var2.femaleModel2;
this.maleHeadModel = var2.maleHeadModel;
this.maleHeadModel2 = var2.maleHeadModel2;
this.femaleHeadModel = var2.femaleHeadModel;
this.femaleHeadModel2 = var2.femaleHeadModel2;
this.team = var2.team;
this.groundActions = var2.groundActions;
@Export("genBought")
void genBought(ItemDefinition template, ItemDefinition link) {
this.model = template.model;
this.zoom2d = template.zoom2d;
this.xan2d = template.xan2d;
this.yan2d = template.yan2d;
this.zan2d = template.zan2d;
this.offsetX2d = template.offsetX2d;
this.offsetY2d = template.offsetY2d;
this.recolorFrom = link.recolorFrom;
this.recolorTo = link.recolorTo;
this.retextureFrom = link.retextureFrom;
this.retextureTo = link.retextureTo;
this.name = link.name;
this.isMembersOnly = link.isMembersOnly;
this.isStackable = link.isStackable;
this.maleModel = link.maleModel;
this.maleModel1 = link.maleModel1;
this.maleModel2 = link.maleModel2;
this.femaleModel = link.femaleModel;
this.femaleModel1 = link.femaleModel1;
this.femaleModel2 = link.femaleModel2;
this.maleHeadModel = link.maleHeadModel;
this.maleHeadModel2 = link.maleHeadModel2;
this.femaleHeadModel = link.femaleHeadModel;
this.femaleHeadModel2 = link.femaleHeadModel2;
this.team = link.team;
this.groundActions = link.groundActions;
this.inventoryActions = new String[5];
if (var2.inventoryActions != null) {
if (link.inventoryActions != null) {
for (int var3 = 0; var3 < 4; ++var3) {
this.inventoryActions[var3] = var2.inventoryActions[var3];
this.inventoryActions[var3] = link.inventoryActions[var3];
}
}
@@ -550,20 +555,21 @@ public class ItemDefinition extends DualNode {
signature = "(Ljv;Ljv;I)V",
garbageValue = "2084647027"
)
void method142(ItemDefinition var1, ItemDefinition var2) {
this.field435 = var1.field435;
this.zoom2d = var1.zoom2d;
this.xan2d = var1.xan2d;
this.yan2d = var1.yan2d;
this.zan2d = var1.zan2d;
this.offsetX2d = var1.offsetX2d;
this.offsetY2d = var1.offsetY2d;
this.recolorFrom = var1.recolorFrom;
this.recolorTo = var1.recolorTo;
this.retextureFrom = var1.retextureFrom;
this.retextureTo = var1.retextureTo;
this.isStackable = var1.isStackable;
this.name = var2.name;
@Export("genPlaceholder")
void genPlaceholder(ItemDefinition template, ItemDefinition link) {
this.model = template.model;
this.zoom2d = template.zoom2d;
this.xan2d = template.xan2d;
this.yan2d = template.yan2d;
this.zan2d = template.zan2d;
this.offsetX2d = template.offsetX2d;
this.offsetY2d = template.offsetY2d;
this.recolorFrom = template.recolorFrom;
this.recolorTo = template.recolorTo;
this.retextureFrom = template.retextureFrom;
this.retextureTo = template.retextureTo;
this.isStackable = template.isStackable;
this.name = link.name;
this.price = 0;
this.isMembersOnly = false;
this.isTradable = false;
@@ -576,12 +582,12 @@ public class ItemDefinition extends DualNode {
)
public final ModelData method143(int var1) {
int var2;
if (this.field436 != null && var1 > 1) {
if (this.countobj != null && var1 > 1) {
int var3 = -1;
for (var2 = 0; var2 < 10; ++var2) {
if (var1 >= this.field437[var2] && this.field437[var2] != 0) {
var3 = this.field436[var2];
if (var1 >= this.countco[var2] && this.countco[var2] != 0) {
var3 = this.countobj[var2];
}
}
@@ -590,7 +596,7 @@ public class ItemDefinition extends DualNode {
}
}
ModelData var4 = ModelData.method2788(ItemDefinition_modelArchive, this.field435, 0);
ModelData var4 = ModelData.method2788(ItemDefinition_modelArchive, this.model, 0);
if (var4 == null) {
return null;
} else {
@@ -620,13 +626,13 @@ public class ItemDefinition extends DualNode {
garbageValue = "1152916563"
)
@Export("getModel")
public final Model getModel(int var1) {
if (this.field436 != null && var1 > 1) {
public final Model getModel(int quantity) {
if (this.countobj != null && quantity > 1) {
int var2 = -1;
for (int var3 = 0; var3 < 10; ++var3) {
if (var1 >= this.field437[var3] && this.field437[var3] != 0) {
var2 = this.field436[var3];
if (quantity >= this.countco[var3] && this.countco[var3] != 0) {
var2 = this.countobj[var3];
}
}
@@ -639,7 +645,7 @@ public class ItemDefinition extends DualNode {
if (var5 != null) {
return var5;
} else {
ModelData var6 = ModelData.method2788(ItemDefinition_modelArchive, this.field435, 0);
ModelData var6 = ModelData.method2788(ItemDefinition_modelArchive, this.model, 0);
if (var6 == null) {
return null;
} else {
@@ -673,13 +679,14 @@ public class ItemDefinition extends DualNode {
signature = "(IB)Ljv;",
garbageValue = "0"
)
public ItemDefinition method144(int var1) {
if (this.field436 != null && var1 > 1) {
@Export("getCountObj")
public ItemDefinition getCountObj(int quantity) {
if (this.countobj != null && quantity > 1) {
int var2 = -1;
for (int var3 = 0; var3 < 10; ++var3) {
if (var1 >= this.field437[var3] && this.field437[var3] != 0) {
var2 = this.field436[var3];
if (quantity >= this.countco[var3] && this.countco[var3] != 0) {
var2 = this.countobj[var3];
}
}
@@ -40,15 +40,15 @@ public class IterableNodeDeque implements Iterable {
signature = "(Lgw;)V"
)
@Export("addFirst")
public void addFirst(Node var1) {
if (var1.next != null) {
var1.remove();
public void addFirst(Node node) {
if (node.next != null) {
node.remove();
}
var1.next = this.sentinel.next;
var1.previous = this.sentinel;
var1.next.previous = var1;
var1.previous.next = var1;
node.next = this.sentinel.next;
node.previous = this.sentinel;
node.next.previous = node;
node.previous.next = node;
}
@ObfuscatedName("q")
@@ -56,15 +56,15 @@ public class IterableNodeDeque implements Iterable {
signature = "(Lgw;)V"
)
@Export("addLast")
public void addLast(Node var1) {
if (var1.next != null) {
var1.remove();
public void addLast(Node node) {
if (node.next != null) {
node.remove();
}
var1.next = this.sentinel;
var1.previous = this.sentinel.previous;
var1.next.previous = var1;
var1.previous.next = var1;
node.next = this.sentinel;
node.previous = this.sentinel.previous;
node.next.previous = node;
node.previous.next = node;
}
@ObfuscatedName("o")
@@ -81,12 +81,12 @@ public class IterableNodeDeque implements Iterable {
signature = "(Lgw;)Lgw;"
)
@Export("previousOrLast")
Node previousOrLast(Node var1) {
Node previousOrLast(Node node) {
Node var2;
if (var1 == null) {
if (node == null) {
var2 = this.sentinel.previous;
} else {
var2 = var1;
var2 = node;
}
if (var2 == this.sentinel) {
@@ -131,14 +131,14 @@ public class IterableNodeDeque implements Iterable {
signature = "(Lgw;Lgw;)V"
)
@Export("IterableNodeDeque_addBefore")
public static void IterableNodeDeque_addBefore(Node var0, Node var1) {
if (var0.next != null) {
var0.remove();
public static void IterableNodeDeque_addBefore(Node node, Node old) {
if (node.next != null) {
node.remove();
}
var0.next = var1;
var0.previous = var1.previous;
var0.next.previous = var0;
var0.previous.next = var0;
node.next = old;
node.previous = old.previous;
node.next.previous = node;
node.previous.next = node;
}
}
@@ -125,15 +125,16 @@ public final class IterableNodeHashTable implements Iterable {
this.current = var1.previous;
return var1;
} else {
while (this.index < this.size) {
var1 = this.buckets[this.index++].previous;
if (var1 != this.buckets[this.index - 1]) {
this.current = var1.previous;
return var1;
}
do {
if (this.index >= this.size) {
return null;
}
return null;
var1 = this.buckets[this.index++].previous;
} while(var1 == this.buckets[this.index - 1]);
this.current = var1.previous;
return var1;
}
}
@@ -56,19 +56,20 @@ public class IterableNodeHashTableIterator implements Iterator {
this.last = var1;
return var1;
} else {
while (this.index < this.hashTable.size) {
do {
if (this.index >= this.hashTable.size) {
return null;
}
var1 = this.hashTable.buckets[this.index++].previous;
if (var1 != this.hashTable.buckets[this.index - 1]) {
} while(var1 == this.hashTable.buckets[this.index - 1]);
this.head = var1.previous;
this.last = var1;
return var1;
}
}
return null;
}
}
@Export("hasNext")
@ObfuscatedName("hasNext")
public boolean hasNext() {
+11 -17
View File
@@ -67,15 +67,15 @@ public class Message extends DualNode {
garbageValue = "0"
)
@Export("set")
void set(int var1, String var2, String var3, String var4) {
void set(int type, String sender, String prefix, String text) {
int var5 = ++Messages.Messages_count - 1;
this.count = var5;
this.cycle = Client.cycle;
this.type = var1;
this.sender = var2;
this.type = type;
this.sender = sender;
this.fillSenderUsername();
this.prefix = var3;
this.text = var4;
this.prefix = prefix;
this.text = text;
this.clearIsFromFriend();
this.clearIsFromIgnored();
}
@@ -221,7 +221,7 @@ public class Message extends DualNode {
} else if (VarcInt.isAlphaNumeric(var10)) {
var11 = true;
} else {
label149: {
label151: {
char[] var12 = class305.field1149;
int var13;
@@ -230,27 +230,21 @@ public class Message extends DualNode {
var14 = var12[var13];
if (var10 == var14) {
var11 = true;
break label149;
break label151;
}
}
var12 = class305.field1150;
var13 = 0;
while (true) {
if (var13 >= var12.length) {
var11 = false;
break;
}
for (var13 = 0; var13 < var12.length; ++var13) {
var14 = var12[var13];
if (var10 == var14) {
var11 = true;
break;
break label151;
}
}
++var13;
}
var11 = false;
}
}
@@ -44,33 +44,33 @@ public class MidiFileReader {
@ObfuscatedName("m")
@Export("parse")
void parse(byte[] var1) {
this.buffer.array = var1;
void parse(byte[] midi) {
this.buffer.array = midi;
this.buffer.index = 10;
int var2 = this.buffer.readUnsignedShort();
this.division = this.buffer.readUnsignedShort();
this.field493 = 500000;
this.trackStarts = new int[var2];
Buffer var10000;
int var3;
Buffer var3;
int var4;
for (var3 = 0; var3 < var2; var10000.index += var4) {
int var5 = this.buffer.readInt();
var4 = this.buffer.readInt();
if (var5 == 1297379947) {
this.trackStarts[var3] = this.buffer.index;
++var3;
int var5;
for (var4 = 0; var4 < var2; var3.index += var5) {
int var6 = this.buffer.readInt();
var5 = this.buffer.readInt();
if (var6 == 1297379947) {
this.trackStarts[var4] = this.buffer.index;
++var4;
}
var10000 = this.buffer;
var3 = this.buffer;
}
this.field494 = 0L;
this.trackPositions = new int[var2];
for (var3 = 0; var3 < var2; ++var3) {
this.trackPositions[var3] = this.trackStarts[var3];
for (var4 = 0; var4 < var2; ++var4) {
this.trackPositions[var4] = this.trackStarts[var4];
}
this.trackLengths = new int[var2];
@@ -101,14 +101,14 @@ public class MidiFileReader {
@ObfuscatedName("o")
@Export("gotoTrack")
void gotoTrack(int var1) {
this.buffer.index = this.trackPositions[var1];
void gotoTrack(int trackId) {
this.buffer.index = this.trackPositions[trackId];
}
@ObfuscatedName("u")
@Export("markTrackPosition")
void markTrackPosition(int var1) {
this.trackPositions[var1] = this.buffer.index;
void markTrackPosition(int trackId) {
this.trackPositions[trackId] = this.buffer.index;
}
@ObfuscatedName("g")
@@ -119,47 +119,47 @@ public class MidiFileReader {
@ObfuscatedName("l")
@Export("readTrackLength")
void readTrackLength(int var1) {
void readTrackLength(int trackId) {
int var2 = this.buffer.method52();
int[] var10000 = this.trackLengths;
var10000[var1] += var2;
int[] var3 = this.trackLengths;
var3[trackId] += var2;
}
@ObfuscatedName("e")
@Export("readMessage")
int readMessage(int var1) {
int var2 = this.readMessage0(var1);
int readMessage(int trackId) {
int var2 = this.readMessage0(trackId);
return var2;
}
@ObfuscatedName("x")
@Export("readMessage0")
int readMessage0(int var1) {
int readMessage0(int trackId) {
byte var2 = this.buffer.array[this.buffer.index];
int var3;
if (var2 < 0) {
var3 = var2 & 255;
this.field492[var1] = var3;
this.field492[trackId] = var3;
++this.buffer.index;
} else {
var3 = this.field492[var1];
var3 = this.field492[trackId];
}
if (var3 != 240 && var3 != 247) {
return this.method167(var1, var3);
return this.method167(trackId, var3);
} else {
int var4 = this.buffer.method52();
if (var3 == 247 && var4 > 0) {
int var5 = this.buffer.array[this.buffer.index] & 255;
if (var5 >= 241 && var5 <= 243 || var5 == 246 || var5 == 248 || var5 >= 250 && var5 <= 252 || var5 == 254) {
++this.buffer.index;
this.field492[var1] = var5;
return this.method167(var1, var5);
this.field492[trackId] = var5;
return this.method167(trackId, var5);
}
}
Buffer var10000 = this.buffer;
var10000.index += var4;
Buffer var6 = this.buffer;
var6.index += var4;
return 0;
}
}
@@ -168,25 +168,25 @@ public class MidiFileReader {
int method167(int var1, int var2) {
int var3;
if (var2 == 255) {
int var7 = this.buffer.readUnsignedByte();
int var8 = this.buffer.readUnsignedByte();
var3 = this.buffer.method52();
Buffer var10000;
if (var7 == 47) {
var10000 = this.buffer;
var10000.index += var3;
Buffer var5;
if (var8 == 47) {
var5 = this.buffer;
var5.index += var3;
return 1;
} else if (var7 == 81) {
int var5 = this.buffer.readMedium();
} else if (var8 == 81) {
int var6 = this.buffer.readMedium();
var3 -= 3;
int var6 = this.trackLengths[var1];
this.field494 += (long)var6 * (long)(this.field493 - var5);
this.field493 = var5;
var10000 = this.buffer;
var10000.index += var3;
int var7 = this.trackLengths[var1];
this.field494 += (long)var7 * (long)(this.field493 - var6);
this.field493 = var6;
var5 = this.buffer;
var5.index += var3;
return 2;
} else {
var10000 = this.buffer;
var10000.index += var3;
var5 = this.buffer;
var5.index += var3;
return 3;
}
} else {
@@ -150,15 +150,15 @@ public class MidiPcmStream extends PcmStream {
garbageValue = "-324121369"
)
@Export("loadMusicTrack")
public synchronized boolean loadMusicTrack(MusicTrack var1, AbstractArchive var2, SoundCache var3, int var4) {
var1.method226();
public synchronized boolean loadMusicTrack(MusicTrack musicTrack, AbstractArchive var2, SoundCache var3, int frequency) {
musicTrack.method226();
boolean var5 = true;
int[] var6 = null;
if (var4 > 0) {
var6 = new int[]{var4};
if (frequency > 0) {
var6 = new int[]{frequency};
}
for (ByteArrayNode var7 = (ByteArrayNode)var1.table.first(); var7 != null; var7 = (ByteArrayNode)var1.table.next()) {
for (ByteArrayNode var7 = (ByteArrayNode)musicTrack.table.first(); var7 != null; var7 = (ByteArrayNode)musicTrack.table.next()) {
int var8 = (int)var7.key;
MusicPatch var9 = (MusicPatch)this.musicPatches.get((long)var8);
if (var9 == null) {
@@ -177,7 +177,7 @@ public class MidiPcmStream extends PcmStream {
}
if (var5) {
var1.clear();
musicTrack.clear();
}
return var5;
@@ -233,7 +233,7 @@ public class MidiPcmStream extends PcmStream {
}
@ObfuscatedName("e")
protected synchronized void vmethod263(int[] var1, int var2, int var3) {
protected synchronized void fill(int[] var1, int var2, int var3) {
if (this.midiFile.isReady()) {
int var4 = this.midiFile.division * this.field496 / class309.PcmPlayer_sampleRate;
@@ -246,14 +246,14 @@ public class MidiPcmStream extends PcmStream {
int var7 = (int)(((long)var4 + (this.field516 - this.field515) - 1L) / (long)var4);
this.field515 += (long)var4 * (long)var7;
this.patchStream.vmethod263(var1, var2, var7);
this.patchStream.fill(var1, var2, var7);
var2 += var7;
var3 -= var7;
this.method194();
} while(this.midiFile.isReady());
}
this.patchStream.vmethod263(var1, var2, var3);
this.patchStream.fill(var1, var2, var3);
}
@ObfuscatedName("x")
@@ -262,9 +262,9 @@ public class MidiPcmStream extends PcmStream {
garbageValue = "-1859383102"
)
@Export("setMusicTrack")
public synchronized void setMusicTrack(MusicTrack var1, boolean var2) {
public synchronized void setMusicTrack(MusicTrack musicTrack, boolean var2) {
this.clear();
this.midiFile.parse(var1.midi);
this.midiFile.parse(musicTrack.midi);
this.field514 = var2;
this.field515 = 0L;
int var3 = this.midiFile.trackCount();
@@ -281,7 +281,7 @@ public class MidiPcmStream extends PcmStream {
}
@ObfuscatedName("d")
protected synchronized void vmethod264(int var1) {
protected synchronized void skip(int var1) {
if (this.midiFile.isReady()) {
int var2 = this.midiFile.division * this.field496 / class309.PcmPlayer_sampleRate;
@@ -294,13 +294,13 @@ public class MidiPcmStream extends PcmStream {
int var5 = (int)(((long)var2 + (this.field516 - this.field515) - 1L) / (long)var2);
this.field515 += (long)var5 * (long)var2;
this.patchStream.vmethod264(var5);
this.patchStream.skip(var5);
var1 -= var5;
this.method194();
} while(this.midiFile.isReady());
}
this.patchStream.vmethod264(var1);
this.patchStream.skip(var1);
}
@ObfuscatedName("a")
@@ -703,25 +703,25 @@ public class MidiPcmStream extends PcmStream {
this.field499[var3] = var5 + (this.field499[var3] & -128);
}
int[] var10000;
int[] var6;
if (var4 == 64) {
if (var5 >= 64) {
var10000 = this.field506;
var10000[var3] |= 1;
var6 = this.field506;
var6[var3] |= 1;
} else {
var10000 = this.field506;
var10000[var3] &= -2;
var6 = this.field506;
var6[var3] &= -2;
}
}
if (var4 == 65) {
if (var5 >= 64) {
var10000 = this.field506;
var10000[var3] |= 2;
var6 = this.field506;
var6[var3] |= 2;
} else {
this.method187(var3);
var10000 = this.field506;
var10000[var3] &= -3;
var6 = this.field506;
var6[var3] &= -3;
}
}
@@ -753,17 +753,17 @@ public class MidiPcmStream extends PcmStream {
this.method185(var3);
}
int var6;
int var7;
if (var4 == 6) {
var6 = this.field507[var3];
if (var6 == 16384) {
var7 = this.field507[var3];
if (var7 == 16384) {
this.field508[var3] = (var5 << 7) + (this.field508[var3] & -16257);
}
}
if (var4 == 38) {
var6 = this.field507[var3];
if (var6 == 16384) {
var7 = this.field507[var3];
if (var7 == 16384) {
this.field508[var3] = var5 + (this.field508[var3] & -128);
}
}
@@ -778,12 +778,12 @@ public class MidiPcmStream extends PcmStream {
if (var4 == 81) {
if (var5 >= 64) {
var10000 = this.field506;
var10000[var3] |= 4;
var6 = this.field506;
var6[var3] |= 4;
} else {
this.method188(var3);
var10000 = this.field506;
var10000[var3] &= -5;
var6 = this.field506;
var6[var3] &= -5;
}
}
@@ -1040,9 +1040,9 @@ public class MidiPcmStream extends PcmStream {
if (var7) {
var1.stream.method275(var1.field590);
if (var2 != null) {
var1.stream.vmethod263(var2, var3, var4);
var1.stream.fill(var2, var3, var4);
} else {
var1.stream.vmethod264(var4);
var1.stream.skip(var4);
}
if (var1.stream.method279()) {
@@ -1079,13 +1079,13 @@ public class MidiPcmStream extends PcmStream {
garbageValue = "30"
)
@Export("PcmStream_disable")
static final void PcmStream_disable(PcmStream var0) {
var0.active = false;
if (var0.sound != null) {
var0.sound.position = 0;
static final void PcmStream_disable(PcmStream stream) {
stream.active = false;
if (stream.sound != null) {
stream.sound.position = 0;
}
for (PcmStream var1 = var0.firstSubStream(); var1 != null; var1 = var0.nextSubStream()) {
for (PcmStream var1 = stream.firstSubStream(); var1 != null; var1 = stream.nextSubStream()) {
PcmStream_disable(var1);
}
@@ -73,7 +73,7 @@ public class MilliClock extends Clock {
garbageValue = "-126803683"
)
@Export("wait")
public int wait(int var1, int var2) {
public int wait(int cycleMs, int minSleepMs) {
int var3 = this.field518;
int var4 = this.field519;
this.field518 = 300;
@@ -83,7 +83,7 @@ public class MilliClock extends Clock {
this.field518 = var3;
this.field519 = var4;
} else if (this.field520 > this.field517[this.field522]) {
this.field518 = (int)((long)(var1 * 2560) / (this.field520 - this.field517[this.field522]));
this.field518 = (int)((long)(cycleMs * 2560) / (this.field520 - this.field517[this.field522]));
}
if (this.field518 < 25) {
@@ -92,11 +92,11 @@ public class MilliClock extends Clock {
if (this.field518 > 256) {
this.field518 = 256;
this.field519 = (int)((long)var1 - (this.field520 - this.field517[this.field522]) / 10L);
this.field519 = (int)((long)cycleMs - (this.field520 - this.field517[this.field522]) / 10L);
}
if (this.field519 > var1) {
this.field519 = var1;
if (this.field519 > cycleMs) {
this.field519 = cycleMs;
}
this.field517[this.field522] = this.field520;
@@ -105,14 +105,14 @@ public class MilliClock extends Clock {
if (this.field519 > 1) {
for (var5 = 0; var5 < 10; ++var5) {
if (this.field517[var5] != 0L) {
long[] var10000 = this.field517;
var10000[var5] += (long)this.field519;
long[] var6 = this.field517;
var6[var5] += (long)this.field519;
}
}
}
if (this.field519 < var2) {
this.field519 = var2;
if (this.field519 < minSleepMs) {
this.field519 = minSleepMs;
}
class203.method4010((long)this.field519);
+126 -125
View File
@@ -516,7 +516,7 @@ public class Model extends Entity {
@ObfuscatedName("o")
@Export("calculateBoundingBox")
void calculateBoundingBox(int var1) {
void calculateBoundingBox(int yaw) {
if (this.xMidOffset == -1) {
int var2 = 0;
int var3 = 0;
@@ -524,8 +524,8 @@ public class Model extends Entity {
int var5 = 0;
int var6 = 0;
int var7 = 0;
int var8 = Model_cosine[var1];
int var9 = Model_sine[var1];
int var8 = Model_cosine[yaw];
int var9 = Model_sine[yaw];
for (int var10 = 0; var10 < this.verticesCount; ++var10) {
int var11 = Rasterizer3D.method3039(this.verticesX[var10], this.verticesZ[var10], var8, var9);
@@ -653,9 +653,9 @@ public class Model extends Entity {
signature = "(Len;I)V"
)
@Export("animate")
public void animate(Frames var1, int var2) {
if (this.vertexLabels != null && var2 != -1) {
Animation var3 = var1.frames[var2];
public void animate(Frames frames, int frame) {
if (this.vertexLabels != null && frame != -1) {
Animation var3 = frames.frames[frame];
Skeleton var4 = var3.skeleton;
Model_transformTempX = 0;
Model_transformTempY = 0;
@@ -726,22 +726,23 @@ public class Model extends Entity {
@ObfuscatedName("z")
@Export("transform")
void transform(int var1, int[] var2, int var3, int var4, int var5) {
int var6 = var2.length;
void transform(int type, int[] labels, int var3, int var4, int var5) {
int var6 = labels.length;
int var7;
int var8;
int var9;
int var10;
if (var1 == 0) {
int[] var12;
if (type == 0) {
var7 = 0;
Model_transformTempX = 0;
Model_transformTempY = 0;
Model_transformTempZ = 0;
for (var8 = 0; var8 < var6; ++var8) {
int var11 = var2[var8];
int var11 = labels[var8];
if (var11 < this.vertexLabels.length) {
int[] var12 = this.vertexLabels[var11];
var12 = this.vertexLabels[var11];
for (var9 = 0; var9 < var12.length; ++var9) {
var10 = var12[var9];
@@ -763,113 +764,112 @@ public class Model extends Entity {
Model_transformTempZ = var5;
}
} else {
int[] var10000;
int[] var18;
int var19;
if (var1 == 1) {
int var13;
int[] var19;
if (type == 1) {
for (var7 = 0; var7 < var6; ++var7) {
var8 = var2[var7];
var8 = labels[var7];
if (var8 < this.vertexLabels.length) {
var18 = this.vertexLabels[var8];
var12 = this.vertexLabels[var8];
for (var19 = 0; var19 < var18.length; ++var19) {
var9 = var18[var19];
var10000 = this.verticesX;
var10000[var9] += var3;
var10000 = this.verticesY;
var10000[var9] += var4;
var10000 = this.verticesZ;
var10000[var9] += var5;
for (var13 = 0; var13 < var12.length; ++var13) {
var9 = var12[var13];
var19 = this.verticesX;
var19[var9] += var3;
var19 = this.verticesY;
var19[var9] += var4;
var19 = this.verticesZ;
var19[var9] += var5;
}
}
}
} else if (var1 == 2) {
} else if (type == 2) {
for (var7 = 0; var7 < var6; ++var7) {
var8 = var2[var7];
var8 = labels[var7];
if (var8 < this.vertexLabels.length) {
var18 = this.vertexLabels[var8];
var12 = this.vertexLabels[var8];
for (var19 = 0; var19 < var18.length; ++var19) {
var9 = var18[var19];
var10000 = this.verticesX;
var10000[var9] -= Model_transformTempX;
var10000 = this.verticesY;
var10000[var9] -= Model_transformTempY;
var10000 = this.verticesZ;
var10000[var9] -= Model_transformTempZ;
for (var13 = 0; var13 < var12.length; ++var13) {
var9 = var12[var13];
var19 = this.verticesX;
var19[var9] -= Model_transformTempX;
var19 = this.verticesY;
var19[var9] -= Model_transformTempY;
var19 = this.verticesZ;
var19[var9] -= Model_transformTempZ;
var10 = (var3 & 255) * 8;
int var13 = (var4 & 255) * 8;
int var14 = (var5 & 255) * 8;
int var15;
int var14 = (var4 & 255) * 8;
int var15 = (var5 & 255) * 8;
int var16;
int var17;
if (var14 != 0) {
var15 = Model_sine[var14];
var16 = Model_cosine[var14];
var17 = var15 * this.verticesY[var9] + var16 * this.verticesX[var9] >> 16;
this.verticesY[var9] = var16 * this.verticesY[var9] - var15 * this.verticesX[var9] >> 16;
this.verticesX[var9] = var17;
int var18;
if (var15 != 0) {
var16 = Model_sine[var15];
var17 = Model_cosine[var15];
var18 = var16 * this.verticesY[var9] + var17 * this.verticesX[var9] >> 16;
this.verticesY[var9] = var17 * this.verticesY[var9] - var16 * this.verticesX[var9] >> 16;
this.verticesX[var9] = var18;
}
if (var10 != 0) {
var15 = Model_sine[var10];
var16 = Model_cosine[var10];
var17 = var16 * this.verticesY[var9] - var15 * this.verticesZ[var9] >> 16;
this.verticesZ[var9] = var15 * this.verticesY[var9] + var16 * this.verticesZ[var9] >> 16;
this.verticesY[var9] = var17;
var16 = Model_sine[var10];
var17 = Model_cosine[var10];
var18 = var17 * this.verticesY[var9] - var16 * this.verticesZ[var9] >> 16;
this.verticesZ[var9] = var16 * this.verticesY[var9] + var17 * this.verticesZ[var9] >> 16;
this.verticesY[var9] = var18;
}
if (var13 != 0) {
var15 = Model_sine[var13];
var16 = Model_cosine[var13];
var17 = var15 * this.verticesZ[var9] + var16 * this.verticesX[var9] >> 16;
this.verticesZ[var9] = var16 * this.verticesZ[var9] - var15 * this.verticesX[var9] >> 16;
this.verticesX[var9] = var17;
if (var14 != 0) {
var16 = Model_sine[var14];
var17 = Model_cosine[var14];
var18 = var16 * this.verticesZ[var9] + var17 * this.verticesX[var9] >> 16;
this.verticesZ[var9] = var17 * this.verticesZ[var9] - var16 * this.verticesX[var9] >> 16;
this.verticesX[var9] = var18;
}
var10000 = this.verticesX;
var10000[var9] += Model_transformTempX;
var10000 = this.verticesY;
var10000[var9] += Model_transformTempY;
var10000 = this.verticesZ;
var10000[var9] += Model_transformTempZ;
var19 = this.verticesX;
var19[var9] += Model_transformTempX;
var19 = this.verticesY;
var19[var9] += Model_transformTempY;
var19 = this.verticesZ;
var19[var9] += Model_transformTempZ;
}
}
}
} else if (var1 == 3) {
} else if (type == 3) {
for (var7 = 0; var7 < var6; ++var7) {
var8 = var2[var7];
var8 = labels[var7];
if (var8 < this.vertexLabels.length) {
var18 = this.vertexLabels[var8];
var12 = this.vertexLabels[var8];
for (var19 = 0; var19 < var18.length; ++var19) {
var9 = var18[var19];
var10000 = this.verticesX;
var10000[var9] -= Model_transformTempX;
var10000 = this.verticesY;
var10000[var9] -= Model_transformTempY;
var10000 = this.verticesZ;
var10000[var9] -= Model_transformTempZ;
for (var13 = 0; var13 < var12.length; ++var13) {
var9 = var12[var13];
var19 = this.verticesX;
var19[var9] -= Model_transformTempX;
var19 = this.verticesY;
var19[var9] -= Model_transformTempY;
var19 = this.verticesZ;
var19[var9] -= Model_transformTempZ;
this.verticesX[var9] = var3 * this.verticesX[var9] / 128;
this.verticesY[var9] = var4 * this.verticesY[var9] / 128;
this.verticesZ[var9] = var5 * this.verticesZ[var9] / 128;
var10000 = this.verticesX;
var10000[var9] += Model_transformTempX;
var10000 = this.verticesY;
var10000[var9] += Model_transformTempY;
var10000 = this.verticesZ;
var10000[var9] += Model_transformTempZ;
var19 = this.verticesX;
var19[var9] += Model_transformTempX;
var19 = this.verticesY;
var19[var9] += Model_transformTempY;
var19 = this.verticesZ;
var19[var9] += Model_transformTempZ;
}
}
}
} else if (var1 == 5 && this.faceLabelsAlpha != null && this.faceAlphas != null) {
} else if (type == 5 && this.faceLabelsAlpha != null && this.faceAlphas != null) {
for (var7 = 0; var7 < var6; ++var7) {
var8 = var2[var7];
var8 = labels[var7];
if (var8 < this.faceLabelsAlpha.length) {
var18 = this.faceLabelsAlpha[var8];
var12 = this.faceLabelsAlpha[var8];
for (var19 = 0; var19 < var18.length; ++var19) {
var9 = var18[var19];
for (var13 = 0; var13 < var12.length; ++var13) {
var9 = var12[var13];
var10 = (this.faceAlphas[var9] & 255) + var3 * 8;
if (var10 < 0) {
var10 = 0;
@@ -923,9 +923,9 @@ public class Model extends Entity {
@ObfuscatedName("y")
@Export("rotateZ")
public void rotateZ(int var1) {
int var2 = Model_sine[var1];
int var3 = Model_cosine[var1];
public void rotateZ(int pitch) {
int var2 = Model_sine[pitch];
int var3 = Model_cosine[pitch];
for (int var4 = 0; var4 < this.verticesCount; ++var4) {
int var5 = var3 * this.verticesY[var4] - var2 * this.verticesZ[var4] >> 16;
@@ -938,14 +938,14 @@ public class Model extends Entity {
@ObfuscatedName("h")
@Export("offsetBy")
public void offsetBy(int var1, int var2, int var3) {
public void offsetBy(int x, int y, int var3) {
for (int var4 = 0; var4 < this.verticesCount; ++var4) {
int[] var10000 = this.verticesX;
var10000[var4] += var1;
var10000 = this.verticesY;
var10000[var4] += var2;
var10000 = this.verticesZ;
var10000[var4] += var3;
int[] var5 = this.verticesX;
var5[var4] += x;
var5 = this.verticesY;
var5[var4] += y;
var5 = this.verticesZ;
var5[var4] += var3;
}
this.resetBounds();
@@ -953,10 +953,10 @@ public class Model extends Entity {
@ObfuscatedName("b")
@Export("scale")
public void scale(int var1, int var2, int var3) {
public void scale(int x, int y, int var3) {
for (int var4 = 0; var4 < this.verticesCount; ++var4) {
this.verticesX[var4] = this.verticesX[var4] * var1 / 128;
this.verticesY[var4] = var2 * this.verticesY[var4] / 128;
this.verticesX[var4] = this.verticesX[var4] * x / 128;
this.verticesY[var4] = y * this.verticesY[var4] / 128;
this.verticesZ[var4] = var3 * this.verticesZ[var4] / 128;
}
@@ -1184,6 +1184,7 @@ public class Model extends Entity {
field535[var7] = 0;
}
int[] var30;
for (var7 = this.diameter - 1; var7 >= 0; --var7) {
var8 = field529[var7];
if (var8 > 0) {
@@ -1195,8 +1196,8 @@ public class Model extends Entity {
var12 = field531[var28]++;
field532[var28][var12] = var10;
if (var28 < 10) {
int[] var10000 = field535;
var10000[var28] += var7;
var30 = field535;
var30[var28] += var7;
} else if (var28 == 10) {
field533[var12] = var7;
} else {
@@ -1224,7 +1225,7 @@ public class Model extends Entity {
var10 = 0;
var11 = field531[10];
int[] var29 = field532[10];
int[] var30 = field533;
var30 = field533;
if (var10 == var11) {
var10 = 0;
var11 = field531[11];
@@ -1528,31 +1529,31 @@ public class Model extends Entity {
@ObfuscatedName("cy")
@Export("draw")
void draw(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, long var9) {
void draw(int yaw, int cameraPitchSine, int cameraPitchCosine, int cameraYawSine, int cameraYawCosine, int x, int y, int var8, long tag) {
field529[0] = -1;
if (this.boundsType != 1) {
this.calculateBoundsCylinder();
}
this.calculateBoundingBox(var1);
int var11 = var5 * var8 - var4 * var6 >> 16;
int var12 = var2 * var7 + var3 * var11 >> 16;
int var13 = var3 * this.xzRadius >> 16;
this.calculateBoundingBox(yaw);
int var11 = cameraYawCosine * var8 - cameraYawSine * x >> 16;
int var12 = cameraPitchSine * y + cameraPitchCosine * var11 >> 16;
int var13 = cameraPitchCosine * this.xzRadius >> 16;
int var14 = var12 + var13;
if (var14 > 50 && var12 < 3500) {
int var15 = var8 * var4 + var5 * var6 >> 16;
int var15 = var8 * cameraYawSine + cameraYawCosine * x >> 16;
int var16 = (var15 - this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom;
if (var16 / var14 < Rasterizer3D.Rasterizer3D_clipMidX2) {
int var17 = (var15 + this.xzRadius) * Rasterizer3D.Rasterizer3D_zoom;
if (var17 / var14 > Rasterizer3D.Rasterizer3D_clipNegativeMidX) {
int var18 = var3 * var7 - var11 * var2 >> 16;
int var19 = var2 * this.xzRadius >> 16;
int var18 = cameraPitchCosine * y - var11 * cameraPitchSine >> 16;
int var19 = cameraPitchSine * this.xzRadius >> 16;
int var20 = (var18 + var19) * Rasterizer3D.Rasterizer3D_zoom;
if (var20 / var14 > Rasterizer3D.Rasterizer3D_clipNegativeMidY) {
int var21 = (var3 * super.height >> 16) + var19;
int var21 = (cameraPitchCosine * super.height >> 16) + var19;
int var22 = (var18 - var21) * Rasterizer3D.Rasterizer3D_zoom;
if (var22 / var14 < Rasterizer3D.Rasterizer3D_clipMidY2) {
int var23 = var13 + (var2 * super.height >> 16);
int var23 = var13 + (cameraPitchSine * super.height >> 16);
boolean var24 = false;
boolean var25 = false;
if (var12 - var23 <= 50) {
@@ -1563,10 +1564,10 @@ public class Model extends Entity {
int var27 = ViewportMouse.ViewportMouse_x;
int var28 = ViewportMouse.ViewportMouse_y;
boolean var29 = ViewportMouse.ViewportMouse_isInViewport;
boolean var30 = 0L != var9;
boolean var30 = 0L != tag;
boolean var31;
if (var30) {
var31 = (int)(var9 >>> 16 & 1L) == 1;
var31 = (int)(tag >>> 16 & 1L) == 1;
var30 = !var31;
}
@@ -1577,7 +1578,7 @@ public class Model extends Entity {
if (var30 && var29) {
boolean var35 = false;
if (field539) {
var35 = Decimator.method2491(this, var6, var7, var8);
var35 = Decimator.method2491(this, x, y, var8);
} else {
var32 = var12 - var13;
if (var32 <= 50) {
@@ -1609,7 +1610,7 @@ public class Model extends Entity {
if (var35) {
if (this.isSingleTile) {
Projectile.addEntityTagAtMouse(var9);
Projectile.addEntityTagAtMouse(tag);
} else {
var31 = true;
}
@@ -1620,9 +1621,9 @@ public class Model extends Entity {
var32 = Rasterizer3D.Rasterizer3D_clipMidY;
var33 = 0;
var34 = 0;
if (var1 != 0) {
var33 = Model_sine[var1];
var34 = Model_cosine[var1];
if (yaw != 0) {
var33 = Model_sine[yaw];
var34 = Model_cosine[yaw];
}
for (int var36 = 0; var36 < this.verticesCount; ++var36) {
@@ -1630,20 +1631,20 @@ public class Model extends Entity {
int var38 = this.verticesY[var36];
int var39 = this.verticesZ[var36];
int var40;
if (var1 != 0) {
if (yaw != 0) {
var40 = var39 * var33 + var37 * var34 >> 16;
var39 = var39 * var34 - var37 * var33 >> 16;
var37 = var40;
}
var37 += var6;
var38 += var7;
var37 += x;
var38 += y;
var39 += var8;
var40 = var39 * var4 + var5 * var37 >> 16;
var39 = var5 * var39 - var37 * var4 >> 16;
var40 = var39 * cameraYawSine + cameraYawCosine * var37 >> 16;
var39 = cameraYawCosine * var39 - var37 * cameraYawSine >> 16;
var37 = var40;
var40 = var3 * var38 - var39 * var2 >> 16;
var39 = var38 * var2 + var3 * var39 >> 16;
var40 = cameraPitchCosine * var38 - var39 * cameraPitchSine >> 16;
var39 = var38 * cameraPitchSine + cameraPitchCosine * var39 >> 16;
field525[var36] = var39 - var12;
if (var39 >= 50) {
modelViewportXs[var36] = var37 * Rasterizer3D.Rasterizer3D_zoom / var39 + var42;
@@ -1661,7 +1662,7 @@ public class Model extends Entity {
}
try {
this.draw0(var24, var31, this.isSingleTile, var9);
this.draw0(var24, var31, this.isSingleTile, tag);
} catch (Exception var41) {
}
}
+32 -32
View File
@@ -1119,30 +1119,30 @@ public class ModelData extends Entity {
void method208() {
int[] var1;
int var2;
int var10002;
int var3;
int var10003;
int var4;
int var5;
if (this.field555 != null) {
var1 = new int[256];
var2 = 0;
for (var3 = 0; var3 < this.verticesCount; ++var3) {
var4 = this.field555[var3];
var10002 = var1[var4]++;
if (var4 > var2) {
var2 = var4;
for (var4 = 0; var4 < this.verticesCount; ++var4) {
var5 = this.field555[var4];
var10003 = var1[var5]++;
if (var5 > var2) {
var2 = var5;
}
}
this.vertexLabels = new int[var2 + 1][];
for (var3 = 0; var3 <= var2; ++var3) {
this.vertexLabels[var3] = new int[var1[var3]];
var1[var3] = 0;
for (var4 = 0; var4 <= var2; ++var4) {
this.vertexLabels[var4] = new int[var1[var4]];
var1[var4] = 0;
}
for (var3 = 0; var3 < this.verticesCount; this.vertexLabels[var4][var1[var4]++] = var3++) {
var4 = this.field555[var3];
for (var4 = 0; var4 < this.verticesCount; this.vertexLabels[var5][var1[var5]++] = var4++) {
var5 = this.field555[var4];
}
this.field555 = null;
@@ -1152,23 +1152,23 @@ public class ModelData extends Entity {
var1 = new int[256];
var2 = 0;
for (var3 = 0; var3 < this.faceCount; ++var3) {
var4 = this.field556[var3];
var10002 = var1[var4]++;
if (var4 > var2) {
var2 = var4;
for (var4 = 0; var4 < this.faceCount; ++var4) {
var5 = this.field556[var4];
var10003 = var1[var5]++;
if (var5 > var2) {
var2 = var5;
}
}
this.faceLabelsAlpha = new int[var2 + 1][];
for (var3 = 0; var3 <= var2; ++var3) {
this.faceLabelsAlpha[var3] = new int[var1[var3]];
var1[var3] = 0;
for (var4 = 0; var4 <= var2; ++var4) {
this.faceLabelsAlpha[var4] = new int[var1[var4]];
var1[var4] = 0;
}
for (var3 = 0; var3 < this.faceCount; this.faceLabelsAlpha[var4][var1[var4]++] = var3++) {
var4 = this.field556[var3];
for (var4 = 0; var4 < this.faceCount; this.faceLabelsAlpha[var5][var1[var5]++] = var4++) {
var5 = this.field556[var4];
}
this.field556 = null;
@@ -1225,12 +1225,12 @@ public class ModelData extends Entity {
@ObfuscatedName("z")
public void method213(int var1, int var2, int var3) {
for (int var4 = 0; var4 < this.verticesCount; ++var4) {
int[] var10000 = this.verticesX;
var10000[var4] += var1;
var10000 = this.verticesY;
var10000[var4] += var2;
var10000 = this.verticesZ;
var10000[var4] += var3;
int[] var5 = this.verticesX;
var5[var4] += var1;
var5 = this.verticesY;
var5[var4] += var2;
var5 = this.verticesZ;
var5[var4] += var3;
}
this.invalidate();
@@ -1238,9 +1238,9 @@ public class ModelData extends Entity {
@ObfuscatedName("j")
@Export("recolor")
public void recolor(short var1, short var2) {
public void recolor(short from, short var2) {
for (int var3 = 0; var3 < this.faceCount; ++var3) {
if (this.faceColors[var3] == var1) {
if (this.faceColors[var3] == from) {
this.faceColors[var3] = var2;
}
}
@@ -1249,10 +1249,10 @@ public class ModelData extends Entity {
@ObfuscatedName("s")
@Export("retexture")
public void retexture(short var1, short var2) {
public void retexture(short from, short var2) {
if (this.faceTextures != null) {
for (int var3 = 0; var3 < this.faceCount; ++var3) {
if (this.faceTextures[var3] == var1) {
if (this.faceTextures[var3] == from) {
this.faceTextures[var3] = var2;
}
}
@@ -136,9 +136,9 @@ public class MouseHandler implements MouseListener, MouseMotionListener, FocusLi
garbageValue = "-965288682"
)
@Export("getButton")
final int getButton(MouseEvent var1) {
int var2 = var1.getButton();
return !var1.isAltDown() && var2 != 2 ? (!var1.isMetaDown() && var2 != 3 ? 1 : 2) : 4;
final int getButton(MouseEvent mouseEvent) {
int var2 = mouseEvent.getButton();
return !mouseEvent.isAltDown() && var2 != 2 ? (!mouseEvent.isMetaDown() && var2 != 3 ? 1 : 2) : 4;
}
@Export("mouseMoved")
@@ -80,32 +80,32 @@ public class MouseRecorder implements Runnable {
int var10;
int var11;
int var12;
int var17;
int var13;
if (var5 != 0L) {
var7 = class65.scene.getObjectFlags(var0, var1, var2, var5);
var8 = var7 >> 6 & 3;
var9 = var7 & 31;
var10 = var3;
boolean var13 = var5 != 0L;
if (var13) {
boolean var14 = (int)(var5 >>> 16 & 1L) == 1;
var13 = !var14;
boolean var14 = var5 != 0L;
if (var14) {
boolean var15 = (int)(var5 >>> 16 & 1L) == 1;
var14 = !var15;
}
if (var13) {
if (var14) {
var10 = var4;
}
int[] var20 = InterfaceParent.sceneMinimapSprite.pixels;
var12 = var1 * 4 + (103 - var2) * 2048 + 24624;
var11 = HitSplatDefinition.method4972(var5);
ObjectDefinition var15 = class50.getObjectDefinition(var11);
if (var15.mapSceneId != -1) {
IndexedSprite var16 = class192.mapSceneSprites[var15.mapSceneId];
if (var16 != null) {
var17 = (var15.sizeX * 4 - var16.subWidth) / 2;
int var18 = (var15.sizeY * 4 - var16.subHeight) / 2;
var16.drawAt(var1 * 4 + var17 + 48, (104 - var2 - var15.sizeY) * 4 + var18 + 48);
ObjectDefinition var16 = class50.getObjectDefinition(var11);
if (var16.mapSceneId != -1) {
IndexedSprite var17 = class192.mapSceneSprites[var16.mapSceneId];
if (var17 != null) {
var13 = (var16.sizeX * 4 - var17.subWidth) / 2;
int var18 = (var16.sizeY * 4 - var17.subHeight) / 2;
var17.drawAt(var1 * 4 + var13 + 48, (104 - var2 - var16.sizeY) * 4 + var18 + 48);
}
} else {
if (var9 == 0 || var9 == 2) {
@@ -173,6 +173,7 @@ public class MouseRecorder implements Runnable {
var5 = class65.scene.method292(var0, var1, var2);
ObjectDefinition var19;
IndexedSprite var21;
int var22;
if (0L != var5) {
var7 = class65.scene.getObjectFlags(var0, var1, var2, var5);
var8 = var7 >> 6 & 3;
@@ -187,7 +188,7 @@ public class MouseRecorder implements Runnable {
var21.drawAt(var12 + var1 * 4 + 48, (104 - var2 - var19.sizeY) * 4 + var11 + 48);
}
} else if (var9 == 9) {
int var22 = 15658734;
var22 = 15658734;
boolean var23 = 0L != var5;
if (var23) {
boolean var24 = (int)(var5 >>> 16 & 1L) == 1;
@@ -198,18 +199,18 @@ public class MouseRecorder implements Runnable {
var22 = 15597568;
}
int[] var26 = InterfaceParent.sceneMinimapSprite.pixels;
var17 = var1 * 4 + (103 - var2) * 2048 + 24624;
int[] var25 = InterfaceParent.sceneMinimapSprite.pixels;
var13 = var1 * 4 + (103 - var2) * 2048 + 24624;
if (var8 != 0 && var8 != 2) {
var26[var17] = var22;
var26[var17 + 1 + 512] = var22;
var26[var17 + 1024 + 2] = var22;
var26[var17 + 1536 + 3] = var22;
var25[var13] = var22;
var25[var13 + 1 + 512] = var22;
var25[var13 + 1024 + 2] = var22;
var25[var13 + 1536 + 3] = var22;
} else {
var26[var17 + 1536] = var22;
var26[var17 + 1 + 1024] = var22;
var26[var17 + 512 + 2] = var22;
var26[var17 + 3] = var22;
var25[var13 + 1536] = var22;
var25[var13 + 1 + 1024] = var22;
var25[var13 + 512 + 2] = var22;
var25[var13 + 3] = var22;
}
}
}
@@ -222,8 +223,8 @@ public class MouseRecorder implements Runnable {
var21 = class192.mapSceneSprites[var19.mapSceneId];
if (var21 != null) {
var10 = (var19.sizeX * 4 - var21.subWidth) / 2;
int var25 = (var19.sizeY * 4 - var21.subHeight) / 2;
var21.drawAt(var10 + var1 * 4 + 48, var25 + (104 - var2 - var19.sizeY) * 4 + 48);
var22 = (var19.sizeY * 4 - var21.subHeight) / 2;
var21.drawAt(var10 + var1 * 4 + 48, var22 + (104 - var2 - var19.sizeY) * 4 + 48);
}
}
}
@@ -27,8 +27,8 @@ public final class MouseWheelHandler implements MouseWheel, MouseWheelListener {
garbageValue = "-28"
)
@Export("addTo")
void addTo(Component var1) {
var1.addMouseWheelListener(this);
void addTo(Component component) {
component.addMouseWheelListener(this);
}
@ObfuscatedName("f")
@@ -37,8 +37,8 @@ public final class MouseWheelHandler implements MouseWheel, MouseWheelListener {
garbageValue = "-544062729"
)
@Export("removeFrom")
void removeFrom(Component var1) {
var1.removeMouseWheelListener(this);
void removeFrom(Component component) {
component.removeMouseWheelListener(this);
}
@ObfuscatedName("q")
@@ -56,7 +56,7 @@ public class MusicPatchPcmStream extends PcmStream {
break;
}
var1.stream.vmethod263(var2, var3, var7);
var1.stream.fill(var2, var3, var7);
var3 += var7;
var4 -= var7;
var1.field591 += var7 * var6 - 1048576;
@@ -80,14 +80,14 @@ public class MusicPatchPcmStream extends PcmStream {
}
var10.method275(var8);
var10.vmethod263(var2, var3, var5 - var3);
var10.fill(var2, var3, var5 - var3);
if (var10.method279()) {
this.mixer.addSubStream(var10);
}
}
}
var1.stream.vmethod263(var2, var3, var4);
var1.stream.fill(var2, var3, var4);
}
@ObfuscatedName("f")
@@ -116,7 +116,7 @@ public class MusicPatchPcmStream extends PcmStream {
}
}
var1.stream.vmethod264(var2);
var1.stream.skip(var2);
}
@ObfuscatedName("u")
@@ -152,8 +152,8 @@ public class MusicPatchPcmStream extends PcmStream {
}
@ObfuscatedName("e")
protected void vmethod263(int[] var1, int var2, int var3) {
this.mixer.vmethod263(var1, var2, var3);
protected void fill(int[] var1, int var2, int var3) {
this.mixer.fill(var1, var2, var3);
for (MusicPatchNode var4 = (MusicPatchNode)this.queue.last(); var4 != null; var4 = (MusicPatchNode)this.queue.previous()) {
if (!this.superStream.method195(var4)) {
@@ -177,8 +177,8 @@ public class MusicPatchPcmStream extends PcmStream {
}
@ObfuscatedName("d")
protected void vmethod264(int var1) {
this.mixer.vmethod264(var1);
protected void skip(int var1) {
this.mixer.skip(var1);
for (MusicPatchNode var2 = (MusicPatchNode)this.queue.last(); var2 != null; var2 = (MusicPatchNode)this.queue.previous()) {
if (!this.superStream.method195(var2)) {
+84 -83
View File
@@ -175,9 +175,10 @@ public class MusicSample extends Node {
boolean var17 = !field1324[var16].method2367();
boolean var18 = var17;
float[] var20;
for (var16 = 0; var16 < var14.field1453; ++var16) {
class109 var19 = field1344[var14.field1455[var16]];
float[] var20 = field611;
var20 = field611;
var19.method2473(var20, var4 >> 1, var18);
}
@@ -188,9 +189,9 @@ public class MusicSample extends Node {
field1324[var48].method2375(field611, var4 >> 1);
}
float[] var21;
int var21;
int var22;
int var49;
float[] var23;
if (var17) {
for (var16 = var4 >> 1; var16 < var4; ++var16) {
field611[var16] = 0.0F;
@@ -198,18 +199,18 @@ public class MusicSample extends Node {
} else {
var16 = var4 >> 1;
var48 = var4 >> 2;
var49 = var4 >> 3;
var21 = field611;
var22 = var4 >> 3;
var20 = field611;
for (var22 = 0; var22 < var16; ++var22) {
var21[var22] *= 0.5F;
for (var21 = 0; var21 < var16; ++var21) {
var20[var21] *= 0.5F;
}
for (var22 = var16; var22 < var4; ++var22) {
var21[var22] = -var21[var4 - var22 - 1];
for (var21 = var16; var21 < var4; ++var21) {
var20[var21] = -var20[var4 - var21 - 1];
}
float[] var23 = var3 ? field615 : field612;
var23 = var3 ? field615 : field612;
float[] var24 = var3 ? field616 : field613;
float[] var25 = var3 ? field617 : field614;
int[] var26 = var3 ? field619 : field618;
@@ -220,27 +221,27 @@ public class MusicSample extends Node {
float var30;
float var31;
for (var27 = 0; var27 < var48; ++var27) {
var28 = var21[var27 * 4] - var21[var4 - var27 * 4 - 1];
var29 = var21[var27 * 4 + 2] - var21[var4 - var27 * 4 - 3];
var28 = var20[var27 * 4] - var20[var4 - var27 * 4 - 1];
var29 = var20[var27 * 4 + 2] - var20[var4 - var27 * 4 - 3];
var30 = var23[var27 * 2];
var31 = var23[var27 * 2 + 1];
var21[var4 - var27 * 4 - 1] = var28 * var30 - var29 * var31;
var21[var4 - var27 * 4 - 3] = var28 * var31 + var29 * var30;
var20[var4 - var27 * 4 - 1] = var28 * var30 - var29 * var31;
var20[var4 - var27 * 4 - 3] = var28 * var31 + var29 * var30;
}
float var32;
float var33;
for (var27 = 0; var27 < var49; ++var27) {
var28 = var21[var16 + var27 * 4 + 3];
var29 = var21[var16 + var27 * 4 + 1];
var30 = var21[var27 * 4 + 3];
var31 = var21[var27 * 4 + 1];
var21[var16 + var27 * 4 + 3] = var28 + var30;
var21[var16 + var27 * 4 + 1] = var29 + var31;
for (var27 = 0; var27 < var22; ++var27) {
var28 = var20[var16 + var27 * 4 + 3];
var29 = var20[var16 + var27 * 4 + 1];
var30 = var20[var27 * 4 + 3];
var31 = var20[var27 * 4 + 1];
var20[var16 + var27 * 4 + 3] = var28 + var30;
var20[var16 + var27 * 4 + 1] = var29 + var31;
var32 = var23[var16 - 4 - var27 * 4];
var33 = var23[var16 - 3 - var27 * 4];
var21[var27 * 4 + 3] = (var28 - var30) * var32 - (var29 - var31) * var33;
var21[var27 * 4 + 1] = (var29 - var31) * var32 + (var28 - var30) * var33;
var20[var27 * 4 + 3] = (var28 - var30) * var32 - (var29 - var31) * var33;
var20[var27 * 4 + 1] = (var29 - var31) * var32 + (var28 - var30) * var33;
}
var27 = WorldMapCacheName.method634(var4 - 1);
@@ -259,127 +260,127 @@ public class MusicSample extends Node {
for (int var40 = 0; var40 < var4 >> var34 + 4; ++var40) {
int var41 = var40 * 4;
float var42 = var21[var38 - 1 - var41];
float var43 = var21[var38 - 3 - var41];
float var44 = var21[var39 - 1 - var41];
float var45 = var21[var39 - 3 - var41];
var21[var38 - 1 - var41] = var42 + var44;
var21[var38 - 3 - var41] = var43 + var45;
float var42 = var20[var38 - 1 - var41];
float var43 = var20[var38 - 3 - var41];
float var44 = var20[var39 - 1 - var41];
float var45 = var20[var39 - 3 - var41];
var20[var38 - 1 - var41] = var42 + var44;
var20[var38 - 3 - var41] = var43 + var45;
float var46 = var23[var40 * var36];
float var47 = var23[var40 * var36 + 1];
var21[var39 - 1 - var41] = (var42 - var44) * var46 - (var43 - var45) * var47;
var21[var39 - 3 - var41] = (var43 - var45) * var46 + (var42 - var44) * var47;
var20[var39 - 1 - var41] = (var42 - var44) * var46 - (var43 - var45) * var47;
var20[var39 - 3 - var41] = (var43 - var45) * var46 + (var42 - var44) * var47;
}
}
}
for (var34 = 1; var34 < var49 - 1; ++var34) {
for (var34 = 1; var34 < var22 - 1; ++var34) {
var35 = var26[var34];
if (var34 < var35) {
var36 = var34 * 8;
var37 = var35 * 8;
var32 = var21[var36 + 1];
var21[var36 + 1] = var21[var37 + 1];
var21[var37 + 1] = var32;
var32 = var21[var36 + 3];
var21[var36 + 3] = var21[var37 + 3];
var21[var37 + 3] = var32;
var32 = var21[var36 + 5];
var21[var36 + 5] = var21[var37 + 5];
var21[var37 + 5] = var32;
var32 = var21[var36 + 7];
var21[var36 + 7] = var21[var37 + 7];
var21[var37 + 7] = var32;
var32 = var20[var36 + 1];
var20[var36 + 1] = var20[var37 + 1];
var20[var37 + 1] = var32;
var32 = var20[var36 + 3];
var20[var36 + 3] = var20[var37 + 3];
var20[var37 + 3] = var32;
var32 = var20[var36 + 5];
var20[var36 + 5] = var20[var37 + 5];
var20[var37 + 5] = var32;
var32 = var20[var36 + 7];
var20[var36 + 7] = var20[var37 + 7];
var20[var37 + 7] = var32;
}
}
for (var34 = 0; var34 < var16; ++var34) {
var21[var34] = var21[var34 * 2 + 1];
var20[var34] = var20[var34 * 2 + 1];
}
for (var34 = 0; var34 < var49; ++var34) {
var21[var4 - 1 - var34 * 2] = var21[var34 * 4];
var21[var4 - 2 - var34 * 2] = var21[var34 * 4 + 1];
var21[var4 - var48 - 1 - var34 * 2] = var21[var34 * 4 + 2];
var21[var4 - var48 - 2 - var34 * 2] = var21[var34 * 4 + 3];
for (var34 = 0; var34 < var22; ++var34) {
var20[var4 - 1 - var34 * 2] = var20[var34 * 4];
var20[var4 - 2 - var34 * 2] = var20[var34 * 4 + 1];
var20[var4 - var48 - 1 - var34 * 2] = var20[var34 * 4 + 2];
var20[var4 - var48 - 2 - var34 * 2] = var20[var34 * 4 + 3];
}
for (var34 = 0; var34 < var49; ++var34) {
for (var34 = 0; var34 < var22; ++var34) {
var29 = var25[var34 * 2];
var30 = var25[var34 * 2 + 1];
var31 = var21[var16 + var34 * 2];
var32 = var21[var16 + var34 * 2 + 1];
var33 = var21[var4 - 2 - var34 * 2];
float var51 = var21[var4 - 1 - var34 * 2];
float var52 = var30 * (var31 - var33) + var29 * (var32 + var51);
var21[var16 + var34 * 2] = (var31 + var33 + var52) * 0.5F;
var21[var4 - 2 - var34 * 2] = (var31 + var33 - var52) * 0.5F;
var52 = var30 * (var32 + var51) - var29 * (var31 - var33);
var21[var16 + var34 * 2 + 1] = (var32 - var51 + var52) * 0.5F;
var21[var4 - 1 - var34 * 2] = (-var32 + var51 + var52) * 0.5F;
var31 = var20[var16 + var34 * 2];
var32 = var20[var16 + var34 * 2 + 1];
var33 = var20[var4 - 2 - var34 * 2];
float var49 = var20[var4 - 1 - var34 * 2];
float var51 = var30 * (var31 - var33) + var29 * (var32 + var49);
var20[var16 + var34 * 2] = (var31 + var33 + var51) * 0.5F;
var20[var4 - 2 - var34 * 2] = (var31 + var33 - var51) * 0.5F;
var51 = var30 * (var32 + var49) - var29 * (var31 - var33);
var20[var16 + var34 * 2 + 1] = (var32 - var49 + var51) * 0.5F;
var20[var4 - 1 - var34 * 2] = (-var32 + var49 + var51) * 0.5F;
}
for (var34 = 0; var34 < var48; ++var34) {
var21[var34] = var21[var16 + var34 * 2] * var24[var34 * 2] + var21[var16 + var34 * 2 + 1] * var24[var34 * 2 + 1];
var21[var16 - 1 - var34] = var21[var16 + var34 * 2] * var24[var34 * 2 + 1] - var21[var16 + var34 * 2 + 1] * var24[var34 * 2];
var20[var34] = var20[var16 + var34 * 2] * var24[var34 * 2] + var20[var16 + var34 * 2 + 1] * var24[var34 * 2 + 1];
var20[var16 - 1 - var34] = var20[var16 + var34 * 2] * var24[var34 * 2 + 1] - var20[var16 + var34 * 2 + 1] * var24[var34 * 2];
}
for (var34 = 0; var34 < var48; ++var34) {
var21[var34 + (var4 - var48)] = -var21[var34];
var20[var34 + (var4 - var48)] = -var20[var34];
}
for (var34 = 0; var34 < var48; ++var34) {
var21[var34] = var21[var48 + var34];
var20[var34] = var20[var48 + var34];
}
for (var34 = 0; var34 < var48; ++var34) {
var21[var48 + var34] = -var21[var48 - var34 - 1];
var20[var48 + var34] = -var20[var48 - var34 - 1];
}
for (var34 = 0; var34 < var48; ++var34) {
var21[var16 + var34] = var21[var4 - var34 - 1];
var20[var16 + var34] = var20[var4 - var34 - 1];
}
float[] var10000;
float[] var50;
for (var34 = var8; var34 < var9; ++var34) {
var29 = (float)Math.sin(((double)(var34 - var8) + 0.5D) / (double)var10 * 0.5D * 3.141592653589793D);
var10000 = field611;
var10000[var34] *= (float)Math.sin(1.5707963267948966D * (double)var29 * (double)var29);
var50 = field611;
var50[var34] *= (float)Math.sin(1.5707963267948966D * (double)var29 * (double)var29);
}
for (var34 = var11; var34 < var12; ++var34) {
var29 = (float)Math.sin(((double)(var34 - var11) + 0.5D) / (double)var13 * 0.5D * 3.141592653589793D + 1.5707963267948966D);
var10000 = field611;
var10000[var34] *= (float)Math.sin(1.5707963267948966D * (double)var29 * (double)var29);
var50 = field611;
var50[var34] *= (float)Math.sin(1.5707963267948966D * (double)var29 * (double)var29);
}
}
var21 = null;
var20 = null;
if (this.field623 > 0) {
var48 = var4 + this.field623 >> 2;
var21 = new float[var48];
var20 = new float[var48];
if (!this.field625) {
for (var49 = 0; var49 < this.field624; ++var49) {
var22 = var49 + (this.field623 >> 1);
var21[var49] += this.field622[var22];
for (var22 = 0; var22 < this.field624; ++var22) {
var21 = var22 + (this.field623 >> 1);
var20[var22] += this.field622[var21];
}
}
if (!var17) {
for (var49 = var8; var49 < var4 >> 1; ++var49) {
var22 = var21.length - (var4 >> 1) + var49;
var21[var22] += field611[var49];
for (var22 = var8; var22 < var4 >> 1; ++var22) {
var21 = var20.length - (var4 >> 1) + var22;
var20[var21] += field611[var22];
}
}
}
float[] var50 = this.field622;
var23 = this.field622;
this.field622 = field611;
field611 = var50;
field611 = var23;
this.field623 = var4;
this.field624 = var12 - (var4 >> 1);
this.field625 = var17;
return var21;
return var20;
}
@ObfuscatedName("x")
+1 -1
View File
@@ -127,7 +127,7 @@ public final class NPC extends Actor {
return null;
} else {
SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? WorldMapAreaData.getSequenceDefinition(super.sequence) : null;
SequenceDefinition var2 = super.movementSequence == -1 || super.movementSequence == super.readySequence && var1 != null ? null : WorldMapAreaData.getSequenceDefinition(super.movementSequence);
SequenceDefinition var2 = super.movementSequence != -1 && (super.movementSequence != super.readySequence || var1 == null) ? WorldMapAreaData.getSequenceDefinition(super.movementSequence) : null;
Model var3 = this.definition.getModel(var1, super.sequenceFrame, var2, super.movementFrame);
if (var3 == null) {
return null;
@@ -34,8 +34,8 @@ public class NanoClock extends Clock {
garbageValue = "-126803683"
)
@Export("wait")
public int wait(int var1, int var2) {
long var3 = 1000000L * (long)var2;
public int wait(int cycleMs, int minSleepMs) {
long var3 = 1000000L * (long)minSleepMs;
long var5 = this.lastTimeNano - System.nanoTime();
if (var5 < var3) {
var5 = var3;
@@ -45,7 +45,7 @@ public class NanoClock extends Clock {
long var7 = System.nanoTime();
int var9;
for (var9 = 0; var9 < 10 && (var9 < 1 || this.lastTimeNano < var7); this.lastTimeNano += 1000000L * (long)var1) {
for (var9 = 0; var9 < 10 && (var9 < 1 || this.lastTimeNano < var7); this.lastTimeNano += 1000000L * (long)cycleMs) {
++var9;
}
+20 -19
View File
@@ -95,8 +95,8 @@ public final class NetSocket extends AbstractSocket implements Runnable {
garbageValue = "1765046516"
)
@Export("isAvailable")
public boolean isAvailable(int var1) throws IOException {
return this.isClosed ? false : this.inputStream.available() >= var1;
public boolean isAvailable(int length) throws IOException {
return this.isClosed ? false : this.inputStream.available() >= length;
}
@ObfuscatedName("q")
@@ -125,19 +125,19 @@ public final class NetSocket extends AbstractSocket implements Runnable {
garbageValue = "-1089665746"
)
@Export("read")
public int read(byte[] var1, int var2, int var3) throws IOException {
public int read(byte[] dst, int dstIndex, int length) throws IOException {
if (this.isClosed) {
return 0;
} else {
int var4;
int var5;
for (var4 = var3; var3 > 0; var3 -= var5) {
var5 = this.inputStream.read(var1, var2, var3);
for (var4 = length; length > 0; length -= var5) {
var5 = this.inputStream.read(dst, dstIndex, length);
if (var5 <= 0) {
throw new EOFException();
}
var2 += var5;
dstIndex += var5;
}
return var4;
@@ -150,8 +150,8 @@ public final class NetSocket extends AbstractSocket implements Runnable {
garbageValue = "-86"
)
@Export("write")
public void write(byte[] var1, int var2, int var3) throws IOException {
this.write0(var1, var2, var3);
public void write(byte[] src, int srcIndex, int length) throws IOException {
this.write0(src, srcIndex, length);
}
@ObfuscatedName("g")
@@ -191,7 +191,7 @@ public final class NetSocket extends AbstractSocket implements Runnable {
garbageValue = "-77"
)
@Export("write0")
void write0(byte[] var1, int var2, int var3) throws IOException {
void write0(byte[] src, int srcIndex, int length) throws IOException {
if (!this.isClosed) {
if (this.exceptionWriting) {
this.exceptionWriting = false;
@@ -203,8 +203,8 @@ public final class NetSocket extends AbstractSocket implements Runnable {
}
synchronized(this) {
for (int var5 = 0; var5 < var3; ++var5) {
this.array[this.field633] = var1[var5 + var2];
for (int var5 = 0; var5 < length; ++var5) {
this.array[this.field633] = src[var5 + srcIndex];
this.field633 = (this.field633 + 1) % this.field634;
if ((this.field635 + this.field632) % this.field634 == this.field633) {
throw new IOException();
@@ -347,8 +347,14 @@ public final class NetSocket extends AbstractSocket implements Runnable {
int[][] var24 = var4.flags;
boolean var25;
label226: {
while (var21 != var14) {
while (true) {
if (var21 == var14) {
InterfaceParent.field986 = var9;
UrlRequester.field929 = var10;
var25 = false;
break;
}
var9 = class178.bufferX[var14];
var10 = class178.bufferY[var14];
var14 = var14 + 1 & 4095;
@@ -360,7 +366,7 @@ public final class NetSocket extends AbstractSocket implements Runnable {
InterfaceParent.field986 = var9;
UrlRequester.field929 = var10;
var25 = true;
break label226;
break;
}
var17 = class178.distances[var19][var20] + 1;
@@ -429,11 +435,6 @@ public final class NetSocket extends AbstractSocket implements Runnable {
}
}
InterfaceParent.field986 = var9;
UrlRequester.field929 = var10;
var25 = false;
}
var18 = var25;
} else if (var2 == 2) {
var18 = WorldMapSection2.method593(var0, var1, var3, var4);
+14 -14
View File
@@ -44,15 +44,15 @@ public class NodeDeque {
signature = "(Lgw;)V"
)
@Export("addFirst")
public void addFirst(Node var1) {
if (var1.next != null) {
var1.remove();
public void addFirst(Node node) {
if (node.next != null) {
node.remove();
}
var1.next = this.sentinel.next;
var1.previous = this.sentinel;
var1.next.previous = var1;
var1.previous.next = var1;
node.next = this.sentinel.next;
node.previous = this.sentinel;
node.next.previous = node;
node.previous.next = node;
}
@ObfuscatedName("q")
@@ -60,15 +60,15 @@ public class NodeDeque {
signature = "(Lgw;)V"
)
@Export("addLast")
public void addLast(Node var1) {
if (var1.next != null) {
var1.remove();
public void addLast(Node node) {
if (node.next != null) {
node.remove();
}
var1.next = this.sentinel;
var1.previous = this.sentinel.previous;
var1.next.previous = var1;
var1.previous.next = var1;
node.next = this.sentinel;
node.previous = this.sentinel.previous;
node.next.previous = node;
node.previous.next = node;
}
@ObfuscatedName("o")
@@ -49,11 +49,11 @@ public final class NodeHashTable {
signature = "(J)Lgw;"
)
@Export("get")
public Node get(long var1) {
Node var3 = this.buckets[(int)(var1 & (long)(this.size - 1))];
public Node get(long key) {
Node var3 = this.buckets[(int)(key & (long)(this.size - 1))];
for (this.currentGet = var3.previous; var3 != this.currentGet; this.currentGet = this.currentGet.previous) {
if (this.currentGet.key == var1) {
if (this.currentGet.key == key) {
Node var4 = this.currentGet;
this.currentGet = this.currentGet.previous;
return var4;
@@ -69,17 +69,17 @@ public final class NodeHashTable {
signature = "(Lgw;J)V"
)
@Export("put")
public void put(Node var1, long var2) {
if (var1.next != null) {
var1.remove();
public void put(Node node, long key) {
if (node.next != null) {
node.remove();
}
Node var4 = this.buckets[(int)(var2 & (long)(this.size - 1))];
var1.next = var4.next;
var1.previous = var4;
var1.next.previous = var1;
var1.previous.next = var1;
var1.key = var2;
Node var4 = this.buckets[(int)(key & (long)(this.size - 1))];
node.next = var4.next;
node.previous = var4;
node.next.previous = node;
node.previous.next = node;
node.key = key;
}
@ObfuscatedName("q")
@@ -124,15 +124,16 @@ public final class NodeHashTable {
this.current = var1.previous;
return var1;
} else {
while (this.index < this.size) {
do {
if (this.index >= this.size) {
return null;
}
var1 = this.buckets[this.index++].previous;
if (var1 != this.buckets[this.index - 1]) {
} while(var1 == this.buckets[this.index - 1]);
this.current = var1.previous;
return var1;
}
}
return null;
}
}
}
@@ -687,6 +687,7 @@ public class ObjectDefinition extends DualNode {
int var5;
int var6;
int var7;
boolean var8;
if (this.field645 == null) {
if (var1 != 10) {
return null;
@@ -746,7 +747,7 @@ public class ObjectDefinition extends DualNode {
}
var5 = this.field644[var7];
boolean var8 = this.isRotated ^ var2 > 3;
var8 = this.isRotated ^ var2 > 3;
if (var8) {
var5 += 65536;
}
@@ -772,14 +773,13 @@ public class ObjectDefinition extends DualNode {
var4 = true;
}
boolean var10;
if (this.offsetX == 0 && this.offsetHeight == 0 && this.offsetY == 0) {
var10 = false;
var8 = false;
} else {
var10 = true;
var8 = true;
}
ModelData var9 = new ModelData(var3, var2 == 0 && !var4 && !var10, this.recolorFrom == null, null == this.retextureFrom, true);
ModelData var9 = new ModelData(var3, var2 == 0 && !var4 && !var8, this.recolorFrom == null, null == this.retextureFrom, true);
if (var1 == 4 && var2 > 3) {
var9.method212(256);
var9.method213(45, 0, -45);
@@ -810,7 +810,7 @@ public class ObjectDefinition extends DualNode {
var9.method215(this.modelSizeX, this.modelHeight, this.modelSizeY);
}
if (var10) {
if (var8) {
var9.method213(this.offsetX, this.offsetHeight, this.offsetY);
}
+2 -2
View File
@@ -136,9 +136,9 @@ public final class Occluder {
garbageValue = "-1164060583"
)
@Export("newScript")
static Script newScript(byte[] var0) {
static Script newScript(byte[] bytes) {
Script var1 = new Script();
Buffer var2 = new Buffer(var0);
Buffer var2 = new Buffer(bytes);
var2.index = var2.array.length - 2;
int var3 = var2.readUnsignedShort();
int var4 = var2.array.length - 2 - var3 - 12;
@@ -38,8 +38,8 @@ public final class PacketBuffer extends Buffer {
garbageValue = "-763699765"
)
@Export("newIsaacCipher")
public void newIsaacCipher(int[] var1) {
this.isaacCipher0 = new IsaacCipher(var1);
public void newIsaacCipher(int[] array) {
this.isaacCipher0 = new IsaacCipher(array);
}
@ObfuscatedName("ih")
@@ -48,8 +48,8 @@ public final class PacketBuffer extends Buffer {
garbageValue = "0"
)
@Export("setIsaacCipher")
public void setIsaacCipher(IsaacCipher var1) {
this.isaacCipher0 = var1;
public void setIsaacCipher(IsaacCipher isaacCipher) {
this.isaacCipher0 = isaacCipher;
}
@ObfuscatedName("im")
@@ -121,20 +121,20 @@ public final class PacketBuffer extends Buffer {
garbageValue = "1710439720"
)
@Export("readBits")
public int readBits(int var1) {
public int readBits(int bits) {
int var2 = this.bitIndex >> 3;
int var3 = 8 - (this.bitIndex & 7);
int var4 = 0;
for (this.bitIndex += var1; var1 > var3; var3 = 8) {
var4 += (super.array[var2++] & PacketBuffer_masks[var3]) << var1 - var3;
var1 -= var3;
for (this.bitIndex += bits; bits > var3; var3 = 8) {
var4 += (super.array[var2++] & PacketBuffer_masks[var3]) << bits - var3;
bits -= var3;
}
if (var3 == var1) {
if (var3 == bits) {
var4 += super.array[var2] & PacketBuffer_masks[var3];
} else {
var4 += super.array[var2] >> var3 - var1 & PacketBuffer_masks[var1];
var4 += super.array[var2] >> var3 - bits & PacketBuffer_masks[bits];
}
return var4;
@@ -156,8 +156,8 @@ public final class PacketBuffer extends Buffer {
garbageValue = "-141269845"
)
@Export("bitsRemaining")
public int bitsRemaining(int var1) {
return var1 * 8 - this.bitIndex;
public int bitsRemaining(int index) {
return index * 8 - this.bitIndex;
}
@ObfuscatedName("m")
@@ -156,8 +156,8 @@ public class PacketWriter {
garbageValue = "111"
)
@Export("setSocket")
void setSocket(AbstractSocket var1) {
this.socket0 = var1;
void setSocket(AbstractSocket socket) {
this.socket0 = socket;
}
@ObfuscatedName("o")
@@ -176,18 +176,18 @@ public class ParamDefinition extends DualNode {
int var17;
int var39;
if (var5 != 1 && var5 != 3) {
var39 = var38.sizeX;
var17 = var38.sizeY;
} else {
var39 = var38.sizeY;
var17 = var38.sizeX;
var39 = var38.sizeY;
} else {
var17 = var38.sizeY;
var39 = var38.sizeX;
}
int var18;
int var19;
if (var39 + var2 <= 104) {
var18 = (var39 >> 1) + var2;
var19 = var2 + (var39 + 1 >> 1);
if (var17 + var2 <= 104) {
var18 = (var17 >> 1) + var2;
var19 = var2 + (var17 + 1 >> 1);
} else {
var18 = var2;
var19 = var2 + 1;
@@ -195,9 +195,9 @@ public class ParamDefinition extends DualNode {
int var20;
int var21;
if (var3 + var17 <= 104) {
var20 = var3 + (var17 >> 1);
var21 = var3 + (var17 + 1 >> 1);
if (var3 + var39 <= 104) {
var20 = var3 + (var39 >> 1);
var21 = var3 + (var39 + 1 >> 1);
} else {
var20 = var3;
var21 = var3 + 1;
@@ -205,8 +205,8 @@ public class ParamDefinition extends DualNode {
int[][] var22 = Tiles.Tiles_heights[var12];
int var23 = var22[var18][var21] + var22[var19][var20] + var22[var18][var20] + var22[var19][var21] >> 2;
int var24 = (var2 << 7) + (var39 << 6);
int var25 = (var3 << 7) + (var17 << 6);
int var24 = (var2 << 7) + (var17 << 6);
int var25 = (var3 << 7) + (var39 << 6);
long var26 = FontName.calculateTag(var2, var3, 2, var38.int1 == 0, var4);
int var28 = (var5 << 6) + var6;
if (var38.int3 == 1) {
@@ -235,7 +235,7 @@ public class ParamDefinition extends DualNode {
var36.method284(var0, var2, var3, var23, 1, 1, (Entity)var29, 0, var26, var28);
if (var38.interactType != 0) {
var37.method91(var2, var3, var39, var17, var38.boolean1);
var37.method91(var2, var3, var17, var39, var38.boolean1);
}
} else if (var6 == 0) {
if (var38.animationId == -1 && var38.transforms == null) {
@@ -297,7 +297,7 @@ public class ParamDefinition extends DualNode {
var36.method284(var0, var2, var3, var23, 1, 1, (Entity)var29, 0, var26, var28);
if (var38.interactType != 0) {
var37.method91(var2, var3, var39, var17, var38.boolean1);
var37.method91(var2, var3, var17, var39, var38.boolean1);
}
} else if (var6 == 4) {
if (var38.animationId == -1 && var38.transforms == null) {
@@ -378,11 +378,11 @@ public class ParamDefinition extends DualNode {
}
if (var29 != null) {
var36.method284(var0, var2, var3, var23, var39, var17, (Entity)var29, var6 == 11 ? 256 : 0, var26, var28);
var36.method284(var0, var2, var3, var23, var17, var39, (Entity)var29, var6 == 11 ? 256 : 0, var26, var28);
}
if (var38.interactType != 0) {
var37.method91(var2, var3, var39, var17, var38.boolean1);
var37.method91(var2, var3, var17, var39, var38.boolean1);
}
}
}
+12 -12
View File
@@ -121,7 +121,7 @@ public class PcmPlayer {
garbageValue = "-1738349775"
)
@Export("open")
protected void open(int var1) throws Exception {
protected void open(int bufferSize) throws Exception {
}
@ObfuscatedName("q")
@@ -163,8 +163,8 @@ public class PcmPlayer {
garbageValue = "2106357590"
)
@Export("setStream")
public final synchronized void setStream(PcmStream var1) {
this.stream0 = var1;
public final synchronized void setStream(PcmStream stream) {
this.stream0 = stream;
}
@ObfuscatedName("ar")
@@ -324,28 +324,28 @@ public class PcmPlayer {
garbageValue = "-424358259"
)
@Export("skip")
final void skip(int var1) {
this.field686 -= var1;
final void skip(int length) {
this.field686 -= length;
if (this.field686 < 0) {
this.field686 = 0;
}
if (this.stream0 != null) {
this.stream0.vmethod264(var1);
this.stream0.skip(length);
}
}
@ObfuscatedName("aw")
@Export("fill")
final void fill(int[] var1, int var2) {
int var3 = var2;
final void fill(int[] buffer, int length) {
int var3 = length;
if (isStereo) {
var3 = var2 << 1;
var3 = length << 1;
}
class212.clearIntArray(var1, 0, var3);
this.field686 -= var2;
class212.clearIntArray(buffer, 0, var3);
this.field686 -= length;
if (this.stream0 != null && this.field686 <= 0) {
this.field686 += class309.PcmPlayer_sampleRate >> 4;
MidiPcmStream.PcmStream_disable(this.stream0);
@@ -444,7 +444,7 @@ public class PcmPlayer {
}
if (this.stream0 != null) {
this.stream0.vmethod263(var1, 0, var2);
this.stream0.fill(buffer, 0, length);
}
this.timeMs = class203.currentTimeMs();
@@ -46,10 +46,12 @@ public abstract class PcmStream extends Node {
protected abstract int vmethod262();
@ObfuscatedName("e")
protected abstract void vmethod263(int[] var1, int var2, int var3);
@Export("fill")
protected abstract void fill(int[] buffer, int start, int end);
@ObfuscatedName("d")
protected abstract void vmethod264(int var1);
@Export("skip")
protected abstract void skip(int length);
@ObfuscatedName("az")
int vmethod282() {
@@ -58,11 +60,11 @@ public abstract class PcmStream extends Node {
@ObfuscatedName("ef")
@Export("update")
final void update(int[] var1, int var2, int var3) {
final void update(int[] buffer, int start, int end) {
if (this.active) {
this.vmethod263(var1, var2, var3);
this.fill(buffer, start, end);
} else {
this.vmethod264(var3);
this.skip(end);
}
}
@@ -34,8 +34,8 @@ public class PcmStreamMixer extends PcmStream {
signature = "(Ldc;)V"
)
@Export("addSubStream")
public final synchronized void addSubStream(PcmStream var1) {
this.subStreams.addLast(var1);
public final synchronized void addSubStream(PcmStream subStream) {
this.subStreams.addLast(subStream);
}
@ObfuscatedName("f")
@@ -43,8 +43,8 @@ public class PcmStreamMixer extends PcmStream {
signature = "(Ldc;)V"
)
@Export("removeSubStream")
public final synchronized void removeSubStream(PcmStream var1) {
var1.remove();
public final synchronized void removeSubStream(PcmStream subStream) {
subStream.remove();
}
@ObfuscatedName("q")
@@ -113,7 +113,7 @@ public class PcmStreamMixer extends PcmStream {
}
@ObfuscatedName("e")
public final synchronized void vmethod263(int[] var1, int var2, int var3) {
public final synchronized void fill(int[] var1, int var2, int var3) {
do {
if (this.field692 < 0) {
this.updateSubStreams(var1, var2, var3);
@@ -149,15 +149,15 @@ public class PcmStreamMixer extends PcmStream {
@ObfuscatedName("x")
@Export("updateSubStreams")
void updateSubStreams(int[] var1, int var2, int var3) {
void updateSubStreams(int[] buffer, int start, int end) {
for (PcmStream var4 = (PcmStream)this.subStreams.last(); var4 != null; var4 = (PcmStream)this.subStreams.previous()) {
var4.update(var1, var2, var3);
var4.update(buffer, start, end);
}
}
@ObfuscatedName("d")
public final synchronized void vmethod264(int var1) {
public final synchronized void skip(int var1) {
do {
if (this.field692 < 0) {
this.skipSubStreams(var1);
@@ -192,9 +192,9 @@ public class PcmStreamMixer extends PcmStream {
@ObfuscatedName("a")
@Export("skipSubStreams")
void skipSubStreams(int var1) {
void skipSubStreams(int length) {
for (PcmStream var2 = (PcmStream)this.subStreams.last(); var2 != null; var2 = (PcmStream)this.subStreams.previous()) {
var2.vmethod264(var1);
var2.skip(length);
}
}
@@ -138,37 +138,37 @@ public class PlatformInfo extends Node {
garbageValue = "1518809220"
)
@Export("write")
public void write(Buffer var1) {
var1.writeByte(7);
var1.writeByte(this.field694);
var1.writeByte(this.field695 ? 1 : 0);
var1.writeByte(this.field696);
var1.writeByte(this.field697);
var1.writeByte(this.field698);
var1.writeByte(this.field699);
var1.writeByte(this.field700);
var1.writeByte(this.field701 ? 1 : 0);
var1.writeShort(this.field702);
var1.writeByte(this.field703);
var1.writeMedium(this.field704);
var1.writeShort(this.field705);
var1.writeStringCp1252NullCircumfixed(this.field706);
var1.writeStringCp1252NullCircumfixed(this.field707);
var1.writeStringCp1252NullCircumfixed(this.field708);
var1.writeStringCp1252NullCircumfixed(this.field709);
var1.writeByte(this.field711);
var1.writeShort(this.field710);
var1.writeStringCp1252NullCircumfixed(this.field714);
var1.writeStringCp1252NullCircumfixed(this.field715);
var1.writeByte(this.field712);
var1.writeByte(this.field713);
public void write(Buffer buffer) {
buffer.writeByte(7);
buffer.writeByte(this.field694);
buffer.writeByte(this.field695 ? 1 : 0);
buffer.writeByte(this.field696);
buffer.writeByte(this.field697);
buffer.writeByte(this.field698);
buffer.writeByte(this.field699);
buffer.writeByte(this.field700);
buffer.writeByte(this.field701 ? 1 : 0);
buffer.writeShort(this.field702);
buffer.writeByte(this.field703);
buffer.writeMedium(this.field704);
buffer.writeShort(this.field705);
buffer.writeStringCp1252NullCircumfixed(this.field706);
buffer.writeStringCp1252NullCircumfixed(this.field707);
buffer.writeStringCp1252NullCircumfixed(this.field708);
buffer.writeStringCp1252NullCircumfixed(this.field709);
buffer.writeByte(this.field711);
buffer.writeShort(this.field710);
buffer.writeStringCp1252NullCircumfixed(this.field714);
buffer.writeStringCp1252NullCircumfixed(this.field715);
buffer.writeByte(this.field712);
buffer.writeByte(this.field713);
for (int var2 = 0; var2 < this.field716.length; ++var2) {
var1.writeInt(this.field716[var2]);
buffer.writeInt(this.field716[var2]);
}
var1.writeInt(this.field717);
var1.writeStringCp1252NullCircumfixed(this.field718);
buffer.writeInt(this.field717);
buffer.writeStringCp1252NullCircumfixed(this.field718);
}
@ObfuscatedName("f")
+24 -24
View File
@@ -190,11 +190,11 @@ public final class Player extends Actor {
garbageValue = "-801926003"
)
@Export("read")
final void read(Buffer var1) {
var1.index = 0;
int var2 = var1.readUnsignedByte();
this.headIconPk = var1.readByte();
this.headIconPrayer = var1.readByte();
final void read(Buffer buffer) {
buffer.index = 0;
int var2 = buffer.readUnsignedByte();
this.headIconPk = buffer.readByte();
this.headIconPrayer = buffer.readByte();
int var3 = -1;
this.team = 0;
int[] var4 = new int[12];
@@ -202,14 +202,14 @@ public final class Player extends Actor {
int var5;
int var6;
for (int var7 = 0; var7 < 12; ++var7) {
var5 = var1.readUnsignedByte();
var5 = buffer.readUnsignedByte();
if (var5 == 0) {
var4[var7] = 0;
} else {
var6 = var1.readUnsignedByte();
var6 = buffer.readUnsignedByte();
var4[var7] = var6 + (var5 << 8);
if (var7 == 0 && var4[0] == 65535) {
var3 = var1.readUnsignedShort();
var3 = buffer.readUnsignedShort();
break;
}
@@ -225,7 +225,7 @@ public final class Player extends Actor {
int[] var9 = new int[5];
for (var5 = 0; var5 < 5; ++var5) {
var6 = var1.readUnsignedByte();
var6 = buffer.readUnsignedByte();
if (var6 < 0 || var6 >= class229.field1137[var5].length) {
var6 = 0;
}
@@ -233,52 +233,52 @@ public final class Player extends Actor {
var9[var5] = var6;
}
super.readySequence = var1.readUnsignedShort();
super.readySequence = buffer.readUnsignedShort();
if (super.readySequence == 65535) {
super.readySequence = -1;
}
super.turnLeftSequence = var1.readUnsignedShort();
super.turnLeftSequence = buffer.readUnsignedShort();
if (super.turnLeftSequence == 65535) {
super.turnLeftSequence = -1;
}
super.turnRightSequence = super.turnLeftSequence;
super.walkSequence = var1.readUnsignedShort();
super.walkSequence = buffer.readUnsignedShort();
if (super.walkSequence == 65535) {
super.walkSequence = -1;
}
super.walkBackSequence = var1.readUnsignedShort();
super.walkBackSequence = buffer.readUnsignedShort();
if (super.walkBackSequence == 65535) {
super.walkBackSequence = -1;
}
super.walkLeftSequence = var1.readUnsignedShort();
super.walkLeftSequence = buffer.readUnsignedShort();
if (super.walkLeftSequence == 65535) {
super.walkLeftSequence = -1;
}
super.walkRightSequence = var1.readUnsignedShort();
super.walkRightSequence = buffer.readUnsignedShort();
if (super.walkRightSequence == 65535) {
super.walkRightSequence = -1;
}
super.runSequence = var1.readUnsignedShort();
super.runSequence = buffer.readUnsignedShort();
if (super.runSequence == 65535) {
super.runSequence = -1;
}
this.username = new Username(var1.readStringCp1252NullTerminated(), KeyHandler.loginType);
this.username = new Username(buffer.readStringCp1252NullTerminated(), KeyHandler.loginType);
this.clearIsFriend();
this.clearIsInClanChat();
if (this == Canvas.localPlayer) {
RunException.localPlayerName = this.username.getName();
}
this.combatLevel = var1.readUnsignedByte();
this.skillLevel = var1.readUnsignedShort();
this.isHidden = var1.readUnsignedByte() == 1;
this.combatLevel = buffer.readUnsignedByte();
this.skillLevel = buffer.readUnsignedShort();
this.isHidden = buffer.readUnsignedByte() == 1;
if (Client.gameBuild == 0 && Client.staffModLevel >= 2) {
this.isHidden = false;
}
@@ -379,7 +379,7 @@ public final class Player extends Actor {
return null;
} else {
SequenceDefinition var1 = super.sequence != -1 && super.sequenceDelay == 0 ? WorldMapAreaData.getSequenceDefinition(super.sequence) : null;
SequenceDefinition var2 = super.movementSequence != -1 && !this.isUnanimated && (super.readySequence != super.movementSequence || var1 == null) ? WorldMapAreaData.getSequenceDefinition(super.movementSequence) : null;
SequenceDefinition var2 = super.movementSequence == -1 || this.isUnanimated || super.readySequence == super.movementSequence && var1 != null ? null : WorldMapAreaData.getSequenceDefinition(super.movementSequence);
Model var3 = this.appearance.getModel(var1, super.sequenceFrame, var2, super.movementFrame);
if (var3 == null) {
return null;
@@ -472,12 +472,12 @@ public final class Player extends Actor {
garbageValue = "1966552419"
)
@Export("resetPath")
void resetPath(int var1, int var2) {
void resetPath(int x, int y) {
super.pathLength = 0;
super.field25 = 0;
super.field24 = 0;
super.pathX[0] = var1;
super.pathY[0] = var2;
super.pathX[0] = x;
super.pathY[0] = y;
int var3 = this.transformedSize();
super.x = super.pathX[0] * 128 + var3 * 64;
super.y = super.pathY[0] * 128 + var3 * 64;
+6 -6
View File
@@ -144,12 +144,12 @@ public class Players {
garbageValue = "-1991202495"
)
@Export("clickWidget")
static final void clickWidget(Widget var0, int var1, int var2) {
if (Client.clickedWidget == null && !Client.isMenuOpen && var0 != null && class48.method869(var0) != null) {
Client.clickedWidget = var0;
Client.clickedWidgetParent = class48.method869(var0);
Client.widgetClickX = var1;
Client.widgetClickY = var2;
static final void clickWidget(Widget component, int x, int y) {
if (Client.clickedWidget == null && !Client.isMenuOpen && component != null && class48.method869(component) != null) {
Client.clickedWidget = component;
Client.clickedWidgetParent = class48.method869(component);
Client.widgetClickX = x;
Client.widgetClickY = y;
MouseRecorder.widgetDragDuration = 0;
Client.isDraggingWidget = false;
int var3 = Client.menuOptionsCount - 1;
+18 -18
View File
@@ -168,26 +168,26 @@ public final class Projectile extends Entity {
garbageValue = "-553495769"
)
@Export("setDestination")
final void setDestination(int var1, int var2, int var3, int var4) {
final void setDestination(int x, int y, int height, int cycle) {
double var5;
if (!this.isMoving) {
var5 = (double)(var1 - this.sourceX);
double var7 = (double)(var2 - this.sourceY);
var5 = (double)(x - this.sourceX);
double var7 = (double)(y - this.sourceY);
double var9 = Math.sqrt(var5 * var5 + var7 * var7);
this.x = (double)this.sourceX + var5 * (double)this.startHeight / var9;
this.y = (double)this.sourceY + (double)this.startHeight * var7 / var9;
this.z = (double)this.sourceZ;
}
var5 = (double)(this.cycleEnd + 1 - var4);
this.speedX = ((double)var1 - this.x) / var5;
this.speedY = ((double)var2 - this.y) / var5;
var5 = (double)(this.cycleEnd + 1 - cycle);
this.speedX = ((double)x - this.x) / var5;
this.speedY = ((double)y - this.y) / var5;
this.speed = Math.sqrt(this.speedY * this.speedY + this.speedX * this.speedX);
if (!this.isMoving) {
this.speedZ = -this.speed * Math.tan(0.02454369D * (double)this.slope);
}
this.accelerationZ = ((double)var3 - this.z - var5 * this.speedZ) * 2.0D / (var5 * var5);
this.accelerationZ = ((double)height - this.z - var5 * this.speedZ) * 2.0D / (var5 * var5);
}
@ObfuscatedName("f")
@@ -196,16 +196,16 @@ public final class Projectile extends Entity {
garbageValue = "1351865817"
)
@Export("advance")
final void advance(int var1) {
final void advance(int cycles) {
this.isMoving = true;
this.x += this.speedX * (double)var1;
this.y += (double)var1 * this.speedY;
this.z += (double)var1 * this.accelerationZ * 0.5D * (double)var1 + this.speedZ * (double)var1;
this.speedZ += this.accelerationZ * (double)var1;
this.x += this.speedX * (double)cycles;
this.y += (double)cycles * this.speedY;
this.z += (double)cycles * this.accelerationZ * 0.5D * (double)cycles + this.speedZ * (double)cycles;
this.speedZ += this.accelerationZ * (double)cycles;
this.yaw = (int)(Math.atan2(this.speedX, this.speedY) * 325.949D) + 1024 & 2047;
this.pitch = (int)(Math.atan2(this.speedZ, this.speed) * 325.949D) & 2047;
if (this.sequenceDefinition != null) {
this.frameCycle += var1;
this.frameCycle += cycles;
while (true) {
do {
@@ -249,21 +249,21 @@ public final class Projectile extends Entity {
garbageValue = "95"
)
@Export("byteArrayToObject")
public static Object byteArrayToObject(byte[] var0, boolean var1) {
if (var0 == null) {
public static Object byteArrayToObject(byte[] bytes, boolean copyArray) {
if (bytes == null) {
return null;
} else {
if (var0.length > 136 && !AbstractByteArrayCopier.directBufferUnavailable) {
if (bytes.length > 136 && !AbstractByteArrayCopier.directBufferUnavailable) {
try {
DirectByteArrayCopier var2 = new DirectByteArrayCopier();
var2.set(var0);
var2.set(bytes);
return var2;
} catch (Throwable var3) {
AbstractByteArrayCopier.directBufferUnavailable = true;
}
}
return var0;
return bytes;
}
}
@@ -52,8 +52,8 @@ public final class RasterProvider extends AbstractRasterProvider {
garbageValue = "-430495007"
)
@Export("drawFull")
public final void drawFull(int var1, int var2) {
this.drawFull0(this.component0.getGraphics(), var1, var2);
public final void drawFull(int x, int y) {
this.drawFull0(this.component0.getGraphics(), x, y);
}
@ObfuscatedName("q")
@@ -62,8 +62,8 @@ public final class RasterProvider extends AbstractRasterProvider {
garbageValue = "18"
)
@Export("draw")
public final void draw(int var1, int var2, int var3, int var4) {
this.draw0(this.component0.getGraphics(), var1, var2, var3, var4);
public final void draw(int x, int y, int width, int height) {
this.draw0(this.component0.getGraphics(), x, y, width, height);
}
@ObfuscatedName("w")
@@ -72,9 +72,9 @@ public final class RasterProvider extends AbstractRasterProvider {
garbageValue = "-2102440865"
)
@Export("drawFull0")
final void drawFull0(Graphics var1, int var2, int var3) {
final void drawFull0(Graphics graphics, int x, int y) {
try {
var1.drawImage(this.image, var2, var3, this.component0);
graphics.drawImage(this.image, x, y, this.component0);
} catch (Exception var5) {
this.component0.repaint();
}
@@ -87,12 +87,12 @@ public final class RasterProvider extends AbstractRasterProvider {
garbageValue = "3"
)
@Export("draw0")
final void draw0(Graphics var1, int var2, int var3, int var4, int var5) {
final void draw0(Graphics graphics, int x, int y, int width, int height) {
try {
Shape var6 = var1.getClip();
var1.clipRect(var2, var3, var4, var5);
var1.drawImage(this.image, 0, 0, this.component0);
var1.setClip(var6);
Shape var6 = graphics.getClip();
graphics.clipRect(x, y, width, height);
graphics.drawImage(this.image, 0, 0, this.component0);
graphics.setClip(var6);
} catch (Exception var7) {
this.component0.repaint();
}
+160 -160
View File
@@ -30,11 +30,11 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("dp")
@Export("Rasterizer2D_replace")
public static void Rasterizer2D_replace(int[] var0, int var1, int var2) {
Rasterizer2D_pixels = var0;
Rasterizer2D_width = var1;
Rasterizer2D_height = var2;
Rasterizer2D_setClip(0, 0, var1, var2);
public static void Rasterizer2D_replace(int[] pixels, int width, int height) {
Rasterizer2D_pixels = pixels;
Rasterizer2D_width = width;
Rasterizer2D_height = height;
Rasterizer2D_setClip(0, 0, width, height);
}
@ObfuscatedName("ds")
@@ -48,66 +48,66 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("di")
@Export("Rasterizer2D_setClip")
public static void Rasterizer2D_setClip(int var0, int var1, int var2, int var3) {
if (var0 < 0) {
var0 = 0;
public static void Rasterizer2D_setClip(int xStart, int yStart, int xEnd, int yEnd) {
if (xStart < 0) {
xStart = 0;
}
if (var1 < 0) {
var1 = 0;
if (yStart < 0) {
yStart = 0;
}
if (var2 > Rasterizer2D_width) {
var2 = Rasterizer2D_width;
if (xEnd > Rasterizer2D_width) {
xEnd = Rasterizer2D_width;
}
if (var3 > Rasterizer2D_height) {
var3 = Rasterizer2D_height;
if (yEnd > Rasterizer2D_height) {
yEnd = Rasterizer2D_height;
}
Rasterizer2D_xClipStart = var0;
Rasterizer2D_yClipStart = var1;
Rasterizer2D_xClipEnd = var2;
Rasterizer2D_yClipEnd = var3;
Rasterizer2D_xClipStart = xStart;
Rasterizer2D_yClipStart = yStart;
Rasterizer2D_xClipEnd = xEnd;
Rasterizer2D_yClipEnd = yEnd;
}
@ObfuscatedName("dc")
@Export("Rasterizer2D_expandClip")
public static void Rasterizer2D_expandClip(int var0, int var1, int var2, int var3) {
if (Rasterizer2D_xClipStart < var0) {
Rasterizer2D_xClipStart = var0;
public static void Rasterizer2D_expandClip(int xStart, int yStart, int xEnd, int yEnd) {
if (Rasterizer2D_xClipStart < xStart) {
Rasterizer2D_xClipStart = xStart;
}
if (Rasterizer2D_yClipStart < var1) {
Rasterizer2D_yClipStart = var1;
if (Rasterizer2D_yClipStart < yStart) {
Rasterizer2D_yClipStart = yStart;
}
if (Rasterizer2D_xClipEnd > var2) {
Rasterizer2D_xClipEnd = var2;
if (Rasterizer2D_xClipEnd > xEnd) {
Rasterizer2D_xClipEnd = xEnd;
}
if (Rasterizer2D_yClipEnd > var3) {
Rasterizer2D_yClipEnd = var3;
if (Rasterizer2D_yClipEnd > yEnd) {
Rasterizer2D_yClipEnd = yEnd;
}
}
@ObfuscatedName("dg")
@Export("Rasterizer2D_getClipArray")
public static void Rasterizer2D_getClipArray(int[] var0) {
var0[0] = Rasterizer2D_xClipStart;
var0[1] = Rasterizer2D_yClipStart;
var0[2] = Rasterizer2D_xClipEnd;
var0[3] = Rasterizer2D_yClipEnd;
public static void Rasterizer2D_getClipArray(int[] dst) {
dst[0] = Rasterizer2D_xClipStart;
dst[1] = Rasterizer2D_yClipStart;
dst[2] = Rasterizer2D_xClipEnd;
dst[3] = Rasterizer2D_yClipEnd;
}
@ObfuscatedName("db")
@Export("Rasterizer2D_setClipArray")
public static void Rasterizer2D_setClipArray(int[] var0) {
Rasterizer2D_xClipStart = var0[0];
Rasterizer2D_yClipStart = var0[1];
Rasterizer2D_xClipEnd = var0[2];
Rasterizer2D_yClipEnd = var0[3];
public static void Rasterizer2D_setClipArray(int[] src) {
Rasterizer2D_xClipStart = src[0];
Rasterizer2D_yClipStart = src[1];
Rasterizer2D_xClipEnd = src[2];
Rasterizer2D_yClipEnd = src[3];
}
@ObfuscatedName("dd")
@@ -379,31 +379,31 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("dr")
@Export("Rasterizer2D_fillRectangle")
public static void Rasterizer2D_fillRectangle(int var0, int var1, int var2, int var3, int var4) {
if (var0 < Rasterizer2D_xClipStart) {
var2 -= Rasterizer2D_xClipStart - var0;
var0 = Rasterizer2D_xClipStart;
public static void Rasterizer2D_fillRectangle(int x, int y, int width, int height, int color) {
if (x < Rasterizer2D_xClipStart) {
width -= Rasterizer2D_xClipStart - x;
x = Rasterizer2D_xClipStart;
}
if (var1 < Rasterizer2D_yClipStart) {
var3 -= Rasterizer2D_yClipStart - var1;
var1 = Rasterizer2D_yClipStart;
if (y < Rasterizer2D_yClipStart) {
height -= Rasterizer2D_yClipStart - y;
y = Rasterizer2D_yClipStart;
}
if (var0 + var2 > Rasterizer2D_xClipEnd) {
var2 = Rasterizer2D_xClipEnd - var0;
if (x + width > Rasterizer2D_xClipEnd) {
width = Rasterizer2D_xClipEnd - x;
}
if (var3 + var1 > Rasterizer2D_yClipEnd) {
var3 = Rasterizer2D_yClipEnd - var1;
if (height + y > Rasterizer2D_yClipEnd) {
height = Rasterizer2D_yClipEnd - y;
}
int var5 = Rasterizer2D_width - var2;
int var6 = var0 + Rasterizer2D_width * var1;
int var5 = Rasterizer2D_width - width;
int var6 = x + Rasterizer2D_width * y;
for (int var7 = -var3; var7 < 0; ++var7) {
for (int var8 = -var2; var8 < 0; ++var8) {
Rasterizer2D_pixels[var6++] = var4;
for (int var7 = -height; var7 < 0; ++var7) {
for (int var8 = -width; var8 < 0; ++var8) {
Rasterizer2D_pixels[var6++] = color;
}
var6 += var5;
@@ -594,42 +594,42 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("dh")
@Export("Rasterizer2D_drawRectangle")
public static void Rasterizer2D_drawRectangle(int var0, int var1, int var2, int var3, int var4) {
Rasterizer2D_drawHorizontalLine(var0, var1, var2, var4);
Rasterizer2D_drawHorizontalLine(var0, var3 + var1 - 1, var2, var4);
Rasterizer2D_drawVerticalLine(var0, var1, var3, var4);
Rasterizer2D_drawVerticalLine(var0 + var2 - 1, var1, var3, var4);
public static void Rasterizer2D_drawRectangle(int x, int y, int width, int height, int color) {
Rasterizer2D_drawHorizontalLine(x, y, width, color);
Rasterizer2D_drawHorizontalLine(x, height + y - 1, width, color);
Rasterizer2D_drawVerticalLine(x, y, height, color);
Rasterizer2D_drawVerticalLine(x + width - 1, y, height, color);
}
@ObfuscatedName("dz")
@Export("Rasterizer2D_drawRectangleAlpha")
public static void Rasterizer2D_drawRectangleAlpha(int var0, int var1, int var2, int var3, int var4, int var5) {
Rasterizer2D_drawHorizontalLineAlpha(var0, var1, var2, var4, var5);
Rasterizer2D_drawHorizontalLineAlpha(var0, var3 + var1 - 1, var2, var4, var5);
if (var3 >= 3) {
Rasterizer2D_drawVerticalLineAlpha(var0, var1 + 1, var3 - 2, var4, var5);
Rasterizer2D_drawVerticalLineAlpha(var0 + var2 - 1, var1 + 1, var3 - 2, var4, var5);
public static void Rasterizer2D_drawRectangleAlpha(int x, int y, int width, int height, int rgb, int alpha) {
Rasterizer2D_drawHorizontalLineAlpha(x, y, width, rgb, alpha);
Rasterizer2D_drawHorizontalLineAlpha(x, height + y - 1, width, rgb, alpha);
if (height >= 3) {
Rasterizer2D_drawVerticalLineAlpha(x, y + 1, height - 2, rgb, alpha);
Rasterizer2D_drawVerticalLineAlpha(x + width - 1, y + 1, height - 2, rgb, alpha);
}
}
@ObfuscatedName("dj")
@Export("Rasterizer2D_drawHorizontalLine")
public static void Rasterizer2D_drawHorizontalLine(int var0, int var1, int var2, int var3) {
if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) {
if (var0 < Rasterizer2D_xClipStart) {
var2 -= Rasterizer2D_xClipStart - var0;
var0 = Rasterizer2D_xClipStart;
public static void Rasterizer2D_drawHorizontalLine(int x, int y, int length, int color) {
if (y >= Rasterizer2D_yClipStart && y < Rasterizer2D_yClipEnd) {
if (x < Rasterizer2D_xClipStart) {
length -= Rasterizer2D_xClipStart - x;
x = Rasterizer2D_xClipStart;
}
if (var0 + var2 > Rasterizer2D_xClipEnd) {
var2 = Rasterizer2D_xClipEnd - var0;
if (x + length > Rasterizer2D_xClipEnd) {
length = Rasterizer2D_xClipEnd - x;
}
int var4 = var0 + Rasterizer2D_width * var1;
int var4 = x + Rasterizer2D_width * y;
for (int var5 = 0; var5 < var2; ++var5) {
Rasterizer2D_pixels[var4 + var5] = var3;
for (int var5 = 0; var5 < length; ++var5) {
Rasterizer2D_pixels[var4 + var5] = color;
}
}
@@ -637,24 +637,24 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("du")
@Export("Rasterizer2D_drawHorizontalLineAlpha")
static void Rasterizer2D_drawHorizontalLineAlpha(int var0, int var1, int var2, int var3, int var4) {
if (var1 >= Rasterizer2D_yClipStart && var1 < Rasterizer2D_yClipEnd) {
if (var0 < Rasterizer2D_xClipStart) {
var2 -= Rasterizer2D_xClipStart - var0;
var0 = Rasterizer2D_xClipStart;
static void Rasterizer2D_drawHorizontalLineAlpha(int x, int y, int length, int rgb, int alpha) {
if (y >= Rasterizer2D_yClipStart && y < Rasterizer2D_yClipEnd) {
if (x < Rasterizer2D_xClipStart) {
length -= Rasterizer2D_xClipStart - x;
x = Rasterizer2D_xClipStart;
}
if (var0 + var2 > Rasterizer2D_xClipEnd) {
var2 = Rasterizer2D_xClipEnd - var0;
if (x + length > Rasterizer2D_xClipEnd) {
length = Rasterizer2D_xClipEnd - x;
}
int var5 = 256 - var4;
int var6 = (var3 >> 16 & 255) * var4;
int var7 = (var3 >> 8 & 255) * var4;
int var8 = var4 * (var3 & 255);
int var9 = var0 + Rasterizer2D_width * var1;
int var5 = 256 - alpha;
int var6 = (rgb >> 16 & 255) * alpha;
int var7 = (rgb >> 8 & 255) * alpha;
int var8 = alpha * (rgb & 255);
int var9 = x + Rasterizer2D_width * y;
for (int var10 = 0; var10 < var2; ++var10) {
for (int var10 = 0; var10 < length; ++var10) {
int var11 = var5 * (Rasterizer2D_pixels[var9] >> 16 & 255);
int var12 = (Rasterizer2D_pixels[var9] >> 8 & 255) * var5;
int var13 = var5 * (Rasterizer2D_pixels[var9] & 255);
@@ -667,21 +667,21 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("dm")
@Export("Rasterizer2D_drawVerticalLine")
public static void Rasterizer2D_drawVerticalLine(int var0, int var1, int var2, int var3) {
if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) {
if (var1 < Rasterizer2D_yClipStart) {
var2 -= Rasterizer2D_yClipStart - var1;
var1 = Rasterizer2D_yClipStart;
public static void Rasterizer2D_drawVerticalLine(int x, int y, int length, int color) {
if (x >= Rasterizer2D_xClipStart && x < Rasterizer2D_xClipEnd) {
if (y < Rasterizer2D_yClipStart) {
length -= Rasterizer2D_yClipStart - y;
y = Rasterizer2D_yClipStart;
}
if (var2 + var1 > Rasterizer2D_yClipEnd) {
var2 = Rasterizer2D_yClipEnd - var1;
if (length + y > Rasterizer2D_yClipEnd) {
length = Rasterizer2D_yClipEnd - y;
}
int var4 = var0 + Rasterizer2D_width * var1;
int var4 = x + Rasterizer2D_width * y;
for (int var5 = 0; var5 < var2; ++var5) {
Rasterizer2D_pixels[var4 + var5 * Rasterizer2D_width] = var3;
for (int var5 = 0; var5 < length; ++var5) {
Rasterizer2D_pixels[var4 + var5 * Rasterizer2D_width] = color;
}
}
@@ -689,24 +689,24 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("dq")
@Export("Rasterizer2D_drawVerticalLineAlpha")
static void Rasterizer2D_drawVerticalLineAlpha(int var0, int var1, int var2, int var3, int var4) {
if (var0 >= Rasterizer2D_xClipStart && var0 < Rasterizer2D_xClipEnd) {
if (var1 < Rasterizer2D_yClipStart) {
var2 -= Rasterizer2D_yClipStart - var1;
var1 = Rasterizer2D_yClipStart;
static void Rasterizer2D_drawVerticalLineAlpha(int x, int y, int length, int rgb, int alpha) {
if (x >= Rasterizer2D_xClipStart && x < Rasterizer2D_xClipEnd) {
if (y < Rasterizer2D_yClipStart) {
length -= Rasterizer2D_yClipStart - y;
y = Rasterizer2D_yClipStart;
}
if (var2 + var1 > Rasterizer2D_yClipEnd) {
var2 = Rasterizer2D_yClipEnd - var1;
if (length + y > Rasterizer2D_yClipEnd) {
length = Rasterizer2D_yClipEnd - y;
}
int var5 = 256 - var4;
int var6 = (var3 >> 16 & 255) * var4;
int var7 = (var3 >> 8 & 255) * var4;
int var8 = var4 * (var3 & 255);
int var9 = var0 + Rasterizer2D_width * var1;
int var5 = 256 - alpha;
int var6 = (rgb >> 16 & 255) * alpha;
int var7 = (rgb >> 8 & 255) * alpha;
int var8 = alpha * (rgb & 255);
int var9 = x + Rasterizer2D_width * y;
for (int var10 = 0; var10 < var2; ++var10) {
for (int var10 = 0; var10 < length; ++var10) {
int var11 = var5 * (Rasterizer2D_pixels[var9] >> 16 & 255);
int var12 = (Rasterizer2D_pixels[var9] >> 8 & 255) * var5;
int var13 = var5 * (Rasterizer2D_pixels[var9] & 255);
@@ -720,78 +720,78 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("et")
@Export("Rasterizer2D_drawLine")
public static void Rasterizer2D_drawLine(int var0, int var1, int var2, int var3, int var4) {
var2 -= var0;
var3 -= var1;
if (var3 == 0) {
if (var2 >= 0) {
Rasterizer2D_drawHorizontalLine(var0, var1, var2 + 1, var4);
public static void Rasterizer2D_drawLine(int x0, int y0, int x1, int y1, int color) {
x1 -= x0;
y1 -= y0;
if (y1 == 0) {
if (x1 >= 0) {
Rasterizer2D_drawHorizontalLine(x0, y0, x1 + 1, color);
} else {
Rasterizer2D_drawHorizontalLine(var0 + var2, var1, -var2 + 1, var4);
Rasterizer2D_drawHorizontalLine(x0 + x1, y0, -x1 + 1, color);
}
} else if (var2 == 0) {
if (var3 >= 0) {
Rasterizer2D_drawVerticalLine(var0, var1, var3 + 1, var4);
} else if (x1 == 0) {
if (y1 >= 0) {
Rasterizer2D_drawVerticalLine(x0, y0, y1 + 1, color);
} else {
Rasterizer2D_drawVerticalLine(var0, var3 + var1, -var3 + 1, var4);
Rasterizer2D_drawVerticalLine(x0, y1 + y0, -y1 + 1, color);
}
} else {
if (var3 + var2 < 0) {
var0 += var2;
var2 = -var2;
var1 += var3;
var3 = -var3;
if (y1 + x1 < 0) {
x0 += x1;
x1 = -x1;
y0 += y1;
y1 = -y1;
}
int var5;
int var6;
if (var2 > var3) {
var1 <<= 16;
var1 += 32768;
var3 <<= 16;
var5 = (int)Math.floor((double)var3 / (double)var2 + 0.5D);
var2 += var0;
if (var0 < Rasterizer2D_xClipStart) {
var1 += var5 * (Rasterizer2D_xClipStart - var0);
var0 = Rasterizer2D_xClipStart;
if (x1 > y1) {
y0 <<= 16;
y0 += 32768;
y1 <<= 16;
var5 = (int)Math.floor((double)y1 / (double)x1 + 0.5D);
x1 += x0;
if (x0 < Rasterizer2D_xClipStart) {
y0 += var5 * (Rasterizer2D_xClipStart - x0);
x0 = Rasterizer2D_xClipStart;
}
if (var2 >= Rasterizer2D_xClipEnd) {
var2 = Rasterizer2D_xClipEnd - 1;
if (x1 >= Rasterizer2D_xClipEnd) {
x1 = Rasterizer2D_xClipEnd - 1;
}
while (var0 <= var2) {
var6 = var1 >> 16;
while (x0 <= x1) {
var6 = y0 >> 16;
if (var6 >= Rasterizer2D_yClipStart && var6 < Rasterizer2D_yClipEnd) {
Rasterizer2D_pixels[var0 + var6 * Rasterizer2D_width] = var4;
Rasterizer2D_pixels[x0 + var6 * Rasterizer2D_width] = color;
}
var1 += var5;
++var0;
y0 += var5;
++x0;
}
} else {
var0 <<= 16;
var0 += 32768;
var2 <<= 16;
var5 = (int)Math.floor((double)var2 / (double)var3 + 0.5D);
var3 += var1;
if (var1 < Rasterizer2D_yClipStart) {
var0 += (Rasterizer2D_yClipStart - var1) * var5;
var1 = Rasterizer2D_yClipStart;
x0 <<= 16;
x0 += 32768;
x1 <<= 16;
var5 = (int)Math.floor((double)x1 / (double)y1 + 0.5D);
y1 += y0;
if (y0 < Rasterizer2D_yClipStart) {
x0 += (Rasterizer2D_yClipStart - y0) * var5;
y0 = Rasterizer2D_yClipStart;
}
if (var3 >= Rasterizer2D_yClipEnd) {
var3 = Rasterizer2D_yClipEnd - 1;
if (y1 >= Rasterizer2D_yClipEnd) {
y1 = Rasterizer2D_yClipEnd - 1;
}
while (var1 <= var3) {
var6 = var0 >> 16;
while (y0 <= y1) {
var6 = x0 >> 16;
if (var6 >= Rasterizer2D_xClipStart && var6 < Rasterizer2D_xClipEnd) {
Rasterizer2D_pixels[var6 + Rasterizer2D_width * var1] = var4;
Rasterizer2D_pixels[var6 + Rasterizer2D_width * y0] = color;
}
var0 += var5;
++var1;
x0 += var5;
++y0;
}
}
}
@@ -800,9 +800,9 @@ public class Rasterizer2D extends DualNode {
@ObfuscatedName("eb")
@Export("Rasterizer2D_setPixel")
static void Rasterizer2D_setPixel(int var0, int var1, int var2) {
if (var0 >= Rasterizer2D_xClipStart && var1 >= Rasterizer2D_yClipStart && var0 < Rasterizer2D_xClipEnd && var1 < Rasterizer2D_yClipEnd) {
Rasterizer2D_pixels[var0 + Rasterizer2D_width * var1] = var2;
static void Rasterizer2D_setPixel(int x, int y, int color) {
if (x >= Rasterizer2D_xClipStart && y >= Rasterizer2D_yClipStart && x < Rasterizer2D_xClipEnd && y < Rasterizer2D_yClipEnd) {
Rasterizer2D_pixels[x + Rasterizer2D_width * y] = color;
}
}
@@ -76,15 +76,15 @@ public class Rasterizer3D extends Rasterizer2D {
@ObfuscatedName("f")
@Export("Rasterizer3D_setClip")
static final void Rasterizer3D_setClip(int var0, int var1, int var2, int var3) {
Rasterizer3D_clipWidth = var2 - var0;
Rasterizer3D_clipHeight = var3 - var1;
static final void Rasterizer3D_setClip(int xStart, int yStart, int xEnd, int yEnd) {
Rasterizer3D_clipWidth = xEnd - xStart;
Rasterizer3D_clipHeight = yEnd - yStart;
Rasterizer3D_method3();
if (Rasterizer3D_rowOffsets.length < Rasterizer3D_clipHeight) {
Rasterizer3D_rowOffsets = new int[World.method1759(Rasterizer3D_clipHeight)];
}
int var4 = var0 + Rasterizer2D.Rasterizer2D_width * var1;
int var4 = xStart + Rasterizer2D.Rasterizer2D_width * yStart;
for (int var5 = 0; var5 < Rasterizer3D_clipHeight; ++var5) {
Rasterizer3D_rowOffsets[var5] = var4;
@@ -122,22 +122,22 @@ public class Rasterizer3D extends Rasterizer2D {
signature = "(Lei;)V"
)
@Export("Rasterizer3D_setTextureLoader")
public static final void Rasterizer3D_setTextureLoader(TextureLoader var0) {
Rasterizer3D_textureLoader = var0;
public static final void Rasterizer3D_setTextureLoader(TextureLoader textureLoader) {
Rasterizer3D_textureLoader = textureLoader;
}
@ObfuscatedName("u")
@Export("Rasterizer3D_setBrightness")
public static final void Rasterizer3D_setBrightness(double var0) {
Rasterizer3D_buildPalette(var0, 0, 512);
public static final void Rasterizer3D_setBrightness(double brightness) {
Rasterizer3D_buildPalette(brightness, 0, 512);
}
@ObfuscatedName("g")
@Export("Rasterizer3D_buildPalette")
static final void Rasterizer3D_buildPalette(double var0, int var2, int var3) {
int var4 = var2 * 128;
static final void Rasterizer3D_buildPalette(double brightness, int hsMin, int hsMax) {
int var4 = hsMin * 128;
for (int var5 = var2; var5 < var3; ++var5) {
for (int var5 = hsMin; var5 < hsMax; ++var5) {
double var6 = (double)(var5 >> 3) / 64.0D + 0.0078125D;
double var8 = (double)(var5 & 7) / 8.0D + 0.0625D;
@@ -200,7 +200,7 @@ public class Rasterizer3D extends Rasterizer2D {
int var20 = (int)(var15 * 256.0D);
int var27 = (int)(var17 * 256.0D);
int var22 = var27 + (var20 << 8) + (var28 << 16);
var22 = Rasterizer3D_brighten(var22, var0);
var22 = Rasterizer3D_brighten(var22, brightness);
if (var22 == 0) {
var22 = 1;
}
@@ -213,13 +213,13 @@ public class Rasterizer3D extends Rasterizer2D {
@ObfuscatedName("l")
@Export("Rasterizer3D_brighten")
static int Rasterizer3D_brighten(int var0, double var1) {
double var3 = (double)(var0 >> 16) / 256.0D;
double var5 = (double)(var0 >> 8 & 255) / 256.0D;
double var7 = (double)(var0 & 255) / 256.0D;
var3 = Math.pow(var3, var1);
var5 = Math.pow(var5, var1);
var7 = Math.pow(var7, var1);
static int Rasterizer3D_brighten(int rgb, double brightness) {
double var3 = (double)(rgb >> 16) / 256.0D;
double var5 = (double)(rgb >> 8 & 255) / 256.0D;
double var7 = (double)(rgb & 255) / 256.0D;
var3 = Math.pow(var3, brightness);
var5 = Math.pow(var5, brightness);
var7 = Math.pow(var7, brightness);
int var9 = (int)(var3 * 256.0D);
int var10 = (int)(var5 * 256.0D);
int var11 = (int)(var7 * 256.0D);
@@ -2033,7 +2033,7 @@ public class Rasterizer3D extends Rasterizer2D {
int var15 = var6 - var5;
int var16;
int var10000;
int var17;
int var18;
int var19;
int var20;
int var21;
@@ -2077,7 +2077,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
var2 = (var19 << 20) + var20;
var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20);
var18 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20);
var15 >>= 3;
var8 <<= 3;
var16 = var7 >> 8;
@@ -2086,28 +2086,28 @@ public class Rasterizer3D extends Rasterizer2D {
do {
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var10000 = var17 + var2;
var10000 = var18 + var2;
var19 = var21;
var20 = var22;
var9 += var12;
@@ -2128,7 +2128,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
var2 = (var19 << 20) + var20;
var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20);
var18 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20);
var7 += var8;
var16 = var7 >> 8;
--var15;
@@ -2140,7 +2140,7 @@ public class Rasterizer3D extends Rasterizer2D {
do {
var3 = var1[(var2 >>> 26) + (var2 & 4032)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
--var15;
} while(var15 > 0);
}
@@ -2152,49 +2152,49 @@ public class Rasterizer3D extends Rasterizer2D {
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 >>> 26) + (var2 & 4032)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var10000 = var17 + var2;
var10000 = var18 + var2;
var19 = var21;
var20 = var22;
var9 += var12;
@@ -2215,7 +2215,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
var2 = (var19 << 20) + var20;
var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20);
var18 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 20);
var7 += var8;
var16 = var7 >> 8;
--var15;
@@ -2230,7 +2230,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
++var4;
var2 += var17;
var2 += var18;
--var15;
} while(var15 > 0);
}
@@ -2272,7 +2272,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
var2 = (var19 << 18) + var20;
var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18);
var18 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18);
var15 >>= 3;
var8 <<= 3;
var16 = var7 >> 8;
@@ -2281,28 +2281,28 @@ public class Rasterizer3D extends Rasterizer2D {
do {
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var10000 = var17 + var2;
var10000 = var18 + var2;
var19 = var21;
var20 = var22;
var9 += var12;
@@ -2323,7 +2323,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
var2 = (var19 << 18) + var20;
var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18);
var18 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18);
var7 += var8;
var16 = var7 >> 8;
--var15;
@@ -2335,7 +2335,7 @@ public class Rasterizer3D extends Rasterizer2D {
do {
var3 = var1[(var2 & 16256) + (var2 >>> 25)];
var0[var4++] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
var2 += var17;
var2 += var18;
--var15;
} while(var15 > 0);
}
@@ -2347,49 +2347,49 @@ public class Rasterizer3D extends Rasterizer2D {
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var2 += var17;
var2 += var18;
if ((var3 = var1[(var2 & 16256) + (var2 >>> 25)]) != 0) {
var0[var4] = (var16 * (var3 & 65280) & 16711680) + ((var3 & 16711935) * var16 & -16711936) >> 8;
}
++var4;
var10000 = var17 + var2;
var10000 = var18 + var2;
var19 = var21;
var20 = var22;
var9 += var12;
@@ -2410,7 +2410,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
var2 = (var19 << 18) + var20;
var17 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18);
var18 = (var22 - var20 >> 3) + (var21 - var19 >> 3 << 18);
var7 += var8;
var16 = var7 >> 8;
--var15;
@@ -2425,7 +2425,7 @@ public class Rasterizer3D extends Rasterizer2D {
}
++var4;
var2 += var17;
var2 += var18;
--var15;
} while(var15 > 0);
}
@@ -101,9 +101,9 @@ public class RawPcmStream extends PcmStream {
}
@ObfuscatedName("e")
public synchronized void vmethod263(int[] var1, int var2, int var3) {
public synchronized void fill(int[] var1, int var2, int var3) {
if (this.field746 == 0 && this.field752 == 0) {
this.vmethod264(var3);
this.skip(var3);
} else {
RawSound var4 = (RawSound)super.sound;
int var5 = this.start << 8;
@@ -290,7 +290,7 @@ public class RawPcmStream extends PcmStream {
}
@ObfuscatedName("d")
public synchronized void vmethod264(int var1) {
public synchronized void skip(int var1) {
if (this.field752 > 0) {
if (var1 >= this.field752) {
if (this.field746 == Integer.MIN_VALUE) {
+6 -6
View File
@@ -41,14 +41,14 @@ public class RawSound extends AbstractSound {
signature = "(Ldp;)Lcx;"
)
@Export("resample")
public RawSound resample(Decimator var1) {
this.samples = var1.resample(this.samples);
this.sampleRate = var1.scaleRate(this.sampleRate);
public RawSound resample(Decimator decimator) {
this.samples = decimator.resample(this.samples);
this.sampleRate = decimator.scaleRate(this.sampleRate);
if (this.start == this.end) {
this.start = this.end = var1.scalePosition(this.start);
this.start = this.end = decimator.scalePosition(this.start);
} else {
this.start = var1.scalePosition(this.start);
this.end = var1.scalePosition(this.end);
this.start = decimator.scalePosition(this.start);
this.end = decimator.scalePosition(this.end);
if (this.start == this.end) {
--this.start;
}
+211 -211
View File
@@ -236,13 +236,13 @@ public class Scene {
@ObfuscatedName("f")
@Export("init")
public void init(int var1) {
this.minPlane = var1;
public void init(int minPlane) {
this.minPlane = minPlane;
for (int var2 = 0; var2 < this.xSize; ++var2) {
for (int var3 = 0; var3 < this.ySize; ++var3) {
if (this.tiles[var1][var2][var3] == null) {
this.tiles[var1][var2][var3] = new Tile(var1, var2, var3);
if (this.tiles[minPlane][var2][var3] == null) {
this.tiles[minPlane][var2][var3] = new Tile(minPlane, var2, var3);
}
}
}
@@ -251,11 +251,11 @@ public class Scene {
@ObfuscatedName("q")
@Export("setLinkBelow")
public void setLinkBelow(int var1, int var2) {
Tile var3 = this.tiles[0][var1][var2];
public void setLinkBelow(int x, int y) {
Tile var3 = this.tiles[0][x][y];
for (int var4 = 0; var4 < 3; ++var4) {
Tile var5 = this.tiles[var4][var1][var2] = this.tiles[var4 + 1][var1][var2];
Tile var5 = this.tiles[var4][x][y] = this.tiles[var4 + 1][x][y];
if (var5 != null) {
--var5.plane;
@@ -264,27 +264,27 @@ public class Scene {
long var8 = var7.tag;
int var10 = (int)(var8 >>> 14 & 3L);
boolean var11 = var10 == 2;
if (var11 && var7.startX == var1 && var2 == var7.startY) {
if (var11 && var7.startX == x && y == var7.startY) {
--var7.plane;
}
}
}
}
if (this.tiles[0][var1][var2] == null) {
this.tiles[0][var1][var2] = new Tile(0, var1, var2);
if (this.tiles[0][x][y] == null) {
this.tiles[0][x][y] = new Tile(0, x, y);
}
this.tiles[0][var1][var2].linkedBelowTile = var3;
this.tiles[3][var1][var2] = null;
this.tiles[0][x][y].linkedBelowTile = var3;
this.tiles[3][x][y] = null;
}
@ObfuscatedName("o")
@Export("setTileMinPlane")
public void setTileMinPlane(int var1, int var2, int var3, int var4) {
Tile var5 = this.tiles[var1][var2][var3];
public void setTileMinPlane(int plane, int x, int y, int minPlane) {
Tile var5 = this.tiles[plane][x][y];
if (var5 != null) {
this.tiles[var1][var2][var3].minPlane = var4;
this.tiles[plane][x][y].minPlane = minPlane;
}
}
@@ -333,20 +333,20 @@ public class Scene {
signature = "(IIIILex;JI)V"
)
@Export("newFloorDecoration")
public void newFloorDecoration(int var1, int var2, int var3, int var4, Entity var5, long var6, int var8) {
if (var5 != null) {
public void newFloorDecoration(int plane, int x, int y, int tileHeight, Entity entity, long tag, int flags) {
if (entity != null) {
FloorDecoration var9 = new FloorDecoration();
var9.entity = var5;
var9.x = var2 * 128 + 64;
var9.y = var3 * 128 + 64;
var9.tileHeight = var4;
var9.tag = var6;
var9.flags = var8;
if (this.tiles[var1][var2][var3] == null) {
this.tiles[var1][var2][var3] = new Tile(var1, var2, var3);
var9.entity = entity;
var9.x = x * 128 + 64;
var9.y = y * 128 + 64;
var9.tileHeight = tileHeight;
var9.tag = tag;
var9.flags = flags;
if (this.tiles[plane][x][y] == null) {
this.tiles[plane][x][y] = new Tile(plane, x, y);
}
this.tiles[var1][var2][var3].floorDecoration = var9;
this.tiles[plane][x][y].floorDecoration = var9;
}
}
@@ -356,17 +356,17 @@ public class Scene {
signature = "(IIIILex;JLex;Lex;)V"
)
@Export("newGroundItemPile")
public void newGroundItemPile(int var1, int var2, int var3, int var4, Entity var5, long var6, Entity var8, Entity var9) {
public void newGroundItemPile(int plane, int x, int y, int tileHeight, Entity first, long tag, Entity second, Entity third) {
GroundItemPile var10 = new GroundItemPile();
var10.first = var5;
var10.x = var2 * 128 + 64;
var10.y = var3 * 128 + 64;
var10.tileHeight = var4;
var10.tag = var6;
var10.second = var8;
var10.third = var9;
var10.first = first;
var10.x = x * 128 + 64;
var10.y = y * 128 + 64;
var10.tileHeight = tileHeight;
var10.tag = tag;
var10.second = second;
var10.third = third;
int var11 = 0;
Tile var12 = this.tiles[var1][var2][var3];
Tile var12 = this.tiles[plane][x][y];
if (var12 != null) {
for (int var13 = 0; var13 < var12.gameObjectsCount; ++var13) {
if ((var12.gameObjects[var13].flags & 256) == 256 && var12.gameObjects[var13].entity instanceof Model) {
@@ -380,11 +380,11 @@ public class Scene {
}
var10.height = var11;
if (this.tiles[var1][var2][var3] == null) {
this.tiles[var1][var2][var3] = new Tile(var1, var2, var3);
if (this.tiles[plane][x][y] == null) {
this.tiles[plane][x][y] = new Tile(plane, x, y);
}
this.tiles[var1][var2][var3].groundItemPile = var10;
this.tiles[plane][x][y].groundItemPile = var10;
}
@ObfuscatedName("e")
@@ -392,26 +392,26 @@ public class Scene {
signature = "(IIIILex;Lex;IIJI)V"
)
@Export("newBoundaryObject")
public void newBoundaryObject(int var1, int var2, int var3, int var4, Entity var5, Entity var6, int var7, int var8, long var9, int var11) {
if (var5 != null || var6 != null) {
public void newBoundaryObject(int plane, int x, int y, int tileHeight, Entity entity1, Entity entity2, int orientationA, int orientationB, long tag, int flags) {
if (entity1 != null || entity2 != null) {
BoundaryObject var12 = new BoundaryObject();
var12.tag = var9;
var12.flags = var11;
var12.x = var2 * 128 + 64;
var12.y = var3 * 128 + 64;
var12.tileHeight = var4;
var12.entity1 = var5;
var12.entity2 = var6;
var12.orientationA = var7;
var12.orientationB = var8;
var12.tag = tag;
var12.flags = flags;
var12.x = x * 128 + 64;
var12.y = y * 128 + 64;
var12.tileHeight = tileHeight;
var12.entity1 = entity1;
var12.entity2 = entity2;
var12.orientationA = orientationA;
var12.orientationB = orientationB;
for (int var13 = var1; var13 >= 0; --var13) {
if (this.tiles[var13][var2][var3] == null) {
this.tiles[var13][var2][var3] = new Tile(var13, var2, var3);
for (int var13 = plane; var13 >= 0; --var13) {
if (this.tiles[var13][x][y] == null) {
this.tiles[var13][x][y] = new Tile(var13, x, y);
}
}
this.tiles[var1][var2][var3].boundaryObject = var12;
this.tiles[plane][x][y].boundaryObject = var12;
}
}
@@ -421,28 +421,28 @@ public class Scene {
signature = "(IIIILex;Lex;IIIIJI)V"
)
@Export("newWallDecoration")
public void newWallDecoration(int var1, int var2, int var3, int var4, Entity var5, Entity var6, int var7, int var8, int var9, int var10, long var11, int var13) {
if (var5 != null) {
public void newWallDecoration(int plane, int x, int y, int tileHeight, Entity entity1, Entity entity2, int orientation, int int7, int xOffset, int yOffset, long tag, int flags) {
if (entity1 != null) {
WallDecoration var14 = new WallDecoration();
var14.tag = var11;
var14.flags = var13;
var14.x = var2 * 128 + 64;
var14.y = var3 * 128 + 64;
var14.tileHeight = var4;
var14.entity1 = var5;
var14.entity2 = var6;
var14.orientation = var7;
var14.orientation2 = var8;
var14.xOffset = var9;
var14.yOffset = var10;
var14.tag = tag;
var14.flags = flags;
var14.x = x * 128 + 64;
var14.y = y * 128 + 64;
var14.tileHeight = tileHeight;
var14.entity1 = entity1;
var14.entity2 = entity2;
var14.orientation = orientation;
var14.orientation2 = int7;
var14.xOffset = xOffset;
var14.yOffset = yOffset;
for (int var15 = var1; var15 >= 0; --var15) {
if (this.tiles[var15][var2][var3] == null) {
this.tiles[var15][var2][var3] = new Tile(var15, var2, var3);
for (int var15 = plane; var15 >= 0; --var15) {
if (this.tiles[var15][x][y] == null) {
this.tiles[var15][x][y] = new Tile(var15, x, y);
}
}
this.tiles[var1][var2][var3].wallDecoration = var14;
this.tiles[plane][x][y].wallDecoration = var14;
}
}
@@ -512,15 +512,15 @@ public class Scene {
signature = "(IIIIIIIILex;IZJI)Z"
)
@Export("newGameObject")
boolean newGameObject(int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8, Entity var9, int var10, boolean var11, long var12, int var14) {
boolean newGameObject(int plane, int startX, int startY, int sizeX, int sizeY, int centerX, int centerY, int height, Entity entity, int orientation, boolean isTemp, long tag, int flags) {
int var15;
for (int var16 = var2; var16 < var2 + var4; ++var16) {
for (var15 = var3; var15 < var3 + var5; ++var15) {
for (int var16 = startX; var16 < startX + sizeX; ++var16) {
for (var15 = startY; var15 < startY + sizeY; ++var15) {
if (var16 < 0 || var15 < 0 || var16 >= this.xSize || var15 >= this.ySize) {
return false;
}
Tile var17 = this.tiles[var1][var16][var15];
Tile var17 = this.tiles[plane][var16][var15];
if (var17 != null && var17.gameObjectsCount >= 5) {
return false;
}
@@ -528,45 +528,45 @@ public class Scene {
}
GameObject var20 = new GameObject();
var20.tag = var12;
var20.flags = var14;
var20.plane = var1;
var20.centerX = var6;
var20.centerY = var7;
var20.height = var8;
var20.entity = var9;
var20.orientation = var10;
var20.startX = var2;
var20.startY = var3;
var20.endX = var2 + var4 - 1;
var20.endY = var3 + var5 - 1;
var20.tag = tag;
var20.flags = flags;
var20.plane = plane;
var20.centerX = centerX;
var20.centerY = centerY;
var20.height = height;
var20.entity = entity;
var20.orientation = orientation;
var20.startX = startX;
var20.startY = startY;
var20.endX = startX + sizeX - 1;
var20.endY = startY + sizeY - 1;
for (var15 = var2; var15 < var2 + var4; ++var15) {
for (int var21 = var3; var21 < var3 + var5; ++var21) {
for (var15 = startX; var15 < startX + sizeX; ++var15) {
for (int var21 = startY; var21 < startY + sizeY; ++var21) {
int var18 = 0;
if (var15 > var2) {
if (var15 > startX) {
++var18;
}
if (var15 < var2 + var4 - 1) {
if (var15 < startX + sizeX - 1) {
var18 += 4;
}
if (var21 > var3) {
if (var21 > startY) {
var18 += 8;
}
if (var21 < var3 + var5 - 1) {
if (var21 < startY + sizeY - 1) {
var18 += 2;
}
for (int var19 = var1; var19 >= 0; --var19) {
for (int var19 = plane; var19 >= 0; --var19) {
if (this.tiles[var19][var15][var21] == null) {
this.tiles[var19][var15][var21] = new Tile(var19, var15, var21);
}
}
Tile var22 = this.tiles[var1][var15][var21];
Tile var22 = this.tiles[plane][var15][var21];
var22.gameObjects[var22.gameObjectsCount] = var20;
var22.gameObjectEdgeMasks[var22.gameObjectsCount] = var18;
var22.gameObjectsEdgeMask |= var18;
@@ -574,7 +574,7 @@ public class Scene {
}
}
if (var11) {
if (isTemp) {
this.tempGameObjects[this.tempGameObjectsCount++] = var20;
}
@@ -598,14 +598,14 @@ public class Scene {
signature = "(Leh;)V"
)
@Export("removeGameObject")
void removeGameObject(GameObject var1) {
for (int var2 = var1.startX; var2 <= var1.endX; ++var2) {
for (int var3 = var1.startY; var3 <= var1.endY; ++var3) {
Tile var4 = this.tiles[var1.plane][var2][var3];
void removeGameObject(GameObject gameObject) {
for (int var2 = gameObject.startX; var2 <= gameObject.endX; ++var2) {
for (int var3 = gameObject.startY; var3 <= gameObject.endY; ++var3) {
Tile var4 = this.tiles[gameObject.plane][var2][var3];
if (var4 != null) {
int var5;
for (var5 = 0; var5 < var4.gameObjectsCount; ++var5) {
if (var4.gameObjects[var5] == var1) {
if (var4.gameObjects[var5] == gameObject) {
--var4.gameObjectsCount;
for (int var6 = var5; var6 < var4.gameObjectsCount; ++var6) {
@@ -644,8 +644,8 @@ public class Scene {
@ObfuscatedName("h")
@Export("removeBoundaryObject")
public void removeBoundaryObject(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public void removeBoundaryObject(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
if (var4 != null) {
var4.boundaryObject = null;
}
@@ -654,8 +654,8 @@ public class Scene {
@ObfuscatedName("b")
@Export("removeWallDecoration")
public void removeWallDecoration(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public void removeWallDecoration(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
if (var4 != null) {
var4.wallDecoration = null;
}
@@ -682,8 +682,8 @@ public class Scene {
@ObfuscatedName("p")
@Export("removeFloorDecoration")
public void removeFloorDecoration(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public void removeFloorDecoration(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
if (var4 != null) {
var4.floorDecoration = null;
}
@@ -692,8 +692,8 @@ public class Scene {
@ObfuscatedName("v")
@Export("removeGroundItemPile")
public void removeGroundItemPile(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public void removeGroundItemPile(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
if (var4 != null) {
var4.groundItemPile = null;
}
@@ -705,8 +705,8 @@ public class Scene {
signature = "(III)Lej;"
)
@Export("getBoundaryObject")
public BoundaryObject getBoundaryObject(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public BoundaryObject getBoundaryObject(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
return var4 == null ? null : var4.boundaryObject;
}
@@ -715,8 +715,8 @@ public class Scene {
signature = "(III)Leq;"
)
@Export("getWallDecoration")
public WallDecoration getWallDecoration(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public WallDecoration getWallDecoration(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
return var4 == null ? null : var4.wallDecoration;
}
@@ -748,8 +748,8 @@ public class Scene {
signature = "(III)Ldo;"
)
@Export("getFloorDecoration")
public FloorDecoration getFloorDecoration(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public FloorDecoration getFloorDecoration(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
return var4 != null && var4.floorDecoration != null ? var4.floorDecoration : null;
}
@@ -787,15 +787,15 @@ public class Scene {
@ObfuscatedName("ah")
@Export("getFloorDecorationTag")
public long getFloorDecorationTag(int var1, int var2, int var3) {
Tile var4 = this.tiles[var1][var2][var3];
public long getFloorDecorationTag(int plane, int x, int y) {
Tile var4 = this.tiles[plane][x][y];
return var4 != null && var4.floorDecoration != null ? var4.floorDecoration.tag : 0L;
}
@ObfuscatedName("ak")
@Export("getObjectFlags")
public int getObjectFlags(int var1, int var2, int var3, long var4) {
Tile var6 = this.tiles[var1][var2][var3];
public int getObjectFlags(int plane, int x, int y, long var4) {
Tile var6 = this.tiles[plane][x][y];
if (var6 == null) {
return -1;
} else if (var6.boundaryObject != null && var6.boundaryObject.tag == var4) {
@@ -958,8 +958,8 @@ public class Scene {
@ObfuscatedName("ae")
@Export("drawTileMinimap")
public void drawTileMinimap(int[] var1, int var2, int var3, int var4, int var5, int var6) {
Tile var7 = this.tiles[var4][var5][var6];
public void drawTileMinimap(int[] pixels, int index, int width, int plane, int x, int y) {
Tile var7 = this.tiles[plane][x][y];
if (var7 != null) {
TilePaint var8 = var7.paint;
int var9;
@@ -967,11 +967,11 @@ public class Scene {
int var10 = var8.rgb;
if (var10 != 0) {
for (var9 = 0; var9 < 4; ++var9) {
var1[var2] = var10;
var1[var2 + 1] = var10;
var1[var2 + 2] = var10;
var1[var2 + 3] = var10;
var2 += var3;
pixels[index] = var10;
pixels[index + 1] = var10;
pixels[index + 2] = var10;
pixels[index + 3] = var10;
index += width;
}
}
} else {
@@ -987,31 +987,31 @@ public class Scene {
int var17;
if (var12 != 0) {
for (var17 = 0; var17 < 4; ++var17) {
var1[var2] = var14[var15[var16++]] == 0 ? var12 : var13;
var1[var2 + 1] = var14[var15[var16++]] == 0 ? var12 : var13;
var1[var2 + 2] = var14[var15[var16++]] == 0 ? var12 : var13;
var1[var2 + 3] = var14[var15[var16++]] == 0 ? var12 : var13;
var2 += var3;
pixels[index] = var14[var15[var16++]] == 0 ? var12 : var13;
pixels[index + 1] = var14[var15[var16++]] == 0 ? var12 : var13;
pixels[index + 2] = var14[var15[var16++]] == 0 ? var12 : var13;
pixels[index + 3] = var14[var15[var16++]] == 0 ? var12 : var13;
index += width;
}
} else {
for (var17 = 0; var17 < 4; ++var17) {
if (var14[var15[var16++]] != 0) {
var1[var2] = var13;
pixels[index] = var13;
}
if (var14[var15[var16++]] != 0) {
var1[var2 + 1] = var13;
pixels[index + 1] = var13;
}
if (var14[var15[var16++]] != 0) {
var1[var2 + 2] = var13;
pixels[index + 2] = var13;
}
if (var14[var15[var16++]] != 0) {
var1[var2 + 3] = var13;
pixels[index + 3] = var13;
}
var2 += var3;
index += width;
}
}
}
@@ -1022,13 +1022,13 @@ public class Scene {
@ObfuscatedName("ap")
@Export("menuOpen")
public void menuOpen(int var1, int var2, int var3, boolean var4) {
public void menuOpen(int plane, int screenX, int screenY, boolean var4) {
if (!method3187() || var4) {
checkClick = true;
viewportWalking = var4;
Scene_selectedPlane = var1;
Scene_selectedScreenX = var2;
Scene_selectedScreenY = var3;
Scene_selectedPlane = plane;
Scene_selectedScreenX = screenX;
Scene_selectedScreenY = screenY;
Scene_selectedX = -1;
Scene_selectedY = -1;
}
@@ -1042,11 +1042,11 @@ public class Scene {
@ObfuscatedName("az")
@Export("draw")
public void draw(int var1, int var2, int var3, int var4, int var5, int var6) {
if (var1 < 0) {
var1 = 0;
} else if (var1 >= this.xSize * 128) {
var1 = this.xSize * 128 - 1;
public void draw(int x, int y, int var3, int pitch, int yaw, int plane) {
if (x < 0) {
x = 0;
} else if (x >= this.xSize * 128) {
x = this.xSize * 128 - 1;
}
if (var3 < 0) {
@@ -1055,24 +1055,24 @@ public class Scene {
var3 = this.ySize * 128 - 1;
}
if (var4 < 128) {
var4 = 128;
} else if (var4 > 383) {
var4 = 383;
if (pitch < 128) {
pitch = 128;
} else if (pitch > 383) {
pitch = 383;
}
++Scene_drawnCount;
Scene_cameraPitchSine = Rasterizer3D.Rasterizer3D_sine[var4];
Scene_cameraPitchCosine = Rasterizer3D.Rasterizer3D_cosine[var4];
Scene_cameraYawSine = Rasterizer3D.Rasterizer3D_sine[var5];
Scene_cameraYawCosine = Rasterizer3D.Rasterizer3D_cosine[var5];
visibleTiles = visibilityMap[(var4 - 128) / 32][var5 / 64];
Scene_cameraX = var1;
Scene_cameraY = var2;
Scene_cameraPitchSine = Rasterizer3D.Rasterizer3D_sine[pitch];
Scene_cameraPitchCosine = Rasterizer3D.Rasterizer3D_cosine[pitch];
Scene_cameraYawSine = Rasterizer3D.Rasterizer3D_sine[yaw];
Scene_cameraYawCosine = Rasterizer3D.Rasterizer3D_cosine[yaw];
visibleTiles = visibilityMap[(pitch - 128) / 32][yaw / 64];
Scene_cameraX = x;
Scene_cameraY = y;
Scene_cameraZ = var3;
Scene_cameraXTile = var1 / 128;
Scene_cameraXTile = x / 128;
Scene_cameraYTile = var3 / 128;
Scene_plane = var6;
Scene_plane = plane;
Scene_cameraXTileMin = Scene_cameraXTile - 25;
if (Scene_cameraXTileMin < 0) {
Scene_cameraXTileMin = 0;
@@ -1107,7 +1107,7 @@ public class Scene {
for (var10 = Scene_cameraYTileMin; var10 < Scene_cameraYTileMax; ++var10) {
Tile var11 = var8[var9][var10];
if (var11 != null) {
if (var11.minPlane > var6 || !visibleTiles[var9 - Scene_cameraXTile + 25][var10 - Scene_cameraYTile + 25] && this.tileHeights[var7][var9][var10] - var2 < 2000) {
if (var11.minPlane > plane || !visibleTiles[var9 - Scene_cameraXTile + 25][var10 - Scene_cameraYTile + 25] && this.tileHeights[var7][var9][var10] - y < 2000) {
var11.drawPrimary = false;
var11.drawSecondary = false;
var11.drawGameObjectEdges = 0;
@@ -1128,8 +1128,8 @@ public class Scene {
}
int var12;
int var13;
Tile var14;
Tile var13;
int var14;
int var15;
int var16;
for (var7 = this.minPlane; var7 < this.planes; ++var7) {
@@ -1137,39 +1137,39 @@ public class Scene {
for (var9 = -25; var9 <= 0; ++var9) {
var10 = var9 + Scene_cameraXTile;
var15 = Scene_cameraXTile - var9;
if (var10 >= Scene_cameraXTileMin || var15 < Scene_cameraXTileMax) {
for (var16 = -25; var16 <= 0; ++var16) {
var12 = var16 + Scene_cameraYTile;
var13 = Scene_cameraYTile - var16;
var14 = Scene_cameraXTile - var9;
if (var10 >= Scene_cameraXTileMin || var14 < Scene_cameraXTileMax) {
for (var15 = -25; var15 <= 0; ++var15) {
var16 = var15 + Scene_cameraYTile;
var12 = Scene_cameraYTile - var15;
if (var10 >= Scene_cameraXTileMin) {
if (var12 >= Scene_cameraYTileMin) {
var14 = var8[var10][var12];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, true);
if (var16 >= Scene_cameraYTileMin) {
var13 = var8[var10][var16];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, true);
}
}
if (var13 < Scene_cameraYTileMax) {
var14 = var8[var10][var13];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, true);
if (var12 < Scene_cameraYTileMax) {
var13 = var8[var10][var12];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, true);
}
}
}
if (var15 < Scene_cameraXTileMax) {
if (var12 >= Scene_cameraYTileMin) {
var14 = var8[var15][var12];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, true);
if (var14 < Scene_cameraXTileMax) {
if (var16 >= Scene_cameraYTileMin) {
var13 = var8[var14][var16];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, true);
}
}
if (var13 < Scene_cameraYTileMax) {
var14 = var8[var15][var13];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, true);
if (var12 < Scene_cameraYTileMax) {
var13 = var8[var14][var12];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, true);
}
}
}
@@ -1188,39 +1188,39 @@ public class Scene {
for (var9 = -25; var9 <= 0; ++var9) {
var10 = var9 + Scene_cameraXTile;
var15 = Scene_cameraXTile - var9;
if (var10 >= Scene_cameraXTileMin || var15 < Scene_cameraXTileMax) {
for (var16 = -25; var16 <= 0; ++var16) {
var12 = var16 + Scene_cameraYTile;
var13 = Scene_cameraYTile - var16;
var14 = Scene_cameraXTile - var9;
if (var10 >= Scene_cameraXTileMin || var14 < Scene_cameraXTileMax) {
for (var15 = -25; var15 <= 0; ++var15) {
var16 = var15 + Scene_cameraYTile;
var12 = Scene_cameraYTile - var15;
if (var10 >= Scene_cameraXTileMin) {
if (var12 >= Scene_cameraYTileMin) {
var14 = var8[var10][var12];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, false);
if (var16 >= Scene_cameraYTileMin) {
var13 = var8[var10][var16];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, false);
}
}
if (var13 < Scene_cameraYTileMax) {
var14 = var8[var10][var13];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, false);
if (var12 < Scene_cameraYTileMax) {
var13 = var8[var10][var12];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, false);
}
}
}
if (var15 < Scene_cameraXTileMax) {
if (var12 >= Scene_cameraYTileMin) {
var14 = var8[var15][var12];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, false);
if (var14 < Scene_cameraXTileMax) {
if (var16 >= Scene_cameraYTileMin) {
var13 = var8[var14][var16];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, false);
}
}
if (var13 < Scene_cameraYTileMax) {
var14 = var8[var15][var13];
if (var14 != null && var14.drawPrimary) {
this.drawTile(var14, false);
if (var12 < Scene_cameraYTileMax) {
var13 = var8[var14][var12];
if (var13 != null && var13.drawPrimary) {
this.drawTile(var13, false);
}
}
}
@@ -1242,8 +1242,8 @@ public class Scene {
signature = "(Ldj;Z)V"
)
@Export("drawTile")
void drawTile(Tile var1, boolean var2) {
Scene_tilesDeque.addFirst(var1);
void drawTile(Tile tile, boolean var2) {
Scene_tilesDeque.addFirst(tile);
while (true) {
Tile var3;
@@ -2417,13 +2417,13 @@ public class Scene {
@ObfuscatedName("at")
@Export("Scene_buildVisiblityMap")
public static void Scene_buildVisiblityMap(int[] var0, int var1, int var2, int var3, int var4) {
public static void Scene_buildVisiblityMap(int[] var0, int var1, int var2, int viewportWidth, int viewportHeight) {
Scene_viewportXMin = 0;
Scene_viewportYMin = 0;
Scene_viewportXMax = var3;
Scene_viewportYMax = var4;
Scene_viewportXCenter = var3 / 2;
Scene_viewportYCenter = var4 / 2;
Scene_viewportXMax = viewportWidth;
Scene_viewportYMax = viewportHeight;
Scene_viewportXCenter = viewportWidth / 2;
Scene_viewportYCenter = viewportHeight / 2;
boolean[][][][] var5 = new boolean[var0.length][32][53][53];
int var6;
@@ -93,8 +93,8 @@ public class ScriptEvent extends Node {
garbageValue = "723852511"
)
@Export("setArgs")
public void setArgs(Object[] var1) {
this.args0 = var1;
public void setArgs(Object[] args) {
this.args0 = args;
}
@ObfuscatedName("f")
@@ -103,8 +103,8 @@ public class ScriptEvent extends Node {
garbageValue = "-110"
)
@Export("setType")
public void setType(int var1) {
this.type0 = var1;
public void setType(int type) {
this.type0 = type;
}
@ObfuscatedName("j")
@@ -157,7 +157,7 @@ public class ScriptEvent extends Node {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.rectangleMode.rsOrdinal();
return 1;
} else if (var0 == 1614) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.field964 ? 1 : 0;
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = var3.modelTransparency ? 1 : 0;
return 1;
} else {
return 2;
@@ -272,7 +272,7 @@ public class ScriptEvent extends Node {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = Client.weight;
return 1;
} else if (var0 == ScriptOpcodes.PLAYERMOD) {
if (Client.field155) {
if (Client.playerMod) {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 1;
} else {
Interpreter.Interpreter_intStack[++RouteStrategy.Interpreter_intStackSize - 1] = 0;

Some files were not shown because too many files have changed in this diff Show More