This is my open bank method.
public void openBank() throws InterruptedException {
NPC banker = getNpcs().closest("Banker");
if(!bank.isOpen()) {
if (banker != null && banker.isVisible()) {
banker.interact("Bank");
} else {
getBank().open();
}
Timing.waitCondition(() -> bank.isOpen(),6000);
sleep(random(300,600));
}
}
It has a conditional sleep and it still happens sometimes. The same for opening Grand Exchange, it opens it and closes it 2/3 times.
It even accidently pressed on the banker NPC opening a dialoge and not opening the bank. There is also a bug in the buyItem method for the GE.
Not always 3, sometimes even 4. I'll try to record it.
I don't really want to add a conditional sleep to every method which requires to open a interface if there's another option.
The weird part is that it also closes the interface, why should it? When calling the openBank() method, does it automatically close and reopen it?