diff --git a/Unify/Patches/Regions.cs b/Unify/Patches/Regions.cs index 3ff28ea..8de95e3 100644 --- a/Unify/Patches/Regions.cs +++ b/Unify/Patches/Regions.cs @@ -1,5 +1,9 @@ using System.Collections.Generic; +using System.Linq; using BepInEx.Configuration; +using BepInEx.Preloader.Core; +using HarmonyLib; +using UnityEngine; using Array = System.Array; using String = System.String; @@ -9,21 +13,17 @@ namespace Unify.Patches { private static IRegionInfo[] _newRegions = new IRegionInfo[] { - new StaticRegionInfo("skeld.net", StringNames.NoTranslation, "192.241.154.115", new ServerInfo[] - { - new ServerInfo("skeld.net-Master-1", "192.241.154.115", 22023) - }).Duplicate(), - new StaticRegionInfo("localhost", StringNames.NoTranslation, "127.0.0.1", new ServerInfo[] - { - new ServerInfo("localhost", "127.0.0.1", 22023) - }).Duplicate() + new DnsRegionInfo("192.241.154.115", "skeld.net", StringNames.NoTranslation, "192.241.154.115") + .Duplicate(), + new DnsRegionInfo("localhost", "localhost", StringNames.NoTranslation, "127.0.0.1") + .Duplicate() }; - private static IRegionInfo[] _customRegions = MergeRegions(_newRegions, LoadCustomRegions()); + private static IRegionInfo[] _customRegions = MergeRegions(_newRegions, LoadCustomUserRegions()); public static void Patch() { IRegionInfo[] patchedRegions = MergeRegions(ServerManager.DefaultRegions, _customRegions); - + ServerManager.DefaultRegions = patchedRegions; ServerManager.Instance.AvailableRegions = patchedRegions; ServerManager.Instance.SaveServers(); @@ -38,23 +38,22 @@ namespace Unify.Patches return patchedRegions; } - private static IRegionInfo[] LoadCustomRegions() + private static IRegionInfo[] LoadCustomUserRegions() { List customRegions = new List(); for (int x = 0; x < 5; x++) { - ConfigEntry regionName = UnifyPlugin.ConfigFile.Bind($"Region {x + 1}", $"Name", "custom region"); - ConfigEntry regionIp = UnifyPlugin.ConfigFile.Bind($"Region {x + 1}", "IP", ""); - ConfigEntry regionPort = UnifyPlugin.ConfigFile.Bind($"Region {x + 1}", "Port", (ushort) 22023); - + ConfigEntry regionName = UnifyPlugin.ConfigFile.Bind( + $"Region {x + 1}", $"Name", "custom region"); + ConfigEntry regionIp = UnifyPlugin.ConfigFile.Bind( + $"Region {x + 1}", "IP", ""); + if (String.IsNullOrWhiteSpace(regionIp.Value)) continue; - IRegionInfo regionInfo = new StaticRegionInfo( - regionName.Value, StringNames.NoTranslation, regionIp.Value, new ServerInfo[] - { - new ServerInfo(regionName.Value, regionIp.Value, regionPort.Value) - }).Duplicate(); + IRegionInfo regionInfo = new DnsRegionInfo( + regionIp.Value, regionName.Value, StringNames.NoTranslation, regionIp.Value) + .Duplicate(); customRegions.Add(regionInfo); } diff --git a/Unify/Unify.cs b/Unify/Unify.cs index 9cf7870..ab05b09 100644 --- a/Unify/Unify.cs +++ b/Unify/Unify.cs @@ -15,7 +15,7 @@ namespace Unify { public const string Id = "daemon.unify.reactor"; private const string Name = "Unify"; - private const string Version = "2.0.0"; + private const string Version = "2.0.1"; public static readonly ConfigFile ConfigFile = new ConfigFile(Path.Combine(Paths.ConfigPath, $"{UnifyPlugin.Id}.cfg"), true); diff --git a/Unify/Unify.csproj b/Unify/Unify.csproj index 16bb826..2b16178 100644 --- a/Unify/Unify.csproj +++ b/Unify/Unify.csproj @@ -1,7 +1,7 @@ netstandard2.1 - 2.0.0 + 2.0.1 NuclearPowered/Mappings:0.2.0 Region mod for Reactor @@ -14,7 +14,7 @@ - 2020.11.17i + 2021.11.17i $(DefineConstants);ITCH diff --git a/build/Unify-2021.3.5s.dll b/build/Unify-2021.3.5s.dll index 43c6e8f..f9e2d50 100644 Binary files a/build/Unify-2021.3.5s.dll and b/build/Unify-2021.3.5s.dll differ