summaryrefslogtreewikicommitdiff
path: root/src/main/java/net/tylermurphy/hideAndSeek/game
diff options
context:
space:
mode:
authorTyler Murphy <tylermurphy534@gmail.com>2021-12-27 13:14:32 -0600
committerTyler Murphy <tylermurphy534@gmail.com>2021-12-27 13:14:32 -0600
commit56e6cac28f0ed7bf02b974cca85c88faa78b1479 (patch)
tree797aa4b5379dca2038ccdebb35450a71d3e2c8b9 /src/main/java/net/tylermurphy/hideAndSeek/game
parent1.3.3 beta 3 (diff)
downloadkenshinshideandseek-56e6cac28f0ed7bf02b974cca85c88faa78b1479.tar.gz
kenshinshideandseek-56e6cac28f0ed7bf02b974cca85c88faa78b1479.tar.bz2
kenshinshideandseek-56e6cac28f0ed7bf02b974cca85c88faa78b1479.zip
1.3.3 rc1
Diffstat (limited to 'src/main/java/net/tylermurphy/hideAndSeek/game')
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/Board.java2
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/CommandHandler.java2
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java12
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/Game.java26
4 files changed, 35 insertions, 7 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java b/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java
index 9df39be..d81e310 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/Board.java
@@ -5,7 +5,7 @@
*
* Kenshins Hide and Seek free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * he Free Software Foundation, either version 3 of the License.
+ * he Free Software Foundation version 3.
*
* Kenshins Hide and Seek is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/CommandHandler.java b/src/main/java/net/tylermurphy/hideAndSeek/game/CommandHandler.java
index 7ff7c74..8df3cf2 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/CommandHandler.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/CommandHandler.java
@@ -5,7 +5,7 @@
*
* Kenshins Hide and Seek free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * he Free Software Foundation, either version 3 of the License.
+ * he Free Software Foundation version 3.
*
* Kenshins Hide and Seek is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java b/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java
index 4dba35a..4911d5f 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java
@@ -5,7 +5,7 @@
*
* Kenshins Hide and Seek free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * he Free Software Foundation, either version 3 of the License.
+ * he Free Software Foundation version 3.
*
* Kenshins Hide and Seek is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -54,7 +54,7 @@ public class EventListener implements Listener {
Game.removeItems(event.getPlayer());
if(Game.isNotSetup()) return;
if(autoJoin){
- Join.join(event.getPlayer());
+ Game.join(event.getPlayer());
} else if(teleportToExit) {
if (event.getPlayer().getWorld().getName().equals("hideandseek_" + spawnWorld) || event.getPlayer().getWorld().getName().equals(lobbyWorld)) {
event.getPlayer().teleport(new Location(Bukkit.getWorld(exitWorld), exitPosition.getX(), exitPosition.getY(), exitPosition.getZ()));
@@ -62,8 +62,12 @@ public class EventListener implements Listener {
}
} else {
if (event.getPlayer().getWorld().getName().equals("hideandseek_" + spawnWorld)) {
- event.getPlayer().teleport(new Location(Bukkit.getWorld(exitWorld), exitPosition.getX(), exitPosition.getY(), exitPosition.getZ()));
- event.getPlayer().setGameMode(GameMode.ADVENTURE);
+ if(Game.status != Status.STANDBY){
+ Game.join(event.getPlayer());
+ } else {
+ event.getPlayer().teleport(new Location(Bukkit.getWorld(exitWorld), exitPosition.getX(), exitPosition.getY(), exitPosition.getZ()));
+ event.getPlayer().setGameMode(GameMode.ADVENTURE);
+ }
}
}
}
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java b/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java
index 6ee4cf6..39d6376 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/Game.java
@@ -5,7 +5,7 @@
*
* Kenshins Hide and Seek free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
- * he Free Software Foundation, either version 3 of the License.
+ * he Free Software Foundation version 3.
*
* Kenshins Hide and Seek is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -28,6 +28,7 @@ import net.tylermurphy.hideAndSeek.util.Status;
import net.tylermurphy.hideAndSeek.util.WinType;
import net.tylermurphy.hideAndSeek.world.WorldLoader;
import org.bukkit.*;
+import org.bukkit.attribute.Attribute;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Firework;
@@ -219,6 +220,29 @@ public class Game {
}
}
+ public static void join(Player player){
+ if(Game.status == Status.STANDBY) {
+ player.getInventory().clear();
+ Board.addHider(player);
+ if(announceMessagesToNonPlayers) Bukkit.broadcastMessage(messagePrefix + message("GAME_JOIN").addPlayer(player));
+ else Game.broadcastMessage(messagePrefix + message("GAME_JOIN").addPlayer(player));
+ player.teleport(new Location(Bukkit.getWorld(lobbyWorld), lobbyPosition.getX(),lobbyPosition.getY(),lobbyPosition.getZ()));
+ player.setGameMode(GameMode.ADVENTURE);
+ Board.createLobbyBoard(player);
+ Board.reloadLobbyBoards();
+ } else {
+ Board.addSpectator(player);
+ player.sendMessage(messagePrefix + message("GAME_JOIN_SPECTATOR"));
+ player.setGameMode(GameMode.SPECTATOR);
+ Board.createGameBoard(player);
+ player.teleport(new Location(Bukkit.getWorld("hideandseek_"+spawnWorld), spawnPosition.getX(),spawnPosition.getY(),spawnPosition.getZ()));
+ player.sendTitle(ChatColor.GRAY + "" + ChatColor.BOLD + "SPECTATING", ChatColor.WHITE + message("SPECTATOR_SUBTITLE").toString(), 10, 70, 20);
+ }
+
+ player.setFoodLevel(20);
+ player.setHealth(Objects.requireNonNull(player.getAttribute(Attribute.GENERIC_MAX_HEALTH)).getBaseValue());
+ }
+
public static void removeItems(Player player){
for(ItemStack si : Items.SEEKER_ITEMS)
for(ItemStack i : player.getInventory().getContents())