mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-22 03:45:10 +01:00
feat: set emoji collection in chat screen (#1864)
This commit is contained in:
@@ -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()));
|
||||
}
|
||||
}
|
||||
@@ -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());
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user