lcy
5 天以前 cc349a454d938e4046151233d6639d2c3807da9b
143 演武场-客户端 接入挑战凭证用货币购买
5个文件已修改
83 ■■■■■ 已修改文件
Main/Config/Configs/GetItemWaysConfig.cs 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Arena/ArenaChallengeVoucher.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/ItemTip/ItemTipWayWin.cs 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Store/StoreModel.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Utility/UIHelper.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Config/Configs/GetItemWaysConfig.cs
@@ -1,6 +1,6 @@
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           2025年8月10日
//    [  Date ]:           2025年11月4日
//--------------------------------------------------------
using System.Collections.Generic;
@@ -17,9 +17,12 @@
    }
    public int ID;
    public string name;
    public string Name;
    public string Text;
    public int WinJumpID;
    public int FuncID;
    public int Type;
    public string CustomValue;
    public override int LoadKey(string _key)
    {
@@ -33,11 +36,17 @@
        string[] tables = input.Split('\t');
        int.TryParse(tables[0],out ID); 
            name = tables[1];
            Name = tables[1];
            Text = tables[2];
            int.TryParse(tables[3],out WinJumpID); 
            int.TryParse(tables[4],out FuncID);
            int.TryParse(tables[5],out Type);
            CustomValue = tables[6];
        }
        catch (Exception exception)
        {
Main/System/Arena/ArenaChallengeVoucher.cs
@@ -10,7 +10,9 @@
    {
        btnBuy.SetListener(() =>
        {
            int type = ArenaManager.Instance.ChallengeMoneyType;
            int itemID = UIHelper.GetItemIDWithMoneyType(type);
            ItemTipUtility.Show(itemID, true);
        });
    }
Main/System/ItemTip/ItemTipWayWin.cs
@@ -47,18 +47,49 @@
    {
        var way = GetItemWaysConfig.Get(cell.index);
        var nameText = cell.FindComponent("Text", "name") as Text;
        nameText.text = way.name;
        nameText.text = way.Name;
        var descText = cell.FindComponent("Text", "way") as Text;
        descText.text = way.Text;
        cell.GetComponent<Button>().AddListener(()=>
        {
            UIJumpManager.Instance.OpenWindow(way.WinJumpID);
        cell.GetComponent<Button>().AddListener(() =>
        {
            Run(way);
        });
    }
    void Run(GetItemWaysConfig way)
    {
        if (way == null)
            return;
        int funcID = way.FuncID;
        if (FuncOpenLVConfig.HasKey(funcID) && !FuncOpen.Instance.IsFuncOpen(funcID))
            return;
        switch (way.Type)
        {
            case 0:
                if (WindowSearchConfig.HasKey(way.WinJumpID))
                {
                    UIJumpManager.Instance.OpenWindow(way.WinJumpID);
                }
                break;
            case 1:
                int shopID = int.Parse(way.CustomValue);
                if (StoreModel.Instance.CheckPopBuyWin(shopID))
                {
                    StoreModel.Instance.buyShopID = shopID;
                    UIManager.Instance.OpenWindow<BuyItemWin>();
                }
                break;
            default:
                if (WindowSearchConfig.HasKey(way.WinJumpID))
                {
                    UIJumpManager.Instance.OpenWindow(way.WinJumpID);
                }
                break;
        }
    }
}
Main/System/Store/StoreModel.cs
@@ -541,6 +541,17 @@
        
        return 0;
    }
    public bool CheckPopBuyWin(int shopID)
    {
        int state = GetShopIDState(shopID);
        if (state == 1 || state == 3)
        {
            SysNotifyMgr.Instance.ShowTip(StringUtility.Contact("StoreTip", state));
            return false;
        }
        return true;
    }
}
public enum StoreFunc
Main/Utility/UIHelper.cs
@@ -100,6 +100,20 @@
        }
    }
    // 通过货币类型获取物品ID
    public static int GetItemIDWithMoneyType(int moneyType)
    {
        if (GeneralDefine.MoneyDisplayModel.ContainsKey(moneyType))
        {
            return GeneralDefine.MoneyDisplayModel[moneyType];
        }
        else
        {
            Debug.LogError("MoneyDisplayModel 未配置货币类型:" + moneyType);
            return 0;
        }
    }
    /// <summary>
    /// 分离字符串插入空格
    /// </summary>