@jsprismarine/raknet
Version:
Basic RakNet implementation written in TypeScript
24 lines (21 loc) • 2.58 kB
JavaScript
import { MessageIdentifiers } from '../MessageIdentifiers.es.js';
import OfflinePacket from '../OfflinePacket.es.js';
class OpenConnectionRequest1 extends OfflinePacket {
constructor(buffer) {
super(MessageIdentifiers.OPEN_CONNECTION_REQUEST_1, buffer);
}
mtuSize;
protocol;
decodePayload() {
this.readMagic();
this.protocol = this.readByte();
this.mtuSize = this.getBuffer().byteLength;
}
encodePayload() {
this.writeMagic();
this.writeByte(this.protocol);
this.write(Buffer.alloc(this.mtuSize - this.getBuffer().byteLength));
}
}
export { OpenConnectionRequest1 as default };
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlbkNvbm5lY3Rpb25SZXF1ZXN0MS5lcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Byb3RvY29sL2Nvbm5lY3Rpb24vT3BlbkNvbm5lY3Rpb25SZXF1ZXN0MS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZXNzYWdlSWRlbnRpZmllcnMgfSBmcm9tICcuLi9NZXNzYWdlSWRlbnRpZmllcnMnO1xuaW1wb3J0IE9mZmxpbmVQYWNrZXQgZnJvbSAnLi4vT2ZmbGluZVBhY2tldCc7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE9wZW5Db25uZWN0aW9uUmVxdWVzdDEgZXh0ZW5kcyBPZmZsaW5lUGFja2V0IHtcbiAgICBwdWJsaWMgY29uc3RydWN0b3IoYnVmZmVyPzogQnVmZmVyKSB7XG4gICAgICAgIHN1cGVyKE1lc3NhZ2VJZGVudGlmaWVycy5PUEVOX0NPTk5FQ1RJT05fUkVRVUVTVF8xLCBidWZmZXIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBtdHVTaXplITogbnVtYmVyO1xuICAgIHB1YmxpYyBwcm90b2NvbCE6IG51bWJlcjtcblxuICAgIHB1YmxpYyBkZWNvZGVQYXlsb2FkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlYWRNYWdpYygpO1xuICAgICAgICB0aGlzLnByb3RvY29sID0gdGhpcy5yZWFkQnl0ZSgpO1xuICAgICAgICB0aGlzLm10dVNpemUgPSB0aGlzLmdldEJ1ZmZlcigpLmJ5dGVMZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGVuY29kZVBheWxvYWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMud3JpdGVNYWdpYygpO1xuICAgICAgICB0aGlzLndyaXRlQnl0ZSh0aGlzLnByb3RvY29sKTtcbiAgICAgICAgdGhpcy53cml0ZShCdWZmZXIuYWxsb2ModGhpcy5tdHVTaXplIC0gdGhpcy5nZXRCdWZmZXIoKS5ieXRlTGVuZ3RoKSk7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLE1BQXFCLCtCQUErQixhQUFjLENBQUE7QUFBQSxFQUN2RCxZQUFZLE1BQWlCLEVBQUE7QUFDaEMsSUFBTSxLQUFBLENBQUEsa0JBQUEsQ0FBbUIsMkJBQTJCLE1BQU0sQ0FBQTtBQUFBO0FBQzlELEVBRU8sT0FBQTtBQUFBLEVBQ0EsUUFBQTtBQUFBLEVBRUEsYUFBc0IsR0FBQTtBQUN6QixJQUFBLElBQUEsQ0FBSyxTQUFVLEVBQUE7QUFDZixJQUFLLElBQUEsQ0FBQSxRQUFBLEdBQVcsS0FBSyxRQUFTLEVBQUE7QUFDOUIsSUFBSyxJQUFBLENBQUEsT0FBQSxHQUFVLElBQUssQ0FBQSxTQUFBLEVBQVksQ0FBQSxVQUFBO0FBQUE7QUFDcEMsRUFFTyxhQUFzQixHQUFBO0FBQ3pCLElBQUEsSUFBQSxDQUFLLFVBQVcsRUFBQTtBQUNoQixJQUFLLElBQUEsQ0FBQSxTQUFBLENBQVUsS0FBSyxRQUFRLENBQUE7QUFDNUIsSUFBSyxJQUFBLENBQUEsS0FBQSxDQUFNLE9BQU8sS0FBTSxDQUFBLElBQUEsQ0FBSyxVQUFVLElBQUssQ0FBQSxTQUFBLEVBQVksQ0FBQSxVQUFVLENBQUMsQ0FBQTtBQUFBO0FBRTNFOzs7OyJ9