Rigged089 Posted April 8, 2015 Share 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! Quote Link to comment Share on other sites More sharing options...
Mysteryy Posted April 8, 2015 Share Posted April 8, 2015 Try catch 1 Quote Link to comment Share on other sites More sharing options...
Rigged089 Posted April 8, 2015 Author Share Posted April 8, 2015 Thanks i tried it but that's not what's causing the issue! >> Quote Link to comment Share on other sites More sharing options...
The Hero of Time Posted April 8, 2015 Share 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 } Quote Link to comment Share on other sites More sharing options...
Tom Posted April 8, 2015 Share 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 Quote Link to comment Share on other sites More sharing options...
Mysteryy Posted April 8, 2015 Share 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. Quote Link to comment Share on other sites More sharing options...
FrostBug Posted April 8, 2015 Share 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 Quote Link to comment Share on other sites More sharing options...
Rigged089 Posted April 9, 2015 Author Share 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 Quote Link to comment Share on other sites More sharing options...