diff --git a/bukkit/src/main/java/net/william278/husksync/player/BukkitPlayer.java b/bukkit/src/main/java/net/william278/husksync/player/BukkitPlayer.java index 2856289c..88b89068 100644 --- a/bukkit/src/main/java/net/william278/husksync/player/BukkitPlayer.java +++ b/bukkit/src/main/java/net/william278/husksync/player/BukkitPlayer.java @@ -82,7 +82,12 @@ public class BukkitPlayer extends OnlineUser { if (statusDataFlags.contains(StatusDataFlag.SET_HEALTH)) { final double currentHealth = player.getHealth(); if (statusData.health != currentHealth) { - player.setHealth(currentHealth > currentMaxHealth ? currentMaxHealth : statusData.health); + double healthToSet = currentHealth > currentMaxHealth ? currentMaxHealth : statusData.health; + if (healthToSet <= 0) { + Bukkit.getScheduler().runTask(BukkitHuskSync.getInstance(), () -> player.setHealth(healthToSet)); + } else { + player.setHealth(healthToSet); + } } if (statusData.healthScale != 0d) {