public void SetGrassSpawner(int indexLenght, int indexWidth) { // Debug.Log(DataBaseManager.ins.DataXMLMap.dataLevel[grassSpawner.curentLevel].dataStage[grassSpawner.currentStage].detailMapsInt[0].Count); grassSpawner.Grass = new List <List <GameObject> >(); PathReader = new List <PathFollowingReader>(); grassSpawner.originalPos = grassSpawner.Parent.position; for (int i = 0; i < indexLenght; i++) { grassSpawner.Grass.Add(new List <GameObject>()); for (int j = 0; j < indexWidth; j++) { for (int k = 0; k < (int)stringTag.NUM_STARTS; k++) { setTag = (stringTag)k; if (DataBaseManager.ins.DataXMLMap.dataLevel[grassSpawner.curentLevel].dataStage[grassSpawner.currentStage].detailMapsInt[i][j] == (int)setTag) { SpawnObj(grassSpawner.Prefabs[k - 1], i, setTag.ToString()); if (setTag == stringTag.HoleSpawner) { PathFollowingReader pathFollowing = new PathFollowingReader(); pathFollowing.HolePos.IndexPosX = j; pathFollowing.HolePos.IndexPosZ = i; PathReader.Add(pathFollowing); } } } grassSpawner.originalPos.x += 102; } grassSpawner.originalPos.x = grassSpawner.Parent.position.x; grassSpawner.originalPos.z -= 102f; } for (int i = 0; i < PathReader.Count; i++) { PathReader[i].SetFindObj(); } SpawnerManager.posSpawn = new Vector3[PathReader.Count]; SpawnerManager.RotationSpawn = new Quaternion[PathReader.Count]; for (int i = 0; i < PathReader.Count; i++) { SpawnerManager.posSpawn[i] = grassSpawner.Grass[PathReader[i].HolePos.IndexPosZ][PathReader[i].HolePos.IndexPosX].transform.position; SpawnerManager.posSpawn[i].y += 30f; Vector3 DesiredRot = Vector3.zero; if (PathReader[i].Steps.Count > 0) { DesiredRot = grassSpawner.Grass[PathReader[i].Steps[1].IndexPosZ][PathReader[i].Steps[1].IndexPosX].transform.position; } DesiredRot.y = SpawnerManager.posSpawn[i].y; SpawnerManager.RotationSpawn[i] = Quaternion.LookRotation(DesiredRot - SpawnerManager.posSpawn[i]); } }
public void CreateMap(int indexLenght, int indexWidth) { // Debug.Log(DataBaseManager.ins.DataXMLMap.dataLevel[grassSpawner.curentLevel].dataStage[grassSpawner.currentStage].detailMapsInt[0].Count); grassSpawner.Grass = new List <List <GameObject> >(); grassSpawner.originalPos = grassSpawner.Parent.position; for (int i = 0; i < indexLenght; i++) { grassSpawner.Grass.Add(new List <GameObject>()); for (int j = 0; j < indexWidth; j++) { setTag = stringTag.Grass; SpawnObj(grassSpawner.Prefabs[0], i, setTag.ToString()); grassSpawner.originalPos.x += 102; } grassSpawner.originalPos.x = grassSpawner.Parent.position.x; grassSpawner.originalPos.z -= 102f; } }