1
0
Fork 0
mirror of https://github.com/demostf/demo.js synced 2026-06-04 00:54:14 +02:00
demo.js/handlers/packet/classInfo.js
2015-04-01 20:56:04 +02:00

30 lines
644 B
JavaScript

function logBase2(num) {
var result = 0;
while ((num >>= 1) != 0) {
result++;
}
return result;
}
module.exports = function (stream) { // 10: classInfo
var number = stream.readBits(16);
var create = !!stream.readBits(1);
var entries = [];
if (!create) {
var bits = logBase2(number) + 1;
for (var i = 0; i < number; i++) {
var entry = {
'classId' : stream.readBits(bits),
'className' : stream.readASCIIString(),
'dataTableName': stream.readASCIIString()
};
entries.push(entry);
}
}
return {
'packetType': 'classInfo',
number : number,
create : create,
entries : entries
}
};