@@ -1499,6 +1499,7 @@ when you hear a monster incant a scroll, ensure that the 'I' invisible
|
|||||||
monster indicator doesn't trump telepathy briefly
|
monster indicator doesn't trump telepathy briefly
|
||||||
proceed with showpaths option even if the sysconf file is missing
|
proceed with showpaths option even if the sysconf file is missing
|
||||||
angry shopkeeper was not charging for thrown items
|
angry shopkeeper was not charging for thrown items
|
||||||
|
avoid "You fall down a deep shaft!" if deliberately flying down
|
||||||
|
|
||||||
|
|
||||||
Fixes to 3.7.0-x General Problems Exposed Via git Repository
|
Fixes to 3.7.0-x General Problems Exposed Via git Repository
|
||||||
|
|||||||
10
src/trap.c
10
src/trap.c
@@ -608,6 +608,7 @@ fall_through(
|
|||||||
const char *dont_fall = 0;
|
const char *dont_fall = 0;
|
||||||
int newlevel;
|
int newlevel;
|
||||||
struct trap *t = (struct trap *) 0;
|
struct trap *t = (struct trap *) 0;
|
||||||
|
boolean controlled_flight = FALSE;
|
||||||
|
|
||||||
/* we'll fall even while levitating in Sokoban; otherwise, if we
|
/* we'll fall even while levitating in Sokoban; otherwise, if we
|
||||||
won't fall and won't be told that we aren't falling, give up now */
|
won't fall and won't be told that we aren't falling, give up now */
|
||||||
@@ -653,12 +654,15 @@ fall_through(
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if ((Flying || is_clinger(gy.youmonst.data))
|
if ((Flying || is_clinger(gy.youmonst.data))
|
||||||
&& (ftflags & TOOKPLUNGE) && td && t)
|
&& (ftflags & TOOKPLUNGE) && td && t) {
|
||||||
|
if (Flying)
|
||||||
|
controlled_flight = TRUE;
|
||||||
You("%s down %s!",
|
You("%s down %s!",
|
||||||
Flying ? "swoop" : "deliberately drop",
|
Flying ? "swoop" : "deliberately drop",
|
||||||
(t->ttyp == TRAPDOOR)
|
(t->ttyp == TRAPDOOR)
|
||||||
? "through the trap door"
|
? "through the trap door"
|
||||||
: "into the gaping hole");
|
: "into the gaping hole");
|
||||||
|
}
|
||||||
|
|
||||||
if (*u.ushops)
|
if (*u.ushops)
|
||||||
shopdig(1);
|
shopdig(1);
|
||||||
@@ -678,7 +682,9 @@ fall_through(
|
|||||||
}
|
}
|
||||||
dist = depth(&dtmp) - depth(&u.uz);
|
dist = depth(&dtmp) - depth(&u.uz);
|
||||||
if (dist > 1)
|
if (dist > 1)
|
||||||
You("fall down a %s%sshaft!", dist > 3 ? "very " : "",
|
You("%s down a %s%sshaft!",
|
||||||
|
controlled_flight ? "fly" : "fall",
|
||||||
|
dist > 3 ? "very " : "",
|
||||||
dist > 2 ? "deep " : "");
|
dist > 2 ? "deep " : "");
|
||||||
}
|
}
|
||||||
if (!td)
|
if (!td)
|
||||||
|
|||||||
Reference in New Issue
Block a user