/* @Packet name LeaderboardPage @Packet identifier 166 @Description - @Data pId @Structure - */ module.exports = { init: (leaderboardID, length) => { const packetLength = (length * 16 + length * 4) + 4 + 1; const buffer = new ArrayBuffer(packetLength); const view = new DataView(buffer); view.setUint8(0, 166); view.setUint8(1, packetLength); view.setUint16(2, leaderboardID); view.setUint8(4, length); let i = 0; return { update: d => { const startIndex = i * (16 + 4); const nameBuffer = Buffer.from(d.username); for (const pair of nameBuffer.entries()) { const index = pair[0]; view.setUint8(5 + startIndex + index, pair[1]); }; view.setUint32(5 + startIndex + 16, d.amount); i++; }, get: () => { return buffer; } }; } };