diff --git a/TerrariaServerAPI/TerrariaApi.Server/Hooking/NetHooks.cs b/TerrariaServerAPI/TerrariaApi.Server/Hooking/NetHooks.cs index a638047..0bb7715 100644 --- a/TerrariaServerAPI/TerrariaApi.Server/Hooking/NetHooks.cs +++ b/TerrariaServerAPI/TerrariaApi.Server/Hooking/NetHooks.cs @@ -38,7 +38,7 @@ static void OnUpdateConnectedClients(object? sender, HookEvents.Terraria.Netplay args.OriginalMethod(); if (ServerApi.ForceUpdate) { - Terraria.Netplay.HasClients = true; + Terraria.Netplay.HasFullyConnectedClients = true; } } @@ -192,7 +192,7 @@ static void OnConnectionAccepted(object? sender, HookEvents.Terraria.Netplay.OnC } if (FindNextOpenClientSlot() == -1) { - Netplay.StopListening(); + Netplay.TcpListener?.StopListening(); } } diff --git a/TerrariaServerAPI/TerrariaApi.Server/Hooking/NpcHooks.cs b/TerrariaServerAPI/TerrariaApi.Server/Hooking/NpcHooks.cs index 1e248a0..1a93df7 100644 --- a/TerrariaServerAPI/TerrariaApi.Server/Hooking/NpcHooks.cs +++ b/TerrariaServerAPI/TerrariaApi.Server/Hooking/NpcHooks.cs @@ -52,7 +52,10 @@ static void OnStrike(NPC npc, HookEvents.Terraria.NPC.StrikeNPCEventArgs args) if (!args.ContinueExecution) return; if (args.entity is Player player) { - if (_hookManager.InvokeNpcStrike(npc, ref args.Damage, ref args.knockBack, ref args.hitDirection, ref args.crit, ref args.noEffect, ref args.fromNet, player)) + // 1.4.5.7 removed the noEffect parameter from NPC.StrikeNPC, so it is + // not part of the OTAPI hook args anymore; keep the internal API intact. + bool noEffect = false; + if (_hookManager.InvokeNpcStrike(npc, ref args.Damage, ref args.knockBack, ref args.hitDirection, ref args.crit, ref noEffect, ref args.fromNet, player)) { args.ContinueExecution = false; args.HookReturnValue = 0; diff --git a/TerrariaServerAPI/TerrariaApi.Server/PacketTypes.cs b/TerrariaServerAPI/TerrariaApi.Server/PacketTypes.cs index 079d7ac..b45e1f8 100644 --- a/TerrariaServerAPI/TerrariaApi.Server/PacketTypes.cs +++ b/TerrariaServerAPI/TerrariaApi.Server/PacketTypes.cs @@ -159,8 +159,10 @@ public enum PacketTypes RequestSection = 159, SyncItemPosition = 160, HostToken = 161, - - // Mobile version packets + // 1.4.5.7: 162 is the NPC strike acknowledgement (DamageNPCAck). + // The old mobile-only aliases are kept as same-value members for API compatibility, + // matching how OTAPI retains deprecated members for older plugins. + DamageNPCAck = 162, ServerInfo = 162, PlayerPlatformInfo = 163 } diff --git a/TerrariaServerAPI/TerrariaServerAPI.csproj b/TerrariaServerAPI/TerrariaServerAPI.csproj index 61005da..6638c32 100644 --- a/TerrariaServerAPI/TerrariaServerAPI.csproj +++ b/TerrariaServerAPI/TerrariaServerAPI.csproj @@ -23,6 +23,6 @@ - +