Skip to content

Commit

Permalink
HealthUtils set last damage manually
Browse files Browse the repository at this point in the history
  • Loading branch information
ShaneBeee committed Jun 21, 2024
1 parent a528cb9 commit 985293b
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions src/main/java/ch/njol/skript/bukkitutil/HealthUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,13 @@
import org.bukkit.damage.DamageSource;
import org.bukkit.damage.DamageType;
import org.bukkit.entity.Damageable;
import org.bukkit.entity.LivingEntity;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.entity.EntityDamageEvent.DamageCause;
import org.jetbrains.annotations.Nullable;

import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class HealthUtils {

Expand Down Expand Up @@ -112,8 +112,11 @@ public static double getFinalDamage(EntityDamageEvent e) {
return e.getFinalDamage() / 2;
}

public static void setDamage(EntityDamageEvent e, double damage) {
e.setDamage(damage * 2);
public static void setDamage(EntityDamageEvent event, double damage) {
event.setDamage(damage * 2);
// Set last damage manually as Bukkit doesn't appear to do that
if (event.getEntity() instanceof LivingEntity)
((LivingEntity) event.getEntity()).setLastDamage(damage * 2);
}

@Nullable
Expand Down

0 comments on commit 985293b

Please sign in to comment.