hch
昨天 76ed82bd9edd7395dd292b14538cbbf4aa744fa5
Merge branch 'master' of http://mobile.secondworld.net.cn:10010/r/Project_SG_scripts
2个文件已修改
90 ■■■■ 已修改文件
Main/Config/Configs/HeroConfig.cs 72 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/HeroDebut/HeroDebutCallButton.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/Config/Configs/HeroConfig.cs
@@ -1,6 +1,6 @@
//--------------------------------------------------------
//    [Author]:           YYL
//    [  Date ]:           Friday, March 6, 2026
//    [  Date ]:           2026年3月16日
//--------------------------------------------------------
using System.Collections.Generic;
@@ -19,8 +19,6 @@
    public int HeroID;
    public string Name;
    public int PlayerCanUse;
    public int OpenCollectionDay;
    public int IsActLimit;
    public int Country;
    public int Quality;
    public int Class;
@@ -42,6 +40,8 @@
    public int HurtType;
    public int[] Specialty2;
    public int[] TalentList;
    public int OpenCollectionDay;
    public int IsActLimit;
    public override int LoadKey(string _key)
    {
@@ -59,25 +59,21 @@
            int.TryParse(tables[2],out PlayerCanUse); 
            int.TryParse(tables[3],out OpenCollectionDay);
            int.TryParse(tables[3],out Country);
            int.TryParse(tables[4],out IsActLimit);
            int.TryParse(tables[4],out Quality);
            int.TryParse(tables[5],out Country);
            int.TryParse(tables[5],out Class);
            int.TryParse(tables[6],out Quality);
            int.TryParse(tables[6],out Position);
            int.TryParse(tables[7],out Class);
            int.TryParse(tables[8],out Position);
            if (tables[9].Contains("["))
            if (tables[7].Contains("["))
            {
                SkinIDList = JsonMapper.ToObject<int[]>(tables[9]);
                SkinIDList = JsonMapper.ToObject<int[]>(tables[7]);
            }
            else
            {
                string[] SkinIDListStringArray = tables[9].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                string[] SkinIDListStringArray = tables[7].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                SkinIDList = new int[SkinIDListStringArray.Length];
                for (int i=0;i<SkinIDListStringArray.Length;i++)
                {
@@ -85,29 +81,29 @@
                }
            }
            int.TryParse(tables[10],out AtkSkillID);
            int.TryParse(tables[8],out AtkSkillID);
            int.TryParse(tables[11],out AngerSkillID);
            int.TryParse(tables[9],out AngerSkillID);
            int.TryParse(tables[12],out DeathSFX);
            int.TryParse(tables[10],out DeathSFX);
            int.TryParse(tables[13],out HitSFX);
            int.TryParse(tables[11],out HitSFX);
            int.TryParse(tables[14],out AtkInheritPer);
            int.TryParse(tables[12],out AtkInheritPer);
            int.TryParse(tables[15],out DefInheritPer);
            int.TryParse(tables[13],out DefInheritPer);
            int.TryParse(tables[16],out HPInheritPer);
            int.TryParse(tables[14],out HPInheritPer);
            BatAttrDict = ConfigParse.ParseIntDict(tables[17]);
            BatAttrDict = ConfigParse.ParseIntDict(tables[15]);
            if (tables[18].Contains("["))
            if (tables[16].Contains("["))
            {
                FetterIDList = JsonMapper.ToObject<int[]>(tables[18]);
                FetterIDList = JsonMapper.ToObject<int[]>(tables[16]);
            }
            else
            {
                string[] FetterIDListStringArray = tables[18].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                string[] FetterIDListStringArray = tables[16].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                FetterIDList = new int[FetterIDListStringArray.Length];
                for (int i=0;i<FetterIDListStringArray.Length;i++)
                {
@@ -115,23 +111,23 @@
                }
            }
            float.TryParse(tables[19],out UIScale);
            float.TryParse(tables[17],out UIScale);
            Desc = tables[20];
            Desc = tables[18];
            int.TryParse(tables[21],out RecruitBySelf);
            int.TryParse(tables[19],out RecruitBySelf);
            int.TryParse(tables[22],out Specialty);
            int.TryParse(tables[20],out Specialty);
            int.TryParse(tables[23],out HurtType);
            int.TryParse(tables[21],out HurtType);
            if (tables[24].Contains("["))
            if (tables[22].Contains("["))
            {
                Specialty2 = JsonMapper.ToObject<int[]>(tables[24]);
                Specialty2 = JsonMapper.ToObject<int[]>(tables[22]);
            }
            else
            {
                string[] Specialty2StringArray = tables[24].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                string[] Specialty2StringArray = tables[22].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                Specialty2 = new int[Specialty2StringArray.Length];
                for (int i=0;i<Specialty2StringArray.Length;i++)
                {
@@ -139,19 +135,23 @@
                }
            }
            if (tables[25].Contains("["))
            if (tables[23].Contains("["))
            {
                TalentList = JsonMapper.ToObject<int[]>(tables[25]);
                TalentList = JsonMapper.ToObject<int[]>(tables[23]);
            }
            else
            {
                string[] TalentListStringArray = tables[25].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                string[] TalentListStringArray = tables[23].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                TalentList = new int[TalentListStringArray.Length];
                for (int i=0;i<TalentListStringArray.Length;i++)
                {
                     int.TryParse(TalentListStringArray[i],out TalentList[i]);
                }
            }
            int.TryParse(tables[24],out OpenCollectionDay);
            int.TryParse(tables[25],out IsActLimit);
        }
        catch (Exception exception)
        {
Main/System/HeroDebut/HeroDebutCallButton.cs
@@ -40,24 +40,30 @@
        needCostItemCnt = treasureSetConfig.CostItemCountList[index];
        hasItemCnt = PackManager.Instance.GetItemCountByID(PackType.Item, treasureSetConfig.CostItemID);
        // 物品不足 && 没超货币招募次数上限 &&  货币足够
        // 物品不足 && 没超货币招募次数上限
        if (hasItemCnt < needCostItemCnt &&
            nowMoneyCnt + treasureCnt <= dailyMaxCountMoney &&
            moneyCount >= needCostMoneyCnt)
            nowMoneyCnt + treasureCnt <= dailyMaxCountMoney)
        {
            DisplayByMoney(treasureSetConfig.CostMoneyType, needCostMoneyCnt);
            DisplayByMoney(treasureSetConfig.CostMoneyType, needCostMoneyCnt, moneyCount);
            return;
        }
        DisplayByItem(treasureSetConfig.CostItemID, treasureCnt);
    }
    void DisplayByMoney(int moneyType, long moneyCnt)
    void DisplayByMoney(int moneyType, long needCostMoneyCnt, long moneyCount)
    {
        needText.text = Language.Get("L1100", RichTextMsgReplaceConfig.GetRichReplace("MONEY", moneyType), UIHelper.AppendColor(moneyCount < moneyCnt ? TextColType.Red : TextColType.LightGreen, moneyCnt.ToString()));
        bool isEnough = moneyCount >= needCostMoneyCnt;
        needText.text = Language.Get("L1100", RichTextMsgReplaceConfig.GetRichReplace("MONEY", moneyType), UIHelper.AppendColor(!isEnough ? TextColType.Red : TextColType.LightGreen, needCostMoneyCnt.ToString()));
        needImage.SetIconWithMoneyType(moneyType);
        clickButton.SetListener(() =>
        {
            if (!isEnough)
            {
                ItemTipUtility.ShowMoneyTip(moneyType, true);
                return;
            }
            HeroUIManager.Instance.selectCallType = (HappXBTitle)type;
            HeroUIManager.Instance.selectCallIndex = index;
            HappyXBModel.Instance.SendXBQuest(type, index, 0);