From d89f8740fd3f75da86ea4e4f06f0f3a455fd3f23 Mon Sep 17 00:00:00 2001 From: Ferreira Christopher Date: Fri, 24 Aug 2012 17:13:46 +0200 Subject: [PATCH] Add Timer#start method --- .../java/fr/aumgn/bukkitutils/timer/Timer.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/main/java/fr/aumgn/bukkitutils/timer/Timer.java b/src/main/java/fr/aumgn/bukkitutils/timer/Timer.java index a40c635..61bd2b7 100644 --- a/src/main/java/fr/aumgn/bukkitutils/timer/Timer.java +++ b/src/main/java/fr/aumgn/bukkitutils/timer/Timer.java @@ -57,6 +57,10 @@ private void scheduleAndPrintTime(int delay) { long minutes = TimeUnit.SECONDS.toMinutes(remainingTime); String msg = String.format(format, minutes, remainingTime % 60); sendTimeMessage(getCurrentColor() + msg); + schedule(delay); + } + + private void schedule(int delay) { currentDelay = delay; watch = new Stopwatch(); watch.start(); @@ -78,6 +82,19 @@ public int getRemainingTime() { return remainingTime; } + public void start() { + remainingTime -= currentDelay; + if (remainingTime > majorDelay) { + schedule(majorDelay); + } else if (remainingTime > minorDelay) { + schedule(minorDelay); + } else if (remainingTime > 0) { + schedule(1); + } else { + runnable.run(); + } + } + @Override public void run() { remainingTime -= currentDelay;