diff options
Diffstat (limited to 'crawl-ref/source/files.cc')
-rw-r--r-- | crawl-ref/source/files.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/crawl-ref/source/files.cc b/crawl-ref/source/files.cc index de584c643d..979498b696 100644 --- a/crawl-ref/source/files.cc +++ b/crawl-ref/source/files.cc @@ -1108,6 +1108,10 @@ bool load( dungeon_feature_type stair_taken, load_mode_type load_mode, } #endif + // Clear the show grid, to prevent us noticing things + // which were within the old LOS by new coordinates. + env.show.init(0); + // Try to open level savefile. #ifdef DEBUG_LEVEL_LOAD mprf(MSGCH_DIAGNOSTICS, "Try to open file %s", cha_fil.c_str()); @@ -1211,8 +1215,8 @@ bool load( dungeon_feature_type stair_taken, load_mode_type load_mode, crawl_view.set_player_at(you.pos(), load_mode != LOAD_VISITOR); // This should fix the "monster occurring under the player" bug? - if (make_changes && mgrd(you.pos()) != NON_MONSTER) - monster_teleport(&menv[mgrd(you.pos())], true, true); + if (make_changes && monster_at(you.pos())) + monster_teleport(monster_at(you.pos()), true, true); // Actually "move" the followers if applicable. if (level_type_allows_followers(you.level_type) |