Fix map chooser

This commit is contained in:
Paul Chote
2010-04-11 03:52:10 +12:00
committed by Chris Forbes
parent 5fa691e6d8
commit 5ac1d25d43

View File

@@ -271,12 +271,14 @@ namespace OpenRA
{ {
Game.IssueOrder(Order.Chat("/map " + currentMap.Uid)); Game.IssueOrder(Order.Chat("/map " + currentMap.Uid));
showMapChooser = false; showMapChooser = false;
mapPreviewDirty = true;
}); });
AddUiButton(new int2(r.Right - 200, r.Bottom - 40), "Cancel", AddUiButton(new int2(r.Right - 200, r.Bottom - 40), "Cancel",
_ => _ =>
{ {
showMapChooser = false; showMapChooser = false;
mapPreviewDirty = true;
}); });
if (mapPreviewDirty) if (mapPreviewDirty)
@@ -320,6 +322,7 @@ namespace OpenRA
} }
renderer.RegularFont.DrawText(rgbaRenderer, map.Title, new int2(r.Left + 60, y), Color.White); renderer.RegularFont.DrawText(rgbaRenderer, map.Title, new int2(r.Left + 60, y), Color.White);
rgbaRenderer.Flush();
var closureMap = map; var closureMap = map;
AddButton(itemRect, _ => { currentMap = closureMap; mapPreviewDirty = true; }); AddButton(itemRect, _ => { currentMap = closureMap; mapPreviewDirty = true; });
y += 20; y += 20;
@@ -420,6 +423,7 @@ namespace OpenRA
rgbaRenderer.Flush(); rgbaRenderer.Flush();
} }
string lastMap = "";
public void DrawLobby() public void DrawLobby()
{ {
buttons.Clear(); buttons.Clear();
@@ -431,6 +435,13 @@ namespace OpenRA
return; return;
} }
// HACK HACK HACK
if (lastMap != Game.LobbyInfo.GlobalSettings.Map)
{
mapPreviewDirty = true;
lastMap = Game.LobbyInfo.GlobalSettings.Map;
}
var w = 800; var w = 800;
var h = 600; var h = 600;
var r = new Rectangle( (Game.viewport.Width - w) / 2, (Game.viewport.Height - h) / 2, w, h ); var r = new Rectangle( (Game.viewport.Width - w) / 2, (Game.viewport.Height - h) / 2, w, h );