feat: set emoji collection in chat screen (#1864)

This commit is contained in:
hamusuke
2022-10-16 20:53:00 +09:00
committed by GitHub
parent 610a364b9a
commit 01e37cce39
10 changed files with 3202 additions and 0 deletions

View File

@@ -0,0 +1,15 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketGetChatEmojiCollectionRsp;
@Opcodes(PacketOpcodes.GetChatEmojiCollectionReq)
public class HandlerGetChatEmojiCollectionReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
session.send(new PacketGetChatEmojiCollectionRsp(session.getPlayer().getChatEmojiIdList()));
}
}

View File

@@ -0,0 +1,19 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.SetChatEmojiCollectionReqOuterClass;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketSetChatEmojiCollectionRsp;
@Opcodes(PacketOpcodes.SetChatEmojiCollectionReq)
public class HandlerSetChatEmojiCollectionReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
var req = SetChatEmojiCollectionReqOuterClass.SetChatEmojiCollectionReq.parseFrom(payload);
session.getPlayer().setChatEmojiIdList(req.getChatEmojiCollectionData().getEmojiIdListList());
session.send(new PacketSetChatEmojiCollectionRsp());
}
}

View File

@@ -0,0 +1,21 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.ChatEmojiCollectionDataOuterClass;
import emu.grasscutter.net.proto.GetChatEmojiCollectionRspOuterClass;
import java.util.List;
public class PacketGetChatEmojiCollectionRsp extends BasePacket {
public PacketGetChatEmojiCollectionRsp(List<Integer> emojiIds) {
super(PacketOpcodes.GetChatEmojiCollectionRsp);
var rsp = GetChatEmojiCollectionRspOuterClass.GetChatEmojiCollectionRsp.newBuilder()
.setChatEmojiCollectionData(ChatEmojiCollectionDataOuterClass.ChatEmojiCollectionData.newBuilder()
.addAllEmojiIdList(emojiIds)
.build());
this.setData(rsp);
}
}

View File

@@ -0,0 +1,10 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
public class PacketSetChatEmojiCollectionRsp extends BasePacket {
public PacketSetChatEmojiCollectionRsp() {
super(PacketOpcodes.SetChatEmojiCollectionRsp);
}
}