将具有相同父项的2个脚本附加到同一GameObject

时间:2018-10-16 10:51:18

标签: unity3d

我按照标题的建议进行操作,但是Unity似乎将所有变量添加到脚本中级别较高的位置。有人修复了吗?enter image description here

公共抽象类敌人:实体 {...} 公共抽象类单位:实体 {...}

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);
}

1 个答案:

答案 0 :(得分:0)

感谢@skdy的回答。他是对的,我本该用去而不是c。谢谢