PacketPlayingTracks.java 文件源码

java
阅读 28 收藏 0 点赞 0 评论 0

项目:Clef 作者:
@Override
public void readFrom(ByteBuf buf)
{
    PacketBuffer buff = new PacketBuffer(buf);
    tracks = new Track[buf.readInt()];
    for(int i = 0; i < tracks.length; i++)
    {
        String id = ByteBufUtils.readUTF8String(buf);
        String band = ByteBufUtils.readUTF8String(buf);
        String md5 = ByteBufUtils.readUTF8String(buf);
        TrackFile file = AbcLibrary.getTrack(md5);
        tracks[i] = new Track(id, band, md5, file != null ? file.track : null, true);
        tracks[i].playing = buf.readBoolean();
        tracks[i].playProg = buf.readInt();
        int playerCount = buf.readInt();
        for(int x = 0; x < playerCount; x++)
        {
            tracks[i].addPlayer(ByteBufUtils.readUTF8String(buf));
        }
        playerCount = buf.readInt();
        for(int x = 0; x < playerCount; x++)
        {
            int key = buf.readInt();
            int count = buf.readInt();
            HashSet<BlockPos> poses = new HashSet<>();
            for(int k = 0; k < count; k++)
            {
                poses.add(buff.readBlockPos());
            }
            tracks[i].instrumentPlayers.put(key, poses);
        }
        playerCount = buf.readInt();
        for(int x = 0; x < playerCount; x++)
        {
            tracks[i].zombies.add(buf.readInt());
        }
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号