From 66627aafee0a09d8d126231fcb2b958d728c5ae1 Mon Sep 17 00:00:00 2001 From: nothere Date: Sat, 29 Nov 2003 23:00:19 +0000 Subject: [PATCH] =?utf8?q?=E9=9A=A0=E3=81=97=E3=83=89=E3=82=A2=E3=82=92?= =?utf8?q?=E9=9A=A0=E3=81=9B=E3=81=AA=E3=81=84=E5=9C=B0=E5=BD=A2=E3=81=A7?= =?utf8?q?=E9=9A=A0=E3=81=97=E3=83=89=E3=82=A2=E3=82=92=E6=BD=B0=E3=81=99?= =?utf8?q?=E5=88=A4=E5=AE=9A=E3=82=92MOVE=20||=20CAN=5FFLY=E3=81=A8?= =?utf8?q?=E3=81=97=E3=81=9F.=20=E6=BD=B0=20=E3=81=99=E9=9A=9B=E3=81=AB1/2?= =?utf8?q?=E3=81=A7mimic=E3=81=A7=E4=B8=8A=E6=9B=B8=E3=81=8D=E3=81=AB?= =?utf8?q?=E3=81=AA=E3=82=8B=E3=81=8B=E3=83=80=E3=83=B3=E3=82=B8=E3=83=A7?= =?utf8?q?=E3=83=B3=E6=A8=99=E6=BA=96=E3=81=AE=E5=BA=8A=E3=81=AB=E3=81=AA?= =?utf8?q?=E3=82=8B=E3=81=8B=E3=81=AB=E5=88=86=E5=B2=90=E3=81=99=E3=82=8B?= =?utf8?q?=20=E3=82=88=E3=81=86=E3=81=AB=E5=A4=89=E6=9B=B4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- src/grid.c | 5 ++++- src/rooms.c | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/grid.c b/src/grid.c index b3cf9e778..f59c8fb2a 100644 --- a/src/grid.c +++ b/src/grid.c @@ -152,7 +152,10 @@ void place_random_door(int y, int x, bool room) /* Floor type terrain cannot hide a door */ if (feat_supports_los(c_ptr->mimic) && !feat_supports_los(c_ptr->feat)) { - if (have_flag(f_info[c_ptr->mimic].flags, FF_MOVE)) c_ptr->feat = c_ptr->mimic; + if (have_flag(f_info[c_ptr->mimic].flags, FF_MOVE) || have_flag(f_info[c_ptr->mimic].flags, FF_CAN_FLY)) + { + c_ptr->feat = one_in_(2) ? c_ptr->mimic : floor_type[randint0(100)]; + } c_ptr->mimic = 0; } } diff --git a/src/rooms.c b/src/rooms.c index 5ad6d89d6..12e630f05 100644 --- a/src/rooms.c +++ b/src/rooms.c @@ -105,7 +105,10 @@ static void place_secret_door(int y, int x) /* Floor type terrain cannot hide a door */ if (feat_supports_los(c_ptr->mimic) && !feat_supports_los(c_ptr->feat)) { - if (have_flag(f_info[c_ptr->mimic].flags, FF_MOVE)) c_ptr->feat = c_ptr->mimic; + if (have_flag(f_info[c_ptr->mimic].flags, FF_MOVE) || have_flag(f_info[c_ptr->mimic].flags, FF_CAN_FLY)) + { + c_ptr->feat = one_in_(2) ? c_ptr->mimic : floor_type[randint0(100)]; + } c_ptr->mimic = 0; } -- 2.11.0