@jsprismarine/raknet
Version:
Basic RakNet implementation written in TypeScript
36 lines (35 loc) • 3.99 kB
JavaScript
"use strict";
Object.defineProperties(exports, {
__esModule: { value: true },
[Symbol.toStringTag]: { value: "Module" }
});
const require_utils_InetAddress = require("../../utils/InetAddress.cjs.cjs");
const require_protocol_Packet = require("../Packet.cjs.cjs");
const require_protocol_MessageIdentifiers = require("../MessageIdentifiers.cjs.cjs");
//#region src/protocol/login/ConnectionRequestAccepted.ts
var ConnectionRequestAccepted = class extends require_protocol_Packet.default {
constructor(buffer) {
super(require_protocol_MessageIdentifiers.MessageIdentifiers.CONNECTION_REQUEST_ACCEPTED, buffer);
}
clientAddress;
requestTimestamp;
acceptedTimestamp;
decodePayload() {
this.clientAddress = this.readAddress();
this.readShort();
for (let i = 0; i < 20; i++) this.readAddress();
this.requestTimestamp = this.readLong();
this.acceptedTimestamp = this.readLong();
}
encodePayload() {
this.writeAddress(this.clientAddress);
this.writeShort(0);
const sysAddresses = [new require_utils_InetAddress.default("127.0.0.1", 0, 4)];
for (let i = 0; i < 20; i++) this.writeAddress(sysAddresses[i] ?? new require_utils_InetAddress.default("0.0.0.0", 0, 4));
this.writeLong(this.requestTimestamp);
this.writeLong(this.acceptedTimestamp);
}
};
//#endregion
exports.default = ConnectionRequestAccepted;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29ubmVjdGlvblJlcXVlc3RBY2NlcHRlZC5janMuY2pzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm90b2NvbC9sb2dpbi9Db25uZWN0aW9uUmVxdWVzdEFjY2VwdGVkLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluZXRBZGRyZXNzIH0gZnJvbSAnLi4vLi4vJztcbmltcG9ydCB7IE1lc3NhZ2VJZGVudGlmaWVycyB9IGZyb20gJy4uL01lc3NhZ2VJZGVudGlmaWVycyc7XG5pbXBvcnQgUGFja2V0IGZyb20gJy4uL1BhY2tldCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIENvbm5lY3Rpb25SZXF1ZXN0QWNjZXB0ZWQgZXh0ZW5kcyBQYWNrZXQge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihidWZmZXI/OiBCdWZmZXIpIHtcbiAgICAgICAgc3VwZXIoTWVzc2FnZUlkZW50aWZpZXJzLkNPTk5FQ1RJT05fUkVRVUVTVF9BQ0NFUFRFRCwgYnVmZmVyKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xpZW50QWRkcmVzcyE6IEluZXRBZGRyZXNzO1xuICAgIHB1YmxpYyByZXF1ZXN0VGltZXN0YW1wITogYmlnaW50O1xuICAgIHB1YmxpYyBhY2NlcHRlZFRpbWVzdGFtcCE6IGJpZ2ludDtcblxuICAgIHB1YmxpYyBkZWNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNsaWVudEFkZHJlc3MgPSB0aGlzLnJlYWRBZGRyZXNzKCk7XG4gICAgICAgIHRoaXMucmVhZFNob3J0KCk7IC8vIFVua25vd25cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCAyMDsgaSsrKSB7XG4gICAgICAgICAgICB0aGlzLnJlYWRBZGRyZXNzKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJlcXVlc3RUaW1lc3RhbXAgPSB0aGlzLnJlYWRMb25nKCk7XG4gICAgICAgIHRoaXMuYWNjZXB0ZWRUaW1lc3RhbXAgPSB0aGlzLnJlYWRMb25nKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGVuY29kZVBheWxvYWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JpdGVBZGRyZXNzKHRoaXMuY2xpZW50QWRkcmVzcyk7XG4gICAgICAgIHRoaXMud3JpdGVTaG9ydCgwKTsgLy8gVW5rbm93blxuICAgICAgICBjb25zdCBzeXNBZGRyZXNzZXMgPSBbbmV3IEluZXRBZGRyZXNzKCcxMjcuMC4wLjEnLCAwLCA0KV07XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMjA7IGkrKykge1xuICAgICAgICAgICAgdGhpcy53cml0ZUFkZHJlc3Moc3lzQWRkcmVzc2VzW2ldID8/IG5ldyBJbmV0QWRkcmVzcygnMC4wLjAuMCcsIDAsIDQpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMud3JpdGVMb25nKHRoaXMucmVxdWVzdFRpbWVzdGFtcCk7XG4gICAgICAgIHRoaXMud3JpdGVMb25nKHRoaXMuYWNjZXB0ZWRUaW1lc3RhbXApO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBSUEsSUFBcUIsNEJBQXJCLGNBQXVELHdCQUFBLFFBQU87Q0FDMUQsWUFBbUIsUUFBaUI7RUFDaEMsTUFBTSxvQ0FBQSxtQkFBbUIsNkJBQTZCLE1BQU07Q0FDaEU7Q0FFQTtDQUNBO0NBQ0E7Q0FFQSxnQkFBNkI7RUFDekIsS0FBSyxnQkFBZ0IsS0FBSyxZQUFZO0VBQ3RDLEtBQUssVUFBVTtFQUNmLEtBQUssSUFBSSxJQUFJLEdBQUcsSUFBSSxJQUFJLEtBQ3BCLEtBQUssWUFBWTtFQUdyQixLQUFLLG1CQUFtQixLQUFLLFNBQVM7RUFDdEMsS0FBSyxvQkFBb0IsS0FBSyxTQUFTO0NBQzNDO0NBRUEsZ0JBQTZCO0VBQ3pCLEtBQUssYUFBYSxLQUFLLGFBQWE7RUFDcEMsS0FBSyxXQUFXLENBQUM7RUFDakIsTUFBTSxlQUFlLENBQUMsSUFBSSwwQkFBQSxRQUFZLGFBQWEsR0FBRyxDQUFDLENBQUM7RUFDeEQsS0FBSyxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksS0FDcEIsS0FBSyxhQUFhLGFBQWEsTUFBTSxJQUFJLDBCQUFBLFFBQVksV0FBVyxHQUFHLENBQUMsQ0FBQztFQUd6RSxLQUFLLFVBQVUsS0FBSyxnQkFBZ0I7RUFDcEMsS0FBSyxVQUFVLEtBQUssaUJBQWlCO0NBQ3pDO0FBQ0oifQ==