Fix/bank empty containers widget - #1866
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. Walkthrough
Priority: ➖ Normal Merge Risk: ⚪ Minimal · up to The fix enables emptyContainers() to activate the correct bank action and is ready to merge. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Rs2Bank.emptyContainers() clicked widget 786471, which decodes to (12,39) - a non-interactable LINE decoration in the bank interface, not a button. The call failed silently rather than loudly: getWidget() returned non-null so the null guard passed, clickWidget() dispatched against a widget with no actions, and the method still returned true. Callers saw success and no containers were ever emptied. Use InterfaceID.Bankmain.DEPOSITCONTAINERS = (12,45) instead. Verified against a live client at the Grand Exchange: (12,45) is the GRAPHIC carrying the "Empty containers" action with interactable: true, while (12,39) reports type LINE with an empty action list. emptyContainers() has no in-tree callers but is public API surface, so every external script calling it has been a no-op. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
8c95d43 to
16fe594
Compare
Rs2Bank.emptyContainers() was clicking the wrong thing. The ID it used pointed at a decorative line in the bank window instead of the button, so nothing was ever emptied - and the method still reported success.
Tested in game: a coal bag holding 27 coal now empties into the bank.