This commit is contained in:
2026-09-28 00:30:42 +08:00
parent 594b8b6d22
commit 1eae1895e5
6 changed files with 720259 additions and 51099 deletions
@@ -728,13 +728,31 @@ namespace Assets.MyGame.Scripts.Net
/// <summary>
/// LoginHub KillAnnouncement — 全局击杀公告(特殊 Boss 击杀全服推送)
/// 客户端自行拼接公告文本(不再使用服务端 text):
/// 【风雷之渊】珠联璧合!恭喜:【小*鱼】捕获雷皇龙,获得47,640,000金币
/// </summary>
public static void KillAnnouncement(string msg)
{
var data = JsonConvert.DeserializeObject<WebSocketResponseBase<KillAnnouncementData>>(msg).arguments[0];
// 服务端已拼好 text(格式:恭喜玩家*****在风雷之渊 高级场捕获 人鱼公主*2000倍 150000000大奖)
if (data != null && !string.IsNullOrEmpty(data.text))
UIManager.Instance.ShowBoardGongGao(data.text);
if (data == null) return;
// 恭喜词随机
string[] words = { "珠联璧合", "鸿运当头", "满载而归", "财源滚滚", "好运连连", "喜从天降", "手气爆棚", "天选之人" };
string word = words[UnityEngine.Random.Range(0, words.Length)];
// 外层默认色 ECA895,关键字段用 ECB85F 覆盖
string text = $"<color=#ECA895><color=#ECB85F>【{data.gameTypeName}】</color>{word}!恭喜:" +
$"<color=#ECB85F>【{MaskUserName(data.userName)}】</color>捕获{data.fishName}," +
$"获得<color=#ECB85F>{data.gold:N0}</color>金币</color>";
UIManager.Instance.ShowBoardGongGao(text);
}
/// <summary>玩家名脱敏:只显示首尾字,中间用*(如:小美人鱼 → 小*鱼)</summary>
private static string MaskUserName(string name)
{
if (string.IsNullOrEmpty(name)) return string.Empty;
if (name.Length == 1) return name;
return $"{name[0]}*{name[name.Length - 1]}";
}
/// <summary>