diff --git a/OpenRA.Mods.Cnc/Missions/CncShellmapScript.cs b/OpenRA.Mods.Cnc/Missions/CncShellmapScript.cs index 0e549a629f..7086c416cd 100755 --- a/OpenRA.Mods.Cnc/Missions/CncShellmapScript.cs +++ b/OpenRA.Mods.Cnc/Missions/CncShellmapScript.cs @@ -82,7 +82,7 @@ namespace OpenRA.Mods.RA { var mobile = self.Trait(); self.QueueActivity(mobile.ScriptedMove(left)); - self.QueueActivity(new Teleport(null, right, false)); + self.QueueActivity(new SimpleTeleport(right)); self.QueueActivity(new CallFunc(() => LoopTrack(self,left,right))); } } diff --git a/OpenRA.Mods.RA/Activities/Teleport.cs b/OpenRA.Mods.RA/Activities/Teleport.cs index 3cd1ed4939..5483e7c9be 100755 --- a/OpenRA.Mods.RA/Activities/Teleport.cs +++ b/OpenRA.Mods.RA/Activities/Teleport.cs @@ -45,4 +45,17 @@ namespace OpenRA.Mods.RA.Activities return NextActivity; } } + + public class SimpleTeleport : Activity + { + CPos destination; + + public SimpleTeleport(CPos destination) { this.destination = destination; } + + public override Activity Tick(Actor self) + { + self.Trait().SetPosition(self, destination); + return NextActivity; + } + } }