Build 1.1.4.0
This commit is contained in:
@@ -42,6 +42,11 @@ namespace Barotrauma.Networking
|
||||
|
||||
partial class ServerSettings : ISerializableEntity
|
||||
{
|
||||
public const int PacketLimitMin = 1200,
|
||||
PacketLimitWarning = 2400,
|
||||
PacketLimitDefault = 2400,
|
||||
PacketLimitMax = 10000;
|
||||
|
||||
public const string SettingsFile = "serversettings.xml";
|
||||
|
||||
[Flags]
|
||||
@@ -111,27 +116,24 @@ namespace Barotrauma.Networking
|
||||
switch (typeString)
|
||||
{
|
||||
case "float":
|
||||
if (!(a is float?)) return false;
|
||||
if (!(b is float?)) return false;
|
||||
return MathUtils.NearlyEqual((float)a, (float)b);
|
||||
if (a is not float fa) { return false; }
|
||||
if (b is not float fb) { return false; }
|
||||
return MathUtils.NearlyEqual(fa, fb);
|
||||
case "int":
|
||||
if (!(a is int?)) return false;
|
||||
if (!(b is int?)) return false;
|
||||
return (int)a == (int)b;
|
||||
if (a is not int ia) { return false; }
|
||||
if (b is not int ib) { return false; }
|
||||
return ia == ib;
|
||||
case "bool":
|
||||
if (!(a is bool?)) return false;
|
||||
if (!(b is bool?)) return false;
|
||||
return (bool)a == (bool)b;
|
||||
if (a is not bool ba) { return false; }
|
||||
if (b is not bool bb) { return false; }
|
||||
return ba == bb;
|
||||
case "Enum":
|
||||
if (!(a is Enum)) return false;
|
||||
if (!(b is Enum)) return false;
|
||||
return ((Enum)a).Equals((Enum)b);
|
||||
if (a is not Enum ea) { return false; }
|
||||
if (b is not Enum eb) { return false; }
|
||||
return ea.Equals(eb);
|
||||
default:
|
||||
if (a == null || b == null)
|
||||
{
|
||||
return (a == null) == (b == null);
|
||||
}
|
||||
return a.ToString().Equals(b.ToString(), StringComparison.OrdinalIgnoreCase);
|
||||
return ReferenceEquals(a,b)
|
||||
|| string.Equals(a?.ToString(), b?.ToString(), StringComparison.OrdinalIgnoreCase);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -204,7 +206,7 @@ namespace Barotrauma.Networking
|
||||
|
||||
public void Write(IWriteMessage msg, object overrideValue = null)
|
||||
{
|
||||
if (overrideValue == null) { overrideValue = Value; }
|
||||
overrideValue ??= Value;
|
||||
switch (typeString)
|
||||
{
|
||||
case "float":
|
||||
@@ -293,10 +295,7 @@ namespace Barotrauma.Networking
|
||||
var saveProperties = SerializableProperty.GetProperties<Serialize>(this);
|
||||
foreach (var property in saveProperties)
|
||||
{
|
||||
object value = property.GetValue(this);
|
||||
if (value == null) { continue; }
|
||||
|
||||
string typeName = SerializableProperty.GetSupportedTypeName(value.GetType());
|
||||
string typeName = SerializableProperty.GetSupportedTypeName(property.PropertyType);
|
||||
if (typeName != null || property.PropertyType.IsEnum)
|
||||
{
|
||||
NetPropertyData netPropertyData = new NetPropertyData(this, property, typeName);
|
||||
@@ -523,7 +522,7 @@ namespace Barotrauma.Networking
|
||||
}
|
||||
}
|
||||
|
||||
[Serialize(LosMode.Opaque, IsPropertySaveable.Yes)]
|
||||
[Serialize(LosMode.Transparent, IsPropertySaveable.Yes)]
|
||||
public LosMode LosMode
|
||||
{
|
||||
get;
|
||||
@@ -694,6 +693,20 @@ namespace Barotrauma.Networking
|
||||
private set;
|
||||
}
|
||||
|
||||
[Serialize(true, IsPropertySaveable.Yes)]
|
||||
public bool EnableDoSProtection
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
|
||||
[Serialize(PacketLimitDefault, IsPropertySaveable.Yes)]
|
||||
public int MaxPacketAmount
|
||||
{
|
||||
get;
|
||||
private set;
|
||||
}
|
||||
|
||||
[Serialize("", IsPropertySaveable.Yes)]
|
||||
public string SelectedSubmarine
|
||||
{
|
||||
@@ -754,6 +767,9 @@ namespace Barotrauma.Networking
|
||||
get;
|
||||
set;
|
||||
}
|
||||
|
||||
[Serialize(defaultValue: "", IsPropertySaveable.Yes)]
|
||||
public LanguageIdentifier Language { get; set; }
|
||||
|
||||
private SelectionMode subSelectionMode;
|
||||
[Serialize(SelectionMode.Manual, IsPropertySaveable.Yes)]
|
||||
|
||||
Reference in New Issue
Block a user