我按照标题的建议进行操作,但是Unity似乎将所有变量添加到脚本中级别较高的位置。有人修复了吗?
公共抽象类敌人:实体 {...} 公共抽象类单位:实体 {...}
public void GenerateCharacters(int x, int y, GameObject c, int i)
{
GameObject go = Instantiate(c) as GameObject;
Entity e = go.GetComponent<Entity>();
//StartCoroutine(e.SpawnAnim());
if (i == 0)
{
Unit u = c.GetComponent<Unit>();
u.InitializeUnits();
u.healthBarEnemy = healthBarEnemy;
u.healthBarAlly = healthBarAlly;
u.healthMeter = healthbarMeter;
GeneratePosition(u, x, y);
u.InitiateGrid(grid);
u.PlayerChange(gamePhase);
}
else
{
Enemy en = c.GetComponent<Enemy>();
en.InitializeEnemies();
en.healthBarEnemy = healthBarEnemy;
en.healthBarAlly = healthBarAlly;
en.healthMeter = healthbarMeter;
GeneratePosition(e, x, y);
en.InitiateGrid(grid);
en.PlayerChange(gamePhase);
}
Debug.Log(unitList.Count);
}
答案 0 :(得分:0)
感谢@skdy的回答。他是对的,我本该用去而不是c。谢谢