diff --git a/OpenRA.Mods.Common/Traits/Conditions/GrantConditionOnDeploy.cs b/OpenRA.Mods.Common/Traits/Conditions/GrantConditionOnDeploy.cs index 1874a3c522..17643b11cf 100644 --- a/OpenRA.Mods.Common/Traits/Conditions/GrantConditionOnDeploy.cs +++ b/OpenRA.Mods.Common/Traits/Conditions/GrantConditionOnDeploy.cs @@ -54,13 +54,15 @@ namespace OpenRA.Mods.Common.Traits [Desc("Skip make/deploy animation?")] public readonly bool SkipMakeAnimation = false; + [VoiceReference] public readonly string Voice = "Action"; + public override object Create(ActorInitializer init) { return new GrantConditionOnDeploy(init, this); } } public enum DeployState { Undeployed, Deploying, Deployed, Undeploying } public class GrantConditionOnDeploy : PausableConditionalTrait, IResolveOrder, IIssueOrder, INotifyCreated, - INotifyDeployComplete, IIssueDeployOrder + INotifyDeployComplete, IIssueDeployOrder, IOrderVoice { readonly Actor self; readonly bool checkTerrainType; @@ -157,6 +159,11 @@ namespace OpenRA.Mods.Common.Traits self.QueueActivity(new DeployForGrantedCondition(self, this)); } + public string VoicePhraseForOrder(Actor self, Order order) + { + return order.OrderString == "GrantConditionOnDeploy" ? Info.Voice : null; + } + bool IsCursorBlocked() { if (IsTraitPaused) diff --git a/OpenRA.Mods.Common/Traits/Transforms.cs b/OpenRA.Mods.Common/Traits/Transforms.cs index 4403f7b494..d2af99bf59 100644 --- a/OpenRA.Mods.Common/Traits/Transforms.cs +++ b/OpenRA.Mods.Common/Traits/Transforms.cs @@ -71,7 +71,7 @@ namespace OpenRA.Mods.Common.Traits public string VoicePhraseForOrder(Actor self, Order order) { - return (order.OrderString == "DeployTransform") ? Info.Voice : null; + return order.OrderString == "DeployTransform" ? Info.Voice : null; } public bool CanDeploy() diff --git a/mods/ts/rules/gdi-vehicles.yaml b/mods/ts/rules/gdi-vehicles.yaml index 41662988d9..fde464440a 100644 --- a/mods/ts/rules/gdi-vehicles.yaml +++ b/mods/ts/rules/gdi-vehicles.yaml @@ -355,6 +355,7 @@ JUGG: AllowedTerrainTypes: Clear, Road, DirtRoad, Rough DeploySounds: place2.aud UndeploySounds: clicky1.aud + Voice: Move GrantCondition@PREVIEWWORKAROUND: Condition: real-actor QuantizeFacingsFromSequence: diff --git a/mods/ts/rules/nod-vehicles.yaml b/mods/ts/rules/nod-vehicles.yaml index 2312244efc..8b406318b3 100644 --- a/mods/ts/rules/nod-vehicles.yaml +++ b/mods/ts/rules/nod-vehicles.yaml @@ -139,6 +139,7 @@ TTNK: AllowedTerrainTypes: Clear, Road, DirtRoad, Rough DeploySounds: place2.aud UndeploySounds: clicky1.aud + Voice: Move GrantCondition@PREVIEWWORKAROUND: Condition: real-actor WithVoxelBody: @@ -244,6 +245,7 @@ ART2: AllowedTerrainTypes: Clear, Road, DirtRoad, Rough DeploySounds: place2.aud UndeploySounds: clicky1.aud + Voice: Move GrantCondition@PREVIEWWORKAROUND: Condition: real-actor WithVoxelBody: diff --git a/mods/ts/rules/shared-vehicles.yaml b/mods/ts/rules/shared-vehicles.yaml index 70a70d37b9..e3a0540b1f 100644 --- a/mods/ts/rules/shared-vehicles.yaml +++ b/mods/ts/rules/shared-vehicles.yaml @@ -152,6 +152,7 @@ LPST: AllowedTerrainTypes: Clear, Road, DirtRoad, Rough DeploySounds: place2.aud UndeploySounds: clicky1.aud + Voice: Move WithVoxelBody: RequiresCondition: undeployed WithSpriteBody@deployed: