diff --git a/CHANGELOG.md b/CHANGELOG.md index ec5032c9..145d5933 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,13 @@ This is the rolling changelog for TShock for Terraria. Use past tense when addin ## Upcoming changes +## TShock 4.5.17 +* Fixed duplicate characters (twins) after repeatedly logging in as the same character due to connection not being immediately closed during `NetHooks_NameCollision`. (@gohjoseph) +* Fixed mobs not dropping picked up coins. (@gohjoseph) + +## TShock 4.5.16 +* Added preliminary support for Terraria 1.4.3.6. (@SignatureBeef, @hakusaro) + ## TShock 4.5.15 * Added preliminary support for Terraria 1.4.3.5. (@SignatureBeef, @hakusaro) diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index 5a880494..7d877dce 100644 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -3957,7 +3957,7 @@ namespace TShockAPI return true; } - return true; + return false; } private static bool HandleKillPortal(GetDataHandlerArgs args) diff --git a/TShockAPI/TShock.cs b/TShockAPI/TShock.cs index 81c429ec..98f4045e 100644 --- a/TShockAPI/TShock.cs +++ b/TShockAPI/TShock.cs @@ -59,7 +59,7 @@ namespace TShockAPI /// VersionNum - The version number the TerrariaAPI will return back to the API. We just use the Assembly info. public static readonly Version VersionNum = Assembly.GetExecutingAssembly().GetName().Version; /// VersionCodename - The version codename is displayed when the server starts. Inspired by software codenames conventions. - public static readonly string VersionCodename = "Zelenskyy"; + public static readonly string VersionCodename = "Volodymyr Oleksandrovych Zelenskyy"; /// SavePath - This is the path TShock saves its data in. This path is relative to the TerrariaServer.exe (not in ServerPlugins). public static string SavePath = "tshock"; @@ -582,7 +582,7 @@ namespace TShockAPI { if (player.IP == ip) { - Netplay.Clients[player.Index].PendingTermination = true; + player.Kick("You logged in from the same IP.", true, true, null, true); args.Handled = true; return; } @@ -591,7 +591,7 @@ namespace TShockAPI var ips = JsonConvert.DeserializeObject>(player.Account.KnownIps); if (ips.Contains(ip)) { - Netplay.Clients[player.Index].PendingTermination = true; + player.Kick("You logged in from another location.", true, true, null, true); args.Handled = true; } } @@ -1340,7 +1340,7 @@ namespace TShockAPI //Reset toggle creative powers to default, preventing potential power transfer & desync on another user occupying this slot later. - foreach(var kv in CreativePowerManager.Instance._powersById) + foreach (var kv in CreativePowerManager.Instance._powersById) { var power = kv.Value; diff --git a/TerrariaServerAPI b/TerrariaServerAPI index 047baef3..af21743d 160000 --- a/TerrariaServerAPI +++ b/TerrariaServerAPI @@ -1 +1 @@ -Subproject commit 047baef38969ac1b8bc4b5c23a9f2fc7836f3751 +Subproject commit af21743d6f1fc468daa558a402cc79d1ee314252