public void LoadEnemyAndAreaTableFromFile(string fileName) { string filePath = Path.Combine(Application.persistentDataPath, fileName); if (File.Exists(filePath)) { string jsonData = File.ReadAllText(filePath); EnemyTableData enemyTableData = JsonUtility.FromJson <EnemyTableData>(jsonData); // Debug.LogFormat("EnemyTableData: {0}",enemyTableData); // For each table entry, add the enemy to their designated area(s). for (int i = 0; i < enemyTableData.enemyTableEntries.Length; i++) { EnemyTableEntry entry = enemyTableData.enemyTableEntries[i]; enemyTable.Add(entry.enemyPrefab, entry); // For each area the enemy is a part of, add the gameobject to that areas list for (int j = 0; j < entry.areas.Count; j++) { Debug.LogFormat("{0} is part of area {1}", entry.enemyPrefab, entry.areas[j]); AddEnemyToAreaTable(entry.areas[j], entry.tier, entry.enemyPrefab); } } Debug.LogFormat("loaded enemy table: {0}", EnemyDictionaryToJson(enemyTable)); } else { Debug.LogFormat("File {0} was not found.", fileName); } }
private void InitEnemyTableData() { string[][] arrAll = GetData(TableDataName.EnemyTableData.ToString()); for (int i = 0; i < arrAll.Length; i++) { string[] arr = arrAll[i]; int id = int.Parse(arr[0]); EnemyTableData tableData = new EnemyTableData { id = id, name = arr[1], des = arr[2], icon = arr[3], enemyPrefab = arr[4], hp = int.Parse(arr[5]), attack = int.Parse(arr[6]), defene = int.Parse(arr[7]), magic = int.Parse(arr[8]), isCanMove = int.Parse(arr[9]), equipType = int.Parse(arr[10]), searchRadius = float.Parse(arr[11]), attackSpeed = float.Parse(arr[12]), moveSpeed = float.Parse(arr[13]), skillid = int.Parse(arr[14]), isUnarmed = int.Parse(arr[15]), leftWeapon = int.Parse(arr[16]), rightWeapon = int.Parse(arr[17]), backWeapon = int.Parse(arr[18]), isBoss = int.Parse(arr[19]), bossEffect = arr[20] }; EnemyTableDataDic[id] = tableData; } }
public void LoadEnemyTableFromFile(string fileName) { string filePath = Path.Combine(Application.persistentDataPath, fileName); if (File.Exists(filePath)) { using (StreamReader streamReader = File.OpenText(filePath)) { string jsonData = streamReader.ReadToEnd(); EnemyTableData enemyTableData = JsonUtility.FromJson <EnemyTableData>(jsonData); // Debug.LogFormat("EnemyTableData: {0}",enemyTableData); // For each table entry, add the enemy to their designated area(s). for (int i = 0; i < enemyTableData.enemyTableEntries.Length; i++) { EnemyTableEntry entry = enemyTableData.enemyTableEntries[i]; if (entry == null) { continue; // Area doesnt contain any data. } enemyTable.Add(entry.enemyPrefab, entry); } Debug.LogFormat("loaded enemy table: {0}", EnemyDictionaryToJson(enemyTable)); } // // string jsonData = File.ReadAllText (filePath); // EnemyTableData enemyTableData = JsonUtility.FromJson<EnemyTableData>(jsonData); //// Debug.LogFormat("EnemyTableData: {0}",enemyTableData); // // For each table entry, add the enemy to their designated area(s). // for (int i = 0; i < enemyTableData.enemyTableEntries.Length; i++) { // EnemyTableEntry entry = enemyTableData.enemyTableEntries[i]; // enemyTable.Add(entry.enemyPrefab, entry); // } // Debug.LogFormat("loaded enemy table: {0}", EnemyDictionaryToJson(enemyTable)); } else { Debug.LogFormat("File {0} was not found.", fileName); } }