pass WorldRenderer to Widget.Draw, DrawInner
This commit is contained in:
@@ -181,7 +181,7 @@ namespace OpenRA
|
|||||||
LocalTick = 0;
|
LocalTick = 0;
|
||||||
|
|
||||||
orderManager.StartGame();
|
orderManager.StartGame();
|
||||||
viewport.RefreshPalette();
|
worldRenderer.RefreshPalette();
|
||||||
AfterGameStart( world );
|
AfterGameStart( world );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ namespace OpenRA.Graphics
|
|||||||
renderer.BeginFrame(scrollPosition);
|
renderer.BeginFrame(scrollPosition);
|
||||||
wr.Draw();
|
wr.Draw();
|
||||||
|
|
||||||
Widget.DoDraw();
|
Widget.DoDraw( wr );
|
||||||
|
|
||||||
var cursorName = Widget.RootWidget.GetCursorOuter(Viewport.LastMousePos) ?? "default";
|
var cursorName = Widget.RootWidget.GetCursorOuter(Viewport.LastMousePos) ?? "default";
|
||||||
var c = new Cursor(cursorName);
|
var c = new Cursor(cursorName);
|
||||||
@@ -109,16 +109,9 @@ namespace OpenRA.Graphics
|
|||||||
renderer.EndFrame();
|
renderer.EndFrame();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RefreshPalette()
|
|
||||||
{
|
|
||||||
Game.worldRenderer.palette.Update(
|
|
||||||
Game.world.WorldActor.TraitsImplementing<IPaletteModifier>());
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Tick()
|
public void Tick()
|
||||||
{
|
{
|
||||||
cursorFrame += 0.5f;
|
cursorFrame += 0.5f;
|
||||||
RefreshPalette();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public float2 ViewToWorld(int2 loc)
|
public float2 ViewToWorld(int2 loc)
|
||||||
|
|||||||
@@ -73,6 +73,7 @@ namespace OpenRA.Graphics
|
|||||||
Renderable[] worldSprites = { };
|
Renderable[] worldSprites = { };
|
||||||
public void Tick()
|
public void Tick()
|
||||||
{
|
{
|
||||||
|
RefreshPalette();
|
||||||
var bounds = GetBoundsRect();
|
var bounds = GetBoundsRect();
|
||||||
var comparer = new SpriteComparer();
|
var comparer = new SpriteComparer();
|
||||||
|
|
||||||
@@ -188,5 +189,10 @@ namespace OpenRA.Graphics
|
|||||||
prev = pos;
|
prev = pos;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void RefreshPalette()
|
||||||
|
{
|
||||||
|
palette.Update( world.WorldActor.TraitsImplementing<IPaletteModifier>() );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,13 +8,15 @@
|
|||||||
*/
|
*/
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
class BackgroundWidget : Widget
|
class BackgroundWidget : Widget
|
||||||
{
|
{
|
||||||
public readonly string Background = "dialog";
|
public readonly string Background = "dialog";
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
WidgetUtils.DrawPanel(Background, RenderBounds);
|
WidgetUtils.DrawPanel(Background, RenderBounds);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -62,7 +63,7 @@ namespace OpenRA.Widgets
|
|||||||
return Depressed;
|
return Depressed;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var font = (Bold) ? Game.Renderer.BoldFont : Game.Renderer.RegularFont;
|
var font = (Bold) ? Game.Renderer.BoldFont : Game.Renderer.RegularFont;
|
||||||
var stateOffset = (Depressed) ? new int2(VisualHeight, VisualHeight) : new int2(0, 0);
|
var stateOffset = (Depressed) ? new int2(VisualHeight, VisualHeight) : new int2(0, 0);
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -32,7 +33,7 @@ namespace OpenRA.Widgets
|
|||||||
: base(widget) { }
|
: base(widget) { }
|
||||||
|
|
||||||
public override Rectangle EventBounds { get { return Rectangle.Empty; } }
|
public override Rectangle EventBounds { get { return Rectangle.Empty; } }
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var pos = RenderOrigin;
|
var pos = RenderOrigin;
|
||||||
var chatLogArea = new Rectangle(pos.X, pos.Y, Bounds.Width, Bounds.Height);
|
var chatLogArea = new Rectangle(pos.X, pos.Y, Bounds.Width, Bounds.Height);
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -24,7 +25,7 @@ namespace OpenRA.Widgets
|
|||||||
bool composing = false;
|
bool composing = false;
|
||||||
bool teamChat = false;
|
bool teamChat = false;
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if (composing)
|
if (composing)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ namespace OpenRA.Widgets
|
|||||||
public bool Bold = false;
|
public bool Bold = false;
|
||||||
public Func<bool> Checked = () => false;
|
public Func<bool> Checked = () => false;
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var font = Bold ? Game.Renderer.BoldFont : Game.Renderer.RegularFont;
|
var font = Bold ? Game.Renderer.BoldFont : Game.Renderer.RegularFont;
|
||||||
var pos = RenderOrigin;
|
var pos = RenderOrigin;
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -34,7 +35,7 @@ namespace OpenRA.Widgets
|
|||||||
return new ColorBlockWidget(this);
|
return new ColorBlockWidget(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
WidgetUtils.FillRectWithColor(RenderBounds, GetColor());
|
WidgetUtils.FillRectWithColor(RenderBounds, GetColor());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ using System.Drawing;
|
|||||||
using System.Linq;
|
using System.Linq;
|
||||||
using OpenRA.FileFormats;
|
using OpenRA.FileFormats;
|
||||||
using OpenRA.Network;
|
using OpenRA.Network;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets.Delegates
|
namespace OpenRA.Widgets.Delegates
|
||||||
{
|
{
|
||||||
@@ -172,7 +173,7 @@ namespace OpenRA.Widgets.Delegates
|
|||||||
{
|
{
|
||||||
CurrentColorPreview1 = PlayerColorRemap.ColorFromHSL(hf, sf, lf);
|
CurrentColorPreview1 = PlayerColorRemap.ColorFromHSL(hf, sf, lf);
|
||||||
CurrentColorPreview2 = PlayerColorRemap.ColorFromHSL(hf, sf, r * lf);
|
CurrentColorPreview2 = PlayerColorRemap.ColorFromHSL(hf, sf, r * lf);
|
||||||
Game.viewport.RefreshPalette();
|
Game.worldRenderer.RefreshPalette();
|
||||||
}
|
}
|
||||||
|
|
||||||
void UpdateCurrentMap()
|
void UpdateCurrentMap()
|
||||||
@@ -182,7 +183,6 @@ namespace OpenRA.Widgets.Delegates
|
|||||||
Map = Game.modData.AvailableMaps[MapUid];
|
Map = Game.modData.AvailableMaps[MapUid];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
bool hasJoined = false;
|
bool hasJoined = false;
|
||||||
void JoinedServer()
|
void JoinedServer()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ namespace OpenRA.Widgets
|
|||||||
|
|
||||||
public override Widget Clone() { return new ImageWidget(this); }
|
public override Widget Clone() { return new ImageWidget(this); }
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var name = GetImageName();
|
var name = GetImageName();
|
||||||
var collection = GetImageCollection();
|
var collection = GetImageCollection();
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -43,7 +44,7 @@ namespace OpenRA.Widgets
|
|||||||
GetBackground = other.GetBackground;
|
GetBackground = other.GetBackground;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var bg = GetBackground();
|
var bg = GetBackground();
|
||||||
|
|
||||||
|
|||||||
@@ -44,8 +44,8 @@ namespace OpenRA.Widgets
|
|||||||
DownPressed = other.DownPressed;
|
DownPressed = other.DownPressed;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner() {}
|
public override void DrawInner( WorldRenderer wr ) {}
|
||||||
public override void Draw()
|
public override void Draw( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if (!IsVisible())
|
if (!IsVisible())
|
||||||
return;
|
return;
|
||||||
@@ -74,7 +74,7 @@ namespace OpenRA.Widgets
|
|||||||
Game.Renderer.EnableScissor(backgroundRect.X, backgroundRect.Y + HeaderHeight, backgroundRect.Width, backgroundRect.Height - HeaderHeight);
|
Game.Renderer.EnableScissor(backgroundRect.X, backgroundRect.Y + HeaderHeight, backgroundRect.Width, backgroundRect.Height - HeaderHeight);
|
||||||
|
|
||||||
foreach (var child in Children)
|
foreach (var child in Children)
|
||||||
child.Draw();
|
child.Draw( wr );
|
||||||
|
|
||||||
Game.Renderer.DisableScissor();
|
Game.Renderer.DisableScissor();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ namespace OpenRA.Widgets
|
|||||||
static Sprite UnownedSpawn = null;
|
static Sprite UnownedSpawn = null;
|
||||||
static Sprite OwnedSpawn = null;
|
static Sprite OwnedSpawn = null;
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if (UnownedSpawn == null)
|
if (UnownedSpawn == null)
|
||||||
UnownedSpawn = ChromeProvider.GetImage("spawnpoints", "unowned");
|
UnownedSpawn = ChromeProvider.GetImage("spawnpoints", "unowned");
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using OpenRA.Graphics;
|
||||||
using OpenRA.Support;
|
using OpenRA.Support;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
@@ -18,7 +19,7 @@ namespace OpenRA.Widgets
|
|||||||
{
|
{
|
||||||
public PerfGraphWidget() : base() { }
|
public PerfGraphWidget() : base() { }
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var rect = RenderBounds;
|
var rect = RenderBounds;
|
||||||
float2 origin = Game.viewport.Location + new float2(rect.Right, rect.Bottom);
|
float2 origin = Game.viewport.Location + new float2(rect.Right, rect.Bottom);
|
||||||
|
|||||||
@@ -1,8 +1,19 @@
|
|||||||
using System;
|
#region Copyright & License Information
|
||||||
|
/*
|
||||||
|
* Copyright 2007-2010 The OpenRA Developers (see AUTHORS)
|
||||||
|
* This file is part of OpenRA, which is free software. It is made
|
||||||
|
* available to you under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation. For more information,
|
||||||
|
* see LICENSE.
|
||||||
|
*/
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -93,7 +104,7 @@ namespace OpenRA.Widgets
|
|||||||
Text = Text.Replace("\r", "");
|
Text = Text.Replace("\r", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var bg = GetBackground();
|
var bg = GetBackground();
|
||||||
|
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ namespace OpenRA.Widgets
|
|||||||
Sprite sprite = null;
|
Sprite sprite = null;
|
||||||
string cachedImage = null;
|
string cachedImage = null;
|
||||||
int cachedFrame= -1;
|
int cachedFrame= -1;
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var image = GetImage();
|
var image = GetImage();
|
||||||
var frame = GetFrame();
|
var frame = GetFrame();
|
||||||
@@ -61,7 +61,7 @@ namespace OpenRA.Widgets
|
|||||||
cachedFrame = frame;
|
cachedFrame = frame;
|
||||||
}
|
}
|
||||||
|
|
||||||
Game.Renderer.WorldSpriteRenderer.DrawSprite(sprite,RenderOrigin, Game.worldRenderer, palette);
|
Game.Renderer.WorldSpriteRenderer.DrawSprite(sprite,RenderOrigin, wr, palette);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -165,7 +166,7 @@ namespace OpenRA.Widgets
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if (!IsVisible())
|
if (!IsVisible())
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -107,7 +108,7 @@ namespace OpenRA.Widgets
|
|||||||
base.Tick();
|
base.Tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
int margin = 5;
|
int margin = 5;
|
||||||
var font = (Bold) ? Game.Renderer.BoldFont : Game.Renderer.RegularFont;
|
var font = (Bold) ? Game.Renderer.BoldFont : Game.Renderer.RegularFont;
|
||||||
|
|||||||
@@ -9,6 +9,7 @@
|
|||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
using System.Drawing;
|
using System.Drawing;
|
||||||
|
using OpenRA.Graphics;
|
||||||
using OpenRA.Support;
|
using OpenRA.Support;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
@@ -22,7 +23,7 @@ namespace OpenRA.Widgets
|
|||||||
IsVisible = () => Game.Settings.Game.MatchTimer;
|
IsVisible = () => Game.Settings.Game.MatchTimer;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var s = WorldUtils.FormatTime(Game.LocalTick);
|
var s = WorldUtils.FormatTime(Game.LocalTick);
|
||||||
var size = Game.Renderer.TitleFont.Measure(s);
|
var size = Game.Renderer.TitleFont.Measure(s);
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ namespace OpenRA.Widgets
|
|||||||
|
|
||||||
public ViewportScrollControllerWidget() : base() { }
|
public ViewportScrollControllerWidget() : base() { }
|
||||||
protected ViewportScrollControllerWidget(ViewportScrollControllerWidget widget) : base(widget) {}
|
protected ViewportScrollControllerWidget(ViewportScrollControllerWidget widget) : base(widget) {}
|
||||||
public override void DrawInner() {}
|
public override void DrawInner( WorldRenderer wr ) {}
|
||||||
|
|
||||||
public override bool HandleInputInner(MouseInput mi)
|
public override bool HandleInputInner(MouseInput mi)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ namespace OpenRA.Widgets
|
|||||||
overlaySprite.sheet.Texture.SetData(overlay);
|
overlaySprite.sheet.Texture.SetData(overlay);
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if (video == null)
|
if (video == null)
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -269,15 +269,15 @@ namespace OpenRA.Widgets
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public abstract void DrawInner();
|
public abstract void DrawInner( WorldRenderer wr );
|
||||||
|
|
||||||
public virtual void Draw()
|
public virtual void Draw( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if (IsVisible())
|
if (IsVisible())
|
||||||
{
|
{
|
||||||
DrawInner();
|
DrawInner( wr );
|
||||||
foreach (var child in Children)
|
foreach (var child in Children)
|
||||||
child.Draw();
|
child.Draw( wr );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -340,9 +340,9 @@ namespace OpenRA.Widgets
|
|||||||
RootWidget.Tick();
|
RootWidget.Tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DoDraw()
|
public static void DoDraw( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
RootWidget.Draw();
|
RootWidget.Draw( wr );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -351,7 +351,7 @@ namespace OpenRA.Widgets
|
|||||||
|
|
||||||
public ContainerWidget(Widget other) : base(other) { }
|
public ContainerWidget(Widget other) : base(other) { }
|
||||||
|
|
||||||
public override void DrawInner() { }
|
public override void DrawInner( WorldRenderer wr ) { }
|
||||||
|
|
||||||
public override string GetCursor(int2 pos) { return null; }
|
public override string GetCursor(int2 pos) { return null; }
|
||||||
public override Widget Clone() { return new ContainerWidget(this); }
|
public override Widget Clone() { return new ContainerWidget(this); }
|
||||||
|
|||||||
@@ -27,9 +27,9 @@ namespace OpenRA.Widgets
|
|||||||
Game.Renderer.RgbaSpriteRenderer.DrawSprite(s,pos);
|
Game.Renderer.RgbaSpriteRenderer.DrawSprite(s,pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DrawSHP(Sprite s, float2 pos)
|
public static void DrawSHP(Sprite s, float2 pos, WorldRenderer wr)
|
||||||
{
|
{
|
||||||
Game.Renderer.WorldSpriteRenderer.DrawSprite(s,pos, Game.worldRenderer, "chrome");
|
Game.Renderer.WorldSpriteRenderer.DrawSprite(s,pos, wr, "chrome");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void DrawPanel(string collection, Rectangle Bounds)
|
public static void DrawPanel(string collection, Rectangle Bounds)
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ using System.Linq;
|
|||||||
using OpenRA.FileFormats;
|
using OpenRA.FileFormats;
|
||||||
using OpenRA.Orders;
|
using OpenRA.Orders;
|
||||||
using OpenRA.Traits;
|
using OpenRA.Traits;
|
||||||
|
using OpenRA.Graphics;
|
||||||
|
|
||||||
namespace OpenRA.Widgets
|
namespace OpenRA.Widgets
|
||||||
{
|
{
|
||||||
@@ -26,7 +27,7 @@ namespace OpenRA.Widgets
|
|||||||
this.world = world;
|
this.world = world;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var selbox = SelectionBox;
|
var selbox = SelectionBox;
|
||||||
if (selbox == null) return;
|
if (selbox == null) return;
|
||||||
@@ -41,7 +42,7 @@ namespace OpenRA.Widgets
|
|||||||
Game.Renderer.LineRenderer.DrawLine(a, a + c, Color.White, Color.White);
|
Game.Renderer.LineRenderer.DrawLine(a, a + c, Color.White, Color.White);
|
||||||
|
|
||||||
foreach (var u in SelectActorsInBox(world, selbox.Value.First, selbox.Value.Second))
|
foreach (var u in SelectActorsInBox(world, selbox.Value.First, selbox.Value.Second))
|
||||||
Game.worldRenderer.DrawSelectionBox(u, Color.Yellow);
|
wr.DrawSelectionBox(u, Color.Yellow);
|
||||||
}
|
}
|
||||||
|
|
||||||
float2 dragStart, dragEnd;
|
float2 dragStart, dragEnd;
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ namespace OpenRA.Widgets
|
|||||||
{
|
{
|
||||||
public int TooltipDelay = 10;
|
public int TooltipDelay = 10;
|
||||||
public WorldTooltipWidget() : base() { }
|
public WorldTooltipWidget() : base() { }
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var world = Game.world;
|
var world = Game.world;
|
||||||
if (Viewport.TicksSinceLastMove < TooltipDelay || world == null || world.LocalPlayer == null)
|
if (Viewport.TicksSinceLastMove < TooltipDelay || world == null || world.LocalPlayer == null)
|
||||||
|
|||||||
@@ -163,9 +163,9 @@ namespace OpenRA
|
|||||||
}, "[{2}] Trait: {0} ({1:0.000} ms)", Game.Settings.Debug.LongTickThreshold );
|
}, "[{2}] Trait: {0} ({1:0.000} ms)", Game.Settings.Debug.LongTickThreshold );
|
||||||
|
|
||||||
effects.DoTimed( e => e.Tick( this ), "[{2}] Effect: {0} ({1:0.000} ms)", Game.Settings.Debug.LongTickThreshold );
|
effects.DoTimed( e => e.Tick( this ), "[{2}] Effect: {0} ({1:0.000} ms)", Game.Settings.Debug.LongTickThreshold );
|
||||||
Game.viewport.Tick();
|
|
||||||
while (frameEndActions.Count != 0)
|
while (frameEndActions.Count != 0)
|
||||||
frameEndActions.Dequeue()(this);
|
frameEndActions.Dequeue()(this);
|
||||||
|
Game.viewport.Tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEnumerable<Actor> Actors { get { return actors; } }
|
public IEnumerable<Actor> Actors { get { return actors; } }
|
||||||
|
|||||||
@@ -176,15 +176,15 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
|
|
||||||
int paletteHeight = 0;
|
int paletteHeight = 0;
|
||||||
int numActualRows = 0;
|
int numActualRows = 0;
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if (!IsVisible()) return;
|
if (!IsVisible()) return;
|
||||||
// todo: fix
|
// todo: fix
|
||||||
paletteHeight = DrawPalette(world, CurrentQueue);
|
paletteHeight = DrawPalette(wr, world, CurrentQueue);
|
||||||
DrawBuildTabs(world, paletteHeight);
|
DrawBuildTabs(world, paletteHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
int DrawPalette(World world, ProductionQueue queue)
|
int DrawPalette(WorldRenderer wr, World world, ProductionQueue queue)
|
||||||
{
|
{
|
||||||
buttons.Clear();
|
buttons.Clear();
|
||||||
if (queue == null) return 0;
|
if (queue == null) return 0;
|
||||||
@@ -218,7 +218,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
{
|
{
|
||||||
var rect = new RectangleF(origin.X + x * 64, origin.Y + 48 * y, 64, 48);
|
var rect = new RectangleF(origin.X + x * 64, origin.Y + 48 * y, 64, 48);
|
||||||
var drawPos = new float2(rect.Location);
|
var drawPos = new float2(rect.Location);
|
||||||
WidgetUtils.DrawSHP(iconSprites[item.Name], drawPos);
|
WidgetUtils.DrawSHP(iconSprites[item.Name], drawPos, wr);
|
||||||
|
|
||||||
var firstOfThis = queue.AllQueued().FirstOrDefault(a => a.Item == item.Name);
|
var firstOfThis = queue.AllQueued().FirstOrDefault(a => a.Item == item.Name);
|
||||||
|
|
||||||
@@ -233,7 +233,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
() => (firstOfThis.TotalTime - firstOfThis.RemainingTime)
|
() => (firstOfThis.TotalTime - firstOfThis.RemainingTime)
|
||||||
* (clock.CurrentSequence.Length - 1) / firstOfThis.TotalTime);
|
* (clock.CurrentSequence.Length - 1) / firstOfThis.TotalTime);
|
||||||
clock.Tick();
|
clock.Tick();
|
||||||
WidgetUtils.DrawSHP(clock.Image, drawPos);
|
WidgetUtils.DrawSHP(clock.Image, drawPos, wr);
|
||||||
|
|
||||||
if (firstOfThis.Done)
|
if (firstOfThis.Done)
|
||||||
{
|
{
|
||||||
@@ -272,7 +272,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
if (x != 0) y++;
|
if (x != 0) y++;
|
||||||
|
|
||||||
foreach (var ob in overlayBits)
|
foreach (var ob in overlayBits)
|
||||||
WidgetUtils.DrawSHP(ob.First, ob.Second);
|
WidgetUtils.DrawSHP(ob.First, ob.Second, wr);
|
||||||
|
|
||||||
// Tooltip
|
// Tooltip
|
||||||
if (tooltipItem != null && !paletteAnimating && paletteOpen)
|
if (tooltipItem != null && !paletteAnimating && paletteOpen)
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
|
|
||||||
public MoneyBinWidget() : base() { }
|
public MoneyBinWidget() : base() { }
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var world = Game.world;
|
var world = Game.world;
|
||||||
if( world.LocalPlayer == null ) return;
|
if( world.LocalPlayer == null ) return;
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
GetLongDesc = () => LongDesc;
|
GetLongDesc = () => LongDesc;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var image = ChromeProvider.GetImage(Image + "-button", GetImage());
|
var image = ChromeProvider.GetImage(Image + "-button", GetImage());
|
||||||
var rect = new Rectangle(RenderBounds.X, RenderBounds.Y, (int)image.size.X, (int)image.size.Y);
|
var rect = new Rectangle(RenderBounds.X, RenderBounds.Y, (int)image.size.X, (int)image.size.Y);
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
float? lastPowerDrainedPos;
|
float? lastPowerDrainedPos;
|
||||||
string powerCollection;
|
string powerCollection;
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var world = Game.world;
|
var world = Game.world;
|
||||||
if( world.LocalPlayer == null ) return;
|
if( world.LocalPlayer == null ) return;
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
get { return new Rectangle((int)mapRect.X, (int)mapRect.Y, (int)mapRect.Width, (int)mapRect.Height);}
|
get { return new Rectangle((int)mapRect.X, (int)mapRect.Y, (int)mapRect.Width, (int)mapRect.Height);}
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
if( world == null || world.LocalPlayer == null ) return;
|
if( world == null || world.LocalPlayer == null ) return;
|
||||||
|
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void DrawInner()
|
public override void DrawInner( WorldRenderer wr )
|
||||||
{
|
{
|
||||||
var world = Game.world;
|
var world = Game.world;
|
||||||
buttons.Clear();
|
buttons.Clear();
|
||||||
@@ -127,19 +127,19 @@ namespace OpenRA.Mods.RA.Widgets
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
WidgetUtils.DrawSHP(image, drawPos);
|
WidgetUtils.DrawSHP(image, drawPos, wr);
|
||||||
|
|
||||||
clock.PlayFetchIndex("idle",
|
clock.PlayFetchIndex("idle",
|
||||||
() => (sp.TotalTime - sp.RemainingTime)
|
() => (sp.TotalTime - sp.RemainingTime)
|
||||||
* (clock.CurrentSequence.Length - 1) / sp.TotalTime);
|
* (clock.CurrentSequence.Length - 1) / sp.TotalTime);
|
||||||
clock.Tick();
|
clock.Tick();
|
||||||
|
|
||||||
WidgetUtils.DrawSHP(clock.Image, drawPos);
|
WidgetUtils.DrawSHP(clock.Image, drawPos, wr);
|
||||||
|
|
||||||
if (sp.IsReady)
|
if (sp.IsReady)
|
||||||
{
|
{
|
||||||
ready.Play("ready");
|
ready.Play("ready");
|
||||||
WidgetUtils.DrawSHP(ready.Image, drawPos + new float2((64 - ready.Image.size.X) / 2, 2));
|
WidgetUtils.DrawSHP(ready.Image, drawPos + new float2((64 - ready.Image.size.X) / 2, 2), wr);
|
||||||
}
|
}
|
||||||
|
|
||||||
buttons.Add(Pair.New(rect,HandleSupportPower(sp)));
|
buttons.Add(Pair.New(rect,HandleSupportPower(sp)));
|
||||||
|
|||||||
Reference in New Issue
Block a user