EdgeSnapSecondDataOneExcelData.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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 EdgeSnapSecondDataOneExcelItem : ExcelItemBase
  8. {
  9. public float detectiontime;
  10. public string name;
  11. public int position;
  12. public float disappearancetime;
  13. }
  14. [CreateAssetMenu(fileName = "EdgeSnapSecondDataOneExcelData", menuName = "Excel To ScriptableObject/Create EdgeSnapSecondDataOneExcelData", order = 1)]
  15. public class EdgeSnapSecondDataOneExcelData : ExcelDataBase<EdgeSnapSecondDataOneExcelItem>
  16. {
  17. }
  18. #if UNITY_EDITOR
  19. public class EdgeSnapSecondDataOneAssetAssignment
  20. {
  21. public static bool CreateAsset(List<Dictionary<string, string>> allItemValueRowList, string excelAssetPath)
  22. {
  23. if (allItemValueRowList == null || allItemValueRowList.Count == 0)
  24. return false;
  25. int rowCount = allItemValueRowList.Count;
  26. EdgeSnapSecondDataOneExcelItem[] items = new EdgeSnapSecondDataOneExcelItem[rowCount];
  27. for (int i = 0; i < items.Length; i++)
  28. {
  29. items[i] = new EdgeSnapSecondDataOneExcelItem();
  30. items[i].detectiontime = Convert.ToSingle(allItemValueRowList[i]["detectiontime"]);
  31. items[i].name = allItemValueRowList[i]["name"];
  32. items[i].position = Convert.ToInt32(allItemValueRowList[i]["position"]);
  33. items[i].disappearancetime = Convert.ToSingle(allItemValueRowList[i]["disappearancetime"]);
  34. }
  35. EdgeSnapSecondDataOneExcelData excelDataAsset = ScriptableObject.CreateInstance<EdgeSnapSecondDataOneExcelData>();
  36. excelDataAsset.items = items;
  37. if (!Directory.Exists(excelAssetPath))
  38. Directory.CreateDirectory(excelAssetPath);
  39. string pullPath = excelAssetPath + "/" + typeof(EdgeSnapSecondDataOneExcelData).Name + ".asset";
  40. UnityEditor.AssetDatabase.DeleteAsset(pullPath);
  41. UnityEditor.AssetDatabase.CreateAsset(excelDataAsset, pullPath);
  42. UnityEditor.AssetDatabase.Refresh();
  43. return true;
  44. }
  45. }
  46. #endif