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,221 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TerrainTranslator = void 0;
|
|
4
|
-
const HexBuffer_1 = require("../HexBuffer");
|
|
5
|
-
const W3Buffer_1 = require("../W3Buffer");
|
|
6
|
-
function splitLargeArrayIntoWidthArrays(array, width) {
|
|
7
|
-
const rows = [];
|
|
8
|
-
for (let i = 0; i < array.length / width; i++) {
|
|
9
|
-
rows.push(array.slice(i * width, (i + 1) * width));
|
|
10
|
-
}
|
|
11
|
-
return rows;
|
|
12
|
-
}
|
|
13
|
-
class TerrainTranslator {
|
|
14
|
-
static jsonToWar(terrainJson) {
|
|
15
|
-
const outBufferToWar = new HexBuffer_1.HexBuffer();
|
|
16
|
-
/*
|
|
17
|
-
* Header
|
|
18
|
-
*/
|
|
19
|
-
outBufferToWar.addChars('W3E!'); // file id
|
|
20
|
-
outBufferToWar.addInt(11); // file version
|
|
21
|
-
outBufferToWar.addChar(terrainJson.tileset); // base tileset
|
|
22
|
-
outBufferToWar.addInt(+terrainJson.customTileset); // 1 = using custom tileset, 0 = not
|
|
23
|
-
/*
|
|
24
|
-
* Tiles
|
|
25
|
-
*/
|
|
26
|
-
outBufferToWar.addInt(terrainJson.tilePalette.length);
|
|
27
|
-
terrainJson.tilePalette.forEach((tile) => {
|
|
28
|
-
outBufferToWar.addChars(tile);
|
|
29
|
-
});
|
|
30
|
-
/*
|
|
31
|
-
* Cliffs
|
|
32
|
-
*/
|
|
33
|
-
outBufferToWar.addInt(terrainJson.cliffTilePalette.length);
|
|
34
|
-
terrainJson.cliffTilePalette.forEach((cliffTile) => {
|
|
35
|
-
outBufferToWar.addChars(cliffTile);
|
|
36
|
-
});
|
|
37
|
-
/*
|
|
38
|
-
* Map size data
|
|
39
|
-
*/
|
|
40
|
-
outBufferToWar.addInt(terrainJson.map.width + 1);
|
|
41
|
-
outBufferToWar.addInt(terrainJson.map.height + 1);
|
|
42
|
-
/*
|
|
43
|
-
* Map offset
|
|
44
|
-
*/
|
|
45
|
-
outBufferToWar.addFloat(terrainJson.map.offset.x);
|
|
46
|
-
outBufferToWar.addFloat(terrainJson.map.offset.y);
|
|
47
|
-
/*
|
|
48
|
-
* Tile points
|
|
49
|
-
*/
|
|
50
|
-
// Partition the terrainJson masks into "chunks" (i.e. rows) of (width+1) length,
|
|
51
|
-
// reverse that list of rows (due to vertical flipping), and then write the rows out
|
|
52
|
-
const rows = {
|
|
53
|
-
groundHeight: splitLargeArrayIntoWidthArrays(terrainJson.groundHeight, terrainJson.map.width + 1),
|
|
54
|
-
waterHeight: splitLargeArrayIntoWidthArrays(terrainJson.waterHeight, terrainJson.map.width + 1),
|
|
55
|
-
boundaryFlag: splitLargeArrayIntoWidthArrays(terrainJson.boundaryFlag, terrainJson.map.width + 1),
|
|
56
|
-
flags: splitLargeArrayIntoWidthArrays(terrainJson.flags, terrainJson.map.width + 1),
|
|
57
|
-
groundTexture: splitLargeArrayIntoWidthArrays(terrainJson.groundTexture, terrainJson.map.width + 1),
|
|
58
|
-
groundVariation: splitLargeArrayIntoWidthArrays(terrainJson.groundVariation, terrainJson.map.width + 1),
|
|
59
|
-
cliffVariation: splitLargeArrayIntoWidthArrays(terrainJson.cliffVariation, terrainJson.map.width + 1),
|
|
60
|
-
cliffTexture: splitLargeArrayIntoWidthArrays(terrainJson.cliffTexture, terrainJson.map.width + 1),
|
|
61
|
-
layerHeight: splitLargeArrayIntoWidthArrays(terrainJson.layerHeight, terrainJson.map.width + 1)
|
|
62
|
-
};
|
|
63
|
-
rows.groundHeight.reverse();
|
|
64
|
-
rows.waterHeight.reverse();
|
|
65
|
-
rows.boundaryFlag.reverse();
|
|
66
|
-
rows.flags.reverse();
|
|
67
|
-
rows.groundTexture.reverse();
|
|
68
|
-
rows.groundVariation.reverse();
|
|
69
|
-
rows.cliffVariation.reverse();
|
|
70
|
-
rows.cliffTexture.reverse();
|
|
71
|
-
rows.layerHeight.reverse();
|
|
72
|
-
for (let i = 0; i < rows.groundHeight.length; i++) {
|
|
73
|
-
for (let j = 0; j < rows.groundHeight[i].length; j++) {
|
|
74
|
-
// these bit operations are based off documentation from https://github.com/stijnherfst/HiveWE/wiki/war3map.w3e-Terrain
|
|
75
|
-
const groundHeight = rows.groundHeight[i][j];
|
|
76
|
-
const waterHeight = rows.waterHeight[i][j];
|
|
77
|
-
const boundaryFlag = rows.boundaryFlag[i][j];
|
|
78
|
-
const flags = rows.flags[i][j];
|
|
79
|
-
const groundTexture = rows.groundTexture[i][j];
|
|
80
|
-
const groundVariation = rows.groundVariation[i][j];
|
|
81
|
-
const cliffVariation = rows.cliffVariation[i][j];
|
|
82
|
-
const cliffTexture = rows.cliffTexture[i][j];
|
|
83
|
-
const layerHeight = rows.layerHeight[i][j];
|
|
84
|
-
const hasBoundaryFlag = boundaryFlag ? 0x4000 : 0;
|
|
85
|
-
outBufferToWar.addShort(groundHeight);
|
|
86
|
-
outBufferToWar.addShort(waterHeight | hasBoundaryFlag);
|
|
87
|
-
outBufferToWar.addByte(flags | groundTexture);
|
|
88
|
-
outBufferToWar.addByte(groundVariation | cliffVariation);
|
|
89
|
-
outBufferToWar.addByte(cliffTexture | layerHeight);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return {
|
|
93
|
-
errors: [],
|
|
94
|
-
buffer: outBufferToWar.getBuffer()
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
static warToJson(buffer) {
|
|
98
|
-
// create buffer
|
|
99
|
-
const result = {
|
|
100
|
-
tileset: '',
|
|
101
|
-
customTileset: false,
|
|
102
|
-
tilePalette: [],
|
|
103
|
-
cliffTilePalette: [],
|
|
104
|
-
map: {
|
|
105
|
-
width: 1,
|
|
106
|
-
height: 1,
|
|
107
|
-
offset: {
|
|
108
|
-
x: 0,
|
|
109
|
-
y: 0
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
groundHeight: [],
|
|
113
|
-
waterHeight: [],
|
|
114
|
-
boundaryFlag: [],
|
|
115
|
-
flags: [],
|
|
116
|
-
groundTexture: [],
|
|
117
|
-
groundVariation: [],
|
|
118
|
-
cliffVariation: [],
|
|
119
|
-
cliffTexture: [],
|
|
120
|
-
layerHeight: []
|
|
121
|
-
};
|
|
122
|
-
const outBufferToJSON = new W3Buffer_1.W3Buffer(buffer);
|
|
123
|
-
/**
|
|
124
|
-
* Header
|
|
125
|
-
*/
|
|
126
|
-
const w3eHeader = outBufferToJSON.readChars(4); // W3E!
|
|
127
|
-
const version = outBufferToJSON.readInt(); // 0B 00 00 00
|
|
128
|
-
const tileset = outBufferToJSON.readChars(1); // tileset
|
|
129
|
-
const customTileset = (outBufferToJSON.readInt() === 1);
|
|
130
|
-
result.tileset = tileset;
|
|
131
|
-
result.customTileset = customTileset;
|
|
132
|
-
/**
|
|
133
|
-
* Tiles
|
|
134
|
-
*/
|
|
135
|
-
const numTilePalettes = outBufferToJSON.readInt();
|
|
136
|
-
const tilePalettes = [];
|
|
137
|
-
for (let i = 0; i < numTilePalettes; i++) {
|
|
138
|
-
tilePalettes.push(outBufferToJSON.readChars(4));
|
|
139
|
-
}
|
|
140
|
-
result.tilePalette = tilePalettes;
|
|
141
|
-
/**
|
|
142
|
-
* Cliffs
|
|
143
|
-
*/
|
|
144
|
-
const numCliffTilePalettes = outBufferToJSON.readInt();
|
|
145
|
-
const cliffPalettes = [];
|
|
146
|
-
for (let i = 0; i < numCliffTilePalettes; i++) {
|
|
147
|
-
const cliffPalette = outBufferToJSON.readChars(4);
|
|
148
|
-
cliffPalettes.push(cliffPalette);
|
|
149
|
-
}
|
|
150
|
-
result.cliffTilePalette = cliffPalettes;
|
|
151
|
-
/**
|
|
152
|
-
* map dimensions
|
|
153
|
-
*/
|
|
154
|
-
const width = outBufferToJSON.readInt() - 1;
|
|
155
|
-
const height = outBufferToJSON.readInt() - 1;
|
|
156
|
-
result.map = { width, height, offset: { x: 0, y: 0 } };
|
|
157
|
-
const offsetX = outBufferToJSON.readFloat();
|
|
158
|
-
const offsetY = outBufferToJSON.readFloat();
|
|
159
|
-
result.map.offset = { x: offsetX, y: offsetY };
|
|
160
|
-
/**
|
|
161
|
-
* map tiles
|
|
162
|
-
*/
|
|
163
|
-
const arr_groundHeight = [];
|
|
164
|
-
const arr_waterHeight = [];
|
|
165
|
-
const arr_boundaryFlag = [];
|
|
166
|
-
const arr_flags = [];
|
|
167
|
-
const arr_groundTexture = [];
|
|
168
|
-
const arr_groundVariation = [];
|
|
169
|
-
const arr_cliffVariation = [];
|
|
170
|
-
const arr_cliffTexture = [];
|
|
171
|
-
const arr_layerHeight = [];
|
|
172
|
-
while (!outBufferToJSON.isExhausted()) {
|
|
173
|
-
const groundHeight = outBufferToJSON.readShort();
|
|
174
|
-
const waterHeightAndBoundary = outBufferToJSON.readShort();
|
|
175
|
-
const flagsAndGroundTexture = outBufferToJSON.readByte();
|
|
176
|
-
const groundAndCliffVariation = outBufferToJSON.readByte();
|
|
177
|
-
const cliffTextureAndLayerHeight = outBufferToJSON.readByte();
|
|
178
|
-
// parse out different bits (based on documentation from https://github.com/stijnherfst/HiveWE/wiki/war3map.w3e-Terrain)
|
|
179
|
-
const waterHeight = waterHeightAndBoundary & 32767;
|
|
180
|
-
const boundaryFlag = (waterHeightAndBoundary & 0x4000) === 0x4000;
|
|
181
|
-
const flags = flagsAndGroundTexture & 240;
|
|
182
|
-
const groundTexture = flagsAndGroundTexture & 15;
|
|
183
|
-
const groundVariation = groundAndCliffVariation & 248;
|
|
184
|
-
const cliffVariation = groundAndCliffVariation & 7;
|
|
185
|
-
const cliffTexture = cliffTextureAndLayerHeight & 240;
|
|
186
|
-
const layerHeight = cliffTextureAndLayerHeight & 15;
|
|
187
|
-
arr_groundHeight.push(groundHeight);
|
|
188
|
-
arr_waterHeight.push(waterHeight);
|
|
189
|
-
arr_boundaryFlag.push(boundaryFlag);
|
|
190
|
-
arr_flags.push(flags);
|
|
191
|
-
arr_groundTexture.push(groundTexture);
|
|
192
|
-
arr_groundVariation.push(groundVariation);
|
|
193
|
-
arr_cliffVariation.push(cliffVariation);
|
|
194
|
-
arr_cliffTexture.push(cliffTexture);
|
|
195
|
-
arr_layerHeight.push(layerHeight);
|
|
196
|
-
}
|
|
197
|
-
function convertArrayOfArraysIntoFlatArray(arr) {
|
|
198
|
-
return arr.reduce((a, b) => {
|
|
199
|
-
return [...a, ...b];
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
|
-
// The map was read in "backwards" because wc3 maps have origin (0,0)
|
|
203
|
-
// at the bottom left instead of top left as we desire. Flip the rows
|
|
204
|
-
// vertically to fix this.
|
|
205
|
-
result.groundHeight = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_groundHeight, result.map.width + 1).reverse());
|
|
206
|
-
result.waterHeight = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_waterHeight, result.map.width + 1).reverse());
|
|
207
|
-
result.boundaryFlag = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_boundaryFlag, result.map.width + 1).reverse());
|
|
208
|
-
result.flags = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_flags, result.map.width + 1).reverse());
|
|
209
|
-
result.groundTexture = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_groundTexture, result.map.width + 1).reverse());
|
|
210
|
-
result.groundVariation = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_groundVariation, result.map.width + 1).reverse());
|
|
211
|
-
result.cliffVariation = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_cliffVariation, result.map.width + 1).reverse());
|
|
212
|
-
result.cliffTexture = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_cliffTexture, result.map.width + 1).reverse());
|
|
213
|
-
result.layerHeight = convertArrayOfArraysIntoFlatArray(splitLargeArrayIntoWidthArrays(arr_layerHeight, result.map.width + 1).reverse());
|
|
214
|
-
return {
|
|
215
|
-
errors: [],
|
|
216
|
-
json: result
|
|
217
|
-
};
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
exports.TerrainTranslator = TerrainTranslator;
|
|
221
|
-
//# sourceMappingURL=TerrainTranslator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TerrainTranslator.js","sourceRoot":"","sources":["../../../src/translators/TerrainTranslator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { WarResult, JsonResult, angle } from '../CommonInterfaces';
|
|
3
|
-
interface Unit {
|
|
4
|
-
type: string;
|
|
5
|
-
variation: number;
|
|
6
|
-
position: number[];
|
|
7
|
-
rotation: angle;
|
|
8
|
-
scale: number[];
|
|
9
|
-
hero: Hero;
|
|
10
|
-
inventory: Inventory[];
|
|
11
|
-
abilities: Abilities[];
|
|
12
|
-
player: number;
|
|
13
|
-
hitpoints: number;
|
|
14
|
-
mana: number;
|
|
15
|
-
gold: number;
|
|
16
|
-
targetAcquisition: number;
|
|
17
|
-
color: number;
|
|
18
|
-
id: number;
|
|
19
|
-
}
|
|
20
|
-
interface Hero {
|
|
21
|
-
level: number;
|
|
22
|
-
str: number;
|
|
23
|
-
agi: number;
|
|
24
|
-
int: number;
|
|
25
|
-
}
|
|
26
|
-
interface Inventory {
|
|
27
|
-
slot: number;
|
|
28
|
-
type: string;
|
|
29
|
-
}
|
|
30
|
-
interface Abilities {
|
|
31
|
-
ability: string;
|
|
32
|
-
active: boolean;
|
|
33
|
-
level: number;
|
|
34
|
-
}
|
|
35
|
-
export declare abstract class UnitsTranslator {
|
|
36
|
-
static jsonToWar(unitsJson: Unit[]): WarResult;
|
|
37
|
-
static warToJson(buffer: Buffer): JsonResult<Unit[]>;
|
|
38
|
-
}
|
|
39
|
-
export {};
|
|
40
|
-
//# sourceMappingURL=UnitsTranslator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UnitsTranslator.d.ts","sourceRoot":"","sources":["../../../src/translators/UnitsTranslator.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAElE,UAAU,IAAI;IACV,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;CACd;AAED,UAAU,IAAI;IACV,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACf;AAED,UAAU,SAAS;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,SAAS;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,8BAAsB,eAAe;WAEnB,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,SAAS;WA8FvC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;CA4H9D"}
|
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.UnitsTranslator = void 0;
|
|
4
|
-
const HexBuffer_1 = require("../HexBuffer");
|
|
5
|
-
const W3Buffer_1 = require("../W3Buffer");
|
|
6
|
-
class UnitsTranslator {
|
|
7
|
-
static jsonToWar(unitsJson) {
|
|
8
|
-
const outBufferToWar = new HexBuffer_1.HexBuffer();
|
|
9
|
-
/*
|
|
10
|
-
* Header
|
|
11
|
-
*/
|
|
12
|
-
outBufferToWar.addChars('W3do');
|
|
13
|
-
outBufferToWar.addInt(8);
|
|
14
|
-
outBufferToWar.addInt(11);
|
|
15
|
-
outBufferToWar.addInt(unitsJson.length); // number of units
|
|
16
|
-
/*
|
|
17
|
-
* Body
|
|
18
|
-
*/
|
|
19
|
-
unitsJson.forEach((unit) => {
|
|
20
|
-
outBufferToWar.addChars(unit.type); // type
|
|
21
|
-
outBufferToWar.addInt(unit.variation || 0); // variation
|
|
22
|
-
outBufferToWar.addFloat(unit.position[0]); // position x
|
|
23
|
-
outBufferToWar.addFloat(unit.position[1]); // position y
|
|
24
|
-
outBufferToWar.addFloat(unit.position[2]); // position z
|
|
25
|
-
outBufferToWar.addFloat(unit.rotation || 0); // rotation angle
|
|
26
|
-
if (!unit.scale)
|
|
27
|
-
unit.scale = [1, 1, 1];
|
|
28
|
-
outBufferToWar.addFloat(unit.scale[0] || 1); // scale x
|
|
29
|
-
outBufferToWar.addFloat(unit.scale[1] || 1); // scale y
|
|
30
|
-
outBufferToWar.addFloat(unit.scale[2] || 1); // scale z
|
|
31
|
-
// Unit flags
|
|
32
|
-
outBufferToWar.addByte(0); // UNSUPPORTED: flags
|
|
33
|
-
outBufferToWar.addInt(0); // unknown
|
|
34
|
-
outBufferToWar.addInt(unit.player); // player #
|
|
35
|
-
outBufferToWar.addByte(0); // (byte unknown - 0)
|
|
36
|
-
outBufferToWar.addByte(0); // (byte unknown - 0)
|
|
37
|
-
outBufferToWar.addInt(unit.hitpoints); // hitpoints
|
|
38
|
-
outBufferToWar.addInt(unit.mana || 0); // mana
|
|
39
|
-
// if(unit.droppedItemSets.length === 0) { // needs to be -1 if no item sets
|
|
40
|
-
outBufferToWar.addInt(-1);
|
|
41
|
-
// }
|
|
42
|
-
// else {
|
|
43
|
-
// outBuffer.addInt(unit.droppedItemSets.length); // # item sets
|
|
44
|
-
// }
|
|
45
|
-
// UNSUPPORTED: dropped items
|
|
46
|
-
outBufferToWar.addInt(0); // dropped item sets
|
|
47
|
-
// Gold amount
|
|
48
|
-
// Required if unit is a gold mine
|
|
49
|
-
// Optional (set to zero) if unit is not a gold mine
|
|
50
|
-
outBufferToWar.addInt(unit.gold);
|
|
51
|
-
// outBufferToWar.addInt(unit.type === 'ngol' ? unit.gold : 0);
|
|
52
|
-
outBufferToWar.addFloat(unit.targetAcquisition || 0); // target acquisition
|
|
53
|
-
// Unit hero attributes
|
|
54
|
-
// Can be left unspecified, but values can never be below 1
|
|
55
|
-
if (!unit.hero)
|
|
56
|
-
unit.hero = { level: 1, str: 1, agi: 1, int: 1 };
|
|
57
|
-
outBufferToWar.addInt(unit.hero.level);
|
|
58
|
-
outBufferToWar.addInt(unit.hero.str);
|
|
59
|
-
outBufferToWar.addInt(unit.hero.agi);
|
|
60
|
-
outBufferToWar.addInt(unit.hero.int);
|
|
61
|
-
// Inventory - - -
|
|
62
|
-
if (!unit.inventory)
|
|
63
|
-
unit.inventory = [];
|
|
64
|
-
outBufferToWar.addInt(unit.inventory.length); // # items in inventory
|
|
65
|
-
unit.inventory.forEach((item) => {
|
|
66
|
-
outBufferToWar.addInt(item.slot - 1); // zero-index item slot
|
|
67
|
-
outBufferToWar.addChars(item.type);
|
|
68
|
-
});
|
|
69
|
-
// Modified abilities - - -
|
|
70
|
-
if (!unit.abilities)
|
|
71
|
-
unit.abilities = [];
|
|
72
|
-
outBufferToWar.addInt(unit.abilities.length); // # modified abilities
|
|
73
|
-
unit.abilities.forEach((ability) => {
|
|
74
|
-
outBufferToWar.addChars(ability.ability); // ability string
|
|
75
|
-
outBufferToWar.addInt(+ability.active); // 0 = not active, 1 = active
|
|
76
|
-
outBufferToWar.addInt(ability.level);
|
|
77
|
-
});
|
|
78
|
-
outBufferToWar.addInt(0);
|
|
79
|
-
outBufferToWar.addInt(1);
|
|
80
|
-
outBufferToWar.addInt(unit.color || unit.player); // custom color, defaults to owning player
|
|
81
|
-
outBufferToWar.addInt(0); // outBuffer.addInt(unit.waygate); // UNSUPPORTED - waygate
|
|
82
|
-
outBufferToWar.addInt(unit.id); // id
|
|
83
|
-
});
|
|
84
|
-
return {
|
|
85
|
-
errors: [],
|
|
86
|
-
buffer: outBufferToWar.getBuffer()
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
static warToJson(buffer) {
|
|
90
|
-
const result = [];
|
|
91
|
-
const outBufferToJSON = new W3Buffer_1.W3Buffer(buffer);
|
|
92
|
-
const fileId = outBufferToJSON.readChars(4), // W3do for doodad file
|
|
93
|
-
fileVersion = outBufferToJSON.readInt(), // File version = 7
|
|
94
|
-
subVersion = outBufferToJSON.readInt(), // 0B 00 00 00
|
|
95
|
-
numUnits = outBufferToJSON.readInt(); // # of units
|
|
96
|
-
for (let i = 0; i < numUnits; i++) {
|
|
97
|
-
const unit = {
|
|
98
|
-
type: '',
|
|
99
|
-
variation: -1,
|
|
100
|
-
position: [0, 0, 0],
|
|
101
|
-
rotation: 0,
|
|
102
|
-
scale: [0, 0, 0],
|
|
103
|
-
hero: { level: 1, str: 1, agi: 1, int: 1 },
|
|
104
|
-
inventory: [],
|
|
105
|
-
abilities: [],
|
|
106
|
-
player: 0,
|
|
107
|
-
hitpoints: -1,
|
|
108
|
-
mana: -1,
|
|
109
|
-
gold: 0,
|
|
110
|
-
targetAcquisition: -1,
|
|
111
|
-
color: -1,
|
|
112
|
-
id: -1
|
|
113
|
-
};
|
|
114
|
-
unit.type = outBufferToJSON.readChars(4); // (iDNR = random item, uDNR = random unit)
|
|
115
|
-
unit.variation = outBufferToJSON.readInt();
|
|
116
|
-
unit.position = [outBufferToJSON.readFloat(), outBufferToJSON.readFloat(), outBufferToJSON.readFloat()]; // X Y Z coords
|
|
117
|
-
unit.rotation = outBufferToJSON.readFloat();
|
|
118
|
-
unit.scale = [outBufferToJSON.readFloat(), outBufferToJSON.readFloat(), outBufferToJSON.readFloat()]; // X Y Z scaling
|
|
119
|
-
// UNSUPPORTED: flags
|
|
120
|
-
const flags = outBufferToJSON.readByte();
|
|
121
|
-
outBufferToJSON.readInt(); // Unknown
|
|
122
|
-
unit.player = outBufferToJSON.readInt(); // (player1 = 0, 16=neutral passive); note: wc3 patch now has 24 max players
|
|
123
|
-
outBufferToJSON.readByte(); // unknown
|
|
124
|
-
outBufferToJSON.readByte(); // unknown
|
|
125
|
-
unit.hitpoints = outBufferToJSON.readInt(); // -1 = use default
|
|
126
|
-
unit.mana = outBufferToJSON.readInt(); // -1 = use default, 0 = unit doesn't have mana
|
|
127
|
-
const droppedItemSetPtr = outBufferToJSON.readInt(), numDroppedItemSets = outBufferToJSON.readInt();
|
|
128
|
-
for (let j = 0; j < numDroppedItemSets; j++) {
|
|
129
|
-
const numDroppableItems = outBufferToJSON.readInt();
|
|
130
|
-
for (let k = 0; k < numDroppableItems; k++) {
|
|
131
|
-
outBufferToJSON.readChars(4); // Item ID
|
|
132
|
-
outBufferToJSON.readInt(); // % chance to drop
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
unit.gold = outBufferToJSON.readInt();
|
|
136
|
-
unit.targetAcquisition = outBufferToJSON.readFloat(); // (-1 = normal, -2 = camp)
|
|
137
|
-
unit.hero = {
|
|
138
|
-
level: outBufferToJSON.readInt(),
|
|
139
|
-
str: outBufferToJSON.readInt(),
|
|
140
|
-
agi: outBufferToJSON.readInt(),
|
|
141
|
-
int: outBufferToJSON.readInt()
|
|
142
|
-
};
|
|
143
|
-
const numItemsInventory = outBufferToJSON.readInt();
|
|
144
|
-
for (let j = 0; j < numItemsInventory; j++) {
|
|
145
|
-
unit.inventory.push({
|
|
146
|
-
slot: outBufferToJSON.readInt() + 1,
|
|
147
|
-
type: outBufferToJSON.readChars(4) // Item ID
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
const numModifiedAbil = outBufferToJSON.readInt();
|
|
151
|
-
for (let j = 0; j < numModifiedAbil; j++) {
|
|
152
|
-
unit.abilities.push({
|
|
153
|
-
ability: outBufferToJSON.readChars(4),
|
|
154
|
-
active: !!outBufferToJSON.readInt(),
|
|
155
|
-
level: outBufferToJSON.readInt()
|
|
156
|
-
});
|
|
157
|
-
}
|
|
158
|
-
const randFlag = outBufferToJSON.readInt(); // random unit/item flag "r" (for uDNR units and iDNR items)
|
|
159
|
-
if (randFlag === 0) {
|
|
160
|
-
// 0 = Any neutral passive building/item, in this case we have
|
|
161
|
-
// byte[3]: level of the random unit/item,-1 = any (this is actually interpreted as a 24-bit number)
|
|
162
|
-
// byte: item class of the random item, 0 = any, 1 = permanent ... (this is 0 for units)
|
|
163
|
-
// r is also 0 for non random units/items so we have these 4 bytes anyway (even if the id wasnt uDNR or iDNR)
|
|
164
|
-
outBufferToJSON.readByte();
|
|
165
|
-
outBufferToJSON.readByte();
|
|
166
|
-
outBufferToJSON.readByte();
|
|
167
|
-
outBufferToJSON.readByte();
|
|
168
|
-
}
|
|
169
|
-
else if (randFlag === 1) {
|
|
170
|
-
// 1 = random unit from random group (defined in the w3i), in this case we have
|
|
171
|
-
// int: unit group number (which group from the global table)
|
|
172
|
-
// int: position number (which column of this group)
|
|
173
|
-
// the column should of course have the item flag set (in the w3i) if this is a random item
|
|
174
|
-
outBufferToJSON.readInt();
|
|
175
|
-
outBufferToJSON.readInt();
|
|
176
|
-
}
|
|
177
|
-
else if (randFlag === 2) {
|
|
178
|
-
// 2 = random unit from custom table, in this case we have
|
|
179
|
-
// int: number "n" of different available units
|
|
180
|
-
// then we have n times a random unit structure
|
|
181
|
-
const numDiffAvailUnits = outBufferToJSON.readInt();
|
|
182
|
-
for (let k = 0; k < numDiffAvailUnits; k++) {
|
|
183
|
-
outBufferToJSON.readChars(4); // Unit ID
|
|
184
|
-
outBufferToJSON.readInt(); // % chance
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
unit.color = outBufferToJSON.readInt();
|
|
188
|
-
outBufferToJSON.readInt(); // UNSUPPORTED: waygate (-1 = deactivated, else its the creation number of the target rect as in war3map.w3r)
|
|
189
|
-
unit.id = outBufferToJSON.readInt();
|
|
190
|
-
result.push(unit);
|
|
191
|
-
}
|
|
192
|
-
return {
|
|
193
|
-
errors: [],
|
|
194
|
-
json: result
|
|
195
|
-
};
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
exports.UnitsTranslator = UnitsTranslator;
|
|
199
|
-
//# sourceMappingURL=UnitsTranslator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"UnitsTranslator.js","sourceRoot":"","sources":["../../../src/translators/UnitsTranslator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export * from './CamerasTranslator';
|
|
2
|
-
export * from './DoodadsTranslator';
|
|
3
|
-
export * from './ImportsTranslator';
|
|
4
|
-
export * from './InfoTranslator';
|
|
5
|
-
export * from './RegionsTranslator';
|
|
6
|
-
export * from './SoundsTranslator';
|
|
7
|
-
export * from './StringsTranslator';
|
|
8
|
-
export * from './TerrainTranslator';
|
|
9
|
-
export * from './UnitsTranslator';
|
|
10
|
-
export * from './ObjectsTranslator';
|
|
11
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/translators/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
-
};
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./CamerasTranslator"), exports);
|
|
14
|
-
__exportStar(require("./DoodadsTranslator"), exports);
|
|
15
|
-
__exportStar(require("./ImportsTranslator"), exports);
|
|
16
|
-
__exportStar(require("./InfoTranslator"), exports);
|
|
17
|
-
__exportStar(require("./RegionsTranslator"), exports);
|
|
18
|
-
__exportStar(require("./SoundsTranslator"), exports);
|
|
19
|
-
__exportStar(require("./StringsTranslator"), exports);
|
|
20
|
-
__exportStar(require("./TerrainTranslator"), exports);
|
|
21
|
-
__exportStar(require("./UnitsTranslator"), exports);
|
|
22
|
-
__exportStar(require("./ObjectsTranslator"), exports);
|
|
23
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/translators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAoC;AACpC,sDAAoC;AACpC,sDAAoC;AACpC,mDAAiC;AACjC,sDAAoC;AACpC,qDAAmC;AACnC,sDAAoC;AACpC,sDAAoC;AACpC,oDAAkC;AAClC,sDAAoC"}
|
|
File without changes
|