This commit adds `ImageUtil::resizeCanvas`, `ImageUtil::outlineImage`,
and `ImageUtil::fillImage`, and applies these functions to the clan
manager to replace the clan rank images with calls to `SpriteManager`.
This commit adds `ImageUtil::bufferedImageFromImage`,
`ImageUtil::alphaOffset`, `ImageUtil::grayscaleImage`, and
`ImageUtil::flipImage` functions and applies them to client and plugin
code to remove unneeded derivative images from the resources directory.
In addition to creating `colorTag`, `prependColorTag`, and
`wrapWithColorTag` functions, this commit moves
`SwingUtil::toHexColor` and `SwingUtil::colorLerp` to this new class.
Instead of exposing static variable provide launch properties to
dependant classes as bound constants in RuneLiteModule.
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Instead of requiring to create client from RuneLite just use Guice for
it and separate applet provider.
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
- Provide OkHttpClient through Guice instead of using it from static
variable
- Chain the RS classes with Guice and inject ClientLoader to RuneLite
class
- Cleanup RS loading classes a bit
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
Move screenshot to the next game tick after loading the interface. This
is needed to fix Hunter as it applies the widget text after it has
unhidden the widgets.
Co-authored-by: Magic fTail <runecnielsen3132@gmail.com>
There were several places where the autogenerated patch implementations would double count a stage, and miss another. PatchImplementationTest now checks for missed stages, excluding the final stage because that is often missed on plants which do not have a "Check-health" stage. There were also a couple produces with incorrect tick counts.
- Remove the usage of getOverlay and getOverlays
- Replace the overlay addition/removal with correct calls to
overlayManager.add and overlayManager.remove
- Update tests
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
- Split logic related to populating overlays to OverlayManager and
OverlayRenderer.
- Remove overlay-related logic from plugin, this is going to be handled
via OverlayManager.
- Inject core overlays to OverlayManager via new methods
Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This will allow the final two messages that are slightly different to still match. This will allow the last two uses of the bracelets to count as well.
General:
- Applied the design I proposed in issue #1342
- Applied custom component: MaterialTabs
- Removed default scrolling behaviour from parent PluginPanel
- Added error panels for empty searches and empty offer slots
- Added new formatter to the StackFormatter that displays integers
as rs stacks with decimals (21700 into 21.7k)
- Changed the Locale on the stack formatter and respective unit testing
to UK, this makes sure all tests are consistent with Travis (ex: i ran
the unit testing in europe, travis ran in the us, so it passed my tests,
failed his)
Offers:
- Refactored the GE offers into it's own seperate file:
GrandExchangeOffersPanel
- Redesigned the ge offers items
- Included the custom component ThinProgressBar on the bottom of each
ge item panel
- Added secondary information panel, toggled by clicking on the primary
panel
- Added a game state check that resets all ge offers on logout
Search:
- Recoloured and resized the search bar
- Added new icons to the search bar (incluing a loading wheel gif)
- Removed focus on the search bar when results are displayed
- Added custom scrolling behaviour
- Blocked input when search is in progress