diff --git a/OpenRA.Mods.Common/UtilityCommands/UpgradeRules.cs b/OpenRA.Mods.Common/UtilityCommands/UpgradeRules.cs index 4aa6ab9782..b8b03906fd 100644 --- a/OpenRA.Mods.Common/UtilityCommands/UpgradeRules.cs +++ b/OpenRA.Mods.Common/UtilityCommands/UpgradeRules.cs @@ -1663,6 +1663,16 @@ namespace OpenRA.Mods.Common.UtilityCommands } } + if (engineVersion < 20150731) + { + if (node.Key.StartsWith("ProvidesPrerequisite")) + { + var raceNode = node.Value.Nodes.FirstOrDefault(x => x.Key == "Race"); + if (raceNode != null) + raceNode.Key = "Factions"; + } + } + UpgradeActorRules(engineVersion, ref node.Value.Nodes, node, depth + 1); } } diff --git a/mods/d2k/rules/structures.yaml b/mods/d2k/rules/structures.yaml index f0be15a0e5..e6f232eb3d 100644 --- a/mods/d2k/rules/structures.yaml +++ b/mods/d2k/rules/structures.yaml @@ -149,16 +149,16 @@ barracks: ProductionBar: ProvidesPrerequisite@atreides: Prerequisite: barracks.atreides - Race: atreides + Factions: atreides ProvidesPrerequisite@ordos: Prerequisite: barracks.ordos - Race: ordos + Factions: ordos ProvidesPrerequisite@harkonnen: Prerequisite: barracks.harkonnen - Race: harkonnen + Factions: harkonnen ProvidesPrerequisite@medics: Prerequisite: barracks.medics - Race: atreides, ordos + Factions: atreides, ordos Power: Amount: -20 RenderBuilding: @@ -297,16 +297,16 @@ light: ProductionBar: ProvidesPrerequisite@atreides: Prerequisite: light.atreides - Race: atreides + Factions: atreides ProvidesPrerequisite@ordos: Prerequisite: light.ordos - Race: ordos + Factions: ordos ProvidesPrerequisite@harkonnen: Prerequisite: light.harkonnen - Race: harkonnen + Factions: harkonnen ProvidesPrerequisite@trikes: Prerequisite: light.regulartrikes - Race: atreides, harkonnen + Factions: atreides, harkonnen ProvidesPrerequisite@buildingname: WithProductionOverlay@WELDING: Sequence: production-welding @@ -349,16 +349,16 @@ heavy: ProductionBar: ProvidesPrerequisite@atreides: Prerequisite: heavy.atreides - Race: atreides + Factions: atreides ProvidesPrerequisite@ordos: Prerequisite: heavy.ordos - Race: ordos + Factions: ordos ProvidesPrerequisite@harkonnen: Prerequisite: heavy.harkonnen - Race: harkonnen + Factions: harkonnen ProvidesPrerequisite@missiletank: Prerequisite: heavy.missiletank - Race: atreides, harkonnen + Factions: atreides, harkonnen RenderBuilding: Image: heavy.harkonnen RaceImages: @@ -465,13 +465,13 @@ starport: DisabledOverlay: ProvidesPrerequisite@atreides: Prerequisite: starport.atreides - Race: atreides + Factions: atreides ProvidesPrerequisite@ordos: Prerequisite: starport.ordos - Race: ordos + Factions: ordos ProvidesPrerequisite@harkonnen: Prerequisite: starport.harkonnen - Race: harkonnen + Factions: harkonnen Power: Amount: -40 ProvidesPrerequisite@buildingname: @@ -712,7 +712,7 @@ hightech: ordos: hightech.ordos ProvidesPrerequisite@upgrade: Prerequisite: hightech.atreides - Race: atreides + Factions: atreides ProvidesPrerequisite@buildingname: AirstrikePower: Icon: ornistrike @@ -816,7 +816,7 @@ palace: Amount: -50 ProvidesPrerequisite@nuke: Prerequisite: palace.nuke - Race: harkonnen + Factions: harkonnen NukePower: Cursor: nuke Icon: deathhand diff --git a/mods/ra/rules/structures.yaml b/mods/ra/rules/structures.yaml index 1f350cde88..8bfd5f2124 100644 --- a/mods/ra/rules/structures.yaml +++ b/mods/ra/rules/structures.yaml @@ -141,16 +141,16 @@ SPEN: Power: Amount: -30 ProvidesPrerequisite@soviet: - Race: soviet, russia, ukraine + Factions: soviet, russia, ukraine Prerequisite: ships.soviet ProvidesPrerequisite@sovietvanilla: - Race: soviet + Factions: soviet Prerequisite: ships.sovietvanilla ProvidesPrerequisite@russia: - Race: russia + Factions: russia Prerequisite: ships.russia ProvidesPrerequisite@ukraine: - Race: ukraine + Factions: ukraine Prerequisite: ships.ukraine ProvidesPrerequisite@sovietstructure: RequiresPrerequisites: structures.soviet @@ -222,19 +222,19 @@ SYRD: Power: Amount: -30 ProvidesPrerequisite@allies: - Race: allies, england, france, germany + Factions: allies, england, france, germany Prerequisite: ships.allies ProvidesPrerequisite@alliesvanilla: - Race: allies + Factions: allies Prerequisite: ships.alliesvanilla ProvidesPrerequisite@england: - Race: england + Factions: england Prerequisite: ships.england ProvidesPrerequisite@france: - Race: france + Factions: france Prerequisite: ships.france ProvidesPrerequisite@germany: - Race: germany + Factions: germany Prerequisite: ships.germany ProvidesPrerequisite@alliedstructure: RequiresPrerequisites: structures.allies @@ -330,7 +330,7 @@ PDOX: Bib: HasMinibib: Yes ProvidesPrerequisite@germany: - Race: germany + Factions: germany Prerequisite: pdox.germany ProvidesPrerequisite@germanstructure: RequiresPrerequisites: structures.germany @@ -797,31 +797,31 @@ WEAP: Production: Produces: Vehicle ProvidesPrerequisite@allies: - Race: allies, england, france, germany + Factions: allies, england, france, germany Prerequisite: vehicles.allies ProvidesPrerequisite@alliesvanilla: - Race: allies + Factions: allies Prerequisite: vehicles.alliesvanilla ProvidesPrerequisite@england: - Race: england + Factions: england Prerequisite: vehicles.england ProvidesPrerequisite@france: - Race: france + Factions: france Prerequisite: vehicles.france ProvidesPrerequisite@germany: - Race: germany + Factions: germany Prerequisite: vehicles.germany ProvidesPrerequisite@soviet: - Race: soviet, russia, ukraine + Factions: soviet, russia, ukraine Prerequisite: vehicles.soviet ProvidesPrerequisite@sovietvanilla: - Race: soviet + Factions: soviet Prerequisite: vehicles.sovietvanilla ProvidesPrerequisite@russia: - Race: russia + Factions: russia Prerequisite: vehicles.russia ProvidesPrerequisite@ukraine: - Race: ukraine + Factions: ukraine Prerequisite: vehicles.ukraine ProvidesPrerequisite@alliedstructure: RequiresPrerequisites: structures.allies @@ -870,31 +870,31 @@ FACT: BuildPaletteOrder: 1000 Prerequisites: ~disabled ProvidesPrerequisite@allies: - Race: allies, england, france, germany + Factions: allies, england, france, germany Prerequisite: structures.allies ProvidesPrerequisite@alliesvanilla: - Race: allies + Factions: allies Prerequisite: structures.alliesvanilla ProvidesPrerequisite@england: - Race: england + Factions: england Prerequisite: structures.england ProvidesPrerequisite@france: - Race: france + Factions: france Prerequisite: structures.france ProvidesPrerequisite@germany: - Race: germany + Factions: germany Prerequisite: structures.germany ProvidesPrerequisite@soviet: - Race: soviet, russia, ukraine + Factions: soviet, russia, ukraine Prerequisite: structures.soviet ProvidesPrerequisite@sovietvanilla: - Race: soviet + Factions: soviet Prerequisite: structures.sovietvanilla ProvidesPrerequisite@russia: - Race: russia + Factions: russia Prerequisite: structures.russia ProvidesPrerequisite@ukraine: - Race: ukraine + Factions: ukraine Prerequisite: structures.ukraine Health: HP: 1500 @@ -1053,19 +1053,19 @@ HPAD: Power: Amount: -10 ProvidesPrerequisite@allies: - Race: allies, england, france, germany + Factions: allies, england, france, germany Prerequisite: aircraft.allies ProvidesPrerequisite@alliesvanilla: - Race: allies + Factions: allies Prerequisite: aircraft.alliesvanilla ProvidesPrerequisite@england: - Race: england + Factions: england Prerequisite: aircraft.england ProvidesPrerequisite@france: - Race: france + Factions: france Prerequisite: aircraft.france ProvidesPrerequisite@germany: - Race: germany + Factions: germany Prerequisite: aircraft.germany ProvidesPrerequisite@alliedstructure: RequiresPrerequisites: structures.allies @@ -1118,16 +1118,16 @@ AFLD: Produces: Aircraft, Plane Reservable: ProvidesPrerequisite@soviet: - Race: soviet, russia, ukraine + Factions: soviet, russia, ukraine Prerequisite: aircraft.soviet ProvidesPrerequisite@sovietvanilla: - Race: soviet + Factions: soviet Prerequisite: aircraft.sovietvanilla ProvidesPrerequisite@russia: - Race: russia + Factions: russia Prerequisite: aircraft.russia ProvidesPrerequisite@ukraine: - Race: ukraine + Factions: ukraine Prerequisite: aircraft.ukraine ProvidesPrerequisite@sovietstructure: RequiresPrerequisites: structures.soviet @@ -1337,16 +1337,16 @@ BARR: ProvidesPrerequisite: Prerequisite: barracks ProvidesPrerequisite@soviet: - Race: soviet, russia, ukraine + Factions: soviet, russia, ukraine Prerequisite: infantry.soviet ProvidesPrerequisite@sovietvanilla: - Race: soviet + Factions: soviet Prerequisite: infantry.sovietvanilla ProvidesPrerequisite@russia: - Race: russia + Factions: russia Prerequisite: infantry.russia ProvidesPrerequisite@ukraine: - Race: ukraine + Factions: ukraine Prerequisite: infantry.ukraine ProvidesPrerequisite@sovietstructure: RequiresPrerequisites: structures.soviet @@ -1438,19 +1438,19 @@ TENT: ProvidesPrerequisite@barracks: Prerequisite: barracks ProvidesPrerequisite@allies: - Race: allies, england, france, germany + Factions: allies, england, france, germany Prerequisite: infantry.allies ProvidesPrerequisite@alliesvanilla: - Race: allies + Factions: allies Prerequisite: infantry.alliesvanilla ProvidesPrerequisite@england: - Race: england + Factions: england Prerequisite: infantry.england ProvidesPrerequisite@france: - Race: france + Factions: france Prerequisite: infantry.france ProvidesPrerequisite@germany: - Race: germany + Factions: germany Prerequisite: infantry.germany ProvidesPrerequisite@alliedstructure: RequiresPrerequisites: structures.allies diff --git a/mods/ts/rules/shared-structures.yaml b/mods/ts/rules/shared-structures.yaml index 0b5b0f0401..75a54d8b45 100644 --- a/mods/ts/rules/shared-structures.yaml +++ b/mods/ts/rules/shared-structures.yaml @@ -44,10 +44,10 @@ GACNST: Selectable: Bounds: 144, 60, 0, -6 ProvidesPrerequisite@gdi: - Race: gdi + Factions: gdi Prerequisite: structures.gdi ProvidesPrerequisite@nod: - Race: nod + Factions: nod Prerequisite: structures.nod SelectionDecorations: VisualBounds: 144, 80, 0, -12