Unstable 0.17.7.0
This commit is contained in:
@@ -17,6 +17,7 @@ namespace Barotrauma
|
||||
Hull.EditFire = false;
|
||||
Hull.EditWater = false;
|
||||
#endif
|
||||
HumanAIController.DisableCrewAI = false;
|
||||
}
|
||||
|
||||
protected virtual void DeselectEditorSpecific() { }
|
||||
|
||||
@@ -131,7 +131,7 @@ namespace Barotrauma
|
||||
}
|
||||
else
|
||||
{
|
||||
connection.OverrideValue = Convert.ChangeType(overrideValue, type);
|
||||
connection.OverrideValue = EventEditorScreen.ChangeType(overrideValue, type);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -513,7 +513,7 @@ namespace Barotrauma
|
||||
}
|
||||
else
|
||||
{
|
||||
newNode.Value = Convert.ChangeType(value, type);
|
||||
newNode.Value = EventEditorScreen.ChangeType(value, type);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -440,7 +440,7 @@ namespace Barotrauma
|
||||
}
|
||||
else
|
||||
{
|
||||
connection.OverrideValue = Convert.ChangeType(attribute.Value, connection.ValueType);
|
||||
connection.OverrideValue = ChangeType(attribute.Value, connection.ValueType);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -524,6 +524,18 @@ namespace Barotrauma
|
||||
GuiFrame.AddToGUIUpdateList();
|
||||
}
|
||||
|
||||
public static object? ChangeType(string value, Type type)
|
||||
{
|
||||
if (type == typeof(Identifier))
|
||||
{
|
||||
return value.ToIdentifier();
|
||||
}
|
||||
else
|
||||
{
|
||||
return Convert.ChangeType(value, type);
|
||||
}
|
||||
}
|
||||
|
||||
private XElement? ExportXML()
|
||||
{
|
||||
XElement mainElement = new XElement("ScriptedEvent", new XAttribute("identifier", projectName.RemoveWhitespace().ToLowerInvariant()));
|
||||
|
||||
@@ -883,12 +883,17 @@ namespace Barotrauma
|
||||
|
||||
private void SerializeAll()
|
||||
{
|
||||
IEnumerable<ContentPackage> packages = ContentPackageManager.LocalPackages;
|
||||
#if DEBUG
|
||||
packages = packages.Union(ContentPackageManager.VanillaCorePackage.ToEnumerable());
|
||||
#endif
|
||||
|
||||
System.Xml.XmlWriterSettings settings = new System.Xml.XmlWriterSettings
|
||||
{
|
||||
Indent = true,
|
||||
NewLineOnAttributes = true
|
||||
};
|
||||
foreach (var configFile in ContentPackageManager.AllPackages.SelectMany(p => p.GetFiles<LevelGenerationParametersFile>()))
|
||||
foreach (var configFile in packages.SelectMany(p => p.GetFiles<LevelGenerationParametersFile>()))
|
||||
{
|
||||
XDocument doc = XMLExtensions.TryLoadXml(configFile.Path);
|
||||
if (doc == null) { continue; }
|
||||
@@ -922,7 +927,7 @@ namespace Barotrauma
|
||||
}
|
||||
}
|
||||
|
||||
foreach (var configFile in ContentPackageManager.AllPackages.SelectMany(p => p.GetFiles<CaveGenerationParametersFile>()))
|
||||
foreach (var configFile in packages.SelectMany(p => p.GetFiles<CaveGenerationParametersFile>()))
|
||||
{
|
||||
XDocument doc = XMLExtensions.TryLoadXml(configFile.Path);
|
||||
if (doc == null) { continue; }
|
||||
@@ -957,7 +962,7 @@ namespace Barotrauma
|
||||
}
|
||||
|
||||
settings.NewLineOnAttributes = false;
|
||||
foreach (var configFile in ContentPackageManager.AllPackages.SelectMany(p => p.GetFiles<LevelObjectPrefabsFile>()))
|
||||
foreach (var configFile in packages.SelectMany(p => p.GetFiles<LevelObjectPrefabsFile>()))
|
||||
{
|
||||
XDocument doc = XMLExtensions.TryLoadXml(configFile.Path);
|
||||
if (doc == null) { continue; }
|
||||
|
||||
@@ -8,7 +8,6 @@ using Barotrauma.Networking;
|
||||
using Barotrauma.Steam;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
using Steamworks.Data;
|
||||
using Color = Microsoft.Xna.Framework.Color;
|
||||
using ServerContentPackage = Barotrauma.Networking.ClientPeer.ServerContentPackage;
|
||||
|
||||
@@ -164,7 +163,7 @@ namespace Barotrauma
|
||||
=> wp.SteamWorkshopId != mp.WorkshopId))
|
||||
.Select(mp => mp.WorkshopId)
|
||||
.ToArray();
|
||||
if (missingIds.Any())
|
||||
if (missingIds.Any() && SteamManager.IsInitialized)
|
||||
{
|
||||
buttonContainer = new GUILayoutGroup(new RectTransform(new Vector2(1.0f, 0.1f), innerLayout.RectTransform), isHorizontal: true);
|
||||
buttonContainerSpacing(0.15f);
|
||||
@@ -208,7 +207,7 @@ namespace Barotrauma
|
||||
{
|
||||
if (currentDownload == p)
|
||||
{
|
||||
FileReceiver.FileTransferIn? getTransfer() => GameMain.Client.FileReceiver.ActiveTransfers.FirstOrDefault(t => t.FileType == FileTransferType.Mod);
|
||||
FileReceiver.FileTransferIn? getTransfer() => GameMain.Client?.FileReceiver.ActiveTransfers.FirstOrDefault(t => t.FileType == FileTransferType.Mod);
|
||||
|
||||
if (downloadProgress.GetAnyChild<GUITextBlock>() is null)
|
||||
{
|
||||
|
||||
@@ -2298,7 +2298,7 @@ namespace Barotrauma
|
||||
text: selectedClient.Name, font: GUIStyle.LargeFont);
|
||||
nameText.Text = ToolBox.LimitString(nameText.Text, nameText.Font, (int)(nameText.Rect.Width * 0.95f));
|
||||
|
||||
if (hasManagePermissions)
|
||||
if (hasManagePermissions && !selectedClient.IsOwner)
|
||||
{
|
||||
PlayerFrame.UserData = selectedClient;
|
||||
|
||||
|
||||
@@ -557,7 +557,9 @@ namespace Barotrauma
|
||||
};
|
||||
serverPreview = new GUIListBox(new RectTransform(Vector2.One, serverPreviewContainer.RectTransform, Anchor.Center))
|
||||
{
|
||||
Padding = Vector4.One * 10 * GUI.Scale
|
||||
Padding = Vector4.One * 10 * GUI.Scale,
|
||||
HoverCursor = CursorState.Default,
|
||||
OnSelected = (component, o) => false
|
||||
};
|
||||
|
||||
// Spacing
|
||||
@@ -915,12 +917,7 @@ namespace Barotrauma
|
||||
{
|
||||
case "ServerListCompatible":
|
||||
bool? s1Compatible = NetworkMember.IsCompatible(GameMain.Version.ToString(), s1.GameVersion);
|
||||
if (!s1.ContentPackageHashes.Any()) { s1Compatible = null; }
|
||||
if (s1Compatible.HasValue) { s1Compatible = s1Compatible.Value && s1.ContentPackagesMatch(); };
|
||||
|
||||
bool? s2Compatible = NetworkMember.IsCompatible(GameMain.Version.ToString(), s2.GameVersion);
|
||||
if (!s2.ContentPackageHashes.Any()) { s2Compatible = null; }
|
||||
if (s2Compatible.HasValue) { s2Compatible = s2Compatible.Value && s2.ContentPackagesMatch(); };
|
||||
|
||||
//convert to int to make sorting easier
|
||||
//1 Compatible
|
||||
@@ -1028,8 +1025,7 @@ namespace Barotrauma
|
||||
|
||||
foreach (GUIComponent child in serverList.Content.Children)
|
||||
{
|
||||
if (!(child.UserData is ServerInfo)) continue;
|
||||
ServerInfo serverInfo = (ServerInfo)child.UserData;
|
||||
if (!(child.UserData is ServerInfo serverInfo)) { continue; }
|
||||
|
||||
Version remoteVersion = null;
|
||||
if (!string.IsNullOrEmpty(serverInfo.GameVersion))
|
||||
@@ -1047,8 +1043,7 @@ namespace Barotrauma
|
||||
else
|
||||
{
|
||||
bool incompatible =
|
||||
(serverInfo.ContentPackageHashes.Any() && !serverInfo.ContentPackagesMatch()) ||
|
||||
(remoteVersion != null && !NetworkMember.IsCompatible(GameMain.Version, remoteVersion));
|
||||
remoteVersion != null && !NetworkMember.IsCompatible(GameMain.Version, remoteVersion);
|
||||
|
||||
var karmaFilterPassed = filterKarmaValue == TernaryOption.Any|| (filterKarmaValue == TernaryOption.Enabled) == serverInfo.KarmaEnabled;
|
||||
var friendlyFireFilterPassed = filterFriendlyFireValue == TernaryOption.Any || (filterFriendlyFireValue == TernaryOption.Enabled) == serverInfo.FriendlyFireEnabled;
|
||||
@@ -1798,8 +1793,7 @@ namespace Barotrauma
|
||||
{
|
||||
CanBeFocused = false,
|
||||
Selected =
|
||||
(NetworkMember.IsCompatible(GameMain.Version.ToString(), serverInfo.GameVersion) ?? true) &&
|
||||
serverInfo.ContentPackagesMatch(),
|
||||
(NetworkMember.IsCompatible(GameMain.Version.ToString(), serverInfo.GameVersion) ?? true),
|
||||
UserData = "compatible"
|
||||
};
|
||||
|
||||
@@ -1826,9 +1820,9 @@ namespace Barotrauma
|
||||
|
||||
if (serverInfo.ContentPackageNames.Any())
|
||||
{
|
||||
if (serverInfo.ContentPackageNames.Any(cp => !cp.Equals(GameMain.VanillaContent.Name, StringComparison.OrdinalIgnoreCase)))
|
||||
if (serverInfo.ContentPackageNames.Any(p => !GameMain.VanillaContent.NameMatches(p)))
|
||||
{
|
||||
serverName.TextColor = new Color(219, 125, 217);
|
||||
serverName.TextColor = GUIStyle.ModdedServerColor;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2841,6 +2841,7 @@ namespace Barotrauma
|
||||
private void CreateLoadScreen()
|
||||
{
|
||||
CloseItem();
|
||||
SubmarineInfo.RefreshSavedSubs();
|
||||
SetMode(Mode.Default);
|
||||
|
||||
loadFrame = new GUIButton(new RectTransform(Vector2.One, GUI.Canvas, Anchor.Center), style: null)
|
||||
@@ -3162,7 +3163,6 @@ namespace Barotrauma
|
||||
}
|
||||
|
||||
sub.Dispose();
|
||||
SubmarineInfo.RefreshSavedSubs();
|
||||
CreateLoadScreen();
|
||||
}
|
||||
catch (Exception e)
|
||||
|
||||
Reference in New Issue
Block a user