Commit Graph
100 Commits
Author SHA1 Message Date
Jordan Atwood 7bea9f9f3b timers: Remove color matching for teleblock messages
When playing using the resizable viewport and the transparent chatbox,
teleblock messages are sent using a different color than when using the
standard chatbox. This commit removes that color matching entirely from
messages indicating that a teleblock timer has been applied or removed.
2020-05-02 13:14:23 -04:00
Jordan Atwood 5b9591db6e HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega
issue.

Ref: runelite/runelite#9601
2020-04-07 11:11:32 -07:00
Jordan Atwood 95556aadc7 widget: Expose widget model getters and setters
This commit also adds these widget properties to the widget inspector
dev tool.
2020-03-18 23:55:09 -07:00
Jordan Atwood af7647e204 HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega
issue.

Note: Because this commit makes adjustments to some locations relied
upon in the hot-cold solver class test, some tests must be adjusted in
order to keep passing.

Ref: #9601
2020-03-12 10:00:38 -07:00
Jordan Atwood c278562834 SkillChallengeClue: Highlight broken Dorgesh-kaan lamps
For the skill challenge clue "Fix a magical lamp in Dorgesh-Kaan.",
highlight lamps in the area which are broken.

Fixes runelite/runelite#10069
Closes runelite/runelite#10117
2020-03-05 22:28:51 -08:00
Jordan Atwood c48d8db3a1 clues: Create NamedObjectClueScroll interface
This commit adds a new clue type, NamedObjectClueScroll, which allows
highlighting of objects based on object name. (and optionally region
ID(s) where that object should reside)

This commit introduces two new fidlds to the ClueScrollPlugin class to
track player plane changes to address some unusual client behavior.
Namely, when a player travels up or down planes, multiloc objects only
have their varbit values updated on the tick after the plane change
occurs. Since these objects must be in their desired state before
checking their name, these fields are used to track both the player's
plane, and whether the plugin should wait an extra tick to process the
new plane's objects based on a plane change occurring.
2020-03-05 22:26:09 -08:00
Jordan Atwood bb0e693aea itemstats: Add tooltip string method tests
This commit adds tests to ensure proper formatting of the tooltip string
so as to prevent bugs like the one fixed by 7ca4a929.
2020-03-04 16:05:13 -08:00
Jordan Atwood 0451944522 itemstats: Fix unarmed attack speed
Since the writing of this plugin, the wiki has changed the format for
weapon attack speeds[1] and now displays weapon attack speeds in length
of game ticks. Hence, since unarmed attacks are at the rate of once
every 4 game ticks, this commit updates our definition of the unarmed
attack accordingly.

[1] https://oldschool.runescape.wiki/w/Unarmed?diff=8467472&oldid=7810087
2020-03-04 16:04:34 -08:00
Jordan Atwood 7ca4a929fe item stats: Fix tooltip stab bonus comparison
This fixes the bug introduced in commit af00494a which incorrectly
compared the attack speed field and labeled it "Stab" in the item stats
tooltip.

Fixes runelite/runelite#10926
2020-03-02 19:07:36 -08:00
Jordan Atwood 41c8d8aff1 HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega
issue.

Ref: runelite/runelite#9601
2020-02-27 21:25:50 -08:00
Jordan Atwood 896b417e66 util: Add subdirectory option to image captures
This commit adds an optional and nullable `subDir` string to the
`takeScreenshot()` function, allowing screenshots to be filed into a
subdirectory within the player's screenshots folder.
2020-02-23 09:25:35 -08:00
Jordan Atwood e3db56804e plugins: Use RSTimeUnit util where applicable
This replaces uses of `Duration#minusMillis()` and `TemporalUnit`
referencing units of time defined in RSTimeUnits with their definitions.

The Timers plugin constructors are changed to accept implementations of
the `TemporalUnit` interface as they do not require any
`ChronoUnit`-specific APIs. Furthermore, the timer lengths updated use
the game tick lengths described in the OSRS wiki, which generally
closely correspond to the previous length definitions we used.
2020-02-20 14:05:19 -08:00
Jordan Atwood 4f9c22c4c1 util: Create RSTimeUnit enum
This commit adds a list of time units used in some duration
calculations, specifically client ticks and game ticks.
2020-02-20 14:05:18 -08:00
Jordan Atwood 9e560d91e3 cluescroll plugin: Clear stale location clue hint arrows
Location clue scrolls added a hint arrow when the player was nearby one
of the clue's locations. It did not, however clear that arrow if the
locations were changed and the previously-set hint arrow location was no
longer marked. This commit updates this behavior to clear the active
hint arrow each game tick before re-adding any location hint arrows.
(and if no NPC hint arrows are set)

