Files
DanhengServer-OpenSource/GameServer/Server/Packet/Recv/MarkChest/HandlerUpdateMarkChestCsReq.cs
2024-12-14 20:53:28 +08:00

33 lines
1.1 KiB
C#

using EggLink.DanhengServer.Database.Scene;
using EggLink.DanhengServer.GameServer.Server.Packet.Send.MarkChest;
using EggLink.DanhengServer.Kcp;
using EggLink.DanhengServer.Proto;
namespace EggLink.DanhengServer.GameServer.Server.Packet.Recv.MarkChest;
[Opcode(CmdIds.UpdateMarkChestCsReq)]
public class HandlerUpdateMarkChestCsReq : Handler
{
public override async Task OnHandle(Connection connection, byte[] header, byte[] data)
{
var req = UpdateMarkChestCsReq.Parser.ParseFrom(data);
var player = connection.Player!;
List<SceneMarkedChestData> markedChestData = [];
foreach (var markChestInfo in req.MarkChestInfoList)
{
markedChestData.Add(new SceneMarkedChestData
{
ConfigId = (int)markChestInfo.ConfigId,
FloorId = (int)markChestInfo.FloorId,
GroupId = (int)markChestInfo.GroupId,
PlaneId = (int)markChestInfo.PlaneId
});
}
player.SceneData!.MarkedChestData[(int)req.FuncId] = markedChestData;
await connection.SendPacket(new PacketUpdateMarkChestScRsp(req.FuncId, player));
}
}