Merge remote-tracking branch 'runelite/master'
This commit is contained in:
@@ -250,15 +250,6 @@ public enum ItemMapping
|
||||
BLACK_MASK_I_25276, BLACK_MASK_1_I_25275, BLACK_MASK_2_I_25274, BLACK_MASK_3_I_25273, BLACK_MASK_4_I_25272, BLACK_MASK_5_I_25271, BLACK_MASK_6_I_25270, BLACK_MASK_7_I_25269, BLACK_MASK_8_I_25268, BLACK_MASK_9_I_25267, BLACK_MASK_10_I_25266,
|
||||
TZTOK_SLAYER_HELMET, TZTOK_SLAYER_HELMET_I, TZTOK_SLAYER_HELMET_I_25902, VAMPYRIC_SLAYER_HELMET, VAMPYRIC_SLAYER_HELMET_I, VAMPYRIC_SLAYER_HELMET_I_25908, TZKAL_SLAYER_HELMET, TZKAL_SLAYER_HELMET_I, TZKAL_SLAYER_HELMET_I_25914),
|
||||
|
||||
// Pharaoh's Sceptres
|
||||
ITEM_PHARAOHS_SCEPTRE_1(PHARAOHS_SCEPTRE, PHARAOHS_SCEPTRE_1),
|
||||
ITEM_PHARAOHS_SCEPTRE_2(PHARAOHS_SCEPTRE, PHARAOHS_SCEPTRE_2),
|
||||
ITEM_PHARAOHS_SCEPTRE_4(PHARAOHS_SCEPTRE, PHARAOHS_SCEPTRE_4),
|
||||
ITEM_PHARAOHS_SCEPTRE_5(PHARAOHS_SCEPTRE, PHARAOHS_SCEPTRE_5),
|
||||
ITEM_PHARAOHS_SCEPTRE_6(PHARAOHS_SCEPTRE, PHARAOHS_SCEPTRE_6),
|
||||
ITEM_PHARAOHS_SCEPTRE_7(PHARAOHS_SCEPTRE, PHARAOHS_SCEPTRE_7),
|
||||
ITEM_PHARAOHS_SCEPTRE_8(PHARAOHS_SCEPTRE, PHARAOHS_SCEPTRE_8),
|
||||
|
||||
// Revertible items
|
||||
ITEM_HYDRA_LEATHER(HYDRA_LEATHER, FEROCIOUS_GLOVES),
|
||||
ITEM_HYDRA_TAIL(HYDRA_TAIL, BONECRUSHER_NECKLACE),
|
||||
|
||||
@@ -82,7 +82,7 @@ public class BankPlugin extends Plugin
|
||||
private static final String SEED_VAULT_TITLE = "Seed Vault";
|
||||
|
||||
private static final String NUMBER_REGEX = "[0-9]+(\\.[0-9]+)?[kmb]?";
|
||||
private static final Pattern VALUE_SEARCH_PATTERN = Pattern.compile("^(?<mode>ge|ha|alch)?" +
|
||||
private static final Pattern VALUE_SEARCH_PATTERN = Pattern.compile("^(?<mode>qty|ge|ha|alch)?" +
|
||||
" *(((?<op>[<>=]|>=|<=) *(?<num>" + NUMBER_REGEX + "))|" +
|
||||
"((?<num1>" + NUMBER_REGEX + ") *- *(?<num2>" + NUMBER_REGEX + ")))$", Pattern.CASE_INSENSITIVE);
|
||||
|
||||
@@ -413,13 +413,26 @@ public class BankPlugin extends Plugin
|
||||
final int qty = itemQuantities.count(itemId);
|
||||
final long gePrice = (long) itemManager.getItemPrice(itemId) * qty;
|
||||
final long haPrice = (long) itemComposition.getHaPrice() * qty;
|
||||
final boolean isPlaceholder = itemComposition.getPlaceholderTemplateId() != -1;
|
||||
|
||||
long value = Math.max(gePrice, haPrice);
|
||||
|
||||
final String mode = matcher.group("mode");
|
||||
if (mode != null)
|
||||
{
|
||||
value = mode.toLowerCase().equals("ge") ? gePrice : haPrice;
|
||||
switch (mode.toLowerCase())
|
||||
{
|
||||
case "qty":
|
||||
value = isPlaceholder ? 0 : qty;
|
||||
break;
|
||||
case "ge":
|
||||
value = gePrice;
|
||||
break;
|
||||
case "ha":
|
||||
case "alch":
|
||||
value = haPrice;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
final String op = matcher.group("op");
|
||||
|
||||
@@ -107,7 +107,7 @@ import org.apache.commons.text.WordUtils;
|
||||
public class ChatCommandsPlugin extends Plugin
|
||||
{
|
||||
private static final Pattern KILLCOUNT_PATTERN = Pattern.compile("Your (?:completion count for |subdued |completed )?(.+?) (?:(?:kill|harvest|lap|completion) )?(?:count )?is: <col=ff0000>(\\d+)</col>");
|
||||
private static final String TEAM_SIZES = "(?<teamsize>\\d+(?:\\+|-\\d+)? players|Solo)";
|
||||
private static final String TEAM_SIZES = "(?<teamsize>\\d+(?:\\+|-\\d+)? players?|Solo)";
|
||||
private static final Pattern RAIDS_PB_PATTERN = Pattern.compile("<col=ef20ff>Congratulations - your raid is complete!</col><br>Team size: <col=ff0000>" + TEAM_SIZES + "</col> Duration:</col> <col=ff0000>(?<pb>[0-9:]+(?:\\.[0-9]+)?)</col> \\(new personal best\\)</col>");
|
||||
private static final Pattern RAIDS_DURATION_PATTERN = Pattern.compile("<col=ef20ff>Congratulations - your raid is complete!</col><br>Team size: <col=ff0000>" + TEAM_SIZES + "</col> Duration:</col> <col=ff0000>[0-9:.]+</col> Personal best: </col><col=ff0000>(?<pb>[0-9:]+(?:\\.[0-9]+)?)</col>");
|
||||
private static final Pattern KILL_DURATION_PATTERN = Pattern.compile("(?i)(?:(?:Fight |Lap |Challenge |Corrupted challenge )?duration:|Subdued in|(?<!total )completion time:) <col=[0-9a-f]{6}>[0-9:.]+</col>\\. Personal best: (?:<col=ff0000>)?(?<pb>[0-9:]+(?:\\.[0-9]+)?)");
|
||||
@@ -115,7 +115,7 @@ public class ChatCommandsPlugin extends Plugin
|
||||
private static final Pattern DUEL_ARENA_WINS_PATTERN = Pattern.compile("You (were defeated|won)! You have(?: now)? won ([\\d,]+|one) duels?");
|
||||
private static final Pattern DUEL_ARENA_LOSSES_PATTERN = Pattern.compile("You have(?: now)? lost ([\\d,]+|one) duels?");
|
||||
private static final Pattern ADVENTURE_LOG_TITLE_PATTERN = Pattern.compile("The Exploits of (.+)");
|
||||
private static final Pattern ADVENTURE_LOG_PB_PATTERN = Pattern.compile("Fastest (?:kill|run)(?: - \\(Team size: " + TEAM_SIZES + "\\))?: (?<time>[0-9:]+(?:\\.[0-9]+)?)");
|
||||
private static final Pattern ADVENTURE_LOG_PB_PATTERN = Pattern.compile("Fastest (?:kill|run|Room time)(?: - \\(Team size: \\(?" + TEAM_SIZES + "\\)\\)?)?: (?<time>[0-9:]+(?:\\.[0-9]+)?)");
|
||||
private static final Pattern HS_PB_PATTERN = Pattern.compile("Floor (?<floor>\\d) time: <col=ff0000>(?<floortime>[0-9:]+(?:\\.[0-9]+)?)</col>(?: \\(new personal best\\)|. Personal best: (?<floorpb>[0-9:]+(?:\\.[0-9]+)?))" +
|
||||
"(?:<br>Overall time: <col=ff0000>(?<otime>[0-9:]+(?:\\.[0-9]+)?)</col>(?: \\(new personal best\\)|. Personal best: (?<opb>[0-9:]+(?:\\.[0-9]+)?)))?");
|
||||
private static final Pattern HS_KC_FLOOR_PATTERN = Pattern.compile("You have completed Floor (\\d) of the Hallowed Sepulchre! Total completions: <col=ff0000>([0-9,]+)</col>\\.");
|
||||
@@ -673,7 +673,6 @@ public class ChatCommandsPlugin extends Plugin
|
||||
for (int i = 0; i < text.length; ++i)
|
||||
{
|
||||
String boss = longBossName(text[i]);
|
||||
double pb = Double.MAX_VALUE;
|
||||
|
||||
for (i = i + 1; i < text.length; ++i)
|
||||
{
|
||||
@@ -683,19 +682,35 @@ public class ChatCommandsPlugin extends Plugin
|
||||
break;
|
||||
}
|
||||
|
||||
// Some bosses have multiple pbs for each team size, just use the lowest
|
||||
Matcher matcher = ADVENTURE_LOG_PB_PATTERN.matcher(line);
|
||||
if (matcher.find())
|
||||
{
|
||||
double s = timeStringToSeconds(matcher.group("time"));
|
||||
pb = Math.min(pb, s);
|
||||
}
|
||||
}
|
||||
final double s = timeStringToSeconds(matcher.group("time"));
|
||||
String teamSize = matcher.group("teamsize");
|
||||
if (teamSize != null)
|
||||
{
|
||||
// 3 player -> 3 players
|
||||
// 1 player -> Solo
|
||||
// Solo -> Solo
|
||||
// 2 players -> 2 players
|
||||
if (teamSize.equals("1 player"))
|
||||
{
|
||||
teamSize = "Solo";
|
||||
}
|
||||
else if (teamSize.endsWith("player"))
|
||||
{
|
||||
teamSize = teamSize + "s";
|
||||
}
|
||||
|
||||
if (pb < Double.MAX_VALUE)
|
||||
{
|
||||
log.debug("Found adventure log PB for {}: {}", boss, pb);
|
||||
setPb(boss, pb);
|
||||
log.debug("Found team-size adventure log PB for {} {}: {}", boss, teamSize, s);
|
||||
setPb(boss + " " + teamSize, s);
|
||||
}
|
||||
else
|
||||
{
|
||||
log.debug("Found adventure log PB for {}: {}", boss, s);
|
||||
setPb(boss, s);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -204,7 +204,7 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu
|
||||
new EmoteClue("Wave in the Falador gem store. Equip a Mithril pickaxe, Black platebody and an Iron Kiteshield.", "Falador", NEAR_HERQUINS_SHOP_IN_FALADOR, new WorldPoint(2945, 3335, 0), WAVE, item(MITHRIL_PICKAXE), item(BLACK_PLATEBODY), item(IRON_KITESHIELD)),
|
||||
new EmoteClue("Wave on Mudskipper Point. Equip a black cape, leather chaps and a steel mace.", "Mudskipper Point", MUDSKIPPER_POINT, new WorldPoint(2989, 3110, 0), WAVE, item(BLACK_CAPE), item(LEATHER_CHAPS), item(STEEL_MACE)),
|
||||
new EmoteClue("Wave on the northern wall of Castle Drakan. Beware of double agents! Wear a dragon sq shield, splitbark body and any boater.", "Castle Drakan", NORTHERN_WALL_OF_CASTLE_DRAKAN, new WorldPoint(3562, 3379, 0), DOUBLE_AGENT_141, WAVE, any("Dragon sq shield", item(DRAGON_SQ_SHIELD), item(DRAGON_SQ_SHIELD_G)), item(SPLITBARK_BODY), any("Any boater", item(RED_BOATER), item(ORANGE_BOATER), item(GREEN_BOATER), item(BLUE_BOATER), item(BLACK_BOATER), item(PINK_BOATER), item(PURPLE_BOATER), item(WHITE_BOATER))),
|
||||
new EmoteClue("Yawn in the 7th room of Pyramid Plunder. Beware of double agents! Equip a pharaoh sceptre and a full set of menaphite robes.", "Pyramid Plunder", _7TH_CHAMBER_OF_JALSAVRAH, new WorldPoint(1944, 4427, 0), DOUBLE_AGENT_141, YAWN, any("Pharaoh's sceptre", item(PHARAOHS_SCEPTRE), item(PHARAOHS_SCEPTRE_1), item(PHARAOHS_SCEPTRE_2), item(PHARAOHS_SCEPTRE_3), item(PHARAOHS_SCEPTRE_4), item(PHARAOHS_SCEPTRE_5), item(PHARAOHS_SCEPTRE_6), item(PHARAOHS_SCEPTRE_7), item(PHARAOHS_SCEPTRE_8)), any("Full set of menaphite robes", all(item(MENAPHITE_PURPLE_HAT), item(MENAPHITE_PURPLE_TOP), range(MENAPHITE_PURPLE_ROBE, MENAPHITE_PURPLE_KILT)), all(item(MENAPHITE_RED_HAT), item(MENAPHITE_RED_TOP), range(MENAPHITE_RED_ROBE, MENAPHITE_RED_KILT)))),
|
||||
new EmoteClue("Yawn in the 7th room of Pyramid Plunder. Beware of double agents! Equip a pharaoh sceptre and a full set of menaphite robes.", "Pyramid Plunder", _7TH_CHAMBER_OF_JALSAVRAH, new WorldPoint(1944, 4427, 0), DOUBLE_AGENT_141, YAWN, any("Pharaoh's sceptre", item(PHARAOHS_SCEPTRE), item(PHARAOHS_SCEPTRE), item(PHARAOHS_SCEPTRE_9045), item(PHARAOHS_SCEPTRE_9046), item(PHARAOHS_SCEPTRE_9047), item(PHARAOHS_SCEPTRE_9048), item(PHARAOHS_SCEPTRE_9049), item(PHARAOHS_SCEPTRE_9050), item(PHARAOHS_SCEPTRE_9051), item(PHARAOHS_SCEPTRE_13074), item(PHARAOHS_SCEPTRE_13075), item(PHARAOHS_SCEPTRE_13077), item(PHARAOHS_SCEPTRE_13078), item(PHARAOHS_SCEPTRE_16176), item(PHARAOHS_SCEPTRE_21445), item(PHARAOHS_SCEPTRE_21446), item(PHARAOHS_SCEPTRE_26948), item(PHARAOHS_SCEPTRE_26950)), any("Full set of menaphite robes", all(item(MENAPHITE_PURPLE_HAT), item(MENAPHITE_PURPLE_TOP), range(MENAPHITE_PURPLE_ROBE, MENAPHITE_PURPLE_KILT)), all(item(MENAPHITE_RED_HAT), item(MENAPHITE_RED_TOP), range(MENAPHITE_RED_ROBE, MENAPHITE_RED_KILT)))),
|
||||
new EmoteClue("Yawn in the Varrock library. Equip a green gnome robe top, HAM robe bottom and an iron warhammer.", "Varrock Castle", VARROCK_PALACE_LIBRARY, new WorldPoint(3209, 3492, 0), YAWN, item(GREEN_ROBE_TOP), item(HAM_ROBE), item(IRON_WARHAMMER)),
|
||||
new EmoteClue("Yawn in Draynor Marketplace. Equip studded leather chaps, an iron kiteshield and a steel longsword.", "Draynor", DRAYNOR_VILLAGE_MARKET, new WorldPoint(3083, 3253, 0), YAWN, item(STUDDED_CHAPS), item(IRON_KITESHIELD), item(STEEL_LONGSWORD)),
|
||||
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)),
|
||||
|
||||
@@ -266,14 +266,6 @@ enum ItemWithCharge
|
||||
PASSAGE3(TELEPORT, NECKLACE_OF_PASSAGE3, 3),
|
||||
PASSAGE4(TELEPORT, NECKLACE_OF_PASSAGE4, 4),
|
||||
PASSAGE5(TELEPORT, NECKLACE_OF_PASSAGE5, 5),
|
||||
PHARAO1(TELEPORT, PHARAOHS_SCEPTRE_1, 1),
|
||||
PHARAO2(TELEPORT, PHARAOHS_SCEPTRE_2, 2),
|
||||
PHARAO3(TELEPORT, PHARAOHS_SCEPTRE_3, 3),
|
||||
PHARAO4(TELEPORT, PHARAOHS_SCEPTRE_4, 4),
|
||||
PHARAO5(TELEPORT, PHARAOHS_SCEPTRE_5, 5),
|
||||
PHARAO6(TELEPORT, PHARAOHS_SCEPTRE_6, 6),
|
||||
PHARAO7(TELEPORT, PHARAOHS_SCEPTRE_7, 7),
|
||||
PHARAO8(TELEPORT, PHARAOHS_SCEPTRE_8, 8),
|
||||
PRAYER1(POTION, PRAYER_POTION1, 1),
|
||||
PRAYER2(POTION, PRAYER_POTION2, 2),
|
||||
PRAYER3(POTION, PRAYER_POTION3, 3),
|
||||
|
||||
@@ -37,15 +37,9 @@ import lombok.Getter;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.GameObject;
|
||||
import net.runelite.api.GameState;
|
||||
import static net.runelite.api.ItemID.PHARAOHS_SCEPTRE;
|
||||
import static net.runelite.api.NullObjectID.*;
|
||||
import static net.runelite.api.ObjectID.GRAND_GOLD_CHEST;
|
||||
import static net.runelite.api.ObjectID.SARCOPHAGUS_21255;
|
||||
import static net.runelite.api.ObjectID.SPEARTRAP_21280;
|
||||
import static net.runelite.api.ObjectID.TOMB_DOOR_20948;
|
||||
import static net.runelite.api.ObjectID.URN_21261;
|
||||
import static net.runelite.api.ObjectID.URN_21262;
|
||||
import static net.runelite.api.ObjectID.URN_21263;
|
||||
import net.runelite.api.ItemID;
|
||||
import net.runelite.api.NullObjectID;
|
||||
import net.runelite.api.ObjectID;
|
||||
import net.runelite.api.Tile;
|
||||
import net.runelite.api.TileObject;
|
||||
import net.runelite.api.Varbits;
|
||||
@@ -78,21 +72,21 @@ public class PyramidPlunderPlugin extends Plugin
|
||||
private static final Duration PYRAMID_PLUNDER_DURATION = Duration.of(501, RSTimeUnit.GAME_TICKS);
|
||||
private static final int PYRAMID_PLUNDER_REGION = 7749;
|
||||
|
||||
static final Set<Integer> TOMB_DOOR_WALL_IDS = ImmutableSet.of(NULL_26618, NULL_26619, NULL_26620, NULL_26621);
|
||||
static final int TOMB_DOOR_CLOSED_ID = TOMB_DOOR_20948;
|
||||
static final Set<Integer> TOMB_DOOR_WALL_IDS = ImmutableSet.of(NullObjectID.NULL_26618, NullObjectID.NULL_26619, NullObjectID.NULL_26620, NullObjectID.NULL_26621);
|
||||
static final int TOMB_DOOR_CLOSED_ID = ObjectID.TOMB_DOOR_20948;
|
||||
|
||||
static final int SPEARTRAP_ID = SPEARTRAP_21280;
|
||||
static final int SPEARTRAP_ID = ObjectID.SPEARTRAP;
|
||||
|
||||
static final Set<Integer> URN_IDS = ImmutableSet.of(NULL_26580, NULL_26600, NULL_26601, NULL_26602,
|
||||
NULL_26603, NULL_26604, NULL_26605, NULL_26606, NULL_26607, NULL_26608, NULL_26609, NULL_26610, NULL_26611,
|
||||
NULL_26612, NULL_26613);
|
||||
static final Set<Integer> URN_CLOSED_IDS = ImmutableSet.of(URN_21261, URN_21262, URN_21263);
|
||||
static final Set<Integer> URN_IDS = ImmutableSet.of(NullObjectID.NULL_26580, NullObjectID.NULL_26600, NullObjectID.NULL_26601, NullObjectID.NULL_26602,
|
||||
NullObjectID.NULL_26603, NullObjectID.NULL_26604, NullObjectID.NULL_26605, NullObjectID.NULL_26606, NullObjectID.NULL_26607, NullObjectID.NULL_26608,
|
||||
NullObjectID.NULL_26609, NullObjectID.NULL_26610, NullObjectID.NULL_26611, NullObjectID.NULL_26612, NullObjectID.NULL_26613);
|
||||
static final Set<Integer> URN_CLOSED_IDS = ImmutableSet.of(ObjectID.URN_21261, ObjectID.URN_21262, ObjectID.URN_21263);
|
||||
|
||||
static final int GRAND_GOLD_CHEST_ID = NULL_26616;
|
||||
static final int GRAND_GOLD_CHEST_CLOSED_ID = GRAND_GOLD_CHEST;
|
||||
static final int GRAND_GOLD_CHEST_ID = NullObjectID.NULL_26616;
|
||||
static final int GRAND_GOLD_CHEST_CLOSED_ID = ObjectID.GRAND_GOLD_CHEST;
|
||||
|
||||
static final int SARCOPHAGUS_ID = NULL_26626;
|
||||
static final int SARCOPHAGUS_CLOSED_ID = SARCOPHAGUS_21255;
|
||||
static final int SARCOPHAGUS_ID = NullObjectID.NULL_26626;
|
||||
static final int SARCOPHAGUS_CLOSED_ID = ObjectID.SARCOPHAGUS_21255;
|
||||
|
||||
@Inject
|
||||
private Client client;
|
||||
@@ -173,7 +167,7 @@ public class PyramidPlunderPlugin extends Plugin
|
||||
{
|
||||
int ppTimer = client.getVarbitValue(Varbits.PYRAMID_PLUNDER_TIMER);
|
||||
Duration remaining = PYRAMID_PLUNDER_DURATION.minus(ppTimer, RSTimeUnit.GAME_TICKS);
|
||||
timer = new PyramidPlunderTimer(remaining, itemManager.getImage(PHARAOHS_SCEPTRE), this,
|
||||
timer = new PyramidPlunderTimer(remaining, itemManager.getImage(ItemID.PHARAOHS_SCEPTRE), this,
|
||||
config, client);
|
||||
infoBoxManager.addInfoBox(timer);
|
||||
}
|
||||
|
||||
@@ -738,7 +738,8 @@
|
||||
],
|
||||
"stone tablet": [
|
||||
699,
|
||||
22991
|
||||
22991,
|
||||
26954
|
||||
],
|
||||
"mixed chemicals": [
|
||||
705,
|
||||
@@ -1394,7 +1395,9 @@
|
||||
25790,
|
||||
25791,
|
||||
25792,
|
||||
26566
|
||||
26566,
|
||||
26943,
|
||||
26944
|
||||
],
|
||||
"radimus notes": [
|
||||
714,
|
||||
@@ -1426,7 +1429,8 @@
|
||||
755,
|
||||
9633,
|
||||
9649,
|
||||
22475
|
||||
22475,
|
||||
26942
|
||||
],
|
||||
"book": [
|
||||
757,
|
||||
@@ -2490,7 +2494,8 @@
|
||||
11027,
|
||||
11028,
|
||||
11029,
|
||||
11030
|
||||
11030,
|
||||
26926
|
||||
],
|
||||
"banana": [
|
||||
1963,
|
||||
@@ -2508,7 +2513,12 @@
|
||||
24994,
|
||||
24996,
|
||||
26417,
|
||||
26419
|
||||
26419,
|
||||
26971,
|
||||
26973,
|
||||
26975,
|
||||
26977,
|
||||
26979
|
||||
],
|
||||
"empty cup": [
|
||||
1980,
|
||||
@@ -3326,10 +3336,6 @@
|
||||
3716,
|
||||
3743
|
||||
],
|
||||
"full bucket": [
|
||||
3722,
|
||||
4693
|
||||
],
|
||||
"sealed vase": [
|
||||
3738,
|
||||
3739,
|
||||
@@ -5010,6 +5016,10 @@
|
||||
10485,
|
||||
10512
|
||||
],
|
||||
"chest": [
|
||||
6759,
|
||||
26955
|
||||
],
|
||||
"rat pole": [
|
||||
6773,
|
||||
6774,
|
||||
@@ -6381,14 +6391,24 @@
|
||||
],
|
||||
"pharaohs sceptre": [
|
||||
9044,
|
||||
9045,
|
||||
9046,
|
||||
9047,
|
||||
9048,
|
||||
9049,
|
||||
9050,
|
||||
9051,
|
||||
13074,
|
||||
13075,
|
||||
13076,
|
||||
13077,
|
||||
13078
|
||||
13078,
|
||||
16176,
|
||||
21445,
|
||||
21446,
|
||||
26945,
|
||||
26948,
|
||||
26950
|
||||
],
|
||||
"emerald lantern": [
|
||||
9064,
|
||||
@@ -10387,6 +10407,10 @@
|
||||
26256,
|
||||
26258
|
||||
],
|
||||
"magical cleaning potion": [
|
||||
26278,
|
||||
26924
|
||||
],
|
||||
"secret santa present": [
|
||||
26298,
|
||||
26300,
|
||||
@@ -10625,5 +10649,17 @@
|
||||
26896,
|
||||
26897,
|
||||
26898
|
||||
],
|
||||
"vat": [
|
||||
26932,
|
||||
26933
|
||||
],
|
||||
"scarab emblem": [
|
||||
26953,
|
||||
26956
|
||||
],
|
||||
"circlet of water": [
|
||||
26967,
|
||||
26969
|
||||
]
|
||||
}
|
||||
@@ -1 +1 @@
|
||||
3FA5FFC8DB18A42971CED41A9BC7CEA407A0EC98061D56B2822F66CD910E4BAF
|
||||
7295A7B0C6DEBDBAB737A307974DAEF4AFD7DBD011B30AC45D2972FE75C54868
|
||||
@@ -1,21 +1,21 @@
|
||||
.id 3238
|
||||
.int_stack_count 4
|
||||
.int_stack_count 5
|
||||
.string_stack_count 0
|
||||
.int_var_count 5 ; +1 for filter result
|
||||
.int_var_count 6 ; +1 for filter result
|
||||
.string_var_count 0
|
||||
iconst -1 ; set to 1 to hide, 0 to show
|
||||
iconst -1 ; set to 1 to hide, 0 to show
|
||||
iload 0 ; quest struct
|
||||
sconst "questFilter"
|
||||
runelite_callback
|
||||
runelite_callback
|
||||
pop_int ; quest struct
|
||||
istore 4 ; save result
|
||||
istore 5 ; save result
|
||||
; compare with -1
|
||||
iload 4 ; load result
|
||||
iconst -1
|
||||
iload 5 ; load result
|
||||
iconst -1
|
||||
if_icmpeq continue
|
||||
; return value
|
||||
iload 4
|
||||
return
|
||||
iload 5
|
||||
return
|
||||
|
||||
continue:
|
||||
iload 0
|
||||
@@ -48,12 +48,12 @@ LABEL22:
|
||||
iconst 1
|
||||
return
|
||||
LABEL24:
|
||||
iload 1
|
||||
iconst 0
|
||||
iload 4
|
||||
iconst 1
|
||||
if_icmpeq LABEL28
|
||||
jump LABEL34
|
||||
LABEL28:
|
||||
get_varbit 13775
|
||||
get_varbit 13890
|
||||
iconst 1
|
||||
if_icmpeq LABEL32
|
||||
jump LABEL34
|
||||
@@ -62,11 +62,11 @@ LABEL32:
|
||||
return
|
||||
LABEL34:
|
||||
iload 1
|
||||
iconst 1
|
||||
iconst 0
|
||||
if_icmpeq LABEL38
|
||||
jump LABEL44
|
||||
LABEL38:
|
||||
get_varbit 13776
|
||||
get_varbit 13775
|
||||
iconst 1
|
||||
if_icmpeq LABEL42
|
||||
jump LABEL44
|
||||
@@ -75,11 +75,11 @@ LABEL42:
|
||||
return
|
||||
LABEL44:
|
||||
iload 1
|
||||
iconst 2
|
||||
iconst 1
|
||||
if_icmpeq LABEL48
|
||||
jump LABEL54
|
||||
LABEL48:
|
||||
get_varbit 13777
|
||||
get_varbit 13776
|
||||
iconst 1
|
||||
if_icmpeq LABEL52
|
||||
jump LABEL54
|
||||
@@ -88,41 +88,54 @@ LABEL52:
|
||||
return
|
||||
LABEL54:
|
||||
iload 1
|
||||
iconst 1
|
||||
if_icmpeq LABEL58
|
||||
jump LABEL68
|
||||
LABEL58:
|
||||
get_varbit 13778
|
||||
iconst 2
|
||||
if_icmpeq LABEL58
|
||||
jump LABEL64
|
||||
LABEL58:
|
||||
get_varbit 13777
|
||||
iconst 1
|
||||
if_icmpeq LABEL62
|
||||
jump LABEL68
|
||||
jump LABEL64
|
||||
LABEL62:
|
||||
iload 2
|
||||
iconst 0
|
||||
if_icmpeq LABEL66
|
||||
jump LABEL68
|
||||
LABEL66:
|
||||
iconst 1
|
||||
return
|
||||
LABEL68:
|
||||
LABEL64:
|
||||
iload 1
|
||||
iconst 1
|
||||
if_icmpeq LABEL72
|
||||
jump LABEL82
|
||||
LABEL72:
|
||||
get_varbit 13779
|
||||
if_icmpeq LABEL68
|
||||
jump LABEL78
|
||||
LABEL68:
|
||||
get_varbit 13778
|
||||
iconst 2
|
||||
if_icmpeq LABEL76
|
||||
jump LABEL82
|
||||
LABEL76:
|
||||
iload 3
|
||||
if_icmpeq LABEL72
|
||||
jump LABEL78
|
||||
LABEL72:
|
||||
iload 2
|
||||
iconst 0
|
||||
if_icmpeq LABEL80
|
||||
jump LABEL82
|
||||
LABEL80:
|
||||
if_icmpeq LABEL76
|
||||
jump LABEL78
|
||||
LABEL76:
|
||||
iconst 1
|
||||
return
|
||||
LABEL78:
|
||||
iload 1
|
||||
iconst 1
|
||||
if_icmpeq LABEL82
|
||||
jump LABEL92
|
||||
LABEL82:
|
||||
get_varbit 13779
|
||||
iconst 2
|
||||
if_icmpeq LABEL86
|
||||
jump LABEL92
|
||||
LABEL86:
|
||||
iload 3
|
||||
iconst 0
|
||||
if_icmpeq LABEL90
|
||||
jump LABEL92
|
||||
LABEL90:
|
||||
iconst 1
|
||||
return
|
||||
LABEL92:
|
||||
iconst 0
|
||||
return
|
||||
iconst -1
|
||||
|
||||
Reference in New Issue
Block a user