diff --git a/OpenRA.Mods.RA/Activities/CaptureActor.cs b/OpenRA.Mods.Common/Activities/CaptureActor.cs
similarity index 93%
rename from OpenRA.Mods.RA/Activities/CaptureActor.cs
rename to OpenRA.Mods.Common/Activities/CaptureActor.cs
index 283429d6f3..ca9b6e7cf8 100644
--- a/OpenRA.Mods.RA/Activities/CaptureActor.cs
+++ b/OpenRA.Mods.Common/Activities/CaptureActor.cs
@@ -8,14 +8,12 @@
*/
#endregion
-using OpenRA.Mods.Common.Activities;
using OpenRA.Mods.Common.Traits;
-using OpenRA.Mods.RA.Traits;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA.Activities
+namespace OpenRA.Mods.Common.Activities
{
- class CaptureActor : Enter
+ public class CaptureActor : Enter
{
readonly Actor actor;
readonly Capturable capturable;
diff --git a/OpenRA.Mods.RA/Activities/Transform.cs b/OpenRA.Mods.Common/Activities/Transform.cs
similarity index 96%
rename from OpenRA.Mods.RA/Activities/Transform.cs
rename to OpenRA.Mods.Common/Activities/Transform.cs
index a83fb9ab32..cbe0e146e5 100644
--- a/OpenRA.Mods.RA/Activities/Transform.cs
+++ b/OpenRA.Mods.Common/Activities/Transform.cs
@@ -14,9 +14,9 @@ using OpenRA.Mods.Common.Traits;
using OpenRA.Primitives;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA.Activities
+namespace OpenRA.Mods.Common.Activities
{
- class Transform : Activity
+ public class Transform : Activity
{
public readonly string ToActor;
public CVec Offset = CVec.Zero;
diff --git a/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj b/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj
index a37fc65ae2..f76059daa3 100644
--- a/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj
+++ b/OpenRA.Mods.Common/OpenRA.Mods.Common.csproj
@@ -72,6 +72,7 @@
+
@@ -90,6 +91,7 @@
+
@@ -198,6 +200,9 @@
+
+
+
@@ -256,6 +261,8 @@
+
+
@@ -307,6 +314,7 @@
+
diff --git a/OpenRA.Mods.RA/Capturable.cs b/OpenRA.Mods.Common/Traits/Capturable.cs
similarity index 94%
rename from OpenRA.Mods.RA/Capturable.cs
rename to OpenRA.Mods.Common/Traits/Capturable.cs
index 6ce29ba8c5..3d3b0606ac 100644
--- a/OpenRA.Mods.RA/Capturable.cs
+++ b/OpenRA.Mods.Common/Traits/Capturable.cs
@@ -11,10 +11,10 @@
using System.Linq;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA.Traits
+namespace OpenRA.Mods.Common.Traits
{
[Desc("This actor can be captured by a unit with Captures: trait.")]
- class CapturableInfo : ITraitInfo
+ public class CapturableInfo : ITraitInfo
{
[Desc("Type listed under Types in Captures: trait of actors that can capture this).")]
public readonly string Type = "building";
@@ -50,7 +50,7 @@ namespace OpenRA.Mods.RA.Traits
}
}
- class Capturable : INotifyCapture
+ public class Capturable : INotifyCapture
{
public readonly CapturableInfo Info;
public bool BeingCaptured { get; private set; }
diff --git a/OpenRA.Mods.RA/CaptureNotification.cs b/OpenRA.Mods.Common/Traits/CaptureNotification.cs
similarity index 88%
rename from OpenRA.Mods.RA/CaptureNotification.cs
rename to OpenRA.Mods.Common/Traits/CaptureNotification.cs
index ec4025af53..9a7b204daf 100644
--- a/OpenRA.Mods.RA/CaptureNotification.cs
+++ b/OpenRA.Mods.Common/Traits/CaptureNotification.cs
@@ -10,9 +10,9 @@
using OpenRA.Traits;
-namespace OpenRA.Mods.RA.Traits
+namespace OpenRA.Mods.Common.Traits
{
- class CaptureNotificationInfo : ITraitInfo
+ public class CaptureNotificationInfo : ITraitInfo
{
public readonly string Notification = "BuildingCaptured";
public readonly bool NewOwnerVoice = true;
@@ -20,7 +20,7 @@ namespace OpenRA.Mods.RA.Traits
public object Create(ActorInitializer init) { return new CaptureNotification(this); }
}
- class CaptureNotification : INotifyCapture
+ public class CaptureNotification : INotifyCapture
{
CaptureNotificationInfo info;
public CaptureNotification(CaptureNotificationInfo info)
diff --git a/OpenRA.Mods.RA/Captures.cs b/OpenRA.Mods.Common/Traits/Captures.cs
similarity index 95%
rename from OpenRA.Mods.RA/Captures.cs
rename to OpenRA.Mods.Common/Traits/Captures.cs
index 0b537cec92..d626e8755a 100644
--- a/OpenRA.Mods.RA/Captures.cs
+++ b/OpenRA.Mods.Common/Traits/Captures.cs
@@ -10,15 +10,14 @@
using System.Collections.Generic;
using System.Drawing;
-using OpenRA.Mods.Common;
+using OpenRA.Mods.Common.Activities;
using OpenRA.Mods.Common.Orders;
-using OpenRA.Mods.RA.Activities;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA.Traits
+namespace OpenRA.Mods.Common.Traits
{
[Desc("This actor can capture other actors which have the Capturable: trait.")]
- class CapturesInfo : ITraitInfo
+ public class CapturesInfo : ITraitInfo
{
[Desc("Types of actors that it can capture, as long as the type also exists in the Capturable Type: trait.")]
public readonly string[] CaptureTypes = { "building" };
@@ -30,7 +29,7 @@ namespace OpenRA.Mods.RA.Traits
public object Create(ActorInitializer init) { return new Captures(init.Self, this); }
}
- class Captures : IIssueOrder, IResolveOrder, IOrderVoice
+ public class Captures : IIssueOrder, IResolveOrder, IOrderVoice
{
public readonly CapturesInfo Info;
diff --git a/OpenRA.Mods.RA/ProximityCaptor.cs b/OpenRA.Mods.Common/Traits/ProximityCaptor.cs
similarity index 96%
rename from OpenRA.Mods.RA/ProximityCaptor.cs
rename to OpenRA.Mods.Common/Traits/ProximityCaptor.cs
index 1b343e637b..642ed11180 100644
--- a/OpenRA.Mods.RA/ProximityCaptor.cs
+++ b/OpenRA.Mods.Common/Traits/ProximityCaptor.cs
@@ -11,7 +11,7 @@
using System.Linq;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA
+namespace OpenRA.Mods.Common.Traits
{
[Desc("Actor can capture ProximityCapturable actors.")]
public class ProximityCaptorInfo : ITraitInfo
diff --git a/OpenRA.Mods.RA/ProximityCapturable.cs b/OpenRA.Mods.Common/Traits/ProximityCapturable.cs
similarity index 99%
rename from OpenRA.Mods.RA/ProximityCapturable.cs
rename to OpenRA.Mods.Common/Traits/ProximityCapturable.cs
index 9544e98900..9c5e0295dc 100644
--- a/OpenRA.Mods.RA/ProximityCapturable.cs
+++ b/OpenRA.Mods.Common/Traits/ProximityCapturable.cs
@@ -13,7 +13,7 @@ using System.Linq;
using OpenRA.Effects;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA
+namespace OpenRA.Mods.Common.Traits
{
[Desc("Actor can be captured by units in a specified proximity.")]
public class ProximityCapturableInfo : ITraitInfo
diff --git a/OpenRA.Mods.RA/TransformOnCapture.cs b/OpenRA.Mods.Common/Traits/TransformOnCapture.cs
similarity index 87%
rename from OpenRA.Mods.RA/TransformOnCapture.cs
rename to OpenRA.Mods.Common/Traits/TransformOnCapture.cs
index 0086478dc6..c0ee023723 100644
--- a/OpenRA.Mods.RA/TransformOnCapture.cs
+++ b/OpenRA.Mods.Common/Traits/TransformOnCapture.cs
@@ -8,12 +8,12 @@
*/
#endregion
-using OpenRA.Mods.RA.Activities;
+using OpenRA.Mods.Common.Activities;
using OpenRA.Traits;
-namespace OpenRA.Mods.RA
+namespace OpenRA.Mods.Common.Traits
{
- class TransformOnCaptureInfo : ITraitInfo
+ public class TransformOnCaptureInfo : ITraitInfo
{
[ActorReference] public readonly string IntoActor = null;
public readonly int ForceHealthPercentage = 0;
@@ -22,7 +22,7 @@ namespace OpenRA.Mods.RA
public virtual object Create(ActorInitializer init) { return new TransformOnCapture(this); }
}
- class TransformOnCapture : INotifyCapture
+ public class TransformOnCapture : INotifyCapture
{
readonly TransformOnCaptureInfo info;
diff --git a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
index 9129df9763..fecc130015 100644
--- a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
+++ b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
@@ -78,7 +78,6 @@
-
@@ -93,7 +92,6 @@
-
@@ -104,10 +102,8 @@
-
-
@@ -129,7 +125,6 @@
-
@@ -148,8 +143,6 @@
-
-
@@ -173,7 +166,6 @@
-
diff --git a/OpenRA.Mods.RA/TransformOnPassenger.cs b/OpenRA.Mods.RA/TransformOnPassenger.cs
index f4bc36f5e8..bf0b0c0744 100644
--- a/OpenRA.Mods.RA/TransformOnPassenger.cs
+++ b/OpenRA.Mods.RA/TransformOnPassenger.cs
@@ -9,8 +9,8 @@
#endregion
using System.Linq;
+using OpenRA.Mods.Common.Activities;
using OpenRA.Mods.Common.Traits;
-using OpenRA.Mods.RA.Activities;
using OpenRA.Traits;
namespace OpenRA.Mods.RA