Merge pull request #7806 from Phrohdoh/ts-placement-marker

Expose PlaceBuilding palette and use palette.pal for TS' overlay.
This commit is contained in:
reaperrr
2015-03-31 23:19:02 +02:00
4 changed files with 10 additions and 10 deletions

View File

@@ -23,6 +23,7 @@ namespace OpenRA.Mods.Common.Orders
readonly Actor producer;
readonly string building;
readonly BuildingInfo buildingInfo;
readonly PlaceBuildingInfo placeBuildingInfo;
readonly string race;
readonly Sprite buildOk;
readonly Sprite buildBlocked;
@@ -33,6 +34,7 @@ namespace OpenRA.Mods.Common.Orders
public PlaceBuildingOrderGenerator(ProductionQueue queue, string name)
{
producer = queue.Actor;
placeBuildingInfo = producer.Info.Traits.Get<PlaceBuildingInfo>();
building = name;
// Clear selection if using Left-Click Orders
@@ -155,7 +157,7 @@ namespace OpenRA.Mods.Common.Orders
cells.Add(t, isCloseEnough && world.IsCellBuildable(t, buildingInfo) && res.GetResource(t) == null);
}
var pal = wr.Palette("terrain");
var pal = wr.Palette(placeBuildingInfo.Palette);
foreach (var c in cells)
{
var tile = c.Value ? buildOk : buildBlocked;

View File

@@ -16,7 +16,11 @@ using OpenRA.Traits;
namespace OpenRA.Mods.Common.Traits
{
[Desc("Allows to execute build orders.", " Attach this to the player actor.")]
class PlaceBuildingInfo : TraitInfo<PlaceBuilding> { }
class PlaceBuildingInfo : TraitInfo<PlaceBuilding>
{
[Desc("Palette to use for rendering the placement sprite.")]
public readonly string Palette = "terrain";
}
class PlaceBuilding : IResolveOrder
{

View File

@@ -35,6 +35,7 @@ Player:
SpeedUp: True
RequireOwner: false
PlaceBuilding:
Palette: ra
SupportPowerManager:
ScriptTriggers:
MissionObjectives:

View File

@@ -1,18 +1,11 @@
overlay:
Defaults:
Start: 1
Offset: 0, -12
build-valid-snow: place
Start: 0
build-valid-temperat: place
Start: 0
build-invalid: place
Start: 1
target-select: place
target-valid-desert: place
target-valid-interior: place
target-valid-snow: place
target-valid-temperat: place
target-invalid: place
poweroff:
offline: poweroff