From 5f96222da876151bd7ab1649c038902b30ef8e1c Mon Sep 17 00:00:00 2001
From: client_Lhy <995049470@qq.com>
Date: 星期四, 13 六月 2019 15:15:26 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 Core/GameEngine/Model/Config/ItemConfig.cs |  437 +++++++++++++++++++++++++++---------------------------
 1 files changed, 221 insertions(+), 216 deletions(-)

diff --git a/Core/GameEngine/Model/Config/ItemConfig.cs b/Core/GameEngine/Model/Config/ItemConfig.cs
index ed5de5c..75dacdb 100644
--- a/Core/GameEngine/Model/Config/ItemConfig.cs
+++ b/Core/GameEngine/Model/Config/ItemConfig.cs
@@ -14,78 +14,78 @@
 {
 
     public readonly int ID;
-	public readonly int LV;
-	public readonly string ItemName;
-	public readonly int Type;
-	public readonly int EquipPlace;
-	public readonly int CanRepair;
-	public readonly int PackCount;
-	public readonly int UseLV;
-	public readonly int CanSell;
-	public readonly int CanTrade;
-	public readonly int[] JumpComposeCondi;
-	public readonly int CanDrop;
-	public readonly int CanBind;
-	public readonly int CDType;
-	public readonly int CDTime;
-	public readonly int GoldPrice;
-	public readonly int GoldPaperPrice;
-	public readonly int SilverPrice;
-	public readonly int UseTag;
-	public readonly int Effect1;
-	public readonly int EffectValueA1;
-	public readonly int EffectValueB1;
-	public readonly int EffectValueC1;
-	public readonly int Effect2;
-	public readonly int EffectValueA2;
-	public readonly int EffectValueB2;
-	public readonly int EffectValueC2;
-	public readonly int Effect3;
-	public readonly int EffectValueA3;
-	public readonly int EffectValueB3;
-	public readonly int EffectValueC3;
-	public readonly int Effect4;
-	public readonly int EffectValueA4;
-	public readonly int EffectValueB4;
-	public readonly int EffectValueC4;
-	public readonly int Effect5;
-	public readonly int EffectValueA5;
-	public readonly int EffectValueB5;
-	public readonly int EffectValueC5;
-	public readonly int AddSkill1;
-	public readonly int AddSkill2;
-	public readonly int JobLimit;
-	public readonly int RealmLimit;
-	public readonly int ItemColor;
-	public readonly int StarLevel;
-	public readonly int MaxHoleCount;
-	public readonly int CanBreak;
-	public readonly int MaxEndure;
-	public readonly int EndureReduceType;
-	public readonly int BindType;
-	public readonly int MaxSkillCnt;
-	public readonly int ExpireTime;
-	public readonly int MaxFitLV;
-	public readonly int SuiteiD;
-	public readonly string DropinstantEffName;
-	public readonly string IconKey;
-	public readonly int ChangeOrd;
-	public readonly string Description;
-	public readonly string QualityName;
-	public readonly int QualityEchoType;
-	public readonly int LimitSTR;
-	public readonly int LimitPHY;
-	public readonly int LimitPNE;
-	public readonly string Template;
-	public readonly int DropItemPattern;
-	public readonly int SellTip;
-	public readonly int BatchUse;
-	public readonly int Jump;
-	public readonly int[] GetWay;
-	public readonly string ItemTypeName;
-	public readonly int[] UseCondiType;
+    public readonly int LV;
+    public readonly string ItemName;
+    public readonly int Type;
+    public readonly int EquipPlace;
+    public readonly int CanRepair;
+    public readonly int PackCount;
+    public readonly int UseLV;
+    public readonly int CanSell;
+    public readonly int CanTrade;
+    public readonly int[] JumpComposeCondi;
+    public readonly int CanDrop;
+    public readonly int CanBind;
+    public readonly int CDType;
+    public readonly int CDTime;
+    public readonly int GoldPrice;
+    public readonly int GoldPaperPrice;
+    public readonly int SilverPrice;
+    public readonly int UseTag;
+    public readonly int Effect1;
+    public readonly int EffectValueA1;
+    public readonly int EffectValueB1;
+    public readonly int EffectValueC1;
+    public readonly int Effect2;
+    public readonly int EffectValueA2;
+    public readonly int EffectValueB2;
+    public readonly int EffectValueC2;
+    public readonly int Effect3;
+    public readonly int EffectValueA3;
+    public readonly int EffectValueB3;
+    public readonly int EffectValueC3;
+    public readonly int Effect4;
+    public readonly int EffectValueA4;
+    public readonly int EffectValueB4;
+    public readonly int EffectValueC4;
+    public readonly int Effect5;
+    public readonly int EffectValueA5;
+    public readonly int EffectValueB5;
+    public readonly int EffectValueC5;
+    public readonly int AddSkill1;
+    public readonly int AddSkill2;
+    public readonly int JobLimit;
+    public readonly int RealmLimit;
+    public readonly int ItemColor;
+    public readonly int StarLevel;
+    public readonly int MaxHoleCount;
+    public readonly int CanBreak;
+    public readonly int MaxEndure;
+    public readonly int EndureReduceType;
+    public readonly int BindType;
+    public readonly int MaxSkillCnt;
+    public readonly int ExpireTime;
+    public readonly int MaxFitLV;
+    public readonly int SuiteiD;
+    public readonly string DropinstantEffName;
+    public readonly string IconKey;
+    public readonly int ChangeOrd;
+    public readonly string Description;
+    public readonly string QualityName;
+    public readonly int QualityEchoType;
+    public readonly int LimitSTR;
+    public readonly int LimitPHY;
+    public readonly int LimitPNE;
+    public readonly string Template;
+    public readonly int DropItemPattern;
+    public readonly int SellTip;
+    public readonly int BatchUse;
+    public readonly int Jump;
+    public readonly int[] GetWay;
+    public readonly string ItemTypeName;
+    public readonly int[] UseCondiType;
 
-	public ItemConfig()
+    public ItemConfig()
     {
     }
 
@@ -95,162 +95,162 @@
         {
             var tables = input.Split('\t');
 
-            int.TryParse(tables[0],out ID); 
+            int.TryParse(tables[0], out ID);
 
-			int.TryParse(tables[1],out LV); 
+            int.TryParse(tables[1], out LV);
 
-			ItemName = tables[2];
+            ItemName = tables[2];
 
-			int.TryParse(tables[3],out Type); 
+            int.TryParse(tables[3], out Type);
 
-			int.TryParse(tables[4],out EquipPlace); 
+            int.TryParse(tables[4], out EquipPlace);
 
-			int.TryParse(tables[5],out CanRepair); 
+            int.TryParse(tables[5], out CanRepair);
 
-			int.TryParse(tables[6],out PackCount); 
+            int.TryParse(tables[6], out PackCount);
 
-			int.TryParse(tables[7],out UseLV); 
+            int.TryParse(tables[7], out UseLV);
 
-			int.TryParse(tables[8],out CanSell); 
+            int.TryParse(tables[8], out CanSell);
 
-			int.TryParse(tables[9],out CanTrade); 
+            int.TryParse(tables[9], out CanTrade);
 
-			string[] JumpComposeCondiStringArray = tables[10].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
-			JumpComposeCondi = new int[JumpComposeCondiStringArray.Length];
-			for (int i=0;i<JumpComposeCondiStringArray.Length;i++)
-			{
-				 int.TryParse(JumpComposeCondiStringArray[i],out JumpComposeCondi[i]);
-			}
+            string[] JumpComposeCondiStringArray = tables[10].Trim().Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries);
+            JumpComposeCondi = new int[JumpComposeCondiStringArray.Length];
+            for (int i = 0; i < JumpComposeCondiStringArray.Length; i++)
+            {
+                int.TryParse(JumpComposeCondiStringArray[i], out JumpComposeCondi[i]);
+            }
 
-			int.TryParse(tables[11],out CanDrop); 
+            int.TryParse(tables[11], out CanDrop);
 
-			int.TryParse(tables[12],out CanBind); 
+            int.TryParse(tables[12], out CanBind);
 
-			int.TryParse(tables[13],out CDType); 
+            int.TryParse(tables[13], out CDType);
 
-			int.TryParse(tables[14],out CDTime); 
+            int.TryParse(tables[14], out CDTime);
 
-			int.TryParse(tables[15],out GoldPrice); 
+            int.TryParse(tables[15], out GoldPrice);
 
-			int.TryParse(tables[16],out GoldPaperPrice); 
+            int.TryParse(tables[16], out GoldPaperPrice);
 
-			int.TryParse(tables[17],out SilverPrice); 
+            int.TryParse(tables[17], out SilverPrice);
 
-			int.TryParse(tables[18],out UseTag); 
+            int.TryParse(tables[18], out UseTag);
 
-			int.TryParse(tables[19],out Effect1); 
+            int.TryParse(tables[19], out Effect1);
 
-			int.TryParse(tables[20],out EffectValueA1); 
+            int.TryParse(tables[20], out EffectValueA1);
 
-			int.TryParse(tables[21],out EffectValueB1); 
+            int.TryParse(tables[21], out EffectValueB1);
 
-			int.TryParse(tables[22],out EffectValueC1); 
+            int.TryParse(tables[22], out EffectValueC1);
 
-			int.TryParse(tables[23],out Effect2); 
+            int.TryParse(tables[23], out Effect2);
 
-			int.TryParse(tables[24],out EffectValueA2); 
+            int.TryParse(tables[24], out EffectValueA2);
 
-			int.TryParse(tables[25],out EffectValueB2); 
+            int.TryParse(tables[25], out EffectValueB2);
 
-			int.TryParse(tables[26],out EffectValueC2); 
+            int.TryParse(tables[26], out EffectValueC2);
 
-			int.TryParse(tables[27],out Effect3); 
+            int.TryParse(tables[27], out Effect3);
 
-			int.TryParse(tables[28],out EffectValueA3); 
+            int.TryParse(tables[28], out EffectValueA3);
 
-			int.TryParse(tables[29],out EffectValueB3); 
+            int.TryParse(tables[29], out EffectValueB3);
 
-			int.TryParse(tables[30],out EffectValueC3); 
+            int.TryParse(tables[30], out EffectValueC3);
 
-			int.TryParse(tables[31],out Effect4); 
+            int.TryParse(tables[31], out Effect4);
 
-			int.TryParse(tables[32],out EffectValueA4); 
+            int.TryParse(tables[32], out EffectValueA4);
 
-			int.TryParse(tables[33],out EffectValueB4); 
+            int.TryParse(tables[33], out EffectValueB4);
 
-			int.TryParse(tables[34],out EffectValueC4); 
+            int.TryParse(tables[34], out EffectValueC4);
 
-			int.TryParse(tables[35],out Effect5); 
+            int.TryParse(tables[35], out Effect5);
 
-			int.TryParse(tables[36],out EffectValueA5); 
+            int.TryParse(tables[36], out EffectValueA5);
 
-			int.TryParse(tables[37],out EffectValueB5); 
+            int.TryParse(tables[37], out EffectValueB5);
 
-			int.TryParse(tables[38],out EffectValueC5); 
+            int.TryParse(tables[38], out EffectValueC5);
 
-			int.TryParse(tables[39],out AddSkill1); 
+            int.TryParse(tables[39], out AddSkill1);
 
-			int.TryParse(tables[40],out AddSkill2); 
+            int.TryParse(tables[40], out AddSkill2);
 
-			int.TryParse(tables[41],out JobLimit); 
+            int.TryParse(tables[41], out JobLimit);
 
-			int.TryParse(tables[42],out RealmLimit); 
+            int.TryParse(tables[42], out RealmLimit);
 
-			int.TryParse(tables[43],out ItemColor); 
+            int.TryParse(tables[43], out ItemColor);
 
-			int.TryParse(tables[44],out StarLevel); 
+            int.TryParse(tables[44], out StarLevel);
 
-			int.TryParse(tables[45],out MaxHoleCount); 
+            int.TryParse(tables[45], out MaxHoleCount);
 
-			int.TryParse(tables[46],out CanBreak); 
+            int.TryParse(tables[46], out CanBreak);
 
-			int.TryParse(tables[47],out MaxEndure); 
+            int.TryParse(tables[47], out MaxEndure);
 
-			int.TryParse(tables[48],out EndureReduceType); 
+            int.TryParse(tables[48], out EndureReduceType);
 
-			int.TryParse(tables[49],out BindType); 
+            int.TryParse(tables[49], out BindType);
 
-			int.TryParse(tables[50],out MaxSkillCnt); 
+            int.TryParse(tables[50], out MaxSkillCnt);
 
-			int.TryParse(tables[51],out ExpireTime); 
+            int.TryParse(tables[51], out ExpireTime);
 
-			int.TryParse(tables[52],out MaxFitLV); 
+            int.TryParse(tables[52], out MaxFitLV);
 
-			int.TryParse(tables[53],out SuiteiD); 
+            int.TryParse(tables[53], out SuiteiD);
 
-			DropinstantEffName = tables[54];
+            DropinstantEffName = tables[54];
 
-			IconKey = tables[55];
+            IconKey = tables[55];
 
-			int.TryParse(tables[56],out ChangeOrd); 
+            int.TryParse(tables[56], out ChangeOrd);
 
-			Description = tables[57];
+            Description = tables[57];
 
-			QualityName = tables[58];
+            QualityName = tables[58];
 
-			int.TryParse(tables[59],out QualityEchoType); 
+            int.TryParse(tables[59], out QualityEchoType);
 
-			int.TryParse(tables[60],out LimitSTR); 
+            int.TryParse(tables[60], out LimitSTR);
 
-			int.TryParse(tables[61],out LimitPHY); 
+            int.TryParse(tables[61], out LimitPHY);
 
-			int.TryParse(tables[62],out LimitPNE); 
+            int.TryParse(tables[62], out LimitPNE);
 
-			Template = tables[63];
+            Template = tables[63];
 
-			int.TryParse(tables[64],out DropItemPattern); 
+            int.TryParse(tables[64], out DropItemPattern);
 
-			int.TryParse(tables[65],out SellTip); 
+            int.TryParse(tables[65], out SellTip);
 
-			int.TryParse(tables[66],out BatchUse); 
+            int.TryParse(tables[66], out BatchUse);
 
-			int.TryParse(tables[67],out Jump); 
+            int.TryParse(tables[67], out Jump);
 
-			string[] GetWayStringArray = tables[68].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
-			GetWay = new int[GetWayStringArray.Length];
-			for (int i=0;i<GetWayStringArray.Length;i++)
-			{
-				 int.TryParse(GetWayStringArray[i],out GetWay[i]);
-			}
+            string[] GetWayStringArray = tables[68].Trim().Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries);
+            GetWay = new int[GetWayStringArray.Length];
+            for (int i = 0; i < GetWayStringArray.Length; i++)
+            {
+                int.TryParse(GetWayStringArray[i], out GetWay[i]);
+            }
 
