Commit Graph
100 Commits
Author SHA1 Message Date
Adam 321b976cf1 plugin hub panel: sort plugins by usercount 2021-01-22 12:25:23 -05:00
Adam 857ac274ff client: rename jogl/gluegen osx natives artifacts
gradle does not look at classifiers when doing dependency conflict
resolution, causing it to not correctly handle having multiple
dependencies of differing versions and classifiers. It picks the highest
version of any of the dependencies with the same groupId and artifactId
and uses that for every other dependency regardless of classifier.

This renames the osx natives artifacts to have a unique artifact name to
workaround this issue
2021-01-20 18:25:40 -05:00
Adam 97343fbd09 client: update discord dependency version
The osx native has been rebuilt to support older osx versions
2021-01-20 18:02:01 -05:00
Adam 48262fdc19 Merge remote-tracking branch 'abex/cache-code-pre-2021-1-20' 2021-01-20 10:21:39 -05:00
Adam 19122e71c3 Use delomboked sources for javadoc generation 2021-01-19 21:28:51 -05:00
Adam f8b407f79a kittype: use ordinal for index 2021-01-19 15:00:31 -05:00
Adam b12860b52d chat notifier: restore original color when highlighting own name 2021-01-19 13:04:01 -05:00
Adam 239d58df72 client: update discord dependency version
The osx native has been rebuilt to be a universal library for both x64 and arm64
2021-01-18 19:08:52 -05:00
Adam 6d42e7ba42 client: update gluegen and jogl osx natives
The natives have been rebuilt to be universal libraries for both x64 and arm64
2021-01-18 17:00:28 -05:00
Adam c997e175a5 world map: consolidate world map points into one 2021-01-15 14:00:36 -05:00
Adam 7dae40daef custom cursor: use cursor name for combobox labels 2021-01-13 22:02:20 -05:00
Adam 524ebee67d config panel: fix combobox displayed size
The size was being computed from the enum names during the getPreferredSize() call due to not having the renderer set yet. Additionally the old prototype display value was not being used during this as it was not set yet, either.
2021-01-13 22:02:19 -05:00
Adam 92013816b8 Shorten many config names to fit into side panel 2021-01-13 21:48:12 -05:00
Adam 8cc7448f58 runelite config: enable custom chrome only on Windows 2021-01-13 10:58:17 -05:00
Adam 359b909d8e gpu: fix camera position
The position returned by getCameraX/Y/Z are not yet updated when this is
called, causing it to be from the previous frame's camera position.

This was introduced in 0fc1a94088 when the
uniform code was copied from draw.
2021-01-09 21:47:13 -05:00
Adam 266fee2067 config service: handle fromJson() returning null
Treat it the same as handling a json syntax exception
2021-01-09 17:12:05 -05:00
Adam fa43ca94db npc highlight: revert fill color behavior
Prior to ab4cf1afe9 this already accepted an alpha color and so this introduced a behavior change when picking a color with alpha
2021-01-08 17:53:12 -05:00
4a214f9807 spec counter: add spec threshold notifications
This allows configuring spec thresholds which a notification will be sent for
when reached. Additionally it colors the infobox text red or green based on if
the threshold has been reached.

Co-authored-by: Dylan <dylanhe@gmail.com>
Co-authored-by: jgozon <47003557+jgozon@users.noreply.github.com>
2021-01-08 16:20:40 -05:00
Adam cb22bdd026 gpu: add option to use old texture brightness code 2021-01-08 12:58:56 -05:00
Adamandvitorebom aa1cd2c7ff spec counter: prevent dark core, zombified spawn, and combat dummies from reseting counter
These are commonly attacked during boss fights or whilst speccing down bosses and shouldn't reset the counter