Fixes runelite/runelite#10370
2020-02-20 15:23:00 -05:00
09114ca83a timers: use poison varplayer for antipoison/venom timers
This commit allows the poison timer to be much more accurate as it
receives periodic updates from the server, and covers edge cases where
poison may be delayed or cured from sources besides potion clicks.
(banked potion drinks, HP orb "Cure" menu option, etc.)

This commit removes the `initialDelay` field from GameTimer as the field
was used only to chain antivenom timers into their follow-up antipoison
timers.

Fixes runelite/runelite#1471
Fixes runelite/runelite#10724

Co-authored-by: Lucas <lws.ned1260@gmail.com>
Co-authored-by: Adam <Adam@sigterm.info>
2020-02-15 19:37:44 -05:00
Jordan Atwood 967fadf59d Revert "timers plugin: Improve imbued heart detection"
This reverts commit 45c5df3379.
2020-02-14 09:01:44 -08:00
Jordan Atwood 5b28f343ca clues: Don't return clue instances for empty text
This commit ensures that all clues providing a static `forText()` method
return null when given an empty string as clue text.
2020-02-11 14:05:42 -08:00
Jordan Atwood 1b0cf969d7 ClueScrollPlugin: Reset clue on empty dev command
Fixes runelite/runelite#10775
2020-02-11 13:52:42 -08:00
Jordan AtwoodandLucas 45c5df3379 timers plugin: Improve imbued heart detection
As is the case with other graphics-based timers, the imbued heart timer
will not fire if enough other graphics animations are triggered (such as
those created when fighting the Dagannoth Kings). To add this timer more
reliably, this commit will add the timer when a Magic stat boost occurs
which is large enough that it can only be triggered by the heart.

Because the heart's boost scales with the player's level, it gives an
equal boost to the Magic essence and Magic potion boosts, depending on
the base magic level. To account for this, it will only be applied if
the user's base magic level is high enough to assuredly identify that a
potion was not used to trigger the boost.

Fixes runelite/runelite#3516

Co-authored-by: Lucas <lws.ned1260@gmail.com>
2020-02-08 18:57:22 -05:00
Jordan Atwood 13e69f8317 ConfigPlugin: Expand RuneLite plugin tags
This commit adds a number of related tags to the RuneLite configuration
in order to make it more easily discoverable as many users are not able
to find the settings it contains via search.

Closes runelite/runelite#8491
2020-02-03 22:39:24 -08:00
Jordan Atwood 73d37c061b HotColdSolver: Add same-temperature solution narrowing
The hot-cold solver previously was unable to perform narrowing if given
a temperature change of "SAME", leading to less-than-optimal results
when a number of otherwise-possible solutions could be removed from the
possible results by inferring that since they would have yielded a
"COLDER" or "WARMER" temperature change. This commit removes possible
solutions which are absolutely closer or farther from the previous
tested location.

One pre-exisitng test needed to be updated to pass with this change, as
it expected results to be narrowed more slowly than they now are. In
addition, a minimal test case with only two starting locations has been
added to demonstrate this change is working correctly.
2020-02-02 15:46:50 -08:00
Jordan Atwood 4ce575a1fd HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega
issue.

Ref: runelite/runelite#9601
2020-01-31 17:17:02 -08:00
Jordan Atwood dd771eaab7 woodcutting: Fix overlay hiding during long chop delays
This fixes a bug where the overlay would become hidden when chopping at
a tree without successfully chopping a log for longer than the
configured timeout, and would display "NOT woodcutting" if a log was
successfully chopped thereafter.

Fixes runelite/runelite#7506
2019-11-28 10:31:18 -08:00
Jordan Atwood 8a206e8c92 woodcutting: Add axe animation matching helper method 2019-11-28 10:29:56 -08:00
Jordan Atwood 8dc0e752c8 woodcutting: Reduce visibilities, mark Nullables 2019-11-28 10:29:45 -08:00
Jordan Atwood 503847f644 boosts: Hide restore timer when no boosts are visible
Fixes runelite/runelite#6983
2019-10-20 10:02:35 -07:00
Jordan Atwood 36bb7c8401 cluescrolls: Reset clue on new beginner/master step
When receiving a new beginner or master clue step (which can be detected
by checking the item ID shown in the chat dialog), the clue ID does not
change, because all beginner and master clues share a single ID. Hence,
we can reset the current clue when the "You've found a new clue!" dialog
appears to prevent stale clue information from persisting between steps.

