mirror of
https://github.com/vcmi/vcmi.git
synced 2024-12-24 22:14:36 +02:00
Created wall_pos.json from wall_pos.txt.
This commit is contained in:
parent
71b1eef6b6
commit
e5349c58cd
@ -367,35 +367,18 @@ void Graphics::loadHeroPortraits()
|
||||
|
||||
void Graphics::loadWallPositions()
|
||||
{
|
||||
std::ifstream inp;
|
||||
inp.open(DATA_DIR "/config/wall_pos.txt", std::ios_base::in|std::ios_base::binary);
|
||||
if(!inp.is_open())
|
||||
{
|
||||
tlog1<<"missing file: config/wall_pos.txt"<<std::endl;
|
||||
}
|
||||
else
|
||||
{
|
||||
const int MAX_BUF = 2000;
|
||||
char buf[MAX_BUF+1];
|
||||
const JsonNode config(DATA_DIR "/config/wall_pos.json");
|
||||
|
||||
// skip the first three lines because they are comment lines
|
||||
inp.getline(buf, MAX_BUF);
|
||||
inp.getline(buf, MAX_BUF);
|
||||
inp.getline(buf, MAX_BUF);
|
||||
std::string dump;
|
||||
for(int g=0; g<ARRAY_COUNT(wallPositions); ++g)
|
||||
{
|
||||
inp >> dump;
|
||||
for(int b = 0; b < 21; ++b)
|
||||
{
|
||||
Point pt;
|
||||
inp >> pt.x;
|
||||
inp >> pt.y;
|
||||
wallPositions[g].push_back(pt);
|
||||
}
|
||||
BOOST_FOREACH(const JsonNode &town, config["towns"].Vector()) {
|
||||
int townID = town["id"].Float();
|
||||
|
||||
BOOST_FOREACH(const JsonNode &coords, town["pos"].Vector()) {
|
||||
Point pt(coords["x"].Float(), coords["y"].Float());
|
||||
wallPositions[townID].push_back(pt);
|
||||
}
|
||||
|
||||
assert(wallPositions[townID].size() == 21);
|
||||
}
|
||||
inp.close();
|
||||
}
|
||||
|
||||
void Graphics::loadHeroAnims()
|
||||
|
280
config/wall_pos.json
Normal file
280
config/wall_pos.json
Normal file
@ -0,0 +1,280 @@
|
||||
{
|
||||
|
||||
// Description of positions of wall parts' positions.
|
||||
// pos is a set of coordinates (x, y):
|
||||
// 1. background wall
|
||||
// 2. keep
|
||||
// 3. bottom tower
|
||||
// 4. bottom wall
|
||||
// 5. wall below gate
|
||||
// 6. wall over gate
|
||||
// 7. upper wall
|
||||
// 8. upper tower
|
||||
// 9. gate
|
||||
// 10. gate arch
|
||||
// 11. bottom static wall
|
||||
// 12. upper static wall
|
||||
// 13. moat
|
||||
// 14. mlip
|
||||
// 15. keep turret cover
|
||||
// 16. lower turret cover
|
||||
// 17. upper turret cover
|
||||
// 18. keep creature
|
||||
// 19. lower turret creature
|
||||
// 20. upper turret creature
|
||||
// 21. y=turret height(from top of def image); x is not used
|
||||
|
||||
"towns": [
|
||||
{
|
||||
"id": 0,
|
||||
"name": "Castle",
|
||||
"pos": [
|
||||
{ "x": 600, "y": 49 },
|
||||
{ "x": 720, "y": 158 },
|
||||
{ "x": 602, "y": 500 },
|
||||
{ "x": 528, "y": 350 },
|
||||
{ "x": 469, "y": 291 },
|
||||
{ "x": 470, "y": 127 },
|
||||
{ "x": 524, "y": 32 },
|
||||
{ "x": 569, "y": 35 },
|
||||
{ "x": 399, "y": 274 },
|
||||
{ "x": 477, "y": 238 },
|
||||
{ "x": 512, "y": 347 },
|
||||
{ "x": 489, "y": 79 },
|
||||
{ "x": 410, "y": 90 },
|
||||
{ "x": 403, "y": 80 },
|
||||
{ "x": 720, "y": 158 },
|
||||
{ "x": 602, "y": 500 },
|
||||
{ "x": 557, "y": 24 },
|
||||
{ "x": 526, "y": -29 },
|
||||
{ "x": 394, "y": 299 },
|
||||
{ "x": 342, "y": -187 },
|
||||
{ "x": 0, "y": 231 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 1,
|
||||
"name": "Rampart",
|
||||
"pos": [
|
||||
{ "x": 608, "y": 46 },
|
||||
{ "x": 724, "y": 189 },
|
||||
{ "x": 594, "y": 511 },
|
||||
{ "x": 549, "y": 451 },
|
||||
{ "x": 469, "y": 309 },
|
||||
{ "x": 469, "y": 186 },
|
||||
{ "x": 530, "y": 57 },
|
||||
{ "x": 565, "y": 31 },
|
||||
{ "x": 403, "y": 271 },
|
||||
{ "x": 460, "y": 220 },
|
||||
{ "x": 510, "y": 364 },
|
||||
{ "x": 492, "y": 103 },
|
||||
{ "x": 410, "y": 77 },
|
||||
{ "x": 410, "y": 97 },
|
||||
{ "x": 724, "y": 189 },
|
||||
{ "x": 594, "y": 511 },
|
||||
{ "x": 566, "y": 31 },
|
||||
{ "x": 532, "y": -27 },
|
||||
{ "x": 371, "y": 296 },
|
||||
{ "x": 341, "y": -186 },
|
||||
{ "x": 0, "y": 232 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 2,
|
||||
"name": "Tower",
|
||||
"pos": [
|
||||
{ "x": 615, "y": 57 },
|
||||
{ "x": 726, "y": 148 },
|
||||
{ "x": 592, "y": 516 },
|
||||
{ "x": 547, "y": 452 },
|
||||
{ "x": 475, "y": 298 },
|
||||
{ "x": 488, "y": 190 },
|
||||
{ "x": 547, "y": 66 },
|
||||
{ "x": 580, "y": 36 },
|
||||
{ "x": 400, "y": 253 },
|
||||
{ "x": 471, "y": 187 },
|
||||
{ "x": 517, "y": 365 },
|
||||
{ "x": 514, "y": 79 },
|
||||
{ "x": 410, "y": 90 },
|
||||
{ "x": 410, "y": 80 },
|
||||
{ "x": 726, "y": 148 },
|
||||
{ "x": 592, "y": 516 },
|
||||
{ "x": 580, "y": 36 },
|
||||
{ "x": 499, "y": -16 },
|
||||
{ "x": 355, "y": 311 },
|
||||
{ "x": 346, "y": -175 },
|
||||
{ "x": 0, "y": 231 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 3,
|
||||
"name": "Inferno",
|
||||
"pos": [
|
||||
{ "x": 606, "y": 52 },
|
||||
{ "x": 730, "y": 179 },
|
||||
{ "x": 595, "y": 514 },
|
||||
{ "x": 561, "y": 451 },
|
||||
{ "x": 485, "y": 316 },
|
||||
{ "x": 480, "y": 151 },
|
||||
{ "x": 532, "y": 71 },
|
||||
{ "x": 569, "y": 27 },
|
||||
{ "x": 408, "y": 254 },
|
||||
{ "x": 477, "y": 221 },
|
||||
{ "x": 522, "y": 376 },
|
||||
{ "x": 502, "y": 92 },
|
||||
{ "x": 403, "y": 68 },
|
||||
{ "x": 403, "y": 68 },
|
||||
{ "x": 730, "y": 179 },
|
||||
{ "x": 595, "y": 514 },
|
||||
{ "x": 569, "y": 27 },
|
||||
{ "x": 511, "y": -37 },
|
||||
{ "x": 369, "y": 298 },
|
||||
{ "x": 341, "y": -187 },
|
||||
{ "x": 0, "y": 231 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 4,
|
||||
"name": "Necropolis",
|
||||
"pos": [
|
||||
{ "x": 604, "y": 58 },
|
||||
{ "x": 730, "y": 164 },
|
||||
{ "x": 592, "y": 512 },
|
||||
{ "x": 536, "y": 445 },
|
||||
{ "x": 478, "y": 323 },
|
||||
{ "x": 487, "y": 164 },
|
||||
{ "x": 543, "y": 66 },
|
||||
{ "x": 561, "y": 26 },
|
||||
{ "x": 401, "y": 262 },
|
||||
{ "x": 474, "y": 240 },
|
||||
{ "x": 509, "y": 372 },
|
||||
{ "x": 504, "y": 97 },
|
||||
{ "x": 406, "y": 77 },
|
||||
{ "x": -1, "y": -1 },
|
||||
{ "x": 730, "y": 164 },
|
||||
{ "x": 592, "y": 512 },
|
||||
{ "x": 561, "y": 26 },
|
||||
{ "x": 501, "y": 98 },
|
||||
{ "x": 371, "y": 303 },
|
||||
{ "x": 339, "y": -177 },
|
||||
{ "x": 0, "y": 231 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 5,
|
||||
"name": "Dungeon",
|
||||
"pos": [
|
||||
{ "x": 608, "y": 50 },
|
||||
{ "x": 732, "y": 162 },
|
||||
{ "x": 560, "y": 495 },
|
||||
{ "x": 559, "y": 448 },
|
||||
{ "x": 471, "y": 296 },
|
||||
{ "x": 477, "y": 180 },
|
||||
{ "x": 523, "y": 56 },
|
||||
{ "x": 565, "y": 15 },
|
||||
{ "x": 395, "y": 260 },
|
||||
{ "x": 471, "y": 164 },
|
||||
{ "x": 522, "y": 305 },
|
||||
{ "x": 494, "y": 53 },
|
||||
{ "x": 283, "y": 94 },
|
||||
{ "x": 283, "y": 94 },
|
||||
{ "x": 732, "y": 162 },
|
||||
{ "x": 600, "y": 495 },
|
||||
{ "x": 565, "y": 15 },
|
||||
{ "x": 570, "y": -50 },
|
||||
{ "x": 410, "y": 293 },
|
||||
{ "x": 381, "y": -187 },
|
||||
{ "x": 0, "y": 230 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 6,
|
||||
"name": "Stronghold",
|
||||
"pos": [
|
||||
{ "x": 617, "y": 62 },
|
||||
{ "x": 731, "y": 168 },
|
||||
{ "x": 586, "y": 508 },
|
||||
{ "x": 553, "y": 440 },
|
||||
{ "x": 483, "y": 304 },
|
||||
{ "x": 476, "y": 189 },
|
||||
{ "x": 534, "y": 69 },
|
||||
{ "x": 568, "y": 30 },
|
||||
{ "x": 407, "y": 266 },
|
||||
{ "x": 478, "y": 235 },
|
||||
{ "x": 511, "y": 380 },
|
||||
{ "x": 499, "y": 107 },
|
||||
{ "x": 410, "y": 90 },
|
||||
{ "x": 410, "y": 91 },
|
||||
{ "x": 731, "y": 168 },
|
||||
{ "x": 586, "y": 508 },
|
||||
{ "x": 568, "y": 30 },
|
||||
{ "x": 531, "y": -45 },
|
||||
{ "x": 361, "y": 290 },
|
||||
{ "x": 342, "y": -187 },
|
||||
{ "x": 0, "y": 231 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 7,
|
||||
"name": "Fortress",
|
||||
"pos": [
|
||||
{ "x": 599, "y": 62 },
|
||||
{ "x": 721, "y": 178 },
|
||||
{ "x": 599, "y": 505 },
|
||||
{ "x": 546, "y": 441 },
|
||||
{ "x": 486, "y": 306 },
|
||||
{ "x": 498, "y": 184 },
|
||||
{ "x": 526, "y": 80 },
|
||||
{ "x": 548, "y": 27 },
|
||||
{ "x": 392, "y": 253 },
|
||||
{ "x": 483, "y": 236 },
|
||||
{ "x": 522, "y": 382 },
|
||||
{ "x": 508, "y": 130 },
|
||||
{ "x": 383, "y": 95 },
|
||||
{ "x": 376, "y": 70 },
|
||||
{ "x": 721, "y": 178 },
|
||||
{ "x": 599, "y": 505 },
|
||||
{ "x": 548, "y": 27 },
|
||||
{ "x": 541, "y": -37 },
|
||||
{ "x": 372, "y": 308 },
|
||||
{ "x": 326, "y": -182 },
|
||||
{ "x": 0, "y": 231 }
|
||||
]
|
||||
},
|
||||
|
||||
{
|
||||
"id": 8,
|
||||
"name": "Conflux",
|
||||
"pos": [
|
||||
{ "x": 600, "y": 50 },
|
||||
{ "x": 736, "y": 159 },
|
||||
{ "x": 608, "y": 505 },
|
||||
{ "x": 509, "y": 346 },
|
||||
{ "x": 468, "y": 299 },
|
||||
{ "x": 471, "y": 147 },
|
||||
{ "x": 521, "y": 41 },
|
||||
{ "x": 576, "y": 28 },
|
||||
{ "x": 408, "y": 254 },
|
||||
{ "x": 486, "y": 232 },
|
||||
{ "x": 509, "y": 346 },
|
||||
{ "x": 490, "y": 97 },
|
||||
{ "x": 407, "y": 80 },
|
||||
{ "x": 407, "y": 80 },
|
||||
{ "x": 736, "y": 159 },
|
||||
{ "x": 608, "y": 505 },
|
||||
{ "x": 576, "y": 28 },
|
||||
{ "x": 529, "y": -42 },
|
||||
{ "x": 382, "y": 308 },
|
||||
{ "x": 341, "y": -162 },
|
||||
{ "x": 0, "y": 229 }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -1,201 +0,0 @@
|
||||
//this file is a description of positions of wall parts' positions, following lines contain positions of: 1. background wall, 2. keep, 3. bottom tower, 4. bottom wall, 5. wall below gate,
|
||||
//6. wall over gate, 7. upper wall, 8. upper tower, 9. gate, 10. gate arch, 11. bottom static wall, 12. upper static wall, 13. moat, 14. mlip,
|
||||
//15. keep turret cover, 16. lower turret cover, 17. upper turret cover, 18. keep creature, 19. lower turret creature, 20. upper turret creature (x, y), 21. 2nd value: turret height(from top of def image), 1st value: not used
|
||||
//Castle
|
||||
600 49
|
||||
720 158
|
||||
602 500
|
||||
528 350
|
||||
469 291
|
||||
470 127
|
||||
524 32
|
||||
569 35
|
||||
399 274
|
||||
477 238
|
||||
512 347
|
||||
489 79
|
||||
410 90
|
||||
403 80
|
||||
720 158
|
||||
602 500
|
||||
557 24
|
||||
526 -29
|
||||
394 299
|
||||
342 -187
|
||||
0 231
|
||||
//Rampart
|
||||
608 46
|
||||
724 189
|
||||
594 511
|
||||
549 451
|
||||
469 309
|
||||
469 186
|
||||
530 57
|
||||
565 31
|
||||
403 271
|
||||
460 220
|
||||
510 364
|
||||
492 103
|
||||
410 77
|
||||
410 97
|
||||
724 189
|
||||
594 511
|
||||
566 31
|
||||
532 -27
|
||||
371 296
|
||||
341 -186
|
||||
0 232
|
||||
//Tower
|
||||
615 57
|
||||
726 148
|
||||
592 516
|
||||
547 452
|
||||
475 298
|
||||
488 190
|
||||
547 66
|
||||
580 36
|
||||
400 253
|
||||
471 187
|
||||
517 365
|
||||
514 79
|
||||
410 90
|
||||
410 80
|
||||
726 148
|
||||
592 516
|
||||
580 36
|
||||
499 -16
|
||||
355 311
|
||||
346 -175
|
||||
0 231
|
||||
//Inferno
|
||||
606 52
|
||||
730 179
|
||||
595 514
|
||||
561 451
|
||||
485 316
|
||||
480 151
|
||||
532 71
|
||||
569 27
|
||||
408 254
|
||||
477 221
|
||||
522 376
|
||||
502 92
|
||||
403 68
|
||||
403 68
|
||||
730 179
|
||||
595 514
|
||||
569 27
|
||||
511 -37
|
||||
369 298
|
||||
341 -187
|
||||
0 231
|
||||
//Necropolis
|
||||
604 58
|
||||
730 164
|
||||
592 512
|
||||
536 445
|
||||
478 323
|
||||
487 164
|
||||
543 66
|
||||
561 26
|
||||
401 262
|
||||
474 240
|
||||
509 372
|
||||
504 97
|
||||
406 77
|
||||
-1 -1
|
||||
730 164
|
||||
592 512
|
||||
561 26
|
||||
501 98
|
||||
371 303
|
||||
339 -177
|
||||
0 231
|
||||
//Dungeon
|
||||
608 50
|
||||
732 162
|
||||
560 495
|
||||
559 448
|
||||
471 296
|
||||
477 180
|
||||
523 56
|
||||
565 15
|
||||
395 260
|
||||
471 164
|
||||
522 305
|
||||
494 53
|
||||
283 94
|
||||
283 94
|
||||
732 162
|
||||
600 495
|
||||
565 15
|
||||
570 -50
|
||||
410 293
|
||||
381 -187
|
||||
0 230
|
||||
//Stronghold
|
||||
617 62
|
||||
731 168
|
||||
586 508
|
||||
553 440
|
||||
483 304
|
||||
476 189
|
||||
534 69
|
||||
568 30
|
||||
407 266
|
||||
478 235
|
||||
511 380
|
||||
499 107
|
||||
410 90
|
||||
410 91
|
||||
731 168
|
||||
586 508
|
||||
568 30
|
||||
531 -45
|
||||
361 290
|
||||
342 -187
|
||||
0 231
|
||||
//Fortress
|
||||
599 62
|
||||
721 178
|
||||
599 505
|
||||
546 441
|
||||
486 306
|
||||
498 184
|
||||
526 80
|
||||
548 27
|
||||
392 253
|
||||
483 236
|
||||
522 382
|
||||
508 130
|
||||
383 95
|
||||
376 70
|
||||
721 178
|
||||
599 505
|
||||
548 27
|
||||
541 -37
|
||||
372 308
|
||||
326 -182
|
||||
0 231
|
||||
//Conflux
|
||||
600 50
|
||||
736 159
|
||||
608 505
|
||||
509 346
|
||||
468 299
|
||||
471 147
|
||||
521 41
|
||||
576 28
|
||||
408 254
|
||||
486 232
|
||||
509 346
|
||||
490 97
|
||||
407 80
|
||||
407 80
|
||||
736 159
|
||||
608 505
|
||||
576 28
|
||||
529 -42
|
||||
382 308
|
||||
341 -162
|
||||
0 229
|
Loading…
Reference in New Issue
Block a user