Co-authored-by: vitorebom <vitorebom@users.noreply.github.com>
2021-01-08 11:44:33 -05:00
Adam ae18d2a865 overlay: fix layouted overlays not respecting parent bounds
This clamps layouted overlays to their parent's bounds, and also adjusts
the snap corner for the shifted position that is a result of the clamp,
so that the following overlays correctly get layouted.
2021-01-06 21:22:01 -05:00
Adam 86940e139b hiscore panel: add soul wars zeal 2021-01-06 15:27:07 -05:00
Adam 0f17ecdaea http-api: add soul wars hiscores 2021-01-06 15:27:07 -05:00
Adam c5a52754e0 Fix Zalcano damage overlay to only show during Zalcano
This varp is for the hp hud, and applies to more content than just
Zalcano, so verify that the hp hud is for Zalcano
2021-01-05 15:26:08 -05:00
Adam 4ca8ef4d40 gpu: fix lighting textures
The passed hsl for textured triangles is a 7-bit lightness, and should
be directly multiplied into the texture color
2021-01-02 20:43:26 -05:00
Adam fdd84f929d perspective: ignore invisible tris in clickbox calculation 2020-12-31 18:13:36 -05:00
Adam 0fc1a94088 gpu: dispatch compute after scene draw
This moves the compute shaders to run immediately after scene draw,
instead of in the draw() callback, which happens much later. All models
in the scene have been queued by the time, but since it is so early in
the ui drawing, it gives a few more ms for the compute to run before the
result needs to be used to draw the next frame.
2020-12-30 16:41:28 -05:00
Adam fd9626495b client: bind runelite.properties to guice 2020-12-30 16:32:23 -05:00
Adam 246b0f8a86 gpu: draw full screen widgets on gpu
This adjusts the draw callbacks api to take in the color of the full
screen overlay the client would have rendered. This is primarily used in
godwars, underwater, darkmeyer, etc. Having them rasterized on the cpu
is slow, especially with gpu on since we additionally have to compute
the alpha per-pixel.
2020-12-29 20:06:41 -05:00
Adam 5c5e71681a gpu: correctly set model height on non-model renderables
This was incorrect before, but I think is only used for determining if a renderable is occluded, and doesn't change any behaviors I can see
2020-12-29 18:21:25 -05:00
Adam 14ada669f5 gpu: move calculateExtreme() after visibility check
It is only used in the clickbox code and isn't required for isVisible()
2020-12-29 18:06:29 -05:00
Adam 68f4174b21 comp_unordered.glsl: don't orient vertices
While nothing passed to comp_unordered uses orientation, the uniform
block is not bound in this shader, and rotate() accesses sinCosTable. So
I'm not sure why this has ever worked.
2020-12-28 21:26:09 -05:00
Adam 5822e489f7 Allow mouse tooltips on the welcome screen and full screen world map
Adjust the mouse highlight overlay to run at the same layers as the
tooltip overlay. It always runs first due to having a lower position.
I think previously tooltips from ui ops were 1 frame behind due to this
being UNDER_WIDGETS.

