unreal.js
Version:
A pak reader for games like VALORANT & Fortnite written in Node.JS
50 lines (49 loc) • 1.54 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.FCustomFields = void 0;
const collection_1 = __importDefault(require("@discordjs/collection"));
/**
* FCustomFields
*/
class FCustomFields {
/**
* Creates an instance using an UE4 Reader
* @param {FArchive} Ar UE4 Reader to use
* @constructor
* @public
*/
constructor(Ar) {
const startPos = Ar.pos;
const dataSize = Ar.readUInt32();
/*val dataVersionInt = */
Ar.readUInt8();
const elementCount = Ar.readInt32();
const arrayFields = [];
for (let i = 0; i < elementCount; ++i)
arrayFields[i] = mutablePair("", "");
for (const field of arrayFields)
field.first = Ar.readString();
for (const field of arrayFields)
field.second = Ar.readString();
const fields = new collection_1.default();
for (const { first, second } of arrayFields)
fields[first] = second;
this.fields = fields;
Ar.pos = startPos + dataSize;
}
/**
* Serializes this
* @param {FArchiveWriter} Ar UE4 Writer to use
* @returns {void}
* @public
*/
serialize(Ar) {
}
}
exports.FCustomFields = FCustomFields;
function mutablePair(first, second) {
return { first, second };
}