Commit Graph
100 Commits
Author SHA1 Message Date
Jordan Atwood 71d1eb9995 plugins: Rename Sedridor to Archmage Sedridor
March 23 2022 update changed his name.
2022-04-07 09:19:38 -07:00
Jordan Atwood 558ea2cbb7 roof removal: Add Braindeath Island override 2022-04-06 23:14:09 -07:00
Jordan Atwood a24c9ac49c roof removal: Add Falador wall overrides 2022-04-06 23:14:09 -07:00
Jordan Atwood 1f734c9481 roof removal: Add Rising Sun Inn override 2022-04-06 23:14:08 -07:00
Jordan Atwood 99a56bf58f roof removal: Add Witchaven override 2022-04-06 23:14:08 -07:00
Jordan Atwood 218ff6968b roof removal: Improve Gnome Stronghold overrides 2022-04-06 23:14:08 -07:00
Jordan Atwood baac277c1f roof removal: Add House on the Hill overrides 2022-04-06 23:14:07 -07:00
Jordan Atwood 459a7ccfa9 roof removal: Add Keep Le Faye overrides 2022-04-06 23:14:07 -07:00
Jordan Atwood 96e86c34fa roof removal: Add Meiyerditch overrides 2022-04-06 23:14:07 -07:00
Jordan Atwood 0d5ae98074 roof removal: Improve East Catherby overrides 2022-04-06 23:14:06 -07:00
Jordan Atwood 1820340861 roof removal: Add chaos rc altar override 2022-04-06 23:14:06 -07:00
Jordan Atwood de0abce8e5 roof removal: Improve Port Phasmatys overrides 2022-04-06 23:14:06 -07:00
Jordan Atwood accd7c1b70 roof removal: Improve SE Ardougne overrides 2022-04-06 23:14:05 -07:00
Jordan Atwood 7d7bb10587 roof removal: Improve Falador castle overrides 2022-04-06 23:14:05 -07:00
Jordan Atwood 076fcaa95e roof removal: Add Misthalin Mystery overrides 2022-04-06 23:14:05 -07:00
Jordan Atwood a1f059af47 roof removal: Add Ardougne gazebo override 2022-04-06 23:14:03 -07:00
Jordan Atwood b24aa5b85c roof removal: Improve Lletya overrides 2022-04-06 23:13:12 -07:00
Jordan Atwood fa3de54b2e clues: Support rune crossbow and god book (or) variants 2022-04-06 09:56:32 -04:00
Jordan Atwood 43a7a60c7b HotColdLocation: Fix East of Watson's house spot
Ref: #9601
2022-04-01 13:19:39 -07:00
Jordan Atwood f2f8a05796 discord: Add Guardians of the Rift minigame 2022-03-26 23:11:16 -07:00
Jordan Atwood 53ee3eb747 roof removal: Add Grim Tales tower override 2022-03-17 11:05:26 -07:00
Jordan Atwood ef20508ccd roof removal: Add Tutorial Island overrides 2022-03-09 16:58:53 -08:00
Jordan Atwood 3190e3ce2a roof removal: Fix Cabin Fever ships 2022-03-09 16:53:31 -08:00
Jordan Atwood d94abb884d slayer: Fix name matching
The Slayer plugin highlights target monsters based on their name rather
than NPC ID, as many common monsters (skeletons, zombies, etc.) have
nearly endless variations for different models and combat levels.
Previously, this name matching was done via a simple
`String#contains()`, which led to some incorrect matches such as pirates
being highlighted while on rat tasks and Jonny the beard being
highlighted while on bear tasks.

