| 1107 | } |
| 1108 | |
| 1109 | staticfn boolean |
| 1110 | u_stuck_cannot_go(const char *updn) |
| 1111 | { |
| 1112 | if (u.ustuck) { |
| 1113 | if (u.uswallow || !sticks(gy.youmonst.data)) { |
| 1114 | You("are %s, and cannot go %s.", |
| 1115 | !u.uswallow ? "being held" |
| 1116 | : digests(u.ustuck->data) ? "swallowed" |
| 1117 | : "engulfed", updn); |
| 1118 | return TRUE; |
| 1119 | } else { |
| 1120 | struct monst *mtmp = u.ustuck; |
| 1121 | |
| 1122 | set_ustuck((struct monst *) 0); |
| 1123 | You("release %s.", mon_nam(mtmp)); |
| 1124 | } |
| 1125 | } |
| 1126 | return FALSE; |
| 1127 | } |
| 1128 | |
| 1129 | /* the #down command */ |
| 1130 | int |