Main/System/Equip/EquipModel.cs
@@ -24,7 +24,7 @@
    public int[] equipUIGirdEffects;  //装备格子特效
    public ItemModel selectFloorEquip; //选中的地板装备
    public int lastShowEquipIndex = -1;  //上一次界面显示装备的索引,拾取后物品消失需记录下做表现
    public Queue<int> waitEquipOP = new Queue<int>();    //等待操作的装备,需要和UI交互确认 不含分解
    public Queue<string> waitEquipOP = new Queue<string>();    //等待操作的装备,需要和UI交互确认 不含分解
    public List<int> lastDropIndexs = new List<int>(); //上一次掉落物品索引
@@ -356,7 +356,13 @@
        }
        // 好几件装备需要处理的情况存起来
        waitEquipOP.Enqueue(equip.gridIndex);
        if (waitEquipOP.Contains(equip.guid))
        {
            //检测时机频繁,导致重复推送,需要检测过滤,对应Dequeue 也做一次检测
            Debug.LogWarning("OpenEquipExchangeWin: 重复推送");
            return false;
        }
        waitEquipOP.Enqueue(equip.guid);
        //未回复装备操作结果,否则会显示旧装备
        if (waitEquipOPPack)
        {
@@ -404,8 +410,13 @@
            return null;
        }
        return PackManager.Instance.GetItemByIndex(PackType.DropItem, waitEquipOP.Dequeue());
        var item = PackManager.Instance.GetItemByGuid(waitEquipOP.Dequeue());
        if (item != null && item.packType == PackType.DropItem)
        {
            return item;
        }
        Debug.LogError("GetSelectFloorEquip: 没有找到可选装备, 该装备已经转移");
        return null;
    }