Misc fixes for DiscoUpdater

This commit is contained in:
Charlie Wang 2013-06-30 14:09:30 -04:00
parent 61dcce06dd
commit 8533b007e3

View File

@ -1,14 +1,17 @@
package gibstick.bukkit.discosheep;
import gibstick.bukkit.DiscoSheep.DiscoSheep;
import org.bukkit.scheduler.BukkitRunnable;
public class DiscoUpdater extends BukkitRunnable { public class DiscoUpdater extends BukkitRunnable {
private final int defaultDuration = 1000;// ticks private final int defaultDuration = 1000;// ticks
private final int defaultFrequency = 20;// ticks per state change private final int defaultFrequency = 20;// ticks per state change
int frequency = 0, duration = 0; int frequency = 0, duration = 0;
private DiscoSheep parent; private DiscoSheep parent;
public DiscoUpdater(DiscoSheep parent) { public DiscoUpdater(DiscoSheep parent) {
this.parent = parent; this.parent = parent;
} }
public void stop() { public void stop() {
@ -18,16 +21,17 @@ public class DiscoUpdater extends BukkitRunnable{
public void start(int duration, int frequency) { public void start(int duration, int frequency) {
this.frequency = this.defaultFrequency; this.frequency = this.defaultFrequency;
this.durtion = this.defaultDuration; this.duration = this.defaultDuration;
parent.scheduleUpdate(); parent.scheduleUpdate();
} }
@Override
public void run() { public void run() {
if (duration > 0) { if (duration > 0) {
cycleSheepColours(); parent.cycleSheepColours();
playSounds(); parent.playSounds();
duration -= frequency; duration -= frequency;
parent.scheduleUpdate(this); parent.scheduleUpdate();
} else { } else {
this.stop(); this.stop();
} }