diff --git a/OpenRA.Game/Traits/Player/VictoryConditions.cs b/OpenRA.Game/Traits/Player/ConquestVictoryConditions.cs similarity index 81% rename from OpenRA.Game/Traits/Player/VictoryConditions.cs rename to OpenRA.Game/Traits/Player/ConquestVictoryConditions.cs index 8a9865333a..e3c254032a 100644 --- a/OpenRA.Game/Traits/Player/VictoryConditions.cs +++ b/OpenRA.Game/Traits/Player/ConquestVictoryConditions.cs @@ -22,23 +22,21 @@ using System.Linq; namespace OpenRA.Traits { - class VictoryConditionsInfo : ITraitInfo + class ConquestVictoryConditionsInfo : ITraitInfo { - public object Create(Actor self) { return new VictoryConditions( self ); } + public object Create(Actor self) { return new ConquestVictoryConditions( self ); } } - interface IVictoryConditions { bool HasLost { get; } bool HasWon { get; } } - - class VictoryConditions : ITick, IVictoryConditions, IResolveOrder + class ConquestVictoryConditions : ITick, IVictoryConditions, IResolveOrder { public bool HasLost { get; private set; } public bool HasWon { get; private set; } - public VictoryConditions(Actor self) { } + public ConquestVictoryConditions(Actor self) { } public void Tick(Actor self) { - var info = self.Info.Traits.Get(); + var info = self.Info.Traits.Get(); var hasAnything = self.World.Queries.OwnedBy[self.Owner] .WithTrait().Any(); diff --git a/OpenRA.Game/Traits/TraitsInterfaces.cs b/OpenRA.Game/Traits/TraitsInterfaces.cs index ba06076cb9..b92307ef18 100644 --- a/OpenRA.Game/Traits/TraitsInterfaces.cs +++ b/OpenRA.Game/Traits/TraitsInterfaces.cs @@ -134,4 +134,6 @@ namespace OpenRA.Traits public interface IRenderOverlay { void Render(); } public interface INotifyIdle { void Idle(Actor self); } + + public interface IVictoryConditions { bool HasLost { get; } bool HasWon { get; } } } diff --git a/OpenRA.Game/Widgets/PostGameWidget.cs b/OpenRA.Game/Widgets/PostGameWidget.cs index e79b649c4f..2927f223a1 100644 --- a/OpenRA.Game/Widgets/PostGameWidget.cs +++ b/OpenRA.Game/Widgets/PostGameWidget.cs @@ -14,6 +14,8 @@ namespace OpenRA.Widgets bool AreMutualAllies(Player a, Player b) { return a.Stances[b] == Stance.Ally && b.Stances[a] == Stance.Ally; } + // todo: all this shit needs to move, probably to Player. + public override void Draw(World world) { base.Draw(world); diff --git a/OpenRA.sln b/OpenRA.sln index 3a91ec8472..a89c060e0a 100644 --- a/OpenRA.sln +++ b/OpenRA.sln @@ -15,8 +15,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.Cnc", "OpenRA.M EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Gl", "OpenRA.Gl\OpenRA.Gl.csproj", "{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.RA_NG", "OpenRA.Mods.RA-NG\OpenRA.Mods.RA_NG.csproj", "{6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}" -EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MapConverter", "MapConverter\MapConverter.csproj", "{BA2B4C61-D5EE-4C3E-9BA1-EB32C531FA36}" EndProject Global @@ -27,6 +25,14 @@ Global Release|Mixed Platforms = Release|Mixed Platforms EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.Build.0 = Release|Any CPU + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.Build.0 = Release|Any CPU {0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Any CPU.ActiveCfg = Debug|x86 {0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Any CPU.Build.0 = Debug|x86 {0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 @@ -42,22 +48,6 @@ Global {230F65CE-A6DE-4235-8B38-13A3D606C7F7}.Release|Any CPU.Build.0 = Release|Any CPU {230F65CE-A6DE-4235-8B38-13A3D606C7F7}.Release|Mixed Platforms.ActiveCfg = Release|x86 {230F65CE-A6DE-4235-8B38-13A3D606C7F7}.Release|Mixed Platforms.Build.0 = Release|x86 - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.Build.0 = Release|Any CPU - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU - {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.Build.0 = Release|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Any CPU.Build.0 = Debug|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Any CPU.ActiveCfg = Release|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Any CPU.Build.0 = Release|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU - {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Mixed Platforms.Build.0 = Release|Any CPU {4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Any CPU.Build.0 = Debug|Any CPU {4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU @@ -66,6 +56,22 @@ Global {4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Any CPU.Build.0 = Release|Any CPU {4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Any CPU.Build.0 = Release|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {2E1F8D8B-AEF5-4BCE-A95C-50223A0C7331}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.Build.0 = Release|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.Build.0 = Release|Any CPU {67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Any CPU.Build.0 = Debug|Any CPU {67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU @@ -74,14 +80,6 @@ Global {67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Any CPU.Build.0 = Release|Any CPU {67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Mixed Platforms.Build.0 = Release|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Release|Any CPU.Build.0 = Release|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU - {6CA925E5-4A47-46AC-9DE3-FA341F7C94A7}.Release|Mixed Platforms.Build.0 = Release|Any CPU {BA2B4C61-D5EE-4C3E-9BA1-EB32C531FA36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {BA2B4C61-D5EE-4C3E-9BA1-EB32C531FA36}.Debug|Any CPU.Build.0 = Debug|Any CPU {BA2B4C61-D5EE-4C3E-9BA1-EB32C531FA36}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU @@ -90,19 +88,11 @@ Global {BA2B4C61-D5EE-4C3E-9BA1-EB32C531FA36}.Release|Any CPU.Build.0 = Release|Any CPU {BA2B4C61-D5EE-4C3E-9BA1-EB32C531FA36}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU {BA2B4C61-D5EE-4C3E-9BA1-EB32C531FA36}.Release|Mixed Platforms.Build.0 = Release|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.Build.0 = Debug|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.ActiveCfg = Release|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.Build.0 = Release|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU - {BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(MonoDevelopProperties) = preSolution - StartupItem = OpenRA.FileFormats\OpenRA.FileFormats.csproj EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(MonoDevelopProperties) = preSolution + StartupItem = OpenRA.FileFormats\OpenRA.FileFormats.csproj + EndGlobalSection EndGlobal diff --git a/mods/cnc/system.yaml b/mods/cnc/system.yaml index 1024e4ad1c..5ba9804157 100644 --- a/mods/cnc/system.yaml +++ b/mods/cnc/system.yaml @@ -36,7 +36,7 @@ Player: EndChargeSound: airredy1.aud SelectTargetSound: select1.aud UnitType: a10 - VictoryConditions: + ConquestVictoryConditions: World: GlobalDefaults: diff --git a/mods/ra/system.yaml b/mods/ra/system.yaml index c9e3d5a4d1..af788bc33d 100644 --- a/mods/ra/system.yaml +++ b/mods/ra/system.yaml @@ -77,7 +77,7 @@ Player: UnitType: badr.bomber SelectTargetSound: slcttgt1.aud FlareType: flare - VictoryConditions: + ConquestVictoryConditions: World: