我正在尝试制作一个称为计时器的类。我的角色进入敌人的区域时,应该调用计时器类。计时器类应该每5秒将字符健康降低10个健康点。香港专业教育学院尝试了多个不同的计时器,但我似乎无法正确地使用它们。当我尝试删除健康但它并没有执行一次时,它一直重复执行直到健康栏退出屏幕为止。这是我的代码:
class Timer {
g = new gubbe();
gubbe g;
Timer timer = new Timer(3000, new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
g.RemoveHealth();
}
});
timer.setRepeats(false);
timer.start();
}
到目前为止,这就是我要提出的。如果需要更多代码,请询问。
这是您可以用来安排活动时间的课程:
class Delay {
protected int limit;
public Delay() {limit = millis();}
public Delay (int l) {
limit = millis() + l;
}
public boolean expired () {
if (millis() > limit) { return true; }
return false;
}
}
要每5秒检查一次,您必须像这样初始化它:
Delay _delay;
void setup() {
_delay = new Delay(5000);
}
void draw() {
if (_delay.expired()) {
//do something
_delay = new Delay(5000);
}
}
5000以毫秒为单位,因此表示5秒。如果要检查1秒延迟,则改为1000。延迟结束后,我们将对其进行初始化,以便在5秒后再次触发。
玩得开心!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句