busy pet won't miss out upon ascension
fix various places that "finally finished" could be displayed after the hero
stopped doing something other than eating
+fix some cases where movement was disallowed by the hero was still conscious
Platform- and/or Interface-Specific Fixes
if(!range || (!dx && !dy) || u.ustuck) return; /* paranoia */
nomul(-range);
- nomovemsg = 0;
+ nomovemsg = ""; /* it just happens */
if (verbose)
You("%s in the opposite direction.", range > 1 ? "hurtle" : "float");
/* if we're in the midst of shooting multiple projectiles, stop */
}
You("stuff yourself and then vomit voluminously.");
morehungry(1000); /* you just got *very* sick! */
- nomovemsg = 0;
vomit();
} else {
killer.format = KILLED_BY_AN;
{
make_sick(0L, (char *) 0, TRUE, SICK_VOMITABLE);
nomul(-2);
- nomovemsg = 0;
+ nomovemsg = You_can_move_again;
}
int
} else {
if (Blind) You("are frozen!");
else You("are frozen by %s!", mon_nam(mtmp));
- nomovemsg = 0; /* default: "you can move again" */
+ nomovemsg = You_can_move_again;
nomul(-rnd(10));
exercise(A_DEX, FALSE);
}
}
}
nomul(-5);
- nomovemsg = 0;
+ nomovemsg = You_can_move_again;
return(1);
}
case 3: /* limbs turned to stone */
stop_occupation();
nomul(-3); /* can't move anymore */
- nomovemsg = 0;
+ nomovemsg = You_can_move_again; /* not unconscious */
break;
default:
break;
switch ((int) i) {
case 0:
- vomit();
- morehungry(20);
stop_occupation();
- if (multi > 0) nomul(0);
+ morehungry(20);
+ vomit();
break;
case 2:
make_stunned(HStun + d(2,4), FALSE);
if (mtmp->mhp <= 0) trapkilled = TRUE;
if (unconscious()) {
multi = -1;
- nomovemsg="The explosion awakens you!";
+ nomovemsg = "The explosion awakens you!";
}
break;
{
return((boolean)(multi < 0 && (!nomovemsg ||
u.usleep ||
+ !strncmp(nomovemsg,"You awake", 9) ||
!strncmp(nomovemsg,"You regain con", 14) ||
!strncmp(nomovemsg,"You are consci", 14))));
}
You("momentarily stiffen.");
} else { /* gelatinous cube */
You("are frozen by %s!", mon_nam(mon));
- nomovemsg = 0; /* default: "you can move again" */
+ nomovemsg = You_can_move_again;
nomul(-tmp);
exercise(A_DEX, FALSE);
}