Some more hard-coded text removal

This commit is contained in:
Joonas Rikkonen
2017-12-27 14:40:33 +02:00
parent 2894b74edc
commit 4f0b190371
12 changed files with 135 additions and 82 deletions
@@ -97,7 +97,7 @@ namespace Barotrauma
img.Color = order.Color;
img.CanBeFocused = false;
orderListBox.children[characterIndex].ToolTip = "Order: " + order.Name;
orderListBox.children[characterIndex].ToolTip = TextManager.Get("Order") + ": " + order.Name;
}
public bool SelectCharacterOrder(GUIComponent component, object selection)
@@ -48,22 +48,22 @@ namespace Barotrauma
innerFrame.Padding = new Vector4(10.0f, 10.0f, 10.0f, 10.0f);
var crewButton = new GUIButton(new Rectangle(0, -30, 100, 20), "Crew", "", innerFrame);
var crewButton = new GUIButton(new Rectangle(0, -30, 100, 20), TextManager.Get("Crew"), "", innerFrame);
crewButton.UserData = InfoFrameTab.Crew;
crewButton.OnClicked = SelectInfoFrameTab;
var missionButton = new GUIButton(new Rectangle(100, -30, 100, 20), "Mission", "", innerFrame);
var missionButton = new GUIButton(new Rectangle(100, -30, 100, 20), TextManager.Get("Mission"), "", innerFrame);
missionButton.UserData = InfoFrameTab.Mission;
missionButton.OnClicked = SelectInfoFrameTab;
if (GameMain.Server != null)
{
var manageButton = new GUIButton(new Rectangle(200, -30, 130, 20), "Manage players", "", innerFrame);
var manageButton = new GUIButton(new Rectangle(200, -30, 130, 20), TextManager.Get("ManagePlayers"), "", innerFrame);
manageButton.UserData = InfoFrameTab.ManagePlayers;
manageButton.OnClicked = SelectInfoFrameTab;
}
var closeButton = new GUIButton(new Rectangle(0, 0, 80, 20), "Close", Alignment.BottomCenter, "", innerFrame);
var closeButton = new GUIButton(new Rectangle(0, 0, 80, 20), TextManager.Get("Close"), Alignment.BottomCenter, "", innerFrame);
closeButton.OnClicked = ToggleInfoFrame;
}
@@ -94,16 +94,14 @@ namespace Barotrauma
{
if (Mission == null)
{
new GUITextBlock(new Rectangle(0, 0, 0, 50), "No mission", "", infoFrame, true);
new GUITextBlock(new Rectangle(0, 0, 0, 50), TextManager.Get("NoMission"), "", infoFrame, true);
return;
}
new GUITextBlock(new Rectangle(0, 0, 0, 40), Mission.Name, "", infoFrame, GUI.LargeFont);
new GUITextBlock(new Rectangle(0, 50, 0, 20), "Reward: " + Mission.Reward, "", infoFrame, true);
new GUITextBlock(new Rectangle(0, 50, 0, 20), TextManager.Get("MissionReward").Replace("[reward]", Mission.Reward.ToString()), "", infoFrame, true);
new GUITextBlock(new Rectangle(0, 70, 0, 50), Mission.Description, "", infoFrame, true);
}
public void AddToGUIUpdateList()
@@ -38,8 +38,11 @@ namespace Barotrauma
if (singleplayer)
{
string summaryText = TextManager.Get(gameOver ? "gameover" :
(progress ? "progress" : "return"));
string summaryText = TextManager.Get(gameOver ? "RoundSummaryGameOver" :
(progress ? "RoundSummaryProgress" : "RoundSummaryReturn"));
summaryText.Replace("[sub]", Submarine.MainSub.Name);
summaryText.Replace("[location]", GameMain.GameSession.StartLocation.Name);
var infoText = new GUITextBlock(new Rectangle(0, y, 0, 50), summaryText, "", innerFrame, true);
y += infoText.Rect.Height;
@@ -53,7 +56,7 @@ namespace Barotrauma
y += 30 + endText.Text.Split('\n').Length * 20;
}
new GUITextBlock(new Rectangle(0, y, 0, 20), "Crew status:", "", innerFrame, GUI.LargeFont);
new GUITextBlock(new Rectangle(0, y, 0, 20), TextManager.Get("RoundSummaryCrewStatus"), "", innerFrame, GUI.LargeFont);
y += 30;
GUIListBox listBox = new GUIListBox(new Rectangle(0,y,0,90), null, Alignment.TopLeft, "", innerFrame, true);
@@ -75,7 +78,7 @@ namespace Barotrauma
characterInfo.CreateCharacterFrame(characterFrame,
characterInfo.Job != null ? (characterInfo.Name + '\n' + "(" + characterInfo.Job.Name + ")") : characterInfo.Name, null);
string statusText = "OK";
string statusText = TextManager.Get("StatusOK");
Color statusColor = Color.DarkGreen;
Character character = characterInfo.Character;
@@ -88,12 +91,12 @@ namespace Barotrauma
{
if (character.IsUnconscious)
{
statusText = "Unconscious";
statusText = TextManager.Get("Unconscious");
statusColor = Color.DarkOrange;
}
else if (character.Health / character.MaxHealth < 0.8f)
{
statusText = "Injured";
statusText = TextManager.Get("Injured");
statusColor = Color.DarkOrange;
}
}
@@ -110,7 +113,7 @@ namespace Barotrauma
if (GameMain.GameSession.Mission != null)
{
new GUITextBlock(new Rectangle(0, y, 0, 20), "Mission: " + GameMain.GameSession.Mission.Name, "", innerFrame, GUI.LargeFont);
new GUITextBlock(new Rectangle(0, y, 0, 20), TextManager.Get("Mission") + ": " + GameMain.GameSession.Mission.Name, "", innerFrame, GUI.LargeFont);
y += 30;
new GUITextBlock(new Rectangle(0, y, innerFrame.Rect.Width - 170, 0),
@@ -124,7 +127,7 @@ namespace Barotrauma
if (GameMain.GameSession.Mission.Completed && singleplayer)
{
new GUITextBlock(new Rectangle(0, 0, 0, 30), "Reward: " + GameMain.GameSession.Mission.Reward, "", Alignment.BottomLeft, Alignment.BottomLeft, innerFrame);
new GUITextBlock(new Rectangle(0, 0, 0, 30), TextManager.Get("Reward") + ": " + GameMain.GameSession.Mission.Reward, "", Alignment.BottomLeft, Alignment.BottomLeft, innerFrame);
}
}
else
@@ -52,11 +52,11 @@ namespace Barotrauma
{
settingsFrame = new GUIFrame(new Rectangle(0, 0, 500, 500), null, Alignment.Center, "");
new GUITextBlock(new Rectangle(0, -30, 0, 30), "Settings", "", Alignment.TopCenter, Alignment.TopCenter, settingsFrame, false, GUI.LargeFont);
new GUITextBlock(new Rectangle(0, -30, 0, 30), TextManager.Get("Settings"), "", Alignment.TopCenter, Alignment.TopCenter, settingsFrame, false, GUI.LargeFont);
int x = 0, y = 10;
new GUITextBlock(new Rectangle(0, y, 20, 20), "Resolution", "", Alignment.TopLeft, Alignment.TopLeft, settingsFrame);
new GUITextBlock(new Rectangle(0, y, 20, 20), TextManager.Get("Resolution"), "", Alignment.TopLeft, Alignment.TopLeft, settingsFrame);
var resolutionDD = new GUIDropDown(new Rectangle(0, y + 20, 180, 20), "", "", settingsFrame);
resolutionDD.OnSelected = SelectResolution;
@@ -82,11 +82,11 @@ namespace Barotrauma
//fullScreenTick.OnSelected = ToggleFullScreen;
//fullScreenTick.Selected = FullScreenEnabled;
new GUITextBlock(new Rectangle(x, y, 20, 20), "Display mode", "", Alignment.TopLeft, Alignment.TopLeft, settingsFrame);
new GUITextBlock(new Rectangle(x, y, 20, 20), TextManager.Get("DisplayMode"), "", Alignment.TopLeft, Alignment.TopLeft, settingsFrame);
var displayModeDD = new GUIDropDown(new Rectangle(x, y + 20, 180, 20), "", "", settingsFrame);
displayModeDD.AddItem("Fullscreen", WindowMode.Fullscreen);
displayModeDD.AddItem("Windowed", WindowMode.Windowed);
displayModeDD.AddItem("Borderless windowed", WindowMode.BorderlessWindowed);
displayModeDD.AddItem(TextManager.Get("Fullscreen"), WindowMode.Fullscreen);
displayModeDD.AddItem(TextManager.Get("Windowed"), WindowMode.Windowed);
displayModeDD.AddItem(TextManager.Get("BorderlessWindowed"), WindowMode.BorderlessWindowed);
displayModeDD.SelectItem(GameMain.Config.WindowMode);
@@ -94,7 +94,7 @@ namespace Barotrauma
y += 70;
GUITickBox vsyncTickBox = new GUITickBox(new Rectangle(0, y, 20, 20), "Enable vertical sync", Alignment.CenterY | Alignment.Left, settingsFrame);
GUITickBox vsyncTickBox = new GUITickBox(new Rectangle(0, y, 20, 20), TextManager.Get("EnableVSync"), Alignment.CenterY | Alignment.Left, settingsFrame);
vsyncTickBox.OnSelected = (GUITickBox box) =>
{
VSyncEnabled = !VSyncEnabled;
@@ -108,13 +108,13 @@ namespace Barotrauma
y += 70;
new GUITextBlock(new Rectangle(0, y, 100, 20), "Sound volume:", "", settingsFrame);
new GUITextBlock(new Rectangle(0, y, 100, 20), TextManager.Get("SoundVolume"), "", settingsFrame);
GUIScrollBar soundScrollBar = new GUIScrollBar(new Rectangle(0, y + 20, 150, 20), "", 0.1f, settingsFrame);
soundScrollBar.BarScroll = SoundVolume;
soundScrollBar.OnMoved = ChangeSoundVolume;
soundScrollBar.Step = 0.05f;
new GUITextBlock(new Rectangle(0, y + 40, 100, 20), "Music volume:", "", settingsFrame);
new GUITextBlock(new Rectangle(0, y + 40, 100, 20), TextManager.Get("MusicVolume"), "", settingsFrame);
GUIScrollBar musicScrollBar = new GUIScrollBar(new Rectangle(0, y + 60, 150, 20), "", 0.1f, settingsFrame);
musicScrollBar.BarScroll = MusicVolume;
musicScrollBar.OnMoved = ChangeMusicVolume;
@@ -123,7 +123,7 @@ namespace Barotrauma
x = 200;
y = 10;
new GUITextBlock(new Rectangle(x, y, 20, 20), "Content package", "", Alignment.TopLeft, Alignment.TopLeft, settingsFrame);
new GUITextBlock(new Rectangle(x, y, 20, 20), TextManager.Get("ContentPackage"), "", Alignment.TopLeft, Alignment.TopLeft, settingsFrame);
var contentPackageDD = new GUIDropDown(new Rectangle(x, y + 20, 200, 20), "", "", settingsFrame);
contentPackageDD.OnSelected = SelectContentPackage;
@@ -135,7 +135,7 @@ namespace Barotrauma
}
y += 50;
new GUITextBlock(new Rectangle(x, y, 100, 20), "Controls:", "", settingsFrame);
new GUITextBlock(new Rectangle(x, y, 100, 20), TextManager.Get("Controls"), "", settingsFrame);
y += 30;
var inputNames = Enum.GetNames(typeof(InputType));
for (int i = 0; i < inputNames.Length; i++)
@@ -151,7 +151,7 @@ namespace Barotrauma
y += 20;
}
applyButton = new GUIButton(new Rectangle(0, 0, 100, 20), "Apply", Alignment.BottomRight, "", settingsFrame);
applyButton = new GUIButton(new Rectangle(0, 0, 100, 20), TextManager.Get("ApplySettingsButton"), Alignment.BottomRight, "", settingsFrame);
applyButton.OnClicked = ApplyClicked;
}
@@ -240,7 +240,7 @@ namespace Barotrauma
if (GameMain.GraphicsWidth != GameMain.Config.GraphicsWidth || GameMain.GraphicsHeight != GameMain.Config.GraphicsHeight)
{
new GUIMessageBox("Restart required", "You need to restart the game for the resolution changes to take effect.");
new GUIMessageBox(TextManager.Get("RestartRequiredLabel"), TextManager.Get("RestartRequiredText"));
}
return true;
@@ -94,24 +94,23 @@ namespace Barotrauma
editingHUD.Padding = new Vector4(10, 10, 0, 0);
editingHUD.UserData = this;
new GUITextBlock(new Rectangle(0, 0, 100, 20), "Linked submarine", "",
new GUITextBlock(new Rectangle(0, 0, 100, 20), TextManager.Get("LinkedSub"), "",
Alignment.TopLeft, Alignment.TopLeft, editingHUD, false, GUI.LargeFont);
var pathBox = new GUITextBox(new Rectangle(10, 30, 300, 20), "", editingHUD);
pathBox.Font = GUI.SmallFont;
pathBox.Text = filePath;
var reloadButton = new GUIButton(new Rectangle(320, 30, 80, 20), "Refresh", "", editingHUD);
var reloadButton = new GUIButton(new Rectangle(320, 30, 80, 20), TextManager.Get("ReloadLinkedSub"), "", editingHUD);
reloadButton.OnClicked = Reload;
reloadButton.UserData = pathBox;
reloadButton.ToolTip = "Reload the linked submarine from the specified file";
reloadButton.ToolTip = TextManager.Get("ReloadLinkedSubTooltip");
y += 20;
if (!inGame)
{
new GUITextBlock(new Rectangle(0, 0, 0, 20), "Hold space to link to a docking port",
new GUITextBlock(new Rectangle(0, 0, 0, 20), TextManager.Get("LinkLinkedSub"),
"", Alignment.TopRight, Alignment.TopRight, editingHUD, false, GUI.SmallFont);
y += 25;
@@ -125,7 +124,7 @@ namespace Barotrauma
if (!File.Exists(pathBox.Text))
{
new GUIMessageBox("Error", "Submarine file \"" + pathBox.Text + "\" not found!");
new GUIMessageBox(TextManager.Get("Error"), TextManager.Get("ReloadLinkedSubError").Replace("[file]", pathBox.Text));
pathBox.Flash(Color.Red);
pathBox.Text = filePath;
return false;
@@ -105,15 +105,13 @@ namespace Barotrauma
public static bool SaveCurrent(string filePath)
{
if (Submarine.MainSub == null)
if (MainSub == null)
{
Submarine.MainSub = new Submarine(filePath);
// return;
MainSub = new Submarine(filePath);
}
Submarine.MainSub.filePath = filePath;
return Submarine.MainSub.SaveAs(filePath);
MainSub.filePath = filePath;
return MainSub.SaveAs(filePath);
}
public void CheckForErrors()
@@ -122,7 +120,7 @@ namespace Barotrauma
if (!Hull.hullList.Any())
{
errorMsgs.Add("No hulls found in the submarine. Hulls determine the \"borders\" of an individual room and are required for water and air distribution to work correctly.");
errorMsgs.Add(TextManager.Get("NoHullsWarning"));
}
foreach (Item item in Item.ItemList)
@@ -131,25 +129,24 @@ namespace Barotrauma
if (!item.linkedTo.Any())
{
errorMsgs.Add("The submarine contains vents which haven't been linked to an oxygen generator. Select a vent and click an oxygen generator while holding space to link them.");
errorMsgs.Add(TextManager.Get("DisconnectedVentsWarning"));
break;
}
}
if (WayPoint.WayPointList.Find(wp => !wp.MoveWithLevel && wp.SpawnType == SpawnType.Path) == null)
{
errorMsgs.Add("No waypoints found in the submarine. AI controlled crew members won't be able to navigate without waypoints.");
errorMsgs.Add(TextManager.Get("NoWaypointsWarning"));
}
if (WayPoint.WayPointList.Find(wp => wp.SpawnType == SpawnType.Cargo) == null)
{
errorMsgs.Add("The submarine doesn't have spawnpoints for cargo (which are used for determining where to place bought items). "
+ "To fix this, create a new spawnpoint and change its \"spawn type\" parameter to \"cargo\".");
errorMsgs.Add(TextManager.Get("NoCargoSpawnpointWarning"));
}
if (errorMsgs.Any())
{
new GUIMessageBox("Warning", string.Join("\n\n", errorMsgs), 400, 0);
new GUIMessageBox(TextManager.Get("Warning"), string.Join("\n\n", errorMsgs), 400, 0);
}
foreach (MapEntity e in MapEntity.mapEntityList)
@@ -157,9 +154,9 @@ namespace Barotrauma
if (Vector2.Distance(e.Position, HiddenSubPosition) > 20000)
{
var msgBox = new GUIMessageBox(
"Warning",
"One or more structures have been placed very far from the submarine. Show the structures?",
new string[] { "Yes", "No" });
TextManager.Get("Warning"),
TextManager.Get("FarAwayEntitiesWarning"),
new string[] { TextManager.Get("Yes"), TextManager.Get("No") });
msgBox.Buttons[0].OnClicked += (btn, obj) =>
{
@@ -132,10 +132,10 @@ namespace Barotrauma
string trimmedName = text.ToLowerInvariant().Trim();
assignedJob = JobPrefab.List.Find(jp => jp.Name.ToLowerInvariant() == trimmedName);
if (assignedJob != null && trimmedName != "none")
if (assignedJob != null && trimmedName != TextManager.Get("None").ToLowerInvariant())
{
textBox.Color = Color.Green;
textBox.Text = (assignedJob == null) ? "None" : assignedJob.Name;
textBox.Text = (assignedJob == null) ? TextManager.Get("None") : assignedJob.Name;
}
textBox.Deselect();
@@ -162,13 +162,13 @@ namespace Barotrauma
if (spawnType == SpawnType.Path)
{
new GUITextBlock(new Rectangle(0, 0, 100, 20), "Editing waypoint", "", editingHUD);
new GUITextBlock(new Rectangle(0, 20, 100, 20), "Hold space to link to another waypoint", "", editingHUD);
new GUITextBlock(new Rectangle(0, 0, 100, 20), TextManager.Get("Editing")+" " +TextManager.Get("Waypoint"), "", editingHUD);
new GUITextBlock(new Rectangle(0, 20, 100, 20), TextManager.Get("LinkWaypoint"), "", editingHUD);
}
else
{
new GUITextBlock(new Rectangle(0, 0, 100, 20), "Editing spawnpoint", "", editingHUD);
new GUITextBlock(new Rectangle(0, 25, 100, 20), "Spawn type: ", "", editingHUD);
new GUITextBlock(new Rectangle(0, 0, 100, 20), TextManager.Get("Editing") + " " + TextManager.Get("Spawnpoint"), "", editingHUD);
new GUITextBlock(new Rectangle(0, 25, 100, 20), TextManager.Get("SpawnType") + ": ", "", editingHUD);
var spawnTypeText = new GUITextBlock(new Rectangle(0, 25, 200, 20), spawnType.ToString(), "", Alignment.Right, Alignment.TopLeft, editingHUD);
@@ -182,33 +182,33 @@ namespace Barotrauma
y = 40 + 20;
new GUITextBlock(new Rectangle(0, y, 100, 20), "ID Card desc:", Color.Transparent, Color.White, Alignment.TopLeft, null, editingHUD);
new GUITextBlock(new Rectangle(0, y, 100, 20), TextManager.Get("IDCardDescription"), Color.Transparent, Color.White, Alignment.TopLeft, null, editingHUD);
GUITextBox propertyBox = new GUITextBox(new Rectangle(100, y, 350, 20), "", editingHUD);
propertyBox.MaxTextLength = 150;
propertyBox.Text = idCardDesc;
propertyBox.OnEnterPressed = EnterIDCardDesc;
propertyBox.OnTextChanged = TextBoxChanged;
propertyBox.ToolTip = "Characters spawning at this spawnpoint will have the specified description added to their ID card. This can be used to describe additional access levels their card has on the sub.";
propertyBox.ToolTip = TextManager.Get("IDCardDescriptionTooltip");
y = y + 30;
new GUITextBlock(new Rectangle(0, y, 100, 20), "ID Card tags:", Color.Transparent, Color.White, Alignment.TopLeft, null, editingHUD);
new GUITextBlock(new Rectangle(0, y, 100, 20), TextManager.Get("IDCardTags"), Color.Transparent, Color.White, Alignment.TopLeft, null, editingHUD);
propertyBox = new GUITextBox(new Rectangle(100, y, 350, 20), "", editingHUD);
propertyBox.MaxTextLength = 60;
propertyBox.Text = string.Join(", ", idCardTags);
propertyBox.OnEnterPressed = EnterIDCardTags;
propertyBox.OnTextChanged = TextBoxChanged;
propertyBox.ToolTip = "Characters spawning at this spawnpoint will have the specified tags added to their ID card. You can, for example, use these tags to limit access to some parts of the sub.";
propertyBox.ToolTip = TextManager.Get("IDCardTagsTooltip");
y = y + 30;
new GUITextBlock(new Rectangle(0, y, 100, 20), "Assigned job:", Color.Transparent, Color.White, Alignment.TopLeft, null, editingHUD);
new GUITextBlock(new Rectangle(0, y, 100, 20), TextManager.Get("SpawnpointJobs"), Color.Transparent, Color.White, Alignment.TopLeft, null, editingHUD);
propertyBox = new GUITextBox(new Rectangle(100, y, 350, 20), "", editingHUD);
propertyBox.MaxTextLength = 60;
propertyBox.Text = (assignedJob == null) ? "None" : assignedJob.Name;
propertyBox.OnEnterPressed = EnterAssignedJob;
propertyBox.OnTextChanged = TextBoxChanged;
propertyBox.ToolTip = "Only characters with the specified job will spawn at this spawnpoint.";
propertyBox.ToolTip = TextManager.Get("SpawnpointJobsTooltip");
}
@@ -337,7 +337,7 @@ namespace Barotrauma
public string GetMoney()
{
return TextManager.Get("Credits") + ": " + ((GameMain.GameSession == null) ? "0" : string.Format(CultureInfo.InvariantCulture, "{0:N0}", campaign.Money)) + " credits";
return TextManager.Get("Credits") + ": " + ((GameMain.GameSession == null) ? "0" : string.Format(CultureInfo.InvariantCulture, "{0:N0}", campaign.Money));
}
private bool SelectCharacter(GUIComponent component, object selection)
@@ -298,24 +298,32 @@ namespace Barotrauma
else if (masterServerResponse.StatusCode != System.Net.HttpStatusCode.OK)
{
serverList.ClearChildren();
switch (masterServerResponse.StatusCode)
{
case System.Net.HttpStatusCode.NotFound:
new GUIMessageBox(TextManager.Get("MasterServerErrorLabel"),
TextManager.Get("MasterServerError404").Replace("[masterserverurl]", NetConfig.MasterServerUrl));
TextManager.Get("MasterServerError404")
.Replace("[masterserverurl]", NetConfig.MasterServerUrl)
.Replace("[statuscode]", masterServerResponse.StatusCode.ToString())
.Replace("[statusdescription]", masterServerResponse.StatusDescription));
break;
case System.Net.HttpStatusCode.ServiceUnavailable:
new GUIMessageBox(TextManager.Get("MasterServerErrorLabel"),
TextManager.Get("MasterServerErrorUnavailable"));
TextManager.Get("MasterServerErrorUnavailable")
.Replace("[masterserverurl]", NetConfig.MasterServerUrl)
.Replace("[statuscode]", masterServerResponse.StatusCode.ToString())
.Replace("[statusdescription]", masterServerResponse.StatusDescription));
break;
default:
new GUIMessageBox(TextManager.Get("MasterServerErrorLabel"),
TextManager.Get("MasterServerError404")
.Replace("[masterserverurl]", NetConfig.MasterServerUrl)
.Replace("[statuscode]", masterServerResponse.StatusCode.ToString())
.Replace("[statusdescription]", masterServerResponse.StatusDescription));
break;
}
}
else
{
+60 -5
View File
@@ -22,19 +22,31 @@
<StartServerButton>Start</StartServerButton>
<!-- Settings menu -->
<Settings>Settings</Settings>
<Resolution>Resolution</Resolution>
<DisplayMode>Display mode</DisplayMode>
<Fullscreen>Fullscreen</Fullscreen>
<Windowed>Windowed</Windowed>
<BorderlessWindowed>Borderless windowed</BorderlessWindowed>
<EnableVSync>Enable vertical sync</EnableVSync>
<SoundVolume>Sound volume</SoundVolume>
<MusicVolume>Music volume</MusicVolume>
<Controls>Controls</Controls>
<ContentPackage>Content package</ContentPackage>
<ApplySettingsButton>Apply</ApplySettingsButton>
<ApplySettingsLabel>Apply changes?</ApplySettingsLabel>
<ApplySettingsQuestion>Do you want to apply the settings or discard the changes?</ApplySettingsQuestion>
<ApplySettingsYes>Apply</ApplySettingsYes>
<ApplySettingsNo>Discard</ApplySettingsNo>
<RestartRequiredLabel>Restart required</RestartRequiredLabel>
<RestartRequiredText>You need to restart the game for the resolution changes to take effect.</RestartRequiredText>
<!-- Round summary -->
<progress>[sub] has made its way to [location].</progress>
<progress>[sub] has arrived at [location].</progress>
<return>[sub] has returned to [location].</return>
<gameover>The ocean has claimed [sub] and its crew.</gameover>
<RoundSummaryProgress>[sub] has made its way to [location].</RoundSummaryProgress>
<RoundSummaryProgress>[sub] has arrived at [location].</RoundSummaryProgress>
<RoundSummaryReturn>[sub] has returned to [location].</RoundSummaryReturn>
<RoundSummaryGameOver>The ocean has claimed [sub] and its crew.</RoundSummaryGameOver>
<RoundSummaryCrewStatus>Crew status</RoundSummaryCrewStatus>
<!-- Character HUD -->
<OxygenBarInfo>Running out of oxygen!</OxygenBarInfo>
@@ -42,6 +54,11 @@
<Grabbing>Grabbing</Grabbing>
<Stun>Stun</Stun>
<!-- Status -->
<StatusOK>OK</StatusOK>
<Unconscious>Unconscious</Unconscious>
<Injured>Injured</Injured>
<!-- Misc -->
<Yes>Yes</Yes>
<No>No</No>
@@ -49,19 +66,29 @@
<Skills>Skills</Skills>
<Male>Male</Male>
<Female>Female</Female>
<Order>Order</Order>
<Submarine>Submarine</Submarine>
<Shuttle>Shuttle</Shuttle>
<RespawnShuttle>Respawn shuttle</RespawnShuttle>
<Editing>Editing</Editing>
<Error>Error</Error>
<Warning>Warning</Warning>
<None>None</None>
<Close>Close</Close>
<Cancel>Cancel</Cancel>
<Delete>Delete</Delete>
<Load>Load</Load>
<Back>Back</Back>
<ManagePlayers>Manage players</ManagePlayers>
<DeleteDialogLabel>Delete file?</DeleteDialogLabel>
<DeleteDialogQuestion>Are you sure you want to delete "[file]"?</DeleteDialogQuestion>
<DeleteFileError>Could not delete file "[file]"!</DeleteFileError>
<!-- Mission info -->
<NoMission>No mission</NoMission>
<MissionReward>Reward: [reward]</MissionReward>
<!-- Campaign setup menu -->
<LoadButton>Load</LoadButton>
<DeleteButton>Delete</DeleteButton>
@@ -177,7 +204,35 @@
<SaveSubDialogName>Name</SaveSubDialogName>
<SaveSubDialogDescription>Description</SaveSubDialogDescription>
<SaveSubDialogSettings>Settings</SaveSubDialogSettings>
<NoHullsWarning>No hulls found in the submarine. Hulls determine the "borders" of an individual room and are required for water and air distribution to work correctly.</NoHullsWarning>
<DisconnectedVentsWarning>The submarine contains vents which haven't been linked to an oxygen generator. Select a vent and click an oxygen generator while holding space to link them.</DisconnectedVentsWarning>
<NoWaypointsWarning>No waypoints found in the submarine. AI controlled crew members won't be able to navigate without waypoints.</NoWaypointsWarning>
<NoCargoSpawnpointWarning>"The submarine does not have spawnpoints for cargo (which are used for determining where to place bought items). To fix this, create a new spawnpoint and change its "spawn type" parameter to "cargo".</NoCargoSpawnpointWarning>
<FarAwayEntitiesWarning>One or more structures have been placed very far from the submarine. Show the structures?</FarAwayEntitiesWarning>
<!-- Waypoints -->
<Waypoint>Waypoint</Waypoint>
<LinkWaypoint>Hold space to link to another waypoint</LinkWaypoint>
<Spawnpoint>Spawnpoint</Spawnpoint>
<SpawnType>Spawn type</SpawnType>
<IDCardDescription>ID Card description</IDCardDescription>
<IDCardDescriptionTooltip>Characters spawning at this spawnpoint will have the specified description added to their ID card. This can be used to describe additional access levels their card has on the sub.</IDCardDescriptionTooltip>
<IDCardTags>ID Card tags</IDCardTags>
<IDCardTagsTooltip>Characters spawning at this spawnpoint will have the specified tags added to their ID card. You can, for example, use these tags to limit access to some parts of the sub.</IDCardTagsTooltip>
<SpawnpointJobs>Assigned jobs</SpawnpointJobs>
<SpawnpointJobsTooltip>Only characters with the specified job will spawn at this spawnpoint.</SpawnpointJobsTooltip>
<!-- Linked subs -->
<LinkedSub>Linked submarine</LinkedSub>
<ReloadLinkedSub>Refresh</ReloadLinkedSub>
<ReloadLinkedSubTooltip>Reload the linked submarine from the specified file</ReloadLinkedSubTooltip>
<LinkLinkedSub>Hold space to link to a docking port</LinkLinkedSub>
<ReloadLinkedSubError>Submarine file [file] not found!</ReloadLinkedSubError>
<!-- Chat -->
<SpamFilterKicked>You have been kicked by the spam filter.</SpamFilterKicked>
<SpamFilterBlocked>You have been blocked by the spam filter. Try again after 10 seconds.</SpamFilterBlocked>
<!-- Causes of death -->
<CauseOfDeath.Damage>Succumbed to their injuries</CauseOfDeath.Damage>
<CauseOfDeath.Bloodloss>Bled out</CauseOfDeath.Bloodloss>
@@ -166,11 +166,11 @@ namespace Barotrauma.Networking
if (c.ChatSpamCount > 3)
{
//kick for spamming too much
GameMain.Server.KickClient(c, "You have been kicked by the spam filter.");
GameMain.Server.KickClient(c, TextManager.Get("SpamFilterKicked"));
}
else
{
ChatMessage denyMsg = ChatMessage.Create("", "You have been blocked by the spam filter. Try again after 10 seconds.", ChatMessageType.Server, null);
ChatMessage denyMsg = Create("", TextManager.Get("SpamFilterBlocked"), ChatMessageType.Server, null);
c.ChatSpamTimer = 10.0f;
GameMain.Server.SendChatMessage(denyMsg, c);
}
@@ -181,7 +181,7 @@ namespace Barotrauma.Networking
if (c.ChatSpamTimer > 0.0f)
{
ChatMessage denyMsg = ChatMessage.Create("", "You have been blocked by the spam filter. Try again after 10 seconds.", ChatMessageType.Server, null);
ChatMessage denyMsg = Create("", TextManager.Get("SpamFilterBlocked"), ChatMessageType.Server, null);
c.ChatSpamTimer = 10.0f;
GameMain.Server.SendChatMessage(denyMsg, c);
return;
@@ -54,13 +54,6 @@ namespace Barotrauma
text = text.Replace("[" + inputType.ToString() + "]", GameMain.Config.KeyBind(inputType).ToString());
}
#endif
if (Submarine.MainSub != null) text = text.Replace("[sub]", Submarine.MainSub.Name);
if (GameMain.GameSession != null && GameMain.GameSession.StartLocation != null)
{
text = text.Replace("[location]", GameMain.GameSession.StartLocation.Name);
}
return text;
}
}