Initial commit

This commit is contained in:
2026-08-24 22:20:36 +02:00
commit 62f7b1278a
251 changed files with 16670 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
/*
@Packet name GuildDataMemberChanged
@Packet identifier 193
@Description Holds data about a single guild member's changed properties
@Data -
@Structure -
*/
const encoder = new TextEncoder();
module.exports = function (data) {
const packetLength = 5 + 1 + 1 +
("isOnline" in data ? 1 : 0) +
("permission" in data ? 4 : 0) +
("level" in data ? 2 : 0) +
("name" in data ? 1 + data.name.length : 0);
const buffer = new ArrayBuffer(packetLength);
const view = new DataView(buffer);
let offset = 6;
let mask = 0;
console.info(packetLength, "isOnline" in data, "permission" in data, "level" in data, "name" in data)
if ("isOnline" in data) {
mask |= (1 << 0);
view.setUint8(offset + 1, data.isOnline);
offset += 1;
};
if ("permission" in data) {
mask |= (1 << 1);
view.setUint32(offset + 1, data.permission);
offset += 4;
};
if ("level" in data) {
mask |= (1 << 2);
view.setUint16(offset + 1, data.level);
offset += 2;
};
if ("name" in data) {
mask |= (1 << 3);
const nameBuffer = encoder.encode(data.name);
view.setUint8(offset + 1, nameBuffer.byteLength);
new Uint8Array(buffer, offset + 2).set(nameBuffer);
offset += 1 + nameBuffer.byteLength;
};
view.setUint8(0, 193);
view.setUint8(1, packetLength);
view.setUint8(2, mask);
view.setUint32(3, data.id);
return buffer;
};