summaryrefslogtreewikicommitdiff
path: root/src/main/java/net/tylermurphy
diff options
context:
space:
mode:
authorTyler Murphy <tylermurphy534@gmail.com>2022-04-19 20:10:18 -0400
committerGitHub <noreply@github.com>2022-04-19 20:10:18 -0400
commitbbcef0708ac53f04797e94af3473ba2dd259f704 (patch)
tree5d1c175f93e1eb32bcd81198c646a6b88ed10372 /src/main/java/net/tylermurphy
parent1.4.0 hotfix (diff)
parent1.4.1 (diff)
downloadkenshinshideandseek-bbcef0708ac53f04797e94af3473ba2dd259f704.tar.gz
kenshinshideandseek-bbcef0708ac53f04797e94af3473ba2dd259f704.tar.bz2
kenshinshideandseek-bbcef0708ac53f04797e94af3473ba2dd259f704.zip
Merge pull request #23 from tylermurphy534/1.4.1
1.4.1
Diffstat (limited to 'src/main/java/net/tylermurphy')
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/command/About.java2
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/configuration/Config.java22
-rw-r--r--src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java14
3 files changed, 34 insertions, 4 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/command/About.java b/src/main/java/net/tylermurphy/hideAndSeek/command/About.java
index bfc6c85..f19cb09 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/command/About.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/command/About.java
@@ -26,7 +26,7 @@ public class About implements ICommand {
public void execute(CommandSender sender, String[] args) {
sender.sendMessage(
- String.format("%s%sHide and Seek %s(%s1.4.0%s)\n", ChatColor.AQUA, ChatColor.BOLD, ChatColor.GRAY,ChatColor.WHITE,ChatColor.GRAY) +
+ String.format("%s%sHide and Seek %s(%s1.4.1%s)\n", ChatColor.AQUA, ChatColor.BOLD, ChatColor.GRAY,ChatColor.WHITE,ChatColor.GRAY) +
String.format("%sAuthor: %s[KenshinEto]\n", ChatColor.GRAY, ChatColor.WHITE) +
String.format("%sHelp Command: %s/hs %shelp", ChatColor.GRAY, ChatColor.AQUA, ChatColor.WHITE)
);
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/configuration/Config.java b/src/main/java/net/tylermurphy/hideAndSeek/configuration/Config.java
index f18ec5f..4b13e1c 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/configuration/Config.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/configuration/Config.java
@@ -19,11 +19,15 @@
package net.tylermurphy.hideAndSeek.configuration;
+import com.cryptomorin.xseries.XMaterial;
import net.tylermurphy.hideAndSeek.util.Version;
+import org.bukkit.Material;
import org.bukkit.util.Vector;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import java.util.Optional;
public class Config {
@@ -84,6 +88,10 @@ public class Config {
seekerPingLevel2,
seekerPingLevel3;
+ public static List<String>
+ blockedCommands,
+ blockedInteracts;
+
public static String
LOBBY_TITLE,
GAME_TITLE,
@@ -101,9 +109,6 @@ public class Config {
public static List<String>
LOBBY_CONTENTS,
GAME_CONTENTS;
-
- public static List<String>
- blockedCommands;
public static void loadConfig() {
@@ -198,6 +203,17 @@ public class Config {
teleportToExit = config.getBoolean("teleportToExit");
locale = config.getString("locale", "local");
blockedCommands = config.getStringList("blockedCommands");
+ blockedInteracts = new ArrayList<>();
+ List<String> tempInteracts = config.getStringList("blockedInteracts");
+ for(String id : tempInteracts){
+ Optional<XMaterial> optional_mat = XMaterial.matchXMaterial(id);
+ if(optional_mat.isPresent()){
+ Material mat = optional_mat.get().parseMaterial();
+ if(mat != null){
+ blockedInteracts.add(mat.name());
+ }
+ }
+ }
//Leaderboard
LOBBY_TITLE = leaderboard.getString("lobby.title");
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java b/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java
index 0c84058..a8418e2 100644
--- a/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java
+++ b/src/main/java/net/tylermurphy/hideAndSeek/game/EventListener.java
@@ -36,6 +36,7 @@ import org.bukkit.entity.Snowball;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
+import org.bukkit.event.block.Action;
import org.bukkit.event.entity.*;
import org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason;
import org.bukkit.event.player.*;
@@ -159,6 +160,7 @@ public class EventListener implements Listener {
}
}
}
+ return;
}
if (Game.status != Status.PLAYING) {
event.setCancelled(true);
@@ -169,17 +171,20 @@ public class EventListener implements Listener {
Entity damager = ((EntityDamageByEntityEvent) event).getDamager();
if (damager instanceof Player) {
attacker = (Player) damager;
+ if (!Board.isPlayer(attacker)) event.setCancelled(true);
if (Board.onSameTeam(player, attacker)) event.setCancelled(true);
if (Board.isSpectator(player)) event.setCancelled(true);
} else if(damager instanceof Arrow){
ProjectileSource source = ((Arrow) damager).getShooter();
if(source instanceof Player){
attacker = (Player) source;
+ if (!Board.isPlayer(attacker)) event.setCancelled(true);
if (Board.onSameTeam(player, attacker)) event.setCancelled(true);
if (Board.isSpectator(player)) event.setCancelled(true);
}
}
}
+ if(event.isCancelled()) return;
if (player.getHealth() - event.getFinalDamage() < 0.5 || !pvpEnabled) {
if (spawnPosition == null) return;
event.setCancelled(true);
@@ -269,4 +274,13 @@ public class EventListener implements Listener {
}
}
}
+
+ @EventHandler(priority = EventPriority.HIGHEST)
+ public void onPlayerInteract(PlayerInteractEvent event) {
+ if (event.getAction() == Action.RIGHT_CLICK_BLOCK) {
+ if(Board.isPlayer(event.getPlayer()) && blockedInteracts.contains(event.getClickedBlock().getType().name())){
+ event.setCancelled(true);
+ }
+ }
+ }
} \ No newline at end of file