diff --git a/OpenRA.Game/OpenRA.Game.csproj b/OpenRA.Game/OpenRA.Game.csproj
index b0970f43d1..331c6c1829 100644
--- a/OpenRA.Game/OpenRA.Game.csproj
+++ b/OpenRA.Game/OpenRA.Game.csproj
@@ -173,7 +173,6 @@
-
diff --git a/OpenRA.Game/Traits/Waypoint.cs b/OpenRA.Mods.RA/Immobile.cs
similarity index 75%
rename from OpenRA.Game/Traits/Waypoint.cs
rename to OpenRA.Mods.RA/Immobile.cs
index a0cf83becd..424395b6c7 100644
--- a/OpenRA.Game/Traits/Waypoint.cs
+++ b/OpenRA.Mods.RA/Immobile.cs
@@ -1,6 +1,6 @@
#region Copyright & License Information
/*
- * Copyright 2007-2011 The OpenRA Developers (see AUTHORS)
+ * Copyright 2007-2014 The OpenRA Developers (see AUTHORS)
* This file is part of OpenRA, which is free software. It is made
* available to you under the terms of the GNU General Public License
* as published by the Free Software Foundation. For more information,
@@ -10,19 +10,20 @@
using System.Collections.Generic;
using OpenRA.FileFormats;
+using OpenRA.Traits;
-namespace OpenRA.Traits
+namespace OpenRA.Mods.RA
{
- class WaypointInfo : ITraitInfo, IOccupySpaceInfo
+ class ImmobileInfo : ITraitInfo, IOccupySpaceInfo
{
- public object Create( ActorInitializer init ) { return new Waypoint( init ); }
+ public object Create(ActorInitializer init) { return new Immobile(init); }
}
- class Waypoint : IOccupySpace, ISync, INotifyAddedToWorld, INotifyRemovedFromWorld
+ class Immobile : IOccupySpace, ISync, INotifyAddedToWorld, INotifyRemovedFromWorld
{
[Sync] readonly CPos location;
- public Waypoint(ActorInitializer init)
+ public Immobile(ActorInitializer init)
{
this.location = init.Get();
}
diff --git a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
index 4e19ed923b..8a83a0958c 100644
--- a/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
+++ b/OpenRA.Mods.RA/OpenRA.Mods.RA.csproj
@@ -481,6 +481,7 @@
+
diff --git a/OpenRA.Utility/UpgradeRules.cs b/OpenRA.Utility/UpgradeRules.cs
index 0c8930ddd4..33154ffab3 100644
--- a/OpenRA.Utility/UpgradeRules.cs
+++ b/OpenRA.Utility/UpgradeRules.cs
@@ -143,6 +143,13 @@ namespace OpenRA.Utility
ConvertFloatToRange(ref node.Value.Value);
}
+ // Waypoint was renamed to Immobile
+ if (engineVersion < 20140312)
+ {
+ if (depth == 1 && node.Key == "Waypoint")
+ node.Key = "Immobile";
+ }
+
UpgradeActorRules(engineVersion, ref node.Value.Nodes, node, depth + 1);
}
}
diff --git a/mods/cnc/rules/system-actors.yaml b/mods/cnc/rules/system-actors.yaml
index 467150a1bd..b190343117 100644
--- a/mods/cnc/rules/system-actors.yaml
+++ b/mods/cnc/rules/system-actors.yaml
@@ -31,12 +31,12 @@ CRATE:
BodyOrientation:
mpspawn:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation:
waypoint:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation:
diff --git a/mods/d2k/rules/system-actors.yaml b/mods/d2k/rules/system-actors.yaml
index c3d4be1122..4542a03daa 100644
--- a/mods/d2k/rules/system-actors.yaml
+++ b/mods/d2k/rules/system-actors.yaml
@@ -85,12 +85,12 @@ CRATE:
BodyOrientation:
mpspawn:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation:
waypoint:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation:
diff --git a/mods/ra/rules/system-actors.yaml b/mods/ra/rules/system-actors.yaml
index c3b93435aa..8e348ec603 100644
--- a/mods/ra/rules/system-actors.yaml
+++ b/mods/ra/rules/system-actors.yaml
@@ -165,12 +165,12 @@ powerproxy.sonarpulse:
SelectTargetSound: slcttgt1.aud
mpspawn:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation:
waypoint:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation:
diff --git a/mods/ts/rules/system-actors.yaml b/mods/ts/rules/system-actors.yaml
index 3420574682..638c103e1a 100644
--- a/mods/ts/rules/system-actors.yaml
+++ b/mods/ts/rules/system-actors.yaml
@@ -1,10 +1,10 @@
mpspawn:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation:
waypoint:
- Waypoint:
+ Immobile:
RenderEditorOnly:
BodyOrientation: