mirror of
https://github.com/Melledy/Grasscutter.git
synced 2024-12-05 03:03:31 +00:00
36 lines
1.2 KiB
Java
36 lines
1.2 KiB
Java
package emu.grasscutter.server.packet.send;
|
|
|
|
import java.util.Map.Entry;
|
|
|
|
import emu.grasscutter.game.avatar.Avatar;
|
|
import emu.grasscutter.game.player.Player;
|
|
import emu.grasscutter.game.player.TeamInfo;
|
|
import emu.grasscutter.net.packet.BasePacket;
|
|
import emu.grasscutter.net.packet.PacketOpcodes;
|
|
import emu.grasscutter.net.proto.AvatarTeamOuterClass.AvatarTeam;
|
|
import emu.grasscutter.net.proto.AvatarTeamUpdateNotifyOuterClass.AvatarTeamUpdateNotify;
|
|
|
|
public class PacketAvatarTeamUpdateNotify extends BasePacket {
|
|
|
|
public PacketAvatarTeamUpdateNotify(Player player) {
|
|
super(PacketOpcodes.AvatarTeamUpdateNotify);
|
|
|
|
AvatarTeamUpdateNotify.Builder proto = AvatarTeamUpdateNotify.newBuilder();
|
|
|
|
for (Entry<Integer, TeamInfo> entry : player.getTeamManager().getTeams().entrySet()) {
|
|
TeamInfo teamInfo = entry.getValue();
|
|
AvatarTeam.Builder avatarTeam = AvatarTeam.newBuilder()
|
|
.setTeamName(teamInfo.getName());
|
|
|
|
for (int i = 0; i < teamInfo.getAvatars().size(); i++) {
|
|
Avatar avatar = player.getAvatars().getAvatarById(teamInfo.getAvatars().get(i));
|
|
avatarTeam.addAvatarGuidList(avatar.getGuid());
|
|
}
|
|
|
|
proto.putAvatarTeamMap(entry.getKey(), avatarTeam.build());
|
|
}
|
|
|
|
this.setData(proto);
|
|
}
|
|
}
|