ItemsAdderAdditionsItemsAdderAdditions
行为

存储

将任意 ItemsAdder 自定义方块或家具变为存储容器。支持共享存储、潜影盒式便携容器和垃圾桶模式

Since v1.0.0

将任意自定义方块或家具变为存储容器。提供三种模式

类型行为
STORAGE共享容器 - 所有玩家看到的是同一个物品栏
SHULKER存储物品在方块被破坏时会保留在物品内,重新放置时恢复
DISPOSAL垃圾桶 - 关闭 GUI 时存储物品会被静默删除

配置

behaviours:
  storage:
    type: STORAGE
    rows: 3 # 可选,默认:3
    inventory_type: furnace # 可选,设置后取代 rows
    title: "<gold>社区箱子</gold>" # 可选,默认为方块/家具的名称
    open_variant: my_open_storage # 可选
    open_sound: # 可选
      name: entity.villager.celebrate # 或自定义音效
      volume: 1.0 # 可选,默认:1.0
      pitch: 1.0 # 可选,默认:1.0
      source: master # 可选,默认:master
    close_sound: # 可选
      name: entity.villager.ambient # 或自定义音效
      volume: 1.0 # 可选,默认:1.0
      pitch: 1.0 # 可选,默认:1.0
      source: master # 可选,默认:master
behaviours:
  storage:
    type: SHULKER
    rows: 3 # 可选,默认:3
    inventory_type: furnace # 可选,设置后取代 rows
    title: "<dark_purple>便携存储</dark_purple>" # 可选,默认为方块/家具的名称
    open_variant: my_open_storage # 可选
    open_sound: # 可选
      name: entity.villager.celebrate # 或自定义音效
      volume: 1.0 # 可选,默认:1.0
      pitch: 1.0 # 可选,默认:1.0
      source: master # 可选,默认:master
    close_sound: # 可选
      name: entity.villager.ambient # 或自定义音效
      volume: 1.0 # 可选,默认:1.0
      pitch: 1.0 # 可选,默认:1.0
      source: master # 可选,默认:master
behaviours:
  storage:
    type: DISPOSAL
    rows: 1 # 可选,默认:3
    title: "<red>垃圾桶</red>" # 可选,默认为方块/家具的名称
    open_variant: my_open_storage # 可选
    open_sound: # 可选
      name: entity.villager.celebrate # 或自定义音效
      volume: 1.0 # 可选,默认:1.0
      pitch: 1.0 # 可选,默认:1.0
      source: master # 可选,默认:master
    close_sound: # 可选
      name: entity.villager.ambient # 或自定义音效
      volume: 1.0 # 可选,默认:1.0
      pitch: 1.0 # 可选,默认:1.0
      source: master # 可选,默认:master

name 请使用 Sounds.json 中的值,或使用 namespace:value 格式的自定义音效

支持 MiniMessage 格式、PlaceholderAPI 占位符和 ItemsAdder 字体图片

物品栏类型

默认情况下,存储会打开一个箱子风格的物品栏,其高度由 rows 控制(1-6,默认:3) 设置 inventory_type 可改为打开特定类型的物品栏 - 设置此项后 rows 将被忽略

GUI 形状
furnace熔炉(输入 + 燃料 + 输出)
blast_furnace高炉
smoker烟熏炉
brewing_stand酿造台(3 个瓶子 + 2 个槽位)
dispenser发射器(3×3)
dropper投掷器(3×3)
hopper漏斗(1×5)
behaviours:
  storage:
    type: STORAGE
    inventory_type: furnace
    title: "<gray>自定义熔炉</gray>"

物品限制

从 1.0.14 开始,存储容器可以限制玩家能够放入的物品。使用 allowed_items 仅允许匹配的物品:

behaviours:
  storage:
    type: STORAGE
    allowed_items:
      - minecraft:book
      - "#minecraft:logs"
      - "#my_pack:building_materials"

也可以使用 denied_items 拒绝匹配的物品,同时允许其他所有物品:

behaviours:
  storage:
    type: STORAGE
    denied_items:
      - minecraft:tnt
      - "#my_pack:portable_storage"

列表项可以是原版或 ItemsAdder 物品 ID、Minecraft 物品标签,或 IAA 自定义物品标签。

allowed_itemsdenied_items 互斥。同时配置两者会导致该存储行为被拒绝。

空的 allowed_items 列表不允许放入任何物品,空的 denied_items 列表不会拒绝任何物品。两者都省略时, 存储保持无限制。限制仅适用于玩家新放入的物品;之前保存的内容不会被移除。

开启变体

你可以选择设置 open_variant,使自定义方块、家具或复杂家具在至少有一名玩家打开存储时切换为另一个变体

示例:

  • 视觉上打开的箱子
  • 拥有打开模型的木桶
  • 具有不同活动状态的容器
behaviours:
  storage:
    type: STORAGE
    open_variant: my_open_storage

open_variant 应为另一个自定义方块、家具或复杂家具的 ID,可以使用以下格式:

  • id
  • namespace:id

ID 语法请见 ID

当所有玩家都关闭物品栏后,storage 会恢复为正常变体

ItemsAdderAdditions 1.0.12 及更高版本支持复杂家具 open_variant。方块 storage 必须使用方块变体;家具和复杂家具可以使用家具、复杂家具或 item display 模型。

内容状态变体

从 1.0.13 开始,存储容器关闭时可根据物品栏的填充状态改变外观。

behaviours:
  storage:
    type: STORAGE
    empty_variant: my_empty_storage   # 可选;物品栏为空
    filled_variant: my_filled_storage # 可选;物品栏中有任意物品
    half_variant: my_half_storage     # 可选;物品栏部分填充
    full_variant: my_full_storage     # 可选;每个槽位都达到对应物品的堆叠上限

filled_variant 是简单的两状态选项:只要物品栏不为空就会使用它,除非配置了更具体的 half_variantfull_variant。缺少对应变体时会回退到 filled_variant,再回退到容器原本的外观。

玩家打开物品栏时,open_variant 始终优先。最后一名查看者关闭物品栏后,会恢复与内容状态对应的变体。 ID 以及方块/家具兼容规则与 open_variant 相同,切换变体时也会保留方向方块的旋转状态。

相关页面

On this page