Java 布尔值始终为真

Java 布尔值始终为真,java,Java,这是第一节课: package Chatter; public class Timer { private long period; private long start; private long CurrentTime = System.currentTimeMillis(); public Timer(long period) { this.period = period; start = System.currentTimeMillis(); } publi

这是第一节课:

package Chatter;



 public class Timer
{

private long period;
private long start;
private long CurrentTime = System.currentTimeMillis();

public Timer(long period)
{
    this.period = period;
    start = System.currentTimeMillis();
}

public long getElapsed()
{
    return System.currentTimeMillis() - start;
}

public long getRemaining()
{
    return period - getElapsed();
}

public boolean isRunning()
{
    return getElapsed() <= period;
}

public long TimetoExcucte(int Seconds){
    return CurrentTime + (Seconds * 1000);
}

public boolean Reached(int Seconds){
    return System.currentTimeMillis() > TimetoExcucte(Seconds);
    keyboard.typeString("Test", true);
}

public void reset()
{
    start = System.currentTimeMillis();
}

public void stop()
{
    period = 0;
}

public static String format(long milliSeconds)
{
    long secs = milliSeconds / 1000L;
    return String.format("%02d:%02d:%02d", new Object[] {
        Long.valueOf(secs / 3600L), Long.valueOf((secs % 3600L) / 60L), Long.valueOf(secs % 60L)
    });
}
}
这是第二节课:

    package Chatter;

import java.util.List;
import Chatter.Timer;


import org.osbot.rs07.api.ui.Message;
import org.osbot.rs07.script.Script;

import org.osbot.rs07.script.ScriptManifest;




@ScriptManifest(name="Chatter", author="Chatter", version=1, info="Chatter", logo="")
public class Chatter extends Script{
private static long Lastime = 0;
private Dialogue Dialogue;
boolean said;
int Index;
Timer runTimer;

public void onStart() throws InterruptedException {
    runTimer = new Timer(0);

}

public int onLoop() throws InterruptedException {

    if(runTimer.Reached(5)){
        keyboard.typeString("Hoi", true);
    }else{
        log("Waiting");
    }

    return 500;
}

private void Respond() throws InterruptedException {
    //Message sending method
    if(said == true){
        sleep(random(2000,4500));
        Dialogue = new Dialogue();
        List<String> RespondSpeach = Dialogue.getNumberList1();
        keyboard.typeString(RespondSpeach.get(Index) , true);
        said = false;
    }
}

public void onMessage(Message m) throws InterruptedException {
    //Message recieveing method
    if(m.getUsername().equalsIgnoreCase(""))
        Dialogue = new Dialogue();
     List<String> ReceivedSpeach = Dialogue.getNumberList();
    for (String word : ReceivedSpeach){
        if (m.getMessage().contains(word)){
            Index = ReceivedSpeach.indexOf(word);
            said = true;
        }
    }
}

}
第一个类是timer,它作为它的名字生成一个timer,我想做的是让脚本每5秒执行一个动作

这个脚本在Osbot上运行,我想执行的操作是每5秒进行一次脚本编写测试,但是脚本会继续进行垃圾邮件测试
如何使布尔值每5秒工作一次,而不是滥发信息?

Keyboard.typeString在REACH函数的返回调用后被调用,这意味着它永远不会被调用。试着把它移到正确的地方


为误解而编辑

显示您的实际代码。那个代码不会编译,所以它不是真正的代码。这个代码不能编译。键盘测试;无法访问。添加的完整类都使用毫秒,在第一个类中秒数乘以1000