This commit changes matching to use regex to match string boundaries or
whitespace at either end of the task string, ensuring these substring
matches can only happen when word breaks occur. The only known existing
case where this would apply is for baby dragons and brutal dragons,
which are valid alternatives for their respective chromatic dragon
tasks.
2022-02-25 12:40:43 -05:00
Jordan Atwood e4edddffbe widget overlay: Don't draw empty wilderness K/D box
The Wilderness and PVP kill-death information box is created while in
these areas regardless of whether the setting (configured via the notice
board at the Edgeville bank) is enabled to show the text, meaning the
widget contains only empty text widgets when the setting is disabled
rather than being null, causing a bounding box to still be drawn and
affecting other snapped widget layout. This commit adds a child class of
WidgetOverlay specific to this widget and prevents it from being drawn
when the setting to show this information is disabled.
2022-02-11 15:26:01 -05:00
Jordan Atwood 1efdf4a6fd cluescrolls: Add X Marks The Spot quest solutions 2021-10-04 12:26:32 -04:00
Jordan Atwood bb7cd404a7 chat colors: Add engine message recoloring 2021-10-01 11:24:29 -07:00
Jordan Atwood ac8f778307 skill calculator: Add ItemSkillAction interface
This interface allows for drastically simplified skill actions, allowing
us to eschew their name entries in favor of looking up the item name
using the items' compositions (fetched from their IDs) at runtime.
2021-09-28 22:05:00 -04:00
Jordan Atwood 7b678b2afb skill calculator: Define actions and bonuses in Java
As the number of bonus types increases, the existing system of allowing
only a single type of bonus to be applied, and only allowing actions to
entirely opt out of having bonuses applied rather than more fine-grained
control, is showing its age. This commit redefines all bonus and action
entries in Java enums so that such systems can be better-defined.
Additionally, it comes with the benefit of easier change validation via
testing and enabling item and sprite ID referencing via runelite-api.
2021-09-28 22:05:00 -04:00
Jordan Atwood 6428a7af4f skill calculator: Code cleanup 2021-09-28 22:05:00 -04:00
Jordan Atwood 763db213a2 skybox: Show surface color while in Prifddinas 2021-09-19 15:10:12 -04:00
Jordan Atwood d27f5f9a76 api: Add getMirrorPoint to WorldPoint API 2021-09-19 15:10:12 -04:00
Jordan Atwood 847c44c44c status bars: Clean up rendering code 2021-09-16 15:35:49 -07:00
Jordan Atwood 3c009c8f54 status bars: Fix left bar Y offset
Due to an apparent typo, the wrong value was being referenced for the
left bar's Y offset specifically for the resizable viewport with bottom
line interfaces. This commit fixes this reference and the associated
value.
2021-09-16 15:35:49 -07:00
Jordan Atwood b1d5fa32a4 client: Support POH treasure chest inventory overlays 2021-09-14 21:34:35 -07:00
Jordan Atwood 006fd8c864 widgets: Add POH treasure chest widget IDs 2021-09-14 21:34:29 -07:00
d58cecdb8d idle notifier: Support filling water vessels, Shades of Mort'ton
LOOKING_INTO is a generic animation used for numerous activities, and
was previously used as an intermediate animation in a test case. Now
that it is used to trigger idle notifications, a dummy animation has
been inserted to ensure the affected test case will not be broken in the
same way in the future.

