B01003 - blindfold vs dust vortex

This started out as a change to address the strange sequence of messages if
you remove a blindfold while engulfed in a dust vortex.  That is addressed
by a new function that can be called in such situations.  Calls to this
function were added in all the cases where the can_blnd() engulfing
conditions end as a result of player action.  There are some other cases
that end ucreamed or usleep, but they happen between turns and shouldn't
need extra handling.

While I was at it, I noticed that a unicorn horn or prayer would cure
blindness even while engulfed in a dust vortex.  This is useless, because
you immediately get blind again the next turn.  So, I added checks to avoid
doing this.  Finally, it didn't make sense for eating a carrot to cure your
blindness in these situations either, only for it to return immediately.
This commit is contained in:
cohrs
2003-03-26 05:10:22 +00:00
parent 39befe07fd
commit 345ffcfaec
8 changed files with 56 additions and 19 deletions

View File

@@ -187,7 +187,10 @@ in_trouble()
}
#endif
if (Blinded > 1 && haseyes(youmonst.data)) return(TROUBLE_BLIND);
if (Blinded > 1 && haseyes(youmonst.data) &&
(!u.uswallow ||
!attacktype_fordmg(u.ustuck->data, AT_ENGL, AD_BLND)))
return(TROUBLE_BLIND);
for(i=0; i<A_MAX; i++)
if(ABASE(i) < AMAX(i)) return(TROUBLE_POISONED);
if(Wounded_legs