ソースを参照

击杀小怪后获得经验值

SZAND\msx_2 5 ヶ月 前
コミット
88b0341ade
35 ファイル変更1349 行追加615 行削除
  1. 8 14
      ActionTowerDefense/Assets/Gen/CfgSoldierLevel.cs
  2. 1 1
      ActionTowerDefense/Assets/Gen/CfgSoldierLevel.cs.meta
  3. 80 0
      ActionTowerDefense/Assets/Gen/SingleSoldierLevel.cs
  4. 1 1
      ActionTowerDefense/Assets/Gen/SingleSoldierLevel.cs.meta
  5. 0 117
      ActionTowerDefense/Assets/Gen/SingleSwordPieceConfig.cs
  6. 5 5
      ActionTowerDefense/Assets/Gen/Tables.cs
  7. 695 215
      ActionTowerDefense/Assets/Scenes/Game.unity
  8. 8 0
      ActionTowerDefense/Assets/Scripts/Characters/Enemy.cs
  9. 5 0
      ActionTowerDefense/Assets/Scripts/Characters/MoveCharacter.cs
  10. 7 0
      ActionTowerDefense/Assets/Scripts/GameManager.cs
  11. 54 0
      ActionTowerDefense/Assets/Scripts/Rougue/SoldierEXP.cs
  12. 11 0
      ActionTowerDefense/Assets/Scripts/Rougue/SoldierEXP.cs.meta
  13. 0 62
      ActionTowerDefense/Assets/Scripts/Rougue/SoulPieceCard.cs
  14. 0 18
      ActionTowerDefense/Assets/Scripts/Rougue/SoulPiecesDeck.cs
  15. 8 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua.meta
  16. 4 6
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/BaGuaSurface.cs
  17. 0 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/BaGuaSurface.cs.meta
  18. 13 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/ChooseSoldier.cs
  19. 11 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/ChooseSoldier.cs.meta
  20. 98 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/GuaProbablityPool.cs
  21. 11 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/GuaProbablityPool.cs.meta
  22. 58 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPieceCard.cs
  23. 0 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPieceCard.cs.meta
  24. 125 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPiecesDeck.cs
  25. 0 0
      ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPiecesDeck.cs.meta
  26. 122 0
      ActionTowerDefense/GenerateDatas/json/cfgsoldierlevel.json
  27. 0 152
      ActionTowerDefense/GenerateDatas/json/cfgswordpiece.json
  28. 24 24
      ActionTowerDefense/Luban/.cache.meta
  29. BIN
      ActionTowerDefense/Luban/Config/Datas/__tables__.xlsx
  30. BIN
      ActionTowerDefense/Luban/Config/Datas/卦象属性池.xlsx
  31. BIN
      ActionTowerDefense/Luban/Config/Datas/卦象概率表.xlsx
  32. BIN
      ActionTowerDefense/Luban/Config/Datas/士兵等级属性表.xlsx
  33. BIN
      ActionTowerDefense/Luban/Config/Datas/残魂碎片品质概率表.xlsx
  34. BIN
      ActionTowerDefense/Luban/Config/Datas/残魂碎片角色池表.xlsx
  35. BIN
      ActionTowerDefense/Luban/Config/Datas/飞剑碎片表.xlsx

+ 8 - 14
ActionTowerDefense/Assets/Gen/CfgSwordPiece.cs → ActionTowerDefense/Assets/Gen/CfgSoldierLevel.cs

