Merge remote-tracking branch 'runelite/master'

This commit is contained in:
Owain van Brakel
2021-10-20 13:16:39 +02:00
24 changed files with 435 additions and 261 deletions
@@ -1256,10 +1256,27 @@ public interface Client extends GameEngine
*
* @param inventory the inventory type
* @return the item container
* @see InventoryID
*/
@Nullable
ItemContainer getItemContainer(InventoryID inventory);
/**
* Get an item container by id
*
* @param id the inventory id
* @return the item container
* @see InventoryID
*/
@Nullable
ItemContainer getItemContainer(int id);
/**
* Get all item containers
* @return
*/
HashTable<ItemContainer> getItemContainers();
/**
* Gets the length of the cs2 vm's int stack
*/
@@ -1,12 +1,10 @@
package net.runelite.api;
import java.util.Collection;
/**
* A data structure that uses a hash function to compute an index into an
* array of buckets from which node objects can be quickly obtained.
*/
public interface HashTable<T extends Node>
public interface HashTable<T extends Node> extends Iterable<T>
{
/**
* Gets a node by its hash value.
@@ -15,11 +13,4 @@ public interface HashTable<T extends Node>
* @return the associated node
*/
T get(long value);
/**
* Gets a collection of all nodes stored in this table.
*
* @return the nodes stored
*/
Collection<T> getNodes();
}
@@ -32,6 +32,14 @@ import javax.annotation.Nullable;
*/
public interface ItemContainer extends Node
{
/**
* Get the item container id
*
* @return
* @see InventoryID
*/
int getId();
/**
* Gets an array of all items in the container.
*
@@ -4764,7 +4764,7 @@ public final class ItemID
public static final int SNAIL_SHELL = 7800;
public static final int SNAKE_HIDE_7801 = 7801;
public static final int YIN_YANG_AMULET = 7803;
public static final int ZAROS_MJOLNIR = 7804;
public static final int ANCIENT_MJOLNIR = 7804;
public static final int ANGER_SWORD = 7806;
public static final int ANGER_BATTLEAXE = 7807;
public static final int ANGER_MACE = 7808;
@@ -12032,7 +12032,6 @@ public final class ItemID
public static final int MASORI_CHAINSKIRT = 25971;
public static final int MASORI_AMULET = 25973;
public static final int LIGHTBEARER = 25975;
public static final int OSMUMTENS_KHOPESH = 25977;
public static final int KERIS_PARTISAN = 25979;
public static final int KERIS_PARTISAN_OF_BREACHING = 25981;
public static final int ELIDINIS_BROKEN_WARD = 25983;
@@ -12197,5 +12196,29 @@ public final class ItemID
public static final int RED_ICON_26213 = 26213;
public static final int RED_ICON_26214 = 26214;
public static final int RED_ICON_26215 = 26215;
public static final int MASORI_HEADDRESS = 26217;
public static final int OSMUMTENS_FANG = 26219;
public static final int ANCIENT_CEREMONIAL_TOP = 26221;
public static final int ANCIENT_CEREMONIAL_LEGS = 26223;
public static final int ANCIENT_CEREMONIAL_MASK = 26225;
public static final int ANCIENT_CEREMONIAL_GLOVES = 26227;
public static final int ANCIENT_CEREMONIAL_BOOTS = 26229;
public static final int NIHIL_SHARD = 26231;
public static final int ANCIENT_GODSWORD = 26233;
public static final int ZARYTE_VAMBRACES = 26235;
public static final int ZARYTE_BOW_UNCHARGED = 26237;
public static final int ZARYTE_BOW = 26239;
public static final int VIRTUS_MASK = 26241;
public static final int VIRTUS_ROBE_TOP = 26243;
public static final int VIRTUS_ROBE_LEGS = 26245;
public static final int PUMPKIN_PIE = 26247;
public static final int JEREDS_EMPTY_WINE_BOTTLE = 26250;
public static final int AD_COUPON = 26252;
public static final int SAUCEPAN = 26254;
public static final int UGLY_HALLOWEEN_JUMPER_ORANGE = 26256;
public static final int UGLY_HALLOWEEN_JUMPER_BLACK = 26258;
public static final int HAUNTED_WINE_BOTTLE = 26260;
public static final int RUNE_SCIMITAR_26262 = 26262;
public static final int STUDDED_BODY_26264 = 26264;
/* This file is automatically generated. Do not edit. */
}
@@ -80,7 +80,7 @@ public interface Model extends Renderable
int getUvBufferOffset();
void setUvBufferOffset(int bufferOffset);
int getModelHeight();
int getBottomY();
void calculateBoundsCylinder();
@@ -2723,7 +2723,6 @@ public final class NpcID
public static final int COOK_2896 = 2896;
public static final int BANKER_2897 = 2897;
public static final int BANKER_2898 = 2898;
public static final int IFFIE = 2899;
public static final int ELSIE = 2900;
public static final int CLEANER = 2901;
public static final int STRAY_DOG = 2902;
@@ -9477,5 +9476,27 @@ public final class NpcID
public static final int REGENT = 11229;
public static final int GROUP_STORAGE_TUTOR = 11230;
public static final int GROUP_IRON_TUTOR = 11231;
public static final int IFFIE = 11232;
public static final int MONK_11233 = 11233;
public static final int BROTHER_JERED_11234 = 11234;
public static final int BROTHER_JERED_11235 = 11235;
public static final int OZIACH_11236 = 11236;
public static final int OZIACH_11237 = 11237;
public static final int ESTATE_AGENT_11238 = 11238;
public static final int IFFIE_11239 = 11239;
public static final int IFFIE_11240 = 11240;
public static final int OZIACH_11241 = 11241;
public static final int ESTATE_AGENT_11242 = 11242;
public static final int DEATH_11243 = 11243;
public static final int IFFIE_11245 = 11245;
public static final int IFFIE_11246 = 11246;
public static final int JONNY_THE_BEARD_11247 = 11247;
public static final int WOMAN_11248 = 11248;
public static final int DR_HARLOW_11249 = 11249;
public static final int BARBARIAN_11250 = 11250;
public static final int COOK_11251 = 11251;
public static final int BARTENDER_11252 = 11252;
public static final int XI_PLZPETDOGZ_XIX = 11254;
public static final int ROCKING_CHAIR = 11262;
/* This file is automatically generated. Do not edit. */
}
@@ -13734,6 +13734,7 @@ public final class NullItemID
public static final int NULL_25972 = 25972;
public static final int NULL_25974 = 25974;
public static final int NULL_25976 = 25976;
public static final int NULL_25977 = 25977;
public static final int NULL_25978 = 25978;
public static final int NULL_25980 = 25980;
public static final int NULL_25982 = 25982;
@@ -13809,5 +13810,30 @@ public final class NullItemID
public static final int NULL_26181 = 26181;
public static final int NULL_26183 = 26183;
public static final int NULL_26216 = 26216;
public static final int NULL_26218 = 26218;
public static final int NULL_26220 = 26220;
public static final int NULL_26222 = 26222;
public static final int NULL_26224 = 26224;
public static final int NULL_26226 = 26226;
public static final int NULL_26228 = 26228;
public static final int NULL_26230 = 26230;
public static final int NULL_26232 = 26232;
public static final int NULL_26234 = 26234;
public static final int NULL_26236 = 26236;
public static final int NULL_26238 = 26238;
public static final int NULL_26240 = 26240;
public static final int NULL_26242 = 26242;
public static final int NULL_26244 = 26244;
public static final int NULL_26246 = 26246;
public static final int NULL_26248 = 26248;
public static final int NULL_26249 = 26249;
public static final int NULL_26251 = 26251;
public static final int NULL_26253 = 26253;
public static final int NULL_26255 = 26255;
public static final int NULL_26257 = 26257;
public static final int NULL_26259 = 26259;
public static final int NULL_26261 = 26261;
public static final int NULL_26263 = 26263;
public static final int NULL_26265 = 26265;
/* This file is automatically generated. Do not edit. */
}
@@ -175,6 +175,7 @@ public final class NullNpcID
public static final int NULL_2780 = 2780;
public static final int NULL_2781 = 2781;
public static final int NULL_2831 = 2831;
public static final int NULL_2899 = 2899;
public static final int NULL_2934 = 2934;
public static final int NULL_2935 = 2935;
public static final int NULL_2936 = 2936;
@@ -1738,5 +1739,14 @@ public final class NullNpcID
public static final int NULL_11222 = 11222;
public static final int NULL_11223 = 11223;
public static final int NULL_11224 = 11224;
public static final int NULL_11244 = 11244;
public static final int NULL_11253 = 11253;
public static final int NULL_11255 = 11255;
public static final int NULL_11256 = 11256;
public static final int NULL_11257 = 11257;
public static final int NULL_11258 = 11258;
public static final int NULL_11259 = 11259;
public static final int NULL_11260 = 11260;
public static final int NULL_11261 = 11261;
/* This file is automatically generated. Do not edit. */
}
@@ -2826,7 +2826,6 @@ public final class NullObjectID
public static final int NULL_5983 = 5983;
public static final int NULL_5984 = 5984;
public static final int NULL_5988 = 5988;
public static final int NULL_5992 = 5992;
public static final int NULL_5993 = 5993;
public static final int NULL_5994 = 5994;
public static final int NULL_5995 = 5995;
@@ -12474,6 +12473,7 @@ public final class NullObjectID
public static final int NULL_26454 = 26454;
public static final int NULL_26455 = 26455;
public static final int NULL_26456 = 26456;
public static final int NULL_26458 = 26458;
public static final int NULL_26459 = 26459;
public static final int NULL_26460 = 26460;
public static final int NULL_26463 = 26463;
@@ -20995,5 +20995,39 @@ public final class NullObjectID
public static final int NULL_42830 = 42830;
public static final int NULL_42835 = 42835;
public static final int NULL_42836 = 42836;
public static final int NULL_42838 = 42838;
public static final int NULL_42839 = 42839;
public static final int NULL_42842 = 42842;
public static final int NULL_42843 = 42843;
public static final int NULL_42844 = 42844;
public static final int NULL_42845 = 42845;
public static final int NULL_42846 = 42846;
public static final int NULL_42847 = 42847;
public static final int NULL_42848 = 42848;
public static final int NULL_42849 = 42849;
public static final int NULL_42850 = 42850;
public static final int NULL_42851 = 42851;
public static final int NULL_42852 = 42852;
public static final int NULL_42853 = 42853;
public static final int NULL_42854 = 42854;
public static final int NULL_42855 = 42855;
public static final int NULL_42856 = 42856;
public static final int NULL_42857 = 42857;
public static final int NULL_42858 = 42858;
public static final int NULL_42869 = 42869;
public static final int NULL_42870 = 42870;
public static final int NULL_42875 = 42875;
public static final int NULL_42876 = 42876;
public static final int NULL_42877 = 42877;
public static final int NULL_42878 = 42878;
public static final int NULL_42879 = 42879;
public static final int NULL_42880 = 42880;
public static final int NULL_42881 = 42881;
public static final int NULL_42882 = 42882;
public static final int NULL_42883 = 42883;
public static final int NULL_42884 = 42884;
public static final int NULL_42885 = 42885;
public static final int NULL_42886 = 42886;
public static final int NULL_42887 = 42887;
/* This file is automatically generated. Do not edit. */
}
@@ -3172,6 +3172,7 @@ public final class ObjectID
public static final int MINERAL_VEIN = 5989;
public static final int MINERAL_VEIN_5990 = 5990;
public static final int MINERAL_VEIN_5991 = 5991;
public static final int DEPLETED_VEIN = 5992;
public static final int ENTRANCE_5998 = 5998;
public static final int BLUE_FIRE = 6009;
public static final int BOILER = 6032;
@@ -11213,7 +11214,7 @@ public final class ObjectID
public static final int BARREL_20431 = 20431;
public static final int CART_TUNNEL_20433 = 20433;
public static final int STAIRS_20435 = 20435;
public static final int DEPLETED_VEIN = 20439;
public static final int DEPLETED_VEIN_20439 = 20439;
public static final int DEPLETED_VEIN_20440 = 20440;
public static final int DEPLETED_VEIN_20441 = 20441;
public static final int DEPLETED_VEIN_20442 = 20442;
@@ -13972,8 +13973,7 @@ public final class ObjectID
public static final int BROKEN_PILLAR = 26420;
public static final int BROKEN_PILLAR_26421 = 26421;
public static final int ROPE_26422 = 26422;
public static final int FROZEN_DOOR = 26457;
public static final int FROZEN_DOOR_26458 = 26458;
public static final int BIRD_SNARE_26457 = 26457;
public static final int BIG_DOOR = 26461;
public static final int BARREL_26462 = 26462;
public static final int LARGE_GEYSER_26491 = 26491;
@@ -21828,5 +21828,21 @@ public final class ObjectID
public static final int ROCKS_42833 = 42833;
public static final int CHEST_42834 = 42834;
public static final int BANK_BOOTH_42837 = 42837;
public static final int FROZEN_DOOR = 42840;
public static final int FROZEN_DOOR_42841 = 42841;
public static final int PLAN = 42859;
public static final int PLAN_42860 = 42860;
public static final int PLAN_42861 = 42861;
public static final int PLAN_42862 = 42862;
public static final int CRATE_42863 = 42863;
public static final int CRATE_42864 = 42864;
public static final int DESK_42865 = 42865;
public static final int TABLE_42866 = 42866;
public static final int CHAIR_42867 = 42867;
public static final int BAR_STOOL = 42868;
public static final int TABLE_42871 = 42871;
public static final int TABLE_42872 = 42872;
public static final int EVERGREEN_42873 = 42873;
public static final int EVERGREEN_42874 = 42874;
/* This file is automatically generated. Do not edit. */
}
@@ -184,6 +184,7 @@ public final class WidgetID
public static final int CLAN_GUEST_GROUP_ID = 702;
public static final int GRAVESTONE_GROUP_ID = 672;
public static final int POH_TREASURE_CHEST_INVENTORY_GROUP_ID = 674;
public static final int GROUP_IRON_GROUP_ID = 726;
static class WorldMap
{
@@ -443,54 +444,13 @@ public final class WidgetID
static class FixedViewport
{
static final int MINIMAP = 3;
static final int MINIMAP_DRAW_AREA = 8;
static final int FIXED_VIEWPORT = 20;
static final int MULTICOMBAT_INDICATOR = 24;
static final int FRIENDS_CHAT_TAB = 39;
static final int FRIENDS_TAB = 41;
static final int IGNORES_TAB = 40;
static final int LOGOUT_TAB = 42;
static final int OPTIONS_TAB = 43;
static final int EMOTES_TAB = 44;
static final int MUSIC_TAB = 45;
static final int FRIENDS_CHAT_ICON = 46;
static final int FRIENDS_ICON = 48;
static final int IGNORES_ICON = 47;
static final int LOGOUT_ICON = 49;
static final int OPTIONS_ICON = 50;
static final int EMOTES_ICON = 51;
static final int MUSIC_ICON = 52;
static final int COMBAT_TAB = 56;
static final int STATS_TAB = 57;
static final int QUESTS_TAB = 58;
static final int INVENTORY_TAB = 59;
static final int EQUIPMENT_TAB = 60;
static final int PRAYER_TAB = 61;
static final int MAGIC_TAB = 62;
static final int COMBAT_ICON = 63;
static final int STATS_ICON = 64;
static final int QUESTS_ICON = 65;
static final int INVENTORY_ICON = 66;
static final int EQUIPMENT_ICON = 67;
static final int PRAYER_ICON = 68;
static final int MAGIC_ICON = 69;
static final int ROOT_INTERFACE_CONTAINER = 70;
static final int BANK_CONTAINER = 73;
static final int INTERFACE_CONTAINER = 74;
static final int INVENTORY_CONTAINER = 78;
}
static class ResizableViewport
{
static final int RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX = 19;
static final int MULTICOMBAT_INDICATOR = 23;
static final int MINIMAP = 25;
static final int MINIMAP_DRAW_AREA = 34;
static final int MINIMAP_ORB_HOLDER = 37;
static final int MINIMAP = 8;
static final int MINIMAP_DRAW_AREA = 21;
static final int FIXED_VIEWPORT = 32;
static final int MULTICOMBAT_INDICATOR = 36;
static final int FRIENDS_CHAT_TAB = 46;
static final int IGNORES_TAB = 47;
static final int FRIENDS_TAB = 48;
static final int IGNORES_TAB = 47;
static final int LOGOUT_TAB = 49;
static final int OPTIONS_TAB = 50;
static final int EMOTES_TAB = 51;
@@ -516,35 +476,75 @@ public final class WidgetID
static final int EQUIPMENT_ICON = 73;
static final int PRAYER_ICON = 74;
static final int MAGIC_ICON = 75;
static final int INTERFACE_CONTAINER = 76;
static final int ROOT_INTERFACE_CONTAINER = 16;
static final int BANK_CONTAINER = 77;
static final int INTERFACE_CONTAINER = 78;
static final int INVENTORY_CONTAINER = 82;
}
static class ResizableViewport
{
static final int RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX = 15;
static final int MULTICOMBAT_INDICATOR = 19;
static final int MINIMAP = 93;
static final int MINIMAP_DRAW_AREA = 29;
static final int MINIMAP_ORB_HOLDER = 32;
static final int FRIENDS_CHAT_TAB = 42;
static final int IGNORES_TAB = 43;
static final int FRIENDS_TAB = 44;
static final int LOGOUT_TAB = 45;
static final int OPTIONS_TAB = 46;
static final int EMOTES_TAB = 47;
static final int MUSIC_TAB = 48;
static final int FRIENDS_CHAT_ICON = 49;
static final int FRIENDS_ICON = 51;
static final int IGNORES_ICON = 50;
static final int LOGOUT_ICON = 52;
static final int OPTIONS_ICON = 53;
static final int EMOTES_ICON = 54;
static final int MUSIC_ICON = 55;
static final int COMBAT_TAB = 58;
static final int STATS_TAB = 59;
static final int QUESTS_TAB = 60;
static final int INVENTORY_TAB = 61;
static final int EQUIPMENT_TAB = 62;
static final int PRAYER_TAB = 63;
static final int MAGIC_TAB = 64;
static final int COMBAT_ICON = 65;
static final int STATS_ICON = 66;
static final int QUESTS_ICON = 67;
static final int INVENTORY_ICON = 68;
static final int EQUIPMENT_ICON = 69;
static final int PRAYER_ICON = 70;
static final int MAGIC_ICON = 71;
static final int INTERFACE_CONTAINER = 72;
static final int INVENTORY_CONTAINER = 78;
}
static class ResizableViewportBottomLine
{
static final int RESIZABLE_VIEWPORT_BOTTOM_LINE = 19;
static final int MINIMAP = 25;
static final int MINIMAP_DRAW_AREA = 34;
static final int MINIMAP_ORB_HOLDER = 37;
static final int LOGOUT_BUTTON_OVERLAY = 38;
static final int MINIMAP_LOGOUT_BUTTON = 39;
static final int FC_ICON = 50;
static final int FRIEND_ICON = 52;
static final int SETTINGS_ICON = 53;
static final int EMOTE_ICON = 54;
static final int MUSIC_ICON = 55;
static final int INVENTORY_TAB = 62;
static final int PRAYER_TAB = 64;
static final int MAGIC_TAB = 65;
static final int CMB_ICON = 66;
static final int SKILLS_ICON = 67;
static final int QUESTS_ICON = 68;
static final int INVENTORY_ICON = 69;
static final int EQUIP_ICON = 70;
static final int PRAYER_ICON = 71;
static final int MAGIC_ICON = 72;
static final int INTERFACE_CONTAINER = 75;
static final int INVENTORY_CONTAINER = 81;
static final int RESIZABLE_VIEWPORT_BOTTOM_LINE = 15;
static final int MINIMAP = 90;
static final int MINIMAP_DRAW_AREA = 29;
static final int MINIMAP_ORB_HOLDER = 32;
static final int LOGOUT_BUTTON_OVERLAY = 33;
static final int MINIMAP_LOGOUT_BUTTON = 34;
static final int FC_ICON = 43;
static final int FRIEND_ICON = 45;
static final int SETTINGS_ICON = 46;
static final int EMOTE_ICON = 47;
static final int MUSIC_ICON = 48;
static final int INVENTORY_TAB = 54;
static final int PRAYER_TAB = 56;
static final int CMB_ICON = 58;
static final int SKILLS_ICON = 59;
static final int QUESTS_ICON = 60;
static final int INVENTORY_ICON = 61;
static final int EQUIP_ICON = 62;
static final int PRAYER_ICON = 63;
static final int MAGIC_ICON = 64;
static final int INTERFACE_CONTAINER = 69;
static final int INVENTORY_CONTAINER = 75;
}
static class Chatbox
@@ -406,7 +406,7 @@ public enum WidgetInfo
MOTHERLODE_MINE(WidgetID.MOTHERLODE_MINE_GROUP_ID, 0),
GWD_KC(WidgetID.GWD_KC_GROUP_ID, 4),
GWD_KC(WidgetID.GWD_KC_GROUP_ID, 5),
PUZZLE_BOX(WidgetID.PUZZLE_BOX_GROUP_ID, WidgetID.PuzzleBox.VISIBLE_BOX),
@@ -1454,38 +1454,42 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
/**
* Check is a model is visible and should be drawn.
*/
private boolean isVisible(Model model, int orientation, int pitchSin, int pitchCos, int yawSin, int yawCos, int _x, int _y, int _z, long hash)
private boolean isVisible(Model model, int pitchSin, int pitchCos, int yawSin, int yawCos, int x, int y, int z)
{
final int XYZMag = model.getXYZMag();
model.calculateBoundsCylinder();
final int xzMag = model.getXYZMag();
final int bottomY = model.getBottomY();
final int zoom = client.get3dZoom();
final int modelHeight = model.getModelHeight();
int Rasterizer3D_clipMidX2 = client.getRasterizer3D_clipMidX2();
int Rasterizer3D_clipNegativeMidX = client.getRasterizer3D_clipNegativeMidX();
int Rasterizer3D_clipNegativeMidY = client.getRasterizer3D_clipNegativeMidY();
int Rasterizer3D_clipMidY2 = client.getRasterizer3D_clipMidY2();
int Rasterizer3D_clipMidX2 = client.getRasterizer3D_clipMidX2(); // width / 2
int Rasterizer3D_clipNegativeMidX = client.getRasterizer3D_clipNegativeMidX(); // -width / 2
int Rasterizer3D_clipNegativeMidY = client.getRasterizer3D_clipNegativeMidY(); // -height / 2
int Rasterizer3D_clipMidY2 = client.getRasterizer3D_clipMidY2(); // height / 2
int var11 = yawCos * _z - yawSin * _x >> 16;
int var12 = pitchSin * _y + pitchCos * var11 >> 16;
int var13 = pitchCos * XYZMag >> 16;
int var14 = var12 + var13;
if (var14 > 50)
int var11 = yawCos * z - yawSin * x >> 16;
int var12 = pitchSin * y + pitchCos * var11 >> 16;
int var13 = pitchCos * xzMag >> 16;
int depth = var12 + var13;
if (depth > 50)
{
int var15 = _z * yawSin + yawCos * _x >> 16;
int var16 = (var15 - XYZMag) * zoom;
if (var16 / var14 < Rasterizer3D_clipMidX2)
int rx = z * yawSin + yawCos * x >> 16;
int var16 = (rx - xzMag) * zoom;
if (var16 / depth < Rasterizer3D_clipMidX2)
{
int var17 = (var15 + XYZMag) * zoom;
if (var17 / var14 > Rasterizer3D_clipNegativeMidX)
int var17 = (rx + xzMag) * zoom;
if (var17 / depth > Rasterizer3D_clipNegativeMidX)
{
int var18 = pitchCos * _y - var11 * pitchSin >> 16;
int var19 = pitchSin * XYZMag >> 16;
int var20 = (var18 + var19) * zoom;
if (var20 / var14 > Rasterizer3D_clipNegativeMidY)
int ry = pitchCos * y - var11 * pitchSin >> 16;
int yheight = pitchSin * xzMag >> 16;
int ybottom = (pitchCos * bottomY >> 16) + yheight; // use bottom height instead of y pos for height
int var20 = (ry + ybottom) * zoom;
if (var20 / depth > Rasterizer3D_clipNegativeMidY)
{
int var21 = (pitchCos * modelHeight >> 16) + var19;
int var22 = (var18 - var21) * zoom;
return var22 / var14 < Rasterizer3D_clipMidY2;
int ytop = (pitchCos * modelHeight >> 16) + yheight;
int var22 = (ry - ytop) * zoom;
return var22 / depth < Rasterizer3D_clipMidY2;
}
}
}
@@ -1521,9 +1525,7 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
renderable.setModelHeight(model.getModelHeight());
}
model.calculateBoundsCylinder();
if (!isVisible(model, orientation, pitchSin, pitchCos, yawSin, yawCos, x, y, z, hash))
if (!isVisible(model, pitchSin, pitchCos, yawSin, yawCos, x, y, z))
{
return;
}
@@ -1551,9 +1553,7 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
{
Model model = (Model) renderable;
model.calculateBoundsCylinder();
if (!isVisible(model, orientation, pitchSin, pitchCos, yawSin, yawCos, x, y, z, hash))
if (!isVisible(model, pitchSin, pitchCos, yawSin, yawCos, x, y, z))
{
return;
}
@@ -1589,9 +1589,7 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
renderable.setModelHeight(model.getModelHeight());
}
model.calculateBoundsCylinder();
if (!isVisible(model, orientation, pitchSin, pitchCos, yawSin, yawCos, x, y, z, hash))
if (!isVisible(model, pitchSin, pitchCos, yawSin, yawCos, x, y, z))
{
return;
}
@@ -24,7 +24,6 @@
*/
package net.runelite.client.plugins.hiscore;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ObjectArrays;
import com.google.inject.Provides;
import java.awt.image.BufferedImage;
@@ -47,6 +46,7 @@ import net.runelite.api.events.ChatMessage;
import net.runelite.api.events.MenuEntryAdded;
import net.runelite.api.events.MenuOptionClicked;
import net.runelite.api.events.VarbitChanged;
import net.runelite.api.widgets.WidgetID;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.config.ConfigManager;
import net.runelite.client.eventbus.Subscribe;
@@ -70,8 +70,6 @@ import org.apache.commons.lang3.ArrayUtils;
public class HiscorePlugin extends Plugin
{
private static final String LOOKUP = "Lookup";
private static final String KICK_OPTION = "Kick";
private static final ImmutableList<String> AFTER_OPTIONS = ImmutableList.of("Message", "Add ignore", "Remove friend", "Delete", KICK_OPTION);
private static final Pattern BOUNTY_PATTERN = Pattern.compile("<col=ff0000>You've been assigned a target: (.*)</col>");
@Inject
@@ -153,32 +151,30 @@ public class HiscorePlugin extends Plugin
@Subscribe
public void onMenuEntryAdded(MenuEntryAdded event)
{
if (!config.menuOption())
if ((event.getType() != MenuAction.CC_OP.getId() && event.getType() != MenuAction.CC_OP_LOW_PRIORITY.getId()) || !config.menuOption())
{
return;
}
final int componentId = event.getParam1();
int groupId = WidgetInfo.TO_GROUP(componentId);
String option = event.getOption();
final String option = event.getOption();
final int componentId = event.getActionParam1();
final int groupId = WidgetInfo.TO_GROUP(componentId);
if (groupId == WidgetInfo.FRIENDS_LIST.getGroupId() || groupId == WidgetInfo.FRIENDS_CHAT.getGroupId() ||
groupId == WidgetInfo.CHATBOX.getGroupId() && !KICK_OPTION.equals(option) || //prevent from adding for Kick option (interferes with the raiding party one)
groupId == WidgetInfo.RAIDING_PARTY.getGroupId() || groupId == WidgetInfo.PRIVATE_CHAT_MESSAGE.getGroupId() ||
groupId == WidgetInfo.IGNORE_LIST.getGroupId() || componentId == WidgetInfo.CLAN_MEMBER_LIST.getId() ||
componentId == WidgetInfo.CLAN_GUEST_MEMBER_LIST.getId())
if (groupId == WidgetInfo.FRIENDS_LIST.getGroupId() && option.equals("Delete")
|| groupId == WidgetInfo.FRIENDS_CHAT.getGroupId() && (option.equals("Add ignore") || option.equals("Remove friend"))
|| groupId == WidgetInfo.CHATBOX.getGroupId() && (option.equals("Add ignore") || option.equals("Message"))
|| groupId == WidgetInfo.IGNORE_LIST.getGroupId() && option.equals("Delete")
|| (componentId == WidgetInfo.CLAN_MEMBER_LIST.getId() || componentId == WidgetInfo.CLAN_GUEST_MEMBER_LIST.getId()) && (option.equals("Add ignore") || option.equals("Remove friend"))
|| groupId == WidgetInfo.PRIVATE_CHAT_MESSAGE.getGroupId() && (option.equals("Add ignore") || option.equals("Message"))
|| groupId == WidgetID.GROUP_IRON_GROUP_ID && (option.equals("Add friend") || option.equals("Remove friend") || option.equals("Remove ignore"))
)
{
if (!AFTER_OPTIONS.contains(option) || (option.equals("Delete") && groupId != WidgetInfo.IGNORE_LIST.getGroupId()))
{
return;
}
final MenuEntry lookup = new MenuEntry();
lookup.setOption(LOOKUP);
lookup.setTarget(event.getTarget());
lookup.setType(MenuAction.RUNELITE.getId());
lookup.setParam0(event.getActionParam0());
lookup.setParam1(event.getParam1());
lookup.setParam1(event.getActionParam1());
lookup.setIdentifier(event.getIdentifier());
insertMenuEntry(lookup, client.getMenuEntries());
@@ -40,6 +40,7 @@ import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Client;
import net.runelite.api.GameState;
import net.runelite.api.Varbits;
import net.runelite.api.WidgetNode;
import net.runelite.api.coords.WorldPoint;
import net.runelite.api.vars.Autoweed;
import net.runelite.api.widgets.WidgetModalMode;
@@ -101,11 +102,12 @@ public class FarmingTracker
boolean changed = false;
//Varbits don't get sent when a modal widget is open so just return
if (client.getComponentTable().getNodes()
.stream()
.anyMatch(widgetNode -> widgetNode.getModalMode() != WidgetModalMode.NON_MODAL))
for (WidgetNode widgetNode : client.getComponentTable())
{
return false;
if (widgetNode.getModalMode() != WidgetModalMode.NON_MODAL)
{
return false;
}
}
{
@@ -157,6 +157,18 @@ public class WikiPlugin extends Plugin
return;
}
if (client.getVar(Varbits.WIKI_ENTITY_LOOKUP) == 1) // disabled
{
// when the wiki entity lookup option is disabled the banner parent layer,
// which is used for var transmit events, is not positioned. This is copied
// from [proc,wiki_icon_update]
wikiBannerParent.setOriginalX(client.isResized() ? 0 : 8);
wikiBannerParent.setOriginalY(135);
wikiBannerParent.setXPositionMode(WidgetPositionMode.ABSOLUTE_RIGHT);
wikiBannerParent.setYPositionMode(WidgetPositionMode.ABSOLUTE_TOP);
wikiBannerParent.revalidate();
}
Widget vanilla = client.getWidget(WidgetInfo.MINIMAP_WIKI_BANNER);
if (vanilla != null)
{
@@ -33,14 +33,13 @@ import javax.inject.Singleton;
import net.runelite.api.Client;
import net.runelite.api.Constants;
import net.runelite.api.GameState;
import net.runelite.api.TileItem;
import net.runelite.api.InventoryID;
import net.runelite.api.ItemContainer;
import net.runelite.api.NPC;
import net.runelite.api.Node;
import net.runelite.api.Player;
import net.runelite.api.Scene;
import net.runelite.api.Tile;
import net.runelite.api.TileItem;
import net.runelite.api.events.DecorativeObjectSpawned;
import net.runelite.api.events.GameObjectSpawned;
import net.runelite.api.events.GroundObjectSpawned;
@@ -112,14 +111,9 @@ public class GameEventManager
eventBus.register(subscriber);
for (final InventoryID inventory : InventoryID.values())
for (final ItemContainer itemContainer : client.getItemContainers())
{
final ItemContainer itemContainer = client.getItemContainer(inventory);
if (itemContainer != null)
{
eventBus.post(new ItemContainerChanged(inventory.getId(), itemContainer));
}
eventBus.post(new ItemContainerChanged(itemContainer.getId(), itemContainer));
}
for (NPC npc : client.getCachedNPCs())
@@ -1859,7 +1859,8 @@
"studded body": [
1133,
7362,
7364
7364,
26264
],
"green dhide body": [
1135,
@@ -2141,7 +2142,8 @@
20402,
23330,
23332,
23334
23334,
26262
],
"rune battleaxe": [
1373,
@@ -10188,5 +10190,13 @@
26174,
26176,
26178
],
"zaryte bow": [
26237,
26239
],
"ugly halloween jumper": [
26256,
26258
]
}
@@ -1 +1 @@
F4D54D6A71A806F01FA6B823A3E75524B857E2F556E0AE55FEA0A4ABFEB603C9
7D996BC73BC98D9BDE8FCDC0A866021F1F217F370B35C30C5B4B0FFECD9135C0
@@ -62,7 +62,7 @@ LABEL49:
iconst 73
iconst 73
iload 6
iconst 10551334
iconst 10551390
enum
if_getheight
add
@@ -353,7 +353,7 @@ LABEL319:
get_varp 287
iconst 1
if_icmpeq LABEL329
jump LABEL554
jump LABEL566
LABEL329:
get_varc_int 41
iconst 1337
@@ -361,24 +361,24 @@ LABEL329:
get_varbit 4089
iconst 0
if_icmpeq LABEL336
jump LABEL554
jump LABEL566
LABEL336:
iload 12
iconst -1
if_icmpne LABEL340
jump LABEL554
jump LABEL566
LABEL340:
iload 10
iconst -1
if_icmpne LABEL344
jump LABEL554
jump LABEL566
LABEL344:
iload 7
iload 4
sub
iconst 57
if_icmplt LABEL350
jump LABEL554
jump LABEL566
LABEL350:
iload 12
5031
@@ -397,7 +397,7 @@ LABEL350:
invoke 91
iconst 1
if_icmpeq CHAT_FILTER ; Jump to our new label instead
jump LABEL550
jump LABEL562
CHAT_FILTER:
sload 0 ; Load the message
iconst 1 ; Gets changed to 0 if message is blocked
@@ -410,7 +410,7 @@ CHAT_FILTER:
iconst 1 ; 2nd half of conditional
sstore 0 ; Override the message with our filtered message
if_icmpeq LABEL368 ; Check if we are building this message
jump LABEL550
jump LABEL562
LABEL368:
iload 12 ; message uid
sconst "chatMessageBuilding"
@@ -419,13 +419,17 @@ LABEL368:
iload 18
switch
3: LABEL371
5: LABEL427
6: LABEL399
5: LABEL435
6: LABEL403
7: LABEL371
jump LABEL464
jump LABEL476
LABEL371:
iload 7
sload 5
sload 2
append
sconst "</col>"
append
sload 5
sconst "splitPrivChatUsernameColor"
runelite_callback
@@ -453,10 +457,14 @@ LABEL371:
invoke 203
add
istore 7
jump LABEL482
LABEL399:
jump LABEL494
LABEL403:
iload 7
sload 5
sload 2
append
sconst "</col>"
append
sload 5
sconst "splitPrivChatUsernameColor"
runelite_callback
@@ -484,10 +492,14 @@ LABEL399:
invoke 203
add
istore 7
jump LABEL482
LABEL427:
jump LABEL494
LABEL435:
iload 7
sload 5
sload 2
append
sconst "</col>"
append
sload 5
sload 0
sconst "</col>"
@@ -509,9 +521,9 @@ LABEL427:
istore 7
iload 19
iconst 0
if_icmpeq LABEL452
jump LABEL463
LABEL452:
if_icmpeq LABEL464
jump LABEL475
LABEL464:
iload 13
iconst 500
add
@@ -523,9 +535,9 @@ LABEL452:
sconst "1"
iconst 10616832
if_setontimer
LABEL463:
jump LABEL482
LABEL464:
LABEL475:
jump LABEL494
LABEL476:
iload 7
sload 2
sload 0
@@ -544,31 +556,31 @@ LABEL464:
invoke 199
add
istore 7
LABEL482:
LABEL494:
iload 10
if_clearops
iload 18
iconst 3
if_icmpeq LABEL494
if_icmpeq LABEL506
iload 18
iconst 6
if_icmpeq LABEL494
if_icmpeq LABEL506
iload 18
iconst 7
if_icmpeq LABEL494
jump LABEL528
LABEL494:
if_icmpeq LABEL506
jump LABEL540
LABEL506:
iload 14
iconst 1
if_icmpeq LABEL498
jump LABEL503
LABEL498:
if_icmpeq LABEL510
jump LABEL515
LABEL510:
iconst 8
sconst "Message"
iload 10
if_setop
jump LABEL511
LABEL503:
jump LABEL523
LABEL515:
iconst 8
sconst "Add friend"
iload 10
@@ -577,7 +589,7 @@ LABEL503:
sconst "Add ignore"
iload 10
if_setop
LABEL511:
LABEL523:
iconst 10
sconst "Report"
iload 10
@@ -594,13 +606,13 @@ LABEL511:
sconst "is"
iload 10
if_setonop
jump LABEL532
LABEL528:
jump LABEL544
LABEL540:
iconst -1
sconst ""
iload 10
if_setonop
LABEL532:
LABEL544:
iconst -1
sconst ""
iload 10
@@ -619,17 +631,17 @@ LABEL532:
iload 9
enum
istore 10
LABEL550:
LABEL562:
iload 12
chat_getprevuid
istore 12
jump LABEL336
LABEL554:
LABEL566:
iload 10
iconst -1
if_icmpne LABEL558
jump LABEL641
LABEL558:
if_icmpne LABEL570
jump LABEL653
LABEL570:
iload 10
if_clearops
iconst -1
@@ -656,14 +668,14 @@ LABEL558:
multiply
cc_find
iconst 1
if_icmpeq LABEL586
jump LABEL590
LABEL586:
if_icmpeq LABEL598
jump LABEL602
LABEL598:
sconst ""
cc_settext
iconst 1
cc_sethide
LABEL590:
LABEL602:
iconst 10682368
iload 9
iconst 4
@@ -672,14 +684,14 @@ LABEL590:
add
cc_find
iconst 1
if_icmpeq LABEL600
jump LABEL604
LABEL600:
if_icmpeq LABEL612
jump LABEL616
LABEL612:
sconst ""
cc_settext
iconst 1
cc_sethide
LABEL604:
LABEL616:
iconst 10682368
iload 9
iconst 4
@@ -688,14 +700,14 @@ LABEL604:
add
cc_find
iconst 1
if_icmpeq LABEL614
jump LABEL618
LABEL614:
if_icmpeq LABEL626
jump LABEL630
LABEL626:
sconst ""
cc_settext
iconst 1
cc_sethide
LABEL618:
LABEL630:
iconst 10682368
iload 9
iconst 4
@@ -704,12 +716,12 @@ LABEL618:
add
cc_find
iconst 1
if_icmpeq LABEL628
jump LABEL630
LABEL628:
if_icmpeq LABEL640
jump LABEL642
LABEL640:
iconst 1
cc_sethide
LABEL630:
LABEL642:
iload 9
iconst 1
add
@@ -720,6 +732,6 @@ LABEL630:
iload 9
enum
istore 10
jump LABEL554
LABEL641:
jump LABEL566
LABEL653:
return
@@ -1 +1 @@
877DB1B5A5AC999371A3E16052E79A613DD060A217FCEF6CB3D5611D42D780AC
B5F4C856AEC94322FC7E2981920A8982FE331A300DD36FA0872840B7FA5A4C01
@@ -20,11 +20,11 @@
1131: LABEL9
jump LABEL244
LABEL9:
iconst 10747945
iconst 10747996
if_getwidth
iconst 33
sub
iconst 10747945
iconst 10747996
if_getheight
istore 3
istore 2
@@ -33,7 +33,7 @@ LABEL9:
iconst 73
iconst 73
iload 1
iconst 10551334
iconst 10551390
enum
if_getwidth
sub
@@ -48,7 +48,7 @@ LABEL9:
LABEL29:
iconst 0
iload 3
iconst 10747960
iconst 10747997
if_getheight
add
iconst 2
@@ -56,14 +56,14 @@ LABEL29:
iconst 73
iconst 73
iload 1
iconst 10747977
iconst 10747998
enum
if_setposition
iconst 0
iload 3
iconst 2
iconst 2
iconst 10747960
iconst 10747997
if_setposition
jump LABEL65
LABEL49:
@@ -74,14 +74,14 @@ LABEL49:
iconst 73
iconst 73
iload 1
iconst 10747977
iconst 10747998
enum
if_setposition
iload 2
iconst 0
iconst 2
iconst 2
iconst 10747960
iconst 10747997
if_setposition
LABEL65:
get_varbit 4084
@@ -93,7 +93,7 @@ LABEL69:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
jump LABEL96
@@ -107,7 +107,7 @@ LABEL81:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
jump LABEL96
@@ -116,7 +116,7 @@ LABEL89:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
LABEL96:
@@ -129,7 +129,7 @@ LABEL96:
LABEL102:
get_varbit 12986
invoke 633
iconst 10747930
iconst 10747925
if_sethide
LABEL106:
jump LABEL244
@@ -143,7 +143,7 @@ LABEL111:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
jump LABEL138
@@ -157,7 +157,7 @@ LABEL123:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
jump LABEL138
@@ -166,7 +166,7 @@ LABEL131:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
LABEL138:
@@ -179,7 +179,7 @@ LABEL138:
LABEL144:
get_varbit 12986
invoke 633
iconst 10551322
iconst 10551317
if_sethide
LABEL148:
jump LABEL244
@@ -193,7 +193,7 @@ LABEL153:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
jump LABEL168
@@ -202,7 +202,7 @@ LABEL161:
iconst 73
iconst 73
iload 1
iconst 10551330
iconst 10551325
enum
2122
LABEL168:
@@ -217,15 +217,15 @@ LABEL169:
jump LABEL180
LABEL176:
iconst 1
iconst 39387175
iconst 39387174
if_sethide
jump LABEL235
LABEL180:
iconst 0
iconst 39387175
iconst 39387174
if_sethide
iconst 1
iconst 39387175
iconst 39387174
2308
get_varbit 6255
switch
@@ -235,38 +235,38 @@ LABEL180:
jump LABEL213
LABEL189:
iconst 1718
iconst 39387177
iconst 39387176
if_setgraphic
iconst 1
sconst "Toggle single-tap mode"
iconst 39387175
iconst 39387174
if_setop
jump LABEL220
LABEL197:
iconst 1717
iconst 39387177
iconst 39387176
if_setgraphic
iconst 1
sconst "Toggle tap-to-drop mode"
iconst 39387175
iconst 39387174
if_setop
jump LABEL220
LABEL205:
iconst 1716
iconst 39387177
iconst 39387176
if_setgraphic
iconst 1
sconst "Show Keyboard"
iconst 39387175
iconst 39387174
if_setop
jump LABEL220
LABEL213:
iconst 1715
iconst 39387177
iconst 39387176
if_setgraphic
iconst 1
sconst ""
iconst 39387175
iconst 39387174
if_setop
LABEL220:
get_varbit 6255
@@ -280,18 +280,18 @@ LABEL224:
jump LABEL232
LABEL228:
iconst 155
iconst 39387177
iconst 39387176
if_settrans
jump LABEL235
LABEL232:
iconst 0
iconst 39387177
iconst 39387176
if_settrans
LABEL235:
invoke 2581
get_varbit 6254
invoke 633
iconst 39387166
iconst 39387165
if_sethide
invoke 2526
pop_int
@@ -1 +1 @@
90BE2B2F4CE3D5C7C00D2ECF6D552D9A285FD08DC47DDA93E5BFE86529B01E6E
DE7A8C35396859C56E56307E45F4C3DC35EBA1FAAEBE871FAEC01E47C479AF43
@@ -6,25 +6,25 @@
iconst 73
iconst 73
iload 1
iconst 10551298
iconst 10551386
enum
istore 2
iconst 73
iconst 73
iload 1
iconst 10551313
iconst 10551388
enum
istore 3
iconst 73
iconst 73
iload 1
iconst 10551305
iconst 10551303
enum
istore 4
iconst 73
iconst 73
iload 1
iconst 10551315
iconst 10551311
enum
istore 5
iconst 103
@@ -279,7 +279,7 @@ LABEL189:
iconst 73
iconst 73
iload 1
iconst 10551314
iconst 10551310
enum
iload 5
iload 8
@@ -291,7 +291,7 @@ LABEL268:
iconst 73
iconst 73
iload 1
iconst 10551314
iconst 10551310
enum
iload 3
iconst 0
@@ -417,7 +417,7 @@ LABEL342:
iconst 73
iconst 73
iload 1
iconst 10551314
iconst 10551310
enum
iload 5
iload 8
@@ -429,7 +429,7 @@ LABEL385:
iconst 73
iconst 73
iload 1
iconst 10551314
iconst 10551310
enum
iload 3
iconst 0
@@ -439,7 +439,7 @@ LABEL395:
iconst 73
iconst 73
iload 1
iconst 10551316
iconst 10551312
enum
istore 18
iload 18
@@ -503,7 +503,7 @@ LABEL449:
iconst 73
iconst 73
iload 1
iconst 10551318
iconst 10551314
enum
istore 18
iconst 0
@@ -518,7 +518,7 @@ LABEL463:
iconst 73
iconst 73
iload 1
iconst 10551307
iconst 10551305
enum
if_hassub
iconst 1
@@ -578,7 +578,7 @@ LABEL511:
iconst 73
iconst 73
iload 1
iconst 10551307
iconst 10551305
enum
istore 18
iconst 0
@@ -617,7 +617,11 @@ LABEL539:
iload 18
if_setsize
LABEL545:
iload 0
iconst 73
iconst 73
iload 1
iconst 10551329
enum
iload 1
invoke 920
return