Implement farm stage gacha info handler

This commit is contained in:
Melledy
2023-12-30 22:13:22 -08:00
parent 18912d6e77
commit 1a22d4f09e
5 changed files with 1147 additions and 0 deletions

View File

@@ -0,0 +1,20 @@
package emu.lunarcore.server.packet.recv;
import emu.lunarcore.proto.GetFarmStageGachaInfoCsReqOuterClass.GetFarmStageGachaInfoCsReq;
import emu.lunarcore.server.game.GameSession;
import emu.lunarcore.server.packet.CmdId;
import emu.lunarcore.server.packet.Opcodes;
import emu.lunarcore.server.packet.PacketHandler;
import emu.lunarcore.server.packet.send.PacketGetFarmStageGachaInfoScRsp;
@Opcodes(CmdId.GetFarmStageGachaInfoCsReq)
public class HandlerGetFarmStageGachaInfoCsReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] data) throws Exception {
var req = GetFarmStageGachaInfoCsReq.parseFrom(data);
session.send(new PacketGetFarmStageGachaInfoScRsp(req.getFarmStageGachaIdList()));
}
}

View File

@@ -0,0 +1,26 @@
package emu.lunarcore.server.packet.send;
import emu.lunarcore.proto.FarmStageGachaInfoOuterClass.FarmStageGachaInfo;
import emu.lunarcore.proto.GetFarmStageGachaInfoScRspOuterClass.GetFarmStageGachaInfoScRsp;
import emu.lunarcore.server.packet.BasePacket;
import emu.lunarcore.server.packet.CmdId;
import us.hebi.quickbuf.RepeatedInt;
public class PacketGetFarmStageGachaInfoScRsp extends BasePacket {
public PacketGetFarmStageGachaInfoScRsp(RepeatedInt idList) {
super(CmdId.GetFarmStageGachaInfoScRsp);
var data = GetFarmStageGachaInfoScRsp.newInstance();
for (var id : idList) {
var info = FarmStageGachaInfo.newInstance()
.setGachaId(id)
.setEndTime(Integer.MAX_VALUE);
data.addFarmStageGachaInfoList(info);
}
this.setData(data);
}
}