我遇到了一个尝试在XNA内实施清单系统的问题(这并不重要,可以是任何平台),但是到目前为止。这是我要解决的问题:
我如何才能从世界上获得一件物品(想想当您杀死一个怪物时,它会掉落护甲)并将其放入玩家的库存中吗?
如果库存只是物品清单,从技术上讲,如何在没有上课的情况下将世代钢剑带入玩家的库存中?
我目前有一个项目结构,其中包含一个唯一的十六进制值,一个有多少项目的计数(用于可堆叠对象,如箭头)和一个用于在库存中进行渲染的纹理,以及一些其他不重要的属性(名称,说明等) 。
如果我必须修改现有的项目类以容纳世界位置以及碰撞检测(这不希望该项目掉落到地球上),那将是一个糟糕的设计。
感谢您的考虑!
@GeorgeDuckett您应该将其作为答案..中可能应该有一些
—
bummzack,2012年
Inventory
采用WorldItem
并将其添加为的方法InventoryItem
。这样它也可以处理需要堆叠物品的情况(例如箭头)。
@bummzack:完成。
—
George Duckett 2012年
WorldItem
与您分开的商品InventoryItem
吗?(也许它WorldItem
有一个InventoryItem
模板,拾取后会放入玩家的库存中)。