add a ripple animation based on the move flash
This commit is contained in:
@@ -8,6 +8,7 @@
|
|||||||
*/
|
*/
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
using OpenRA.Effects;
|
||||||
using OpenRA.Mods.RA.Activities;
|
using OpenRA.Mods.RA.Activities;
|
||||||
using OpenRA.Mods.RA.Effects;
|
using OpenRA.Mods.RA.Effects;
|
||||||
using OpenRA.Primitives;
|
using OpenRA.Primitives;
|
||||||
@@ -24,6 +25,9 @@ namespace OpenRA.Mods.RA
|
|||||||
|
|
||||||
public readonly string SonarPing = "sonpulse.aud";
|
public readonly string SonarPing = "sonpulse.aud";
|
||||||
|
|
||||||
|
public readonly string RippleSequence = "moveflsh";
|
||||||
|
public readonly string RipplePalette = "moveflash";
|
||||||
|
|
||||||
public override object Create(ActorInitializer init) { return new SonarPulsePower(init.self, this); }
|
public override object Create(ActorInitializer init) { return new SonarPulsePower(init.self, this); }
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,7 +49,12 @@ namespace OpenRA.Mods.RA
|
|||||||
new LocationInit(order.TargetLocation),
|
new LocationInit(order.TargetLocation),
|
||||||
new OwnerInit(self.Owner),
|
new OwnerInit(self.Owner),
|
||||||
});
|
});
|
||||||
|
|
||||||
Sound.Play(info.SonarPing, sonar.CenterPosition);
|
Sound.Play(info.SonarPing, sonar.CenterPosition);
|
||||||
|
|
||||||
|
if (!string.IsNullOrEmpty(info.RippleSequence) && !string.IsNullOrEmpty(info.RipplePalette))
|
||||||
|
w.Add(new SpriteEffect(sonar.CenterPosition, w, info.RippleSequence, info.RipplePalette));
|
||||||
|
|
||||||
sonar.QueueActivity(new Wait(info.SonarDuration));
|
sonar.QueueActivity(new Wait(info.SonarDuration));
|
||||||
sonar.QueueActivity(new RemoveSelf());
|
sonar.QueueActivity(new RemoveSelf());
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user