map.Offset is no long necessary in so many places. (removed BS where world-coords != map-coords)

This commit is contained in:
Bob
2009-10-29 22:10:54 +13:00
parent 066ce1a203
commit be39cdd054
8 changed files with 145 additions and 154 deletions

View File

@@ -24,8 +24,8 @@ namespace OpenRa.Game
public static Viewport viewport;
public static PathFinder PathFinder;
public static WorldRenderer worldRenderer;
public static Controller controller;
public static Controller controller;
public static OrderManager orderManager;
static int localPlayerIndex;
@@ -36,8 +36,8 @@ namespace OpenRa.Game
public static BuildingInfluenceMap BuildingInfluence;
public static UnitInfluenceMap UnitInfluence;
static ISoundEngine soundEngine;
static ISoundEngine soundEngine;
public static string Replay;
public static void Initialize(string mapName, Renderer renderer, int2 clientSize, int localPlayer)
@@ -51,16 +51,16 @@ namespace OpenRa.Game
var mapFile = new IniFile(FileSystem.Open(mapName));
map = new Map(mapFile);
FileSystem.Mount(new Package(map.Theater + ".mix"));
viewport = new Viewport(clientSize, map.Size, renderer);
FileSystem.Mount(new Package(map.Theater + ".mix"));
viewport = new Viewport( clientSize, map.Offset, map.Offset + map.Size, renderer );
terrain = new TerrainRenderer(renderer, map, viewport);
world = new World();
treeCache = new TreeCache(map);
foreach (TreeReference treeReference in map.Trees)
world.Add(new Actor(treeReference, treeCache, map.Offset));
world.Add(new Actor(treeReference, treeCache));
BuildingInfluence = new BuildingInfluenceMap(8);
UnitInfluence = new UnitInfluenceMap();
@@ -74,10 +74,10 @@ namespace OpenRa.Game
worldRenderer = new WorldRenderer(renderer);
soundEngine = new ISoundEngine();
sounds = new Cache<string, ISoundSource>(LoadSound);
orderManager = (Replay == "")
? new OrderManager(new[] { new LocalOrderSource() }, "replay.rep")
sounds = new Cache<string, ISoundSource>(LoadSound);
orderManager = (Replay == "")
? new OrderManager(new[] { new LocalOrderSource() }, "replay.rep")
: new OrderManager(new[] { new ReplayOrderSource(Replay) });
PlaySound("intro.aud", false);
@@ -90,7 +90,7 @@ namespace OpenRa.Game
//num=owner,type,health,location,facing,trigger,unknown,shouldRepair
var parts = s.Value.ToLowerInvariant().Split( ',' );
var loc = int.Parse( parts[ 3 ] );
world.Add( new Actor( parts[ 1 ], new int2( loc % 128 - map.Offset.X, loc / 128-map.Offset.Y ), players[ 0 ] ) );
world.Add( new Actor( parts[ 1 ], new int2( loc % 128, loc / 128 ), players[ 0 ] ) );
}
}
@@ -101,7 +101,7 @@ namespace OpenRa.Game
//num=owner,type,health,location,facing,action,trigger
var parts = s.Value.ToLowerInvariant().Split( ',' );
var loc = int.Parse( parts[ 3 ] );
world.Add( new Actor( parts[ 1 ], new int2( loc % 128 - map.Offset.X, loc / 128 - map.Offset.Y ), players[ 0 ] ) );
world.Add( new Actor( parts[ 1 ], new int2( loc % 128, loc / 128 ), players[ 0 ] ) );
}
}
@@ -132,8 +132,8 @@ namespace OpenRa.Game
world.Update();
UnitInfluence.Tick();
viewport.DrawRegions();
viewport.DrawRegions();
orderManager.Tick();
}
@@ -142,8 +142,6 @@ namespace OpenRa.Game
if (BuildingInfluence.GetBuildingAt(a) != null) return false;
if (UnitInfluence.GetUnitAt(a) != null) return false;
a += map.Offset;
return map.IsInMap(a.X, a.Y) &&
TerrainCosts.Cost(umt,
terrain.tileSet.GetWalkability(map.MapTiles[a.X, a.Y])) < double.PositiveInfinity;
@@ -253,8 +251,8 @@ namespace OpenRa.Game
var mobile = unit.traits.Get<Mobile>();
mobile.facing = 128;
mobile.QueueActivity(new Mobile.MoveTo(unit.Location + new int2(0, 3)));
}
}
world.Add(unit);
if (producer.traits.Contains<RenderWarFactory>())