project: rev 200

This commit is contained in:
Owain van Brakel
2021-10-06 13:56:56 +02:00
parent 9f1d58c2a6
commit 5e9375bc8b
429 changed files with 45223 additions and 44897 deletions

View File

@@ -4,36 +4,30 @@ import net.runelite.mapping.ObfuscatedGetter;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
@ObfuscatedName("by")
@ObfuscatedName("bp")
@Implements("ArchiveLoader")
public class ArchiveLoader {
@ObfuscatedName("im")
@ObfuscatedName("q")
@ObfuscatedSignature(
descriptor = "[Loi;"
)
@Export("scrollBarSprites")
static IndexedSprite[] scrollBarSprites;
@ObfuscatedName("c")
@ObfuscatedSignature(
descriptor = "Lkx;"
descriptor = "Lky;"
)
@Export("archive")
final Archive archive;
@ObfuscatedName("m")
@ObfuscatedName("f")
@ObfuscatedGetter(
intValue = -520542999
intValue = -1979540381
)
@Export("groupCount")
final int groupCount;
@ObfuscatedName("k")
@ObfuscatedName("j")
@ObfuscatedGetter(
intValue = 260914757
intValue = 33253959
)
@Export("loadedCount")
int loadedCount;
@ObfuscatedSignature(
descriptor = "(Lkx;Ljava/lang/String;)V"
descriptor = "(Lky;Ljava/lang/String;)V"
)
ArchiveLoader(Archive var1, String var2) {
this.loadedCount = 0;
@@ -41,17 +35,17 @@ public class ArchiveLoader {
this.groupCount = var1.getGroupCount();
}
@ObfuscatedName("n")
@ObfuscatedName("l")
@ObfuscatedSignature(
descriptor = "(I)Z",
garbageValue = "-1799367031"
garbageValue = "-1480484971"
)
@Export("isLoaded")
boolean isLoaded() {
this.loadedCount = 0;
for (int var1 = 0; var1 < this.groupCount; ++var1) {
if (!this.archive.method5126(var1) || this.archive.method5117(var1)) {
if (!this.archive.method5180(var1) || this.archive.method5179(var1)) {
++this.loadedCount;
}
}
@@ -59,231 +53,634 @@ public class ArchiveLoader {
return this.loadedCount >= this.groupCount;
}
@ObfuscatedName("ih")
@ObfuscatedName("id")
@ObfuscatedSignature(
descriptor = "(Lfq;IIII)V",
garbageValue = "-2020515234"
descriptor = "([Ljt;IIIIIIIIB)V",
garbageValue = "-70"
)
@Export("addNpcToMenu")
static final void addNpcToMenu(NPCComposition var0, int var1, int var2, int var3) {
if (Client.menuOptionsCount < 400) {
if (var0.transforms != null) {
var0 = var0.transform();
}
@Export("drawInterface")
static final void drawInterface(Widget[] var0, int var1, int var2, int var3, int var4, int var5, int var6, int var7, int var8) {
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5);
Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D();
if (var0 != null) {
if (var0.isInteractable) {
if (!var0.isFollower || Client.followerIndex == var1) {
String var4 = var0.name;
int var7;
int var8;
if (var0.combatLevel != 0) {
var7 = var0.combatLevel;
var8 = class129.localPlayer.combatLevel;
int var9 = var8 - var7;
String var6;
if (var9 < -9) {
var6 = class54.colorStartTag(16711680);
} else if (var9 < -6) {
var6 = class54.colorStartTag(16723968);
} else if (var9 < -3) {
var6 = class54.colorStartTag(16740352);
} else if (var9 < 0) {
var6 = class54.colorStartTag(16756736);
} else if (var9 > 9) {
var6 = class54.colorStartTag(65280);
} else if (var9 > 6) {
var6 = class54.colorStartTag(4259584);
} else if (var9 > 3) {
var6 = class54.colorStartTag(8453888);
} else if (var9 > 0) {
var6 = class54.colorStartTag(12648192);
} else {
var6 = class54.colorStartTag(16776960);
}
var4 = var4 + var6 + " " + " (" + "level-" + var0.combatLevel + ")";
}
if (var0.isFollower && Client.followerOpsLowPriority) {
ModelData0.insertMenuItemNoShift("Examine", class54.colorStartTag(16776960) + var4, 1003, var1, var2, var3);
}
if (Client.isItemSelected == 1) {
ModelData0.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + class54.colorStartTag(16776960) + var4, 7, var1, var2, var3);
} else if (Client.isSpellSelected) {
if ((ScriptFrame.selectedSpellFlags & 2) == 2) {
ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + class54.colorStartTag(16776960) + var4, 8, var1, var2, var3);
}
} else {
int var10 = var0.isFollower && Client.followerOpsLowPriority ? 2000 : 0;
String[] var11 = var0.actions;
if (var11 != null) {
for (var7 = 4; var7 >= 0; --var7) {
if (var11[var7] != null && !var11[var7].equalsIgnoreCase("Attack")) {
var8 = 0;
if (var7 == 0) {
var8 = var10 + 9;
}
if (var7 == 1) {
var8 = var10 + 10;
}
if (var7 == 2) {
var8 = var10 + 11;
}
if (var7 == 3) {
var8 = var10 + 12;
}
if (var7 == 4) {
var8 = var10 + 13;
}
ModelData0.insertMenuItemNoShift(var11[var7], class54.colorStartTag(16776960) + var4, var8, var1, var2, var3);
}
}
}
if (var11 != null) {
for (var7 = 4; var7 >= 0; --var7) {
if (var11[var7] != null && var11[var7].equalsIgnoreCase("Attack")) {
short var12 = 0;
if (AttackOption.AttackOption_hidden != Client.npcAttackOption) {
if (Client.npcAttackOption == AttackOption.AttackOption_alwaysRightClick || AttackOption.AttackOption_dependsOnCombatLevels == Client.npcAttackOption && var0.combatLevel > class129.localPlayer.combatLevel) {
var12 = 2000;
}
var8 = 0;
if (var7 == 0) {
var8 = var12 + 9;
}
if (var7 == 1) {
var8 = var12 + 10;
}
if (var7 == 2) {
var8 = var12 + 11;
}
if (var7 == 3) {
var8 = var12 + 12;
}
if (var7 == 4) {
var8 = var12 + 13;
}
ModelData0.insertMenuItemNoShift(var11[var7], class54.colorStartTag(16776960) + var4, var8, var1, var2, var3);
}
}
}
}
if (!var0.isFollower || !Client.followerOpsLowPriority) {
ModelData0.insertMenuItemNoShift("Examine", class54.colorStartTag(16776960) + var4, 1003, var1, var2, var3);
}
}
}
for (int var9 = 0; var9 < var0.length; ++var9) {
Widget var10 = var0[var9];
if (var10 != null && (var10.parentId == var1 || var1 == -1412584499 && var10 == Client.clickedWidget)) {
int var11;
if (var8 == -1) {
Client.rootWidgetXs[Client.rootWidgetCount] = var10.x + var6;
Client.rootWidgetYs[Client.rootWidgetCount] = var7 + var10.y;
Client.rootWidgetWidths[Client.rootWidgetCount] = var10.width;
Client.rootWidgetHeights[Client.rootWidgetCount] = var10.height;
var11 = ++Client.rootWidgetCount - 1;
} else {
var11 = var8;
}
}
}
}
@ObfuscatedName("if")
@ObfuscatedSignature(
descriptor = "(Lco;IIII)V",
garbageValue = "617198662"
)
@Export("addPlayerToMenu")
static final void addPlayerToMenu(Player var0, int var1, int var2, int var3) {
if (class129.localPlayer != var0) {
if (Client.menuOptionsCount < 400) {
String var4;
int var7;
if (var0.skillLevel == 0) {
String var5 = var0.actions[0] + var0.username + var0.actions[1];
var7 = var0.combatLevel;
int var8 = class129.localPlayer.combatLevel;
int var9 = var8 - var7;
String var6;
if (var9 < -9) {
var6 = class54.colorStartTag(16711680);
} else if (var9 < -6) {
var6 = class54.colorStartTag(16723968);
} else if (var9 < -3) {
var6 = class54.colorStartTag(16740352);
} else if (var9 < 0) {
var6 = class54.colorStartTag(16756736);
} else if (var9 > 9) {
var6 = class54.colorStartTag(65280);
} else if (var9 > 6) {
var6 = class54.colorStartTag(4259584);
} else if (var9 > 3) {
var6 = class54.colorStartTag(8453888);
} else if (var9 > 0) {
var6 = class54.colorStartTag(12648192);
var10.rootIndex = var11;
var10.cycle = Client.cycle;
if (!var10.isIf3 || !ObjectSound.isComponentHidden(var10)) {
if (var10.contentType > 0) {
class9.method87(var10);
}
int var12 = var10.x + var6;
int var13 = var7 + var10.y;
int var14 = var10.transparencyTop;
int var15;
int var16;
if (var10 == Client.clickedWidget) {
if (var1 != -1412584499 && !var10.isScrollBar) {
ReflectionCheck.field452 = var0;
Script.field954 = var6;
UserComparator3.field1338 = var7;
continue;
}
if (Client.isDraggingWidget && Client.field595) {
var15 = MouseHandler.MouseHandler_x;
var16 = MouseHandler.MouseHandler_y;
var15 -= Client.widgetClickX;
var16 -= Client.widgetClickY;
if (var15 < Client.field669) {
var15 = Client.field669;
}
if (var15 + var10.width > Client.field669 + Client.clickedWidgetParent.width) {
var15 = Client.field669 + Client.clickedWidgetParent.width - var10.width;
}
if (var16 < Client.field670) {
var16 = Client.field670;
}
if (var16 + var10.height > Client.field670 + Client.clickedWidgetParent.height) {
var16 = Client.field670 + Client.clickedWidgetParent.height - var10.height;
}
var12 = var15;
var13 = var16;
}
if (!var10.isScrollBar) {
var14 = 128;
}
}
int var17;
int var18;
int var19;
int var20;
int var21;
int var22;
if (var10.type == 2) {
var15 = var2;
var16 = var3;
var17 = var4;
var18 = var5;
} else if (var10.type == 9) {
var19 = var12;
var20 = var13;
var21 = var12 + var10.width;
var22 = var13 + var10.height;
if (var21 < var12) {
var19 = var21;
var21 = var12;
}
if (var22 < var13) {
var20 = var22;
var22 = var13;
}
++var21;
++var22;
var15 = var19 > var2 ? var19 : var2;
var16 = var20 > var3 ? var20 : var3;
var17 = var21 < var4 ? var21 : var4;
var18 = var22 < var5 ? var22 : var5;
} else {
var6 = class54.colorStartTag(16776960);
var19 = var12 + var10.width;
var20 = var13 + var10.height;
var15 = var12 > var2 ? var12 : var2;
var16 = var13 > var3 ? var13 : var3;
var17 = var19 < var4 ? var19 : var4;
var18 = var20 < var5 ? var20 : var5;
}
var4 = var5 + var6 + " " + " (" + "level-" + var0.combatLevel + ")" + var0.actions[2];
} else {
var4 = var0.actions[0] + var0.username + var0.actions[1] + " " + " (" + "skill-" + var0.skillLevel + ")" + var0.actions[2];
}
int var10;
if (Client.isItemSelected == 1) {
ModelData0.insertMenuItemNoShift("Use", Client.selectedItemName + " " + "->" + " " + class54.colorStartTag(16777215) + var4, 14, var1, var2, var3);
} else if (Client.isSpellSelected) {
if ((ScriptFrame.selectedSpellFlags & 8) == 8) {
ModelData0.insertMenuItemNoShift(Client.selectedSpellActionName, Client.selectedSpellName + " " + "->" + " " + class54.colorStartTag(16777215) + var4, 15, var1, var2, var3);
}
} else {
for (var10 = 7; var10 >= 0; --var10) {
if (Client.playerMenuActions[var10] != null) {
short var11 = 0;
if (Client.playerMenuActions[var10].equalsIgnoreCase("Attack")) {
if (AttackOption.AttackOption_hidden == Client.playerAttackOption) {
continue;
}
if (Client.playerAttackOption == AttackOption.AttackOption_alwaysRightClick || Client.playerAttackOption == AttackOption.AttackOption_dependsOnCombatLevels && var0.combatLevel > class129.localPlayer.combatLevel) {
var11 = 2000;
}
if (class129.localPlayer.team != 0 && var0.team != 0) {
if (var0.team == class129.localPlayer.team) {
var11 = 2000;
} else {
var11 = 0;
if (!var10.isIf3 || var15 < var17 && var16 < var18) {
if (var10.contentType != 0) {
if (var10.contentType == 1336) {
if (Client.displayFps) {
var13 += 15;
class262.fontPlain12.drawRightAligned("Fps:" + GameEngine.fps, var12 + var10.width, var13, 16776960, -1);
var13 += 15;
Runtime var42 = Runtime.getRuntime();
var20 = (int)((var42.totalMemory() - var42.freeMemory()) / 1024L);
var21 = 16776960;
if (var20 > 327680 && !Client.isLowDetail) {
var21 = 16711680;
}
} else if (AttackOption.field1236 == Client.playerAttackOption && var0.isClanMember()) {
var11 = 2000;
class262.fontPlain12.drawRightAligned("Mem:" + var20 + "k", var12 + var10.width, var13, var21, -1);
var13 += 15;
}
} else if (Client.playerOptionsPriorities[var10]) {
var11 = 2000;
continue;
}
boolean var12 = false;
var7 = Client.playerMenuOpcodes[var10] + var11;
ModelData0.insertMenuItemNoShift(Client.playerMenuActions[var10], class54.colorStartTag(16777215) + var4, var7, var1, var2, var3);
if (var10.contentType == 1337) {
Client.viewportX = var12;
Client.viewportY = var13;
PendingSpawn.drawEntities(var12, var13, var10.width, var10.height);
Client.field710[var10.rootIndex] = true;
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5);
continue;
}
if (var10.contentType == 1338) {
class113.drawMinimap(var10, var12, var13, var11);
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5);
continue;
}
if (var10.contentType == 1339) {
Skills.drawCompass(var10, var12, var13, var11);
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5);
continue;
}
if (var10.contentType == 1400) {
TileItem.worldMap.draw(var12, var13, var10.width, var10.height, Client.cycle);
}
if (var10.contentType == 1401) {
TileItem.worldMap.drawOverview(var12, var13, var10.width, var10.height);
}
if (var10.contentType == 1402) {
Login.loginScreenRunesAnimation.draw(var12, Client.cycle);
}
}
if (var10.type == 0) {
if (!var10.isIf3 && ObjectSound.isComponentHidden(var10) && var10 != VarpDefinition.mousedOverWidgetIf1) {
continue;
}
if (!var10.isIf3) {
if (var10.scrollY > var10.scrollHeight - var10.height) {
var10.scrollY = var10.scrollHeight - var10.height;
}
if (var10.scrollY < 0) {
var10.scrollY = 0;
}
}
drawInterface(var0, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11);
if (var10.children != null) {
drawInterface(var10.children, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11);
}
InterfaceParent var30 = (InterfaceParent)Client.interfaceParents.get((long)var10.id);
if (var30 != null) {
Canvas.drawWidgets(var30.group, var15, var16, var17, var18, var12, var13, var11);
}
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5);
Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D();
}
if (Client.isResizable || Client.field525[var11] || Client.gameDrawingMode > 1) {
if (var10.type == 0 && !var10.isIf3 && var10.scrollHeight > var10.height) {
Messages.drawScrollBar(var12 + var10.width, var13, var10.scrollY, var10.height, var10.scrollHeight);
}
if (var10.type != 1) {
int var23;
int var24;
int var25;
int var26;
if (var10.type == 2) {
var19 = 0;
for (var20 = 0; var20 < var10.rawHeight; ++var20) {
for (var21 = 0; var21 < var10.rawWidth; ++var21) {
var22 = var21 * (var10.paddingX + 32) + var12;
var23 = var13 + var20 * (var10.paddingY + 32);
if (var19 < 20) {
var22 += var10.inventoryXOffsets[var19];
var23 += var10.inventoryYOffsets[var19];
}
if (var10.itemIds[var19] <= 0) {
if (var10.inventorySprites != null && var19 < 20) {
SpritePixels var46 = var10.getInventorySprite(var19);
if (var46 != null) {
var46.drawTransBgAt(var22, var23);
} else if (Widget.field3045) {
class16.invalidateWidget(var10);
}
}
} else {
boolean var37 = false;
boolean var38 = false;
var26 = var10.itemIds[var19] - 1;
if (var22 + 32 > var2 && var22 < var4 && var23 + 32 > var3 && var23 < var5 || var10 == GameEngine.dragInventoryWidget && var19 == Client.dragItemSlotSource) {
SpritePixels var35;
if (Client.isItemSelected == 1 && var19 == ArchiveDiskAction.selectedItemSlot && var10.id == UserComparator6.selectedItemWidget) {
var35 = Actor.getItemSprite(var26, var10.itemQuantities[var19], 2, 0, 2, false);
} else {
var35 = Actor.getItemSprite(var26, var10.itemQuantities[var19], 1, 3153952, 2, false);
}
if (var35 != null) {
if (var10 == GameEngine.dragInventoryWidget && var19 == Client.dragItemSlotSource) {
var24 = MouseHandler.MouseHandler_x - Client.draggedWidgetX;
var25 = MouseHandler.MouseHandler_y - Client.draggedWidgetY;
if (var24 < 5 && var24 > -5) {
var24 = 0;
}
if (var25 < 5 && var25 > -5) {
var25 = 0;
}
if (Client.itemDragDuration < 5) {
var24 = 0;
var25 = 0;
}
var35.drawTransAt(var24 + var22, var25 + var23, 128);
if (var1 != -1) {
Widget var28 = var0[var1 & 65535];
int var29;
if (var23 + var25 < Rasterizer2D.Rasterizer2D_yClipStart && var28.scrollY > 0) {
var29 = (Rasterizer2D.Rasterizer2D_yClipStart - var23 - var25) * Client.field536 / 3;
if (var29 > Client.field536 * 10) {
var29 = Client.field536 * 10;
}
if (var29 > var28.scrollY) {
var29 = var28.scrollY;
}
var28.scrollY -= var29;
Client.draggedWidgetY += var29;
class16.invalidateWidget(var28);
}
if (var23 + var25 + 32 > Rasterizer2D.Rasterizer2D_yClipEnd && var28.scrollY < var28.scrollHeight - var28.height) {
var29 = (var25 + var23 + 32 - Rasterizer2D.Rasterizer2D_yClipEnd) * Client.field536 / 3;
if (var29 > Client.field536 * 10) {
var29 = Client.field536 * 10;
}
if (var29 > var28.scrollHeight - var28.height - var28.scrollY) {
var29 = var28.scrollHeight - var28.height - var28.scrollY;
}
var28.scrollY += var29;
Client.draggedWidgetY -= var29;
class16.invalidateWidget(var28);
}
}
} else if (var10 == class7.field31 && var19 == Client.field597) {
var35.drawTransAt(var22, var23, 128);
} else {
var35.drawTransBgAt(var22, var23);
}
} else {
class16.invalidateWidget(var10);
}
}
}
++var19;
}
}
} else if (var10.type == 3) {
if (BufferedNetSocket.runCs1(var10)) {
var19 = var10.color2;
if (var10 == VarpDefinition.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) {
var19 = var10.mouseOverColor2;
}
} else {
var19 = var10.color;
if (var10 == VarpDefinition.mousedOverWidgetIf1 && var10.mouseOverColor != 0) {
var19 = var10.mouseOverColor;
}
}
if (var10.fill) {
switch(var10.fillMode.field4369) {
case 1:
Rasterizer2D.Rasterizer2D_fillRectangleGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2);
break;
case 2:
Rasterizer2D.Rasterizer2D_fillRectangleGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparencyTop & 255), 255 - (var10.transparencyBot & 255));
break;
default:
if (var14 == 0) {
Rasterizer2D.Rasterizer2D_fillRectangle(var12, var13, var10.width, var10.height, var19);
} else {
Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255));
}
}
} else if (var14 == 0) {
Rasterizer2D.Rasterizer2D_drawRectangle(var12, var13, var10.width, var10.height, var19);
} else {
Rasterizer2D.Rasterizer2D_drawRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255));
}
} else {
Font var39;
if (var10.type == 4) {
var39 = var10.getFont();
if (var39 == null) {
if (Widget.field3045) {
class16.invalidateWidget(var10);
}
} else {
String var44 = var10.text;
if (BufferedNetSocket.runCs1(var10)) {
var20 = var10.color2;
if (var10 == VarpDefinition.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) {
var20 = var10.mouseOverColor2;
}
if (var10.text2.length() > 0) {
var44 = var10.text2;
}
} else {
var20 = var10.color;
if (var10 == VarpDefinition.mousedOverWidgetIf1 && var10.mouseOverColor != 0) {
var20 = var10.mouseOverColor;
}
}
if (var10.isIf3 && var10.itemId != -1) {
ItemComposition var45 = class87.ItemDefinition_get(var10.itemId);
var44 = var45.name;
if (var44 == null) {
var44 = "null";
}
if ((var45.isStackable == 1 || var10.itemQuantity != 1) && var10.itemQuantity != -1) {
var44 = FloorUnderlayDefinition.colorStartTag(16748608) + var44 + "</col>" + " " + 'x' + class119.formatItemStacks(var10.itemQuantity);
}
}
if (var10 == Client.meslayerContinueWidget) {
var44 = "Please wait...";
var20 = var10.color;
}
if (!var10.isIf3) {
var44 = SecureRandomFuture.method1952(var44, var10);
}
var39.drawLines(var44, var12, var13, var10.width, var10.height, var20, var10.textShadowed ? 0 : -1, var10.textXAlignment, var10.textYAlignment, var10.textLineHeight);
}
} else if (var10.type == 5) {
SpritePixels var40;
if (!var10.isIf3) {
var40 = var10.getSprite(BufferedNetSocket.runCs1(var10));
if (var40 != null) {
var40.drawTransBgAt(var12, var13);
} else if (Widget.field3045) {
class16.invalidateWidget(var10);
}
} else {
if (var10.itemId != -1) {
var40 = Actor.getItemSprite(var10.itemId, var10.itemQuantity, var10.outline, var10.spriteShadow, var10.itemQuantityMode, false);
} else {
var40 = var10.getSprite(false);
}
if (var40 == null) {
if (Widget.field3045) {
class16.invalidateWidget(var10);
}
} else {
var20 = var40.width;
var21 = var40.height;
if (!var10.spriteTiling) {
var22 = var10.width * 4096 / var20;
if (var10.spriteAngle != 0) {
var40.method7350(var10.width / 2 + var12, var10.height / 2 + var13, var10.spriteAngle, var22);
} else if (var14 != 0) {
var40.drawTransScaledAt(var12, var13, var10.width, var10.height, 256 - (var14 & 255));
} else if (var20 == var10.width && var21 == var10.height) {
var40.drawTransBgAt(var12, var13);
} else {
var40.drawScaledAt(var12, var13, var10.width, var10.height);
}
} else {
Rasterizer2D.Rasterizer2D_expandClip(var12, var13, var12 + var10.width, var13 + var10.height);
var22 = (var20 - 1 + var10.width) / var20;
var23 = (var21 - 1 + var10.height) / var21;
for (var24 = 0; var24 < var22; ++var24) {
for (var25 = 0; var25 < var23; ++var25) {
if (var10.spriteAngle != 0) {
var40.method7350(var20 / 2 + var12 + var20 * var24, var21 / 2 + var13 + var21 * var25, var10.spriteAngle, 4096);
} else if (var14 != 0) {
var40.drawTransAt(var12 + var20 * var24, var13 + var25 * var21, 256 - (var14 & 255));
} else {
var40.drawTransBgAt(var12 + var24 * var20, var13 + var21 * var25);
}
}
}
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5);
}
}
}
} else {
ItemComposition var33;
if (var10.type == 6) {
boolean var36 = BufferedNetSocket.runCs1(var10);
if (var36) {
var20 = var10.sequenceId2;
} else {
var20 = var10.sequenceId;
}
Model var41 = null;
var22 = 0;
if (var10.itemId != -1) {
var33 = class87.ItemDefinition_get(var10.itemId);
if (var33 != null) {
var33 = var33.getCountObj(var10.itemQuantity);
var41 = var33.getModel(1);
if (var41 != null) {
var41.calculateBoundsCylinder();
var22 = var41.height / 2;
} else {
class16.invalidateWidget(var10);
}
}
} else if (var10.modelType == 5) {
if (var10.modelId == 0) {
var41 = Client.playerAppearance.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1);
} else {
var41 = class67.localPlayer.getModel();
}
} else if (var20 == -1) {
var41 = var10.getModel((SequenceDefinition)null, -1, var36, class67.localPlayer.appearance);
if (var41 == null && Widget.field3045) {
class16.invalidateWidget(var10);
}
} else {
SequenceDefinition var47 = KitDefinition.SequenceDefinition_get(var20);
var41 = var10.getModel(var47, var10.modelFrame, var36, class67.localPlayer.appearance);
if (var41 == null && Widget.field3045) {
class16.invalidateWidget(var10);
}
}
Rasterizer3D.method4122(var10.width / 2 + var12, var10.height / 2 + var13);
var23 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16;
var24 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16;
if (var41 != null) {
if (!var10.isIf3) {
var41.method4454(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var23, var24);
} else {
var41.calculateBoundsCylinder();
if (var10.modelOrthog) {
var41.method4483(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var23 + var22 + var10.modelOffsetY, var24 + var10.modelOffsetY, var10.modelZoom);
} else {
var41.method4454(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var23 + var22 + var10.modelOffsetY, var24 + var10.modelOffsetY);
}
}
}
Rasterizer3D.Rasterizer3D_method3();
} else {
if (var10.type == 7) {
var39 = var10.getFont();
if (var39 == null) {
if (Widget.field3045) {
class16.invalidateWidget(var10);
}
continue;
}
var20 = 0;
for (var21 = 0; var21 < var10.rawHeight; ++var21) {
for (var22 = 0; var22 < var10.rawWidth; ++var22) {
if (var10.itemIds[var20] > 0) {
var33 = class87.ItemDefinition_get(var10.itemIds[var20] - 1);
String var34;
if (var33.isStackable != 1 && var10.itemQuantities[var20] == 1) {
var34 = FloorUnderlayDefinition.colorStartTag(16748608) + var33.name + "</col>";
} else {
var34 = FloorUnderlayDefinition.colorStartTag(16748608) + var33.name + "</col>" + " " + 'x' + class119.formatItemStacks(var10.itemQuantities[var20]);
}
var25 = var12 + var22 * (var10.paddingX + 115);
var26 = var13 + (var10.paddingY + 12) * var21;
if (var10.textXAlignment == 0) {
var39.draw(var34, var25, var26, var10.color, var10.textShadowed ? 0 : -1);
} else if (var10.textXAlignment == 1) {
var39.drawCentered(var34, var10.width / 2 + var25, var26, var10.color, var10.textShadowed ? 0 : -1);
} else {
var39.drawRightAligned(var34, var25 + var10.width - 1, var26, var10.color, var10.textShadowed ? 0 : -1);
}
}
++var20;
}
}
}
if (var10.type == 8 && var10 == PlayerType.field3661 && Client.field557 == Client.field642) {
var19 = 0;
var20 = 0;
Font var31 = class262.fontPlain12;
String var32 = var10.text;
String var43;
for (var32 = SecureRandomFuture.method1952(var32, var10); var32.length() > 0; var20 = var20 + var31.ascent + 1) {
var24 = var32.indexOf("<br>");
if (var24 != -1) {
var43 = var32.substring(0, var24);
var32 = var32.substring(var24 + 4);
} else {
var43 = var32;
var32 = "";
}
var25 = var31.stringWidth(var43);
if (var25 > var19) {
var19 = var25;
}
}
var19 += 6;
var20 += 7;
var24 = var12 + var10.width - 5 - var19;
var25 = var13 + var10.height + 5;
if (var24 < var12 + 5) {
var24 = var12 + 5;
}
if (var24 + var19 > var4) {
var24 = var4 - var19;
}
if (var20 + var25 > var5) {
var25 = var5 - var20;
}
Rasterizer2D.Rasterizer2D_fillRectangle(var24, var25, var19, var20, 16777120);
Rasterizer2D.Rasterizer2D_drawRectangle(var24, var25, var19, var20, 0);
var32 = var10.text;
var26 = var25 + var31.ascent + 2;
for (var32 = SecureRandomFuture.method1952(var32, var10); var32.length() > 0; var26 = var26 + var31.ascent + 1) {
int var27 = var32.indexOf("<br>");
if (var27 != -1) {
var43 = var32.substring(0, var27);
var32 = var32.substring(var27 + 4);
} else {
var43 = var32;
var32 = "";
}
var31.draw(var43, var24 + 3, var26, 0, -1);
}
}
if (var10.type == 9) {
if (var10.field3081) {
var19 = var12;
var20 = var13 + var10.height;
var21 = var12 + var10.width;
var22 = var13;
} else {
var19 = var12;
var20 = var13;
var21 = var12 + var10.width;
var22 = var13 + var10.height;
}
if (var10.lineWid == 1) {
Rasterizer2D.Rasterizer2D_drawLine(var19, var20, var21, var22, var10.color);
} else {
HitSplatDefinition.method3162(var19, var20, var21, var22, var10.color, var10.lineWid);
}
}
}
}
}
}
}
}
}
for (var10 = 0; var10 < Client.menuOptionsCount; ++var10) {
if (Client.menuOpcodes[var10] == 23) {
Client.menuTargets[var10] = class54.colorStartTag(16777215) + var4;
break;
}
}
}
}
}
}