背包物品本身的数据结构
在实现背包前我们需要对背包的数据结构做一下定义, 首先背包本身的数据结构比较简单主要有下面两个:
- Name 也可以叫 id 用来唯一标记对应的物品元信息
- Count 数量
有些同学可能会说背包物品应该有最大堆叠大小、物品数量等等信息为什么不写上去?
我是这么考虑的,对于渲染背包而言,目前考虑的背包本身是比较简单的,而背包的元信息反而是复杂的,他可能有不同的类别。不论从系统设计还是实现简单程度而言,通过分离元信息和背包物品的信息显然要容易很多。
这样就简单的定义了一个背包物品的功能。
定义背包
下面我们就需要定义背包了,背包是一个简单的结构,我们现在假定背包就是简单的二维数组,有长宽定义:
- Items
- ColumnCount
- RowCount
所以现在可以定个 bag:
定义背包元数据
背包的元数据可以有很多很多条目,目前我们先朝着简单的方向设计:
- Name
- Icon
- MaxCount
结语
现在我们完成了背包系统中数据结构设定,下面我们需要实现背包的管理逻辑
本文标题:如何设计一个背包系统的数据结构
永久链接:https://iceprosurface.com/godot/bag-system/database/
作者授权:本文由 icepro 原创编译并授权刊载发布。
版权声明:本文使用「署名-非商业性使用-相同方式共享 4.0 国际」创作共享协议,转载或使用请遵守署名协议。