Add custom background option and improve performance
Changes:
- Adds a "Tiled Custom Image" option to the background modes.
- Users can now provide an absolute file path to a custom image to be used as a tiled background for the side panel gap.
- Performance: Implements a background caching system for the side panel overlay. Instead of re-rendering the tiled background on every frame, the entire background is drawn to a cached image once.
- This cached image is only redrawn when necessary (e.g., on window resize or config change), resolving significant FPS drops.
Documentation: The README.md has been updated for clarity and additions.
* Update fixed-resizable-hybrid
- Updated to using InterfaceID from depracated ComponentID
- Fixed skill info widget alignment
- Added configurable warning to tell users when their inventory is transparent
* Update fixed-resizable-hybrid
- Updated to using InterfaceID from depracated ComponentID
- Fixed skill info widget alignment
- Added configurable warning to tell users when their inventory is transparent
* Update fixed-resizable-hybrid
- Added failsafe trigger for plugin initialization, fixing bug affecting world hopping from instances and hopping to PvP arena worlds
- Decoupled transparency warning from the gap borders
- Uncommented excess debug logs
* Update fixed-resizable-hybrid
- Added More Ship Cutscene compatibility
- Added Hot Air Balloon compatibility
Stats Guide Centering
- When a stat is clicked on and the guide appears, it will center it on the viewport, like with most other widgets (e.g. bank interface)
- Restructured some of the code for onWidgetLoad/Unload, should keep the same functionality
Option to reposition minimap orbs
- Resizable mode has a larger minimap than fixed mode in the III and IV quadrants. This adds an optional setting to move the run and spec orbs slightly further away to prevent click-through (where clicking run also clicks on the minimap, moving the character)
Failsafe sprite loader
- Rarely, the minimap sprites fail to load. This adds a fail-safe check when inventory tabs are changed to ensure that the widgets are loaded, assuming the game is in fixed-resizable mode.
* Update fixed-resizable-hybrid
Improvements to Cutscene Handling and Wide Chatbox
- Switched wide chatbox from using overlays to instead using widgets, allowing for interface styles or resource packs to be compatible with the chatbox.
- Added option for repositioning chat buttons in wide chatbox mode (stretched vs centered options).
- Generalized fixFairyWidget function to also fix other widgets with dynamic/full screen backgrounds (e.g. canoe)
- Added cutscene handling (varbit 542) which allows for widget positioning during cutscenes. This also prevents the inventory widget from being hidden similar to in fixed mode.
Improved ingame overlay handling
- TOB party overlay bounding restriction
- MTA clipping
Properly handling transparent chatbox
- Prevents viewport resizing when chatbox is transparent.
- Expands height of viewport to extend under the chat buttons in transparent chatbox.
Default Config Settings
- set centerChatboxButtons to true by default
Restored border overlay png file (deleted by accident)
- also updated overlay to only load the image once (static final)
* Update fixed-resizable-hybrid
Also remove unused import / keymanager
* Update fixed-resizable-hybrid
- Improved Overlay Dimensions (e.g. fairy ring background overlap, minigames like Volcanic Mine)
- Fixed some interface backgrounds on the wide chat mode and added more script triggers to catch more cases that were missed before.
* Update fixed-resizable-hybrid
- removed leftover log.info() uses
* Update fixed-resizable-hybrid
- Changed gap widget to gap overlay to prevent overlays from rending through. Updated to be static final to prevent reloading resource images every frame.
- Added Wide Chat Mode, which stretches the chat and dialogue across the bottom of the viewport like in fixed mode. When open, it resizes the viewport to recenter the player on what is visible. Configurable in settings.
* Update fixed-resizable-hybrid
Added more customizable config options.
- Customizable aspect ratio resizing. With further options to resize by width vs height.
- Customizable viewport resizing with wide chatbox enabled.
Also cleaned up window resizing code.
* Create fixed-resizable-hybrid
* Update fixed-resizable-hybrid
Added a gap filler for atypical aspect ratios or when people aren't using stretched mode and the client height >503.
* Update fixed-resizable-hybrid
Used componentID wherever possible. Cleaned up some function code.