From 46fe889c96a6ccf51bba4db9c4ad64b96dffa811 Mon Sep 17 00:00:00 2001 From: hyperdefined Date: Sat, 29 Jan 2022 14:31:38 -0500 Subject: [PATCH] track armor damage for all damage types --- .../hyper/toolstats/events/EntityDamage.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/main/java/lol/hyper/toolstats/events/EntityDamage.java b/src/main/java/lol/hyper/toolstats/events/EntityDamage.java index e9b844d..2d4708f 100644 --- a/src/main/java/lol/hyper/toolstats/events/EntityDamage.java +++ b/src/main/java/lol/hyper/toolstats/events/EntityDamage.java @@ -26,7 +26,9 @@ import org.bukkit.entity.Player; import org.bukkit.entity.Trident; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; +import org.bukkit.event.entity.EntityDamageByBlockEvent; import org.bukkit.event.entity.EntityDamageByEntityEvent; +import org.bukkit.event.entity.EntityDamageEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.PlayerInventory; import org.bukkit.inventory.meta.ItemMeta; @@ -105,6 +107,34 @@ public class EntityDamage implements Listener { } } + @EventHandler + public void onDamage(EntityDamageEvent event) { + LivingEntity livingEntity = (LivingEntity) event.getEntity(); + if (livingEntity instanceof Player) { + Player player = (Player) livingEntity; + PlayerInventory inventory = player.getInventory(); + for (ItemStack armor : inventory.getArmorContents()) { + if (armor != null) { + updateArmorDamage(armor, event.getDamage()); + } + } + } + } + + @EventHandler + public void onDamage(EntityDamageByBlockEvent event) { + LivingEntity livingEntity = (LivingEntity) event.getEntity(); + if (livingEntity instanceof Player) { + Player player = (Player) livingEntity; + PlayerInventory inventory = player.getInventory(); + for (ItemStack armor : inventory.getArmorContents()) { + if (armor != null) { + updateArmorDamage(armor, event.getDamage()); + } + } + } + } + private ItemStack updatePlayerKills(ItemStack itemStack) { ItemStack finalItem = itemStack.clone(); ItemMeta meta = finalItem.getItemMeta();