Add swallow and explosion glyphs to glyph_to_cmap
This makes custom S_sw_tc etc. from Enhanced1 symset actually work, yielding nice smooth outlines for swallowers and explosions. Or so I think, I have only tested the former because when playing locally, explosions disappear so fast I cannot see them. While looking at where else glyph_to_swallow was used, I noticed that parse_id subtracted S_sw_tl from glyph_to_swallow, even though it returns 0 to 7. This looks like it would cause out-of-bounds access and perhaps a segfault when trying to customise glyphs for individual monster swallow glyphs (or whatever it is parse_id is used for), but I haven't tried to confirm nor change this because who would ever do such thing?
This commit is contained in:
@@ -729,6 +729,8 @@ int glyph_to_cmap(int glpyh);
|
||||
|
||||
#define glyph_to_swallow(glyph) \
|
||||
(glyph_is_swallow(glyph) ? (((glyph) - GLYPH_SWALLOW_OFF) & 0x7) : 0)
|
||||
#define glyph_to_explosion(glyph) \
|
||||
(glyph_is_explosion(glyph) ? (((glyph) - GLYPH_EXPLODE_OFF) % (S_expl_br - S_expl_tl + 1)) : 0)
|
||||
#define glyph_to_warning(glyph) \
|
||||
(glyph_is_warning(glyph) ? ((glyph) - GLYPH_WARNING_OFF) : NO_GLYPH)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user