fix error checking during tile processing

noticed following a patch last night
This commit is contained in:
nhmall
2021-10-28 16:08:59 -04:00
parent 49b2ea1b89
commit b6250b412d
4 changed files with 35 additions and 26 deletions

View File

@@ -10439,7 +10439,7 @@ Z = (195, 195, 195)
................
................
}
# tile 548 (elf-leader,male)
# tile 548 (elf-noble,male)
{
................
................
@@ -10458,7 +10458,7 @@ Z = (195, 195, 195)
................
................
}
# tile 549 (elf-leader,female)
# tile 549 (elf-noble,female)
{
................
................
@@ -10705,7 +10705,7 @@ Z = (195, 195, 195)
....LELLLLELAA..
................
}
# tile 562 (aligned priest,male)
# tile 562 (aligned cleric,male)
{
................
INI.............
@@ -10724,7 +10724,7 @@ Z = (195, 195, 195)
.JACCCJJCCCAA...
................
}
# tile 563 (aligned priest,female)
# tile 563 (aligned cleric,female)
{
................
INI.............
@@ -10743,7 +10743,7 @@ Z = (195, 195, 195)
.JACCCJJCCCAA...
................
}
# tile 564 (high priest,male)
# tile 564 (high cleric,male)
{
.INI............
IIIII.KCCK......
@@ -10762,7 +10762,7 @@ Z = (195, 195, 195)
..HACCCJJCCCAA..
................
}
# tile 565 (high priest,female)
# tile 565 (high cleric,female)
{
.INI............
IIIII.KCCK......

View File

@@ -46,7 +46,7 @@ Z = (195, 195, 195)
PPAPPPPPPJPPPPPP
PPPPPPPPPPPPPPPP
}
# tile 1 (vertical wall)
# tile 1 (main walls vertical)
{
ANNOA1PPPPP1NNOA
AOOOA1P1PP11OOOA
@@ -65,7 +65,7 @@ Z = (195, 195, 195)
A111A11PPPP1111A
AOPPA11PPPP1OP1A
}
# tile 2 (horizontal wall)
# tile 2 (main walls horizontal)
{
AAANOOAAAAANOOAA
OOONOOA1OOONOOA1
@@ -84,7 +84,7 @@ Z = (195, 195, 195)
1111111111111111
AAAAAAAAAAAAAAAA
}
# tile 3 (top left corner wall)
# tile 3 (main walls tlcorn)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -103,7 +103,7 @@ Z = (195, 195, 195)
A111A11PPPP1111A
AOPPA11PPPP1OP1A
}
# tile 4 (top right corner wall)
# tile 4 (main walls trcorn)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -122,7 +122,7 @@ Z = (195, 195, 195)
A111A11PPPP1111A
AOPPA11PPPP1OP1A
}
# tile 5 (bottom left corner wall)
# tile 5 (main walls blcorn)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -141,7 +141,7 @@ Z = (195, 195, 195)
1111111111111111
AAAAAAAAAAAAAAAA
}
# tile 6 (bottom right corner wall)
# tile 6 (main walls brcorn)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -160,7 +160,7 @@ Z = (195, 195, 195)
1111111111111111
AAAAAAAAAAAAAAAA
}
# tile 7 (cross wall)
# tile 7 (main walls cross wall)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -179,7 +179,7 @@ Z = (195, 195, 195)
A111A11PPPP1111A
AOPPA11PPPP1OP1A
}
# tile 8 (tuwall)
# tile 8 (main walls tuwall)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -198,7 +198,7 @@ Z = (195, 195, 195)
1111111111111111
AAAAAAAAAAAAAAAA
}
# tile 9 (tdwall)
# tile 9 (main walls tdwall)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -217,7 +217,7 @@ Z = (195, 195, 195)
A111A11PPPP1111A
AOPPA11PPPP1OP1A
}
# tile 10 (tlwall)
# tile 10 (main walls tlwall)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111
@@ -236,7 +236,7 @@ Z = (195, 195, 195)
A111A11PPPP1111A
AOPPA11PPPP1OP1A
}
# tile 11 (trwall)
# tile 11 (main walls trwall)
{
AAANNNNOOOOOOAAA
NNNNAA11PPPPO111

View File

@@ -215,9 +215,11 @@ tilename(int set, const int file_entry, int gend UNUSED)
++condnum) {
if (conditionals[condnum].sequence == MON_GLYPH
&& conditionals[condnum].predecessor == i) {
tilenum += 2;
if (tilenum == file_entry)
return conditionals[condnum].name;
for (k = 0; k < 2; k++) { /* male and female */
tilenum++;
if (tilenum == file_entry)
return conditionals[condnum].name;
}
}
}
tilenum++;

View File

@@ -110,7 +110,7 @@ read_txttile(FILE *txtfile, pixel (*pixels)[TILE_X])
int ph, i, j, k, reslt;
char buf[BUFSZ], ttype[BUFSZ], gend[BUFSZ];
const char *p;
char c[2];
char c[2], *q;
static int gidx = 0;
gend[0] = '\0';
@@ -133,11 +133,18 @@ read_txttile(FILE *txtfile, pixel (*pixels)[TILE_X])
* change when tiles are added
*/
p = tilename(tile_set, tile_set_indx, gidx);
if (p && strcmp(p, buf)
&& !acceptable_tilename(tile_set, tile_set_indx, buf, p)) {
Fprintf(stderr, "warning: for tile %d (numbered %d) of %s,\n",
tile_set_indx, i, text_sets[tile_set]);
Fprintf(stderr, "\tfound '%s' while expecting '%s'\n", buf, p);
if (p && (q = strstr(p, " {")) != 0) {
*q = '\0';
}
if (p && strcmp(p, buf)) {
boolean other_mismatch =
(tile_set == OTHER_SET
&& !acceptable_tilename(tile_set, tile_set_indx, buf, p));
if (tile_set != OTHER_SET || other_mismatch) {
Fprintf(stderr, "warning: for tile %d (numbered %d) of %s,\n",
tile_set_indx, i, text_sets[tile_set]);
Fprintf(stderr, "\tfound '%s' while expecting '%s'\n", buf, p);
}
}
tile_set_indx++;