You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Minecraft基岩版ADDON开发:如何获取玩家选中的物品槽?

获取Minecraft基岩版玩家选中物品槽的方法

在Bedrock版Script API中,Player对象内置了selectedSlot属性,可直接获取玩家当前手持物品对应的快捷栏槽位索引(范围为0-8,对应快捷栏从左到右的9个槽位)。结合你已有的代码,修改如下:

import { world, Player, EntityInventoryComponent } from "@minecraft/server";

world.getPlayers().forEach((player) => {
  // 获取玩家背包组件
  let inventory = player.getComponent("inventory") as EntityInventoryComponent;
  // 获取当前选中的快捷栏槽位索引
  const selectedSlotIndex = player.selectedSlot;
  // 根据索引获取对应槽位的物品
  const selectedItem = inventory.container.getItem(selectedSlotIndex);
  
  // 示例:向玩家反馈选中信息
  if (selectedItem) {
    player.sendMessage(`当前选中槽位:${selectedSlotIndex},物品:${selectedItem.typeId}`);
  } else {
    player.sendMessage(`当前选中槽位:${selectedSlotIndex},无物品`);
  }
});

补充说明:

  • selectedSlot是只读属性,返回值为0到8的整数,对应快捷栏的9个位置
  • 若要获取选中槽位的具体物品,需通过inventory.container.getItem(slotIndex)获取,返回ItemStack对象(槽位为空时返回undefined)
  • 该属性仅针对玩家快捷栏的选中槽位,背包其他非快捷栏槽位不存在“选中”状态

内容的提问来源于stack exchange,提问作者user24667429

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 23:42:32