// Start is called before the first frame update void Start() { UnitFactory unitFactory = null; unitFactory = new Barrack(); units.Add(unitFactory.GetUnit(UnitType.Marine)); units.Add(unitFactory.GetUnit(UnitType.Firebat)); unitFactory = new Factory(); units.Add(unitFactory.GetUnit(UnitType.Vulture)); units.Add(unitFactory.GetUnit(UnitType.Tank)); foreach (var unit in units) { unit.Move(); unit.Attack(); } }