Co-authored-by: Nick Wolff <nickwolff2@gmail.com>
Co-authored-by: Arnaud Peralta <arnaud.peralta@gmail.com>
2021-09-13 23:33:03 -07:00
Jordan Atwood faf9e94a70 roof removal: Fix Ardougne monastery 2021-08-24 08:43:25 -07:00
Jordan Atwood 5df5abd50d clues: Support combat achievement slayer helms 2021-08-18 19:58:04 -04:00
Jordan Atwood 42d27d6786 slayer: Support combat achievement slayer helms 2021-08-18 19:58:04 -04:00
Jordan Atwood 1d870b3308 ItemMapping: Add combat achievement rewards variations 2021-08-18 19:58:04 -04:00
Jordan Atwood c1ad57b785 Revert "XpInfoBox: Give stats panel equal column widths"
This reverts commit e57f6d0d6e.
2021-07-23 19:22:19 -07:00
Jordan Atwood c64cb8e5f5 roof removal: Add overrides for Keldagrim 2021-07-20 16:34:34 -07:00
Jordan Atwood f07ae7ac9f roof removal: Fix and expand gnome stronghold overrides 2021-07-13 21:24:20 -07:00
Jordan Atwood 65563b595a CoordinateClue: Fix Isle of Souls enemies
The Isle of Souls only spawns an Armadylean guard at the western
location, and a Bandosian guard at the eastern location.
2021-07-13 19:48:54 -07:00
Jordan Atwood 583794a26a CoordinateClue: Fix Crabclaw isle location 2021-07-13 13:48:55 -07:00
Jordan Atwood 1ea92b03ef Remove unused Slf4j annotations and imports 2021-07-12 00:49:16 -07:00
Jordan Atwood 95f481a5ca discord: Identify corrupted gauntlet separately 2021-07-08 00:03:29 -07:00
Jordan Atwood c5e05889d8 CoordinateClue: Add South of Shayziens' Wall clue 2021-07-04 21:28:23 -07:00
Jordan Atwood a191600ac5 EmoteClue: Fix Shayzien war tent clue text 2021-06-22 20:41:42 -07:00
Jordan Atwood fc5d9745f5 agility: Fix Shayzien basic course total xp
The final obstacle of the Shayzien basic course grants 92.2xp, not a
flat 92.
2021-06-21 14:27:17 -07:00
Jordan Atwood b7cbdcdf51 clues: Fix clues changed with A Kingdom Divided update 2021-06-20 11:21:50 -04:00
Jordan Atwood ae9b7aee6b clues: Add new A Kingdom Divided update clues 2021-06-20 11:21:50 -04:00
Jordan Atwood da38684cac clues: Update and add clues for 6/16 Shayzien rework 2021-06-16 04:01:15 -06:00
Jordan Atwood fecd65e7e5 object indicators: add configurable border width 2021-06-14 22:44:44 -07:00
Jordan Atwood c60d714832 HotColdLocation: Add clue type field 2021-06-12 13:20:28 -04:00
Jordan Atwood d69a5ddd8b status bars: Add counter text drop shadow
This drop shadow was present prior to the plugin refactor in
1165780f42 which erroneously removed it.
2021-06-06 15:53:59 -04:00
Jordan Atwood 70dc7f56bc clues: Fix three step cryptic clue getLocations NPE
Prior to this commit, ThreeStepCrypticClue simply returned a
concatenation of the active step locations without filtering the mapped
locations in any way. This could lead to NPEs in the plugin as some
cryptic clues have null locations for steps which have no specific
location or have a variable location. This commit addresses this by
making CrypticClue's location field `@Nullable`, filtering null
locations from ThreeStepCrypticClue's getLocations stream, and by adding
a test to ensure ThreeStepCrypticClue's getLocations method cannot yield
any null entries in its return value.
2021-06-05 17:53:17 -04:00
Jordan Atwood b1dd93bb0b item identification plugin: Add item mapping test
This will ensure any ImmutableMap building errors are caught at test
time rather than at runtime.
2021-06-01 16:35:51 -04:00
Jordan Atwood 25ec5a7c5c ProgressBar: Fix center label centering
BorderLayout does not guarantee equal sizing of its children, so having
a component centered between two components of unequal sizes will leave
it centered relative to their sizes, such as the following:

```
|-----BorderLayout-------------------------------------------|
||----WEST----||------CENTER------||----------EAST----------||
||------------||------------------||------------------------||
|------------------------------------------------------------|
```

Conversely, GridLayout uses fixed, equal-width columns for its children,
ensuring the center component will always occupy the center third of the
parent's dimensions.

P.S. This change causes labels to truncate earlier as they do not expand
beyond a third of the parent container's dimensions. Because the use
case for this component is with small labels, I do not anticipate this
will cause breakage.
2021-06-01 12:15:49 -04:00
Jordan Atwood e57f6d0d6e XpInfoBox: Give stats panel equal column widths 2021-06-01 11:02:55 -04:00
Jordan Atwood 502895979d menu manager: add menu entries in insert order 2021-05-04 13:50:40 -04:00
Jordan Atwood e6d45bd67a HotColdLocation: Fix Seers' Village bank spot
Ref: #9601
2021-05-02 22:58:27 -07:00
Jordan Atwood 36ec314ab7 Revert "opponentinfo: Show health bar of actors attacking the player"
This reverts commit 48ea01dd28.
2021-03-09 21:30:58 -08:00
Jordan Atwood d26e3ec7b2 opponent info: Add simple interaction tests 2021-03-04 18:52:32 -05:00
Jordan Atwood bd67d82bbb Widget: Mark getChildren() as nullable 2021-02-27 10:54:29 -05:00
Jordan Atwood 7c59815869 npchighlight: Apply correct highlights to changed NPCs 2021-02-27 10:44:21 -05:00
Jordan Atwood e8fd08fa41 client: Remove shaded jar minimizing
After the addition of runelite-jshell, some of its dependencies are not
preserved during jar minimization, causing the shell dev tool to fail on
some systems. This change ensures all dependencies are preserved in the
resulting shaded jar. This change results in a roughly 2Mb larger output
shaded jar.
2021-02-26 19:05:20 -05:00
Jordan Atwood 11f32eb5ce HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega\
issue.

