Disable object pile display when hallucinating
Hallucination shows object piles under boulders
This commit is contained in:
+6
-4
@@ -54,6 +54,9 @@ static int explcolors[] = {
|
|||||||
(currentgraphics == ROGUESET && SYMHANDLING(H_IBM))
|
(currentgraphics == ROGUESET && SYMHANDLING(H_IBM))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#define is_objpile(x,y) (!Hallucination && level.objects[(x)][(y)] \
|
||||||
|
&& level.objects[(x)][(y)]->nexthere)
|
||||||
|
|
||||||
/*ARGSUSED*/
|
/*ARGSUSED*/
|
||||||
int
|
int
|
||||||
mapglyph(glyph, ochar, ocolor, ospecial, x, y)
|
mapglyph(glyph, ochar, ocolor, ospecial, x, y)
|
||||||
@@ -83,7 +86,7 @@ unsigned *ospecial;
|
|||||||
else
|
else
|
||||||
obj_color(STATUE);
|
obj_color(STATUE);
|
||||||
special |= MG_STATUE;
|
special |= MG_STATUE;
|
||||||
if (level.objects[x][y] && level.objects[x][y]->nexthere)
|
if (is_objpile(x,y))
|
||||||
special |= MG_OBJPILE;
|
special |= MG_OBJPILE;
|
||||||
} else if ((offset = (glyph - GLYPH_WARNING_OFF)) >= 0) { /* warn flash */
|
} else if ((offset = (glyph - GLYPH_WARNING_OFF)) >= 0) { /* warn flash */
|
||||||
idx = offset + SYM_OFF_W;
|
idx = offset + SYM_OFF_W;
|
||||||
@@ -156,8 +159,7 @@ unsigned *ospecial;
|
|||||||
}
|
}
|
||||||
} else
|
} else
|
||||||
obj_color(offset);
|
obj_color(offset);
|
||||||
if (offset != BOULDER && level.objects[x][y]
|
if (offset != BOULDER && is_objpile(x,y))
|
||||||
&& level.objects[x][y]->nexthere)
|
|
||||||
special |= MG_OBJPILE;
|
special |= MG_OBJPILE;
|
||||||
} else if ((offset = (glyph - GLYPH_RIDDEN_OFF)) >= 0) { /* mon ridden */
|
} else if ((offset = (glyph - GLYPH_RIDDEN_OFF)) >= 0) { /* mon ridden */
|
||||||
idx = mons[offset].mlet + SYM_OFF_M;
|
idx = mons[offset].mlet + SYM_OFF_M;
|
||||||
@@ -176,7 +178,7 @@ unsigned *ospecial;
|
|||||||
else
|
else
|
||||||
mon_color(offset);
|
mon_color(offset);
|
||||||
special |= MG_CORPSE;
|
special |= MG_CORPSE;
|
||||||
if (level.objects[x][y] && level.objects[x][y]->nexthere)
|
if (is_objpile(x,y))
|
||||||
special |= MG_OBJPILE;
|
special |= MG_OBJPILE;
|
||||||
} else if ((offset = (glyph - GLYPH_DETECT_OFF)) >= 0) { /* mon detect */
|
} else if ((offset = (glyph - GLYPH_DETECT_OFF)) >= 0) { /* mon detect */
|
||||||
idx = mons[offset].mlet + SYM_OFF_M;
|
idx = mons[offset].mlet + SYM_OFF_M;
|
||||||
|
|||||||
Reference in New Issue
Block a user