Merge pull request #8004 from pchote/remove-owner

Remove deprecated Buildable.Owner field.
This commit is contained in:
Pavel Penev
2015-04-29 23:01:41 +03:00
9 changed files with 21 additions and 42 deletions

View File

@@ -21,9 +21,6 @@ namespace OpenRA.Mods.Common.Traits
"and by the ProvidesCustomPrerequisite trait.")]
public readonly string[] Prerequisites = { };
[Desc("Restrict production to a specific race(s). **Deprecated**: Use race-specific prerequisites instead.")]
public readonly string[] Owner = { };
[Desc("Production queue(s) that can produce this.")]
public readonly string[] Queue = { };

View File

@@ -26,9 +26,6 @@ namespace OpenRA.Mods.Common.Traits
[Desc("Group queues from separate buildings together into the same tab.")]
public readonly string Group = null;
[Desc("Filter buildable items based on their Owner.")]
public readonly bool RequireOwner = true;
[Desc("Only enable this queue for certain factions")]
public readonly string[] Race = { };
@@ -155,14 +152,8 @@ namespace OpenRA.Mods.Common.Traits
{
var bi = a.Traits.Get<BuildableInfo>();
// Can our race build this by satisfying normal prerequisites?
var buildable = !Info.RequireOwner || bi.Owner.Contains(Race);
// Checks if Prerequisites want to hide the Actor from buildQueue if they are false
produceable.Add(a, new ProductionState { Visible = buildable });
if (buildable)
ttc.Add(a.Name, bi.Prerequisites, bi.BuildLimit, this);
produceable.Add(a, new ProductionState());
ttc.Add(a.Name, bi.Prerequisites, bi.BuildLimit, this);
}
}
@@ -391,7 +382,7 @@ namespace OpenRA.Mods.Common.Traits
public class ProductionState
{
public bool Visible = false;
public bool Visible = true;
public bool Buildable = false;
}

View File

@@ -872,10 +872,26 @@ namespace OpenRA.Mods.Common.UtilityCommands
}
}
if (engineVersion < 201504277)
if (engineVersion < 20150427)
if (node.Key.StartsWith("WithRotor"))
node.Value.Nodes.RemoveAll(p => p.Key == "Id");
if (engineVersion < 20150430)
{
if (node.Key.StartsWith("ProductionQueue@") || node.Key.StartsWith("ClassicProductionQueue@"))
node.Value.Nodes.RemoveAll(n => n.Key == "RequireOwner");
if (node.Key == "Buildable")
{
var removed = node.Value.Nodes.RemoveAll(n => n.Key == "Owner");
if (removed > 0)
{
Console.WriteLine("The 'Owner' field has been removed.");
Console.WriteLine("Please use prerequisites instead.");
}
}
}
UpgradeActorRules(engineVersion, ref node.Value.Nodes, node, depth + 1);
}
}

View File

@@ -24,7 +24,6 @@ FACT:
ProductionQueue@GDIBuilding:
Type: Building.GDI
Race: gdi
RequireOwner: false
Group: Building
BuildSpeed: .4
LowPowerSlowdown: 2
@@ -33,7 +32,6 @@ FACT:
ProductionQueue@NodBuilding:
Type: Building.Nod
Race: nod
RequireOwner: false
Group: Building
BuildSpeed: .4
LowPowerSlowdown: 2
@@ -42,7 +40,6 @@ FACT:
ProductionQueue@GDIDefense:
Type: Defence.GDI
Race: gdi
RequireOwner: false
Group: Defence
BuildSpeed: .4
LowPowerSlowdown: 3
@@ -51,7 +48,6 @@ FACT:
ProductionQueue@NodDefense:
Type: Defence.Nod
Race: nod
RequireOwner: false
Group: Defence
BuildSpeed: .4
LowPowerSlowdown: 3
@@ -413,14 +409,12 @@ HPAD:
Type: Aircraft.GDI
Race: gdi
Group: Aircraft
RequireOwner: false
BuildSpeed: .4
LowPowerSlowdown: 3
ProductionQueue@Nod:
Type: Aircraft.Nod
Race: nod
Group: Aircraft
RequireOwner: false
BuildSpeed: .4
LowPowerSlowdown: 3
ProductionBar@GDI:

