summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/misc.cc
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2013-12-17 03:34:19 +0100
committerAdam Borowski <kilobyte@angband.pl>2013-12-17 03:35:55 +0100
commit6c286a4f22bcba4cfcb36053eb066367874be752 (patch)
tree00854f946fc8c8a85e9709524961f458d8662efa /crawl-ref/source/misc.cc
parent2fc5fa92fe3c8f3d7b32090026ab25dec6c813be (diff)
downloadcrawl-ref-6c286a4f22bcba4cfcb36053eb066367874be752.tar.gz
crawl-ref-6c286a4f22bcba4cfcb36053eb066367874be752.zip
Don't unseal destroyed doors.
This caused crashes, and was weird: a closed door would appear out of nowhere.
Diffstat (limited to 'crawl-ref/source/misc.cc')
-rw-r--r--crawl-ref/source/misc.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/crawl-ref/source/misc.cc b/crawl-ref/source/misc.cc
index 76a370711f..8e96c7992d 100644
--- a/crawl-ref/source/misc.cc
+++ b/crawl-ref/source/misc.cc
@@ -1915,6 +1915,12 @@ void timeout_terrain_changes(int duration, bool force)
if (marker->duration != INFINITE_DURATION)
marker->duration -= duration;
+ if (marker->change_type == TERRAIN_CHANGE_DOOR_SEAL
+ && grd(marker->pos) != DNGN_SEALED_DOOR)
+ {
+ continue;
+ }
+
monster* mon_src = monster_by_mid(marker->mon_num);
if (marker->duration <= 0
|| (marker->mon_num != 0