diff options
-rw-r--r-- | crawl-ref/source/defines.h | 2 | ||||
-rw-r--r-- | crawl-ref/source/direct.cc | 3 | ||||
-rw-r--r-- | crawl-ref/source/files.cc | 2 | ||||
-rw-r--r-- | crawl-ref/source/tags.cc | 6 |
4 files changed, 8 insertions, 5 deletions
diff --git a/crawl-ref/source/defines.h b/crawl-ref/source/defines.h index f4a55736ef..cca786c9d0 100644 --- a/crawl-ref/source/defines.h +++ b/crawl-ref/source/defines.h @@ -68,7 +68,7 @@ #define MAX_CLOUDS 180 // empty cloud -- (CLOUDS + 1) {dlb}: -#define EMPTY_CLOUD 101 +#define EMPTY_CLOUD (MAX_CLOUDS + 1) // max x-bound for level generation {dlb} #define GXM 80 diff --git a/crawl-ref/source/direct.cc b/crawl-ref/source/direct.cc index b260f14dc7..1f745b1a78 100644 --- a/crawl-ref/source/direct.cc +++ b/crawl-ref/source/direct.cc @@ -1554,8 +1554,7 @@ static void describe_cell(int mx, int my) #endif if (env.cgrid[mx][my] != EMPTY_CLOUD) { - const char cloud_inspected = env.cgrid[mx][my]; - + const int cloud_inspected = env.cgrid[mx][my]; const cloud_type ctype = (cloud_type) env.cloud[cloud_inspected].type; mprf("There is a cloud of %s here.", cloud_name(ctype).c_str()); diff --git a/crawl-ref/source/files.cc b/crawl-ref/source/files.cc index df241e835c..07b4676347 100644 --- a/crawl-ref/source/files.cc +++ b/crawl-ref/source/files.cc @@ -89,7 +89,7 @@ void save_level(int level_saved, bool was_a_labyrinth, char where_were_you); #define GHOST_MINOR_VERSION 1 -#define LEVEL_MINOR_VERSION 1 +#define LEVEL_MINOR_VERSION 2 #define YOU_MINOR_VERSION 1 static void redraw_all(void) diff --git a/crawl-ref/source/tags.cc b/crawl-ref/source/tags.cc index deebe42670..68fa56440e 100644 --- a/crawl-ref/source/tags.cc +++ b/crawl-ref/source/tags.cc @@ -1529,7 +1529,11 @@ static void tag_read_level( struct tagHeader &th, char minorVersion ) env.map_col[i][j].flags = unmarshallShort(th); mgrd[i][j] = NON_MONSTER; - env.cgrid[i][j] = unmarshallByte(th); + env.cgrid[i][j] = (unsigned char) unmarshallByte(th); + + // Ugh! Backward compatibility. 101 was the old (buggy) EMPTY_CLOUD + if (minorVersion < 2 && env.cgrid[i][j] == 101) + env.cgrid[i][j] = EMPTY_CLOUD; } } |