ShanDongVirtualPowerPlant/u3d-ShanDongVirtualPowerPlant/Assets/Adam/Scripts/TEst.cs

93 lines
3.2 KiB
C#

using UnityEngine;
using UnityEditor;
using System.Collections.Generic;
using System.Linq;
public class TEst : MonoBehaviour
{
public CityExcelData manager = new CityExcelData();
public AggregateStation aggregateStation;
public Transform p;
public bool isDeleteStationInstructs;
public float h = 2;
public int level = 0;
[ContextMenu("GetInfo")]
public void CreateItemAsset()
{
manager.cityItems = null;
manager.cityItems = ExcelTool.CreateItemArrayWithExcel(ExcelConfig.excelsFolderPath + "ɽ¶«ÐÐÕþÇø»®Êý¾Ý.xlsx");
for (int i = 0; i < p.childCount; i++)
{
Transform t = p.GetChild(i);
if (t.childCount > 0)
{
for (int j = 0; j < t.childCount; j++)
{
CityInfo cc = t.GetChild(j).GetComponent<CityInfo>();
cc.cityName = cc.gameObject.name;
for (int l = 0; l < manager.cityItems.Length; l++)
{
if (cc.cityName == manager.cityItems[l].districtName)
cc.distCode = manager.cityItems[l].divisionNumber;
}
}
}
else
{
CityInfo c = t.GetComponent<CityInfo>();
c.cityName = c.gameObject.name;
for (int l = 0; l < manager.cityItems.Length; l++)
{
if (c.cityName == manager.cityItems[l].districtName)
c.distCode = manager.cityItems[l].divisionNumber;
}
}
}
}
[ContextMenu("CreateStation")]
public void CreateStation()
{
for (int i = 0; i < p.childCount; i++)
{
Transform t = p.GetChild(i);
if (level == 1)
{
if (t.childCount > 0)
{
for (int g = 0; g < t.childCount; g++)
{
Transform tt = t.GetChild(g);
if (tt.childCount > 0)
{
DestroyImmediate(tt.GetChild(0).gameObject);
}
AggregateStation _aggregateStation = Instantiate(aggregateStation, tt);
_aggregateStation.transform.localPosition = new Vector3(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f), h);
_aggregateStation.transform.localEulerAngles = new Vector3(60, 0, 0);
}
}
}
if (level == 0)
{
if (t.childCount > 0)
{
for (int y = 0; y < p.childCount; y++)
{
DestroyImmediate(p.GetChild(y).GetChild(0).gameObject);
}
}
AggregateStation _aggregateStation = Instantiate(aggregateStation, t);
_aggregateStation.transform.localPosition = new Vector3(Random.Range(-0.5f, 0.5f), Random.Range(-0.5f, 0.5f), h);
_aggregateStation.transform.localEulerAngles = new Vector3(60, 0, 0);
//_aggregateStation.SetInfo(sprites[j], "0");
}
}
}
}