9
0
mirror of https://github.com/Xiao-MoMi/craft-engine.git synced 2025-12-29 11:59:11 +00:00

添加entity.item链式参数

This commit is contained in:
XiaoMoMi
2025-10-20 17:56:10 +08:00
parent 728b6e2433
commit 549f758cae
7 changed files with 36 additions and 2 deletions

View File

@@ -0,0 +1,17 @@
package net.momirealms.craftengine.bukkit.entity;
import net.momirealms.craftengine.bukkit.item.BukkitItemManager;
import net.momirealms.craftengine.core.entity.ItemEntity;
import org.bukkit.entity.Item;
public class BukkitItemEntity extends BukkitEntity implements ItemEntity {
public BukkitItemEntity(Item entity) {
super(entity);
}
@Override
public net.momirealms.craftengine.core.item.Item<?> getItem() {
return BukkitItemManager.instance().wrap(((Item) platformEntity()).getItemStack());
}
}

View File

@@ -4,6 +4,7 @@ import io.papermc.paper.event.block.CompostItemEvent;
import net.momirealms.craftengine.bukkit.api.BukkitAdaptors;
import net.momirealms.craftengine.bukkit.api.event.CustomBlockInteractEvent;
import net.momirealms.craftengine.bukkit.entity.BukkitEntity;
import net.momirealms.craftengine.bukkit.entity.BukkitItemEntity;
import net.momirealms.craftengine.bukkit.item.BukkitCustomItem;
import net.momirealms.craftengine.bukkit.item.BukkitItemManager;
import net.momirealms.craftengine.bukkit.nms.FastNMS;
@@ -594,7 +595,7 @@ public class ItemEventListener implements Listener {
}
Cancellable dummy = Cancellable.dummy();
customItem.execute(PlayerOptionalContext.of(serverPlayer, ContextHolder.builder()
.withParameter(DirectContextParameters.ENTITY, new BukkitEntity(itemDrop))
.withParameter(DirectContextParameters.ENTITY, new BukkitItemEntity(itemDrop))
.withParameter(DirectContextParameters.POSITION, LocationUtils.toWorldPosition(itemDrop.getLocation()))
.withParameter(DirectContextParameters.EVENT, dummy)
), EventTrigger.PICK_UP);