Closes runelite/runelite#9830
2019-09-10 16:58:27 -07:00
Jordan Atwood 664ab26de9 slayerplugin: Fix first slayer kill not being registered
Because a user can have 0 slayer experience on a new account, we cannot
rely on 0 as the pre-login value. Prior to this change, a player getting
their first slayer kill in the described scenario would cause it not to
be counted toward the tracked task.
2019-08-21 09:11:00 -04:00
Jordan Atwood 1c6333410a hotcold: Center level 5 wilderness location
Ref: runelite/runelite#9601
2019-08-06 21:36:04 -07:00
Jordan Atwood ae8379b08a xptrackerplugin: Add canvas menu options to skill tab
This commit adds a configuration option to display menu options to add
or remove a skill from the canvas from the skill tab.
2019-07-24 19:55:16 -04:00
Jordan Atwood c6149f0db0 overlaymanager: Add anyMatch method
This will help plugins make informed decisions when, say, displaying
different text when toggling an overlay on and off.
2019-07-24 19:52:06 -04:00
Jordan Atwood 6563ddaffe groundmarkers: Use "Unmark" menu option for marked tiles 2019-07-23 08:34:04 -07:00
Jordan Atwood de449113b5 objectindicators: Use "Unmark" menu option for marked objects 2019-07-23 07:59:21 -07:00
Jordan Atwood a57954a893 npcindicators: Use "Un-tag" menu option for tagged NPCs
Closes runelite/runelite#1177
2019-07-23 07:59:09 -07:00
Jordan Atwood 2ceb43ec4f timersplugin: Escape periods in teleblock patterns 2019-07-20 14:29:21 -07:00
Jordan Atwood 236d7331a3 groundmarkerplugin: Use RUNELITE menu action 2019-07-19 20:46:36 -07:00
Jordan Atwood 50dba92338 slayerplugin: Correct Jad and Zuk task tracking
This adds a field to Task which dictates the expected exp gain of the
task. When set to a non-zero value, it will prevent slayer exp gains
from registering as a kill unless they are of exactly that amount.

Closes runelite/runelite#1865
2019-07-13 00:26:55 -07:00
Jordan Atwood 1ba77fbc20 hotcoldclue: Display npc location before using device
Closes runelite/runelite#9219
2019-07-11 21:43:13 -07:00
Jordan Atwood 41968c725f Remove unused Slf4j annotations and imports 2019-07-11 00:33:00 -07:00
Jordan Atwood bb1379886c grounditemsplugin: Color telegrab menu entries
This patch will cause menu entries to have their options and/or targets
recolored in the same way as "Take" menu entries are already recolored
when telegrab menu entries are added.

Closes runelite/runelite#4930
2019-07-11 00:11:13 -07:00
Jordan Atwood 501df1e409 loottracker: Fix duplicate cox and tob chest loots
This prevents loot entries for Chamber of Xeric and Theatre of Blood
chests from being duplicated when viewed multiple times.

