Пример #1
0
 public BuildQueue(IBuildingManager buildingManager, IUnitBuilder unitManager, IArmyManager armyManager)
 {
     _buildingManager = buildingManager;
     _queue           = new Queue <BuildQueueItem>();
     _unitManager     = unitManager;
     _armyManager     = armyManager;
 }
Пример #2
0
 public Game(IConnectionService connectionService,
             IUnitBuilder workerManager, IBuildQueue buildQueue)
 {
     _surrender         = false;
     _connectionService = connectionService;
     _workerManager     = workerManager;
     _buildQueue        = buildQueue;
 }
Пример #3
0
 private static void Settlers(IUnitBuilder builder)
 {
     builder.WithMovability<Settler>()
            .WithMoveCosts<Settler>()
            .WithRestorationOfMoves<Settler>()
            .WithOneToOneCombatEngagement<Settler>()
            .WithLimitedMoveRange<Settler>()
            .WithNoFriendlyUnitStacking<Settler>()
            .WithNoEntranceToImpassableTerrain<Settler>()
            .WithFriendlyUnitManagementOnly<Settler>();
 }
Пример #4
0
 private static void Legions(IUnitBuilder builder)
 {
     builder.WithMovability<Legion>()
            .WithMoveCosts<Legion>()
            .WithRestorationOfMoves<Legion>()
            .WithCityConquest<Legion>()
            .WithOneToOneCombatEngagement<Legion>()
            .WithLimitedMoveRange<Legion>()
            .WithNoFriendlyUnitStacking<Legion>()
            .WithNoEntranceToImpassableTerrain<Legion>()
            .WithFriendlyUnitManagementOnly<Legion>();
 }
Пример #5
0
 private static void Chariots(IUnitBuilder builder)
 {
     builder.WithMovability<Chariot>()
            .WithMoveCosts<Chariot>()
            .WithRestorationOfMoves<Chariot>()
            .WithCityConquest<Chariot>()
            .WithOneToOneCombatEngagement<Chariot>()
            .WithLimitedMoveRange<Chariot>()
            .WithNoFriendlyUnitStacking<Chariot>()
            .WithNoEntranceToImpassableTerrain<Chariot>()
            .WithFortificationAction<Chariot>()
            .WithFriendlyUnitManagementOnly<Chariot>();
 }
Пример #6
0
 public DependencyParser(IFileEnumerator enumerator, IUnitBuilder builder)
 {
     if (enumerator == null)
     {
         throw new ArgumentNullException("enumerator");
     }
     if (builder == null)
     {
         throw new ArgumentNullException("builder");
     }
     _enumerator = enumerator;
     _builder = builder;
     _units = new List<PascalUnit>();
 }
Пример #7
0
 public void SwitchToBuildingView(IUnitBuilder focusedBuilding)
 {
     buildingProductionText.enabled = true;
     //
     deSpawnText.enabled   = true;
     deSpawnImage.enabled  = true;
     deSpawnButton.enabled = true;
     //
     entityInfoImage.enabled = true;
     entityInfoText.enabled  = true;
     // Switch Information Panel to Building View
     if (focusedBuilding.PrimarySpawn != null)
     {
         buildingPrimaryProductionImage.enabled       = true;
         buildingPrimaryProductionImage.raycastTarget = true;
         buildingPrimaryProductionText.enabled        = true;
     }
     else
     {
         buildingPrimaryProductionText.enabled        = false;
         buildingPrimaryProductionImage.enabled       = false;
         buildingPrimaryProductionImage.raycastTarget = false;
     }
     //
     if (focusedBuilding.SecondarySpawn != null)
     {
         buildingSecondaryProductionImage.enabled       = true;
         buildingSecondaryProductionImage.raycastTarget = true;
         buildingSecondaryProductionText.enabled        = true;
     }
     else
     {
         buildingSecondaryProductionText.enabled        = false;
         buildingSecondaryProductionImage.enabled       = false;
         buildingSecondaryProductionImage.raycastTarget = false;
     }
     //
     deSpawnText.text = "Demolish";
 }
Пример #8
0
 public void ShowcaseBuildingInformation(IEntity focusedBuilding, IUnitBuilder buildingUnits, IDeSpawnAble deSpawnCall)
 {
     entityInfoText.text   = focusedBuilding.EntityName;
     entityInfoImage.color = focusedBuilding.EntityImage.color;
     //
     deSpawnButton.focusedEntity = deSpawnCall;
     //
     if (buildingUnits.PrimarySpawn != null)
     {
         buildingPrimaryProductionText.text     = buildingUnits.PrimarySpawn.EntityName;
         buildingPrimaryProductionImage.color   = buildingUnits.PrimarySpawn.EntityImage.color;
         buildingPrimaryButton.presentedBuilder = buildingUnits;
     }
     //
     if (buildingUnits.SecondarySpawn == null)
     {
         return;
     }
     buildingSecondaryProductionText.text     = buildingUnits.SecondarySpawn.EntityName;
     buildingSecondaryProductionImage.color   = buildingUnits.SecondarySpawn.EntityImage.color;
     buildingSecondaryButton.presentedBuilder = buildingUnits;
 }