package me.km.scheduler; public class SnuviTask { private final long rtimer; private final Runnable r; private long timer; private String name; private boolean killable; public SnuviTask(String name, boolean killable, Runnable r, long delay, long rtimer) { this.killable = killable; this.name = name; this.rtimer = rtimer; this.timer = delay; this.r = r; } public long getRepeatTimer() { return rtimer; } public boolean isRepeating() { return rtimer > 0; } public String getName() { return name; } public boolean isKillable() { return killable; } public boolean tick(int ticks, boolean noRepeat) { timer -= ticks; if(timer <= 0) { r.run(); if(rtimer <= 0 || noRepeat) { return true; } timer = rtimer; } return false; } }