Fixes runelite/runelite#4754
2019-07-10 23:09:14 -07:00
Jordan Atwood 2c13816ca9 HotColdClue: Clear final location on clue reset
If the clue is being reset, say from a new clue being read and
initialized, we should not continue to use the old location.
2019-07-01 00:03:37 -07:00
Jordan Atwood 29d786b948 HotColdClue: Improve behavior on visibly shaking location
This change causes the locations list to be narrowed on all locator orb
checks, having the consequence of narrowing the list to the visibly
shaking location (for better display via `makeOverlayHint()'). The call
to `reset()' must be removed as it would re-add all locations to the
instance's solver when finding the dig location, which effectively
reverses the apparent narrowing the overlay displayed until that point.
2019-07-01 00:03:37 -07:00
Jordan Atwood 45e1441072 HotColdTemperature: Fix warm-but-colder temperature bug
Because the word "cold" is used both as a temperature ("The device is
cold"), and in a temperature change ("but colder than last time."),
HotColdTemperature tried to interpret COLDER temperature changes as a
COLD temperature match. By matching only the section of the temperature
string preceding the optional comma, this bug is avoided.
2019-07-01 00:03:36 -07:00
Jordan Atwood 76d4031445 cluescrolls: Add beginner hot-cold clues 2019-06-30 20:32:42 -04:00
Jordan Atwood e5d4e7a897 HotColdClue: Add hot-cold solver class
This adds a general hot-cold puzzle solver class and implements it in
HotColdClue.
2019-06-30 20:32:42 -04:00
Jordan Atwood 5a6b39036d HotColdClue: Refactor to use enums for temperatures 2019-06-30 20:32:42 -04:00
Jordan Atwood 1a7aa4666b npc indicators: Fix long respawn timer bug
By killing a monster which has a known respawn timer and leaving its
respawn area (by walking away or teleporting) and returning to it some
time after it has respawned, the plugin can erroneously overwrite its
respawn time with a much longer one. This commit fixes that issue by
assuming that the lower of the observed respawn time and the previously
recorded respawn time is the correct one.
2019-06-28 08:41:06 -07:00
Jordan Atwood 392c934393 EmoteClue: Add null checks for stashUnit
Some clues may have item requirements, but no STASH unit, which would
cause NPEs during rendering. This commit also marks stashUnit as
nullable so this issue can hopefully be avoided in the future.
2019-06-21 17:24:20 -07:00
Jordan Atwood b43b73f9cb HotColdLocation: Center northeastern Kharazi jungle location 2019-06-12 20:48:43 -06:00
Jordan Atwood df61aee09b cluescrolls: Fix Hosidius mess hall clue locations
After the Hosidius rework, the locations of the STASH unit and emote
location have moved slightly.

Fixes runelite/runelite#9073
2019-06-09 17:18:49 -07:00
Jordan Atwood a18c6282d0 PluginListItem: Reset label color on popup menu item click
Fixes runelite/runelite#9007
2019-06-02 23:55:07 -07:00
Jordan Atwood a96260056c HotColdLocation: Replace nbsp with normal spaces
The nbsp characters in this file seemed to be placed randomly, and not
for the intended purpose of preserving spaces across line breaks.
2019-06-02 18:59:28 -07:00
Jordan Atwood 81050f264a attack styles: Attach spec bar redraw listener to weapon text
This fixes a bug where the special attack bar would not be redrawn if
the combat tab was opened with any weapon equipped which did not have a
special attack bar. The weapon text widget is used because it is always
rendered with the combat tab widgets, and does not already have any kind
of listeners attached.

Fixes runelite/runelite#8946
2019-05-29 21:19:33 -04:00
Jordan Atwood 11ba76f5bc plugins panel: Add wiki link to name labels
This adds a hover color effect and a popup menu linking to the plugin's
wiki page to each plugin name label both in the plugin panel and
configuration panels. In the plugin panel, for plugins which have
configurable settings, it also adds a "Configure" menu item to the
added popup menu.

Fixes runelite/runelite#1518
2019-05-27 22:53:55 +02:00
Jordan Atwood e5e2abebbd PluginManagerTest: Ensure config keyNames are not duplicated
This adds a new test to ensure plugin configurations do not duplicate
the keyName annotation argument to prevent runtime errors.
2019-05-22 23:39:57 -07:00
Jordan Atwood bbb8cff0d5 game timers: Don't remove antipoison effects on death 2019-05-11 23:58:35 -07:00
Jordan Atwood d1c692e72e western diary: Fix elf pickpocket quest requirement
The requirement for pickpocketing an elf is to have started Mourning's
End Part I for access to Lletya, not to have completed Mourning's End
Part II.

Fixes runelite/runelite#8806
2019-05-11 14:46:45 -07:00
Jordan Atwood 789c89dcf2 ui: Add Table Component 2019-04-30 22:44:34 -07:00
Jordan Atwood 48d428edf5 Remove PVP references to HIGH_RISK world type
As described in 5bebd34bb, HIGH_RISK is not a PVP world type.

Note: this will not affect the world hopper plugin, as it both
explicitly references the high risk world type, and references the
http-api WorldType implementation, not the runelite-api WorldType which
is being modified in this commit.

Fixes runelite/runelite#8605
Fixes runelite/runelite#8624
2019-04-24 20:10:30 -04:00
Jordan Atwood 3be1c41cb9 WorldType: Fix HIGH_RISK world type name
This world type is not specifically a PVP world type; at the time of
this commit, world 365 is a non-PVP high-risk world, where the world is
the same as a regular members' world, except that the Protect Item
prayer is disabled.
2019-04-24 20:10:30 -04:00
Jordan Atwood 011791d823 Remove PVP references to HIGH_RISK world type
As described in 5bebd34bb, HIGH_RISK is not a PVP world type.

Note: this will not affect the world hopper plugin, as it both
explicitly references the high risk world type, and references the
http-api WorldType implementation, not the runelite-api WorldType which
is being modified in this commit.

Fixes runelite/runelite#8605
Fixes runelite/runelite#8624
2019-04-23 13:08:46 -07:00
Jordan Atwood 5bebd34bbf WorldType: Fix HIGH_RISK world type name
This world type is not specifically a PVP world type; at the time of
this commit, world 365 is a non-PVP high-risk world, where the world is
the same as a regular members' world, except that the Protect Item
prayer is disabled.
2019-04-23 13:03:41 -07:00
Jordan Atwood f7040d134b clue plugin: Add new coordinate clue descriptions
Ref: runelite/runelite#8504
2019-04-16 17:17:48 -07:00
Jordan Atwood ee402d5779 clue plugin: Add new cryptic clues
Ref: runelite/runelite#8504
2019-04-15 22:29:37 -07:00
Jordan Atwood 56e2e3ceab clue plugin: Add new cipher clues
Ref: runelite/runelite#8504
2019-04-15 20:05:35 -07:00
Jordan Atwood e78fe71892 boosts plugin: Fix overlay below-threshold color
This patch updates the boosts overlay to match the threshold color
comparison used in the plugin (for notifications) and in the indicator
infobox.
2019-03-15 17:08:42 -07:00
Jordan Atwood 2a57562022 combat level plugin: Add attack level range option
This commit adds a PVP-world-like combat level range text to the
wilderness level in non-PVP worlds, displaying the range of combats you
can attack at any given wilderness level.

Closes runelite/runelite#3103
Closes runelite/runelite#3318
2019-03-12 10:19:20 -07:00
Jordan Atwood 7a3b5dd3a9 Add pvp widget builder script 2019-03-12 10:19:20 -07:00
Jordan Atwood 54912ca31c widgetinfo: Fix wilderness level definition 2019-03-12 10:19:19 -07:00
Jordan Atwood 11b578b7c2 ground markers: Allow different colored markers
This adds a color indicator per marker, saved to config, allowing
multiple markers to be different colors. In addition, a configuration
option is added to switch between per-tile color display or current
configured color display. (that is, new or existing behavior)

This change will set a color in config for old markers with null colors
when those markers are loaded.

Fixes runelite/runelite#3395
2019-03-09 21:42:49 -05:00
Jordan Atwood 191feb94f6 worldpoint: Add getRegionX() and getRegionY() 2019-03-09 20:10:35 -05:00
Jordan Atwood a18827f929 worldpoint: Add static fromRegion method 2019-03-09 20:10:34 -05:00
Jordan Atwood 15fbbdd786 ground markers: Fix startup and shutdown bug
When logging in to the game with the plugin disabled, enabling it will
not cause points to be filled, as the game state trigger will not be
reached. This commit properly loads points on plugin startup and clears
them on shutdown.
2019-03-09 20:10:33 -05:00
Jordan Atwood 5420f874db ground markers plugin: Clean up legacy code
This includes various code quality improvements such as stronger access
control, enforcing newlines at EOF, naming magic numbers and strings,
and utilizing higher efficiency methods and class constructors.
2019-03-09 20:10:26 -05:00
Jordan Atwood 7e02694652 ground markers: Fix marking non-marked tiles
This fixes the bug introduced in runelite/runelite#5890 where attempting
to mark a non-marked tile while having the "Remember color per tile"
config disabled would prevent new tiles from being marked. Instead, it
properly ensures that unmarking tiles with that config disabled will not
re-mark it with an updated color, causing a second unmark to be needed.
2019-03-02 09:27:54 -08:00
Jordan Atwood ad65a9aad9 ground markers: Allow different colored markers
This adds a color indicator per marker, saved to config, allowing
multiple markers to be different colors. In addition, a configuration
option is added to switch between per-tile color display or current
configured color display. (that is, new or existing behavior)

This change will set a color in config for old markers with null colors
when those markers are loaded.

Fixes runelite/runelite#3395
2019-03-02 12:29:28 +01:00
Jordan Atwood 36fdb620fc ground markers: Fix startup and shutdown bug
When logging in to the game with the plugin disabled, enabling it will
not cause points to be filled, as the game state trigger will not be
reached. This commit properly loads points on plugin startup and clears
them on shutdown.
2019-03-02 12:23:15 +01:00
Jordan Atwood 285926924b ground markers plugin: Clean up legacy code
This includes various code quality improvements such as stronger access
control, enforcing newlines at EOF, naming magic numbers and strings,
and utilizing higher efficiency methods and class constructors.
2019-03-02 12:23:15 +01:00
Jordan Atwood 39bbf2f259 worldpoint: Add getRegionX() and getRegionY() 2019-03-02 12:23:15 +01:00
Jordan Atwood 1675a7e0a1 worldpoint: Add static fromRegion method 2019-03-02 12:23:15 +01:00
Jordan Atwood 2922a8b5f8 worldpoint: Fix plane value in toLocalInstance
Fixes runelite/runelite#7985
Fixes runelite/runelite#8045
2019-02-28 15:27:25 -08:00
Jordan Atwood b000818393 item stats: Represent boost data as ints
Particularly since exposing StatBoosts and StatChanges through the item
stats service, it has become evident that storing stat change data as a
human-readable string is not especially useful for consumers of the
service as they must handle string processing, particularly for special
cases such as range stat boosts or spicy stews. This patch changes
StatChanges to expose their relative, theoretical, and absolute change
values as ints instead for ease of consumption, and adds methods to get
human-readable versions of these relative and theoretical values for
display purposes.

Fixes runelite/runelite#6594
2019-02-07 23:14:33 -08:00
Jordan Atwood d1c11b675b Remove deprecated TileObjectQuery class 2019-02-01 21:44:13 -05:00
Jordan Atwood 9e67dcd39e Remove deprecated ActorQuery class 2019-02-01 21:44:13 -05:00
Jordan Atwood 3d3ec76af8 Remove deprecated InventoryItemQuery class 2019-02-01 21:43:48 -05:00
Jordan Atwood d4f51c4600 Remove deprecated GroundObjectQuery class 2019-02-01 21:43:47 -05:00
Jordan Atwood 732be4e90f Remove deprecated GameObjectQuery class 2019-02-01 21:43:47 -05:00
Jordan Atwood cec74c6652 Remove deprecated DecorativeObjectQuery class 2019-02-01 21:43:46 -05:00
Jordan Atwood b408a22d57 Remove deprecated PlayerQuery class 2019-02-01 21:43:46 -05:00
Jordan Atwood 35b7de7dd8 Remove deprecated WallObjectQuery class 2019-02-01 21:43:45 -05:00
Jordan Atwood 764cac7a09 Remove deprecated WorldPoint.toPoint() method 2019-02-01 21:43:44 -05:00
Jordan Atwood a5e72ea610 client: Use isEmpty() for all Collection emptiness checks 2019-02-01 16:50:54 -08:00
Jordan Atwood b559fd859b chat commands: Add test case for PB without trailing period 2019-01-30 09:13:26 +01:00
Jordan Atwood eb7ebddec3 player indicators: Add name position configuration
This allows players to select from a number of positions where they
would like highlighted player's names to be drawn relative to the
player's model.

Closes runelite/runelite#878
2019-01-29 16:29:19 -08:00
Jordan Atwood 201788847a actor: Mark getCanvasTextLocation as Nullable 2019-01-29 16:29:19 -08:00
Jordan Atwood dd84156dfc perspective: Allow empty text for getCanvasTextLocation
This is particularly useful for aligning text to a certain point such
that it would not be centered on that point, such as left or right
alignment.
2019-01-29 16:28:40 -08:00
Jordan Atwood 05473d2050 dev tools: Fix overlay layer
After the introduction of the new ABOVE_MAP layer, the dev tools overlay
was no longer able to draw above the map, which is needed for the widget
inspector.
2019-01-02 19:33:33 -08:00
Jordan Atwood 1369cfc914 Fix world map surface selector widget ID 2019-01-02 19:29:34 -08:00
Jordan Atwood 4f18a54c23 experiencedrop: Highlight only correct exp drops for prayer
Prior to this commit, hitpoints exp drops (and combined exp drops
containing hitpoints) would be highlighted for any combat prayer. This
commit corrects this behavior so combined drops will only be highlighted
when containing the proper combat style prayer, and split exp drops will
only highlight hitpoints when the correct prayer type was active for the
experience drops which precede it.

Fixes runelite/runelite#1697
2019-01-02 19:03:42 -08:00