Refactor translation files
- Add prefixes to all message keys to provide context - Use messages with attributes for some UI elements (dropdowns, dialogs, checkboxes, menus) - Rename some class fields for consistency with translation keys
This commit is contained in:
committed by
Paul Chote
parent
46caa2d889
commit
a0f17b15ec
@@ -30,7 +30,7 @@ namespace OpenRA
|
|||||||
public static class Game
|
public static class Game
|
||||||
{
|
{
|
||||||
[TranslationReference("filename")]
|
[TranslationReference("filename")]
|
||||||
const string SavedScreenshot = "saved-screenshot";
|
const string SavedScreenshot = "notification-saved-screenshot";
|
||||||
|
|
||||||
public const int TimestepJankThreshold = 250; // Don't catch up for delays larger than 250ms
|
public const int TimestepJankThreshold = 250; // Don't catch up for delays larger than 250ms
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ namespace OpenRA.Server
|
|||||||
class PlayerMessageTracker
|
class PlayerMessageTracker
|
||||||
{
|
{
|
||||||
[TranslationReference("remaining")]
|
[TranslationReference("remaining")]
|
||||||
const string ChatTemporaryDisabled = "chat-temp-disabled";
|
const string ChatTemporaryDisabled = "notification-chat-temp-disabled";
|
||||||
|
|
||||||
readonly Dictionary<int, List<long>> messageTracker = new Dictionary<int, List<long>>();
|
readonly Dictionary<int, List<long>> messageTracker = new Dictionary<int, List<long>>();
|
||||||
readonly Server server;
|
readonly Server server;
|
||||||
|
|||||||
@@ -47,73 +47,73 @@ namespace OpenRA.Server
|
|||||||
public sealed class Server
|
public sealed class Server
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CustomRules = "custom-rules";
|
const string CustomRules = "notification-custom-rules";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string BotsDisabled = "bots-disabled";
|
const string BotsDisabled = "notification-map-bots-disabled";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string TwoHumansRequired = "two-humans-required";
|
const string TwoHumansRequired = "notification-two-humans-required";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ErrorGameStarted = "error-game-started";
|
const string ErrorGameStarted = "notification-error-game-started";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RequiresPassword = "requires-password";
|
const string RequiresPassword = "notification-requires-password";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string IncorrectPassword = "incorrect-password";
|
const string IncorrectPassword = "notification-incorrect-password";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string IncompatibleMod = "incompatible-mod";
|
const string IncompatibleMod = "notification-incompatible-mod";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string IncompatibleVersion = "incompatible-version";
|
const string IncompatibleVersion = "notification-incompatible-version";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string IncompatibleProtocol = "incompatible-protocol";
|
const string IncompatibleProtocol = "notification-incompatible-protocol";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Banned = "banned";
|
const string Banned = "notification-you-were-banned";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string TempBanned = "temp-banned";
|
const string TempBanned = "notification-you-were-temp-banned";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Full = "full";
|
const string Full = "notification-game-full";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string Joined = "joined";
|
const string Joined = "notification-joined";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RequiresForumAccount = "requires-forum-account";
|
const string RequiresAuthentication = "notification-requires-authentication";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoPermission = "no-permission";
|
const string NoPermission = "notification-no-permission-to-join";
|
||||||
|
|
||||||
[TranslationReference("command")]
|
[TranslationReference("command")]
|
||||||
const string UnknownServerCommand = "unknown-server-command";
|
const string UnknownServerCommand = "notification-unknown-server-command";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string LobbyDisconnected = "lobby-disconnected";
|
const string LobbyDisconnected = "notification-lobby-disconnected";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string PlayerDisconnected = "player-disconnected";
|
const string PlayerDisconnected = "notification-player-disconnected";
|
||||||
|
|
||||||
[TranslationReference("player", "team")]
|
[TranslationReference("player", "team")]
|
||||||
const string PlayerTeamDisconnected = "player-team-disconnected";
|
const string PlayerTeamDisconnected = "notification-team-player-disconnected";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string ObserverDisconnected = "observer-disconnected";
|
const string ObserverDisconnected = "notification-observer-disconnected";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string NewAdmin = "new-admin";
|
const string NewAdmin = "notification-new-admin";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string YouWereKicked = "you-were-kicked";
|
const string YouWereKicked = "notification-you-were-kicked";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string GameStarted = "game-started";
|
const string GameStarted = "notification-game-started";
|
||||||
|
|
||||||
public readonly MersenneTwister Random = new MersenneTwister();
|
public readonly MersenneTwister Random = new MersenneTwister();
|
||||||
public readonly ServerType Type;
|
public readonly ServerType Type;
|
||||||
@@ -664,7 +664,7 @@ namespace OpenRA.Server
|
|||||||
if (notAuthenticated)
|
if (notAuthenticated)
|
||||||
{
|
{
|
||||||
Log.Write("server", $"Rejected connection from {newConn.EndPoint}; Not authenticated.");
|
Log.Write("server", $"Rejected connection from {newConn.EndPoint}; Not authenticated.");
|
||||||
SendOrderTo(newConn, "ServerError", RequiresForumAccount);
|
SendOrderTo(newConn, "ServerError", RequiresAuthentication);
|
||||||
DropClient(newConn);
|
DropClient(newConn);
|
||||||
}
|
}
|
||||||
else if (blacklisted || notWhitelisted)
|
else if (blacklisted || notWhitelisted)
|
||||||
@@ -687,7 +687,7 @@ namespace OpenRA.Server
|
|||||||
if (Type == ServerType.Dedicated && (Settings.RequireAuthentication || Settings.ProfileIDWhitelist.Length > 0))
|
if (Type == ServerType.Dedicated && (Settings.RequireAuthentication || Settings.ProfileIDWhitelist.Length > 0))
|
||||||
{
|
{
|
||||||
Log.Write("server", $"Rejected connection from {newConn.EndPoint}; Not authenticated.");
|
Log.Write("server", $"Rejected connection from {newConn.EndPoint}; Not authenticated.");
|
||||||
SendOrderTo(newConn, "ServerError", RequiresForumAccount);
|
SendOrderTo(newConn, "ServerError", RequiresAuthentication);
|
||||||
DropClient(newConn);
|
DropClient(newConn);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -20,11 +20,11 @@ namespace OpenRA.Traits
|
|||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the fog checkbox in the lobby.")]
|
[Desc("Descriptive label for the fog checkbox in the lobby.")]
|
||||||
public readonly string FogCheckboxLabel = "fog-of-war.label";
|
public readonly string FogCheckboxLabel = "checkbox-fog-of-war.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the fog checkbox in the lobby.")]
|
[Desc("Tooltip description for the fog checkbox in the lobby.")]
|
||||||
public readonly string FogCheckboxDescription = "fog-of-war.description";
|
public readonly string FogCheckboxDescription = "checkbox-fog-of-war.description";
|
||||||
|
|
||||||
[Desc("Default value of the fog checkbox in the lobby.")]
|
[Desc("Default value of the fog checkbox in the lobby.")]
|
||||||
public readonly bool FogCheckboxEnabled = true;
|
public readonly bool FogCheckboxEnabled = true;
|
||||||
@@ -40,11 +40,11 @@ namespace OpenRA.Traits
|
|||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the explored map checkbox in the lobby.")]
|
[Desc("Descriptive label for the explored map checkbox in the lobby.")]
|
||||||
public readonly string ExploredMapCheckboxLabel = "explored-map.label";
|
public readonly string ExploredMapCheckboxLabel = "checkbox-explored-map.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the explored map checkbox in the lobby.")]
|
[Desc("Tooltip description for the explored map checkbox in the lobby.")]
|
||||||
public readonly string ExploredMapCheckboxDescription = "explored-map.description";
|
public readonly string ExploredMapCheckboxDescription = "checkbox-explored-map.description";
|
||||||
|
|
||||||
[Desc("Default value of the explore map checkbox in the lobby.")]
|
[Desc("Default value of the explore map checkbox in the lobby.")]
|
||||||
public readonly bool ExploredMapCheckboxEnabled = false;
|
public readonly bool ExploredMapCheckboxEnabled = false;
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ namespace OpenRA.Mods.Common.Commands
|
|||||||
public class ChatCommands : INotifyChat
|
public class ChatCommands : INotifyChat
|
||||||
{
|
{
|
||||||
[TranslationReference("name")]
|
[TranslationReference("name")]
|
||||||
const string InvalidCommand = "invalid-command";
|
const string InvalidCommand = "notification-invalid-command";
|
||||||
|
|
||||||
public Dictionary<string, IChatCommand> Commands { get; }
|
public Dictionary<string, IChatCommand> Commands { get; }
|
||||||
|
|
||||||
|
|||||||
@@ -24,19 +24,19 @@ namespace OpenRA.Mods.Common.Commands
|
|||||||
public class DebugVisualizationCommands : IChatCommand, IWorldLoaded
|
public class DebugVisualizationCommands : IChatCommand, IWorldLoaded
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CombatGeometryDescription = "combat-geometry-description";
|
const string CombatGeometryDescription = "description-combat-geometry";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RenderGeometryDescription = "render-geometry-description";
|
const string RenderGeometryDescription = "description-render-geometry";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ScreenMapOverlayDescription = "screen-map-overlay-description";
|
const string ScreenMapOverlayDescription = "description-screen-map-overlay";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DepthBufferDescription = "depth-buffer-description";
|
const string DepthBufferDescription = "description-depth-buffer";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ActorTagsOverlayDescripition = "actor-tags-overlay-description";
|
const string ActorTagsOverlayDescripition = "description-actor-tags-overlay";
|
||||||
|
|
||||||
readonly IDictionary<string, (string Description, Action<DebugVisualizations, DeveloperMode> Handler)> commandHandlers = new Dictionary<string, (string Description, Action<DebugVisualizations, DeveloperMode> Handler)>
|
readonly IDictionary<string, (string Description, Action<DebugVisualizations, DeveloperMode> Handler)> commandHandlers = new Dictionary<string, (string Description, Action<DebugVisualizations, DeveloperMode> Handler)>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -25,55 +25,55 @@ namespace OpenRA.Mods.Common.Commands
|
|||||||
public class DevCommands : IChatCommand, IWorldLoaded
|
public class DevCommands : IChatCommand, IWorldLoaded
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CheatsDisabled = "cheats-disabled";
|
const string CheatsDisabled = "notification-cheats-disabled";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InvalidCashAmount = "invalid-cash-amount";
|
const string InvalidCashAmount = "notification-invalid-cash-amount";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ToggleVisiblityDescription = "toggle-visibility";
|
const string ToggleVisiblityDescription = "description-toggle-visibility";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string GiveCashDescription = "give-cash";
|
const string GiveCashDescription = "description-give-cash";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string GiveCashAllDescription = "give-cash-all";
|
const string GiveCashAllDescription = "description-give-cash-all";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InstantBuildingDescription = "instant-building";
|
const string InstantBuildingDescription = "description-instant-building";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string BuildAnywhereDescription = "build-anywhere";
|
const string BuildAnywhereDescription = "description-build-anywhere";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnlimitedPowerDescription = "unlimited-power";
|
const string UnlimitedPowerDescription = "description-unlimited-power";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string EnableTechDescription = "enable-tech";
|
const string EnableTechDescription = "description-enable-tech";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string FastChargeDescription = "fast-charge";
|
const string FastChargeDescription = "description-fast-charge";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DevCheatAllDescription = "dev-cheat-all";
|
const string DevCheatAllDescription = "description-dev-cheat-all";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DevCrashDescription = "dev-crash";
|
const string DevCrashDescription = "description-dev-crash";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LevelUpActorDescription = "levelup-actor";
|
const string LevelUpActorDescription = "description-levelup-actor";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PlayerExperienceDescription = "player-experience";
|
const string PlayerExperienceDescription = "description-player-experience";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PowerOutageDescription = "power-outage";
|
const string PowerOutageDescription = "description-power-outage";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string KillSelectedActorsDescription = "kill-selected-actors";
|
const string KillSelectedActorsDescription = "description-kill-selected-actors";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DisposeSelectedActorsDescription = "dispose-selected-actors";
|
const string DisposeSelectedActorsDescription = "description-dispose-selected-actors";
|
||||||
|
|
||||||
readonly IDictionary<string, (string Description, Action<string, World> Handler)> commandHandlers = new Dictionary<string, (string, Action<string, World>)>
|
readonly IDictionary<string, (string Description, Action<string, World> Handler)> commandHandlers = new Dictionary<string, (string, Action<string, World>)>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -22,13 +22,13 @@ namespace OpenRA.Mods.Common.Commands
|
|||||||
public class HelpCommand : IChatCommand, IWorldLoaded
|
public class HelpCommand : IChatCommand, IWorldLoaded
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AvailableCommands = "available-commands";
|
const string AvailableCommands = "notification-available-commands";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoDescription = "no-description";
|
const string NoDescription = "description-no-description";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string HelpDescription = "help-description";
|
const string HelpDescription = "description-help-description";
|
||||||
|
|
||||||
readonly Dictionary<string, string> helpDescriptions;
|
readonly Dictionary<string, string> helpDescriptions;
|
||||||
|
|
||||||
|
|||||||
@@ -21,10 +21,10 @@ namespace OpenRA.Mods.Common.Commands
|
|||||||
public class PlayerCommands : IChatCommand, IWorldLoaded
|
public class PlayerCommands : IChatCommand, IWorldLoaded
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PauseDescription = "pause-description";
|
const string PauseDescription = "description-pause-description";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SurrenderDescription = "surrender-description";
|
const string SurrenderDescription = "description-surrender-description";
|
||||||
|
|
||||||
World world;
|
World world;
|
||||||
|
|
||||||
|
|||||||
@@ -25,133 +25,133 @@ namespace OpenRA.Mods.Common.Server
|
|||||||
public class LobbyCommands : ServerTrait, IInterpretCommand, INotifyServerStart, INotifyServerEmpty, IClientJoined
|
public class LobbyCommands : ServerTrait, IInterpretCommand, INotifyServerStart, INotifyServerEmpty, IClientJoined
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CustomRules = "custom-rules";
|
const string CustomRules = "notification-custom-rules";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OnlyHostStartGame = "only-only-host-start-game";
|
const string OnlyHostStartGame = "notification-admin-start-game";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoStartUntilRequiredSlotsFull = "no-start-until-required-slots-full";
|
const string NoStartUntilRequiredSlotsFull = "notification-no-start-until-required-slots-full";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoStartWithoutPlayers = "no-start-without-players";
|
const string NoStartWithoutPlayers = "notification-no-start-without-players";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string TwoHumansRequired = "two-humans-required";
|
const string TwoHumansRequired = "notification-two-humans-required";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InsufficientEnabledSpawnPoints = "insufficient-enabled-spawnPoints";
|
const string InsufficientEnabledSpawnPoints = "notification-insufficient-enabled-spawn-points";
|
||||||
|
|
||||||
[TranslationReference("command")]
|
[TranslationReference("command")]
|
||||||
const string MalformedCommand = "malformed-command";
|
const string MalformedCommand = "notification-malformed-command";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string KickNone = "kick-none";
|
const string KickNone = "notification-kick-none";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoKickGameStarted = "no-kick-game-started";
|
const string NoKickGameStarted = "notification-no-kick-game-started";
|
||||||
|
|
||||||
[TranslationReference("admin", "player")]
|
[TranslationReference("admin", "player")]
|
||||||
const string Kicked = "kicked";
|
const string Kicked = "notification-kicked";
|
||||||
|
|
||||||
[TranslationReference("admin", "player")]
|
[TranslationReference("admin", "player")]
|
||||||
const string TempBan = "temp-ban";
|
const string TempBan = "notification-temp-ban";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoTransferAdmin = "only-host-transfer-admin";
|
const string NoTransferAdmin = "notification-admin-transfer-admin";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string EmptySlot = "empty-slot";
|
const string EmptySlot = "notification-empty-slot";
|
||||||
|
|
||||||
[TranslationReference("admin", "player")]
|
[TranslationReference("admin", "player")]
|
||||||
const string MoveSpectators = "move-spectators";
|
const string MoveSpectators = "notification-move-spectators";
|
||||||
|
|
||||||
[TranslationReference("player", "name")]
|
[TranslationReference("player", "name")]
|
||||||
const string Nick = "nick";
|
const string Nick = "notification-nick-changed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string StateUnchangedReady = "state-unchanged-ready";
|
const string StateUnchangedReady = "notification-state-unchanged-ready";
|
||||||
|
|
||||||
[TranslationReference("command")]
|
[TranslationReference("command")]
|
||||||
const string StateUnchangedGameStarted = "state-unchanged-game-started";
|
const string StateUnchangedGameStarted = "notification-state-unchanged-game-started";
|
||||||
|
|
||||||
[TranslationReference("faction")]
|
[TranslationReference("faction")]
|
||||||
const string InvalidFactionSelected = "invalid-faction-selected";
|
const string InvalidFactionSelected = "notification-invalid-faction-selected";
|
||||||
|
|
||||||
[TranslationReference("factions")]
|
[TranslationReference("factions")]
|
||||||
const string SupportedFactions = "supported-factions";
|
const string SupportedFactions = "notification-supported-factions";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RequiresHost = "requires-host";
|
const string RequiresHost = "notification-requires-host";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InvalidBotSlot = "invalid-bot-slot";
|
const string InvalidBotSlot = "notification-invalid-bot-slot";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InvalidBotType = "invalid-bot-type";
|
const string InvalidBotType = "notification-invalid-bot-type";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string HostChangeMap = "only-host-change-map";
|
const string HostChangeMap = "notification-admin-change-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnknownMap = "unknown-map";
|
const string UnknownMap = "notification-unknown-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SearchingMap = "searching-map";
|
const string SearchingMap = "notification-searching-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NotAdmin = "only-host-change-configuration";
|
const string NotAdmin = "notification-admin-change-configuration";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InvalidConfigurationCommand = "invalid-configuration-command";
|
const string InvalidConfigurationCommand = "notification-invalid-configuration-command";
|
||||||
|
|
||||||
[TranslationReference("option")]
|
[TranslationReference("option")]
|
||||||
const string OptionLocked = "option-locked";
|
const string OptionLocked = "notification-option-locked";
|
||||||
|
|
||||||
[TranslationReference("player", "map")]
|
[TranslationReference("player", "map")]
|
||||||
const string ChangedMap = "changed-map";
|
const string ChangedMap = "notification-changed-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MapBotsDisabled = "map-bots-disabled";
|
const string MapBotsDisabled = "notification-map-bots-disabled";
|
||||||
|
|
||||||
[TranslationReference("player", "name", "value")]
|
[TranslationReference("player", "name", "value")]
|
||||||
const string ValueChanged = "value-changed";
|
const string ValueChanged = "notification-option-changed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoMoveSpectators = "only-host-move-spectators";
|
const string NoMoveSpectators = "notification-admin-move-spectators";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AdminOption = "admin-option";
|
const string AdminOption = "notification-admin-option";
|
||||||
|
|
||||||
[TranslationReference("raw")]
|
[TranslationReference("raw")]
|
||||||
const string NumberTeams = "number-teams";
|
const string NumberTeams = "notification-error-number-teams";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AdminClearSpawn = "admin-clear-spawn";
|
const string AdminClearSpawn = "notification-admin-clear-spawn";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SpawnOccupied = "spawn-occupied";
|
const string SpawnOccupied = "notification-spawn-occupied";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SpawnLocked = "spawn-locked";
|
const string SpawnLocked = "notification-spawn-locked";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AdminLobbyInfo = "admin-lobby-info";
|
const string AdminLobbyInfo = "notification-admin-lobby-info";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InvalidLobbyInfo = "invalid-lobby-info";
|
const string InvalidLobbyInfo = "notification-invalid-lobby-info";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AdminKick = "admin-kick";
|
const string AdminKick = "notification-admin-kick";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SlotClosed = "slot-closed";
|
const string SlotClosed = "notification-slot-closed";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string NewAdmin = "new-admin";
|
const string NewAdmin = "notification-new-admin";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string YouWereKicked = "you-were-kicked";
|
const string YouWereKicked = "notification-you-were-kicked";
|
||||||
|
|
||||||
readonly IDictionary<string, Func<S, Connection, Session.Client, string, bool>> commandHandlers = new Dictionary<string, Func<S, Connection, Session.Client, string, bool>>
|
readonly IDictionary<string, Func<S, Connection, Session.Client, string, bool>> commandHandlers = new Dictionary<string, Func<S, Connection, Session.Client, string, bool>>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -31,22 +31,22 @@ namespace OpenRA.Mods.Common.Server
|
|||||||
const int RateLimitInterval = 1000;
|
const int RateLimitInterval = 1000;
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoPortForward = "no-port-forward";
|
const string NoPortForward = "notification-no-port-forward";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string BlacklistedTitle = "blacklisted-title";
|
const string BlacklistedTitle = "notification-blacklisted-server-name";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InvalidErrorCode = "invalid-error-code";
|
const string InvalidErrorCode = "notification-invalid-error-code";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Connected = "master-server-connected";
|
const string Connected = "notification-master-server-connected";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Error = "master-server-error";
|
const string Error = "notification-master-server-error";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string GameOffline = "game-offline";
|
const string GameOffline = "notification-game-offline";
|
||||||
|
|
||||||
static readonly Beacon LanGameBeacon;
|
static readonly Beacon LanGameBeacon;
|
||||||
static readonly Dictionary<int, string> MasterServerErrors = new Dictionary<int, string>()
|
static readonly Dictionary<int, string> MasterServerErrors = new Dictionary<int, string>()
|
||||||
|
|||||||
@@ -19,16 +19,16 @@ namespace OpenRA.Mods.Common.Server
|
|||||||
public class PlayerPinger : ServerTrait, ITick
|
public class PlayerPinger : ServerTrait, ITick
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PlayerDropped = "player-dropped";
|
const string PlayerDropped = "notification-player-dropped";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string ConnectionProblems = "connection-problems";
|
const string ConnectionProblems = "notification-connection-problems";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string Timeout = "timeout";
|
const string Timeout = "notification-timeout-dropped";
|
||||||
|
|
||||||
[TranslationReference("player", "timeout")]
|
[TranslationReference("player", "timeout")]
|
||||||
const string TimeoutIn = "timeout-in";
|
const string TimeoutIn = "notification-timeout-dropped-in";
|
||||||
|
|
||||||
static readonly int PingInterval = 5000; // Ping every 5 seconds
|
static readonly int PingInterval = 5000; // Ping every 5 seconds
|
||||||
static readonly int ConnReportInterval = 20000; // Report every 20 seconds
|
static readonly int ConnReportInterval = 20000; // Report every 20 seconds
|
||||||
|
|||||||
@@ -22,11 +22,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the developer mode checkbox in the lobby.")]
|
[Desc("Descriptive label for the developer mode checkbox in the lobby.")]
|
||||||
public readonly string CheckboxLabel = "debug-menu.label";
|
public readonly string CheckboxLabel = "checkbox-debug-menu.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the developer mode checkbox in the lobby.")]
|
[Desc("Tooltip description for the developer mode checkbox in the lobby.")]
|
||||||
public readonly string CheckboxDescription = "debug-menu.description";
|
public readonly string CheckboxDescription = "checkbox-debug-menu.description";
|
||||||
|
|
||||||
[Desc("Default value of the developer mode checkbox in the lobby.")]
|
[Desc("Default value of the developer mode checkbox in the lobby.")]
|
||||||
public readonly bool CheckboxEnabled = false;
|
public readonly bool CheckboxEnabled = false;
|
||||||
@@ -75,7 +75,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
public class DeveloperMode : IResolveOrder, ISync, INotifyCreated, IUnlocksRenderPlayer
|
public class DeveloperMode : IResolveOrder, ISync, INotifyCreated, IUnlocksRenderPlayer
|
||||||
{
|
{
|
||||||
[TranslationReference("cheat", "player", "suffix")]
|
[TranslationReference("cheat", "player", "suffix")]
|
||||||
const string CheatUsed = "cheat-used";
|
const string CheatUsed = "notification-cheat-used";
|
||||||
|
|
||||||
readonly DeveloperModeInfo info;
|
readonly DeveloperModeInfo info;
|
||||||
public bool Enabled { get; private set; }
|
public bool Enabled { get; private set; }
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
const string CommandName = "custom-terrain";
|
const string CommandName = "custom-terrain";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CommandDescription = "custom-terrain-debug-overlay-description";
|
const string CommandDescription = "description-custom-terrain-debug-overlay";
|
||||||
|
|
||||||
public bool Enabled;
|
public bool Enabled;
|
||||||
|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
const string CommandName = "triggers";
|
const string CommandName = "triggers";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CommandDescription = "cell-trigger-overlay-description";
|
const string CommandDescription = "description-cell-triggers-overlay";
|
||||||
|
|
||||||
bool enabled;
|
bool enabled;
|
||||||
|
|
||||||
|
|||||||
@@ -23,13 +23,13 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
public class ColorPickerManagerInfo : TraitInfo<ColorPickerManager>, IRulesetLoaded
|
public class ColorPickerManagerInfo : TraitInfo<ColorPickerManager>, IRulesetLoaded
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PlayerColorTerrain = "player-color-terrain";
|
const string PlayerColorTerrain = "notification-player-color-terrain";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PlayerColorPlayer = "player-color-player";
|
const string PlayerColorPlayer = "notification-player-color-player";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InvalidPlayerColor = "invalid-player-color";
|
const string InvalidPlayerColor = "notification-invalid-player-color";
|
||||||
|
|
||||||
[Desc("Minimum and maximum saturation levels that are valid for use.")]
|
[Desc("Minimum and maximum saturation levels that are valid for use.")]
|
||||||
public readonly float[] HsvSaturationRange = { 0.3f, 0.95f };
|
public readonly float[] HsvSaturationRange = { 0.3f, 0.95f };
|
||||||
|
|||||||
@@ -23,11 +23,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the crates checkbox in the lobby.")]
|
[Desc("Descriptive label for the crates checkbox in the lobby.")]
|
||||||
public readonly string CheckboxLabel = "crates.label";
|
public readonly string CheckboxLabel = "checkbox-crates.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the crates checkbox in the lobby.")]
|
[Desc("Tooltip description for the crates checkbox in the lobby.")]
|
||||||
public readonly string CheckboxDescription = "crates.description";
|
public readonly string CheckboxDescription = "checkbox-crates.description";
|
||||||
|
|
||||||
[Desc("Default value of the crates checkbox in the lobby.")]
|
[Desc("Default value of the crates checkbox in the lobby.")]
|
||||||
public readonly bool CheckboxEnabled = true;
|
public readonly bool CheckboxEnabled = true;
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
const string CommandName = "exits-overlay";
|
const string CommandName = "exits-overlay";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CommandDescription = "exits-debug-overlay-description";
|
const string CommandDescription = "description-exits-overlay";
|
||||||
|
|
||||||
public readonly SpriteFont Font;
|
public readonly SpriteFont Font;
|
||||||
public readonly ExitsDebugOverlayManagerInfo Info;
|
public readonly ExitsDebugOverlayManagerInfo Info;
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
const string CommandName = "hpf";
|
const string CommandName = "hpf";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CommandDescription = "hpf-overlay-description";
|
const string CommandDescription = "description-hpf-debug-overlay";
|
||||||
|
|
||||||
readonly HierarchicalPathFinderOverlayInfo info;
|
readonly HierarchicalPathFinderOverlayInfo info;
|
||||||
readonly SpriteFont font;
|
readonly SpriteFont font;
|
||||||
|
|||||||
@@ -20,11 +20,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the ally build radius checkbox in the lobby.")]
|
[Desc("Descriptive label for the ally build radius checkbox in the lobby.")]
|
||||||
public readonly string AllyBuildRadiusCheckboxLabel = "ally-build-radius.label";
|
public readonly string AllyBuildRadiusCheckboxLabel = "checkbox-ally-build-radius.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the ally build radius checkbox in the lobby.")]
|
[Desc("Tooltip description for the ally build radius checkbox in the lobby.")]
|
||||||
public readonly string AllyBuildRadiusCheckboxDescription = "ally-build-radius.description";
|
public readonly string AllyBuildRadiusCheckboxDescription = "checkbox-ally-build-radius.description";
|
||||||
|
|
||||||
[Desc("Default value of the ally build radius checkbox in the lobby.")]
|
[Desc("Default value of the ally build radius checkbox in the lobby.")]
|
||||||
public readonly bool AllyBuildRadiusCheckboxEnabled = true;
|
public readonly bool AllyBuildRadiusCheckboxEnabled = true;
|
||||||
@@ -40,11 +40,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the build radius checkbox in the lobby.")]
|
[Desc("Tooltip description for the build radius checkbox in the lobby.")]
|
||||||
public readonly string BuildRadiusCheckboxLabel = "build-radius.label";
|
public readonly string BuildRadiusCheckboxLabel = "checkbox-build-radius.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the build radius checkbox in the lobby.")]
|
[Desc("Tooltip description for the build radius checkbox in the lobby.")]
|
||||||
public readonly string BuildRadiusCheckboxDescription = "build-radius.description";
|
public readonly string BuildRadiusCheckboxDescription = "checkbox-build-radius.description";
|
||||||
|
|
||||||
[Desc("Default value of the build radius checkbox in the lobby.")]
|
[Desc("Default value of the build radius checkbox in the lobby.")]
|
||||||
public readonly bool BuildRadiusCheckboxEnabled = true;
|
public readonly bool BuildRadiusCheckboxEnabled = true;
|
||||||
|
|||||||
@@ -20,11 +20,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the creeps checkbox in the lobby.")]
|
[Desc("Descriptive label for the creeps checkbox in the lobby.")]
|
||||||
public readonly string CheckboxLabel = "map-creeps.label";
|
public readonly string CheckboxLabel = "dropdown-map-creeps.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the creeps checkbox in the lobby.")]
|
[Desc("Tooltip description for the creeps checkbox in the lobby.")]
|
||||||
public readonly string CheckboxDescription = "map-creeps.description";
|
public readonly string CheckboxDescription = "dropdown-map-creeps.description";
|
||||||
|
|
||||||
[Desc("Default value of the creeps checkbox in the lobby.")]
|
[Desc("Default value of the creeps checkbox in the lobby.")]
|
||||||
public readonly bool CheckboxEnabled = true;
|
public readonly bool CheckboxEnabled = true;
|
||||||
|
|||||||
@@ -21,11 +21,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the short game checkbox in the lobby.")]
|
[Desc("Descriptive label for the short game checkbox in the lobby.")]
|
||||||
public readonly string ShortGameCheckboxLabel = "short-game.label";
|
public readonly string ShortGameCheckboxLabel = "checkbox-short-game.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the short game checkbox in the lobby.")]
|
[Desc("Tooltip description for the short game checkbox in the lobby.")]
|
||||||
public readonly string ShortGameCheckboxDescription = "short-game.description";
|
public readonly string ShortGameCheckboxDescription = "checkbox-short-game.description";
|
||||||
|
|
||||||
[Desc("Default value of the short game checkbox in the lobby.")]
|
[Desc("Default value of the short game checkbox in the lobby.")]
|
||||||
public readonly bool ShortGameCheckboxEnabled = true;
|
public readonly bool ShortGameCheckboxEnabled = true;
|
||||||
@@ -41,11 +41,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the tech level option in the lobby.")]
|
[Desc("Descriptive label for the tech level option in the lobby.")]
|
||||||
public readonly string TechLevelDropdownLabel = "tech-level.label";
|
public readonly string TechLevelDropdownLabel = "dropdown-tech-level.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the tech level option in the lobby.")]
|
[Desc("Tooltip description for the tech level option in the lobby.")]
|
||||||
public readonly string TechLevelDropdownDescription = "tech-level.description";
|
public readonly string TechLevelDropdownDescription = "dropdown-tech-level.description";
|
||||||
|
|
||||||
[Desc("Default tech level.")]
|
[Desc("Default tech level.")]
|
||||||
public readonly string TechLevel = "unrestricted";
|
public readonly string TechLevel = "unrestricted";
|
||||||
@@ -61,11 +61,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the game speed option in the lobby.")]
|
[Desc("Tooltip description for the game speed option in the lobby.")]
|
||||||
public readonly string GameSpeedDropdownLabel = "game-speed.label";
|
public readonly string GameSpeedDropdownLabel = "dropdown-game-speed.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Description of the game speed option in the lobby.")]
|
[Desc("Description of the game speed option in the lobby.")]
|
||||||
public readonly string GameSpeedDropdownDescription = "game-speed.description";
|
public readonly string GameSpeedDropdownDescription = "dropdown-game-speed.description";
|
||||||
|
|
||||||
[Desc("Default game speed (leave empty to use the default defined in mod.yaml).")]
|
[Desc("Default game speed (leave empty to use the default defined in mod.yaml).")]
|
||||||
public readonly string GameSpeed = null;
|
public readonly string GameSpeed = null;
|
||||||
|
|||||||
@@ -27,11 +27,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the spawn positions checkbox in the lobby.")]
|
[Desc("Descriptive label for the spawn positions checkbox in the lobby.")]
|
||||||
public readonly string SeparateTeamSpawnsCheckboxLabel = "separate-team-spawns.label";
|
public readonly string SeparateTeamSpawnsCheckboxLabel = "checkbox-separate-team-spawns.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the spawn positions checkbox in the lobby.")]
|
[Desc("Tooltip description for the spawn positions checkbox in the lobby.")]
|
||||||
public readonly string SeparateTeamSpawnsCheckboxDescription = "separate-team-spawns.description";
|
public readonly string SeparateTeamSpawnsCheckboxDescription = "checkbox-separate-team-spawns.description";
|
||||||
|
|
||||||
[Desc("Default value of the spawn positions checkbox in the lobby.")]
|
[Desc("Default value of the spawn positions checkbox in the lobby.")]
|
||||||
public readonly bool SeparateTeamSpawnsCheckboxEnabled = true;
|
public readonly bool SeparateTeamSpawnsCheckboxEnabled = true;
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
const string CommandName = "path-debug";
|
const string CommandName = "path-debug";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CommandDescription = "path-debug-description";
|
const string CommandDescription = "description-path-debug-overlay";
|
||||||
|
|
||||||
sealed class Record : PathSearch.IRecorder, IEnumerable<(CPos Source, CPos Destination, int CostSoFar, int EstimatedRemainingCost)>
|
sealed class Record : PathSearch.IRecorder, IEnumerable<(CPos Source, CPos Destination, int CostSoFar, int EstimatedRemainingCost)>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -26,11 +26,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Descriptive label for the starting units option in the lobby.")]
|
[Desc("Descriptive label for the starting units option in the lobby.")]
|
||||||
public readonly string DropdownLabel = "starting-units.label";
|
public readonly string DropdownLabel = "dropdown-starting-units.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description for the starting units option in the lobby.")]
|
[Desc("Tooltip description for the starting units option in the lobby.")]
|
||||||
public readonly string DropdownDescription = "starting-units.description";
|
public readonly string DropdownDescription = "dropdown-starting-units.description";
|
||||||
|
|
||||||
[Desc("Prevent the starting units option from being changed in the lobby.")]
|
[Desc("Prevent the starting units option from being changed in the lobby.")]
|
||||||
public readonly bool DropdownLocked = false;
|
public readonly bool DropdownLocked = false;
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
const string CommandName = "terrain-geometry";
|
const string CommandName = "terrain-geometry";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CommandDescription = "terrain-geometry-overlay";
|
const string CommandDescription = "description-terrain-geometry-overlay";
|
||||||
|
|
||||||
public bool Enabled;
|
public bool Enabled;
|
||||||
|
|
||||||
|
|||||||
@@ -23,11 +23,11 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Label that will be shown for the time limit option in the lobby.")]
|
[Desc("Label that will be shown for the time limit option in the lobby.")]
|
||||||
public readonly string TimeLimitLabel = "time-limit.label";
|
public readonly string TimeLimitLabel = "dropdown-time-limit.label";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
[Desc("Tooltip description that will be shown for the time limit option in the lobby.")]
|
[Desc("Tooltip description that will be shown for the time limit option in the lobby.")]
|
||||||
public readonly string TimeLimitDescription = "time-limit.description";
|
public readonly string TimeLimitDescription = "dropdown-time-limit.description";
|
||||||
|
|
||||||
[Desc("Time Limit options that will be shown in the lobby dropdown. Values are in minutes.")]
|
[Desc("Time Limit options that will be shown in the lobby dropdown. Values are in minutes.")]
|
||||||
public readonly int[] TimeLimitOptions = { 0, 10, 20, 30, 40, 60, 90 };
|
public readonly int[] TimeLimitOptions = { 0, 10, 20, 30, 40, 60, 90 };
|
||||||
@@ -77,10 +77,10 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
}
|
}
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoTimeLimit = "no-time-limit";
|
const string NoTimeLimit = "options-time-limit.no-limit";
|
||||||
|
|
||||||
[TranslationReference("minutes")]
|
[TranslationReference("minutes")]
|
||||||
const string TimeLimitOption = "time-limit-options";
|
const string TimeLimitOption = "options-time-limit.options";
|
||||||
|
|
||||||
IEnumerable<LobbyOption> ILobbyOptions.LobbyOptions(MapPreview map)
|
IEnumerable<LobbyOption> ILobbyOptions.LobbyOptions(MapPreview map)
|
||||||
{
|
{
|
||||||
@@ -102,7 +102,7 @@ namespace OpenRA.Mods.Common.Traits
|
|||||||
public class TimeLimitManager : INotifyTimeLimit, ITick, IWorldLoaded
|
public class TimeLimitManager : INotifyTimeLimit, ITick, IWorldLoaded
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string TimeLimitExpired = "time-limit-expired";
|
const string TimeLimitExpired = "notification-time-limit-expired";
|
||||||
|
|
||||||
readonly TimeLimitManagerInfo info;
|
readonly TimeLimitManagerInfo info;
|
||||||
readonly int ticksPerSecond;
|
readonly int ticksPerSecond;
|
||||||
|
|||||||
@@ -35,10 +35,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
}
|
}
|
||||||
|
|
||||||
[TranslationReference("length")]
|
[TranslationReference("length")]
|
||||||
const string LengthInSeconds = "length-in-seconds";
|
const string LengthInSeconds = "label-length-in-seconds";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AllPackages = "all-packages";
|
const string AllPackages = "label-all-packages";
|
||||||
|
|
||||||
readonly string[] allowedExtensions;
|
readonly string[] allowedExtensions;
|
||||||
readonly string[] allowedSpriteExtensions;
|
readonly string[] allowedSpriteExtensions;
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ConnectionLogic : ChromeLogic
|
public class ConnectionLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("endpoint")]
|
[TranslationReference("endpoint")]
|
||||||
const string ConnectingToEndpoint = "connecting-to-endpoint";
|
const string ConnectingToEndpoint = "label-connecting-to-endpoint";
|
||||||
|
|
||||||
readonly Action onConnect;
|
readonly Action onConnect;
|
||||||
readonly Action onAbort;
|
readonly Action onAbort;
|
||||||
@@ -87,16 +87,16 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ConnectionFailedLogic : ChromeLogic
|
public class ConnectionFailedLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("target")]
|
[TranslationReference("target")]
|
||||||
const string CouldNotConnectToTarget = "could-not-connect-to-target";
|
const string CouldNotConnectToTarget = "label-could-not-connect-to-target";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnknownError = "unknown-error";
|
const string UnknownError = "label-unknown-error";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PasswordRequired = "password-required";
|
const string PasswordRequired = "label-password-required";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ConnectionFailed = "connection-failed";
|
const string ConnectionFailed = "label-connection-failed";
|
||||||
|
|
||||||
readonly PasswordFieldWidget passwordField;
|
readonly PasswordFieldWidget passwordField;
|
||||||
bool passwordOffsetAdjusted;
|
bool passwordOffsetAdjusted;
|
||||||
@@ -171,7 +171,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ConnectionSwitchModLogic : ChromeLogic
|
public class ConnectionSwitchModLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ModSwitchFailed = "mod-switch-failed";
|
const string ModSwitchFailed = "notification-mod-switch-failed";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public ConnectionSwitchModLogic(Widget widget, OrderManager orderManager, NetworkConnection connection, Action onAbort, Action<string> onRetry)
|
public ConnectionSwitchModLogic(Widget widget, OrderManager orderManager, NetworkConnection connection, Action onAbort, Action<string> onRetry)
|
||||||
|
|||||||
@@ -21,13 +21,13 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ActorEditLogic : ChromeLogic
|
public class ActorEditLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DuplicateActorId = "duplicate-actor-id";
|
const string DuplicateActorId = "label-duplicate-actor-id";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string EnterActorId = "enter-actor-id";
|
const string EnterActorId = "label-actor-id";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Owner = "owner";
|
const string Owner = "label-actor-owner";
|
||||||
|
|
||||||
// Error states define overlapping bits to simplify panel reflow logic
|
// Error states define overlapping bits to simplify panel reflow logic
|
||||||
[Flags]
|
[Flags]
|
||||||
|
|||||||
@@ -21,8 +21,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
{
|
{
|
||||||
public class ActorSelectorLogic : CommonSelectorLogic
|
public class ActorSelectorLogic : CommonSelectorLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference("actorType")]
|
||||||
const string Type = "type";
|
const string ActorTypeTooltip = "label-actor-type";
|
||||||
|
|
||||||
class ActorSelectorActor
|
class ActorSelectorActor
|
||||||
{
|
{
|
||||||
@@ -115,8 +115,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
if (tooltip != null)
|
if (tooltip != null)
|
||||||
searchTerms.Add(tooltip.Name);
|
searchTerms.Add(tooltip.Name);
|
||||||
|
|
||||||
var type = modData.Translation.GetString(Type);
|
var actorType = modData.Translation.GetString(ActorTypeTooltip, Translation.Arguments("actorType", a.Name));
|
||||||
var tooltipText = (tooltip == null ? $"{type}: " : tooltip.Name + $"\n{type}: ") + a.Name;
|
var tooltipText = tooltip == null ? actorType : tooltip.Name + $"\n{actorType}";
|
||||||
allActorsTemp.Add(new ActorSelectorActor(a, editorData.Categories, searchTerms.ToArray(), tooltipText));
|
allActorsTemp.Add(new ActorSelectorActor(a, editorData.Categories, searchTerms.ToArray(), tooltipText));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,16 +20,16 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public abstract class CommonSelectorLogic : ChromeLogic
|
public abstract class CommonSelectorLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string None = "none";
|
const string None = "options-common-selector.none";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SearchResults = "search-results";
|
const string SearchResults = "options-common-selector.search-results";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string All = "all";
|
const string All = "options-common-selector.all";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Multiple = "multiple";
|
const string Multiple = "options-common-selector.multiple";
|
||||||
|
|
||||||
protected readonly Widget Widget;
|
protected readonly Widget Widget;
|
||||||
protected readonly ModData ModData;
|
protected readonly ModData ModData;
|
||||||
|
|||||||
@@ -43,34 +43,34 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
}
|
}
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SaveMapFailedTitle = "save-map-failed-title";
|
const string SaveMapFailedTitle = "dialog-save-map-failed.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SaveMapFailedPrompt = "save-map-failed-prompt";
|
const string SaveMapFailedPrompt = "dialog-save-map-failed.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SaveMapFailedAccept = "save-map-failed-accept";
|
const string SaveMapFailedAccept = "dialog-save-map-failed.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Unpacked = "unpacked";
|
const string Unpacked = "label-unpacked-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OverwriteMapFailedTitle = "overwrite-map-failed-title";
|
const string OverwriteMapFailedTitle = "dialog-overwrite-map-failed.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OverwriteMapFailedPrompt = "overwrite-map-failed-prompt";
|
const string OverwriteMapFailedPrompt = "dialog-overwrite-map-failed.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SaveMapFailedConfirm = "overwrite-map-failed-confirm";
|
const string SaveMapFailedConfirm = "dialog-overwrite-map-failed.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OverwriteMapOutsideEditTitle = "overwrite-map-outside-edit-title";
|
const string OverwriteMapOutsideEditTitle = "dialog-overwrite-map-outside-edit.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OverwriteMapOutsideEditPrompt = "overwrite-map-outside-edit-prompt";
|
const string OverwriteMapOutsideEditPrompt = "dialog-overwrite-map-outside-edit.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SaveMapMapOutsideConfirm = "overwrite-map-outside-edit-confirm";
|
const string SaveMapMapOutsideConfirm = "dialog-overwrite-map-outside-edit.confirm";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public SaveMapLogic(Widget widget, ModData modData, Action<string> onSave, Action onExit,
|
public SaveMapLogic(Widget widget, ModData modData, Action<string> onSave, Action onExit,
|
||||||
|
|||||||
@@ -21,43 +21,43 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class GameSaveBrowserLogic : ChromeLogic
|
public class GameSaveBrowserLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RenameSaveTitle = "rename-save-title";
|
const string RenameSaveTitle = "dialog-rename-save.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RenameSavePrompt = "rename-save-prompt";
|
const string RenameSavePrompt = "dialog-rename-save.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RenameSaveAccept = "rename-save-accept";
|
const string RenameSaveAccept = "dialog-rename-save.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteSaveTitle = "delete-save-title";
|
const string DeleteSaveTitle = "dialog-delete-save.title";
|
||||||
|
|
||||||
[TranslationReference("save")]
|
[TranslationReference("save")]
|
||||||
const string DeleteSavePrompt = "delete-save-prompt";
|
const string DeleteSavePrompt = "dialog-delete-save.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteSaveAccept = "delete-save-accept";
|
const string DeleteSaveAccept = "dialog-delete-save.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteAllSavesTitle = "delete-all-saves-title";
|
const string DeleteAllSavesTitle = "dialog-delete-all-saves.title";
|
||||||
|
|
||||||
[TranslationReference("count")]
|
[TranslationReference("count")]
|
||||||
const string DeleteAllSavesPrompt = "delete-all-saves-prompt";
|
const string DeleteAllSavesPrompt = "dialog-delete-all-saves.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteAllSavesAccept = "delete-all-saves-accept";
|
const string DeleteAllSavesAccept = "dialog-delete-all-saves.confirm";
|
||||||
|
|
||||||
[TranslationReference("savePath")]
|
[TranslationReference("savePath")]
|
||||||
const string SaveDeletionFailed = "save-deletion-failed";
|
const string SaveDeletionFailed = "notification-save-deletion-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OverwriteSaveTitle = "overwrite-save-title";
|
const string OverwriteSaveTitle = "dialog-overwrite-save.title";
|
||||||
|
|
||||||
[TranslationReference("file")]
|
[TranslationReference("file")]
|
||||||
const string OverwriteSavePrompt = "overwrite-save-prompt";
|
const string OverwriteSavePrompt = "dialog-overwrite-save.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OverwriteSaveAccpet = "overwrite-save-accept";
|
const string OverwriteSaveAccpet = "dialog-overwrite-save.confirm";
|
||||||
|
|
||||||
readonly Widget panel;
|
readonly Widget panel;
|
||||||
readonly ScrollPanelWidget gameList;
|
readonly ScrollPanelWidget gameList;
|
||||||
|
|||||||
@@ -23,19 +23,19 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
class GameInfoLogic : ChromeLogic
|
class GameInfoLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Objectives = "objectives";
|
const string Objectives = "menu-game-info.objectives";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Briefing = "briefing";
|
const string Briefing = "menu-game-info.briefing";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Options = "options";
|
const string Options = "menu-game-info.options";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Debug = "debug";
|
const string Debug = "menu-game-info.debug";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Chat = "chat";
|
const string Chat = "menu-game-info.chat";
|
||||||
|
|
||||||
readonly World world;
|
readonly World world;
|
||||||
readonly ModData modData;
|
readonly ModData modData;
|
||||||
|
|||||||
@@ -20,13 +20,13 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
class GameInfoObjectivesLogic : ChromeLogic
|
class GameInfoObjectivesLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InProgress = "in-progress";
|
const string InProgress = "label-mission-in-progress";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Accomplished = "accomplished";
|
const string Accomplished = "label-mission-accomplished";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Failed = "failed";
|
const string Failed = "label-mission-failed";
|
||||||
|
|
||||||
readonly ContainerWidget template;
|
readonly ContainerWidget template;
|
||||||
|
|
||||||
|
|||||||
@@ -23,40 +23,40 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
class GameInfoStatsLogic : ChromeLogic
|
class GameInfoStatsLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Unmute = "unmute";
|
const string Unmute = "label-unmute-player";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Mute = "mute";
|
const string Mute = "label-mute-player";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Accomplished = "accomplished";
|
const string Accomplished = "label-mission-accomplished";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Failed = "failed";
|
const string Failed = "label-mission-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InProgress = "in-progress";
|
const string InProgress = "label-mission-in-progress";
|
||||||
|
|
||||||
[TranslationReference("team")]
|
[TranslationReference("team")]
|
||||||
const string TeamNumber = "team-number";
|
const string TeamNumber = "label-team-name";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoTeam = "no-team";
|
const string NoTeam = "label-no-team";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Spectators = "spectators";
|
const string Spectators = "label-spectators";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Gone = "gone";
|
const string Gone = "label-client-state-disconnected";
|
||||||
|
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string KickTitle = "kick-title";
|
const string KickTitle = "dialog-kick.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string KickPrompt = "kick-prompt";
|
const string KickPrompt = "dialog-kick.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string KickAccept = "kick-accept";
|
const string KickAccept = "dialog-kick.confirm";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public GameInfoStatsLogic(Widget widget, ModData modData, World world, OrderManager orderManager, WorldRenderer worldRenderer, Action<bool> hideMenu)
|
public GameInfoStatsLogic(Widget widget, ModData modData, World world, OrderManager orderManager, WorldRenderer worldRenderer, Action<bool> hideMenu)
|
||||||
|
|||||||
@@ -19,16 +19,16 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class GameTimerLogic : ChromeLogic
|
public class GameTimerLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Paused = "paused";
|
const string Paused = "label-paused";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MaxSpeed = "max-speed";
|
const string MaxSpeed = "label-max-speed";
|
||||||
|
|
||||||
[TranslationReference("percentage")]
|
[TranslationReference("percentage")]
|
||||||
const string Speed = "speed";
|
const string Speed = "label-replay-speed";
|
||||||
|
|
||||||
[TranslationReference("percentage")]
|
[TranslationReference("percentage")]
|
||||||
const string Complete = "complete";
|
const string Complete = "label-replay-complete";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public GameTimerLogic(Widget widget, ModData modData, OrderManager orderManager, World world)
|
public GameTimerLogic(Widget widget, ModData modData, OrderManager orderManager, World world)
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class IngameCashCounterLogic : ChromeLogic
|
public class IngameCashCounterLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("usage", "capacity")]
|
[TranslationReference("usage", "capacity")]
|
||||||
const string SiloUsage = "silo-usage";
|
const string SiloUsage = "label-silo-usage";
|
||||||
|
|
||||||
const float DisplayFracPerFrame = .07f;
|
const float DisplayFracPerFrame = .07f;
|
||||||
const int DisplayDeltaPerFrame = 37;
|
const int DisplayDeltaPerFrame = 37;
|
||||||
|
|||||||
@@ -24,16 +24,16 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class IngameChatLogic : ChromeLogic, INotificationHandler<TextNotification>
|
public class IngameChatLogic : ChromeLogic, INotificationHandler<TextNotification>
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Team = "team";
|
const string TeamChat = "button-team-chat";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string All = "all";
|
const string GeneralChat = "button-general-chat";
|
||||||
|
|
||||||
[TranslationReference("seconds")]
|
[TranslationReference("seconds")]
|
||||||
const string ChatAvailability = "chat-availability";
|
const string ChatAvailability = "label-chat-availability";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ChatDisabled = "chat-disabled";
|
const string ChatDisabled = "label-chat-disabled";
|
||||||
|
|
||||||
readonly Ruleset modRules;
|
readonly Ruleset modRules;
|
||||||
readonly World world;
|
readonly World world;
|
||||||
@@ -70,8 +70,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
var disableTeamChat = alwaysDisabled || (world.LocalPlayer != null && !players.Any(p => p.IsAlliedWith(world.LocalPlayer)));
|
var disableTeamChat = alwaysDisabled || (world.LocalPlayer != null && !players.Any(p => p.IsAlliedWith(world.LocalPlayer)));
|
||||||
var teamChat = !disableTeamChat;
|
var teamChat = !disableTeamChat;
|
||||||
|
|
||||||
var teamMessage = modData.Translation.GetString(Team);
|
var teamMessage = modData.Translation.GetString(TeamChat);
|
||||||
var allMessage = modData.Translation.GetString(All);
|
var allMessage = modData.Translation.GetString(GeneralChat);
|
||||||
|
|
||||||
chatDisabled = modData.Translation.GetString(ChatDisabled);
|
chatDisabled = modData.Translation.GetString(ChatDisabled);
|
||||||
|
|
||||||
|
|||||||
@@ -22,100 +22,100 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class IngameMenuLogic : ChromeLogic
|
public class IngameMenuLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Leave = "leave";
|
const string Leave = "menu-ingame.leave";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AbortMission = "abort-mission";
|
const string AbortMission = "menu-ingame.abort";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LeaveMissionTitle = "leave-mission-title";
|
const string LeaveMissionTitle = "dialog-leave-mission.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LeaveMissionPrompt = "leave-mission-prompt";
|
const string LeaveMissionPrompt = "dialog-leave-mission.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LeaveMissionAccept = "leave-mission-accept";
|
const string LeaveMissionAccept = "dialog-leave-mission.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LeaveMissionCancel = "leave-mission-cancel";
|
const string LeaveMissionCancel = "dialog-leave-mission.cancel";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartButton = "restart-button";
|
const string RestartButton = "menu-ingame.restart";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartMissionTitle = "restart-mission-title";
|
const string RestartMissionTitle = "dialog-restart-mission.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartMissionPrompt = "restart-mission-prompt";
|
const string RestartMissionPrompt = "dialog-restart-mission.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartMissionAccept = "restart-mission-accept";
|
const string RestartMissionAccept = "dialog-restart-mission.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartMissionCancel = "restart-mission-cancel";
|
const string RestartMissionCancel = "dialog-restart-mission.cancel";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SurrenderButton = "surrender-button";
|
const string SurrenderButton = "menu-ingame.surrender";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SurrenderTitle = "surrender-title";
|
const string SurrenderTitle = "dialog-surrender.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SurrenderPrompt = "surrender-prompt";
|
const string SurrenderPrompt = "dialog-surrender.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SurrenderAccept = "surrender-accept";
|
const string SurrenderAccept = "dialog-surrender.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SurrenderCancel = "surrender-cancel";
|
const string SurrenderCancel = "dialog-surrender.cancel";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LoadGameButton = "load-game-button";
|
const string LoadGameButton = "menu-ingame.load-game";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SaveGameButton = "save-game-button";
|
const string SaveGameButton = "menu-ingame.save-game";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MusicButton = "music-button";
|
const string MusicButton = "menu-ingame.music";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SettingsButton = "settings-button";
|
const string SettingsButton = "menu-ingame.settings";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ReturnToMap = "return-to-map";
|
const string ReturnToMap = "menu-ingame.return-to-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Resume = "resume";
|
const string Resume = "menu-ingame.resume";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SaveMapButton = "save-map-button";
|
const string SaveMapButton = "menu-ingame.save-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ErrorMaxPlayerTitle = "error-max-player-title";
|
const string ErrorMaxPlayerTitle = "dialog-error-max-player.title";
|
||||||
|
|
||||||
[TranslationReference("players", "max")]
|
[TranslationReference("players", "max")]
|
||||||
const string ErrorMaxPlayerPrompt = "error-max-player-prompt";
|
const string ErrorMaxPlayerPrompt = "dialog-error-max-player.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ErrorMaxPlayerAccept = "error-max-player-accept";
|
const string ErrorMaxPlayerAccept = "dialog-error-max-player.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ExitMapButton = "exit-map-button";
|
const string ExitMapButton = "menu-ingame.exit-map";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ExitMapEditorTitle = "exit-map-editor-title";
|
const string ExitMapEditorTitle = "dialog-exit-map-editor.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ExitMapEditorPromptUnsaved = "exit-map-editor-prompt-unsaved";
|
const string ExitMapEditorPromptUnsaved = "dialog-exit-map-editor.prompt-unsaved";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ExitMapEditorPromptDeleted = "exit-map-editor-prompt-deleted";
|
const string ExitMapEditorPromptDeleted = "dialog-exit-map-editor.prompt-deleted";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ExitMapEditorAnywayConfirm = "exit-map-editor-confirm-anyway";
|
const string ExitMapEditorAnywayConfirm = "dialog-exit-map-editor.confirm-anyway";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ExitMapEditorConfirm = "exit-map-editor-confirm";
|
const string ExitMapEditorConfirm = "dialog-exit-map-editor.confirm";
|
||||||
|
|
||||||
readonly Widget menu;
|
readonly Widget menu;
|
||||||
readonly Widget buttonContainer;
|
readonly Widget buttonContainer;
|
||||||
|
|||||||
@@ -18,10 +18,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class IngamePowerBarLogic : ChromeLogic
|
public class IngamePowerBarLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("usage", "capacity")]
|
[TranslationReference("usage", "capacity")]
|
||||||
const string PowerUsage = "power-usage";
|
const string PowerUsage = "label-power-usage";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Infinite = "infinite-power";
|
const string Infinite = "label-infinite-power";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public IngamePowerBarLogic(Widget widget, ModData modData, World world)
|
public IngamePowerBarLogic(Widget widget, ModData modData, World world)
|
||||||
|
|||||||
@@ -18,10 +18,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class IngamePowerCounterLogic : ChromeLogic
|
public class IngamePowerCounterLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("usage", "capacity")]
|
[TranslationReference("usage", "capacity")]
|
||||||
const string PowerUsage = "power-usage";
|
const string PowerUsage = "label-power-usage";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Infinite = "infinite-power";
|
const string Infinite = "label-infinite-power";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public IngamePowerCounterLogic(Widget widget, ModData modData, World world)
|
public IngamePowerCounterLogic(Widget widget, ModData modData, World world)
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class IngameSiloBarLogic : ChromeLogic
|
public class IngameSiloBarLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("usage", "capacity")]
|
[TranslationReference("usage", "capacity")]
|
||||||
const string SiloUsage = "silo-usage";
|
const string SiloUsage = "label-silo-usage";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public IngameSiloBarLogic(Widget widget, ModData modData, World world)
|
public IngameSiloBarLogic(Widget widget, ModData modData, World world)
|
||||||
|
|||||||
@@ -24,22 +24,22 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ObserverShroudSelectorLogic : ChromeLogic
|
public class ObserverShroudSelectorLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CameraOptionAllPlayers = "camera-option-all-players";
|
const string CameraOptionAllPlayers = "options-shroud-selector.all-players";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CameraOptionDisableShroud = "camera-option-disable-shroud";
|
const string CameraOptionDisableShroud = "options-shroud-selector.disable-shroud";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CameraOptionOther = "camera-option-other";
|
const string CameraOptionOther = "options-shroud-selector.other";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Players = "players";
|
const string Players = "label-players";
|
||||||
|
|
||||||
[TranslationReference("team")]
|
[TranslationReference("team")]
|
||||||
const string TeamNumber = "team-number";
|
const string TeamNumber = "label-team-name";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoTeam = "no-team";
|
const string NoTeam = "label-no-team";
|
||||||
|
|
||||||
readonly CameraOption combined, disableShroud;
|
readonly CameraOption combined, disableShroud;
|
||||||
readonly IOrderedEnumerable<IGrouping<int, CameraOption>> teams;
|
readonly IOrderedEnumerable<IGrouping<int, CameraOption>> teams;
|
||||||
|
|||||||
@@ -28,37 +28,37 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ObserverStatsLogic : ChromeLogic
|
public class ObserverStatsLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InformationNone = "information-none";
|
const string InformationNone = "options-observer-stats.none";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Basic = "basic";
|
const string Basic = "options-observer-stats.basic";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Economy = "economy";
|
const string Economy = "options-observer-stats.economy";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Production = "production";
|
const string Production = "options-observer-stats.production";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SupportPowers = "support-powers";
|
const string SupportPowers = "options-observer-stats.support-powers";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Combat = "combat";
|
const string Combat = "options-observer-stats.combat";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Army = "army";
|
const string Army = "options-observer-stats.army";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string EarningsGraph = "earnings-graph";
|
const string EarningsGraph = "options-observer-stats.earnings-graph";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ArmyGraph = "army-graph";
|
const string ArmyGraph = "options-observer-stats.army-graph";
|
||||||
|
|
||||||
[TranslationReference("team")]
|
[TranslationReference("team")]
|
||||||
const string TeamNumber = "team-number";
|
const string TeamNumber = "label-team-name";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoTeam = "no-team";
|
const string NoTeam = "label-no-team";
|
||||||
|
|
||||||
readonly ContainerWidget basicStatsHeaders;
|
readonly ContainerWidget basicStatsHeaders;
|
||||||
readonly ContainerWidget economyStatsHeaders;
|
readonly ContainerWidget economyStatsHeaders;
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class WorldTooltipLogic : ChromeLogic
|
public class WorldTooltipLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnrevealedTerrain = "unrevealed-terrain";
|
const string UnrevealedTerrain = "label-unrevealed-terrain";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public WorldTooltipLogic(Widget widget, ModData modData, World world, TooltipContainerWidget tooltipContainer, ViewportControllerWidget viewport)
|
public WorldTooltipLogic(Widget widget, ModData modData, World world, TooltipContainerWidget tooltipContainer, ViewportControllerWidget viewport)
|
||||||
|
|||||||
@@ -24,37 +24,37 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class DownloadPackageLogic : ChromeLogic
|
public class DownloadPackageLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("title")]
|
[TranslationReference("title")]
|
||||||
const string Downloading = "downloading";
|
const string Downloading = "label-downloading";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string FetchingMirrorList = "fetching-mirror-list";
|
const string FetchingMirrorList = "label-fetching-mirror-list";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnknownHost = "unknown-host";
|
const string UnknownHost = "label-unknown-host";
|
||||||
|
|
||||||
[TranslationReference("host", "received", "suffix")]
|
[TranslationReference("host", "received", "suffix")]
|
||||||
const string DownloadingFrom = "downloading-from";
|
const string DownloadingFrom = "label-downloading-from";
|
||||||
|
|
||||||
[TranslationReference("host", "received", "total", "suffix", "progress")]
|
[TranslationReference("host", "received", "total", "suffix", "progress")]
|
||||||
const string DownloadingFromProgress = "downloading-from-progress";
|
const string DownloadingFromProgress = "label-downloading-from-progress";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string VerifyingArchive = "verifying-archive";
|
const string VerifyingArchive = "label-verifying-archive";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ArchiveValidationFailed = "archive-validation-failed";
|
const string ArchiveValidationFailed = "label-archive-validation-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Extracting = "extracting";
|
const string Extracting = "label-extracting-archive";
|
||||||
|
|
||||||
[TranslationReference("entry")]
|
[TranslationReference("entry")]
|
||||||
const string ExtractingEntry = "extracting-entry";
|
const string ExtractingEntry = "label-extracting-archive-entry";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ArchiveExtractionFailed = "archive-extraction-failed";
|
const string ArchiveExtractionFailed = "label-archive-extraction-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MirrorSelectionFailed = "mirror-selection-failed";
|
const string MirrorSelectionFailed = "label-mirror-selection-failed";
|
||||||
|
|
||||||
static readonly string[] SizeSuffixes = { "bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB" };
|
static readonly string[] SizeSuffixes = { "bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB" };
|
||||||
|
|
||||||
|
|||||||
@@ -22,61 +22,61 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class InstallFromSourceLogic : ChromeLogic
|
public class InstallFromSourceLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DetectingSources = "detecting-sources";
|
const string DetectingSources = "label-detecting-sources";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CheckingSources = "checking-sources";
|
const string CheckingSources = "label-checking-sources";
|
||||||
|
|
||||||
[TranslationReference("title")]
|
[TranslationReference("title")]
|
||||||
const string SearchingSourceFor = "searching-source-for";
|
const string SearchingSourceFor = "label-searching-source-for";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ContentPackageInstallation = "content-package-installation";
|
const string ContentPackageInstallation = "label-content-package-installation";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string GameSources = "game-sources";
|
const string GameSources = "label-game-sources";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DigitalInstalls = "digital-installs";
|
const string DigitalInstalls = "label-digital-installs";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string GameContentNotFound = "game-content-not-found";
|
const string GameContentNotFound = "label-game-content-not-found";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AlternativeContentSources = "alternative-content-sources";
|
const string AlternativeContentSources = "label-alternative-content-sources";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InstallingContent = "installing-content";
|
const string InstallingContent = "label-installing-content";
|
||||||
|
|
||||||
[TranslationReference("filename")]
|
[TranslationReference("filename")]
|
||||||
public const string CopyingFilename = "copying-filename";
|
public const string CopyingFilename = "label-copying-filename";
|
||||||
|
|
||||||
[TranslationReference("filename", "progress")]
|
[TranslationReference("filename", "progress")]
|
||||||
public const string CopyingFilenameProgress = "copying-filename-progress";
|
public const string CopyingFilenameProgress = "label-copying-filename-progress";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InstallationFailed = "installation-failed";
|
const string InstallationFailed = "label-installation-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CheckInstallLog = "check-install-log";
|
const string CheckInstallLog = "label-check-install-log";
|
||||||
|
|
||||||
[TranslationReference("filename")]
|
[TranslationReference("filename")]
|
||||||
public const string Extracing = "extracting-filename";
|
public const string Extracing = "label-extracting-filename";
|
||||||
|
|
||||||
[TranslationReference("filename", "progress")]
|
[TranslationReference("filename", "progress")]
|
||||||
public const string ExtracingProgress = "extracting-filename-progress";
|
public const string ExtracingProgress = "label-extracting-filename-progress";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
public const string Continue = "continue";
|
public const string Continue = "button-continue";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Cancel = "cancel";
|
const string Cancel = "button-cancel";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Retry = "retry";
|
const string Retry = "button-retry";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Back = "back";
|
const string Back = "button-back";
|
||||||
|
|
||||||
// Hide percentage indicators for files smaller than 25 MB
|
// Hide percentage indicators for files smaller than 25 MB
|
||||||
public const int ShowPercentageThreshold = 26214400;
|
public const int ShowPercentageThreshold = 26214400;
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ModContentLogic : ChromeLogic
|
public class ModContentLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ManualInstall = "manual-install";
|
const string ManualInstall = "button-manual-install";
|
||||||
|
|
||||||
readonly ModData modData;
|
readonly ModData modData;
|
||||||
readonly ModContent content;
|
readonly ModContent content;
|
||||||
|
|||||||
@@ -21,10 +21,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ModContentPromptLogic : ChromeLogic
|
public class ModContentPromptLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Continue = "continue";
|
const string Continue = "button-continue";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Quit = "quit";
|
const string Quit = "button-quit";
|
||||||
|
|
||||||
readonly ModContent content;
|
readonly ModContent content;
|
||||||
bool requiredContentInstalled;
|
bool requiredContentInstalled;
|
||||||
|
|||||||
@@ -22,10 +22,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
const int IntroductionVersion = 1;
|
const int IntroductionVersion = 1;
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Classic = "classic";
|
const string Classic = "options-control-scheme.classic";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Modern = "modern";
|
const string Modern = "options-control-scheme.modern";
|
||||||
|
|
||||||
readonly string classic;
|
readonly string classic;
|
||||||
readonly string modern;
|
readonly string modern;
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
class KickClientLogic : ChromeLogic
|
class KickClientLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("player")]
|
[TranslationReference("player")]
|
||||||
const string KickClient = "kick-client";
|
const string KickClient = "dialog-kick-client.prompt";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public KickClientLogic(ModData modData, Widget widget, string clientName, Action<bool> okPressed, Action cancelPressed)
|
public KickClientLogic(ModData modData, Widget widget, string clientName, Action<bool> okPressed, Action cancelPressed)
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
class KickSpectatorsLogic : ChromeLogic
|
class KickSpectatorsLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("count")]
|
[TranslationReference("count")]
|
||||||
const string KickSpectators = "kick-spectators";
|
const string KickSpectators = "dialog-kick-spectators.prompt";
|
||||||
|
|
||||||
[ObjectCreator.UseCtor]
|
[ObjectCreator.UseCtor]
|
||||||
public KickSpectatorsLogic(ModData modData, Widget widget, int clientCount, Action okPressed, Action cancelPressed)
|
public KickSpectatorsLogic(ModData modData, Widget widget, int clientCount, Action okPressed, Action cancelPressed)
|
||||||
|
|||||||
@@ -23,40 +23,40 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class LobbyLogic : ChromeLogic, INotificationHandler<TextNotification>
|
public class LobbyLogic : ChromeLogic, INotificationHandler<TextNotification>
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Add = "add";
|
const string Add = "options-slot-admin.add-bots";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Remove = "remove";
|
const string Remove = "options-slot-admin.remove-bots";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ConfigureBots = "configure-bots";
|
const string ConfigureBots = "options-slot-admin.configure-bots";
|
||||||
|
|
||||||
[TranslationReference("count")]
|
[TranslationReference("count")]
|
||||||
const string NumberTeams = "n-teams";
|
const string NumberTeams = "options-slot-admin.teams-count";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string HumanVsBots = "humans-vs-bots";
|
const string HumanVsBots = "options-slot-admin.humans-vs-bots";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string FreeForAll = "free-for-all";
|
const string FreeForAll = "options-slot-admin.free-for-all";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ConfigureTeams = "configure-teams";
|
const string ConfigureTeams = "options-slot-admin.configure-teams";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Back = "back";
|
const string Back = "button-back";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Team = "team";
|
const string TeamChat = "button-team-chat";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string All = "all";
|
const string GeneralChat = "button-general-chat";
|
||||||
|
|
||||||
[TranslationReference("seconds")]
|
[TranslationReference("seconds")]
|
||||||
const string ChatAvailability = "chat-availability";
|
const string ChatAvailability = "label-chat-availability";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ChatDisabled = "chat-disabled";
|
const string ChatDisabled = "label-chat-disabled";
|
||||||
|
|
||||||
static readonly Action DoNothing = () => { };
|
static readonly Action DoNothing = () => { };
|
||||||
|
|
||||||
@@ -454,8 +454,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
}
|
}
|
||||||
|
|
||||||
var chatMode = lobby.Get<ButtonWidget>("CHAT_MODE");
|
var chatMode = lobby.Get<ButtonWidget>("CHAT_MODE");
|
||||||
var team = modData.Translation.GetString(Team);
|
var team = modData.Translation.GetString(TeamChat);
|
||||||
var all = modData.Translation.GetString(All);
|
var all = modData.Translation.GetString(GeneralChat);
|
||||||
chatMode.GetText = () => teamChat ? team : all;
|
chatMode.GetText = () => teamChat ? team : all;
|
||||||
chatMode.OnClick = () => teamChat ^= true;
|
chatMode.OnClick = () => teamChat ^= true;
|
||||||
chatMode.IsDisabled = () => disableTeamChat || !chatEnabled;
|
chatMode.IsDisabled = () => disableTeamChat || !chatEnabled;
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class LobbyOptionsLogic : ChromeLogic
|
public class LobbyOptionsLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NotAvailable = "not-available";
|
const string NotAvailable = "label-not-available";
|
||||||
|
|
||||||
readonly ModData modData;
|
readonly ModData modData;
|
||||||
readonly ScrollPanelWidget panel;
|
readonly ScrollPanelWidget panel;
|
||||||
|
|||||||
@@ -24,19 +24,19 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public static class LobbyUtils
|
public static class LobbyUtils
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Open = "open";
|
const string Open = "options-lobby-slot.open";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Closed = "closed";
|
const string Closed = "options-lobby-slot.closed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Bots = "bots";
|
const string Bots = "options-lobby-slot.bots";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string BotsDisabled = "bots-disabled";
|
const string BotsDisabled = "options-lobby-slot.bots-disabled";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Slot = "slot";
|
const string Slot = "options-lobby-slot.slot";
|
||||||
|
|
||||||
class SlotDropDownOption
|
class SlotDropDownOption
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -20,22 +20,22 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class MapPreviewLogic : ChromeLogic
|
public class MapPreviewLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Connecting = "connecting";
|
const string Connecting = "label-connecting";
|
||||||
|
|
||||||
[TranslationReference("size")]
|
[TranslationReference("size")]
|
||||||
const string Downloading = "downloading-map";
|
const string Downloading = "label-downloading-map";
|
||||||
|
|
||||||
[TranslationReference("size", "progress")]
|
[TranslationReference("size", "progress")]
|
||||||
const string DownloadingPercentage = "downloading-map-progress";
|
const string DownloadingPercentage = "label-downloading-map-progress";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RetryInstall = "retry-install";
|
const string RetryInstall = "button-retry-install";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RetrySearch = "retry-search";
|
const string RetrySearch = "button-retry-search";
|
||||||
|
|
||||||
[TranslationReference("author")]
|
[TranslationReference("author")]
|
||||||
const string CreatedBy = "created-by";
|
const string CreatedBy = "label-created-by";
|
||||||
|
|
||||||
readonly int blinkTickLength = 10;
|
readonly int blinkTickLength = 10;
|
||||||
bool installHighlighted;
|
bool installHighlighted;
|
||||||
|
|||||||
@@ -18,13 +18,13 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class SpawnSelectorTooltipLogic : ChromeLogic
|
public class SpawnSelectorTooltipLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DisabledSpawn = "disabled-spawn";
|
const string DisabledSpawn = "label-disabled-spawn";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AvailableSpawn = "available-spawn";
|
const string AvailableSpawn = "label-available-spawn";
|
||||||
|
|
||||||
[TranslationReference("team")]
|
[TranslationReference("team")]
|
||||||
const string TeamNumber = "team-number";
|
const string TeamNumber = "label-team-name";
|
||||||
|
|
||||||
readonly CachedTransform<int, string> teamMessage;
|
readonly CachedTransform<int, string> teamMessage;
|
||||||
|
|
||||||
|
|||||||
@@ -23,13 +23,13 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class MainMenuLogic : ChromeLogic
|
public class MainMenuLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LoadingNews = "loading-news";
|
const string LoadingNews = "label-loading-news";
|
||||||
|
|
||||||
[TranslationReference("message")]
|
[TranslationReference("message")]
|
||||||
const string NewsRetrivalFailed = "news-retrival-failed";
|
const string NewsRetrivalFailed = "label-news-retrival-failed";
|
||||||
|
|
||||||
[TranslationReference("message")]
|
[TranslationReference("message")]
|
||||||
const string NewsParsingFailed = "news-parsing-failed";
|
const string NewsParsingFailed = "label-news-parsing-failed";
|
||||||
|
|
||||||
protected enum MenuType { Main, Singleplayer, Extras, MapEditor, StartupPrompts, None }
|
protected enum MenuType { Main, Singleplayer, Extras, MapEditor, StartupPrompts, None }
|
||||||
|
|
||||||
|
|||||||
@@ -19,55 +19,55 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class MapChooserLogic : ChromeLogic
|
public class MapChooserLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AllMaps = "all-maps";
|
const string AllMaps = "label-all-maps";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoMatches = "no-matches";
|
const string NoMatches = "label-no-matches";
|
||||||
|
|
||||||
[TranslationReference("players")]
|
[TranslationReference("players")]
|
||||||
const string Players = "player-players";
|
const string Players = "label-player-count";
|
||||||
|
|
||||||
[TranslationReference("author")]
|
[TranslationReference("author")]
|
||||||
const string CreatedBy = "created-by";
|
const string CreatedBy = "label-created-by";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MapSizeHuge = "map-size-huge";
|
const string MapSizeHuge = "label-map-size-huge";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MapSizeLarge = "map-size-large";
|
const string MapSizeLarge = "label-map-size-large";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MapSizeMedium = "map-size-medium";
|
const string MapSizeMedium = "label-map-size-medium";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MapSizeSmall = "map-size-small";
|
const string MapSizeSmall = "label-map-size-small";
|
||||||
|
|
||||||
[TranslationReference("map")]
|
[TranslationReference("map")]
|
||||||
const string MapDeletionFailed = "map-deletion-failed";
|
const string MapDeletionFailed = "notification-map-deletion-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteMapTitle = "delete-map-title";
|
const string DeleteMapTitle = "dialog-delete-map.title";
|
||||||
|
|
||||||
[TranslationReference("title")]
|
[TranslationReference("title")]
|
||||||
const string DeleteMapPrompt = "delete-map-prompt";
|
const string DeleteMapPrompt = "dialog-delete-map.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteMapAccept = "delete-map-accept";
|
const string DeleteMapAccept = "dialog-delete-map.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteAllMapsTitle = "delete-all-maps-title";
|
const string DeleteAllMapsTitle = "dialog-delete-all-maps.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteAllMapsPrompt = "delete-all-maps-prompt";
|
const string DeleteAllMapsPrompt = "dialog-delete-all-maps.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteAllMapsAccept = "delete-all-maps-accept";
|
const string DeleteAllMapsAccept = "dialog-delete-all-maps.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OrderMapsByPlayers = "order-maps-players";
|
const string OrderMapsByPlayers = "options-order-maps.player-count";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string OrderMapsByDate = "order-maps-date";
|
const string OrderMapsByDate = "options-order-maps.date";
|
||||||
|
|
||||||
readonly string allMaps;
|
readonly string allMaps;
|
||||||
|
|
||||||
|
|||||||
@@ -26,22 +26,22 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
enum PlayingVideo { None, Info, Briefing, GameStart }
|
enum PlayingVideo { None, Info, Briefing, GameStart }
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoVideoTitle = "no-video-title";
|
const string NoVideoTitle = "dialog-no-video.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoVideoPrompt = "no-video-prompt";
|
const string NoVideoPrompt = "dialog-no-video.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoVideoCancel = "no-video-cancel";
|
const string NoVideoCancel = "dialog-no-video.cancel";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CantPlayTitle = "cant-play-title";
|
const string CantPlayTitle = "dialog-cant-play-video.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CantPlayPrompt = "cant-play-prompt";
|
const string CantPlayPrompt = "dialog-cant-play-video.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string CantPlayCancel = "cant-play-cancel";
|
const string CantPlayCancel = "dialog-cant-play-video.cancel";
|
||||||
|
|
||||||
readonly ModData modData;
|
readonly ModData modData;
|
||||||
readonly Action onStart;
|
readonly Action onStart;
|
||||||
|
|||||||
@@ -19,10 +19,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class MusicPlayerLogic : ChromeLogic
|
public class MusicPlayerLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SoundMuted = "sound-muted";
|
const string SoundMuted = "label-sound-muted";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoSongPlaying = "no-song-playing";
|
const string NoSongPlaying = "label-no-song-playing";
|
||||||
|
|
||||||
readonly ScrollPanelWidget musicList;
|
readonly ScrollPanelWidget musicList;
|
||||||
readonly ScrollItemWidget itemTemplate;
|
readonly ScrollItemWidget itemTemplate;
|
||||||
|
|||||||
@@ -19,10 +19,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class MuteHotkeyLogic : SingleHotkeyBaseLogic
|
public class MuteHotkeyLogic : SingleHotkeyBaseLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AudioMuted = "audio-muted";
|
const string AudioMuted = "label-audio-muted";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AudioUnmuted = "audio-unmuted";
|
const string AudioUnmuted = "label-audio-unmuted";
|
||||||
|
|
||||||
readonly ModData modData;
|
readonly ModData modData;
|
||||||
|
|
||||||
|
|||||||
@@ -132,10 +132,10 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class RegisteredProfileTooltipLogic : ChromeLogic
|
public class RegisteredProfileTooltipLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LoadingPlayerProfile = "loading-player-profile";
|
const string LoadingPlayerProfile = "label-loading-player-profile";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LoadingPlayerProfileFailed = "loading-player-profile-failed";
|
const string LoadingPlayerProfileFailed = "label-loading-player-profile-failed";
|
||||||
|
|
||||||
readonly PlayerDatabase playerDatabase;
|
readonly PlayerDatabase playerDatabase;
|
||||||
PlayerProfile profile;
|
PlayerProfile profile;
|
||||||
|
|||||||
@@ -26,82 +26,82 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ReplayBrowserLogic : ChromeLogic
|
public class ReplayBrowserLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference("time")]
|
[TranslationReference("time")]
|
||||||
const string Duration = "duration";
|
const string Duration = "label-duration";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Singleplayer = "singleplayer";
|
const string Singleplayer = "options-replay-type.singleplayer";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Multiplayer = "multiplayer";
|
const string Multiplayer = "options-replay-type.multiplayer";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Today = "today";
|
const string Today = "options-replay-date.today";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LastWeek = "last-week";
|
const string LastWeek = "options-replay-date.last-week";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LastFortnight = "last-fortnight";
|
const string LastFortnight = "options-replay-date.last-fortnight";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LastMonth = "last-month";
|
const string LastMonth = "options-replay-date.last-month";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ReplayDurationVeryShort = "replay-duration-very-short";
|
const string ReplayDurationVeryShort = "options-replay-duration.very-short";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ReplayDurationShort = "replay-duration-short";
|
const string ReplayDurationShort = "options-replay-duration.short";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ReplayDurationMedium = "replay-duration-medium";
|
const string ReplayDurationMedium = "options-replay-duration.medium";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ReplayDurationLong = "replay-duration-long";
|
const string ReplayDurationLong = "options-replay-duration.long";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RenameReplayTitle = "rename-replay-title";
|
const string RenameReplayTitle = "dialog-rename-replay.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RenameReplayPrompt = "rename-replay-prompt";
|
const string RenameReplayPrompt = "dialog-rename-replay.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RenameReplayAccept = "rename-replay-accept";
|
const string RenameReplayAccept = "dialog-rename-replay.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteReplayTitle = "delete-replay-title";
|
const string DeleteReplayTitle = "dialog-delete-replay.title";
|
||||||
|
|
||||||
[TranslationReference("replay")]
|
[TranslationReference("replay")]
|
||||||
const string DeleteReplayPrompt = "delete-replay-prompt";
|
const string DeleteReplayPrompt = "dialog-delete-replay.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteReplayAccept = "delete-replay-accept";
|
const string DeleteReplayAccept = "dialog-delete-replay.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteAllReplaysTitle = "delete-all-replays-title";
|
const string DeleteAllReplaysTitle = "dialog-delete-all-replays.title";
|
||||||
|
|
||||||
[TranslationReference("count")]
|
[TranslationReference("count")]
|
||||||
const string DeleteAllReplaysPrompt = "delete-all-replays-prompt";
|
const string DeleteAllReplaysPrompt = "dialog-delete-all-replays.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string DeleteAllReplaysAccept = "delete-all-replays-accept";
|
const string DeleteAllReplaysAccept = "dialog-delete-all-replays.confirm";
|
||||||
|
|
||||||
[TranslationReference("file")]
|
[TranslationReference("file")]
|
||||||
const string ReplayDeletionFailed = "replay-deletion-failed";
|
const string ReplayDeletionFailed = "notification-replay-deletion-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Players = "players";
|
const string Players = "label-players";
|
||||||
|
|
||||||
[TranslationReference("team")]
|
[TranslationReference("team")]
|
||||||
const string TeamNumber = "team-number";
|
const string TeamNumber = "label-team-name";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoTeam = "no-team";
|
const string NoTeam = "label-no-team";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Victory = "victory";
|
const string Victory = "options-winstate.victory";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Defeat = "defeat";
|
const string Defeat = "options-winstate.defeat";
|
||||||
|
|
||||||
static Filter filter = new Filter();
|
static Filter filter = new Filter();
|
||||||
|
|
||||||
|
|||||||
@@ -18,28 +18,28 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public static class ReplayUtils
|
public static class ReplayUtils
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string IncompatibleReplayTitle = "incompatible-replay-title";
|
const string IncompatibleReplayTitle = "dialog-incompatible-replay.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string IncompatibleReplayPrompt = "incompatible-replay-prompt";
|
const string IncompatibleReplayPrompt = "dialog-incompatible-replay.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string IncompatibleReplayAccept = "incompatible-replay-accept";
|
const string IncompatibleReplayAccept = "dialog-incompatible-replay.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnknownVersion = "incompatible-replay-unknown-version";
|
const string UnknownVersion = "dialog-incompatible-replay.prompt-unknown-version";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnknownMod = "incompatible-replay-unknown-mod";
|
const string UnknownMod = "dialog-incompatible-replay.prompt-unknown-mod";
|
||||||
|
|
||||||
[TranslationReference("mod")]
|
[TranslationReference("mod")]
|
||||||
const string UnvailableMod = "incompatible-replay-unavailable-mod";
|
const string UnvailableMod = "dialog-incompatible-replay.prompt-unavailable-mod";
|
||||||
|
|
||||||
[TranslationReference("version")]
|
[TranslationReference("version")]
|
||||||
const string IncompatibleVersion = "incompatible-replay-incompatible-version";
|
const string IncompatibleVersion = "dialog-incompatible-replay.prompt-incompatible-version";
|
||||||
|
|
||||||
[TranslationReference("map")]
|
[TranslationReference("map")]
|
||||||
const string UnvailableMap = "incompatible-replay-unavailable-map";
|
const string UnvailableMap = "dialog-incompatible-replay.prompt-unavailable-map";
|
||||||
|
|
||||||
static readonly Action DoNothing = () => { };
|
static readonly Action DoNothing = () => { };
|
||||||
|
|
||||||
|
|||||||
@@ -20,37 +20,37 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ServerCreationLogic : ChromeLogic
|
public class ServerCreationLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InternetServerNatA = "internet-server-nat-A";
|
const string InternetServerNatA = "label-internet-server-nat-A";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InternetServerNatBenabled = "internet-server-nat-B-enabled";
|
const string InternetServerNatBenabled = "label-internet-server-nat-B-enabled";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InternetServerNatBnotSupported = "internet-server-nat-B-not-supported";
|
const string InternetServerNatBnotSupported = "label-internet-server-nat-B-not-supported";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InternetServerNatBdisabled = "internet-server-nat-B-disabled";
|
const string InternetServerNatBdisabled = "label-internet-server-nat-B-disabled";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string InternetServerNatC = "internet-server-nat-C";
|
const string InternetServerNatC = "label-internet-server-nat-C";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LocalServer = "local-server";
|
const string LocalServer = "label-local-server";
|
||||||
|
|
||||||
[TranslationReference("port")]
|
[TranslationReference("port")]
|
||||||
const string ServerCreationFailedPrompt = "server-creation-failed-prompt";
|
const string ServerCreationFailedPrompt = "dialog-server-creation-failed.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ServerCreationFailedPortUsed = "server-creation-failed-port-used";
|
const string ServerCreationFailedPortUsed = "dialog-server-creation-failed.prompt-port-used";
|
||||||
|
|
||||||
[TranslationReference("message", "code")]
|
[TranslationReference("message", "code")]
|
||||||
const string ServerCreationFailedError = "server-creation-failed-error";
|
const string ServerCreationFailedError = "dialog-server-creation-failed.prompt-error";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ServerCreationFailedTitle = "server-creation-failed-title";
|
const string ServerCreationFailedTitle = "dialog-server-creation-failed.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ServerCreationFailedCancel = "server-creation-failed-cancel";
|
const string ServerCreationFailedCancel = "dialog-server-creation-failed.cancel";
|
||||||
|
|
||||||
readonly Widget panel;
|
readonly Widget panel;
|
||||||
readonly ModData modData;
|
readonly ModData modData;
|
||||||
|
|||||||
@@ -26,67 +26,67 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class ServerListLogic : ChromeLogic
|
public class ServerListLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SearchStatusFailed = "search-status-failed";
|
const string SearchStatusFailed = "label-search-status-failed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SearchStatusNoGames = "search-status-no-games";
|
const string SearchStatusNoGames = "label-search-status-no-games";
|
||||||
|
|
||||||
[TranslationReference("players")]
|
[TranslationReference("players")]
|
||||||
const string PlayersOnline = "players-online";
|
const string PlayersOnline = "label-players-online-count";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoServerSelected = "no-server-selected";
|
const string NoServerSelected = "label-no-server-selected";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MapStatusSearching = "map-status-searching";
|
const string MapStatusSearching = "label-map-status-searching";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string MapClassificationUnknown = "map-classification-unknown";
|
const string MapClassificationUnknown = "label-map-classification-unknown";
|
||||||
|
|
||||||
[TranslationReference("players")]
|
[TranslationReference("players")]
|
||||||
const string PlayersLabel = "players-label";
|
const string PlayersLabel = "label-players-count";
|
||||||
|
|
||||||
[TranslationReference("bots")]
|
[TranslationReference("bots")]
|
||||||
const string BotsLabel = "bots-label";
|
const string BotsLabel = "label-bots-count";
|
||||||
|
|
||||||
[TranslationReference("spectators")]
|
[TranslationReference("spectators")]
|
||||||
const string SpectatorsLabel = "spectators-label";
|
const string SpectatorsLabel = "label-spectators-count";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Players = "players";
|
const string Players = "label-players";
|
||||||
|
|
||||||
[TranslationReference("team")]
|
[TranslationReference("team")]
|
||||||
const string TeamNumber = "team-number";
|
const string TeamNumber = "label-team-name";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string NoTeam = "no-team";
|
const string NoTeam = "label-no-team";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Spectators = "spectators";
|
const string Spectators = "label-spectators";
|
||||||
|
|
||||||
[TranslationReference("players")]
|
[TranslationReference("players")]
|
||||||
const string OtherPlayers = "n-other-players";
|
const string OtherPlayers = "label-other-players-count";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Playing = "playing";
|
const string Playing = "label-playing";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Waiting = "waiting";
|
const string Waiting = "label-waiting";
|
||||||
|
|
||||||
[TranslationReference("minutes")]
|
[TranslationReference("minutes")]
|
||||||
const string InProgress = "in-progress-for";
|
const string InProgress = "label-in-progress-for";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string PasswordProtected = "password-protected";
|
const string PasswordProtected = "label-password-protected";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string WaitingForPlayers = "waiting-for-players";
|
const string WaitingForPlayers = "label-waiting-for-players";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ServerShuttingDown = "server-shutting-down";
|
const string ServerShuttingDown = "label-server-shutting-down";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string UnknownServerState = "unknown-server-state";
|
const string UnknownServerState = "label-unknown-server-state";
|
||||||
|
|
||||||
readonly string noServerSelected;
|
readonly string noServerSelected;
|
||||||
readonly string mapStatusSearching;
|
readonly string mapStatusSearching;
|
||||||
|
|||||||
@@ -23,46 +23,46 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class DisplaySettingsLogic : ChromeLogic
|
public class DisplaySettingsLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Close = "close";
|
const string Close = "options-camera.close";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Medium = "medium";
|
const string Medium = "options-camera.medium";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Far = "far";
|
const string Far = "options-camera.far";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Furthest = "furthest";
|
const string Furthest = "options-camera.furthest";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Windowed = "windowed";
|
const string Windowed = "options-display-mode.windowed";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string LegacyFullscreen = "legacy-fullscreen";
|
const string LegacyFullscreen = "options-display-mode.legacy-fullscreen";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Fullscreen = "fullscreen";
|
const string Fullscreen = "options-display-mode.fullscreen";
|
||||||
|
|
||||||
[TranslationReference("number")]
|
[TranslationReference("number")]
|
||||||
const string Display = "display";
|
const string Display = "label-video-display-index";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Standard = "standard";
|
const string Standard = "options-status-bars.standard";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ShowOnDamage = "show-on-damage";
|
const string ShowOnDamage = "options-status-bars.show-on-damage";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string AlwaysShow = "always-show";
|
const string AlwaysShow = "options-status-bars.always-show";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Automatic = "automatic";
|
const string Automatic = "options-target-lines.automatic";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Manual = "manual";
|
const string Manual = "options-target-lines.manual";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Disabled = "disabled";
|
const string Disabled = "options-target-lines.disabled";
|
||||||
|
|
||||||
static readonly int OriginalVideoDisplay;
|
static readonly int OriginalVideoDisplay;
|
||||||
static readonly WindowMode OriginalGraphicsMode;
|
static readonly WindowMode OriginalGraphicsMode;
|
||||||
|
|||||||
@@ -18,37 +18,37 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class InputSettingsLogic : ChromeLogic
|
public class InputSettingsLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Classic = "classic";
|
const string Classic = "options-control-scheme.classic";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Modern = "modern";
|
const string Modern = "options-control-scheme.modern";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Disabled = "disabled";
|
const string Disabled = "options-mouse-scroll-type.disabled";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Standard = "standard";
|
const string Standard = "options-mouse-scroll-type.standard";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Inverted = "inverted";
|
const string Inverted = "options-mouse-scroll-type.inverted";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Joystick = "joystick";
|
const string Joystick = "options-mouse-scroll-type.joystick";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Alt = "alt";
|
const string Alt = "options-zoom-modifier.alt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Ctrl = "ctrl";
|
const string Ctrl = "options-zoom-modifier.ctrl";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Meta = "meta";
|
const string Meta = "options-zoom-modifier.meta";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string Shift = "shift";
|
const string Shift = "options-zoom-modifier.shift";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string None = "none";
|
const string None = "options-zoom-modifier.none";
|
||||||
|
|
||||||
static InputSettingsLogic() { }
|
static InputSettingsLogic() { }
|
||||||
|
|
||||||
|
|||||||
@@ -20,37 +20,37 @@ namespace OpenRA.Mods.Common.Widgets.Logic
|
|||||||
public class SettingsLogic : ChromeLogic
|
public class SettingsLogic : ChromeLogic
|
||||||
{
|
{
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SettingsSaveTitle = "settings-save-title";
|
const string SettingsSaveTitle = "dialog-settings-save.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SettingsSavePrompt = "settings-save-prompt";
|
const string SettingsSavePrompt = "dialog-settings-save.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string SettingsSaveCancel = "settings-save-cancel";
|
const string SettingsSaveCancel = "dialog-settings-save.cancel";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartTitle = "restart-title";
|
const string RestartTitle = "dialog-settings-restart.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartPrompt = "restart-prompt";
|
const string RestartPrompt = "dialog-settings-restart.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartAccept = "restart-accept";
|
const string RestartAccept = "dialog-settings-restart.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string RestartCancel = "restart-cancel";
|
const string RestartCancel = "dialog-settings-restart.cancel";
|
||||||
|
|
||||||
[TranslationReference("panel")]
|
[TranslationReference("panel")]
|
||||||
const string ResetTitle = "reset-title";
|
const string ResetTitle = "dialog-settings-reset.title";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ResetPrompt = "reset-prompt";
|
const string ResetPrompt = "dialog-settings-reset.prompt";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ResetAccept = "reset-accept";
|
const string ResetAccept = "dialog-settings-reset.confirm";
|
||||||
|
|
||||||
[TranslationReference]
|
[TranslationReference]
|
||||||
const string ResetCancel = "reset-cancel";
|
const string ResetCancel = "dialog-settings-reset.cancel";
|
||||||
|
|
||||||
readonly Dictionary<string, Func<bool>> leavePanelActions = new Dictionary<string, Func<bool>>();
|
readonly Dictionary<string, Func<bool>> leavePanelActions = new Dictionary<string, Func<bool>>();
|
||||||
readonly Dictionary<string, Action> resetPanelActions = new Dictionary<string, Action>();
|
readonly Dictionary<string, Action> resetPanelActions = new Dictionary<string, Action>();
|
||||||
|
|||||||
@@ -1,22 +1,24 @@
|
|||||||
## Player
|
## Player
|
||||||
low = Low
|
options-tech-level =
|
||||||
medium = Medium
|
.low = Low
|
||||||
no-powers = No Powers
|
.medium = Medium
|
||||||
unrestricted = Unrestricted
|
.no-powers = No Powers
|
||||||
|
.unrestricted = Unrestricted
|
||||||
|
|
||||||
redeployable-mcvs =
|
checkbox-redeployable-mcvs =
|
||||||
.label = Redeployable MCVs
|
.label = Redeployable MCVs
|
||||||
.description = Allow undeploying Construction Yard
|
.description = Allow undeploying Construction Yard
|
||||||
|
|
||||||
stealth-deliveries =
|
checkbox-stealth-deliveries =
|
||||||
.label = Stealth Deliveries
|
.label = Stealth Deliveries
|
||||||
.description = Nod's delivery plane is cloaked
|
.description = Nod's delivery plane is cloaked
|
||||||
|
|
||||||
## World
|
## World
|
||||||
mcv-only = MCV Only
|
options-starting-units =
|
||||||
light-support = Light Support
|
.mcv-only = MCV Only
|
||||||
heavy-support = Heavy Support
|
.light-support = Light Support
|
||||||
|
.heavy-support = Heavy Support
|
||||||
|
|
||||||
map-creeps =
|
dropdown-map-creeps =
|
||||||
.label = Creep Actors
|
.label = Creep Actors
|
||||||
.description = Hostile forces spawn on the battlefield
|
.description = Hostile forces spawn on the battlefield
|
||||||
|
|||||||
@@ -256,27 +256,27 @@ GameSpeeds:
|
|||||||
DefaultSpeed: default
|
DefaultSpeed: default
|
||||||
Speeds:
|
Speeds:
|
||||||
slowest:
|
slowest:
|
||||||
Name: slowest
|
Name: options-game-speed.slowest
|
||||||
Timestep: 80
|
Timestep: 80
|
||||||
OrderLatency: 2
|
OrderLatency: 2
|
||||||
slower:
|
slower:
|
||||||
Name: slower
|
Name: options-game-speed.slower
|
||||||
Timestep: 50
|
Timestep: 50
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
default:
|
default:
|
||||||
Name: normal
|
Name: options-game-speed.normal
|
||||||
Timestep: 40
|
Timestep: 40
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
fast:
|
fast:
|
||||||
Name: fast
|
Name: options-game-speed.fast
|
||||||
Timestep: 35
|
Timestep: 35
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
faster:
|
faster:
|
||||||
Name: faster
|
Name: options-game-speed.faster
|
||||||
Timestep: 30
|
Timestep: 30
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
fastest:
|
fastest:
|
||||||
Name: fastest
|
Name: options-game-speed.fastest
|
||||||
Timestep: 20
|
Timestep: 20
|
||||||
OrderLatency: 6
|
OrderLatency: 6
|
||||||
|
|
||||||
|
|||||||
@@ -42,15 +42,15 @@ Player:
|
|||||||
FogCheckboxDisplayOrder: 3
|
FogCheckboxDisplayOrder: 3
|
||||||
LobbyPrerequisiteCheckbox@GLOBALFACTUNDEPLOY:
|
LobbyPrerequisiteCheckbox@GLOBALFACTUNDEPLOY:
|
||||||
ID: factundeploy
|
ID: factundeploy
|
||||||
Label: redeployable-mcvs.label
|
Label: checkbox-redeployable-mcvs.label
|
||||||
Description: redeployable-mcvs.description
|
Description: checkbox-redeployable-mcvs.description
|
||||||
Enabled: True
|
Enabled: True
|
||||||
DisplayOrder: 7
|
DisplayOrder: 7
|
||||||
Prerequisites: global-factundeploy
|
Prerequisites: global-factundeploy
|
||||||
LobbyPrerequisiteCheckbox@GLOBALC17STEALTH:
|
LobbyPrerequisiteCheckbox@GLOBALC17STEALTH:
|
||||||
ID: C17-Stealth
|
ID: C17-Stealth
|
||||||
Label: stealth-deliveries.label
|
Label: checkbox-stealth-deliveries.label
|
||||||
Description: stealth-deliveries.description
|
Description: checkbox-stealth-deliveries.description
|
||||||
Enabled: False
|
Enabled: False
|
||||||
DisplayOrder: 8
|
DisplayOrder: 8
|
||||||
Prerequisites: global-C17-stealth
|
Prerequisites: global-C17-stealth
|
||||||
@@ -58,19 +58,19 @@ Player:
|
|||||||
FrozenActorLayer:
|
FrozenActorLayer:
|
||||||
PlaceBeacon:
|
PlaceBeacon:
|
||||||
ProvidesTechPrerequisite@low:
|
ProvidesTechPrerequisite@low:
|
||||||
Name: low
|
Name: options-tech-level.low
|
||||||
Prerequisites: techlevel.low
|
Prerequisites: techlevel.low
|
||||||
Id: low
|
Id: low
|
||||||
ProvidesTechPrerequisite@medium:
|
ProvidesTechPrerequisite@medium:
|
||||||
Name: medium
|
Name: options-tech-level.medium
|
||||||
Prerequisites: techlevel.low, techlevel.medium
|
Prerequisites: techlevel.low, techlevel.medium
|
||||||
Id: medium
|
Id: medium
|
||||||
ProvidesTechPrerequisite@nosuper:
|
ProvidesTechPrerequisite@nosuper:
|
||||||
Name: no-powers
|
Name: options-tech-level.no-powers
|
||||||
Prerequisites: techlevel.low, techlevel.medium, techlevel.high
|
Prerequisites: techlevel.low, techlevel.medium, techlevel.high
|
||||||
Id: nopowers
|
Id: nopowers
|
||||||
ProvidesTechPrerequisite@all:
|
ProvidesTechPrerequisite@all:
|
||||||
Name: unrestricted
|
Name: options-tech-level.unrestricted
|
||||||
Prerequisites: techlevel.low, techlevel.medium, techlevel.high, techlevel.superweapons
|
Prerequisites: techlevel.low, techlevel.medium, techlevel.high, techlevel.superweapons
|
||||||
Id: unrestricted
|
Id: unrestricted
|
||||||
GrantConditionOnPrerequisiteManager:
|
GrantConditionOnPrerequisiteManager:
|
||||||
|
|||||||
@@ -208,42 +208,42 @@ World:
|
|||||||
CreateMapPlayers:
|
CreateMapPlayers:
|
||||||
StartingUnits@mcvonly:
|
StartingUnits@mcvonly:
|
||||||
Class: none
|
Class: none
|
||||||
ClassName: mcv-only
|
ClassName: options-starting-units.mcv-only
|
||||||
Factions: gdi, nod
|
Factions: gdi, nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
StartingUnits@defaultgdia:
|
StartingUnits@defaultgdia:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light-support
|
ClassName: options-starting-units.light-support
|
||||||
Factions: gdi
|
Factions: gdi
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e1,e1,e3,e3,jeep
|
SupportActors: e1,e1,e1,e1,e1,e3,e3,jeep
|
||||||
StartingUnits@defaultnoda:
|
StartingUnits@defaultnoda:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light-support
|
ClassName: options-starting-units.light-support
|
||||||
Factions: nod
|
Factions: nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e1,e1,e1,e3,e3,bggy
|
SupportActors: e1,e1,e1,e1,e1,e1,e3,e3,bggy
|
||||||
StartingUnits@heavynoda:
|
StartingUnits@heavynoda:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: nod
|
Factions: nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e1,e3,e3,ltnk,ltnk,ftnk
|
SupportActors: e1,e1,e1,e1,e3,e3,ltnk,ltnk,ftnk
|
||||||
StartingUnits@heavynodb:
|
StartingUnits@heavynodb:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: nod
|
Factions: nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e1,e1,e3,e3,e3,ftnk,ftnk
|
SupportActors: e1,e1,e1,e1,e1,e3,e3,e3,ftnk,ftnk
|
||||||
StartingUnits@heavygdia:
|
StartingUnits@heavygdia:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: gdi
|
Factions: gdi
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e1,e3,e3,jeep,mtnk,mtnk
|
SupportActors: e1,e1,e1,e1,e3,e3,jeep,mtnk,mtnk
|
||||||
StartingUnits@heavygdib:
|
StartingUnits@heavygdib:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: gdi
|
Factions: gdi
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e1,e1,e2,e2,e2,e3,e3,apc,mtnk
|
SupportActors: e1,e1,e1,e1,e1,e2,e2,e2,e3,e3,apc,mtnk
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -1,18 +1,20 @@
|
|||||||
## Player
|
## Player
|
||||||
low = Low
|
options-tech-level =
|
||||||
medium = Medium
|
.low = Low
|
||||||
no-powers = No Powers
|
.medium = Medium
|
||||||
unrestricted = Unrestricted
|
.no-powers = No Powers
|
||||||
|
.unrestricted = Unrestricted
|
||||||
|
|
||||||
automatic-concrete =
|
checkbox-automatic-concrete =
|
||||||
.label = Automatic Concrete
|
.label = Automatic Concrete
|
||||||
.description = Concrete foundations are automatically created beneath buildings
|
.description = Concrete foundations are automatically created beneath buildings
|
||||||
|
|
||||||
## World
|
## World
|
||||||
map-worms =
|
dropdown-map-worms =
|
||||||
.label = Worms
|
.label = Worms
|
||||||
.description = Worms roam the map and devour unprepared forces
|
.description = Worms roam the map and devour unprepared forces
|
||||||
|
|
||||||
mcv-only = MCV Only
|
options-starting-units =
|
||||||
light-support = Light Support
|
.mcv-only = MCV Only
|
||||||
heavy-support = Heavy Support
|
.light-support = Light Support
|
||||||
|
.heavy-support = Heavy Support
|
||||||
|
|||||||
@@ -232,27 +232,27 @@ GameSpeeds:
|
|||||||
DefaultSpeed: default
|
DefaultSpeed: default
|
||||||
Speeds:
|
Speeds:
|
||||||
slowest:
|
slowest:
|
||||||
Name: slowest
|
Name: options-game-speed.slowest
|
||||||
Timestep: 80
|
Timestep: 80
|
||||||
OrderLatency: 2
|
OrderLatency: 2
|
||||||
slower:
|
slower:
|
||||||
Name: slower
|
Name: options-game-speed.slower
|
||||||
Timestep: 50
|
Timestep: 50
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
default:
|
default:
|
||||||
Name: normal
|
Name: options-game-speed.normal
|
||||||
Timestep: 40
|
Timestep: 40
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
fast:
|
fast:
|
||||||
Name: fast
|
Name: options-game-speed.fast
|
||||||
Timestep: 35
|
Timestep: 35
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
faster:
|
faster:
|
||||||
Name: faster
|
Name: options-game-speed.faster
|
||||||
Timestep: 30
|
Timestep: 30
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
fastest:
|
fastest:
|
||||||
Name: fastest
|
Name: options-game-speed.fastest
|
||||||
Timestep: 20
|
Timestep: 20
|
||||||
OrderLatency: 6
|
OrderLatency: 6
|
||||||
|
|
||||||
|
|||||||
@@ -126,8 +126,8 @@ Player:
|
|||||||
FogCheckboxDisplayOrder: 3
|
FogCheckboxDisplayOrder: 3
|
||||||
LobbyPrerequisiteCheckbox@AUTOCONCRETE:
|
LobbyPrerequisiteCheckbox@AUTOCONCRETE:
|
||||||
ID: autoconcrete
|
ID: autoconcrete
|
||||||
Label: automatic-concrete.label
|
Label: checkbox-automatic-concrete.label
|
||||||
Description: automatic-concrete.description
|
Description: checkbox-automatic-concrete.description
|
||||||
Enabled: False
|
Enabled: False
|
||||||
DisplayOrder: 7
|
DisplayOrder: 7
|
||||||
Prerequisites: global-auto-concrete
|
Prerequisites: global-auto-concrete
|
||||||
@@ -158,19 +158,19 @@ Player:
|
|||||||
Prerequisite: player.smuggler
|
Prerequisite: player.smuggler
|
||||||
Factions: smuggler
|
Factions: smuggler
|
||||||
ProvidesTechPrerequisite@low:
|
ProvidesTechPrerequisite@low:
|
||||||
Name: low
|
Name: options-tech-level.low
|
||||||
Prerequisites: techlevel.low
|
Prerequisites: techlevel.low
|
||||||
Id: low
|
Id: low
|
||||||
ProvidesTechPrerequisite@medium:
|
ProvidesTechPrerequisite@medium:
|
||||||
Name: medium
|
Name: options-tech-level.medium
|
||||||
Prerequisites: techlevel.low, techlevel.medium
|
Prerequisites: techlevel.low, techlevel.medium
|
||||||
Id: medium
|
Id: medium
|
||||||
ProvidesTechPrerequisite@nosuper:
|
ProvidesTechPrerequisite@nosuper:
|
||||||
Name: no-powers
|
Name: options-tech-level.no-powers
|
||||||
Prerequisites: techlevel.low, techlevel.medium, techlevel.high
|
Prerequisites: techlevel.low, techlevel.medium, techlevel.high
|
||||||
Id: nopowers
|
Id: nopowers
|
||||||
ProvidesTechPrerequisite@all:
|
ProvidesTechPrerequisite@all:
|
||||||
Name: unrestricted
|
Name: options-tech-level.unrestricted
|
||||||
Prerequisites: techlevel.low, techlevel.medium, techlevel.high, techlevel.superweapons
|
Prerequisites: techlevel.low, techlevel.medium, techlevel.high, techlevel.superweapons
|
||||||
Id: unrestricted
|
Id: unrestricted
|
||||||
EnemyWatcher:
|
EnemyWatcher:
|
||||||
|
|||||||
@@ -157,8 +157,8 @@ World:
|
|||||||
Type: SandCrater
|
Type: SandCrater
|
||||||
Sequence: sandcraters
|
Sequence: sandcraters
|
||||||
MapCreeps:
|
MapCreeps:
|
||||||
CheckboxLabel: map-worms.label
|
CheckboxLabel: dropdown-map-worms.label
|
||||||
CheckboxDescription: map-worms.description
|
CheckboxDescription: dropdown-map-worms.description
|
||||||
CheckboxDisplayOrder: 5
|
CheckboxDisplayOrder: 5
|
||||||
SpawnMapActors:
|
SpawnMapActors:
|
||||||
MapBuildRadius:
|
MapBuildRadius:
|
||||||
@@ -173,12 +173,12 @@ World:
|
|||||||
SeparateTeamSpawnsCheckboxDisplayOrder: 6
|
SeparateTeamSpawnsCheckboxDisplayOrder: 6
|
||||||
StartingUnits@mcv:
|
StartingUnits@mcv:
|
||||||
Class: none
|
Class: none
|
||||||
ClassName: mcv-only
|
ClassName: options-starting-units.mcv-only
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
Factions: atreides, ordos, harkonnen
|
Factions: atreides, ordos, harkonnen
|
||||||
StartingUnits@lightatreides:
|
StartingUnits@lightatreides:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light-support
|
ClassName: options-starting-units.light-support
|
||||||
Factions: atreides
|
Factions: atreides
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: light_inf, light_inf, light_inf, trooper, grenadier, trike, quad
|
SupportActors: light_inf, light_inf, light_inf, trooper, grenadier, trike, quad
|
||||||
@@ -186,7 +186,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@lightharkonnen:
|
StartingUnits@lightharkonnen:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light-support
|
ClassName: options-starting-units.light-support
|
||||||
Factions: harkonnen
|
Factions: harkonnen
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: light_inf, light_inf, light_inf, trooper, trooper, trike, quad
|
SupportActors: light_inf, light_inf, light_inf, trooper, trooper, trike, quad
|
||||||
@@ -194,7 +194,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@lightordos:
|
StartingUnits@lightordos:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light-support
|
ClassName: options-starting-units.light-support
|
||||||
Factions: ordos
|
Factions: ordos
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: light_inf, light_inf, light_inf, trooper, engineer, raider, quad
|
SupportActors: light_inf, light_inf, light_inf, trooper, engineer, raider, quad
|
||||||
@@ -202,7 +202,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@heavyatreides:
|
StartingUnits@heavyatreides:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: atreides
|
Factions: atreides
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: light_inf, light_inf, light_inf, trooper, grenadier, trike, combat_tank_a, missile_tank
|
SupportActors: light_inf, light_inf, light_inf, trooper, grenadier, trike, combat_tank_a, missile_tank
|
||||||
@@ -210,7 +210,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@heavyharkonnen:
|
StartingUnits@heavyharkonnen:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: harkonnen
|
Factions: harkonnen
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: light_inf, light_inf, light_inf, trooper, engineer, quad, combat_tank_h, siege_tank
|
SupportActors: light_inf, light_inf, light_inf, trooper, engineer, quad, combat_tank_h, siege_tank
|
||||||
@@ -218,7 +218,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@heavyordos:
|
StartingUnits@heavyordos:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: ordos
|
Factions: ordos
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: light_inf, light_inf, light_inf, trooper, engineer, raider, combat_tank_o, missile_tank
|
SupportActors: light_inf, light_inf, light_inf, trooper, engineer, raider, combat_tank_o, missile_tank
|
||||||
|
|||||||
@@ -1,23 +1,25 @@
|
|||||||
## Player
|
## Player
|
||||||
infantry-only = Infantry Only
|
options-tech-level =
|
||||||
low = Low
|
.infantry-only = Infantry Only
|
||||||
medium = Medium
|
.low = Low
|
||||||
no-superweapons = No Superweapons
|
.medium = Medium
|
||||||
unrestricted = Unrestricted
|
.no-superweapons = No Superweapons
|
||||||
|
.unrestricted = Unrestricted
|
||||||
|
|
||||||
kill-bounties =
|
checkbox-kill-bounties =
|
||||||
.label = Kill Bounties
|
.label = Kill Bounties
|
||||||
.description = Players receive cash bonuses when killing enemy units
|
.description = Players receive cash bonuses when killing enemy units
|
||||||
|
|
||||||
redeployable-mcvs =
|
checkbox-redeployable-mcvs =
|
||||||
.label = Redeployable MCVs
|
.label = Redeployable MCVs
|
||||||
.description = Allow undeploying Construction Yard
|
.description = Allow undeploying Construction Yard
|
||||||
|
|
||||||
reusable-engineers =
|
checkbox-reusable-engineers =
|
||||||
.label = Reusable Engineers
|
.label = Reusable Engineers
|
||||||
.description = Engineers remain on the battlefield after capturing a structure
|
.description = Engineers remain on the battlefield after capturing a structure
|
||||||
|
|
||||||
## World
|
## World
|
||||||
mcv-only = MCV Only
|
options-starting-units =
|
||||||
light-support = Light Support
|
.mcv-only = MCV Only
|
||||||
heavy-support = Heavy Support
|
.light-support = Light Support
|
||||||
|
.heavy-support = Heavy Support
|
||||||
|
|||||||
@@ -258,27 +258,27 @@ GameSpeeds:
|
|||||||
DefaultSpeed: default
|
DefaultSpeed: default
|
||||||
Speeds:
|
Speeds:
|
||||||
slowest:
|
slowest:
|
||||||
Name: slowest
|
Name: options-game-speed.slowest
|
||||||
Timestep: 80
|
Timestep: 80
|
||||||
OrderLatency: 2
|
OrderLatency: 2
|
||||||
slower:
|
slower:
|
||||||
Name: slower
|
Name: options-game-speed.slower
|
||||||
Timestep: 50
|
Timestep: 50
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
default:
|
default:
|
||||||
Name: normal
|
Name: options-game-speed.normal
|
||||||
Timestep: 40
|
Timestep: 40
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
fast:
|
fast:
|
||||||
Name: fast
|
Name: options-game-speed.fast
|
||||||
Timestep: 35
|
Timestep: 35
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
faster:
|
faster:
|
||||||
Name: faster
|
Name: options-game-speed.faster
|
||||||
Timestep: 30
|
Timestep: 30
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
fastest:
|
fastest:
|
||||||
Name: fastest
|
Name: options-game-speed.fastest
|
||||||
Timestep: 20
|
Timestep: 20
|
||||||
OrderLatency: 6
|
OrderLatency: 6
|
||||||
|
|
||||||
|
|||||||
@@ -125,22 +125,22 @@ Player:
|
|||||||
FogCheckboxDisplayOrder: 3
|
FogCheckboxDisplayOrder: 3
|
||||||
LobbyPrerequisiteCheckbox@GLOBALBOUNTY:
|
LobbyPrerequisiteCheckbox@GLOBALBOUNTY:
|
||||||
ID: bounty
|
ID: bounty
|
||||||
Label: kill-bounties.label
|
Label: checkbox-kill-bounties.label
|
||||||
Description: kill-bounties.description
|
Description: checkbox-kill-bounties.description
|
||||||
Enabled: False
|
Enabled: False
|
||||||
DisplayOrder: 8
|
DisplayOrder: 8
|
||||||
Prerequisites: global-bounty
|
Prerequisites: global-bounty
|
||||||
LobbyPrerequisiteCheckbox@GLOBALFACTUNDEPLOY:
|
LobbyPrerequisiteCheckbox@GLOBALFACTUNDEPLOY:
|
||||||
ID: factundeploy
|
ID: factundeploy
|
||||||
Label: redeployable-mcvs.label
|
Label: checkbox-redeployable-mcvs.label
|
||||||
Description: redeployable-mcvs.description
|
Description: checkbox-redeployable-mcvs.description
|
||||||
Enabled: True
|
Enabled: True
|
||||||
DisplayOrder: 7
|
DisplayOrder: 7
|
||||||
Prerequisites: global-factundeploy
|
Prerequisites: global-factundeploy
|
||||||
LobbyPrerequisiteCheckbox@REUSABLEENGINEERS:
|
LobbyPrerequisiteCheckbox@REUSABLEENGINEERS:
|
||||||
ID: reusable-engineers
|
ID: reusable-engineers
|
||||||
Label: reusable-engineers.label
|
Label: checkbox-reusable-engineers.label
|
||||||
Description: reusable-engineers.description
|
Description: checkbox-reusable-engineers.description
|
||||||
Enabled: False
|
Enabled: False
|
||||||
DisplayOrder: 9
|
DisplayOrder: 9
|
||||||
Prerequisites: global-reusable-engineers
|
Prerequisites: global-reusable-engineers
|
||||||
@@ -151,23 +151,23 @@ Player:
|
|||||||
PlayerStatistics:
|
PlayerStatistics:
|
||||||
PlaceBeacon:
|
PlaceBeacon:
|
||||||
ProvidesTechPrerequisite@infonly:
|
ProvidesTechPrerequisite@infonly:
|
||||||
Name: infantry-only
|
Name: options-tech-level.infantry-only
|
||||||
Prerequisites: techlevel.infonly
|
Prerequisites: techlevel.infonly
|
||||||
Id: infantryonly
|
Id: infantryonly
|
||||||
ProvidesTechPrerequisite@low:
|
ProvidesTechPrerequisite@low:
|
||||||
Name: low
|
Name: options-tech-level.low
|
||||||
Prerequisites: techlevel.infonly, techlevel.low
|
Prerequisites: techlevel.infonly, techlevel.low
|
||||||
Id: low
|
Id: low
|
||||||
ProvidesTechPrerequisite@medium:
|
ProvidesTechPrerequisite@medium:
|
||||||
Name: medium
|
Name: options-tech-level.medium
|
||||||
Prerequisites: techlevel.infonly, techlevel.low, techlevel.medium
|
Prerequisites: techlevel.infonly, techlevel.low, techlevel.medium
|
||||||
Id: medium
|
Id: medium
|
||||||
ProvidesTechPrerequisite@high:
|
ProvidesTechPrerequisite@high:
|
||||||
Name: no-superweapons
|
Name: options-tech-level.no-superweapons
|
||||||
Prerequisites: techlevel.infonly, techlevel.low, techlevel.medium, techlevel.high
|
Prerequisites: techlevel.infonly, techlevel.low, techlevel.medium, techlevel.high
|
||||||
Id: nosuperweapons
|
Id: nosuperweapons
|
||||||
ProvidesTechPrerequisite@unrestricted:
|
ProvidesTechPrerequisite@unrestricted:
|
||||||
Name: unrestricted
|
Name: options-tech-level.unrestricted
|
||||||
Prerequisites: techlevel.infonly, techlevel.low, techlevel.medium, techlevel.high, techlevel.unrestricted
|
Prerequisites: techlevel.infonly, techlevel.low, techlevel.medium, techlevel.high, techlevel.unrestricted
|
||||||
Id: unrestricted
|
Id: unrestricted
|
||||||
GrantConditionOnPrerequisiteManager:
|
GrantConditionOnPrerequisiteManager:
|
||||||
|
|||||||
@@ -228,12 +228,12 @@ World:
|
|||||||
CreateMapPlayers:
|
CreateMapPlayers:
|
||||||
StartingUnits@mcvonly:
|
StartingUnits@mcvonly:
|
||||||
Class: none
|
Class: none
|
||||||
ClassName: mcv-only
|
ClassName: options-starting-units.mcv-only
|
||||||
Factions: allies, england, france, germany, soviet, russia, ukraine
|
Factions: allies, england, france, germany, soviet, russia, ukraine
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
StartingUnits@lightallies:
|
StartingUnits@lightallies:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light-support
|
ClassName: options-starting-units.light-support
|
||||||
Factions: allies, england, france, germany
|
Factions: allies, england, france, germany
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e3,e3,jeep,1tnk
|
SupportActors: e1,e1,e1,e3,e3,jeep,1tnk
|
||||||
@@ -241,7 +241,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@lightsoviet:
|
StartingUnits@lightsoviet:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light-support
|
ClassName: options-starting-units.light-support
|
||||||
Factions: soviet, russia, ukraine
|
Factions: soviet, russia, ukraine
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e3,e3,apc,ftrk
|
SupportActors: e1,e1,e1,e3,e3,apc,ftrk
|
||||||
@@ -249,7 +249,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@heavyallies:
|
StartingUnits@heavyallies:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: allies, england, france, germany
|
Factions: allies, england, france, germany
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e3,e3,jeep,1tnk,2tnk,2tnk,2tnk
|
SupportActors: e1,e1,e1,e3,e3,jeep,1tnk,2tnk,2tnk,2tnk
|
||||||
@@ -257,7 +257,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@heavysoviet:
|
StartingUnits@heavysoviet:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy-support
|
ClassName: options-starting-units.heavy-support
|
||||||
Factions: soviet, russia, ukraine
|
Factions: soviet, russia, ukraine
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,e3,e3,apc,ftrk,3tnk,3tnk
|
SupportActors: e1,e1,e1,e3,e3,apc,ftrk,3tnk,3tnk
|
||||||
|
|||||||
@@ -1,18 +1,21 @@
|
|||||||
## Player
|
## Player
|
||||||
low = Low
|
options-tech-level =
|
||||||
medium = Medium
|
.low = Low
|
||||||
no-powers = No Powers
|
.medium = Medium
|
||||||
unrestricted = Unrestricted
|
.no-powers = No Powers
|
||||||
|
.unrestricted = Unrestricted
|
||||||
|
|
||||||
redeployable-mcvs =
|
checkbox-redeployable-mcvs =
|
||||||
.label = Redeployable MCVs
|
.label = Redeployable MCVs
|
||||||
.description = Allow undeploying Construction Yard
|
.description = Allow undeploying Construction Yard
|
||||||
|
|
||||||
## World
|
## World
|
||||||
mcv-only = MCV Only
|
options-starting-units =
|
||||||
light = Light
|
.mcv-only = MCV Only
|
||||||
heavy = Heavy
|
.light = Light
|
||||||
|
.medium = Medium
|
||||||
|
.heavy = Heavy
|
||||||
|
|
||||||
map-creeps =
|
dropdown-map-creeps =
|
||||||
.label = Creep Actors
|
.label = Creep Actors
|
||||||
.description = Hostile forces spawn on the battlefield
|
.description = Hostile forces spawn on the battlefield
|
||||||
|
|||||||
@@ -290,27 +290,27 @@ GameSpeeds:
|
|||||||
DefaultSpeed: default
|
DefaultSpeed: default
|
||||||
Speeds:
|
Speeds:
|
||||||
slowest:
|
slowest:
|
||||||
Name: slowest
|
Name: options-game-speed.slowest
|
||||||
Timestep: 80
|
Timestep: 80
|
||||||
OrderLatency: 2
|
OrderLatency: 2
|
||||||
slower:
|
slower:
|
||||||
Name: slower
|
Name: options-game-speed.slower
|
||||||
Timestep: 50
|
Timestep: 50
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
default:
|
default:
|
||||||
Name: normal
|
Name: options-game-speed.normal
|
||||||
Timestep: 40
|
Timestep: 40
|
||||||
OrderLatency: 3
|
OrderLatency: 3
|
||||||
fast:
|
fast:
|
||||||
Name: fast
|
Name: options-game-speed.fast
|
||||||
Timestep: 35
|
Timestep: 35
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
faster:
|
faster:
|
||||||
Name: faster
|
Name: options-game-speed.faster
|
||||||
Timestep: 30
|
Timestep: 30
|
||||||
OrderLatency: 4
|
OrderLatency: 4
|
||||||
fastest:
|
fastest:
|
||||||
Name: fastest
|
Name: options-game-speed.fastest
|
||||||
Timestep: 20
|
Timestep: 20
|
||||||
OrderLatency: 6
|
OrderLatency: 6
|
||||||
|
|
||||||
|
|||||||
@@ -107,8 +107,8 @@ Player:
|
|||||||
FogCheckboxDisplayOrder: 3
|
FogCheckboxDisplayOrder: 3
|
||||||
LobbyPrerequisiteCheckbox@GLOBALFACTUNDEPLOY:
|
LobbyPrerequisiteCheckbox@GLOBALFACTUNDEPLOY:
|
||||||
ID: factundeploy
|
ID: factundeploy
|
||||||
Label: redeployable-mcvs.label
|
Label: checkbox-redeployable-mcvs.label
|
||||||
Description: redeployable-mcvs.description
|
Description: checkbox-redeployable-mcvs.description
|
||||||
Enabled: True
|
Enabled: True
|
||||||
DisplayOrder: 7
|
DisplayOrder: 7
|
||||||
Prerequisites: global-factundeploy
|
Prerequisites: global-factundeploy
|
||||||
@@ -127,19 +127,19 @@ Player:
|
|||||||
ArrowSequence:
|
ArrowSequence:
|
||||||
CircleSequence:
|
CircleSequence:
|
||||||
ProvidesTechPrerequisite@low:
|
ProvidesTechPrerequisite@low:
|
||||||
Name: low
|
Name: options-tech-level.low
|
||||||
Prerequisites: techlevel.low
|
Prerequisites: techlevel.low
|
||||||
Id: low
|
Id: low
|
||||||
ProvidesTechPrerequisite@medium:
|
ProvidesTechPrerequisite@medium:
|
||||||
Name: medium
|
Name: options-tech-level.medium
|
||||||
Prerequisites: techlevel.low, techlevel.medium
|
Prerequisites: techlevel.low, techlevel.medium
|
||||||
Id: medium
|
Id: medium
|
||||||
ProvidesTechPrerequisite@nosuper:
|
ProvidesTechPrerequisite@nosuper:
|
||||||
Name: no-powers
|
Name: options-tech-level.no-powers
|
||||||
Prerequisites: techlevel.low, techlevel.medium, techlevel.high
|
Prerequisites: techlevel.low, techlevel.medium, techlevel.high
|
||||||
Id: nopowers
|
Id: nopowers
|
||||||
ProvidesTechPrerequisite@all:
|
ProvidesTechPrerequisite@all:
|
||||||
Name: unrestricted
|
Name: options-tech-level.unrestricted
|
||||||
Prerequisites: techlevel.low, techlevel.medium, techlevel.high, techlevel.superweapons
|
Prerequisites: techlevel.low, techlevel.medium, techlevel.high, techlevel.superweapons
|
||||||
Id: unrestricted
|
Id: unrestricted
|
||||||
ResourceStorageWarning:
|
ResourceStorageWarning:
|
||||||
|
|||||||
@@ -307,12 +307,12 @@ World:
|
|||||||
CreateMapPlayers:
|
CreateMapPlayers:
|
||||||
StartingUnits@MCV:
|
StartingUnits@MCV:
|
||||||
Class: none
|
Class: none
|
||||||
ClassName: mcv-only
|
ClassName: options-starting-units.mcv-only
|
||||||
Factions: gdi, nod
|
Factions: gdi, nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
StartingUnits@light.gdi:
|
StartingUnits@light.gdi:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light
|
ClassName: options-starting-units.light
|
||||||
Factions: gdi
|
Factions: gdi
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,smech
|
SupportActors: e1,e1,e1,smech
|
||||||
@@ -320,7 +320,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@light.nod:
|
StartingUnits@light.nod:
|
||||||
Class: light
|
Class: light
|
||||||
ClassName: light
|
ClassName: options-starting-units.light
|
||||||
Factions: nod
|
Factions: nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e1,bggy
|
SupportActors: e1,e1,e1,bggy
|
||||||
@@ -328,7 +328,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@med.gdi:
|
StartingUnits@med.gdi:
|
||||||
Class: medium
|
Class: medium
|
||||||
ClassName: medium
|
ClassName: options-starting-units.medium
|
||||||
Factions: gdi
|
Factions: gdi
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e2,e2,jumpjet,smech
|
SupportActors: e1,e1,e2,e2,jumpjet,smech
|
||||||
@@ -336,7 +336,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@med.nod:
|
StartingUnits@med.nod:
|
||||||
Class: medium
|
Class: medium
|
||||||
ClassName: medium
|
ClassName: options-starting-units.medium
|
||||||
Factions: nod
|
Factions: nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e3,e3,cyborg,bggy
|
SupportActors: e1,e1,e3,e3,cyborg,bggy
|
||||||
@@ -344,7 +344,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@heavy.gdi:
|
StartingUnits@heavy.gdi:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy
|
ClassName: options-starting-units.heavy
|
||||||
Factions: gdi
|
Factions: gdi
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e2,e2,jumpjet,smech,smech,mmch
|
SupportActors: e1,e1,e2,e2,jumpjet,smech,smech,mmch
|
||||||
@@ -352,7 +352,7 @@ World:
|
|||||||
OuterSupportRadius: 5
|
OuterSupportRadius: 5
|
||||||
StartingUnits@heavy.nod:
|
StartingUnits@heavy.nod:
|
||||||
Class: heavy
|
Class: heavy
|
||||||
ClassName: heavy
|
ClassName: options-starting-units.heavy
|
||||||
Factions: nod
|
Factions: nod
|
||||||
BaseActor: mcv
|
BaseActor: mcv
|
||||||
SupportActors: e1,e1,e3,e3,cyborg,bggy,bike,ttnk
|
SupportActors: e1,e1,e3,e3,cyborg,bggy,bike,ttnk
|
||||||
|
|||||||
Reference in New Issue
Block a user