Additionally change the tooltip overlay to draw after the fullscreen tli
instead of the world map interface. Having it render after the world map
caused tooltips to render after the floating world map too, which is too
early. The fullscreen tli is the root of both the fullscreen world map
and of the welcome screen.
2020-12-28 20:41:09 -05:00
Adam e3b75c8b7a ge: submit buy limit reset time 2020-12-25 19:58:22 -05:00
Adam 9a322c70d0 ge: add trade seq number
Occasionally the trades are delivered out of order, this allows us to reassemble them in the correct order
2020-12-25 19:19:41 -05:00
Adam 2c8984e380 ge: add user agent to trade message 2020-12-25 19:19:40 -05:00
Adam ffebb9cf0c ge plugin: better handle trades updating on login
After login there are two sets of offer updates, I suspect the first is
from the server and the second is from the ge server - this also flags
ge server trade updates as on login. To do this we assume it always
happens in the first few ticks after the login burst.
2020-12-25 19:19:39 -05:00
Adam 85a953e76b api: remove WidgetHiddenChanged
This has been superseded by script hooks on the scripts which hide the widgets
2020-12-24 15:40:00 -05:00
Adam 175f436f48 ping: place IcmpCloseHandle in finally
If toIntExact() throws then this would leak the handle
2020-12-20 12:54:22 -05:00
Adam b1ebf7814b menu entry swapper: refactor configure shift click menu code to use menu types and ids
This fixes an issue where if the action at the configured shift click action
index was null, which can happen due to item variations, the option.equals()
check would npe, and prevent configuring shift click on the item.
2020-12-19 14:11:27 -05:00
Adam c05d29424f menu entry swapper: replace some client.getItemDefinition calls with itemManager.getItemComposition 2020-12-19 14:11:16 -05:00
Adam 5dc5adc01f Remove ITEM_DROP menu action
It is identical to ITEM_FIFTH_OPTION and of() was returning only ITEM_DROP,
which made ITEM_FIFTH_OPTION useless
2020-12-19 14:11:07 -05:00
Adam eafaaec07d timers: use pvp varbit to clear teleblock timer 2020-12-18 17:19:47 -05:00
Adam 1d5df7b475 wiki: use script post fired event for hiding wiki banner 2020-12-18 16:40:46 -05:00
Adam 34e37dcc57 Add interface and layer draw hooks for overlays
This allows overlays to request draw after any interface or layer. This
allows removal of the ABOVE_MAP layer which can now just be replaced
with requesting draw after the map interface. This also fixes item
overlays from drawing over top of the map by now drawing the item
overlay immediately after the interface and/or layer the item is on is
drawn.

For backwards compatability, ABOVE_WIDGETS is kept as a layer, but
internally just requests draw after the 3 TLIs.

