Reduce duplication of "Battlefield Control" chat line label

This commit is contained in:
Ivaylo Draganov
2020-01-06 16:21:18 +02:00
committed by Paul Chote
parent 3e2022a3dd
commit 1dd1786469
8 changed files with 26 additions and 19 deletions

View File

@@ -858,6 +858,11 @@ namespace OpenRA
state = RunStatus.Success;
}
public static void AddSystemLine(string text)
{
AddSystemLine("Battlefield Control", text);
}
public static void AddSystemLine(string name, string text)
{
OrderManager.AddChatLine(name, systemMessageColor, text, systemMessageColor);

View File

@@ -21,7 +21,6 @@ namespace OpenRA.Network
public static class UnitOrders
{
public const int ChatMessageMaxLength = 2500;
const string ServerChatName = "Battlefield Control";
static Player FindPlayerByClient(this World world, Session.Client c)
{
@@ -41,7 +40,7 @@ namespace OpenRA.Network
{
// Server message
case "Message":
Game.AddSystemLine(ServerChatName, order.TargetString);
Game.AddSystemLine(order.TargetString);
break;
// Reports that the target player disconnected
@@ -137,7 +136,7 @@ namespace OpenRA.Network
FieldLoader.GetValue<int>("SaveSyncFrame", saveSyncFrame.Value.Value);
}
else
Game.AddSystemLine(ServerChatName, "The game has started.");
Game.AddSystemLine("The game has started.");
Game.StartGame(orderManager.LobbyInfo.GlobalSettings.Map, WorldType.Regular);
break;
@@ -156,7 +155,7 @@ namespace OpenRA.Network
case "GameSaved":
if (!orderManager.World.IsReplay)
Game.AddSystemLine(ServerChatName, "Game saved");
Game.AddSystemLine("Game saved");
foreach (var nsr in orderManager.World.WorldActor.TraitsImplementing<INotifyGameSaved>())
nsr.GameSaved(orderManager.World);
@@ -176,7 +175,7 @@ namespace OpenRA.Network
if (orderManager.World.Paused != pause && world != null && world.LobbyInfo.NonBotClients.Count() > 1)
{
var pausetext = "The game is {0} by {1}".F(pause ? "paused" : "un-paused", client.Name);
Game.AddSystemLine(ServerChatName, pausetext);
Game.AddSystemLine(pausetext);
}
orderManager.World.Paused = pause;

View File

@@ -198,12 +198,15 @@ namespace OpenRA.Mods.Common.Scripting
Game.AddChatLine(prefix, c, text);
}
[Desc("Display a system message to the player.")]
public void DisplaySystemMessage(string text, string prefix = "Mission")
[Desc("Display a system message to the player. If 'prefix' is nil the default system prefix is used.")]
public void DisplaySystemMessage(string text, string prefix = null)
{
if (string.IsNullOrEmpty(text))
return;
if (string.IsNullOrEmpty(prefix))
Game.AddSystemLine(text);
Game.AddSystemLine(prefix, text);
}

View File

@@ -100,7 +100,7 @@ namespace OpenRA.Mods.Common.Traits
if (info.SuppressNotifications)
return;
Game.AddSystemLine("Battlefield Control", player.PlayerName + " is defeated.");
Game.AddSystemLine(player.PlayerName + " is defeated.");
Game.RunAfterDelay(info.NotificationDelay, () =>
{
if (Game.IsCurrentWorld(player.World) && player == player.World.LocalPlayer)
@@ -113,7 +113,7 @@ namespace OpenRA.Mods.Common.Traits
if (info.SuppressNotifications)
return;
Game.AddSystemLine("Battlefield Control", player.PlayerName + " is victorious.");
Game.AddSystemLine(player.PlayerName + " is victorious.");
Game.RunAfterDelay(info.NotificationDelay, () =>
{
if (Game.IsCurrentWorld(player.World) && player == player.World.LocalPlayer)

View File

@@ -141,7 +141,7 @@ namespace OpenRA.Mods.Common.Traits
if (info.SuppressNotifications)
return;
Game.AddSystemLine("Battlefield Control", player.PlayerName + " is defeated.");
Game.AddSystemLine(player.PlayerName + " is defeated.");
Game.RunAfterDelay(info.NotificationDelay, () =>
{
if (Game.IsCurrentWorld(player.World) && player == player.World.LocalPlayer)
@@ -154,7 +154,7 @@ namespace OpenRA.Mods.Common.Traits
if (info.SuppressNotifications)
return;
Game.AddSystemLine("Battlefield Control", player.PlayerName + " is victorious.");
Game.AddSystemLine(player.PlayerName + " is victorious.");
Game.RunAfterDelay(info.NotificationDelay, () =>
{
if (Game.IsCurrentWorld(player.World) && player == player.World.LocalPlayer)

View File

@@ -158,7 +158,7 @@ namespace OpenRA.Mods.Common.Traits
{
if (ticksRemaining == m * 60 * ticksPerSecond)
{
Game.AddSystemLine("Battlefield Control", Notification.F(m, m > 1 ? "s" : null));
Game.AddSystemLine(Notification.F(m, m > 1 ? "s" : null));
var faction = self.World.LocalPlayer == null ? null : self.World.LocalPlayer.Faction.InternalName;
Game.Sound.PlayNotification(self.World.Map.Rules, self.World.LocalPlayer, "Speech", info.TimeLimitWarnings[m], faction);
@@ -172,7 +172,7 @@ namespace OpenRA.Mods.Common.Traits
countdownLabel.GetText = () => null;
if (!info.SkipTimerExpiredNotification)
Game.AddSystemLine("Battlefield Control", "Time limit has expired.");
Game.AddSystemLine("Time limit has expired.");
}
}
}

View File

@@ -30,12 +30,12 @@ namespace OpenRA.Mods.Common.Widgets.Logic
if (Game.Settings.Sound.Mute)
{
Game.Sound.MuteAudio();
Game.AddSystemLine("Battlefield Control", "Audio muted");
Game.AddSystemLine("Audio muted");
}
else
{
Game.Sound.UnmuteAudio();
Game.AddSystemLine("Battlefield Control", "Audio unmuted");
Game.AddSystemLine("Audio unmuted");
}
return true;

View File

@@ -281,12 +281,12 @@ namespace OpenRA.Mods.Common.Widgets
// Check if selecting actors on the screen has selected new units
if (ownUnitsOnScreen.Count > World.Selection.Actors.Count())
Game.AddSystemLine("Battlefield Control", "Selected across screen");
Game.AddSystemLine("Selected across screen");
else
{
// Select actors in the world that have highest selection priority
ownUnitsOnScreen = SelectActorsInWorld(World, null, eligiblePlayers).SubsetWithHighestSelectionPriority(e.Modifiers).ToList();
Game.AddSystemLine("Battlefield Control", "Selected across map");
Game.AddSystemLine("Selected across map");
}
World.Selection.Combine(World, ownUnitsOnScreen, false, false);
@@ -313,12 +313,12 @@ namespace OpenRA.Mods.Common.Widgets
// Check if selecting actors on the screen has selected new units
if (newSelection.Count > World.Selection.Actors.Count())
Game.AddSystemLine("Battlefield Control", "Selected across screen");
Game.AddSystemLine("Selected across screen");
else
{
// Select actors in the world that have the same selection class as one of the already selected actors
newSelection = SelectActorsInWorld(World, selectedClasses, eligiblePlayers).ToList();
Game.AddSystemLine("Battlefield Control", "Selected across map");
Game.AddSystemLine("Selected across map");
}
World.Selection.Combine(World, newSelection, true, false);