Acinate Posted March 31, 2015 Share Posted March 31, 2015 (edited) Looking to create a method which executes upon a certain amount of time e.g. : if(!myPlayer.isMoving() [for 30 seconds] ) { } any ideas? EDIT------ Here is what I'm thinking: case LOST:log("MIA");timeOut = System.currentTimeMillis();if(!myPlayer().isMoving() && timeOut == 30000) {log("TIMEOUT");getLocalWalker().walk(YEW_AREA,true);} So basically the case gets called, will timeOut start timing when case LOST is called or at beginning of script? UPDATE: not working lol, need some direction pls Edited March 31, 2015 by Acinate Quote Link to comment Share on other sites More sharing options...
Precise Posted March 31, 2015 Share Posted March 31, 2015 (edited) Looking to create a method which executes upon a certain amount of time e.g. : if(!myPlayer.isMoving() [for 30 seconds] ) { } any ideas? EDIT------ Here is what I'm thinking: case LOST: log("MIA"); timeOut = System.currentTimeMillis(); if(!myPlayer().isMoving() && timeOut == 30000) { log("TIMEOUT"); getLocalWalker().walk(YEW_AREA,true); } So basically the case gets called, will timeOut start timing when case LOST is called or at beginning of script? UPDATE: not working lol, need some direction pls You are getting the current time In milliseconds right? When will it ever equal 30000, it won't so you need to add a method called getElapsed(startTime); which will return system.currentTimeMillsecs() - startTime; Once you have the time elapsed you want to change it from being ==30000 to >= 30000 due to the chances of it beng exactly 30000 millisecs when that if statement executes are very low. (All typed on phone so coding and typos please excuse) Edited March 31, 2015 by Precise 1 Quote Link to comment Share on other sites More sharing options...
Extreme Scripts Posted March 31, 2015 Share Posted March 31, 2015 Implementing what @Precise said: public long getElapsed(long startTime){ return System.currentTimeMillis() - startTime; } if(getElapsed(startTime) >= 30000){ //code to execute startTime = System.currentTimeMillis() // resetting the start timer } 2 Quote Link to comment Share on other sites More sharing options...
Precise Posted March 31, 2015 Share Posted March 31, 2015 Implementing what Apaec said: public long getElapsed(long startTime){ return System.currentTimeMillis() - startTime;}if(getElapsed(startTime) >= 30000){//code to executestartTime = System.currentTimeMillis() // resetting the start timer} Where is apaec? 2 Quote Link to comment Share on other sites More sharing options...
Extreme Scripts Posted March 31, 2015 Share Posted March 31, 2015 Where is apaec? Oooooops editted ^_^ 1 Quote Link to comment Share on other sites More sharing options...