9
0
mirror of https://github.com/Xiao-MoMi/Custom-Fishing.git synced 2026-01-06 15:51:50 +00:00

fix unbreakable

This commit is contained in:
XiaoMoMi
2024-07-11 19:39:11 +08:00
parent 8c4e6862dc
commit 8a48f81426
2 changed files with 13 additions and 2 deletions

View File

@@ -421,6 +421,12 @@ public class BukkitConfigManager extends ConfigManager {
item.setTag(context.arg(ContextKeys.ID), "CustomFishing", "id");
};
}, 2_000, "tag");
this.registerItemParser(arg -> {
boolean enable = (boolean) arg;
return (item, context) -> {
item.unbreakable(enable);
};
}, 2_211, "unbreakable");
this.registerItemParser(arg -> {
boolean enable = (boolean) arg;
return (item, context) -> {

View File

@@ -51,6 +51,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.Listener;
import org.bukkit.event.block.*;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.entity.EntityPickupItemEvent;
import org.bukkit.event.inventory.InventoryPickupItemEvent;
import org.bukkit.event.inventory.PrepareAnvilEvent;
import org.bukkit.event.player.PlayerAttemptPickupItemEvent;
@@ -434,10 +435,14 @@ public class BukkitItemManager implements ItemManager, Listener {
}
@EventHandler (ignoreCancelled = true)
public void onPickUpItem(PlayerAttemptPickupItemEvent event) {
public void onPickUpItem(EntityPickupItemEvent event) {
String owner = event.getItem().getPersistentDataContainer().get(requireNonNull(NamespacedKey.fromString("owner", plugin.getBoostrap())), PersistentDataType.STRING);
if (owner != null) {
if (!owner.equals(event.getPlayer().getName())) {
if (!(event.getEntity() instanceof Player player)) {
event.setCancelled(true);
return;
}
if (!owner.equals(player.getName())) {
event.setCancelled(true);
}
}