0312 由于掉落挤压导致,满掉落掉落背包的时候处理后再主动请求掉落
2个文件已修改
22 ■■■■ 已修改文件
Main/Core/NetworkPackage/ClientPack/CB4_FightDefine/CB415_tagCSMainDropItemOP.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Equip/EquipModel.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Core/NetworkPackage/ClientPack/CB4_FightDefine/CB415_tagCSMainDropItemOP.cs
@@ -1,12 +1,12 @@
using UnityEngine;
using System.Collections;
using UnityEngine;
using System.Collections;
// B4 15 主线掉落物品操作 #tagCSMainDropItemOP
public class CB415_tagCSMainDropItemOP : GameNetPackBasic {
    public byte Count;
    public  ushort[] IndexList;    // 掉落背包中的物品格子索引列表
    public byte OPType;    // 0 - 拾取非装备物品;1 - 分解;2 - 穿戴/替换;
    public byte OPType;    // 0 - 拾取非装备物品;1 - 分解;2 - 穿戴/替换; 3- 主动请求掉落
    public byte OPValue;    // 操作额外指令值,由操作类型决定,如穿戴时可发送穿戴后是否自动分解
    public CB415_tagCSMainDropItemOP () {
Main/System/Equip/EquipModel.cs
@@ -186,14 +186,19 @@
        }
    }
    bool needMoreDrop = false; //由于掉落挤压导致,满掉落掉落背包的时候处理后再主动请求掉落
    //处理所有掉落的物品
    public void CalcAllFloorItems()
    {
        if (PackManager.Instance.GetSinglePack(PackType.DropItem).GetItems().Count == 0)
        int cnt = PackManager.Instance.GetSinglePack(PackType.DropItem).GetItems().Count;
        if (cnt == 0)
        {
            Debug.Log("CalcAllFloorItems 没有掉落物品");
            return;
        }
        needMoreDrop = cnt == 20;
        //构建所有物品
        foreach (var item in PackManager.Instance.GetSinglePack(PackType.DropItem).GetItems())
        {
@@ -291,6 +296,13 @@
            Debug.LogWarning("穿戴装备,向服务器请求");
        }
        GameNetSystem.Instance.SendInfo(pack);
        //由于掉落挤压导致,满掉落掉落背包的时候处理后再主动请求掉落
        if (needMoreDrop)
        {
            pack.OPType = 3;
            GameNetSystem.Instance.SendInfo(pack);
        }
    }
    /// <summary>