arx-convert 12.0.0 → 13.0.0

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.
Files changed (55) hide show
  1. package/README.md +12 -6
  2. package/dist/common/types.d.ts +20 -0
  3. package/dist/dlf/DLF.d.ts +3 -4
  4. package/dist/dlf/DLF.js +15 -10
  5. package/dist/dlf/DLF.js.map +1 -1
  6. package/dist/dlf/DlfHeader.d.ts +10 -2
  7. package/dist/dlf/DlfHeader.js +6 -4
  8. package/dist/dlf/DlfHeader.js.map +1 -1
  9. package/dist/dlf/Fog.d.ts +2 -2
  10. package/dist/dlf/Fog.js +4 -4
  11. package/dist/dlf/Fog.js.map +1 -1
  12. package/dist/dlf/{InteactiveObject.d.ts → InteractiveObject.d.ts} +3 -3
  13. package/dist/dlf/{InteactiveObject.js → InteractiveObject.js} +5 -5
  14. package/dist/dlf/InteractiveObject.js.map +1 -0
  15. package/dist/dlf/ZoneAndPathHeader.d.ts +1 -1
  16. package/dist/dlf/ZoneAndPathHeader.js +6 -6
  17. package/dist/dlf/ZoneAndPathHeader.js.map +1 -1
  18. package/dist/dlf/ZoneAndPathPoint.d.ts +3 -3
  19. package/dist/dlf/ZoneAndPathPoint.js +14 -12
  20. package/dist/dlf/ZoneAndPathPoint.js.map +1 -1
  21. package/dist/ftl/FTL.d.ts +2 -1
  22. package/dist/ftl/FTL.js.map +1 -1
  23. package/dist/fts/Anchor.d.ts +2 -1
  24. package/dist/fts/Anchor.js.map +1 -1
  25. package/dist/fts/AnchorData.d.ts +1 -1
  26. package/dist/fts/AnchorData.js +2 -2
  27. package/dist/fts/AnchorData.js.map +1 -1
  28. package/dist/fts/FTS.d.ts +5 -3
  29. package/dist/fts/FTS.js +6 -2
  30. package/dist/fts/FTS.js.map +1 -1
  31. package/dist/fts/Polygon.js.map +1 -1
  32. package/dist/fts/SceneHeader.d.ts +3 -0
  33. package/dist/fts/SceneHeader.js +3 -3
  34. package/dist/fts/SceneHeader.js.map +1 -1
  35. package/dist/fts/TextureVertex.d.ts +1 -1
  36. package/dist/fts/TextureVertex.js +2 -2
  37. package/dist/fts/TextureVertex.js.map +1 -1
  38. package/dist/llf/LLF.d.ts +2 -1
  39. package/dist/llf/LLF.js.map +1 -1
  40. package/dist/llf/Light.d.ts +3 -3
  41. package/dist/llf/Light.js +2 -2
  42. package/dist/llf/Light.js.map +1 -1
  43. package/dist/tea/KeyFrame.d.ts +1 -1
  44. package/dist/tea/KeyFrame.js +2 -2
  45. package/dist/tea/KeyFrame.js.map +1 -1
  46. package/dist/tea/TEA.d.ts +2 -1
  47. package/dist/tea/TEA.js.map +1 -1
  48. package/dist/types.d.ts +1 -1
  49. package/package.json +1 -1
  50. package/schemas/dlf.schema.json +47 -35
  51. package/schemas/ftl.schema.json +5 -0
  52. package/schemas/fts.schema.json +9 -17
  53. package/schemas/llf.schema.json +4 -4
  54. package/schemas/tea.schema.json +2 -2
  55. package/dist/dlf/InteactiveObject.js.map +0 -1
package/README.md CHANGED
@@ -10,6 +10,10 @@ Converts various Arx Fatalis formats (DLF, FTS, LLF, AMB and FTL) to JSON/YAML a
10
10
 
11
11
  `npm i -g arx-convert`
12
12
 
13
+ node.js 18.0+ (because the lib uses prefix-only core modules)
14
+
15
+ It might work with older versions of node.js, but I haven't tested it there.
16
+
13
17
  ### browser
14
18
 
15
19
  ```html
@@ -31,12 +35,6 @@ Converts various Arx Fatalis formats (DLF, FTS, LLF, AMB and FTL) to JSON/YAML a
31
35
  </script>
32
36
  ```
33
37
 
34
- ### Recommended requirements
35
-
36
- node.js 18.0+ (because the lib uses prefix-only core modules)
37
-
38
- It might work with older versions of node.js, but I haven't tested it there.
39
-
40
38
  ## Command-line API
41
39
 
42
40
  `arx-convert <inputfile> --from=<format> --to=<format> --output=<outputfile> [--format] [--pretty] [--prettify]`
@@ -267,3 +265,11 @@ or uncompressed
267
265
  ### Validating generated JSON files using schemas
268
266
 
269
267
  https://www.jsonschemavalidator.net/
268
+
269
+ ## Miscellaneous infos
270
+
271
+ Arx uses a right handed 3D coordinate system where:
272
+
273
+ - X-axis is pointing left
274
+ - Y-axis is pointing down
275
+ - Z-axis is pointing towards you and is coming out of the screen
@@ -2,16 +2,36 @@
2
2
  * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/graphics/GraphicsFormat.h#L48
3
3
  */
4
4
  export type ArxVector3 = {
5
+ /**
6
+ * X-axis is pointing left
7
+ */
5
8
  x: number;
9
+ /**
10
+ * Y-axis is pointing down
11
+ */
6
12
  y: number;
13
+ /**
14
+ * Z-axis is pointing towards you and is coming out of the screen
15
+ */
7
16
  z: number;
8
17
  };
