]> granicus.if.org Git - nethack/commit
M29 - unconscious effects when not unconscious
authorcohrs <cohrs>
Fri, 25 Mar 2005 20:30:24 +0000 (20:30 +0000)
committercohrs <cohrs>
Fri, 25 Mar 2005 20:30:24 +0000 (20:30 +0000)
commit2f497c620ef05a4118e87b6a0505b46080ef559c
tree926432e5df320506b7da78ad2306735fe26776fc
parentbf8a5983ec3ea174535a2493588be5d4df2b3ceb
M29 - unconscious effects when not unconscious
While auditing nomul() I noticed unconscious() treats (multi < 0 && !nomovemsg)
as unconscious.  This explains the behavior in M29 (unconscious message
while performing #turn).  I checked all the places with this combination,
and found a few that did not appear to fall under the "unconscious" category.
Most I changed to use You_can_move_again to ensure the same display w/o the
unconscious behavior. Also:
- found another string that unconscious() should have considered
- vomit() now sets nomovemsg, one caller was also doing this redundantly
- vomiting_dialogue() was calling stop_occupation() after vomit(), which can
  reset multi.  I reversed the order and removed a doubly-redundant nomul call.

tele() still has a problem: some cases where multi < 0 should probably take
a branch like the unconscious() branch but with a different message.
doturn()'s behavior - turn then wait - is also less than perfect, but I
think this is a known problem.
doc/fixes34.4
src/dothrow.c
src/eat.c
src/mhitu.c
src/pray.c
src/timeout.c
src/trap.c
src/uhitm.c