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:
@@ -195,8 +195,9 @@ NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
|
||||
#define MAY_FRACTURE 0x10 /* boulders & statues may fracture */
|
||||
|
||||
/* Macros for launching objects */
|
||||
#define ROLL 1
|
||||
#define FLING 2
|
||||
#define ROLL 0x01 /* the object is rolling */
|
||||
#define FLING 0x02 /* the object is flying thru the air */
|
||||
#define LAUNCH_KNOWN 0x80 /* the hero caused this by explicit action */
|
||||
|
||||
/* Macros for explosion types */
|
||||
#define EXPL_DARK 0
|
||||
|
||||
Reference in New Issue
Block a user