more engraving sanity feedback
Delete engravings made in a breach of a shop's wall or of a vault's wall or in the guard's temporary corridor when the wall is repaired or the corridor removed. If 'sanity_check' was On, those would trigger impossible warning "engraving sanity: illegal surface (x)" where x was the terrain type code for solid rock or relevant walls. Adding del_engr_at() calls to the shop code was straightforward. The vault code is very complicated and I'm not sure that all the calls I added were actually necessary.
This commit is contained in:
@@ -6,7 +6,12 @@
|
||||
#ifndef ENGRAVE_H
|
||||
#define ENGRAVE_H
|
||||
|
||||
enum engraving_texts { actual_text, remembered_text, pristine_text, text_states };
|
||||
enum engraving_texts {
|
||||
actual_text,
|
||||
remembered_text,
|
||||
pristine_text,
|
||||
text_states
|
||||
};
|
||||
|
||||
struct engr {
|
||||
struct engr *nxt_engr;
|
||||
@@ -37,9 +42,9 @@ struct engr {
|
||||
#define dealloc_engr(engr) free((genericptr_t) (engr))
|
||||
|
||||
#define engraving_to_defsym(ep) \
|
||||
(levl[(ep)->engr_x][(ep)->engr_y].typ == CORR ? S_engrcorr : S_engroom)
|
||||
((levl[(ep)->engr_x][(ep)->engr_y].typ == CORR) ? S_engrcorr : S_engroom)
|
||||
|
||||
#define spot_shows_engravings(x,y) \
|
||||
#define spot_shows_engravings(x,y) \
|
||||
(levl[(x)][(y)].typ == CORR \
|
||||
|| levl[(x)][(y)].typ == SCORR \
|
||||
|| levl[(x)][(y)].typ == ICE \
|
||||
|
||||
@@ -823,7 +823,7 @@ extern struct engr *sengr_at(const char *, coordxy, coordxy, boolean);
|
||||
extern void u_wipe_engr(int);
|
||||
extern void wipe_engr_at(coordxy, coordxy, xint16, boolean);
|
||||
extern void read_engr_at(coordxy, coordxy);
|
||||
extern void make_engr_at(coordxy, coordxy, const char *, long, xint16);
|
||||
extern void make_engr_at(coordxy, coordxy, const char *, long, int);
|
||||
extern void del_engr_at(coordxy, coordxy);
|
||||
extern int freehand(void);
|
||||
extern int doengrave(void);
|
||||
|
||||
Reference in New Issue
Block a user