From ad0fa3689584ae00a0cff942a40dc0197e3e73ea Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期一, 13 十一月 2023 14:50:53 +0800
Subject: [PATCH] 9895 子 【BT0.1】【主干】坐骑、灵宠、称号升星 / 【BT0.1】坐骑、灵宠、称号升星 - 导表字段类型修改

---
 System/Mount/MountSkinWin.cs                      |    4 ++--
 System/Mount/MountModel.cs                        |    4 ++--
 Core/GameEngine/Model/Config/HorseStarUpConfig.cs |   37 +++++++++++++++++++++++++------------
 3 files changed, 29 insertions(+), 16 deletions(-)

diff --git a/Core/GameEngine/Model/Config/HorseStarUpConfig.cs b/Core/GameEngine/Model/Config/HorseStarUpConfig.cs
index a0a49ec..ae0bdc0 100644
--- a/Core/GameEngine/Model/Config/HorseStarUpConfig.cs
+++ b/Core/GameEngine/Model/Config/HorseStarUpConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           Fish
-//    [  Date ]:           2023骞�10鏈�22鏃�
+//    [  Date ]:           2023骞�10鏈�24鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -9,7 +9,6 @@
 using System;
 using UnityEngine;
 using LitJson;
-using System.Linq;
 
 public partial class HorseStarUpConfig
 {
@@ -17,7 +16,7 @@
     public readonly int id;
 	public readonly int HorseID;
 	public readonly int HorseStar;
-	public readonly List<int[]> StarUpNeedItemList;
+	public readonly int[][] StarUpNeedItemList;
 	public readonly int[] StarAttrType;
 	public readonly int[] StarAttrValue;
 
@@ -37,20 +36,34 @@
 
 			int.TryParse(tables[2],out HorseStar); 
 
-			StarUpNeedItemList = JsonMapper.ToObject<int[][]>(tables[3]).ToList(); 
+			StarUpNeedItemList = JsonMapper.ToObject<int[][]>(tables[3]); 
 
-			string[] StarAttrTypeStringArray = tables[4].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
-			StarAttrType = new int[StarAttrTypeStringArray.Length];
-			for (int i=0;i<StarAttrTypeStringArray.Length;i++)
+			if (tables[4].Contains("["))
 			{
-				 int.TryParse(StarAttrTypeStringArray[i],out StarAttrType[i]);
+				StarAttrType = JsonMapper.ToObject<int[]>(tables[4]);
+			}
+			else
+			{
+				string[] StarAttrTypeStringArray = tables[4].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
+				StarAttrType = new int[StarAttrTypeStringArray.Length];
+				for (int i=0;i<StarAttrTypeStringArray.Length;i++)
+				{
+					 int.TryParse(StarAttrTypeStringArray[i],out StarAttrType[i]);
+				}
 			}
 
-			string[] StarAttrValueStringArray = tables[5].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
-			StarAttrValue = new int[StarAttrValueStringArray.Length];
-			for (int i=0;i<StarAttrValueStringArray.Length;i++)
+			if (tables[5].Contains("["))
 			{
-				 int.TryParse(StarAttrValueStringArray[i],out StarAttrValue[i]);
+				StarAttrValue = JsonMapper.ToObject<int[]>(tables[5]);
+			}
+			else
+			{
+				string[] StarAttrValueStringArray = tables[5].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
+				StarAttrValue = new int[StarAttrValueStringArray.Length];
+				for (int i=0;i<StarAttrValueStringArray.Length;i++)
+				{
+					 int.TryParse(StarAttrValueStringArray[i],out StarAttrValue[i]);
+				}
 			}
         }
         catch (Exception ex)
diff --git a/System/Mount/MountModel.cs b/System/Mount/MountModel.cs
index 283c666..64ab1e0 100644
--- a/System/Mount/MountModel.cs
+++ b/System/Mount/MountModel.cs
@@ -338,8 +338,8 @@
 
         var id = HorseStarUpConfig.horseIDToIDs[horseID][star];
         var nextStarConfig = HorseStarUpConfig.Get(id);
-        List<int[]> awards = nextStarConfig.StarUpNeedItemList;
-        for (int i = 0; i < awards.Count; i++)
+        var awards = nextStarConfig.StarUpNeedItemList;
+        for (int i = 0; i < awards.Length; i++)
         {
             if (playerPack.GetItemCountByID(PackType.Item, awards[i][0]) < awards[i][1])
                 return;
diff --git a/System/Mount/MountSkinWin.cs b/System/Mount/MountSkinWin.cs
index 7ca89d0..e28d453 100644
--- a/System/Mount/MountSkinWin.cs
+++ b/System/Mount/MountSkinWin.cs
@@ -284,7 +284,7 @@
                         }
                     }
 
-                    List<int[]> awards = new List<int[]>();
+                    int[][] awards = new int[][] { };
                     if (star != maxStar)
                     { 
                         var id = HorseStarUpConfig.horseIDToIDs[signHorseID][star];
@@ -294,7 +294,7 @@
 
                     for (int i = 0; i < itemCells.Count; i++)
                     {
-                        if (i < awards.Count)
+                        if (i < awards.Length)
                         {
                             itemCells[i].SetActive(true);
                             int itemID = awards[i][0];

--
Gitblit v1.8.0