From bdb8b23417e6c85bedfb5fc93867df7a821ec498 Mon Sep 17 00:00:00 2001 From: Big Pappa Date: Sun, 21 Jun 2026 16:59:56 -0500 Subject: [PATCH] Fixed bug where when both keep inventory and force mob drop were enabled players would both keep their inventory and drop copies. --- pom.xml | 2 +- .../listeners/MobEquipmentDropListener.java | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index df0309c..9841f2d 100644 --- a/pom.xml +++ b/pom.xml @@ -8,7 +8,7 @@ com.rsscripting RS-ServerAdmin RS-ServerAdmin - 1.0.1 + 1.2.0 21 diff --git a/src/main/java/com/rsscripting/serveradmin/listeners/MobEquipmentDropListener.java b/src/main/java/com/rsscripting/serveradmin/listeners/MobEquipmentDropListener.java index 8da07eb..27f9383 100644 --- a/src/main/java/com/rsscripting/serveradmin/listeners/MobEquipmentDropListener.java +++ b/src/main/java/com/rsscripting/serveradmin/listeners/MobEquipmentDropListener.java @@ -4,6 +4,7 @@ import com.rsscripting.serveradmin.RSServerAdmin; import com.rsscripting.serveradmin.dao.MobEquipmentDropSettingsDAO; import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.entity.EntityDeathEvent; @@ -20,6 +21,24 @@ public class MobEquipmentDropListener implements Listener { LivingEntity entity = event.getEntity(); + /* + * Prevent player equipment duplication. + */ + if (entity instanceof Player) { + return; + } + + /* + * Only apply forced equipment drops when a player + * actually killed the mob. + */ + Player killer = + entity.getKiller(); + + if (killer == null) { + return; + } + EntityEquipment equipment = entity.getEquipment();