node-cs2
Version:
Modern CS2/CS:GO Game Coordinator integration with latest GameTracking-CS2 protobuf definitions. Includes support for highlight_reel, wrapped_sticker, variations, Promise-based API, crate opening, sticker/patch/keychain operations, and all modern CS2 fiel
1,069 lines (999 loc) • 811 kB
JavaScript
/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
(function(global, factory) { /* global define, require, module */
/* AMD */ if (typeof define === 'function' && define.amd)
define(["protobufjs/minimal"], factory);
/* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports)
module.exports = factory(require("protobufjs/minimal"));
})(this, function($protobuf) {
"use strict";
// Common aliases
var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util;
// Exported root namespace
var $root = $protobuf.roots["default"] || ($protobuf.roots["default"] = {});
$root.CInButtonStatePB = (function() {
/**
* Properties of a CInButtonStatePB.
* @exports ICInButtonStatePB
* @interface ICInButtonStatePB
* @property {number|Long|null} [buttonstate1] CInButtonStatePB buttonstate1
* @property {number|Long|null} [buttonstate2] CInButtonStatePB buttonstate2
* @property {number|Long|null} [buttonstate3] CInButtonStatePB buttonstate3
*/
/**
* Constructs a new CInButtonStatePB.
* @exports CInButtonStatePB
* @classdesc Represents a CInButtonStatePB.
* @implements ICInButtonStatePB
* @constructor
* @param {ICInButtonStatePB=} [properties] Properties to set
*/
function CInButtonStatePB(properties) {
if (properties)
for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
if (properties[keys[i]] != null)
this[keys[i]] = properties[keys[i]];
}
/**
* CInButtonStatePB buttonstate1.
* @member {number|Long} buttonstate1
* @memberof CInButtonStatePB
* @instance
*/
CInButtonStatePB.prototype.buttonstate1 = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
/**
* CInButtonStatePB buttonstate2.
* @member {number|Long} buttonstate2
* @memberof CInButtonStatePB
* @instance
*/
CInButtonStatePB.prototype.buttonstate2 = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
/**
* CInButtonStatePB buttonstate3.
* @member {number|Long} buttonstate3
* @memberof CInButtonStatePB
* @instance
*/
CInButtonStatePB.prototype.buttonstate3 = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
/**
* Creates a new CInButtonStatePB instance using the specified properties.
* @function create
* @memberof CInButtonStatePB
* @static
* @param {ICInButtonStatePB=} [properties] Properties to set
* @returns {CInButtonStatePB} CInButtonStatePB instance
*/
CInButtonStatePB.create = function create(properties) {
return new CInButtonStatePB(properties);
};
/**
* Encodes the specified CInButtonStatePB message. Does not implicitly {@link CInButtonStatePB.verify|verify} messages.
* @function encode
* @memberof CInButtonStatePB
* @static
* @param {ICInButtonStatePB} message CInButtonStatePB message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
CInButtonStatePB.encode = function encode(message, writer) {
if (!writer)
writer = $Writer.create();
if (message.buttonstate1 != null && Object.hasOwnProperty.call(message, "buttonstate1"))
writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.buttonstate1);
if (message.buttonstate2 != null && Object.hasOwnProperty.call(message, "buttonstate2"))
writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.buttonstate2);
if (message.buttonstate3 != null && Object.hasOwnProperty.call(message, "buttonstate3"))
writer.uint32(/* id 3, wireType 0 =*/24).uint64(message.buttonstate3);
return writer;
};
/**
* Encodes the specified CInButtonStatePB message, length delimited. Does not implicitly {@link CInButtonStatePB.verify|verify} messages.
* @function encodeDelimited
* @memberof CInButtonStatePB
* @static
* @param {ICInButtonStatePB} message CInButtonStatePB message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
CInButtonStatePB.encodeDelimited = function encodeDelimited(message, writer) {
return this.encode(message, writer).ldelim();
};
/**
* Decodes a CInButtonStatePB message from the specified reader or buffer.
* @function decode
* @memberof CInButtonStatePB
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @param {number} [length] Message length if known beforehand
* @returns {CInButtonStatePB} CInButtonStatePB
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
CInButtonStatePB.decode = function decode(reader, length, error) {
if (!(reader instanceof $Reader))
reader = $Reader.create(reader);
var end = length === undefined ? reader.len : reader.pos + length, message = new $root.CInButtonStatePB();
while (reader.pos < end) {
var tag = reader.uint32();
if (tag === error)
break;
switch (tag >>> 3) {
case 1: {
message.buttonstate1 = reader.uint64();
break;
}
case 2: {
message.buttonstate2 = reader.uint64();
break;
}
case 3: {
message.buttonstate3 = reader.uint64();
break;
}
default:
reader.skipType(tag & 7);
break;
}
}
return message;
};
/**
* Decodes a CInButtonStatePB message from the specified reader or buffer, length delimited.
* @function decodeDelimited
* @memberof CInButtonStatePB
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @returns {CInButtonStatePB} CInButtonStatePB
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
CInButtonStatePB.decodeDelimited = function decodeDelimited(reader) {
if (!(reader instanceof $Reader))
reader = new $Reader(reader);
return this.decode(reader, reader.uint32());
};
/**
* Verifies a CInButtonStatePB message.
* @function verify
* @memberof CInButtonStatePB
* @static
* @param {Object.<string,*>} message Plain object to verify
* @returns {string|null} `null` if valid, otherwise the reason why it is not
*/
CInButtonStatePB.verify = function verify(message) {
if (typeof message !== "object" || message === null)
return "object expected";
if (message.buttonstate1 != null && message.hasOwnProperty("buttonstate1"))
if (!$util.isInteger(message.buttonstate1) && !(message.buttonstate1 && $util.isInteger(message.buttonstate1.low) && $util.isInteger(message.buttonstate1.high)))
return "buttonstate1: integer|Long expected";
if (message.buttonstate2 != null && message.hasOwnProperty("buttonstate2"))
if (!$util.isInteger(message.buttonstate2) && !(message.buttonstate2 && $util.isInteger(message.buttonstate2.low) && $util.isInteger(message.buttonstate2.high)))
return "buttonstate2: integer|Long expected";
if (message.buttonstate3 != null && message.hasOwnProperty("buttonstate3"))
if (!$util.isInteger(message.buttonstate3) && !(message.buttonstate3 && $util.isInteger(message.buttonstate3.low) && $util.isInteger(message.buttonstate3.high)))
return "buttonstate3: integer|Long expected";
return null;
};
/**
* Creates a CInButtonStatePB message from a plain object. Also converts values to their respective internal types.
* @function fromObject
* @memberof CInButtonStatePB
* @static
* @param {Object.<string,*>} object Plain object
* @returns {CInButtonStatePB} CInButtonStatePB
*/
CInButtonStatePB.fromObject = function fromObject(object) {
if (object instanceof $root.CInButtonStatePB)
return object;
var message = new $root.CInButtonStatePB();
if (object.buttonstate1 != null)
if ($util.Long)
(message.buttonstate1 = $util.Long.fromValue(object.buttonstate1)).unsigned = true;
else if (typeof object.buttonstate1 === "string")
message.buttonstate1 = parseInt(object.buttonstate1, 10);
else if (typeof object.buttonstate1 === "number")
message.buttonstate1 = object.buttonstate1;
else if (typeof object.buttonstate1 === "object")
message.buttonstate1 = new $util.LongBits(object.buttonstate1.low >>> 0, object.buttonstate1.high >>> 0).toNumber(true);
if (object.buttonstate2 != null)
if ($util.Long)
(message.buttonstate2 = $util.Long.fromValue(object.buttonstate2)).unsigned = true;
else if (typeof object.buttonstate2 === "string")
message.buttonstate2 = parseInt(object.buttonstate2, 10);
else if (typeof object.buttonstate2 === "number")
message.buttonstate2 = object.buttonstate2;
else if (typeof object.buttonstate2 === "object")
message.buttonstate2 = new $util.LongBits(object.buttonstate2.low >>> 0, object.buttonstate2.high >>> 0).toNumber(true);
if (object.buttonstate3 != null)
if ($util.Long)
(message.buttonstate3 = $util.Long.fromValue(object.buttonstate3)).unsigned = true;
else if (typeof object.buttonstate3 === "string")
message.buttonstate3 = parseInt(object.buttonstate3, 10);
else if (typeof object.buttonstate3 === "number")
message.buttonstate3 = object.buttonstate3;
else if (typeof object.buttonstate3 === "object")
message.buttonstate3 = new $util.LongBits(object.buttonstate3.low >>> 0, object.buttonstate3.high >>> 0).toNumber(true);
return message;
};
/**
* Creates a plain object from a CInButtonStatePB message. Also converts values to other types if specified.
* @function toObject
* @memberof CInButtonStatePB
* @static
* @param {CInButtonStatePB} message CInButtonStatePB
* @param {$protobuf.IConversionOptions} [options] Conversion options
* @returns {Object.<string,*>} Plain object
*/
CInButtonStatePB.toObject = function toObject(message, options) {
if (!options)
options = {};
var object = {};
if (options.defaults) {
if ($util.Long) {
var long = new $util.Long(0, 0, true);
object.buttonstate1 = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
} else
object.buttonstate1 = options.longs === String ? "0" : 0;
if ($util.Long) {
var long = new $util.Long(0, 0, true);
object.buttonstate2 = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
} else
object.buttonstate2 = options.longs === String ? "0" : 0;
if ($util.Long) {
var long = new $util.Long(0, 0, true);
object.buttonstate3 = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
} else
object.buttonstate3 = options.longs === String ? "0" : 0;
}
if (message.buttonstate1 != null && message.hasOwnProperty("buttonstate1"))
if (typeof message.buttonstate1 === "number")
object.buttonstate1 = options.longs === String ? String(message.buttonstate1) : message.buttonstate1;
else
object.buttonstate1 = options.longs === String ? $util.Long.prototype.toString.call(message.buttonstate1) : options.longs === Number ? new $util.LongBits(message.buttonstate1.low >>> 0, message.buttonstate1.high >>> 0).toNumber(true) : message.buttonstate1;
if (message.buttonstate2 != null && message.hasOwnProperty("buttonstate2"))
if (typeof message.buttonstate2 === "number")
object.buttonstate2 = options.longs === String ? String(message.buttonstate2) : message.buttonstate2;
else
object.buttonstate2 = options.longs === String ? $util.Long.prototype.toString.call(message.buttonstate2) : options.longs === Number ? new $util.LongBits(message.buttonstate2.low >>> 0, message.buttonstate2.high >>> 0).toNumber(true) : message.buttonstate2;
if (message.buttonstate3 != null && message.hasOwnProperty("buttonstate3"))
if (typeof message.buttonstate3 === "number")
object.buttonstate3 = options.longs === String ? String(message.buttonstate3) : message.buttonstate3;
else
object.buttonstate3 = options.longs === String ? $util.Long.prototype.toString.call(message.buttonstate3) : options.longs === Number ? new $util.LongBits(message.buttonstate3.low >>> 0, message.buttonstate3.high >>> 0).toNumber(true) : message.buttonstate3;
return object;
};
/**
* Converts this CInButtonStatePB to JSON.
* @function toJSON
* @memberof CInButtonStatePB
* @instance
* @returns {Object.<string,*>} JSON object
*/
CInButtonStatePB.prototype.toJSON = function toJSON() {
return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
};
/**
* Gets the default type url for CInButtonStatePB
* @function getTypeUrl
* @memberof CInButtonStatePB
* @static
* @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
* @returns {string} The default type url
*/
CInButtonStatePB.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
if (typeUrlPrefix === undefined) {
typeUrlPrefix = "type.googleapis.com";
}
return typeUrlPrefix + "/CInButtonStatePB";
};
return CInButtonStatePB;
})();
$root.CSubtickMoveStep = (function() {
/**
* Properties of a CSubtickMoveStep.
* @exports ICSubtickMoveStep
* @interface ICSubtickMoveStep
* @property {number|Long|null} [button] CSubtickMoveStep button
* @property {boolean|null} [pressed] CSubtickMoveStep pressed
* @property {number|null} [when] CSubtickMoveStep when
* @property {number|null} [analog_forward_delta] CSubtickMoveStep analog_forward_delta
* @property {number|null} [analog_left_delta] CSubtickMoveStep analog_left_delta
* @property {number|null} [pitch_delta] CSubtickMoveStep pitch_delta
* @property {number|null} [yaw_delta] CSubtickMoveStep yaw_delta
*/
/**
* Constructs a new CSubtickMoveStep.
* @exports CSubtickMoveStep
* @classdesc Represents a CSubtickMoveStep.
* @implements ICSubtickMoveStep
* @constructor
* @param {ICSubtickMoveStep=} [properties] Properties to set
*/
function CSubtickMoveStep(properties) {
if (properties)
for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
if (properties[keys[i]] != null)
this[keys[i]] = properties[keys[i]];
}
/**
* CSubtickMoveStep button.
* @member {number|Long} button
* @memberof CSubtickMoveStep
* @instance
*/
CSubtickMoveStep.prototype.button = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
/**
* CSubtickMoveStep pressed.
* @member {boolean} pressed
* @memberof CSubtickMoveStep
* @instance
*/
CSubtickMoveStep.prototype.pressed = false;
/**
* CSubtickMoveStep when.
* @member {number} when
* @memberof CSubtickMoveStep
* @instance
*/
CSubtickMoveStep.prototype.when = 0;
/**
* CSubtickMoveStep analog_forward_delta.
* @member {number} analog_forward_delta
* @memberof CSubtickMoveStep
* @instance
*/
CSubtickMoveStep.prototype.analog_forward_delta = 0;
/**
* CSubtickMoveStep analog_left_delta.
* @member {number} analog_left_delta
* @memberof CSubtickMoveStep
* @instance
*/
CSubtickMoveStep.prototype.analog_left_delta = 0;
/**
* CSubtickMoveStep pitch_delta.
* @member {number} pitch_delta
* @memberof CSubtickMoveStep
* @instance
*/
CSubtickMoveStep.prototype.pitch_delta = 0;
/**
* CSubtickMoveStep yaw_delta.
* @member {number} yaw_delta
* @memberof CSubtickMoveStep
* @instance
*/
CSubtickMoveStep.prototype.yaw_delta = 0;
/**
* Creates a new CSubtickMoveStep instance using the specified properties.
* @function create
* @memberof CSubtickMoveStep
* @static
* @param {ICSubtickMoveStep=} [properties] Properties to set
* @returns {CSubtickMoveStep} CSubtickMoveStep instance
*/
CSubtickMoveStep.create = function create(properties) {
return new CSubtickMoveStep(properties);
};
/**
* Encodes the specified CSubtickMoveStep message. Does not implicitly {@link CSubtickMoveStep.verify|verify} messages.
* @function encode
* @memberof CSubtickMoveStep
* @static
* @param {ICSubtickMoveStep} message CSubtickMoveStep message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
CSubtickMoveStep.encode = function encode(message, writer) {
if (!writer)
writer = $Writer.create();
if (message.button != null && Object.hasOwnProperty.call(message, "button"))
writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.button);
if (message.pressed != null && Object.hasOwnProperty.call(message, "pressed"))
writer.uint32(/* id 2, wireType 0 =*/16).bool(message.pressed);
if (message.when != null && Object.hasOwnProperty.call(message, "when"))
writer.uint32(/* id 3, wireType 5 =*/29).float(message.when);
if (message.analog_forward_delta != null && Object.hasOwnProperty.call(message, "analog_forward_delta"))
writer.uint32(/* id 4, wireType 5 =*/37).float(message.analog_forward_delta);
if (message.analog_left_delta != null && Object.hasOwnProperty.call(message, "analog_left_delta"))
writer.uint32(/* id 5, wireType 5 =*/45).float(message.analog_left_delta);
if (message.pitch_delta != null && Object.hasOwnProperty.call(message, "pitch_delta"))
writer.uint32(/* id 8, wireType 5 =*/69).float(message.pitch_delta);
if (message.yaw_delta != null && Object.hasOwnProperty.call(message, "yaw_delta"))
writer.uint32(/* id 9, wireType 5 =*/77).float(message.yaw_delta);
return writer;
};
/**
* Encodes the specified CSubtickMoveStep message, length delimited. Does not implicitly {@link CSubtickMoveStep.verify|verify} messages.
* @function encodeDelimited
* @memberof CSubtickMoveStep
* @static
* @param {ICSubtickMoveStep} message CSubtickMoveStep message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
CSubtickMoveStep.encodeDelimited = function encodeDelimited(message, writer) {
return this.encode(message, writer).ldelim();
};
/**
* Decodes a CSubtickMoveStep message from the specified reader or buffer.
* @function decode
* @memberof CSubtickMoveStep
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @param {number} [length] Message length if known beforehand
* @returns {CSubtickMoveStep} CSubtickMoveStep
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
CSubtickMoveStep.decode = function decode(reader, length, error) {
if (!(reader instanceof $Reader))
reader = $Reader.create(reader);
var end = length === undefined ? reader.len : reader.pos + length, message = new $root.CSubtickMoveStep();
while (reader.pos < end) {
var tag = reader.uint32();
if (tag === error)
break;
switch (tag >>> 3) {
case 1: {
message.button = reader.uint64();
break;
}
case 2: {
message.pressed = reader.bool();
break;
}
case 3: {
message.when = reader.float();
break;
}
case 4: {
message.analog_forward_delta = reader.float();
break;
}
case 5: {
message.analog_left_delta = reader.float();
break;
}
case 8: {
message.pitch_delta = reader.float();
break;
}
case 9: {
message.yaw_delta = reader.float();
break;
}
default:
reader.skipType(tag & 7);
break;
}
}
return message;
};
/**
* Decodes a CSubtickMoveStep message from the specified reader or buffer, length delimited.
* @function decodeDelimited
* @memberof CSubtickMoveStep
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @returns {CSubtickMoveStep} CSubtickMoveStep
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
CSubtickMoveStep.decodeDelimited = function decodeDelimited(reader) {
if (!(reader instanceof $Reader))
reader = new $Reader(reader);
return this.decode(reader, reader.uint32());
};
/**
* Verifies a CSubtickMoveStep message.
* @function verify
* @memberof CSubtickMoveStep
* @static
* @param {Object.<string,*>} message Plain object to verify
* @returns {string|null} `null` if valid, otherwise the reason why it is not
*/
CSubtickMoveStep.verify = function verify(message) {
if (typeof message !== "object" || message === null)
return "object expected";
if (message.button != null && message.hasOwnProperty("button"))
if (!$util.isInteger(message.button) && !(message.button && $util.isInteger(message.button.low) && $util.isInteger(message.button.high)))
return "button: integer|Long expected";
if (message.pressed != null && message.hasOwnProperty("pressed"))
if (typeof message.pressed !== "boolean")
return "pressed: boolean expected";
if (message.when != null && message.hasOwnProperty("when"))
if (typeof message.when !== "number")
return "when: number expected";
if (message.analog_forward_delta != null && message.hasOwnProperty("analog_forward_delta"))
if (typeof message.analog_forward_delta !== "number")
return "analog_forward_delta: number expected";
if (message.analog_left_delta != null && message.hasOwnProperty("analog_left_delta"))
if (typeof message.analog_left_delta !== "number")
return "analog_left_delta: number expected";
if (message.pitch_delta != null && message.hasOwnProperty("pitch_delta"))
if (typeof message.pitch_delta !== "number")
return "pitch_delta: number expected";
if (message.yaw_delta != null && message.hasOwnProperty("yaw_delta"))
if (typeof message.yaw_delta !== "number")
return "yaw_delta: number expected";
return null;
};
/**
* Creates a CSubtickMoveStep message from a plain object. Also converts values to their respective internal types.
* @function fromObject
* @memberof CSubtickMoveStep
* @static
* @param {Object.<string,*>} object Plain object
* @returns {CSubtickMoveStep} CSubtickMoveStep
*/
CSubtickMoveStep.fromObject = function fromObject(object) {
if (object instanceof $root.CSubtickMoveStep)
return object;
var message = new $root.CSubtickMoveStep();
if (object.button != null)
if ($util.Long)
(message.button = $util.Long.fromValue(object.button)).unsigned = true;
else if (typeof object.button === "string")
message.button = parseInt(object.button, 10);
else if (typeof object.button === "number")
message.button = object.button;
else if (typeof object.button === "object")
message.button = new $util.LongBits(object.button.low >>> 0, object.button.high >>> 0).toNumber(true);
if (object.pressed != null)
message.pressed = Boolean(object.pressed);
if (object.when != null)
message.when = Number(object.when);
if (object.analog_forward_delta != null)
message.analog_forward_delta = Number(object.analog_forward_delta);
if (object.analog_left_delta != null)
message.analog_left_delta = Number(object.analog_left_delta);
if (object.pitch_delta != null)
message.pitch_delta = Number(object.pitch_delta);
if (object.yaw_delta != null)
message.yaw_delta = Number(object.yaw_delta);
return message;
};
/**
* Creates a plain object from a CSubtickMoveStep message. Also converts values to other types if specified.
* @function toObject
* @memberof CSubtickMoveStep
* @static
* @param {CSubtickMoveStep} message CSubtickMoveStep
* @param {$protobuf.IConversionOptions} [options] Conversion options
* @returns {Object.<string,*>} Plain object
*/
CSubtickMoveStep.toObject = function toObject(message, options) {
if (!options)
options = {};
var object = {};
if (options.defaults) {
if ($util.Long) {
var long = new $util.Long(0, 0, true);
object.button = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
} else
object.button = options.longs === String ? "0" : 0;
object.pressed = false;
object.when = 0;
object.analog_forward_delta = 0;
object.analog_left_delta = 0;
object.pitch_delta = 0;
object.yaw_delta = 0;
}
if (message.button != null && message.hasOwnProperty("button"))
if (typeof message.button === "number")
object.button = options.longs === String ? String(message.button) : message.button;
else
object.button = options.longs === String ? $util.Long.prototype.toString.call(message.button) : options.longs === Number ? new $util.LongBits(message.button.low >>> 0, message.button.high >>> 0).toNumber(true) : message.button;
if (message.pressed != null && message.hasOwnProperty("pressed"))
object.pressed = message.pressed;
if (message.when != null && message.hasOwnProperty("when"))
object.when = options.json && !isFinite(message.when) ? String(message.when) : message.when;
if (message.analog_forward_delta != null && message.hasOwnProperty("analog_forward_delta"))
object.analog_forward_delta = options.json && !isFinite(message.analog_forward_delta) ? String(message.analog_forward_delta) : message.analog_forward_delta;
if (message.analog_left_delta != null && message.hasOwnProperty("analog_left_delta"))
object.analog_left_delta = options.json && !isFinite(message.analog_left_delta) ? String(message.analog_left_delta) : message.analog_left_delta;
if (message.pitch_delta != null && message.hasOwnProperty("pitch_delta"))
object.pitch_delta = options.json && !isFinite(message.pitch_delta) ? String(message.pitch_delta) : message.pitch_delta;
if (message.yaw_delta != null && message.hasOwnProperty("yaw_delta"))
object.yaw_delta = options.json && !isFinite(message.yaw_delta) ? String(message.yaw_delta) : message.yaw_delta;
return object;
};
/**
* Converts this CSubtickMoveStep to JSON.
* @function toJSON
* @memberof CSubtickMoveStep
* @instance
* @returns {Object.<string,*>} JSON object
*/
CSubtickMoveStep.prototype.toJSON = function toJSON() {
return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
};
/**
* Gets the default type url for CSubtickMoveStep
* @function getTypeUrl
* @memberof CSubtickMoveStep
* @static
* @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
* @returns {string} The default type url
*/
CSubtickMoveStep.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
if (typeUrlPrefix === undefined) {
typeUrlPrefix = "type.googleapis.com";
}
return typeUrlPrefix + "/CSubtickMoveStep";
};
return CSubtickMoveStep;
})();
$root.CBaseUserCmdPB = (function() {
/**
* Properties of a CBaseUserCmdPB.
* @exports ICBaseUserCmdPB
* @interface ICBaseUserCmdPB
* @property {number|null} [legacy_command_number] CBaseUserCmdPB legacy_command_number
* @property {number|null} [client_tick] CBaseUserCmdPB client_tick
* @property {number|null} [prediction_offset_ticks_x256] CBaseUserCmdPB prediction_offset_ticks_x256
* @property {ICInButtonStatePB|null} [buttons_pb] CBaseUserCmdPB buttons_pb
* @property {ICMsgQAngle|null} [viewangles] CBaseUserCmdPB viewangles
* @property {number|null} [forwardmove] CBaseUserCmdPB forwardmove
* @property {number|null} [leftmove] CBaseUserCmdPB leftmove
* @property {number|null} [upmove] CBaseUserCmdPB upmove
* @property {number|null} [impulse] CBaseUserCmdPB impulse
* @property {number|null} [weaponselect] CBaseUserCmdPB weaponselect
* @property {number|null} [random_seed] CBaseUserCmdPB random_seed
* @property {number|null} [mousedx] CBaseUserCmdPB mousedx
* @property {number|null} [mousedy] CBaseUserCmdPB mousedy
* @property {number|null} [pawn_entity_handle] CBaseUserCmdPB pawn_entity_handle
* @property {Array.<ICSubtickMoveStep>|null} [subtick_moves] CBaseUserCmdPB subtick_moves
* @property {Uint8Array|null} [move_crc] CBaseUserCmdPB move_crc
* @property {number|null} [consumed_server_angle_changes] CBaseUserCmdPB consumed_server_angle_changes
* @property {number|null} [cmd_flags] CBaseUserCmdPB cmd_flags
*/
/**
* Constructs a new CBaseUserCmdPB.
* @exports CBaseUserCmdPB
* @classdesc Represents a CBaseUserCmdPB.
* @implements ICBaseUserCmdPB
* @constructor
* @param {ICBaseUserCmdPB=} [properties] Properties to set
*/
function CBaseUserCmdPB(properties) {
this.subtick_moves = [];
if (properties)
for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
if (properties[keys[i]] != null)
this[keys[i]] = properties[keys[i]];
}
/**
* CBaseUserCmdPB legacy_command_number.
* @member {number} legacy_command_number
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.legacy_command_number = 0;
/**
* CBaseUserCmdPB client_tick.
* @member {number} client_tick
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.client_tick = 0;
/**
* CBaseUserCmdPB prediction_offset_ticks_x256.
* @member {number} prediction_offset_ticks_x256
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.prediction_offset_ticks_x256 = 0;
/**
* CBaseUserCmdPB buttons_pb.
* @member {ICInButtonStatePB|null|undefined} buttons_pb
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.buttons_pb = null;
/**
* CBaseUserCmdPB viewangles.
* @member {ICMsgQAngle|null|undefined} viewangles
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.viewangles = null;
/**
* CBaseUserCmdPB forwardmove.
* @member {number} forwardmove
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.forwardmove = 0;
/**
* CBaseUserCmdPB leftmove.
* @member {number} leftmove
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.leftmove = 0;
/**
* CBaseUserCmdPB upmove.
* @member {number} upmove
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.upmove = 0;
/**
* CBaseUserCmdPB impulse.
* @member {number} impulse
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.impulse = 0;
/**
* CBaseUserCmdPB weaponselect.
* @member {number} weaponselect
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.weaponselect = 0;
/**
* CBaseUserCmdPB random_seed.
* @member {number} random_seed
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.random_seed = 0;
/**
* CBaseUserCmdPB mousedx.
* @member {number} mousedx
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.mousedx = 0;
/**
* CBaseUserCmdPB mousedy.
* @member {number} mousedy
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.mousedy = 0;
/**
* CBaseUserCmdPB pawn_entity_handle.
* @member {number} pawn_entity_handle
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.pawn_entity_handle = 16777215;
/**
* CBaseUserCmdPB subtick_moves.
* @member {Array.<ICSubtickMoveStep>} subtick_moves
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.subtick_moves = $util.emptyArray;
/**
* CBaseUserCmdPB move_crc.
* @member {Uint8Array} move_crc
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.move_crc = $util.newBuffer([]);
/**
* CBaseUserCmdPB consumed_server_angle_changes.
* @member {number} consumed_server_angle_changes
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.consumed_server_angle_changes = 0;
/**
* CBaseUserCmdPB cmd_flags.
* @member {number} cmd_flags
* @memberof CBaseUserCmdPB
* @instance
*/
CBaseUserCmdPB.prototype.cmd_flags = 0;
/**
* Creates a new CBaseUserCmdPB instance using the specified properties.
* @function create
* @memberof CBaseUserCmdPB
* @static
* @param {ICBaseUserCmdPB=} [properties] Properties to set
* @returns {CBaseUserCmdPB} CBaseUserCmdPB instance
*/
CBaseUserCmdPB.create = function create(properties) {
return new CBaseUserCmdPB(properties);
};
/**
* Encodes the specified CBaseUserCmdPB message. Does not implicitly {@link CBaseUserCmdPB.verify|verify} messages.
* @function encode
* @memberof CBaseUserCmdPB
* @static
* @param {ICBaseUserCmdPB} message CBaseUserCmdPB message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
CBaseUserCmdPB.encode = function encode(message, writer) {
if (!writer)
writer = $Writer.create();
if (message.legacy_command_number != null && Object.hasOwnProperty.call(message, "legacy_command_number"))
writer.uint32(/* id 1, wireType 0 =*/8).int32(message.legacy_command_number);
if (message.client_tick != null && Object.hasOwnProperty.call(message, "client_tick"))
writer.uint32(/* id 2, wireType 0 =*/16).int32(message.client_tick);
if (message.buttons_pb != null && Object.hasOwnProperty.call(message, "buttons_pb"))
$root.CInButtonStatePB.encode(message.buttons_pb, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
if (message.viewangles != null && Object.hasOwnProperty.call(message, "viewangles"))
$root.CMsgQAngle.encode(message.viewangles, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
if (message.forwardmove != null && Object.hasOwnProperty.call(message, "forwardmove"))
writer.uint32(/* id 5, wireType 5 =*/45).float(message.forwardmove);
if (message.leftmove != null && Object.hasOwnProperty.call(message, "leftmove"))
writer.uint32(/* id 6, wireType 5 =*/53).float(message.leftmove);
if (message.upmove != null && Object.hasOwnProperty.call(message, "upmove"))
writer.uint32(/* id 7, wireType 5 =*/61).float(message.upmove);
if (message.impulse != null && Object.hasOwnProperty.call(message, "impulse"))
writer.uint32(/* id 8, wireType 0 =*/64).int32(message.impulse);
if (message.weaponselect != null && Object.hasOwnProperty.call(message, "weaponselect"))
writer.uint32(/* id 9, wireType 0 =*/72).int32(message.weaponselect);
if (message.random_seed != null && Object.hasOwnProperty.call(message, "random_seed"))
writer.uint32(/* id 10, wireType 0 =*/80).int32(message.random_seed);
if (message.mousedx != null && Object.hasOwnProperty.call(message, "mousedx"))
writer.uint32(/* id 11, wireType 0 =*/88).int32(message.mousedx);
if (message.mousedy != null && Object.hasOwnProperty.call(message, "mousedy"))
writer.uint32(/* id 12, wireType 0 =*/96).int32(message.mousedy);
if (message.pawn_entity_handle != null && Object.hasOwnProperty.call(message, "pawn_entity_handle"))
writer.uint32(/* id 14, wireType 0 =*/112).uint32(message.pawn_entity_handle);
if (message.prediction_offset_ticks_x256 != null && Object.hasOwnProperty.call(message, "prediction_offset_ticks_x256"))
writer.uint32(/* id 17, wireType 0 =*/136).uint32(message.prediction_offset_ticks_x256);
if (message.subtick_moves != null && message.subtick_moves.length)
for (var i = 0; i < message.subtick_moves.length; ++i)
$root.CSubtickMoveStep.encode(message.subtick_moves[i], writer.uint32(/* id 18, wireType 2 =*/146).fork()).ldelim();
if (message.move_crc != null && Object.hasOwnProperty.call(message, "move_crc"))
writer.uint32(/* id 19, wireType 2 =*/154).bytes(message.move_crc);
if (message.consumed_server_angle_changes != null && Object.hasOwnProperty.call(message, "consumed_server_angle_changes"))
writer.uint32(/* id 20, wireType 0 =*/160).uint32(message.consumed_server_angle_changes);
if (message.cmd_flags != null && Object.hasOwnProperty.call(message, "cmd_flags"))
writer.uint32(/* id 21, wireType 0 =*/168).int32(message.cmd_flags);
return writer;
};
/**
* Encodes the specified CBaseUserCmdPB message, length delimited. Does not implicitly {@link CBaseUserCmdPB.verify|verify} messages.
* @function encodeDelimited
* @memberof CBaseUserCmdPB
* @static
* @param {ICBaseUserCmdPB} message CBaseUserCmdPB message or plain object to encode
* @param {$protobuf.Writer} [writer] Writer to encode to
* @returns {$protobuf.Writer} Writer
*/
CBaseUserCmdPB.encodeDelimited = function encodeDelimited(message, writer) {
return this.encode(message, writer).ldelim();
};
/**
* Decodes a CBaseUserCmdPB message from the specified reader or buffer.
* @function decode
* @memberof CBaseUserCmdPB
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @param {number} [length] Message length if known beforehand
* @returns {CBaseUserCmdPB} CBaseUserCmdPB
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
CBaseUserCmdPB.decode = function decode(reader, length, error) {
if (!(reader instanceof $Reader))
reader = $Reader.create(reader);
var end = length === undefined ? reader.len : reader.pos + length, message = new $root.CBaseUserCmdPB();
while (reader.pos < end) {
var tag = reader.uint32();
if (tag === error)
break;
switch (tag >>> 3) {
case 1: {
message.legacy_command_number = reader.int32();
break;
}
case 2: {
message.client_tick = reader.int32();
break;
}
case 17: {
message.prediction_offset_ticks_x256 = reader.uint32();
break;
}
case 3: {
message.buttons_pb = $root.CInButtonStatePB.decode(reader, reader.uint32());
break;
}
case 4: {
message.viewangles = $root.CMsgQAngle.decode(reader, reader.uint32());
break;
}
case 5: {
message.forwardmove = reader.float();
break;
}
case 6: {
message.leftmove = reader.float();
break;
}
case 7: {
message.upmove = reader.float();
break;
}
case 8: {
message.impulse = reader.int32();
break;
}
case 9: {
message.weaponselect = reader.int32();
break;
}
case 10: {
message.random_seed = reader.int32();
break;
}
case 11: {
message.mousedx = reader.int32();
break;
}
case 12: {
message.mousedy = reader.int32();
break;
}
case 14: {
message.pawn_entity_handle = reader.uint32();
break;
}
case 18: {
if (!(message.subtick_moves && message.subtick_moves.length))
message.subtick_moves = [];
message.subtick_moves.push($root.CSubtickMoveStep.decode(reader, reader.uint32()));
break;
}
case 19: {
message.move_crc = reader.bytes();
break;
}
case 20: {
message.consumed_server_angle_changes = reader.uint32();
break;
}
case 21: {
message.cmd_flags = reader.int32();
break;
}
default:
reader.skipType(tag & 7);
break;
}
}
return message;
};
/**
* Decodes a CBaseUserCmdPB message from the specified reader or buffer, length delimited.
* @function decodeDelimited
* @memberof CBaseUserCmdPB
* @static
* @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
* @returns {CBaseUserCmdPB} CBaseUserCmdPB
* @throws {Error} If the payload is not a reader or valid buffer
* @throws {$protobuf.util.ProtocolError} If required fields are missing
*/
CBaseUserCmdPB.decodeDelimited = function decodeDelimited(reader) {
if (!(reader instanceof $Reader))
reader = new $Reader(reader);
return this.decode(reader, reader.uint32());
};
/**
* Verifies a CBaseUserCmdPB message.
* @function verify
* @memberof CBaseUserCmdPB
* @static
* @param {Object.<string,*>} message Plain object to verify
* @returns {string|null} `null` if valid, otherwise the reason why it is not
*/
CBaseUserCmdPB.verify = function verify(message) {
if (typeof message !== "object" || message === null)
return "object expected";
if (message.legacy_command_number != null && message.hasOwnProperty("legacy_command_number"))
if (!$util.isInteger(message.legacy_command_number))
return "legacy_command_number: integer expected";
if (message.client_tick != null && message.hasOwnProperty("client_tick"))
if (!$util.isInteger(message.client_tick))
return "client_tick: integer expected";
if (message.prediction_offse