Remove (INotify)BuildComplete from Attack*

This commit is contained in:
Paul Chote
2018-10-27 17:20:06 +00:00
committed by abcdefg30
parent e57087cb5b
commit e77aaa1a47
9 changed files with 42 additions and 25 deletions

View File

@@ -39,7 +39,7 @@ namespace OpenRA.Mods.Common.Traits
public override abstract object Create(ActorInitializer init);
}
public abstract class AttackBase : PausableConditionalTrait<AttackBaseInfo>, INotifyCreated, ITick, IIssueOrder, IResolveOrder, IOrderVoice, ISync
public abstract class AttackBase : PausableConditionalTrait<AttackBaseInfo>, ITick, IIssueOrder, IResolveOrder, IOrderVoice, ISync
{
readonly string attackOrderName = "Attack";
readonly string forceAttackOrderName = "ForceAttack";
@@ -48,7 +48,6 @@ namespace OpenRA.Mods.Common.Traits
public IEnumerable<Armament> Armaments { get { return getArmaments(); } }
protected IFacing facing;
protected Building building;
protected IPositionable positionable;
protected INotifyAiming[] notifyAiming;
protected Func<IEnumerable<Armament>> getArmaments;
@@ -66,7 +65,6 @@ namespace OpenRA.Mods.Common.Traits
protected override void Created(Actor self)
{
facing = self.TraitOrDefault<IFacing>();
building = self.TraitOrDefault<Building>();
positionable = self.TraitOrDefault<IPositionable>();
notifyAiming = self.TraitsImplementing<INotifyAiming>().ToArray();
@@ -115,10 +113,6 @@ namespace OpenRA.Mods.Common.Traits
if (mobile != null && !mobile.CanInteractWithGroundLayer(self))
return false;
// Building is under construction or is being sold
if (building != null && !building.BuildComplete)
return false;
if (Armaments.All(a => a.IsReloading))
return false;

View File

@@ -22,8 +22,8 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
get
{
return "Traits are no longer force-disabled while the WithMakeAnimation trait is active.\n" +
"This affects the With*Animation, With*Overlay, *Production, Transforms, Sellable,\n" +
"Gate, ToggleConditionOnOrder, and ConyardChronoReturn traits.\n" +
"This affects the With*Animation, With*Overlay, *Production, Attack*,\n" +
"Transforms, Sellable, Gate, ToggleConditionOnOrder, and ConyardChronoReturn traits.\n" +
"The AnnounceOnBuild trait has been replaced with a new VoiceAnnouncement trait.\n" +
"Affected actors are listed so that conditions may be manually defined.";
}
@@ -57,6 +57,13 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
"ProductionAirdrop",
"ProductionFromMapEdge",
"ProductionParadrop",
"AttackFrontal",
"AttackFollow",
"AttackTurreted",
"AttackOmni",
"AttackBomber",
"AttackPopupTurreted",
"AttackTesla",
"Transforms",
"Sellable",
"Gate",