Fix monster triggering land mine accessing deleted trap
mintrap -> thitm -> mondied -> relobj -> mdrop_obj -> flooreffects -> deltrap after calling thitm, the mintrap code was trying to access the trap.
This commit is contained in:
@@ -184,6 +184,7 @@ fix temple priests or shopkeepers moving over other monsters
|
||||
fix hero still hiding under a statue shattered by a land mine
|
||||
fix helping a monster out of a pit addressing a deleted trap
|
||||
fix launched rolling boulder code accessing deleted trap
|
||||
fix monster stepping on a land mine code accessing deleted trap
|
||||
|
||||
|
||||
Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository
|
||||
|
||||
@@ -2167,6 +2167,7 @@ register struct monst *mtmp;
|
||||
inescapable = force_mintrap || ((tt == HOLE || tt == PIT)
|
||||
&& Sokoban && !trap->madeby_u);
|
||||
const char *fallverb;
|
||||
xchar tx = trap->tx, ty = trap->ty;
|
||||
|
||||
/* true when called from dotrap, inescapable is not an option */
|
||||
if (mtmp == u.usteed)
|
||||
@@ -2649,7 +2650,7 @@ register struct monst *mtmp;
|
||||
trapkilled = TRUE;
|
||||
}
|
||||
/* a boulder may fill the new pit, crushing monster */
|
||||
fill_pit(trap->tx, trap->ty);
|
||||
fill_pit(tx, ty); /* thitm may have already destroyed the trap */
|
||||
if (DEADMONSTER(mtmp))
|
||||
trapkilled = TRUE;
|
||||
if (unconscious()) {
|
||||
|
||||
Reference in New Issue
Block a user