@etothepii/satisfactory-file-parser 0.1.26 → 0.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.js +60 -25
- package/build/parser/byte/alignment.enum.js +5 -2
- package/build/parser/byte/binary-operable.interface.js +2 -1
- package/build/parser/byte/binary-readable.interface.js +2 -1
- package/build/parser/byte/byte-reader.class.js +14 -10
- package/build/parser/byte/byte-writer.class.js +13 -10
- package/build/parser/error/parser.error.js +15 -6
- package/build/parser/file.types.js +5 -2
- package/build/parser/parser.js +26 -23
- package/build/parser/satisfactory/blueprint/blueprint-reader.js +36 -28
- package/build/parser/satisfactory/blueprint/blueprint-writer.js +25 -20
- package/build/parser/satisfactory/blueprint/blueprint.types.js +2 -1
- package/build/parser/satisfactory/objects/DataFields.js +83 -79
- package/build/parser/satisfactory/objects/GUIDInfo.js +8 -5
- package/build/parser/satisfactory/objects/ObjectReference.js +5 -2
- package/build/parser/satisfactory/objects/Property.js +120 -91
- package/build/parser/satisfactory/objects/SaveComponent.js +11 -7
- package/build/parser/satisfactory/objects/SaveEntity.js +17 -13
- package/build/parser/satisfactory/objects/SaveObject.js +8 -4
- package/build/parser/satisfactory/objects/ue/GUID.js +5 -2
- package/build/parser/satisfactory/objects/ue/MD5Hash.js +5 -2
- package/build/parser/satisfactory/save/asynchronous-level.class.js +16 -12
- package/build/parser/satisfactory/save/level.class.js +28 -24
- package/build/parser/satisfactory/save/satisfactory-save.js +5 -1
- package/build/parser/satisfactory/save/save-reader.js +34 -28
- package/build/parser/satisfactory/save/save-writer.js +40 -34
- package/build/parser/satisfactory/save/save.types.js +2 -1
- package/build/parser/satisfactory/structs/util.types.js +63 -37
- package/build/parser/stream/byte-stream-reader.class.js +21 -17
- package/build/parser/stream/json-stream-state-writer.js +6 -2
- package/build/parser/stream/json-stream-writable.js +5 -1
- package/build/parser/stream/json-stream-writer.js +6 -2
- package/build/parser/stream/reworked/readable-stream-parser.js +24 -21
- package/build/parser/stream/reworked/stream-parser.js +20 -17
- package/build/parser/stream/save-stream-json-stringifier.js +7 -3
- package/build/parser/stream/save-stream-reader.class.js +24 -18
- package/build/parser/stream/save-stream-writer.class.js +5 -1
- package/build/parser/stream/stream-level.class.js +15 -11
- package/build/parser/stream/stream-parser.js +15 -11
- package/package.json +1 -1
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StreamLevel = void 0;
|
|
4
|
+
const __1 = require("../..");
|
|
5
|
+
const SaveComponent_1 = require("../satisfactory/objects/SaveComponent");
|
|
6
|
+
const SaveEntity_1 = require("../satisfactory/objects/SaveEntity");
|
|
7
|
+
class StreamLevel {
|
|
5
8
|
constructor(name) {
|
|
6
9
|
this.name = name;
|
|
7
10
|
}
|
|
@@ -9,13 +12,13 @@ export class StreamLevel {
|
|
|
9
12
|
const binaryLength = reader.readInt32();
|
|
10
13
|
await reader.allocate(binaryLength);
|
|
11
14
|
const objectHeaders = StreamLevel.ReadObjectHeaders(reader);
|
|
12
|
-
const collectables = Level.ReadCollectablesList(reader);
|
|
15
|
+
const collectables = __1.Level.ReadCollectablesList(reader);
|
|
13
16
|
await writer.openLevel(levelName);
|
|
14
17
|
await StreamLevel.StreamObjectContentsAsync(reader, writer, objectHeaders, buildVersion);
|
|
15
18
|
await writer.switchInLevelToCollectables();
|
|
16
19
|
await writer.writeCollectables(...collectables);
|
|
17
20
|
await writer.endLevel();
|
|
18
|
-
Level.ReadCollectablesList(reader);
|
|
21
|
+
__1.Level.ReadCollectablesList(reader);
|
|
19
22
|
return;
|
|
20
23
|
}
|
|
21
24
|
static ReadObjectHeaders(reader) {
|
|
@@ -30,7 +33,7 @@ export class StreamLevel {
|
|
|
30
33
|
rootObject: reader.readString(),
|
|
31
34
|
instanceName: reader.readString(),
|
|
32
35
|
needTransform: reader.readInt32() == 1,
|
|
33
|
-
transform: ParseTransform(reader),
|
|
36
|
+
transform: (0, __1.ParseTransform)(reader),
|
|
34
37
|
wasPlacedInLevel: reader.readInt32() == 1
|
|
35
38
|
});
|
|
36
39
|
break;
|
|
@@ -75,13 +78,13 @@ export class StreamLevel {
|
|
|
75
78
|
}
|
|
76
79
|
const isComponent = obj.parentEntityName !== undefined;
|
|
77
80
|
if (!isComponent) {
|
|
78
|
-
const entity = new SaveEntity(obj.typePath, obj.rootObject, obj.instanceName, '', obj.needTransform);
|
|
79
|
-
SaveEntity.ParseData(entity, len, reader, buildVersion, obj.typePath);
|
|
81
|
+
const entity = new SaveEntity_1.SaveEntity(obj.typePath, obj.rootObject, obj.instanceName, '', obj.needTransform);
|
|
82
|
+
SaveEntity_1.SaveEntity.ParseData(entity, len, reader, buildVersion, obj.typePath);
|
|
80
83
|
bufferedObjects.push(entity);
|
|
81
84
|
}
|
|
82
85
|
else if (isComponent) {
|
|
83
|
-
const component = new SaveComponent(obj.typePath, obj.rootObject, obj.instanceName, obj.parentEntityName);
|
|
84
|
-
SaveComponent.ParseData(component, len, reader, buildVersion, obj.typePath);
|
|
86
|
+
const component = new SaveComponent_1.SaveComponent(obj.typePath, obj.rootObject, obj.instanceName, obj.parentEntityName);
|
|
87
|
+
SaveComponent_1.SaveComponent.ParseData(component, len, reader, buildVersion, obj.typePath);
|
|
85
88
|
bufferedObjects.push(component);
|
|
86
89
|
}
|
|
87
90
|
const after = reader.getBufferPosition();
|
|
@@ -97,3 +100,4 @@ export class StreamLevel {
|
|
|
97
100
|
}
|
|
98
101
|
}
|
|
99
102
|
}
|
|
103
|
+
exports.StreamLevel = StreamLevel;
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StreamParserReader = void 0;
|
|
4
|
+
const alignment_enum_1 = require("../byte/alignment.enum");
|
|
5
|
+
class StreamParserReader {
|
|
3
6
|
constructor(minBufferSize) {
|
|
4
7
|
this.minBufferSize = minBufferSize;
|
|
5
|
-
this.alignment = Alignment.LITTLE_ENDIAN;
|
|
8
|
+
this.alignment = alignment_enum_1.Alignment.LITTLE_ENDIAN;
|
|
6
9
|
this.getAmountLeftToRead = () => {
|
|
7
10
|
return this.view.byteLength - this.currentByte;
|
|
8
11
|
};
|
|
@@ -151,27 +154,27 @@ export class StreamParserReader {
|
|
|
151
154
|
return data;
|
|
152
155
|
}
|
|
153
156
|
readInt16() {
|
|
154
|
-
let data = this.view.getInt16(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
157
|
+
let data = this.view.getInt16(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
155
158
|
this.currentByte += 2;
|
|
156
159
|
return data;
|
|
157
160
|
}
|
|
158
161
|
readUint16() {
|
|
159
|
-
let data = this.view.getUint16(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
162
|
+
let data = this.view.getUint16(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
160
163
|
this.currentByte += 2;
|
|
161
164
|
return data;
|
|
162
165
|
}
|
|
163
166
|
readInt32() {
|
|
164
|
-
let data = this.view.getInt32(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
167
|
+
let data = this.view.getInt32(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
165
168
|
this.currentByte += 4;
|
|
166
169
|
return data;
|
|
167
170
|
}
|
|
168
171
|
readUint32() {
|
|
169
|
-
let data = this.view.getUint32(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
172
|
+
let data = this.view.getUint32(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
170
173
|
this.currentByte += 4;
|
|
171
174
|
return data;
|
|
172
175
|
}
|
|
173
176
|
readLong() {
|
|
174
|
-
let data = this.view.getBigInt64(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
177
|
+
let data = this.view.getBigInt64(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
175
178
|
this.currentByte += 8;
|
|
176
179
|
return data;
|
|
177
180
|
}
|
|
@@ -179,17 +182,17 @@ export class StreamParserReader {
|
|
|
179
182
|
return this.readLong();
|
|
180
183
|
}
|
|
181
184
|
readUint64() {
|
|
182
|
-
let data = this.view.getBigUint64(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
185
|
+
let data = this.view.getBigUint64(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
183
186
|
this.currentByte += 8;
|
|
184
187
|
return data;
|
|
185
188
|
}
|
|
186
189
|
readFloat32() {
|
|
187
|
-
let data = this.view.getFloat32(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
190
|
+
let data = this.view.getFloat32(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
188
191
|
this.currentByte += 4;
|
|
189
192
|
return data;
|
|
190
193
|
}
|
|
191
194
|
readDouble() {
|
|
192
|
-
let data = this.view.getFloat64(this.currentByte, this.alignment === Alignment.LITTLE_ENDIAN);
|
|
195
|
+
let data = this.view.getFloat64(this.currentByte, this.alignment === alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
193
196
|
this.currentByte += 8;
|
|
194
197
|
return data;
|
|
195
198
|
}
|
|
@@ -219,3 +222,4 @@ export class StreamParserReader {
|
|
|
219
222
|
}
|
|
220
223
|
}
|
|
221
224
|
}
|
|
225
|
+
exports.StreamParserReader = StreamParserReader;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@etothepii/satisfactory-file-parser",
|
|
3
3
|
"author": "etothepii",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.27",
|
|
5
5
|
"description": "A file parser for satisfactory files. Includes save files and blueprint files.",
|
|
6
6
|
"types": "./build/index.d.ts",
|
|
7
7
|
"main": "./build/index.js",
|