fix #H4919 - vomit message sequencing

The countdown for delayed vomiting gave message "you suddenly vomit!"
at T-2, allowing you to move some more, then vomit at T-0 with no
message, finally at T+2 get "you can move again", making it seem as
if the program was letting you move during a time it thought that you
couldn't move.  Also, there was nothing "sudden" about it since it was
near the end of a 15 or so turn sequence where a few other messages
are given leading up to that.

Change it to
T-2: You are about to vomit.  // different wording
T-0: You vomit!               // new message
so that "you can move again" more clearly refers to the actual event.
This commit is contained in:
PatR
2017-09-21 16:35:56 -07:00
parent c665d73216
commit 83056d45d7
3 changed files with 23 additions and 5 deletions

View File

@@ -145,13 +145,13 @@ stoned_dialogue()
exercise(A_DEX, FALSE);
}
/* He is getting sicker and sicker prior to vomiting */
/* hero is getting sicker and sicker prior to vomiting */
static NEARDATA const char *const vomiting_texts[] = {
"are feeling mildly nauseated.", /* 14 */
"feel slightly confused.", /* 11 */
"can't seem to think straight.", /* 8 */
"feel incredibly sick.", /* 5 */
"suddenly vomit!" /* 2 */
"are about to vomit." /* 2 */
};
STATIC_OVL void
@@ -189,11 +189,20 @@ vomiting_dialogue()
txt = vomiting_texts[4];
if (cantvomit(youmonst.data))
txt = "gag uncontrolably.";
else if (Hallucination)
/* "hurl" is short for "hurl chunks" which is slang for
relatively violent vomiting... */
txt = "are about to hurl!";
break;
case 0:
stop_occupation();
if (!cantvomit(youmonst.data))
morehungry(20);
/* case 2 used to be "You suddenly vomit!" but it wasn't sudden
since you've just been through the earlier messages of the
countdown, and it was still possible to move around between
that message and vomit() -> numul(-2) -> "You can move again." */
You("vomit!");
vomit();
break;
default: