summaryrefslogtreewikicommitdiff
path: root/src/main/java/net/tylermurphy/hideAndSeek/game
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/tylermurphy/hideAndSeek/game')
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/Board.java7
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/listener/InteractHandler.java21
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java1
3 files changed, 21 insertions, 8 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java b/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java
index 876cb42..f13942f 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java
@@ -27,7 +27,6 @@ import net.tylermurphy.hideAndSeek.game.util.Status;
import net.tylermurphy.hideAndSeek.game.util.Version;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
-import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.scoreboard.*;
@@ -48,10 +47,6 @@ public class Board {
return playerList.containsKey(player.getUniqueId().toString());
}
- public boolean contains(CommandSender sender) {
- return contains((Player) sender);
- }
-
public boolean isHider(Player player) {
return Hider.contains(player.getUniqueId().toString());
}
@@ -203,7 +198,7 @@ public class Board {
private void createLobbyBoard(Player player, boolean recreate) {
CustomBoard board = customBoards.get(player.getUniqueId().toString());
- if (recreate) {
+ if (recreate || board == null) {
board = new CustomBoard(player, LOBBY_TITLE);
board.updateTeams();
}
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/InteractHandler.java b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/InteractHandler.java
index 7fe924f..4e30a50 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/InteractHandler.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/InteractHandler.java
@@ -3,8 +3,13 @@ package net.tylermurphy.hideAndSeek.game.listener;
import com.cryptomorin.xseries.XMaterial;
import com.cryptomorin.xseries.messages.ActionBar;
import net.tylermurphy.hideAndSeek.Main;
+import net.tylermurphy.hideAndSeek.command.Debug;
+import net.tylermurphy.hideAndSeek.game.util.PlayerUtil;
import net.tylermurphy.hideAndSeek.game.util.Status;
+import net.tylermurphy.hideAndSeek.game.util.Version;
+import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
+import org.bukkit.Location;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
@@ -110,7 +115,7 @@ public class InteractHandler implements Listener {
private ItemStack getSkull(Player player, List<String> lore){
assert XMaterial.PLAYER_HEAD.parseMaterial() != null;
- ItemStack playerhead = new ItemStack(XMaterial.PLAYER_HEAD.parseMaterial(), 1);
+ ItemStack playerhead = new ItemStack(XMaterial.PLAYER_HEAD.parseMaterial(), 1, (byte) 3);
SkullMeta playerheadmeta = (SkullMeta) playerhead.getItemMeta();
playerheadmeta.setOwner(player.getName());
playerheadmeta.setDisplayName(player.getName());
@@ -123,9 +128,11 @@ public class InteractHandler implements Listener {
public void onInventoryClick(InventoryClickEvent event) {
if (event.getWhoClicked() instanceof Player) {
Player player = (Player) event.getWhoClicked();
+ // Block players from moving lobby items
if (Main.getInstance().getBoard().contains(player) && Main.getInstance().getGame().getStatus() == Status.STANDBY) {
event.setCancelled(true);
}
+ // Spectator Teleport Menu
if (Main.getInstance().getBoard().isSpectator(player) && event.getCurrentItem().getType() == XMaterial.PLAYER_HEAD.parseMaterial()) {
event.setCancelled(true);
player.closeInventory();
@@ -134,6 +141,18 @@ public class InteractHandler implements Listener {
if(clicked == null) return;
player.teleport(clicked);
}
+ // Debug Menu
+ boolean debug = false;
+ if(Version.atLeast("1.14")){
+ debug = event.getView().getTitle().equals("Debug Menu") && player.hasPermission("hideandseek.debug");
+ } else {
+ debug = event.getInventory().getName().equals("Debug Menu") && player.hasPermission("hideandseek.debug");
+ }
+ if (debug){
+ event.setCancelled(true);
+ player.closeInventory();
+ Debug.handleOption(player, event.getRawSlot());
+ }
}
}
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java
index aafc529..aba8275 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/listener/MovementHandler.java
@@ -22,7 +22,6 @@ public class MovementHandler implements Listener {
@EventHandler(priority = EventPriority.HIGHEST)
public void onMove(PlayerMoveEvent event) {
if (event.getTo() == null || event.getTo().getWorld() == null) return;
-
checkJumping(event);
checkBounds(event);
}