Fix that conditions for InitialUnits are not given

This commit is contained in:
Mustafa Alperen Seki
2017-12-09 20:10:36 +03:00
committed by abcdefg30
parent 65e4019424
commit e2f3989f46

View File

@@ -142,6 +142,19 @@ namespace OpenRA.Mods.Common.Traits
{
aircraft = self.TraitOrDefault<Aircraft>();
conditionManager = self.TraitOrDefault<ConditionManager>();
if (conditionManager != null && cargo.Any())
{
foreach (var c in cargo)
{
string passengerCondition;
if (Info.PassengerConditions.TryGetValue(c.Info.Name, out passengerCondition))
passengerTokens.GetOrAdd(c.Info.Name).Push(conditionManager.GrantCondition(self, passengerCondition));
}
if (!string.IsNullOrEmpty(Info.LoadedCondition))
loadedTokens.Push(conditionManager.GrantCondition(self, Info.LoadedCondition));
}
}
static int GetWeight(Actor a) { return a.Info.TraitInfo<PassengerInfo>().Weight; }