| 3855 | } |
| 3856 | |
| 3857 | void |
| 3858 | minstapetrify(struct monst *mon, boolean byplayer) |
| 3859 | { |
| 3860 | if (resists_ston(mon)) |
| 3861 | return; |
| 3862 | if (poly_when_stoned(mon->data)) { |
| 3863 | mon_to_stone(mon); |
| 3864 | return; |
| 3865 | } |
| 3866 | if (!vamp_stone(mon)) |
| 3867 | return; |
| 3868 | |
| 3869 | /* give a "<mon> is slowing down" message and also remove |
| 3870 | intrinsic speed (comparable to similar effect on the hero) */ |
| 3871 | mon_adjust_speed(mon, -3, (struct obj *) 0); |
| 3872 | |
| 3873 | if (cansee(mon->mx, mon->my)) |
| 3874 | pline_mon(mon, "%s turns to stone.", Monnam(mon)); |
| 3875 | if (byplayer) { |
| 3876 | gs.stoned = TRUE; |
| 3877 | xkilled(mon, XKILL_NOMSG); |
| 3878 | } else |
| 3879 | monstone(mon); |
| 3880 | } |
| 3881 | |
| 3882 | void |
| 3883 | selftouch(const char *arg) |
no test coverage detected