Пример #1
0
        public Unit StartLevel(UnitsManager unitsManager, ProjectilesManager projectilesManager)
        {
            var  positions  = RandomHelper.ShuffleList(_spawnPositions);
            var  nextPosIdx = 0;
            Unit player     = null;

            foreach (var ally in _allias)
            {
                var unit = CreateUnit(ally, positions[nextPosIdx++], unitsManager, projectilesManager);
                unit.Fraction = 0;
                unitsManager.Add(unit);
                if (ally.OnlyOne)
                {
                    player = unit;
                }
            }

            foreach (var enemy in _enemies)
            {
                var unit = CreateUnit(enemy, positions[nextPosIdx++], unitsManager, projectilesManager);
                unit.Fraction = 1;
                unitsManager.Add(unit);
            }

            unitsManager.UnitKilled += OnUnitKilled;

            return(player);
        }