mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-19 18:34:49 +01:00
Implement viewing character details in character showcase
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
package emu.grasscutter.server.packet.recv;
|
||||
|
||||
import emu.grasscutter.game.player.Player;
|
||||
import emu.grasscutter.net.packet.Opcodes;
|
||||
import emu.grasscutter.net.packet.PacketHandler;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.GetFriendShowAvatarInfoReqOuterClass.GetFriendShowAvatarInfoReq;
|
||||
import emu.grasscutter.server.game.GameSession;
|
||||
import emu.grasscutter.server.packet.send.PacketGetFriendShowAvatarInfoRsp;
|
||||
|
||||
@Opcodes(PacketOpcodes.GetFriendShowAvatarInfoReq)
|
||||
public class HandlerGetFriendShowAvatarInfoReq extends PacketHandler {
|
||||
|
||||
@Override
|
||||
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
|
||||
GetFriendShowAvatarInfoReq req = GetFriendShowAvatarInfoReq.parseFrom(payload);
|
||||
|
||||
int targetUid = req.getUid();
|
||||
Player targetPlayer = session.getServer().getPlayerByUid(targetUid, true);
|
||||
|
||||
if (targetPlayer.isShowAvatars()) {
|
||||
session.send(new PacketGetFriendShowAvatarInfoRsp(targetUid, targetPlayer.getShowAvatarInfoList()));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.Opcodes;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.GetFriendShowAvatarInfoRspOuterClass.GetFriendShowAvatarInfoRsp;
|
||||
import emu.grasscutter.net.proto.ShowAvatarInfoOuterClass.ShowAvatarInfo;
|
||||
|
||||
@Opcodes(PacketOpcodes.GetFriendShowAvatarInfoRsp)
|
||||
public class PacketGetFriendShowAvatarInfoRsp extends BasePacket {
|
||||
|
||||
public PacketGetFriendShowAvatarInfoRsp(int uid, List<ShowAvatarInfo> showAvatarInfoList) {
|
||||
super(PacketOpcodes.GetFriendShowAvatarInfoRsp);
|
||||
|
||||
GetFriendShowAvatarInfoRsp.Builder p = GetFriendShowAvatarInfoRsp.newBuilder()
|
||||
.setUid(uid)
|
||||
.addAllShowAvatarInfoList(showAvatarInfoList);
|
||||
|
||||
this.setData(p.build());
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user