From 8e6c601162d49b2bc3761a1092224087b4564e13 Mon Sep 17 00:00:00 2001
From: Markus Isberg <3e849f2e5c@pm.me>
Date: Thu, 16 Jun 2022 01:03:48 +0900
Subject: [PATCH] Build 0.18.11.0
---
.../GameModes/Tutorials/CaptainTutorial.cs | 2 +-
.../GameModes/Tutorials/DoctorTutorial.cs | 2 +-
.../GameModes/Tutorials/EngineerTutorial.cs | 2 +-
.../GameModes/Tutorials/MechanicTutorial.cs | 2 +-
.../GameModes/Tutorials/OfficerTutorial.cs | 2 +-
.../Items/Components/Signal/ConnectionPanel.cs | 5 +++--
.../ClientSource/Settings/SettingsMenu.cs | 18 ++++++++++++------
Barotrauma/BarotraumaClient/LinuxClient.csproj | 3 +--
Barotrauma/BarotraumaClient/MacClient.csproj | 3 +--
.../BarotraumaClient/WindowsClient.csproj | 3 +--
Barotrauma/BarotraumaServer/LinuxServer.csproj | 3 +--
Barotrauma/BarotraumaServer/MacServer.csproj | 3 +--
.../BarotraumaServer/WindowsServer.csproj | 3 +--
Barotrauma/BarotraumaShared/changelog.txt | 16 +++++++++++++++-
14 files changed, 41 insertions(+), 26 deletions(-)
diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/CaptainTutorial.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/CaptainTutorial.cs
index c4ec80301..76cb87ce0 100644
--- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/CaptainTutorial.cs
+++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/CaptainTutorial.cs
@@ -104,7 +104,7 @@ namespace Barotrauma.Tutorials
foreach (Item item in captain.Inventory.AllItemsMod)
{
- if (item.HasTag("identitycard") || item.HasTag("headset")) { continue; }
+ if (item.HasTag("identitycard") || item.HasTag("mobileradio")) { continue; }
item.Unequip(captain);
captain.Inventory.RemoveItem(item);
}
diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/DoctorTutorial.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/DoctorTutorial.cs
index ff73b2f00..41a8238bd 100644
--- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/DoctorTutorial.cs
+++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/DoctorTutorial.cs
@@ -107,7 +107,7 @@ namespace Barotrauma.Tutorials
foreach (Item item in doctor.Inventory.AllItemsMod)
{
- if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("headset")) { continue; }
+ if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("mobileradio")) { continue; }
item.Unequip(doctor);
doctor.Inventory.RemoveItem(item);
}
diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/EngineerTutorial.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/EngineerTutorial.cs
index c30c1c346..b95fa6f31 100644
--- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/EngineerTutorial.cs
+++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/EngineerTutorial.cs
@@ -133,7 +133,7 @@ namespace Barotrauma.Tutorials
foreach (Item item in engineer.Inventory.AllItemsMod)
{
- if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("headset")) { continue; }
+ if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("mobileradio")) { continue; }
item.Unequip(engineer);
engineer.Inventory.RemoveItem(item);
}
diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/MechanicTutorial.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/MechanicTutorial.cs
index 23b5da096..06d05b708 100644
--- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/MechanicTutorial.cs
+++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/MechanicTutorial.cs
@@ -162,7 +162,7 @@ namespace Barotrauma.Tutorials
foreach (Item item in mechanic.Inventory.AllItemsMod)
{
- if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("headset")) { continue; }
+ if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("mobileradio")) { continue; }
item.Unequip(mechanic);
mechanic.Inventory.RemoveItem(item);
}
diff --git a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/OfficerTutorial.cs b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/OfficerTutorial.cs
index a8ba18da8..dd0f49fe5 100644
--- a/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/OfficerTutorial.cs
+++ b/Barotrauma/BarotraumaClient/ClientSource/GameSession/GameModes/Tutorials/OfficerTutorial.cs
@@ -143,7 +143,7 @@ namespace Barotrauma.Tutorials
foreach (Item item in officer.Inventory.AllItemsMod)
{
- if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("headset")) { continue; }
+ if (item.HasTag("clothing") || item.HasTag("identitycard") || item.HasTag("mobileradio")) { continue; }
item.Unequip(officer);
officer.Inventory.RemoveItem(item);
}
diff --git a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ConnectionPanel.cs b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ConnectionPanel.cs
index 21b3b4204..541c54a63 100644
--- a/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ConnectionPanel.cs
+++ b/Barotrauma/BarotraumaClient/ClientSource/Items/Components/Signal/ConnectionPanel.cs
@@ -147,9 +147,10 @@ namespace Barotrauma.Items.Components
//because some of the wires connected to the panel may not exist yet
long msgStartPos = msg.BitPosition;
msg.ReadUInt16(); //user ID
- foreach (Connection connection in Connections)
+ foreach (Connection _ in Connections)
{
- for (int i = 0; i < connection.MaxWires; i++)
+ uint wireCount = msg.ReadVariableUInt32();
+ for (int i = 0; i < wireCount; i++)
{
msg.ReadUInt16();
}
diff --git a/Barotrauma/BarotraumaClient/ClientSource/Settings/SettingsMenu.cs b/Barotrauma/BarotraumaClient/ClientSource/Settings/SettingsMenu.cs
index 50edb5235..4e9d8b6a6 100644
--- a/Barotrauma/BarotraumaClient/ClientSource/Settings/SettingsMenu.cs
+++ b/Barotrauma/BarotraumaClient/ClientSource/Settings/SettingsMenu.cs
@@ -462,6 +462,8 @@ namespace Barotrauma
Slider(voiceChat, (0, 500), 26, (v) => $"{Round(v)} ms", unsavedConfig.Audio.VoiceChatCutoffPrevention, (v) => unsavedConfig.Audio.VoiceChatCutoffPrevention = Round(v), TextManager.Get("CutoffPreventionTooltip"));
}
+
+ private bool inputBoxSelectedThisFrame = false;
private void CreateControlsTab()
{
GUIFrame content = CreateNewContentFrame(Tab.Controls);
@@ -510,16 +512,13 @@ namespace Barotrauma
bool willBeSelected = !btn.Selected;
if (willBeSelected)
{
+ inputBoxSelectedThisFrame = true;
currentSetter = (v) =>
{
valueSetter(v);
btn.Text = valueNameGetter();
};
}
- else
- {
- currentSetter = null;
- }
btn.Selected = willBeSelected;
return true;
@@ -538,6 +537,12 @@ namespace Barotrauma
{
if (currentSetter is null) { return; }
+ if (PlayerInput.PrimaryMouseButtonClicked() && inputBoxSelectedThisFrame)
+ {
+ inputBoxSelectedThisFrame = false;
+ return;
+ }
+
void clearSetter()
{
currentSetter = null;
@@ -551,7 +556,7 @@ namespace Barotrauma
}
var pressedKeys = PlayerInput.GetKeyboardState.GetPressedKeys();
- if ((pressedKeys?.Any() ?? false))
+ if (pressedKeys?.Any() ?? false)
{
if (pressedKeys.Contains(Keys.Escape))
{
@@ -562,7 +567,8 @@ namespace Barotrauma
callSetter(pressedKeys.First());
}
}
- else if (PlayerInput.PrimaryMouseButtonClicked() && !(GUI.MouseOn is GUIButton))
+ else if (PlayerInput.PrimaryMouseButtonClicked() &&
+ (GUI.MouseOn == null || !(GUI.MouseOn is GUIButton) || GUI.MouseOn.IsChildOf(keyMapList.Content)))
{
callSetter(MouseButton.PrimaryMouse);
}
diff --git a/Barotrauma/BarotraumaClient/LinuxClient.csproj b/Barotrauma/BarotraumaClient/LinuxClient.csproj
index dcb6b28f4..1f9b0f11c 100644
--- a/Barotrauma/BarotraumaClient/LinuxClient.csproj
+++ b/Barotrauma/BarotraumaClient/LinuxClient.csproj
@@ -6,13 +6,12 @@
Barotrauma
FakeFish, Undertow Games
Barotrauma
- 0.18.9.0
+ 0.18.11.0
Copyright © FakeFish 2018-2022
AnyCPU;x64
Barotrauma
..\BarotraumaShared\Icon.ico
Debug;Release;Unstable
- true
;NU1605;CS0114;CS0108CS8597;CS8600;CS8601;CS8602;CS8603;CS8604;CS8605;CS8606;CS8607;CS8608;CS8609;CS8610;CS8611;CS8612;CS8613;CS8614;CS8615;CS8616;CS8617;CS8618;CS8619;CS8620;CS8621;CS8622;CS8624;CS8625;CS8626;CS8629;CS8631;CS8632;CS8633;CS8634;CS8638;CS8643;CS8644;CS8645;CS8653;CS8654;CS8655;CS8667;CS8669;CS8670;CS8714;CS8717;CS8765
diff --git a/Barotrauma/BarotraumaClient/MacClient.csproj b/Barotrauma/BarotraumaClient/MacClient.csproj
index dfc188b15..630273d43 100644
--- a/Barotrauma/BarotraumaClient/MacClient.csproj
+++ b/Barotrauma/BarotraumaClient/MacClient.csproj
@@ -6,13 +6,12 @@
Barotrauma
FakeFish, Undertow Games
Barotrauma
- 0.18.9.0
+ 0.18.11.0
Copyright © FakeFish 2018-2022
AnyCPU;x64
Barotrauma
..\BarotraumaShared\Icon.ico
Debug;Release;Unstable
- true
;NU1605;CS0114;CS0108CS8597;CS8600;CS8601;CS8602;CS8603;CS8604;CS8605;CS8606;CS8607;CS8608;CS8609;CS8610;CS8611;CS8612;CS8613;CS8614;CS8615;CS8616;CS8617;CS8618;CS8619;CS8620;CS8621;CS8622;CS8624;CS8625;CS8626;CS8629;CS8631;CS8632;CS8633;CS8634;CS8638;CS8643;CS8644;CS8645;CS8653;CS8654;CS8655;CS8667;CS8669;CS8670;CS8714;CS8717;CS8765
diff --git a/Barotrauma/BarotraumaClient/WindowsClient.csproj b/Barotrauma/BarotraumaClient/WindowsClient.csproj
index 8043dbfaf..26662833d 100644
--- a/Barotrauma/BarotraumaClient/WindowsClient.csproj
+++ b/Barotrauma/BarotraumaClient/WindowsClient.csproj
@@ -6,14 +6,13 @@
Barotrauma
FakeFish, Undertow Games
Barotrauma
- 0.18.9.0
+ 0.18.11.0
Copyright © FakeFish 2018-2022
AnyCPU;x64
Barotrauma
..\BarotraumaShared\Icon.ico
Debug;Release;Unstable
app.manifest
- true
;NU1605;CS0114;CS0108CS8597;CS8600;CS8601;CS8602;CS8603;CS8604;CS8605;CS8606;CS8607;CS8608;CS8609;CS8610;CS8611;CS8612;CS8613;CS8614;CS8615;CS8616;CS8617;CS8618;CS8619;CS8620;CS8621;CS8622;CS8624;CS8625;CS8626;CS8629;CS8631;CS8632;CS8633;CS8634;CS8638;CS8643;CS8644;CS8645;CS8653;CS8654;CS8655;CS8667;CS8669;CS8670;CS8714;CS8717;CS8765
diff --git a/Barotrauma/BarotraumaServer/LinuxServer.csproj b/Barotrauma/BarotraumaServer/LinuxServer.csproj
index 26ca8d0d6..edd4b10ac 100644
--- a/Barotrauma/BarotraumaServer/LinuxServer.csproj
+++ b/Barotrauma/BarotraumaServer/LinuxServer.csproj
@@ -6,13 +6,12 @@
Barotrauma
FakeFish, Undertow Games
Barotrauma Dedicated Server
- 0.18.9.0
+ 0.18.11.0
Copyright © FakeFish 2018-2022
AnyCPU;x64
DedicatedServer
..\BarotraumaShared\Icon.ico
Debug;Release;Unstable
- true
;NU1605;CS0114;CS0108CS8597;CS8600;CS8601;CS8602;CS8603;CS8604;CS8605;CS8606;CS8607;CS8608;CS8609;CS8610;CS8611;CS8612;CS8613;CS8614;CS8615;CS8616;CS8617;CS8618;CS8619;CS8620;CS8621;CS8622;CS8624;CS8625;CS8626;CS8629;CS8631;CS8632;CS8633;CS8634;CS8638;CS8643;CS8644;CS8645;CS8653;CS8654;CS8655;CS8667;CS8669;CS8670;CS8714;CS8717;CS8765
diff --git a/Barotrauma/BarotraumaServer/MacServer.csproj b/Barotrauma/BarotraumaServer/MacServer.csproj
index 883360337..d0e34c416 100644
--- a/Barotrauma/BarotraumaServer/MacServer.csproj
+++ b/Barotrauma/BarotraumaServer/MacServer.csproj
@@ -6,13 +6,12 @@
Barotrauma
FakeFish, Undertow Games
Barotrauma Dedicated Server
- 0.18.9.0
+ 0.18.11.0
Copyright © FakeFish 2018-2022
AnyCPU;x64
DedicatedServer
..\BarotraumaShared\Icon.ico
Debug;Release;Unstable
- true
;NU1605;CS0114;CS0108CS8597;CS8600;CS8601;CS8602;CS8603;CS8604;CS8605;CS8606;CS8607;CS8608;CS8609;CS8610;CS8611;CS8612;CS8613;CS8614;CS8615;CS8616;CS8617;CS8618;CS8619;CS8620;CS8621;CS8622;CS8624;CS8625;CS8626;CS8629;CS8631;CS8632;CS8633;CS8634;CS8638;CS8643;CS8644;CS8645;CS8653;CS8654;CS8655;CS8667;CS8669;CS8670;CS8714;CS8717;CS8765
diff --git a/Barotrauma/BarotraumaServer/WindowsServer.csproj b/Barotrauma/BarotraumaServer/WindowsServer.csproj
index e1bf7a611..6210c5922 100644
--- a/Barotrauma/BarotraumaServer/WindowsServer.csproj
+++ b/Barotrauma/BarotraumaServer/WindowsServer.csproj
@@ -6,13 +6,12 @@
Barotrauma
FakeFish, Undertow Games
Barotrauma Dedicated Server
- 0.18.9.0
+ 0.18.11.0
Copyright © FakeFish 2018-2022
AnyCPU;x64
DedicatedServer
..\BarotraumaShared\Icon.ico
Debug;Release;Unstable
- true
;NU1605;CS0114;CS0108CS8597;CS8600;CS8601;CS8602;CS8603;CS8604;CS8605;CS8606;CS8607;CS8608;CS8609;CS8610;CS8611;CS8612;CS8613;CS8614;CS8615;CS8616;CS8617;CS8618;CS8619;CS8620;CS8621;CS8622;CS8624;CS8625;CS8626;CS8629;CS8631;CS8632;CS8633;CS8634;CS8638;CS8643;CS8644;CS8645;CS8653;CS8654;CS8655;CS8667;CS8669;CS8670;CS8714;CS8717;CS8765
diff --git a/Barotrauma/BarotraumaShared/changelog.txt b/Barotrauma/BarotraumaShared/changelog.txt
index 58186d997..bc2dec55c 100644
--- a/Barotrauma/BarotraumaShared/changelog.txt
+++ b/Barotrauma/BarotraumaShared/changelog.txt
@@ -1,3 +1,18 @@
+---------------------------------------------------------------------------------------------------------
+v0.18.11.0
+---------------------------------------------------------------------------------------------------------
+
+- Disabled project-wide invariant globalization, which was meant to address "couldn't find a valid ICU package installed on the system" errors on some Linux distributions. The fix caused issues with case-insensitive comparisons and converting to upper or lower case in non-latin alphabets.
+- Fixed tutorial characters spawning without a headset.
+- Fixed inability to bind keys to LMB by clicking on the input box.
+
+---------------------------------------------------------------------------------------------------------
+v0.18.10.0
+---------------------------------------------------------------------------------------------------------
+
+- Fixed "index out of range" error when joining a server where's someone's rewired items.
+- Fixed some mission messages being displayed as "missionmessage0.nameofthemission".
+
---------------------------------------------------------------------------------------------------------
v0.18.9.0
---------------------------------------------------------------------------------------------------------
@@ -152,7 +167,6 @@ Fixes:
- Fixed inability to quick-reload weapons with more than 1 inventory slot (e.g. autoshotgun).
- Fixed outpost NPCs having x3 more health than they should.
- Fixed morbusine not killing NPCs with higher-than-default health.
-- Fixed crashing with the error message "couldn't find a valid ICU package installed on the system" on some Linux distributions.
- Fixed graphics errors when using Razer Cortex overlay.
- Fixed bots being unable to repair Winterhalter's top hatch.
- Fixed server crashing if you disable all mission types and try to start a mission round.