D1-3 (XC-8): route PayloadHandler Send-Tell through shared BuildTellCommand (IsPublic at call-site)

This commit is contained in:
2026-06-16 13:10:22 +02:00
parent 97e58934d6
commit 5bdf4217d6
+9 -7
View File
@@ -263,13 +263,15 @@ internal sealed class PayloadHandler
// Eureka, Bozja and Occult need special handling as tells work different
if (!Sheets.IsInForay())
{
// §6.9: single SetPendingMessage call; v1.5.6 used incremental Chat += writes
var builder = $"/tell {player.PlayerName}";
if (world.Value.IsPublic)
builder += $"@{world.Value.Name}";
builder += " ";
_inputBar.SetPendingMessage(builder);
// §6.9: single SetPendingMessage call; v1.5.6 used incremental Chat += writes.
// XC-8: shares the /tell builder with the native detours. IsPublic (not
// IsNullOrEmpty) is resolved HERE — a private/null world must NOT leak @World.
_inputBar.SetPendingMessage(
GameFunctions.Chat.BuildTellCommand(
player.PlayerName,
world.Value.IsPublic ? world.Value.Name.ToString() : null
)
);
}
else if (validContentId)
{