Change "Cannot deploy here" to a notification.

This commit is contained in:
Paul Chote
2015-02-28 12:42:08 +00:00
parent 7b27b803f9
commit 59d06a22bf
9 changed files with 26 additions and 12 deletions

View File

@@ -22,6 +22,7 @@ namespace OpenRA.Mods.Common.Activities
public CVec Offset = CVec.Zero;
public int Facing = 96;
public string[] Sounds = { };
public string Notification = null;
public int ForceHealthPercentage = 0;
public bool SkipMakeAnims = false;
public string Race = null;
@@ -51,6 +52,8 @@ namespace OpenRA.Mods.Common.Activities
foreach (var s in Sounds)
Sound.PlayToPlayer(self.Owner, s, self.CenterPosition);
Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Speech", Notification, self.Owner.Country.Race);
var init = new TypeDictionary
{
new LocationInit(self.Location + Offset),

View File

@@ -24,6 +24,12 @@ namespace OpenRA.Mods.Common.Traits
public readonly string[] TransformSounds = { };
public readonly string[] NoTransformSounds = { };
[Desc("Notification to play when transforming.")]
public readonly string TransformNotification = null;
[Desc("Notification to play when the transformation is blocked.")]
public readonly string NoTransformNotification = null;
public virtual object Create(ActorInitializer init) { return new Transforms(init, this); }
}
@@ -78,6 +84,8 @@ namespace OpenRA.Mods.Common.Traits
foreach (var s in info.NoTransformSounds)
Sound.PlayToPlayer(self.Owner, s);
Sound.PlayNotification(self.World.Map.Rules, self.Owner, "Speech", info.NoTransformNotification, self.Owner.Country.Race);
return;
}
@@ -90,7 +98,15 @@ namespace OpenRA.Mods.Common.Traits
foreach (var nt in self.TraitsImplementing<INotifyTransform>())
nt.BeforeTransform(self);
var transform = new Transform(self, info.IntoActor) { Offset = info.Offset, Facing = info.Facing, Sounds = info.TransformSounds, Race = race };
var transform = new Transform(self, info.IntoActor)
{
Offset = info.Offset,
Facing = info.Facing,
Sounds = info.TransformSounds,
Notification = info.TransformNotification,
Race = race
};
var makeAnimation = self.TraitOrDefault<WithMakeAnimation>();
if (makeAnimation != null)
makeAnimation.Reverse(self, transform);