diff --git a/OpenRA.Mods.RA/CombatDebugOverlay.cs b/OpenRA.Mods.RA/CombatDebugOverlay.cs index f0def58dbb..2d4bf79c06 100755 --- a/OpenRA.Mods.RA/CombatDebugOverlay.cs +++ b/OpenRA.Mods.RA/CombatDebugOverlay.cs @@ -28,11 +28,13 @@ namespace OpenRA.Mods.RA public class CombatDebugOverlay : IPostRender { Lazy> armaments; + Lazy health; DeveloperMode devMode; public CombatDebugOverlay(Actor self) { armaments = Lazy.New(() => self.TraitsImplementing()); + health = Lazy.New(() => self.TraitOrDefault()); var localPlayer = self.World.LocalPlayer; devMode = localPlayer != null ? localPlayer.PlayerActor.Trait() : null; @@ -43,6 +45,9 @@ namespace OpenRA.Mods.RA if (devMode == null || !devMode.ShowMuzzles) return; + if (health.Value != null) + wr.DrawRangeCircle(Color.Red, wr.ScreenPxPosition(self.CenterPosition), health.Value.Info.Radius / Game.CellSize); + var wlr = Game.Renderer.WorldLineRenderer; var c = Color.White; @@ -50,7 +55,7 @@ namespace OpenRA.Mods.RA foreach (var b in a.Barrels) { var muzzle = self.CenterPosition + a.MuzzleOffset(self, b); - var dirOffset = new WVec(0,-224,0).Rotate(a.MuzzleOrientation(self, b)); + var dirOffset = new WVec(0, -224, 0).Rotate(a.MuzzleOrientation(self, b)); var sm = wr.ScreenPosition(muzzle); var sd = wr.ScreenPosition(muzzle + dirOffset);