Due to overlays defaulting to the UNDER_WIDGETS layer, a new layer
MANUAL has been added, which is intended for use when requesting draw
after specific interfaces or layers, so that the overlay is otherwise
not drawn a second time due to being UNDER_WIDGETS.
2020-12-15 14:30:49 -05:00
Adam a43a344aca Rename various itemWidget to widgetItem to match class name 2020-12-15 14:30:48 -05:00
Adam 61a36f106f overlay renderer: use viewport bounds for snap corner offsets
The rendered x/y position of the viewport layer is the same as the viewport offsets. This also no longer assumes the x/y offets are the same, even though in practice they always are.
2020-12-15 14:30:47 -05:00
Adam 38b3d3a904 api: remove getViewportWidget()
The returned widget isn't actually the viewport widget, but is a layer within the viewport, and only needs to be used within the overlay renderer to position the snapcorners
2020-12-15 14:30:46 -05:00
Adam 78e0cf5392 ci: use mvn verify phase instead of install
Installing the artifacts is not necessary, and
currently we have to remove them from the build
cache to prevent that from growing too large
2020-12-13 11:22:11 -05:00
Adam 70a2e41db0 Allow overlay renderer to restrict overlay parent bounds
This removes the hack of double setting the widget position in
WidgetOverlay, which was required to override the overlay renderers
clamping code in both overlay drag and in overlay rendering.
2020-12-12 23:46:37 -05:00
Adam 59bccf2c6f overlay renderer: set currentManagedOverlay also when clicking
Requiring the mouse to be moved first causes dead clicks when the mouse is
pressed immediately after entering overlay management mode. Also since
resetOverlayManagementMode() clears the managed overlay, after dragging
an overlay it again requires the mouse to be moved to pick up a click on it
if dragging again or trying to reset the overlay.
2020-12-12 21:04:18 -05:00
Adam 0bf7f33ee0 devtools: assign unique names to debug infoboxes 2020-12-12 21:03:06 -05:00
Adam eaa16429e5 widget overlay: use the in-game configured position for the xptracker widget 2020-12-12 21:01:43 -05:00
Adam c2d5165709 twitch: fix npe closing client if no socket has been created
If the client is closed prior to the socket being created, or if socket creation fails, this will repeatedly throw out of close() in connect() and is never able to reestablish a connection
2020-12-09 20:13:02 -05:00
Adam 807a22172f barrows: fix reward potential color overlay
The reward text color is meant to show what is the optimal reward percent
for money, assuming that blood runes are best, and death runes are
second best. The percentage thresholds however were incorrect.
2020-12-09 20:00:29 -05:00
Adam b9b87d10a4 music: update for volume api changes 2020-12-09 04:44:57 -07:00
Adam 45ae2fa3f6 metronome: update for volume api changes 2020-12-09 04:44:57 -07:00
Adam dc84f6b649 api: move sound effect volumes to preferences 2020-12-09 04:44:57 -07:00
Adam f67eed0f96 chatcommands: always apply pb from raids
This logic was from prior to cox having a pb message, and so it had to compare
the known pb with the current raid duration. Now that all raids have a pb
message, it is no longer necessary to do this. This fixes pb times syncing up
in the main game correctly that were overwritten by leagues.
2020-12-07 23:34:02 -05:00
Adam 3911a2c79c Merge pull request #12889 from abextm/music-sliders-2000-external
music: re-add slider granularity
2020-12-07 16:06:06 -05:00
Adam 3bad0b726b ba plugin: cleanup and remove unused code 2020-12-06 15:45:35 -05:00
Adam f0233234da chat commands test: remove unnecesary argument matchers 2020-12-04 16:01:50 -05:00
Adam 3771444b7f chat commands: fix detecting pb when completing leagues tasks
The league task message is in between the kc and pb messages, so just look for the pb message on the same tick as the kc message
2020-12-04 15:50:21 -05:00
Adam f5a76e9961 clientui: fix double requestFocusInWindow() when showing frame
requestFocus() always calls giveClientFocus() in addition to requesting
focus, so it is not necessary to call giveClientFocus() separately on
startup.
2020-12-03 15:50:56 -05:00
Adam 316a19147c Fix Javadoc search feature to work without modules 2020-12-03 11:37:41 -05:00
Adam 16149cdcae config manager: manually parse config keys
The regex used took too long to complete with large inputs that can
appear when the user has a corrupted config.
2020-12-02 19:26:13 -05:00
Adam a4daa407a1 timers: fix abyssal sire stun timer
At some point this changed to no longer animate once the sire changed to
the stunned type. This changes the timer to just use the npc changed
event, which should work more reliably.
2020-12-01 18:13:44 -05:00
Adam 764dce1dfc timers: fix tzhaar timer tracking when disabled mid inferno
This moves all of the timer tracking logic outside of the check for if
the timer is on, and now also allows toggling the timer on and off when
in the caves.
2020-12-01 11:29:05 -05:00
Adam 68dfa21482 timers: ignore config changed events for other config groups
Also make a local variable for message in the chat message handler
2020-12-01 10:49:32 -05:00
Adam 38c9e084ed Use raw varp array for get/set value in devtools
It was decided the current indirection isn't necessary
2020-11-30 21:19:57 -05:00
Adam 97f4ebf985 devtools: queue changed varps in setvarb and setvarp 2020-11-30 21:19:56 -05:00
Adam 82f937ec5d api: add queueChangedVarp 2020-11-30 21:19:55 -05:00
Adamandjsambon 912847c1fd worldmap: add Getting Ahead quest start location
Co-authored-by: jsambon <jean-francois.sambon@student.uclouvain.be>
2020-11-30 19:19:47 -05:00
Adam a658d94db0 notifier: move osx terminal-notifier test to executor
Additionally set a timeout on the process
2020-11-28 14:54:26 -05:00
Adam e9acabf549 dps counter: add option to only count boss damage 2020-11-28 14:32:09 -05:00
Adam d8e97dd1f7 dps counter: add option to reset when boss dies 2020-11-28 13:47:00 -05:00
Adam 23b7a65c29 chatfilter: fix filtering self and clan messages with chat icons
This was incorrectly filtering self/clan messages from players with chat
icons due to not stripping the icon tag before matching the player name.
2020-11-27 15:32:51 -05:00
Adam f6a5463a57 Merge pull request #12834 from abextm/rsprofile-external
Per RuneScape-Profile configuration
2020-11-27 00:00:54 -05:00
Adam 0ca25d4f46 chat controller: return 404 if task is not found
This was returning a 200 with an empty body, causing the client to npe due to deserializing it as a Task with no task or location
2020-11-26 14:37:50 -05:00
Adam 922c5e3421 cache: fix objexporter hsl to rgb calculation
This was doing hsb to rgb instead
2020-11-24 18:45:37 -05:00
Adam e5b5292267 objectindicators: fix not marking objects when loaded on other planes
fromLocalInstance() was returning a world point using the clients plane,
however the object may not be on that, causing the plane check in
checkObjectPoints() to fail.
2020-11-22 18:35:05 -05:00
Adam 1f3634d429 Fix incorrectly marking Al Kharid west shortcut window
The west window has the same id as the east window, causing both to be marked by the agility plugin. This adds a matches() method to AgilityShortcut to allow the plugin to test specifically which window matches the shortcut.
2020-11-22 15:45:39 -05:00
Adam 514995d140 banktags: use script event for detecting bank search
The bank plugin is being changed to manually initiate bank searches,
by invoking the script, and the bank tabs plugin needs to be able to
detect this search too.
2020-11-22 12:31:32 -05:00
Adam 6552355fd7 Move BankSearch to bank plugin
It contains no bank tab specific code and is used by both the bank and banktags plugins
2020-11-22 12:31:32 -05:00
Adam 6f60750c31 combat level: show next levels needed even past 99
In some cases, it is not possible to get a combat level solely from leveling
any one stat. If this happened previously the overlay would show an empty
tooltip due to the levels required all being >99. This just shows the levels
required even if it surpasses 99.
2020-11-21 10:40:18 -05:00
Adam 41245f7f89 api: add method to remove game objects from scene 2020-11-16 22:21:27 -05:00
Adam ad4d1787a1 gpu: fix intel miscompiles of fragui shader
Having all 3 sampling branches feed into one colorblind() call was
breaking some versions of Intel's drivers whenever the xbr sampling code
was merely present. Changing each branch to individually call
colorblind() seems to fix it.
2020-11-13 14:31:50 -05:00
Adam 811842ef2f wildcard matcher: quote replacement to prevent the matcher from replacing group references 2020-11-09 19:15:28 -05:00
Adam 51d105a30b chat commands: format lp score 2020-11-09 19:15:16 -05:00
Adam 4f3d57d739 Fix offline worlds showing population of 65535
The service has been updated to return -1 when worlds are offline, and then the UI updated to display OFF when the count is less than 0
2020-11-09 12:41:50 -05:00
Adam 79286202e6 ci: update glslang to 8.13.3743 2020-11-06 16:03:04 -05:00
Adam f8d8aa762c antidrag: set bank drag delay when bankside inv is opened too 2020-11-04 17:25:18 -05:00
Adam 3a1e752da5 item charges test: remove unnecessary eq matchers 2020-11-04 15:35:29 -05:00
Adamandpilino1234 7ceb3c9e02 client: add PMD source code analyzer
This catches common bugs, dead code, etc., and also performs some more advanced
code style checks compared to checkstyle.

Co-authored-by: pilino1234 <pilino@posteo.de>
2020-11-01 11:54:54 -05:00
Adam 20dec72416 spriteid: remove duplicated run icon 2020-10-31 15:18:29 -04:00
Adam d3c0713969 key remapping: don't remap space in options dialog
The options dialog never accepts space, so remapping a key to it doesn't make sense, and it is possible the original key was one of the keys actually being listened for
2020-10-30 14:44:20 -04:00
Adam 2dafade4d1 client: remove league chat icons plugin
Jagex have added this functionality to the new TB league
2020-10-28 10:45:58 -04:00
Adam 7c5123d230 gpu: remove unused lastViewportWidth/Height fields 2020-10-26 17:42:36 -04:00
Adam 8438b42e15 api: move isDead from NPC to Actor 2020-10-24 13:22:52 -04:00
Adam 93adb7ca75 xp tracker: default pause on logout to on 2020-10-21 23:36:44 -04:00