Commit Graph
26 Commits
Author SHA1 Message Date
SomeoneWithAnInternetConnection f1751e21c3 Use a fieldhook for MenuEntryAdded events
The previously-hooked addMenuEntry method in runescape-client is one
that occasionally gets inlined which can cause weird breakages like
MenuEntryAdded not getting fired for menu entries defined in
ItemDefinitions. Hooking the menuOptionCount field should be more
reliable.

Fixes #936
2018-03-14 17:31:37 -04:00
SomeoneWithAnInternetConnection 205618634a Remove left click calling from BA plugin
Being able to spam left click without paying attention to what actually
needs to be called is overpowered. Until we come up with something
better (like binding the different calls to Ctrl, Alt, Ctrl+Alt) we
shouldn't offer this particular feature
2018-03-06 11:54:15 -05:00
SomeoneWithAnInternetConnection 926bc9374f Create Grand Exchange plugin
This plugin tracks the player's current GE offers, displaying them in a
sidebar panel. Based off of PR #193
2018-02-25 21:34:16 -05:00
SomeoneWithAnInternetConnection 971b10c26c runelite-api: Add Grand Exchange offer support
This includes a new event: GrandExchangeOfferChanged which is fired
whenever a grand exchange offer is updated, either manually by the
player, or as a result of the offer being fufilled (partially or
otherwise)
2018-02-25 19:57:52 -05:00
SomeoneWithAnInternetConnection 7705d17c27 Rename progress to state in GrandExchangeOffer
The field formerly known as "progress" encoded what state the offer was
in which is a weird 4-bit thing that includes information about whether
the offer is a buy or sell offer, whether it's finished, and some other,
less well-defined info about (what seems to be) the offer's live-ness.
How close an offer is to being finished (ie its progress) is only really
based on how many items have bought/sold out of the total amount
requested/offered.
2018-02-25 19:55:00 -05:00
SomeoneWithAnInternetConnection 9b50f16339 Expose isStackable on ItemComposition objects 2018-02-25 19:55:00 -05:00
SomeoneWithAnInternetConnection b3356ea5a2 Fix NPEs from BoostsPlugin at startup
shownSkills wasn't being initialized until it received ConfigChanged
event, causing a NullPointerException when the overlay tried to iterate
over shownSkills
2018-02-02 05:38:08 -05:00
SomeoneWithAnInternetConnection 924fc9c8ae Fix boosts plugin style nits 2018-02-02 05:19:35 -05:00
SomeoneWithAnInternetConnection c7aaa1aa36 Add agility plugin 2018-02-01 19:36:38 -05:00
SomeoneWithAnInternetConnection 69fce20e96 Add events for Decorative and Ground TileObjects
For the agility plugin:
* Some tightropes are GroundObjects
* The last "obstacle" (a gate) in the penguin course is a WallObject
2018-02-01 19:36:31 -05:00
SomeoneWithAnInternetConnection 9eb5dfbf73 Add method to get the clickable area of a TileObject
getClickbox returns an AWT Area object which corresponds to theclickable area of a GameObject, GroundObject, DecorativeObject or WallObject.

getClickbox for ItemLayers isn't implemented, since I haven't looked into how clickabilty works for items on the ground in the client.
2018-02-01 19:36:29 -05:00
SomeoneWithAnInternetConnection f2cc543dc7 Move orientation incantation into Vertex.rotate
Everywhere that Vertex#rotate was called, the orientation was rotated by 180 degrees first.
2018-02-01 19:24:11 -05:00
SomeoneWithAnInternetConnection e396f37926 Simplify Triangle and Vertex with lombok 2018-02-01 19:24:03 -05:00
SomeoneWithAnInternetConnection 21348414b6 Include unit prices in examine messages
Fixes #495
2018-01-29 18:22:32 -05:00
SomeoneWithAnInternetConnection 8e7e37812e Remove unused import 2018-01-29 15:48:57 -05:00
SomeoneWithAnInternetConnection e9e01c18f4 Add bounding/clickbox buttons to the devtools plugin
The first button (yellow square) will toggle drawing of 2D bounding boxes

The second button (RGB cubeframe) will toggle 3D bounding box drawing

The third button (cursor over red square) will toggle clickbox geometry
  drawing

The fourth button (cursor over cubeframe) switches between "draw all 3D
bounding boxes" and "draw bounding box for object under cursor" modes of
the 3D bounding box drawing.

T
2018-01-22 18:46:51 -05:00
SomeoneWithAnInternetConnection 74ae39258e Expose runescape click/boundingbox display mode 2018-01-22 18:46:47 -05:00
SomeoneWithAnInternetConnection 2f72f5861b Add metronome plugin
It alternately ticks or tocks, each game tick. Disabled by default.
2018-01-22 11:58:05 -05:00
SomeoneWithAnInternetConnection cf7f534580 Add collection of named SoundEffect IDs 2018-01-22 11:56:29 -05:00
SomeoneWithAnInternetConnection 560b169e68 Implement sound-playing API
There's no playSoundEffect-equivalent method in the actual client code.
Instead, the client just adds some values to the 4 sfx arrays, removes
any old queued sound effects, and then bumps the counter, which is what
I've done as well.
2018-01-22 11:55:27 -05:00
SomeoneWithAnInternetConnection 7073ae83d0 Prevent cursor icon from getting stuck as the wrong shape
Once its gotten close to the edge of the window, my cursor will usually
get stuck as one of the resize arrows rather than change back to a
normal cursor.  It looks like Substance gets confused about what the
last cursor was, and starts "restoring" one of the resize cursors,
instead of the pointer, when the cursor moves back away from the edge of
the window. Setting the cursor for the frame's LayeredPane fixes the
problem.
2018-01-05 13:31:58 -05:00
SomeoneWithAnInternetConnection 03bfb535f3 Reduce clearRect calls to improve framerate
This change improves the framerate in resizable mode by 10-15 fps by
reducing the amount of screen clearing done while drawing overlays.
2018-01-04 21:52:10 -05:00
SomeoneWithAnInternetConnection a6e275e910 Add tests for archetype-plugin compilability
This should make sure that the example plugin archetype is compilable.
The test seems to fail in IDEA, but runs fine from a terminal :/
2017-12-21 08:42:09 -05:00
SomeoneWithAnInternetConnection 39ea262d32 Actually fix example plugin archetype
The previous fix introduced an import conflict: java.awt.Point and
net.runelite.api.Point
2017-12-21 08:41:40 -05:00
SomeoneWithAnInternetConnection 9e8b524eb1 Fix example plugin to use the new overlay API
PR #246 changed the API for overlays slightly. This change fixes the
maven archetype plugin to match
2017-12-16 18:01:10 -05:00
SomeoneWithAnInternetConnection aad76b9bab Fix IllegalArgumentExceptions from XPGlobes' tooltips for level 1 stats
To draw the progress bar, XPGlobesOverlay.drawTooltipIfMouseover() uses
Experience.getXPForLevel(), which threw an IllegalArgumentException when
asked about level 1. This change shifts the XP_FOR_LEVEL array over by
one, so that XP_FOR_LEVEL[0] is the XP required to reach level 1 (i.e. 0),
rather than the XP required for level 2.
2017-12-16 16:09:58 -05:00