added a stilldead flag

This commit is contained in:
Bryson Steck 2021-06-15 20:47:32 -06:00
parent 5cc1fe69ba
commit 9431767c3b
4 changed files with 18 additions and 12 deletions

View file

@ -15,12 +15,14 @@ import org.bukkit.scheduler.BukkitRunnable;
public class PlayerListener implements Listener { public class PlayerListener implements Listener {
boolean stillDead;
Location spawn; Location spawn;
@EventHandler @EventHandler
public void onDeath(PlayerDeathEvent e) { public void onDeath(PlayerDeathEvent e) {
System.out.println("Resurrection: A player has died!"); System.out.println("Resurrection: A player has died!");
Player p = e.getEntity(); Player p = e.getEntity();
stillDead = true;
// //
// TimeCheck death = new TimeCheck(timeOfDeath); // TimeCheck death = new TimeCheck(timeOfDeath);
// TimeCheck resurrect = new TimeCheck((timeOfDeath + 86400000) - timeOfDeath); // TimeCheck resurrect = new TimeCheck((timeOfDeath + 86400000) - timeOfDeath);
@ -34,6 +36,7 @@ public class PlayerListener implements Listener {
// save death information to player file // save death information to player file
@Override @Override
public void run() { public void run() {
stillDead = false;
for (PotionEffect effect : p.getActivePotionEffects()) for (PotionEffect effect : p.getActivePotionEffects())
p.removePotionEffect(effect.getType()); p.removePotionEffect(effect.getType());
p.setGameMode(GameMode.SURVIVAL); p.setGameMode(GameMode.SURVIVAL);
@ -47,8 +50,10 @@ public class PlayerListener implements Listener {
@EventHandler @EventHandler
public void onPlayerRespawn(PlayerRespawnEvent e) { public void onPlayerRespawn(PlayerRespawnEvent e) {
if (stillDead) {
final Player p = e.getPlayer(); final Player p = e.getPlayer();
p.setGameMode(GameMode.SPECTATOR); p.setGameMode(GameMode.SPECTATOR);
p.sendTitle("You have died!", "You must wait 24 hours before you can respawn.");
new BukkitRunnable() { new BukkitRunnable() {
@Override @Override
public void run() { public void run() {
@ -62,6 +67,7 @@ public class PlayerListener implements Listener {
} }
}.runTaskLater(JavaPlugin.getProvidingPlugin(Resurrection.class), 1); }.runTaskLater(JavaPlugin.getProvidingPlugin(Resurrection.class), 1);
} }
}
@EventHandler @EventHandler
public void onPlayerMove(PlayerMoveEvent e) { public void onPlayerMove(PlayerMoveEvent e) {