From cd6dfd2185551fbf8d16f0350cb69d6df777ab5c Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sun, 31 Dec 2017 10:53:18 +0000 Subject: [PATCH] Work around the "BUG: in order targeter" game chat warning. --- OpenRA.Mods.Cnc/Traits/PortableChrono.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/OpenRA.Mods.Cnc/Traits/PortableChrono.cs b/OpenRA.Mods.Cnc/Traits/PortableChrono.cs index c5d584bcf1..e36405ca13 100644 --- a/OpenRA.Mods.Cnc/Traits/PortableChrono.cs +++ b/OpenRA.Mods.Cnc/Traits/PortableChrono.cs @@ -84,8 +84,15 @@ namespace OpenRA.Mods.Cnc.Traits public Order IssueOrder(Actor self, IOrderTargeter order, Target target, bool queued) { - if (order.OrderID == "PortableChronoDeploy" && CanTeleport) - self.World.OrderGenerator = new PortableChronoOrderGenerator(self, Info); + if (order.OrderID == "PortableChronoDeploy") + { + // HACK: Switch the global order generator instead of actually issuing an order + if (CanTeleport) + self.World.OrderGenerator = new PortableChronoOrderGenerator(self, Info); + + // HACK: We need to issue a fake order to stop the game complaining about the bodge above + return new Order(order.OrderID, self, Target.Invalid, queued); + } if (order.OrderID == "PortableChronoTeleport") return new Order(order.OrderID, self, target, queued);