remove Renderer.Resolution duplication everywhere -- it's not free.
This commit is contained in:
@@ -19,7 +19,7 @@ namespace OpenRA.Mods.Cnc
|
|||||||
{
|
{
|
||||||
public class CncLoadScreen : ILoadScreen
|
public class CncLoadScreen : ILoadScreen
|
||||||
{
|
{
|
||||||
Dictionary<string,string> Info;
|
Dictionary<string, string> Info;
|
||||||
Stopwatch loadTimer = new Stopwatch();
|
Stopwatch loadTimer = new Stopwatch();
|
||||||
Sprite[] ss;
|
Sprite[] ss;
|
||||||
string text;
|
string text;
|
||||||
@@ -38,8 +38,10 @@ namespace OpenRA.Mods.Cnc
|
|||||||
r = Game.Renderer;
|
r = Game.Renderer;
|
||||||
if (r == null) return;
|
if (r == null) return;
|
||||||
|
|
||||||
|
var res = Renderer.Resolution;
|
||||||
|
|
||||||
var s = new Sheet("mods/cnc/uibits/chrome.png");
|
var s = new Sheet("mods/cnc/uibits/chrome.png");
|
||||||
Bounds = new Rectangle(0,0,Renderer.Resolution.Width, Renderer.Resolution.Height);
|
Bounds = new Rectangle(0, 0, res.Width, res.Height);
|
||||||
ss = new Sprite[]
|
ss = new Sprite[]
|
||||||
{
|
{
|
||||||
new Sprite(s, new Rectangle(161,128,62,33), TextureChannel.Alpha),
|
new Sprite(s, new Rectangle(161,128,62,33), TextureChannel.Alpha),
|
||||||
@@ -51,15 +53,15 @@ namespace OpenRA.Mods.Cnc
|
|||||||
new Sprite(s, new Rectangle(128,223,33,33), TextureChannel.Alpha),
|
new Sprite(s, new Rectangle(128,223,33,33), TextureChannel.Alpha),
|
||||||
new Sprite(s, new Rectangle(223,223,33,33), TextureChannel.Alpha)
|
new Sprite(s, new Rectangle(223,223,33,33), TextureChannel.Alpha)
|
||||||
};
|
};
|
||||||
nodLogo = new Sprite(s, new Rectangle(0,256,256,256), TextureChannel.Alpha);
|
nodLogo = new Sprite(s, new Rectangle(0, 256, 256, 256), TextureChannel.Alpha);
|
||||||
gdiLogo = new Sprite(s, new Rectangle(256,256,256,256), TextureChannel.Alpha);
|
gdiLogo = new Sprite(s, new Rectangle(256, 256, 256, 256), TextureChannel.Alpha);
|
||||||
evaLogo = new Sprite(s, new Rectangle(256,64,128,64), TextureChannel.Alpha);
|
evaLogo = new Sprite(s, new Rectangle(256, 64, 128, 64), TextureChannel.Alpha);
|
||||||
nodPos = new float2(Renderer.Resolution.Width/2 - 384, Renderer.Resolution.Height/2 - 128);
|
nodPos = new float2(res.Width / 2 - 384, res.Height / 2 - 128);
|
||||||
gdiPos = new float2(Renderer.Resolution.Width/2 + 128, Renderer.Resolution.Height/2 - 128);
|
gdiPos = new float2(res.Width / 2 + 128, res.Height / 2 - 128);
|
||||||
evaPos = new float2(Renderer.Resolution.Width-43-128, 43);
|
evaPos = new float2(res.Width - 43 - 128, 43);
|
||||||
|
|
||||||
brightBlock = new Sprite(s, new Rectangle(320,0,16,35), TextureChannel.Alpha);
|
brightBlock = new Sprite(s, new Rectangle(320, 0, 16, 35), TextureChannel.Alpha);
|
||||||
dimBlock = new Sprite(s, new Rectangle(336,0,16,35), TextureChannel.Alpha);
|
dimBlock = new Sprite(s, new Rectangle(336, 0, 16, 35), TextureChannel.Alpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Display()
|
public void Display()
|
||||||
@@ -74,24 +76,26 @@ namespace OpenRA.Mods.Cnc
|
|||||||
r.RgbaSpriteRenderer.DrawSprite(nodLogo, nodPos);
|
r.RgbaSpriteRenderer.DrawSprite(nodLogo, nodPos);
|
||||||
r.RgbaSpriteRenderer.DrawSprite(evaLogo, evaPos);
|
r.RgbaSpriteRenderer.DrawSprite(evaLogo, evaPos);
|
||||||
|
|
||||||
|
var res = Renderer.Resolution;
|
||||||
|
|
||||||
WidgetUtils.DrawPanelPartial(ss, Bounds, PanelSides.Edges);
|
WidgetUtils.DrawPanelPartial(ss, Bounds, PanelSides.Edges);
|
||||||
|
|
||||||
var barY = Renderer.Resolution.Height-78;
|
var barY = res.Height - 78;
|
||||||
text = "Loading";
|
text = "Loading";
|
||||||
var textSize = r.Fonts["BigBold"].Measure(text);
|
var textSize = r.Fonts["BigBold"].Measure(text);
|
||||||
textPos = new float2((Renderer.Resolution.Width - textSize.X) / 2, barY);
|
textPos = new float2((res.Width - textSize.X) / 2, barY);
|
||||||
r.Fonts["BigBold"].DrawText(text, textPos, Color.Gray);
|
r.Fonts["BigBold"].DrawText(text, textPos, Color.Gray);
|
||||||
|
|
||||||
for (var i = 0; i <= 8; i++)
|
for (var i = 0; i <= 8; i++)
|
||||||
{
|
{
|
||||||
var block = loadTick == i ? brightBlock : dimBlock;
|
var block = loadTick == i ? brightBlock : dimBlock;
|
||||||
r.RgbaSpriteRenderer.DrawSprite(block,
|
r.RgbaSpriteRenderer.DrawSprite(block,
|
||||||
new float2(Renderer.Resolution.Width/2 - 114 - i*32, barY));
|
new float2(res.Width / 2 - 114 - i * 32, barY));
|
||||||
r.RgbaSpriteRenderer.DrawSprite(block,
|
r.RgbaSpriteRenderer.DrawSprite(block,
|
||||||
new float2(Renderer.Resolution.Width/2 + 114 + i*32-16, barY));
|
new float2(res.Width / 2 + 114 + i * 32 - 16, barY));
|
||||||
}
|
}
|
||||||
|
|
||||||
r.EndFrame( nih );
|
r.EndFrame(nih);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void StartGame()
|
public void StartGame()
|
||||||
|
|||||||
Reference in New Issue
Block a user