Draw rally points above the shroud.

This commit is contained in:
Paul Chote
2016-08-22 16:18:38 +01:00
parent 69b358ec7b
commit afdb0e0829

View File

@@ -10,14 +10,13 @@
#endregion #endregion
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using OpenRA.Effects; using OpenRA.Effects;
using OpenRA.Graphics; using OpenRA.Graphics;
using OpenRA.Mods.Common.Traits; using OpenRA.Mods.Common.Traits;
namespace OpenRA.Mods.Common.Effects namespace OpenRA.Mods.Common.Effects
{ {
class RallyPointIndicator : IEffect class RallyPointIndicator : IEffect, IEffectAboveShroud
{ {
readonly Actor building; readonly Actor building;
readonly RallyPoint rp; readonly RallyPoint rp;
@@ -41,7 +40,7 @@ namespace OpenRA.Mods.Common.Effects
circles.Play(rp.Info.CirclesSequence); circles.Play(rp.Info.CirclesSequence);
} }
public void Tick(World world) void IEffect.Tick(World world)
{ {
flag.Tick(); flag.Tick();
circles.Tick(); circles.Tick();
@@ -76,7 +75,9 @@ namespace OpenRA.Mods.Common.Effects
world.AddFrameEndTask(w => w.Remove(this)); world.AddFrameEndTask(w => w.Remove(this));
} }
public IEnumerable<IRenderable> Render(WorldRenderer wr) IEnumerable<IRenderable> IEffect.Render(WorldRenderer wr) { return SpriteRenderable.None; }
IEnumerable<IRenderable> IEffectAboveShroud.RenderAboveShroud(WorldRenderer wr)
{ {
if (!building.IsInWorld || !building.Owner.IsAlliedWith(building.World.LocalPlayer)) if (!building.IsInWorld || !building.Owner.IsAlliedWith(building.World.LocalPlayer))
return SpriteRenderable.None; return SpriteRenderable.None;