Merge remote-tracking branch 'upstream/master' into master
This commit is contained in:
@@ -25,9 +25,9 @@
|
|||||||
|
|
||||||
object ProjectVersions {
|
object ProjectVersions {
|
||||||
const val launcherVersion = "2.2.0"
|
const val launcherVersion = "2.2.0"
|
||||||
const val rlVersion = "1.7.12"
|
const val rlVersion = "1.7.13"
|
||||||
|
|
||||||
const val openosrsVersion = "4.8.2"
|
const val openosrsVersion = "4.9.0"
|
||||||
|
|
||||||
const val rsversion = 197
|
const val rsversion = 197
|
||||||
const val cacheversion = 165
|
const val cacheversion = 165
|
||||||
|
|||||||
@@ -368,7 +368,21 @@ public interface Actor extends Renderable, Locatable
|
|||||||
int getActionFrameCycle();
|
int getActionFrameCycle();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns true if this NPC has died
|
* Get the number of cycles/client ticks remaining before the overhead text is timed out
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
int getOverheadCycle();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the number of cycles/client ticks before the overhead text is timed out
|
||||||
|
*
|
||||||
|
* @param cycles
|
||||||
|
*/
|
||||||
|
void setOverheadCycle(int cycles);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns true if this actor has died
|
||||||
*
|
*
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -206,7 +206,7 @@ public final class AnimationID
|
|||||||
public static final int LEAGUE_HOME_TELEPORT_6 = 8807;
|
public static final int LEAGUE_HOME_TELEPORT_6 = 8807;
|
||||||
|
|
||||||
public static final int CONSTRUCTION = 3676;
|
public static final int CONSTRUCTION = 3676;
|
||||||
public static final int CONSTRUCTION_IMCANDO = 8192;
|
public static final int CONSTRUCTION_IMCANDO = 8912;
|
||||||
public static final int SAND_COLLECTION = 895;
|
public static final int SAND_COLLECTION = 895;
|
||||||
public static final int PISCARILIUS_CRANE_REPAIR = 7199;
|
public static final int PISCARILIUS_CRANE_REPAIR = 7199;
|
||||||
public static final int HOME_MAKE_TABLET = 4067;
|
public static final int HOME_MAKE_TABLET = 4067;
|
||||||
|
|||||||
@@ -11955,5 +11955,6 @@ public final class ItemID
|
|||||||
public static final int LIZARDKICKER = 25826;
|
public static final int LIZARDKICKER = 25826;
|
||||||
public static final int OLD_NOTE_25829 = 25829;
|
public static final int OLD_NOTE_25829 = 25829;
|
||||||
public static final int SHAYZIA_MILITARY_ORDERS = 25831;
|
public static final int SHAYZIA_MILITARY_ORDERS = 25831;
|
||||||
|
public static final int RAW_BOAR_MEAT = 25833;
|
||||||
/* This file is automatically generated. Do not edit. */
|
/* This file is automatically generated. Do not edit. */
|
||||||
}
|
}
|
||||||
@@ -13667,5 +13667,7 @@ public final class NullItemID
|
|||||||
public static final int NULL_25828 = 25828;
|
public static final int NULL_25828 = 25828;
|
||||||
public static final int NULL_25830 = 25830;
|
public static final int NULL_25830 = 25830;
|
||||||
public static final int NULL_25832 = 25832;
|
public static final int NULL_25832 = 25832;
|
||||||
|
public static final int NULL_25834 = 25834;
|
||||||
|
public static final int NULL_25835 = 25835;
|
||||||
/* This file is automatically generated. Do not edit. */
|
/* This file is automatically generated. Do not edit. */
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21752,5 +21752,6 @@ public final class ObjectID
|
|||||||
public static final int BAR_42426 = 42426;
|
public static final int BAR_42426 = 42426;
|
||||||
public static final int YEW_42427 = 42427;
|
public static final int YEW_42427 = 42427;
|
||||||
public static final int GRANDFATHER_CLOCK_42428 = 42428;
|
public static final int GRANDFATHER_CLOCK_42428 = 42428;
|
||||||
|
public static final int LADDER_42487 = 42487;
|
||||||
/* This file is automatically generated. Do not edit. */
|
/* This file is automatically generated. Do not edit. */
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -313,7 +313,7 @@ public final class SpriteID
|
|||||||
public static final int COMBAT_STYLE_BUTTON_THIN = 295;
|
public static final int COMBAT_STYLE_BUTTON_THIN = 295;
|
||||||
public static final int COMBAT_STYLE_BUTTON_THIN_SELECTED = 296;
|
public static final int COMBAT_STYLE_BUTTON_THIN_SELECTED = 296;
|
||||||
public static final int DIALOG_BACKGROUND = 297;
|
public static final int DIALOG_BACKGROUND = 297;
|
||||||
public static final int RS2_HITSPLAT_BLUE_NO_DAMAGE = 298;
|
/* Unmapped: 298 */
|
||||||
public static final int RS2_YELLOW_CLICK_ANIMATION_1 = 299;
|
public static final int RS2_YELLOW_CLICK_ANIMATION_1 = 299;
|
||||||
public static final int RS2_MINIMAP_MARKER_RED_ITEM = 300;
|
public static final int RS2_MINIMAP_MARKER_RED_ITEM = 300;
|
||||||
public static final int RS2_SWORD_POINTED_LEFT = 301;
|
public static final int RS2_SWORD_POINTED_LEFT = 301;
|
||||||
@@ -1209,81 +1209,27 @@ public final class SpriteID
|
|||||||
public static final int KOUREND_FAVOUR_LOVAKENGJ_ICON = 1244;
|
public static final int KOUREND_FAVOUR_LOVAKENGJ_ICON = 1244;
|
||||||
public static final int KOUREND_FAVOUR_PISCARILIUS_ICON = 1245;
|
public static final int KOUREND_FAVOUR_PISCARILIUS_ICON = 1245;
|
||||||
public static final int KOUREND_FAVOUR_SHAYZIEN_ICON = 1246;
|
public static final int KOUREND_FAVOUR_SHAYZIEN_ICON = 1246;
|
||||||
public static final int SPELL_REANIMATE_GOBLIN = 1247;
|
/* Unmapped: 1247~1296 */
|
||||||
public static final int SPELL_REANIMATE_DEMON = 1248;
|
|
||||||
public static final int SPELL_REANIMATE_DRAGON = 1249;
|
|
||||||
public static final int SPELL_REANIMATE_ELF = 1250;
|
|
||||||
public static final int SPELL_REANIMATE_CHAOS_DRUID = 1251;
|
|
||||||
public static final int SPELL_REANIMATE_TROLL = 1252;
|
|
||||||
public static final int SPELL_REANIMATE_DAGANNOTH = 1253;
|
|
||||||
public static final int SPELL_REANIMATE_OGRE = 1254;
|
|
||||||
public static final int SPELL_REANIMATE_GIANT = 1255;
|
|
||||||
public static final int SPELL_REANIMATE_BEAR = 1256;
|
|
||||||
public static final int SPELL_REANIMATE_SCORPION = 1257;
|
|
||||||
public static final int SPELL_REANIMATE_IMP = 1258;
|
|
||||||
public static final int SPELL_REANIMATE_MINOTAUR = 1259;
|
|
||||||
public static final int SPELL_REANIMATE_UNICORN = 1260;
|
|
||||||
public static final int SPELL_REANIMATE_KALPHITE = 1261;
|
|
||||||
public static final int SPELL_REANIMATE_TZHAAR = 1262;
|
|
||||||
public static final int SPELL_REANIMATE_AVIANSIE = 1263;
|
|
||||||
public static final int SPELL_REANIMATE_MONKEY = 1264;
|
|
||||||
public static final int SPELL_REANIMATE_ABYSSAL_CREATURE = 1265;
|
|
||||||
public static final int SPELL_REANIMATE_HORROR = 1266;
|
|
||||||
public static final int SPELL_REANIMATE_BLOODVELD = 1267;
|
|
||||||
public static final int SPELL_REANIMATE_DOG = 1268;
|
|
||||||
public static final int SPELL_LUMBRIDGE_GRAVEYARD_TELEPORT = 1269;
|
|
||||||
public static final int SPELL_DRAYNOR_MANOR_TELEPORT = 1270;
|
|
||||||
public static final int SPELL_MIND_ALTAR_TELEPORT = 1271;
|
|
||||||
public static final int SPELL_REANIMATE_GOBLIN_DISABLED = 1272;
|
|
||||||
public static final int SPELL_REANIMATE_DEMON_DISABLED = 1273;
|
|
||||||
public static final int SPELL_REANIMATE_DRAGON_DISABLED = 1274;
|
|
||||||
public static final int SPELL_REANIMATE_ELF_DISABLED = 1275;
|
|
||||||
public static final int SPELL_REANIMATE_CHAOS_DRUID_DISABLED = 1276;
|
|
||||||
public static final int SPELL_REANIMATE_TROLL_DISABLED = 1277;
|
|
||||||
public static final int SPELL_REANIMATE_DAGANNOTH_DISABLED = 1278;
|
|
||||||
public static final int SPELL_REANIMATE_OGRE_DISABLED = 1279;
|
|
||||||
public static final int SPELL_REANIMATE_GIANT_DISABLED = 1280;
|
|
||||||
public static final int SPELL_REANIMATE_BEAR_DISABLED = 1281;
|
|
||||||
public static final int SPELL_REANIMATE_SCORPION_DISABLED = 1282;
|
|
||||||
public static final int SPELL_REANIMATE_IMP_DISABLED = 1283;
|
|
||||||
public static final int SPELL_REANIMATE_MINOTAUR_DISABLED = 1284;
|
|
||||||
public static final int SPELL_REANIMATE_UNICORN_DISABLED = 1285;
|
|
||||||
public static final int SPELL_REANIMATE_KALPHITE_DISABLED = 1286;
|
|
||||||
public static final int SPELL_REANIMATE_TZHAAR_DISABLED = 1287;
|
|
||||||
public static final int SPELL_REANIMATE_AVIANSIE_DISABLED = 1288;
|
|
||||||
public static final int SPELL_REANIMATE_MONKEY_DISABLED = 1289;
|
|
||||||
public static final int SPELL_REANIMATE_ABYSSAL_CREATURE_DISABLED = 1290;
|
|
||||||
public static final int SPELL_REANIMATE_HORROR_DISABLED = 1291;
|
|
||||||
public static final int SPELL_REANIMATE_BLOODVELD_DISABLED = 1292;
|
|
||||||
public static final int SPELL_REANIMATE_DOG_DISABLED = 1293;
|
|
||||||
public static final int SPELL_LUMBRIDGE_GRAVEYARD_TELEPORT_DISABLED = 1294;
|
|
||||||
public static final int SPELL_DRAYNOR_MANOR_TELEPORT_DISABLED = 1295;
|
|
||||||
public static final int SPELL_MIND_ALTAR_TELEPORT_DISABLED = 1296;
|
|
||||||
public static final int QUESTS_PAGE_ICON_PURPLE_KOUREND = 1297;
|
public static final int QUESTS_PAGE_ICON_PURPLE_KOUREND = 1297;
|
||||||
public static final int UNUSED_TAB_QUESTS_GREEN_ACHIEVEMENT_DIARIES = 1298;
|
public static final int UNUSED_TAB_QUESTS_GREEN_ACHIEVEMENT_DIARIES = 1298;
|
||||||
public static final int TAB_QUESTS_GREEN_ACHIEVEMENT_DIARIES = 1299;
|
public static final int TAB_QUESTS_GREEN_ACHIEVEMENT_DIARIES = 1299;
|
||||||
public static final int SPELL_RESPAWN_TELEPORT = 1300;
|
/* Unmapped: 1300~1305 */
|
||||||
public static final int SPELL_SALVE_GRAVEYARD_TELEPORT = 1301;
|
public static final int SPELL_WARD_OF_ARCEUUS = 1306;
|
||||||
public static final int SPELL_FENKENSTRAINS_CASTLE_TELEPORT = 1302;
|
/* Unmapped: 1307~1309 */
|
||||||
public static final int SPELL_WEST_ARDOUGNE_TELEPORT = 1303;
|
public static final int SPELL_DEATH_CHARGE = 1310;
|
||||||
public static final int SPELL_HARMONY_ISLAND_TELEPORT = 1304;
|
/* Unmapped: 1311~1314 */
|
||||||
public static final int SPELL_CEMETARY_TELEPORT = 1305;
|
public static final int SPELL_SHADOW_VEIL = 1315;
|
||||||
public static final int SPELL_BARROWS_TELEPORT = 1306;
|
/* Unmapped: 1316~1324 */
|
||||||
public static final int SPELL_APE_ATOLL_TELEPORT = 1307;
|
public static final int SPELL_WARD_OF_ARCEUUS_DISABLED = 1325;
|
||||||
public static final int SPELL_REANIMATE_CROPS = 1308;
|
/* Unmapped: 1326 */
|
||||||
/* Unmapped: 1309~1318 */
|
public static final int SPELL_GREATER_CORRUPTION_DISABLED = 1327;
|
||||||
public static final int SPELL_RESPAWN_TELEPORT_DISABLED = 1319;
|
/* Unmapped: 1328 */
|
||||||
public static final int SPELL_SALVE_GRAVEYARD_TELEPORT_DISABLED = 1320;
|
public static final int SPELL_DEATH_CHARGE_DISABLED = 1329;
|
||||||
public static final int SPELL_FENKENSTRAINS_CASTLE_TELEPORT_DISABLED = 1321;
|
/* Unmapped: 1330~1333 */
|
||||||
public static final int SPELL_WEST_ARDOUGNE_TELEPORT_DISABLED = 1322;
|
public static final int SPELL_SHADOW_VEIL_DISABLED = 1334;
|
||||||
public static final int SPELL_HARMONY_ISLAND_TELEPORT_DISABLED = 1323;
|
/* Unmapped: 1335~1337 */
|
||||||
public static final int SPELL_CEMETARY_TELEPORT_DISABLED = 1324;
|
|
||||||
public static final int SPELL_BARROWS_TELEPORT_DISABLED = 1325;
|
|
||||||
public static final int SPELL_APE_ATOLL_TELEPORT_DISABLED = 1326;
|
|
||||||
public static final int SPELL_REANIMATE_CROPS_DISABLED = 1327;
|
|
||||||
/* Unmapped: 1328~1337 */
|
|
||||||
public static final int WORLD_SWITCHER_WORLD_STAR_BLUE = 1338;
|
public static final int WORLD_SWITCHER_WORLD_STAR_BLUE = 1338;
|
||||||
public static final int HITSPLAT_DARK_GREEN_VENOM = 1339;
|
/* Unmapped: 1339 */
|
||||||
public static final int FAIRY_RING_REMOVE_FAVOURITE = 1340;
|
public static final int FAIRY_RING_REMOVE_FAVOURITE = 1340;
|
||||||
public static final int FAIRY_RING_ADD_FAVOURITE = 1341;
|
public static final int FAIRY_RING_ADD_FAVOURITE = 1341;
|
||||||
public static final int BANK_PLACEHOLDERS_LOCK = 1342;
|
public static final int BANK_PLACEHOLDERS_LOCK = 1342;
|
||||||
@@ -1302,12 +1248,9 @@ public final class SpriteID
|
|||||||
public static final int EMOTE_SMOOTH_DANCE_LOCKED = 1355;
|
public static final int EMOTE_SMOOTH_DANCE_LOCKED = 1355;
|
||||||
public static final int EMOTE_CRAZY_DANCE_LOCKED = 1356;
|
public static final int EMOTE_CRAZY_DANCE_LOCKED = 1356;
|
||||||
public static final int EMOTE_PREMIER_SHIELD_LOCKED = 1357;
|
public static final int EMOTE_PREMIER_SHIELD_LOCKED = 1357;
|
||||||
public static final int HITSPLAT_BLUE_NO_DAMAGE = 1358;
|
/* Unmapped: 1358~1359 */
|
||||||
public static final int HITSPLAT_RED_DAMAGE = 1359;
|
|
||||||
public static final int HITSPLAT_GREEN_POISON = 1360;
|
public static final int HITSPLAT_GREEN_POISON = 1360;
|
||||||
public static final int HITSPLAT_ORANGE = 1361;
|
/* Unmapped: 1361~1363 */
|
||||||
public static final int HITSPLAT_ORANGE_DISEASE = 1362;
|
|
||||||
public static final int HITSPLAT_GREY = 1363;
|
|
||||||
public static final int BOUNTY_HUNTER_SKIP_TARGET = 1364;
|
public static final int BOUNTY_HUNTER_SKIP_TARGET = 1364;
|
||||||
public static final int BOUNTY_HUNTER_SKIP_TARGET_HOVERED = 1365;
|
public static final int BOUNTY_HUNTER_SKIP_TARGET_HOVERED = 1365;
|
||||||
public static final int HOUSE_VIEWER_ROTATE_CLOCKWISE = 1366;
|
public static final int HOUSE_VIEWER_ROTATE_CLOCKWISE = 1366;
|
||||||
@@ -1361,7 +1304,7 @@ public final class SpriteID
|
|||||||
public static final int UNKNOWN_BLUE_BAR = 1416;
|
public static final int UNKNOWN_BLUE_BAR = 1416;
|
||||||
public static final int UNKNOWN_YELLOW_BAR = 1417;
|
public static final int UNKNOWN_YELLOW_BAR = 1417;
|
||||||
public static final int UNKNOWN_RED_BAR = 1418;
|
public static final int UNKNOWN_RED_BAR = 1418;
|
||||||
public static final int HITSPLAT_MAGENTA_ENEMY_HEALING = 1419;
|
/* Unmapped: 1419 */
|
||||||
public static final int PRAYER_RIGOUR = 1420;
|
public static final int PRAYER_RIGOUR = 1420;
|
||||||
public static final int PRAYER_AUGURY = 1421;
|
public static final int PRAYER_AUGURY = 1421;
|
||||||
/* Unmapped: 1422, 1423 */
|
/* Unmapped: 1422, 1423 */
|
||||||
@@ -1554,6 +1497,9 @@ public final class SpriteID
|
|||||||
public static final int MOBILE_FUNCTION_MODE_DISABLED = 1624;
|
public static final int MOBILE_FUNCTION_MODE_DISABLED = 1624;
|
||||||
public static final int MOBILE_YELLOW_TOUCH_ANIMATION_1 = 1625;
|
public static final int MOBILE_YELLOW_TOUCH_ANIMATION_1 = 1625;
|
||||||
public static final int MOBILE_YELLOW_TOUCH_ANIMATION_2 = 1626;
|
public static final int MOBILE_YELLOW_TOUCH_ANIMATION_2 = 1626;
|
||||||
|
/* Unmapped: 1627~1631 */
|
||||||
|
public static final int HITSPLAT_DARK_GREEN_VENOM = 1632;
|
||||||
|
/* Unmapped: 1633~1652 */
|
||||||
public static final int MOBILE_FINGER_ON_INTERFACE = 1653;
|
public static final int MOBILE_FINGER_ON_INTERFACE = 1653;
|
||||||
/* Unmapped: 1627~1701 */
|
/* Unmapped: 1627~1701 */
|
||||||
public static final int BUTTON_FRIENDS = 1702;
|
public static final int BUTTON_FRIENDS = 1702;
|
||||||
@@ -1596,8 +1542,12 @@ public final class SpriteID
|
|||||||
public static final int FRIENDS_CHAT_RANK_TRIPLE_CHEVRON_SERGEANT = 2831;
|
public static final int FRIENDS_CHAT_RANK_TRIPLE_CHEVRON_SERGEANT = 2831;
|
||||||
public static final int FRIENDS_CHAT_RANK_DOUBLE_CHEVRON_CORPORAL = 2832;
|
public static final int FRIENDS_CHAT_RANK_DOUBLE_CHEVRON_CORPORAL = 2832;
|
||||||
public static final int FRIENDS_CHAT_RANK_SINGLE_CHEVRON_RECRUIT = 2833;
|
public static final int FRIENDS_CHAT_RANK_SINGLE_CHEVRON_RECRUIT = 2833;
|
||||||
|
/* Unmapped: 2834~2857 */
|
||||||
public static final int SETTINGS_SLIDER_HANDLE_BLUE = 2858;
|
public static final int SETTINGS_SLIDER_HANDLE_BLUE = 2858;
|
||||||
public static final int SETTINGS_SLIDER_HANDLE_RED = 2859;
|
public static final int SETTINGS_SLIDER_HANDLE_RED = 2859;
|
||||||
public static final int SETTINGS_SLIDER_HANDLE_GREEN = 2860;
|
public static final int SETTINGS_SLIDER_HANDLE_GREEN = 2860;
|
||||||
|
/* Unmapped: 2861~2980 */
|
||||||
|
public static final int SPELL_RESURRECT_SUPERIOR_SKELETON = 2981;
|
||||||
|
/* Unmapped: 2982~2986 */
|
||||||
|
public static final int SPELL_RESURRECT_SUPERIOR_SKELETON_DISABLED = 2987;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -552,6 +552,7 @@ public enum Varbits
|
|||||||
* Spell cooldowns
|
* Spell cooldowns
|
||||||
*/
|
*/
|
||||||
VENGEANCE_COOLDOWN(2451),
|
VENGEANCE_COOLDOWN(2451),
|
||||||
|
CORRUPTION_COOLDOWN(12288),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Amount of items in each bank tab
|
* Amount of items in each bank tab
|
||||||
|
|||||||
@@ -186,10 +186,11 @@ public class WidgetID
|
|||||||
{
|
{
|
||||||
static final int MAPVIEW = 7;
|
static final int MAPVIEW = 7;
|
||||||
static final int OVERVIEW_MAP = 10;
|
static final int OVERVIEW_MAP = 10;
|
||||||
static final int SEARCH = 25;
|
static final int BOTTOM_BAR = 23;
|
||||||
static final int SURFACE_SELECTOR = 33;
|
static final int SEARCH = 26;
|
||||||
static final int TOOLTIP = 41;
|
static final int SURFACE_SELECTOR = 34;
|
||||||
static final int OPTION = 46;
|
static final int TOOLTIP = 43;
|
||||||
|
static final int OPTION = 48;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class SlayerRewards
|
static class SlayerRewards
|
||||||
@@ -197,6 +198,11 @@ public class WidgetID
|
|||||||
static final int TOP_BAR = 12;
|
static final int TOP_BAR = 12;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static class DialogOption
|
||||||
|
{
|
||||||
|
static final int OPTIONS = 1;
|
||||||
|
}
|
||||||
|
|
||||||
static class DialogNPC
|
static class DialogNPC
|
||||||
{
|
{
|
||||||
static final int HEAD_MODEL = 6;
|
static final int HEAD_MODEL = 6;
|
||||||
@@ -204,44 +210,38 @@ public class WidgetID
|
|||||||
static final int TEXT = 5;
|
static final int TEXT = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static class DialogPlayer
|
||||||
|
{
|
||||||
|
static final int NAME = 3;
|
||||||
|
static final int TEXT = 5;
|
||||||
|
static final int HEAD_MODEL = 6;
|
||||||
|
}
|
||||||
|
|
||||||
static class LogoutPanel
|
static class LogoutPanel
|
||||||
{
|
{
|
||||||
static final int WORLD_SWITCHER_BUTTON = 3;
|
static final int WORLD_SWITCHER_BUTTON = 3;
|
||||||
static final int LOGOUT_BUTTON = 6;
|
static final int LOGOUT_BUTTON = 6;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class PestControlBoat
|
|
||||||
{
|
|
||||||
static final int INFO = 3;
|
|
||||||
|
|
||||||
static final int NEXT_DEPARTURE = 4;
|
|
||||||
static final int PLAYERS_READY = 5;
|
|
||||||
static final int POINTS = 6;
|
|
||||||
}
|
|
||||||
|
|
||||||
static class PestControl
|
static class PestControl
|
||||||
{
|
{
|
||||||
static final int INFO = 3;
|
static final int ACTIVITY_BAR = 10;
|
||||||
|
static final int ACTIVITY_PROGRESS = 12;
|
||||||
|
|
||||||
static final int TIME = 6;
|
static final int PURPLE_SHIELD = 13;
|
||||||
|
static final int BLUE_SHIELD = 14;
|
||||||
|
static final int YELLOW_SHIELD = 15;
|
||||||
|
static final int RED_SHIELD = 16;
|
||||||
|
|
||||||
static final int ACTIVITY_BAR = 12;
|
static final int PURPLE_ICON = 17;
|
||||||
static final int ACTIVITY_PROGRESS = 14;
|
static final int BLUE_ICON = 18;
|
||||||
|
static final int YELLOW_ICON = 19;
|
||||||
|
static final int RED_ICON = 20;
|
||||||
|
|
||||||
static final int PURPLE_SHIELD = 15;
|
static final int PURPLE_HEALTH = 21;
|
||||||
static final int BLUE_SHIELD = 16;
|
static final int BLUE_HEALTH = 22;
|
||||||
static final int YELLOW_SHIELD = 17;
|
static final int YELLOW_HEALTH = 23;
|
||||||
static final int RED_SHIELD = 18;
|
static final int RED_HEALTH = 24;
|
||||||
|
|
||||||
static final int PURPLE_ICON = 19;
|
|
||||||
static final int BLUE_ICON = 20;
|
|
||||||
static final int YELLOW_ICON = 21;
|
|
||||||
static final int RED_ICON = 22;
|
|
||||||
|
|
||||||
static final int PURPLE_HEALTH = 23;
|
|
||||||
static final int BLUE_HEALTH = 24;
|
|
||||||
static final int YELLOW_HEALTH = 25;
|
|
||||||
static final int RED_HEALTH = 26;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class FriendList
|
static class FriendList
|
||||||
@@ -418,16 +418,15 @@ public class WidgetID
|
|||||||
{
|
{
|
||||||
static final int XP_ORB = 1;
|
static final int XP_ORB = 1;
|
||||||
static final int HEALTH_ORB = 2;
|
static final int HEALTH_ORB = 2;
|
||||||
static final int PRAYER_ORB = 12;
|
static final int PRAYER_ORB = 13;
|
||||||
static final int QUICK_PRAYER_ORB = 14; // Has the "Quick-prayers" name
|
static final int QUICK_PRAYER_ORB = 15; // Has the "Quick-prayers" name
|
||||||
static final int PRAYER_ORB_TEXT = 15;
|
static final int PRAYER_ORB_TEXT = 16;
|
||||||
static final int RUN_ORB = 20;
|
static final int RUN_ORB = 21;
|
||||||
static final int TOGGLE_RUN_ORB = 22; // Has the "Toggle run" name
|
static final int TOGGLE_RUN_ORB = 23; // Has the "Toggle run" name
|
||||||
static final int RUN_ORB_TEXT = 23;
|
static final int RUN_ORB_TEXT = 24;
|
||||||
static final int SPEC_ORB = 28;
|
static final int SPEC_ORB = 29;
|
||||||
static final int SPEC_CLICKBOX = 30;
|
static final int WORLDMAP_ORB = 43;
|
||||||
static final int WORLDMAP_ORB = 41;
|
static final int WIKI_BANNER = 45;
|
||||||
static final int WIKI_BANNER = 43;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class LoginClickToPlayScreen
|
static class LoginClickToPlayScreen
|
||||||
@@ -435,59 +434,12 @@ public class WidgetID
|
|||||||
static final int MESSAGE_OF_THE_DAY = 7;
|
static final int MESSAGE_OF_THE_DAY = 7;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class Viewport
|
static class FixedViewport
|
||||||
{
|
|
||||||
static final int MINIMAP_RESIZABLE_WIDGET = 20;
|
|
||||||
static final int MINIMAP_RESIZABLE_DRAW_AREA = 28;
|
|
||||||
static final int MINIMAP_RESIZABLE_ORB_HOLDER = 31;
|
|
||||||
static final int MINIMAP_RESIZABLE_LOGOUT_BUTTON = 33;
|
|
||||||
static final int FIXED_VIEWPORT = 17;
|
|
||||||
static final int RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX = 14;
|
|
||||||
static final int RESIZABLE_VIEWPORT_BOTTOM_LINE = 14;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class FixedViewport
|
|
||||||
{
|
{
|
||||||
static final int MINIMAP = 3;
|
static final int MINIMAP = 3;
|
||||||
static final int MINIMAP_DRAW_AREA = 8;
|
static final int MINIMAP_DRAW_AREA = 8;
|
||||||
public static final int MULTICOMBAT_INDICATOR = 21;
|
static final int FIXED_VIEWPORT = 20;
|
||||||
static final int FRIENDS_CHAT_TAB = 34;
|
static final int MULTICOMBAT_INDICATOR = 24;
|
||||||
static final int FRIENDS_TAB = 36;
|
|
||||||
static final int IGNORES_TAB = 35;
|
|
||||||
static final int LOGOUT_TAB = 37;
|
|
||||||
static final int OPTIONS_TAB = 38;
|
|
||||||
static final int EMOTES_TAB = 39;
|
|
||||||
static final int MUSIC_TAB = 40;
|
|
||||||
static final int FRIENDS_CHAT_ICON = 41;
|
|
||||||
static final int FRIENDS_ICON = 43;
|
|
||||||
static final int IGNORES_ICON = 42;
|
|
||||||
static final int LOGOUT_ICON = 44;
|
|
||||||
static final int OPTIONS_ICON = 45;
|
|
||||||
static final int EMOTES_ICON = 46;
|
|
||||||
static final int MUSIC_ICON = 47;
|
|
||||||
static final int COMBAT_TAB = 51;
|
|
||||||
static final int STATS_TAB = 52;
|
|
||||||
static final int QUESTS_TAB = 53;
|
|
||||||
static final int INVENTORY_TAB = 54;
|
|
||||||
static final int EQUIPMENT_TAB = 55;
|
|
||||||
static final int PRAYER_TAB = 56;
|
|
||||||
static final int MAGIC_TAB = 57;
|
|
||||||
static final int COMBAT_ICON = 58;
|
|
||||||
static final int STATS_ICON = 59;
|
|
||||||
static final int QUESTS_ICON = 60;
|
|
||||||
static final int INVENTORY_ICON = 61;
|
|
||||||
static final int EQUIPMENT_ICON = 62;
|
|
||||||
static final int PRAYER_ICON = 63;
|
|
||||||
static final int MAGIC_ICON = 64;
|
|
||||||
static final int ROOT_INTERFACE_CONTAINER = 65;
|
|
||||||
static final int BANK_CONTAINER = 67;
|
|
||||||
static final int INTERFACE_CONTAINER = 68;
|
|
||||||
static final int INVENTORY_CONTAINER = 72;
|
|
||||||
}
|
|
||||||
|
|
||||||
static class ResizableViewport
|
|
||||||
{
|
|
||||||
static final int MULTICOMBAT_INDICATOR = 18;
|
|
||||||
static final int FRIENDS_CHAT_TAB = 39;
|
static final int FRIENDS_CHAT_TAB = 39;
|
||||||
static final int FRIENDS_TAB = 41;
|
static final int FRIENDS_TAB = 41;
|
||||||
static final int IGNORES_TAB = 40;
|
static final int IGNORES_TAB = 40;
|
||||||
@@ -502,56 +454,89 @@ public class WidgetID
|
|||||||
static final int OPTIONS_ICON = 50;
|
static final int OPTIONS_ICON = 50;
|
||||||
static final int EMOTES_ICON = 51;
|
static final int EMOTES_ICON = 51;
|
||||||
static final int MUSIC_ICON = 52;
|
static final int MUSIC_ICON = 52;
|
||||||
static final int COMBAT_TAB = 55;
|
static final int COMBAT_TAB = 56;
|
||||||
static final int STATS_TAB = 56;
|
static final int STATS_TAB = 57;
|
||||||
static final int QUESTS_TAB = 57;
|
static final int QUESTS_TAB = 58;
|
||||||
static final int INVENTORY_TAB = 58;
|
static final int INVENTORY_TAB = 59;
|
||||||
static final int EQUIPMENT_TAB = 59;
|
static final int EQUIPMENT_TAB = 60;
|
||||||
static final int PRAYER_TAB = 60;
|
static final int PRAYER_TAB = 61;
|
||||||
static final int MAGIC_TAB = 61;
|
static final int MAGIC_TAB = 62;
|
||||||
static final int COMBAT_ICON = 62;
|
static final int COMBAT_ICON = 63;
|
||||||
static final int STATS_ICON = 63;
|
static final int STATS_ICON = 64;
|
||||||
static final int QUESTS_ICON = 64;
|
static final int QUESTS_ICON = 65;
|
||||||
static final int INVENTORY_ICON = 65;
|
static final int INVENTORY_ICON = 66;
|
||||||
static final int EQUIPMENT_ICON = 66;
|
static final int EQUIPMENT_ICON = 67;
|
||||||
static final int PRAYER_ICON = 67;
|
static final int PRAYER_ICON = 68;
|
||||||
static final int MAGIC_ICON = 68;
|
static final int MAGIC_ICON = 69;
|
||||||
static final int INTERFACE_CONTAINER = 69;
|
static final int ROOT_INTERFACE_CONTAINER = 70;
|
||||||
static final int INVENTORY_CONTAINER = 75;
|
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 = 33;
|
||||||
|
static final int MINIMAP_ORB_HOLDER = 36;
|
||||||
|
static final int FRIENDS_CHAT_TAB = 45;
|
||||||
|
static final int IGNORES_TAB = 46;
|
||||||
|
static final int FRIENDS_TAB = 47;
|
||||||
|
static final int LOGOUT_TAB = 48;
|
||||||
|
static final int OPTIONS_TAB = 49;
|
||||||
|
static final int EMOTES_TAB = 50;
|
||||||
|
static final int MUSIC_TAB = 51;
|
||||||
|
static final int FRIENDS_CHAT_ICON = 52;
|
||||||
|
static final int FRIENDS_ICON = 54;
|
||||||
|
static final int IGNORES_ICON = 53;
|
||||||
|
static final int LOGOUT_ICON = 55;
|
||||||
|
static final int OPTIONS_ICON = 56;
|
||||||
|
static final int EMOTES_ICON = 57;
|
||||||
|
static final int MUSIC_ICON = 58;
|
||||||
|
static final int COMBAT_TAB = 61;
|
||||||
|
static final int STATS_TAB = 62;
|
||||||
|
static final int QUESTS_TAB = 63;
|
||||||
|
static final int INVENTORY_TAB = 64;
|
||||||
|
static final int EQUIPMENT_TAB = 65;
|
||||||
|
static final int PRAYER_TAB = 66;
|
||||||
|
static final int MAGIC_TAB = 67;
|
||||||
|
static final int COMBAT_ICON = 68;
|
||||||
|
static final int STATS_ICON = 69;
|
||||||
|
static final int QUESTS_ICON = 70;
|
||||||
|
static final int INVENTORY_ICON = 71;
|
||||||
|
static final int EQUIPMENT_ICON = 72;
|
||||||
|
static final int PRAYER_ICON = 73;
|
||||||
|
static final int MAGIC_ICON = 74;
|
||||||
|
static final int INTERFACE_CONTAINER = 75;
|
||||||
|
static final int INVENTORY_CONTAINER = 81;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class ResizableViewportBottomLine
|
static class ResizableViewportBottomLine
|
||||||
{
|
{
|
||||||
static final int LOGOUT_BUTTON_OVERLAY = 32;
|
static final int RESIZABLE_VIEWPORT_BOTTOM_LINE = 19;
|
||||||
static final int CMB_TAB = 50;
|
static final int MINIMAP = 25;
|
||||||
static final int CMB_ICON = 60;
|
static final int MINIMAP_DRAW_AREA = 33;
|
||||||
static final int SKILLS_TAB = 51;
|
static final int MINIMAP_ORB_HOLDER = 36;
|
||||||
static final int SKILLS_ICON = 61;
|
static final int LOGOUT_BUTTON_OVERLAY = 37;
|
||||||
static final int QUESTS_TAB = 52;
|
static final int MINIMAP_LOGOUT_BUTTON = 38;
|
||||||
static final int QUESTS_ICON = 62;
|
static final int FC_ICON = 49;
|
||||||
static final int INVENTORY_TAB = 56;
|
static final int FRIEND_ICON = 51;
|
||||||
static final int INVENTORY_ICON = 63;
|
static final int SETTINGS_ICON = 52;
|
||||||
static final int EQUIP_TAB = 54;
|
static final int EMOTE_ICON = 53;
|
||||||
static final int EQUIP_ICON = 64;
|
static final int MUSIC_ICON = 54;
|
||||||
static final int PRAYER_TAB = 58;
|
static final int INVENTORY_TAB = 61;
|
||||||
static final int PRAYER_ICON = 65;
|
static final int PRAYER_TAB = 63;
|
||||||
static final int SPELL_TAB = 56;
|
static final int CMB_ICON = 65;
|
||||||
static final int SPELL_ICON = 53;
|
static final int SKILLS_ICON = 66;
|
||||||
static final int FC_TAB = 35;
|
static final int QUESTS_ICON = 67;
|
||||||
static final int FC_ICON = 44;
|
static final int INVENTORY_ICON = 68;
|
||||||
static final int IGNORE_TAB = 36;
|
static final int EQUIP_ICON = 69;
|
||||||
static final int IGNORE_ICON = 42;
|
static final int PRAYER_ICON = 70;
|
||||||
static final int FRIEND_TAB = 37;
|
static final int MAGIC_ICON = 71;
|
||||||
static final int FRIEND_ICON = 46;
|
static final int INTERFACE_CONTAINER = 74;
|
||||||
static final int SETTINGS_TAB = 38;
|
static final int INVENTORY_CONTAINER = 80;
|
||||||
static final int SETTINGS_ICON = 47;
|
|
||||||
static final int EMOTE_TAB = 39;
|
|
||||||
static final int EMOTE_ICON = 48;
|
|
||||||
static final int MUSIC_TAB = 40;
|
|
||||||
static final int MUSIC_ICON = 49;
|
|
||||||
static final int MAGIC_ICON = 66;
|
|
||||||
static final int INTERFACE_CONTAINER = 68;
|
|
||||||
static final int INVENTORY_CONTAINER = 74;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class Chatbox
|
static class Chatbox
|
||||||
@@ -671,72 +656,40 @@ public class WidgetID
|
|||||||
|
|
||||||
static class VolcanicMine
|
static class VolcanicMine
|
||||||
{
|
{
|
||||||
static final int GENERAL_INFOBOX_GROUP_ID = 4;
|
static final int TIME_LEFT = 6;
|
||||||
static final int TIME_LEFT = 8;
|
static final int POINTS = 8;
|
||||||
static final int POINTS = 10;
|
static final int STABILITY = 10;
|
||||||
static final int STABILITY = 12;
|
static final int PLAYER_COUNT = 12;
|
||||||
static final int PLAYER_COUNT = 14;
|
static final int VENT_A_PERCENTAGE = 16;
|
||||||
static final int STABILITY_INFOBOX_GROUP_ID = 5;
|
static final int VENT_B_PERCENTAGE = 17;
|
||||||
static final int VENTS_INFOBOX_GROUP_ID = 16;
|
static final int VENT_C_PERCENTAGE = 18;
|
||||||
static final int VENT_A_PERCENTAGE = 19;
|
static final int VENT_A_STATUS = 20;
|
||||||
static final int VENT_B_PERCENTAGE = 20;
|
static final int VENT_B_STATUS = 21;
|
||||||
static final int VENT_C_PERCENTAGE = 21;
|
static final int VENT_C_STATUS = 22;
|
||||||
static final int VENT_A_STATUS = 23;
|
|
||||||
static final int VENT_B_STATUS = 24;
|
|
||||||
static final int VENT_C_STATUS = 25;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class BarbarianAssault
|
static class BarbarianAssault
|
||||||
{
|
{
|
||||||
static class ATK
|
static class ATK
|
||||||
{
|
{
|
||||||
static final int ROLE_SPRITE = 12;
|
static final int ROLE_SPRITE = 11;
|
||||||
static final int ROLE = 13;
|
static final int ROLE = 12;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class HLR
|
static class HLR
|
||||||
{
|
{
|
||||||
static final int TEAMMATE1 = 19;
|
static final int TEAMMATE1 = 18;
|
||||||
static final int TEAMMATE2 = 23;
|
static final int TEAMMATE2 = 22;
|
||||||
static final int TEAMMATE3 = 27;
|
static final int TEAMMATE3 = 26;
|
||||||
static final int TEAMMATE4 = 31;
|
static final int TEAMMATE4 = 30;
|
||||||
}
|
}
|
||||||
static class HORN_GLORY
|
|
||||||
{
|
static final int ROLE_SPRITE = 10;
|
||||||
static final int ATTACKER = 5;
|
static final int ROLE = 11;
|
||||||
static final int DEFENDER = 6;
|
|
||||||
static final int COLLECTOR = 7;
|
|
||||||
static final int HEALER = 8;
|
|
||||||
}
|
|
||||||
static class REWARD_VALUES
|
|
||||||
{
|
|
||||||
static final int RUNNERS_PASSED = 14;
|
|
||||||
static final int HITPOINTS_REPLENISHED = 19;
|
|
||||||
static final int WRONG_POISON_PACKS_USED = 20;
|
|
||||||
static final int EGGS_COLLECTED = 21;
|
|
||||||
static final int FAILED_ATTACKER_ATTACKS = 22;
|
|
||||||
static final int RUNNERS_PASSED_POINTS = 24;
|
|
||||||
static final int RANGERS_KILLED = 25;
|
|
||||||
static final int FIGHTERS_KILLED = 26;
|
|
||||||
static final int HEALERS_KILLED = 27;
|
|
||||||
static final int RUNNERS_KILLED = 28;
|
|
||||||
static final int HITPOINTS_REPLENISHED_POINTS = 29;
|
|
||||||
static final int WRONG_POISON_PACKS_USED_POINTS = 30;
|
|
||||||
static final int EGGS_COLLECTED_POINTS = 31;
|
|
||||||
static final int FAILED_ATTACKER_ATTACKS_POINTS = 32;
|
|
||||||
static final int BASE_POINTS = 33;
|
|
||||||
static final int HONOUR_POINTS_REWARD = 49;
|
|
||||||
}
|
|
||||||
static final int ROLE_SPRITE = 11;
|
|
||||||
static final int ROLE = 12;
|
|
||||||
|
|
||||||
static final int REWARD_TEXT = 57;
|
static final int REWARD_TEXT = 57;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class GWD
|
|
||||||
{
|
|
||||||
static final int CONTAINER = 7;
|
|
||||||
}
|
|
||||||
|
|
||||||
static class LevelUp
|
static class LevelUp
|
||||||
{
|
{
|
||||||
static final int SKILL = 1;
|
static final int SKILL = 1;
|
||||||
@@ -751,24 +704,12 @@ public class WidgetID
|
|||||||
|
|
||||||
static class Raids
|
static class Raids
|
||||||
{
|
{
|
||||||
static final int POINTS_INFOBOX = 7;
|
static final int POINTS_INFOBOX = 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class Tob
|
static class Tob
|
||||||
{
|
{
|
||||||
static final int PARTY_INTERFACE = 6;
|
static final int PARTY_STATS = 7;
|
||||||
static final int PARTY_STATS = 10;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class ExperienceDrop
|
|
||||||
{
|
|
||||||
public static final int DROP_1 = 15;
|
|
||||||
public static final int DROP_2 = 16;
|
|
||||||
public static final int DROP_3 = 17;
|
|
||||||
public static final int DROP_4 = 18;
|
|
||||||
public static final int DROP_5 = 19;
|
|
||||||
public static final int DROP_6 = 20;
|
|
||||||
public static final int DROP_7 = 21;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class PuzzleBox
|
static class PuzzleBox
|
||||||
@@ -831,9 +772,8 @@ public class WidgetID
|
|||||||
|
|
||||||
static class Barrows
|
static class Barrows
|
||||||
{
|
{
|
||||||
static final int BARROWS_BROTHERS = 9;
|
static final int BARROWS_BROTHERS = 4;
|
||||||
static final int BARROWS_POTENTIAL = 10;
|
static final int BARROWS_POTENTIAL = 5;
|
||||||
static final int BARROWS_REWARD_INVENTORY = 3;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class Diary
|
static class Diary
|
||||||
@@ -872,11 +812,6 @@ public class WidgetID
|
|||||||
static final int LOGOUT_BUTTON = 23;
|
static final int LOGOUT_BUTTON = 23;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class FossilOxygen
|
|
||||||
{
|
|
||||||
static final int FOSSIL_ISLAND_OXYGEN_BAR = 4;
|
|
||||||
}
|
|
||||||
|
|
||||||
static class Minigames
|
static class Minigames
|
||||||
{
|
{
|
||||||
static final int TELEPORT_BUTTON = 26;
|
static final int TELEPORT_BUTTON = 26;
|
||||||
@@ -905,15 +840,10 @@ public class WidgetID
|
|||||||
|
|
||||||
static class Pvp
|
static class Pvp
|
||||||
{
|
{
|
||||||
static final int FOG_OVERLAY = 1;
|
static final int KILLDEATH_RATIO = 26;
|
||||||
static final int PVP_WIDGET_CONTAINER = 54; // OUTDATED?
|
static final int SKULL_CONTAINER = 45;
|
||||||
static final int SKULL = 56; // OUTDATED?
|
static final int SAFE_ZONE = 47;
|
||||||
static final int ATTACK_RANGE = 59; // OUTDATED?
|
static final int WILDERNESS_LEVEL = 49; // this can also be the Deadman Mode "Protection" text
|
||||||
static final int BOUNTY_HUNTER_INFO = 6;
|
|
||||||
static final int KILLDEATH_RATIO = 28;
|
|
||||||
static final int SKULL_CONTAINER = 48;
|
|
||||||
static final int SAFE_ZONE = 50;
|
|
||||||
static final int WILDERNESS_LEVEL = 53; // this can also be the Deadman Mode "Protection" text
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class KourendFavour
|
static class KourendFavour
|
||||||
@@ -923,7 +853,7 @@ public class WidgetID
|
|||||||
|
|
||||||
static class Zeah
|
static class Zeah
|
||||||
{
|
{
|
||||||
static final int MESS_HALL_COOKING_DISPLAY = 3;
|
static final int MESS_HALL_COOKING_DISPLAY = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class LootingBag
|
static class LootingBag
|
||||||
@@ -933,12 +863,7 @@ public class WidgetID
|
|||||||
|
|
||||||
static class Skotizo
|
static class Skotizo
|
||||||
{
|
{
|
||||||
static final int CONTAINER = 3;
|
static final int CONTAINER = 2;
|
||||||
}
|
|
||||||
|
|
||||||
public static class FullScreenMap
|
|
||||||
{
|
|
||||||
public static final int ROOT = 27;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static class QuestList
|
static class QuestList
|
||||||
@@ -961,17 +886,7 @@ public class WidgetID
|
|||||||
static class Barrows_Puzzle
|
static class Barrows_Puzzle
|
||||||
{
|
{
|
||||||
static final int PARENT = 0;
|
static final int PARENT = 0;
|
||||||
static final int CONTAINER = 1;
|
|
||||||
static final int TOP_ROW_PUZZLE = 2;
|
|
||||||
static final int SEQUENCE_1 = 3;
|
static final int SEQUENCE_1 = 3;
|
||||||
static final int SEQUENCE_1_TEXT = 4;
|
|
||||||
static final int SEQUENCE_2 = 5;
|
|
||||||
static final int SEQUENCE_2_TEXT = 6;
|
|
||||||
static final int SEQUENCE_3 = 7;
|
|
||||||
static final int SEQUENCE_3_TEXT = 8;
|
|
||||||
static final int SEQUENCE_4 = 9;
|
|
||||||
static final int SEQUENCE_4_TEXT = 10;
|
|
||||||
static final int NEXT_SHAPE_TEXT = 11;
|
|
||||||
static final int ANSWER1_CONTAINER = 12;
|
static final int ANSWER1_CONTAINER = 12;
|
||||||
static final int ANSWER1 = 13;
|
static final int ANSWER1 = 13;
|
||||||
static final int ANSWER2_CONTAINER = 14;
|
static final int ANSWER2_CONTAINER = 14;
|
||||||
@@ -995,10 +910,10 @@ public class WidgetID
|
|||||||
|
|
||||||
static class SettingsSide
|
static class SettingsSide
|
||||||
{
|
{
|
||||||
static final int CAMERA_ZOOM_SLIDER_TRACK = 59;
|
static final int CAMERA_ZOOM_SLIDER_TRACK = 61;
|
||||||
static final int MUSIC_SLIDER = 13;
|
static final int MUSIC_SLIDER = 14;
|
||||||
static final int SOUND_EFFECT_SLIDER = 17;
|
static final int SOUND_EFFECT_SLIDER = 18;
|
||||||
static final int AREA_SOUND_SLIDER = 21;
|
static final int AREA_SOUND_SLIDER = 22;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class Settings
|
static class Settings
|
||||||
@@ -1018,12 +933,12 @@ public class WidgetID
|
|||||||
|
|
||||||
static class Lms
|
static class Lms
|
||||||
{
|
{
|
||||||
static final int INFO = 3;
|
static final int INFO = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class LmsKDA
|
static class LmsKDA
|
||||||
{
|
{
|
||||||
static final int INFO = 6;
|
static final int INFO = 7;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class AdventureLog
|
static class AdventureLog
|
||||||
@@ -1070,11 +985,6 @@ public class WidgetID
|
|||||||
static final int BUTTON_10 = 34;
|
static final int BUTTON_10 = 34;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class EncounterHealthBar
|
|
||||||
{
|
|
||||||
static final int CONTAINER = 6;
|
|
||||||
}
|
|
||||||
|
|
||||||
static class TrailblazerAreas
|
static class TrailblazerAreas
|
||||||
{
|
{
|
||||||
static final int TELEPORT = 59;
|
static final int TELEPORT = 59;
|
||||||
@@ -1085,30 +995,12 @@ public class WidgetID
|
|||||||
static final int STATUS_INDICATOR = 4;
|
static final int STATUS_INDICATOR = 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class DialogPlayer
|
|
||||||
{
|
|
||||||
static final int HEAD_MODEL = 1;
|
|
||||||
static final int NAME = 2;
|
|
||||||
static final int CONTINUE = 3;
|
|
||||||
static final int TEXT = 4;
|
|
||||||
}
|
|
||||||
|
|
||||||
static class DialogNotification
|
static class DialogNotification
|
||||||
{
|
{
|
||||||
static final int TEXT = 0;
|
static final int TEXT = 0;
|
||||||
static final int CONTINUE = 1;
|
static final int CONTINUE = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class DialogOption
|
|
||||||
{
|
|
||||||
static final int TEXT = 0;
|
|
||||||
static final int OPTION1 = 1;
|
|
||||||
static final int OPTION2 = 2;
|
|
||||||
static final int OPTION3 = 3;
|
|
||||||
static final int OPTION4 = 4;
|
|
||||||
static final int OPTION5 = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
static class PestControlExchangeWindow
|
static class PestControlExchangeWindow
|
||||||
{
|
{
|
||||||
static final int ITEM_LIST = 2;
|
static final int ITEM_LIST = 2;
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
WORLD_MAP_VIEW(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.MAPVIEW),
|
WORLD_MAP_VIEW(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.MAPVIEW),
|
||||||
WORLD_MAP_OVERVIEW_MAP(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.OVERVIEW_MAP),
|
WORLD_MAP_OVERVIEW_MAP(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.OVERVIEW_MAP),
|
||||||
|
WORLD_MAP_BOTTOM_BAR(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.BOTTOM_BAR),
|
||||||
WORLD_MAP_SEARCH(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.SEARCH),
|
WORLD_MAP_SEARCH(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.SEARCH),
|
||||||
WORLD_MAP_SURFACE_SELECTOR(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.SURFACE_SELECTOR),
|
WORLD_MAP_SURFACE_SELECTOR(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.SURFACE_SELECTOR),
|
||||||
WORLD_MAP_TOOLTIP(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.TOOLTIP),
|
WORLD_MAP_TOOLTIP(WidgetID.WORLD_MAP_GROUP_ID, WidgetID.WorldMap.TOOLTIP),
|
||||||
@@ -73,8 +74,6 @@ public enum WidgetInfo
|
|||||||
DIARY_QUEST_WIDGET_TITLE(WidgetID.DIARY_QUEST_GROUP_ID, WidgetID.Diary.DIARY_TITLE),
|
DIARY_QUEST_WIDGET_TITLE(WidgetID.DIARY_QUEST_GROUP_ID, WidgetID.Diary.DIARY_TITLE),
|
||||||
DIARY_QUEST_WIDGET_TEXT(WidgetID.DIARY_QUEST_GROUP_ID, WidgetID.Diary.DIARY_TEXT),
|
DIARY_QUEST_WIDGET_TEXT(WidgetID.DIARY_QUEST_GROUP_ID, WidgetID.Diary.DIARY_TEXT),
|
||||||
|
|
||||||
PEST_CONTROL_BOAT_INFO(WidgetID.PEST_CONTROL_BOAT_GROUP_ID, WidgetID.PestControlBoat.INFO),
|
|
||||||
PEST_CONTROL_INFO(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.INFO),
|
|
||||||
PEST_CONTROL_PURPLE_SHIELD(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.PURPLE_SHIELD),
|
PEST_CONTROL_PURPLE_SHIELD(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.PURPLE_SHIELD),
|
||||||
PEST_CONTROL_BLUE_SHIELD(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.BLUE_SHIELD),
|
PEST_CONTROL_BLUE_SHIELD(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.BLUE_SHIELD),
|
||||||
PEST_CONTROL_YELLOW_SHIELD(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.YELLOW_SHIELD),
|
PEST_CONTROL_YELLOW_SHIELD(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.YELLOW_SHIELD),
|
||||||
@@ -90,13 +89,10 @@ public enum WidgetInfo
|
|||||||
PEST_CONTROL_ACTIVITY_BAR(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.ACTIVITY_BAR),
|
PEST_CONTROL_ACTIVITY_BAR(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.ACTIVITY_BAR),
|
||||||
PEST_CONTROL_ACTIVITY_PROGRESS(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.ACTIVITY_PROGRESS),
|
PEST_CONTROL_ACTIVITY_PROGRESS(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.ACTIVITY_PROGRESS),
|
||||||
|
|
||||||
VOLCANIC_MINE_GENERAL_INFOBOX_GROUP(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.GENERAL_INFOBOX_GROUP_ID),
|
|
||||||
VOLCANIC_MINE_TIME_LEFT(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.TIME_LEFT),
|
VOLCANIC_MINE_TIME_LEFT(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.TIME_LEFT),
|
||||||
VOLCANIC_MINE_POINTS(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.POINTS),
|
VOLCANIC_MINE_POINTS(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.POINTS),
|
||||||
VOLCANIC_MINE_STABILITY(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.STABILITY),
|
VOLCANIC_MINE_STABILITY(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.STABILITY),
|
||||||
VOLCANIC_MINE_PLAYER_COUNT(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.PLAYER_COUNT),
|
VOLCANIC_MINE_PLAYER_COUNT(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.PLAYER_COUNT),
|
||||||
VOLCANIC_MINE_VENTS_INFOBOX_GROUP(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.VENTS_INFOBOX_GROUP_ID),
|
|
||||||
VOLCANIC_MINE_STABILITY_INFOBOX_GROUP(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.STABILITY_INFOBOX_GROUP_ID),
|
|
||||||
VOLCANIC_MINE_VENT_A_PERCENTAGE(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.VENT_A_PERCENTAGE),
|
VOLCANIC_MINE_VENT_A_PERCENTAGE(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.VENT_A_PERCENTAGE),
|
||||||
VOLCANIC_MINE_VENT_B_PERCENTAGE(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.VENT_B_PERCENTAGE),
|
VOLCANIC_MINE_VENT_B_PERCENTAGE(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.VENT_B_PERCENTAGE),
|
||||||
VOLCANIC_MINE_VENT_C_PERCENTAGE(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.VENT_C_PERCENTAGE),
|
VOLCANIC_MINE_VENT_C_PERCENTAGE(WidgetID.VOLCANIC_MINE_GROUP_ID, WidgetID.VolcanicMine.VENT_C_PERCENTAGE),
|
||||||
@@ -189,7 +185,7 @@ public enum WidgetInfo
|
|||||||
LOGIN_CLICK_TO_PLAY_SCREEN(WidgetID.LOGIN_CLICK_TO_PLAY_GROUP_ID, 0),
|
LOGIN_CLICK_TO_PLAY_SCREEN(WidgetID.LOGIN_CLICK_TO_PLAY_GROUP_ID, 0),
|
||||||
LOGIN_CLICK_TO_PLAY_SCREEN_MESSAGE_OF_THE_DAY(WidgetID.LOGIN_CLICK_TO_PLAY_GROUP_ID, WidgetID.LoginClickToPlayScreen.MESSAGE_OF_THE_DAY),
|
LOGIN_CLICK_TO_PLAY_SCREEN_MESSAGE_OF_THE_DAY(WidgetID.LOGIN_CLICK_TO_PLAY_GROUP_ID, WidgetID.LoginClickToPlayScreen.MESSAGE_OF_THE_DAY),
|
||||||
|
|
||||||
FIXED_VIEWPORT(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.Viewport.FIXED_VIEWPORT),
|
FIXED_VIEWPORT(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.FIXED_VIEWPORT),
|
||||||
FIXED_VIEWPORT_ROOT_INTERFACE_CONTAINER(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.ROOT_INTERFACE_CONTAINER),
|
FIXED_VIEWPORT_ROOT_INTERFACE_CONTAINER(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.ROOT_INTERFACE_CONTAINER),
|
||||||
FIXED_VIEWPORT_BANK_CONTAINER(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.BANK_CONTAINER),
|
FIXED_VIEWPORT_BANK_CONTAINER(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.BANK_CONTAINER),
|
||||||
FIXED_VIEWPORT_INTERFACE_CONTAINER(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.INTERFACE_CONTAINER),
|
FIXED_VIEWPORT_INTERFACE_CONTAINER(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.INTERFACE_CONTAINER),
|
||||||
@@ -225,16 +221,10 @@ public enum WidgetInfo
|
|||||||
FIXED_VIEWPORT_MINIMAP(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MINIMAP),
|
FIXED_VIEWPORT_MINIMAP(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MINIMAP),
|
||||||
FIXED_VIEWPORT_MINIMAP_DRAW_AREA(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MINIMAP_DRAW_AREA),
|
FIXED_VIEWPORT_MINIMAP_DRAW_AREA(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MINIMAP_DRAW_AREA),
|
||||||
|
|
||||||
RESIZABLE_MINIMAP_WIDGET(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_WIDGET),
|
RESIZABLE_MINIMAP_STONES_WIDGET(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.MINIMAP),
|
||||||
RESIZABLE_MINIMAP_DRAW_AREA(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_DRAW_AREA),
|
RESIZABLE_MINIMAP_STONES_DRAW_AREA(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.MINIMAP_DRAW_AREA),
|
||||||
RESIZABLE_MINIMAP_ORB_HOLDER(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_ORB_HOLDER),
|
RESIZABLE_MINIMAP_STONES_ORB_HOLDER(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.MINIMAP_ORB_HOLDER),
|
||||||
RESIZABLE_MINIMAP_LOGOUT_BUTTON(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_LOGOUT_BUTTON),
|
RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX),
|
||||||
|
|
||||||
RESIZABLE_MINIMAP_STONES_WIDGET(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_WIDGET),
|
|
||||||
RESIZABLE_MINIMAP_STONES_DRAW_AREA(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_DRAW_AREA),
|
|
||||||
RESIZABLE_MINIMAP_STONES_ORB_HOLDER(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.MINIMAP_RESIZABLE_ORB_HOLDER),
|
|
||||||
|
|
||||||
RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.Viewport.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX),
|
|
||||||
RESIZABLE_VIEWPORT_COMBAT_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.COMBAT_TAB),
|
RESIZABLE_VIEWPORT_COMBAT_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.COMBAT_TAB),
|
||||||
RESIZABLE_VIEWPORT_STATS_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.STATS_TAB),
|
RESIZABLE_VIEWPORT_STATS_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.STATS_TAB),
|
||||||
RESIZABLE_VIEWPORT_QUESTS_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.QUESTS_TAB),
|
RESIZABLE_VIEWPORT_QUESTS_TAB(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.QUESTS_TAB),
|
||||||
@@ -266,7 +256,11 @@ public enum WidgetInfo
|
|||||||
RESIZABLE_VIEWPORT_INTERFACE_CONTAINER(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.INTERFACE_CONTAINER),
|
RESIZABLE_VIEWPORT_INTERFACE_CONTAINER(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.INTERFACE_CONTAINER),
|
||||||
RESIZABLE_VIEWPORT_INVENTORY_CONTAINER(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.INVENTORY_CONTAINER),
|
RESIZABLE_VIEWPORT_INVENTORY_CONTAINER(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.INVENTORY_CONTAINER),
|
||||||
|
|
||||||
RESIZABLE_VIEWPORT_BOTTOM_LINE(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.Viewport.RESIZABLE_VIEWPORT_BOTTOM_LINE),
|
RESIZABLE_MINIMAP_WIDGET(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.MINIMAP),
|
||||||
|
RESIZABLE_MINIMAP_DRAW_AREA(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.MINIMAP_DRAW_AREA),
|
||||||
|
RESIZABLE_MINIMAP_ORB_HOLDER(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.MINIMAP_ORB_HOLDER),
|
||||||
|
RESIZABLE_MINIMAP_LOGOUT_BUTTON(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.MINIMAP_LOGOUT_BUTTON),
|
||||||
|
RESIZABLE_VIEWPORT_BOTTOM_LINE(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.RESIZABLE_VIEWPORT_BOTTOM_LINE),
|
||||||
RESIZABLE_VIEWPORT_BOTTOM_LINE_LOGOUT_BUTTON(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.LOGOUT_BUTTON_OVERLAY),
|
RESIZABLE_VIEWPORT_BOTTOM_LINE_LOGOUT_BUTTON(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.LOGOUT_BUTTON_OVERLAY),
|
||||||
RESIZABLE_VIEWPORT_BOTTOM_LINE_QUESTS_ICON(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.QUESTS_ICON),
|
RESIZABLE_VIEWPORT_BOTTOM_LINE_QUESTS_ICON(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.QUESTS_ICON),
|
||||||
RESIZABLE_VIEWPORT_BOTTOM_LINE_INVENTORY_TAB(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.INVENTORY_TAB),
|
RESIZABLE_VIEWPORT_BOTTOM_LINE_INVENTORY_TAB(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.INVENTORY_TAB),
|
||||||
@@ -333,6 +327,7 @@ public enum WidgetInfo
|
|||||||
COMBAT_AUTO_RETALIATE(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.AUTO_RETALIATE),
|
COMBAT_AUTO_RETALIATE(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.AUTO_RETALIATE),
|
||||||
|
|
||||||
DIALOG_OPTION(WidgetID.DIALOG_OPTION_GROUP_ID, 0),
|
DIALOG_OPTION(WidgetID.DIALOG_OPTION_GROUP_ID, 0),
|
||||||
|
DIALOG_OPTION_OPTIONS(WidgetID.DIALOG_OPTION_GROUP_ID, WidgetID.DialogOption.OPTIONS),
|
||||||
|
|
||||||
DIALOG_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, 0),
|
DIALOG_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, 0),
|
||||||
DIALOG_SPRITE_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, WidgetID.DialogSprite.SPRITE),
|
DIALOG_SPRITE_SPRITE(WidgetID.DIALOG_SPRITE_GROUP_ID, WidgetID.DialogSprite.SPRITE),
|
||||||
@@ -343,6 +338,7 @@ public enum WidgetInfo
|
|||||||
DIALOG_NPC_HEAD_MODEL(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.HEAD_MODEL),
|
DIALOG_NPC_HEAD_MODEL(WidgetID.DIALOG_NPC_GROUP_ID, WidgetID.DialogNPC.HEAD_MODEL),
|
||||||
|
|
||||||
DIALOG_PLAYER(WidgetID.DIALOG_PLAYER_GROUP_ID, 0),
|
DIALOG_PLAYER(WidgetID.DIALOG_PLAYER_GROUP_ID, 0),
|
||||||
|
DIALOG_PLAYER_TEXT(WidgetID.DIALOG_PLAYER_GROUP_ID, WidgetID.DialogPlayer.TEXT),
|
||||||
|
|
||||||
PRIVATE_CHAT_MESSAGE(WidgetID.PRIVATE_CHAT, 0),
|
PRIVATE_CHAT_MESSAGE(WidgetID.PRIVATE_CHAT, 0),
|
||||||
|
|
||||||
@@ -398,8 +394,6 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
MOTHERLODE_MINE(WidgetID.MOTHERLODE_MINE_GROUP_ID, 0),
|
MOTHERLODE_MINE(WidgetID.MOTHERLODE_MINE_GROUP_ID, 0),
|
||||||
|
|
||||||
GWD_KC(WidgetID.GWD_KC_GROUP_ID, WidgetID.GWD.CONTAINER),
|
|
||||||
|
|
||||||
PUZZLE_BOX(WidgetID.PUZZLE_BOX_GROUP_ID, WidgetID.PuzzleBox.VISIBLE_BOX),
|
PUZZLE_BOX(WidgetID.PUZZLE_BOX_GROUP_ID, WidgetID.PuzzleBox.VISIBLE_BOX),
|
||||||
|
|
||||||
LIGHT_BOX(WidgetID.LIGHT_BOX_GROUP_ID, WidgetID.LightBox.LIGHT_BOX),
|
LIGHT_BOX(WidgetID.LIGHT_BOX_GROUP_ID, WidgetID.LightBox.LIGHT_BOX),
|
||||||
@@ -421,7 +415,6 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
RAIDS_POINTS_INFOBOX(WidgetID.RAIDS_GROUP_ID, WidgetID.Raids.POINTS_INFOBOX),
|
RAIDS_POINTS_INFOBOX(WidgetID.RAIDS_GROUP_ID, WidgetID.Raids.POINTS_INFOBOX),
|
||||||
|
|
||||||
TOB_PARTY_INTERFACE(WidgetID.TOB_PARTY_GROUP_ID, WidgetID.Tob.PARTY_INTERFACE),
|
|
||||||
TOB_PARTY_STATS(WidgetID.TOB_PARTY_GROUP_ID, WidgetID.Tob.PARTY_STATS),
|
TOB_PARTY_STATS(WidgetID.TOB_PARTY_GROUP_ID, WidgetID.Tob.PARTY_STATS),
|
||||||
|
|
||||||
BLAST_FURNACE_COFFER(WidgetID.BLAST_FURNACE_GROUP_ID, 2),
|
BLAST_FURNACE_COFFER(WidgetID.BLAST_FURNACE_GROUP_ID, 2),
|
||||||
@@ -432,15 +425,13 @@ public enum WidgetInfo
|
|||||||
EXPERIENCE_TRACKER_WIDGET(WidgetID.EXPERIENCE_TRACKER_GROUP_ID, WidgetID.ExperienceTracker.WIDGET),
|
EXPERIENCE_TRACKER_WIDGET(WidgetID.EXPERIENCE_TRACKER_GROUP_ID, WidgetID.ExperienceTracker.WIDGET),
|
||||||
EXPERIENCE_TRACKER_BOTTOM_BAR(WidgetID.EXPERIENCE_TRACKER_GROUP_ID, WidgetID.ExperienceTracker.BOTTOM_BAR),
|
EXPERIENCE_TRACKER_BOTTOM_BAR(WidgetID.EXPERIENCE_TRACKER_GROUP_ID, WidgetID.ExperienceTracker.BOTTOM_BAR),
|
||||||
|
|
||||||
FISHING_TRAWLER_CONTRIBUTION(WidgetID.FISHING_TRAWLER_GROUP_ID, 14),
|
FISHING_TRAWLER_CONTRIBUTION(WidgetID.FISHING_TRAWLER_GROUP_ID, 13),
|
||||||
FISHING_TRAWLER_TIMER(WidgetID.FISHING_TRAWLER_GROUP_ID, 15),
|
FISHING_TRAWLER_TIMER(WidgetID.FISHING_TRAWLER_GROUP_ID, 14),
|
||||||
|
|
||||||
TITHE_FARM(WidgetID.TITHE_FARM_GROUP_ID, 3),
|
TITHE_FARM(WidgetID.TITHE_FARM_GROUP_ID, 2),
|
||||||
|
|
||||||
BARROWS_INFO(WidgetID.BARROWS_GROUP_ID, 0),
|
|
||||||
BARROWS_BROTHERS(WidgetID.BARROWS_GROUP_ID, WidgetID.Barrows.BARROWS_BROTHERS),
|
BARROWS_BROTHERS(WidgetID.BARROWS_GROUP_ID, WidgetID.Barrows.BARROWS_BROTHERS),
|
||||||
BARROWS_POTENTIAL(WidgetID.BARROWS_GROUP_ID, WidgetID.Barrows.BARROWS_POTENTIAL),
|
BARROWS_POTENTIAL(WidgetID.BARROWS_GROUP_ID, WidgetID.Barrows.BARROWS_POTENTIAL),
|
||||||
BARROWS_REWARD_INVENTORY(WidgetID.BARROWS_REWARD_GROUP_ID, WidgetID.Barrows.BARROWS_REWARD_INVENTORY),
|
|
||||||
BARROWS_PUZZLE_PARENT(WidgetID.BARROWS_PUZZLE_GROUP_ID, WidgetID.Barrows_Puzzle.PARENT),
|
BARROWS_PUZZLE_PARENT(WidgetID.BARROWS_PUZZLE_GROUP_ID, WidgetID.Barrows_Puzzle.PARENT),
|
||||||
BARROWS_PUZZLE_ANSWER1(WidgetID.BARROWS_PUZZLE_GROUP_ID, WidgetID.Barrows_Puzzle.ANSWER1),
|
BARROWS_PUZZLE_ANSWER1(WidgetID.BARROWS_PUZZLE_GROUP_ID, WidgetID.Barrows_Puzzle.ANSWER1),
|
||||||
BARROWS_PUZZLE_ANSWER1_CONTAINER(WidgetID.BARROWS_PUZZLE_GROUP_ID, WidgetID.Barrows_Puzzle.ANSWER1_CONTAINER),
|
BARROWS_PUZZLE_ANSWER1_CONTAINER(WidgetID.BARROWS_PUZZLE_GROUP_ID, WidgetID.Barrows_Puzzle.ANSWER1_CONTAINER),
|
||||||
@@ -481,8 +472,6 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
WORLD_SWITCHER_LIST(WidgetID.WORLD_SWITCHER_GROUP_ID, WidgetID.WorldSwitcher.WORLD_LIST),
|
WORLD_SWITCHER_LIST(WidgetID.WORLD_SWITCHER_GROUP_ID, WidgetID.WorldSwitcher.WORLD_LIST),
|
||||||
|
|
||||||
FOSSIL_ISLAND_OXYGENBAR(WidgetID.FOSSIL_ISLAND_OXYGENBAR_ID, WidgetID.FossilOxygen.FOSSIL_ISLAND_OXYGEN_BAR),
|
|
||||||
|
|
||||||
MINIGAME_TELEPORT_BUTTON(WidgetID.MINIGAME_TAB_ID, WidgetID.Minigames.TELEPORT_BUTTON),
|
MINIGAME_TELEPORT_BUTTON(WidgetID.MINIGAME_TAB_ID, WidgetID.Minigames.TELEPORT_BUTTON),
|
||||||
|
|
||||||
SPELL_LUMBRIDGE_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.StandardSpellBook.LUMBRIDGE_HOME_TELEPORT),
|
SPELL_LUMBRIDGE_HOME_TELEPORT(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.StandardSpellBook.LUMBRIDGE_HOME_TELEPORT),
|
||||||
@@ -493,12 +482,8 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
PVP_SKULL_CONTAINER(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.SKULL_CONTAINER),
|
PVP_SKULL_CONTAINER(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.SKULL_CONTAINER),
|
||||||
PVP_WORLD_SAFE_ZONE(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.SAFE_ZONE),
|
PVP_WORLD_SAFE_ZONE(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.SAFE_ZONE),
|
||||||
|
|
||||||
PVP_FOG_OVERLAY(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.FOG_OVERLAY),
|
|
||||||
PVP_CONTAINER(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.PVP_WIDGET_CONTAINER),
|
|
||||||
|
|
||||||
PVP_WILDERNESS_LEVEL(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.WILDERNESS_LEVEL),
|
PVP_WILDERNESS_LEVEL(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.WILDERNESS_LEVEL),
|
||||||
PVP_BOUNTY_HUNTER_INFO(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.BOUNTY_HUNTER_INFO),
|
|
||||||
PVP_KILLDEATH_COUNTER(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.KILLDEATH_RATIO),
|
PVP_KILLDEATH_COUNTER(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.KILLDEATH_RATIO),
|
||||||
|
|
||||||
KOUREND_FAVOUR_OVERLAY(WidgetID.KOUREND_FAVOUR_GROUP_ID, WidgetID.KourendFavour.KOUREND_FAVOUR_OVERLAY),
|
KOUREND_FAVOUR_OVERLAY(WidgetID.KOUREND_FAVOUR_GROUP_ID, WidgetID.KourendFavour.KOUREND_FAVOUR_OVERLAY),
|
||||||
@@ -534,10 +519,8 @@ public enum WidgetInfo
|
|||||||
GAUNTLET_TIMER_CONTAINER(WidgetID.GAUNTLET_TIMER_GROUP_ID, WidgetID.GauntletTimer.CONTAINER),
|
GAUNTLET_TIMER_CONTAINER(WidgetID.GAUNTLET_TIMER_GROUP_ID, WidgetID.GauntletTimer.CONTAINER),
|
||||||
HALLOWED_SEPULCHRE_TIMER_CONTAINER(WidgetID.HALLOWED_SEPULCHRE_TIMER_GROUP_ID, WidgetID.HallowedSepulchreTimer.CONTAINER),
|
HALLOWED_SEPULCHRE_TIMER_CONTAINER(WidgetID.HALLOWED_SEPULCHRE_TIMER_GROUP_ID, WidgetID.HallowedSepulchreTimer.CONTAINER),
|
||||||
|
|
||||||
HEALTH_OVERLAY_BAR(WidgetID.HEALTH_OVERLAY_BAR_GROUP_ID, WidgetID.EncounterHealthBar.CONTAINER),
|
|
||||||
|
|
||||||
TRAILBLAZER_AREA_TELEPORT(WidgetID.TRAILBLAZER_AREAS_GROUP_ID, WidgetID.TrailblazerAreas.TELEPORT),
|
TRAILBLAZER_AREA_TELEPORT(WidgetID.TRAILBLAZER_AREAS_GROUP_ID, WidgetID.TrailblazerAreas.TELEPORT),
|
||||||
|
|
||||||
MULTICOMBAT_FIXED(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MULTICOMBAT_INDICATOR),
|
MULTICOMBAT_FIXED(WidgetID.FIXED_VIEWPORT_GROUP_ID, WidgetID.FixedViewport.MULTICOMBAT_INDICATOR),
|
||||||
MULTICOMBAT_RESIZEABLE_MODERN(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
MULTICOMBAT_RESIZEABLE_MODERN(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
||||||
MULTICOMBAT_RESIZEABLE_CLASSIC(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
MULTICOMBAT_RESIZEABLE_CLASSIC(WidgetID.RESIZABLE_VIEWPORT_OLD_SCHOOL_BOX_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
||||||
@@ -568,9 +551,6 @@ public enum WidgetInfo
|
|||||||
PEST_CONTROL_EXCHANGE_WINDOW(WidgetID.PEST_CONTROL_EXCHANGE_WINDOW_GROUP_ID, 0),
|
PEST_CONTROL_EXCHANGE_WINDOW(WidgetID.PEST_CONTROL_EXCHANGE_WINDOW_GROUP_ID, 0),
|
||||||
PEST_CONTROL_EXCHANGE_WINDOW_POINTS(WidgetID.PEST_CONTROL_EXCHANGE_WINDOW_GROUP_ID, WidgetID.PestControlExchangeWindow.POINTS),
|
PEST_CONTROL_EXCHANGE_WINDOW_POINTS(WidgetID.PEST_CONTROL_EXCHANGE_WINDOW_GROUP_ID, WidgetID.PestControlExchangeWindow.POINTS),
|
||||||
|
|
||||||
PEST_CONTROL_BOAT_INFO_POINTS(WidgetID.PEST_CONTROL_BOAT_GROUP_ID, WidgetID.PestControlBoat.POINTS),
|
|
||||||
PEST_CONTROL_INFO_TIME(WidgetID.PEST_CONTROL_GROUP_ID, WidgetID.PestControl.TIME),
|
|
||||||
|
|
||||||
BANK_UNNOTED_BUTTON(WidgetID.BANK_GROUP_ID, WidgetID.Bank.UNNOTED_BUTTON),
|
BANK_UNNOTED_BUTTON(WidgetID.BANK_GROUP_ID, WidgetID.Bank.UNNOTED_BUTTON),
|
||||||
BANK_NOTED_BUTTON(WidgetID.BANK_GROUP_ID, WidgetID.Bank.NOTED_BUTTON),
|
BANK_NOTED_BUTTON(WidgetID.BANK_GROUP_ID, WidgetID.Bank.NOTED_BUTTON),
|
||||||
|
|
||||||
@@ -615,12 +595,8 @@ public enum WidgetInfo
|
|||||||
SMITHING_ANVIL_EXCLUSIVE1(WidgetID.SMITHING_GROUP_ID, WidgetID.Smithing.EXCLUSIVE1),
|
SMITHING_ANVIL_EXCLUSIVE1(WidgetID.SMITHING_GROUP_ID, WidgetID.Smithing.EXCLUSIVE1),
|
||||||
SMITHING_ANVIL_EXCLUSIVE2(WidgetID.SMITHING_GROUP_ID, WidgetID.Smithing.EXCLUSIVE2),
|
SMITHING_ANVIL_EXCLUSIVE2(WidgetID.SMITHING_GROUP_ID, WidgetID.Smithing.EXCLUSIVE2),
|
||||||
|
|
||||||
MINIMAP_SPEC_CLICKBOX(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.SPEC_CLICKBOX),
|
|
||||||
|
|
||||||
MINIMAP_WORLD_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.WORLDMAP_ORB),
|
MINIMAP_WORLD_ORB(WidgetID.MINIMAP_GROUP_ID, WidgetID.Minimap.WORLDMAP_ORB),
|
||||||
|
|
||||||
RESIZABLE_VIEWPORT_BOTTOM_LINE_MAGIC_TAB(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewportBottomLine.SPELL_TAB),
|
|
||||||
|
|
||||||
COMBAT_WEAPON(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.WEAPON_NAME),
|
COMBAT_WEAPON(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.WEAPON_NAME),
|
||||||
|
|
||||||
COMBAT_SPECIAL_ATTACK(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPECIAL_ATTACK_BAR),
|
COMBAT_SPECIAL_ATTACK(WidgetID.COMBAT_GROUP_ID, WidgetID.Combat.SPECIAL_ATTACK_BAR),
|
||||||
@@ -636,37 +612,11 @@ public enum WidgetInfo
|
|||||||
DIALOG2_SPRITE_CONTINUE(WidgetID.DIALOG_SPRITE2_ID, WidgetID.DialogSprite2.CONTINUE),
|
DIALOG2_SPRITE_CONTINUE(WidgetID.DIALOG_SPRITE2_ID, WidgetID.DialogSprite2.CONTINUE),
|
||||||
|
|
||||||
DIALOG_PLAYER_NAME(WidgetID.DIALOG_PLAYER_GROUP_ID, WidgetID.DialogPlayer.NAME),
|
DIALOG_PLAYER_NAME(WidgetID.DIALOG_PLAYER_GROUP_ID, WidgetID.DialogPlayer.NAME),
|
||||||
DIALOG_PLAYER_TEXT(WidgetID.DIALOG_PLAYER_GROUP_ID, WidgetID.DialogPlayer.TEXT),
|
|
||||||
DIALOG_PLAYER_HEAD_MODEL(WidgetID.DIALOG_PLAYER_GROUP_ID, WidgetID.DialogPlayer.HEAD_MODEL),
|
DIALOG_PLAYER_HEAD_MODEL(WidgetID.DIALOG_PLAYER_GROUP_ID, WidgetID.DialogPlayer.HEAD_MODEL),
|
||||||
DIALOG_PLAYER_CONTINUE(WidgetID.DIALOG_PLAYER_GROUP_ID, WidgetID.DialogPlayer.CONTINUE),
|
|
||||||
|
|
||||||
DIALOG_NOTIFICATION_TEXT(WidgetID.DIALOG_NOTIFICATION_GROUP_ID, WidgetID.DialogNotification.TEXT),
|
DIALOG_NOTIFICATION_TEXT(WidgetID.DIALOG_NOTIFICATION_GROUP_ID, WidgetID.DialogNotification.TEXT),
|
||||||
DIALOG_NOTIFICATION_CONTINUE(WidgetID.DIALOG_NOTIFICATION_GROUP_ID, WidgetID.DialogNotification.CONTINUE),
|
DIALOG_NOTIFICATION_CONTINUE(WidgetID.DIALOG_NOTIFICATION_GROUP_ID, WidgetID.DialogNotification.CONTINUE),
|
||||||
|
|
||||||
DIALOG_OPTION_TEXT(WidgetID.DIALOG_OPTION_GROUP_ID, WidgetID.DialogOption.TEXT),
|
|
||||||
DIALOG_OPTION_OPTION1(WidgetID.DIALOG_OPTION_GROUP_ID, WidgetID.DialogOption.OPTION1),
|
|
||||||
DIALOG_OPTION_OPTION2(WidgetID.DIALOG_OPTION_GROUP_ID, WidgetID.DialogOption.OPTION2),
|
|
||||||
DIALOG_OPTION_OPTION3(WidgetID.DIALOG_OPTION_GROUP_ID, WidgetID.DialogOption.OPTION3),
|
|
||||||
DIALOG_OPTION_OPTION4(WidgetID.DIALOG_OPTION_GROUP_ID, WidgetID.DialogOption.OPTION4),
|
|
||||||
DIALOG_OPTION_OPTION5(WidgetID.DIALOG_OPTION_GROUP_ID, WidgetID.DialogOption.OPTION5),
|
|
||||||
|
|
||||||
BA_RUNNERS_PASSED(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.RUNNERS_PASSED),
|
|
||||||
BA_HITPOINTS_REPLENISHED(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.HITPOINTS_REPLENISHED),
|
|
||||||
BA_WRONG_POISON_PACKS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.WRONG_POISON_PACKS_USED),
|
|
||||||
BA_EGGS_COLLECTED(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.EGGS_COLLECTED),
|
|
||||||
BA_FAILED_ATTACKER_ATTACKS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.FAILED_ATTACKER_ATTACKS),
|
|
||||||
BA_RUNNERS_PASSED_POINTS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.RUNNERS_PASSED_POINTS),
|
|
||||||
BA_RANGERS_KILLED(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.RANGERS_KILLED),
|
|
||||||
BA_FIGHTERS_KILLED(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.FIGHTERS_KILLED),
|
|
||||||
BA_HEALERS_KILLED(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.HEALERS_KILLED),
|
|
||||||
BA_RUNNERS_KILLED(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.RUNNERS_KILLED),
|
|
||||||
BA_HITPOINTS_REPLENISHED_POINTS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.HITPOINTS_REPLENISHED_POINTS),
|
|
||||||
BA_WRONG_POISON_PACKS_POINTS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.WRONG_POISON_PACKS_USED_POINTS),
|
|
||||||
BA_EGGS_COLLECTED_POINTS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.EGGS_COLLECTED_POINTS),
|
|
||||||
BA_FAILED_ATTACKER_ATTACKS_POINTS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.FAILED_ATTACKER_ATTACKS_POINTS),
|
|
||||||
BA_HONOUR_POINTS_REWARD(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.HONOUR_POINTS_REWARD),
|
|
||||||
BA_BASE_POINTS(WidgetID.BA_REWARD_GROUP_ID, WidgetID.BarbarianAssault.REWARD_VALUES.BASE_POINTS),
|
|
||||||
|
|
||||||
LEVEL_UP_CONTINUE(WidgetID.LEVEL_UP_GROUP_ID, WidgetID.LevelUp.CONTINUE),
|
LEVEL_UP_CONTINUE(WidgetID.LEVEL_UP_GROUP_ID, WidgetID.LevelUp.CONTINUE),
|
||||||
|
|
||||||
THEATRE_OF_BLOOD_PARTY(WidgetID.THEATRE_OF_BLOOD_PARTY_GROUP_ID, WidgetID.TheatreOfBloodParty.CONTAINER),
|
THEATRE_OF_BLOOD_PARTY(WidgetID.THEATRE_OF_BLOOD_PARTY_GROUP_ID, WidgetID.TheatreOfBloodParty.CONTAINER),
|
||||||
@@ -687,9 +637,6 @@ public enum WidgetInfo
|
|||||||
FOSSIL_MUSHROOM_SWAMP(WidgetID.FOSSIL_ISLAND_MUSHROOM_TELE_GROUP_ID, WidgetID.FossilMushroomTeleport.SWAMP),
|
FOSSIL_MUSHROOM_SWAMP(WidgetID.FOSSIL_ISLAND_MUSHROOM_TELE_GROUP_ID, WidgetID.FossilMushroomTeleport.SWAMP),
|
||||||
FOSSIL_MUSHROOM_MEADOW(WidgetID.FOSSIL_ISLAND_MUSHROOM_TELE_GROUP_ID, WidgetID.FossilMushroomTeleport.MUSHROOM_MEADOW),
|
FOSSIL_MUSHROOM_MEADOW(WidgetID.FOSSIL_ISLAND_MUSHROOM_TELE_GROUP_ID, WidgetID.FossilMushroomTeleport.MUSHROOM_MEADOW),
|
||||||
|
|
||||||
PVP_SKULL(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.SKULL),
|
|
||||||
PVP_ATTACK_RANGE(WidgetID.PVP_GROUP_ID, WidgetID.Pvp.ATTACK_RANGE),
|
|
||||||
|
|
||||||
SPELLBOOK(WidgetID.SPELLBOOK_GROUP_ID, 0),
|
SPELLBOOK(WidgetID.SPELLBOOK_GROUP_ID, 0),
|
||||||
SPELLBOOK_FILTERED_BOUNDS(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTERED_SPELLS_BOUNDS),
|
SPELLBOOK_FILTERED_BOUNDS(WidgetID.SPELLBOOK_GROUP_ID, WidgetID.SpellBook.FILTERED_SPELLS_BOUNDS),
|
||||||
|
|
||||||
@@ -868,8 +815,6 @@ public enum WidgetInfo
|
|||||||
|
|
||||||
MULTICOMBAT_RESIZEABLE(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
MULTICOMBAT_RESIZEABLE(WidgetID.RESIZABLE_VIEWPORT_BOTTOM_LINE_GROUP_ID, WidgetID.ResizableViewport.MULTICOMBAT_INDICATOR),
|
||||||
|
|
||||||
FULLSCREEN_MAP_ROOT(WidgetID.FULLSCREEN_CONTAINER_TLI, WidgetID.FullScreenMap.ROOT),
|
|
||||||
|
|
||||||
MUSICTAB_INTERFACE(WidgetID.MUSICTAB_GROUP_ID, 1),
|
MUSICTAB_INTERFACE(WidgetID.MUSICTAB_GROUP_ID, 1),
|
||||||
MUSICTAB_SONG_BOX(WidgetID.MUSICTAB_GROUP_ID, 2),
|
MUSICTAB_SONG_BOX(WidgetID.MUSICTAB_GROUP_ID, 2),
|
||||||
MUSICTAB_ALL_SONGS(WidgetID.MUSICTAB_GROUP_ID, 3),
|
MUSICTAB_ALL_SONGS(WidgetID.MUSICTAB_GROUP_ID, 3),
|
||||||
@@ -910,14 +855,6 @@ public enum WidgetInfo
|
|||||||
BANK_PIN_9(WidgetID.BANK_PIN_GROUP_ID, WidgetID.BankPin.BUTTON_9),
|
BANK_PIN_9(WidgetID.BANK_PIN_GROUP_ID, WidgetID.BankPin.BUTTON_9),
|
||||||
BANK_PIN_10(WidgetID.BANK_PIN_GROUP_ID, WidgetID.BankPin.BUTTON_10),
|
BANK_PIN_10(WidgetID.BANK_PIN_GROUP_ID, WidgetID.BankPin.BUTTON_10),
|
||||||
|
|
||||||
XP_DROP_1(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_1),
|
|
||||||
XP_DROP_2(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_2),
|
|
||||||
XP_DROP_3(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_3),
|
|
||||||
XP_DROP_4(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_4),
|
|
||||||
XP_DROP_5(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_5),
|
|
||||||
XP_DROP_6(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_6),
|
|
||||||
XP_DROP_7(WidgetID.EXPERIENCE_DROP_GROUP_ID, WidgetID.ExperienceDrop.DROP_7),
|
|
||||||
|
|
||||||
JEWELLERY_BOX_DUEL_RING(WidgetID.JEWELLERY_BOX_GROUP_ID, WidgetID.JewelBox.DUEL_RING),
|
JEWELLERY_BOX_DUEL_RING(WidgetID.JEWELLERY_BOX_GROUP_ID, WidgetID.JewelBox.DUEL_RING),
|
||||||
JEWELLERY_BOX_GAME_NECK(WidgetID.JEWELLERY_BOX_GROUP_ID, WidgetID.JewelBox.GAME_NECK),
|
JEWELLERY_BOX_GAME_NECK(WidgetID.JEWELLERY_BOX_GROUP_ID, WidgetID.JewelBox.GAME_NECK),
|
||||||
JEWELLERY_BOX_COMB_BRAC(WidgetID.JEWELLERY_BOX_GROUP_ID, WidgetID.JewelBox.COMB_BRAC),
|
JEWELLERY_BOX_COMB_BRAC(WidgetID.JEWELLERY_BOX_GROUP_ID, WidgetID.JewelBox.COMB_BRAC),
|
||||||
|
|||||||
@@ -395,6 +395,7 @@ public class RuneLite
|
|||||||
// Add core overlays
|
// Add core overlays
|
||||||
WidgetOverlay.createOverlays(client).forEach(overlayManager::add);
|
WidgetOverlay.createOverlays(client).forEach(overlayManager::add);
|
||||||
overlayManager.add(worldMapOverlay.get());
|
overlayManager.add(worldMapOverlay.get());
|
||||||
|
eventBus.register(worldMapOverlay.get());
|
||||||
overlayManager.add(tooltipOverlay.get());
|
overlayManager.add(tooltipOverlay.get());
|
||||||
|
|
||||||
playerManager.get();
|
playerManager.get();
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ public class ChatIconManager
|
|||||||
|
|
||||||
private static int clanRankToIdx(int key)
|
private static int clanRankToIdx(int key)
|
||||||
{
|
{
|
||||||
// keys are -5 to 264, with no 0
|
// keys are -6 to 265, with no 0
|
||||||
return key < 0 ? ~key : (key + 4);
|
return key < 0 ? ~key : (key + 5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -109,7 +109,7 @@ public class LumbridgeDiaryRequirement extends GenericDiaryRequirement
|
|||||||
new SkillRequirement(Skill.FARMING, 63));
|
new SkillRequirement(Skill.FARMING, 63));
|
||||||
add("Light your mining helmet in the Lumbridge castle basement.",
|
add("Light your mining helmet in the Lumbridge castle basement.",
|
||||||
new SkillRequirement(Skill.FIREMAKING, 65));
|
new SkillRequirement(Skill.FIREMAKING, 65));
|
||||||
add("Recharge your prayer at Clan Wars with Smite activated.",
|
add("Recharge your prayer at the Duel Arena with Smite activated.",
|
||||||
new SkillRequirement(Skill.PRAYER, 52));
|
new SkillRequirement(Skill.PRAYER, 52));
|
||||||
add("Craft, string and enchant an Amulet of Power in Lumbridge.",
|
add("Craft, string and enchant an Amulet of Power in Lumbridge.",
|
||||||
new SkillRequirement(Skill.CRAFTING, 70),
|
new SkillRequirement(Skill.CRAFTING, 70),
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ import net.runelite.api.coords.WorldPoint;
|
|||||||
enum Courses
|
enum Courses
|
||||||
{
|
{
|
||||||
GNOME(86.5, 46, 9781),
|
GNOME(86.5, 46, 9781),
|
||||||
|
SHAYZIEN_BASIC(133.2, 92, 6200),
|
||||||
DRAYNOR(120.0, 79, 12338),
|
DRAYNOR(120.0, 79, 12338),
|
||||||
AL_KHARID(180.0, 0, 13105, new WorldPoint(3299, 3194, 0)),
|
AL_KHARID(180.0, 0, 13105, new WorldPoint(3299, 3194, 0)),
|
||||||
PYRAMID(722.0, 0, 13356, new WorldPoint(3364, 2830, 0)),
|
PYRAMID(722.0, 0, 13356, new WorldPoint(3364, 2830, 0)),
|
||||||
@@ -40,6 +41,7 @@ enum Courses
|
|||||||
BARBARIAN(139.5, 60, 10039),
|
BARBARIAN(139.5, 60, 10039),
|
||||||
CANIFIS(240.0, 175, 13878),
|
CANIFIS(240.0, 175, 13878),
|
||||||
APE_ATOLL(580.0, 300, 11050),
|
APE_ATOLL(580.0, 300, 11050),
|
||||||
|
SHAYZIEN_ADVANCED(474.3, 382, 5944),
|
||||||
FALADOR(440, 180, 12084),
|
FALADOR(440, 180, 12084),
|
||||||
WILDERNESS(571.0, 499, 11837),
|
WILDERNESS(571.0, 499, 11837),
|
||||||
WEREWOLF(730.0, 380, 14234),
|
WEREWOLF(730.0, 380, 14234),
|
||||||
|
|||||||
@@ -98,7 +98,13 @@ class Obstacles
|
|||||||
ROPE_BRIDGE_36233, TIGHTROPE_36234, ROPE_BRIDGE_36235, TIGHTROPE_36236, TIGHTROPE_36237, DARK_HOLE_36238,
|
ROPE_BRIDGE_36233, TIGHTROPE_36234, ROPE_BRIDGE_36235, TIGHTROPE_36236, TIGHTROPE_36237, DARK_HOLE_36238,
|
||||||
// Rellekka Lighthouse
|
// Rellekka Lighthouse
|
||||||
BASALT_ROCK, BASALT_ROCK_4553, BASALT_ROCK_4554, BASALT_ROCK_4556, BASALT_ROCK_4558, ROCKY_SHORE,
|
BASALT_ROCK, BASALT_ROCK_4553, BASALT_ROCK_4554, BASALT_ROCK_4556, BASALT_ROCK_4558, ROCKY_SHORE,
|
||||||
BASALT_ROCK_4557, BASALT_ROCK_4555, BASALT_ROCK_4552, BEACH
|
BASALT_ROCK_4557, BASALT_ROCK_4555, BASALT_ROCK_4552, BEACH,
|
||||||
|
// Shayzien
|
||||||
|
LADDER_42209, MONKEYBARS_42211, TIGHTROPE_42212,
|
||||||
|
// Shayzien basic
|
||||||
|
BAR_42213, TIGHTROPE_42214, TIGHTROPE_42215, GAP_42216,
|
||||||
|
// Shayzien hard
|
||||||
|
BEAM, EDGE_42218, EDGE_42219, BEAM_42220, ZIPLINE
|
||||||
);
|
);
|
||||||
|
|
||||||
static final Set<Integer> PORTAL_OBSTACLE_IDS = ImmutableSet.of(
|
static final Set<Integer> PORTAL_OBSTACLE_IDS = ImmutableSet.of(
|
||||||
|
|||||||
-4
@@ -31,13 +31,10 @@ import javax.inject.Inject;
|
|||||||
import lombok.AllArgsConstructor;
|
import lombok.AllArgsConstructor;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
|
||||||
import net.runelite.api.widgets.Widget;
|
import net.runelite.api.widgets.Widget;
|
||||||
import net.runelite.api.widgets.WidgetInfo;
|
import net.runelite.api.widgets.WidgetInfo;
|
||||||
import net.runelite.client.ui.overlay.Overlay;
|
import net.runelite.client.ui.overlay.Overlay;
|
||||||
import net.runelite.client.ui.overlay.OverlayLayer;
|
import net.runelite.client.ui.overlay.OverlayLayer;
|
||||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
|
||||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
|
||||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||||
|
|
||||||
class HealerOverlay extends Overlay
|
class HealerOverlay extends Overlay
|
||||||
@@ -74,7 +71,6 @@ class HealerOverlay extends Overlay
|
|||||||
this.client = client;
|
this.client = client;
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
this.config = config;
|
this.config = config;
|
||||||
getMenuEntries().add(new OverlayMenuEntry(RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "B.A. overlay"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
-4
@@ -29,12 +29,9 @@ import java.awt.Graphics2D;
|
|||||||
import java.awt.Rectangle;
|
import java.awt.Rectangle;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
|
||||||
import net.runelite.api.widgets.Widget;
|
import net.runelite.api.widgets.Widget;
|
||||||
import net.runelite.client.ui.overlay.Overlay;
|
import net.runelite.client.ui.overlay.Overlay;
|
||||||
import net.runelite.client.ui.overlay.OverlayLayer;
|
import net.runelite.client.ui.overlay.OverlayLayer;
|
||||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
|
||||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
|
||||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||||
|
|
||||||
class TimerOverlay extends Overlay
|
class TimerOverlay extends Overlay
|
||||||
@@ -52,7 +49,6 @@ class TimerOverlay extends Overlay
|
|||||||
this.client = client;
|
this.client = client;
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
this.config = config;
|
this.config = config;
|
||||||
getMenuEntries().add(new OverlayMenuEntry(RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "B.A. overlay"));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
+1
@@ -51,6 +51,7 @@ class ClueScrollWorldMapPoint extends WorldMapPoint
|
|||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
this.setSnapToEdge(true);
|
this.setSnapToEdge(true);
|
||||||
this.setJumpOnClick(true);
|
this.setJumpOnClick(true);
|
||||||
|
this.setName("Clue Scroll");
|
||||||
this.setImage(clueScrollWorldImage);
|
this.setImage(clueScrollWorldImage);
|
||||||
this.setImagePoint(clueScrollWorldImagePoint);
|
this.setImagePoint(clueScrollWorldImagePoint);
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-4
@@ -126,8 +126,8 @@ public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueSc
|
|||||||
new AnagramClue("O BIRDZ A ZANY EN PC", "Cap'n Izzy No-Beard", new WorldPoint(2807, 3191, 0), "Brimhaven Agility Arena", "How many Banana Trees are there in the plantation?", "33"),
|
new AnagramClue("O BIRDZ A ZANY EN PC", "Cap'n Izzy No-Beard", new WorldPoint(2807, 3191, 0), "Brimhaven Agility Arena", "How many Banana Trees are there in the plantation?", "33"),
|
||||||
new AnagramClue("OK CO", "Cook", new WorldPoint(3207, 3214, 0), "Ground floor of Lumbridge Castle", "How many cannons does Lumbridge Castle have?", "9"),
|
new AnagramClue("OK CO", "Cook", new WorldPoint(3207, 3214, 0), "Ground floor of Lumbridge Castle", "How many cannons does Lumbridge Castle have?", "9"),
|
||||||
new AnagramClue("OR ZINC FUMES WARD", "Wizard Frumscone", new WorldPoint(2594, 3086, 0), "Downstairs in the Wizards' Guild"),
|
new AnagramClue("OR ZINC FUMES WARD", "Wizard Frumscone", new WorldPoint(2594, 3086, 0), "Downstairs in the Wizards' Guild"),
|
||||||
new AnagramClue("OUR OWN NEEDS", "Nurse Wooned", new WorldPoint(1511, 3619, 0), "Shayzien Infirmary", "How many wounded soldiers are in the camp?", "19"),
|
new AnagramClue("OUR OWN NEEDS", "Nurse Wooned", new WorldPoint(1511, 3619, 0), "Shayzien Infirmary", "How many wounded soldiers are in the camp?", "16"),
|
||||||
new AnagramClue("PACINNG A TAIE", "Captain Ginea", new WorldPoint(1561, 3602, 0), "Building east of Shayzien combat ring", "1 soldier can deal with 6 lizardmen. How many soldiers do we need for an army of 678 lizardmen?", "113"),
|
new AnagramClue("PACINNG A TAIE", "Captain Ginea", new WorldPoint(1504, 3632, 0), "Tent east of Shayzien Encampment war tent", "1 soldier can deal with 6 lizardmen. How many soldiers do we need for an army of 678 lizardmen?", "113"),
|
||||||
new AnagramClue("PEAK REFLEX", "Flax keeper", new WorldPoint(2744, 3444, 0), "Flax field south of Seers Village", "If I have 1014 flax, and I spin a third of them into bowstring, how many flax do I have left?", "676"),
|
new AnagramClue("PEAK REFLEX", "Flax keeper", new WorldPoint(2744, 3444, 0), "Flax field south of Seers Village", "If I have 1014 flax, and I spin a third of them into bowstring, how many flax do I have left?", "676"),
|
||||||
new AnagramClue("PEATY PERT", "Party Pete", new WorldPoint(3047, 3376, 0), "Falador Party Room"),
|
new AnagramClue("PEATY PERT", "Party Pete", new WorldPoint(3047, 3376, 0), "Falador Party Room"),
|
||||||
new AnagramClue("PROFS LOSE WRONG PIE", "Professor Onglewip", new WorldPoint(3113, 3162, 0), "Ground floor of Wizards Tower"),
|
new AnagramClue("PROFS LOSE WRONG PIE", "Professor Onglewip", new WorldPoint(3113, 3162, 0), "Ground floor of Wizards Tower"),
|
||||||
@@ -149,7 +149,7 @@ public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueSc
|
|||||||
new AnagramClue("TEN WIGS ON", "Wingstone", new WorldPoint(3389, 2877, 0), "Between Nardah & Agility Pyramid"),
|
new AnagramClue("TEN WIGS ON", "Wingstone", new WorldPoint(3389, 2877, 0), "Between Nardah & Agility Pyramid"),
|
||||||
new AnagramClue("THEM CAL CAME", "Cam the Camel", new WorldPoint(3300, 3231, 0), "Just outside of the Duel Arena"),
|
new AnagramClue("THEM CAL CAME", "Cam the Camel", new WorldPoint(3300, 3231, 0), "Just outside of the Duel Arena"),
|
||||||
new AnagramClue("THICKNO", "Hickton", new WorldPoint(2822, 3442, 0), "Catherby fletching shop", "How many ranges are there in Catherby?", "2"),
|
new AnagramClue("THICKNO", "Hickton", new WorldPoint(2822, 3442, 0), "Catherby fletching shop", "How many ranges are there in Catherby?", "2"),
|
||||||
new AnagramClue("TWENTY CURE IRON", "New recruit Tony", new WorldPoint(1498, 3544, 0), "Shayzien Graveyard"),
|
new AnagramClue("TWENTY CURE IRON", "New recruit Tony", new WorldPoint(1503, 3553, 0), "Shayzien Graveyard"),
|
||||||
new AnagramClue("UNLEASH NIGHT MIST", "Sigli the Huntsman", new WorldPoint(2660, 3654, 0), "Rellekka", "What is the combined slayer requirement of every monster in the slayer cave?", "302"),
|
new AnagramClue("UNLEASH NIGHT MIST", "Sigli the Huntsman", new WorldPoint(2660, 3654, 0), "Rellekka", "What is the combined slayer requirement of every monster in the slayer cave?", "302"),
|
||||||
new AnagramClue("VESTE", "Steve", new WorldPoint(2432, 3423, 0), "Upstairs Wyvern Area or Stronghold Slayer Cave", "How many farming patches are there in Gnome stronghold?", "2"),
|
new AnagramClue("VESTE", "Steve", new WorldPoint(2432, 3423, 0), "Upstairs Wyvern Area or Stronghold Slayer Cave", "How many farming patches are there in Gnome stronghold?", "2"),
|
||||||
new AnagramClue("VEIL VEDA", "Evil Dave", new WorldPoint(3079, 9892, 0), "Doris' basement, Edgeville", "What is 333 multiplied by 2?", "666"),
|
new AnagramClue("VEIL VEDA", "Evil Dave", new WorldPoint(3079, 9892, 0), "Doris' basement, Edgeville", "What is 333 multiplied by 2?", "666"),
|
||||||
@@ -167,7 +167,8 @@ public class AnagramClue extends ClueScroll implements TextClueScroll, NpcClueSc
|
|||||||
new AnagramClue("TAUNT ROOF", "Fortunato", new WorldPoint(3080, 3250, 0), "Draynor Village Market"),
|
new AnagramClue("TAUNT ROOF", "Fortunato", new WorldPoint(3080, 3250, 0), "Draynor Village Market"),
|
||||||
new AnagramClue("HICK JET", "Jethick", new WorldPoint(2541, 3305, 0), "West Ardougne", "How many graves are there in the city graveyard?", "38"),
|
new AnagramClue("HICK JET", "Jethick", new WorldPoint(2541, 3305, 0), "West Ardougne", "How many graves are there in the city graveyard?", "38"),
|
||||||
new AnagramClue("RUE GO", "Goreu", new WorldPoint(2335, 3162, 0), "Lletya"),
|
new AnagramClue("RUE GO", "Goreu", new WorldPoint(2335, 3162, 0), "Lletya"),
|
||||||
new AnagramClue("BRUCIE CATNAP", "Captain Bruce", new WorldPoint(1520, 3558, 0), "Graveyard of Heroes")
|
new AnagramClue("BRUCIE CATNAP", "Captain Bruce", new WorldPoint(1520, 3558, 0), "Graveyard of Heroes"),
|
||||||
|
new AnagramClue("UESNKRL NRIEDDO", "Drunken soldier", new WorldPoint(1551, 3565, 0), "Shayzien pub", "If 13 Shayzien Soldiers kill 46 Lizardmen each in a day, how many Lizardmen have they killed in total in a single day?", "598")
|
||||||
);
|
);
|
||||||
|
|
||||||
private final String text;
|
private final String text;
|
||||||
|
|||||||
+1
-1
@@ -111,7 +111,7 @@ public class CoordinateClue extends ClueScroll implements TextClueScroll, Locati
|
|||||||
.put(new WorldPoint(2363, 3531, 0), new CoordinateClueInfo("North-east of Eagles' Peak (AKQ)."))
|
.put(new WorldPoint(2363, 3531, 0), new CoordinateClueInfo("North-east of Eagles' Peak (AKQ)."))
|
||||||
.put(new WorldPoint(2919, 3535, 0), new CoordinateClueInfo("East of Burthorpe pub."))
|
.put(new WorldPoint(2919, 3535, 0), new CoordinateClueInfo("East of Burthorpe pub."))
|
||||||
.put(new WorldPoint(3548, 3560, 0), new CoordinateClueInfo("Inside Fenkenstrain's Castle."))
|
.put(new WorldPoint(3548, 3560, 0), new CoordinateClueInfo("Inside Fenkenstrain's Castle."))
|
||||||
.put(new WorldPoint(1476, 3566, 0), new CoordinateClueInfo("Graveyard of Heroes west of Shayzien (DJR)."))
|
.put(new WorldPoint(1476, 3566, 0), new CoordinateClueInfo("Graveyard of Heroes in west Shayzien."))
|
||||||
.put(new WorldPoint(2735, 3638, 0), new CoordinateClueInfo("East of Rellekka, north-west of Golden Apple Tree (AJR)."))
|
.put(new WorldPoint(2735, 3638, 0), new CoordinateClueInfo("East of Rellekka, north-west of Golden Apple Tree (AJR)."))
|
||||||
.put(new WorldPoint(2681, 3653, 0), new CoordinateClueInfo("Rellekka, in the garden of the south-east house."))
|
.put(new WorldPoint(2681, 3653, 0), new CoordinateClueInfo("Rellekka, in the garden of the south-east house."))
|
||||||
.put(new WorldPoint(2537, 3881, 0), new CoordinateClueInfo("Miscellania (CIP)."))
|
.put(new WorldPoint(2537, 3881, 0), new CoordinateClueInfo("Miscellania (CIP)."))
|
||||||
|
|||||||
+6
-1
@@ -324,7 +324,12 @@ public class CrypticClue extends ClueScroll implements TextClueScroll, NpcClueSc
|
|||||||
new CrypticClue("Observing someone in a swamp, under the telescope lies treasure.", new WorldPoint(2221, 3091, 0), "Dig next to the telescope on Broken Handz's island in the poison wastes. (Accessible only through fairy ring DLR)"),
|
new CrypticClue("Observing someone in a swamp, under the telescope lies treasure.", new WorldPoint(2221, 3091, 0), "Dig next to the telescope on Broken Handz's island in the poison wastes. (Accessible only through fairy ring DLR)"),
|
||||||
new CrypticClue("A general who sets a 'shining' example.", "General Hining", new WorldPoint(2186, 3148, 0), "Talk to General Hining in Tyras Camp."),
|
new CrypticClue("A general who sets a 'shining' example.", "General Hining", new WorldPoint(2186, 3148, 0), "Talk to General Hining in Tyras Camp."),
|
||||||
new CrypticClue("Has no one told you it is rude to ask a lady her age?", "Mawrth", new WorldPoint(2333, 3165, 0), "Talk to Mawrth in Lletya."),
|
new CrypticClue("Has no one told you it is rude to ask a lady her age?", "Mawrth", new WorldPoint(2333, 3165, 0), "Talk to Mawrth in Lletya."),
|
||||||
new CrypticClue("Elvish onions.", new WorldPoint(3303, 6092, 0), "Dig in the onion patch east of the Prifddinas allotments.")
|
new CrypticClue("Elvish onions.", new WorldPoint(3303, 6092, 0), "Dig in the onion patch east of the Prifddinas allotments."),
|
||||||
|
new CrypticClue("Dig by the Giant's Den entrance, looking out over Lake Molch.", new WorldPoint(1418, 3591, 0), "South-east of Lake Molch in Zeah, outside the cave entrance."),
|
||||||
|
new CrypticClue("Search the crates in the fruit store just east of the Hosidius town centre.", CRATES_27533, new WorldPoint(1798, 3612, 0), "Search the crates in the back room of the Hosidius fruit store."),
|
||||||
|
new CrypticClue("A graceful man of many colours, his crates must be full of many delights.", "Hill Giant", CRATE_42067, new WorldPoint(1506, 3591, 2), "Kill any Hill Giant for a medium key. Then search the crate on the top floor of Osten's clothing shop in Shayzien."),
|
||||||
|
new CrypticClue("Search the basket of apples in an orchard, south of the unknown grave surrounded by white roses.", APPLE_BASKET, new WorldPoint(1718, 3626, 0), "Search the middle apple basket in the apple orchard north of Hosidius."),
|
||||||
|
new CrypticClue("Dig in the lair of red wings, within the temple of the Sun and Moon.", new WorldPoint(1820, 9935, 0), "Forthos Dungeon. In the center of the red dragons.")
|
||||||
);
|
);
|
||||||
|
|
||||||
private final String text;
|
private final String text;
|
||||||
|
|||||||
+5
-4
@@ -83,7 +83,7 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu
|
|||||||
new EmoteClue("Beckon by a collection of crystalline maple trees. Beware of double agents! Equip Bryophyta's staff and a nature tiara.", "North of Prifddinas", CRYSTALLINE_MAPLE_TREES, new WorldPoint(2211, 3427, 0), DOUBLE_AGENT_141, BECKON, range("Bryophyta's staff", BRYOPHYTAS_STAFF_UNCHARGED, BRYOPHYTAS_STAFF), item(NATURE_TIARA)),
|
new EmoteClue("Beckon by a collection of crystalline maple trees. Beware of double agents! Equip Bryophyta's staff and a nature tiara.", "North of Prifddinas", CRYSTALLINE_MAPLE_TREES, new WorldPoint(2211, 3427, 0), DOUBLE_AGENT_141, BECKON, range("Bryophyta's staff", BRYOPHYTAS_STAFF_UNCHARGED, BRYOPHYTAS_STAFF), item(NATURE_TIARA)),
|
||||||
new EmoteClue("Beckon in the Digsite, near the eastern winch. Bow before you talk to me. Equip a green gnome hat, snakeskin boots and an iron pickaxe.", "Digsite", DIGSITE, new WorldPoint(3370, 3425, 0), BECKON, BOW, item(GREEN_HAT), item(SNAKESKIN_BOOTS), item(IRON_PICKAXE)),
|
new EmoteClue("Beckon in the Digsite, near the eastern winch. Bow before you talk to me. Equip a green gnome hat, snakeskin boots and an iron pickaxe.", "Digsite", DIGSITE, new WorldPoint(3370, 3425, 0), BECKON, BOW, item(GREEN_HAT), item(SNAKESKIN_BOOTS), item(IRON_PICKAXE)),
|
||||||
new EmoteClue("Beckon in Tai Bwo Wannai. Clap before you talk to me. Equip green dragonhide chaps, a ring of dueling and a mithril medium helmet.", "Tai Bwo Wannai", SOUTH_OF_THE_SHRINE_IN_TAI_BWO_WANNAI_VILLAGE, new WorldPoint(2803, 3073, 0), BECKON, CLAP, item(GREEN_DHIDE_CHAPS), any("Ring of dueling", item(RING_OF_DUELING1), item(RING_OF_DUELING2), item(RING_OF_DUELING3), item(RING_OF_DUELING4), item(RING_OF_DUELING5), item(RING_OF_DUELING6), item(RING_OF_DUELING7), item(RING_OF_DUELING8)), item(MITHRIL_MED_HELM)),
|
new EmoteClue("Beckon in Tai Bwo Wannai. Clap before you talk to me. Equip green dragonhide chaps, a ring of dueling and a mithril medium helmet.", "Tai Bwo Wannai", SOUTH_OF_THE_SHRINE_IN_TAI_BWO_WANNAI_VILLAGE, new WorldPoint(2803, 3073, 0), BECKON, CLAP, item(GREEN_DHIDE_CHAPS), any("Ring of dueling", item(RING_OF_DUELING1), item(RING_OF_DUELING2), item(RING_OF_DUELING3), item(RING_OF_DUELING4), item(RING_OF_DUELING5), item(RING_OF_DUELING6), item(RING_OF_DUELING7), item(RING_OF_DUELING8)), item(MITHRIL_MED_HELM)),
|
||||||
new EmoteClue("Beckon in the combat ring of Shayzien. Show your anger before you talk to me. Equip an adamant platebody, adamant full helm and adamant platelegs.", "Shayzien combat ring", WEST_OF_THE_SHAYZIEN_COMBAT_RING, new WorldPoint(1545, 3594, 0), BECKON, ANGRY, item(ADAMANT_PLATELEGS), item(ADAMANT_PLATEBODY), item(ADAMANT_FULL_HELM)),
|
new EmoteClue("Beckon in the Shayzien Combat Ring. Show your anger before you talk to me. Equip an adamant platebody, adamant full helm and adamant platelegs.", "Shayzien Combat Ring", WEST_OF_THE_SHAYZIEN_COMBAT_RING, new WorldPoint(1543, 3623, 0), BECKON, ANGRY, item(ADAMANT_PLATELEGS), item(ADAMANT_PLATEBODY), item(ADAMANT_FULL_HELM)),
|
||||||
new EmoteClue("Bow near Lord Iorwerth. Beware of double agents! Equip a charged crystal bow.", "Lord Iorwerth's camp", TENT_IN_LORD_IORWERTHS_ENCAMPMENT, new WorldPoint(2205, 3252, 0), DOUBLE_AGENT_141, BOW, any("Crystal Bow", item(CRYSTAL_BOW), item(CRYSTAL_BOW_24123))),
|
new EmoteClue("Bow near Lord Iorwerth. Beware of double agents! Equip a charged crystal bow.", "Lord Iorwerth's camp", TENT_IN_LORD_IORWERTHS_ENCAMPMENT, new WorldPoint(2205, 3252, 0), DOUBLE_AGENT_141, BOW, any("Crystal Bow", item(CRYSTAL_BOW), item(CRYSTAL_BOW_24123))),
|
||||||
new EmoteClue("Bow in the Iorwerth Camp. Beware of double agents! Equip a charged crystal bow.", "Lord Iorwerth's camp", TENT_IN_LORD_IORWERTHS_ENCAMPMENT, new WorldPoint(2205, 3252, 0), DOUBLE_AGENT_141, BOW, any("Crystal Bow", item(CRYSTAL_BOW), item(CRYSTAL_BOW_24123))),
|
new EmoteClue("Bow in the Iorwerth Camp. Beware of double agents! Equip a charged crystal bow.", "Lord Iorwerth's camp", TENT_IN_LORD_IORWERTHS_ENCAMPMENT, new WorldPoint(2205, 3252, 0), DOUBLE_AGENT_141, BOW, any("Crystal Bow", item(CRYSTAL_BOW), item(CRYSTAL_BOW_24123))),
|
||||||
new EmoteClue("Bow outside the entrance to the Legends' Guild. Equip iron platelegs, an emerald amulet and an oak longbow.", "Legend's Guild", OUTSIDE_THE_LEGENDS_GUILD_GATES, new WorldPoint(2729, 3349, 0), BOW, item(IRON_PLATELEGS), item(OAK_LONGBOW), item(EMERALD_AMULET)),
|
new EmoteClue("Bow outside the entrance to the Legends' Guild. Equip iron platelegs, an emerald amulet and an oak longbow.", "Legend's Guild", OUTSIDE_THE_LEGENDS_GUILD_GATES, new WorldPoint(2729, 3349, 0), BOW, item(IRON_PLATELEGS), item(OAK_LONGBOW), item(EMERALD_AMULET)),
|
||||||
@@ -151,7 +151,7 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu
|
|||||||
new EmoteClue("Shrug in the mine near Rimmington. Equip a gold necklace, a gold ring and a bronze spear.", "Rimmington mine", RIMMINGTON_MINE, new WorldPoint(2976, 3238, 0), SHRUG, item(GOLD_NECKLACE), item(GOLD_RING), item(BRONZE_SPEAR)),
|
new EmoteClue("Shrug in the mine near Rimmington. Equip a gold necklace, a gold ring and a bronze spear.", "Rimmington mine", RIMMINGTON_MINE, new WorldPoint(2976, 3238, 0), SHRUG, item(GOLD_NECKLACE), item(GOLD_RING), item(BRONZE_SPEAR)),
|
||||||
new EmoteClue("Shrug in Catherby bank. Yawn before you talk to me. Equip a maple longbow, green d'hide chaps and an iron med helm.", "Catherby", OUTSIDE_CATHERBY_BANK, new WorldPoint(2808, 3440, 0), SHRUG, YAWN, item(MAPLE_LONGBOW), item(GREEN_DHIDE_CHAPS), item(IRON_MED_HELM)),
|
new EmoteClue("Shrug in Catherby bank. Yawn before you talk to me. Equip a maple longbow, green d'hide chaps and an iron med helm.", "Catherby", OUTSIDE_CATHERBY_BANK, new WorldPoint(2808, 3440, 0), SHRUG, YAWN, item(MAPLE_LONGBOW), item(GREEN_DHIDE_CHAPS), item(IRON_MED_HELM)),
|
||||||
new EmoteClue("Shrug in the Zamorak temple found in the Eastern Wilderness. Beware of double agents! Equip rune platelegs, an iron platebody and blue dragonhide vambraces.", "Chaos temple", CHAOS_TEMPLE_IN_THE_SOUTHEASTERN_WILDERNESS, new WorldPoint(3239, 3611, 0), DOUBLE_AGENT_65, SHRUG, item(RUNE_PLATELEGS), item(IRON_PLATEBODY), item(BLUE_DHIDE_VAMBRACES)),
|
new EmoteClue("Shrug in the Zamorak temple found in the Eastern Wilderness. Beware of double agents! Equip rune platelegs, an iron platebody and blue dragonhide vambraces.", "Chaos temple", CHAOS_TEMPLE_IN_THE_SOUTHEASTERN_WILDERNESS, new WorldPoint(3239, 3611, 0), DOUBLE_AGENT_65, SHRUG, item(RUNE_PLATELEGS), item(IRON_PLATEBODY), item(BLUE_DHIDE_VAMBRACES)),
|
||||||
new EmoteClue("Shrug in the Shayzien command tent. Equip a blue mystic robe bottom, a rune kiteshield and any bob shirt.", "Shayzien command tent", SHAYZIEN_WAR_TENT, new WorldPoint(1555, 3537, 0), SHRUG, item(MYSTIC_ROBE_BOTTOM), item(RUNE_KITESHIELD), range("Any bob shirt", BOBS_RED_SHIRT, BOBS_PURPLE_SHIRT)),
|
new EmoteClue("Shrug in the Shayzien war tent. Equip a blue mystic robe bottom, a rune kiteshield and any bob shirt.", "Shayzien war tent", SHAYZIEN_WAR_TENT, new WorldPoint(1487, 3635, 0), SHRUG, item(MYSTIC_ROBE_BOTTOM), item(RUNE_KITESHIELD), range("Any bob shirt", BOBS_RED_SHIRT, BOBS_PURPLE_SHIRT)),
|
||||||
new EmoteClue("Slap your head in the centre of the Kourend catacombs. Beware of double agents! Equip the arclight and the amulet of the damned.", "Kourend catacombs", CENTRE_OF_THE_CATACOMBS_OF_KOUREND, new WorldPoint(1663, 10045, 0), DOUBLE_AGENT_141, SLAP_HEAD, item(ARCLIGHT), any("Amulet of the damned", item(AMULET_OF_THE_DAMNED), item(AMULET_OF_THE_DAMNED_FULL))),
|
new EmoteClue("Slap your head in the centre of the Kourend catacombs. Beware of double agents! Equip the arclight and the amulet of the damned.", "Kourend catacombs", CENTRE_OF_THE_CATACOMBS_OF_KOUREND, new WorldPoint(1663, 10045, 0), DOUBLE_AGENT_141, SLAP_HEAD, item(ARCLIGHT), any("Amulet of the damned", item(AMULET_OF_THE_DAMNED), item(AMULET_OF_THE_DAMNED_FULL))),
|
||||||
new EmoteClue("Spin at the crossroads north of Rimmington. Equip a green gnome hat, cream gnome top and leather chaps.", "Rimmington", ROAD_JUNCTION_NORTH_OF_RIMMINGTON, new WorldPoint(2981, 3276, 0), SPIN, item(GREEN_HAT), item(CREAM_ROBE_TOP), item(LEATHER_CHAPS)),
|
new EmoteClue("Spin at the crossroads north of Rimmington. Equip a green gnome hat, cream gnome top and leather chaps.", "Rimmington", ROAD_JUNCTION_NORTH_OF_RIMMINGTON, new WorldPoint(2981, 3276, 0), SPIN, item(GREEN_HAT), item(CREAM_ROBE_TOP), item(LEATHER_CHAPS)),
|
||||||
new EmoteClue("Spin in Draynor Manor by the fountain. Equip an iron platebody, studded leather chaps and a bronze full helmet.", "Draynor Manor", DRAYNOR_MANOR_BY_THE_FOUNTAIN, new WorldPoint(3088, 3336, 0), SPIN, item(IRON_PLATEBODY), item(STUDDED_CHAPS), item(BRONZE_FULL_HELM)),
|
new EmoteClue("Spin in Draynor Manor by the fountain. Equip an iron platebody, studded leather chaps and a bronze full helmet.", "Draynor Manor", DRAYNOR_MANOR_BY_THE_FOUNTAIN, new WorldPoint(3088, 3336, 0), SPIN, item(IRON_PLATEBODY), item(STUDDED_CHAPS), item(BRONZE_FULL_HELM)),
|
||||||
@@ -172,14 +172,15 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu
|
|||||||
new EmoteClue("Yawn in the Castle Wars lobby. Shrug before you talk to me. Equip a ruby amulet, a mithril scimitar and a Wilderness cape.", "Castle Wars", CASTLE_WARS_BANK, new WorldPoint(2440, 3092, 0), YAWN, SHRUG, item(RUBY_AMULET), item(MITHRIL_SCIMITAR), range("Any team cape", TEAM1_CAPE, TEAM50_CAPE)),
|
new EmoteClue("Yawn in the Castle Wars lobby. Shrug before you talk to me. Equip a ruby amulet, a mithril scimitar and a Wilderness cape.", "Castle Wars", CASTLE_WARS_BANK, new WorldPoint(2440, 3092, 0), YAWN, SHRUG, item(RUBY_AMULET), item(MITHRIL_SCIMITAR), range("Any team cape", TEAM1_CAPE, TEAM50_CAPE)),
|
||||||
new EmoteClue("Yawn in the rogues' general store. Beware of double agents! Equip an adamant square shield, blue dragon vambraces and a rune pickaxe.", "Rogues general store", NOTERAZZOS_SHOP_IN_THE_WILDERNESS, new WorldPoint(3026, 3701, 0), DOUBLE_AGENT_65, YAWN, item(ADAMANT_SQ_SHIELD), item(BLUE_DHIDE_VAMBRACES), item(RUNE_PICKAXE)),
|
new EmoteClue("Yawn in the rogues' general store. Beware of double agents! Equip an adamant square shield, blue dragon vambraces and a rune pickaxe.", "Rogues general store", NOTERAZZOS_SHOP_IN_THE_WILDERNESS, new WorldPoint(3026, 3701, 0), DOUBLE_AGENT_65, YAWN, item(ADAMANT_SQ_SHIELD), item(BLUE_DHIDE_VAMBRACES), item(RUNE_PICKAXE)),
|
||||||
new EmoteClue("Yawn at the top of Trollheim. Equip a lava battlestaff, black dragonhide vambraces and a mind shield.", "Trollheim Mountain", ON_TOP_OF_TROLLHEIM_MOUNTAIN, new WorldPoint(2887, 3676, 0), YAWN, any("Lava battlestaff", item(LAVA_BATTLESTAFF), item(LAVA_BATTLESTAFF_21198)), item(BLACK_DHIDE_VAMBRACES), item(MIND_SHIELD)),
|
new EmoteClue("Yawn at the top of Trollheim. Equip a lava battlestaff, black dragonhide vambraces and a mind shield.", "Trollheim Mountain", ON_TOP_OF_TROLLHEIM_MOUNTAIN, new WorldPoint(2887, 3676, 0), YAWN, any("Lava battlestaff", item(LAVA_BATTLESTAFF), item(LAVA_BATTLESTAFF_21198)), item(BLACK_DHIDE_VAMBRACES), item(MIND_SHIELD)),
|
||||||
new EmoteClue("Yawn in the centre of Arceuus library. Nod your head before you talk to me. Equip blue dragonhide vambraces, adamant boots and an adamant dagger.", "Arceuus library", ENTRANCE_OF_THE_ARCEUUS_LIBRARY, new WorldPoint(1632, 3807, 0), YAWN, YES, item(BLUE_DHIDE_VAMBRACES), item(ADAMANT_BOOTS), item(ADAMANT_DAGGER)),
|
new EmoteClue("Yawn in the centre of the Arceuus Library. Nod your head before you talk to me. Equip blue dragonhide vambraces, adamant boots and an adamant dagger.", "Arceuus library", ENTRANCE_OF_THE_ARCEUUS_LIBRARY, new WorldPoint(1632, 3807, 0), YAWN, YES, item(BLUE_DHIDE_VAMBRACES), item(ADAMANT_BOOTS), item(ADAMANT_DAGGER)),
|
||||||
new EmoteClue("Swing a bullroarer at the top of the Watchtower. Beware of double agents! Equip a dragon plateskirt, climbing boots and a dragon chainbody.", "Yanille Watchtower", TOP_FLOOR_OF_THE_YANILLE_WATCHTOWER, new WorldPoint(2930, 4717, 2), DOUBLE_AGENT_141, BULL_ROARER, any("Dragon plateskirt", item(DRAGON_PLATESKIRT), item(DRAGON_PLATESKIRT_G)), item(CLIMBING_BOOTS), any("Dragon chainbody", item(DRAGON_CHAINBODY_3140), item(DRAGON_CHAINBODY_G)), item(ItemID.BULL_ROARER)),
|
new EmoteClue("Swing a bullroarer at the top of the Watchtower. Beware of double agents! Equip a dragon plateskirt, climbing boots and a dragon chainbody.", "Yanille Watchtower", TOP_FLOOR_OF_THE_YANILLE_WATCHTOWER, new WorldPoint(2930, 4717, 2), DOUBLE_AGENT_141, BULL_ROARER, any("Dragon plateskirt", item(DRAGON_PLATESKIRT), item(DRAGON_PLATESKIRT_G)), item(CLIMBING_BOOTS), any("Dragon chainbody", item(DRAGON_CHAINBODY_3140), item(DRAGON_CHAINBODY_G)), item(ItemID.BULL_ROARER)),
|
||||||
new EmoteClue("Blow a raspberry at Gypsy Aris in her tent. Equip a gold ring and a gold necklace.", "Varrock", GYPSY_TENT_ENTRANCE, new WorldPoint(3203, 3424, 0), RASPBERRY, item(GOLD_RING), item(GOLD_NECKLACE)),
|
new EmoteClue("Blow a raspberry at Gypsy Aris in her tent. Equip a gold ring and a gold necklace.", "Varrock", GYPSY_TENT_ENTRANCE, new WorldPoint(3203, 3424, 0), RASPBERRY, item(GOLD_RING), item(GOLD_NECKLACE)),
|
||||||
new EmoteClue("Bow to Brugsen Bursen at the Grand Exchange.", "Grand Exchange", null, new WorldPoint(3164, 3477, 0), BOW),
|
new EmoteClue("Bow to Brugsen Bursen at the Grand Exchange.", "Grand Exchange", null, new WorldPoint(3164, 3477, 0), BOW),
|
||||||
new EmoteClue("Cheer at Iffie Nitter. Equip a chef hat and a red cape.", "Varrock", FINE_CLOTHES_ENTRANCE, new WorldPoint(3205, 3416, 0), CHEER, item(CHEFS_HAT), item(RED_CAPE)),
|
new EmoteClue("Cheer at Iffie Nitter. Equip a chef hat and a red cape.", "Varrock", FINE_CLOTHES_ENTRANCE, new WorldPoint(3205, 3416, 0), CHEER, item(CHEFS_HAT), item(RED_CAPE)),
|
||||||
new EmoteClue("Clap at Bob's Brilliant Axes. Equip a bronze axe and leather boots.", "Lumbridge", BOB_AXES_ENTRANCE, new WorldPoint(3231, 3203, 0), CLAP, item(BRONZE_AXE), item(LEATHER_BOOTS)),
|
new EmoteClue("Clap at Bob's Brilliant Axes. Equip a bronze axe and leather boots.", "Lumbridge", BOB_AXES_ENTRANCE, new WorldPoint(3231, 3203, 0), CLAP, item(BRONZE_AXE), item(LEATHER_BOOTS)),
|
||||||
new EmoteClue("Panic at Al Kharid mine.", "Al Kharid mine", null, new WorldPoint(3300, 3314, 0), PANIC),
|
new EmoteClue("Panic at Al Kharid mine.", "Al Kharid mine", null, new WorldPoint(3300, 3314, 0), PANIC),
|
||||||
new EmoteClue("Spin at Flynn's Mace Shop.", "Falador", null, new WorldPoint(2950, 3387, 0), SPIN));
|
new EmoteClue("Spin at Flynn's Mace Shop.", "Falador", null, new WorldPoint(2950, 3387, 0), SPIN),
|
||||||
|
new EmoteClue("Salute by the Charcoal Burners. Equip a Farmer's strawhat, Shayzien platebody (5) and Pyromancer robes.", "Charcoal Burners", CHARCOAL_BURNERS, new WorldPoint(1714, 3467, 0), SALUTE, any("Farmer's strawhat", item(FARMERS_STRAWHAT), item(FARMERS_STRAWHAT_13647)), item(SHAYZIEN_PLATEBODY_5), item(PYROMANCER_ROBE)));
|
||||||
|
|
||||||
private static final String UNICODE_CHECK_MARK = "\u2713";
|
private static final String UNICODE_CHECK_MARK = "\u2713";
|
||||||
private static final String UNICODE_BALLOT_X = "\u2717";
|
private static final String UNICODE_BALLOT_X = "\u2717";
|
||||||
|
|||||||
+5
-3
@@ -79,7 +79,7 @@ public enum STASHUnit
|
|||||||
OUTSIDE_HARRYS_FISHING_SHOP_IN_CATHERBY(NullObjectID.NULL_29003, new WorldPoint(2837, 3436, 0)),
|
OUTSIDE_HARRYS_FISHING_SHOP_IN_CATHERBY(NullObjectID.NULL_29003, new WorldPoint(2837, 3436, 0)),
|
||||||
TZHAAR_WEAPONS_STORE(NullObjectID.NULL_29004, new WorldPoint(2479, 5146, 0)),
|
TZHAAR_WEAPONS_STORE(NullObjectID.NULL_29004, new WorldPoint(2479, 5146, 0)),
|
||||||
NORTH_OF_EVIL_DAVES_HOUSE_IN_EDGEVILLE(NullObjectID.NULL_29005, new WorldPoint(3077, 3503, 0)),
|
NORTH_OF_EVIL_DAVES_HOUSE_IN_EDGEVILLE(NullObjectID.NULL_29005, new WorldPoint(3077, 3503, 0)),
|
||||||
WEST_OF_THE_SHAYZIEN_COMBAT_RING(NullObjectID.NULL_29006, new WorldPoint(1534, 3591, 0)),
|
WEST_OF_THE_SHAYZIEN_COMBAT_RING(NullObjectID.NULL_29006, new WorldPoint(1541, 3631, 0)),
|
||||||
ENTRANCE_OF_THE_ARCEUUS_LIBRARY(NullObjectID.NULL_29007, new WorldPoint(1642, 3809, 0)),
|
ENTRANCE_OF_THE_ARCEUUS_LIBRARY(NullObjectID.NULL_29007, new WorldPoint(1642, 3809, 0)),
|
||||||
OUTSIDE_DRAYNOR_VILLAGE_JAIL(NullObjectID.NULL_29008, new WorldPoint(3130, 3250, 0)),
|
OUTSIDE_DRAYNOR_VILLAGE_JAIL(NullObjectID.NULL_29008, new WorldPoint(3130, 3250, 0)),
|
||||||
CHAOS_TEMPLE_IN_THE_SOUTHEASTERN_WILDERNESS(NullObjectID.NULL_29009, new WorldPoint(3245, 3609, 0)),
|
CHAOS_TEMPLE_IN_THE_SOUTHEASTERN_WILDERNESS(NullObjectID.NULL_29009, new WorldPoint(3245, 3609, 0)),
|
||||||
@@ -109,7 +109,7 @@ public enum STASHUnit
|
|||||||
FOUNTAIN_OF_HEROES(NullObjectID.NULL_29033, new WorldPoint(2916, 9891, 0)),
|
FOUNTAIN_OF_HEROES(NullObjectID.NULL_29033, new WorldPoint(2916, 9891, 0)),
|
||||||
ENTRANCE_OF_THE_CAVERN_UNDER_THE_WHIRLPOOL(NullObjectID.NULL_29034, new WorldPoint(1764, 5367, 1), new WorldPoint(1636, 5367, 1)),
|
ENTRANCE_OF_THE_CAVERN_UNDER_THE_WHIRLPOOL(NullObjectID.NULL_29034, new WorldPoint(1764, 5367, 1), new WorldPoint(1636, 5367, 1)),
|
||||||
HALFWAY_DOWN_TROLLWEISS_MOUNTAIN(NullObjectID.NULL_29035, new WorldPoint(2782, 3787, 0)),
|
HALFWAY_DOWN_TROLLWEISS_MOUNTAIN(NullObjectID.NULL_29035, new WorldPoint(2782, 3787, 0)),
|
||||||
SHAYZIEN_WAR_TENT(NullObjectID.NULL_29036, new WorldPoint(1550, 3541, 0)),
|
SHAYZIEN_WAR_TENT(NullObjectID.NULL_29036, new WorldPoint(1488, 3637, 0)),
|
||||||
OUTSIDE_THE_LEGENDS_GUILD_DOOR(NullObjectID.NULL_29037, new WorldPoint(2727, 3371, 0)),
|
OUTSIDE_THE_LEGENDS_GUILD_DOOR(NullObjectID.NULL_29037, new WorldPoint(2727, 3371, 0)),
|
||||||
NEAR_THE_GEM_STALL_IN_ARDOUGNE_MARKET(NullObjectID.NULL_29038, new WorldPoint(2672, 3302, 0)),
|
NEAR_THE_GEM_STALL_IN_ARDOUGNE_MARKET(NullObjectID.NULL_29038, new WorldPoint(2672, 3302, 0)),
|
||||||
OUTSIDE_THE_BAR_BY_THE_FIGHT_ARENA(NullObjectID.NULL_29039, new WorldPoint(2571, 3150, 0)),
|
OUTSIDE_THE_BAR_BY_THE_FIGHT_ARENA(NullObjectID.NULL_29039, new WorldPoint(2571, 3150, 0)),
|
||||||
@@ -138,7 +138,9 @@ public enum STASHUnit
|
|||||||
GYPSY_TENT_ENTRANCE(NullObjectID.NULL_34736, new WorldPoint(3206, 3422, 0)),
|
GYPSY_TENT_ENTRANCE(NullObjectID.NULL_34736, new WorldPoint(3206, 3422, 0)),
|
||||||
FINE_CLOTHES_ENTRANCE(NullObjectID.NULL_34737, new WorldPoint(3209, 3416, 0)),
|
FINE_CLOTHES_ENTRANCE(NullObjectID.NULL_34737, new WorldPoint(3209, 3416, 0)),
|
||||||
BOB_AXES_ENTRANCE(NullObjectID.NULL_34738, new WorldPoint(3233, 3200, 0)),
|
BOB_AXES_ENTRANCE(NullObjectID.NULL_34738, new WorldPoint(3233, 3200, 0)),
|
||||||
CRYSTALLINE_MAPLE_TREES(NullObjectID.NULL_34953, new WorldPoint(2213, 3427, 0));
|
CRYSTALLINE_MAPLE_TREES(NullObjectID.NULL_34953, new WorldPoint(2213, 3427, 0)),
|
||||||
|
CHARCOAL_BURNERS(NullObjectID.NULL_41758, new WorldPoint(1712, 3469, 0)),
|
||||||
|
;
|
||||||
|
|
||||||
private final int objectId;
|
private final int objectId;
|
||||||
private final WorldPoint[] worldPoints;
|
private final WorldPoint[] worldPoints;
|
||||||
|
|||||||
+1
-1
@@ -185,7 +185,7 @@ public enum HotColdLocation
|
|||||||
ZEAH_PISCARILUS_MINE(MASTER, new WorldPoint(1768, 3705, 0), ZEAH, "South of the Piscarilius mine.", ANCIENT_WIZARDS),
|
ZEAH_PISCARILUS_MINE(MASTER, new WorldPoint(1768, 3705, 0), ZEAH, "South of the Piscarilius mine.", ANCIENT_WIZARDS),
|
||||||
ZEAH_GOLDEN_FIELD_TAVERN(MASTER, new WorldPoint(1718, 3643, 0), ZEAH, "South of the gravestone in Kingstown.", BRASSICAN_MAGE),
|
ZEAH_GOLDEN_FIELD_TAVERN(MASTER, new WorldPoint(1718, 3643, 0), ZEAH, "South of the gravestone in Kingstown.", BRASSICAN_MAGE),
|
||||||
ZEAH_MESS_HALL(MASTER, new WorldPoint(1656, 3621, 0), ZEAH, "East of the Mess hall.", ANCIENT_WIZARDS),
|
ZEAH_MESS_HALL(MASTER, new WorldPoint(1656, 3621, 0), ZEAH, "East of the Mess hall.", ANCIENT_WIZARDS),
|
||||||
ZEAH_WATSONS_HOUSE(MASTER, new WorldPoint(1653, 3573, 0), ZEAH, "East of Watson's house.", ANCIENT_WIZARDS),
|
ZEAH_WATSONS_HOUSE(MASTER, new WorldPoint(1653, 3573, 0), ZEAH, "East of Watson's house.", BRASSICAN_MAGE),
|
||||||
ZEAH_VANNAHS_FARM_STORE(MASTER, new WorldPoint(1807, 3523, 0), ZEAH, "North of Tithe Farm, next to the pond.", BRASSICAN_MAGE),
|
ZEAH_VANNAHS_FARM_STORE(MASTER, new WorldPoint(1807, 3523, 0), ZEAH, "North of Tithe Farm, next to the pond.", BRASSICAN_MAGE),
|
||||||
ZEAH_FARMING_GUILD_W(MASTER, new WorldPoint(1208, 3736, 0), ZEAH, "West of the Farming Guild.", BRASSICAN_MAGE),
|
ZEAH_FARMING_GUILD_W(MASTER, new WorldPoint(1208, 3736, 0), ZEAH, "West of the Farming Guild.", BRASSICAN_MAGE),
|
||||||
ZEAH_DAIRY_COW(MASTER, new WorldPoint(1324, 3722, 0), ZEAH, "North-east of the Kebos Lowlands, east of the dairy cow.", BRASSICAN_MAGE),
|
ZEAH_DAIRY_COW(MASTER, new WorldPoint(1324, 3722, 0), ZEAH, "North-east of the Kebos Lowlands, east of the dairy cow.", BRASSICAN_MAGE),
|
||||||
|
|||||||
+18
-3
@@ -29,7 +29,6 @@ import javax.inject.Inject;
|
|||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.events.GameTick;
|
import net.runelite.api.events.GameTick;
|
||||||
import net.runelite.api.widgets.Widget;
|
import net.runelite.api.widgets.Widget;
|
||||||
import net.runelite.api.widgets.WidgetID;
|
|
||||||
import net.runelite.api.widgets.WidgetInfo;
|
import net.runelite.api.widgets.WidgetInfo;
|
||||||
import net.runelite.client.eventbus.Subscribe;
|
import net.runelite.client.eventbus.Subscribe;
|
||||||
import net.runelite.client.plugins.crowdsourcing.CrowdsourcingManager;
|
import net.runelite.client.plugins.crowdsourcing.CrowdsourcingManager;
|
||||||
@@ -44,6 +43,7 @@ public class CrowdsourcingDialogue
|
|||||||
@Inject
|
@Inject
|
||||||
private CrowdsourcingManager manager;
|
private CrowdsourcingManager manager;
|
||||||
|
|
||||||
|
private boolean inDialogue = false;
|
||||||
private String lastNpcDialogueText = null;
|
private String lastNpcDialogueText = null;
|
||||||
private String lastPlayerDialogueText = null;
|
private String lastPlayerDialogueText = null;
|
||||||
private Widget[] dialogueOptions;
|
private Widget[] dialogueOptions;
|
||||||
@@ -58,6 +58,23 @@ public class CrowdsourcingDialogue
|
|||||||
public void onGameTick(GameTick tick)
|
public void onGameTick(GameTick tick)
|
||||||
{
|
{
|
||||||
Widget npcDialogueTextWidget = client.getWidget(WidgetInfo.DIALOG_NPC_TEXT);
|
Widget npcDialogueTextWidget = client.getWidget(WidgetInfo.DIALOG_NPC_TEXT);
|
||||||
|
Widget playerDialogueTextWidget = client.getWidget(WidgetInfo.DIALOG_PLAYER_TEXT);
|
||||||
|
Widget playerDialogueOptionsWidget = client.getWidget(WidgetInfo.DIALOG_OPTION_OPTIONS);
|
||||||
|
|
||||||
|
// If we were not in a conversation, but now one of these widgets is not null, we have started a conversation.
|
||||||
|
// Else if we were in a conversation, but now there is no widget, we have left the conversation.
|
||||||
|
if (!inDialogue && (npcDialogueTextWidget != null || playerDialogueTextWidget != null || playerDialogueOptionsWidget != null))
|
||||||
|
{
|
||||||
|
inDialogue = true;
|
||||||
|
manager.storeEvent(new StartEndData(true));
|
||||||
|
}
|
||||||
|
else if (inDialogue && npcDialogueTextWidget == null && playerDialogueTextWidget == null
|
||||||
|
&& playerDialogueOptionsWidget == null)
|
||||||
|
{
|
||||||
|
inDialogue = false;
|
||||||
|
manager.storeEvent(new StartEndData(false));
|
||||||
|
}
|
||||||
|
|
||||||
if (npcDialogueTextWidget != null && !npcDialogueTextWidget.getText().equals(lastNpcDialogueText))
|
if (npcDialogueTextWidget != null && !npcDialogueTextWidget.getText().equals(lastNpcDialogueText))
|
||||||
{
|
{
|
||||||
lastNpcDialogueText = npcDialogueTextWidget.getText();
|
lastNpcDialogueText = npcDialogueTextWidget.getText();
|
||||||
@@ -66,7 +83,6 @@ public class CrowdsourcingDialogue
|
|||||||
manager.storeEvent(data);
|
manager.storeEvent(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget playerDialogueTextWidget = client.getWidget(WidgetID.DIALOG_PLAYER_GROUP_ID, 4);
|
|
||||||
if (playerDialogueTextWidget != null && !playerDialogueTextWidget.getText().equals(lastPlayerDialogueText))
|
if (playerDialogueTextWidget != null && !playerDialogueTextWidget.getText().equals(lastPlayerDialogueText))
|
||||||
{
|
{
|
||||||
lastPlayerDialogueText = playerDialogueTextWidget.getText();
|
lastPlayerDialogueText = playerDialogueTextWidget.getText();
|
||||||
@@ -74,7 +90,6 @@ public class CrowdsourcingDialogue
|
|||||||
manager.storeEvent(data);
|
manager.storeEvent(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget playerDialogueOptionsWidget = client.getWidget(WidgetID.DIALOG_OPTION_GROUP_ID, 1);
|
|
||||||
if (playerDialogueOptionsWidget != null && playerDialogueOptionsWidget.getChildren() != dialogueOptions)
|
if (playerDialogueOptionsWidget != null && playerDialogueOptionsWidget.getChildren() != dialogueOptions)
|
||||||
{
|
{
|
||||||
dialogueOptions = playerDialogueOptionsWidget.getChildren();
|
dialogueOptions = playerDialogueOptionsWidget.getChildren();
|
||||||
|
|||||||
+36
@@ -0,0 +1,36 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2021, Weird Gloop <admin@weirdgloop.org>
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
* list of conditions and the following disclaimer.
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
* this list of conditions and the following disclaimer in the documentation
|
||||||
|
* and/or other materials provided with the distribution.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package net.runelite.client.plugins.crowdsourcing.dialogue;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class StartEndData
|
||||||
|
{
|
||||||
|
private final boolean isStart;
|
||||||
|
}
|
||||||
+1
-1
@@ -79,7 +79,7 @@ class WorldMapRegionOverlay extends Overlay
|
|||||||
{
|
{
|
||||||
RenderOverview ro = client.getRenderOverview();
|
RenderOverview ro = client.getRenderOverview();
|
||||||
Widget map = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
Widget map = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
||||||
Float pixelsPerTile = ro.getWorldMapZoom();
|
float pixelsPerTile = ro.getWorldMapZoom();
|
||||||
|
|
||||||
if (map == null)
|
if (map == null)
|
||||||
{
|
{
|
||||||
|
|||||||
+3
-15
@@ -32,7 +32,6 @@ import java.time.Instant;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import javax.inject.Named;
|
import javax.inject.Named;
|
||||||
@@ -250,27 +249,16 @@ class DiscordState
|
|||||||
|
|
||||||
final Duration actionTimeout = Duration.ofMinutes(config.actionTimeout());
|
final Duration actionTimeout = Duration.ofMinutes(config.actionTimeout());
|
||||||
final Instant now = Instant.now();
|
final Instant now = Instant.now();
|
||||||
final AtomicBoolean updatedAny = new AtomicBoolean();
|
|
||||||
|
|
||||||
final boolean removedAny = events.removeAll(events.stream()
|
final boolean removedAny = events.removeAll(events.stream()
|
||||||
|
// Only include clearable events
|
||||||
|
.filter(event -> event.getType().isShouldBeCleared())
|
||||||
// Find only events that should time out
|
// Find only events that should time out
|
||||||
.filter(event -> event.getType().isShouldTimeout() && now.isAfter(event.getUpdated().plus(actionTimeout)))
|
.filter(event -> event.getType().isShouldTimeout() && now.isAfter(event.getUpdated().plus(actionTimeout)))
|
||||||
// Reset start times on timed events that should restart
|
|
||||||
.peek(event ->
|
|
||||||
{
|
|
||||||
if (event.getType().isShouldRestart())
|
|
||||||
{
|
|
||||||
event.setStart(null);
|
|
||||||
updatedAny.set(true);
|
|
||||||
}
|
|
||||||
})
|
|
||||||
// Now filter out events that should restart as we do not want to remove them
|
|
||||||
.filter(event -> !event.getType().isShouldRestart())
|
|
||||||
.filter(event -> event.getType().isShouldBeCleared())
|
|
||||||
.collect(Collectors.toList())
|
.collect(Collectors.toList())
|
||||||
);
|
);
|
||||||
|
|
||||||
if (removedAny || updatedAny.get())
|
if (removedAny)
|
||||||
{
|
{
|
||||||
updatePresenceWithLatestEvent();
|
updatePresenceWithLatestEvent();
|
||||||
}
|
}
|
||||||
|
|||||||
+1
@@ -43,6 +43,7 @@ public enum LoginScreenOverride
|
|||||||
MONKEY_MADNESS_2("mm2.jpg"),
|
MONKEY_MADNESS_2("mm2.jpg"),
|
||||||
PRIFDDINAS("prifddinas.jpg"),
|
PRIFDDINAS("prifddinas.jpg"),
|
||||||
THEATRE_OF_BLOOD("tob.jpg"),
|
THEATRE_OF_BLOOD("tob.jpg"),
|
||||||
|
A_KINGDOM_DIVIDED("akd.jpg"),
|
||||||
CUSTOM;
|
CUSTOM;
|
||||||
|
|
||||||
@Getter
|
@Getter
|
||||||
|
|||||||
+53
-34
@@ -67,6 +67,7 @@ import net.runelite.api.InventoryID;
|
|||||||
import net.runelite.api.ItemComposition;
|
import net.runelite.api.ItemComposition;
|
||||||
import net.runelite.api.ItemContainer;
|
import net.runelite.api.ItemContainer;
|
||||||
import net.runelite.api.ItemID;
|
import net.runelite.api.ItemID;
|
||||||
|
import net.runelite.api.MenuAction;
|
||||||
import net.runelite.api.MessageNode;
|
import net.runelite.api.MessageNode;
|
||||||
import net.runelite.api.NPC;
|
import net.runelite.api.NPC;
|
||||||
import net.runelite.api.ObjectID;
|
import net.runelite.api.ObjectID;
|
||||||
@@ -817,52 +818,70 @@ public class LootTrackerPlugin extends Plugin
|
|||||||
{
|
{
|
||||||
// There are some pickpocket targets who show up in the chat box with a different name (e.g. H.A.M. members -> man/woman)
|
// There are some pickpocket targets who show up in the chat box with a different name (e.g. H.A.M. members -> man/woman)
|
||||||
// We use the value selected from the right-click menu as a fallback for the event lookup in those cases.
|
// We use the value selected from the right-click menu as a fallback for the event lookup in those cases.
|
||||||
if (event.getMenuOption().equals("Pickpocket"))
|
if (isNPCOp(event.getMenuAction()) && event.getMenuOption().equals("Pickpocket"))
|
||||||
{
|
{
|
||||||
lastPickpocketTarget = Text.removeTags(event.getMenuTarget());
|
lastPickpocketTarget = Text.removeTags(event.getMenuTarget());
|
||||||
}
|
}
|
||||||
|
else if (isObjectOp(event.getMenuAction()) && event.getMenuOption().equals("Open") && SHADE_CHEST_OBJECTS.containsKey(event.getId()))
|
||||||
if (event.getMenuOption().equals("Take") && event.getId() == ItemID.SEED_PACK)
|
|
||||||
{
|
|
||||||
setEvent(LootRecordType.EVENT, SEEDPACK_EVENT);
|
|
||||||
takeInventorySnapshot();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (event.getMenuOption().equals("Open") && SHADE_CHEST_OBJECTS.containsKey(event.getId()))
|
|
||||||
{
|
{
|
||||||
setEvent(LootRecordType.EVENT, SHADE_CHEST_OBJECTS.get(event.getId()));
|
setEvent(LootRecordType.EVENT, SHADE_CHEST_OBJECTS.get(event.getId()));
|
||||||
takeInventorySnapshot();
|
takeInventorySnapshot();
|
||||||
}
|
}
|
||||||
|
else if (isItemOp(event.getMenuAction()))
|
||||||
if (event.getMenuOption().equals("Search") && BIRDNEST_IDS.contains(event.getId()))
|
|
||||||
{
|
{
|
||||||
setEvent(LootRecordType.EVENT, BIRDNEST_EVENT, event.getId());
|
if (event.getMenuOption().equals("Take") && event.getId() == ItemID.SEED_PACK)
|
||||||
takeInventorySnapshot();
|
{
|
||||||
|
setEvent(LootRecordType.EVENT, SEEDPACK_EVENT);
|
||||||
|
takeInventorySnapshot();
|
||||||
|
}
|
||||||
|
else if (event.getMenuOption().equals("Search") && BIRDNEST_IDS.contains(event.getId()))
|
||||||
|
{
|
||||||
|
setEvent(LootRecordType.EVENT, BIRDNEST_EVENT, event.getId());
|
||||||
|
takeInventorySnapshot();
|
||||||
|
}
|
||||||
|
else if (event.getMenuOption().equals("Open"))
|
||||||
|
{
|
||||||
|
switch (event.getId())
|
||||||
|
{
|
||||||
|
case ItemID.CASKET:
|
||||||
|
setEvent(LootRecordType.EVENT, CASKET_EVENT);
|
||||||
|
takeInventorySnapshot();
|
||||||
|
break;
|
||||||
|
case ItemID.SUPPLY_CRATE:
|
||||||
|
case ItemID.EXTRA_SUPPLY_CRATE:
|
||||||
|
setEvent(LootRecordType.EVENT, WINTERTODT_SUPPLY_CRATE_EVENT);
|
||||||
|
takeInventorySnapshot();
|
||||||
|
break;
|
||||||
|
case ItemID.SPOILS_OF_WAR:
|
||||||
|
setEvent(LootRecordType.EVENT, SPOILS_OF_WAR_EVENT);
|
||||||
|
takeInventorySnapshot();
|
||||||
|
break;
|
||||||
|
case ItemID.CASKET_25590:
|
||||||
|
setEvent(LootRecordType.EVENT, TEMPOROSS_CASKET_EVENT);
|
||||||
|
takeInventorySnapshot();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (event.getMenuOption().equals("Open") && event.getId() == ItemID.CASKET)
|
private static boolean isItemOp(MenuAction menuAction)
|
||||||
{
|
{
|
||||||
setEvent(LootRecordType.EVENT, CASKET_EVENT);
|
final int id = menuAction.getId();
|
||||||
takeInventorySnapshot();
|
return id >= MenuAction.ITEM_FIRST_OPTION.getId() && id <= MenuAction.ITEM_FIFTH_OPTION.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event.getMenuOption().equals("Open") && (event.getId() == ItemID.SUPPLY_CRATE || event.getId() == ItemID.EXTRA_SUPPLY_CRATE))
|
private static boolean isNPCOp(MenuAction menuAction)
|
||||||
{
|
{
|
||||||
setEvent(LootRecordType.EVENT, WINTERTODT_SUPPLY_CRATE_EVENT);
|
final int id = menuAction.getId();
|
||||||
takeInventorySnapshot();
|
return id >= MenuAction.NPC_FIRST_OPTION.getId() && id <= MenuAction.NPC_FIFTH_OPTION.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (event.getMenuOption().equals("Open") && event.getId() == ItemID.SPOILS_OF_WAR)
|
private static boolean isObjectOp(MenuAction menuAction)
|
||||||
{
|
{
|
||||||
setEvent(LootRecordType.EVENT, SPOILS_OF_WAR_EVENT);
|
final int id = menuAction.getId();
|
||||||
takeInventorySnapshot();
|
return (id >= MenuAction.GAME_OBJECT_FIRST_OPTION.getId() && id <= MenuAction.GAME_OBJECT_FOURTH_OPTION.getId())
|
||||||
}
|
|| id == MenuAction.GAME_OBJECT_FIFTH_OPTION.getId();
|
||||||
|
|
||||||
if (event.getMenuOption().equals("Open") && event.getId() == ItemID.CASKET_25590)
|
|
||||||
{
|
|
||||||
setEvent(LootRecordType.EVENT, TEMPOROSS_CASKET_EVENT);
|
|
||||||
takeInventorySnapshot();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Schedule(
|
@Schedule(
|
||||||
|
|||||||
+1
@@ -283,6 +283,7 @@ public class MenuEntrySwapperPlugin extends Plugin
|
|||||||
swap("enter", "the gauntlet", "enter-corrupted", config::swapGauntlet);
|
swap("enter", "the gauntlet", "enter-corrupted", config::swapGauntlet);
|
||||||
|
|
||||||
swap("enter", "quick-enter", config::swapQuick);
|
swap("enter", "quick-enter", config::swapQuick);
|
||||||
|
swap("enter-crypt", "quick-enter", config::swapQuick);
|
||||||
swap("ring", "quick-start", config::swapQuick);
|
swap("ring", "quick-start", config::swapQuick);
|
||||||
swap("pass", "quick-pass", config::swapQuick);
|
swap("pass", "quick-pass", config::swapQuick);
|
||||||
swap("pass", "quick pass", config::swapQuick);
|
swap("pass", "quick pass", config::swapQuick);
|
||||||
|
|||||||
+1
@@ -45,6 +45,7 @@ class PartyWorldMapPoint extends WorldMapPoint
|
|||||||
this.member = member;
|
this.member = member;
|
||||||
this.setSnapToEdge(true);
|
this.setSnapToEdge(true);
|
||||||
this.setJumpOnClick(true);
|
this.setJumpOnClick(true);
|
||||||
|
this.setName(member.getName());
|
||||||
this.setImagePoint(new Point(
|
this.setImagePoint(new Point(
|
||||||
ARROW.getWidth() / 2,
|
ARROW.getWidth() / 2,
|
||||||
ARROW.getHeight()));
|
ARROW.getHeight()));
|
||||||
|
|||||||
@@ -76,7 +76,16 @@ enum GameTimer
|
|||||||
DIVINE_BATTLEMAGE(ItemID.DIVINE_BATTLEMAGE_POTION4, GameTimerImageType.ITEM, "Divine Battlemage", 5, ChronoUnit.MINUTES),
|
DIVINE_BATTLEMAGE(ItemID.DIVINE_BATTLEMAGE_POTION4, GameTimerImageType.ITEM, "Divine Battlemage", 5, ChronoUnit.MINUTES),
|
||||||
ANTIPOISON(ItemID.ANTIPOISON4, GameTimerImageType.ITEM, "Antipoison", false),
|
ANTIPOISON(ItemID.ANTIPOISON4, GameTimerImageType.ITEM, "Antipoison", false),
|
||||||
ANTIVENOM(ItemID.ANTIVENOM4, GameTimerImageType.ITEM, "Anti-venom", false),
|
ANTIVENOM(ItemID.ANTIVENOM4, GameTimerImageType.ITEM, "Anti-venom", false),
|
||||||
TELEBLOCK(SpriteID.SPELL_TELE_BLOCK, GameTimerImageType.SPRITE, "Teleblock", true);
|
TELEBLOCK(SpriteID.SPELL_TELE_BLOCK, GameTimerImageType.SPRITE, "Teleblock", true),
|
||||||
|
SHADOW_VEIL(SpriteID.SPELL_SHADOW_VEIL, GameTimerImageType.SPRITE, "Shadow veil", true),
|
||||||
|
RESURRECT_THRALL(SpriteID.SPELL_RESURRECT_SUPERIOR_SKELETON, GameTimerImageType.SPRITE, "Resurrect thrall", false),
|
||||||
|
WARD_OF_ARCEUUS(SpriteID.SPELL_WARD_OF_ARCEUUS, GameTimerImageType.SPRITE, "Ward of Arceuus", true),
|
||||||
|
DEATH_CHARGE(SpriteID.SPELL_DEATH_CHARGE, GameTimerImageType.SPRITE, "Death charge", false),
|
||||||
|
SHADOW_VEIL_COOLDOWN(SpriteID.SPELL_SHADOW_VEIL_DISABLED, GameTimerImageType.SPRITE, "Shadow veil cooldown", 30, ChronoUnit.SECONDS),
|
||||||
|
RESURRECT_THRALL_COOLDOWN(SpriteID.SPELL_RESURRECT_SUPERIOR_SKELETON_DISABLED, GameTimerImageType.SPRITE, "Resurrect thrall cooldown", 12, GAME_TICKS),
|
||||||
|
WARD_OF_ARCEUUS_COOLDOWN(SpriteID.SPELL_WARD_OF_ARCEUUS_DISABLED, GameTimerImageType.SPRITE, "Ward of Arceuus cooldown", 30, ChronoUnit.SECONDS),
|
||||||
|
DEATH_CHARGE_COOLDOWN(SpriteID.SPELL_DEATH_CHARGE_DISABLED, GameTimerImageType.SPRITE, "Death charge cooldown", 60, ChronoUnit.SECONDS),
|
||||||
|
CORRUPTION_COOLDOWN(SpriteID.SPELL_GREATER_CORRUPTION_DISABLED, GameTimerImageType.SPRITE, "Corruption cooldown", 30, ChronoUnit.SECONDS);
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
private final Duration duration;
|
private final Duration duration;
|
||||||
|
|||||||
@@ -263,4 +263,24 @@ public interface TimersConfig extends Config
|
|||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "showArceuus",
|
||||||
|
name = "Arceuus spells duration",
|
||||||
|
description = "Whether to show Arceuus spellbook spell timers"
|
||||||
|
)
|
||||||
|
default boolean showArceuus()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "showArceuusCooldown",
|
||||||
|
name = "Arceuus spells cooldown",
|
||||||
|
description = "Whether to show cooldown timers for Arceuus spellbook spells"
|
||||||
|
)
|
||||||
|
default boolean showArceuusCooldown()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -76,6 +76,7 @@ import net.runelite.client.plugins.PluginDescriptor;
|
|||||||
import static net.runelite.client.plugins.timers.GameIndicator.VENGEANCE_ACTIVE;
|
import static net.runelite.client.plugins.timers.GameIndicator.VENGEANCE_ACTIVE;
|
||||||
import static net.runelite.client.plugins.timers.GameTimer.*;
|
import static net.runelite.client.plugins.timers.GameTimer.*;
|
||||||
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
|
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
|
||||||
|
import net.runelite.client.util.RSTimeUnit;
|
||||||
import org.apache.commons.lang3.ArrayUtils;
|
import org.apache.commons.lang3.ArrayUtils;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
@@ -113,6 +114,14 @@ public class TimersPlugin extends Plugin
|
|||||||
private static final String KILLED_TELEBLOCK_OPPONENT_TEXT = "Your Tele Block has been removed because you killed ";
|
private static final String KILLED_TELEBLOCK_OPPONENT_TEXT = "Your Tele Block has been removed because you killed ";
|
||||||
private static final String PRAYER_ENHANCE_EXPIRED = "<col=ff0000>Your prayer enhance effect has worn off.</col>";
|
private static final String PRAYER_ENHANCE_EXPIRED = "<col=ff0000>Your prayer enhance effect has worn off.</col>";
|
||||||
private static final String ENDURANCE_EFFECT_MESSAGE = "Your Ring of endurance doubles the duration of your stamina potion's effect.";
|
private static final String ENDURANCE_EFFECT_MESSAGE = "Your Ring of endurance doubles the duration of your stamina potion's effect.";
|
||||||
|
private static final String SHADOW_VEIL_MESSAGE = ">Your thieving abilities have been enhanced.</col>";
|
||||||
|
private static final String DEATH_CHARGE_MESSAGE = ">Upon the death of your next foe, some of your special attack energy will be restored.</col>";
|
||||||
|
private static final String DEATH_CHARGE_ACTIVATE_MESSAGE = ">Some of your special attack energy has been restored.</col>";
|
||||||
|
private static final String RESURRECT_THRALL_MESSAGE_START = ">You resurrect a ";
|
||||||
|
private static final String RESURRECT_THRALL_MESSAGE_END = " thrall.</col>";
|
||||||
|
private static final String RESURRECT_THRALL_DISAPPEAR_MESSAGE_START = ">Your ";
|
||||||
|
private static final String RESURRECT_THRALL_DISAPPEAR_MESSAGE_END = " thrall returns to the grave.</col>";
|
||||||
|
private static final String WARD_OF_ARCEUUS_MESSAGE = ">Your defence against Arceuus magic has been strengthened.</col>";
|
||||||
|
|
||||||
private static final Pattern TELEBLOCK_PATTERN = Pattern.compile("A Tele Block spell has been cast on you(?: by .+)?\\. It will expire in (?<mins>\\d+) minutes?(?:, (?<secs>\\d+) seconds?)?\\.");
|
private static final Pattern TELEBLOCK_PATTERN = Pattern.compile("A Tele Block spell has been cast on you(?: by .+)?\\. It will expire in (?<mins>\\d+) minutes?(?:, (?<secs>\\d+) seconds?)?\\.");
|
||||||
private static final Pattern DIVINE_POTION_PATTERN = Pattern.compile("You drink some of your divine (.+) potion\\.");
|
private static final Pattern DIVINE_POTION_PATTERN = Pattern.compile("You drink some of your divine (.+) potion\\.");
|
||||||
@@ -138,6 +147,7 @@ public class TimersPlugin extends Plugin
|
|||||||
private int lastIsVengeancedVarb;
|
private int lastIsVengeancedVarb;
|
||||||
private int lastPoisonVarp;
|
private int lastPoisonVarp;
|
||||||
private int lastPvpVarb;
|
private int lastPvpVarb;
|
||||||
|
private int lastCorruptionVarb;
|
||||||
private int nextPoisonTick;
|
private int nextPoisonTick;
|
||||||
private WorldPoint lastPoint;
|
private WorldPoint lastPoint;
|
||||||
private TeleportWidget lastTeleportClicked;
|
private TeleportWidget lastTeleportClicked;
|
||||||
@@ -202,6 +212,7 @@ public class TimersPlugin extends Plugin
|
|||||||
int isVengeancedVarb = client.getVar(Varbits.VENGEANCE_ACTIVE);
|
int isVengeancedVarb = client.getVar(Varbits.VENGEANCE_ACTIVE);
|
||||||
int poisonVarp = client.getVar(VarPlayer.POISON);
|
int poisonVarp = client.getVar(VarPlayer.POISON);
|
||||||
int pvpVarb = client.getVar(Varbits.PVP_SPEC_ORB);
|
int pvpVarb = client.getVar(Varbits.PVP_SPEC_ORB);
|
||||||
|
int corruptionCooldownVarb = client.getVar(Varbits.CORRUPTION_COOLDOWN);
|
||||||
|
|
||||||
if (lastRaidVarb != raidVarb)
|
if (lastRaidVarb != raidVarb)
|
||||||
{
|
{
|
||||||
@@ -224,6 +235,20 @@ public class TimersPlugin extends Plugin
|
|||||||
lastVengCooldownVarb = vengCooldownVarb;
|
lastVengCooldownVarb = vengCooldownVarb;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (lastCorruptionVarb != corruptionCooldownVarb && config.showArceuusCooldown())
|
||||||
|
{
|
||||||
|
if (corruptionCooldownVarb == 1)
|
||||||
|
{
|
||||||
|
createGameTimer(CORRUPTION_COOLDOWN);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
removeGameTimer(CORRUPTION_COOLDOWN);
|
||||||
|
}
|
||||||
|
|
||||||
|
lastCorruptionVarb = corruptionCooldownVarb;
|
||||||
|
}
|
||||||
|
|
||||||
if (lastIsVengeancedVarb != isVengeancedVarb && config.showVengeanceActive())
|
if (lastIsVengeancedVarb != isVengeancedVarb && config.showVengeanceActive())
|
||||||
{
|
{
|
||||||
if (isVengeancedVarb == 1)
|
if (isVengeancedVarb == 1)
|
||||||
@@ -665,6 +690,55 @@ public class TimersPlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (config.showArceuus())
|
||||||
|
{
|
||||||
|
Duration duration = Duration.of(client.getRealSkillLevel(Skill.MAGIC), RSTimeUnit.GAME_TICKS);
|
||||||
|
if (message.endsWith(SHADOW_VEIL_MESSAGE))
|
||||||
|
{
|
||||||
|
createGameTimer(SHADOW_VEIL, duration);
|
||||||
|
}
|
||||||
|
else if (message.endsWith(WARD_OF_ARCEUUS_MESSAGE))
|
||||||
|
{
|
||||||
|
createGameTimer(WARD_OF_ARCEUUS, duration);
|
||||||
|
}
|
||||||
|
else if (message.endsWith(DEATH_CHARGE_MESSAGE))
|
||||||
|
{
|
||||||
|
createGameTimer(DEATH_CHARGE, duration);
|
||||||
|
}
|
||||||
|
else if (message.endsWith(DEATH_CHARGE_ACTIVATE_MESSAGE))
|
||||||
|
{
|
||||||
|
removeGameTimer(DEATH_CHARGE);
|
||||||
|
}
|
||||||
|
else if (message.contains(RESURRECT_THRALL_MESSAGE_START) && message.endsWith(RESURRECT_THRALL_MESSAGE_END))
|
||||||
|
{
|
||||||
|
createGameTimer(RESURRECT_THRALL, duration);
|
||||||
|
}
|
||||||
|
else if (message.contains(RESURRECT_THRALL_DISAPPEAR_MESSAGE_START) && message.endsWith(RESURRECT_THRALL_DISAPPEAR_MESSAGE_END))
|
||||||
|
{
|
||||||
|
removeGameTimer(RESURRECT_THRALL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (config.showArceuusCooldown())
|
||||||
|
{
|
||||||
|
if (message.endsWith(SHADOW_VEIL_MESSAGE))
|
||||||
|
{
|
||||||
|
createGameTimer(SHADOW_VEIL_COOLDOWN);
|
||||||
|
}
|
||||||
|
else if (message.endsWith(DEATH_CHARGE_MESSAGE))
|
||||||
|
{
|
||||||
|
createGameTimer(DEATH_CHARGE_COOLDOWN);
|
||||||
|
}
|
||||||
|
else if (message.endsWith(WARD_OF_ARCEUUS_MESSAGE))
|
||||||
|
{
|
||||||
|
createGameTimer(WARD_OF_ARCEUUS_COOLDOWN);
|
||||||
|
}
|
||||||
|
else if (message.contains(RESURRECT_THRALL_MESSAGE_START) && message.endsWith(RESURRECT_THRALL_MESSAGE_END))
|
||||||
|
{
|
||||||
|
createGameTimer(RESURRECT_THRALL_COOLDOWN);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (message.equals(TZHAAR_DEFEATED_MESSAGE) || TZHAAR_COMPLETE_MESSAGE.matcher(message).matches())
|
if (message.equals(TZHAAR_DEFEATED_MESSAGE) || TZHAAR_COMPLETE_MESSAGE.matcher(message).matches())
|
||||||
{
|
{
|
||||||
log.debug("Stopping tzhaar timer");
|
log.debug("Stopping tzhaar timer");
|
||||||
|
|||||||
+1
@@ -46,6 +46,7 @@ enum AgilityCourseLocation
|
|||||||
PRIFDDINAS_AGILITY_COURSE("Prifddinas Agility Course", new WorldPoint(3253, 6109, 0)),
|
PRIFDDINAS_AGILITY_COURSE("Prifddinas Agility Course", new WorldPoint(3253, 6109, 0)),
|
||||||
RELLEKKA_ROOFTOP_COURSE("Rellekka Rooftop Course", new WorldPoint(2624, 3677, 0)),
|
RELLEKKA_ROOFTOP_COURSE("Rellekka Rooftop Course", new WorldPoint(2624, 3677, 0)),
|
||||||
SEERS_VILLAGE_ROOFTOP_COURSE("Seers' Village Rooftop Course", new WorldPoint(2728, 3488, 0)),
|
SEERS_VILLAGE_ROOFTOP_COURSE("Seers' Village Rooftop Course", new WorldPoint(2728, 3488, 0)),
|
||||||
|
SHAYZIEN_COURSE("Shayzien Agility Course", new WorldPoint(1551, 3632, 0)),
|
||||||
VARROCK_ROOFTOP_COURSE("Varrock Rooftop Course", new WorldPoint(3219, 3414, 0)),
|
VARROCK_ROOFTOP_COURSE("Varrock Rooftop Course", new WorldPoint(3219, 3414, 0)),
|
||||||
WEREWOLF_AGILITY_COURSE("Werewolf Agility Course", new WorldPoint(3542, 3463, 0)),
|
WEREWOLF_AGILITY_COURSE("Werewolf Agility Course", new WorldPoint(3542, 3463, 0)),
|
||||||
WILDERNESS_AGILITY_COURSE("Wilderness Agility Course", new WorldPoint(2997, 3916, 0));
|
WILDERNESS_AGILITY_COURSE("Wilderness Agility Course", new WorldPoint(2997, 3916, 0));
|
||||||
|
|||||||
+3
-3
@@ -62,11 +62,11 @@ enum KourendTaskLocation
|
|||||||
PISCARILIUS_SANDWORMS("Piscarilius Task (30%) - Hunting Sandworms", new WorldPoint(1841, 3789, 0)),
|
PISCARILIUS_SANDWORMS("Piscarilius Task (30%) - Hunting Sandworms", new WorldPoint(1841, 3789, 0)),
|
||||||
PISCARILIUS_STEALING_ARTEFACTS("Piscarilius Task (75%) - Stealing Artefacts", new WorldPoint(1849, 3753, 0)),
|
PISCARILIUS_STEALING_ARTEFACTS("Piscarilius Task (75%) - Stealing Artefacts", new WorldPoint(1849, 3753, 0)),
|
||||||
|
|
||||||
SHAYZIEN_HEALING_SOLDIERS("Shayzien Task (0%) - Healing Wounded Soldiers", new WorldPoint(1572, 3581, 0)),
|
SHAYZIEN_HEALING_SOLDIERS("Shayzien Task (0%) - Healing Wounded Soldiers", new WorldPoint(1528, 3627, 0)),
|
||||||
SHAYZIEN_LIZARDMEN_EAST("Shayzien Task (5%) - Killing Lizardmen", new WorldPoint(1570, 3668, 0)),
|
SHAYZIEN_LIZARDMEN_EAST("Shayzien Task (5%) - Killing Lizardmen", new WorldPoint(1570, 3668, 0)),
|
||||||
SHAYZIEN_LIZARDMEN_WEST("Shayzien Task (5%) - Killing Lizardmen", new WorldPoint(1471, 3686, 0)),
|
SHAYZIEN_LIZARDMEN_WEST("Shayzien Task (5%) - Killing Lizardmen", new WorldPoint(1471, 3686, 0)),
|
||||||
SHAYZIEN_ORGANIZED_CRIME("Shayzien Task (40%) - Organized Crime", new WorldPoint(1565, 3605, 0)),
|
SHAYZIEN_ORGANIZED_CRIME("Shayzien Task (40%) - Organized Crime", new WorldPoint(1504, 3635, 0)),
|
||||||
SHAYZIEN_COMBAT_RING("Shayzien Task (60%) - Combat Ring", new WorldPoint(1539, 3589, 0)),
|
SHAYZIEN_COMBAT_RING("Shayzien Task (60%) - Combat Ring", new WorldPoint(1541, 3628, 0)),
|
||||||
SHAYZIEN_LIZARDMAN_SHAMANS("Shayzien Unlock (100%) - Lizardman Shamans", new WorldPoint(1455, 3693, 0));
|
SHAYZIEN_LIZARDMAN_SHAMANS("Shayzien Unlock (100%) - Lizardman Shamans", new WorldPoint(1455, 3693, 0));
|
||||||
|
|
||||||
private final String tooltip;
|
private final String tooltip;
|
||||||
|
|||||||
+2
-3
@@ -187,9 +187,8 @@ enum MiningSiteLocation
|
|||||||
new Rock(1, Ore.COPPER), new Rock(1, Ore.TIN), new Rock(5, Ore.IRON), new Rock(2, Ore.SILVER), new Rock(1, Ore.COAL)),
|
new Rock(1, Ore.COPPER), new Rock(1, Ore.TIN), new Rock(5, Ore.IRON), new Rock(2, Ore.SILVER), new Rock(1, Ore.COAL)),
|
||||||
SALT_MINE(new WorldPoint(2835, 10334, 0),
|
SALT_MINE(new WorldPoint(2835, 10334, 0),
|
||||||
new Rock(7, Ore.BASALT), new Rock(15, Ore.TE_SALT), new Rock(12, Ore.EFH_SALT), new Rock(12, Ore.URT_SALT)),
|
new Rock(7, Ore.BASALT), new Rock(15, Ore.TE_SALT), new Rock(12, Ore.EFH_SALT), new Rock(12, Ore.URT_SALT)),
|
||||||
SHAYZIEN_EAST(new WorldPoint(1597, 3653, 0), new Rock(3, Ore.CLAY), new Rock(1, Ore.MITHRIL), new Rock(1, Ore.ADAMANTITE)),
|
SHAYZIEN(new WorldPoint(1601, 3645, 0),
|
||||||
SHAYZIEN_WEST(new WorldPoint(1586, 3650, 0),
|
new Rock(3, Ore.CLAY), new Rock(3, Ore.IRON), new Rock(4, Ore.COAL), new Rock(2, Ore.MITHRIL), new Rock(2, Ore.ADAMANTITE)),
|
||||||
new Rock(4, Ore.IRON), new Rock(4, Ore.COAL), new Rock(1, Ore.MITHRIL), new Rock(1, Ore.ADAMANTITE)),
|
|
||||||
SHILO_VILLAGE_SURFACE(new WorldPoint(2822, 3001, 0), new Rock(7, Ore.GEM_ROCK)),
|
SHILO_VILLAGE_SURFACE(new WorldPoint(2822, 3001, 0), new Rock(7, Ore.GEM_ROCK)),
|
||||||
SILVAREA(new WorldPoint(3371, 3498, 0), new Rock(7, Ore.LIMESTONE)),
|
SILVAREA(new WorldPoint(3371, 3498, 0), new Rock(7, Ore.LIMESTONE)),
|
||||||
SLEPE_UNDERGROUND(new WorldPoint(3888, 9749, 0), new Rock(6, Ore.IRON), new Rock(14, Ore.COAL)),
|
SLEPE_UNDERGROUND(new WorldPoint(3888, 9749, 0), new Rock(6, Ore.IRON), new Rock(14, Ore.COAL)),
|
||||||
|
|||||||
+3
-1
@@ -116,6 +116,7 @@ enum QuestStartLocation
|
|||||||
ICTHLARINS_LITTLE_HELPER(Quest.ICTHLARINS_LITTLE_HELPER, new WorldPoint(3314, 2849, 0)),
|
ICTHLARINS_LITTLE_HELPER(Quest.ICTHLARINS_LITTLE_HELPER, new WorldPoint(3314, 2849, 0)),
|
||||||
IN_SEARCH_OF_THE_MYREQUE(Quest.IN_SEARCH_OF_THE_MYREQUE, new WorldPoint(3502, 3477, 0)),
|
IN_SEARCH_OF_THE_MYREQUE(Quest.IN_SEARCH_OF_THE_MYREQUE, new WorldPoint(3502, 3477, 0)),
|
||||||
JUNGLE_POTION(Quest.JUNGLE_POTION, new WorldPoint(2809, 3086, 0)),
|
JUNGLE_POTION(Quest.JUNGLE_POTION, new WorldPoint(2809, 3086, 0)),
|
||||||
|
A_KINGDOM_DIVIDED(Quest.A_KINGDOM_DIVIDED, new WorldPoint(1663, 3672, 0)),
|
||||||
KINGS_RANSOM(Quest.KINGS_RANSOM, new WorldPoint(2741, 3554, 0)),
|
KINGS_RANSOM(Quest.KINGS_RANSOM, new WorldPoint(2741, 3554, 0)),
|
||||||
LEGENDS_QUEST(Quest.LEGENDS_QUEST, new WorldPoint(2725, 3367, 0)),
|
LEGENDS_QUEST(Quest.LEGENDS_QUEST, new WorldPoint(2725, 3367, 0)),
|
||||||
LOST_CITY(Quest.LOST_CITY, new WorldPoint(3149, 3205, 0)),
|
LOST_CITY(Quest.LOST_CITY, new WorldPoint(3149, 3205, 0)),
|
||||||
@@ -130,6 +131,7 @@ enum QuestStartLocation
|
|||||||
MURDER_MYSTERY(Quest.MURDER_MYSTERY, new WorldPoint(2740, 3562, 0)),
|
MURDER_MYSTERY(Quest.MURDER_MYSTERY, new WorldPoint(2740, 3562, 0)),
|
||||||
MY_ARMS_BIG_ADVENTURE(Quest.MY_ARMS_BIG_ADVENTURE, new WorldPoint(2908, 10088, 0)),
|
MY_ARMS_BIG_ADVENTURE(Quest.MY_ARMS_BIG_ADVENTURE, new WorldPoint(2908, 10088, 0)),
|
||||||
NATURE_SPIRIT(Quest.NATURE_SPIRIT, new WorldPoint(3440, 9894, 0)),
|
NATURE_SPIRIT(Quest.NATURE_SPIRIT, new WorldPoint(3440, 9894, 0)),
|
||||||
|
A_NIGHT_AT_THE_THEATRE(Quest.A_NIGHT_AT_THE_THEATRE, new WorldPoint(3672, 3224, 0)),
|
||||||
OBSERVATORY_QUEST(Quest.OBSERVATORY_QUEST, new WorldPoint(2438, 3185, 0)),
|
OBSERVATORY_QUEST(Quest.OBSERVATORY_QUEST, new WorldPoint(2438, 3185, 0)),
|
||||||
OLAFS_QUEST(Quest.OLAFS_QUEST, new WorldPoint(2723, 3729, 0)),
|
OLAFS_QUEST(Quest.OLAFS_QUEST, new WorldPoint(2723, 3729, 0)),
|
||||||
ONE_SMALL_FAVOUR(Quest.ONE_SMALL_FAVOUR, new WorldPoint(2834, 2985, 0)),
|
ONE_SMALL_FAVOUR(Quest.ONE_SMALL_FAVOUR, new WorldPoint(2834, 2985, 0)),
|
||||||
@@ -153,7 +155,7 @@ enum QuestStartLocation
|
|||||||
SWAN_SONG(Quest.SWAN_SONG, new WorldPoint(2345, 3652, 0)),
|
SWAN_SONG(Quest.SWAN_SONG, new WorldPoint(2345, 3652, 0)),
|
||||||
TAI_BWO_WANNAI_TRIO(Quest.TAI_BWO_WANNAI_TRIO, new WorldPoint(2779, 3087, 0)),
|
TAI_BWO_WANNAI_TRIO(Quest.TAI_BWO_WANNAI_TRIO, new WorldPoint(2779, 3087, 0)),
|
||||||
A_TAIL_OF_TWO_CATS(Quest.A_TAIL_OF_TWO_CATS, new WorldPoint(2917, 3557, 0)),
|
A_TAIL_OF_TWO_CATS(Quest.A_TAIL_OF_TWO_CATS, new WorldPoint(2917, 3557, 0)),
|
||||||
TALE_OF_THE_RIGHTEOUS(Quest.TALE_OF_THE_RIGHTEOUS, new WorldPoint(1511, 3631, 0)),
|
TALE_OF_THE_RIGHTEOUS(Quest.TALE_OF_THE_RIGHTEOUS, new WorldPoint(1541, 3570, 0)),
|
||||||
A_TASTE_OF_HOPE(Quest.A_TASTE_OF_HOPE, new WorldPoint(3668, 3216, 0)),
|
A_TASTE_OF_HOPE(Quest.A_TASTE_OF_HOPE, new WorldPoint(3668, 3216, 0)),
|
||||||
TEARS_OF_GUTHIX(Quest.TEARS_OF_GUTHIX, new WorldPoint(3251, 9517, 0)),
|
TEARS_OF_GUTHIX(Quest.TEARS_OF_GUTHIX, new WorldPoint(3251, 9517, 0)),
|
||||||
TEMPLE_OF_IKOV(Quest.TEMPLE_OF_IKOV, new WorldPoint(2574, 3320, 0)),
|
TEMPLE_OF_IKOV(Quest.TEMPLE_OF_IKOV, new WorldPoint(2574, 3320, 0)),
|
||||||
|
|||||||
+3
@@ -138,6 +138,9 @@ enum RareTreeLocation
|
|||||||
new WorldPoint(1642, 3533, 0),
|
new WorldPoint(1642, 3533, 0),
|
||||||
new WorldPoint(1671, 3657, 0),
|
new WorldPoint(1671, 3657, 0),
|
||||||
new WorldPoint(1680, 3657, 0),
|
new WorldPoint(1680, 3657, 0),
|
||||||
|
new WorldPoint(1572, 3618, 0),
|
||||||
|
new WorldPoint(1553, 3551, 0),
|
||||||
|
new WorldPoint(1496, 3582, 0),
|
||||||
|
|
||||||
// Tirannwn
|
// Tirannwn
|
||||||
new WorldPoint(2217, 3141, 0),
|
new WorldPoint(2217, 3141, 0),
|
||||||
|
|||||||
+1
-1
@@ -134,7 +134,7 @@ enum TeleportLocationData
|
|||||||
TROLL_STRONGHOLD_STONY_BASALT_OUTSIDE(TeleportType.OTHER, "Stony Basalt", "Troll Stronghold", new WorldPoint(2844, 3693, 0), "stony_basalt_teleport_icon.png"),
|
TROLL_STRONGHOLD_STONY_BASALT_OUTSIDE(TeleportType.OTHER, "Stony Basalt", "Troll Stronghold", new WorldPoint(2844, 3693, 0), "stony_basalt_teleport_icon.png"),
|
||||||
KHAREDSTS_MEMOIRS_HOSIDIUS(TeleportType.OTHER, "Kharedst's Memoirs", "Lunch by the Lancalliums (Hosidius)", new WorldPoint(1713, 3612, 0), "kharedsts_memoirs_teleport_icon.png"),
|
KHAREDSTS_MEMOIRS_HOSIDIUS(TeleportType.OTHER, "Kharedst's Memoirs", "Lunch by the Lancalliums (Hosidius)", new WorldPoint(1713, 3612, 0), "kharedsts_memoirs_teleport_icon.png"),
|
||||||
KHAREDSTS_MEMOIRS_PISCARILIUS(TeleportType.OTHER, "Kharedst's Memoirs", "The Fisher's Flute (Piscarilius)", new WorldPoint(1802, 3748, 0), "kharedsts_memoirs_teleport_icon.png"),
|
KHAREDSTS_MEMOIRS_PISCARILIUS(TeleportType.OTHER, "Kharedst's Memoirs", "The Fisher's Flute (Piscarilius)", new WorldPoint(1802, 3748, 0), "kharedsts_memoirs_teleport_icon.png"),
|
||||||
KHAREDSTS_MEMOIRS_SHAYZIEN(TeleportType.OTHER, "Kharedst's Memoirs", "History and Hearsay (Shayzien)", new WorldPoint(1476, 3580, 0), "kharedsts_memoirs_teleport_icon.png"),
|
KHAREDSTS_MEMOIRS_SHAYZIEN(TeleportType.OTHER, "Kharedst's Memoirs", "History and Hearsay (Shayzien)", new WorldPoint(1478, 3576, 0), "kharedsts_memoirs_teleport_icon.png"),
|
||||||
KHAREDSTS_MEMOIRS_LOVAKENGJ(TeleportType.OTHER, "Kharedst's Memoirs", "Jewelry of Jubilation (Lovakengj)", new WorldPoint(1544, 3762, 0), "kharedsts_memoirs_teleport_icon.png"),
|
KHAREDSTS_MEMOIRS_LOVAKENGJ(TeleportType.OTHER, "Kharedst's Memoirs", "Jewelry of Jubilation (Lovakengj)", new WorldPoint(1544, 3762, 0), "kharedsts_memoirs_teleport_icon.png"),
|
||||||
KHAREDSTS_MEMOIRS_ARCEUUS(TeleportType.OTHER, "Kharedst's Memoirs", "A Dark Disposition (Arceuus)", new WorldPoint(1680, 3746, 0), "kharedsts_memoirs_teleport_icon.png"),
|
KHAREDSTS_MEMOIRS_ARCEUUS(TeleportType.OTHER, "Kharedst's Memoirs", "A Dark Disposition (Arceuus)", new WorldPoint(1680, 3746, 0), "kharedsts_memoirs_teleport_icon.png"),
|
||||||
PHARAOHS_SCEPTRE_JALSAVRAH(TeleportType.OTHER, "Pharaoh's Sceptre", "Jalsavrah (Pyramid Plunder)", new WorldPoint(3288, 2795, 0), "pharaohs_sceptre_teleport_icon.png"),
|
PHARAOHS_SCEPTRE_JALSAVRAH(TeleportType.OTHER, "Pharaoh's Sceptre", "Jalsavrah (Pyramid Plunder)", new WorldPoint(3288, 2795, 0), "pharaohs_sceptre_teleport_icon.png"),
|
||||||
|
|||||||
@@ -48,6 +48,7 @@ import net.runelite.client.plugins.PluginDescriptor;
|
|||||||
import net.runelite.client.ui.overlay.worldmap.WorldMapPoint;
|
import net.runelite.client.ui.overlay.worldmap.WorldMapPoint;
|
||||||
import net.runelite.client.ui.overlay.worldmap.WorldMapPointManager;
|
import net.runelite.client.ui.overlay.worldmap.WorldMapPointManager;
|
||||||
import net.runelite.client.util.ImageUtil;
|
import net.runelite.client.util.ImageUtil;
|
||||||
|
import net.runelite.client.util.Text;
|
||||||
|
|
||||||
@PluginDescriptor(
|
@PluginDescriptor(
|
||||||
name = "World Map",
|
name = "World Map",
|
||||||
@@ -327,6 +328,7 @@ public class WorldMapPlugin extends Plugin
|
|||||||
.image(BLANK_ICON)
|
.image(BLANK_ICON)
|
||||||
.target(l.getTarget())
|
.target(l.getTarget())
|
||||||
.jumpOnClick(l.getTarget() != null)
|
.jumpOnClick(l.getTarget() != null)
|
||||||
|
.name(Text.titleCase(l))
|
||||||
.tooltip(l.getTooltip())
|
.tooltip(l.getTooltip())
|
||||||
.build()
|
.build()
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -42,15 +42,10 @@ public class WidgetOverlay extends Overlay
|
|||||||
return Arrays.asList(
|
return Arrays.asList(
|
||||||
new WidgetOverlay(client, WidgetInfo.RESIZABLE_MINIMAP_WIDGET, OverlayPosition.CANVAS_TOP_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.RESIZABLE_MINIMAP_WIDGET, OverlayPosition.CANVAS_TOP_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.RESIZABLE_MINIMAP_STONES_WIDGET, OverlayPosition.CANVAS_TOP_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.RESIZABLE_MINIMAP_STONES_WIDGET, OverlayPosition.CANVAS_TOP_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.FOSSIL_ISLAND_OXYGENBAR, OverlayPosition.TOP_LEFT),
|
|
||||||
new XpTrackerWidgetOverlay(client, WidgetInfo.EXPERIENCE_TRACKER_WIDGET, OverlayPosition.TOP_RIGHT),
|
new XpTrackerWidgetOverlay(client, WidgetInfo.EXPERIENCE_TRACKER_WIDGET, OverlayPosition.TOP_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.RAIDS_POINTS_INFOBOX, OverlayPosition.TOP_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.RAIDS_POINTS_INFOBOX, OverlayPosition.TOP_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.TOB_PARTY_INTERFACE, OverlayPosition.TOP_LEFT),
|
|
||||||
new WidgetOverlay(client, WidgetInfo.TOB_PARTY_STATS, OverlayPosition.TOP_LEFT),
|
new WidgetOverlay(client, WidgetInfo.TOB_PARTY_STATS, OverlayPosition.TOP_LEFT),
|
||||||
new WidgetOverlay(client, WidgetInfo.GWD_KC, OverlayPosition.TOP_RIGHT),
|
|
||||||
new WidgetOverlay(client, WidgetInfo.TITHE_FARM, OverlayPosition.TOP_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.TITHE_FARM, OverlayPosition.TOP_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.PEST_CONTROL_BOAT_INFO, OverlayPosition.TOP_LEFT),
|
|
||||||
new WidgetOverlay(client, WidgetInfo.PEST_CONTROL_INFO, OverlayPosition.TOP_LEFT),
|
|
||||||
new WidgetOverlay(client, WidgetInfo.ZEAH_MESS_HALL_COOKING_DISPLAY, OverlayPosition.TOP_LEFT),
|
new WidgetOverlay(client, WidgetInfo.ZEAH_MESS_HALL_COOKING_DISPLAY, OverlayPosition.TOP_LEFT),
|
||||||
new WidgetOverlay(client, WidgetInfo.PVP_KILLDEATH_COUNTER, OverlayPosition.TOP_LEFT),
|
new WidgetOverlay(client, WidgetInfo.PVP_KILLDEATH_COUNTER, OverlayPosition.TOP_LEFT),
|
||||||
new WidgetOverlay(client, WidgetInfo.SKOTIZO_CONTAINER, OverlayPosition.TOP_LEFT),
|
new WidgetOverlay(client, WidgetInfo.SKOTIZO_CONTAINER, OverlayPosition.TOP_LEFT),
|
||||||
@@ -60,10 +55,7 @@ public class WidgetOverlay extends Overlay
|
|||||||
new WidgetOverlay(client, WidgetInfo.LMS_KDA, OverlayPosition.TOP_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.LMS_KDA, OverlayPosition.TOP_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.GAUNTLET_TIMER_CONTAINER, OverlayPosition.TOP_LEFT),
|
new WidgetOverlay(client, WidgetInfo.GAUNTLET_TIMER_CONTAINER, OverlayPosition.TOP_LEFT),
|
||||||
new WidgetOverlay(client, WidgetInfo.HALLOWED_SEPULCHRE_TIMER_CONTAINER, OverlayPosition.TOP_LEFT),
|
new WidgetOverlay(client, WidgetInfo.HALLOWED_SEPULCHRE_TIMER_CONTAINER, OverlayPosition.TOP_LEFT),
|
||||||
new WidgetOverlay(client, WidgetInfo.HEALTH_OVERLAY_BAR, OverlayPosition.TOP_CENTER),
|
|
||||||
new WidgetOverlay(client, WidgetInfo.NIGHTMARE_PILLAR_HEALTH, OverlayPosition.TOP_LEFT),
|
new WidgetOverlay(client, WidgetInfo.NIGHTMARE_PILLAR_HEALTH, OverlayPosition.TOP_LEFT),
|
||||||
new WidgetOverlay(client, WidgetInfo.VOLCANIC_MINE_VENTS_INFOBOX_GROUP, OverlayPosition.BOTTOM_RIGHT),
|
|
||||||
new WidgetOverlay(client, WidgetInfo.VOLCANIC_MINE_STABILITY_INFOBOX_GROUP, OverlayPosition.BOTTOM_LEFT),
|
|
||||||
new WidgetOverlay(client, WidgetInfo.MULTICOMBAT_FIXED, OverlayPosition.BOTTOM_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.MULTICOMBAT_FIXED, OverlayPosition.BOTTOM_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.MULTICOMBAT_RESIZEABLE_MODERN, OverlayPosition.CANVAS_TOP_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.MULTICOMBAT_RESIZEABLE_MODERN, OverlayPosition.CANVAS_TOP_RIGHT),
|
||||||
new WidgetOverlay(client, WidgetInfo.MULTICOMBAT_RESIZEABLE_CLASSIC, OverlayPosition.CANVAS_TOP_RIGHT),
|
new WidgetOverlay(client, WidgetInfo.MULTICOMBAT_RESIZEABLE_CLASSIC, OverlayPosition.CANVAS_TOP_RIGHT),
|
||||||
|
|||||||
+88
-13
@@ -25,33 +25,43 @@
|
|||||||
package net.runelite.client.ui.overlay.worldmap;
|
package net.runelite.client.ui.overlay.worldmap;
|
||||||
|
|
||||||
import com.google.common.base.Splitter;
|
import com.google.common.base.Splitter;
|
||||||
|
import com.google.common.base.Strings;
|
||||||
import java.awt.Dimension;
|
import java.awt.Dimension;
|
||||||
import java.awt.FontMetrics;
|
import java.awt.FontMetrics;
|
||||||
import java.awt.Graphics2D;
|
import java.awt.Graphics2D;
|
||||||
import java.awt.Rectangle;
|
import java.awt.Rectangle;
|
||||||
import java.awt.geom.Area;
|
import java.awt.geom.Area;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import javax.inject.Singleton;
|
import javax.inject.Singleton;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
|
import net.runelite.api.MenuAction;
|
||||||
|
import net.runelite.api.MenuEntry;
|
||||||
import net.runelite.api.Point;
|
import net.runelite.api.Point;
|
||||||
import net.runelite.api.RenderOverview;
|
import net.runelite.api.RenderOverview;
|
||||||
import net.runelite.api.coords.WorldPoint;
|
import net.runelite.api.coords.WorldPoint;
|
||||||
|
import net.runelite.api.events.MenuOptionClicked;
|
||||||
|
import net.runelite.api.widgets.JavaScriptCallback;
|
||||||
import net.runelite.api.widgets.Widget;
|
import net.runelite.api.widgets.Widget;
|
||||||
import net.runelite.api.widgets.WidgetID;
|
import net.runelite.api.widgets.WidgetID;
|
||||||
import net.runelite.api.widgets.WidgetInfo;
|
import net.runelite.api.widgets.WidgetInfo;
|
||||||
import net.runelite.client.input.MouseManager;
|
import net.runelite.client.eventbus.Subscribe;
|
||||||
import net.runelite.client.ui.FontManager;
|
import net.runelite.client.ui.FontManager;
|
||||||
import net.runelite.client.ui.JagexColors;
|
import net.runelite.client.ui.JagexColors;
|
||||||
import net.runelite.client.ui.overlay.Overlay;
|
import net.runelite.client.ui.overlay.Overlay;
|
||||||
import net.runelite.client.ui.overlay.OverlayLayer;
|
import net.runelite.client.ui.overlay.OverlayLayer;
|
||||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||||
|
import net.runelite.client.util.ColorUtil;
|
||||||
|
|
||||||
@Singleton
|
@Singleton
|
||||||
public class WorldMapOverlay extends Overlay
|
public class WorldMapOverlay extends Overlay
|
||||||
{
|
{
|
||||||
|
private static final String FOCUS_ON = "Focus on";
|
||||||
|
|
||||||
private static final int TOOLTIP_OFFSET_HEIGHT = 25;
|
private static final int TOOLTIP_OFFSET_HEIGHT = 25;
|
||||||
private static final int TOOLTIP_OFFSET_WIDTH = 5;
|
private static final int TOOLTIP_OFFSET_WIDTH = 5;
|
||||||
private static final int TOOLTIP_PADDING_HEIGHT = 1;
|
private static final int TOOLTIP_PADDING_HEIGHT = 1;
|
||||||
@@ -63,12 +73,12 @@ public class WorldMapOverlay extends Overlay
|
|||||||
private final WorldMapPointManager worldMapPointManager;
|
private final WorldMapPointManager worldMapPointManager;
|
||||||
private final Client client;
|
private final Client client;
|
||||||
|
|
||||||
|
private final List<MenuEntry> mapMenuEntries = new ArrayList<>();
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
private WorldMapOverlay(
|
private WorldMapOverlay(
|
||||||
Client client,
|
Client client,
|
||||||
WorldMapPointManager worldMapPointManager,
|
WorldMapPointManager worldMapPointManager)
|
||||||
MouseManager mouseManager,
|
|
||||||
WorldMapOverlayMouseListener worldMapOverlayMouseListener)
|
|
||||||
{
|
{
|
||||||
this.client = client;
|
this.client = client;
|
||||||
this.worldMapPointManager = worldMapPointManager;
|
this.worldMapPointManager = worldMapPointManager;
|
||||||
@@ -76,7 +86,6 @@ public class WorldMapOverlay extends Overlay
|
|||||||
setPriority(OverlayPriority.HIGHEST);
|
setPriority(OverlayPriority.HIGHEST);
|
||||||
setLayer(OverlayLayer.MANUAL);
|
setLayer(OverlayLayer.MANUAL);
|
||||||
drawAfterInterface(WidgetID.WORLD_MAP_GROUP_ID);
|
drawAfterInterface(WidgetID.WORLD_MAP_GROUP_ID);
|
||||||
mouseManager.registerMouseListener(worldMapOverlayMouseListener);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -90,17 +99,44 @@ public class WorldMapOverlay extends Overlay
|
|||||||
}
|
}
|
||||||
|
|
||||||
Widget widget = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
Widget widget = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
||||||
if (widget == null)
|
Widget bottomBar = client.getWidget(WidgetInfo.WORLD_MAP_BOTTOM_BAR);
|
||||||
|
if (widget == null || bottomBar == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bottomBar.setOnTimerListener((JavaScriptCallback) ev ->
|
||||||
|
{
|
||||||
|
if (client.isMenuOpen() || mapMenuEntries.isEmpty())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
MenuEntry[] entries = client.getMenuEntries();
|
||||||
|
int end = entries.length;
|
||||||
|
entries = Arrays.copyOf(entries, end + mapMenuEntries.size());
|
||||||
|
for (int i = 0; i < mapMenuEntries.size(); i++)
|
||||||
|
{
|
||||||
|
entries[end + i] = mapMenuEntries.get(i);
|
||||||
|
}
|
||||||
|
client.setMenuEntries(entries);
|
||||||
|
});
|
||||||
|
bottomBar.setHasListener(true);
|
||||||
|
|
||||||
final Rectangle worldMapRectangle = widget.getBounds();
|
final Rectangle worldMapRectangle = widget.getBounds();
|
||||||
final Area mapViewArea = getWorldMapClipArea(worldMapRectangle);
|
final Area mapViewArea = getWorldMapClipArea(worldMapRectangle);
|
||||||
final Rectangle canvasBounds = new Rectangle(0, 0, client.getCanvasWidth(), client.getCanvasHeight());
|
final Rectangle canvasBounds = new Rectangle(0, 0, client.getCanvasWidth(), client.getCanvasHeight());
|
||||||
final Area canvasViewArea = getWorldMapClipArea(canvasBounds);
|
final Area canvasViewArea = getWorldMapClipArea(canvasBounds);
|
||||||
Area currentClip = null;
|
Area currentClip = null;
|
||||||
|
|
||||||
|
Point mousePos = client.getMouseCanvasPosition();
|
||||||
|
if (!canvasViewArea.contains(mousePos.getX(), mousePos.getY()))
|
||||||
|
{
|
||||||
|
mousePos = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
mapMenuEntries.clear();
|
||||||
|
|
||||||
WorldMapPoint tooltipPoint = null;
|
WorldMapPoint tooltipPoint = null;
|
||||||
|
|
||||||
for (WorldMapPoint worldPoint : points)
|
for (WorldMapPoint worldPoint : points)
|
||||||
@@ -111,10 +147,8 @@ public class WorldMapOverlay extends Overlay
|
|||||||
if (image != null && point != null)
|
if (image != null && point != null)
|
||||||
{
|
{
|
||||||
Point drawPoint = mapWorldPointToGraphicsPoint(point);
|
Point drawPoint = mapWorldPointToGraphicsPoint(point);
|
||||||
|
|
||||||
if (drawPoint == null)
|
if (drawPoint == null)
|
||||||
{
|
{
|
||||||
worldPoint.setClickbox(null);
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -183,15 +217,40 @@ public class WorldMapOverlay extends Overlay
|
|||||||
|
|
||||||
graphics.drawImage(image, drawX, drawY, null);
|
graphics.drawImage(image, drawX, drawY, null);
|
||||||
Rectangle clickbox = new Rectangle(drawX, drawY, image.getWidth(), image.getHeight());
|
Rectangle clickbox = new Rectangle(drawX, drawY, image.getWidth(), image.getHeight());
|
||||||
worldPoint.setClickbox(clickbox);
|
if (mousePos != null && clickbox.contains(mousePos.getX(), mousePos.getY()))
|
||||||
|
|
||||||
if (worldPoint.isTooltipVisible())
|
|
||||||
{
|
{
|
||||||
tooltipPoint = worldPoint;
|
if (!Strings.isNullOrEmpty(worldPoint.getTooltip()))
|
||||||
|
{
|
||||||
|
tooltipPoint = worldPoint;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (worldPoint.isJumpOnClick())
|
||||||
|
{
|
||||||
|
assert worldPoint.getName() != null;
|
||||||
|
|
||||||
|
WorldPoint target = worldPoint.getTarget();
|
||||||
|
if (target == null)
|
||||||
|
{
|
||||||
|
target = worldPoint.getWorldPoint();
|
||||||
|
}
|
||||||
|
|
||||||
|
MenuEntry entry = new MenuEntry();
|
||||||
|
entry.setType(MenuAction.RUNELITE.getId());
|
||||||
|
entry.setOption(FOCUS_ON);
|
||||||
|
entry.setTarget(ColorUtil.wrapWithColorTag(worldPoint.getName(), JagexColors.MENU_TARGET));
|
||||||
|
entry.setIdentifier(target.getPlane() << 28 | target.getX() << 14 | target.getY());
|
||||||
|
mapMenuEntries.add(entry);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
final Widget rsTooltip = client.getWidget(WidgetInfo.WORLD_MAP_TOOLTIP);
|
||||||
|
if (rsTooltip != null)
|
||||||
|
{
|
||||||
|
rsTooltip.setHidden(tooltipPoint != null);
|
||||||
|
}
|
||||||
|
|
||||||
if (tooltipPoint != null)
|
if (tooltipPoint != null)
|
||||||
{
|
{
|
||||||
drawTooltip(graphics, tooltipPoint);
|
drawTooltip(graphics, tooltipPoint);
|
||||||
@@ -200,8 +259,24 @@ public class WorldMapOverlay extends Overlay
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Subscribe
|
||||||
|
private void onMenuOptionClicked(MenuOptionClicked ev)
|
||||||
|
{
|
||||||
|
if (ev.getMenuAction() == MenuAction.RUNELITE && FOCUS_ON.equals(ev.getMenuOption()))
|
||||||
|
{
|
||||||
|
int pxy = ev.getId();
|
||||||
|
WorldPoint wp = new WorldPoint(
|
||||||
|
pxy >> 14 & 0x3fff,
|
||||||
|
pxy & 0x3fff,
|
||||||
|
pxy >> 28);
|
||||||
|
|
||||||
|
client.getRenderOverview().setWorldMapPositionTarget(wp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the screen coordinates for a WorldPoint on the world map
|
* Get the screen coordinates for a WorldPoint on the world map
|
||||||
|
*
|
||||||
* @param worldPoint WorldPoint to get screen coordinates of
|
* @param worldPoint WorldPoint to get screen coordinates of
|
||||||
* @return Point of screen coordinates of the center of the world point
|
* @return Point of screen coordinates of the center of the world point
|
||||||
*/
|
*/
|
||||||
@@ -214,7 +289,7 @@ public class WorldMapOverlay extends Overlay
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
Float pixelsPerTile = ro.getWorldMapZoom();
|
float pixelsPerTile = ro.getWorldMapZoom();
|
||||||
|
|
||||||
Widget map = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
Widget map = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
||||||
if (map != null)
|
if (map != null)
|
||||||
|
|||||||
-166
@@ -1,166 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) 2018, Morgan Lewis <https://github.com/MESLewis>
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions are met:
|
|
||||||
*
|
|
||||||
* 1. Redistributions of source code must retain the above copyright notice, this
|
|
||||||
* list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
||||||
* this list of conditions and the following disclaimer in the documentation
|
|
||||||
* and/or other materials provided with the distribution.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
||||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
||||||
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
||||||
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
|
||||||
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
||||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
||||||
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*/
|
|
||||||
package net.runelite.client.ui.overlay.worldmap;
|
|
||||||
|
|
||||||
import java.awt.Rectangle;
|
|
||||||
import java.awt.event.MouseEvent;
|
|
||||||
import java.util.List;
|
|
||||||
import javax.inject.Inject;
|
|
||||||
import javax.inject.Singleton;
|
|
||||||
import javax.swing.SwingUtilities;
|
|
||||||
import net.runelite.api.Client;
|
|
||||||
import net.runelite.api.Point;
|
|
||||||
import net.runelite.api.RenderOverview;
|
|
||||||
import net.runelite.api.coords.WorldPoint;
|
|
||||||
import net.runelite.api.widgets.Widget;
|
|
||||||
import net.runelite.api.widgets.WidgetInfo;
|
|
||||||
import net.runelite.client.input.MouseAdapter;
|
|
||||||
|
|
||||||
@Singleton
|
|
||||||
public class WorldMapOverlayMouseListener extends MouseAdapter
|
|
||||||
{
|
|
||||||
private final Client client;
|
|
||||||
private final WorldMapPointManager worldMapPointManager;
|
|
||||||
private WorldMapPoint tooltipPoint = null;
|
|
||||||
|
|
||||||
@Inject
|
|
||||||
private WorldMapOverlayMouseListener(Client client, WorldMapPointManager worldMapPointManager)
|
|
||||||
{
|
|
||||||
this.client = client;
|
|
||||||
this.worldMapPointManager = worldMapPointManager;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public MouseEvent mousePressed(MouseEvent e)
|
|
||||||
{
|
|
||||||
final List<WorldMapPoint> worldMapPoints = worldMapPointManager.getWorldMapPoints();
|
|
||||||
|
|
||||||
if (SwingUtilities.isLeftMouseButton(e) && !worldMapPoints.isEmpty())
|
|
||||||
{
|
|
||||||
Point mousePos = client.getMouseCanvasPosition();
|
|
||||||
final Widget view = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
|
||||||
|
|
||||||
if (view == null)
|
|
||||||
{
|
|
||||||
return e;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (WorldMapPoint worldMapPoint : worldMapPoints)
|
|
||||||
{
|
|
||||||
Rectangle clickbox = worldMapPoint.getClickbox();
|
|
||||||
if (clickbox != null && clickbox.contains(mousePos.getX(), mousePos.getY()))
|
|
||||||
{
|
|
||||||
if (worldMapPoint.isJumpOnClick())
|
|
||||||
{
|
|
||||||
// jump map to target, or position of point
|
|
||||||
WorldPoint target = worldMapPoint.getTarget();
|
|
||||||
if (target == null)
|
|
||||||
{
|
|
||||||
target = worldMapPoint.getWorldPoint();
|
|
||||||
}
|
|
||||||
RenderOverview renderOverview = client.getRenderOverview();
|
|
||||||
renderOverview.setWorldMapPositionTarget(target);
|
|
||||||
}
|
|
||||||
e.consume();
|
|
||||||
return worldMapPoint.onClick(e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return e;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public MouseEvent mouseMoved(MouseEvent mouseEvent)
|
|
||||||
{
|
|
||||||
final List<WorldMapPoint> worldMapPoints = worldMapPointManager.getWorldMapPoints();
|
|
||||||
|
|
||||||
if (worldMapPoints.isEmpty())
|
|
||||||
{
|
|
||||||
return mouseEvent;
|
|
||||||
}
|
|
||||||
|
|
||||||
final Point mousePos = client.getMouseCanvasPosition();
|
|
||||||
final Widget view = client.getWidget(WidgetInfo.WORLD_MAP_VIEW);
|
|
||||||
|
|
||||||
if (view == null)
|
|
||||||
{
|
|
||||||
return mouseEvent;
|
|
||||||
}
|
|
||||||
|
|
||||||
final Rectangle worldMapDisplay = view.getBounds();
|
|
||||||
|
|
||||||
if (worldMapDisplay == null || !worldMapDisplay.contains(mousePos.getX(), mousePos.getY()))
|
|
||||||
{
|
|
||||||
if (tooltipPoint != null)
|
|
||||||
{
|
|
||||||
tooltipPoint.setTooltipVisible(false);
|
|
||||||
tooltipPoint = null;
|
|
||||||
final Widget rsTooltip = client.getWidget(WidgetInfo.WORLD_MAP_TOOLTIP);
|
|
||||||
if (rsTooltip != null)
|
|
||||||
{
|
|
||||||
rsTooltip.setHidden(false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return mouseEvent;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tooltipPoint != null)
|
|
||||||
{
|
|
||||||
if (tooltipPoint.getClickbox() != null
|
|
||||||
&& tooltipPoint.getClickbox().contains(mousePos.getX(), mousePos.getY()))
|
|
||||||
{
|
|
||||||
return mouseEvent;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
tooltipPoint.setTooltipVisible(false);
|
|
||||||
tooltipPoint = null;
|
|
||||||
final Widget rsTooltip = client.getWidget(WidgetInfo.WORLD_MAP_TOOLTIP);
|
|
||||||
if (rsTooltip != null)
|
|
||||||
{
|
|
||||||
rsTooltip.setHidden(false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for (WorldMapPoint worldMapPoint : worldMapPointManager.getWorldMapPoints())
|
|
||||||
{
|
|
||||||
if (worldMapPoint.getClickbox() != null
|
|
||||||
&& worldMapPoint.getClickbox().contains(mousePos.getX(), mousePos.getY())
|
|
||||||
&& worldMapPoint.getTooltip() != null)
|
|
||||||
{
|
|
||||||
worldMapPoint.setTooltipVisible(true);
|
|
||||||
tooltipPoint = worldMapPoint;
|
|
||||||
final Widget rsTooltip = client.getWidget(WidgetInfo.WORLD_MAP_TOOLTIP);
|
|
||||||
if (rsTooltip != null)
|
|
||||||
{
|
|
||||||
rsTooltip.setHidden(true);
|
|
||||||
}
|
|
||||||
return mouseEvent;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return mouseEvent;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+4
-10
@@ -24,8 +24,6 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.ui.overlay.worldmap;
|
package net.runelite.client.ui.overlay.worldmap;
|
||||||
|
|
||||||
import java.awt.Rectangle;
|
|
||||||
import java.awt.event.MouseEvent;
|
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@@ -53,8 +51,6 @@ public class WorldMapPoint
|
|||||||
*/
|
*/
|
||||||
private Point imagePoint;
|
private Point imagePoint;
|
||||||
|
|
||||||
private Rectangle clickbox;
|
|
||||||
|
|
||||||
private boolean snapToEdge;
|
private boolean snapToEdge;
|
||||||
|
|
||||||
private boolean currentlyEdgeSnapped;
|
private boolean currentlyEdgeSnapped;
|
||||||
@@ -64,7 +60,10 @@ public class WorldMapPoint
|
|||||||
*/
|
*/
|
||||||
private boolean jumpOnClick;
|
private boolean jumpOnClick;
|
||||||
|
|
||||||
private boolean tooltipVisible;
|
/**
|
||||||
|
* Name in menu option when {@link #jumpOnClick} is set
|
||||||
|
*/
|
||||||
|
private String name;
|
||||||
|
|
||||||
private String tooltip;
|
private String tooltip;
|
||||||
|
|
||||||
@@ -74,11 +73,6 @@ public class WorldMapPoint
|
|||||||
this.image = image;
|
this.image = image;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MouseEvent onClick(MouseEvent e)
|
|
||||||
{
|
|
||||||
return e;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void onEdgeSnap()
|
public void onEdgeSnap()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 50 KiB |
+12
@@ -6,6 +6,12 @@
|
|||||||
"name": "Gnome Stronghold",
|
"name": "Gnome Stronghold",
|
||||||
"xp": 86.5
|
"xp": 86.5
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 5,
|
||||||
|
"icon": 13359,
|
||||||
|
"name": "Shayzien Basic Course",
|
||||||
|
"xp": 133.2
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 10,
|
"level": 10,
|
||||||
"icon": 11849,
|
"icon": 11849,
|
||||||
@@ -66,6 +72,12 @@
|
|||||||
"name": "Ape Atoll",
|
"name": "Ape Atoll",
|
||||||
"xp": 580
|
"xp": 580
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 48,
|
||||||
|
"icon": 13379,
|
||||||
|
"name": "Shayzien Advanced Course",
|
||||||
|
"xp": 474.3
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 50,
|
"level": 50,
|
||||||
"icon": 11849,
|
"icon": 11849,
|
||||||
|
|||||||
+120
@@ -180,12 +180,24 @@
|
|||||||
"name": "Fire Bolt",
|
"name": "Fire Bolt",
|
||||||
"xp": 22.5
|
"xp": 22.5
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 35,
|
||||||
|
"sprite": 1267,
|
||||||
|
"name": "Ghostly Grasp",
|
||||||
|
"xp": 22.5
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 37,
|
"level": 37,
|
||||||
"sprite": 33,
|
"sprite": 33,
|
||||||
"name": "Falador Teleport",
|
"name": "Falador Teleport",
|
||||||
"xp": 48
|
"xp": 48
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 38,
|
||||||
|
"sprite": 1270,
|
||||||
|
"name": "Resurrect Lesser Thrall",
|
||||||
|
"xp": 55
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 39,
|
"level": 39,
|
||||||
"sprite": 34,
|
"sprite": 34,
|
||||||
@@ -222,6 +234,12 @@
|
|||||||
"name": "Superheat Item",
|
"name": "Superheat Item",
|
||||||
"xp": 53
|
"xp": 53
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 44,
|
||||||
|
"sprite": 1302,
|
||||||
|
"name": "Inferior Demonbane",
|
||||||
|
"xp": 27
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 45,
|
"level": 45,
|
||||||
"sprite": 37,
|
"sprite": 37,
|
||||||
@@ -234,6 +252,12 @@
|
|||||||
"name": "Water Blast",
|
"name": "Water Blast",
|
||||||
"xp": 28.5
|
"xp": 28.5
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 47,
|
||||||
|
"sprite": 1315,
|
||||||
|
"name": "Shadow Veil",
|
||||||
|
"xp": 58
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 48,
|
"level": 48,
|
||||||
"sprite": 1259,
|
"sprite": 1259,
|
||||||
@@ -276,6 +300,12 @@
|
|||||||
"name": "Snare",
|
"name": "Snare",
|
||||||
"xp": 60
|
"xp": 60
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 50,
|
||||||
|
"sprite": 1316,
|
||||||
|
"name": "Dark Lure",
|
||||||
|
"xp": 60
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 51,
|
"level": 51,
|
||||||
"sprite": 54,
|
"sprite": 54,
|
||||||
@@ -318,6 +348,12 @@
|
|||||||
"name": "Blood Rush",
|
"name": "Blood Rush",
|
||||||
"xp": 33
|
"xp": 33
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 56,
|
||||||
|
"sprite": 1268,
|
||||||
|
"name": "Skeletal Grasp",
|
||||||
|
"xp": 33
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 57,
|
"level": 57,
|
||||||
"sprite": 358,
|
"sprite": 358,
|
||||||
@@ -330,6 +366,12 @@
|
|||||||
"name": "Enchant Diamond Jewellery",
|
"name": "Enchant Diamond Jewellery",
|
||||||
"xp": 67
|
"xp": 67
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 57,
|
||||||
|
"sprite": 2981,
|
||||||
|
"name": "Resurrect Superior Thrall",
|
||||||
|
"xp": 70
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 58,
|
"level": 58,
|
||||||
"sprite": 55,
|
"sprite": 55,
|
||||||
@@ -348,6 +390,12 @@
|
|||||||
"name": "Fire Blast",
|
"name": "Fire Blast",
|
||||||
"xp": 34.5
|
"xp": 34.5
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 59,
|
||||||
|
"sprite": 1305,
|
||||||
|
"name": "Mark of Darkness",
|
||||||
|
"xp": 70
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 60,
|
"level": 60,
|
||||||
"sprite": 342,
|
"sprite": 342,
|
||||||
@@ -408,6 +456,12 @@
|
|||||||
"name": "Wind Wave",
|
"name": "Wind Wave",
|
||||||
"xp": 36
|
"xp": 36
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 62,
|
||||||
|
"sprite": 1303,
|
||||||
|
"name": "Superior Demonbane",
|
||||||
|
"xp": 36
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 63,
|
"level": 63,
|
||||||
"sprite": 47,
|
"sprite": 47,
|
||||||
@@ -426,6 +480,12 @@
|
|||||||
"name": "Teleport Ape Atoll",
|
"name": "Teleport Ape Atoll",
|
||||||
"xp": 74
|
"xp": 74
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 64,
|
||||||
|
"sprite": 1307,
|
||||||
|
"name": "Lesser Corruption",
|
||||||
|
"xp": 75
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 65,
|
"level": 65,
|
||||||
"sprite": 543,
|
"sprite": 543,
|
||||||
@@ -480,6 +540,12 @@
|
|||||||
"name": "Monster Examine",
|
"name": "Monster Examine",
|
||||||
"xp": 61
|
"xp": 61
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 66,
|
||||||
|
"sprite": 1317,
|
||||||
|
"name": "Vile Vigour",
|
||||||
|
"xp": 76
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 67,
|
"level": 67,
|
||||||
"sprite": 568,
|
"sprite": 568,
|
||||||
@@ -540,6 +606,12 @@
|
|||||||
"name": "Tele Group Moonclan",
|
"name": "Tele Group Moonclan",
|
||||||
"xp": 67
|
"xp": 67
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 70,
|
||||||
|
"sprite": 1318,
|
||||||
|
"name": "Degrime",
|
||||||
|
"xp": 83
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 71,
|
"level": 71,
|
||||||
"sprite": 586,
|
"sprite": 586,
|
||||||
@@ -594,6 +666,12 @@
|
|||||||
"name": "Enfeeble",
|
"name": "Enfeeble",
|
||||||
"xp": 83
|
"xp": 83
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 73,
|
||||||
|
"sprite": 1306,
|
||||||
|
"name": "Ward of Arceuus",
|
||||||
|
"xp": 83
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 74,
|
"level": 74,
|
||||||
"sprite": 349,
|
"sprite": 349,
|
||||||
@@ -648,6 +726,12 @@
|
|||||||
"name": "Spin Flax",
|
"name": "Spin Flax",
|
||||||
"xp": 75
|
"xp": 75
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 76,
|
||||||
|
"sprite": 2984,
|
||||||
|
"name": "Resurrect Greater Thrall",
|
||||||
|
"xp": 88
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 77,
|
"level": 77,
|
||||||
"sprite": 548,
|
"sprite": 548,
|
||||||
@@ -696,6 +780,12 @@
|
|||||||
"name": "Dream",
|
"name": "Dream",
|
||||||
"xp": 82
|
"xp": 82
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 79,
|
||||||
|
"sprite": 1269,
|
||||||
|
"name": "Undead Grasp",
|
||||||
|
"xp": 46.5
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 80,
|
"level": 80,
|
||||||
"sprite": 322,
|
"sprite": 322,
|
||||||
@@ -720,6 +810,12 @@
|
|||||||
"name": "String Jewellery",
|
"name": "String Jewellery",
|
||||||
"xp": 83
|
"xp": 83
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 80,
|
||||||
|
"sprite": 1310,
|
||||||
|
"name": "Death Charge",
|
||||||
|
"xp": 90
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 81,
|
"level": 81,
|
||||||
"sprite": 554,
|
"sprite": 554,
|
||||||
@@ -750,6 +846,12 @@
|
|||||||
"name": "Ice Blitz",
|
"name": "Ice Blitz",
|
||||||
"xp": 46
|
"xp": 46
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 82,
|
||||||
|
"sprite": 1304,
|
||||||
|
"name": "Dark Demonbane",
|
||||||
|
"xp": 43.5
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 83,
|
"level": 83,
|
||||||
"sprite": 553,
|
"sprite": 553,
|
||||||
@@ -774,6 +876,12 @@
|
|||||||
"name": "Boost Potion Share",
|
"name": "Boost Potion Share",
|
||||||
"xp": 88
|
"xp": 88
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 84,
|
||||||
|
"sprite": 1311,
|
||||||
|
"name": "Demonic Offering",
|
||||||
|
"xp": 175
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 85,
|
"level": 85,
|
||||||
"sprite": 363,
|
"sprite": 363,
|
||||||
@@ -798,6 +906,12 @@
|
|||||||
"name": "Teleport To Bounty Target",
|
"name": "Teleport To Bounty Target",
|
||||||
"xp": 45
|
"xp": 45
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 85,
|
||||||
|
"sprite": 1308,
|
||||||
|
"name": "Greater Corruption",
|
||||||
|
"xp": 95
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 86,
|
"level": 86,
|
||||||
"sprite": 332,
|
"sprite": 332,
|
||||||
@@ -912,6 +1026,12 @@
|
|||||||
"name": "Heal Other",
|
"name": "Heal Other",
|
||||||
"xp": 101
|
"xp": 101
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 92,
|
||||||
|
"sprite": 1312,
|
||||||
|
"name": "Sinister Offering",
|
||||||
|
"xp": 180
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 93,
|
"level": 93,
|
||||||
"sprite": 561,
|
"sprite": 561,
|
||||||
|
|||||||
+35
@@ -168,6 +168,41 @@
|
|||||||
"xp": 1560,
|
"xp": 1560,
|
||||||
"ignoreBonus": true
|
"ignoreBonus": true
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"level": 1,
|
||||||
|
"icon": 25766,
|
||||||
|
"name": "Fiendish Ashes",
|
||||||
|
"xp": 10,
|
||||||
|
"ignoreBonus": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"level": 1,
|
||||||
|
"icon": 25769,
|
||||||
|
"name": "Vile Ashes",
|
||||||
|
"xp": 25,
|
||||||
|
"ignoreBonus": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"level": 1,
|
||||||
|
"icon": 25772,
|
||||||
|
"name": "Malicious Ashes",
|
||||||
|
"xp": 65,
|
||||||
|
"ignoreBonus": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"level": 1,
|
||||||
|
"icon": 25775,
|
||||||
|
"name": "Abyssal Ashes",
|
||||||
|
"xp": 85,
|
||||||
|
"ignoreBonus": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"level": 1,
|
||||||
|
"icon": 25778,
|
||||||
|
"name": "Infernal Ashes",
|
||||||
|
"xp": 110,
|
||||||
|
"ignoreBonus": true
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"level": 1,
|
"level": 1,
|
||||||
"icon": 526,
|
"icon": 526,
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
oprs.api.version=1.1.0
|
oprs.api.version=2.0.0
|
||||||
oprs.version=@open.osrs.version@
|
oprs.version=@open.osrs.version@
|
||||||
@@ -1 +1 @@
|
|||||||
28D9B0BC06E4C832129BE800E1F53A8DD6C6C5F1277EF038C49E92C8648E9F44
|
D8865833BC828A91FC7D4A10B6A7629786ED2099E2F45689BECD55A9E933323D
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1 +1 @@
|
|||||||
4B4BC80A1E1C22193721F88794D320A50B87ED1351BD56F9C01D4D8355EA91F4
|
BADE5769E553D84CF031C4D278466E46B74E12CF62A3351646CD1C504D7A426A
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
.id 89
|
.id 89
|
||||||
.int_stack_count 1
|
.int_stack_count 1
|
||||||
.string_stack_count 0
|
.string_stack_count 0
|
||||||
.int_var_count 19
|
.int_var_count 20
|
||||||
.string_var_count 6
|
.string_var_count 7
|
||||||
iconst 0
|
iconst 0
|
||||||
istore 1
|
istore 1
|
||||||
iconst 2
|
iconst 2
|
||||||
@@ -62,7 +62,7 @@ LABEL49:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 6
|
iload 6
|
||||||
iconst 10551328
|
iconst 10551333
|
||||||
enum
|
enum
|
||||||
if_getheight
|
if_getheight
|
||||||
add
|
add
|
||||||
@@ -181,71 +181,79 @@ LABEL156:
|
|||||||
istore 14
|
istore 14
|
||||||
sconst ""
|
sconst ""
|
||||||
sstore 2
|
sstore 2
|
||||||
|
iconst 0
|
||||||
|
istore 15
|
||||||
sconst ""
|
sconst ""
|
||||||
sstore 3
|
sstore 3
|
||||||
|
sconst ""
|
||||||
|
sstore 4
|
||||||
iconst -1
|
iconst -1
|
||||||
istore 15
|
|
||||||
iconst 0
|
|
||||||
istore 16
|
istore 16
|
||||||
|
iconst 0
|
||||||
|
istore 17
|
||||||
sconst "<col=00ffff>"
|
sconst "<col=00ffff>"
|
||||||
sstore 4
|
sstore 5
|
||||||
sconst "<col=ffff00>"
|
sconst "<col=ffff00>"
|
||||||
sstore 5
|
sstore 6
|
||||||
sload 4
|
|
||||||
sload 5
|
sload 5
|
||||||
|
sload 6
|
||||||
invoke 4485
|
invoke 4485
|
||||||
|
sstore 6
|
||||||
sstore 5
|
sstore 5
|
||||||
sstore 4
|
|
||||||
get_varc_int 55
|
get_varc_int 55
|
||||||
get_varc_int 202
|
get_varc_int 202
|
||||||
if_icmpge LABEL185
|
if_icmpge LABEL189
|
||||||
jump LABEL311
|
jump LABEL319
|
||||||
LABEL185:
|
LABEL189:
|
||||||
get_varc_int 55
|
get_varc_int 55
|
||||||
clientclock
|
clientclock
|
||||||
iconst 3000
|
iconst 3000
|
||||||
sub
|
sub
|
||||||
if_icmpgt LABEL191
|
if_icmpgt LABEL195
|
||||||
jump LABEL311
|
jump LABEL319
|
||||||
LABEL191:
|
LABEL195:
|
||||||
iconst 14
|
iconst 14
|
||||||
chat_gethistorylength
|
chat_gethistorylength
|
||||||
iconst 0
|
iconst 0
|
||||||
if_icmpgt LABEL196
|
if_icmpgt LABEL200
|
||||||
jump LABEL311
|
jump LABEL319
|
||||||
LABEL196:
|
LABEL200:
|
||||||
iconst 14
|
iconst 14
|
||||||
iconst 0
|
iconst 0
|
||||||
chat_gethistory_bytypeandline
|
5030
|
||||||
|
istore 15
|
||||||
|
sstore 2
|
||||||
istore 14
|
istore 14
|
||||||
sstore 0
|
sstore 0
|
||||||
sstore 2
|
sstore 3
|
||||||
sstore 1
|
sstore 1
|
||||||
istore 13
|
istore 13
|
||||||
istore 12
|
istore 12
|
||||||
iload 12
|
iload 12
|
||||||
iconst -1
|
iconst -1
|
||||||
if_icmpne LABEL209
|
if_icmpne LABEL215
|
||||||
jump LABEL311
|
jump LABEL319
|
||||||
LABEL209:
|
LABEL215:
|
||||||
sload 0
|
sload 0
|
||||||
invoke 2066
|
invoke 2066
|
||||||
istore 15
|
istore 16
|
||||||
sstore 3
|
sstore 4
|
||||||
sstore 0
|
sstore 0
|
||||||
iload 15
|
iload 16
|
||||||
iconst 4
|
iconst 4
|
||||||
if_icmpne LABEL221
|
if_icmpne LABEL227
|
||||||
reboottimer
|
reboottimer
|
||||||
iconst 0
|
iconst 0
|
||||||
if_icmple LABEL221
|
if_icmple LABEL227
|
||||||
jump LABEL311
|
jump LABEL319
|
||||||
LABEL221:
|
LABEL227:
|
||||||
iload 7
|
iload 7
|
||||||
sload 5
|
sload 2
|
||||||
|
sload 6
|
||||||
sload 0
|
sload 0
|
||||||
sconst "</col>"
|
sconst "</col>"
|
||||||
join_string 3
|
join_string 3
|
||||||
|
invoke 4742
|
||||||
iload 9
|
iload 9
|
||||||
iload 10
|
iload 10
|
||||||
iconst 10682368
|
iconst 10682368
|
||||||
@@ -262,17 +270,17 @@ LABEL221:
|
|||||||
istore 7
|
istore 7
|
||||||
iload 10
|
iload 10
|
||||||
if_clearops
|
if_clearops
|
||||||
sload 3
|
sload 4
|
||||||
string_length
|
string_length
|
||||||
iconst 0
|
iconst 0
|
||||||
if_icmpgt LABEL247
|
if_icmpgt LABEL255
|
||||||
jump LABEL276
|
jump LABEL284
|
||||||
LABEL247:
|
LABEL255:
|
||||||
iload 15
|
iload 16
|
||||||
iconst -1
|
iconst -1
|
||||||
if_icmpne LABEL251
|
if_icmpne LABEL259
|
||||||
jump LABEL276
|
jump LABEL284
|
||||||
LABEL251:
|
LABEL259:
|
||||||
iconst 6
|
iconst 6
|
||||||
sconst "Open"
|
sconst "Open"
|
||||||
iload 10
|
iload 10
|
||||||
@@ -297,8 +305,8 @@ LABEL251:
|
|||||||
sconst "Iii"
|
sconst "Iii"
|
||||||
iload 10
|
iload 10
|
||||||
if_setonmouseleave
|
if_setonmouseleave
|
||||||
jump LABEL284
|
jump LABEL292
|
||||||
LABEL276:
|
LABEL284:
|
||||||
iconst -1
|
iconst -1
|
||||||
sconst ""
|
sconst ""
|
||||||
iload 10
|
iload 10
|
||||||
@@ -307,7 +315,7 @@ LABEL276:
|
|||||||
sconst ""
|
sconst ""
|
||||||
iload 10
|
iload 10
|
||||||
if_setonmouseleave
|
if_setonmouseleave
|
||||||
LABEL284:
|
LABEL292:
|
||||||
iconst 9
|
iconst 9
|
||||||
sconst "Clear history"
|
sconst "Clear history"
|
||||||
iload 10
|
iload 10
|
||||||
@@ -320,8 +328,8 @@ LABEL284:
|
|||||||
if_setopbase
|
if_setopbase
|
||||||
iconst 2064
|
iconst 2064
|
||||||
iconst -2147483644
|
iconst -2147483644
|
||||||
sload 3
|
sload 4
|
||||||
iload 15
|
iload 16
|
||||||
sconst "isi"
|
sconst "isi"
|
||||||
iload 10
|
iload 10
|
||||||
if_setonop
|
if_setonop
|
||||||
@@ -335,63 +343,65 @@ LABEL284:
|
|||||||
iload 9
|
iload 9
|
||||||
enum
|
enum
|
||||||
istore 10
|
istore 10
|
||||||
LABEL311:
|
LABEL319:
|
||||||
iload 0
|
iload 0
|
||||||
istore 12
|
istore 12
|
||||||
iconst 0
|
iconst 0
|
||||||
istore 17
|
|
||||||
invoke 4487
|
|
||||||
istore 18
|
istore 18
|
||||||
|
invoke 4487
|
||||||
|
istore 19
|
||||||
get_varp 287
|
get_varp 287
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq LABEL321
|
if_icmpeq LABEL329
|
||||||
jump LABEL536
|
jump LABEL554
|
||||||
LABEL321:
|
LABEL329:
|
||||||
get_varc_int 41
|
get_varc_int 41
|
||||||
iconst 1337
|
iconst 1337
|
||||||
if_icmpne LABEL328
|
if_icmpne LABEL336
|
||||||
get_varbit 4089
|
get_varbit 4089
|
||||||
iconst 0
|
iconst 0
|
||||||
if_icmpeq LABEL328
|
if_icmpeq LABEL336
|
||||||
jump LABEL536
|
jump LABEL554
|
||||||
LABEL328:
|
LABEL336:
|
||||||
iload 12
|
iload 12
|
||||||
iconst -1
|
iconst -1
|
||||||
if_icmpne LABEL332
|
if_icmpne LABEL340
|
||||||
jump LABEL536
|
jump LABEL554
|
||||||
LABEL332:
|
LABEL340:
|
||||||
iload 10
|
iload 10
|
||||||
iconst -1
|
iconst -1
|
||||||
if_icmpne LABEL336
|
if_icmpne LABEL344
|
||||||
jump LABEL536
|
jump LABEL554
|
||||||
LABEL336:
|
LABEL344:
|
||||||
iload 7
|
iload 7
|
||||||
iload 4
|
iload 4
|
||||||
sub
|
sub
|
||||||
iconst 57
|
iconst 57
|
||||||
if_icmplt LABEL342
|
if_icmplt LABEL350
|
||||||
jump LABEL536
|
jump LABEL554
|
||||||
LABEL342:
|
LABEL350:
|
||||||
iload 12
|
iload 12
|
||||||
chat_gethistory_byuid
|
5031
|
||||||
|
istore 15
|
||||||
|
sstore 2
|
||||||
istore 14
|
istore 14
|
||||||
sstore 0
|
sstore 0
|
||||||
sstore 2
|
sstore 3
|
||||||
sstore 1
|
sstore 1
|
||||||
istore 13
|
istore 13
|
||||||
istore 17
|
istore 18
|
||||||
iload 17
|
iload 18
|
||||||
sload 1
|
sload 1
|
||||||
iload 13
|
iload 13
|
||||||
iload 14
|
iload 14
|
||||||
invoke 91
|
invoke 91
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq CHAT_FILTER ; Jump to our new label instead
|
if_icmpeq CHAT_FILTER ; Jump to our new label instead
|
||||||
jump LABEL532
|
jump LABEL550
|
||||||
CHAT_FILTER:
|
CHAT_FILTER:
|
||||||
sload 0 ; Load the message
|
sload 0 ; Load the message
|
||||||
iconst 1 ; Gets changed to 0 if message is blocked
|
iconst 1 ; Gets changed to 0 if message is blocked
|
||||||
iload 17 ; Load the messageType
|
iload 18 ; Load the messageType
|
||||||
iload 12 ; Load the id of the messageNode
|
iload 12 ; Load the id of the messageNode
|
||||||
sconst "chatFilterCheck"
|
sconst "chatFilterCheck"
|
||||||
runelite_callback
|
runelite_callback
|
||||||
@@ -399,23 +409,24 @@ CHAT_FILTER:
|
|||||||
pop_int ; Pop the messageType
|
pop_int ; Pop the messageType
|
||||||
iconst 1 ; 2nd half of conditional
|
iconst 1 ; 2nd half of conditional
|
||||||
sstore 0 ; Override the message with our filtered message
|
sstore 0 ; Override the message with our filtered message
|
||||||
if_icmpeq LABEL358 ; Check if we are building this message
|
if_icmpeq LABEL368 ; Check if we are building this message
|
||||||
jump LABEL532
|
jump LABEL550
|
||||||
LABEL358:
|
LABEL368:
|
||||||
iload 12 ; message uid
|
iload 12 ; message uid
|
||||||
sconst "chatMessageBuilding"
|
sconst "chatMessageBuilding"
|
||||||
runelite_callback
|
runelite_callback
|
||||||
pop_int
|
pop_int
|
||||||
iload 17
|
iload 18
|
||||||
switch
|
switch
|
||||||
3: LABEL361
|
3: LABEL371
|
||||||
5: LABEL413
|
5: LABEL427
|
||||||
6: LABEL387
|
6: LABEL399
|
||||||
7: LABEL361
|
7: LABEL371
|
||||||
jump LABEL448
|
jump LABEL464
|
||||||
LABEL361:
|
LABEL371:
|
||||||
iload 7
|
iload 7
|
||||||
sload 4
|
sload 2
|
||||||
|
sload 5
|
||||||
sconst "splitPrivChatUsernameColor"
|
sconst "splitPrivChatUsernameColor"
|
||||||
runelite_callback
|
runelite_callback
|
||||||
sconst "From "
|
sconst "From "
|
||||||
@@ -423,7 +434,8 @@ LABEL361:
|
|||||||
sconst ":"
|
sconst ":"
|
||||||
sconst "</col>"
|
sconst "</col>"
|
||||||
join_string 5
|
join_string 5
|
||||||
sload 4
|
invoke 4742
|
||||||
|
sload 5
|
||||||
sload 0
|
sload 0
|
||||||
sconst "</col>"
|
sconst "</col>"
|
||||||
join_string 3
|
join_string 3
|
||||||
@@ -441,10 +453,11 @@ LABEL361:
|
|||||||
invoke 203
|
invoke 203
|
||||||
add
|
add
|
||||||
istore 7
|
istore 7
|
||||||
jump LABEL464
|
jump LABEL482
|
||||||
LABEL387:
|
LABEL399:
|
||||||
iload 7
|
iload 7
|
||||||
sload 4
|
sload 2
|
||||||
|
sload 5
|
||||||
sconst "splitPrivChatUsernameColor"
|
sconst "splitPrivChatUsernameColor"
|
||||||
runelite_callback
|
runelite_callback
|
||||||
sconst "To "
|
sconst "To "
|
||||||
@@ -452,7 +465,8 @@ LABEL387:
|
|||||||
sconst ":"
|
sconst ":"
|
||||||
sconst "</col>"
|
sconst "</col>"
|
||||||
join_string 5
|
join_string 5
|
||||||
sload 4
|
invoke 4742
|
||||||
|
sload 5
|
||||||
sload 0
|
sload 0
|
||||||
sconst "</col>"
|
sconst "</col>"
|
||||||
join_string 3
|
join_string 3
|
||||||
@@ -470,13 +484,15 @@ LABEL387:
|
|||||||
invoke 203
|
invoke 203
|
||||||
add
|
add
|
||||||
istore 7
|
istore 7
|
||||||
jump LABEL464
|
jump LABEL482
|
||||||
LABEL413:
|
LABEL427:
|
||||||
iload 7
|
iload 7
|
||||||
sload 4
|
sload 2
|
||||||
|
sload 5
|
||||||
sload 0
|
sload 0
|
||||||
sconst "</col>"
|
sconst "</col>"
|
||||||
join_string 3
|
join_string 3
|
||||||
|
invoke 4742
|
||||||
iload 9
|
iload 9
|
||||||
iload 10
|
iload 10
|
||||||
iconst 10682368
|
iconst 10682368
|
||||||
@@ -491,11 +507,11 @@ LABEL413:
|
|||||||
invoke 199
|
invoke 199
|
||||||
add
|
add
|
||||||
istore 7
|
istore 7
|
||||||
iload 18
|
iload 19
|
||||||
iconst 0
|
iconst 0
|
||||||
if_icmpeq LABEL436
|
if_icmpeq LABEL452
|
||||||
jump LABEL447
|
jump LABEL463
|
||||||
LABEL436:
|
LABEL452:
|
||||||
iload 13
|
iload 13
|
||||||
iconst 500
|
iconst 500
|
||||||
add
|
add
|
||||||
@@ -507,11 +523,13 @@ LABEL436:
|
|||||||
sconst "1"
|
sconst "1"
|
||||||
iconst 10616832
|
iconst 10616832
|
||||||
if_setontimer
|
if_setontimer
|
||||||
LABEL447:
|
LABEL463:
|
||||||
jump LABEL464
|
jump LABEL482
|
||||||
LABEL448:
|
LABEL464:
|
||||||
iload 7
|
iload 7
|
||||||
|
sload 2
|
||||||
sload 0
|
sload 0
|
||||||
|
invoke 4742
|
||||||
iload 9
|
iload 9
|
||||||
iload 10
|
iload 10
|
||||||
iconst 10682368
|
iconst 10682368
|
||||||
@@ -526,31 +544,31 @@ LABEL448:
|
|||||||
invoke 199
|
invoke 199
|
||||||
add
|
add
|
||||||
istore 7
|
istore 7
|
||||||
LABEL464:
|
LABEL482:
|
||||||
iload 10
|
iload 10
|
||||||
if_clearops
|
if_clearops
|
||||||
iload 17
|
iload 18
|
||||||
iconst 3
|
iconst 3
|
||||||
if_icmpeq LABEL476
|
if_icmpeq LABEL494
|
||||||
iload 17
|
iload 18
|
||||||
iconst 6
|
iconst 6
|
||||||
if_icmpeq LABEL476
|
if_icmpeq LABEL494
|
||||||
iload 17
|
iload 18
|
||||||
iconst 7
|
iconst 7
|
||||||
if_icmpeq LABEL476
|
if_icmpeq LABEL494
|
||||||
jump LABEL510
|
jump LABEL528
|
||||||
LABEL476:
|
LABEL494:
|
||||||
iload 14
|
iload 14
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq LABEL480
|
if_icmpeq LABEL498
|
||||||
jump LABEL485
|
jump LABEL503
|
||||||
LABEL480:
|
LABEL498:
|
||||||
iconst 8
|
iconst 8
|
||||||
sconst "Message"
|
sconst "Message"
|
||||||
iload 10
|
iload 10
|
||||||
if_setop
|
if_setop
|
||||||
jump LABEL493
|
jump LABEL511
|
||||||
LABEL485:
|
LABEL503:
|
||||||
iconst 8
|
iconst 8
|
||||||
sconst "Add friend"
|
sconst "Add friend"
|
||||||
iload 10
|
iload 10
|
||||||
@@ -559,7 +577,7 @@ LABEL485:
|
|||||||
sconst "Add ignore"
|
sconst "Add ignore"
|
||||||
iload 10
|
iload 10
|
||||||
if_setop
|
if_setop
|
||||||
LABEL493:
|
LABEL511:
|
||||||
iconst 10
|
iconst 10
|
||||||
sconst "Report"
|
sconst "Report"
|
||||||
iload 10
|
iload 10
|
||||||
@@ -576,13 +594,13 @@ LABEL493:
|
|||||||
sconst "is"
|
sconst "is"
|
||||||
iload 10
|
iload 10
|
||||||
if_setonop
|
if_setonop
|
||||||
jump LABEL514
|
jump LABEL532
|
||||||
LABEL510:
|
LABEL528:
|
||||||
iconst -1
|
iconst -1
|
||||||
sconst ""
|
sconst ""
|
||||||
iload 10
|
iload 10
|
||||||
if_setonop
|
if_setonop
|
||||||
LABEL514:
|
LABEL532:
|
||||||
iconst -1
|
iconst -1
|
||||||
sconst ""
|
sconst ""
|
||||||
iload 10
|
iload 10
|
||||||
@@ -601,17 +619,17 @@ LABEL514:
|
|||||||
iload 9
|
iload 9
|
||||||
enum
|
enum
|
||||||
istore 10
|
istore 10
|
||||||
LABEL532:
|
LABEL550:
|
||||||
iload 12
|
iload 12
|
||||||
chat_getprevuid
|
chat_getprevuid
|
||||||
istore 12
|
istore 12
|
||||||
jump LABEL328
|
jump LABEL336
|
||||||
LABEL536:
|
LABEL554:
|
||||||
iload 10
|
iload 10
|
||||||
iconst -1
|
iconst -1
|
||||||
if_icmpne LABEL540
|
if_icmpne LABEL558
|
||||||
jump LABEL623
|
jump LABEL641
|
||||||
LABEL540:
|
LABEL558:
|
||||||
iload 10
|
iload 10
|
||||||
if_clearops
|
if_clearops
|
||||||
iconst -1
|
iconst -1
|
||||||
@@ -638,14 +656,14 @@ LABEL540:
|
|||||||
multiply
|
multiply
|
||||||
cc_find
|
cc_find
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq LABEL568
|
if_icmpeq LABEL586
|
||||||
jump LABEL572
|
jump LABEL590
|
||||||
LABEL568:
|
LABEL586:
|
||||||
sconst ""
|
sconst ""
|
||||||
cc_settext
|
cc_settext
|
||||||
iconst 1
|
iconst 1
|
||||||
cc_sethide
|
cc_sethide
|
||||||
LABEL572:
|
LABEL590:
|
||||||
iconst 10682368
|
iconst 10682368
|
||||||
iload 9
|
iload 9
|
||||||
iconst 4
|
iconst 4
|
||||||
@@ -654,14 +672,14 @@ LABEL572:
|
|||||||
add
|
add
|
||||||
cc_find
|
cc_find
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq LABEL582
|
if_icmpeq LABEL600
|
||||||
jump LABEL586
|
jump LABEL604
|
||||||
LABEL582:
|
LABEL600:
|
||||||
sconst ""
|
sconst ""
|
||||||
cc_settext
|
cc_settext
|
||||||
iconst 1
|
iconst 1
|
||||||
cc_sethide
|
cc_sethide
|
||||||
LABEL586:
|
LABEL604:
|
||||||
iconst 10682368
|
iconst 10682368
|
||||||
iload 9
|
iload 9
|
||||||
iconst 4
|
iconst 4
|
||||||
@@ -670,14 +688,14 @@ LABEL586:
|
|||||||
add
|
add
|
||||||
cc_find
|
cc_find
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq LABEL596
|
if_icmpeq LABEL614
|
||||||
jump LABEL600
|
jump LABEL618
|
||||||
LABEL596:
|
LABEL614:
|
||||||
sconst ""
|
sconst ""
|
||||||
cc_settext
|
cc_settext
|
||||||
iconst 1
|
iconst 1
|
||||||
cc_sethide
|
cc_sethide
|
||||||
LABEL600:
|
LABEL618:
|
||||||
iconst 10682368
|
iconst 10682368
|
||||||
iload 9
|
iload 9
|
||||||
iconst 4
|
iconst 4
|
||||||
@@ -686,12 +704,12 @@ LABEL600:
|
|||||||
add
|
add
|
||||||
cc_find
|
cc_find
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq LABEL610
|
if_icmpeq LABEL628
|
||||||
jump LABEL612
|
jump LABEL630
|
||||||
LABEL610:
|
LABEL628:
|
||||||
iconst 1
|
iconst 1
|
||||||
cc_sethide
|
cc_sethide
|
||||||
LABEL612:
|
LABEL630:
|
||||||
iload 9
|
iload 9
|
||||||
iconst 1
|
iconst 1
|
||||||
add
|
add
|
||||||
@@ -702,6 +720,6 @@ LABEL612:
|
|||||||
iload 9
|
iload 9
|
||||||
enum
|
enum
|
||||||
istore 10
|
istore 10
|
||||||
jump LABEL536
|
jump LABEL554
|
||||||
LABEL623:
|
LABEL641:
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
1D8F698FFDA4B0D72798938A0EFB4D7F58988E9AF3FA706A7CD9402FE14E201C
|
C3095F0E7973E9EF0E8035AF4B4AC7CE28D692B71A63DE31B7820F1D2AB09F2E
|
||||||
@@ -20,11 +20,11 @@
|
|||||||
1131: LABEL9
|
1131: LABEL9
|
||||||
jump LABEL204
|
jump LABEL204
|
||||||
LABEL9:
|
LABEL9:
|
||||||
iconst 10747939
|
iconst 10747944
|
||||||
if_getwidth
|
if_getwidth
|
||||||
iconst 33
|
iconst 33
|
||||||
sub
|
sub
|
||||||
iconst 10747939
|
iconst 10747944
|
||||||
if_getheight
|
if_getheight
|
||||||
istore 3
|
istore 3
|
||||||
istore 2
|
istore 2
|
||||||
@@ -33,7 +33,7 @@ LABEL9:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551328
|
iconst 10551333
|
||||||
enum
|
enum
|
||||||
if_getwidth
|
if_getwidth
|
||||||
sub
|
sub
|
||||||
@@ -48,7 +48,7 @@ LABEL9:
|
|||||||
LABEL29:
|
LABEL29:
|
||||||
iconst 0
|
iconst 0
|
||||||
iload 3
|
iload 3
|
||||||
iconst 10747954
|
iconst 10747959
|
||||||
if_getheight
|
if_getheight
|
||||||
add
|
add
|
||||||
iconst 2
|
iconst 2
|
||||||
@@ -56,14 +56,14 @@ LABEL29:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10747971
|
iconst 10747976
|
||||||
enum
|
enum
|
||||||
if_setposition
|
if_setposition
|
||||||
iconst 0
|
iconst 0
|
||||||
iload 3
|
iload 3
|
||||||
iconst 2
|
iconst 2
|
||||||
iconst 2
|
iconst 2
|
||||||
iconst 10747954
|
iconst 10747959
|
||||||
if_setposition
|
if_setposition
|
||||||
jump LABEL65
|
jump LABEL65
|
||||||
LABEL49:
|
LABEL49:
|
||||||
@@ -74,14 +74,14 @@ LABEL49:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10747971
|
iconst 10747976
|
||||||
enum
|
enum
|
||||||
if_setposition
|
if_setposition
|
||||||
iload 2
|
iload 2
|
||||||
iconst 0
|
iconst 0
|
||||||
iconst 2
|
iconst 2
|
||||||
iconst 2
|
iconst 2
|
||||||
iconst 10747954
|
iconst 10747959
|
||||||
if_setposition
|
if_setposition
|
||||||
LABEL65:
|
LABEL65:
|
||||||
get_varbit 4084
|
get_varbit 4084
|
||||||
@@ -93,7 +93,7 @@ LABEL69:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551324
|
iconst 10551329
|
||||||
enum
|
enum
|
||||||
2122
|
2122
|
||||||
jump LABEL84
|
jump LABEL84
|
||||||
@@ -102,7 +102,7 @@ LABEL77:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551324
|
iconst 10551329
|
||||||
enum
|
enum
|
||||||
2122
|
2122
|
||||||
LABEL84:
|
LABEL84:
|
||||||
@@ -119,7 +119,7 @@ LABEL91:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551324
|
iconst 10551329
|
||||||
enum
|
enum
|
||||||
2122
|
2122
|
||||||
jump LABEL106
|
jump LABEL106
|
||||||
@@ -128,7 +128,7 @@ LABEL99:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551324
|
iconst 10551329
|
||||||
enum
|
enum
|
||||||
2122
|
2122
|
||||||
LABEL106:
|
LABEL106:
|
||||||
@@ -145,7 +145,7 @@ LABEL113:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551324
|
iconst 10551329
|
||||||
enum
|
enum
|
||||||
2122
|
2122
|
||||||
jump LABEL128
|
jump LABEL128
|
||||||
@@ -154,7 +154,7 @@ LABEL121:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551324
|
iconst 10551329
|
||||||
enum
|
enum
|
||||||
2122
|
2122
|
||||||
LABEL128:
|
LABEL128:
|
||||||
@@ -169,15 +169,15 @@ LABEL129:
|
|||||||
jump LABEL140
|
jump LABEL140
|
||||||
LABEL136:
|
LABEL136:
|
||||||
iconst 1
|
iconst 1
|
||||||
iconst 39387169
|
iconst 39387175
|
||||||
if_sethide
|
if_sethide
|
||||||
jump LABEL195
|
jump LABEL195
|
||||||
LABEL140:
|
LABEL140:
|
||||||
iconst 0
|
iconst 0
|
||||||
iconst 39387169
|
iconst 39387175
|
||||||
if_sethide
|
if_sethide
|
||||||
iconst 1
|
iconst 1
|
||||||
iconst 39387169
|
iconst 39387175
|
||||||
2308
|
2308
|
||||||
get_varbit 6255
|
get_varbit 6255
|
||||||
switch
|
switch
|
||||||
@@ -187,38 +187,38 @@ LABEL140:
|
|||||||
jump LABEL173
|
jump LABEL173
|
||||||
LABEL149:
|
LABEL149:
|
||||||
iconst 1718
|
iconst 1718
|
||||||
iconst 39387171
|
iconst 39387177
|
||||||
if_setgraphic
|
if_setgraphic
|
||||||
iconst 1
|
iconst 1
|
||||||
sconst "Toggle single-tap mode"
|
sconst "Toggle single-tap mode"
|
||||||
iconst 39387169
|
iconst 39387175
|
||||||
if_setop
|
if_setop
|
||||||
jump LABEL180
|
jump LABEL180
|
||||||
LABEL157:
|
LABEL157:
|
||||||
iconst 1717
|
iconst 1717
|
||||||
iconst 39387171
|
iconst 39387177
|
||||||
if_setgraphic
|
if_setgraphic
|
||||||
iconst 1
|
iconst 1
|
||||||
sconst "Toggle tap-to-drop mode"
|
sconst "Toggle tap-to-drop mode"
|
||||||
iconst 39387169
|
iconst 39387175
|
||||||
if_setop
|
if_setop
|
||||||
jump LABEL180
|
jump LABEL180
|
||||||
LABEL165:
|
LABEL165:
|
||||||
iconst 1716
|
iconst 1716
|
||||||
iconst 39387171
|
iconst 39387177
|
||||||
if_setgraphic
|
if_setgraphic
|
||||||
iconst 1
|
iconst 1
|
||||||
sconst "Show Keyboard"
|
sconst "Show Keyboard"
|
||||||
iconst 39387169
|
iconst 39387175
|
||||||
if_setop
|
if_setop
|
||||||
jump LABEL180
|
jump LABEL180
|
||||||
LABEL173:
|
LABEL173:
|
||||||
iconst 1715
|
iconst 1715
|
||||||
iconst 39387171
|
iconst 39387177
|
||||||
if_setgraphic
|
if_setgraphic
|
||||||
iconst 1
|
iconst 1
|
||||||
sconst ""
|
sconst ""
|
||||||
iconst 39387169
|
iconst 39387175
|
||||||
if_setop
|
if_setop
|
||||||
LABEL180:
|
LABEL180:
|
||||||
get_varbit 6255
|
get_varbit 6255
|
||||||
@@ -232,18 +232,18 @@ LABEL184:
|
|||||||
jump LABEL192
|
jump LABEL192
|
||||||
LABEL188:
|
LABEL188:
|
||||||
iconst 155
|
iconst 155
|
||||||
iconst 39387171
|
iconst 39387177
|
||||||
if_settrans
|
if_settrans
|
||||||
jump LABEL195
|
jump LABEL195
|
||||||
LABEL192:
|
LABEL192:
|
||||||
iconst 0
|
iconst 0
|
||||||
iconst 39387171
|
iconst 39387177
|
||||||
if_settrans
|
if_settrans
|
||||||
LABEL195:
|
LABEL195:
|
||||||
invoke 2581
|
invoke 2581
|
||||||
get_varbit 6254
|
get_varbit 6254
|
||||||
invoke 633
|
invoke 633
|
||||||
iconst 39387160
|
iconst 39387166
|
||||||
if_sethide
|
if_sethide
|
||||||
invoke 2526
|
invoke 2526
|
||||||
pop_int
|
pop_int
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
F62F3A22CA5AEAECCEFAA3A9EEDA095D778CC8BE08CD15CC4ECDC91159924746
|
90BE2B2F4CE3D5C7C00D2ECF6D552D9A285FD08DC47DDA93E5BFE86529B01E6E
|
||||||
@@ -12,19 +12,19 @@
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551308
|
iconst 10551313
|
||||||
enum
|
enum
|
||||||
istore 3
|
istore 3
|
||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551302
|
iconst 10551305
|
||||||
enum
|
enum
|
||||||
istore 4
|
istore 4
|
||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551310
|
iconst 10551315
|
||||||
enum
|
enum
|
||||||
istore 5
|
istore 5
|
||||||
iconst 103
|
iconst 103
|
||||||
@@ -76,14 +76,14 @@
|
|||||||
LABEL70:
|
LABEL70:
|
||||||
iconst 0
|
iconst 0
|
||||||
iload 16
|
iload 16
|
||||||
iconst 39387150
|
iconst 39387155
|
||||||
if_getwidth
|
if_getwidth
|
||||||
sub
|
sub
|
||||||
invoke 1045
|
invoke 1045
|
||||||
istore 14
|
istore 14
|
||||||
iconst 0
|
iconst 0
|
||||||
iload 17
|
iload 17
|
||||||
iconst 39387150
|
iconst 39387155
|
||||||
if_getheight
|
if_getheight
|
||||||
sub
|
sub
|
||||||
invoke 1045
|
invoke 1045
|
||||||
@@ -279,7 +279,7 @@ LABEL189:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551309
|
iconst 10551314
|
||||||
enum
|
enum
|
||||||
iload 5
|
iload 5
|
||||||
iload 8
|
iload 8
|
||||||
@@ -291,7 +291,7 @@ LABEL268:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551309
|
iconst 10551314
|
||||||
enum
|
enum
|
||||||
iload 3
|
iload 3
|
||||||
iconst 0
|
iconst 0
|
||||||
@@ -417,7 +417,7 @@ LABEL342:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551309
|
iconst 10551314
|
||||||
enum
|
enum
|
||||||
iload 5
|
iload 5
|
||||||
iload 8
|
iload 8
|
||||||
@@ -429,7 +429,7 @@ LABEL385:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551309
|
iconst 10551314
|
||||||
enum
|
enum
|
||||||
iload 3
|
iload 3
|
||||||
iconst 0
|
iconst 0
|
||||||
@@ -439,7 +439,7 @@ LABEL395:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551311
|
iconst 10551316
|
||||||
enum
|
enum
|
||||||
istore 18
|
istore 18
|
||||||
iload 18
|
iload 18
|
||||||
@@ -503,7 +503,7 @@ LABEL449:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551313
|
iconst 10551318
|
||||||
enum
|
enum
|
||||||
istore 18
|
istore 18
|
||||||
iconst 0
|
iconst 0
|
||||||
@@ -518,7 +518,7 @@ LABEL463:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551304
|
iconst 10551307
|
||||||
enum
|
enum
|
||||||
if_hassub
|
if_hassub
|
||||||
iconst 1
|
iconst 1
|
||||||
@@ -578,7 +578,7 @@ LABEL511:
|
|||||||
iconst 73
|
iconst 73
|
||||||
iconst 73
|
iconst 73
|
||||||
iload 1
|
iload 1
|
||||||
iconst 10551304
|
iconst 10551307
|
||||||
enum
|
enum
|
||||||
istore 18
|
istore 18
|
||||||
iconst 0
|
iconst 0
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
A1B6D1B291AA3594728DDEA47049E17119F5CCB6F8E757E1524FA89DE92F9A34
|
581520BBF672827101447FABB2D0F515AB1AF23FDABFAF374032DF36A82B0658
|
||||||
@@ -23,9 +23,9 @@
|
|||||||
runelite_callback
|
runelite_callback
|
||||||
sub
|
sub
|
||||||
istore 1
|
istore 1
|
||||||
iconst 7602235
|
iconst 7602237
|
||||||
if_getwidth
|
if_getwidth
|
||||||
iconst 7602236
|
iconst 7602238
|
||||||
if_getwidth
|
if_getwidth
|
||||||
sub
|
sub
|
||||||
istore 2
|
istore 2
|
||||||
@@ -78,6 +78,6 @@ LABEL44:
|
|||||||
iconst 0
|
iconst 0
|
||||||
iconst 0
|
iconst 0
|
||||||
iconst 0
|
iconst 0
|
||||||
iconst 7602236
|
iconst 7602238
|
||||||
if_setposition
|
if_setposition
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
1CEB4F2F85A8FECA9D9CB80DCAF0CB6A1FB3670607C6CDE80363BC40E95CA1E3
|
1BB0517CD647510451A0AF5FC160252892F4C3627BED106FEDEE44E62027A2D4
|
||||||
@@ -219,18 +219,100 @@ LABEL183:
|
|||||||
iload 1
|
iload 1
|
||||||
iconst 0
|
iconst 0
|
||||||
if_icmpeq LABEL189
|
if_icmpeq LABEL189
|
||||||
jump LABEL339
|
jump LABEL417
|
||||||
LABEL189:
|
LABEL189:
|
||||||
invoke 1972
|
invoke 2357
|
||||||
iconst 0
|
iconst 1
|
||||||
if_icmpeq LABEL193
|
if_icmpeq LABEL193
|
||||||
jump LABEL273
|
jump LABEL267
|
||||||
LABEL193:
|
LABEL193:
|
||||||
iload 4
|
iload 4
|
||||||
iconst 20
|
iconst 20
|
||||||
if_icmplt LABEL197
|
if_icmplt LABEL197
|
||||||
jump LABEL272
|
jump LABEL226
|
||||||
LABEL197:
|
LABEL197:
|
||||||
|
iconst 10616867
|
||||||
|
iconst 3
|
||||||
|
iload 4
|
||||||
|
cc_create
|
||||||
|
iconst 0
|
||||||
|
iload 3
|
||||||
|
iconst 1
|
||||||
|
iconst 2
|
||||||
|
cc_setsize
|
||||||
|
iconst 0
|
||||||
|
iconst 0
|
||||||
|
iconst 1
|
||||||
|
iconst 2
|
||||||
|
cc_setposition
|
||||||
|
iconst 0
|
||||||
|
cc_setcolour
|
||||||
|
iconst 1
|
||||||
|
cc_setfill
|
||||||
|
iconst 252
|
||||||
|
cc_settrans
|
||||||
|
iload 4
|
||||||
|
iconst 1
|
||||||
|
add
|
||||||
|
iload 3
|
||||||
|
iload 2
|
||||||
|
sub
|
||||||
|
istore 3
|
||||||
|
istore 4
|
||||||
|
jump LABEL193
|
||||||
|
LABEL226:
|
||||||
|
iconst 10616886
|
||||||
|
iconst 3
|
||||||
|
iconst 0
|
||||||
|
cc_create
|
||||||
|
iconst 10616886
|
||||||
|
iconst 3
|
||||||
|
iconst 1
|
||||||
|
cc_create 1
|
||||||
|
iconst 16384
|
||||||
|
iconst 1
|
||||||
|
iconst 2
|
||||||
|
iconst 0
|
||||||
|
cc_setsize
|
||||||
|
iconst 16384
|
||||||
|
iconst 1
|
||||||
|
iconst 2
|
||||||
|
iconst 0
|
||||||
|
cc_setsize 1
|
||||||
|
iconst 0
|
||||||
|
iconst 0
|
||||||
|
iconst 0
|
||||||
|
iconst 0
|
||||||
|
cc_setposition
|
||||||
|
iconst 0
|
||||||
|
iconst 15
|
||||||
|
iconst 0
|
||||||
|
iconst 2
|
||||||
|
cc_setposition 1
|
||||||
|
iconst 16777215
|
||||||
|
cc_setcolour
|
||||||
|
iconst 16777215
|
||||||
|
cc_setcolour 1
|
||||||
|
iconst 1
|
||||||
|
cc_setfill
|
||||||
|
iconst 1
|
||||||
|
cc_setfill 1
|
||||||
|
iconst 100
|
||||||
|
cc_settrans
|
||||||
|
iconst 120
|
||||||
|
cc_settrans 1
|
||||||
|
jump LABEL417
|
||||||
|
LABEL267:
|
||||||
|
invoke 1972
|
||||||
|
iconst 0
|
||||||
|
if_icmpeq LABEL271
|
||||||
|
jump LABEL351
|
||||||
|
LABEL271:
|
||||||
|
iload 4
|
||||||
|
iconst 20
|
||||||
|
if_icmplt LABEL275
|
||||||
|
jump LABEL350
|
||||||
|
LABEL275:
|
||||||
iconst 10616867
|
iconst 10616867
|
||||||
iconst 3
|
iconst 3
|
||||||
iload 4
|
iload 4
|
||||||
@@ -293,7 +375,7 @@ LABEL197:
|
|||||||
cc_setfill
|
cc_setfill
|
||||||
iconst 1
|
iconst 1
|
||||||
cc_setfill 1
|
cc_setfill 1
|
||||||
iconst 251
|
iconst 250
|
||||||
cc_settrans
|
cc_settrans
|
||||||
iconst 250
|
iconst 250
|
||||||
cc_settrans 1
|
cc_settrans 1
|
||||||
@@ -305,12 +387,12 @@ LABEL197:
|
|||||||
sub
|
sub
|
||||||
istore 3
|
istore 3
|
||||||
istore 4
|
istore 4
|
||||||
jump LABEL193
|
jump LABEL271
|
||||||
LABEL272:
|
LABEL350:
|
||||||
sconst "chatboxBackgroundBuilt"
|
sconst "chatboxBackgroundBuilt"
|
||||||
runelite_callback
|
runelite_callback
|
||||||
jump LABEL339
|
jump LABEL417
|
||||||
LABEL273:
|
LABEL351:
|
||||||
iconst 10616867
|
iconst 10616867
|
||||||
iconst 3
|
iconst 3
|
||||||
iload 4
|
iload 4
|
||||||
@@ -377,7 +459,7 @@ LABEL273:
|
|||||||
cc_settrans
|
cc_settrans
|
||||||
iconst 130
|
iconst 130
|
||||||
cc_settrans 1
|
cc_settrans 1
|
||||||
LABEL339:
|
LABEL417:
|
||||||
iconst 10617389
|
iconst 10617389
|
||||||
iconst 1190
|
iconst 1190
|
||||||
iconst 1187
|
iconst 1187
|
||||||
@@ -389,24 +471,24 @@ LABEL339:
|
|||||||
invoke 838
|
invoke 838
|
||||||
iload 0
|
iload 0
|
||||||
iconst 1
|
iconst 1
|
||||||
if_icmpeq LABEL352
|
if_icmpeq LABEL430
|
||||||
jump LABEL356
|
jump LABEL434
|
||||||
LABEL352:
|
LABEL430:
|
||||||
iconst 255
|
iconst 255
|
||||||
iconst 10616835
|
iconst 10616835
|
||||||
if_settrans
|
if_settrans
|
||||||
jump LABEL387
|
jump LABEL465
|
||||||
LABEL356:
|
LABEL434:
|
||||||
invoke 1972
|
invoke 1972
|
||||||
iconst 0
|
iconst 0
|
||||||
if_icmpeq LABEL360
|
if_icmpeq LABEL438
|
||||||
jump LABEL364
|
jump LABEL442
|
||||||
LABEL360:
|
LABEL438:
|
||||||
iconst 155
|
iconst 155
|
||||||
iconst 10616835
|
iconst 10616835
|
||||||
if_settrans
|
if_settrans
|
||||||
jump LABEL387
|
jump LABEL465
|
||||||
LABEL364:
|
LABEL442:
|
||||||
iconst 255
|
iconst 255
|
||||||
iconst 10616835
|
iconst 10616835
|
||||||
if_settrans
|
if_settrans
|
||||||
@@ -430,5 +512,5 @@ LABEL364:
|
|||||||
cc_setfill
|
cc_setfill
|
||||||
iconst 225
|
iconst 225
|
||||||
cc_settrans
|
cc_settrans
|
||||||
LABEL387:
|
LABEL465:
|
||||||
return
|
return
|
||||||
|
|||||||
+5
-7
@@ -27,7 +27,6 @@ package net.runelite.client.plugins.discord;
|
|||||||
import com.google.inject.Guice;
|
import com.google.inject.Guice;
|
||||||
import com.google.inject.testing.fieldbinder.Bind;
|
import com.google.inject.testing.fieldbinder.Bind;
|
||||||
import com.google.inject.testing.fieldbinder.BoundFieldModule;
|
import com.google.inject.testing.fieldbinder.BoundFieldModule;
|
||||||
import java.util.List;
|
|
||||||
import javax.inject.Inject;
|
import javax.inject.Inject;
|
||||||
import javax.inject.Named;
|
import javax.inject.Named;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
@@ -35,7 +34,6 @@ import net.runelite.client.discord.DiscordPresence;
|
|||||||
import net.runelite.client.discord.DiscordService;
|
import net.runelite.client.discord.DiscordService;
|
||||||
import net.runelite.client.ws.PartyService;
|
import net.runelite.client.ws.PartyService;
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertNull;
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
@@ -44,6 +42,7 @@ import static org.mockito.ArgumentMatchers.any;
|
|||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
import static org.mockito.Mockito.times;
|
import static org.mockito.Mockito.times;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
|
import static org.mockito.Mockito.verifyNoMoreInteractions;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
import org.mockito.junit.MockitoJUnitRunner;
|
import org.mockito.junit.MockitoJUnitRunner;
|
||||||
|
|
||||||
@@ -90,13 +89,12 @@ public class DiscordStateTest
|
|||||||
when(discordConfig.elapsedTimeType()).thenReturn(DiscordConfig.ElapsedTimeType.ACTIVITY);
|
when(discordConfig.elapsedTimeType()).thenReturn(DiscordConfig.ElapsedTimeType.ACTIVITY);
|
||||||
|
|
||||||
discordState.triggerEvent(DiscordGameEventType.IN_MENU);
|
discordState.triggerEvent(DiscordGameEventType.IN_MENU);
|
||||||
verify(discordService).updatePresence(any(DiscordPresence.class));
|
verify(discordService).updatePresence(any(DiscordPresence.class)); // menu presence
|
||||||
|
|
||||||
discordState.checkForTimeout();
|
discordState.checkForTimeout();
|
||||||
ArgumentCaptor<DiscordPresence> captor = ArgumentCaptor.forClass(DiscordPresence.class);
|
|
||||||
verify(discordService, times(2)).updatePresence(captor.capture());
|
// menu is not clearable and so no changes will be made
|
||||||
List<DiscordPresence> captured = captor.getAllValues();
|
verifyNoMoreInteractions(discordService);
|
||||||
assertNull(captured.get(captured.size() - 1).getEndTimestamp());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
+164
@@ -30,6 +30,7 @@ import com.google.inject.testing.fieldbinder.Bind;
|
|||||||
import com.google.inject.testing.fieldbinder.BoundFieldModule;
|
import com.google.inject.testing.fieldbinder.BoundFieldModule;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
|
import java.util.function.Predicate;
|
||||||
import net.runelite.api.ChatMessageType;
|
import net.runelite.api.ChatMessageType;
|
||||||
import net.runelite.api.Client;
|
import net.runelite.api.Client;
|
||||||
import net.runelite.api.Experience;
|
import net.runelite.api.Experience;
|
||||||
@@ -37,15 +38,19 @@ import net.runelite.api.InventoryID;
|
|||||||
import net.runelite.api.ItemContainer;
|
import net.runelite.api.ItemContainer;
|
||||||
import net.runelite.api.ItemID;
|
import net.runelite.api.ItemID;
|
||||||
import net.runelite.api.Skill;
|
import net.runelite.api.Skill;
|
||||||
|
import net.runelite.api.Varbits;
|
||||||
import net.runelite.api.events.ChatMessage;
|
import net.runelite.api.events.ChatMessage;
|
||||||
import net.runelite.api.events.ItemContainerChanged;
|
import net.runelite.api.events.ItemContainerChanged;
|
||||||
import net.runelite.api.events.MenuOptionClicked;
|
import net.runelite.api.events.MenuOptionClicked;
|
||||||
import net.runelite.api.events.StatChanged;
|
import net.runelite.api.events.StatChanged;
|
||||||
|
import net.runelite.api.events.VarbitChanged;
|
||||||
import net.runelite.client.game.ItemManager;
|
import net.runelite.client.game.ItemManager;
|
||||||
import net.runelite.client.game.SpriteManager;
|
import net.runelite.client.game.SpriteManager;
|
||||||
import net.runelite.client.ui.overlay.infobox.InfoBox;
|
import net.runelite.client.ui.overlay.infobox.InfoBox;
|
||||||
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
|
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
|
||||||
|
import net.runelite.client.util.RSTimeUnit;
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertFalse;
|
||||||
import static org.junit.Assert.assertNotEquals;
|
import static org.junit.Assert.assertNotEquals;
|
||||||
import static org.junit.Assert.assertNull;
|
import static org.junit.Assert.assertNull;
|
||||||
import static org.junit.Assert.assertTrue;
|
import static org.junit.Assert.assertTrue;
|
||||||
@@ -377,6 +382,165 @@ public class TimersPluginTest
|
|||||||
assertEquals("00:06", timer.getText());
|
assertEquals("00:06", timer.getText());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// region Arceuus spells
|
||||||
|
@Test
|
||||||
|
public void testDeathChargeCast()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuus()).thenReturn(true);
|
||||||
|
when(client.getRealSkillLevel(Skill.MAGIC)).thenReturn(50);
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=6800bf>Upon the death of your next foe, some of your special attack energy will be restored.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> ibcaptor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(ibcaptor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) ibcaptor.getValue();
|
||||||
|
assertEquals(GameTimer.DEATH_CHARGE, infoBox.getTimer());
|
||||||
|
assertEquals(Duration.of(50, RSTimeUnit.GAME_TICKS), infoBox.getDuration());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDeathChargeCooldown()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuusCooldown()).thenReturn(true);
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=6800bf>Upon the death of your next foe, some of your special attack energy will be restored.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> ibcaptor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(ibcaptor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) ibcaptor.getValue();
|
||||||
|
assertEquals(GameTimer.DEATH_CHARGE_COOLDOWN, infoBox.getTimer());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testDeathChargeRestore()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuus()).thenReturn(true);
|
||||||
|
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=6800bf>Some of your special attack energy has been restored.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
TimerTimer correctInfoBox = new TimerTimer(GameTimer.DEATH_CHARGE, Duration.ofSeconds(1), timersPlugin);
|
||||||
|
TimerTimer incorrectInfoBox = new TimerTimer(GameTimer.WARD_OF_ARCEUUS, Duration.ofSeconds(1), timersPlugin);
|
||||||
|
ArgumentCaptor<Predicate<InfoBox>> prcaptor = ArgumentCaptor.forClass(Predicate.class);
|
||||||
|
verify(infoBoxManager).removeIf(prcaptor.capture());
|
||||||
|
Predicate<InfoBox> pred = prcaptor.getValue();
|
||||||
|
assertTrue(pred.test(correctInfoBox));
|
||||||
|
assertFalse(pred.test(incorrectInfoBox));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testArceuusWard()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuus()).thenReturn(true);
|
||||||
|
when(client.getRealSkillLevel(Skill.MAGIC)).thenReturn(57);
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=0000b2>Your defence against Arceuus magic has been strengthened.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> captor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(captor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) captor.getValue();
|
||||||
|
assertEquals(GameTimer.WARD_OF_ARCEUUS, infoBox.getTimer());
|
||||||
|
assertEquals(Duration.of(57, RSTimeUnit.GAME_TICKS), infoBox.getDuration());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testArceuusWardCooldown()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuusCooldown()).thenReturn(true);
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=0000b2>Your defence against Arceuus magic has been strengthened.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> captor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(captor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) captor.getValue();
|
||||||
|
assertEquals(GameTimer.WARD_OF_ARCEUUS_COOLDOWN, infoBox.getTimer());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCorruptionCooldown()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuusCooldown()).thenReturn(true);
|
||||||
|
when(client.getVar(any(Varbits.class))).thenReturn(0);
|
||||||
|
when(client.getVar(Varbits.CORRUPTION_COOLDOWN)).thenReturn(1);
|
||||||
|
timersPlugin.onVarbitChanged(new VarbitChanged());
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> captor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(captor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) captor.getValue();
|
||||||
|
assertEquals(GameTimer.CORRUPTION_COOLDOWN, infoBox.getTimer());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testShadowVail()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuus()).thenReturn(true);
|
||||||
|
when(client.getRealSkillLevel(Skill.MAGIC)).thenReturn(57);
|
||||||
|
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=6800bf>Your thieving abilities have been enhanced.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> captor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(captor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) captor.getValue();
|
||||||
|
assertEquals(GameTimer.SHADOW_VEIL, infoBox.getTimer());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testShadowVailCooldown()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuusCooldown()).thenReturn(true);
|
||||||
|
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=6800bf>Your thieving abilities have been enhanced.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> captor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(captor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) captor.getValue();
|
||||||
|
assertEquals(GameTimer.SHADOW_VEIL_COOLDOWN, infoBox.getTimer());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testThrall()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuus()).thenReturn(true);
|
||||||
|
when(client.getRealSkillLevel(Skill.MAGIC)).thenReturn(50);
|
||||||
|
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=ef0083>You resurrect a greater zombified thrall.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> ibcaptor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(ibcaptor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) ibcaptor.getValue();
|
||||||
|
assertEquals(GameTimer.RESURRECT_THRALL, infoBox.getTimer());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testThrallCooldown()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuusCooldown()).thenReturn(true);
|
||||||
|
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=ef0083>You resurrect a greater zombified thrall.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
ArgumentCaptor<InfoBox> ibcaptor = ArgumentCaptor.forClass(InfoBox.class);
|
||||||
|
verify(infoBoxManager).addInfoBox(ibcaptor.capture());
|
||||||
|
TimerTimer infoBox = (TimerTimer) ibcaptor.getValue();
|
||||||
|
assertEquals(GameTimer.RESURRECT_THRALL_COOLDOWN, infoBox.getTimer());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testThrallEnd()
|
||||||
|
{
|
||||||
|
when(timersConfig.showArceuus()).thenReturn(true);
|
||||||
|
when(client.getRealSkillLevel(Skill.MAGIC)).thenReturn(50);
|
||||||
|
|
||||||
|
ChatMessage chatMessage = new ChatMessage(null, ChatMessageType.GAMEMESSAGE, "", "<col=ef0083>Your greater zombified thrall returns to the grave.</col>", "", 0);
|
||||||
|
timersPlugin.onChatMessage(chatMessage);
|
||||||
|
|
||||||
|
verify(infoBoxManager).removeIf(any());
|
||||||
|
}
|
||||||
|
// endregion
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testImbuedHeartBoost()
|
public void testImbuedHeartBoost()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -195,4 +195,10 @@ public interface RSActor extends RSRenderable, Actor
|
|||||||
|
|
||||||
@Import("pathLength")
|
@Import("pathLength")
|
||||||
int getPathLength();
|
int getPathLength();
|
||||||
|
|
||||||
|
@Import("overheadTextCyclesRemaining")
|
||||||
|
int getOverheadCycle();
|
||||||
|
|
||||||
|
@Import("overheadTextCyclesRemaining")
|
||||||
|
void setOverheadCycle(int cycle);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user