From 5a4e34c8a85737c0fa5b5775122da31155cbaef3 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期一, 09 二月 2026 14:46:01 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts

---
 Main/Config/Configs/HeroConfig.cs |   96 ++++++++++++++++++++++++++++++++++++------------
 1 files changed, 72 insertions(+), 24 deletions(-)

diff --git a/Main/Config/Configs/HeroConfig.cs b/Main/Config/Configs/HeroConfig.cs
index 6ecdeb2..e827a51 100644
--- a/Main/Config/Configs/HeroConfig.cs
+++ b/Main/Config/Configs/HeroConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�8鏈�4鏃�
+//    [  Date ]:           Tuesday, December 16, 2025
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -12,28 +12,34 @@
 {
     static HeroConfig()
     {
-        if (isInit)
-        {
-            return;
-        }
-        LazyInit();
+        // 璁块棶杩囬潤鎬佹瀯閫犲嚱鏁�
+        visit = true; 
     }
 
     public int HeroID;
 	public string Name;
+	public int PlayerCanUse;
 	public int Country;
 	public int Quality;
-	public int AtkDistType;
 	public int Class;
+	public int Position;
 	public int[] SkinIDList;
 	public int AtkSkillID;
 	public int AngerSkillID;
+	public int DeathSFX;
+	public int HitSFX;
 	public int AtkInheritPer;
 	public int DefInheritPer;
 	public int HPInheritPer;
-	public string BatAttrDict;
+	public Dictionary<int, int> BatAttrDict;
 	public int[] FetterIDList;
 	public float UIScale;
+	public string Desc;
+	public int RecruitBySelf;
+	public int Specialty;
+	public int HurtType;
+	public int[] Specialty2;
+	public int[] TalentList;
 
     public override int LoadKey(string _key)
     {
@@ -49,21 +55,23 @@
 
 			Name = tables[1];
 
-			int.TryParse(tables[2],out Country); 
+			int.TryParse(tables[2],out PlayerCanUse); 
 
-			int.TryParse(tables[3],out Quality); 
+			int.TryParse(tables[3],out Country); 
 
-			int.TryParse(tables[4],out AtkDistType); 
+			int.TryParse(tables[4],out Quality); 
 
 			int.TryParse(tables[5],out Class); 
 
-			if (tables[6].Contains("["))
+			int.TryParse(tables[6],out Position); 
+
+			if (tables[7].Contains("["))
 			{
-				SkinIDList = JsonMapper.ToObject<int[]>(tables[6]);
+				SkinIDList = JsonMapper.ToObject<int[]>(tables[7]);
 			}
 			else
 			{
-				string[] SkinIDListStringArray = tables[6].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++)
 				{
@@ -71,25 +79,29 @@
 				}
 			}
 
-			int.TryParse(tables[7],out AtkSkillID); 
+			int.TryParse(tables[8],out AtkSkillID); 
 
-			int.TryParse(tables[8],out AngerSkillID); 
+			int.TryParse(tables[9],out AngerSkillID); 
 
-			int.TryParse(tables[9],out AtkInheritPer); 
+			int.TryParse(tables[10],out DeathSFX); 
 
-			int.TryParse(tables[10],out DefInheritPer); 
+			int.TryParse(tables[11],out HitSFX); 
 
-			int.TryParse(tables[11],out HPInheritPer); 
+			int.TryParse(tables[12],out AtkInheritPer); 
 
-			BatAttrDict = tables[12];
+			int.TryParse(tables[13],out DefInheritPer); 
 
-			if (tables[13].Contains("["))
+			int.TryParse(tables[14],out HPInheritPer); 
+
+			BatAttrDict = ConfigParse.ParseIntDict(tables[15]); 
+
+			if (tables[16].Contains("["))
 			{
-				FetterIDList = JsonMapper.ToObject<int[]>(tables[13]);
+				FetterIDList = JsonMapper.ToObject<int[]>(tables[16]);
 			}
 			else
 			{
-				string[] FetterIDListStringArray = tables[13].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++)
 				{
@@ -97,7 +109,43 @@
 				}
 			}
 
-			float.TryParse(tables[14],out UIScale); 
+			float.TryParse(tables[17],out UIScale); 
+
+			Desc = tables[18];
+
+			int.TryParse(tables[19],out RecruitBySelf); 
+
+			int.TryParse(tables[20],out Specialty); 
+
+			int.TryParse(tables[21],out HurtType); 
+
+			if (tables[22].Contains("["))
+			{
+				Specialty2 = JsonMapper.ToObject<int[]>(tables[22]);
+			}
+			else
+			{
+				string[] Specialty2StringArray = tables[22].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
+				Specialty2 = new int[Specialty2StringArray.Length];
+				for (int i=0;i<Specialty2StringArray.Length;i++)
+				{
+					 int.TryParse(Specialty2StringArray[i],out Specialty2[i]);
+				}
+			}
+
+			if (tables[23].Contains("["))
+			{
+				TalentList = JsonMapper.ToObject<int[]>(tables[23]);
+			}
+			else
+			{
+				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]);
+				}
+			}
         }
         catch (Exception exception)
         {

--
Gitblit v1.8.0