moved Game.minimap into World

This commit is contained in:
Bob
2010-01-18 02:21:44 +13:00
parent a98296c4c4
commit 6f0c2c5a5d
4 changed files with 16 additions and 16 deletions

View File

@@ -230,8 +230,8 @@ namespace OpenRa
DrawDialogBackground(new Rectangle(r.Right - 330, r.Top + 40, 310, r.Bottom - 273 - r.Top - 40),
panelSprites, false);
Game.minimap.Update();
Game.minimap.Draw(new Rectangle(r.Right - 325, r.Top + 45, 300, 277), true);
Game.world.Minimap.Update();
Game.world.Minimap.Draw(new Rectangle(r.Right - 325, r.Top + 45, 300, 277), true);
renderer.DrawText2("Name", new int2(r.Left + 30, r.Top + 50), Color.White);
renderer.DrawText2("Color", new int2(r.Left + 230, r.Top + 50), Color.White);
@@ -317,7 +317,7 @@ namespace OpenRa
if (radarAnimationFrame >= radarSlideAnimationLength)
{
RectangleF mapRect = new RectangleF(radarOrigin.X + 9, radarOrigin.Y+(192-radarMinimapHeight)/2, 192, radarMinimapHeight);
Game.minimap.Draw(mapRect, false);
Game.world.Minimap.Draw(mapRect, false);
}
}

View File

@@ -46,7 +46,6 @@ namespace OpenRa
static int2 clientSize;
static HardwarePalette palette;
static string mapName;
internal static Minimap minimap;
internal static Session LobbyInfo = new Session();
internal static int2[] SpawnPoints;
static bool changePending;
@@ -80,8 +79,6 @@ namespace OpenRa
SequenceProvider.Initialize(usingAftermath);
viewport = new Viewport(clientSize, Game.world.Map.Offset, Game.world.Map.Offset + Game.world.Map.Size, renderer);
minimap = new Minimap(renderer);
skipMakeAnims = true;
foreach (var treeReference in Game.world.Map.Trees)
world.CreateActor(treeReference.Image, new int2(treeReference.Location), null);
@@ -167,9 +164,6 @@ namespace OpenRa
using (new PerfSample("tick_time"))
{
lastTime += Settings.Timestep;
UpdatePalette(world.Actors.SelectMany(
a => a.traits.WithInterface<IPaletteModifier>()));
minimap.Update();
chrome.Tick();
orderManager.TickImmediate();
@@ -194,6 +188,8 @@ namespace OpenRa
using (new PerfSample("render"))
{
UpdatePalette(world.Actors.SelectMany(
a => a.traits.WithInterface<IPaletteModifier>()));
++RenderFrame;
viewport.DrawRegions();
}

View File

@@ -17,18 +17,18 @@ namespace OpenRa.Graphics
public void Tick() { }
public Minimap(Renderer r)
public Minimap(World world, Renderer r)
{
sheet = new Sheet(r, new Size(128, 128));
mapOnlySheet = new Sheet(r, new Size(128, 128));
rgbaRenderer = new SpriteRenderer(r, true, r.RgbaSpriteShader);
var size = Math.Max(Game.world.Map.Width, Game.world.Map.Height);
var dw = (size - Game.world.Map.Width) / 2;
var dh = (size - Game.world.Map.Height) / 2;
var size = Math.Max(world.Map.Width, world.Map.Height);
var dw = (size - world.Map.Width) / 2;
var dh = (size - world.Map.Height) / 2;
sprite = new Sprite(sheet, new Rectangle(Game.world.Map.Offset.X+dw, Game.world.Map.Offset.Y+dh, size, size), TextureChannel.Alpha);
mapOnlySprite = new Sprite(mapOnlySheet, new Rectangle(Game.world.Map.Offset.X + dw, Game.world.Map.Offset.Y + dh, size, size), TextureChannel.Alpha);
sprite = new Sprite(sheet, new Rectangle(world.Map.Offset.X+dw, world.Map.Offset.Y+dh, size, size), TextureChannel.Alpha);
mapOnlySprite = new Sprite(mapOnlySheet, new Rectangle(world.Map.Offset.X + dw, world.Map.Offset.Y + dh, size, size), TextureChannel.Alpha);
}
Color[] terrainTypeColors;

View File

@@ -22,6 +22,7 @@ namespace OpenRa
public readonly TileSet TileSet;
public readonly WorldRenderer WorldRenderer;
internal readonly Minimap Minimap;
readonly int oreFrequency;
int oreTicks;
@@ -44,6 +45,7 @@ namespace OpenRa
CreateActor("World", new int2(int.MaxValue, int.MaxValue), null);
WorldRenderer = new WorldRenderer(this, Game.renderer);
Minimap = new Minimap(this, Game.renderer);
}
public Actor CreateActor( string name, int2 location, Player owner )
@@ -81,7 +83,7 @@ namespace OpenRa
using( new PerfSample( "ore" ) )
{
Map.GrowOre( Game.SharedRandom );
Game.minimap.InvalidateOre();
Game.world.Minimap.InvalidateOre();
oreTicks = oreFrequency;
}
@@ -95,6 +97,8 @@ namespace OpenRa
foreach (var a in acts) a(this);
UnitInfluence.Tick();
Minimap.Update();
}
public IEnumerable<Actor> Actors { get { return actors; } }