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:
@@ -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 */
|
||||
|
||||
Reference in New Issue
Block a user