wc3maptranslator 4.0.1 → 4.0.3
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/dist/src/AngleConverter.d.ts +3 -0
- package/dist/src/AngleConverter.d.ts.map +1 -0
- package/dist/src/AngleConverter.js +12 -0
- package/dist/src/AngleConverter.js.map +1 -0
- package/dist/src/CommonInterfaces.d.ts +17 -0
- package/dist/src/CommonInterfaces.d.ts.map +1 -0
- package/dist/src/CommonInterfaces.js +3 -0
- package/dist/src/CommonInterfaces.js.map +1 -0
- package/dist/src/HexBuffer.d.ts +15 -0
- package/dist/src/HexBuffer.d.ts.map +1 -0
- package/{lib/HexBuffer.ts → dist/src/HexBuffer.js} +32 -42
- package/dist/src/HexBuffer.js.map +1 -0
- package/dist/src/W3Buffer.d.ts +14 -0
- package/dist/src/W3Buffer.d.ts.map +1 -0
- package/{lib/W3Buffer.ts → dist/src/W3Buffer.js} +25 -31
- package/dist/src/W3Buffer.js.map +1 -0
- package/dist/src/index.d.ts +3 -0
- package/dist/src/index.d.ts.map +1 -0
- package/{index.js → dist/src/index.js} +1 -1
- package/dist/src/index.js.map +1 -0
- package/dist/src/translators/CamerasTranslator.d.ts +23 -0
- package/dist/src/translators/CamerasTranslator.d.ts.map +1 -0
- package/{lib/translators/CamerasTranslator.ts → dist/src/translators/CamerasTranslator.js} +14 -39
- package/dist/src/translators/CamerasTranslator.js.map +1 -0
- package/dist/src/translators/DoodadsTranslator.d.ts +23 -0
- package/dist/src/translators/DoodadsTranslator.d.ts.map +1 -0
- package/{lib/translators/DoodadsTranslator.ts → dist/src/translators/DoodadsTranslator.js} +33 -65
- package/dist/src/translators/DoodadsTranslator.js.map +1 -0
- package/dist/src/translators/ImportsTranslator.d.ts +16 -0
- package/dist/src/translators/ImportsTranslator.d.ts.map +1 -0
- package/{lib/translators/ImportsTranslator.ts → dist/src/translators/ImportsTranslator.js} +21 -37
- package/dist/src/translators/ImportsTranslator.js.map +1 -0
- package/dist/src/translators/InfoTranslator.d.ts +124 -0
- package/dist/src/translators/InfoTranslator.d.ts.map +1 -0
- package/{lib/translators/InfoTranslator.ts → dist/src/translators/InfoTranslator.js} +108 -270
- package/dist/src/translators/InfoTranslator.js.map +1 -0
- package/dist/src/translators/ObjectsTranslator.d.ts +23 -0
- package/dist/src/translators/ObjectsTranslator.d.ts.map +1 -0
- package/{lib/translators/ObjectsTranslator.ts → dist/src/translators/ObjectsTranslator.js} +91 -125
- package/dist/src/translators/ObjectsTranslator.js.map +1 -0
- package/dist/src/translators/RegionsTranslator.d.ts +22 -0
- package/dist/src/translators/RegionsTranslator.d.ts.map +1 -0
- package/{lib/translators/RegionsTranslator.ts → dist/src/translators/RegionsTranslator.js} +18 -45
- package/dist/src/translators/RegionsTranslator.js.map +1 -0
- package/dist/src/translators/SoundsTranslator.d.ts +35 -0
- package/dist/src/translators/SoundsTranslator.d.ts.map +1 -0
- package/{lib/translators/SoundsTranslator.ts → dist/src/translators/SoundsTranslator.js} +30 -84
- package/dist/src/translators/SoundsTranslator.js.map +1 -0
- package/dist/src/translators/StringsTranslator.d.ts +7 -0
- package/dist/src/translators/StringsTranslator.d.ts.map +1 -0
- package/{lib/translators/StringsTranslator.ts → dist/src/translators/StringsTranslator.js} +12 -17
- package/dist/src/translators/StringsTranslator.js.map +1 -0
- package/dist/src/translators/TerrainTranslator.d.ts +33 -0
- package/dist/src/translators/TerrainTranslator.d.ts.map +1 -0
- package/{lib/translators/TerrainTranslator.ts → dist/src/translators/TerrainTranslator.js} +29 -84
- package/dist/src/translators/TerrainTranslator.js.map +1 -0
- package/dist/src/translators/UnitsTranslator.d.ts +40 -0
- package/dist/src/translators/UnitsTranslator.d.ts.map +1 -0
- package/{lib/translators/UnitsTranslator.ts → dist/src/translators/UnitsTranslator.js} +33 -95
- package/dist/src/translators/UnitsTranslator.js.map +1 -0
- package/{lib/translators/index.ts → dist/src/translators/index.d.ts} +1 -0
- package/dist/src/translators/index.d.ts.map +1 -0
- package/dist/src/translators/index.js +23 -0
- package/dist/src/translators/index.js.map +1 -0
- package/package.json +5 -4
- package/.codeclimate.yml +0 -12
- package/.editorconfig +0 -8
- package/.eslintignore +0 -5
- package/.eslintrc +0 -55
- package/.github/workflows/codeql-analysis.yml +0 -54
- package/.nycrc +0 -18
- package/.travis.yml +0 -23
- package/CHANGELOG.md +0 -78
- package/index.ts +0 -14
- package/lib/AngleConverter.ts +0 -7
- package/lib/CommonInterfaces.ts +0 -22
- package/test/.mocharc.json +0 -4
- package/test/AngleConverterTest.ts +0 -18
- package/test/HexBufferTest.ts +0 -170
- package/test/TranslatorReversion.ts +0 -218
- package/test/W3BufferTest.ts +0 -50
- package/test/data/cameras.json +0 -16
- package/test/data/doodads.json +0 -2730
- package/test/data/imports.json +0 -386
- package/test/data/info.json +0 -250
- package/test/data/obj-abilities.json +0 -4892
- package/test/data/obj-buffs.json +0 -38
- package/test/data/obj-destructables.json +0 -31
- package/test/data/obj-doodads.json +0 -38
- package/test/data/obj-items.json +0 -31
- package/test/data/obj-units.json +0 -40
- package/test/data/obj-upgrades.json +0 -38
- package/test/data/regions.json +0 -206
- package/test/data/sounds.json +0 -50
- package/test/data/strings.json +0 -115
- package/test/data/terrain.json +0 -1
- package/test/data/units.json +0 -452
- package/test/data/war3map.doo +0 -0
- package/test/data/war3map.imp +0 -0
- package/test/data/war3map.j +0 -3442
- package/test/data/war3map.shd +0 -0
- package/test/data/war3map.w3a +0 -0
- package/test/data/war3map.w3b +0 -0
- package/test/data/war3map.w3c +0 -0
- package/test/data/war3map.w3d +0 -0
- package/test/data/war3map.w3e +0 -0
- package/test/data/war3map.w3h +0 -0
- package/test/data/war3map.w3i +0 -0
- package/test/data/war3map.w3q +0 -0
- package/test/data/war3map.w3r +0 -0
- package/test/data/war3map.w3s +0 -0
- package/test/data/war3map.w3t +0 -0
- package/test/data/war3map.w3u +0 -0
- package/test/data/war3map.wts +0 -631
- package/test/data/war3mapUnits.doo +0 -0
- package/tsconfig.json +0 -25
- package/tslint.json +0 -47
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AngleConverter.d.ts","sourceRoot":"","sources":["../../src/AngleConverter.ts"],"names":[],"mappings":"AAAA,wBAAgB,OAAO,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED,wBAAgB,OAAO,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAEtD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rad2Deg = exports.deg2Rad = void 0;
|
|
4
|
+
function deg2Rad(angleInDegrees) {
|
|
5
|
+
return angleInDegrees * Math.PI / 180;
|
|
6
|
+
}
|
|
7
|
+
exports.deg2Rad = deg2Rad;
|
|
8
|
+
function rad2Deg(angleInRadians) {
|
|
9
|
+
return angleInRadians * 180 / Math.PI;
|
|
10
|
+
}
|
|
11
|
+
exports.rad2Deg = rad2Deg;
|
|
12
|
+
//# sourceMappingURL=AngleConverter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AngleConverter.js","sourceRoot":"","sources":["../../src/AngleConverter.ts"],"names":[],"mappings":";;;AAAA,SAAgB,OAAO,CAAC,cAAsB;IAC1C,OAAO,cAAc,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;AAC1C,CAAC;AAFD,0BAEC;AAED,SAAgB,OAAO,CAAC,cAAsB;IAC1C,OAAO,cAAc,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;AAC1C,CAAC;AAFD,0BAEC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/**
|
|
3
|
+
* @type angle - An angle is measured in degrees, 0 <= angle < 360
|
|
4
|
+
*/
|
|
5
|
+
export declare type angle = number;
|
|
6
|
+
export interface TranslationError {
|
|
7
|
+
message: string;
|
|
8
|
+
}
|
|
9
|
+
export interface WarResult {
|
|
10
|
+
buffer: Buffer;
|
|
11
|
+
errors?: TranslationError[];
|
|
12
|
+
}
|
|
13
|
+
export interface JsonResult<T = object> {
|
|
14
|
+
json: T;
|
|
15
|
+
errors?: TranslationError[];
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=CommonInterfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommonInterfaces.d.ts","sourceRoot":"","sources":["../../src/CommonInterfaces.ts"],"names":[],"mappings":";AAAA;;GAEG;AACH,oBAAY,KAAK,GAAG,MAAM,CAAC;AAM3B,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC9B;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,MAAM;IAClC,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CommonInterfaces.js","sourceRoot":"","sources":["../../src/CommonInterfaces.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
export declare class HexBuffer {
|
|
3
|
+
private _buffer;
|
|
4
|
+
addString(str: string): void;
|
|
5
|
+
addNewLine(): void;
|
|
6
|
+
addChar(char: string): void;
|
|
7
|
+
addChars(chars: string): void;
|
|
8
|
+
addInt(int: number, isShort?: boolean): void;
|
|
9
|
+
addShort(short: number): void;
|
|
10
|
+
addFloat(float: number): void;
|
|
11
|
+
addByte(byte: any): void;
|
|
12
|
+
addNullTerminator(): void;
|
|
13
|
+
getBuffer(): Buffer;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=HexBuffer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HexBuffer.d.ts","sourceRoot":"","sources":["../../src/HexBuffer.ts"],"names":[],"mappings":";AAkBA,qBAAa,SAAS;IAClB,OAAO,CAAC,OAAO,CAAM;IAEd,SAAS,CAAC,GAAG,EAAE,MAAM;IAYrB,UAAU;IAKV,OAAO,CAAC,IAAI,EAAE,MAAM;IAIpB,QAAQ,CAAC,KAAK,EAAE,MAAM;IAMtB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe;IAM5C,QAAQ,CAAC,KAAK,EAAE,MAAM;IAItB,QAAQ,CAAC,KAAK,EAAE,MAAM;IAWtB,OAAO,CAAC,IAAI,KAAA;IAIZ,iBAAiB;IAIjB,SAAS,IAAI,MAAM;CAG7B"}
|
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
public addString(str: string) {
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HexBuffer = void 0;
|
|
4
|
+
const ieee754 = require('ieee754'), IntN = require('intn'), intToHex = (intV, isShort) => {
|
|
5
|
+
// Creates a new 32-bit integer from the given number
|
|
6
|
+
const intSize = isShort ? 16 : 32;
|
|
7
|
+
const intNSize = new IntN(intSize);
|
|
8
|
+
const byteNum = intNSize.fromInt(intV).bytes;
|
|
9
|
+
// Map decimal bytes to hex bytes
|
|
10
|
+
// Bytes are already in correct little-endian form
|
|
11
|
+
return byteNum.map((Byte) => {
|
|
12
|
+
return '0x' + Byte.toString(16);
|
|
13
|
+
});
|
|
14
|
+
}, charToHex = (character) => {
|
|
15
|
+
return '0x' + character.charCodeAt(0).toString(16);
|
|
16
|
+
};
|
|
17
|
+
class HexBuffer {
|
|
18
|
+
constructor() {
|
|
19
|
+
this._buffer = [];
|
|
20
|
+
}
|
|
21
|
+
addString(str) {
|
|
23
22
|
// Write each char to the buffer
|
|
24
23
|
// "ascii" | "utf8" | "utf-8" | "utf16le" | "ucs2"
|
|
25
24
|
// | "ucs-2" | "base64" | "latin1" | "binary" | "hex"
|
|
@@ -30,52 +29,43 @@ export class HexBuffer {
|
|
|
30
29
|
}
|
|
31
30
|
this.addNullTerminator();
|
|
32
31
|
}
|
|
33
|
-
|
|
34
|
-
public addNewLine() {
|
|
32
|
+
addNewLine() {
|
|
35
33
|
this._buffer.push('0x0d'); // carriage return
|
|
36
34
|
this._buffer.push('0x0a'); // line feed
|
|
37
35
|
}
|
|
38
|
-
|
|
39
|
-
public addChar(char: string) {
|
|
36
|
+
addChar(char) {
|
|
40
37
|
this._buffer.push(charToHex(char));
|
|
41
38
|
}
|
|
42
|
-
|
|
43
|
-
public addChars(chars: string) {
|
|
39
|
+
addChars(chars) {
|
|
44
40
|
chars.split('').forEach(char => {
|
|
45
41
|
this.addChar(char);
|
|
46
42
|
});
|
|
47
43
|
}
|
|
48
|
-
|
|
49
|
-
public addInt(int: number, isShort: boolean = false) {
|
|
44
|
+
addInt(int, isShort = false) {
|
|
50
45
|
intToHex(int, isShort).forEach((Byte) => {
|
|
51
46
|
this._buffer.push(Byte);
|
|
52
47
|
});
|
|
53
48
|
}
|
|
54
|
-
|
|
55
|
-
public addShort(short: number) {
|
|
49
|
+
addShort(short) {
|
|
56
50
|
this.addInt(short, true);
|
|
57
51
|
}
|
|
58
|
-
|
|
59
|
-
public addFloat(float: number) {
|
|
52
|
+
addFloat(float) {
|
|
60
53
|
const buf = Buffer.alloc(4);
|
|
61
|
-
|
|
62
54
|
// ieee754.write(buffer, value, buffer offset, little-endian, mantissa length, bytes);
|
|
63
55
|
ieee754.write(buf, float, 0, true, 23, 4);
|
|
64
|
-
|
|
65
56
|
buf.forEach((byte) => {
|
|
66
57
|
this._buffer.push('0x' + byte.toString(16));
|
|
67
58
|
});
|
|
68
59
|
}
|
|
69
|
-
|
|
70
|
-
public addByte(byte) {
|
|
60
|
+
addByte(byte) {
|
|
71
61
|
this._buffer.push('0x' + byte.toString(16));
|
|
72
62
|
}
|
|
73
|
-
|
|
74
|
-
public addNullTerminator() {
|
|
63
|
+
addNullTerminator() {
|
|
75
64
|
this._buffer.push('0x0');
|
|
76
65
|
}
|
|
77
|
-
|
|
78
|
-
public getBuffer(): Buffer {
|
|
66
|
+
getBuffer() {
|
|
79
67
|
return Buffer.from(this._buffer);
|
|
80
68
|
}
|
|
81
69
|
}
|
|
70
|
+
exports.HexBuffer = HexBuffer;
|
|
71
|
+
//# sourceMappingURL=HexBuffer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HexBuffer.js","sourceRoot":"","sources":["../../src/HexBuffer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
export declare class W3Buffer {
|
|
3
|
+
private _offset;
|
|
4
|
+
private _buffer;
|
|
5
|
+
constructor(buffer: Buffer);
|
|
6
|
+
readInt(): number;
|
|
7
|
+
readShort(): number;
|
|
8
|
+
readFloat(): number;
|
|
9
|
+
readString(): string;
|
|
10
|
+
readChars(len?: number): string;
|
|
11
|
+
readByte(): number;
|
|
12
|
+
isExhausted(): boolean;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=W3Buffer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"W3Buffer.d.ts","sourceRoot":"","sources":["../../src/W3Buffer.ts"],"names":[],"mappings":";AAEA,qBAAa,QAAQ;IAEjB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,MAAM;IAInB,OAAO,IAAI,MAAM;IAMjB,SAAS,IAAI,MAAM;IAMnB,SAAS,IAAI,MAAM;IAMnB,UAAU,IAAI,MAAM;IAcpB,SAAS,CAAC,GAAG,GAAE,MAAU,GAAG,MAAM;IAelC,QAAQ;IAOR,WAAW,IAAI,OAAO;CAGhC"}
|
|
@@ -1,69 +1,63 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.W3Buffer = void 0;
|
|
7
|
+
const round_to_1 = __importDefault(require("round-to"));
|
|
8
|
+
class W3Buffer {
|
|
9
|
+
constructor(buffer) {
|
|
10
|
+
this._offset = 0;
|
|
9
11
|
this._buffer = buffer;
|
|
10
12
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const int: number = this._buffer.readInt32LE(this._offset);
|
|
13
|
+
readInt() {
|
|
14
|
+
const int = this._buffer.readInt32LE(this._offset);
|
|
14
15
|
this._offset += 4;
|
|
15
16
|
return int;
|
|
16
17
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const int: number = this._buffer.readInt16LE(this._offset);
|
|
18
|
+
readShort() {
|
|
19
|
+
const int = this._buffer.readInt16LE(this._offset);
|
|
20
20
|
this._offset += 2;
|
|
21
21
|
return int;
|
|
22
22
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const float: number = this._buffer.readFloatLE(this._offset);
|
|
23
|
+
readFloat() {
|
|
24
|
+
const float = this._buffer.readFloatLE(this._offset);
|
|
26
25
|
this._offset += 4;
|
|
27
|
-
return
|
|
26
|
+
return round_to_1.default(float, 3);
|
|
28
27
|
}
|
|
29
|
-
|
|
30
|
-
public readString(): string {
|
|
28
|
+
readString() {
|
|
31
29
|
const string = [];
|
|
32
|
-
|
|
33
30
|
while (this._buffer[this._offset] !== 0x00) {
|
|
34
31
|
string.push(this._buffer[this._offset]);
|
|
35
32
|
this._offset += 1;
|
|
36
33
|
}
|
|
37
34
|
this._offset += 1; // consume the \0 end-of-string delimiter
|
|
38
|
-
|
|
39
35
|
return string.map((ch) => {
|
|
40
36
|
return String.fromCharCode(ch);
|
|
41
37
|
}).join('');
|
|
42
38
|
}
|
|
43
|
-
|
|
44
|
-
public readChars(len: number = 1): string {
|
|
39
|
+
readChars(len = 1) {
|
|
45
40
|
const string = [];
|
|
46
41
|
const numCharsToRead = len || 1;
|
|
47
|
-
|
|
48
42
|
for (let i = 0; i < numCharsToRead; i++) {
|
|
49
43
|
string.push(this._buffer[this._offset]);
|
|
50
44
|
this._offset += 1;
|
|
51
45
|
}
|
|
52
|
-
|
|
53
46
|
return string.map((ch) => {
|
|
54
|
-
if (ch === 0x0)
|
|
47
|
+
if (ch === 0x0)
|
|
48
|
+
return '0';
|
|
55
49
|
return String.fromCharCode(ch);
|
|
56
50
|
}).join('');
|
|
57
51
|
}
|
|
58
|
-
|
|
59
|
-
public readByte() {
|
|
52
|
+
readByte() {
|
|
60
53
|
// TODO what kind of binary? Do we use a BigInt or a node provided type from Buffer?
|
|
61
54
|
const byte = this._buffer[this._offset];
|
|
62
55
|
this._offset += 1;
|
|
63
56
|
return byte;
|
|
64
57
|
}
|
|
65
|
-
|
|
66
|
-
public isExhausted(): boolean {
|
|
58
|
+
isExhausted() {
|
|
67
59
|
return this._offset === this._buffer.length;
|
|
68
60
|
}
|
|
69
61
|
}
|
|
62
|
+
exports.W3Buffer = W3Buffer;
|
|
63
|
+
//# sourceMappingURL=W3Buffer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"W3Buffer.js","sourceRoot":"","sources":["../../src/W3Buffer.ts"],"names":[],"mappings":";;;;;;AAAA,wDAA+B;AAE/B,MAAa,QAAQ;IAKjB,YAAY,MAAc;QAHlB,YAAO,GAAG,CAAC,CAAC;QAIhB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC;IAEM,OAAO;QACV,MAAM,GAAG,GAAW,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClB,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,SAAS;QACZ,MAAM,GAAG,GAAW,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClB,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,SAAS;QACZ,MAAM,KAAK,GAAW,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClB,OAAO,kBAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7B,CAAC;IAEM,UAAU;QACb,MAAM,MAAM,GAAG,EAAE,CAAC;QAElB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YACxC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;SACrB;QACD,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,yCAAyC;QAE5D,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACrB,OAAO,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IAEM,SAAS,CAAC,MAAc,CAAC;QAC5B,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,cAAc,GAAG,GAAG,IAAI,CAAC,CAAC;QAEhC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;SACrB;QAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACrB,IAAI,EAAE,KAAK,GAAG;gBAAE,OAAO,GAAG,CAAC;YAC3B,OAAO,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IAEM,QAAQ;QACX,oFAAoF;QACpF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;QAClB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAChD,CAAC;CACJ;AAlED,4BAkEC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { CamerasTranslator, DoodadsTranslator, ImportsTranslator, InfoTranslator, ObjectsTranslator, RegionsTranslator, SoundsTranslator, StringsTranslator, TerrainTranslator, UnitsTranslator } from './translators';
|
|
2
|
+
export { CamerasTranslator, DoodadsTranslator, ImportsTranslator, InfoTranslator, ObjectsTranslator, RegionsTranslator, SoundsTranslator, StringsTranslator, TerrainTranslator, UnitsTranslator };
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EAClB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACH,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EAClB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.UnitsTranslator = exports.TerrainTranslator = exports.StringsTranslator = exports.SoundsTranslator = exports.RegionsTranslator = exports.ObjectsTranslator = exports.InfoTranslator = exports.ImportsTranslator = exports.DoodadsTranslator = exports.CamerasTranslator = void 0;
|
|
4
|
-
const translators_1 = require("./
|
|
4
|
+
const translators_1 = require("./translators");
|
|
5
5
|
Object.defineProperty(exports, "CamerasTranslator", { enumerable: true, get: function () { return translators_1.CamerasTranslator; } });
|
|
6
6
|
Object.defineProperty(exports, "DoodadsTranslator", { enumerable: true, get: function () { return translators_1.DoodadsTranslator; } });
|
|
7
7
|
Object.defineProperty(exports, "ImportsTranslator", { enumerable: true, get: function () { return translators_1.ImportsTranslator; } });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,+CAWuB;AAGnB,kGAbA,+BAAiB,OAaA;AACjB,kGAbA,+BAAiB,OAaA;AACjB,kGAbA,+BAAiB,OAaA;AACjB,+FAbA,4BAAc,OAaA;AACd,kGAbA,+BAAiB,OAaA;AACjB,kGAbA,+BAAiB,OAaA;AACjB,iGAbA,8BAAgB,OAaA;AAChB,kGAbA,+BAAiB,OAaA;AACjB,kGAbA,+BAAiB,OAaA;AACjB,gGAbA,6BAAe,OAaA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { WarResult, JsonResult, angle } from '../CommonInterfaces';
|
|
3
|
+
interface Camera {
|
|
4
|
+
target: CameraTarget;
|
|
5
|
+
offsetZ: number;
|
|
6
|
+
rotation: angle;
|
|
7
|
+
aoa: angle;
|
|
8
|
+
distance: number;
|
|
9
|
+
roll: number;
|
|
10
|
+
fov: angle;
|
|
11
|
+
farClipping: number;
|
|
12
|
+
name: string;
|
|
13
|
+
}
|
|
14
|
+
interface CameraTarget {
|
|
15
|
+
x: number;
|
|
16
|
+
y: number;
|
|
17
|
+
}
|
|
18
|
+
export declare abstract class CamerasTranslator {
|
|
19
|
+
static jsonToWar(cameras: Camera[]): WarResult;
|
|
20
|
+
static warToJson(buffer: Buffer): JsonResult<Camera[]>;
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=CamerasTranslator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CamerasTranslator.d.ts","sourceRoot":"","sources":["../../../src/translators/CamerasTranslator.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAElE,UAAU,MAAM;IACZ,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE,KAAK,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,KAAK,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,YAAY;IAClB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACb;AAED,8BAAsB,iBAAiB;WAErB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS;WAkCvC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;CA2ChE"}
|
|
@@ -1,35 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
aoa: angle; // angle of attack
|
|
10
|
-
distance: number;
|
|
11
|
-
roll: number;
|
|
12
|
-
fov: angle; // field of view
|
|
13
|
-
farClipping: number;
|
|
14
|
-
name: string;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
interface CameraTarget {
|
|
18
|
-
x: number;
|
|
19
|
-
y: number;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export abstract class CamerasTranslator {
|
|
23
|
-
|
|
24
|
-
public static jsonToWar(cameras: Camera[]): WarResult {
|
|
25
|
-
const outBufferToWar = new HexBuffer();
|
|
26
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CamerasTranslator = void 0;
|
|
4
|
+
const HexBuffer_1 = require("../HexBuffer");
|
|
5
|
+
const W3Buffer_1 = require("../W3Buffer");
|
|
6
|
+
class CamerasTranslator {
|
|
7
|
+
static jsonToWar(cameras) {
|
|
8
|
+
const outBufferToWar = new HexBuffer_1.HexBuffer();
|
|
27
9
|
/*
|
|
28
10
|
* Header
|
|
29
11
|
*/
|
|
30
12
|
outBufferToWar.addInt(0); // file version
|
|
31
13
|
outBufferToWar.addInt(cameras.length); // number of cameras
|
|
32
|
-
|
|
33
14
|
/*
|
|
34
15
|
* Body
|
|
35
16
|
*/
|
|
@@ -44,26 +25,21 @@ export abstract class CamerasTranslator {
|
|
|
44
25
|
outBufferToWar.addFloat(camera.fov);
|
|
45
26
|
outBufferToWar.addFloat(camera.farClipping);
|
|
46
27
|
outBufferToWar.addFloat(100); // (?) unknown - usually set to 100
|
|
47
|
-
|
|
48
28
|
// Camera name - must be null-terminated
|
|
49
29
|
outBufferToWar.addString(camera.name);
|
|
50
30
|
});
|
|
51
|
-
|
|
52
31
|
return {
|
|
53
32
|
errors: [],
|
|
54
33
|
buffer: outBufferToWar.getBuffer()
|
|
55
34
|
};
|
|
56
35
|
}
|
|
57
|
-
|
|
58
|
-
public static warToJson(buffer: Buffer): JsonResult<Camera[]> {
|
|
36
|
+
static warToJson(buffer) {
|
|
59
37
|
const result = [];
|
|
60
|
-
const outBufferToJSON = new W3Buffer(buffer);
|
|
61
|
-
|
|
38
|
+
const outBufferToJSON = new W3Buffer_1.W3Buffer(buffer);
|
|
62
39
|
const fileVersion = outBufferToJSON.readInt(), // File version
|
|
63
|
-
|
|
64
|
-
|
|
40
|
+
numCameras = outBufferToJSON.readInt(); // # of cameras
|
|
65
41
|
for (let i = 0; i < numCameras; i++) {
|
|
66
|
-
const camera
|
|
42
|
+
const camera = {
|
|
67
43
|
target: {
|
|
68
44
|
x: 0,
|
|
69
45
|
y: 0
|
|
@@ -77,7 +53,6 @@ export abstract class CamerasTranslator {
|
|
|
77
53
|
farClipping: 0,
|
|
78
54
|
name: ''
|
|
79
55
|
};
|
|
80
|
-
|
|
81
56
|
camera.target.x = outBufferToJSON.readFloat();
|
|
82
57
|
camera.target.y = outBufferToJSON.readFloat();
|
|
83
58
|
camera.offsetZ = outBufferToJSON.readFloat();
|
|
@@ -89,13 +64,13 @@ export abstract class CamerasTranslator {
|
|
|
89
64
|
camera.farClipping = outBufferToJSON.readFloat();
|
|
90
65
|
outBufferToJSON.readFloat(); // consume this unknown float field
|
|
91
66
|
camera.name = outBufferToJSON.readString();
|
|
92
|
-
|
|
93
67
|
result.push(camera);
|
|
94
68
|
}
|
|
95
|
-
|
|
96
69
|
return {
|
|
97
70
|
errors: [],
|
|
98
71
|
json: result
|
|
99
72
|
};
|
|
100
73
|
}
|
|
101
74
|
}
|
|
75
|
+
exports.CamerasTranslator = CamerasTranslator;
|
|
76
|
+
//# sourceMappingURL=CamerasTranslator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CamerasTranslator.js","sourceRoot":"","sources":["../../../src/translators/CamerasTranslator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { WarResult, JsonResult, angle } from '../CommonInterfaces';
|
|
3
|
+
interface Doodad {
|
|
4
|
+
type: string;
|
|
5
|
+
variation: number;
|
|
6
|
+
position: number[];
|
|
7
|
+
angle: angle;
|
|
8
|
+
scale: number[];
|
|
9
|
+
skinId: string;
|
|
10
|
+
flags: DoodadFlag;
|
|
11
|
+
life: number;
|
|
12
|
+
id: number;
|
|
13
|
+
}
|
|
14
|
+
interface DoodadFlag {
|
|
15
|
+
visible: any;
|
|
16
|
+
solid: any;
|
|
17
|
+
}
|
|
18
|
+
export declare abstract class DoodadsTranslator {
|
|
19
|
+
static jsonToWar(doodadsJson: Doodad[]): WarResult;
|
|
20
|
+
static warToJson(buffer: Buffer): JsonResult<Doodad[]>;
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=DoodadsTranslator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DoodadsTranslator.d.ts","sourceRoot":"","sources":["../../../src/translators/DoodadsTranslator.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAElE,UAAU,MAAM;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,UAAU,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACd;AAED,UAAU,UAAU;IAChB,OAAO,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,GAAG,CAAC;CACd;AAWD,8BAAsB,iBAAiB;WAErB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS;WAkE3C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;CA8EhE"}
|