yyl
2026-01-27 ac93e899d5c6331e89ccae552ecbb502a9652d01
Main/System/Mingge/MinggeManager.cs
@@ -14,7 +14,7 @@
    public int equipShowPresetID;   // 显示装备时,当前的子方案ID
    public ItemModel selectFloorEquip;
    bool waitTYOPPack;
    public bool waitTYOPPack;
    public event Action<int> OnOPCallbackEvent;
    public Dictionary<int, long> minggeAttrDict = new Dictionary<int, long>();
@@ -115,6 +115,7 @@
    public bool CalcEquip()
    {
        var items = PackManager.Instance.GetItems(PackType.MinggeDrop);
        Debug.Log("命格掉落背包中的物品数量:" + items.Count);
        if (items.IsNullOrEmpty())
        {
            if (UIManager.Instance.IsOpened<MinggeEquipWin>())
@@ -146,10 +147,10 @@
    }
    //意向技能ID:【guid..】
    //获取当前在使用方案的技能信息 意向技能类型ID:【物品guid..】
    public Dictionary<int, List<string>> GetMinggeSkillTypeIDDict()
    {
        var presetID = FuncPresetManager.Instance.GetFuncPresetID((int)BattlePreSetType.Story, (int)FuncPresetType.Mingge);
        var presetID = FuncPresetManager.Instance.GetFuncPresetIDByBattleType((int)BattlePreSetType.Story, (int)FuncPresetType.Mingge);
        var startIndex = (presetID - 1) * TotleEquip;//对应卦玉背包索引 = (套编号-1)*12+装备位-1
        var dict = new Dictionary<int, List<string>>();
@@ -170,6 +171,7 @@
        return dict;
    }
    //获取指定方案的技能信息 意向技能类型ID:数量
    public Dictionary<int, int> GetMinggeSkillCountDictByPresetID(int presetID)
    {
        var startIndex = (presetID - 1) * TotleEquip;//对应卦玉背包索引 = (套编号-1)*12+装备位-1
@@ -204,15 +206,11 @@
            return false;
        }
        if (UIManager.Instance.IsOpened<MinggeEquipWin>())
        {
            return false;
        }
        //自动处理: 判断分解 和战力高低 和决定是哪个方案下的装备对比
        //非自动情况下,默认当前方案
        equipShowPresetID = FuncPresetManager.Instance.GetFuncPresetID((int)BattlePreSetType.Story, (int)FuncPresetType.Mingge);
        equipShowPresetID = FuncPresetManager.Instance.GetFuncPresetIDByBattleType((int)BattlePreSetType.Story, (int)FuncPresetType.Mingge);
        selectFloorEquip = equip;
        if (UIManager.Instance.IsOpened<MinggeWin>())
        {
@@ -221,7 +219,10 @@
                Debug.LogError($"配置错误物品 {selectFloorEquip.itemId} 装备位为0");
                return true;
            }
            UIManager.Instance.OpenWindow<MinggeEquipWin>();
            if (!UIManager.Instance.IsOpened<MinggeEquipWin>())
            {
                UIManager.Instance.OpenWindow<MinggeEquipWin>();
            }
        }
        return true;
@@ -234,16 +235,20 @@
    public void SendTY(int count)
    {
        if (CalcEquip())
        {
            return;
        }
        if (waitTYOPPack)
        {
            return;
        }
        // if (CalcEquip())
        // {
        //     return;
        // }
        // if (waitTYOPPack)
        // {
        //     return;
        // }
        if (!ItemLogicUtility.CheckItemCount(PackType.Item, tyItemID, count, 2))
        // if (!ItemLogicUtility.CheckItemCount(PackType.Item, tyItemID, count, 2))
        // {
        //     return;
        // }
        if (waitTYOPPack)
        {
            return;
        }
@@ -276,7 +281,7 @@
    {
        minggeAttrDict.Clear();  //身上命格属性重置
        var minggePresetID = FuncPresetManager.Instance.GetFuncPresetID((int)BattlePreSetType.Story, (int)FuncPresetType.Mingge);
        var minggePresetID = FuncPresetManager.Instance.GetFuncPresetIDByBattleType((int)BattlePreSetType.Story, (int)FuncPresetType.Mingge);
        var starIndex = (minggePresetID - 1) * TotleEquip;
        for (int i = starIndex; i < starIndex + TotleEquip; i++)