Merge pull request #5185 from reaperrr/rank-palette
Makes rank chevron palette customizable
This commit is contained in:
@@ -19,10 +19,12 @@ namespace OpenRA.Mods.RA.Effects
|
||||
{
|
||||
Actor self;
|
||||
Animation anim = new Animation("rank");
|
||||
readonly string paletteName;
|
||||
|
||||
public Rank(Actor self)
|
||||
public Rank(Actor self, string paletteName)
|
||||
{
|
||||
this.self = self;
|
||||
this.paletteName = paletteName;
|
||||
var xp = self.Trait<GainsExperience>();
|
||||
|
||||
anim.PlayRepeating("rank");
|
||||
@@ -55,9 +57,10 @@ namespace OpenRA.Mods.RA.Effects
|
||||
var bounds = self.Bounds.Value;
|
||||
bounds.Offset(pos.X, pos.Y);
|
||||
|
||||
var palette = wr.Palette(paletteName);
|
||||
var offset = (int)(4 / wr.Viewport.Zoom);
|
||||
var effectPos = wr.Position(new int2(bounds.Right - offset, bounds.Bottom - offset));
|
||||
yield return new SpriteRenderable(anim.Image, effectPos, WVec.Zero, 0, wr.Palette("effect"), 1f / wr.Viewport.Zoom, true);
|
||||
yield return new SpriteRenderable(anim.Image, effectPos, WVec.Zero, 0, palette, 1f / wr.Viewport.Zoom, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ namespace OpenRA.Mods.RA
|
||||
public readonly float[] FirepowerModifier = { 1.1f, 1.15f, 1.2f, 1.5f };
|
||||
public readonly float[] ArmorModifier = { 1.1f, 1.2f, 1.3f, 1.5f };
|
||||
public readonly decimal[] SpeedModifier = { 1.1m, 1.15m, 1.2m, 1.5m };
|
||||
public readonly string ChevronPalette = "effect";
|
||||
public object Create(ActorInitializer init) { return new GainsExperience(init, this); }
|
||||
}
|
||||
|
||||
@@ -75,7 +76,7 @@ namespace OpenRA.Mods.RA
|
||||
self.World.AddFrameEndTask(w =>
|
||||
{
|
||||
if (!self.IsDead())
|
||||
w.Add(new Rank(self));
|
||||
w.Add(new Rank(self, info.ChevronPalette));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user