使用 SO 实现了库存系统,也用 SO 创建了物品,但有必要的是,当玩家拾取它们时,它们必须:a) 如果它们的数量少于最大堆叠值,则进行堆叠; b) 该物品被放置在下一个单元格中,依此类推。出现以下问题
public class Item : ScriptableObject
{
public string Name;
public int stackSize = 0; // Текущее количество в стаке
public int maxStackSize = 10; // Максимальное количество в стаке
public bool CanStack() //проверка для наличия места для след. предмета
{
return stackSize < maxStackSize;
}
public bool NoItems() //проверка на отсут. предмета,
{
return stackSize == 0;
}
}
当“拿起”一个物品时-stackSize++;抛出时分别为StackSize--;如果项目数超过 MaxStackSize,则会发生以下情况
我理解解决方案是以某种方式将每个项目单独存储在特定的单元格中,但我不明白如何做到这一点。如果有人能帮忙,我将非常感激