Ref: runelite/runelite#9601
2021-02-24 21:17:32 -08:00
Jordan Atwood 50c39164b7 item identification: Fix duplicate tree seed entries 2021-02-20 19:25:53 -08:00
Jordan Atwood d716503c04 menu entry swapper config: Fix formatting from previous commit 2021-02-20 15:03:06 -08:00
Jordan Atwood c92f835102 timers plugin: Improve imbued heart detection
As is the case with other graphics-based timers, the imbued heart timer
will not fire if 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
of the appropriate amount after recently clicking on an imbued heart.
Because the magic level boost, combined with an imbued heart click
check, is a reliable way to detect usage of an imbued heart, the
graphics check is removed.
2021-02-15 13:09:54 -05:00
Jordan Atwood 2cdfdf0284 cluescrolls: Re-check named object highlights after hopping 2021-02-13 13:35:25 -05:00
Jordan Atwood 0fa078d8f1 notifier: Add username to tray notification title
This also removes the player's ingame name from notifications which are
referring to the active player in favor of the title.
2021-02-13 10:36:12 -05:00
Jordan Atwood fadfc15cd0 cluescrolls: Fix beginner/master clue step reset
Commit 36bb7c8401 improved the clue scroll
plugin by resetting the active clue step when a beginner or master clue
item was displayed in the chat dialog when receiving a new step. This
commit caused a new bug, however, in that it became possible to click on
a new clue step while the new step dialog was open such that the new
step dialog persisted through a GameTick due to client-server delay,
causing the saved clue item ID to be lost. This commit fixes that issue
by resetting only the active clue object, but not the recorded clue item
ID, as beginner and master clues only use a single item ID.
2021-02-13 10:30:33 -05:00
Jordan Atwood aa6ac7cbc0 clues: Add Isle of Souls coordinate clues 2021-02-05 12:16:32 -05:00
Jordan Atwood bbfa08f8b7 MenuOptionClicked: Add selectedItemIndex field 2021-02-02 22:58:41 -05:00
Jordan Atwood e5ccde56ed HotColdLocation: Fix Pirates' Cove spot
Ref: #9601
2021-01-11 15:53:11 -08:00
Jordan Atwood 1f95987d1a ChatboxTextInput: Improve open selection left/right handling
Previously, when pressing left or right without Shift pressed, the
cursor would end up one character left or right of the start of the
selection, which is not expected behavior compared to how most programs
handle this case. This commit changes this behavior to place the cursor
at the start or end of the selection when pressing left or right,
respectively, when a selection is active.
2021-01-07 15:06:53 -08:00
Jordan Atwood ed1d47f283 ChatboxTextInput: Select full message on ctrl+a 2021-01-07 14:13:51 -08:00
Jordan Atwood ccc40e3eb4 Add support for trailblazer kit rewards 2021-01-07 13:55:43 -08:00
Jordan Atwood 7c98afb173 AnimationID: Remove incorrect trailblazer harpoon entry
This animation is not used for harpooning. It appears to be some kind of
obscure trailblazer mining animation.
2021-01-07 12:57:56 -08:00
Jordan Atwood ead554e23b itemstats: Add Darkmeyer foods 2020-12-31 12:39:50 -05:00
Jordan Atwood cb31e1ddd4 timers: Fix leagues area teleport bug
Teleporting using a trailblazer leagues area teleport previously caused
a home or minigame teleport timer to be created, depending on which of
the two was most recently stored as `lastTeleportClicked`. To avoid
this, a new TeleportWidget has been registered which does not follow any
code paths in the plugin.
2020-11-13 14:31:22 -05:00
Jordan Atwood 9479b23229 devtools: Render world map location above region overlay 2020-10-24 21:30:42 -07:00
Jordan Atwood 5e2946024b nightmarezone: Set absorption notification var on startup 2020-10-24 17:54:08 -07:00
Jordan Atwood 842749fe15 Move heart sprite recolors to public package 2020-10-24 06:08:28 +02:00
Jordan Atwood d0589c80b9 kourendlibrary: Don't reset state when not finding Varlamore Envoy
The Varlamore Envoy is a quest item which, while having a known location
in the library once a rotation is determined, cannot be found under
certain circumstances. (when the Depths of Despair quest has not been
started, has been collected while completing the quest, and after the
quest is completed) Previously searching a bookcase which could contain
this book and not finding it would cause a state reset. This commit
keeps those null finds from resetting the known library state.
2020-10-08 14:09:06 -07:00
Jordan Atwood d9876976d6 util: Remove unused and unneeded methods
ImageUtil had previously provided a number of image fill and outline
methods which accepted Predicates to control the fill and outline
behavior, but they are not used anywhere in the client or by external
plugins. This commit removes these methods and the
is(Not)?FullyTransparent ColorUtil methods which existed solely as
Predicate defaults for them.
2020-10-03 12:06:52 -04:00
Jordan Atwood 32638ccf63 KeyManager: Add debug logging
We receive numerous support queries regarding unknown or errantly-set
keybinds causing issues during normal gameplay for our users, especially
since the plugin hub has been released and more plugins are able to
register keybinds. This commit adds logging for keybind registration and
activation for ease of troubleshooting.
2020-10-01 18:31:12 -04:00
Jordan Atwood e4fe839efe EmoteClue: Fix Infernal max cape item ID
Two infernal max cape items exist: one being the item which players can
use, and another presumably being the item displayed in the dialog shown
when combining a max cape and an infernal cape. `INFERNAL_MAX_CAPE` is
the definition for the latter cape, and `INFERNAL_MAX_CAPE_21285` is the
real item players would have.
2020-09-14 17:17:30 -07:00
Jordan Atwood 754fbf2b13 HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega
issue.

