EludeBeastTwoExcelData.cs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /*Auto Create, Don't Edit !!!*/
  2. using UnityEngine;
  3. using System.Collections.Generic;
  4. using System;
  5. using System.IO;
  6. [Serializable]
  7. public class EludeBeastTwoExcelItem : ExcelItemBase
  8. {
  9. public int Grade;
  10. public int beginOne;
  11. public int finishOne;
  12. public int beginTwo;
  13. public int finishTwo;
  14. public int beginThree;
  15. public int finishThree;
  16. public float delayTime;
  17. public int Score;
  18. public float decideTime;
  19. }
  20. [CreateAssetMenu(fileName = "EludeBeastTwoExcelData", menuName = "Excel To ScriptableObject/Create EludeBeastTwoExcelData", order = 1)]
  21. public class EludeBeastTwoExcelData : ExcelDataBase<EludeBeastTwoExcelItem>
  22. {
  23. }
  24. #if UNITY_EDITOR
  25. public class EludeBeastTwoAssetAssignment
  26. {
  27. public static bool CreateAsset(List<Dictionary<string, string>> allItemValueRowList, string excelAssetPath)
  28. {
  29. if (allItemValueRowList == null || allItemValueRowList.Count == 0)
  30. return false;
  31. int rowCount = allItemValueRowList.Count;
  32. EludeBeastTwoExcelItem[] items = new EludeBeastTwoExcelItem[rowCount];
  33. for (int i = 0; i < items.Length; i++)
  34. {
  35. items[i] = new EludeBeastTwoExcelItem();
  36. items[i].Grade = Convert.ToInt32(allItemValueRowList[i]["Grade"]);
  37. items[i].beginOne = Convert.ToInt32(allItemValueRowList[i]["beginOne"]);
  38. items[i].finishOne = Convert.ToInt32(allItemValueRowList[i]["finishOne"]);
  39. items[i].beginTwo = Convert.ToInt32(allItemValueRowList[i]["beginTwo"]);
  40. items[i].finishTwo = Convert.ToInt32(allItemValueRowList[i]["finishTwo"]);
  41. items[i].beginThree = Convert.ToInt32(allItemValueRowList[i]["beginThree"]);
  42. items[i].finishThree = Convert.ToInt32(allItemValueRowList[i]["finishThree"]);
  43. items[i].delayTime = Convert.ToSingle(allItemValueRowList[i]["delayTime"]);
  44. items[i].Score = Convert.ToInt32(allItemValueRowList[i]["Score"]);
  45. items[i].decideTime = Convert.ToSingle(allItemValueRowList[i]["decideTime"]);
  46. }
  47. EludeBeastTwoExcelData excelDataAsset = ScriptableObject.CreateInstance<EludeBeastTwoExcelData>();
  48. excelDataAsset.items = items;
  49. if (!Directory.Exists(excelAssetPath))
  50. Directory.CreateDirectory(excelAssetPath);
  51. string pullPath = excelAssetPath + "/" + typeof(EludeBeastTwoExcelData).Name + ".asset";
  52. UnityEditor.AssetDatabase.DeleteAsset(pullPath);
  53. UnityEditor.AssetDatabase.CreateAsset(excelDataAsset, pullPath);
  54. UnityEditor.AssetDatabase.Refresh();
  55. return true;
  56. }
  57. }
  58. #endif