@@ -14,31 +14,25 @@ using SimpleJSON;
 namespace cfg
 { 
 
-public sealed partial class CfgSwordPiece
+public sealed partial class CfgSoldierLevel
 {
-    private readonly Dictionary<int, SingleSwordPieceConfig> _dataMap;
-    private readonly List<SingleSwordPieceConfig> _dataList;
+    private readonly List<SingleSoldierLevel> _dataList;
     
-    public CfgSwordPiece(JSONNode _json)
+
+    public CfgSoldierLevel(JSONNode _json)
     {
-        _dataMap = new Dictionary<int, SingleSwordPieceConfig>();
-        _dataList = new List<SingleSwordPieceConfig>();
+        _dataList = new List<SingleSoldierLevel>();
         
         foreach(JSONNode _row in _json.Children)
         {
-            var _v = SingleSwordPieceConfig.DeserializeSingleSwordPieceConfig(_row);
+            var _v = SingleSoldierLevel.DeserializeSingleSoldierLevel(_row);
             _dataList.Add(_v);
-            _dataMap.Add(_v.ID, _v);
         }
         PostInit();
     }
 
-    public Dictionary<int, SingleSwordPieceConfig> DataMap => _dataMap;
-    public List<SingleSwordPieceConfig> DataList => _dataList;
+    public List<SingleSoldierLevel> DataList => _dataList;
 
-    public SingleSwordPieceConfig GetOrDefault(int key) => _dataMap.TryGetValue(key, out var v) ? v : null;
-    public SingleSwordPieceConfig Get(int key) => _dataMap[key];
-    public SingleSwordPieceConfig this[int key] => _dataMap[key];
 
     public void Resolve(Dictionary<string, object> _tables)
     {
@@ -56,7 +50,7 @@ public sealed partial class CfgSwordPiece
             v.TranslateText(translator);
         }
     }
-    
+
     
     partial void PostInit();
     partial void PostResolve();

+ 1 - 1
ActionTowerDefense/Assets/Gen/CfgSwordPiece.cs.meta → ActionTowerDefense/Assets/Gen/CfgSoldierLevel.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 38725008f8beda34b8829ae71ef0a839
+guid: c73681a056171b44d967ec59cb4601a0
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 80 - 0
ActionTowerDefense/Assets/Gen/SingleSoldierLevel.cs

@@ -0,0 +1,80 @@
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+using Bright.Serialization;
+using System.Collections.Generic;
+using SimpleJSON;
+
+
+
+namespace cfg
+{ 
+
+public sealed partial class SingleSoldierLevel :  Bright.Config.BeanBase 
+{
+    public SingleSoldierLevel(JSONNode _json) 
+    {
+        { if(!_json["Level"].IsNumber) { throw new SerializationException(); }  Level = _json["Level"]; }
+        { if(!_json["EXP"].IsNumber) { throw new SerializationException(); }  EXP = _json["EXP"]; }
+        { if(!_json["SummonAttack"].IsNumber) { throw new SerializationException(); }  SummonAttack = _json["SummonAttack"]; }
+        { if(!_json["MarchAttack"].IsNumber) { throw new SerializationException(); }  MarchAttack = _json["MarchAttack"]; }
+        { if(!_json["HP"].IsNumber) { throw new SerializationException(); }  HP = _json["HP"]; }
+        { if(!_json["armor"].IsNumber) { throw new SerializationException(); }  Armor = _json["armor"]; }
+        PostInit();
+    }
+
+    public SingleSoldierLevel(int Level, int EXP, int SummonAttack, int MarchAttack, int HP, int armor ) 
+    {
+        this.Level = Level;
+        this.EXP = EXP;
+        this.SummonAttack = SummonAttack;
+        this.MarchAttack = MarchAttack;
+        this.HP = HP;
+        this.Armor = armor;
+        PostInit();
+    }
+
+    public static SingleSoldierLevel DeserializeSingleSoldierLevel(JSONNode _json)
+    {
+        return new SingleSoldierLevel(_json);
+    }
+
+    public int Level { get; private set; }
+    public int EXP { get; private set; }
+    public int SummonAttack { get; private set; }
+    public int MarchAttack { get; private set; }
+    public int HP { get; private set; }
+    public int Armor { get; private set; }
+
+    public const int __ID__ = -1866386518;
+    public override int GetTypeId() => __ID__;
+
+    public  void Resolve(Dictionary<string, object> _tables)
+    {
+        PostResolve();
+    }
+
+    public  void TranslateText(System.Func<string, string, string> translator)
+    {
+    }
+
+    public override string ToString()
+    {
+        return "{ "
+        + "Level:" + Level + ","
+        + "EXP:" + EXP + ","
+        + "SummonAttack:" + SummonAttack + ","
+        + "MarchAttack:" + MarchAttack + ","
+        + "HP:" + HP + ","
+        + "Armor:" + Armor + ","
+        + "}";
+    }
+    
+    partial void PostInit();
+    partial void PostResolve();
+}
+}

+ 1 - 1
ActionTowerDefense/Assets/Gen/SingleSwordPieceConfig.cs.meta → ActionTowerDefense/Assets/Gen/SingleSoldierLevel.cs.meta

@@ -1,5 +1,5 @@
 fileFormatVersion: 2
-guid: 122a26952aba0e34288e6cf18cc55986
+guid: 603b8ca7625f67247abf9ce3211497cc
 MonoImporter:
   externalObjects: {}
   serializedVersion: 2

+ 0 - 117
ActionTowerDefense/Assets/Gen/SingleSwordPieceConfig.cs

@@ -1,117 +0,0 @@
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-using Bright.Serialization;
-using System.Collections.Generic;
-using SimpleJSON;
-
-
-
-namespace cfg
-{ 
-
-public sealed partial class SingleSwordPieceConfig :  Bright.Config.BeanBase 
-{
-    public SingleSwordPieceConfig(JSONNode _json) 
-    {
-        { if(!_json["ID"].IsNumber) { throw new SerializationException(); }  ID = _json["ID"]; }
-        { if(!_json["IconPath"].IsString) { throw new SerializationException(); }  IconPath = _json["IconPath"]; }
-        { if(!_json["LitOrNot"].IsBoolean) { throw new SerializationException(); }  LitOrNot = _json["LitOrNot"]; }
-        { if(!_json["Level"].IsString) { throw new SerializationException(); }  Level = _json["Level"]; }
-        { if(!_json["SummonAttack"].IsNumber) { throw new SerializationException(); }  SummonAttack = _json["SummonAttack"]; }
-        { if(!_json["MarchAttack"].IsNumber) { throw new SerializationException(); }  MarchAttack = _json["MarchAttack"]; }
-        { if(!_json["MoreCost"].IsNumber) { throw new SerializationException(); }  MoreCost = _json["MoreCost"]; }
-        { if(!_json["CriticalHit"].IsNumber) { throw new SerializationException(); }  CriticalHit = _json["CriticalHit"]; }
-        { if(!_json["CriticalDamage"].IsNumber) { throw new SerializationException(); }  CriticalDamage = _json["CriticalDamage"]; }
-        { if(!_json["HP"].IsNumber) { throw new SerializationException(); }  HP = _json["HP"]; }
-        { if(!_json["Armor"].IsNumber) { throw new SerializationException(); }  Armor = _json["Armor"]; }
-        { if(!_json["Miss"].IsNumber) { throw new SerializationException(); }  Miss = _json["Miss"]; }
-        { if(!_json["AttackSpeed"].IsNumber) { throw new SerializationException(); }  AttackSpeed = _json["AttackSpeed"]; }
-        PostInit();
-    }
-
-    public SingleSwordPieceConfig(int ID, string IconPath, bool LitOrNot, string Level, int SummonAttack, int MarchAttack, int MoreCost, float CriticalHit, float CriticalDamage, int HP, int Armor, float Miss, float AttackSpeed ) 
-    {
-        this.ID = ID;
-        this.IconPath = IconPath;
-        this.LitOrNot = LitOrNot;
-        this.Level = Level;
-        this.SummonAttack = SummonAttack;
-        this.MarchAttack = MarchAttack;
-        this.MoreCost = MoreCost;
-        this.CriticalHit = CriticalHit;
-        this.CriticalDamage = CriticalDamage;
-        this.HP = HP;
-        this.Armor = Armor;
-        this.Miss = Miss;
-        this.AttackSpeed = AttackSpeed;
-        PostInit();
-    }
-
-    public static SingleSwordPieceConfig DeserializeSingleSwordPieceConfig(JSONNode _json)
-    {
-        return new SingleSwordPieceConfig(_json);
-    }
-
-    public int ID { get; private set; }
-    public string IconPath { get; private set; }
-    /// <summary>
-    /// True是激活后的数值,False是未激活的数值
-    /// </summary>
-    public bool LitOrNot { get; private set; }
-    public string Level { get; private set; }
-    public int SummonAttack { get; private set; }
-    public int MarchAttack { get; private set; }
-    public int MoreCost { get; private set; }
-    /// <summary>
-    /// 小数,10%填0.1
-    /// </summary>
-    public float CriticalHit { get; private set; }
-    /// <summary>
-    /// 小数,10%填0.1
-    /// </summary>
-    public float CriticalDamage { get; private set; }
-    public int HP { get; private set; }
-    public int Armor { get; private set; }
-    public float Miss { get; private set; }
-    public float AttackSpeed { get; private set; }
-
-    public const int __ID__ = -1709828581;
-    public override int GetTypeId() => __ID__;
-
-    public  void Resolve(Dictionary<string, object> _tables)
-    {
-        PostResolve();
-    }
-
-    public  void TranslateText(System.Func<string, string, string> translator)
-    {
-    }
-
-    public override string ToString()
-    {
-        return "{ "
-        + "ID:" + ID + ","
-        + "IconPath:" + IconPath + ","
-        + "LitOrNot:" + LitOrNot + ","
-        + "Level:" + Level + ","
-        + "SummonAttack:" + SummonAttack + ","
-        + "MarchAttack:" + MarchAttack + ","
-        + "MoreCost:" + MoreCost + ","
-        + "CriticalHit:" + CriticalHit + ","
-        + "CriticalDamage:" + CriticalDamage + ","
-        + "HP:" + HP + ","
-        + "Armor:" + Armor + ","
-        + "Miss:" + Miss + ","
-        + "AttackSpeed:" + AttackSpeed + ","
-        + "}";
-    }
-    
-    partial void PostInit();
-    partial void PostResolve();
-}
-}

+ 5 - 5
ActionTowerDefense/Assets/Gen/Tables.cs

@@ -18,7 +18,7 @@ public sealed partial class Tables
     public CfgBuilding CfgBuilding {get; }
     public CfgCreateEnemy CfgCreateEnemy {get; }
     public CfgCreateBuilding CfgCreateBuilding {get; }
-    public CfgSwordPiece CfgSwordPiece {get; }
+    public CfgSoldierLevel CfgSoldierLevel {get; }
 
     public Tables(System.Func<string, JSONNode> loader)
     {
@@ -31,15 +31,15 @@ public sealed partial class Tables
         tables.Add("CfgCreateEnemy", CfgCreateEnemy);
         CfgCreateBuilding = new CfgCreateBuilding(loader("cfgcreatebuilding")); 
         tables.Add("CfgCreateBuilding", CfgCreateBuilding);
-        CfgSwordPiece = new CfgSwordPiece(loader("cfgswordpiece")); 
-        tables.Add("CfgSwordPiece", CfgSwordPiece);
+        CfgSoldierLevel = new CfgSoldierLevel(loader("cfgsoldierlevel")); 
+        tables.Add("CfgSoldierLevel", CfgSoldierLevel);
         PostInit();
 
         CfgEnemy.Resolve(tables); 
         CfgBuilding.Resolve(tables); 
         CfgCreateEnemy.Resolve(tables); 
         CfgCreateBuilding.Resolve(tables); 
-        CfgSwordPiece.Resolve(tables); 
+        CfgSoldierLevel.Resolve(tables); 
         PostResolve();
     }
 
@@ -49,7 +49,7 @@ public sealed partial class Tables
         CfgBuilding.TranslateText(translator); 
         CfgCreateEnemy.TranslateText(translator); 
         CfgCreateBuilding.TranslateText(translator); 
-        CfgSwordPiece.TranslateText(translator); 
+        CfgSoldierLevel.TranslateText(translator); 
     }
     
     partial void PostInit();

