Fix C&C options menu fade effect.
This commit is contained in:
@@ -190,7 +190,8 @@ namespace OpenRA
|
||||
else
|
||||
if (orderManager.NetFrameNumber == 0)
|
||||
orderManager.LastTickTime = Environment.TickCount;
|
||||
|
||||
|
||||
world.TickRender(worldRenderer);
|
||||
viewport.Tick();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,6 +34,7 @@ namespace OpenRA.Traits
|
||||
}
|
||||
|
||||
public interface ITick { void Tick(Actor self); }
|
||||
public interface ITickRender { void TickRender(WorldRenderer wr, Actor self); }
|
||||
public interface IRender { IEnumerable<Renderable> Render(Actor self, WorldRenderer wr); }
|
||||
public interface IAutoSelectionSize { int2 SelectionSize(Actor self); }
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using OpenRA.Effects;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.Graphics;
|
||||
using OpenRA.Network;
|
||||
using OpenRA.Orders;
|
||||
using OpenRA.Support;
|
||||
@@ -192,7 +193,12 @@ namespace OpenRA
|
||||
|
||||
while (frameEndActions.Count != 0)
|
||||
frameEndActions.Dequeue()(this);
|
||||
|
||||
}
|
||||
|
||||
// For things that want to update their render state once per tick, ignoring pause state
|
||||
public void TickRender(WorldRenderer wr)
|
||||
{
|
||||
ActorsWithTrait<ITickRender>().Do(x => x.Trait.TickRender(wr, x.Actor));
|
||||
}
|
||||
|
||||
public IEnumerable<Actor> Actors { get { return actors; } }
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using OpenRA.FileFormats;
|
||||
using OpenRA.Graphics;
|
||||
using OpenRA.Traits;
|
||||
|
||||
namespace OpenRA.Mods.Cnc
|
||||
@@ -22,7 +23,7 @@ namespace OpenRA.Mods.Cnc
|
||||
public object Create(ActorInitializer init) { return new CncMenuPaletteEffect(this); }
|
||||
}
|
||||
|
||||
public class CncMenuPaletteEffect : IPaletteModifier, ITick
|
||||
public class CncMenuPaletteEffect : IPaletteModifier, ITickRender
|
||||
{
|
||||
public enum EffectType { None, Black, Desaturated }
|
||||
public readonly CncMenuPaletteEffectInfo Info;
|
||||
@@ -40,7 +41,7 @@ namespace OpenRA.Mods.Cnc
|
||||
to = type;
|
||||
}
|
||||
|
||||
public void Tick(Actor self)
|
||||
public void TickRender(WorldRenderer wr, Actor self)
|
||||
{
|
||||
if (remainingFrames > 0)
|
||||
remainingFrames--;
|
||||
|
||||
Reference in New Issue
Block a user