Merge pull request #9457 from Phrohdoh/fix#ai

Fix NullReferenceException in HackyAI.BuildUnit
This commit is contained in:
Pavel Penev
2015-09-30 16:07:57 +03:00

View File

@@ -1036,12 +1036,20 @@ namespace OpenRA.Mods.Common.AI
ChooseRandomUnitToBuild(queue) : ChooseRandomUnitToBuild(queue) :
ChooseUnitToBuild(queue); ChooseUnitToBuild(queue);
if (unit != null if (unit == null)
&& Info.UnitsToBuild.ContainsKey(unit.Name) return;
&& (!Info.UnitLimits.ContainsKey(unit.Name)
|| World.Actors.Count(a => a.Info.Name == unit.Name && a.Owner == Player) < Info.UnitLimits[unit.Name]))
QueueOrder(Order.StartProduction(queue.Actor, unit.Name, 1)); var name = unit.Name;
if (Info.UnitsToBuild != null && !Info.UnitsToBuild.ContainsKey(name))
return;
if (Info.UnitLimits != null &&
Info.UnitLimits.ContainsKey(name) &&
World.Actors.Count(a => a.Owner == Player && a.Info.Name == name) >= Info.UnitLimits[name])
return;
QueueOrder(Order.StartProduction(queue.Actor, name, 1));
} }
void BuildUnit(string category, string name) void BuildUnit(string category, string name)