9
18
  /**
19
+ * Euler angles in degrees
20
+ *
10
21
  * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/graphics/GraphicsFormat.h#L65
11
22
  */
12
23
  export type ArxRotation = {
24
+ /**
25
+ * Euler angle defined in degrees
26
+ */
13
27
  a: number;
28
+ /**
29
+ * Euler angle defined in degrees
30
+ */
14
31
  b: number;
32
+ /**
33
+ * Euler angle defined in degrees
34
+ */
15
35
  g: number;
16
36
  };
17
37
  /**
package/dist/dlf/DLF.d.ts CHANGED
@@ -1,18 +1,17 @@
1
1
  import type { SetOptional, Simplify } from 'type-fest';
2
2
  import { type ArxDlfHeader } from './DlfHeader.js';
3
3
  import { type ArxFog } from './Fog.js';
4
- import { type ArxInteractiveObject } from './InteactiveObject.js';
4
+ import { type ArxInteractiveObject } from './InteractiveObject.js';
5
5
  import { type ArxScene } from './Scene.js';
6
6
  import { type ArxZoneAndPathHeader } from './ZoneAndPathHeader.js';
7
7
  import { type ArxZoneAndPathPoint } from './ZoneAndPathPoint.js';
8
- export type ArxZone = Simplify<SetOptional<Omit<ArxZoneAndPathHeader, 'numberOfPoints' | 'pos' | 'flags'>, 'backgroundColor' | 'ambience' | 'ambienceMaxVolume' | 'drawDistance'> & {
8
+ export type ArxZone = Simplify<SetOptional<Omit<ArxZoneAndPathHeader, 'numberOfPoints' | 'position' | 'flags'>, 'backgroundColor' | 'ambience' | 'ambienceMaxVolume' | 'drawDistance'> & {
9
9
  points: ArxZoneAndPathPoint[];
10
10
  }>;
11
11
  export type ArxPath = Pick<ArxZone, 'name' | 'points'>;
12
12
  export type ArxDLF = {
13
13
  $schema?: string;
14
- header: Omit<ArxDlfHeader, 'numberOfInteractiveObjects' | 'numberOfFogs' | 'numberOfZonesAndPaths'>;
15
- scene: ArxScene;
14
+ header: Simplify<Omit<ArxDlfHeader, 'numberOfInteractiveObjects' | 'numberOfFogs' | 'numberOfZonesAndPaths'> & ArxScene>;
16
15
  interactiveObjects: ArxInteractiveObject[];
17
16
  fogs: ArxFog[];
18
17
  paths: ArxPath[];
package/dist/dlf/DLF.js CHANGED
@@ -2,7 +2,7 @@ import { BinaryIO } from '../common/BinaryIO.js';
2
2
  import { concatArrayBuffers, times } from '../common/helpers.js';
3
3
  import { DlfHeader } from './DlfHeader.js';
4
4
  import { Fog } from './Fog.js';
5
- import { InteractiveObject } from './InteactiveObject.js';
5
+ import { InteractiveObject } from './InteractiveObject.js';
6
6
  import { Scene } from './Scene.js';
7
7
  import { ArxZoneAndPathFlags, ZoneAndPathHeader } from './ZoneAndPathHeader.js';
8
8
  import { ZoneAndPathPoint } from './ZoneAndPathPoint.js';
@@ -10,10 +10,13 @@ export class DLF {
10
10
  static load(decompressedFile) {
11
11
  const file = new BinaryIO(decompressedFile);
12
12
  const { numberOfInteractiveObjects, numberOfFogs, numberOfZonesAndPaths, ...header } = DlfHeader.readFrom(file);
13
+ const scene = Scene.readFrom(file);
13
14
  const data = {
14
15
  $schema: 'https://arx-tools.github.io/schemas/dlf.schema.json',
15
- header,
16
- scene: Scene.readFrom(file),
16
+ header: {
17
+ ...header,
18
+ ...scene,
19
+ },
17
20
  interactiveObjects: times(() => {
18
21
  return InteractiveObject.readFrom(file);
19
22
  }, numberOfInteractiveObjects),
@@ -27,9 +30,9 @@ export class DLF {
27
30
  const numberOfNodeLinks = 12;
28
31
  file.readInt8Array(numberOfNodes * (204 + numberOfNodeLinks * 64));
29
32
  times(() => {
30
- const { numberOfPoints, pos, height, name, backgroundColor, ambience, ambienceMaxVolume, drawDistance, flags } = ZoneAndPathHeader.readFrom(file);
33
+ const { numberOfPoints, position, height, name, backgroundColor, ambience, ambienceMaxVolume, drawDistance, flags, } = ZoneAndPathHeader.readFrom(file);
31
34
  const points = times(() => {
32
- return ZoneAndPathPoint.readFrom(file, pos);
35
+ return ZoneAndPathPoint.readFrom(file, position);
33
36
  }, numberOfPoints);
34
37
  /**
35
38
  * zones and paths are the same, the only difference is if height = 0 then it's a path, otherwise a zone
@@ -59,7 +62,9 @@ export class DLF {
59
62
  }
60
63
  static save(json) {
61
64
  const header = DlfHeader.accumulateFrom(json);
62
- const scene = Scene.accumulateFrom(json.scene);
65
+ const scene = Scene.accumulateFrom({
66
+ levelIdx: json.header.levelIdx,
67
+ });
63
68
  const interactiveObjects = concatArrayBuffers(json.interactiveObjects.map(InteractiveObject.accumulateFrom));
64
69
  const fogs = concatArrayBuffers(json.fogs.map(Fog.accumulateFrom));
65
70
  const numberOfNodes = 0;
@@ -67,17 +72,17 @@ export class DLF {
67
72
  const nodes = new ArrayBuffer(numberOfNodes * (204 + numberOfNodeLinks * 64));
68
73
  const paths = concatArrayBuffers(json.paths.flatMap((path) => {
69
74
  const header = ZoneAndPathHeader.allocateFrom(path);
70
- const { pos } = path.points[0];
75
+ const { position } = path.points[0];
71
76
  const points = path.points.map((point) => {
72
- return ZoneAndPathPoint.allocateFrom(point, pos);
77
+ return ZoneAndPathPoint.allocateFrom(point, position);
73
78
  });
74
79
  return [header, ...points];
75
80
  }));
76
81
  const zones = concatArrayBuffers(json.zones.flatMap((zone) => {
77
82
  const header = ZoneAndPathHeader.allocateFrom(zone);
78
- const { pos } = zone.points[0];
83
+ const { position } = zone.points[0];
79
84
  const points = zone.points.map((point) => {
80
- return ZoneAndPathPoint.allocateFrom(point, pos);
85
+ return ZoneAndPathPoint.allocateFrom(point, position);
81
86
  });
82
87
  return [header, ...points];
83
88
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"DLF.js","sourceRoot":"","sources":["../../src/dlf/DLF.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DLF.js","sourceRoot":"","sources":["../../src/dlf/DLF.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,16 @@ export type ArxDlfHeader = {
10
10
  * unix timestamp in seconds
11
11
  */
