import net.runelite.mapping.Export; import net.runelite.mapping.ObfuscatedGetter; import net.runelite.mapping.ObfuscatedName; import net.runelite.mapping.ObfuscatedSignature; @ObfuscatedName("at") public class class39 extends class21 { @ObfuscatedName("gu") @ObfuscatedSignature( signature = "[Lln;" ) @Export("mapDotSprites") static Sprite[] mapDotSprites; @ObfuscatedName("z") @ObfuscatedGetter( intValue = -521428531 ) int field318; @ObfuscatedName("j") @ObfuscatedGetter( intValue = 686082379 ) int field319; @ObfuscatedName("s") @ObfuscatedGetter( intValue = 1610203543 ) int field321; @ObfuscatedName("t") @ObfuscatedGetter( intValue = 2053974369 ) int field323; @ObfuscatedName("m") @ObfuscatedSignature( signature = "(Lgr;I)V", garbageValue = "101973298" ) void method714(Buffer var1) { int var2 = var1.readUnsignedByte(); if (var2 != class31.field254.field255) { throw new IllegalStateException(""); } else { super.field148 = var1.readUnsignedByte(); super.field156 = var1.readUnsignedByte(); super.field149 = var1.readUnsignedShort(); super.field146 = var1.readUnsignedShort(); this.field318 = var1.readUnsignedByte(); this.field319 = var1.readUnsignedByte(); super.field159 = var1.readUnsignedShort(); super.field147 = var1.readUnsignedShort(); this.field321 = var1.readUnsignedByte(); this.field323 = var1.readUnsignedByte(); super.field150 = var1.method51(); super.field152 = var1.method51(); } } @ObfuscatedName("f") @ObfuscatedSignature( signature = "(Lgr;I)V", garbageValue = "1937224298" ) void vmethod715(Buffer var1) { super.field156 = Math.min(super.field156, 4); super.field151 = new short[1][64][64]; super.field145 = new short[super.field156][64][64]; super.field154 = new byte[super.field156][64][64]; super.field155 = new byte[super.field156][64][64]; super.field144 = new WorldMapDecoration[super.field156][64][64][]; int var2 = var1.readUnsignedByte(); if (var2 != class30.field247.field248) { throw new IllegalStateException(""); } else { int var3 = var1.readUnsignedByte(); int var4 = var1.readUnsignedByte(); int var5 = var1.readUnsignedByte(); int var6 = var1.readUnsignedByte(); if (var3 == super.field159 && var4 == super.field147 && var5 == this.field321 && var6 == this.field323) { for (int var7 = 0; var7 < 8; ++var7) { for (int var8 = 0; var8 < 8; ++var8) { this.method259(var7 + this.field321 * 8, var8 + this.field323 * 8, var1); } } } else { throw new IllegalStateException(""); } } } @ObfuscatedName("q") @ObfuscatedSignature( signature = "(I)I", garbageValue = "-2074777367" ) int method717() { return this.field318; } @ObfuscatedName("w") @ObfuscatedSignature( signature = "(I)I", garbageValue = "-914799830" ) int method718() { return this.field319; } @ObfuscatedName("o") @ObfuscatedSignature( signature = "(B)I", garbageValue = "20" ) int method719() { return this.field321; } @ObfuscatedName("au") @ObfuscatedSignature( signature = "(I)I", garbageValue = "793815646" ) int method720() { return this.field323; } public int hashCode() { return super.field159 | super.field147 << 8 | this.field321 << 16 | this.field323 << 24; } public boolean equals(Object var1) { if (!(var1 instanceof class39)) { return false; } else { class39 var2 = (class39)var1; return var2.field159 == super.field159 && var2.field147 == super.field147 ? this.field321 == var2.field321 && var2.field323 == this.field323 : false; } } @ObfuscatedName("gr") @ObfuscatedSignature( signature = "(Lbz;IIIIIB)V", garbageValue = "-1" ) @Export("drawActor2d") static final void drawActor2d(Actor var0, int var1, int var2, int var3, int var4, int var5) { if (var0 != null && var0.isVisible()) { if (var0 instanceof NPC) { NPCDefinition var6 = ((NPC)var0).definition; if (var6.transforms != null) { var6 = var6.transform(); } if (var6 == null) { return; } } int var77 = Players.Players_count; int[] var7 = Players.Players_indices; byte var8 = 0; Player var9; if (var1 < var77 && var0.playerCycle == Client.cycle) { var9 = (Player)var0; boolean var10; if (Client.field210 == 0) { var10 = false; } else if (var9 != Canvas.localPlayer) { boolean var11 = (Client.field210 & 4) != 0; boolean var12 = var11; boolean var13; if (!var11) { var13 = (Client.field210 & 1) != 0; var12 = var13 && var9.isFriend(); } var13 = var12; if (!var12) { boolean var14 = (Client.field210 & 2) != 0; var13 = var14 && var9.isClanMember(); } var10 = var13; } else { var10 = class14.method169(); } if (var10) { Player var79 = (Player)var0; if (var1 < var77) { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight + 15); AbstractFont var81 = (AbstractFont)Client.fontsMap.get(FontName.FontName_plain12); byte var84 = 9; var81.drawCentered(var79.username.getName(), var2 + Client.viewportTempX, var3 + Client.viewportTempY - var84, 16777215, 0); var8 = 18; } } } int var78 = -2; int var24; int var25; int var80; int var82; int var85; if (!var0.healthBars.isEmpty()) { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight + 15); for (HealthBar var83 = (HealthBar)var0.healthBars.last(); var83 != null; var83 = (HealthBar)var0.healthBars.previous()) { HealthBarUpdate var15 = var83.get(Client.cycle); if (var15 == null) { if (var83.isEmpty()) { var83.remove(); } } else { HealthBarDefinition var16 = var83.definition; Sprite var17 = var16.getSprite2(); Sprite var18 = var16.getSprite1(); int var19 = 0; if (var17 != null && var18 != null) { if (var16.widthPadding * 2 < var18.subWidth) { var19 = var16.widthPadding; } var80 = var18.subWidth - var19 * 2; } else { var80 = var16.width; } int var20 = 255; boolean var21 = true; int var22 = Client.cycle - var15.cycle; int var23 = var80 * var15.health2 / var16.width; if (var15.cycleOffset > var22) { var24 = var16.int4 == 0 ? 0 : var16.int4 * (var22 / var16.int4); var82 = var80 * var15.health / var16.width; var25 = var24 * (var23 - var82) / var15.cycleOffset + var82; } else { var25 = var23; var24 = var15.cycleOffset + var16.int5 - var22; if (var16.int3 >= 0) { var20 = (var24 << 8) / (var16.int5 - var16.int3); } } if (var15.health2 > 0 && var25 < 1) { var25 = 1; } if (var17 != null && var18 != null) { if (var80 == var25) { var25 += var19 * 2; } else { var25 += var19; } var24 = var17.subHeight; var78 += var24; var82 = var2 + Client.viewportTempX - (var80 >> 1); var85 = var3 + Client.viewportTempY - var78; var82 -= var19; if (var20 >= 0 && var20 < 255) { var17.method310(var82, var85, var20); Rasterizer2D.Rasterizer2D_expandClip(var82, var85, var82 + var25, var85 + var24); var18.method310(var82, var85, var20); } else { var17.drawAt2(var82, var85); Rasterizer2D.Rasterizer2D_expandClip(var82, var85, var25 + var82, var24 + var85); var18.drawAt2(var82, var85); } Rasterizer2D.Rasterizer2D_setClip(var2, var3, var2 + var4, var3 + var5); var78 += 2; } else { var78 += 5; if (Client.viewportTempX > -1) { var24 = var2 + Client.viewportTempX - (var80 >> 1); var82 = var3 + Client.viewportTempY - var78; Rasterizer2D.Rasterizer2D_fillRectangle(var24, var82, var25, 5, 65280); Rasterizer2D.Rasterizer2D_fillRectangle(var24 + var25, var82, var80 - var25, 5, 16711680); } var78 += 2; } } } } if (var78 == -2) { var78 += 7; } var78 += var8; if (var1 < var77) { var9 = (Player)var0; if (var9.isHidden) { return; } if (var9.headIconPk != -1 || var9.headIconPrayer != -1) { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight + 15); if (Client.viewportTempX > -1) { if (var9.headIconPk != -1) { var78 += 25; class15.headIconPkSprites[var9.headIconPk].drawAt2(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var78); } if (var9.headIconPrayer != -1) { var78 += 25; ClientPreferences.headIconPrayerSprites[var9.headIconPrayer].drawAt2(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var78); } } } if (var1 >= 0 && Client.hintArrowType == 10 && var7[var1] == Client.hintArrowPlayerIndex) { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight + 15); if (Client.viewportTempX > -1) { var78 += Player.headIconHintSprites[1].subHeight; Player.headIconHintSprites[1].drawAt2(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - var78); } } } else { NPCDefinition var86 = ((NPC)var0).definition; if (var86.transforms != null) { var86 = var86.transform(); } if (var86.headIconPrayer >= 0 && var86.headIconPrayer < ClientPreferences.headIconPrayerSprites.length) { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight + 15); if (Client.viewportTempX > -1) { ClientPreferences.headIconPrayerSprites[var86.headIconPrayer].drawAt2(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 30); } } if (Client.hintArrowType == 1 && Client.npcIndices[var1 - var77] == Client.hintArrowNpcIndex && Client.cycle % 20 < 10) { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight + 15); if (Client.viewportTempX > -1) { Player.headIconHintSprites[0].drawAt2(var2 + Client.viewportTempX - 12, var3 + Client.viewportTempY - 28); } } } if (var0.overheadText != null && (var1 >= var77 || !var0.field11 && (Client.publicChatMode == 4 || !var0.isAutoChatting && (Client.publicChatMode == 0 || Client.publicChatMode == 3 || Client.publicChatMode == 1 && ((Player)var0).isFriend())))) { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight); if (Client.viewportTempX > -1 && Client.overheadTextCount < Client.overheadTextLimit) { Client.overheadTextXOffsets[Client.overheadTextCount] = class2.fontBold12.stringWidth(var0.overheadText) / 2; Client.overheadTextAscents[Client.overheadTextCount] = class2.fontBold12.ascent; Client.overheadTextXs[Client.overheadTextCount] = Client.viewportTempX; Client.overheadTextYs[Client.overheadTextCount] = Client.viewportTempY; Client.overheadTextColors[Client.overheadTextCount] = var0.overheadTextColor; Client.overheadTextEffects[Client.overheadTextCount] = var0.overheadTextEffect; Client.overheadTextCyclesRemaining[Client.overheadTextCount] = var0.overheadTextCyclesRemaining; Client.overheadText[Client.overheadTextCount] = var0.overheadText; ++Client.overheadTextCount; } } for (int var88 = 0; var88 < 4; ++var88) { int var87 = var0.hitSplatCycles[var88]; int var89 = var0.hitSplatTypes[var88]; HitSplatDefinition var90 = null; int var91 = 0; if (var89 >= 0) { if (var87 <= Client.cycle) { continue; } var90 = LoginScreenAnimation.getHitSplatDefinition(var0.hitSplatTypes[var88]); var91 = var90.field387; if (var90 != null && var90.transforms != null) { var90 = var90.transform(); if (var90 == null) { var0.hitSplatCycles[var88] = -1; continue; } } } else if (var87 < 0) { continue; } var80 = var0.hitSplatTypes2[var88]; HitSplatDefinition var92 = null; if (var80 >= 0) { var92 = LoginScreenAnimation.getHitSplatDefinition(var80); if (var92 != null && var92.transforms != null) { var92 = var92.transform(); } } if (var87 - var91 <= Client.cycle) { if (var90 == null) { var0.hitSplatCycles[var88] = -1; } else { DevicePcmPlayerProvider.method840(var0, var0.defaultHeight / 2); if (Client.viewportTempX > -1) { if (var88 == 1) { Client.viewportTempY -= 20; } if (var88 == 2) { Client.viewportTempX -= 15; Client.viewportTempY -= 10; } if (var88 == 3) { Client.viewportTempX += 15; Client.viewportTempY -= 10; } Sprite var93 = null; Sprite var94 = null; Sprite var95 = null; Sprite var96 = null; var82 = 0; var85 = 0; var24 = 0; var25 = 0; int var26 = 0; int var27 = 0; int var28 = 0; int var29 = 0; Sprite var30 = null; Sprite var31 = null; Sprite var32 = null; Sprite var33 = null; int var34 = 0; int var35 = 0; int var36 = 0; int var37 = 0; int var38 = 0; int var39 = 0; int var40 = 0; int var41 = 0; int var42 = 0; var93 = var90.method123(); int var43; if (var93 != null) { var82 = var93.subWidth; var43 = var93.subHeight; if (var43 > var42) { var42 = var43; } var26 = var93.yOffset; } var94 = var90.method124(); if (var94 != null) { var85 = var94.subWidth; var43 = var94.subHeight; if (var43 > var42) { var42 = var43; } var27 = var94.yOffset; } var95 = var90.method125(); if (var95 != null) { var24 = var95.subWidth; var43 = var95.subHeight; if (var43 > var42) { var42 = var43; } var28 = var95.yOffset; } var96 = var90.method126(); if (var96 != null) { var25 = var96.subWidth; var43 = var96.subHeight; if (var43 > var42) { var42 = var43; } var29 = var96.yOffset; } if (var92 != null) { var30 = var92.method123(); if (var30 != null) { var34 = var30.subWidth; var43 = var30.subHeight; if (var43 > var42) { var42 = var43; } var38 = var30.yOffset; } var31 = var92.method124(); if (var31 != null) { var35 = var31.subWidth; var43 = var31.subHeight; if (var43 > var42) { var42 = var43; } var39 = var31.yOffset; } var32 = var92.method125(); if (var32 != null) { var36 = var32.subWidth; var43 = var32.subHeight; if (var43 > var42) { var42 = var43; } var40 = var32.yOffset; } var33 = var92.method126(); if (var33 != null) { var37 = var33.subWidth; var43 = var33.subHeight; if (var43 > var42) { var42 = var43; } var41 = var33.yOffset; } } Font var44 = var90.getFont(); if (var44 == null) { var44 = ScriptEvent.fontPlain11; } Font var45; if (var92 != null) { var45 = var92.getFont(); if (var45 == null) { var45 = ScriptEvent.fontPlain11; } } else { var45 = ScriptEvent.fontPlain11; } String var46 = null; String var47 = null; boolean var48 = false; int var49 = 0; var46 = var90.getString(var0.hitSplatValues[var88]); int var50 = var44.stringWidth(var46); if (var92 != null) { var47 = var92.getString(var0.hitSplatValues2[var88]); var49 = var45.stringWidth(var47); } int var51 = 0; int var52 = 0; if (var85 > 0) { if (var95 == null && var96 == null) { var51 = 1; } else { var51 = var50 / var85 + 1; } } if (var92 != null && var35 > 0) { if (var32 == null && var33 == null) { var52 = 1; } else { var52 = var49 / var35 + 1; } } int var53 = 0; int var54 = var53; if (var82 > 0) { var53 += var82; } var53 += 2; int var55 = var53; if (var24 > 0) { var53 += var24; } int var56 = var53; int var57 = var53; int var58; if (var85 > 0) { var58 = var85 * var51; var53 += var58; var57 += (var58 - var50) / 2; } else { var53 += var50; } var58 = var53; if (var25 > 0) { var53 += var25; } int var59 = 0; int var60 = 0; int var61 = 0; int var62 = 0; int var63 = 0; int var64; if (var92 != null) { var53 += 2; var59 = var53; if (var34 > 0) { var53 += var34; } var53 += 2; var60 = var53; if (var36 > 0) { var53 += var36; } var61 = var53; var63 = var53; if (var35 > 0) { var64 = var35 * var52; var53 += var64; var63 += (var64 - var49) / 2; } else { var53 += var49; } var62 = var53; if (var37 > 0) { var53 += var37; } } var64 = var0.hitSplatCycles[var88] - Client.cycle; int var65 = var90.field392 - var64 * var90.field392 / var90.field387; int var66 = var64 * var90.field393 / var90.field387 + -var90.field393; int var67 = var65 + (var2 + Client.viewportTempX - (var53 >> 1)); int var68 = var66 + (var3 + Client.viewportTempY - 12); int var69 = var68; int var70 = var42 + var68; int var71 = var68 + var90.field397 + 15; int var72 = var71 - var44.maxAscent; int var73 = var71 + var44.maxDescent; if (var72 < var68) { var69 = var72; } if (var73 > var70) { var70 = var73; } int var74 = 0; int var75; int var76; if (var92 != null) { var74 = var68 + var92.field397 + 15; var75 = var74 - var45.maxAscent; var76 = var74 + var45.maxDescent; if (var75 < var69) { } if (var76 > var70) { } } var75 = 255; if (var90.field394 >= 0) { var75 = (var64 << 8) / (var90.field387 - var90.field394); } if (var75 >= 0 && var75 < 255) { if (var93 != null) { var93.method310(var54 + var67 - var26, var68, var75); } if (var95 != null) { var95.method310(var67 + var55 - var28, var68, var75); } if (var94 != null) { for (var76 = 0; var76 < var51; ++var76) { var94.method310(var85 * var76 + (var67 + var56 - var27), var68, var75); } } if (var96 != null) { var96.method310(var58 + var67 - var29, var68, var75); } var44.drawAlpha(var46, var57 + var67, var71, var90.field386, 0, var75); if (var92 != null) { if (var30 != null) { var30.method310(var67 + var59 - var38, var68, var75); } if (var32 != null) { var32.method310(var67 + var60 - var40, var68, var75); } if (var31 != null) { for (var76 = 0; var76 < var52; ++var76) { var31.method310(var76 * var35 + (var61 + var67 - var39), var68, var75); } } if (var33 != null) { var33.method310(var62 + var67 - var41, var68, var75); } var45.drawAlpha(var47, var63 + var67, var74, var92.field386, 0, var75); } } else { if (var93 != null) { var93.drawAt2(var54 + var67 - var26, var68); } if (var95 != null) { var95.drawAt2(var67 + var55 - var28, var68); } if (var94 != null) { for (var76 = 0; var76 < var51; ++var76) { var94.drawAt2(var85 * var76 + (var56 + var67 - var27), var68); } } if (var96 != null) { var96.drawAt2(var58 + var67 - var29, var68); } var44.draw(var46, var57 + var67, var71, var90.field386 | -16777216, 0); if (var92 != null) { if (var30 != null) { var30.drawAt2(var67 + var59 - var38, var68); } if (var32 != null) { var32.drawAt2(var60 + var67 - var40, var68); } if (var31 != null) { for (var76 = 0; var76 < var52; ++var76) { var31.drawAt2(var76 * var35 + (var67 + var61 - var39), var68); } } if (var33 != null) { var33.drawAt2(var62 + var67 - var41, var68); } var45.draw(var47, var63 + var67, var74, var92.field386 | -16777216, 0); } } } } } } } } @ObfuscatedName("hv") @ObfuscatedSignature( signature = "(IIB)V", garbageValue = "3" ) @Export("drawMenuActionTextAt") static final void drawMenuActionTextAt(int var0, int var1) { if ((Client.menuOptionsCount >= 2 || Client.isItemSelected != 0 || Client.isSpellSelected) && Client.showMouseOverText) { int var2 = Client.menuOptionsCount - 1; String var3; if (Client.isItemSelected == 1 && Client.menuOptionsCount < 2) { var3 = "Use " + Client.selectedItemName + " ->"; } else if (Client.isSpellSelected && Client.menuOptionsCount < 2) { var3 = Client.selectedSpellActionName + " " + Client.selectedSpellName + " ->"; } else { String var4; if (var2 < 0) { var4 = ""; } else if (Client.menuTargetNames[var2].length() > 0) { var4 = Client.menuActions[var2] + " " + Client.menuTargetNames[var2]; } else { var4 = Client.menuActions[var2]; } var3 = var4; } if (Client.menuOptionsCount > 2) { var3 = var3 + BufferedFile.colorStartTag(16777215) + " " + '/' + " " + (Client.menuOptionsCount - 2) + " more options"; } class2.fontBold12.drawRandomAlphaAndSpacing(var3, var0 + 4, var1 + 15, 16777215, 0, Client.cycle / 1000); } } @ObfuscatedName("ib") @ObfuscatedSignature( signature = "([Lho;Lho;ZI)V", garbageValue = "1840850218" ) @Export("revalidateWidgetScroll") static void revalidateWidgetScroll(Widget[] var0, Widget var1, boolean var2) { int var3 = var1.scrollWidth != 0 ? var1.scrollWidth : var1.width; int var4 = var1.scrollHeight != 0 ? var1.scrollHeight : var1.height; WorldMapRegion.notRevalidateWidgetScroll(var0, var1.id, var3, var4, var2); if (var1.children != null) { WorldMapRegion.notRevalidateWidgetScroll(var1.children, var1.id, var3, var4, var2); } WidgetGroupParent var5 = (WidgetGroupParent)Client.widgetGroupParents.get((long)var1.id); if (var5 != null) { int var6 = var5.group; if (GroundItemPile.loadWidgetGroup(var6)) { WorldMapRegion.notRevalidateWidgetScroll(Widget.widgets[var6], -1, var3, var4, var2); } } if (var1.contentType == 1337) { } } }