diff --git a/OpenRA.Mods.Common/EditorBrushes/EditorBlit.cs b/OpenRA.Mods.Common/EditorBrushes/EditorBlit.cs index 9ec9b59e62..da72479723 100644 --- a/OpenRA.Mods.Common/EditorBrushes/EditorBlit.cs +++ b/OpenRA.Mods.Common/EditorBrushes/EditorBlit.cs @@ -322,5 +322,10 @@ namespace OpenRA.Mods.Common.EditorBrushes { return commitBlitSource.Tiles.Count; } + + public int ActorCount() + { + return commitBlitSource.Actors.Count; + } } } diff --git a/OpenRA.Mods.Common/EditorBrushes/EditorCopyPasteBrush.cs b/OpenRA.Mods.Common/EditorBrushes/EditorCopyPasteBrush.cs index 3fa07079d3..b49dae3f50 100644 --- a/OpenRA.Mods.Common/EditorBrushes/EditorCopyPasteBrush.cs +++ b/OpenRA.Mods.Common/EditorBrushes/EditorCopyPasteBrush.cs @@ -120,9 +120,15 @@ namespace OpenRA.Mods.Common.Widgets sealed class CopyPasteEditorAction : IEditorAction { - [FluentReference("count")] + [FluentReference("tiles")] const string CopiedTiles = "notification-copied-tiles"; + [FluentReference("actors")] + const string CopiedActors = "notification-copied-actors"; + + [FluentReference("tiles", "actors")] + const string CopiedTilesAndActors = "notification-copied-tiles-actors"; + public string Text { get; } readonly EditorBlit editorBlit; @@ -131,7 +137,15 @@ namespace OpenRA.Mods.Common.Widgets { this.editorBlit = editorBlit; - Text = FluentProvider.GetMessage(CopiedTiles, "count", editorBlit.TileCount()); + var actors = editorBlit.ActorCount(); + var tiles = editorBlit.TileCount(); + + if (tiles > 0 && actors == 0) + Text = FluentProvider.GetMessage(CopiedTiles, "tiles", tiles); + else if (tiles == 0 && actors > 0) + Text = FluentProvider.GetMessage(CopiedActors, "actors", actors); + else + Text = FluentProvider.GetMessage(CopiedTilesAndActors, "tiles", tiles, "actors", actors); } public void Execute() diff --git a/mods/common/fluent/common.ftl b/mods/common/fluent/common.ftl index 510f1d7058..3171ae8457 100644 --- a/mods/common/fluent/common.ftl +++ b/mods/common/fluent/common.ftl @@ -784,11 +784,9 @@ notification-time-limit-expired = Time limit has expired. notification-added-actor = Added { $name } ({ $id }) ## EditorCopyPasteBrush -notification-copied-tiles = - { $count -> - [one] Copied one tile - *[other] Copied { $count } tiles - } +notification-copied-tiles = Copied { $tiles } tiles +notification-copied-actors = Copied { $actors } actors +notification-copied-tiles-actors = Copied { $tiles } tiles and { $actors } actors ## EditorDefaultBrush notification-selected-area = Selected area { $x },{ $y } ({ $width },{ $height })