From 4882af8ad0bb4cfb86208a328fda186cbf9f620e Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Fri, 19 Mar 2010 18:10:07 +1300 Subject: [PATCH] hack UIM stuff for crates --- OpenRA.Game/Controller.cs | 3 +++ OpenRA.Mods.RA-NG/CrateDrop.cs | 2 ++ OpenRA.Mods.RA/Effects/Parachute.cs | 3 +++ 3 files changed, 8 insertions(+) diff --git a/OpenRA.Game/Controller.cs b/OpenRA.Game/Controller.cs index bdbd16fc60..3bb1d77817 100644 --- a/OpenRA.Game/Controller.cs +++ b/OpenRA.Game/Controller.cs @@ -125,6 +125,9 @@ namespace OpenRA try { + if (!Game.IsStarted) + return "default"; + var mi = new MouseInput { Location = ( Game.CellSize * MousePosition - Game.viewport.Location ).ToInt2(), diff --git a/OpenRA.Mods.RA-NG/CrateDrop.cs b/OpenRA.Mods.RA-NG/CrateDrop.cs index f09c73da86..c6a37e3842 100644 --- a/OpenRA.Mods.RA-NG/CrateDrop.cs +++ b/OpenRA.Mods.RA-NG/CrateDrop.cs @@ -75,6 +75,8 @@ namespace OpenRA.Mods.RA_NG { var crate = new Actor(w, "crate", new int2(0, 0), w.NeutralPlayer); crates.Add(crate); + self.World.WorldActor.traits.Get().Remove(crate, crate.traits.Get()); + var plane = w.CreateActor("BADR", w.ChooseRandomEdgeCell(), w.NeutralPlayer); plane.CancelActivity(); plane.QueueActivity(new FlyCircle(p)); diff --git a/OpenRA.Mods.RA/Effects/Parachute.cs b/OpenRA.Mods.RA/Effects/Parachute.cs index 98d43d33f7..2733cefe54 100644 --- a/OpenRA.Mods.RA/Effects/Parachute.cs +++ b/OpenRA.Mods.RA/Effects/Parachute.cs @@ -73,6 +73,9 @@ namespace OpenRA.Mods.RA.Effects { cargo.Location = loc; cargo.CenterLocation = Util.CenterOfCell(loc); + + if (cargo.traits.Contains()) + world.WorldActor.traits.Get().Add(cargo, cargo.traits.Get()); } w.Add(cargo); });