diff options
Diffstat (limited to 'src/main/java/net/tylermurphy/hideAndSeek/command/Start.java')
-rw-r--r-- | src/main/java/net/tylermurphy/hideAndSeek/command/Start.java | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/command/Start.java b/src/main/java/net/tylermurphy/hideAndSeek/command/Start.java index fb715d6..cd0c956 100644 --- a/src/main/java/net/tylermurphy/hideAndSeek/command/Start.java +++ b/src/main/java/net/tylermurphy/hideAndSeek/command/Start.java @@ -8,6 +8,7 @@ import org.bukkit.entity.Player; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; +import net.md_5.bungee.api.ChatColor; import net.tylermurphy.hideAndSeek.Main; import net.tylermurphy.hideAndSeek.events.Glow; import net.tylermurphy.hideAndSeek.events.Taunt; @@ -17,40 +18,33 @@ import net.tylermurphy.hideAndSeek.util.ICommand; import static net.tylermurphy.hideAndSeek.Store.*; -import java.io.File; import java.util.ArrayList; import java.util.Random; public class Start implements ICommand { public void execute(CommandSender sender, String[] args) { - if(!status.equals("Standby")) { - sender.sendMessage(errorPrefix + "Game is already in session"); - return; - } - if(spawnPosition.getBlockX() == 0 && spawnPosition.getBlockY() == 0 && spawnPosition.getBlockZ() == 0) { - sender.sendMessage(errorPrefix + "Please set spawn location first"); + if(!Functions.setup()) { + sender.sendMessage(errorPrefix + "Game is not setup. Run /hs setup to see what you needed to do"); return; } - if(lobbyPosition.getBlockX() == 0 && lobbyPosition.getBlockY() == 0 && lobbyPosition.getBlockZ() == 0) { - sender.sendMessage(errorPrefix + "Please set lobby location first"); + if(!status.equals("Standby")) { + sender.sendMessage(errorPrefix + "Game is already in session"); return; } - File destenation = new File(Main.root+File.separator+"hideandseek_"+spawnWorld); - if(!destenation.exists()) { - sender.sendMessage(errorPrefix + "Please set map save first"); + if(!playerList.containsKey(sender.getName())) { + sender.sendMessage(errorPrefix + "You are not in the lobby"); return; - } else { - if(Bukkit.getServer().getWorld("hideandseek_"+spawnWorld) != null) { - Functions.rollback("hideandseek_"+spawnWorld); - } else { - Functions.loadMap("hideandseek_"+spawnWorld); - } } if(playerList.size() < minPlayers) { sender.sendMessage(errorPrefix + "You must have at least "+minPlayers+" players to start"); return; } + if(Bukkit.getServer().getWorld("hideandseek_"+spawnWorld) != null) { + Functions.rollback("hideandseek_"+spawnWorld); + } else { + Functions.loadMap("hideandseek_"+spawnWorld); + } String seekerName; if(args.length < 1) { seekerName = playerList.values().stream().skip(new Random().nextInt(playerList.values().size())).findFirst().get().getName(); @@ -65,6 +59,7 @@ public class Start implements ICommand { Hider = new ArrayList<String>(); Seeker = new ArrayList<String>(); Spectator = new ArrayList<String>(); + Deaths = new ArrayList<String>(); for(Player temp : playerList.values()) { if(temp.getName().equals(seeker.getName())) continue; @@ -87,12 +82,14 @@ public class Start implements ICommand { if(player != null) { player.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS,1000000,127,false,false)); player.addPotionEffect(new PotionEffect(PotionEffectType.SLOW,1000000,127,false,false)); + player.sendTitle(ChatColor.RED + "" + ChatColor.BOLD + "SEEKER", ChatColor.WHITE + "Eliminate all hiders", 10, 70, 20); } } for(String playerName : Hider) { Player player = playerList.get(playerName); if(player != null) { player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED,1000000,5,false,false)); + player.sendTitle(ChatColor.GOLD + "" + ChatColor.BOLD + "HIDER", ChatColor.WHITE + "Hide away from the seekers", 10, 70, 20); } } Functions.resetWorldborder("hideandseek_"+spawnWorld); @@ -163,6 +160,13 @@ public class Start implements ICommand { Main.taunt.schedule(); Main.glow = new Glow(gameId); + + if(gameLength > 0) { + timeLeft = gameLength; + for(Player player : playerList.values()) { + player.setLevel(timeLeft); + } + } } }, 20 * 30); |