diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/deathtag/DeathTag.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/deathtag/DeathTag.java index 3aab5f651..bf442b976 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/deathtag/DeathTag.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/deathtag/DeathTag.java @@ -1,7 +1,9 @@ package nautilus.game.arcade.game.games.deathtag; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; +import java.util.List; import org.bukkit.Bukkit; import org.bukkit.ChatColor; @@ -26,6 +28,7 @@ import nautilus.game.arcade.GameType; import nautilus.game.arcade.events.GameStateChangeEvent; import nautilus.game.arcade.game.GameTeam; import nautilus.game.arcade.game.SoloGame; +import nautilus.game.arcade.game.Game.GameState; import nautilus.game.arcade.game.GameTeam.PlayerState; import nautilus.game.arcade.game.games.deathtag.kits.*; import nautilus.game.arcade.game.games.sneakyassassins.powerups.PowerUpManager; @@ -377,4 +380,36 @@ public class DeathTag extends SoloGame return 0; } + + @Override + public List getWinners() + { + if (GetState().ordinal() >= GameState.End.ordinal()) + { + List places = _runners.GetPlayers(true); + + if (places.isEmpty() || !places.get(0).isOnline()) + return Arrays.asList(); + else + return Arrays.asList(places.get(0)); + } + else + return null; + } + + @Override + public List getLosers() + { + if (GetState().ordinal() >= GameState.End.ordinal()) + { + List places = _chasers.GetPlayers(true); + + if (places.isEmpty() || !places.get(0).isOnline()) + return Arrays.asList(); + else + return Arrays.asList(places.get(0)); + } + else + return null; + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/draw/DrawRound.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/draw/DrawRound.java index 32e19384c..a29d72d59 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/draw/DrawRound.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/draw/DrawRound.java @@ -56,6 +56,9 @@ public class DrawRound //Word if (kit != null && kit instanceof KitSelector) { + //Silence + Host.Manager.GetChat().Silence(12000, true); + WordChoices = new ArrayList(); while (WordChoices.size() < 3) @@ -93,6 +96,8 @@ public class DrawRound Time = System.currentTimeMillis(); UtilPlayer.message(Drawer, C.cWhite + C.Bold + "You must draw: " + C.cGreen + C.Bold + Word); + + Host.Manager.GetChat().SilenceEnd(); } public boolean Guessed(Player player) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/Quiver.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/Quiver.java index 8d95abeee..107a0ef9b 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/Quiver.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/Quiver.java @@ -1,7 +1,9 @@ package nautilus.game.arcade.game.games.quiver; import java.util.ArrayList; +import java.util.Arrays; import java.util.HashMap; +import java.util.List; import org.bukkit.Bukkit; import org.bukkit.ChatColor; @@ -31,6 +33,7 @@ import nautilus.game.arcade.ArcadeManager; import nautilus.game.arcade.GameType; import nautilus.game.arcade.events.GameStateChangeEvent; import nautilus.game.arcade.game.SoloGame; +import nautilus.game.arcade.game.Game.GameState; import nautilus.game.arcade.game.games.quiver.kits.*; import nautilus.game.arcade.kit.Kit; import nautilus.game.arcade.stats.SharpShooterStatTracker; @@ -344,4 +347,25 @@ public class Quiver extends SoloGame AnnounceEnd(places); } } + + @Override + public List getWinners() + { + if (GetState().ordinal() >= GameState.End.ordinal()) + { + SortScores(); + + //Set Places + ArrayList places = new ArrayList(); + for (int i=0 ; i<_ranks.size() ; i++) + places.add(i, _ranks.get(i).Player); + + if (places.isEmpty() || !places.get(0).isOnline()) + return Arrays.asList(); + else + return Arrays.asList(places.get(0)); + } + else + return null; + } }