30 lines
853 B
JavaScript
30 lines
853 B
JavaScript
/*
|
|
@Packet name GuildDataMember
|
|
@Packet identifier 176
|
|
@Description Includes data about a guild member
|
|
@Data pId,
|
|
@Structure -
|
|
*/
|
|
|
|
const encoder = new TextEncoder();
|
|
|
|
module.exports = function (data) {
|
|
const nameBuffer = encoder.encode(data.name);
|
|
|
|
const packetLength = 13 + 1 + nameBuffer.byteLength;
|
|
const buffer = new ArrayBuffer(packetLength);
|
|
const view = new DataView(buffer);
|
|
|
|
view.setUint8(0, 176);
|
|
view.setUint8(1, packetLength);
|
|
view.setUint32(2, data.id);
|
|
view.setUint32(6, data.permission)
|
|
view.setUint8(10, data.isOnline);
|
|
view.setUint16(11, data.pirateLevel);
|
|
console.info(data);
|
|
view.setUint8(13, nameBuffer.byteLength);
|
|
new Uint8Array(buffer, 14).set(nameBuffer);
|
|
|
|
return buffer;
|
|
};
|