From 9431767c3bd129715a1b45af6c3d0d3cd3e027c2 Mon Sep 17 00:00:00 2001 From: Bryson Steck Date: Tue, 15 Jun 2021 20:47:32 -0600 Subject: added a stilldead flag --- out/artifacts/Resurrection_jar/Resurrection.jar | Bin 1338995 -> 1339140 bytes .../Resurrection/player/PlayerListener$1.class | Bin 2590 -> 2628 bytes .../Resurrection/player/PlayerListener.class | Bin 2558 -> 2771 bytes .../Resurrection/player/PlayerListener.java | 30 ++++++++++++--------- 4 files changed, 18 insertions(+), 12 deletions(-) diff --git a/out/artifacts/Resurrection_jar/Resurrection.jar b/out/artifacts/Resurrection_jar/Resurrection.jar index e80bed1..1c9de1f 100644 Binary files a/out/artifacts/Resurrection_jar/Resurrection.jar and b/out/artifacts/Resurrection_jar/Resurrection.jar differ diff --git a/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener$1.class b/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener$1.class index f2b8ddd..ad295f0 100644 Binary files a/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener$1.class and b/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener$1.class differ diff --git a/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener.class b/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener.class index ce42074..1c4c442 100644 Binary files a/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener.class and b/out/production/Resurrection/net/brysonsteck/Resurrection/player/PlayerListener.class differ diff --git a/src/net/brysonsteck/Resurrection/player/PlayerListener.java b/src/net/brysonsteck/Resurrection/player/PlayerListener.java index 4e793f0..003a26c 100644 --- a/src/net/brysonsteck/Resurrection/player/PlayerListener.java +++ b/src/net/brysonsteck/Resurrection/player/PlayerListener.java @@ -15,12 +15,14 @@ import org.bukkit.scheduler.BukkitRunnable; public class PlayerListener implements Listener { + boolean stillDead; Location spawn; @EventHandler public void onDeath(PlayerDeathEvent e) { System.out.println("Resurrection: A player has died!"); Player p = e.getEntity(); + stillDead = true; // // TimeCheck death = new TimeCheck(timeOfDeath); // TimeCheck resurrect = new TimeCheck((timeOfDeath + 86400000) - timeOfDeath); @@ -34,6 +36,7 @@ public class PlayerListener implements Listener { // save death information to player file @Override public void run() { + stillDead = false; for (PotionEffect effect : p.getActivePotionEffects()) p.removePotionEffect(effect.getType()); p.setGameMode(GameMode.SURVIVAL); @@ -47,20 +50,23 @@ public class PlayerListener implements Listener { @EventHandler public void onPlayerRespawn(PlayerRespawnEvent e) { - final Player p = e.getPlayer(); - p.setGameMode(GameMode.SPECTATOR); - new BukkitRunnable() { - @Override - public void run() { - spawn = p.getLocation(); + if (stillDead) { + final Player p = e.getPlayer(); + p.setGameMode(GameMode.SPECTATOR); + p.sendTitle("You have died!", "You must wait 24 hours before you can respawn."); + new BukkitRunnable() { + @Override + public void run() { + spawn = p.getLocation(); // PotionEffect invisibility = new PotionEffect(PotionEffectType.INVISIBILITY, 1728000, 10, false); - PotionEffect blindness = new PotionEffect(PotionEffectType.BLINDNESS, 100, 10, false); - PotionEffect slowness = new PotionEffect(PotionEffectType.SLOW, 100, 10, false); + PotionEffect blindness = new PotionEffect(PotionEffectType.BLINDNESS, 100, 10, false); + PotionEffect slowness = new PotionEffect(PotionEffectType.SLOW, 100, 10, false); // invisibility.apply(p); - blindness.apply(p); - slowness.apply(p); - } - }.runTaskLater(JavaPlugin.getProvidingPlugin(Resurrection.class), 1); + blindness.apply(p); + slowness.apply(p); + } + }.runTaskLater(JavaPlugin.getProvidingPlugin(Resurrection.class), 1); + } } @EventHandler -- cgit v1.2.3