Commit Graph
100 Commits
Author SHA1 Message Date
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
Adam 9fc8f19c32 pluginhub controller: fix scheduled task delay
This was meant to be 30 minutes
2020-10-21 10:20:47 -04:00
Adam 6457681c55 progress bar: optimize bar drawing
It is not necessary to draw the full bar background since it is immediately drawn over by the foreground
2020-10-17 19:36:36 -04:00
Adam 9214480a02 xptracker: change online tracker link to wiseoldman 2020-10-17 16:45:09 -04:00
Adam 7a6c4ecc51 Add pluginhub user count tracking 2020-10-17 11:50:53 -04:00
Adam a2d693fc74 chat commands: unregister bh and lms commands 2020-10-16 13:06:34 -04:00
Adam dc414b1adf ground markers: add tile labels 2020-10-06 20:09:03 -04:00
Adam c0a57a62e8 gpu: dispose of graphics objects 2020-10-05 18:26:24 -04:00
Adam 2f91100f17 examine plugin: format quantity of large item stacks 2020-10-05 09:39:22 -04:00
AdamandSirGirion dadee6e4b0 item charges: fix resetting dodgy necklace, ring of forging, and amulet of chemistry
Co-authored-by: SirGirion <seallproducts@gmail.com>
2020-10-03 10:48:04 -04:00
Adam e2399fe176 key manager: move key event logging to trace level
This is way too chatty and is debug logging eg. passwords on the login screen. Instead log when a key is consumed at debug level.
2020-10-03 10:42:55 -04:00
AdamandJordan Atwood bf4173c45f config: Add infobox component outline option
Co-authored-by: Jordan Atwood <jordan.atwood423@gmail.com>
2020-10-02 18:12:25 -04:00
Adam 1799c9e593 loottracker: submit loot when not logged in
This is to aid the wiki drop log project. The data is not otherwise
stored.
2020-10-01 18:31:39 -04:00
Adam 9c8ba5a008 Merge pull request #12575 from cubemike99/add_clean_swap
menu entry swapper: add clean swap
2020-10-01 10:37:41 -04:00
Adam 34c8bfb2f4 gpu: use noperspective for hsl interpolation
Prior to 8c00f6da88 the interpolation of fragment
shader inputs appears to not have been accounting for perspective. This broke
texturing due to the texture ids being interpolated for perspective which was
fixed in 47e0ac8032. The hsl values similarly
require not accounting for perspective, so the noperspective interpolation
qualifier has been added. It is unclear to me why the geometry shader removal
would affect the interpolation like this since it was emitting vertices with
the correct z values.
2020-09-30 20:34:08 -04:00
Adam 475e463692 Merge pull request #12472 from Nightfirecat/fix-experience-tests-location
Move Experience tests to proper test class
2020-09-30 17:18:19 -04:00
Adam 782e2db580 slayer plugin: simplify a few regex patterns 2020-09-30 10:56:26 -04:00
AdamandJonathan Lee c774117d93 loot tracker: fix tracking grubby chest
Co-authored-by: Jonathan Lee <cookmeplox@weirdgloop.org>
2020-09-28 20:16:33 -04:00
AdamandRon Young 908c6b4fe4 infobox: add support for multiple infobox groups
Co-authored-by: Ron Young <admin@ryoung.io>
2020-09-27 10:20:14 -04:00