Rolling boulder traps and pacifism

If you stepped on an unknown rolling boulder trap, and that rolling boulder
hit a monster and killed it, you would be called a killer.  This makes
playing a pacifism conduct game rather difficult.
- track boulders from unknown rolling boulder traps, and don't charge/credit
hero if they kill monsters. This is done by temporarily setting otrapped on
such boulders.
- boulders from known traps are still charged/credited to the hero
- fix a couple places in ohitmon where is_poisonable wasn't checked along
with opoisoned.
This commit is contained in:
cohrs
2002-03-29 17:56:13 +00:00
parent 72048905ad
commit a1d3c539a9
6 changed files with 32 additions and 9 deletions

View File

@@ -70,6 +70,7 @@ struct obj {
Bitfield(olocked,1); /* object is locked */
Bitfield(obroken,1); /* lock has been broken */
Bitfield(otrapped,1); /* container is trapped */
/* or accidental tripped rolling boulder trap */
#define opoisoned otrapped /* object (weapon) is coated with poison */
Bitfield(recharged,3); /* number of times it's been recharged */