From 918687dcd7c44844c4248280e8b4a9d1a9dac708 Mon Sep 17 00:00:00 2001 From: Rob Pearce Date: Wed, 1 Jun 2016 15:03:44 +1000 Subject: [PATCH] Don't make slip on blood checks when climbing stairs. --- move.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/move.c b/move.c index bcde5cc..adbbb68 100644 --- a/move.c +++ b/move.c @@ -2666,14 +2666,15 @@ int initiatemove(lifeform_t *lf, cell_t *cell, int onpurpose, int *didmsg) { } - // slipping on something before moving? + // slipping on something before moving? note: we use 'cell' here + // rather than lf->cell so that we can skip the check when using stairs. if (!attacking && onpurpose) { - if (!isairborne(lf, NULL)) { + if (cell && !isairborne(lf, NULL)) { int slip; object_t *slipob; if (!lfhasflag(lf, F_CAREFULMOVE)) { - slip = getslipperyness(lf->cell, &slipob); + slip = getslipperyness(cell, &slipob); if (slip && !skillcheck(lf, SC_SLIP, slip, 0)) { if (!slipon(lf, slipob)) { if (didmsg) *didmsg = B_TRUE;