mirror of
https://github.com/kaboomserver/extras.git
synced 2025-02-18 22:49:28 +00:00
Don't set fire ticks while still in lava
This commit is contained in:
parent
d68c8e54d0
commit
c2ee4fac7e
1 changed files with 20 additions and 25 deletions
|
@ -35,30 +35,10 @@ class PlayerDamage implements Listener {
|
||||||
void onPlayerDeath(PlayerDeathEvent event) {
|
void onPlayerDeath(PlayerDeathEvent event) {
|
||||||
final Player player = event.getEntity();
|
final Player player = event.getEntity();
|
||||||
final AttributeInstance maxHealth = player.getAttribute(Attribute.GENERIC_MAX_HEALTH);
|
final AttributeInstance maxHealth = player.getAttribute(Attribute.GENERIC_MAX_HEALTH);
|
||||||
boolean maxHealthLow = false;
|
|
||||||
|
|
||||||
maxHealth.setBaseValue(20);
|
|
||||||
try {
|
try {
|
||||||
player.setHealth(20);
|
|
||||||
} catch (Exception exception) {
|
|
||||||
maxHealth.setBaseValue(Double.POSITIVE_INFINITY);
|
|
||||||
player.setHealth(20);
|
|
||||||
maxHealth.setBaseValue(20);
|
maxHealth.setBaseValue(20);
|
||||||
maxHealthLow = true;
|
player.setHealth(20);
|
||||||
}
|
|
||||||
player.setFoodLevel(20);
|
|
||||||
player.setFireTicks(0);
|
|
||||||
player.setRemainingAir(player.getMaximumAir());
|
|
||||||
player.getActivePotionEffects().clear();
|
|
||||||
event.setCancelled(true);
|
|
||||||
|
|
||||||
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
|
|
||||||
onlinePlayer.sendMessage(event.getDeathMessage());
|
|
||||||
}
|
|
||||||
|
|
||||||
if (maxHealthLow) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (player.getBedSpawnLocation() != null) {
|
if (player.getBedSpawnLocation() != null) {
|
||||||
player.teleportAsync(player.getBedSpawnLocation());
|
player.teleportAsync(player.getBedSpawnLocation());
|
||||||
|
@ -77,5 +57,20 @@ class PlayerDamage implements Listener {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (Exception exception) {
|
||||||
|
maxHealth.setBaseValue(Double.POSITIVE_INFINITY);
|
||||||
|
player.setHealth(20);
|
||||||
|
maxHealth.setBaseValue(20);
|
||||||
|
}
|
||||||
|
|
||||||
|
player.setFoodLevel(20);
|
||||||
|
player.setFireTicks(0);
|
||||||
|
player.setRemainingAir(player.getMaximumAir());
|
||||||
|
player.getActivePotionEffects().clear();
|
||||||
|
event.setCancelled(true);
|
||||||
|
|
||||||
|
for (Player onlinePlayer : Bukkit.getOnlinePlayers()) {
|
||||||
|
onlinePlayer.sendMessage(event.getDeathMessage());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue