Files
runelite/runescape-client/src/main/java/Skills.java
2022-02-09 13:21:03 +01:00

852 lines
36 KiB
Java

import net.runelite.mapping.Export;
import net.runelite.mapping.Implements;
import net.runelite.mapping.ObfuscatedName;
import net.runelite.mapping.ObfuscatedSignature;
import net.runelite.rs.ScriptOpcodes;
@ObfuscatedName("ka")
@Implements("Skills")
public class Skills {
@ObfuscatedName("l")
@Export("Skills_enabled")
public static final boolean[] Skills_enabled;
@ObfuscatedName("s")
@Export("Skills_experienceTable")
public static int[] Skills_experienceTable;
static {
Skills_enabled = new boolean[]{true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false}; // L: 5
Skills_experienceTable = new int[99]; // L: 6
int var0 = 0; // L: 9
for (int var1 = 0; var1 < 99; ++var1) { // L: 10
int var2 = var1 + 1; // L: 11
int var3 = (int)((double)var2 + 300.0D * Math.pow(2.0D, (double)var2 / 7.0D)); // L: 12
var0 += var3; // L: 13
Skills_experienceTable[var1] = var0 / 4; // L: 14
}
} // L: 16
@ObfuscatedName("s")
@ObfuscatedSignature(
descriptor = "(CB)C",
garbageValue = "-24"
)
static char method5473(char var0) {
if (var0 == 198) { // L: 95
return 'E';
} else if (var0 == 230) { // L: 96
return 'e';
} else if (var0 == 223) {
return 's'; // L: 97
} else if (var0 == 338) { // L: 98
return 'E';
} else {
return (char)(var0 == 339 ? 'e' : '\u0000'); // L: 99 100
}
}
@ObfuscatedName("o")
@ObfuscatedSignature(
descriptor = "(Ljava/lang/CharSequence;I)I",
garbageValue = "-1901343962"
)
@Export("hashString")
public static int hashString(CharSequence var0) {
int var1 = var0.length(); // L: 141
int var2 = 0; // L: 142
for (int var3 = 0; var3 < var1; ++var3) { // L: 143
var2 = (var2 << 5) - var2 + UserComparator8.charToByteCp1252(var0.charAt(var3));
}
return var2; // L: 144
}
@ObfuscatedName("w")
@ObfuscatedSignature(
descriptor = "(II)Z",
garbageValue = "-887111276"
)
public static boolean method5475(int var0) {
return (var0 >> 30 & 1) != 0; // L: 37
}
@ObfuscatedName("q")
@ObfuscatedSignature(
descriptor = "(III)I",
garbageValue = "158659145"
)
static final int method5471(int var0, int var1) {
int var2 = class10.method103(var0 + 45365, var1 + 91923, 4) - 128 + (class10.method103(var0 + 10294, 37821 + var1, 2) - 128 >> 1) + (class10.method103(var0, var1, 1) - 128 >> 2); // L: 957
var2 = (int)((double)var2 * 0.3D) + 35; // L: 958
if (var2 < 10) { // L: 959
var2 = 10;
} else if (var2 > 60) { // L: 960
var2 = 60;
}
return var2; // L: 961
}
@ObfuscatedName("aa")
@ObfuscatedSignature(
descriptor = "(ILbl;ZI)I",
garbageValue = "656683502"
)
static int method5476(int var0, Script var1, boolean var2) {
int var3;
if (var0 == ScriptOpcodes.OC_NAME) { // L: 3224
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3225
Interpreter.Interpreter_stringStack[++BufferedNetSocket.Interpreter_stringStackSize - 1] = Client.ItemDefinition_get(var3).name; // L: 3226
return 1; // L: 3227
} else {
int var4;
ItemComposition var5;
if (var0 == ScriptOpcodes.OC_OP) { // L: 3229
Interpreter.Interpreter_intStackSize -= 2; // L: 3230
var3 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize]; // L: 3231
var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1]; // L: 3232
var5 = Client.ItemDefinition_get(var3); // L: 3233
if (var4 >= 1 && var4 <= 5 && var5.groundActions[var4 - 1] != null) {
Interpreter.Interpreter_stringStack[++BufferedNetSocket.Interpreter_stringStackSize - 1] = var5.groundActions[var4 - 1]; // L: 3234
} else {
Interpreter.Interpreter_stringStack[++BufferedNetSocket.Interpreter_stringStackSize - 1] = ""; // L: 3235
}
return 1; // L: 3236
} else if (var0 == ScriptOpcodes.OC_IOP) { // L: 3238
Interpreter.Interpreter_intStackSize -= 2; // L: 3239
var3 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize]; // L: 3240
var4 = Interpreter.Interpreter_intStack[Interpreter.Interpreter_intStackSize + 1]; // L: 3241
var5 = Client.ItemDefinition_get(var3); // L: 3242
if (var4 >= 1 && var4 <= 5 && var5.inventoryActions[var4 - 1] != null) { // L: 3243
Interpreter.Interpreter_stringStack[++BufferedNetSocket.Interpreter_stringStackSize - 1] = var5.inventoryActions[var4 - 1];
} else {
Interpreter.Interpreter_stringStack[++BufferedNetSocket.Interpreter_stringStackSize - 1] = ""; // L: 3244
}
return 1; // L: 3245
} else if (var0 == ScriptOpcodes.OC_COST) { // L: 3247
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3248
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Client.ItemDefinition_get(var3).price; // L: 3249
return 1; // L: 3250
} else if (var0 == ScriptOpcodes.OC_STACKABLE) { // L: 3252
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3253
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Client.ItemDefinition_get(var3).isStackable == 1 ? 1 : 0; // L: 3254
return 1; // L: 3255
} else {
ItemComposition var7;
if (var0 == ScriptOpcodes.OC_CERT) { // L: 3257
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3258
var7 = Client.ItemDefinition_get(var3); // L: 3259
if (var7.noteTemplate == -1 && var7.note >= 0) { // L: 3260
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var7.note;
} else {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var3; // L: 3261
}
return 1; // L: 3262
} else if (var0 == ScriptOpcodes.OC_UNCERT) { // L: 3264
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3265
var7 = Client.ItemDefinition_get(var3); // L: 3266
if (var7.noteTemplate >= 0 && var7.note >= 0) { // L: 3267
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var7.note;
} else {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var3; // L: 3268
}
return 1; // L: 3269
} else if (var0 == ScriptOpcodes.OC_MEMBERS) { // L: 3271
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3272
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = Client.ItemDefinition_get(var3).isMembersOnly ? 1 : 0; // L: 3273
return 1; // L: 3274
} else if (var0 == ScriptOpcodes.OC_PLACEHOLDER) { // L: 3276
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3277
var7 = Client.ItemDefinition_get(var3); // L: 3278
if (var7.placeholderTemplate == -1 && var7.placeholder >= 0) { // L: 3279
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var7.placeholder;
} else {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var3; // L: 3280
}
return 1; // L: 3281
} else if (var0 == ScriptOpcodes.OC_UNPLACEHOLDER) { // L: 3283
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3284
var7 = Client.ItemDefinition_get(var3); // L: 3285
if (var7.placeholderTemplate >= 0 && var7.placeholder >= 0) { // L: 3286
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var7.placeholder;
} else {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var3; // L: 3287
}
return 1; // L: 3288
} else if (var0 == ScriptOpcodes.OC_FIND) { // L: 3290
String var6 = Interpreter.Interpreter_stringStack[--BufferedNetSocket.Interpreter_stringStackSize]; // L: 3291
var4 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3292
class16.findItemDefinitions(var6, var4 == 1); // L: 3293
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = FloorDecoration.foundItemIdCount; // L: 3294
return 1; // L: 3295
} else if (var0 != ScriptOpcodes.OC_FINDNEXT) { // L: 3297
if (var0 == ScriptOpcodes.OC_FINDRESET) { // L: 3302
RouteStrategy.foundItemIndex = 0; // L: 3303
return 1; // L: 3304
} else if (var0 == 4213) { // L: 3306
var3 = Interpreter.Interpreter_intStack[--Interpreter.Interpreter_intStackSize]; // L: 3307
var4 = Client.ItemDefinition_get(var3).getShiftClickIndex(); // L: 3308
if (var4 == -1) { // L: 3309
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var4; // L: 3310
} else {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = var4 + 1; // L: 3313
}
return 1; // L: 3315
} else {
return 2; // L: 3317
}
} else {
if (class133.foundItemIds != null && RouteStrategy.foundItemIndex < FloorDecoration.foundItemIdCount) { // L: 3298
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = class133.foundItemIds[++RouteStrategy.foundItemIndex - 1] & '\uffff'; // L: 3299
} else {
Interpreter.Interpreter_intStack[++Interpreter.Interpreter_intStackSize - 1] = -1;
}
return 1; // L: 3300
}
}
}
}
@ObfuscatedName("ii")
@ObfuscatedSignature(
descriptor = "([Ljz;IIIIIIIII)V",
garbageValue = "1177185555"
)
@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); // L: 9758
Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); // L: 9759
for (int var9 = 0; var9 < var0.length; ++var9) { // L: 9760
Widget var10 = var0[var9]; // L: 9761
if (var10 != null && (var10.parentId == var1 || var1 == -1412584499 && var10 == Client.clickedWidget)) { // L: 9762 9763
int var11;
if (var8 == -1) { // L: 9765
Client.rootWidgetXs[Client.rootWidgetCount] = var10.x + var6; // L: 9766
Client.rootWidgetYs[Client.rootWidgetCount] = var7 + var10.y; // L: 9767
Client.rootWidgetWidths[Client.rootWidgetCount] = var10.width; // L: 9768
Client.rootWidgetHeights[Client.rootWidgetCount] = var10.height; // L: 9769
var11 = ++Client.rootWidgetCount - 1; // L: 9770
} else {
var11 = var8; // L: 9772
}
var10.rootIndex = var11; // L: 9773
var10.cycle = Client.cycle; // L: 9774
if (!var10.isIf3 || !class260.isComponentHidden(var10)) { // L: 9775
if (var10.contentType > 0) { // L: 9776
class28.method406(var10);
}
int var12 = var10.x + var6; // L: 9777
int var13 = var7 + var10.y; // L: 9778
int var14 = var10.transparencyTop; // L: 9779
int var15;
int var16;
if (var10 == Client.clickedWidget) { // L: 9780
if (var1 != -1412584499 && !var10.isScrollBar) { // L: 9781
WorldMapElement.field1784 = var0; // L: 9782
WorldMapData_1.field2676 = var6; // L: 9783
ParamComposition.field1938 = var7; // L: 9784
continue; // L: 9785
}
if (Client.isDraggingWidget && Client.field682) { // L: 9787
var15 = MouseHandler.MouseHandler_x; // L: 9788
var16 = MouseHandler.MouseHandler_y; // L: 9789
var15 -= Client.widgetClickX; // L: 9790
var16 -= Client.widgetClickY; // L: 9791
if (var15 < Client.field606) { // L: 9792
var15 = Client.field606;
}
if (var15 + var10.width > Client.field606 + Client.clickedWidgetParent.width) { // L: 9793
var15 = Client.field606 + Client.clickedWidgetParent.width - var10.width;
}
if (var16 < Client.field561) { // L: 9794
var16 = Client.field561;
}
if (var16 + var10.height > Client.field561 + Client.clickedWidgetParent.height) { // L: 9795
var16 = Client.field561 + Client.clickedWidgetParent.height - var10.height;
}
var12 = var15; // L: 9796
var13 = var16; // L: 9797
}
if (!var10.isScrollBar) { // L: 9799
var14 = 128;
}
}
int var17;
int var18;
int var19;
int var20;
int var21;
int var22;
if (var10.type == 2) { // L: 9805
var15 = var2; // L: 9806
var16 = var3; // L: 9807
var17 = var4; // L: 9808
var18 = var5; // L: 9809
} else if (var10.type == 9) { // L: 9811
var19 = var12; // L: 9812
var20 = var13; // L: 9813
var21 = var12 + var10.width; // L: 9814
var22 = var13 + var10.height; // L: 9815
if (var21 < var12) { // L: 9816
var19 = var21; // L: 9818
var21 = var12; // L: 9819
}
if (var22 < var13) { // L: 9821
var20 = var22; // L: 9823
var22 = var13; // L: 9824
}
++var21; // L: 9826
++var22; // L: 9827
var15 = var19 > var2 ? var19 : var2; // L: 9828
var16 = var20 > var3 ? var20 : var3; // L: 9829
var17 = var21 < var4 ? var21 : var4; // L: 9830
var18 = var22 < var5 ? var22 : var5; // L: 9831
} else {
var19 = var12 + var10.width; // L: 9834
var20 = var13 + var10.height; // L: 9835
var15 = var12 > var2 ? var12 : var2; // L: 9836
var16 = var13 > var3 ? var13 : var3; // L: 9837
var17 = var19 < var4 ? var19 : var4; // L: 9838
var18 = var20 < var5 ? var20 : var5; // L: 9839
}
if (!var10.isIf3 || var15 < var17 && var16 < var18) { // L: 9841
if (var10.contentType != 0) { // L: 9842
if (var10.contentType == 1336) { // L: 9843
if (Client.displayFps) { // L: 9844
var13 += 15; // L: 9845
Players.fontPlain12.drawRightAligned("Fps:" + GameEngine.fps, var12 + var10.width, var13, 16776960, -1); // L: 9846
var13 += 15; // L: 9847
Runtime var42 = Runtime.getRuntime(); // L: 9848
var20 = (int)((var42.totalMemory() - var42.freeMemory()) / 1024L); // L: 9849
var21 = 16776960; // L: 9850
if (var20 > 327680 && !Client.isLowDetail) { // L: 9851
var21 = 16711680;
}
Players.fontPlain12.drawRightAligned("Mem:" + var20 + "k", var12 + var10.width, var13, var21, -1); // L: 9852
var13 += 15; // L: 9853
}
continue;
}
if (var10.contentType == 1337) { // L: 9857
Client.viewportX = var12; // L: 9858
Client.viewportY = var13; // L: 9859
class282.drawEntities(var12, var13, var10.width, var10.height); // L: 9860
Client.field713[var10.rootIndex] = true; // L: 9861
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9862
continue; // L: 9863
}
if (var10.contentType == 1338) { // L: 9865
ReflectionCheck.drawMinimap(var10, var12, var13, var11); // L: 9866
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9867
continue; // L: 9868
}
if (var10.contentType == 1339) { // L: 9870
NPCComposition.drawCompass(var10, var12, var13, var11); // L: 9871
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9872
continue; // L: 9873
}
if (var10.contentType == 1400) { // L: 9875
Huffman.worldMap.draw(var12, var13, var10.width, var10.height, Client.cycle); // L: 9876
}
if (var10.contentType == 1401) { // L: 9878
Huffman.worldMap.drawOverview(var12, var13, var10.width, var10.height); // L: 9879
}
if (var10.contentType == 1402) { // L: 9881
Login.loginScreenRunesAnimation.draw(var12, Client.cycle); // L: 9882
}
}
if (var10.type == 0) { // L: 9885
if (!var10.isIf3 && class260.isComponentHidden(var10) && var10 != class242.mousedOverWidgetIf1) { // L: 9886
continue;
}
if (!var10.isIf3) { // L: 9887
if (var10.scrollY > var10.scrollHeight - var10.height) { // L: 9888
var10.scrollY = var10.scrollHeight - var10.height;
}
if (var10.scrollY < 0) { // L: 9889
var10.scrollY = 0;
}
}
drawInterface(var0, var10.id, var15, var16, var17, var18, var12 - var10.scrollX, var13 - var10.scrollY, var11); // L: 9891
if (var10.children != null) { // L: 9892
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); // L: 9893
if (var30 != null) { // L: 9894
UserComparator5.drawWidgets(var30.group, var15, var16, var17, var18, var12, var13, var11); // L: 9895
}
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 9897
Rasterizer3D.Rasterizer3D_setClipFromRasterizer2D(); // L: 9898
}
if (Client.isResizable || Client.field715[var11] || Client.gameDrawingMode > 1) { // L: 9900
if (var10.type == 0 && !var10.isIf3 && var10.scrollHeight > var10.height) { // L: 9901 9902
Interpreter.drawScrollBar(var12 + var10.width, var13, var10.scrollY, var10.height, var10.scrollHeight);
}
if (var10.type != 1) { // L: 9904
int var23;
int var24;
int var25;
int var26;
if (var10.type == 2) { // L: 9907
var19 = 0; // L: 9908
for (var20 = 0; var20 < var10.rawHeight; ++var20) { // L: 9909
for (var21 = 0; var21 < var10.rawWidth; ++var21) { // L: 9910
var22 = var12 + var21 * (var10.paddingX + 32); // L: 9911
var23 = var13 + var20 * (var10.paddingY + 32); // L: 9912
if (var19 < 20) { // L: 9913
var22 += var10.inventoryXOffsets[var19]; // L: 9914
var23 += var10.inventoryYOffsets[var19]; // L: 9915
}
if (var10.itemIds[var19] <= 0) { // L: 9917
if (var10.inventorySprites != null && var19 < 20) { // L: 9962
SpritePixels var46 = var10.getInventorySprite(var19); // L: 9963
if (var46 != null) { // L: 9964
var46.drawTransBgAt(var22, var23);
} else if (Widget.field3262) { // L: 9965
class112.invalidateWidget(var10);
}
}
} else {
boolean var37 = false; // L: 9918
boolean var38 = false; // L: 9919
var26 = var10.itemIds[var19] - 1; // L: 9920
if (var22 + 32 > var2 && var22 < var4 && var23 + 32 > var3 && var23 < var5 || var10 == class20.dragInventoryWidget && var19 == Client.dragItemSlotSource) { // L: 9921
SpritePixels var35;
if (Client.isItemSelected == 1 && var19 == WorldMapAreaData.selectedItemSlot && var10.id == class133.selectedItemWidget) { // L: 9923
var35 = class370.getItemSprite(var26, var10.itemQuantities[var19], 2, 0, 2, false);
} else {
var35 = class370.getItemSprite(var26, var10.itemQuantities[var19], 1, 3153952, 2, false); // L: 9924
}
if (var35 != null) { // L: 9925
if (var10 == class20.dragInventoryWidget && var19 == Client.dragItemSlotSource) { // L: 9926
var24 = MouseHandler.MouseHandler_x - Client.draggedWidgetX; // L: 9927
var25 = MouseHandler.MouseHandler_y - Client.draggedWidgetY; // L: 9928
if (var24 < 5 && var24 > -5) { // L: 9929
var24 = 0;
}
if (var25 < 5 && var25 > -5) { // L: 9930
var25 = 0;
}
if (Client.itemDragDuration < 5) { // L: 9931
var24 = 0; // L: 9932
var25 = 0; // L: 9933
}
var35.drawTransAt(var24 + var22, var23 + var25, 128); // L: 9935
if (var1 != -1) { // L: 9936
Widget var28 = var0[var1 & 65535]; // L: 9937
int var29;
if (var25 + var23 < Rasterizer2D.Rasterizer2D_yClipStart && var28.scrollY > 0) { // L: 9938
var29 = (Rasterizer2D.Rasterizer2D_yClipStart - var23 - var25) * Client.field566 / 3; // L: 9939
if (var29 > Client.field566 * 10) { // L: 9940
var29 = Client.field566 * 10;
}
if (var29 > var28.scrollY) { // L: 9941
var29 = var28.scrollY;
}
var28.scrollY -= var29; // L: 9942
Client.draggedWidgetY += var29; // L: 9943
class112.invalidateWidget(var28); // L: 9944
}
if (var23 + var25 + 32 > Rasterizer2D.Rasterizer2D_yClipEnd && var28.scrollY < var28.scrollHeight - var28.height) { // L: 9946
var29 = (var25 + var23 + 32 - Rasterizer2D.Rasterizer2D_yClipEnd) * Client.field566 / 3; // L: 9947
if (var29 > Client.field566 * 10) { // L: 9948
var29 = Client.field566 * 10;
}
if (var29 > var28.scrollHeight - var28.height - var28.scrollY) { // L: 9949
var29 = var28.scrollHeight - var28.height - var28.scrollY;
}
var28.scrollY += var29; // L: 9950
Client.draggedWidgetY -= var29; // L: 9951
class112.invalidateWidget(var28); // L: 9952
}
}
} else if (var10 == WorldMapSectionType.field2720 && var19 == Client.field611) { // L: 9956
var35.drawTransAt(var22, var23, 128);
} else {
var35.drawTransBgAt(var22, var23); // L: 9957
}
} else {
class112.invalidateWidget(var10); // L: 9959
}
}
}
++var19; // L: 9967
}
}
} else if (var10.type == 3) { // L: 9972
if (SceneTilePaint.runCs1(var10)) { // L: 9974
var19 = var10.color2; // L: 9975
if (var10 == class242.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { // L: 9976
var19 = var10.mouseOverColor2;
}
} else {
var19 = var10.color; // L: 9979
if (var10 == class242.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { // L: 9980
var19 = var10.mouseOverColor;
}
}
if (var10.fill) { // L: 9982
switch(var10.fillMode.field4590) { // L: 9983
case 1:
Rasterizer2D.Rasterizer2D_fillRectangleGradient(var12, var13, var10.width, var10.height, var10.color, var10.color2); // L: 9992
break; // L: 9993
case 2:
Rasterizer2D.Rasterizer2D_fillRectangleGradientAlpha(var12, var13, var10.width, var10.height, var10.color, var10.color2, 255 - (var10.transparencyTop & 255), 255 - (var10.transparencyBot & 255)); // L: 9989
break; // L: 9990
default:
if (var14 == 0) { // L: 9985
Rasterizer2D.Rasterizer2D_fillRectangle(var12, var13, var10.width, var10.height, var19);
} else {
Rasterizer2D.Rasterizer2D_fillRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); // L: 9986
}
}
} else if (var14 == 0) { // L: 9997
Rasterizer2D.Rasterizer2D_drawRectangle(var12, var13, var10.width, var10.height, var19);
} else {
Rasterizer2D.Rasterizer2D_drawRectangleAlpha(var12, var13, var10.width, var10.height, var19, 256 - (var14 & 255)); // L: 9998
}
} else {
Font var39;
if (var10.type == 4) { // L: 10002
var39 = var10.getFont(); // L: 10003
if (var39 == null) { // L: 10004
if (Widget.field3262) { // L: 10005
class112.invalidateWidget(var10);
}
} else {
String var44 = var10.text; // L: 10009
if (SceneTilePaint.runCs1(var10)) { // L: 10010
var20 = var10.color2; // L: 10011
if (var10 == class242.mousedOverWidgetIf1 && var10.mouseOverColor2 != 0) { // L: 10012
var20 = var10.mouseOverColor2;
}
if (var10.text2.length() > 0) { // L: 10013
var44 = var10.text2;
}
} else {
var20 = var10.color; // L: 10016
if (var10 == class242.mousedOverWidgetIf1 && var10.mouseOverColor != 0) { // L: 10017
var20 = var10.mouseOverColor;
}
}
if (var10.isIf3 && var10.itemId != -1) { // L: 10019
ItemComposition var45 = Client.ItemDefinition_get(var10.itemId); // L: 10020
var44 = var45.name; // L: 10021
if (var44 == null) { // L: 10022
var44 = "null";
}
if ((var45.isStackable == 1 || var10.itemQuantity != 1) && var10.itemQuantity != -1) { // L: 10023
var44 = LoginScreenAnimation.colorStartTag(16748608) + var44 + "</col>" + " " + 'x' + Widget.formatItemStacks(var10.itemQuantity);
}
}
if (var10 == Client.meslayerContinueWidget) { // L: 10025
var44 = "Please wait..."; // L: 10026
var20 = var10.color; // L: 10027
}
if (!var10.isIf3) { // L: 10029
var44 = class124.method2725(var44, var10);
}
var39.drawLines(var44, var12, var13, var10.width, var10.height, var20, var10.textShadowed ? 0 : -1, var10.textXAlignment, var10.textYAlignment, var10.textLineHeight); // L: 10030
}
} else if (var10.type == 5) { // L: 10033
SpritePixels var40;
if (!var10.isIf3) { // L: 10034
var40 = var10.getSprite(SceneTilePaint.runCs1(var10)); // L: 10035
if (var40 != null) { // L: 10036
var40.drawTransBgAt(var12, var13);
} else if (Widget.field3262) { // L: 10037
class112.invalidateWidget(var10);
}
} else {
if (var10.itemId != -1) { // L: 10041
var40 = class370.getItemSprite(var10.itemId, var10.itemQuantity, var10.outline, var10.spriteShadow, var10.itemQuantityMode, false);
} else {
var40 = var10.getSprite(false); // L: 10042
}
if (var40 == null) { // L: 10043
if (Widget.field3262) { // L: 10067
class112.invalidateWidget(var10);
}
} else {
var20 = var40.width; // L: 10044
var21 = var40.height; // L: 10045
if (!var10.spriteTiling) { // L: 10046
var22 = var10.width * 4096 / var20; // L: 10060
if (var10.spriteAngle != 0) { // L: 10061
var40.method7802(var10.width / 2 + var12, var10.height / 2 + var13, var10.spriteAngle, var22);
} else if (var14 != 0) { // L: 10062
var40.drawTransScaledAt(var12, var13, var10.width, var10.height, 256 - (var14 & 255));
} else if (var20 == var10.width && var21 == var10.height) { // L: 10063
var40.drawTransBgAt(var12, var13); // L: 10064
} else {
var40.drawScaledAt(var12, var13, var10.width, var10.height);
}
} else {
Rasterizer2D.Rasterizer2D_expandClip(var12, var13, var12 + var10.width, var13 + var10.height); // L: 10047
var22 = (var20 - 1 + var10.width) / var20; // L: 10048
var23 = (var21 - 1 + var10.height) / var21; // L: 10049
for (var24 = 0; var24 < var22; ++var24) { // L: 10050
for (var25 = 0; var25 < var23; ++var25) { // L: 10051
if (var10.spriteAngle != 0) { // L: 10052
var40.method7802(var20 / 2 + var12 + var24 * var20, var21 / 2 + var13 + var21 * var25, var10.spriteAngle, 4096);
} else if (var14 != 0) { // L: 10053
var40.drawTransAt(var12 + var24 * var20, var13 + var25 * var21, 256 - (var14 & 255));
} else {
var40.drawTransBgAt(var12 + var20 * var24, var13 + var21 * var25); // L: 10054
}
}
}
Rasterizer2D.Rasterizer2D_setClip(var2, var3, var4, var5); // L: 10057
}
}
}
} else {
ItemComposition var33;
if (var10.type == 6) { // L: 10071
boolean var36 = SceneTilePaint.runCs1(var10); // L: 10072
if (var36) { // L: 10074
var20 = var10.sequenceId2;
} else {
var20 = var10.sequenceId; // L: 10075
}
Model var41 = null; // L: 10076
var22 = 0; // L: 10077
if (var10.itemId != -1) { // L: 10078
var33 = Client.ItemDefinition_get(var10.itemId); // L: 10079
if (var33 != null) { // L: 10080
var33 = var33.getCountObj(var10.itemQuantity); // L: 10081
var41 = var33.getModel(1); // L: 10082
if (var41 != null) { // L: 10083
var41.calculateBoundsCylinder(); // L: 10084
var22 = var41.height / 2; // L: 10085
} else {
class112.invalidateWidget(var10); // L: 10087
}
}
} else if (var10.modelType == 5) { // L: 10090
if (var10.modelId == 0) { // L: 10091
var41 = Client.playerAppearance.getModel((SequenceDefinition)null, -1, (SequenceDefinition)null, -1);
} else {
var41 = WorldMapSprite.localPlayer.getModel(); // L: 10092
}
} else if (var20 == -1) { // L: 10094
var41 = var10.getModel((SequenceDefinition)null, -1, var36, WorldMapSprite.localPlayer.appearance); // L: 10095
if (var41 == null && Widget.field3262) { // L: 10096
class112.invalidateWidget(var10);
}
} else {
SequenceDefinition var47 = class78.SequenceDefinition_get(var20); // L: 10099
var41 = var10.getModel(var47, var10.modelFrame, var36, WorldMapSprite.localPlayer.appearance); // L: 10100
if (var41 == null && Widget.field3262) { // L: 10101
class112.invalidateWidget(var10);
}
}
Rasterizer3D.method3787(var10.width / 2 + var12, var10.height / 2 + var13); // L: 10103
var23 = Rasterizer3D.Rasterizer3D_sine[var10.modelAngleX] * var10.modelZoom >> 16; // L: 10104
var24 = Rasterizer3D.Rasterizer3D_cosine[var10.modelAngleX] * var10.modelZoom >> 16; // L: 10105
if (var41 != null) { // L: 10106
if (!var10.isIf3) { // L: 10107
var41.method4215(0, var10.modelAngleY, 0, var10.modelAngleX, 0, var23, var24);
} else {
var41.calculateBoundsCylinder(); // L: 10109
if (var10.modelOrthog) { // L: 10110
var41.method4154(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var22 + var23 + var10.modelOffsetY, var24 + var10.modelOffsetY, var10.modelZoom);
} else {
var41.method4215(0, var10.modelAngleY, var10.modelAngleZ, var10.modelAngleX, var10.modelOffsetX, var22 + var23 + var10.modelOffsetY, var24 + var10.modelOffsetY); // L: 10111
}
}
}
Rasterizer3D.Rasterizer3D_method3(); // L: 10114
} else {
if (var10.type == 7) { // L: 10117
var39 = var10.getFont(); // L: 10118
if (var39 == null) { // L: 10119
if (Widget.field3262) { // L: 10120
class112.invalidateWidget(var10);
}
continue;
}
var20 = 0; // L: 10123
for (var21 = 0; var21 < var10.rawHeight; ++var21) { // L: 10124
for (var22 = 0; var22 < var10.rawWidth; ++var22) { // L: 10125
if (var10.itemIds[var20] > 0) { // L: 10126
var33 = Client.ItemDefinition_get(var10.itemIds[var20] - 1); // L: 10127
String var34;
if (var33.isStackable != 1 && var10.itemQuantities[var20] == 1) { // L: 10129
var34 = LoginScreenAnimation.colorStartTag(16748608) + var33.name + "</col>"; // L: 10130
} else {
var34 = LoginScreenAnimation.colorStartTag(16748608) + var33.name + "</col>" + " " + 'x' + Widget.formatItemStacks(var10.itemQuantities[var20]);
}
var25 = var12 + var22 * (var10.paddingX + 115); // L: 10131
var26 = var13 + (var10.paddingY + 12) * var21; // L: 10132
if (var10.textXAlignment == 0) { // L: 10133
var39.draw(var34, var25, var26, var10.color, var10.textShadowed ? 0 : -1);
} else if (var10.textXAlignment == 1) { // L: 10134
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); // L: 10135
}
}
++var20; // L: 10137
}
}
}
if (var10.type == 8 && var10 == class126.field1516 && Client.field734 == Client.field506) { // L: 10141 10142
var19 = 0; // L: 10143
var20 = 0; // L: 10144
Font var31 = Players.fontPlain12; // L: 10145
String var32 = var10.text; // L: 10146
String var43;
for (var32 = class124.method2725(var32, var10); var32.length() > 0; var20 = var20 + var31.ascent + 1) { // L: 10148 10149 10161
var24 = var32.indexOf("<br>"); // L: 10150
if (var24 != -1) { // L: 10151
var43 = var32.substring(0, var24); // L: 10152
var32 = var32.substring(var24 + 4); // L: 10153
} else {
var43 = var32; // L: 10156
var32 = ""; // L: 10157
}
var25 = var31.stringWidth(var43); // L: 10159
if (var25 > var19) { // L: 10160
var19 = var25;
}
}
var19 += 6; // L: 10163
var20 += 7; // L: 10164
var24 = var12 + var10.width - 5 - var19; // L: 10165
var25 = var13 + var10.height + 5; // L: 10166
if (var24 < var12 + 5) { // L: 10167
var24 = var12 + 5;
}
if (var19 + var24 > var4) { // L: 10168
var24 = var4 - var19;
}
if (var20 + var25 > var5) { // L: 10169
var25 = var5 - var20;
}
Rasterizer2D.Rasterizer2D_fillRectangle(var24, var25, var19, var20, 16777120); // L: 10170
Rasterizer2D.Rasterizer2D_drawRectangle(var24, var25, var19, var20, 0); // L: 10171
var32 = var10.text; // L: 10172
var26 = var25 + var31.ascent + 2; // L: 10173
for (var32 = class124.method2725(var32, var10); var32.length() > 0; var26 = var26 + var31.ascent + 1) { // L: 10174 10175 10186
int var27 = var32.indexOf("<br>"); // L: 10176
if (var27 != -1) { // L: 10177
var43 = var32.substring(0, var27); // L: 10178
var32 = var32.substring(var27 + 4); // L: 10179
} else {
var43 = var32; // L: 10182
var32 = ""; // L: 10183
}
var31.draw(var43, var24 + 3, var26, 0, -1); // L: 10185
}
}
if (var10.type == 9) { // L: 10190
if (var10.field3298) { // L: 10195
var19 = var12; // L: 10196
var20 = var13 + var10.height; // L: 10197
var21 = var12 + var10.width; // L: 10198
var22 = var13; // L: 10199
} else {
var19 = var12; // L: 10202
var20 = var13; // L: 10203
var21 = var12 + var10.width; // L: 10204
var22 = var13 + var10.height; // L: 10205
}
if (var10.lineWid == 1) { // L: 10207
Rasterizer2D.Rasterizer2D_drawLine(var19, var20, var21, var22, var10.color); // L: 10208
} else {
WorldMapLabel.method4763(var19, var20, var21, var22, var10.color, var10.lineWid); // L: 10211
}
}
}
}
}
}
}
}
}
}
}
} // L: 10216
}