nills3 Posted September 9, 2020 Posted September 9, 2020 (edited) Got it working now, thank you for the contribution. This has made me scratch my head for a while now.. RS2Widget wid = getWidgets().get(162, 53, 2); if (wid != null && wid.isVisible()) { if (wid.getMessage() == "Leather") { widget = "Widget is visible and text is leather"; } else { widget = "Widget is visible but text is " + wid.getMessage(); } } else { widget = "Widget is not visible"; } Notice the "Widget is visible BUT text is Leather". wid.getMessage() returns Leather so I don't understand what the issue is. Anybody has any idea? EDIT: Now this issue has appeared. I'm also having trouble interacting with widgets (as you can see above). getKeyboard().typeString("5"); getKeyboard().typeEnter(); //Tried this method aswell a few days ago and it worked fine. Until now getKeyboard().pressKey((char) KeyEvent.VK_ENTER); getKeyboard().releaseKey((char) KeyEvent.VK_ENTER); Why am I having these weird issues? Edit again: Ok so turns out this simple code works out when I use it in a basic script class that I use purely for bugtesting. But within my code it wont work. Alot of random sleeps I know it's just because I couldn't get a hang of it. RS2Widget pSearch = getWidgets().get(162, 53, 2); if (pSearch != null && pSearch.isVisible()) { logs = "pSearch finns"; log("pSearch inte"); getMouse().move(random(220, 306), random(373, 388)); getMouse().click(false); sleep(random(300, 600)); } else { logs = "pSearch finns inte"; log("pSearch finns inte"); sleep(random(500, 800)); getKeyboard().typeString("leat"); sleep(random(500, 700)); getMouse().move(random(351, 403), random(371, 396)); getMouse().click(false); sleep(random(500, 700)); } getMouse().move(random(224, 246), random(203, 220)); //sleep(random(300, 600)); getMouse().click(false); // sleep(random(300, 600)); getKeyboard().typeString("5"); sleepR(); getKeyboard().typeEnter(); getKeyboard().pressKey((char) KeyEvent.VK_ENTER); getKeyboard().releaseKey((char) KeyEvent.VK_ENTER); sleepR(); sleep(random(300, 600)); getMouse().move(random(250, 269), random(280, 295)); sleepR(); getMouse().click(false); Edited September 9, 2020 by nills3
Eagle Scripts Posted September 9, 2020 Posted September 9, 2020 (edited) https://www.geeksforgeeks.org/difference-equals-method-java/#:~:text=equals() method for content,of values in the objects.&text=Explanation%3A Here we are creating two objects namely s1 and s2. You're checking whether both Strings are pointing to the same memory location, as opposed to comparing their contents. Use #equals or #equalsIgnoreCase instead of ==. Edited September 9, 2020 by Eagle Scripts 4
nills3 Posted September 9, 2020 Author Posted September 9, 2020 21 minutes ago, Eagle Scripts said: https://www.geeksforgeeks.org/difference-equals-method-java/#:~:text=equals() method for content,of values in the objects.&text=Explanation%3A Here we are creating two objects namely s1 and s2. You're checking whether both Strings are pointing to the same memory location, as opposed to comparing their contents. Use #equals or #equalsIgnoreCase instead of ==. Cheers mate, finally. 1