Files
2026-08-24 22:20:36 +02:00

35 lines
1.1 KiB
JavaScript

/*
@Packet name GuildSearchResult
@Packet identifier 189
@Description Sends the
@Data Holds data of a single result of a guild when searching guilds
@Structure -
*/
const encoder = new TextEncoder();
module.exports = function (data) {
const tagBuffer = encoder.encode(data.tag);
const nameBuffer = encoder.encode(data.name);
const packetLength = 9 + 1 + tagBuffer.byteLength + nameBuffer.byteLength;
const buffer = new ArrayBuffer(packetLength);
const view = new DataView(buffer);
view.setUint8(0, 189);
view.setUint8(1, packetLength);
view.setUint16(2, data.id);
view.setUint8(4, data.size.current);
view.setUint8(5, data.size.maximum);
view.setUint8(6, data.hasApplied);
view.setUint8(7, data.isLastEntry);
view.setUint8(8, tagBuffer.byteLength);
new Uint8Array(buffer, 9).set(tagBuffer);
view.setUint8(7 + tagBuffer.byteLength + 1 + 1, nameBuffer.byteLength);
new Uint8Array(buffer, 7 + tagBuffer.byteLength + 1 + 1 + 1).set(nameBuffer);
return buffer;
};