道具槽集合

本文阐述通用库存系统中,道具槽集合的技术细节。

通用库存系统.封面
罗传月武(YueWu)

作者

罗传月武(YueWu)

专注游戏开发和Web技术。

创建时间: 2025年6月23日更新时间: 2026年9月15日

目录

道具槽集合

ItemSlotCollection以固定槽位的方式存储你的道具,这种集合适用于“装备”集合(角色装备,快捷栏,技能槽等)。

该集合尺寸固定,每一个道具堆栈和一个“道具槽”一一对应,比如:

  1. 将一把刀放置到近战武器槽。
  2. 将一把枪放置到远程武器槽。
  3. 将一个饰品放置到饰品槽。
  4. 将一个技能放置到技能槽。
  5. 将一个宠物放置到宠物槽。
  6. 将一个盔甲放置到盔甲槽。

一个道具槽集合的定义有如下内容:

槽集合.概览

它的主要设置如下:

  • SlotDefinitions:它定义了该集合的所有可用道具槽,同时定义了该集合的尺寸。
  • bNewItemPriority:新增道具如果不能与原有道具堆叠,是否替换原有道具?
  • bTryGivePrevItemToNewItemCollection:被替换的道具是否返回到新道具的源集合?
  • EquipmentGroup:可以将槽根据父级标签进行分组。

道具槽定义

通过SlotDefinitions数组可以添加无限数量的道具槽定义,每一个槽定义配置了该槽的静态数据,如背景,允许放置的道具类型/Tags等。

下面是一个案例:

槽集合.槽定义

这个案例,定义了7个道具槽定义(ItemSlotDefinition),表示此集合,可以容纳2个主要武器,和2个次要武器,以及2个饰品和一个袋子。

设计你的槽集合

GIS给予游戏设计师足够的灵活度去设计不同的“槽集合”。

你可以:

  • 只使用一个名为Equipped的ItemSlotCollection,然后定义玩家可以装备的所有道具。
  • 你也可以使用多个ItemSlotCollection,一个用于武器列表,一个用于护甲列表,一个用于装备的技能等。复杂度取决于你的项目的复杂度。

集合API

Loading Blueprint

Initializing BlueprintUE renderer...

槽集合只定义了道具槽和道具之间的关系,将不同的道具放入不同的槽/从不同的槽移除后会发生的逻辑,可由装备系统控制。

你可以监听该集合的道具栈变化,并针对道具添加到道具槽/从道具槽移除时做出响应。