ファイルの差分が大きいため隠しています
+ 695 - 215
ActionTowerDefense/Assets/Scenes/Game.unity


+ 8 - 0
ActionTowerDefense/Assets/Scripts/Characters/Enemy.cs

@@ -5,6 +5,7 @@ using System.Collections.Generic;
 using UnityEngine;
 using Base.Common;
 using UnityEditor.SceneManagement;
+using Sirenix.OdinInspector;
 
 public enum TargetType
 {
@@ -28,6 +29,8 @@ public enum SearchState
 public class Enemy : MoveCharacter
 {
     [Header("敌方单位属性")]
+    [LabelText("击杀提供的经验值")]
+    public int exp;
     public int id;
     public int baseSortingOrder;
     int sortingOrder = 0;
@@ -418,6 +421,11 @@ public class Enemy : MoveCharacter
             case CharacterState.Die:
                 if (dieKeepTime <= 0)
                 {
+                    if (killer.GetComponent<Demonic>())
+                    {
+                        SoldierType st = killer.GetComponent<Demonic>().soldierType;
+                        SoldierEXP.expInstance.AddEXP(st, exp);
+                    }
                     gameObject.SetActive(false);
                     break;
                 }

+ 5 - 0
ActionTowerDefense/Assets/Scripts/Characters/MoveCharacter.cs

@@ -76,6 +76,10 @@ public class MoveCharacter : Character
     [Header("Êܵ½ÖØÉË")]
     public float heavyDamage;
 
+    [Header("±»Ë­»÷ɱ")]
+    [DisplayOnly]
+    public Character killer;
+
     public virtual void Awake()
     {
         spinee = bodyTrans.GetChild(0).gameObject;
@@ -278,6 +282,7 @@ public class MoveCharacter : Character
         uiHp.Show(hp, totalHp);
         if (hp <= 0)
         {
+            killer = attackFrom;
             hitFeedbackSystem.curCharacterState = CharacterState.Die;
             ChangeState(CharacterState.Die);
             return;

+ 7 - 0
ActionTowerDefense/Assets/Scripts/GameManager.cs

@@ -6,6 +6,13 @@ using System.IO;
 using UnityEngine;
 using TMPro;
 
+public enum SoldierType
+{
+    spear = 0,
+    sword = 1,
+    shield = 2,
+}
+
 public class GameManager : MonoBehaviour
 {
     public static GameManager instance;

+ 54 - 0
ActionTowerDefense/Assets/Scripts/Rougue/SoldierEXP.cs

@@ -0,0 +1,54 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using Sirenix.OdinInspector;
+using cfg;
+
+public class SoldierEXP : MonoBehaviour
+{
+    [System.Serializable]
+    public struct SingleSoldierEXP
+    {
+        [DisplayOnly]
+        [LabelText("Ê¿±øÖÖÀà")]
+        public SoldierType st;
+        [DisplayOnly]
+        [LabelText("×ܾ­ÑéÖµ")]
+        public int curEXP;
+    }
+
+    static public SoldierEXP expInstance;
+
+    [DisplayOnly]
+    [LabelText("ÿÖÖÊ¿±ø¾­ÑéÖµ")]
+    public SingleSoldierEXP[] ssexp = new SingleSoldierEXP[3];
+
+    private List<SingleSoldierLevel> expList;
+
+    private void OnEnable()
+    {
+        expInstance = this;
+    }
+
+    private void Start()
+    {
+        expList = GameManager.instance.allCfgData.CfgSoldierLevel.DataList;
+        SoldierType[] sts = GameManager.instance.curSoldiers;
+        for (int i = 0; i < 3; i++)
+        {
+            ssexp[i].st = sts[i];
+        }
+    }
+
+    public void AddEXP(SoldierType st, int exp)
+    {
+        for(int i = 0; i < 3; i++)
+        {
+            if (ssexp[i].st == st)
+            {
+                ssexp[i].curEXP += exp;
+                break;
+            }
+        }
+    }
+}

+ 11 - 0
ActionTowerDefense/Assets/Scripts/Rougue/SoldierEXP.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b769c0d93fec475439ee332391b365f8
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 0 - 62
ActionTowerDefense/Assets/Scripts/Rougue/SoulPieceCard.cs

@@ -1,62 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-using UnityEngine.UI;
-using Sirenix.OdinInspector;
-
-public class SoulPieceCard : MonoBehaviour
-{
-    public enum Soldier
-    {
-        spear = 0,
-        sword = 1,
-        shield = 2,
-    }
-
-    public enum Color
-    {
-        green = 0,
-        blue = 1,
-        purple = 2,
-        orange = 3,
-        red = 4,
-    }
-
-    public enum Attribute
-    {
-        summonAttack,       //起手式伤害
-        marchAttack,        //行军式伤害
-        criticalHit,        //暴击
-        poison,             //中毒
-    }
-    
-    [System.Serializable]
-    public struct AttributeInfo
-    {
-        public Attribute attri;
-        [ShowIf("attri", Attribute.summonAttack)][LabelText("起手式伤害增加")]
-        public int addSumAttack;
-        [ShowIf("attri", Attribute.marchAttack)][LabelText("行军式伤害增加")]
-        public int addMarAttack;
-        [Range(0, 1)]
-        [ShowIf("attri", Attribute.criticalHit)] [LabelText("暴击增加")]
-        public float addCriHit;
-        [Range(0, 1)]
-        [ShowIf("attri", Attribute.poison)][LabelText("中毒增加")]
-        public float addPoison;
-        [LabelText("升级属性提升倍率")]
-        public float magnification;
-    }
-
-    [System.Serializable]
-    public struct CardInfo
-    {
-        public Color color;
-        [LabelText("本品质新增属性")]
-        public List<AttributeInfo> newAtt;
-    }
-
-    public Soldier soldier;
-    public Image icon;
-    public CardInfo[] cardInfos = new CardInfo[5];
-}

+ 0 - 18
ActionTowerDefense/Assets/Scripts/Rougue/SoulPiecesDeck.cs

@@ -1,18 +0,0 @@
-using System.Collections;
-using System.Collections.Generic;
-using UnityEngine;
-using cfg;
-
-public class SoulPiecesDeck : MonoBehaviour
-{
-    public Dictionary<int, SingleSwordPieceConfig> swordPieces;
-
-    private void Start()
-    {
-        Debug.Log(GameManager.instance);
-        Debug.Log(GameManager.instance.allCfgData);
-        Debug.Log(GameManager.instance.allCfgData.CfgSwordPiece);
-        Debug.Log(GameManager.instance.allCfgData.CfgSwordPiece.DataMap);
-        swordPieces = GameManager.instance.allCfgData.CfgSwordPiece.DataMap;
-    }
-}

+ 8 - 0
ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua.meta

@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: d6af2f097bf8bdb4b91b10e240a3b5c6
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 4 - 6
ActionTowerDefense/Assets/Scripts/Rougue/BaGuaSurface.cs → ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/BaGuaSurface.cs

@@ -5,7 +5,10 @@ using UnityEngine.UI;
 
 public class BaGuaSurface : MonoBehaviour
 {
-    static private GameObject bgSurface;
+    static public GameObject bgSurface;
+
+    public GameObject unbaggedCard;
+    public GameObject baggedCard;
 
     private void Start()
     {
@@ -17,9 +20,4 @@ public class BaGuaSurface : MonoBehaviour
         Time.timeScale = 0;
         bgSurface.SetActive(true);
     }
-
-    public void RandomCard()
-    {
-        
-    }
 }

+ 0 - 0
ActionTowerDefense/Assets/Scripts/Rougue/BaGuaSurface.cs.meta → ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/BaGuaSurface.cs.meta


+ 13 - 0
ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/ChooseSoldier.cs

@@ -0,0 +1,13 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class ChooseSoldier : MonoBehaviour
+{
+    public SoulPieceCard soldier;
+
+    public void Choose()
+    {
+
+    }
+}

+ 11 - 0
ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/ChooseSoldier.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 7690662d593c11149bbdb012586e39f0
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 98 - 0
ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/GuaProbablityPool.cs

@@ -0,0 +1,98 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using cfg;
+
+public class GuaProbablityPool : MonoBehaviour
+{
+    [System.Serializable]
+    //记录每个士兵每个种类当前所剩的卦象池
+    public struct SoldierGuaPool
+    {
+        public SoldierType soldier;
+        public int icon;
+        public List<int> pool;
+    }
+    
+    //public List<SingleGuaProbability> guaProbabilities;
+    private SoldierType[] curSoldiers;
+
+    [Header("卦象概率池")]
+    [DisplayOnly]
+    public List<SoldierGuaPool> guaPool;
+    private List<SoldierGuaPool> origPool;
+
+    private void Start()
+    {
+        //guaProbabilities = GameManager.instance.allCfgData.CfgGuaProbability.DataList;
+        curSoldiers = GameManager.instance.curSoldiers;
+        //SetGuaPoolList();
+        origPool = new List<SoldierGuaPool>(guaPool);
+    }
+    /*
+    public void SetGuaPoolList()
+    {
+        int i = 0;
+        foreach (SingleGuaProbability sgpro in guaProbabilities)
+        {
+            SoldierGuaPool sgp = new SoldierGuaPool();
+            if (sgpro.SoldierType.Contains("Soul"))
+            {
+                sgp.icon = 1;
+            }
+            else
+            {
+                sgp.icon = 0;
+            }
+            foreach(SoldierType st in curSoldiers)
+            {
+                if (sgpro.SoldierType.Contains(st.ToString()))
+                {
+                    sgp.soldier = st;
+                    break;
+                }
+            }
+            List<int> tempPool = new List<int>();
+            for (int j = 0; j < sgpro.Gua1; j++)
+            {
+                tempPool.Add(0);
+            }
+            for (int j = 0; j < sgpro.Gua2; j++)
+            {
+                tempPool.Add(1);
+            }
+            for (int j = 0; j < sgpro.Gua3; j++)
+            {
+                tempPool.Add(2);
+            }
+            for (int j = 0; j < sgpro.Gua4; j++)
+            {
+                tempPool.Add(3);
+            }
+            for (int j = 0; j < sgpro.Gua5; j++)
+            {
+                tempPool.Add(4);
+            }
+            for (int j = 0; j < sgpro.Gua6; j++)
+            {
+                tempPool.Add(5);
+            }
+            for (int j = 0; j < sgpro.Gua7; j++)
+            {
+                tempPool.Add(6);
+            }
+            for (int j = 0; j < sgpro.Gua8; j++)
+            {
+                tempPool.Add(7);
+            }
+            sgp.pool = new List<int>(tempPool);
+            guaPool[i] = sgp;
+            i += 1;
+        }
+    }
+    */
+    public void ResetGuaPool(int id)
+    {
+        guaPool[id] = origPool[id];
+    }
+}

+ 11 - 0
ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/GuaProbablityPool.cs.meta

@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: eb3fc6a2c486b5f4d84731e5b6ff54b2
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 

+ 58 - 0
ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPieceCard.cs

@@ -0,0 +1,58 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEngine.UI;
+using Sirenix.OdinInspector;
+
+public enum CardColor
+{
+    green = 0,
+    blue = 1,
+    purple = 2,
+    orange = 3,
+    red = 4,
+}
+
+public class SoulPieceCard : MonoBehaviour
+{
+    public enum Attribute
+    {
+        summonAttack,       //起手式伤害
+        marchAttack,        //行军式伤害
+        moreCost,           //增加消耗
+        criticalHit,        //暴击
+        criticalDamage,     //暴击伤害
+        addHP,              //增加血量
+        addArmor,           //增加护甲
+        miss,               //闪避
+        attackSpeed,        //攻速
+    }
+    
+    [System.Serializable]
+    public struct AttributeInfo
+    {
+        [DisplayOnly] [LabelText("起手式伤害增加")]
+        public int addSumAttack;
+        [DisplayOnly] [LabelText("行军式伤害增加")]
+        public int addMarAttack;
+        [DisplayOnly] [LabelText("增加消耗")]
+        public int cost;
+        [DisplayOnly] [LabelText("暴击增加")]
+        public float addCriHit;
+        [DisplayOnly] [LabelText("暴伤增加")]
+        public float addCriDam;
+        [DisplayOnly] [LabelText("增加血量")]
+        public int moreHP;
+        [DisplayOnly] [LabelText("增加护甲")]
+        public int moreArmor;
+        [DisplayOnly] [LabelText("增加闪避")]
+        public float moreMiss;
+        [DisplayOnly] [LabelText("增加攻速")]
+        public float addAttackSpeed;
+    }
+
+    public SoldierType soldier;
+    public Image icon;
+    public CardColor curColor;
+    public List<AttributeInfo> attribute = new List<AttributeInfo>();
+}

+ 0 - 0
ActionTowerDefense/Assets/Scripts/Rougue/SoulPieceCard.cs.meta → ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPieceCard.cs.meta


+ 125 - 0
ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPiecesDeck.cs

@@ -0,0 +1,125 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+using cfg;
+using Sirenix.OdinInspector;
+
+public class SoulPiecesDeck : MonoBehaviour
+{
+    [System.Serializable]
+    //记录每种士兵当前的随机概率(一般随关卡变化,特殊情况变动,如连续3次选择后概率等级-2)
+    public struct SoldierProbability
+    {
+        public SoldierType soldier;
+        [LabelText("当前兵种概率等级")]
+        public int probabilityID;
+    }
+
+    //组件们
+    private BaGuaSurface bgs;
+    //卦象概率
+    private GuaProbablityPool gpp;
+    private List<GuaProbablityPool.SoldierGuaPool> sgp;
+    //品质概率
+    //private List<SingleCardColor> cardColor;
+
+    [Header("各兵种当前概率等级")]
+    public SoldierProbability[] soldierProbabilities = new SoldierProbability[3];
+
+    private void Start()
+    {
+        //cardColor = GameManager.instance.allCfgData.CfgCardColors.DataList;
+        bgs = BaGuaSurface.bgSurface.GetComponent<BaGuaSurface>();
+        gpp = GetComponent<GuaProbablityPool>();
+        sgp = gpp.guaPool;
+        RandomCard(SoldierType.shield);
+    }
+
+    //随机一个卦象
+    public int RandomGua(SoldierType st, int icon)
+    {
+        int card = 0;
+        for (int i = 0; i < 6; i++)
+        {
+            if (sgp[i].soldier == st && sgp[i].icon == icon)
+            {
+                int ind = Random.Range(0, sgp[i].pool.Count);
+                card = sgp[i].pool[ind];
+                sgp[i].pool.RemoveAt(ind);
+                break;
+            }
+        }
+        return card;
+    }
+
+    //随机颜色品质
+    public CardColor RandomColor(int id)
+    {
+        CardColor cc = CardColor.green;
+        float color = Random.Range(0, 100);
+        //color -= cardColor[id].Green;
+        if (color >= 0)
+        {
+            //color -= cardColor[id].Blue;
+            if (color >= 0)
+            {
+                //color -= cardColor[id].Purple;
+                if (color >= 0)
+                {
+                    //color -= cardColor[id].Orange;
+                    if (color >= 0)
+                    {
+                        cc = CardColor.red;
+                    }
+                    else
+                    {
+                        cc = CardColor.orange;
+                    }
+                }
+                else
+                {
+                    cc = CardColor.purple;
+                }
+            }
+            else
+            {
+                cc = CardColor.blue;
+            }
+        }
+        return cc;
+    }
+
+    public void RandomCard(SoldierType spt)
+    {
+        //当前兵种的随机概率等级
+        int id = 0;
+        foreach(SoldierProbability sp in soldierProbabilities)
+        {
+            if (sp.soldier == spt)
+            {
+                id = sp.probabilityID;
+                break;
+            }
+        }
+        //随机品质
+        CardColor cc = RandomColor(id);
+        //随机种类
+        int icon = Random.Range(0, 2);
+        //随机卦象
+        int gua = RandomGua(spt, icon);
+        //随机角色属性
+        if (icon == 0)
+        {
+            //读前n行
+        }
+        else
+        {
+            //读后n行
+        }
+    }
+
+    public void TranCardInfo()
+    {
+        
+    }
+}

+ 0 - 0
ActionTowerDefense/Assets/Scripts/Rougue/SoulPiecesDeck.cs.meta → ActionTowerDefense/Assets/Scripts/Rougue/deadBaGua/SoulPiecesDeck.cs.meta


+ 122 - 0
ActionTowerDefense/GenerateDatas/json/cfgsoldierlevel.json

@@ -0,0 +1,122 @@
+[
+  {
+    "Level": 2,
+    "EXP": 100,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 10,
+    "armor": 0
+  },
+  {
+    "Level": 3,
+    "EXP": 200,
+    "SummonAttack": 10,
+    "MarchAttack": 0,
+    "HP": 0,
+    "armor": 0
+  },
+  {
+    "Level": 4,
+    "EXP": 300,
+    "SummonAttack": 0,
+    "MarchAttack": 10,
+    "HP": 0,
+    "armor": 0
+  },
+  {
+    "Level": 5,
+    "EXP": 400,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 0,
+    "armor": 10
+  },
+  {
+    "Level": 6,
+    "EXP": 500,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 20,
+    "armor": 0
+  },
+  {
+    "Level": 2,
+    "EXP": 100,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 10,
+    "armor": 0
+  },
+  {
+    "Level": 3,
+    "EXP": 200,
+    "SummonAttack": 10,
+    "MarchAttack": 0,
+    "HP": 0,
+    "armor": 0
+  },
+  {
+    "Level": 4,
+    "EXP": 300,
+    "SummonAttack": 0,
+    "MarchAttack": 10,
+    "HP": 0,
+    "armor": 0
+  },
+  {
+    "Level": 5,
+    "EXP": 400,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 0,
+    "armor": 10
+  },
+  {
+    "Level": 6,
+    "EXP": 500,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 20,
+    "armor": 0
+  },
+  {
+    "Level": 2,
+    "EXP": 100,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 10,
+    "armor": 0
+  },
+  {
+    "Level": 3,
+    "EXP": 200,
+    "SummonAttack": 10,
+    "MarchAttack": 0,
+    "HP": 0,
+    "armor": 0
+  },
+  {
+    "Level": 4,
+    "EXP": 300,
+    "SummonAttack": 0,
+    "MarchAttack": 10,
+    "HP": 0,
+    "armor": 0
+  },
+  {
+    "Level": 5,
+    "EXP": 400,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 0,
+    "armor": 10
+  },
+  {
+    "Level": 6,
+    "EXP": 500,
+    "SummonAttack": 0,
+    "MarchAttack": 0,
+    "HP": 20,
+    "armor": 0
+  }
+]

+ 0 - 152
ActionTowerDefense/GenerateDatas/json/cfgswordpiece.json

@@ -1,152 +0,0 @@
-[
-  {
-    "ID": 1,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": false,
-    "Level": "green",
-    "SummonAttack": 110,
-    "MarchAttack": 30,
-    "MoreCost": 5,
-    "CriticalHit": 0.05,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 2,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": true,
-    "Level": "green",
-    "SummonAttack": 220,
-    "MarchAttack": 60,
-    "MoreCost": 0,
-    "CriticalHit": 0.1,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 3,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": false,
-    "Level": "blue",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 4,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": true,
-    "Level": "blue",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 5,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": false,
-    "Level": "purple",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 6,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": true,
-    "Level": "purple",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 7,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": false,
-    "Level": "orange",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 8,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": true,
-    "Level": "orange",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 9,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": false,
-    "Level": "red",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  },
-  {
-    "ID": 10,
-    "IconPath": "Textures/UI/Rougue/icon/sword_body_icon",
-    "LitOrNot": true,
-    "Level": "red",
-    "SummonAttack": 0,
-    "MarchAttack": 0,
-    "MoreCost": 0,
-    "CriticalHit": 0,
-    "CriticalDamage": 0,
-    "HP": 0,
-    "Armor": 0,
-    "Miss": 0,
-    "AttackSpeed": 0
-  }
-]

+ 24 - 24
ActionTowerDefense/Luban/.cache.meta

@@ -1,24 +1,24 @@
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgBuilding.cs,B45865E94F67A1B2B9A59ADA4527217,1859,1728702691482
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgCreateBuilding.cs,B422E4BEC7D11DA1B193B26A05AA05E,1425,1728702691481
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgCreateEnemy.cs,3A9B470F9A1FA351330EA275C82C399,1404,1711097150748
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgEnemy.cs,FDE1CE1B09C67F343EE84B2F88F27A6,1820,1711369259455
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgSwordPiece.cs,CA5640922E988DD47A4275FA4C4F66,1885,1746626876433
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleBuildingConfig.cs,E5CE78694DF91B719BA63E763E9F43B8,2416,1728702691482
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleCreateBuildingConfig.cs,579EDD7478123FC56C428118FC3B6CC,7233,1734919166837
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleCreateEnemyConfig.cs,B586B0197B7EFCEF01B4F8C4558404B,5561,1746626876429
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleEnemyConfig.cs,6A5DBD5B6B8E4DAB8DC1FC60FFADCD,4047,1746626876429
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleSwordPieceConfig.cs,57FF77A668667D3475E2F2CAB641213,4734,1746626876429
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Assets/Gen/Tables.cs,CDB631F954D5ABCBD36683CC1128DC,2088,1746626876433
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgbuilding.json,AF3B22476CACCDADACF8AC7C7D3E1594,446,1746626842424
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgcreatebuilding.json,96C5CE210B1AAAE686AF51DFFE8A0,5047,1741927907521
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgcreateenemy.json,CCCE8FBD99C75A3B983B049BAA64C69,5683,1746626876430
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgenemy.json,E8C9266A745F19E1B8CFAEBB67A626F,2143,1746626842425
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgswordpiece.json,88B3953BED5613FBA41FF31FD497E53,3178,1746626842425
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/__beans__.xlsx,98987DA7288FEE34BCD08EA883D425E,9603,1711095806628
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/__enums__.xlsx,D95915E233EB1E4EB87BE0557A2BFDD,9879,1734914804900
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/__tables__.xlsx,F22E4EB66F9A5C5F9792F5C55C173F9,10003,1746626842426
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/出怪表.xlsx,EDF8502AD6EC9EE81A338F575BF4C,14066,1746626842427
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/飞剑碎片表.xlsx,665504CC1E77199575F959DD6FAD483,11059,1746626842429
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/怪物表.xlsx,272CEB55D75E1538D44FB2431E19333,10154,1746626842429
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/建筑表.xlsx,9ED27CF7DE3417811979E297BF30B64,9615,1746626842428
-D:/UnityProject/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/建筑生成表.xlsx,9C4EC1B178B1C62A9927C281845B5AB9,17054,1737361495541
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgBuilding.cs,B45865E94F67A1B2B9A59ADA4527217,1859,1732401186765
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgCreateBuilding.cs,B422E4BEC7D11DA1B193B26A05AA05E,1425,1732408056797
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgCreateEnemy.cs,3A9B470F9A1FA351330EA275C82C399,1404,1746171971758
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgEnemy.cs,AA55E3EA298642B35239B74ED55BFBB,1840,1747122184570
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/CfgSoldierLevel.cs,A08CC235369146A3251A76BCCA2B9E,1381,1747122184570
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleBuildingConfig.cs,E5CE78694DF91B719BA63E763E9F43B8,2416,1732401186765
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleCreateBuildingConfig.cs,579EDD7478123FC56C428118FC3B6CC,7233,1732415326448
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleCreateEnemyConfig.cs,CA03C9F1FF452E27956E7F4AB8B626C,5039,1747122184569
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleEnemyConfig.cs,B959AABD6E72533BB8F544E6A69E145,4518,1747122184570
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/SingleSoldierLevel.cs,4D21C7E2B75BCFFA3345750CBCB245,2652,1747122184570
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Assets/Gen/Tables.cs,44F5C895116C91B4662FE298D1145C25,2106,1747122184570
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgbuilding.json,AF3B22476CACCDADACF8AC7C7D3E1594,446,1742267809190
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgcreatebuilding.json,96C5CE210B1AAAE686AF51DFFE8A0,5047,1741161232156
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgcreateenemy.json,44CC4C3E536BB6B3CB22A4EB0C53573,1234,1747109083143
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgenemy.json,55E4DB350A1C95B9A6420F9DB2725F5,3074,1747109083143
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/GenerateDatas/json/cfgsoldierlevel.json,3FF0A5E917D031219D13632E2B5041EE,1848,1747210809214
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/__beans__.xlsx,98987DA7288FEE34BCD08EA883D425E,9603,1719819495252
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/__enums__.xlsx,D95915E233EB1E4EB87BE0557A2BFDD,9879,1732405824089
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/__tables__.xlsx,73191AB2DEBAFD4D21DA7ABF2F7F725,10283,1747122174507
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/出怪表.xlsx,8E5BDF5E66424D10E28D41943F87217,11383,1747109083145
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/怪物表.xlsx,F0663AB91BA145E2DD3396C98AB52455,10230,1747109083145
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/建筑表.xlsx,9ED27CF7DE3417811979E297BF30B64,9615,1742267302330
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/建筑生成表.xlsx,9C4EC1B178B1C62A9927C281845B5AB9,17054,1737060324755
+C:/works_Szand/ActionTowerDefense/ActionTowerDefense/Luban/Config/Datas/士兵等级属性表.xlsx,DA1E6129C7495B3A798FBEACF2A8E,12781,1747210801298

BIN
ActionTowerDefense/Luban/Config/Datas/__tables__.xlsx


BIN
ActionTowerDefense/Luban/Config/Datas/卦象属性池.xlsx


BIN
ActionTowerDefense/Luban/Config/Datas/卦象概率表.xlsx


BIN
ActionTowerDefense/Luban/Config/Datas/士兵等级属性表.xlsx


BIN
ActionTowerDefense/Luban/Config/Datas/残魂碎片品质概率表.xlsx


BIN
ActionTowerDefense/Luban/Config/Datas/残魂碎片角色池表.xlsx


BIN
ActionTowerDefense/Luban/Config/Datas/飞剑碎片表.xlsx


この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません