fixing bad shroud behavior

This commit is contained in:
Chris Forbes
2010-01-05 22:17:49 +13:00
parent 77da5c89de
commit 05b4517f2e
2 changed files with 6 additions and 7 deletions

View File

@@ -59,6 +59,11 @@ namespace OpenRa.Game
palette = new HardwarePalette(renderer, Rules.Map); palette = new HardwarePalette(renderer, Rules.Map);
world = new World(); world = new World();
Game.world.ActorAdded += a =>
{
if (a.Owner != null && a.Info != null)
a.Owner.Shroud.Explore(a);
};
for (int i = 0; i < 8; i++) for (int i = 0; i < 8; i++)
{ {
@@ -102,12 +107,6 @@ namespace OpenRa.Game
oreFrequency = (int)(Rules.General.GrowthRate * 60 * 1000); oreFrequency = (int)(Rules.General.GrowthRate * 60 * 1000);
oreTicks = oreFrequency; oreTicks = oreFrequency;
foreach (var a in Game.world.Actors)
if (a.Info != null && a.Owner == players[0])
players[0].Shroud.Explore(a);
Game.world.ActorAdded += a => players[0].Shroud.Explore(a);
} }
public static void Initialize(string mapName, Renderer renderer, int2 clientSize, public static void Initialize(string mapName, Renderer renderer, int2 clientSize,

View File

@@ -16,7 +16,7 @@ namespace OpenRa.Game
public void Explore(Actor a) public void Explore(Actor a)
{ {
foreach (var t in Game.FindTilesInCircle(a.Location, a.Info.Sight)) foreach (var t in Game.FindTilesInCircle((1f/Game.CellSize * a.CenterLocation).ToInt2(), a.Info.Sight))
explored[t.X, t.Y] = true; explored[t.X, t.Y] = true;
dirty = true; dirty = true;