12
12
  lastModifiedAt: number;
13
- posEdit: ArxVector3;
14
- angleEdit: ArxRotation;
13
+ player: {
14
+ /**
15
+ * Position of the player where it gets teleported to upon entering the level when no entity is specified as teleport target
16
+ */
17
+ position: ArxVector3;
18
+ /**
19
+ * The orientation of the player upon entering a level, specified in degrees. Only "b" is used which turns the player around its Y axis as all other rotations on other axis gets reset by the player animations.
20
+ */
21
+ orientation: ArxRotation;
22
+ };
15
23
  numberOfInteractiveObjects: number;
16
24
  numberOfFogs: number;
17
25
  numberOfPolygonsInFTS: number;
@@ -8,8 +8,10 @@ export class DlfHeader {
8
8
  const dataBlock = {
9
9
  lastModifiedBy: binary.readString(256),
10
10
  lastModifiedAt: binary.readInt32(),
11
- posEdit: binary.readVector3(),
12
- angleEdit: binary.readRotation(),
11
+ player: {
12
+ position: binary.readVector3(),
13
+ orientation: binary.readRotation(),
14
+ },
13
15
  };
14
16
  binary.readInt32(); // number of scenes - always 1
15
17
  const numberOfInteractiveObjects = binary.readInt32();
@@ -44,8 +46,8 @@ export class DlfHeader {
44
46
  binary.writeString('DANAE_FILE', 16);
45
47
  binary.writeString(json.header.lastModifiedBy, 256);
46
48
  binary.writeInt32(json.header.lastModifiedAt);
47
- binary.writeVector3(json.header.posEdit);
48
- binary.writeRotation(json.header.angleEdit);
49
+ binary.writeVector3(json.header.player.position);
50
+ binary.writeRotation(json.header.player.orientation);
49
51
  binary.writeInt32(1); // number of scenes
50
52
  binary.writeInt32(json.interactiveObjects.length);
51
53
  binary.writeInt32(0); // number of nodes
@@ -1 +1 @@
1
- {"version":3,"file":"DlfHeader.js","sourceRoot":"","sources":["../../src/dlf/DlfHeader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DlfHeader.js","sourceRoot":"","sources":["../../src/dlf/DlfHeader.ts"],"names":[],"mappings":"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"}
package/dist/dlf/Fog.d.ts CHANGED
@@ -5,7 +5,7 @@ import type { ArxRotation, ArxVector3 } from '../common/types.js';
5
5
  * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/scene/LevelFormat.h#L132
6
6
  */
7
7
  export type ArxFog = {
8
- pos: ArxVector3;
8
+ position: ArxVector3;
9
9
  color: ArxColor;
10
10
  size: number;
11
11
  /**
@@ -17,7 +17,7 @@ export type ArxFog = {
17
17
  * A normal vector, all axis are between -1 and 1
18
18
  */
19
19
  move: ArxVector3;
20
- angle: ArxRotation;
20
+ orientation: ArxRotation;
21
21
  /**
22
22
  * Movement speed of fog particles: `move` * (`speed` * 0.1)
23
23
  */
package/dist/dlf/Fog.js CHANGED
@@ -4,13 +4,13 @@ import { repeat } from '../common/helpers.js';
4
4
  export class Fog {
5
5
  static readFrom(binary) {
6
6
  const dataBlock1 = {
7
- pos: binary.readVector3(),
7
+ position: binary.readVector3(),
8
8
  color: Color.readFrom(binary, 'rgb'),
9
9
  size: binary.readFloat32(),
10
10
  special: binary.readInt32(),
11
11
  scale: binary.readFloat32(),
12
12
  move: binary.readVector3(),
13
- angle: binary.readRotation(),
13
+ orientation: binary.readRotation(),
14
14
  speed: binary.readFloat32(),
15
15
  rotateSpeed: binary.readFloat32(),
16
16
  toLive: binary.readInt32(),
@@ -28,13 +28,13 @@ export class Fog {
28
28
  static accumulateFrom(fog) {
29
29
  const buffer = new ArrayBuffer(Fog.sizeOf());
30
30
  const binary = new BinaryIO(buffer);
31
- binary.writeVector3(fog.pos);
31
+ binary.writeVector3(fog.position);
32
32
  binary.writeBuffer(Color.accumulateFrom(fog.color, 'rgb'));
33
33
  binary.writeFloat32(fog.size);
34
34
  binary.writeInt32(fog.special);
35
35
  binary.writeFloat32(fog.scale);
36
36
  binary.writeVector3(fog.move);
37
- binary.writeRotation(fog.angle);
37
+ binary.writeRotation(fog.orientation);
38
38
  binary.writeFloat32(fog.speed);
39
39
  binary.writeFloat32(fog.rotateSpeed);
40
40
  binary.writeInt32(fog.toLive);
@@ -1 +1 @@
1
- {"version":3,"file":"Fog.js","sourceRoot":"","sources":["../../src/dlf/Fog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Fog.js","sourceRoot":"","sources":["../../src/dlf/Fog.ts"],"names":[],"mappings":"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"}
@@ -5,11 +5,11 @@ import type { ArxRotation, ArxVector3 } from '../common/types.js';
5
5
  */
6
6
  export type ArxInteractiveObject = {
7
7
  name: string;
8
- pos: ArxVector3;
9
- angle: ArxRotation;
8
+ position: ArxVector3;
9
+ orientation: ArxRotation;
10
10
  /**
11
11
  * Number at the end of entity ids: like the `56` in `goblin_base_0056`.
12
- * The number should be between 0 and 9999. No info if the game can handle identifiers larger than 4 digits.
12
+ * The number should be between 0 and 9999. No info on whether the game can handle identifiers larger than 4 digits.
13
13
  */
14
14
  identifier: number;
15
15
  };
@@ -4,8 +4,8 @@ export class InteractiveObject {
4
4
  static readFrom(binary) {
5
5
  const data = {
6
6
  name: InteractiveObject.toRelativePath(binary.readString(512)),
7
- pos: binary.readVector3(),
8
- angle: binary.readRotation(),
7
+ position: binary.readVector3(),
8
+ orientation: binary.readRotation(),
9
9
  identifier: binary.readInt32(),
10
10
  };
11
11
  binary.readInt32(); // flags - always 0
@@ -17,8 +17,8 @@ export class InteractiveObject {
17
17
  const buffer = new ArrayBuffer(InteractiveObject.sizeOf());
18
18
  const binary = new BinaryIO(buffer);
19
19
  binary.writeString(InteractiveObject.toAbsolutePath(interactiveObject.name), 512);
20
- binary.writeVector3(interactiveObject.pos);
21
- binary.writeRotation(interactiveObject.angle);
20
+ binary.writeVector3(interactiveObject.position);
21
+ binary.writeRotation(interactiveObject.orientation);
22
22
  binary.writeInt32(interactiveObject.identifier);
23
23
  binary.writeInt32(0); // flags
24
24
  binary.writeInt32Array(repeat(0, 14)); // pad
@@ -86,4 +86,4 @@ export class InteractiveObject {
86
86
  BinaryIO.sizeOfFloat32Array(16));
87
87
  }
88
88
  }
89
- //# sourceMappingURL=InteactiveObject.js.map
89
+ //# sourceMappingURL=InteractiveObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InteractiveObject.js","sourceRoot":"","sources":["../../src/dlf/InteractiveObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAiB3C,MAAM,OAAO,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,MAAiC;QAC/C,MAAM,IAAI,GAAyB;YACjC,IAAI,EAAE,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAC9D,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE;YAC9B,WAAW,EAAE,MAAM,CAAC,YAAY,EAAE;YAClC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE;SAC/B,CAAA;QAED,MAAM,CAAC,SAAS,EAAE,CAAA,CAAC,mBAAmB;QACtC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA,CAAC,UAAU;QACpC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA,CAAC,WAAW;QAEvC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,iBAAuC;QAC3D,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAA;QAC1D,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;QACjF,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;QAC/C,MAAM,CAAC,aAAa,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAA;QACnD,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;QAC/C,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA,CAAC,QAAQ;QAE7B,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA,CAAC,MAAM;QAC5C,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA,CAAC,OAAO;QAE/C,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,cAAc,CAAC,QAAgB;QACpC,+BAA+B;QAC/B,8CAA8C;QAC9C,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAA;QAE5F,6EAA6E;QAC7E,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,EAAY,CAAA;QAC9C,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACzC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,aAAa,CAAC,GAAG,EAAE,CAAA;QACrB,CAAC;QAED,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnC,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEpC,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACnC,OAAO,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,MAAM,CAAA;QAClC,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CAAC,QAAgB;QACpC,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAEpD,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9B,6EAA6E;YAC7E,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACzC,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,EAAY,CAAA;YAC9C,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACzC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,aAAa,CAAC,GAAG,EAAE,CAAA;YACrB,CAAC;YAED,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACnC,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAEpC,OAAO,uCAAuC,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,IAAI,MAAM,CAAA;QACxF,CAAC;QAED,MAAM,GAAG,GAAG,QAAQ,CAAA;QACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACvC,OAAO,uCAAuC,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,IAAI,MAAM,CAAA;IACxF,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,CACL,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC;YAC1B,QAAQ,CAAC,aAAa,EAAE;YACxB,QAAQ,CAAC,cAAc,EAAE;YACzB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAChC,CAAA;IACH,CAAC;CACF"}
@@ -18,7 +18,7 @@ export declare enum ArxZoneAndPathFlags {
18
18
  export type ArxZoneAndPathHeader = {
19
19
  name: string;
20
20
  flags: ArxZoneAndPathFlags;
21
- pos: ArxVector3;
21
+ position: ArxVector3;
22
22
  numberOfPoints: number;
23
23
  /**
24
24
  * known as `rgb` in arx source code
@@ -21,11 +21,11 @@ export class ZoneAndPathHeader {
21
21
  const name = binary.readString(64);
22
22
  binary.readInt16(); // idx - always 0
23
23
  const flags = binary.readInt16();
24
- binary.readVector3(); // initPos - the same as pos with only 1 instance of being different on level 6:
25
- // initPos: { x: -2647.48486328125, y: -0.5400390625, z: 6539.69091796875 }
26
- // pos: { x: -2647.48486328125, y: -0.5400390625, z: 6539.6904296875 }
24
+ binary.readVector3(); // initPosition - the same as position with only 1 instance of being different on level 6:
25
+ // initPosition: { x: -2647.48486328125, y: -0.5400390625, z: 6539.69091796875 }
26
+ // position: { x: -2647.48486328125, y: -0.5400390625, z: 6539.6904296875 }
27
27
  const dataBlock = {
28
- pos: binary.readVector3(),
28
+ position: binary.readVector3(),
29
29
  numberOfPoints: binary.readInt32(),
30
30
  backgroundColor: Color.readFrom(binary, 'rgb'),
31
31
  drawDistance: binary.readFloat32(),
@@ -53,8 +53,8 @@ export class ZoneAndPathHeader {
53
53
  binary.writeString(zoneOrPath.name, 64);
54
54
  binary.writeInt16(0); // idx
55
55
  binary.writeInt16(ZoneAndPathHeader.setFlags(zoneOrPath));
56
- binary.writeVector3(zoneOrPath.points[0].pos); // initPos
57
- binary.writeVector3(zoneOrPath.points[0].pos); // pos
56
+ binary.writeVector3(zoneOrPath.points[0].position); // initPosition
57
+ binary.writeVector3(zoneOrPath.points[0].position); // position
58
58
  binary.writeInt32(zoneOrPath.points.length);
59
59
  if (isZone && zoneOrPath.backgroundColor !== undefined) {
60
60
  binary.writeBuffer(Color.accumulateFrom(zoneOrPath.backgroundColor, 'rgb'));
@@ -1 +1 @@
1
- {"version":3,"file":"ZoneAndPathHeader.js","sourceRoot":"","sources":["../../src/dlf/ZoneAndPathHeader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZoneAndPathHeader.js","sourceRoot":"","sources":["../../src/dlf/ZoneAndPathHeader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAiB,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAEzD;;;GAGG;AACH,MAAM,CAAN,IAAY,mBAQX;AARD,WAAY,mBAAmB;IAC7B,6DAAQ,CAAA;IACR,wGAAwG;IACxG,oHAAoH;IACpH,2EAAoB,CAAA;IACpB,yFAA2B,CAAA;IAC3B,mFAAwB,CAAA;IACxB,+FAA+F;AACjG,CAAC,EARW,mBAAmB,KAAnB,mBAAmB,QAQ9B;AAiCD,MAAM,OAAO,iBAAiB;IAC5B,MAAM,CAAC,QAAQ,CAAC,MAAiC;QAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QAElC,MAAM,CAAC,SAAS,EAAE,CAAA,CAAC,iBAAiB;QAEpC,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QAEhC,MAAM,CAAC,WAAW,EAAE,CAAA,CAAC,0FAA0F;QAC/G,gFAAgF;QAChF,+EAA+E;QAE/E,MAAM,SAAS,GAAG;YAChB,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE;YAC9B,cAAc,EAAE,MAAM,CAAC,SAAS,EAAE;YAClC,eAAe,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;YAC9C,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE;SACnC,CAAA;QAED,MAAM,CAAC,WAAW,EAAE,CAAA,CAAC,kDAAkD;QAEvE,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;QAE9C,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA,CAAC,WAAW;QAEvC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QAEjC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA,CAAC,WAAW;QAErC,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAEvC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,CAAC,WAAW;QAElC,OAAO;YACL,IAAI;YACJ,KAAK;YACL,GAAG,SAAS;YACZ,iBAAiB;YACjB,MAAM;YACN,QAAQ;SACT,CAAA;IACH,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,UAA6B;QAC/C,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAA;QAC1D,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAEnD,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QACvC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA,CAAC,MAAM;QAE3B,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;QAEzD,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA,CAAC,eAAe;QAClE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA,CAAC,WAAW;QAE9D,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAE3C,IAAI,MAAM,IAAI,UAAU,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACvD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,CAAA;QAC7E,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;QAC9D,CAAC;QAED,IAAI,MAAM,IAAI,UAAU,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACpD,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAA;QAC5C,CAAC;QAED,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA,CAAC,SAAS;QAEhC,IAAI,MAAM,IAAI,UAAU,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACzD,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QAC1B,CAAC;QAED,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA,CAAC,OAAO;QAE/C,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QACtB,CAAC;QAED,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA,CAAC,OAAO;QAE7C,IAAI,MAAM,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;QAC9C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QACjC,CAAC;QAED,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA,CAAC,OAAO;QAEnC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,CACL,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACzB,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC5B,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC9B,QAAQ,CAAC,WAAW,EAAE;YACtB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YACnB,QAAQ,CAAC,kBAAkB,CAAC,CAAC,GAAG,EAAE,CAAC;YACnC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,EAAE,CAAC;YACjC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAC3B,CAAA;IACH,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,UAA6B;QACzC,OAAO,QAAQ,IAAI,UAAU,CAAA;IAC/B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,UAA6B;QAC3C,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,OAAO,mBAAmB,CAAC,IAAI,CAAA;QACjC,CAAC;QAED,IAAI,KAAK,GAAwB,mBAAmB,CAAC,IAAI,CAAA;QAEzD,IAAI,UAAU,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAC7C,KAAK,GAAG,KAAK,GAAG,mBAAmB,CAAC,kBAAkB,CAAA;QACxD,CAAC;QAED,IAAI,UAAU,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAC1C,KAAK,GAAG,KAAK,GAAG,mBAAmB,CAAC,eAAe,CAAA;QACrD,CAAC;QAED,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,IAAI,UAAU,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;YACpF,KAAK,GAAG,KAAK,GAAG,mBAAmB,CAAC,WAAW,CAAA;QACjD,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC;CACF"}
@@ -12,13 +12,13 @@ export declare enum ArxZoneAndPathPointType {
12
12
  * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/scene/LevelFormat.h#L168
13
13
  */
14
14
  export type ArxZoneAndPathPoint = {
15
- pos: ArxVector3;
15
+ position: ArxVector3;
16
16
  type: ArxZoneAndPathPointType;
17
17
  /** milliseconds */
18
18
  time: number;
19
19
  };
20
20
  export declare class ZoneAndPathPoint {
21
- static readFrom(binary: BinaryIO<ArrayBufferLike>, pos: ArxVector3): ArxZoneAndPathPoint;
22
- static allocateFrom(point: ArxZoneAndPathPoint, pos: ArxVector3): ArrayBuffer;
21
+ static readFrom(binary: BinaryIO<ArrayBufferLike>, position: ArxVector3): ArxZoneAndPathPoint;
22
+ static allocateFrom(point: ArxZoneAndPathPoint, position: ArxVector3): ArrayBuffer;
23
23
  static sizeOf(): number;
24
24
  }
@@ -10,13 +10,14 @@ export var ArxZoneAndPathPointType;
10
10
  ArxZoneAndPathPointType[ArxZoneAndPathPointType["BezierControlPoint"] = 2] = "BezierControlPoint";
11
11
  })(ArxZoneAndPathPointType || (ArxZoneAndPathPointType = {}));
12
12
  export class ZoneAndPathPoint {
13
- static readFrom(binary, pos) {
14
- const rpos = binary.readVector3();
13
+ static readFrom(binary, position) {
14
+ // TODO: what is r in rpos/rPosition? real?
15
+ const rPosition = binary.readVector3();
15
16
  const data = {
16
- pos: {
17
- x: rpos.x + pos.x,
18
- y: rpos.y + pos.y,
19
- z: rpos.z + pos.z,
17
+ position: {
18
+ x: rPosition.x + position.x,
19
+ y: rPosition.y + position.y,
20
+ z: rPosition.z + position.z,
20
21
  },
21
22
  type: binary.readInt32(),
22
23
  time: binary.readUint32(),
@@ -26,15 +27,16 @@ export class ZoneAndPathPoint {
26
27
  binary.readUint8Array(32); // cpad - ?
27
28
  return data;
28
29
  }
29
- static allocateFrom(point, pos) {
30
+ static allocateFrom(point, position) {
30
31
  const buffer = new ArrayBuffer(ZoneAndPathPoint.sizeOf());
31
32
  const binary = new BinaryIO(buffer);
32
- const rpos = {
33
- x: point.pos.x - pos.x,
34
- y: point.pos.y - pos.y,
35
- z: point.pos.z - pos.z,
33
+ // TODO: what is r in rpos/rPosition? real?
34
+ const rPosition = {
35
+ x: point.position.x - position.x,
36
+ y: point.position.y - position.y,
37
+ z: point.position.z - position.z,
36
38
  };
37
- binary.writeVector3(rpos);
39
+ binary.writeVector3(rPosition);
38
40
  binary.writeInt32(point.type);
39
41
  binary.writeUint32(point.time);
40
42
  binary.writeFloat32Array(repeat(0, 2));
@@ -1 +1 @@
1
- {"version":3,"file":"ZoneAndPathPoint.js","sourceRoot":"","sources":["../../src/dlf/ZoneAndPathPoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C;;GAEG;AACH,MAAM,CAAN,IAAY,uBAIX;AAJD,WAAY,uBAAuB;IACjC,6EAAY,CAAA;IACZ,yEAAU,CAAA;IACV,iGAAsB,CAAA;AACxB,CAAC,EAJW,uBAAuB,KAAvB,uBAAuB,QAIlC;AAYD,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,MAAiC,EAAE,GAAe;QAChE,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;QACjC,MAAM,IAAI,GAAG;YACX,GAAG,EAAE;gBACH,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBACjB,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;gBACjB,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aAClB;YACD,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE;YACxB,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE;SAC1B,CAAA;QAED,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA,CAAC,WAAW;QACtC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA,CAAC,WAAW;QACpC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA,CAAC,WAAW;QAErC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAA0B,EAAE,GAAe;QAC7D,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAA;QACzD,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,MAAM,IAAI,GAAG;YACX,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YACtB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YACtB,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SACvB,CAAA;QAED,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QACzB,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE9B,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACtC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACpC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAErC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,CACL,QAAQ,CAAC,aAAa,EAAE;YACxB,QAAQ,CAAC,WAAW,EAAE;YACtB,QAAQ,CAAC,YAAY,EAAE;YACvB,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC9B,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAC9B,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"ZoneAndPathPoint.js","sourceRoot":"","sources":["../../src/dlf/ZoneAndPathPoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAG3C;;GAEG;AACH,MAAM,CAAN,IAAY,uBAIX;AAJD,WAAY,uBAAuB;IACjC,6EAAY,CAAA;IACZ,yEAAU,CAAA;IACV,iGAAsB,CAAA;AACxB,CAAC,EAJW,uBAAuB,KAAvB,uBAAuB,QAIlC;AAYD,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,MAAiC,EAAE,QAAoB;QACrE,2CAA2C;QAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,EAAE,CAAA;QAEtC,MAAM,IAAI,GAAG;YACX,QAAQ,EAAE;gBACR,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;gBAC3B,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;gBAC3B,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;aAC5B;YACD,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE;YACxB,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE;SAC1B,CAAA;QAED,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA,CAAC,WAAW;QACtC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA,CAAC,WAAW;QACpC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA,CAAC,WAAW;QAErC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAA0B,EAAE,QAAoB;QAClE,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAA;QACzD,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,2CAA2C;QAC3C,MAAM,SAAS,GAAG;YAChB,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;YAChC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;YAChC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;SACjC,CAAA;QAED,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;QAC9B,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAE9B,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACtC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACpC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAErC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,CACL,QAAQ,CAAC,aAAa,EAAE;YACxB,QAAQ,CAAC,WAAW,EAAE;YACtB,QAAQ,CAAC,YAAY,EAAE;YACvB,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC9B,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAC9B,CAAA;IACH,CAAC;CACF"}
package/dist/ftl/FTL.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { Simplify } from 'type-fest';
1
2
  import { type ArxAction } from './Action.js';
2
3
  import { type ArxFace } from './Face.js';
3
4
  import { type ArxFtlHeader } from './FtlHeader.js';
@@ -7,7 +8,7 @@ import { type ArxGroup } from './Group.js';
7
8
  import { type ArxSelection } from './Selections.js';
8
9
  export type ArxFTL = {
9
10
  $schema?: string;
10
- header: Omit<ArxFtlHeader, 'numberOfVertices' | 'numberOfFaces' | 'numberOfTextures' | 'numberOfGroups' | 'numberOfActions' | 'numberOfSelections'>;
11
+ header: Simplify<Omit<ArxFtlHeader, 'numberOfVertices' | 'numberOfFaces' | 'numberOfTextures' | 'numberOfGroups' | 'numberOfActions' | 'numberOfSelections'>>;
11
12
  vertices: ArxFtlVertex[];
12
13
  faces: ArxFace[];
13
14
  textureContainers: ArxFtlTextureContainer[];
@@ -1 +1 @@
1
- {"version":3,"file":"FTL.js","sourceRoot":"","sources":["../../src/ftl/FTL.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAE,MAAM,EAAkB,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAgB,IAAI,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAqB,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAA+B,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAC9F,OAAO,EAAqB,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAiB,KAAK,EAAE,MAAM,eAAe,CAAA;AACpD,OAAO,EAAqB,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAqBjE,MAAM,OAAO,GAAG;IACd,MAAM,CAAC,IAAI,CAAC,gBAAiC;QAC3C,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QAE3C,MAAM,EACJ,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,GAAG,MAAM,EACV,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAE5B,OAAO;YACL,OAAO,EAAE,qDAAqD;YAC9D,MAAM;YACN,QAAQ,EAAE,KAAK,CAAC,GAAG,EAAE;gBACnB,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YACjC,CAAC,EAAE,gBAAgB,CAAC;YACpB,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE;gBAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC5B,CAAC,EAAE,aAAa,CAAC;YACjB,iBAAiB,EAAE,KAAK,CAAC,GAAG,EAAE;gBAC5B,OAAO,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC3C,CAAC,EAAE,gBAAgB,CAAC;YACpB,MAAM,EAAE,KAAK,CAAC,GAAG,EAAE;gBACjB,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC7B,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;gBACvD,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAA;gBACpD,OAAO,KAAK,CAAA;YACd,CAAC,CAAC;YACF,OAAO,EAAE,KAAK,CAAC,GAAG,EAAE;gBAClB,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC9B,CAAC,EAAE,eAAe,CAAC;YACnB,UAAU,EAAE,KAAK,CAAC,GAAG,EAAE;gBACrB,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YACjC,CAAC,EAAE,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE;gBAChE,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAA;gBAC1D,OAAO,SAAS,CAAA;YAClB,CAAC,CAAC;SACH,CAAA;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,IAAY;QACtB,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;QAC7C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAA;QAChF,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAA;QACrE,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,CAAA;QAC5G,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;QACxE,MAAM,OAAO,GAAG,kBAAkB,CAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YAC9B,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;YACzE,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;YACnC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;YAC/B,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CACH,CAAA;QACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAA;QAC3E,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAA;QACpF,MAAM,QAAQ,GAAG,kBAAkB,CACjC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YACnC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;YAC1E,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;YACnC,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;YAChC,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CACH,CAAA;QAED,OAAO,kBAAkB,CAAC;YACxB,MAAM;YACN,QAAQ;YACR,KAAK;YACL,iBAAiB;YACjB,MAAM;YACN,OAAO;YACP,OAAO;YACP,UAAU;YACV,QAAQ;SACT,CAAC,CAAA;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"FTL.js","sourceRoot":"","sources":["../../src/ftl/FTL.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
+ import type { Simplify } from 'type-fest';
1
2
  import { BinaryIO } from '../common/BinaryIO.js';
2
3
  import { type ArxAnchorData } from './AnchorData.js';
3
4
  export type ArxAnchor = {
4
- data: Omit<ArxAnchorData, 'numberOfLinkedAnchors'>;
5
+ data: Simplify<Omit<ArxAnchorData, 'numberOfLinkedAnchors'>>;
5
6
  linkedAnchors: number[];
6
7
  };
7
8
  export declare class Anchor {
@@ -1 +1 @@
1
- {"version":3,"file":"Anchor.js","sourceRoot":"","sources":["../../src/fts/Anchor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAsB,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAOnE,MAAM,OAAO,MAAM;IACjB,MAAM,CAAC,QAAQ,CAAC,MAAiC;QAC/C,MAAM,EAAE,qBAAqB,EAAE,GAAG,UAAU,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAE5E,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC,qBAAqB,CAAC;SAC5D,CAAA;IACH,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAiB;QACrC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACrF,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAA;QACrD,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QAE5C,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
1
+ {"version":3,"file":"Anchor.js","sourceRoot":"","sources":["../../src/fts/Anchor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAsB,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAOnE,MAAM,OAAO,MAAM;IACjB,MAAM,CAAC,QAAQ,CAAC,MAAiC;QAC/C,MAAM,EAAE,qBAAqB,EAAE,GAAG,UAAU,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAE5E,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,aAAa,EAAE,MAAM,CAAC,cAAc,CAAC,qBAAqB,CAAC;SAC5D,CAAA;IACH,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAiB;QACrC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QACrF,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAA;QACrD,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;QAE5C,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
@@ -13,7 +13,7 @@ export declare enum ArxAnchorFlags {
13
13
  * @see https://github.com/arx/ArxLibertatis/blob/1.2.1/src/graphics/data/FastSceneFormat.h#L117
14
14
  */
15
15
  export type ArxAnchorData = {
16
- pos: ArxVector3;
16
+ position: ArxVector3;
17
17
  radius: number;
18
18
  height: number;
19
19
  numberOfLinkedAnchors: number;
@@ -14,7 +14,7 @@ export var ArxAnchorFlags;
14
14
  export class AnchorData {
15
15
  static readFrom(binary) {
16
16
  const data = {
17
- pos: binary.readVector3(),
17
+ position: binary.readVector3(),
18
18
  radius: binary.readFloat32(),
19
19
  height: binary.readFloat32(),
20
20
  numberOfLinkedAnchors: binary.readInt16(),
@@ -29,7 +29,7 @@ export class AnchorData {
29
29
  static accumulateFrom(anchor) {
30
30
  const buffer = new ArrayBuffer(AnchorData.sizeOf());
31
31
  const binary = new BinaryIO(buffer);
32
- binary.writeVector3(anchor.data.pos);
32
+ binary.writeVector3(anchor.data.position);
33
33
  binary.writeFloat32(anchor.data.radius);
34
34
  binary.writeFloat32(anchor.data.height);
35
35
  binary.writeInt16(anchor.linkedAnchors.length);
@@ -1 +1 @@
1
- {"version":3,"file":"AnchorData.js","sourceRoot":"","sources":["../../src/fts/AnchorData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAI9C;;;GAGG;AACH,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,mDAAQ,CAAA;IACR,wEAAwE;IACxE,8EAA8E;IAC9E,8EAA8E;IAC9E,yDAAgB,CAAA;AAClB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAaD,MAAM,OAAO,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,MAAiC;QAC/C,MAAM,IAAI,GAAkB;YAC1B,GAAG,EAAE,MAAM,CAAC,WAAW,EAAE;YACzB,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;YAC5B,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;YAC5B,qBAAqB,EAAE,MAAM,CAAC,SAAS,EAAE;YACzC,SAAS,EAAE,KAAK;SACjB,CAAA;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QAEhC,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACvB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAiB;QACrC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;QACnD,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAE9C,IAAI,KAAK,GAAG,cAAc,CAAC,IAAI,CAAA;QAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1B,KAAK,GAAG,KAAK,GAAG,cAAc,CAAC,OAAO,CAAA;QACxC,CAAC;QAED,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAExB,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,QAAQ,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IACjG,CAAC;CACF"}
1
+ {"version":3,"file":"AnchorData.js","sourceRoot":"","sources":["../../src/fts/AnchorData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAI9C;;;GAGG;AACH,MAAM,CAAN,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,mDAAQ,CAAA;IACR,wEAAwE;IACxE,8EAA8E;IAC9E,8EAA8E;IAC9E,yDAAgB,CAAA;AAClB,CAAC,EANW,cAAc,KAAd,cAAc,QAMzB;AAaD,MAAM,OAAO,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,MAAiC;QAC/C,MAAM,IAAI,GAAkB;YAC1B,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE;YAC9B,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;YAC5B,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;YAC5B,qBAAqB,EAAE,MAAM,CAAC,SAAS,EAAE;YACzC,SAAS,EAAE,KAAK;SACjB,CAAA;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QAEhC,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACvB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,MAAiB;QACrC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;QACnD,MAAM,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;QAEnC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACzC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAE9C,IAAI,KAAK,GAAG,cAAc,CAAC,IAAI,CAAA;QAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1B,KAAK,GAAG,KAAK,GAAG,cAAc,CAAC,OAAO,CAAA;QACxC,CAAC;QAED,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QAExB,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,QAAQ,CAAC,aAAa,EAAE,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IACjG,CAAC;CACF"}