Esempio n. 1
0
    private void SpawnUnit(UnitData entry, int spawnIndex, Unit unit)
    {
        SpawnPointScript spawn = null;

        for (int i = 0; i < _spawnPoints.Count; i++)
        {
            SpawnPointScript spawnPoint = _spawnPoints[i];
            if (!spawnPoint.IsOccupied)
            {
                spawn = spawnPoint;
                break;
            }
        }

        if (spawn == null)
        {
            return;
        }

        GameObject obj        = Instantiate(entry.UnitPrefab, spawn.transform);
        UnitScript unitScript = obj.GetComponent <UnitScript>();

        _unitsOnField.Add(unitScript);
        _playerFrame.AddUnitFrame(_game, unit, entry.UnitFrame);

        unitScript.Ready(spawn, this, unit);
    }