处理bug:
logic:为了更改物品的顺序,我们在Inventory manager里面记录了背包的序号,所以得到slots的序号就可以更改背包里的序号了
我希望当我拖拽起来的那一刹那我获得id,这样方便调整数据的ID
InventoryManager里给slot数组表上序号,然后给item对应上
logic:物品调换时:首先把当前itemid给临时变量,然后把slot里的序号给当前的item,然后把temp里的临时变量给slot就是完成了对换(ID对换)
logic:当前物品为空
slot设置的slotid有四处引用,
public int slotID;//空格ID等于物品ID(Slot)
1inventorymanager重新生成就是给赋值,
for (int i = 0; i < instance.mabag.itemList.Count; i++)
{
//CreatNewItem(instance.mabag.itemList[i]);//重新创建回来了
instance.slots.Add(Instantiate(instance.emptyslot));
instance.slots[i].transform.SetParent(instance.slotgrid.transform);
instance.slots[i].GetComponent<Slot>().slotID = i;
instance.slots[i].GetComponent<Slot>().SetupSlot(instance.mabag.itemList[i]);
}
2拖拽时得到slotid
public void OnBeginDrag(PointerEv