diff --git a/OpenRA.Game/Activities/Activity.cs b/OpenRA.Game/Activities/Activity.cs index 36d4177765..b0661577f2 100644 --- a/OpenRA.Game/Activities/Activity.cs +++ b/OpenRA.Game/Activities/Activity.cs @@ -161,6 +161,16 @@ namespace OpenRA.Activities { yield break; } + + public IEnumerable DebugLabelComponents() + { + var act = this; + while (act != null) + { + yield return act.GetType().Name; + act = act.childActivity; + } + } } public static class ActivityExts diff --git a/OpenRA.Mods.Common/Traits/Render/RenderDebugState.cs b/OpenRA.Mods.Common/Traits/Render/RenderDebugState.cs index b714ee0bab..80336787e8 100644 --- a/OpenRA.Mods.Common/Traits/Render/RenderDebugState.cs +++ b/OpenRA.Mods.Common/Traits/Render/RenderDebugState.cs @@ -80,10 +80,7 @@ namespace OpenRA.Mods.Common.Traits.Render // Get the actor's activity. var activity = self.CurrentActivity; if (activity != null) - { - var activityName = activity.GetType().ToString().Split('.').Last(); - yield return new TextRenderable(font, self.CenterPosition, 0, color, activityName); - } + yield return new TextRenderable(font, self.CenterPosition, 0, color, activity.DebugLabelComponents().JoinWith(".")); // Get the AI squad that this actor belongs to. if (!self.Owner.IsBot)