Add ActorInfo.TraitInfo[OrDefault]<T>() requiring ITraitIfo types

This commit is contained in:
atlimit8
2015-08-03 16:07:33 -05:00
parent 6970959ef1
commit 09984683a7
115 changed files with 195 additions and 193 deletions

View File

@@ -33,7 +33,7 @@ namespace OpenRA.Mods.Common.Traits
public IEnumerable<IRenderable> Render(WorldRenderer wr, World w, ActorInfo ai, WPos centerPosition)
{
if (!ai.Traits.Get<BuildingInfo>().RequiresBaseProvider)
if (!ai.TraitInfo<BuildingInfo>().RequiresBaseProvider)
yield break;
foreach (var a in w.ActorsWithTrait<BaseProvider>())
@@ -75,9 +75,9 @@ namespace OpenRA.Mods.Common.Traits
var producer = queue.MostLikelyProducer();
var faction = producer.Trait != null ? producer.Trait.Faction : self.Owner.Faction.InternalName;
var buildingInfo = unit.Traits.Get<BuildingInfo>();
var buildingInfo = unit.TraitInfo<BuildingInfo>();
var buildableInfo = unit.Traits.GetOrDefault<BuildableInfo>();
var buildableInfo = unit.TraitInfoOrDefault<BuildableInfo>();
if (buildableInfo != null && buildableInfo.ForceFaction != null)
faction = buildableInfo.ForceFaction;
@@ -106,7 +106,7 @@ namespace OpenRA.Mods.Common.Traits
if (host == null)
return;
var plugInfo = unit.Traits.GetOrDefault<PlugInfo>();
var plugInfo = unit.TraitInfoOrDefault<PlugInfo>();
if (plugInfo == null)
return;