********์ ˆ๋Œ€ ๊ธ€์‚ญ์•ˆํ•จ******

public class Unit

{

DataManager dataMgr;

public int unitID;

public UnitStat unitStat;


void Awake()

{

dataMgr = GameObject.Find("DataManager").Getcomponent<DataManager>();

}


void Start()

{

unitStat = dataMgr.AllUnitList[unitID]; // < ๋ฌธ์ œ์ƒ๊น€

}


[System.Serializable]

public struct UnitStat

{

int m_nData;

int m_nData2;


public void Init(nData)

{

m_nData = nData;
m_nData = nData2;

}

}

}

==========================================

public class DataManager

{

public List<Unit.UnitStat> AllUnitList;


private void Awake()

{

DontDestroyOnLoad(this);

}

void Start()

{

ReadUnitTextToList();
}


void ReadUnitTextToList()

{

string[] line = UnitDatabase.text.Substring(0, UnitDatabase.text.Length - 1).Split('\n');

for (int i = 0; i < line.Length; i++)

{

string[] row = line[i].Split('\t');

Unit.UnitStat unitStat = new Unit.UnitStat();

unitStat.Init(int.Parse(row[0]), int.Parse(row[1]));


AllUnitList.Add(unitStat);

}

}

}

================

public class SpawnManager : MonoBehaviour

{


ย  ย  public GameObject[] test;



ย  ย  void Start()

ย  ย  {

ย  ย  ย  ย  TestSpawn();

ย  ย  }


ย  ย public void TestSpawn()

ย  ย {

ย  ย  ย  ย  for(int i = 0; i < test.Length; i++)

ย  ย  ย  ย  Instantiate(test[i], new Vector2(30-i, 30-i), Quaternion.identity);

ย  ย }

}

Prefab์— Unit.Cs ์ปดํฌ๋„ŒํŠธ์— ๋ถ™์—ฌ์ค€ํ›„ ์ธ์ŠคํŽ™ํ„ฐ์—์„œ UnitID ๊ธฐ์ž…ํ•ด์„œ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.ย 


๊ทธ๋ฆฌ๊ณ  ์˜์›… ์„ ํƒ์”ฌ์—์„œย DataManager๊ฐ€ ๊ฒŒ์ž„์— ์กด์žฌํ•˜๊ณ  ์„ ํƒ ํ›„ Main Scene์œผ๋กœ ๋„˜์–ด๊ฐ€๋ฉด์„œย 

Unit ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ถ™์–ด์žˆ๋Š”ย Prefabs๋ฅผ ์‹คํ—˜์‚ผ์•„ย Instantiate ํ•จ์ˆ˜๋กœ ์Šคํฐํ–ˆ๋Š”๋ฐย Null์ด๋œน๋‹ˆ๋‹ค.

์ด๋Ÿฐ์‹์œผ๋กœ ์„ค๊ณ„๋ฅผ ํ–ˆ๋Š”๋ฐ ๋ญ๊ฐ€ ๋ฌธ์ œ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ๋„ค์š”... ์ด์ œ ๋ง‰ ํ•™123์› ๋‹ค๋‹ˆ๋ฉด์„œ ๊ณต๋ถ€ํ•˜๊ณ ์žˆ๋Š” ์ฝ”๋ฆฐ์ด์ž…๋‹ˆ๋‹ค...