Fix HackyAI trying to deploy undeployable actors

This commit is contained in:
abcdefg30
2017-08-21 15:03:04 +02:00
committed by Paul Chote
parent 42c4c7b7eb
commit d99a472456

View File

@@ -979,12 +979,16 @@ namespace OpenRA.Mods.Common.AI
if (!mcv.IsIdle)
continue;
// Don't try to move and deploy an undeployable actor
var transformsInfo = mcv.Info.TraitInfoOrDefault<TransformsInfo>();
if (transformsInfo == null)
continue;
// If we lack a base, we need to make sure we don't restrict deployment of the MCV to the base!
var restrictToBase =
Info.RestrictMCVDeploymentFallbackToBase &&
var restrictToBase = Info.RestrictMCVDeploymentFallbackToBase &&
CountBuildingByCommonName(Info.BuildingCommonNames.ConstructionYard, Player) > 0;
var factType = mcv.Info.TraitInfo<TransformsInfo>().IntoActor;
var desiredLocation = ChooseBuildLocation(factType, restrictToBase, BuildingType.Building);
var desiredLocation = ChooseBuildLocation(transformsInfo.IntoActor, restrictToBase, BuildingType.Building);
if (desiredLocation == null)
continue;