diff --git a/src/gibstick/bukkit/discosheep/DiscoSheep.java b/src/gibstick/bukkit/discosheep/DiscoSheep.java index 93c15b3..85007cf 100644 --- a/src/gibstick/bukkit/discosheep/DiscoSheep.java +++ b/src/gibstick/bukkit/discosheep/DiscoSheep.java @@ -1,6 +1,7 @@ package gibstick.bukkit.DiscoSheep; import java.util.ArrayList; +import java.lang.Math; import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.entity.Sheep; import org.bukkit.Location; @@ -20,7 +21,7 @@ public final class DiscoSheep extends JavaPlugin { @Override public void onDisable() { - // Watashi Wa Kawaii, Ne? + // Watashi Wa Kawaii, Ne? } public void spawnSheep(World world, Location loc) { @@ -29,16 +30,26 @@ public final class DiscoSheep extends JavaPlugin { newSheep.setHealth(10000); sheepArray.add(newSheep); } - + // Spawn some number of sheep next to given player public void spawnSheep(Player player, int num) { Location loc; - + World world = player.getWorld(); + for (int i = 0; i < num; i++) { + double x, y, z; + + // random x and z coordinates within a 5 block radius + // safe y-coordinate + x = -5 + (Math.random() * ((5 - (-5)) + 1)) + player.getLocation().getX(); + z = -5 + (Math.random() * ((5 - (-5)) + 1)) + player.getLocation().getZ(); + y = world.getHighestBlockYAt((int) x, (int) z); + loc = new Location(world, x, y, z); + spawnSheep(world, loc); } } - + // Mark all sheep in the sheep array for removal public void removeAllSheep() { for (int i = 0; i < sheepArray.size(); i++) { @@ -46,42 +57,11 @@ public final class DiscoSheep extends JavaPlugin { } sheepArray.clear(); } - + // Cycle colours of all sheep in the array public void cycleSheepColours() { for (int i = 0; i < sheepArray.size(); i++) { //sheepArray.get(i) something something } - } - - public void playSounds(){ - // TODO: generate list of players to send sounds to - } - - public void playSounds(Player player){ - //TODO: Add sound playing here - } - - /* - Called after discosheep is stopped - */ - public void cleanUp(){ - removeAllSheep(); - } - - void scheduleUpdate(){ - updater.runTaskLater(updater,frequency); - } - - public void startDisco(int frequency, int duration){ - updater.start(frequency, duration); - } - - public void startDisco(){ - this.startDisco(); - } - - public void stopDisco(){ - updater.stop(); - } + } } diff --git a/src/gibstick/bukkit/discosheep/DiscoUpdater.java b/src/gibstick/bukkit/discosheep/DiscoUpdater.java index d152def..7c92912 100644 --- a/src/gibstick/bukkit/discosheep/DiscoUpdater.java +++ b/src/gibstick/bukkit/discosheep/DiscoUpdater.java @@ -32,4 +32,36 @@ public class DiscoUpdater extends BukkitRunnable{ this.stop(); } } -} \ No newline at end of file +} + +/* + + public void playSounds(){ + // TODO: generate list of players to send sounds to + } + + public void playSounds(Player player){ + //TODO: Add sound playing here + } + + // Called after discosheep is stopped + public void cleanUp(){ + removeAllSheep(); + } + + void scheduleUpdate(){ + updater.runTaskLater(updater,frequency); + } + + public void startDisco(int frequency, int duration){ + updater.start(frequency, duration); + } + + public void startDisco(){ + this.startDisco(); + } + + public void stopDisco(){ + updater.stop(); + } +*/ \ No newline at end of file