diff --git a/OpenRA.Mods.Common/Traits/Buildings/Gate.cs b/OpenRA.Mods.Common/Traits/Buildings/Gate.cs index 2c991db1cb..6f27f355b8 100644 --- a/OpenRA.Mods.Common/Traits/Buildings/Gate.cs +++ b/OpenRA.Mods.Common/Traits/Buildings/Gate.cs @@ -34,7 +34,7 @@ namespace OpenRA.Mods.Common.Traits } public class Gate : PausableConditionalTrait, ITick, ITemporaryBlocker, IBlocksProjectiles, - INotifyAddedToWorld, INotifyRemovedFromWorld, INotifyBlockingMove, ISync + INotifyAddedToWorld, INotifyRemovedFromWorld, INotifyBlockingMove { readonly Actor self; readonly Building building; @@ -58,7 +58,7 @@ namespace OpenRA.Mods.Common.Traits void ITick.Tick(Actor self) { - if (IsTraitDisabled || IsTraitPaused || building.Locked || !building.BuildComplete) + if (IsTraitDisabled || IsTraitPaused) return; if (desiredPosition < Position) @@ -125,7 +125,7 @@ namespace OpenRA.Mods.Common.Traits bool CanRemoveBlockage(Actor self, Actor blocking) { - return !IsTraitDisabled && !IsTraitPaused && building.BuildComplete && !building.Locked && blocking.AppearsFriendlyTo(self); + return !IsTraitDisabled && !IsTraitPaused && blocking.AppearsFriendlyTo(self); } bool IsBlocked() diff --git a/mods/ts/rules/defaults.yaml b/mods/ts/rules/defaults.yaml index c51bdc9938..8872509470 100644 --- a/mods/ts/rules/defaults.yaml +++ b/mods/ts/rules/defaults.yaml @@ -1133,6 +1133,8 @@ -Capturable: -GivesBuildableArea: -MustBeDestroyed: + WithMakeAnimation: + Condition: build-incomplete -WithSpriteBody: WithGateSpriteBody: OpenSequence: open @@ -1148,10 +1150,10 @@ MapEditorData: Categories: Wall Gate: + PauseOnCondition: empdisable || build-incomplete OpeningSound: gateup1.aud ClosingSound: gatedwn1.aud BlocksProjectilesHeight: 768 - PauseOnCondition: empdisable ^Gate_A: Inherits: ^Gate