Rigged089 Posted April 8, 2015 Posted April 8, 2015 I've spent ages writing my first script in java but for nearly all my methods I get these errors (example): C:\Users\xxx\Documents\JCreator Pro\MyProjects\1main.java:107: error: illegal start of expression public void deposit() //throws InterruptedException ^ C:\Users\xxx\Documents\JCreator Pro\MyProjects\1\main.java:107: error: ';' expected public void deposit() //throws InterruptedException the start of this method is what is causing the errors as well as the other methods in the class. public void deposit() throws InterruptedException { Entity bank1 = objects.closest("Bank booth"); if (bank1 != null) { while(!this.bank.isOpen()) { bank1.interact("Bank"); sleep(random(100, 220)); } if (this.bank.isOpen()) { this.bank.depositAllExcept(995); sleep(random(50, 160)); this.bank.withdrawAll(xxxx); sleep(random(50, 160)); } } } It just doesn't make any sense and I can't find the issue... Moreover, will this deposit method successfully deposit and withdraw? Any advice is highly appreciated thank you!
Rigged089 Posted April 8, 2015 Author Posted April 8, 2015 Thanks i tried it but that's not what's causing the issue! >>
The Hero of Time Posted April 8, 2015 Posted April 8, 2015 as stated by mysteryy try { this will execute, if there are any errors that would normally quit the application/script/whatever, it will go to the catch } catch(Exception ex) { //this is what happens when try gave an error }
Tom Posted April 8, 2015 Posted April 8, 2015 (edited) Your method wont work that well, because you are never closing the bank. Conditional sleeps work good with this ive noticed. public void deposit() throws InterruptedException { if(!bank.isOpen(){ bank.open() new ConditionalSleep(3000) { @Override public boolean condition() throws InterruptedException { return bank.isOpen(); } }.sleep(); } bank.depositAllExcept("Coins"); sleep(random(150,300)); bank.close(); } } Also, your class name is a bit weird 1main.java? Rename is to main.java, youl have to rename the class inside the code as well from public 1main to public main near the top. I think this is just a convention, but you should still do it. Edited April 8, 2015 by Mykindos
Mysteryy Posted April 8, 2015 Posted April 8, 2015 Thanks i tried it but that's not what's causing the issue! >> Try catch then remove the throws from the method.
FrostBug Posted April 8, 2015 Posted April 8, 2015 (edited) The error is not located in the provided code; most probably something above it EDIT: throwing interruptedexception should not be the issue Edited April 8, 2015 by FrostBug
Rigged089 Posted April 9, 2015 Author Posted April 9, 2015 I've fixed it. turns out I had a missing } somewhere in my getcase method. Thanks for your help nonetheless. 1