Personal Dimension Portal (Item)

基本信息

属性 值
类型 ItemBlock(PortalItem extends ItemBlock)
注册名 与对应 Block 相同:personalspace:personalPortal(主) / personalPortal_migration2 / _migration3 / _migration4
关联 Block Personal Dimension Portal
最大堆叠 64(原版 ItemBlock 默认)
附魔适用 否(ItemBlock 默认)

功能

PortalItem 是 PortalBlock 的物品形式。每个 PortalBlock 实例都通过 GameRegistry.registerBlock(..., PortalItem.class, "<name>") 关联到独立的 PortalItem(4 个 Block 各 1 个,共 4 个 Item 实例)。

物品状态:

  • hasEffect(stack):当 NBT 含 target 时返回 true → 物品带附魔光效(提示已被"激活"/绑定)。
  • addInformation:在 tooltip 显示 DIM<dimId>: <x>, <y>, <z>。

使用方式

使用方式 触发条件 效果
右键方块 在 5×5×5 立方体内已存在 PortalBlock 显示 chat.personalWorld.proximity,阻止放置并返回 false
右键方块(正常) 通过距离检查 走 ItemBlock.onItemUse 默认路径放置 PortalBlock
物品作为掉落物 无 永远不会消失(getEntityLifespan = Integer.MAX_VALUE)
物品实体 任何伤害 仅 DamageSource.outOfWorld 生效;火/岩浆/仙人掌/爆炸全部免疫(Portal Entity Item)

关联

  • 物品 NBT 由 PortalBlock.getItemStack(...) 写入:active, target[], facing, targetFacing;移除 x/y/z/facing 这类位置字段(位置字段由放置时重写)。
  • 放置后由 PortalBlock.onBlockPlacedBy 读取 fromItem.hasTagCompound() → te.readFromNBT(tag) + linkOtherPortal(false, placer)。

相关条目