From a4fd4489f0c5ef354494ac2b87ffd5a48819d7bd Mon Sep 17 00:00:00 2001 From: StopWuyu Date: Sat, 23 Aug 2025 14:45:23 +0800 Subject: [PATCH] fix: if set main character as display avatar will cause null ptr --- .../Packet/Recv/PlayerBoard/HandlerSetAssistAvatarCsReq.cs | 4 ++-- .../Packet/Recv/PlayerBoard/HandlerSetDisplayAvatarCsReq.cs | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetAssistAvatarCsReq.cs b/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetAssistAvatarCsReq.cs index 3d05bbbe..4ce0ac8d 100644 --- a/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetAssistAvatarCsReq.cs +++ b/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetAssistAvatarCsReq.cs @@ -17,9 +17,9 @@ public class HandlerSetAssistAvatarCsReq : Handler { if (id == 0) continue; - var avatarData = player.AvatarManager!.AvatarData.FormalAvatars.First(x => + var avatarData = player.AvatarManager!.AvatarData.FormalAvatars.FirstOrDefault(x => x.BaseAvatarId == (int)id); - if (avatarData != null) avatars.Add(avatarData.AvatarId); + if (avatarData != null) avatars.Add(avatarData.BaseAvatarId); } await connection.SendPacket(new PacketSetAssistAvatarScRsp(req.AvatarIdList)); diff --git a/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetDisplayAvatarCsReq.cs b/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetDisplayAvatarCsReq.cs index 8a889b30..b3becf35 100644 --- a/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetDisplayAvatarCsReq.cs +++ b/GameServer/Server/Packet/Recv/PlayerBoard/HandlerSetDisplayAvatarCsReq.cs @@ -17,9 +17,9 @@ public class HandlerSetDisplayAvatarCsReq : Handler { if (avatar.AvatarId == 0) continue; - var avatarData = player.AvatarManager!.AvatarData.FormalAvatars.First(x => + var avatarData = player.AvatarManager!.AvatarData.FormalAvatars.FirstOrDefault(x => x.BaseAvatarId == (int)avatar.AvatarId); - if (avatarData != null) avatars.Add(avatarData.AvatarId); + if (avatarData != null) avatars.Add(avatarData.BaseAvatarId); } await connection.SendPacket(new PacketSetDisplayAvatarScRsp(req.DisplayAvatarList));