fixing bad shroud behavior
This commit is contained in:
@@ -59,6 +59,11 @@ namespace OpenRa.Game
|
||||
palette = new HardwarePalette(renderer, Rules.Map);
|
||||
|
||||
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++)
|
||||
{
|
||||
@@ -102,12 +107,6 @@ namespace OpenRa.Game
|
||||
|
||||
oreFrequency = (int)(Rules.General.GrowthRate * 60 * 1000);
|
||||
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,
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace OpenRa.Game
|
||||
|
||||
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;
|
||||
|
||||
dirty = true;
|
||||
|
||||
Reference in New Issue
Block a user