summaryrefslogtreecommitdiff
path: root/src/parser/parse_ini.yy
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser/parse_ini.yy')
-rw-r--r--src/parser/parse_ini.yy7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/parser/parse_ini.yy b/src/parser/parse_ini.yy
index 7d0a160..4676110 100644
--- a/src/parser/parse_ini.yy
+++ b/src/parser/parse_ini.yy
@@ -155,6 +155,8 @@ decl: BGCOLOR AFF INTHEX { gIni->style.bgColor = $3; }
if ( gIni->firstPass==1 ) {
yyassert($2>=0 && $2<MAX_OBJECTS_COUNT, "object_ index", OUT_OF_BOUNDS);
yyassert($4>=0 , "object_ id value", OUT_OF_BOUNDS);
+ yyassert($6%2==0 , "object_ xpos is odd", BAD_VALUE);
+ yyassert($8%2==0 , "object_ ypos is odd", BAD_VALUE);
yyassert($10==0 || $10==4 || $10==8, "object_ paintMode value", BAD_VALUE);
yyassert($12==0 || $12==1, "object_ ud value", BAD_VALUE);
@@ -172,6 +174,8 @@ decl: BGCOLOR AFF INTHEX { gIni->style.bgColor = $3; }
if ( gIni->firstPass==1 ) {
yyassert($2>=0 && $2<MAX_TERRAINS_COUNT, "terrain_ index", OUT_OF_BOUNDS);
yyassert($4>=0 , "terrain_ id value", OUT_OF_BOUNDS);
+ yyassert($6%2==0 , "terrain_ xpos is odd", BAD_VALUE);
+ yyassert($8%2==0 , "terrain_ ypos is odd", BAD_VALUE);
yyassert($10>=0 && $10<16, "terrain_ modifier value", BAD_VALUE);
gIni->level.terrainCount++;
@@ -181,12 +185,13 @@ decl: BGCOLOR AFF INTHEX { gIni->style.bgColor = $3; }
gIni->level.terrains[$2].xpos = $6;
gIni->level.terrains[$2].ypos = $8;
gIni->level.terrains[$2].modifier = $10;
-if ($10!=0 && $10!=2 && $10!=4 && $10!=6 &&$10!=8 && $10!=10 &&$10!=12 && $10 != 15 ) printf("modifier==%i\n", $10);
}
}
| STEEL INT AFF INT VIR INT VIR INT VIR INT {
if ( gIni->firstPass==1 ) {
yyassert($2>=0 && $2<MAX_STEELS_COUNT, "steel_ index", OUT_OF_BOUNDS);
+ yyassert($4%2==0 , "steel_ xpos is odd", BAD_VALUE);
+ yyassert($6%2==0 , "steel_ ypos is odd", BAD_VALUE);
yyassert($4>=0 && $4<LEVEL_WIDTH , "steel_ xpos value", OUT_OF_BOUNDS);
yyassert($6>=0 && $6<LEVEL_HEIGHT , "steel_ ypos value", OUT_OF_BOUNDS);
yyassert($8>=0 && $8<=STEEL_MAX_WIDTH, "steel_ width value", BAD_VALUE);