Ref: runelite/runelite#9601
2020-09-13 09:57:34 -07:00
Jordan Atwood a0acbb0f7b Move Experience tests to proper test class 2020-09-08 17:27:52 -07:00
Jordan Atwood a6628564f8 banktags: Don't lose scroll position when hiding separators 2020-09-07 00:40:24 -07:00
Jordan Atwood d1a765091a screenshot: Fix BA high gamble toggle
Because both level up dialogs and BA high gambles use the same widget
interface, commit 40f032bede caused BA
high gambles and some level up dialogs to trigger screenshots if either
config was enabled in the config, as that would set a flag to capture a
screenshot on the next game tick based on the widget text. This commit
adds config checks to the DIALOG_SPRITE_TEXT branch to ensure the
appropriate config flag must be set for a screenshot to be captured.
2020-08-30 13:14:06 -04:00
Jordan Atwood fb47850686 ItemIdentification: Fix target teleport definition 2020-08-24 13:11:57 -07:00
Jordan Atwood c9ef18b55e menuentryswapper: Prefer last-destination on Zanaris fairy ring 2020-08-21 16:10:47 -04:00
Jordan Atwood 105046b2f5 HotColdLocation: Fix Mos Le'Harmless southern bar spot
Ref: #9601
2020-08-15 18:31:33 -07:00
Jordan Atwood b16b3a8017 slayer: Fix slaughter bracelet proc text
After the 2020-08-06 game update[1] the Bracelet of slaughter gives a
slightly different text than before. This commit updates the slayer
plugin to identify that new text.

[1]: https://secure.runescape.com/m=news/pvp-changes?oldschool=1
2020-08-07 12:35:51 -04:00
Jordan Atwood 73b73a84c5 HotColdLocation: Center some location spots
Center some hot-cold locations as reported and verified from the mega
issue.

Ref: runelite/runelite#9601
2020-08-04 21:07:34 -07:00