Remove unnecessary uses of Exts.IsTraitEnabled

This commit is contained in:
abcdefg30
2022-10-09 22:57:50 +02:00
committed by Gustas
parent 75f642bd09
commit d8349a429a
13 changed files with 17 additions and 18 deletions

View File

@@ -51,7 +51,7 @@ namespace OpenRA.Mods.Common.Activities
this.targetLineColor = targetLineColor;
this.forceAttack = forceAttack;
attackTraits = self.TraitsImplementing<AttackFrontal>().ToArray().Where(Exts.IsTraitEnabled);
attackTraits = self.TraitsImplementing<AttackFrontal>().ToArray().Where(t => !t.IsTraitDisabled);
revealsShroud = self.TraitsImplementing<RevealsShroud>().ToArray();
facing = self.Trait<IFacing>();
positionable = self.Trait<IPositionable>();
@@ -67,8 +67,7 @@ namespace OpenRA.Mods.Common.Activities
// Lambdas can't use 'in' variables, so capture a copy for later
var rangeTarget = target;
lastVisibleMaximumRange = attackTraits.Where(x => !x.IsTraitDisabled)
.Min(x => x.GetMaximumRangeVersusTarget(rangeTarget));
lastVisibleMaximumRange = attackTraits.Min(x => x.GetMaximumRangeVersusTarget(rangeTarget));
if (target.Type == TargetType.Actor)
{
@@ -176,7 +175,7 @@ namespace OpenRA.Mods.Common.Activities
return AttackStatus.UnableToAttack;
var rs = revealsShroud
.Where(Exts.IsTraitEnabled)
.Where(t => !t.IsTraitDisabled)
.MaxByOrDefault(s => s.Range);
// Default to 2 cells if there are no active traits

View File

@@ -310,7 +310,7 @@ namespace OpenRA.Mods.Common.Activities
{
foreach (var actor in self.World.ActorMap.GetActorsAt(cell))
{
if (!(actor.OccupiesSpace is Mobile move) || !move.IsTraitEnabled() || !move.IsLeaving())
if (!(actor.OccupiesSpace is Mobile move) || move.IsTraitDisabled || !move.IsLeaving())
return false;
}

View File

@@ -96,7 +96,7 @@ namespace OpenRA.Mods.Common.Orders
var cursor = OrderInner(world, mi)
.SelectMany(o => o.Subject.TraitsImplementing<Sellable>())
.Where(Exts.IsTraitEnabled)
.Where(t => !t.IsTraitDisabled)
.Select(si => si.Info.Cursor)
.FirstOrDefault();

View File

@@ -325,7 +325,7 @@ namespace OpenRA.Mods.Common.Traits
if (target.Type == TargetType.FrozenActor && !attack.Info.TargetFrozenActors && !forceAttack)
{
var rs = revealsShroud
.Where(Exts.IsTraitEnabled)
.Where(t => !t.IsTraitDisabled)
.MaxByOrDefault(s => s.Range);
// Default to 2 cells if there are no active traits

View File

@@ -179,7 +179,7 @@ namespace OpenRA.Mods.Common.Traits
: base(info)
{
var self = init.Self;
ActiveAttackBases = self.TraitsImplementing<AttackBase>().ToArray().Where(Exts.IsTraitEnabled);
ActiveAttackBases = self.TraitsImplementing<AttackBase>().ToArray().Where(t => !t.IsTraitDisabled);
stance = init.GetValue<StanceInit, UnitStance>(self.Owner.IsBot || !self.Owner.Playable ? info.InitialStanceAI : info.InitialStance);
@@ -195,7 +195,7 @@ namespace OpenRA.Mods.Common.Traits
activeTargetPriorities =
self.TraitsImplementing<AutoTargetPriority>()
.OrderByDescending(ati => ati.Info.Priority).ToArray()
.Where(Exts.IsTraitEnabled).Select(atp => atp.Info);
.Where(t => !t.IsTraitDisabled).Select(atp => atp.Info);
overrideAutoTarget = self.TraitsImplementing<IOverrideAutoTarget>().ToArray();
notifyStanceChanged = self.TraitsImplementing<INotifyStanceChanged>().ToArray();

View File

@@ -126,7 +126,7 @@ namespace OpenRA.Mods.Common.Traits
}
// Less harvesters than refineries - build a new harvester
var unitBuilder = requestUnitProduction.FirstOrDefault(Exts.IsTraitEnabled);
var unitBuilder = requestUnitProduction.FirstEnabledTraitOrDefault();
if (unitBuilder != null && Info.HarvesterTypes.Count > 0)
{
var harvInfo = AIUtils.GetInfoByCommonName(Info.HarvesterTypes, player);

View File

@@ -110,7 +110,7 @@ namespace OpenRA.Mods.Common.Traits
// No construction yards - Build a new MCV
if (ShouldBuildMCV())
{
var unitBuilder = requestUnitProduction.FirstOrDefault(Exts.IsTraitEnabled);
var unitBuilder = requestUnitProduction.FirstEnabledTraitOrDefault();
if (unitBuilder != null)
{
var mcvInfo = AIUtils.GetInfoByCommonName(Info.McvTypes, player);

View File

@@ -66,7 +66,7 @@ namespace OpenRA.Mods.Common.Traits
return Enumerable.Empty<Exit>();
var all = actor.TraitsImplementing<Exit>()
.Where(Exts.IsTraitEnabled);
.Where(t => !t.IsTraitDisabled);
if (string.IsNullOrEmpty(productionType))
return all;

View File

@@ -93,11 +93,11 @@ namespace OpenRA.Mods.Common.Traits
enabledCapturable = self.TraitsImplementing<Capturable>()
.ToArray()
.Where(Exts.IsTraitEnabled);
.Where(t => !t.IsTraitDisabled);
enabledCaptures = self.TraitsImplementing<Captures>()
.ToArray()
.Where(Exts.IsTraitEnabled);
.Where(t => !t.IsTraitDisabled);
RefreshCaptures();
RefreshCapturable();

View File

@@ -604,7 +604,7 @@ namespace OpenRA.Mods.Common.Traits
Activity WrapMove(Activity inner)
{
var moveWrapper = moveWrappers.FirstOrDefault(Exts.IsTraitEnabled);
var moveWrapper = moveWrappers.FirstEnabledTraitOrDefault();
if (moveWrapper != null)
return moveWrapper.WrapMove(inner);

View File

@@ -40,7 +40,7 @@ namespace OpenRA.Mods.Common.Traits
{
public static bool AcceptsOrder(this Actor self, string orderString)
{
var rejectsOrdersTraits = self.TraitsImplementing<RejectsOrders>().Where(Exts.IsTraitEnabled).ToArray();
var rejectsOrdersTraits = self.TraitsImplementing<RejectsOrders>().Where(t => !t.IsTraitDisabled).ToArray();
if (rejectsOrdersTraits.Length == 0)
return true;

View File

@@ -42,7 +42,7 @@ namespace OpenRA.Mods.Common.Traits.Render
void INotifyCreated.Created(Actor self)
{
// Name check can be cached but enabled check can't.
armaments = self.TraitsImplementing<Armament>().Where(a => info.Armaments.Contains(a.Info.Name)).ToArray().Where(Exts.IsTraitEnabled);
armaments = self.TraitsImplementing<Armament>().Where(a => info.Armaments.Contains(a.Info.Name)).ToArray().Where(t => !t.IsTraitDisabled);
}
float ISelectionBar.GetValue()

View File

@@ -64,7 +64,7 @@ namespace OpenRA.Mods.Common.Warheads
if (!AffectsParent && victim == firedBy)
continue;
var activeShapes = victim.TraitsImplementing<HitShape>().Where(Exts.IsTraitEnabled);
var activeShapes = victim.TraitsImplementing<HitShape>().Where(t => !t.IsTraitDisabled);
if (!activeShapes.Any(s => s.DistanceFromEdge(victim, pos).Length <= 0))
continue;