diff --git a/TShockAPI/GetDataHandlers.cs b/TShockAPI/GetDataHandlers.cs index 6555daff..6bd0631c 100644 --- a/TShockAPI/GetDataHandlers.cs +++ b/TShockAPI/GetDataHandlers.cs @@ -735,6 +735,11 @@ namespace TShockAPI return true; } + if(args.Player.LastNetPosition == Vector2.Zero) + { + return true; + } + if (!pos.Equals(args.Player.LastNetPosition)) { float distance = Vector2.Distance(new Vector2(pos.X / 16f, pos.Y / 16f), new Vector2(args.Player.LastNetPosition.X / 16f, args.Player.LastNetPosition.Y / 16f)); diff --git a/TShockAPI/TShock.cs b/TShockAPI/TShock.cs index 8c70e98f..9c8f57c0 100644 --- a/TShockAPI/TShock.cs +++ b/TShockAPI/TShock.cs @@ -839,9 +839,12 @@ namespace TShockAPI StartInvasion(); } + player.LastNetPosition = new Vector2(Main.spawnTileX * 16f, Main.spawnTileY * 16f); + if (Config.RememberLeavePos) { var pos = RememberedPos.GetLeavePos(player.Name, player.IP); + player.LastNetPosition = pos; player.Teleport((int) pos.X, (int) pos.Y + 3); }