Build 0.20.8.0

This commit is contained in:
Markus Isberg
2022-11-25 19:56:30 +02:00
parent ecb6d40b4b
commit df805574c4
111 changed files with 2347 additions and 1283 deletions
@@ -82,54 +82,50 @@ namespace Barotrauma
}
//dequeue messages
lock (queuedMessages)
if (queuedMessages.Count > 0)
{
if (queuedMessages.Count > 0)
if (!Console.IsOutputRedirected)
{
if (!Console.IsOutputRedirected)
Console.CursorLeft = 0;
}
while (queuedMessages.TryDequeue(out var msg))
{
Messages.Add(msg);
if (GameSettings.CurrentConfig.SaveDebugConsoleLogs || GameSettings.CurrentConfig.VerboseLogging)
{
Console.CursorLeft = 0;
}
while (queuedMessages.Count > 0)
{
ColoredText msg = queuedMessages.Dequeue();
Messages.Add(msg);
if (GameSettings.CurrentConfig.SaveDebugConsoleLogs || GameSettings.CurrentConfig.VerboseLogging)
unsavedMessages.Add(msg);
if (unsavedMessages.Count >= messagesPerFile)
{
unsavedMessages.Add(msg);
if (unsavedMessages.Count >= messagesPerFile)
{
SaveLogs();
unsavedMessages.Clear();
}
SaveLogs();
unsavedMessages.Clear();
}
string msgTxt = msg.Text;
if (msg.IsCommand) commandMemory.Add(msgTxt);
if(!Console.IsOutputRedirected)
{
int paddingLen = consoleWidth - (msg.Text.Length % consoleWidth) - 1;
msgTxt += new string(' ', paddingLen > 0 ? paddingLen : 0);
Console.ForegroundColor = XnaToConsoleColor.Convert(msg.Color);
}
Console.WriteLine(msgTxt);
if (sw.ElapsedMilliseconds >= maxTime) { break; }
}
string msgTxt = msg.Text;
if (msg.IsCommand) commandMemory.Add(msgTxt);
if(!Console.IsOutputRedirected)
{
RewriteInputToCommandLine(input);
int paddingLen = consoleWidth - (msg.Text.Length % consoleWidth) - 1;
msgTxt += new string(' ', paddingLen > 0 ? paddingLen : 0);
Console.ForegroundColor = XnaToConsoleColor.Convert(msg.Color);
}
Console.WriteLine(msgTxt);
if (sw.ElapsedMilliseconds >= maxTime) { break; }
}
if (Messages.Count > MaxMessages)
if (!Console.IsOutputRedirected)
{
Messages.RemoveRange(0, Messages.Count - MaxMessages);
RewriteInputToCommandLine(input);
}
}
if (Messages.Count > MaxMessages)
{
Messages.RemoveRange(0, Messages.Count - MaxMessages);
}
// No good way to display input when console output is redirected, and can't read from redirected input using KeyAvailable.
if(!Console.IsOutputRedirected && !Console.IsInputRedirected)
@@ -272,26 +268,22 @@ namespace Barotrauma
public static void Clear()
{
lock (queuedMessages)
while (queuedMessages.TryDequeue(out var msg))
{
while (queuedMessages.Count > 0)
Messages.Add(msg);
if (GameSettings.CurrentConfig.SaveDebugConsoleLogs || GameSettings.CurrentConfig.VerboseLogging)
{
var msg = queuedMessages.Dequeue();
Messages.Add(msg);
if (GameSettings.CurrentConfig.SaveDebugConsoleLogs || GameSettings.CurrentConfig.VerboseLogging)
unsavedMessages.Add(msg);
if (unsavedMessages.Count >= messagesPerFile)
{
unsavedMessages.Add(msg);
if (unsavedMessages.Count >= messagesPerFile)
{
SaveLogs();
unsavedMessages.Clear();
}
SaveLogs();
unsavedMessages.Clear();
}
}
if (Messages.Count > MaxMessages)
{
Messages.RemoveRange(0, Messages.Count - MaxMessages);
}
}
if (Messages.Count > MaxMessages)
{
Messages.RemoveRange(0, Messages.Count - MaxMessages);
}
}