View File

@@ -6,24 +6,20 @@ Player:
QueuedAudio: Building
ReadyAudio: BuildingReady
BlockedAudio: NoRoom
RequireOwner: false
ClassicProductionQueue@Infantry:
Type: Infantry
LowPowerSlowdown: 2
BlockedAudio: NoRoom
RequireOwner: false
ClassicProductionQueue@Vehicle:
Type: Vehicle
LowPowerSlowdown: 3
QueuedAudio: Building
BlockedAudio: NoRoom
RequireOwner: false
ClassicProductionQueue@Armor:
Type: Armor
LowPowerSlowdown: 3
QueuedAudio: Building
BlockedAudio: NoRoom
RequireOwner: false
ClassicProductionQueue@Starport:
Type: Starport
BuildSpeed: .2
@@ -31,13 +27,11 @@ Player:
BlockedAudio: NoRoom
QueuedAudio: OrderPlaced
ReadyAudio:
RequireOwner: false
ClassicProductionQueue@Aircraft:
Type: Aircraft
LowPowerSlowdown: 3
QueuedAudio: Building
BlockedAudio: NoRoom
RequireOwner: false
PlaceBuilding:
SupportPowerManager:
ScriptTriggers:
@@ -74,3 +68,4 @@ Player:
Prerequisites: techlevel.low, techlevel.medium, techlevel.high, techlevel.superweapons
EnemyWatcher:
HarvesterInsurance:

View File

@@ -813,7 +813,6 @@ Rules:
Queue: Vehicle
BuildPaletteOrder: 30
Prerequisites: fix
Owner: allies
Valued:
Cost: 800
Tooltip:
@@ -886,7 +885,6 @@ Rules:
Buildable:
Queue: Building
BuildPaletteOrder: 30
Owner: allies, soviet
Valued:
Cost: 30
Health:

View File

@@ -1325,7 +1325,6 @@ Rules:
InitialUnits: e1, e1, e2, e3, e4
Ant:
Buildable:
Owner: soviet
Prerequisites: barr
Health:
HP: 200

View File

@@ -7,7 +7,6 @@ Player:
QueuedAudio: Building
ReadyAudio: ConstructionComplete
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Defense:
Type: Defense
BuildSpeed: .4
@@ -15,31 +14,26 @@ Player:
QueuedAudio: Building
ReadyAudio: ConstructionComplete
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Vehicle:
Type: Vehicle
BuildSpeed: .4
LowPowerSlowdown: 3
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Infantry:
Type: Infantry
BuildSpeed: .4
LowPowerSlowdown: 3
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Ship:
Type: Ship
BuildSpeed: .4
LowPowerSlowdown: 3
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Aircraft:
Type: Aircraft
BuildSpeed: .4
LowPowerSlowdown: 3
SpeedUp: True
RequireOwner: false
PlaceBuilding:
SupportPowerManager:
ScriptTriggers:

View File

@@ -7,7 +7,6 @@ Player:
QueuedAudio: Building
ReadyAudio: ConstructionComplete
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Defense:
Type: Defense
BuildSpeed: .4
@@ -15,25 +14,21 @@ Player:
QueuedAudio: Building
ReadyAudio: ConstructionComplete
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Vehicle:
Type: Vehicle
BuildSpeed: .4
LowPowerSlowdown: 3
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Infantry:
Type: Infantry
BuildSpeed: .4
LowPowerSlowdown: 3
SpeedUp: True
RequireOwner: false
ClassicProductionQueue@Air:
Type: Air
BuildSpeed: .4
LowPowerSlowdown: 3
SpeedUp: True
RequireOwner: false
PlaceBuilding:
Palette: ra
SupportPowerManager: