Add IEnumerable<ITraitInfo> ActorInfo.TraitInfos() replacing actorInfo.traits enumeration

This commit is contained in:
atlimit8
2015-09-19 12:25:21 -05:00
parent bbdd597917
commit b38b6eadd0
4 changed files with 8 additions and 7 deletions

View File

@@ -187,5 +187,6 @@ namespace OpenRA
public bool HasTraitInfo<T>() where T : ITraitInfo { return Traits.Contains<T>(); }
public T TraitInfo<T>() where T : ITraitInfo { return Traits.Get<T>(); }
public T TraitInfoOrDefault<T>() where T : ITraitInfo { return Traits.GetOrDefault<T>(); }
public IEnumerable<T> TraitInfos<T>() where T : ITraitInfo { return Traits.WithInterface<T>(); }
}
}

View File

@@ -24,7 +24,7 @@ namespace OpenRA.Mods.Common.Lint
foreach (var actorInfo in rules.Actors)
{
foreach (var traitInfo in actorInfo.Value.Traits)
foreach (var traitInfo in actorInfo.Value.TraitInfos<ITraitInfo>())
{
var fields = traitInfo.GetType().GetFields();
foreach (var field in fields.Where(x => x.HasAttribute<PaletteReferenceAttribute>()))
@@ -70,7 +70,7 @@ namespace OpenRA.Mods.Common.Lint
{
foreach (var actorInfo in rules.Actors)
{
foreach (var traitInfo in actorInfo.Value.Traits)
foreach (var traitInfo in actorInfo.Value.TraitInfos<ITraitInfo>())
{
var fields = traitInfo.GetType().GetFields();
foreach (var field in fields.Where(x => x.HasAttribute<PaletteDefinitionAttribute>()))

View File

@@ -55,7 +55,7 @@ namespace OpenRA.Mods.Common.Lint
}
}
foreach (var traitInfo in actorInfo.Value.Traits.WithInterface<ITraitInfo>())
foreach (var traitInfo in actorInfo.Value.TraitInfos<ITraitInfo>())
{
var fields = traitInfo.GetType().GetFields();
foreach (var field in fields)

View File

@@ -30,7 +30,7 @@ namespace OpenRA.Mods.Common.Lint
foreach (var actorInfo in rules.Actors)
{
foreach (var trait in actorInfo.Value.Traits)
foreach (var trait in actorInfo.Value.TraitInfos<ITraitInfo>())
{
var fields = trait.GetType().GetFields();
foreach (var field in fields.Where(x => x.HasAttribute<UpgradeUsedReferenceAttribute>()))
@@ -50,7 +50,7 @@ namespace OpenRA.Mods.Common.Lint
// Check all upgrades granted by traits.
foreach (var actorInfo in rules.Actors)
{
foreach (var trait in actorInfo.Value.Traits)
foreach (var trait in actorInfo.Value.TraitInfos<ITraitInfo>())
{
var fields = trait.GetType().GetFields();
foreach (var field in fields.Where(x => x.HasAttribute<UpgradeGrantedReferenceAttribute>()))
@@ -83,7 +83,7 @@ namespace OpenRA.Mods.Common.Lint
// Get all upgrades granted by traits.
foreach (var actorInfo in rules.Actors)
{
foreach (var trait in actorInfo.Value.Traits)
foreach (var trait in actorInfo.Value.TraitInfos<ITraitInfo>())
{
var fields = trait.GetType().GetFields();
foreach (var field in fields.Where(x => x.HasAttribute<UpgradeGrantedReferenceAttribute>()))
@@ -129,7 +129,7 @@ namespace OpenRA.Mods.Common.Lint
{
foreach (var actorInfo in rules.Actors)
{
foreach (var trait in actorInfo.Value.Traits)
foreach (var trait in actorInfo.Value.TraitInfos<ITraitInfo>())
{
var fields = trait.GetType().GetFields();
foreach (var field in fields.Where(x => x.HasAttribute<UpgradeUsedReferenceAttribute>()))