wc3maptranslator 4.0.4 → 5.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.
- package/README.md +62 -43
- package/dist/src/AngleConverter.d.ts +4 -0
- package/dist/src/AngleConverter.d.ts.map +1 -0
- package/dist/{AngleConverter.js.map → src/AngleConverter.js.map} +1 -1
- package/dist/src/CommonInterfaces.d.ts +21 -0
- package/dist/src/CommonInterfaces.d.ts.map +1 -0
- package/dist/src/CommonInterfaces.js +20 -0
- package/dist/src/CommonInterfaces.js.map +1 -0
- package/dist/{HexBuffer.d.ts → src/HexBuffer.d.ts} +5 -2
- package/dist/src/HexBuffer.d.ts.map +1 -0
- package/dist/src/HexBuffer.js +71 -0
- package/dist/src/HexBuffer.js.map +1 -0
- package/dist/src/PlayerBitfield.d.ts +30 -0
- package/dist/src/PlayerBitfield.d.ts.map +1 -0
- package/dist/src/PlayerBitfield.js +56 -0
- package/dist/src/PlayerBitfield.js.map +1 -0
- package/dist/src/TranslatorMappings.d.ts +12 -0
- package/dist/src/TranslatorMappings.d.ts.map +1 -0
- package/dist/src/TranslatorMappings.js +47 -0
- package/dist/src/TranslatorMappings.js.map +1 -0
- package/dist/{W3Buffer.d.ts → src/W3Buffer.d.ts} +4 -1
- package/dist/src/W3Buffer.d.ts.map +1 -0
- package/dist/{W3Buffer.js → src/W3Buffer.js} +13 -9
- package/dist/src/W3Buffer.js.map +1 -0
- package/dist/src/cli.d.ts +3 -0
- package/dist/src/cli.d.ts.map +1 -0
- package/dist/src/cli.js +162 -0
- package/dist/src/cli.js.map +1 -0
- package/dist/src/index.d.ts +12 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +27 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/translators/CamerasTranslator.d.ts +28 -0
- package/dist/src/translators/CamerasTranslator.d.ts.map +1 -0
- package/dist/{translators → src/translators}/CamerasTranslator.js +25 -24
- package/dist/src/translators/CamerasTranslator.js.map +1 -0
- package/dist/src/translators/DoodadsTranslator.d.ts +36 -0
- package/dist/src/translators/DoodadsTranslator.d.ts.map +1 -0
- package/dist/src/translators/DoodadsTranslator.js +138 -0
- package/dist/src/translators/DoodadsTranslator.js.map +1 -0
- package/dist/src/translators/ImportsTranslator.d.ts +8 -0
- package/dist/src/translators/ImportsTranslator.d.ts.map +1 -0
- package/dist/src/translators/ImportsTranslator.js +36 -0
- package/dist/src/translators/ImportsTranslator.js.map +1 -0
- package/dist/src/translators/InfoTranslator.d.ts +212 -0
- package/dist/src/translators/InfoTranslator.d.ts.map +1 -0
- package/dist/src/translators/InfoTranslator.js +521 -0
- package/dist/src/translators/InfoTranslator.js.map +1 -0
- package/dist/src/translators/ObjectsTranslator.d.ts +39 -0
- package/dist/src/translators/ObjectsTranslator.d.ts.map +1 -0
- package/dist/src/translators/ObjectsTranslator.js +239 -0
- package/dist/src/translators/ObjectsTranslator.js.map +1 -0
- package/dist/{translators → src/translators}/RegionsTranslator.d.ts +5 -4
- package/dist/src/translators/RegionsTranslator.d.ts.map +1 -0
- package/dist/{translators → src/translators}/RegionsTranslator.js +18 -35
- package/dist/src/translators/RegionsTranslator.js.map +1 -0
- package/dist/src/translators/SoundsTranslator.d.ts +75 -0
- package/dist/src/translators/SoundsTranslator.d.ts.map +1 -0
- package/dist/src/translators/SoundsTranslator.js +202 -0
- package/dist/src/translators/SoundsTranslator.js.map +1 -0
- package/dist/src/translators/StringsTranslator.d.ts +13 -0
- package/dist/src/translators/StringsTranslator.d.ts.map +1 -0
- package/dist/src/translators/StringsTranslator.js +43 -0
- package/dist/src/translators/StringsTranslator.js.map +1 -0
- package/dist/src/translators/TerrainTranslator.d.ts +55 -0
- package/dist/src/translators/TerrainTranslator.d.ts.map +1 -0
- package/dist/src/translators/TerrainTranslator.js +196 -0
- package/dist/src/translators/TerrainTranslator.js.map +1 -0
- package/dist/src/translators/UnitsTranslator.d.ts +102 -0
- package/dist/src/translators/UnitsTranslator.d.ts.map +1 -0
- package/dist/src/translators/UnitsTranslator.js +295 -0
- package/dist/src/translators/UnitsTranslator.js.map +1 -0
- package/package.json +28 -25
- package/dist/AngleConverter.d.ts +0 -3
- package/dist/AngleConverter.d.ts.map +0 -1
- package/dist/CommonInterfaces.d.ts +0 -17
- package/dist/CommonInterfaces.d.ts.map +0 -1
- package/dist/CommonInterfaces.js +0 -3
- package/dist/CommonInterfaces.js.map +0 -1
- package/dist/HexBuffer.d.ts.map +0 -1
- package/dist/HexBuffer.js +0 -71
- package/dist/HexBuffer.js.map +0 -1
- package/dist/W3Buffer.d.ts.map +0 -1
- package/dist/W3Buffer.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -15
- package/dist/index.js.map +0 -1
- package/dist/translators/CamerasTranslator.d.ts +0 -23
- package/dist/translators/CamerasTranslator.d.ts.map +0 -1
- package/dist/translators/CamerasTranslator.js.map +0 -1
- package/dist/translators/DoodadsTranslator.d.ts +0 -23
- package/dist/translators/DoodadsTranslator.d.ts.map +0 -1
- package/dist/translators/DoodadsTranslator.js +0 -146
- package/dist/translators/DoodadsTranslator.js.map +0 -1
- package/dist/translators/ImportsTranslator.d.ts +0 -16
- package/dist/translators/ImportsTranslator.d.ts.map +0 -1
- package/dist/translators/ImportsTranslator.js +0 -62
- package/dist/translators/ImportsTranslator.js.map +0 -1
- package/dist/translators/InfoTranslator.d.ts +0 -124
- package/dist/translators/InfoTranslator.d.ts.map +0 -1
- package/dist/translators/InfoTranslator.js +0 -422
- package/dist/translators/InfoTranslator.js.map +0 -1
- package/dist/translators/ObjectsTranslator.d.ts +0 -23
- package/dist/translators/ObjectsTranslator.d.ts.map +0 -1
- package/dist/translators/ObjectsTranslator.js +0 -208
- package/dist/translators/ObjectsTranslator.js.map +0 -1
- package/dist/translators/RegionsTranslator.d.ts.map +0 -1
- package/dist/translators/RegionsTranslator.js.map +0 -1
- package/dist/translators/SoundsTranslator.d.ts +0 -35
- package/dist/translators/SoundsTranslator.d.ts.map +0 -1
- package/dist/translators/SoundsTranslator.js +0 -183
- package/dist/translators/SoundsTranslator.js.map +0 -1
- package/dist/translators/StringsTranslator.d.ts +0 -7
- package/dist/translators/StringsTranslator.d.ts.map +0 -1
- package/dist/translators/StringsTranslator.js +0 -44
- package/dist/translators/StringsTranslator.js.map +0 -1
- package/dist/translators/TerrainTranslator.d.ts +0 -33
- package/dist/translators/TerrainTranslator.d.ts.map +0 -1
- package/dist/translators/TerrainTranslator.js +0 -221
- package/dist/translators/TerrainTranslator.js.map +0 -1
- package/dist/translators/UnitsTranslator.d.ts +0 -40
- package/dist/translators/UnitsTranslator.d.ts.map +0 -1
- package/dist/translators/UnitsTranslator.js +0 -199
- package/dist/translators/UnitsTranslator.js.map +0 -1
- package/dist/translators/index.d.ts +0 -11
- package/dist/translators/index.d.ts.map +0 -1
- package/dist/translators/index.js +0 -23
- package/dist/translators/index.js.map +0 -1
- /package/dist/{AngleConverter.js → src/AngleConverter.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DoodadsTranslator = void 0;
|
|
4
|
-
const HexBuffer_1 = require("../HexBuffer");
|
|
5
|
-
const W3Buffer_1 = require("../W3Buffer");
|
|
6
|
-
const AngleConverter_1 = require("../AngleConverter");
|
|
7
|
-
var flag;
|
|
8
|
-
(function (flag) {
|
|
9
|
-
// 0= invisible and non-solid tree
|
|
10
|
-
// 1= visible but non-solid tree
|
|
11
|
-
// 2= normal tree (visible and solid)
|
|
12
|
-
flag[flag["undefined"] = 0] = "undefined";
|
|
13
|
-
flag[flag["visible"] = 1 || 2] = "visible";
|
|
14
|
-
flag[flag["solid"] = 3] = "solid";
|
|
15
|
-
})(flag || (flag = {}));
|
|
16
|
-
class DoodadsTranslator {
|
|
17
|
-
static jsonToWar(doodadsJson) {
|
|
18
|
-
const outBufferToWar = new HexBuffer_1.HexBuffer();
|
|
19
|
-
/*
|
|
20
|
-
* Header
|
|
21
|
-
*/
|
|
22
|
-
outBufferToWar.addChars('W3do'); // file id
|
|
23
|
-
outBufferToWar.addInt(8); // file version
|
|
24
|
-
outBufferToWar.addInt(11); // subversion 0x0B
|
|
25
|
-
outBufferToWar.addInt(doodadsJson.length); // num of trees
|
|
26
|
-
/*
|
|
27
|
-
* Body
|
|
28
|
-
*/
|
|
29
|
-
doodadsJson.forEach((tree) => {
|
|
30
|
-
outBufferToWar.addChars(tree.type);
|
|
31
|
-
outBufferToWar.addInt(tree.variation || 0); // optional - default value 0
|
|
32
|
-
outBufferToWar.addFloat(tree.position[0]);
|
|
33
|
-
outBufferToWar.addFloat(tree.position[1]);
|
|
34
|
-
outBufferToWar.addFloat(tree.position[2]);
|
|
35
|
-
// Angle
|
|
36
|
-
// Doodads format is unique because it uses radians for angles, as opposed
|
|
37
|
-
// to angles in any other file which use degrees. Hence conversion is needed.
|
|
38
|
-
// war3map: Expects angle in RADIANS
|
|
39
|
-
// JSON: Spec defines angle in DEGREES
|
|
40
|
-
outBufferToWar.addFloat(AngleConverter_1.deg2Rad(tree.angle) || 0); // optional - default value 0
|
|
41
|
-
// Scale
|
|
42
|
-
if (!tree.scale)
|
|
43
|
-
tree.scale = [1, 1, 1];
|
|
44
|
-
outBufferToWar.addFloat(tree.scale[0] || 1);
|
|
45
|
-
outBufferToWar.addFloat(tree.scale[1] || 1);
|
|
46
|
-
outBufferToWar.addFloat(tree.scale[2] || 1);
|
|
47
|
-
outBufferToWar.addChars(tree.skinId);
|
|
48
|
-
// Tree flags
|
|
49
|
-
/* | Visible | Solid | Flag value |
|
|
50
|
-
| no | no | 0 |
|
|
51
|
-
| yes | no | 1 |
|
|
52
|
-
| yes | yes | 2 | */
|
|
53
|
-
let treeFlag = 2; // default: normal tree
|
|
54
|
-
if (!tree.flags)
|
|
55
|
-
tree.flags = { visible: true, solid: true }; // defaults if no flags are specified
|
|
56
|
-
if (!tree.flags.visible && !tree.flags.solid)
|
|
57
|
-
treeFlag = 0;
|
|
58
|
-
else if (tree.flags.visible && !tree.flags.solid)
|
|
59
|
-
treeFlag = 1;
|
|
60
|
-
else if (tree.flags.visible && tree.flags.solid)
|
|
61
|
-
treeFlag = 2;
|
|
62
|
-
// Note: invisible and solid is not an option
|
|
63
|
-
outBufferToWar.addByte(treeFlag);
|
|
64
|
-
outBufferToWar.addByte(tree.life || 100);
|
|
65
|
-
outBufferToWar.addInt(0); // NOT SUPPORTED: random item table pointer: fixed to 0
|
|
66
|
-
outBufferToWar.addInt(0); // NOT SUPPORTED: number of items dropped for item table
|
|
67
|
-
outBufferToWar.addInt(tree.id);
|
|
68
|
-
});
|
|
69
|
-
/*
|
|
70
|
-
* Footer
|
|
71
|
-
*/
|
|
72
|
-
outBufferToWar.addInt(0); // special doodad format number, fixed at 0x00
|
|
73
|
-
outBufferToWar.addInt(0); // NOT SUPPORTED: number of special doodads
|
|
74
|
-
return {
|
|
75
|
-
errors: [],
|
|
76
|
-
buffer: outBufferToWar.getBuffer()
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
static warToJson(buffer) {
|
|
80
|
-
const result = [];
|
|
81
|
-
const outBufferToJSON = new W3Buffer_1.W3Buffer(buffer);
|
|
82
|
-
const fileId = outBufferToJSON.readChars(4); // W3do for doodad file
|
|
83
|
-
const fileVersion = outBufferToJSON.readInt(); // File version = 8
|
|
84
|
-
const subVersion = outBufferToJSON.readInt(); // 0B 00 00 00
|
|
85
|
-
const numDoodads = outBufferToJSON.readInt(); // # of doodads
|
|
86
|
-
for (let i = 0; i < numDoodads; i++) {
|
|
87
|
-
const doodad = {
|
|
88
|
-
type: '',
|
|
89
|
-
variation: 0,
|
|
90
|
-
position: [0, 0, 0],
|
|
91
|
-
angle: -1,
|
|
92
|
-
scale: [0, 0, 0],
|
|
93
|
-
skinId: '',
|
|
94
|
-
flags: { visible: flag.visible, solid: flag.solid },
|
|
95
|
-
life: -1,
|
|
96
|
-
id: -1
|
|
97
|
-
};
|
|
98
|
-
doodad.type = outBufferToJSON.readChars(4);
|
|
99
|
-
doodad.variation = outBufferToJSON.readInt();
|
|
100
|
-
doodad.position = [outBufferToJSON.readFloat(), outBufferToJSON.readFloat(), outBufferToJSON.readFloat()]; // X Y Z coords
|
|
101
|
-
// Angle
|
|
102
|
-
// Doodads format is unique because it uses radians for angles, as opposed
|
|
103
|
-
// to angles in any other file which use degrees. Hence conversion is needed.
|
|
104
|
-
// war3map: Expects angle in RADIANS
|
|
105
|
-
// JSON: Spec defines angle in DEGREES
|
|
106
|
-
doodad.angle = AngleConverter_1.rad2Deg(outBufferToJSON.readFloat());
|
|
107
|
-
doodad.scale = [outBufferToJSON.readFloat(), outBufferToJSON.readFloat(), outBufferToJSON.readFloat()]; // X Y Z scaling
|
|
108
|
-
doodad.skinId = outBufferToJSON.readChars(4);
|
|
109
|
-
const flags = outBufferToJSON.readByte();
|
|
110
|
-
doodad.flags = {
|
|
111
|
-
visible: flags === 1 || flags === 2,
|
|
112
|
-
solid: flags === 2
|
|
113
|
-
};
|
|
114
|
-
doodad.life = outBufferToJSON.readByte(); // as a %
|
|
115
|
-
// UNSUPPORTED: random item set drops when doodad is destroyed/killed
|
|
116
|
-
// This section just consumes the bytes from the file
|
|
117
|
-
const randomItemSetPtr = outBufferToJSON.readInt(); // points to an item set defined in the map (rather than custom one defined below)
|
|
118
|
-
const numberOfItemSets = outBufferToJSON.readInt(); // this should be 0 if randomItemSetPtr is >= 0
|
|
119
|
-
for (let j = 0; j < numberOfItemSets; j++) {
|
|
120
|
-
// Read the item set
|
|
121
|
-
const numberOfItems = outBufferToJSON.readInt();
|
|
122
|
-
for (let k = 0; k < numberOfItems; k++) {
|
|
123
|
-
outBufferToJSON.readChars(4); // Item ID
|
|
124
|
-
outBufferToJSON.readInt(); // % chance to drop
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
doodad.id = outBufferToJSON.readInt();
|
|
128
|
-
result.push(doodad);
|
|
129
|
-
}
|
|
130
|
-
// UNSUPPORTED: Special doodads
|
|
131
|
-
outBufferToJSON.readInt(); // special doodad format version set to '0'
|
|
132
|
-
const numSpecialDoodads = outBufferToJSON.readInt();
|
|
133
|
-
for (let i = 0; i < numSpecialDoodads; i++) {
|
|
134
|
-
outBufferToJSON.readChars(4); // doodad ID
|
|
135
|
-
outBufferToJSON.readInt();
|
|
136
|
-
outBufferToJSON.readInt();
|
|
137
|
-
outBufferToJSON.readInt();
|
|
138
|
-
}
|
|
139
|
-
return {
|
|
140
|
-
errors: [],
|
|
141
|
-
json: result
|
|
142
|
-
};
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
exports.DoodadsTranslator = DoodadsTranslator;
|
|
146
|
-
//# sourceMappingURL=DoodadsTranslator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DoodadsTranslator.js","sourceRoot":"","sources":["../../../src/translators/DoodadsTranslator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { WarResult, JsonResult } from '../CommonInterfaces';
|
|
3
|
-
declare enum ImportType {
|
|
4
|
-
Standard = "standard",
|
|
5
|
-
Custom = "custom"
|
|
6
|
-
}
|
|
7
|
-
interface Import {
|
|
8
|
-
path: string;
|
|
9
|
-
type: ImportType;
|
|
10
|
-
}
|
|
11
|
-
export declare class ImportsTranslator {
|
|
12
|
-
static jsonToWar(imports: Import[]): WarResult;
|
|
13
|
-
static warToJson(buffer: Buffer): JsonResult<Import[]>;
|
|
14
|
-
}
|
|
15
|
-
export {};
|
|
16
|
-
//# sourceMappingURL=ImportsTranslator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ImportsTranslator.d.ts","sourceRoot":"","sources":["../../../src/translators/ImportsTranslator.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAE3D,aAAK,UAAU;IACX,QAAQ,aAAa;IACrB,MAAM,WAAW;CACpB;AAED,UAAU,MAAM;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;CACpB;AAED,qBAAa,iBAAiB;WAEZ,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,SAAS;WA+BvC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;CA8BhE"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ImportsTranslator = void 0;
|
|
4
|
-
const HexBuffer_1 = require("../HexBuffer");
|
|
5
|
-
const W3Buffer_1 = require("../W3Buffer");
|
|
6
|
-
var ImportType;
|
|
7
|
-
(function (ImportType) {
|
|
8
|
-
ImportType["Standard"] = "standard";
|
|
9
|
-
ImportType["Custom"] = "custom";
|
|
10
|
-
})(ImportType || (ImportType = {}));
|
|
11
|
-
class ImportsTranslator {
|
|
12
|
-
static jsonToWar(imports) {
|
|
13
|
-
const outBufferToWar = new HexBuffer_1.HexBuffer();
|
|
14
|
-
/*
|
|
15
|
-
* Header
|
|
16
|
-
*/
|
|
17
|
-
outBufferToWar.addInt(1); // file version
|
|
18
|
-
outBufferToWar.addInt(imports.length); // number of imports
|
|
19
|
-
/*
|
|
20
|
-
* Body
|
|
21
|
-
*/
|
|
22
|
-
imports.forEach((importedFile) => {
|
|
23
|
-
outBufferToWar.addByte(importedFile.type === ImportType.Custom ? 13 : 5);
|
|
24
|
-
// Temporary: always start the file path with war3mapImported\ until other file support is added
|
|
25
|
-
if (!importedFile.path.startsWith('war3mapImported\\') && importedFile.type === ImportType.Custom) {
|
|
26
|
-
importedFile.path = 'war3mapImported\\' + importedFile.path;
|
|
27
|
-
}
|
|
28
|
-
outBufferToWar.addString(importedFile.path);
|
|
29
|
-
});
|
|
30
|
-
return {
|
|
31
|
-
errors: [],
|
|
32
|
-
buffer: outBufferToWar.getBuffer()
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
static warToJson(buffer) {
|
|
36
|
-
const result = [];
|
|
37
|
-
const outBufferToJSON = new W3Buffer_1.W3Buffer(buffer);
|
|
38
|
-
const fileVersion = outBufferToJSON.readInt(); // File version
|
|
39
|
-
const numImports = outBufferToJSON.readInt(); // # of imports
|
|
40
|
-
for (let i = 0; i < numImports; i++) {
|
|
41
|
-
const typeValue = outBufferToJSON.readByte();
|
|
42
|
-
const typeEnum = {
|
|
43
|
-
0: 'standard',
|
|
44
|
-
5: 'standard',
|
|
45
|
-
8: 'standard',
|
|
46
|
-
10: 'custom',
|
|
47
|
-
13: 'custom' // * preferred
|
|
48
|
-
};
|
|
49
|
-
const importedFile = {
|
|
50
|
-
type: typeEnum[typeValue],
|
|
51
|
-
path: outBufferToJSON.readString() // e.g. "war3mapImported\mysound.wav"
|
|
52
|
-
};
|
|
53
|
-
result.push(importedFile);
|
|
54
|
-
}
|
|
55
|
-
return {
|
|
56
|
-
errors: [],
|
|
57
|
-
json: result
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
exports.ImportsTranslator = ImportsTranslator;
|
|
62
|
-
//# sourceMappingURL=ImportsTranslator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ImportsTranslator.js","sourceRoot":"","sources":["../../../src/translators/ImportsTranslator.ts"],"names":[],"mappings":";;;AAAA,4CAAyC;AACzC,0CAAuC;AAGvC,IAAK,UAGJ;AAHD,WAAK,UAAU;IACX,mCAAqB,CAAA;IACrB,+BAAiB,CAAA;AACrB,CAAC,EAHI,UAAU,KAAV,UAAU,QAGd;AAOD,MAAa,iBAAiB;IAEnB,MAAM,CAAC,SAAS,CAAC,OAAiB;QACrC,MAAM,cAAc,GAAG,IAAI,qBAAS,EAAE,CAAC;QAEvC;;WAEG;QACH,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe;QACzC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB;QAE3D;;WAEG;QACH,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAC7B,cAAc,CAAC,OAAO,CAClB,YAAY,CAAC,IAAI,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CACnD,CAAC;YAEF,gGAAgG;YAChG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,YAAY,CAAC,IAAI,KAAK,UAAU,CAAC,MAAM,EAAE;gBAC/F,YAAY,CAAC,IAAI,GAAG,mBAAmB,GAAG,YAAY,CAAC,IAAI,CAAC;aAC/D;YAED,cAAc,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,OAAO;YACH,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE;SACrC,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,MAAc;QAClC,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,eAAe,GAAG,IAAI,mBAAQ,CAAC,MAAM,CAAC,CAAC;QAE7C,MAAM,WAAW,GAAG,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,eAAe;QAC9D,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,eAAe;QAE7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;YACjC,MAAM,SAAS,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG;gBACb,CAAC,EAAE,UAAU;gBACb,CAAC,EAAE,UAAU;gBACb,CAAC,EAAE,UAAU;gBACb,EAAE,EAAE,QAAQ;gBACZ,EAAE,EAAE,QAAQ,CAAE,cAAc;aAC/B,CAAC;YAEF,MAAM,YAAY,GAAG;gBACjB,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;gBACzB,IAAI,EAAE,eAAe,CAAC,UAAU,EAAE,CAAC,qCAAqC;aAC3E,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SAC7B;QAED,OAAO;YACH,MAAM,EAAE,EAAE;YACV,IAAI,EAAE,MAAM;SACf,CAAC;IACN,CAAC;CACJ;AA/DD,8CA+DC"}
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { WarResult, JsonResult } from '../CommonInterfaces';
|
|
3
|
-
interface Map {
|
|
4
|
-
name: string;
|
|
5
|
-
author: string;
|
|
6
|
-
description: string;
|
|
7
|
-
recommendedPlayers: string;
|
|
8
|
-
playableArea: PlayableMapArea;
|
|
9
|
-
flags: MapFlags;
|
|
10
|
-
mainTileType: string;
|
|
11
|
-
}
|
|
12
|
-
interface GameVersion {
|
|
13
|
-
major: number;
|
|
14
|
-
minor: number;
|
|
15
|
-
patch: number;
|
|
16
|
-
build: number;
|
|
17
|
-
}
|
|
18
|
-
interface Camera {
|
|
19
|
-
bounds: number[];
|
|
20
|
-
complements: number[];
|
|
21
|
-
}
|
|
22
|
-
interface MapFlags {
|
|
23
|
-
hideMinimapInPreview: boolean;
|
|
24
|
-
modifyAllyPriorities: boolean;
|
|
25
|
-
isMeleeMap: boolean;
|
|
26
|
-
maskedPartiallyVisible: boolean;
|
|
27
|
-
fixedPlayerSetting: boolean;
|
|
28
|
-
useCustomForces: boolean;
|
|
29
|
-
useCustomTechtree: boolean;
|
|
30
|
-
useCustomAbilities: boolean;
|
|
31
|
-
useCustomUpgrades: boolean;
|
|
32
|
-
waterWavesOnCliffShores: boolean;
|
|
33
|
-
waterWavesOnRollingShores: boolean;
|
|
34
|
-
useItemClassificationSystem: boolean;
|
|
35
|
-
enableWaterTinting: boolean;
|
|
36
|
-
useAccurateProbabilityForCalculations: boolean;
|
|
37
|
-
useCustomAbilitySkins: boolean;
|
|
38
|
-
}
|
|
39
|
-
interface LoadingScreen {
|
|
40
|
-
background: number;
|
|
41
|
-
path: string;
|
|
42
|
-
text: string;
|
|
43
|
-
title: string;
|
|
44
|
-
subtitle: string;
|
|
45
|
-
}
|
|
46
|
-
declare enum FogType {
|
|
47
|
-
Linear = 0,
|
|
48
|
-
Exponential1 = 1,
|
|
49
|
-
Exponential2 = 2
|
|
50
|
-
}
|
|
51
|
-
interface Fog {
|
|
52
|
-
type: FogType;
|
|
53
|
-
startHeight: number;
|
|
54
|
-
endHeight: number;
|
|
55
|
-
density: number;
|
|
56
|
-
color: number[];
|
|
57
|
-
}
|
|
58
|
-
interface PlayableMapArea {
|
|
59
|
-
width: number;
|
|
60
|
-
height: number;
|
|
61
|
-
}
|
|
62
|
-
interface Prologue {
|
|
63
|
-
path: string;
|
|
64
|
-
text: string;
|
|
65
|
-
title: string;
|
|
66
|
-
subtitle: string;
|
|
67
|
-
}
|
|
68
|
-
interface Info {
|
|
69
|
-
saves: number;
|
|
70
|
-
gameVersion: GameVersion;
|
|
71
|
-
editorVersion: number;
|
|
72
|
-
scriptLanguage: ScriptLanguage;
|
|
73
|
-
supportedModes: SupportedModes;
|
|
74
|
-
map: Map;
|
|
75
|
-
camera: Camera;
|
|
76
|
-
prologue: Prologue;
|
|
77
|
-
loadingScreen: LoadingScreen;
|
|
78
|
-
fog: Fog;
|
|
79
|
-
globalWeather: string;
|
|
80
|
-
customSoundEnvironment: string;
|
|
81
|
-
customLightEnv: string;
|
|
82
|
-
water: number[];
|
|
83
|
-
players: Player[];
|
|
84
|
-
forces: Force[];
|
|
85
|
-
}
|
|
86
|
-
interface PlayerStartingPosition {
|
|
87
|
-
x: number;
|
|
88
|
-
y: number;
|
|
89
|
-
fixed: boolean;
|
|
90
|
-
}
|
|
91
|
-
interface Player {
|
|
92
|
-
playerNum: number;
|
|
93
|
-
type: number;
|
|
94
|
-
race: number;
|
|
95
|
-
name: string;
|
|
96
|
-
startingPos: PlayerStartingPosition;
|
|
97
|
-
}
|
|
98
|
-
interface ForceFlags {
|
|
99
|
-
allied: boolean;
|
|
100
|
-
alliedVictory: boolean;
|
|
101
|
-
shareVision: boolean;
|
|
102
|
-
shareUnitControl: boolean;
|
|
103
|
-
shareAdvUnitControl: boolean;
|
|
104
|
-
}
|
|
105
|
-
interface Force {
|
|
106
|
-
flags: ForceFlags;
|
|
107
|
-
players: number;
|
|
108
|
-
name: string;
|
|
109
|
-
}
|
|
110
|
-
declare enum ScriptLanguage {
|
|
111
|
-
JASS = 0,
|
|
112
|
-
Lua = 1
|
|
113
|
-
}
|
|
114
|
-
declare enum SupportedModes {
|
|
115
|
-
SD = 1,
|
|
116
|
-
HD = 2,
|
|
117
|
-
Both = 3
|
|
118
|
-
}
|
|
119
|
-
export declare abstract class InfoTranslator {
|
|
120
|
-
static jsonToWar(infoJson: Info): WarResult;
|
|
121
|
-
static warToJson(buffer: Buffer): JsonResult<Info>;
|
|
122
|
-
}
|
|
123
|
-
export {};
|
|
124
|
-
//# sourceMappingURL=InfoTranslator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InfoTranslator.d.ts","sourceRoot":"","sources":["../../../src/translators/InfoTranslator.ts"],"names":[],"mappings":"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"}
|