@etothepii/satisfactory-file-parser 0.4.20 → 0.4.22
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/README.md +11 -4
- package/build/index.d.ts +35 -36
- package/build/index.js +36 -40
- package/build/parser/satisfactory/blueprint/blueprint-reader.d.ts +2 -2
- package/build/parser/satisfactory/blueprint/blueprint-reader.js +12 -10
- package/build/parser/satisfactory/blueprint/blueprint-writer.d.ts +2 -2
- package/build/parser/satisfactory/blueprint/blueprint-writer.js +6 -6
- package/build/parser/satisfactory/blueprint/blueprint.types.d.ts +6 -5
- package/build/parser/satisfactory/save/level.class.d.ts +6 -6
- package/build/parser/satisfactory/save/level.class.js +22 -22
- package/build/parser/satisfactory/save/save-reader.js +1 -1
- package/build/parser/satisfactory/save/save-writer.js +2 -2
- package/build/parser/satisfactory/save/save.types.d.ts +1 -1
- package/build/parser/satisfactory/types/objects/SaveComponent.d.ts +19 -0
- package/build/parser/satisfactory/types/objects/SaveComponent.js +31 -0
- package/build/parser/satisfactory/types/objects/SaveEntity.d.ts +30 -0
- package/build/parser/satisfactory/types/objects/SaveEntity.js +66 -0
- package/build/parser/satisfactory/types/objects/SaveObject.d.ts +24 -0
- package/build/parser/satisfactory/types/objects/SaveObject.js +33 -0
- package/build/parser/satisfactory/types/property/DataFields.d.ts +15 -0
- package/build/parser/satisfactory/types/property/DataFields.js +493 -0
- package/build/parser/satisfactory/types/property/generic/ArrayProperty.d.ts +22 -0
- package/build/parser/satisfactory/types/property/generic/ArrayProperty.js +171 -0
- package/build/parser/satisfactory/types/property/generic/BasicProperty.d.ts +25 -0
- package/build/parser/satisfactory/types/property/generic/BasicProperty.js +28 -0
- package/build/parser/satisfactory/types/property/generic/BoolProperty.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/BoolProperty.js +32 -0
- package/build/parser/satisfactory/types/property/generic/ByteProperty.d.ts +18 -0
- package/build/parser/satisfactory/types/property/generic/ByteProperty.js +52 -0
- package/build/parser/satisfactory/types/property/generic/DoubleProperty.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/DoubleProperty.js +32 -0
- package/build/parser/satisfactory/types/property/generic/EnumProperty.d.ts +20 -0
- package/build/parser/satisfactory/types/property/generic/EnumProperty.js +35 -0
- package/build/parser/satisfactory/types/property/generic/FloatProperty.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/FloatProperty.js +32 -0
- package/build/parser/satisfactory/types/property/generic/Int32Property.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/Int32Property.js +32 -0
- package/build/parser/satisfactory/types/property/generic/Int64Property.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/Int64Property.js +32 -0
- package/build/parser/satisfactory/types/property/generic/Int8Property.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/Int8Property.js +32 -0
- package/build/parser/satisfactory/types/property/generic/MapProperty.d.ts +22 -0
- package/build/parser/satisfactory/types/property/generic/MapProperty.js +162 -0
- package/build/parser/satisfactory/types/property/generic/ObjectProperty.d.ts +15 -0
- package/build/parser/satisfactory/types/property/generic/ObjectProperty.js +37 -0
- package/build/parser/satisfactory/types/property/generic/SetProperty.d.ts +12 -0
- package/build/parser/satisfactory/types/property/generic/SetProperty.js +94 -0
- package/build/parser/satisfactory/types/property/generic/SoftObjectProperty.d.ts +13 -0
- package/build/parser/satisfactory/types/property/generic/SoftObjectProperty.js +27 -0
- package/build/parser/satisfactory/types/property/generic/StrProperty.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/StrProperty.js +32 -0
- package/build/parser/satisfactory/types/property/generic/StructProperty.d.ts +69 -0
- package/build/parser/satisfactory/types/property/generic/StructProperty.js +365 -0
- package/build/parser/satisfactory/types/property/generic/TextProperty.d.ts +30 -0
- package/build/parser/satisfactory/types/property/generic/TextProperty.js +111 -0
- package/build/parser/satisfactory/types/property/generic/Uint32Property.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/Uint32Property.js +32 -0
- package/build/parser/satisfactory/types/property/generic/Uint64Property.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/Uint64Property.js +32 -0
- package/build/parser/satisfactory/types/property/generic/Uint8Property.d.ts +14 -0
- package/build/parser/satisfactory/types/property/generic/Uint8Property.js +32 -0
- package/build/parser/satisfactory/types/property/special/SpecialAnyProperty.d.ts +54 -0
- package/build/parser/satisfactory/types/property/special/SpecialAnyProperty.js +2 -0
- package/build/parser/satisfactory/types/structs/GUID.d.ts +7 -0
- package/build/parser/satisfactory/types/structs/GUID.js +21 -0
- package/build/parser/satisfactory/types/structs/GUIDInfo.d.ts +8 -0
- package/build/parser/satisfactory/types/structs/GUIDInfo.js +26 -0
- package/build/parser/satisfactory/types/structs/MD5Hash.d.ts +10 -0
- package/build/parser/satisfactory/types/structs/MD5Hash.js +21 -0
- package/build/parser/satisfactory/types/structs/ObjectReference.d.ts +10 -0
- package/build/parser/satisfactory/types/structs/ObjectReference.js +17 -0
- package/build/parser/satisfactory/types/structs/SoftObjectReference.d.ts +11 -0
- package/build/parser/satisfactory/types/structs/SoftObjectReference.js +19 -0
- package/build/parser/satisfactory/types/structs/Transform.d.ts +15 -0
- package/build/parser/satisfactory/types/structs/Transform.js +32 -0
- package/build/parser/satisfactory/types/structs/col4.d.ts +14 -0
- package/build/parser/satisfactory/types/structs/col4.js +34 -0
- package/build/parser/satisfactory/types/structs/vec2.d.ts +12 -0
- package/build/parser/satisfactory/types/structs/vec2.js +26 -0
- package/build/parser/satisfactory/types/structs/vec3.d.ts +19 -0
- package/build/parser/satisfactory/types/structs/vec3.js +44 -0
- package/build/parser/satisfactory/types/structs/vec4.d.ts +12 -0
- package/build/parser/satisfactory/types/structs/vec4.js +27 -0
- package/build/parser/stream/reworked/readable-stream-parser.js +3 -3
- package/build/parser/stream/reworked/save-stream-writer.class.d.ts +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# Satisfactory File Parser
|
|
2
2
|
This is an NPM TypeScript Module to parse Satisfactory Files. Satisfactory is a game released by Coffee Stain Studios.
|
|
3
|
-
|
|
4
|
-
The Module is written entirely in TypeScript and comes with Type Definitions.
|
|
5
|
-
Currently, only the built JavaScript and Type Definitions are available. But if needed, the TypeScript source can be provided as well in future versions.
|
|
3
|
+
The reporitory is written entirely in TypeScript and comes with Type Definitions.
|
|
6
4
|
|
|
7
5
|
This parser can read, modify and write:
|
|
8
6
|
- Save Files `.sav`
|
|
@@ -140,9 +138,18 @@ fs.writeFileSync('./MyModifiedBlueprint.sbpcfg', Buffer.from(summary.configFileB
|
|
|
140
138
|
|
|
141
139
|
# Bug Reports or Feedback
|
|
142
140
|
So far this was just a private hobby project. But i figure some people actually use it.
|
|
143
|
-
If you find a bug or have feedback about the parser, you can just hit me up on the satisfactory discord `etothepii`.
|
|
141
|
+
If you find a bug or have feedback about the parser, you can just open an issue on the github repo or hit me up on the satisfactory discord `etothepii`.
|
|
144
142
|
|
|
145
143
|
# Changelog
|
|
144
|
+
### [0.4.22] (2024-10-07)
|
|
145
|
+
#### compatibility fix
|
|
146
|
+
* referenced icon libraries in blueprints are now optional when being parsed.
|
|
147
|
+
|
|
148
|
+
### [0.4.21] (2024-10-07)
|
|
149
|
+
#### internal package restructuring
|
|
150
|
+
* restructured some internal packages.
|
|
151
|
+
* provides now typeguards for every property.
|
|
152
|
+
|
|
146
153
|
### [0.4.20] (2024-10-06)
|
|
147
154
|
#### bugfix
|
|
148
155
|
* added parsing of icon library reference to parsing blueprints.
|
package/build/index.d.ts
CHANGED
|
@@ -1,40 +1,40 @@
|
|
|
1
1
|
export * from './parser/satisfactory/blueprint/blueprint.types';
|
|
2
|
-
export
|
|
3
|
-
export * from './parser/satisfactory/
|
|
4
|
-
export * from './parser/satisfactory/objects/property/generic/ArrayProperty';
|
|
5
|
-
export * from './parser/satisfactory/objects/property/generic/BasicProperty';
|
|
6
|
-
export * from './parser/satisfactory/objects/property/generic/BoolProperty';
|
|
7
|
-
export * from './parser/satisfactory/objects/property/generic/ByteProperty';
|
|
8
|
-
export * from './parser/satisfactory/objects/property/generic/DoubleProperty';
|
|
9
|
-
export * from './parser/satisfactory/objects/property/generic/EnumProperty';
|
|
10
|
-
export * from './parser/satisfactory/objects/property/generic/FloatProperty';
|
|
11
|
-
export * from './parser/satisfactory/objects/property/generic/Int32Property';
|
|
12
|
-
export * from './parser/satisfactory/objects/property/generic/Int64Property';
|
|
13
|
-
export * from './parser/satisfactory/objects/property/generic/Int8Property';
|
|
14
|
-
export * from './parser/satisfactory/objects/property/generic/MapProperty';
|
|
15
|
-
export * from './parser/satisfactory/objects/property/generic/ObjectProperty';
|
|
16
|
-
export * from './parser/satisfactory/objects/property/generic/SetProperty';
|
|
17
|
-
export * from './parser/satisfactory/objects/property/generic/StrProperty';
|
|
18
|
-
export * from './parser/satisfactory/objects/property/generic/StructProperty';
|
|
19
|
-
export * from './parser/satisfactory/objects/property/generic/TextProperty';
|
|
20
|
-
export * from './parser/satisfactory/objects/property/generic/Uint32Property';
|
|
21
|
-
export * from './parser/satisfactory/objects/property/generic/Uint64Property';
|
|
22
|
-
export * from './parser/satisfactory/objects/property/generic/Uint8Property';
|
|
23
|
-
export * from './parser/satisfactory/objects/property/special/SpecialAnyProperty';
|
|
24
|
-
export * from './parser/satisfactory/objects/SaveComponent';
|
|
25
|
-
export * from './parser/satisfactory/objects/SaveEntity';
|
|
26
|
-
export * from './parser/satisfactory/objects/ue/MD5Hash';
|
|
27
|
-
export * from './parser/satisfactory/objects/values/GUID';
|
|
28
|
-
export * from './parser/satisfactory/objects/values/ObjectReference';
|
|
29
|
-
export * from './parser/satisfactory/objects/values/SoftObjectReference';
|
|
30
|
-
export { Level } from './parser/satisfactory/save/level.class';
|
|
31
|
-
export { SatisfactorySave } from './parser/satisfactory/save/satisfactory-save';
|
|
2
|
+
export * from './parser/satisfactory/save/level.class';
|
|
3
|
+
export * from './parser/satisfactory/save/satisfactory-save';
|
|
32
4
|
export * from './parser/satisfactory/save/save.types';
|
|
33
|
-
export * from './parser/satisfactory/
|
|
34
|
-
export
|
|
35
|
-
export
|
|
36
|
-
export
|
|
37
|
-
export
|
|
5
|
+
export * from './parser/satisfactory/types/objects/SaveComponent';
|
|
6
|
+
export * from './parser/satisfactory/types/objects/SaveEntity';
|
|
7
|
+
export * from './parser/satisfactory/types/property/DataFields';
|
|
8
|
+
export * from './parser/satisfactory/types/property/generic/ArrayProperty';
|
|
9
|
+
export * from './parser/satisfactory/types/property/generic/BasicProperty';
|
|
10
|
+
export * from './parser/satisfactory/types/property/generic/BoolProperty';
|
|
11
|
+
export * from './parser/satisfactory/types/property/generic/ByteProperty';
|
|
12
|
+
export * from './parser/satisfactory/types/property/generic/DoubleProperty';
|
|
13
|
+
export * from './parser/satisfactory/types/property/generic/EnumProperty';
|
|
14
|
+
export * from './parser/satisfactory/types/property/generic/FloatProperty';
|
|
15
|
+
export * from './parser/satisfactory/types/property/generic/Int32Property';
|
|
16
|
+
export * from './parser/satisfactory/types/property/generic/Int64Property';
|
|
17
|
+
export * from './parser/satisfactory/types/property/generic/Int8Property';
|
|
18
|
+
export * from './parser/satisfactory/types/property/generic/MapProperty';
|
|
19
|
+
export * from './parser/satisfactory/types/property/generic/ObjectProperty';
|
|
20
|
+
export * from './parser/satisfactory/types/property/generic/SetProperty';
|
|
21
|
+
export * from './parser/satisfactory/types/property/generic/StrProperty';
|
|
22
|
+
export * from './parser/satisfactory/types/property/generic/StructProperty';
|
|
23
|
+
export * from './parser/satisfactory/types/property/generic/TextProperty';
|
|
24
|
+
export * from './parser/satisfactory/types/property/generic/Uint32Property';
|
|
25
|
+
export * from './parser/satisfactory/types/property/generic/Uint64Property';
|
|
26
|
+
export * from './parser/satisfactory/types/property/generic/Uint8Property';
|
|
27
|
+
export * from './parser/satisfactory/types/property/special/SpecialAnyProperty';
|
|
28
|
+
export * from './parser/satisfactory/types/structs/col4';
|
|
29
|
+
export * from './parser/satisfactory/types/structs/GUID';
|
|
30
|
+
export * from './parser/satisfactory/types/structs/GUIDInfo';
|
|
31
|
+
export * from './parser/satisfactory/types/structs/MD5Hash';
|
|
32
|
+
export * from './parser/satisfactory/types/structs/ObjectReference';
|
|
33
|
+
export * from './parser/satisfactory/types/structs/SoftObjectReference';
|
|
34
|
+
export * from './parser/satisfactory/types/structs/Transform';
|
|
35
|
+
export * from './parser/satisfactory/types/structs/vec2';
|
|
36
|
+
export * from './parser/satisfactory/types/structs/vec3';
|
|
37
|
+
export * from './parser/satisfactory/types/structs/vec4';
|
|
38
38
|
export { BlueprintConfigReader, BlueprintReader } from './parser/satisfactory/blueprint/blueprint-reader';
|
|
39
39
|
export { BlueprintConfigWriter, BlueprintWriter } from './parser/satisfactory/blueprint/blueprint-writer';
|
|
40
40
|
export { SaveReader } from './parser/satisfactory/save/save-reader';
|
|
@@ -42,7 +42,6 @@ export { SaveWriter } from './parser/satisfactory/save/save-writer';
|
|
|
42
42
|
export { SaveStreamJsonStringifier } from './parser/stream/reworked/save-stream-json-stringifier';
|
|
43
43
|
export { SaveStreamWriter } from './parser/stream/reworked/save-stream-writer.class';
|
|
44
44
|
export * from './parser/error/parser.error';
|
|
45
|
-
export * from './parser/file.types';
|
|
46
45
|
export { Parser } from './parser/parser';
|
|
47
46
|
export { ReadableStreamParser } from './parser/stream/reworked/readable-stream-parser';
|
|
48
47
|
export * from './parser/satisfactory/edit/edit-constants';
|
package/build/index.js
CHANGED
|
@@ -14,47 +14,44 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.ReadableStreamParser = exports.Parser = exports.SaveStreamWriter = exports.SaveStreamJsonStringifier = exports.SaveWriter = exports.SaveReader = exports.BlueprintWriter = exports.BlueprintConfigWriter = exports.BlueprintReader = exports.BlueprintConfigReader =
|
|
17
|
+
exports.ReadableStreamParser = exports.Parser = exports.SaveStreamWriter = exports.SaveStreamJsonStringifier = exports.SaveWriter = exports.SaveReader = exports.BlueprintWriter = exports.BlueprintConfigWriter = exports.BlueprintReader = exports.BlueprintConfigReader = void 0;
|
|
18
18
|
__exportStar(require("./parser/satisfactory/blueprint/blueprint.types"), exports);
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
__exportStar(require("./parser/satisfactory/objects/GUIDInfo"), exports);
|
|
22
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/ArrayProperty"), exports);
|
|
23
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/BasicProperty"), exports);
|
|
24
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/BoolProperty"), exports);
|
|
25
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/ByteProperty"), exports);
|
|
26
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/DoubleProperty"), exports);
|
|
27
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/EnumProperty"), exports);
|
|
28
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/FloatProperty"), exports);
|
|
29
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/Int32Property"), exports);
|
|
30
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/Int64Property"), exports);
|
|
31
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/Int8Property"), exports);
|
|
32
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/MapProperty"), exports);
|
|
33
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/ObjectProperty"), exports);
|
|
34
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/SetProperty"), exports);
|
|
35
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/StrProperty"), exports);
|
|
36
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/StructProperty"), exports);
|
|
37
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/TextProperty"), exports);
|
|
38
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/Uint32Property"), exports);
|
|
39
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/Uint64Property"), exports);
|
|
40
|
-
__exportStar(require("./parser/satisfactory/objects/property/generic/Uint8Property"), exports);
|
|
41
|
-
__exportStar(require("./parser/satisfactory/objects/property/special/SpecialAnyProperty"), exports);
|
|
42
|
-
__exportStar(require("./parser/satisfactory/objects/SaveComponent"), exports);
|
|
43
|
-
__exportStar(require("./parser/satisfactory/objects/SaveEntity"), exports);
|
|
44
|
-
__exportStar(require("./parser/satisfactory/objects/ue/MD5Hash"), exports);
|
|
45
|
-
__exportStar(require("./parser/satisfactory/objects/values/GUID"), exports);
|
|
46
|
-
__exportStar(require("./parser/satisfactory/objects/values/ObjectReference"), exports);
|
|
47
|
-
__exportStar(require("./parser/satisfactory/objects/values/SoftObjectReference"), exports);
|
|
48
|
-
var level_class_1 = require("./parser/satisfactory/save/level.class");
|
|
49
|
-
Object.defineProperty(exports, "Level", { enumerable: true, get: function () { return level_class_1.Level; } });
|
|
50
|
-
var satisfactory_save_1 = require("./parser/satisfactory/save/satisfactory-save");
|
|
51
|
-
Object.defineProperty(exports, "SatisfactorySave", { enumerable: true, get: function () { return satisfactory_save_1.SatisfactorySave; } });
|
|
19
|
+
__exportStar(require("./parser/satisfactory/save/level.class"), exports);
|
|
20
|
+
__exportStar(require("./parser/satisfactory/save/satisfactory-save"), exports);
|
|
52
21
|
__exportStar(require("./parser/satisfactory/save/save.types"), exports);
|
|
53
|
-
__exportStar(require("./parser/satisfactory/
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
22
|
+
__exportStar(require("./parser/satisfactory/types/objects/SaveComponent"), exports);
|
|
23
|
+
__exportStar(require("./parser/satisfactory/types/objects/SaveEntity"), exports);
|
|
24
|
+
__exportStar(require("./parser/satisfactory/types/property/DataFields"), exports);
|
|
25
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/ArrayProperty"), exports);
|
|
26
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/BasicProperty"), exports);
|
|
27
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/BoolProperty"), exports);
|
|
28
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/ByteProperty"), exports);
|
|
29
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/DoubleProperty"), exports);
|
|
30
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/EnumProperty"), exports);
|
|
31
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/FloatProperty"), exports);
|
|
32
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/Int32Property"), exports);
|
|
33
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/Int64Property"), exports);
|
|
34
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/Int8Property"), exports);
|
|
35
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/MapProperty"), exports);
|
|
36
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/ObjectProperty"), exports);
|
|
37
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/SetProperty"), exports);
|
|
38
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/StrProperty"), exports);
|
|
39
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/StructProperty"), exports);
|
|
40
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/TextProperty"), exports);
|
|
41
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/Uint32Property"), exports);
|
|
42
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/Uint64Property"), exports);
|
|
43
|
+
__exportStar(require("./parser/satisfactory/types/property/generic/Uint8Property"), exports);
|
|
44
|
+
__exportStar(require("./parser/satisfactory/types/property/special/SpecialAnyProperty"), exports);
|
|
45
|
+
__exportStar(require("./parser/satisfactory/types/structs/col4"), exports);
|
|
46
|
+
__exportStar(require("./parser/satisfactory/types/structs/GUID"), exports);
|
|
47
|
+
__exportStar(require("./parser/satisfactory/types/structs/GUIDInfo"), exports);
|
|
48
|
+
__exportStar(require("./parser/satisfactory/types/structs/MD5Hash"), exports);
|
|
49
|
+
__exportStar(require("./parser/satisfactory/types/structs/ObjectReference"), exports);
|
|
50
|
+
__exportStar(require("./parser/satisfactory/types/structs/SoftObjectReference"), exports);
|
|
51
|
+
__exportStar(require("./parser/satisfactory/types/structs/Transform"), exports);
|
|
52
|
+
__exportStar(require("./parser/satisfactory/types/structs/vec2"), exports);
|
|
53
|
+
__exportStar(require("./parser/satisfactory/types/structs/vec3"), exports);
|
|
54
|
+
__exportStar(require("./parser/satisfactory/types/structs/vec4"), exports);
|
|
58
55
|
var blueprint_reader_1 = require("./parser/satisfactory/blueprint/blueprint-reader");
|
|
59
56
|
Object.defineProperty(exports, "BlueprintConfigReader", { enumerable: true, get: function () { return blueprint_reader_1.BlueprintConfigReader; } });
|
|
60
57
|
Object.defineProperty(exports, "BlueprintReader", { enumerable: true, get: function () { return blueprint_reader_1.BlueprintReader; } });
|
|
@@ -70,7 +67,6 @@ Object.defineProperty(exports, "SaveStreamJsonStringifier", { enumerable: true,
|
|
|
70
67
|
var save_stream_writer_class_1 = require("./parser/stream/reworked/save-stream-writer.class");
|
|
71
68
|
Object.defineProperty(exports, "SaveStreamWriter", { enumerable: true, get: function () { return save_stream_writer_class_1.SaveStreamWriter; } });
|
|
72
69
|
__exportStar(require("./parser/error/parser.error"), exports);
|
|
73
|
-
__exportStar(require("./parser/file.types"), exports);
|
|
74
70
|
var parser_1 = require("./parser/parser");
|
|
75
71
|
Object.defineProperty(exports, "Parser", { enumerable: true, get: function () { return parser_1.Parser; } });
|
|
76
72
|
var readable_stream_parser_1 = require("./parser/stream/reworked/readable-stream-parser");
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BinaryReadable } from "../../byte/binary-readable.interface";
|
|
2
2
|
import { ByteReader } from "../../byte/byte-reader.class";
|
|
3
3
|
import { ChunkCompressionInfo } from "../../file.types";
|
|
4
|
-
import { SaveComponent } from "../objects/SaveComponent";
|
|
5
|
-
import { SaveEntity } from "../objects/SaveEntity";
|
|
4
|
+
import { SaveComponent } from "../types/objects/SaveComponent";
|
|
5
|
+
import { SaveEntity } from "../types/objects/SaveEntity";
|
|
6
6
|
import { BlueprintConfig, BlueprintHeader } from "./blueprint.types";
|
|
7
7
|
export declare class BlueprintReader extends ByteReader {
|
|
8
8
|
compressionInfo: ChunkCompressionInfo;
|
|
@@ -8,11 +8,12 @@ const pako_1 = __importDefault(require("pako"));
|
|
|
8
8
|
const alignment_enum_1 = require("../../byte/alignment.enum");
|
|
9
9
|
const byte_reader_class_1 = require("../../byte/byte-reader.class");
|
|
10
10
|
const parser_error_1 = require("../../error/parser.error");
|
|
11
|
-
const SaveComponent_1 = require("../objects/SaveComponent");
|
|
12
|
-
const SaveEntity_1 = require("../objects/SaveEntity");
|
|
13
11
|
const level_class_1 = require("../save/level.class");
|
|
14
12
|
const save_reader_1 = require("../save/save-reader");
|
|
15
|
-
const
|
|
13
|
+
const SaveComponent_1 = require("../types/objects/SaveComponent");
|
|
14
|
+
const SaveEntity_1 = require("../types/objects/SaveEntity");
|
|
15
|
+
const col4_1 = require("../types/structs/col4");
|
|
16
|
+
const vec3_1 = require("../types/structs/vec3");
|
|
16
17
|
class BlueprintReader extends byte_reader_class_1.ByteReader {
|
|
17
18
|
constructor(bluePrintBuffer) {
|
|
18
19
|
super(bluePrintBuffer, alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
@@ -25,7 +26,7 @@ class BlueprintReader extends byte_reader_class_1.ByteReader {
|
|
|
25
26
|
static ReadHeader(reader) {
|
|
26
27
|
const alwaysTwo = reader.readBytes(4);
|
|
27
28
|
const objectVersion = reader.readBytes(2 * 4);
|
|
28
|
-
const dimensions =
|
|
29
|
+
const dimensions = vec3_1.vec3.ParseInt(reader);
|
|
29
30
|
let itemTypeCount = reader.readInt32();
|
|
30
31
|
const itemCosts = new Array(itemTypeCount).fill(['', 0]);
|
|
31
32
|
for (let i = 0; i < itemTypeCount; i++) {
|
|
@@ -136,16 +137,17 @@ class BlueprintConfigReader extends byte_reader_class_1.ByteReader {
|
|
|
136
137
|
const alwaysTwo = reader.readInt32();
|
|
137
138
|
const description = reader.readString();
|
|
138
139
|
const iconID = reader.readInt32();
|
|
139
|
-
const color =
|
|
140
|
-
const
|
|
141
|
-
const iconLibraryType = reader.readString();
|
|
142
|
-
return {
|
|
140
|
+
const color = col4_1.col4.ParseRGBA(reader);
|
|
141
|
+
const config = {
|
|
143
142
|
description,
|
|
144
143
|
color,
|
|
145
144
|
iconID,
|
|
146
|
-
referencedIconLibrary,
|
|
147
|
-
iconLibraryType
|
|
148
145
|
};
|
|
146
|
+
if (reader.getBufferPosition() < reader.getBufferLength()) {
|
|
147
|
+
config.referencedIconLibrary = reader.readString();
|
|
148
|
+
config.iconLibraryType = reader.readString();
|
|
149
|
+
}
|
|
150
|
+
return config;
|
|
149
151
|
}
|
|
150
152
|
}
|
|
151
153
|
exports.BlueprintConfigReader = BlueprintConfigReader;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ByteWriter } from "../../byte/byte-writer.class";
|
|
2
2
|
import { ChunkCompressionInfo, ChunkSummary } from "../../file.types";
|
|
3
|
-
import { SaveComponent } from "../objects/SaveComponent";
|
|
4
|
-
import { SaveEntity } from "../objects/SaveEntity";
|
|
3
|
+
import { SaveComponent } from "../types/objects/SaveComponent";
|
|
4
|
+
import { SaveEntity } from "../types/objects/SaveEntity";
|
|
5
5
|
import { BlueprintConfig, BlueprintHeader } from "./blueprint.types";
|
|
6
6
|
export declare class BlueprintWriter extends ByteWriter {
|
|
7
7
|
constructor();
|
|
@@ -4,11 +4,11 @@ exports.BlueprintConfigWriter = exports.BlueprintWriter = void 0;
|
|
|
4
4
|
const alignment_enum_1 = require("../../byte/alignment.enum");
|
|
5
5
|
const byte_writer_class_1 = require("../../byte/byte-writer.class");
|
|
6
6
|
const parser_error_1 = require("../../error/parser.error");
|
|
7
|
-
const SaveComponent_1 = require("../objects/SaveComponent");
|
|
8
|
-
const SaveEntity_1 = require("../objects/SaveEntity");
|
|
9
7
|
const level_class_1 = require("../save/level.class");
|
|
10
8
|
const save_writer_1 = require("../save/save-writer");
|
|
11
|
-
const
|
|
9
|
+
const SaveComponent_1 = require("../types/objects/SaveComponent");
|
|
10
|
+
const SaveEntity_1 = require("../types/objects/SaveEntity");
|
|
11
|
+
const col4_1 = require("../types/structs/col4");
|
|
12
12
|
class BlueprintWriter extends byte_writer_class_1.ByteWriter {
|
|
13
13
|
constructor() {
|
|
14
14
|
super(alignment_enum_1.Alignment.LITTLE_ENDIAN);
|
|
@@ -81,9 +81,9 @@ class BlueprintConfigWriter extends byte_writer_class_1.ByteWriter {
|
|
|
81
81
|
writer.writeInt32(2);
|
|
82
82
|
writer.writeString(config.description);
|
|
83
83
|
writer.writeInt32(config.iconID);
|
|
84
|
-
|
|
85
|
-
writer.writeString(config.referencedIconLibrary);
|
|
86
|
-
writer.writeString(config.iconLibraryType);
|
|
84
|
+
col4_1.col4.SerializeRGBA(writer, config.color);
|
|
85
|
+
writer.writeString(config.referencedIconLibrary ?? '');
|
|
86
|
+
writer.writeString(config.iconLibraryType ?? '');
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
89
|
exports.BlueprintConfigWriter = BlueprintConfigWriter;
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { ChunkCompressionInfo } from "../../file.types";
|
|
2
|
-
import { SaveComponent } from "../objects/SaveComponent";
|
|
3
|
-
import { SaveEntity } from "../objects/SaveEntity";
|
|
4
|
-
import { col4
|
|
2
|
+
import { SaveComponent } from "../types/objects/SaveComponent";
|
|
3
|
+
import { SaveEntity } from "../types/objects/SaveEntity";
|
|
4
|
+
import { col4 } from '../types/structs/col4';
|
|
5
|
+
import { vec3 } from '../types/structs/vec3';
|
|
5
6
|
export interface BlueprintConfig {
|
|
6
7
|
description: string;
|
|
7
8
|
color: col4;
|
|
8
9
|
iconID: number;
|
|
9
|
-
referencedIconLibrary
|
|
10
|
-
iconLibraryType
|
|
10
|
+
referencedIconLibrary?: string;
|
|
11
|
+
iconLibraryType?: string;
|
|
11
12
|
}
|
|
12
13
|
export type BlueprintHeader = {
|
|
13
14
|
designerDimension?: vec3;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { BinaryReadable } from "../../byte/binary-readable.interface";
|
|
2
2
|
import { ByteWriter } from "../../byte/byte-writer.class";
|
|
3
|
-
import { SaveComponent } from "../objects/SaveComponent";
|
|
4
|
-
import { SaveEntity } from "../objects/SaveEntity";
|
|
5
|
-
import { SaveObject } from "../objects/SaveObject";
|
|
6
|
-
import { ObjectReference } from "../
|
|
3
|
+
import { SaveComponent } from "../types/objects/SaveComponent";
|
|
4
|
+
import { SaveEntity } from "../types/objects/SaveEntity";
|
|
5
|
+
import { SaveObject } from "../types/objects/SaveObject";
|
|
6
|
+
import { ObjectReference } from "../types/structs/ObjectReference";
|
|
7
7
|
export declare class Level {
|
|
8
8
|
name: string;
|
|
9
9
|
objects: (SaveEntity | SaveComponent)[];
|
|
10
10
|
collectables: ObjectReference[];
|
|
11
11
|
constructor(name: string);
|
|
12
|
-
static
|
|
13
|
-
static WriteLevel(writer: ByteWriter, level: Level, buildVersion: number): void;
|
|
12
|
+
static SerializeLevel(writer: ByteWriter, level: Level, buildVersion: number): void;
|
|
14
13
|
static SerializeObjectContents(writer: ByteWriter, objects: (SaveEntity | SaveComponent)[], buildVersion: number, levelName: string): void;
|
|
15
14
|
static ReadObjectHeaders(reader: BinaryReadable, objectsList: SaveObject[], onProgressCallback: (progress: number, msg?: string) => void): void;
|
|
15
|
+
static SerializeObjectHeaders(writer: ByteWriter, objects: (SaveEntity | SaveComponent)[]): void;
|
|
16
16
|
static SerializeCollectablesList(writer: ByteWriter, collectables: ObjectReference[]): void;
|
|
17
17
|
static ReadCollectablesList(reader: BinaryReadable): ObjectReference[];
|
|
18
18
|
}
|
|
@@ -1,34 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Level = void 0;
|
|
4
|
-
const SaveComponent_1 = require("../objects/SaveComponent");
|
|
5
|
-
const SaveEntity_1 = require("../objects/SaveEntity");
|
|
6
|
-
const ObjectReference_1 = require("../
|
|
4
|
+
const SaveComponent_1 = require("../types/objects/SaveComponent");
|
|
5
|
+
const SaveEntity_1 = require("../types/objects/SaveEntity");
|
|
6
|
+
const ObjectReference_1 = require("../types/structs/ObjectReference");
|
|
7
7
|
class Level {
|
|
8
8
|
constructor(name) {
|
|
9
9
|
this.name = name;
|
|
10
10
|
this.objects = [];
|
|
11
11
|
this.collectables = [];
|
|
12
12
|
}
|
|
13
|
-
static
|
|
14
|
-
writer.writeInt32(objects.length);
|
|
15
|
-
for (const obj of objects) {
|
|
16
|
-
switch (obj.type) {
|
|
17
|
-
case 'SaveEntity':
|
|
18
|
-
writer.writeInt32(SaveEntity_1.SaveEntity.TypeID);
|
|
19
|
-
SaveEntity_1.SaveEntity.SerializeHeader(writer, obj);
|
|
20
|
-
break;
|
|
21
|
-
case 'SaveComponent':
|
|
22
|
-
writer.writeInt32(SaveComponent_1.SaveComponent.TypeID);
|
|
23
|
-
SaveComponent_1.SaveComponent.SerializeHeader(writer, obj);
|
|
24
|
-
break;
|
|
25
|
-
default:
|
|
26
|
-
console.log('Unknown object type', obj);
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
static WriteLevel(writer, level, buildVersion) {
|
|
13
|
+
static SerializeLevel(writer, level, buildVersion) {
|
|
32
14
|
const lenIndicatorHeaderAndDestroyedEntitiesSize = writer.getBufferPosition();
|
|
33
15
|
writer.writeInt32(0);
|
|
34
16
|
writer.writeInt32(0);
|
|
@@ -82,6 +64,24 @@ class Level {
|
|
|
82
64
|
}
|
|
83
65
|
}
|
|
84
66
|
}
|
|
67
|
+
static SerializeObjectHeaders(writer, objects) {
|
|
68
|
+
writer.writeInt32(objects.length);
|
|
69
|
+
for (const obj of objects) {
|
|
70
|
+
switch (obj.type) {
|
|
71
|
+
case 'SaveEntity':
|
|
72
|
+
writer.writeInt32(SaveEntity_1.SaveEntity.TypeID);
|
|
73
|
+
SaveEntity_1.SaveEntity.SerializeHeader(writer, obj);
|
|
74
|
+
break;
|
|
75
|
+
case 'SaveComponent':
|
|
76
|
+
writer.writeInt32(SaveComponent_1.SaveComponent.TypeID);
|
|
77
|
+
SaveComponent_1.SaveComponent.SerializeHeader(writer, obj);
|
|
78
|
+
break;
|
|
79
|
+
default:
|
|
80
|
+
console.log('Unknown object type', obj);
|
|
81
|
+
break;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
85
|
static SerializeCollectablesList(writer, collectables) {
|
|
86
86
|
writer.writeInt32(collectables.length);
|
|
87
87
|
for (const collectable of collectables) {
|
|
@@ -8,7 +8,7 @@ const pako_1 = __importDefault(require("pako"));
|
|
|
8
8
|
const alignment_enum_1 = require("../../byte/alignment.enum");
|
|
9
9
|
const byte_reader_class_1 = require("../../byte/byte-reader.class");
|
|
10
10
|
const parser_error_1 = require("../../error/parser.error");
|
|
11
|
-
const MD5Hash_1 = require("../
|
|
11
|
+
const MD5Hash_1 = require("../types/structs/MD5Hash");
|
|
12
12
|
exports.DEFAULT_SATISFACTORY_CHUNK_HEADER_SIZE = 49;
|
|
13
13
|
class SaveReader extends byte_reader_class_1.ByteReader {
|
|
14
14
|
constructor(fileBuffer, onProgressCallback = () => { }) {
|
|
@@ -9,7 +9,7 @@ const alignment_enum_1 = require("../../byte/alignment.enum");
|
|
|
9
9
|
const byte_writer_class_1 = require("../../byte/byte-writer.class");
|
|
10
10
|
const parser_error_1 = require("../../error/parser.error");
|
|
11
11
|
const file_types_1 = require("../../file.types");
|
|
12
|
-
const MD5Hash_1 = require("../
|
|
12
|
+
const MD5Hash_1 = require("../types/structs/MD5Hash");
|
|
13
13
|
const level_class_1 = require("./level.class");
|
|
14
14
|
const save_reader_1 = require("./save-reader");
|
|
15
15
|
class SaveWriter extends byte_writer_class_1.ByteWriter {
|
|
@@ -62,7 +62,7 @@ class SaveWriter extends byte_writer_class_1.ByteWriter {
|
|
|
62
62
|
if (level.name !== save.header.mapName) {
|
|
63
63
|
writer.writeString(level.name);
|
|
64
64
|
}
|
|
65
|
-
level_class_1.Level.
|
|
65
|
+
level_class_1.Level.SerializeLevel(writer, level, buildVersion);
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
static GenerateCompressedChunksFromData(bufferArray, compressionInfo, onBinaryBeforeCompressing, onChunk, alignment = alignment_enum_1.Alignment.LITTLE_ENDIAN) {
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BinaryReadable } from "../../../byte/binary-readable.interface";
|
|
2
|
+
import { ByteWriter } from "../../../byte/byte-writer.class";
|
|
3
|
+
import { SaveObject, SaveObjectHeader } from "./SaveObject";
|
|
4
|
+
export declare const isSaveComponent: (obj: any) => obj is SaveComponent;
|
|
5
|
+
export interface SaveComponentHeader extends SaveObjectHeader {
|
|
6
|
+
parentEntityName: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class SaveComponent extends SaveObject implements SaveComponentHeader {
|
|
9
|
+
typePath: string;
|
|
10
|
+
rootObject: string;
|
|
11
|
+
instanceName: string;
|
|
12
|
+
parentEntityName: string;
|
|
13
|
+
static readonly TypeID = 0;
|
|
14
|
+
readonly type = "SaveComponent";
|
|
15
|
+
constructor(typePath: string, rootObject: string, instanceName: string, parentEntityName?: string);
|
|
16
|
+
static ParseHeader(reader: BinaryReadable, obj: SaveComponent): void;
|
|
17
|
+
static SerializeHeader(writer: ByteWriter, component: SaveComponent): void;
|
|
18
|
+
static ParseData(component: SaveComponent, length: number, reader: BinaryReadable, buildVersion: number, typePath: string): void;
|
|
19
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SaveComponent = exports.isSaveComponent = void 0;
|
|
4
|
+
const SaveObject_1 = require("./SaveObject");
|
|
5
|
+
const isSaveComponent = (obj) => {
|
|
6
|
+
return obj.type === 'SaveComponent';
|
|
7
|
+
};
|
|
8
|
+
exports.isSaveComponent = isSaveComponent;
|
|
9
|
+
class SaveComponent extends SaveObject_1.SaveObject {
|
|
10
|
+
constructor(typePath, rootObject, instanceName, parentEntityName = '') {
|
|
11
|
+
super(typePath, rootObject, instanceName);
|
|
12
|
+
this.typePath = typePath;
|
|
13
|
+
this.rootObject = rootObject;
|
|
14
|
+
this.instanceName = instanceName;
|
|
15
|
+
this.parentEntityName = parentEntityName;
|
|
16
|
+
this.type = 'SaveComponent';
|
|
17
|
+
}
|
|
18
|
+
static ParseHeader(reader, obj) {
|
|
19
|
+
SaveObject_1.SaveObject.ParseHeader(reader, obj);
|
|
20
|
+
obj.parentEntityName = reader.readString();
|
|
21
|
+
}
|
|
22
|
+
static SerializeHeader(writer, component) {
|
|
23
|
+
SaveObject_1.SaveObject.SerializeHeader(writer, component);
|
|
24
|
+
writer.writeString(component.parentEntityName);
|
|
25
|
+
}
|
|
26
|
+
static ParseData(component, length, reader, buildVersion, typePath) {
|
|
27
|
+
SaveObject_1.SaveObject.ParseData(component, length, reader, buildVersion, typePath);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.SaveComponent = SaveComponent;
|
|
31
|
+
SaveComponent.TypeID = 0;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { BinaryReadable } from "../../../byte/binary-readable.interface";
|
|
2
|
+
import { ByteWriter } from "../../../byte/byte-writer.class";
|
|
3
|
+
import { ObjectReference } from "../structs/ObjectReference";
|
|
4
|
+
import { Transform } from '../structs/Transform';
|
|
5
|
+
import { SaveObject, SaveObjectHeader } from "./SaveObject";
|
|
6
|
+
export declare const isSaveEntity: (obj: any) => obj is SaveEntity;
|
|
7
|
+
export interface SaveEntityHeader extends SaveObjectHeader {
|
|
8
|
+
needTransform: boolean;
|
|
9
|
+
transform: Transform;
|
|
10
|
+
wasPlacedInLevel: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare class SaveEntity extends SaveObject {
|
|
13
|
+
typePath: string;
|
|
14
|
+
rootObject: string;
|
|
15
|
+
instanceName: string;
|
|
16
|
+
parentEntityName: string;
|
|
17
|
+
static readonly TypeID = 1;
|
|
18
|
+
readonly type = "SaveEntity";
|
|
19
|
+
needTransform: boolean;
|
|
20
|
+
transform: Transform;
|
|
21
|
+
wasPlacedInLevel: boolean;
|
|
22
|
+
parentObjectRoot: string;
|
|
23
|
+
parentObjectName: string;
|
|
24
|
+
components: ObjectReference[];
|
|
25
|
+
constructor(typePath: string, rootObject: string, instanceName: string, parentEntityName?: string, needsTransform?: boolean);
|
|
26
|
+
static ParseHeader(reader: BinaryReadable, obj: SaveEntity): void;
|
|
27
|
+
static ParseData(entity: SaveEntity, length: number, reader: BinaryReadable, buildVersion: number, typePath: string): void;
|
|
28
|
+
static SerializeHeader(writer: ByteWriter, entity: SaveEntity): void;
|
|
29
|
+
static SerializeData(writer: ByteWriter, entity: SaveEntity, buildVersion: number): void;
|
|
30
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SaveEntity = exports.isSaveEntity = void 0;
|
|
4
|
+
const ObjectReference_1 = require("../structs/ObjectReference");
|
|
5
|
+
const Transform_1 = require("../structs/Transform");
|
|
6
|
+
const SaveObject_1 = require("./SaveObject");
|
|
7
|
+
const isSaveEntity = (obj) => {
|
|
8
|
+
return obj.type === 'SaveEntity';
|
|
9
|
+
};
|
|
10
|
+
exports.isSaveEntity = isSaveEntity;
|
|
11
|
+
class SaveEntity extends SaveObject_1.SaveObject {
|
|
12
|
+
constructor(typePath, rootObject, instanceName, parentEntityName = '', needsTransform = false) {
|
|
13
|
+
super(typePath, rootObject, instanceName);
|
|
14
|
+
this.typePath = typePath;
|
|
15
|
+
this.rootObject = rootObject;
|
|
16
|
+
this.instanceName = instanceName;
|
|
17
|
+
this.parentEntityName = parentEntityName;
|
|
18
|
+
this.type = 'SaveEntity';
|
|
19
|
+
this.needTransform = needsTransform;
|
|
20
|
+
this.wasPlacedInLevel = false;
|
|
21
|
+
this.parentObjectRoot = '';
|
|
22
|
+
this.parentObjectName = '';
|
|
23
|
+
this.transform = {
|
|
24
|
+
rotation: { x: 0, y: 0, z: 0, w: 1 },
|
|
25
|
+
translation: { x: 0, y: 0, z: 0 },
|
|
26
|
+
scale3d: { x: 1, y: 1, z: 1 }
|
|
27
|
+
};
|
|
28
|
+
this.components = [];
|
|
29
|
+
}
|
|
30
|
+
static ParseHeader(reader, obj) {
|
|
31
|
+
SaveObject_1.SaveObject.ParseHeader(reader, obj);
|
|
32
|
+
obj.needTransform = reader.readInt32() == 1;
|
|
33
|
+
obj.transform = Transform_1.Transform.ParseF(reader);
|
|
34
|
+
obj.wasPlacedInLevel = reader.readInt32() == 1;
|
|
35
|
+
}
|
|
36
|
+
static ParseData(entity, length, reader, buildVersion, typePath) {
|
|
37
|
+
const afterSizeIndicator = reader.getBufferPosition();
|
|
38
|
+
entity.parentObjectRoot = reader.readString();
|
|
39
|
+
entity.parentObjectName = reader.readString();
|
|
40
|
+
var componentCount = reader.readInt32();
|
|
41
|
+
for (let i = 0; i < componentCount; i++) {
|
|
42
|
+
var componentRef = ObjectReference_1.ObjectReference.read(reader);
|
|
43
|
+
entity.components.push(componentRef);
|
|
44
|
+
}
|
|
45
|
+
const remainingSize = length - (reader.getBufferPosition() - afterSizeIndicator);
|
|
46
|
+
return SaveObject_1.SaveObject.ParseData(entity, remainingSize, reader, buildVersion, typePath);
|
|
47
|
+
}
|
|
48
|
+
static SerializeHeader(writer, entity) {
|
|
49
|
+
SaveObject_1.SaveObject.SerializeHeader(writer, entity);
|
|
50
|
+
writer.writeInt32(entity.needTransform ? 1 : 0);
|
|
51
|
+
Transform_1.Transform.SerializeF(writer, entity.transform);
|
|
52
|
+
writer.writeInt32(entity.wasPlacedInLevel ? 1 : 0);
|
|
53
|
+
}
|
|
54
|
+
static SerializeData(writer, entity, buildVersion) {
|
|
55
|
+
writer.writeString(entity.parentObjectRoot);
|
|
56
|
+
writer.writeString(entity.parentObjectName);
|
|
57
|
+
writer.writeInt32(entity.components.length);
|
|
58
|
+
for (const com of entity.components) {
|
|
59
|
+
writer.writeString(com.levelName);
|
|
60
|
+
writer.writeString(com.pathName);
|
|
61
|
+
}
|
|
62
|
+
SaveObject_1.SaveObject.SerializeData(writer, entity, buildVersion);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.SaveEntity = SaveEntity;
|
|
66
|
+
SaveEntity.TypeID = 1;
|