Replace ResourceLayer references with IResourceLayer in traits/warheads.

This commit is contained in:
Paul Chote
2021-03-07 17:31:26 +00:00
committed by reaperrr
parent 5adcbe4c78
commit dcd8eccee4
14 changed files with 72 additions and 80 deletions

View File

@@ -87,7 +87,7 @@ namespace OpenRA.Mods.Common.Orders
readonly World world;
readonly ProductionQueue queue;
readonly PlaceBuildingInfo placeBuildingInfo;
readonly ResourceLayer resourceLayer;
readonly IResourceLayer resourceLayer;
readonly Viewport viewport;
readonly VariantWrapper[] variants;
int variant;
@@ -97,7 +97,7 @@ namespace OpenRA.Mods.Common.Orders
this.queue = queue;
world = queue.Actor.World;
placeBuildingInfo = queue.Actor.Owner.PlayerActor.Info.TraitInfo<PlaceBuildingInfo>();
resourceLayer = world.WorldActor.TraitOrDefault<ResourceLayer>();
resourceLayer = world.WorldActor.TraitOrDefault<IResourceLayer>();
viewport = worldRenderer.Viewport;
// Clear selection if using Left-Click Orders
@@ -279,7 +279,7 @@ namespace OpenRA.Mods.Common.Orders
{
var isCloseEnough = buildingInfo.IsCloseEnoughToBase(world, world.LocalPlayer, actorInfo, topLeft);
foreach (var t in buildingInfo.Tiles(topLeft))
footprint.Add(t, MakeCellType(isCloseEnough && world.IsCellBuildable(t, actorInfo, buildingInfo) && (resourceLayer == null || resourceLayer.GetResourceType(t) == null)));
footprint.Add(t, MakeCellType(isCloseEnough && world.IsCellBuildable(t, actorInfo, buildingInfo) && (resourceLayer == null || resourceLayer.GetResource(t).Type == null)));
}
return preview?.Render(wr, topLeft, footprint) ?? Enumerable.Empty<IRenderable>();