Пример #1
0
        public void HandlesBuildingTypeWithTerranBuilding(TerranBuildingType building)
        {
            var buildingType      = new BuildingType(building);
            var otherBuildingType = new BuildingType(building);

            Assert.IsTrue(buildingType == otherBuildingType);
        }
        public BuildingOrUnitType(TerranBuildingType building)
        {
            if (building == TerranBuildingType.Unspecified)
            {
                throw new ArgumentException("Invalid TerranBuildingType - 'Unspecified'.", "building");
            }

            this.TerranBuilding = building;
        }
Пример #3
0
        private void Build(GameState gameState, List <TerranUnit> workers, TerranBuildingType building, uint minerals, List <Command> commands, bool allowMultipleInProgress)
        {
            if (!allowMultipleInProgress && workers.Any(w => w.IsBuilding(building)))
            {
                return;
            }

            if (gameState.Observation.PlayerCommon.Minerals < minerals)
            {
                return;
            }

            var worker = workers.FirstOrDefault(w => !w.IsBuildingSomething);

            if (worker == null)
            {
                // We ran out of workers or they're all building something.
                return;
            }

            commands.Add(GetBuildCommand(worker, building, gameState));
        }
Пример #4
0
 public BuildingOrUnitType(TerranBuildingType building)
 {
     this.Value = building;
 }
Пример #5
0
        public void HandlesTerranBuildingType(TerranBuildingType building)
        {
            var buildingType = new BuildingType(building);

            Assert.IsTrue(buildingType == building);
        }
Пример #6
0
        private BuildCommand GetBuildCommand(TerranUnit unit, TerranBuildingType building, GameState gameState)
        {
            var buildLocation = this.placementStrategy.GetPlacement(building, gameState);

            return(unit.Build(building, buildLocation));
        }
Пример #7
0
 public BuildCommand Build(TerranBuildingType building, IBuildLocation location)
 {
     return(base.Build(building, location));
 }