-			ItemTypeName = tables[69];
+            ItemTypeName = tables[69];
 
-			string[] UseCondiTypeStringArray = tables[70].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
-			UseCondiType = new int[UseCondiTypeStringArray.Length];
-			for (int i=0;i<UseCondiTypeStringArray.Length;i++)
-			{
-				 int.TryParse(UseCondiTypeStringArray[i],out UseCondiType[i]);
-			}
+            string[] UseCondiTypeStringArray = tables[70].Trim().Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries);
+            UseCondiType = new int[UseCondiTypeStringArray.Length];
+            for (int i = 0; i < UseCondiTypeStringArray.Length; i++)
+            {
+                int.TryParse(UseCondiTypeStringArray[i], out UseCondiType[i]);
+            }
         }
         catch (Exception ex)
         {
@@ -260,13 +260,13 @@
 
     static Dictionary<string, ItemConfig> configs = new Dictionary<string, ItemConfig>();
     public static ItemConfig Get(string id)
-    {   
-		if (!inited)
+    {
+        if (!inited)
         {
             Debug.Log("ItemConfig 杩樻湭瀹屾垚鍒濆鍖栥��");
             return null;
         }
-		
+
         if (configs.ContainsKey(id))
         {
             return configs[id];
@@ -279,10 +279,15 @@
             rawDatas.Remove(id);
         }
 
+        if (id != "0" && config == null)
+        {
+            Debug.LogErrorFormat("灏濊瘯鍘昏幏寰椾笉瀛樺湪鐨勭墿鍝侊細id->{0}锛岃鑱旂郴<color==yellow>璐炰寒鍜岄檲鏈�</color>銆�", id);
+        }
+
         return config;
     }
 
-	public static ItemConfig Get(int id)
+    public static ItemConfig Get(int id)
     {
         return Get(id.ToString());
     }
@@ -309,25 +314,25 @@
         return values;
     }
 
-	public static bool Has(string id)
+    public static bool Has(string id)
     {
         return configs.ContainsKey(id) || rawDatas.ContainsKey(id);
     }
 
-	public static bool Has(int id)
+    public static bool Has(int id)
     {
         return Has(id.ToString());
     }
 
-	public static bool inited { get; private set; }
+    public static bool inited { get; private set; }
     protected static Dictionary<string, string> rawDatas = new Dictionary<string, string>();
-    public static void Init(bool sync=false)
+    public static void Init(bool sync = false)
     {
-	    inited = false;
-		var path = string.Empty;
+        inited = false;
+        var path = string.Empty;
         if (AssetSource.refdataFromEditor)
         {
-            path = ResourcesPath.CONFIG_FODLER +"/Item.txt";
+            path = ResourcesPath.CONFIG_FODLER + "/Item.txt";
         }
         else
         {
@@ -335,7 +340,7 @@
         }
 
         configs.Clear();
-		var tempConfig = new ItemConfig();
+        var tempConfig = new ItemConfig();
         var preParse = tempConfig is IConfigPostProcess;
 
         if (sync)
@@ -347,67 +352,67 @@
             }
             for (int i = 3; i < lines.Length; i++)
             {
-				try 
-				{
-					var line = lines[i];
-					var index = line.IndexOf("\t");
-					if (index == -1)
-					{
-						continue;
-					}
-					var id = line.Substring(0, index);
+                try
+                {
+                    var line = lines[i];
+                    var index = line.IndexOf("\t");
+                    if (index == -1)
+                    {
+                        continue;
+                    }
+                    var id = line.Substring(0, index);
 
-					if (preParse)
-					{
-						var config = new ItemConfig(line);
-						configs[id] = config;
-						(config as IConfigPostProcess).OnConfigParseCompleted();
-					}
-					else
-					{
-						rawDatas[id] = line;
-					}
-				}
-				catch (System.Exception ex)
+                    if (preParse)
+                    {
+                        var config = new ItemConfig(line);
+                        configs[id] = config;
+                        (config as IConfigPostProcess).OnConfigParseCompleted();
+                    }
+                    else
+                    {
+                        rawDatas[id] = line;
+                    }
+                }
+                catch (System.Exception ex)
                 {
                     Debug.LogError(ex);
                 }
             }
-			inited = true;
+            inited = true;
         }
         else
         {
             ThreadPool.QueueUserWorkItem((object _object) =>
             {
                 var lines = File.ReadAllLines(path);
-				if (!preParse)
-				{
-					rawDatas = new Dictionary<string, string>(lines.Length - 3);
-				}
+                if (!preParse)
+                {
+                    rawDatas = new Dictionary<string, string>(lines.Length - 3);
+                }
                 for (int i = 3; i < lines.Length; i++)
                 {
-					try 
-					{
-					   var line = lines[i];
-						var index = line.IndexOf("\t");
-						if (index == -1)
-						{
-							continue;
-						}
-						var id = line.Substring(0, index);
+                    try
+                    {
+                        var line = lines[i];
+                        var index = line.IndexOf("\t");
+                        if (index == -1)
+                        {
+                            continue;
+                        }
+                        var id = line.Substring(0, index);
 
-						if (preParse)
-						{
-							var config = new ItemConfig(line);
-							configs[id] = config;
-							(config as IConfigPostProcess).OnConfigParseCompleted();
-						}
-						else
-						{
-							rawDatas[id] = line;
-						}
-					}
-					catch (System.Exception ex)
+                        if (preParse)
+                        {
+                            var config = new ItemConfig(line);
+                            configs[id] = config;
+                            (config as IConfigPostProcess).OnConfigParseCompleted();
+                        }
+                        else
+                        {
+                            rawDatas[id] = line;
+                        }
+                    }
+                    catch (System.Exception ex)
                     {
                         Debug.LogError(ex);
                     }

--
Gitblit v1.8.0