summaryrefslogtreewikicommitdiff
path: root/src/main/java/net/tylermurphy/hideAndSeek/command/Join.java
diff options
context:
space:
mode:
authorTyler Murphy <tylermurphy534@gmail.com>2021-10-17 22:52:57 -0400
committerTyler Murphy <tylermurphy534@gmail.com>2021-10-17 22:52:57 -0400
commitd37ad3fc4500cf4d35db718bdaf964bad03840e4 (patch)
treeee3506b113bf347e64dfac50930b688eed781453 /src/main/java/net/tylermurphy/hideAndSeek/command/Join.java
parentfixed possible exception on player join (diff)
downloadkenshinshideandseek-d37ad3fc4500cf4d35db718bdaf964bad03840e4.tar.gz
kenshinshideandseek-d37ad3fc4500cf4d35db718bdaf964bad03840e4.tar.bz2
kenshinshideandseek-d37ad3fc4500cf4d35db718bdaf964bad03840e4.zip
lobby bug fixes, titles, game time
Diffstat (limited to '')
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/command/Join.java39
1 files changed, 23 insertions, 16 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/command/Join.java b/src/main/java/net/tylermurphy/hideAndSeek/command/Join.java
index 6dffe60..5168e25 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/command/Join.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/command/Join.java
@@ -1,10 +1,13 @@
package net.tylermurphy.hideAndSeek.command;
import org.bukkit.Bukkit;
+import org.bukkit.GameMode;
import org.bukkit.Location;
+import org.bukkit.attribute.Attribute;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
+import net.tylermurphy.hideAndSeek.util.Functions;
import net.tylermurphy.hideAndSeek.util.ICommand;
import static net.tylermurphy.hideAndSeek.Store.*;
@@ -12,16 +15,8 @@ import static net.tylermurphy.hideAndSeek.Store.*;
public class Join implements ICommand {
public void execute(CommandSender sender, String[] args) {
- if(!lobbyManualJoin) {
- sender.sendMessage(errorPrefix + "Manual join/leave isnt enabled in this server");
- return;
- }
- if(!status.equals("Standby")) {
- sender.sendMessage(errorPrefix + "Game is currently in session");
- return;
- }
- if(!lobbyStarted) {
- sender.sendMessage(errorPrefix + "There is currently no lobby in session");
+ if(!Functions.setup()) {
+ sender.sendMessage(errorPrefix + "Game is not setup. Run /hs setup to see what you needed to do");
return;
}
Player player = Bukkit.getServer().getPlayer(sender.getName());
@@ -30,15 +25,27 @@ public class Join implements ICommand {
return;
}
if(playerList.containsKey(player.getName())){
- sender.sendMessage(errorPrefix + "You are already in the lobby");
+ sender.sendMessage(errorPrefix + "You are already in the lobby/game");
return;
}
playerList.put(player.getName(), player);
- Hider.add(player.getName());
- HiderTeam.addEntry(player.getName());
- playerLastLocationList.put(player.getName(), player.getLocation());
- player.teleport(new Location(Bukkit.getWorld(spawnWorld), spawnPosition.getX(),spawnPosition.getY(),spawnPosition.getZ()));
- if(lobbyAnnounced) Bukkit.broadcastMessage(messagePrefix + sender.getName() + " has joined the HideAndSeek lobby");
+ if(status.equals("Standby")) {
+ Hider.add(player.getName());
+ HiderTeam.addEntry(player.getName());
+ if(announceMessagesToNonPlayers) Bukkit.broadcastMessage(messagePrefix + sender.getName() + " has joined the HideAndSeek lobby");
+ else Functions.broadcastMessage(messagePrefix + sender.getName() + " has joined the HideAndSeek lobby");
+ player.teleport(new Location(Bukkit.getWorld(lobbyWorld), lobbyPosition.getX(),lobbyPosition.getY(),lobbyPosition.getZ()));
+ player.setGameMode(GameMode.ADVENTURE);
+ } else {
+ Spectator.add(player.getName());
+ SpectatorTeam.addEntry(player.getName());
+ player.sendMessage(messagePrefix + "You have joined mid game and became a spectator");
+ player.setGameMode(GameMode.SPECTATOR);
+ player.teleport(new Location(Bukkit.getWorld("hideandseek_"+spawnWorld), spawnPosition.getX(),spawnPosition.getY(),spawnPosition.getZ()));
+ }
+
+ player.setFoodLevel(20);
+ player.setHealth(player.getAttribute(Attribute.GENERIC_MAX_HEALTH).getBaseValue());
}
public String getLabel() {