De-hardcoded GravityBomb idle and opening sequence

Avoid checking for sequence if Image is null.
This commit is contained in:
reaperrr
2015-04-09 23:21:30 +02:00
parent b7bb719173
commit 6b7ffdc1b7
3 changed files with 13 additions and 7 deletions

View File

@@ -19,6 +19,10 @@ namespace OpenRA.Mods.Common.Effects
public class GravityBombInfo : IProjectileInfo
{
public readonly string Image = null;
[Desc("Sequence to loop while falling.")]
public readonly string Sequence = "idle";
[Desc("Sequence to play when launched. Skipped if null.")]
public readonly string OpenSequence = null;
public readonly string Palette = "effect";
public readonly bool Shadow = false;
public readonly WRange Velocity = WRange.Zero;
@@ -46,10 +50,14 @@ namespace OpenRA.Mods.Common.Effects
acceleration = new WVec(WRange.Zero, WRange.Zero, info.Acceleration);
anim = new Animation(args.SourceActor.World, info.Image);
if (anim.HasSequence("open"))
anim.PlayThen("open", () => anim.PlayRepeating("idle"));
else
anim.PlayRepeating("idle");
if (info.Image != null)
{
if (info.OpenSequence != null)
anim.PlayThen(info.OpenSequence, () => anim.PlayRepeating(info.Sequence));
else
anim.PlayRepeating(info.Sequence);
}
}
public void Tick(World world)

View File

@@ -260,9 +260,6 @@ smoke_m:
BlendMode: Additive
bombs:
open: DATA.R8
Start: 3280
Length: 4
idle: DATA.R8
Start: 3280
Length: 4

View File

@@ -4,6 +4,7 @@ ParaBomb:
Report: CHUTE1.AUD
Projectile: GravityBomb
Image: PARABOMB
OpenSequence: open
Velocity: 43
Acceleration: 0
Warhead@1Dam: SpreadDamage