change xchar to other typedefs
One of the drivers of this change was that screen coordinates require a
type that can hold values greater than 127. Parameters to the window
port routines require a large type in order to be able to have values
a fair bit larger than COLNO and ROWNO passed to them, particularly for
their use to the right of the map window.
This splits the uses of xchar into 3 different situations, and adjusts
their type and size:
xchar
|
-----------------------
| | |
coordxy xint16 xint8
coordxy: Actual x or y coordinates for various things (moved to 16-bits).
xint16: Same data size as coordxy, but for non-coordinate use (16-bits).
xint8: There are only a few use cases initially, where it was very
plain to see that the variable could remain as 8-bits, rather
than be bumped to 16-bits. There are probably more such cases
that could be changed after additional review.
Note: This first changed all xchar variables to coordxy. Some were
reviewed and got changed to xint16 or xint8 when it became apparent that
their usage was not for coordinates.
This increments EDITLEVEL in patchlevel.h
This commit is contained in:
@@ -70,7 +70,7 @@ struct engrave_info {
|
||||
the possible mutations of this */
|
||||
char *nextc; /* next character(s) in text[] to engrave */
|
||||
struct obj *stylus; /* object doing the writing */
|
||||
xchar type; /* type of engraving (DUST, MARK, etc) */
|
||||
xint8 type; /* type of engraving (DUST, MARK, etc) */
|
||||
coord pos; /* location the engraving is being placed on */
|
||||
int actionct; /* nth turn spent engraving */
|
||||
};
|
||||
@@ -104,7 +104,7 @@ struct tribute_info {
|
||||
struct novel_tracking { /* for choosing random passage when reading novel */
|
||||
unsigned id; /* novel oid from previous passage selection */
|
||||
int count; /* number of passage indices available in pasg[] */
|
||||
xchar pasg[30]; /* pasg[0..count-1] are passage indices */
|
||||
xint8 pasg[30]; /* pasg[0..count-1] are passage indices */
|
||||
/* tribute file is allowed to have more than 30 passages for a novel;
|
||||
if it does, reading will first choose a random subset of 30 of them;
|
||||
reading all 30 or switching to a different novel and then back again
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#define COORD_H
|
||||
|
||||
typedef struct nhcoord {
|
||||
xchar x, y;
|
||||
coordxy x, y;
|
||||
} coord;
|
||||
|
||||
#endif /* COORD_H */
|
||||
|
||||
@@ -32,9 +32,9 @@ struct dgn_topology { /* special dungeon levels for speed */
|
||||
d_level d_fire_level;
|
||||
d_level d_air_level;
|
||||
d_level d_astral_level;
|
||||
xchar d_tower_dnum;
|
||||
xchar d_sokoban_dnum;
|
||||
xchar d_mines_dnum, d_quest_dnum;
|
||||
xint16 d_tower_dnum;
|
||||
xint16 d_sokoban_dnum;
|
||||
xint16 d_mines_dnum, d_quest_dnum;
|
||||
d_level d_qstart_level, d_qlocate_level, d_nemesis_level;
|
||||
d_level d_knox_level;
|
||||
d_level d_mineend_level;
|
||||
@@ -410,7 +410,7 @@ struct autopickup_exception {
|
||||
};
|
||||
|
||||
struct plinemsg_type {
|
||||
xchar msgtype; /* one of MSGTYP_foo */
|
||||
xint16 msgtype; /* one of MSGTYP_foo */
|
||||
struct nhregex *regex;
|
||||
char *pattern;
|
||||
struct plinemsg_type *next;
|
||||
@@ -545,7 +545,7 @@ struct xlock_s {
|
||||
|
||||
struct trapinfo {
|
||||
struct obj *tobj;
|
||||
xchar tx, ty;
|
||||
coordxy tx, ty;
|
||||
int time_needed;
|
||||
boolean force_bungle;
|
||||
};
|
||||
@@ -564,8 +564,8 @@ enum vanq_order_modes {
|
||||
};
|
||||
|
||||
struct rogueroom {
|
||||
xchar rlx, rly;
|
||||
xchar dx, dy;
|
||||
coordxy rlx, rly;
|
||||
coordxy dx, dy;
|
||||
boolean real;
|
||||
uchar doortable;
|
||||
int nroom; /* Only meaningful for "real" rooms */
|
||||
@@ -573,7 +573,7 @@ struct rogueroom {
|
||||
|
||||
typedef struct ls_t {
|
||||
struct ls_t *next;
|
||||
xchar x, y; /* source's position */
|
||||
coordxy x, y; /* source's position */
|
||||
short range; /* source's current range */
|
||||
short flags;
|
||||
short type; /* type of light source */
|
||||
@@ -582,7 +582,7 @@ typedef struct ls_t {
|
||||
|
||||
struct container {
|
||||
struct container *next;
|
||||
xchar x, y;
|
||||
coordxy x, y;
|
||||
short what;
|
||||
genericptr_t list;
|
||||
};
|
||||
@@ -597,7 +597,7 @@ enum bubble_contains_types {
|
||||
#define MAX_BMASK 4
|
||||
|
||||
struct bubble {
|
||||
xchar x, y; /* coordinates of the upper left corner */
|
||||
coordxy x, y; /* coordinates of the upper left corner */
|
||||
schar dx, dy; /* the general direction of the bubble's movement */
|
||||
uchar bm[MAX_BMASK + 2]; /* bubble bit mask */
|
||||
struct bubble *prev, *next; /* need to traverse the list up and down */
|
||||
@@ -621,7 +621,7 @@ struct h2o_ctx {
|
||||
|
||||
struct launchplace {
|
||||
struct obj *obj;
|
||||
xchar x, y;
|
||||
coordxy x, y;
|
||||
};
|
||||
|
||||
struct repo { /* repossession context */
|
||||
@@ -862,8 +862,8 @@ struct instance_globals {
|
||||
|
||||
/* display.c */
|
||||
gbuf_entry gbuf[ROWNO][COLNO];
|
||||
xchar gbuf_start[ROWNO];
|
||||
xchar gbuf_stop[ROWNO];
|
||||
coordxy gbuf_start[ROWNO];
|
||||
coordxy gbuf_stop[ROWNO];
|
||||
|
||||
|
||||
/* do.c */
|
||||
@@ -884,9 +884,9 @@ struct instance_globals {
|
||||
|
||||
/* dog.c */
|
||||
int petname_used; /* user preferred pet name has been used */
|
||||
xchar gtyp; /* type of dog's current goal */
|
||||
xchar gx; /* x position of dog's current goal */
|
||||
xchar gy; /* y position of dog's current goal */
|
||||
xint16 gtyp; /* type of dog's current goal */
|
||||
coordxy gx; /* x position of dog's current goal */
|
||||
coordxy gy; /* y position of dog's current goal */
|
||||
char dogname[PL_PSIZ];
|
||||
char catname[PL_PSIZ];
|
||||
char horsename[PL_PSIZ];
|
||||
@@ -1000,8 +1000,8 @@ struct instance_globals {
|
||||
|
||||
/* mklev.c */
|
||||
genericptr_t luathemes[MAXDUNGEON];
|
||||
xchar vault_x;
|
||||
xchar vault_y;
|
||||
coordxy vault_x;
|
||||
coordxy vault_y;
|
||||
boolean made_branch; /* used only during level creation */
|
||||
|
||||
/* mkmap.c */
|
||||
@@ -1202,8 +1202,8 @@ struct instance_globals {
|
||||
lev_region *lregions;
|
||||
int num_lregions;
|
||||
struct sp_coder *coder;
|
||||
xchar xstart, ystart;
|
||||
xchar xsize, ysize;
|
||||
coordxy xstart, ystart;
|
||||
coordxy xsize, ysize;
|
||||
boolean in_mk_themerooms;
|
||||
boolean themeroom_failed;
|
||||
|
||||
@@ -1248,9 +1248,9 @@ struct instance_globals {
|
||||
Stormbringer's maliciousness. */
|
||||
|
||||
/* vision.c */
|
||||
xchar **viz_array; /* used in cansee() and couldsee() macros */
|
||||
xchar *viz_rmin; /* min could see indices */
|
||||
xchar *viz_rmax; /* max could see indices */
|
||||
coordxy **viz_array; /* used in cansee() and couldsee() macros */
|
||||
coordxy *viz_rmin; /* min could see indices */
|
||||
coordxy *viz_rmax; /* max could see indices */
|
||||
boolean vision_full_recalc;
|
||||
int seethru; /* 'bubble' debugging: clouds and water don't block light */
|
||||
|
||||
|
||||
@@ -984,7 +984,7 @@ enum glyph_offsets {
|
||||
#define MG_BADXY 0x04000 /* bad coordinates were passed */
|
||||
|
||||
typedef struct {
|
||||
xchar gnew; /* perhaps move this bit into the rm structure. */
|
||||
xint8 gnew; /* perhaps move this bit into the rm structure. */
|
||||
glyph_info glyphinfo;
|
||||
} gbuf_entry;
|
||||
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
#define DUNGEON_H
|
||||
|
||||
typedef struct d_level { /* basic dungeon level element */
|
||||
xchar dnum; /* dungeon number */
|
||||
xchar dlevel; /* level number */
|
||||
xint16 dnum; /* dungeon number */
|
||||
xint16 dlevel; /* level number */
|
||||
} d_level;
|
||||
|
||||
#if !defined(MAKEDEFS_C) && !defined(MDLIB_C)
|
||||
@@ -32,7 +32,7 @@ typedef struct s_level { /* special dungeon level element */
|
||||
} s_level;
|
||||
|
||||
typedef struct stairway { /* basic stairway identifier */
|
||||
xchar sx, sy; /* x / y location of the stair */
|
||||
coordxy sx, sy; /* x / y location of the stair */
|
||||
d_level tolev; /* where does it go */
|
||||
boolean up; /* up or down? */
|
||||
boolean isladder; /* ladder or stairway? */
|
||||
@@ -52,10 +52,10 @@ enum level_region_types {
|
||||
};
|
||||
|
||||
typedef struct dest_area { /* non-stairway level change identifier */
|
||||
xchar lx, ly; /* "lower" left corner (near [0,0]) */
|
||||
xchar hx, hy; /* "upper" right corner (near [COLNO,ROWNO]) */
|
||||
xchar nlx, nly; /* outline of invalid area */
|
||||
xchar nhx, nhy; /* opposite corner of invalid area */
|
||||
coordxy lx, ly; /* "lower" left corner (near [0,0]) */
|
||||
coordxy hx, hy; /* "upper" right corner (near [COLNO,ROWNO]) */
|
||||
coordxy nlx, nly; /* outline of invalid area */
|
||||
coordxy nhx, nhy; /* opposite corner of invalid area */
|
||||
} dest_area;
|
||||
|
||||
typedef struct dungeon { /* basic dungeon identifier */
|
||||
@@ -65,9 +65,9 @@ typedef struct dungeon { /* basic dungeon identifier */
|
||||
char themerms[15]; /* lua file name containing themed rooms */
|
||||
char boneid; /* character to id dungeon in bones files */
|
||||
d_flags flags; /* dungeon flags */
|
||||
xchar entry_lev; /* entry level */
|
||||
xchar num_dunlevs; /* number of levels in this dungeon */
|
||||
xchar dunlev_ureached; /* how deep you have been in this dungeon */
|
||||
xint16 entry_lev; /* entry level */
|
||||
xint16 num_dunlevs; /* number of levels in this dungeon */
|
||||
xint16 dunlev_ureached; /* how deep you have been in this dungeon */
|
||||
int ledger_start, /* the starting depth in "real" terms */
|
||||
depth_start; /* the starting depth in "logical" terms */
|
||||
} dungeon;
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
struct engr {
|
||||
struct engr *nxt_engr;
|
||||
char *engr_txt;
|
||||
xchar engr_x, engr_y;
|
||||
coordxy engr_x, engr_y;
|
||||
unsigned engr_lth; /* for save & restore; not length of text */
|
||||
long engr_time; /* moment engraving was (will be) finished */
|
||||
xchar engr_type;
|
||||
xint8 engr_type;
|
||||
#define DUST 1
|
||||
#define ENGRAVE 2
|
||||
#define BURN 3
|
||||
|
||||
282
include/extern.h
282
include/extern.h
@@ -46,8 +46,8 @@ extern boolean leashable(struct monst *);
|
||||
extern boolean next_to_u(void);
|
||||
extern struct obj *get_mleash(struct monst *);
|
||||
extern const char *beautiful(void);
|
||||
extern void check_leash(xchar, xchar);
|
||||
extern boolean um_dist(xchar, xchar, xchar);
|
||||
extern void check_leash(coordxy, coordxy);
|
||||
extern boolean um_dist(coordxy, coordxy, xint16);
|
||||
extern boolean snuff_candle(struct obj *);
|
||||
extern boolean snuff_lit(struct obj *);
|
||||
extern boolean splash_lit(struct obj *);
|
||||
@@ -87,8 +87,8 @@ extern void set_artifact_intrinsic(struct obj *, boolean, long);
|
||||
extern int touch_artifact(struct obj *, struct monst *);
|
||||
extern int spec_abon(struct obj *, struct monst *);
|
||||
extern int spec_dbon(struct obj *, struct monst *, int);
|
||||
extern void discover_artifact(xchar);
|
||||
extern boolean undiscovered_artifact(xchar);
|
||||
extern void discover_artifact(xint16);
|
||||
extern boolean undiscovered_artifact(xint16);
|
||||
extern int disp_artifact_discoveries(winid);
|
||||
extern void dump_artifact_info(winid);
|
||||
extern boolean artifact_hit(struct monst *, struct monst *, struct obj *,
|
||||
@@ -155,10 +155,10 @@ extern void lift_covet_and_placebc(int);
|
||||
Lift_covet_and_placebc(x, __FUNCTION__, __LINE__)
|
||||
#endif
|
||||
extern void set_bc(int);
|
||||
extern void move_bc(int, int, xchar, xchar, xchar, xchar);
|
||||
extern boolean drag_ball(xchar, xchar, int *, xchar *, xchar *, xchar *,
|
||||
xchar *, boolean *, boolean);
|
||||
extern void drop_ball(xchar, xchar);
|
||||
extern void move_bc(int, int, coordxy, coordxy, coordxy, coordxy);
|
||||
extern boolean drag_ball(coordxy, coordxy, int *, coordxy *, coordxy *, coordxy *,
|
||||
coordxy *, boolean *, boolean);
|
||||
extern void drop_ball(coordxy, coordxy);
|
||||
extern void drag_down(void);
|
||||
extern void bc_sanity_check(void);
|
||||
|
||||
@@ -284,7 +284,7 @@ extern int getdir(const char *);
|
||||
extern void confdir(void);
|
||||
extern const char *directionname(int);
|
||||
extern int isok(int, int);
|
||||
extern int get_adjacent_loc(const char *, const char *, xchar, xchar, coord *);
|
||||
extern int get_adjacent_loc(const char *, const char *, coordxy, coordxy, coord *);
|
||||
extern const char *click_to_cmd(int, int, int);
|
||||
extern char get_count(const char *, char, long, cmdcount_nht *, unsigned);
|
||||
#ifdef HANGUPHANDLING
|
||||
@@ -306,7 +306,7 @@ extern void free_nomakedefs(void);
|
||||
|
||||
/* ### dbridge.c ### */
|
||||
|
||||
extern boolean is_waterwall(xchar, xchar);
|
||||
extern boolean is_waterwall(coordxy, coordxy);
|
||||
extern boolean is_pool(int, int);
|
||||
extern boolean is_lava(int, int);
|
||||
extern boolean is_pool_or_lava(int, int);
|
||||
@@ -357,7 +357,7 @@ extern int wiz_mgender(void);
|
||||
|
||||
/* ### dig.c ### */
|
||||
|
||||
extern int dig_typ(struct obj *, xchar, xchar);
|
||||
extern int dig_typ(struct obj *, coordxy, coordxy);
|
||||
extern boolean is_digging(void);
|
||||
extern int holetime(void);
|
||||
extern boolean dig_check(struct monst *, boolean, int, int);
|
||||
@@ -367,7 +367,7 @@ extern int use_pick_axe(struct obj *);
|
||||
extern int use_pick_axe2(struct obj *);
|
||||
extern boolean mdig_tunnel(struct monst *);
|
||||
extern void draft_message(boolean);
|
||||
extern void watch_dig(struct monst *, xchar, xchar, boolean);
|
||||
extern void watch_dig(struct monst *, coordxy, coordxy, boolean);
|
||||
extern void zap_dig(void);
|
||||
extern struct obj *bury_an_obj(struct obj *, boolean *);
|
||||
extern void bury_objs(int, int);
|
||||
@@ -378,7 +378,7 @@ extern struct obj *buried_ball(coord *);
|
||||
extern void buried_ball_to_punishment(void);
|
||||
extern void buried_ball_to_freedom(void);
|
||||
extern schar fillholetyp(int, int, boolean);
|
||||
extern void liquid_flow(xchar, xchar, schar, struct trap *, const char *);
|
||||
extern void liquid_flow(coordxy, coordxy, schar, struct trap *, const char *);
|
||||
extern boolean conjoined_pits(struct trap *, struct trap *, boolean);
|
||||
#if 0
|
||||
extern void bury_monst(struct monst *);
|
||||
@@ -401,20 +401,20 @@ extern int see_with_infrared(struct monst *);
|
||||
extern int canseemon(struct monst *);
|
||||
extern int knowninvisible(struct monst *);
|
||||
extern int is_safemon(struct monst *);
|
||||
extern void magic_map_background(xchar, xchar, int);
|
||||
extern void map_background(xchar, xchar, int);
|
||||
extern void magic_map_background(coordxy, coordxy, int);
|
||||
extern void map_background(coordxy, coordxy, int);
|
||||
extern void map_trap(struct trap *, int);
|
||||
extern void map_object(struct obj *, int);
|
||||
extern void map_invisible(xchar, xchar);
|
||||
extern void map_invisible(coordxy, coordxy);
|
||||
extern boolean unmap_invisible(int, int);
|
||||
extern void unmap_object(int, int);
|
||||
extern void map_location(int, int, int);
|
||||
extern boolean suppress_map_output(void);
|
||||
extern void feel_newsym(xchar, xchar);
|
||||
extern void feel_location(xchar, xchar);
|
||||
extern void feel_newsym(coordxy, coordxy);
|
||||
extern void feel_location(coordxy, coordxy);
|
||||
extern void newsym(int, int);
|
||||
extern void newsym_force(int, int);
|
||||
extern void shieldeff(xchar, xchar);
|
||||
extern void shieldeff(coordxy, coordxy);
|
||||
extern void tmp_at(int, int);
|
||||
extern void flash_glyph_at(int, int, int, int);
|
||||
extern void swallowed(int);
|
||||
@@ -433,15 +433,15 @@ extern void clear_glyph_buffer(void);
|
||||
extern void row_refresh(int, int, int);
|
||||
extern void cls(void);
|
||||
extern void flush_screen(int);
|
||||
extern int back_to_glyph(xchar, xchar);
|
||||
extern int back_to_glyph(coordxy, coordxy);
|
||||
extern int zapdir_to_glyph(int, int, int);
|
||||
extern int glyph_at(xchar, xchar);
|
||||
extern int glyph_at(coordxy, coordxy);
|
||||
extern void reglyph_darkroom(void);
|
||||
extern void xy_set_wall_state(int, int);
|
||||
extern void set_wall_state(void);
|
||||
extern void unset_seenv(struct rm *, int, int, int, int);
|
||||
extern int warning_of(struct monst *);
|
||||
extern void map_glyphinfo(xchar, xchar, int, unsigned, glyph_info *);
|
||||
extern void map_glyphinfo(coordxy, coordxy, int, unsigned, glyph_info *);
|
||||
extern void reset_glyphmap(enum glyphmap_change_triggers trigger);
|
||||
extern int fn_cmap_to_glyph(int);
|
||||
|
||||
@@ -588,14 +588,14 @@ extern boolean inaccessible_equipment(struct obj *, const char *, boolean);
|
||||
extern void newedog(struct monst *);
|
||||
extern void free_edog(struct monst *);
|
||||
extern void initedog(struct monst *);
|
||||
extern struct monst *make_familiar(struct obj *, xchar, xchar, boolean);
|
||||
extern struct monst *make_familiar(struct obj *, coordxy, coordxy, boolean);
|
||||
extern struct monst *makedog(void);
|
||||
extern void update_mlstmv(void);
|
||||
extern void losedogs(void);
|
||||
extern void mon_arrive(struct monst *, boolean);
|
||||
extern void mon_catchup_elapsed_time(struct monst *, long);
|
||||
extern void keepdogs(boolean);
|
||||
extern void migrate_to_level(struct monst *, xchar, xchar, coord *);
|
||||
extern void migrate_to_level(struct monst *, coordxy, coordxy, coord *);
|
||||
extern int dogfood(struct monst *, struct obj *);
|
||||
extern boolean tamedog(struct monst *, struct obj *);
|
||||
extern void abuse_dog(struct monst *);
|
||||
@@ -613,13 +613,13 @@ extern void finish_meating(struct monst *);
|
||||
/* ### dokick.c ### */
|
||||
|
||||
extern boolean ghitm(struct monst *, struct obj *);
|
||||
extern void container_impact_dmg(struct obj *, xchar, xchar);
|
||||
extern void container_impact_dmg(struct obj *, coordxy, coordxy);
|
||||
extern int dokick(void);
|
||||
extern boolean ship_object(struct obj *, xchar, xchar, boolean);
|
||||
extern boolean ship_object(struct obj *, coordxy, coordxy, boolean);
|
||||
extern void obj_delivery(boolean);
|
||||
extern void deliver_obj_to_mon(struct monst *mtmp, int, unsigned long);
|
||||
extern schar down_gate(xchar, xchar);
|
||||
extern void impact_drop(struct obj *, xchar, xchar, xchar);
|
||||
extern schar down_gate(coordxy, coordxy);
|
||||
extern void impact_drop(struct obj *, coordxy, coordxy, coordxy);
|
||||
|
||||
/* ### dothrow.c ### */
|
||||
|
||||
@@ -634,10 +634,10 @@ extern boolean throwing_weapon(struct obj *);
|
||||
extern void throwit(struct obj *, long, boolean, struct obj *);
|
||||
extern int omon_adj(struct monst *, struct obj *, boolean);
|
||||
extern int thitmonst(struct monst *, struct obj *);
|
||||
extern int hero_breaks(struct obj *, xchar, xchar, unsigned);
|
||||
extern int breaks(struct obj *, xchar, xchar);
|
||||
extern void release_camera_demon(struct obj *, xchar, xchar);
|
||||
extern void breakobj(struct obj *, xchar, xchar, boolean, boolean);
|
||||
extern int hero_breaks(struct obj *, coordxy, coordxy, unsigned);
|
||||
extern int breaks(struct obj *, coordxy, coordxy);
|
||||
extern void release_camera_demon(struct obj *, coordxy, coordxy);
|
||||
extern void breakobj(struct obj *, coordxy, coordxy, boolean, boolean);
|
||||
extern boolean breaktest(struct obj *);
|
||||
extern boolean walk_path(coord *, coord *, boolean(*)(void *, int, int),
|
||||
genericptr_t);
|
||||
@@ -660,14 +660,14 @@ extern s_level *find_level(const char *);
|
||||
extern s_level *Is_special(d_level *);
|
||||
extern branch *Is_branchlev(d_level *);
|
||||
extern boolean builds_up(d_level *);
|
||||
extern xchar ledger_no(d_level *);
|
||||
extern xchar maxledgerno(void);
|
||||
extern xint16 ledger_no(d_level *);
|
||||
extern xint16 maxledgerno(void);
|
||||
extern schar depth(d_level *);
|
||||
extern xchar dunlev(d_level *);
|
||||
extern xchar dunlevs_in_dungeon(d_level *);
|
||||
extern xchar ledger_to_dnum(xchar);
|
||||
extern xchar ledger_to_dlev(xchar);
|
||||
extern xchar deepest_lev_reached(boolean);
|
||||
extern xint16 dunlev(d_level *);
|
||||
extern xint16 dunlevs_in_dungeon(d_level *);
|
||||
extern xint16 ledger_to_dnum(xint16);
|
||||
extern xint16 ledger_to_dlev(xint16);
|
||||
extern xint16 deepest_lev_reached(boolean);
|
||||
extern boolean on_level(d_level *, d_level *);
|
||||
extern void next_level(boolean);
|
||||
extern void prev_level(boolean);
|
||||
@@ -685,10 +685,10 @@ extern stairway *stairway_find_special_dir(boolean);
|
||||
extern void u_on_sstairs(int);
|
||||
extern void u_on_upstairs(void);
|
||||
extern void u_on_dnstairs(void);
|
||||
extern boolean On_stairs(xchar, xchar);
|
||||
extern boolean On_ladder(xchar, xchar);
|
||||
extern boolean On_stairs_up(xchar, xchar);
|
||||
extern boolean On_stairs_dn(xchar, xchar);
|
||||
extern boolean On_stairs(coordxy, coordxy);
|
||||
extern boolean On_ladder(coordxy, coordxy);
|
||||
extern boolean On_stairs_up(coordxy, coordxy);
|
||||
extern boolean On_stairs_dn(coordxy, coordxy);
|
||||
extern void get_level(d_level *, int);
|
||||
extern boolean Is_botlevel(d_level *);
|
||||
extern boolean Can_fall_thru(d_level *);
|
||||
@@ -710,11 +710,11 @@ extern void assign_level(d_level *, d_level *);
|
||||
extern void assign_rnd_level(d_level *, d_level *, int);
|
||||
extern unsigned int induced_align(int);
|
||||
extern boolean Invocation_lev(d_level *);
|
||||
extern xchar level_difficulty(void);
|
||||
extern xint16 level_difficulty(void);
|
||||
extern schar lev_by_name(const char *);
|
||||
extern boolean known_branch_stairs(stairway *);
|
||||
extern char *stairs_description(stairway *, char *, boolean);
|
||||
extern schar print_dungeon(boolean, schar *, xchar *);
|
||||
extern schar print_dungeon(boolean, schar *, xint16 *);
|
||||
extern char *get_annotation(d_level *);
|
||||
extern int donamelevel(void);
|
||||
extern int dooverview(void);
|
||||
@@ -796,12 +796,12 @@ extern boolean can_reach_floor(boolean);
|
||||
extern void cant_reach_floor(int, int, boolean, boolean);
|
||||
extern const char *surface(int, int);
|
||||
extern const char *ceiling(int, int);
|
||||
extern struct engr *engr_at(xchar, xchar);
|
||||
extern boolean sengr_at(const char *, xchar, xchar, boolean);
|
||||
extern struct engr *engr_at(coordxy, coordxy);
|
||||
extern boolean sengr_at(const char *, coordxy, coordxy, boolean);
|
||||
extern void u_wipe_engr(int);
|
||||
extern void wipe_engr_at(xchar, xchar, xchar, boolean);
|
||||
extern void wipe_engr_at(coordxy, coordxy, coordxy, boolean);
|
||||
extern void read_engr_at(int, int);
|
||||
extern void make_engr_at(int, int, const char *, long, xchar);
|
||||
extern void make_engr_at(int, int, const char *, long, xint16);
|
||||
extern void del_engr_at(int, int);
|
||||
extern int freehand(void);
|
||||
extern int doengrave(void);
|
||||
@@ -918,7 +918,7 @@ extern void livelog_add(long ll_type, const char *);
|
||||
|
||||
extern void floating_above(const char *);
|
||||
extern void dogushforth(int);
|
||||
extern void dryup(xchar, xchar, boolean);
|
||||
extern void dryup(coordxy, coordxy, boolean);
|
||||
extern void drinkfountain(void);
|
||||
extern void dipfountain(struct obj *);
|
||||
extern void breaksink(int, int);
|
||||
@@ -932,13 +932,13 @@ extern anything *long_to_any(long);
|
||||
extern anything *monst_to_any(struct monst *);
|
||||
extern anything *obj_to_any(struct obj *);
|
||||
extern boolean revive_nasty(int, int, const char *);
|
||||
extern int still_chewing(xchar, xchar);
|
||||
extern void movobj(struct obj *, xchar, xchar);
|
||||
extern boolean may_dig(xchar, xchar);
|
||||
extern boolean may_passwall(xchar, xchar);
|
||||
extern boolean bad_rock(struct permonst *, xchar, xchar);
|
||||
extern int still_chewing(coordxy, coordxy);
|
||||
extern void movobj(struct obj *, coordxy, coordxy);
|
||||
extern boolean may_dig(coordxy, coordxy);
|
||||
extern boolean may_passwall(coordxy, coordxy);
|
||||
extern boolean bad_rock(struct permonst *, coordxy, coordxy);
|
||||
extern int cant_squeeze_thru(struct monst *);
|
||||
extern boolean invocation_pos(xchar, xchar);
|
||||
extern boolean invocation_pos(coordxy, coordxy);
|
||||
extern boolean test_move(int, int, int, int, int);
|
||||
#ifdef DEBUG
|
||||
extern int wiz_debug_cmd_traveldisplay(void);
|
||||
@@ -954,7 +954,7 @@ extern void switch_terrain(void);
|
||||
extern void set_uinwater(int);
|
||||
extern boolean pooleffects(boolean);
|
||||
extern void spoteffects(boolean);
|
||||
extern char *in_rooms(xchar, xchar, int);
|
||||
extern char *in_rooms(coordxy, coordxy, int);
|
||||
extern boolean in_town(int, int);
|
||||
extern void check_special_room(boolean);
|
||||
extern int dopickup(void);
|
||||
@@ -973,7 +973,7 @@ extern int max_capacity(void);
|
||||
extern boolean check_capacity(const char *);
|
||||
extern int inv_cnt(boolean);
|
||||
extern long money_cnt(struct obj *);
|
||||
extern void spot_checks(xchar, xchar, schar);
|
||||
extern void spot_checks(coordxy, coordxy, schar);
|
||||
|
||||
/* ### hacklib.c ### */
|
||||
|
||||
@@ -1190,9 +1190,9 @@ extern int dosuspend(void);
|
||||
|
||||
/* ### light.c ### */
|
||||
|
||||
extern void new_light_source(xchar, xchar, int, int, union any *);
|
||||
extern void new_light_source(coordxy, coordxy, int, int, union any *);
|
||||
extern void del_light_source(int, union any *);
|
||||
extern void do_light_sources(xchar **);
|
||||
extern void do_light_sources(coordxy **);
|
||||
extern void show_transient_light(struct obj *, int, int);
|
||||
extern void transient_light_cleanup(void);
|
||||
extern struct monst *find_mid(unsigned, unsigned);
|
||||
@@ -1222,7 +1222,7 @@ extern void breakchestlock(struct obj *, boolean);
|
||||
extern void reset_pick(void);
|
||||
extern void maybe_reset_pick(struct obj *);
|
||||
extern struct obj *autokey(boolean);
|
||||
extern int pick_lock(struct obj *, xchar, xchar, struct obj *);
|
||||
extern int pick_lock(struct obj *, coordxy, coordxy, struct obj *);
|
||||
extern boolean u_have_forceable_weapon(void);
|
||||
extern int doforce(void);
|
||||
extern boolean boxlock(struct obj *, struct obj *);
|
||||
@@ -1257,7 +1257,7 @@ extern void readmail(struct obj *);
|
||||
|
||||
extern void dealloc_monst(struct monst *);
|
||||
extern boolean is_home_elemental(struct permonst *);
|
||||
extern struct monst *clone_mon(struct monst *, xchar, xchar);
|
||||
extern struct monst *clone_mon(struct monst *, coordxy, coordxy);
|
||||
extern int monhp_per_lvl(struct monst *);
|
||||
extern void newmonhp(struct monst *, int);
|
||||
extern struct mextra *newmextra(void);
|
||||
@@ -1369,12 +1369,12 @@ extern void topologize(struct mkroom *, boolean));
|
||||
#else
|
||||
extern void topologize(struct mkroom *);
|
||||
#endif
|
||||
extern void place_branch(branch *, xchar, xchar);
|
||||
extern boolean occupied(xchar, xchar);
|
||||
extern int okdoor(xchar, xchar);
|
||||
extern void place_branch(branch *, coordxy, coordxy);
|
||||
extern boolean occupied(coordxy, coordxy);
|
||||
extern int okdoor(coordxy, coordxy);
|
||||
extern void dodoor(int, int, struct mkroom *);
|
||||
extern void mktrap(int, int, struct mkroom *, coord *);
|
||||
extern void mkstairs(xchar, xchar, char, struct mkroom *, boolean);
|
||||
extern void mkstairs(coordxy, coordxy, char, struct mkroom *, boolean);
|
||||
extern void mkinvokearea(void);
|
||||
extern void mineralize(int, int, int, int, boolean);
|
||||
|
||||
@@ -1386,8 +1386,8 @@ extern boolean litstate_rnd(int);
|
||||
|
||||
/* ### mkmaze.c ### */
|
||||
|
||||
extern boolean set_levltyp(xchar, xchar, schar);
|
||||
extern boolean set_levltyp_lit(xchar, xchar, schar, schar);
|
||||
extern boolean set_levltyp(coordxy, coordxy, schar);
|
||||
extern boolean set_levltyp_lit(coordxy, coordxy, schar, schar);
|
||||
extern void create_maze(int, int, boolean);
|
||||
extern void wallification(int, int, int, int);
|
||||
extern void fix_wall_spines(int, int, int, int);
|
||||
@@ -1396,10 +1396,10 @@ extern void makemaz(const char *);
|
||||
extern void mazexy(coord *);
|
||||
extern void get_level_extends(int *, int *, int *, int *);
|
||||
extern void bound_digging(void);
|
||||
extern void mkportal(xchar, xchar, xchar, xchar);
|
||||
extern boolean bad_location(xchar, xchar, xchar, xchar, xchar, xchar);
|
||||
extern void place_lregion(xchar, xchar, xchar, xchar, xchar, xchar, xchar,
|
||||
xchar, xchar, d_level *);
|
||||
extern void mkportal(coordxy, coordxy, coordxy, coordxy);
|
||||
extern boolean bad_location(coordxy, coordxy, coordxy, coordxy, coordxy, coordxy);
|
||||
extern void place_lregion(coordxy, coordxy, coordxy, coordxy, coordxy, coordxy, coordxy,
|
||||
coordxy, coordxy, d_level *);
|
||||
extern void fixup_special(void);
|
||||
extern void fumaroles(void);
|
||||
extern void movebubbles(void);
|
||||
@@ -1495,7 +1495,7 @@ extern boolean has_dnstairs(struct mkroom *);
|
||||
extern boolean has_upstairs(struct mkroom *);
|
||||
extern int somex(struct mkroom *);
|
||||
extern int somey(struct mkroom *);
|
||||
extern boolean inside_room(struct mkroom *, xchar, xchar);
|
||||
extern boolean inside_room(struct mkroom *, coordxy, coordxy);
|
||||
extern boolean somexy(struct mkroom *, coord *);
|
||||
extern boolean somexyspace(struct mkroom *, coord *);
|
||||
extern void mkundead(coord *, boolean, int);
|
||||
@@ -1549,7 +1549,7 @@ extern void mon_to_stone(struct monst *);
|
||||
extern void m_into_limbo(struct monst *);
|
||||
extern void mnexto(struct monst *, unsigned);
|
||||
extern void maybe_mnexto(struct monst *);
|
||||
extern int mnearto(struct monst *, xchar, xchar, boolean, unsigned);
|
||||
extern int mnearto(struct monst *, coordxy, coordxy, boolean, unsigned);
|
||||
extern void m_respond(struct monst *);
|
||||
extern void setmangry(struct monst *, boolean);
|
||||
extern void wake_msg(struct monst *, boolean);
|
||||
@@ -1560,11 +1560,11 @@ extern void seemimic(struct monst *);
|
||||
extern void normal_shape(struct monst *);
|
||||
extern void iter_mons(void (*)(struct monst *));
|
||||
extern struct monst *get_iter_mons(boolean (*)(struct monst *));
|
||||
extern struct monst *get_iter_mons_xy(boolean (*)(struct monst *, xchar, xchar), xchar, xchar);
|
||||
extern struct monst *get_iter_mons_xy(boolean (*)(struct monst *, coordxy, coordxy), coordxy, coordxy);
|
||||
extern void rescham(void);
|
||||
extern void restartcham(void);
|
||||
extern void restore_cham(struct monst *);
|
||||
extern void maybe_unhide_at(xchar, xchar);
|
||||
extern void maybe_unhide_at(coordxy, coordxy);
|
||||
extern boolean hideunder(struct monst *);
|
||||
extern void hide_monst(struct monst *);
|
||||
extern void mon_animal_list(boolean);
|
||||
@@ -1648,18 +1648,18 @@ extern int bee_eat_jelly(struct monst *, struct obj *);
|
||||
extern void monflee(struct monst *, int, boolean, boolean);
|
||||
extern void mon_yells(struct monst *, const char *);
|
||||
extern int dochug(struct monst *);
|
||||
extern boolean m_digweapon_check(struct monst *, xchar, xchar);
|
||||
extern boolean m_digweapon_check(struct monst *, coordxy, coordxy);
|
||||
extern int m_move(struct monst *, int);
|
||||
extern int m_move_aggress(struct monst *, xchar, xchar);
|
||||
extern int m_move_aggress(struct monst *, coordxy, coordxy);
|
||||
extern void dissolve_bars(int, int);
|
||||
extern boolean closed_door(int, int);
|
||||
extern boolean accessible(int, int);
|
||||
extern void set_apparxy(struct monst *);
|
||||
extern boolean can_ooze(struct monst *);
|
||||
extern boolean can_fog(struct monst *);
|
||||
extern boolean should_displace(struct monst *, coord *, long *, int, xchar,
|
||||
xchar);
|
||||
extern boolean undesirable_disp(struct monst *, xchar, xchar);
|
||||
extern boolean should_displace(struct monst *, coord *, long *, int, coordxy,
|
||||
coordxy);
|
||||
extern boolean undesirable_disp(struct monst *, coordxy, coordxy);
|
||||
|
||||
/* ### monst.c ### */
|
||||
|
||||
@@ -1667,7 +1667,7 @@ extern void monst_globals_init(void);
|
||||
|
||||
/* ### mplayer.c ### */
|
||||
|
||||
extern struct monst *mk_mplayer(struct permonst *, xchar, xchar, boolean);
|
||||
extern struct monst *mk_mplayer(struct permonst *, coordxy, coordxy, boolean);
|
||||
extern void create_mplayers(int, boolean);
|
||||
extern void mplayer_talk(struct monst *);
|
||||
|
||||
@@ -1731,9 +1731,9 @@ extern int ohitmon(struct monst *, struct obj *, int, boolean);
|
||||
extern void thrwmu(struct monst *);
|
||||
extern int spitmu(struct monst *, struct attack *);
|
||||
extern int breamu(struct monst *, struct attack *);
|
||||
extern boolean linedup_callback(xchar, xchar, xchar, xchar,
|
||||
extern boolean linedup_callback(coordxy, coordxy, coordxy, coordxy,
|
||||
boolean(*)(int,int));
|
||||
extern boolean linedup(xchar, xchar, xchar, xchar, int);
|
||||
extern boolean linedup(coordxy, coordxy, coordxy, coordxy, int);
|
||||
extern boolean lined_up(struct monst *);
|
||||
extern struct obj *m_carrying(struct monst *, int);
|
||||
extern int thrwmm(struct monst *, struct monst *);
|
||||
@@ -1808,7 +1808,7 @@ extern void nhl_add_table_entry_char(lua_State *, const char *, char);
|
||||
extern void nhl_add_table_entry_str(lua_State *, const char *, const char *);
|
||||
extern void nhl_add_table_entry_bool(lua_State *, const char *, boolean);
|
||||
extern void nhl_add_table_entry_region(lua_State *, const char *,
|
||||
xchar, xchar, xchar, xchar);
|
||||
coordxy, coordxy, coordxy, coordxy);
|
||||
extern schar splev_chr2typ(char);
|
||||
extern schar check_mapchr(const char *);
|
||||
extern int get_table_int(lua_State *, const char *);
|
||||
@@ -1991,7 +1991,7 @@ extern char *self_lookat(char *);
|
||||
extern char *monhealthdescr(struct monst *mon, boolean, char *);
|
||||
extern void mhidden_description(struct monst *, boolean, char *);
|
||||
extern boolean object_from_map(int,int,int,struct obj **);
|
||||
extern const char *waterbody_name(xchar, xchar);
|
||||
extern const char *waterbody_name(coordxy, coordxy);
|
||||
extern int do_screen_description(coord, boolean, int, char *, const char **,
|
||||
struct permonst **);
|
||||
extern int do_look(int, coord *);
|
||||
@@ -2179,7 +2179,7 @@ extern const char *u_gname(void);
|
||||
extern int doturn(void);
|
||||
extern int altarmask_at(int, int);
|
||||
extern const char *a_gname(void);
|
||||
extern const char *a_gname_at(xchar x, xchar y);
|
||||
extern const char *a_gname_at(coordxy x, coordxy y);
|
||||
extern const char *align_gname(aligntyp);
|
||||
extern const char *halu_gname(aligntyp);
|
||||
extern const char *align_gtitle(aligntyp);
|
||||
@@ -2188,7 +2188,7 @@ extern void altar_wrath(int, int);
|
||||
/* ### priest.c ### */
|
||||
|
||||
extern int move_special(struct monst *, boolean, schar, boolean, boolean,
|
||||
xchar, xchar, xchar, xchar);
|
||||
coordxy, coordxy, coordxy, coordxy);
|
||||
extern char temple_occupied(char *);
|
||||
extern boolean inhistemple(struct monst *);
|
||||
extern int pri_move(struct monst *);
|
||||
@@ -2200,10 +2200,10 @@ extern struct monst *findpriest(char);
|
||||
extern void intemple(int);
|
||||
extern void forget_temple_entry(struct monst *);
|
||||
extern void priest_talk(struct monst *);
|
||||
extern struct monst *mk_roamer(struct permonst *, aligntyp, xchar, xchar,
|
||||
extern struct monst *mk_roamer(struct permonst *, aligntyp, coordxy, coordxy,
|
||||
boolean);
|
||||
extern void reset_hostility(struct monst *);
|
||||
extern boolean in_your_sanctuary(struct monst *, xchar, xchar);
|
||||
extern boolean in_your_sanctuary(struct monst *, coordxy, coordxy);
|
||||
extern void ghod_hitsu(struct monst *);
|
||||
extern void angry_priest(void);
|
||||
extern void clearpriests(void);
|
||||
@@ -2287,16 +2287,16 @@ extern void split_rects(NhRect *, NhRect *);
|
||||
extern boolean inside_region(NhRegion *, int, int);
|
||||
extern void clear_regions(void);
|
||||
extern void run_regions(void);
|
||||
extern boolean in_out_region(xchar, xchar);
|
||||
extern boolean m_in_out_region(struct monst *, xchar, xchar);
|
||||
extern boolean in_out_region(coordxy, coordxy);
|
||||
extern boolean m_in_out_region(struct monst *, coordxy, coordxy);
|
||||
extern void update_player_regions(void);
|
||||
extern void update_monster_region(struct monst *);
|
||||
extern NhRegion *visible_region_at(xchar, xchar);
|
||||
extern void show_region(NhRegion *, xchar, xchar);
|
||||
extern NhRegion *visible_region_at(coordxy, coordxy);
|
||||
extern void show_region(NhRegion *, coordxy, coordxy);
|
||||
extern void save_regions(NHFILE *);
|
||||
extern void rest_regions(NHFILE *);
|
||||
extern void region_stats(const char *, char *, long *, long *);
|
||||
extern NhRegion *create_gas_cloud(xchar, xchar, int, int);
|
||||
extern NhRegion *create_gas_cloud(coordxy, coordxy, int, int);
|
||||
extern boolean region_danger(void);
|
||||
extern void region_safety(void);
|
||||
|
||||
@@ -2306,7 +2306,7 @@ extern void inven_inuse(boolean);
|
||||
extern int dorecover(NHFILE *);
|
||||
extern void restcemetery(NHFILE *, struct cemetery **);
|
||||
extern void trickery(char *);
|
||||
extern void getlev(NHFILE *, int, xchar);
|
||||
extern void getlev(NHFILE *, int, xint8);
|
||||
extern void get_plname_from_file(NHFILE *, char *);
|
||||
#ifdef SELECTSAVED
|
||||
extern int restore_menu(winid);
|
||||
@@ -2392,7 +2392,7 @@ extern boolean tricked_fileremoved(NHFILE *, char *);
|
||||
#ifdef INSURANCE
|
||||
extern void savestateinlock(void);
|
||||
#endif
|
||||
extern void savelev(NHFILE *, xchar);
|
||||
extern void savelev(NHFILE *, xint8);
|
||||
extern genericptr_t mon_to_buffer(struct monst *, int *);
|
||||
extern boolean close_check(int);
|
||||
extern void savecemetery(NHFILE *, struct cemetery **);
|
||||
@@ -2430,9 +2430,9 @@ extern void shkgone(struct monst *);
|
||||
extern void set_residency(struct monst *, boolean);
|
||||
extern void replshk(struct monst *, struct monst *);
|
||||
extern void restshk(struct monst *, boolean);
|
||||
extern char inside_shop(xchar, xchar);
|
||||
extern char inside_shop(coordxy, coordxy);
|
||||
extern void u_left_shop(char *, boolean);
|
||||
extern void remote_burglary(xchar, xchar);
|
||||
extern void remote_burglary(coordxy, coordxy);
|
||||
extern void u_entered_shop(char *);
|
||||
extern void pick_pick(struct obj *);
|
||||
extern boolean same_price(struct obj *, struct obj *);
|
||||
@@ -2446,7 +2446,7 @@ extern void obfree(struct obj *, struct obj *);
|
||||
extern void make_happy_shk(struct monst *, boolean);
|
||||
extern void make_happy_shoppers(boolean);
|
||||
extern void hot_pursuit(struct monst *);
|
||||
extern void make_angry_shk(struct monst *, xchar, xchar);
|
||||
extern void make_angry_shk(struct monst *, coordxy, coordxy);
|
||||
extern int dopay(void);
|
||||
extern boolean paybill(int, boolean);
|
||||
extern void finish_paybill(void);
|
||||
@@ -2462,30 +2462,30 @@ extern boolean billable(struct monst **, struct obj *, char, boolean);
|
||||
extern void addtobill(struct obj *, boolean, boolean, boolean);
|
||||
extern void splitbill(struct obj *, struct obj *);
|
||||
extern void subfrombill(struct obj *, struct monst *);
|
||||
extern long stolen_value(struct obj *, xchar, xchar, boolean, boolean);
|
||||
extern long stolen_value(struct obj *, coordxy, coordxy, boolean, boolean);
|
||||
extern void donate_gold(long, struct monst *, boolean);
|
||||
extern void sellobj_state(int);
|
||||
extern void sellobj(struct obj *, xchar, xchar);
|
||||
extern void sellobj(struct obj *, coordxy, coordxy);
|
||||
extern int doinvbill(int);
|
||||
extern struct monst *shkcatch(struct obj *, xchar, xchar);
|
||||
extern void add_damage(xchar, xchar, long);
|
||||
extern struct monst *shkcatch(struct obj *, coordxy, coordxy);
|
||||
extern void add_damage(coordxy, coordxy, long);
|
||||
extern void fix_shop_damage(void);
|
||||
extern int shk_move(struct monst *);
|
||||
extern void after_shk_move(struct monst *);
|
||||
extern boolean is_fshk(struct monst *);
|
||||
extern void shopdig(int);
|
||||
extern void pay_for_damage(const char *, boolean);
|
||||
extern boolean costly_spot(xchar, xchar);
|
||||
extern struct obj *shop_object(xchar, xchar);
|
||||
extern boolean costly_spot(coordxy, coordxy);
|
||||
extern struct obj *shop_object(coordxy, coordxy);
|
||||
extern void price_quote(struct obj *);
|
||||
extern void shk_chat(struct monst *);
|
||||
extern void check_unpaid_usage(struct obj *, boolean);
|
||||
extern void check_unpaid(struct obj *);
|
||||
extern void costly_gold(xchar, xchar, long, boolean);
|
||||
extern void costly_gold(coordxy, coordxy, long, boolean);
|
||||
extern long get_cost_of_shop_item(struct obj *, int *);
|
||||
extern int oid_price_adjustment(struct obj *, unsigned);
|
||||
extern boolean block_door(xchar, xchar);
|
||||
extern boolean block_entry(xchar, xchar);
|
||||
extern boolean block_door(coordxy, coordxy);
|
||||
extern boolean block_entry(coordxy, coordxy);
|
||||
extern char *shk_your(char *, struct obj *);
|
||||
extern char *Shk_Your(char *, struct obj *);
|
||||
extern void globby_bill_fixup(struct obj *, struct obj *);
|
||||
@@ -2541,34 +2541,34 @@ extern const char * mapfrag_error(struct mapfragment *);
|
||||
extern boolean mapfrag_match(struct mapfragment *, int, int);
|
||||
extern void flip_level(int, boolean);
|
||||
extern void flip_level_rnd(int, boolean);
|
||||
extern boolean check_room(xchar *, xchar *, xchar *, xchar *, boolean);
|
||||
extern boolean create_room(xchar, xchar, xchar, xchar, xchar, xchar, xchar,
|
||||
xchar);
|
||||
extern boolean check_room(coordxy *, coordxy *, coordxy *, coordxy *, boolean);
|
||||
extern boolean create_room(coordxy, coordxy, coordxy, coordxy, coordxy, coordxy, xint16,
|
||||
xint16);
|
||||
extern boolean dig_corridor(coord *, coord *, boolean, schar, schar);
|
||||
extern void fill_special_room(struct mkroom *);
|
||||
extern void wallify_map(int, int, int, int);
|
||||
extern boolean load_special(const char *);
|
||||
extern xchar selection_getpoint(int, int, struct selectionvar *);
|
||||
extern coordxy selection_getpoint(int, int, struct selectionvar *);
|
||||
extern struct selectionvar *selection_new(void);
|
||||
extern void selection_free(struct selectionvar *, boolean);
|
||||
extern struct selectionvar *selection_clone(struct selectionvar *);
|
||||
extern void set_selection_floodfillchk(int(*)(int,int));
|
||||
extern void selection_floodfill(struct selectionvar *, int, int, boolean);
|
||||
extern boolean pm_good_location(int, int, struct permonst *);
|
||||
extern void get_location_coord(xchar *, xchar *, int, struct mkroom *, long);
|
||||
extern void selection_setpoint(int, int, struct selectionvar *, xchar);
|
||||
extern void get_location_coord(coordxy *, coordxy *, int, struct mkroom *, long);
|
||||
extern void selection_setpoint(int, int, struct selectionvar *, coordxy);
|
||||
extern struct selectionvar * selection_not(struct selectionvar *);
|
||||
extern void selection_filter_percent(struct selectionvar *, int);
|
||||
extern int selection_rndcoord(struct selectionvar *, xchar *, xchar *,
|
||||
extern int selection_rndcoord(struct selectionvar *, coordxy *, coordxy *,
|
||||
boolean);
|
||||
extern void selection_do_grow(struct selectionvar *, int);
|
||||
extern void selection_do_line(xchar, xchar, xchar, xchar,
|
||||
extern void selection_do_line(coordxy, coordxy, coordxy, coordxy,
|
||||
struct selectionvar *);
|
||||
extern void selection_do_randline(xchar, xchar, xchar, xchar, schar, schar,
|
||||
extern void selection_do_randline(coordxy, coordxy, coordxy, coordxy, schar, schar,
|
||||
struct selectionvar *);
|
||||
extern struct selectionvar *selection_filter_mapchar(struct selectionvar *,
|
||||
xchar, int);
|
||||
extern void set_floodfillchk_match_under(xchar);
|
||||
coordxy, int);
|
||||
extern void set_floodfillchk_match_under(coordxy);
|
||||
extern void selection_do_ellipse(struct selectionvar *, int, int, int, int,
|
||||
int);
|
||||
extern void selection_do_gradient(struct selectionvar *, long, long, long,
|
||||
@@ -2672,8 +2672,8 @@ extern void sysopt_seduce_set(int);
|
||||
|
||||
extern boolean noteleport_level(struct monst *);
|
||||
extern boolean goodpos(int, int, struct monst *, mmflags_nht);
|
||||
extern boolean enexto(coord *, xchar, xchar, struct permonst *);
|
||||
extern boolean enexto_core(coord *, xchar, xchar, struct permonst *,
|
||||
extern boolean enexto(coord *, coordxy, coordxy, struct permonst *);
|
||||
extern boolean enexto_core(coord *, coordxy, coordxy, struct permonst *,
|
||||
mmflags_nht);
|
||||
extern void teleds(int, int, int);
|
||||
extern boolean safe_teleds(int);
|
||||
@@ -2724,9 +2724,9 @@ extern void obj_move_timers(struct obj *, struct obj *);
|
||||
extern void obj_split_timers(struct obj *, struct obj *);
|
||||
extern void obj_stop_timers(struct obj *);
|
||||
extern boolean obj_has_timer(struct obj *, short);
|
||||
extern void spot_stop_timers(xchar, xchar, short);
|
||||
extern long spot_time_expires(xchar, xchar, short);
|
||||
extern long spot_time_left(xchar, xchar, short);
|
||||
extern void spot_stop_timers(coordxy, coordxy, short);
|
||||
extern long spot_time_expires(coordxy, coordxy, short);
|
||||
extern long spot_time_left(coordxy, coordxy, short);
|
||||
extern boolean obj_is_local(struct obj *);
|
||||
extern void save_timers(NHFILE *, int);
|
||||
extern void restore_timers(NHFILE *, int, long);
|
||||
@@ -2757,8 +2757,8 @@ extern int erode_obj(struct obj *, const char *, int, int);
|
||||
extern boolean grease_protect(struct obj *, const char *, struct monst *);
|
||||
extern struct trap *maketrap(int, int, int);
|
||||
extern void fall_through(boolean, unsigned);
|
||||
extern struct monst *animate_statue(struct obj *, xchar, xchar, int, int *);
|
||||
extern struct monst *activate_statue_trap(struct trap *, xchar, xchar,
|
||||
extern struct monst *animate_statue(struct obj *, coordxy, coordxy, int, int *);
|
||||
extern struct monst *activate_statue_trap(struct trap *, coordxy, coordxy,
|
||||
boolean);
|
||||
extern void set_utrap(unsigned, unsigned);
|
||||
extern void reset_utrap(boolean);
|
||||
@@ -2774,9 +2774,9 @@ extern void float_up(void);
|
||||
extern void fill_pit(int, int);
|
||||
extern int float_down(long, long);
|
||||
extern void climb_pit(void);
|
||||
extern boolean fire_damage(struct obj *, boolean, xchar, xchar);
|
||||
extern int fire_damage_chain(struct obj *, boolean, boolean, xchar, xchar);
|
||||
extern boolean lava_damage(struct obj *, xchar, xchar);
|
||||
extern boolean fire_damage(struct obj *, boolean, coordxy, coordxy);
|
||||
extern int fire_damage_chain(struct obj *, boolean, boolean, coordxy, coordxy);
|
||||
extern boolean lava_damage(struct obj *, coordxy, coordxy);
|
||||
extern void acid_damage(struct obj *);
|
||||
extern int water_damage(struct obj *, const char *, boolean);
|
||||
extern void water_damage_chain(struct obj *, boolean);
|
||||
@@ -2807,7 +2807,7 @@ extern void sink_into_lava(void);
|
||||
extern void sokoban_guilt(void);
|
||||
extern const char * trapname(int, boolean);
|
||||
extern void ignite_items(struct obj *);
|
||||
extern void trap_ice_effects(xchar x, xchar y, boolean ice_is_melting);
|
||||
extern void trap_ice_effects(coordxy x, coordxy y, boolean ice_is_melting);
|
||||
extern void trap_sanity_check(void);
|
||||
|
||||
/* ### u_init.c ### */
|
||||
@@ -3261,7 +3261,7 @@ extern void nethack_enter_windows(void);
|
||||
extern void amulet(void);
|
||||
extern int mon_has_amulet(struct monst *);
|
||||
extern int mon_has_special(struct monst *);
|
||||
extern void choose_stairs(xchar *, xchar *, boolean);
|
||||
extern void choose_stairs(coordxy *, coordxy *, boolean);
|
||||
extern int tactics(struct monst *);
|
||||
extern boolean has_aggravatables(struct monst *);
|
||||
extern void aggravate(void);
|
||||
@@ -3281,7 +3281,7 @@ extern void worm_move(struct monst *);
|
||||
extern void worm_nomove(struct monst *);
|
||||
extern void wormgone(struct monst *);
|
||||
extern int wormhitu(struct monst *);
|
||||
extern void cutworm(struct monst *, xchar, xchar, boolean);
|
||||
extern void cutworm(struct monst *, coordxy, coordxy, boolean);
|
||||
extern void see_wsegs(struct monst *);
|
||||
extern void detect_wsegs(struct monst *, boolean);
|
||||
extern void save_worm(NHFILE *);
|
||||
@@ -3290,7 +3290,7 @@ extern void place_wsegs(struct monst *, struct monst *);
|
||||
extern void sanity_check_worm(struct monst *);
|
||||
extern void wormno_sanity_check(void);
|
||||
extern void remove_worm(struct monst *);
|
||||
extern void place_worm_tail_randomly(struct monst *, xchar, xchar);
|
||||
extern void place_worm_tail_randomly(struct monst *, coordxy, coordxy);
|
||||
extern int size_wseg(struct monst *);
|
||||
extern int count_wsegs(struct monst *);
|
||||
extern boolean worm_known(struct monst *);
|
||||
@@ -3333,8 +3333,8 @@ extern void learnwand(struct obj *);
|
||||
extern int bhitm(struct monst *, struct obj *);
|
||||
extern void release_hold(void);
|
||||
extern void probe_monster(struct monst *);
|
||||
extern boolean get_obj_location(struct obj *, xchar *, xchar *, int);
|
||||
extern boolean get_mon_location(struct monst *, xchar *, xchar *, int);
|
||||
extern boolean get_obj_location(struct obj *, coordxy *, coordxy *, int);
|
||||
extern boolean get_mon_location(struct monst *, coordxy *, coordxy *, int);
|
||||
extern struct monst *get_container_location(struct obj * obj, int *, int *);
|
||||
extern struct monst *montraits(struct obj *, coord *, boolean);
|
||||
extern struct monst *revive(struct obj *, boolean);
|
||||
@@ -3373,12 +3373,12 @@ extern struct monst *bhit(int, int, int, enum bhit_call_types,
|
||||
extern struct monst *boomhit(struct obj *, int, int);
|
||||
extern int zhitm(struct monst *, int, int, struct obj **);
|
||||
extern int burn_floor_objects(int, int, boolean, boolean);
|
||||
extern void buzz(int, int, xchar, xchar, int, int);
|
||||
extern void dobuzz(int, int, xchar, xchar, int, int, boolean);
|
||||
extern void melt_ice(xchar, xchar, const char *);
|
||||
extern void start_melt_ice_timeout(xchar, xchar, long);
|
||||
extern void buzz(int, int, coordxy, coordxy, int, int);
|
||||
extern void dobuzz(int, int, coordxy, coordxy, int, int, boolean);
|
||||
extern void melt_ice(coordxy, coordxy, const char *);
|
||||
extern void start_melt_ice_timeout(coordxy, coordxy, long);
|
||||
extern void melt_ice_away(union any *, long);
|
||||
extern int zap_over_floor(xchar, xchar, int, boolean *, short);
|
||||
extern int zap_over_floor(coordxy, coordxy, int, boolean *, short);
|
||||
extern void fracture_rock(struct obj *);
|
||||
extern boolean break_statue(struct obj *);
|
||||
extern boolean u_adtyp_resistance_obj(int);
|
||||
|
||||
@@ -59,17 +59,29 @@
|
||||
#endif /* DUMB */
|
||||
|
||||
/*
|
||||
* type xchar: small integers (typedef'd as signed char,
|
||||
* so in the range -127 - 127), usually coordinates.
|
||||
* type xint8: small integers (typedef'd as signed,
|
||||
* in the range -127 - 127).
|
||||
*/
|
||||
typedef schar xchar;
|
||||
typedef int8_t xint8;
|
||||
/*
|
||||
* type coordxy: integers (typedef'd as signed,
|
||||
* in the range −32768 to 32767), mostly coordinates.
|
||||
* Note that in 2022, screen coordinates easily
|
||||
* surpass an upper limit of 127.
|
||||
*/
|
||||
typedef int16_t coordxy;
|
||||
/*
|
||||
* type xint16: integers (typedef'd as signed,
|
||||
* in the range −32768 to 32767), non-coordinates.
|
||||
*/
|
||||
typedef int16_t xint16;
|
||||
|
||||
#ifdef __MINGW32__
|
||||
/* Resolve conflict with Qt 5 and MinGW-w32 */
|
||||
typedef unsigned char boolean; /* 0 or 1 */
|
||||
#else
|
||||
#ifndef SKIP_BOOLEAN
|
||||
typedef xchar boolean; /* 0 or 1 */
|
||||
typedef schar boolean; /* 0 or 1 */
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
@@ -170,13 +170,13 @@ typedef union str_or_len {
|
||||
/* lev_region from sp_lev.h */
|
||||
typedef struct {
|
||||
struct {
|
||||
xchar x1, y1, x2, y2;
|
||||
coordxy x1, y1, x2, y2;
|
||||
} inarea;
|
||||
struct {
|
||||
xchar x1, y1, x2, y2;
|
||||
coordxy x1, y1, x2, y2;
|
||||
} delarea;
|
||||
boolean in_islev, del_islev;
|
||||
xchar rtype, padding;
|
||||
coordxy rtype, padding;
|
||||
Str_or_Len rname;
|
||||
} lev_region;
|
||||
|
||||
@@ -251,9 +251,9 @@ struct sortloot_item {
|
||||
char *str; /* result of loot_xname(obj) in some cases, otherwise null */
|
||||
int indx; /* signed int, because sortloot()'s qsort comparison routine
|
||||
assumes (a->indx - b->indx) might yield a negative result */
|
||||
xchar orderclass; /* order rather than object class; 0 => not yet init'd */
|
||||
xchar subclass; /* subclass for some classes */
|
||||
xchar disco; /* discovery status */
|
||||
xint16 orderclass; /* order rather than object class; 0 => not yet init'd */
|
||||
xint16 subclass; /* subclass for some classes */
|
||||
xint16 disco; /* discovery status */
|
||||
};
|
||||
typedef struct sortloot_item Loot;
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
#define GD_DESTROYGOLD 0x02
|
||||
|
||||
struct fakecorridor {
|
||||
xchar fx, fy;
|
||||
coordxy fx, fy;
|
||||
schar ftyp; /* from struct rm's typ */
|
||||
uchar flags; /* also from struct rm; an unsigned 5-bit field there */
|
||||
};
|
||||
@@ -77,10 +77,10 @@ struct fakecorridor {
|
||||
struct egd {
|
||||
int fcbeg, fcend; /* fcend: first unused pos */
|
||||
int vroom; /* room number of the vault */
|
||||
xchar gdx, gdy; /* goal of guard's walk */
|
||||
xchar ogx, ogy; /* guard's last position */
|
||||
coordxy gdx, gdy; /* goal of guard's walk */
|
||||
coordxy ogx, ogy; /* guard's last position */
|
||||
d_level gdlevel; /* level (& dungeon) guard was created in */
|
||||
xchar warncnt; /* number of warnings to follow */
|
||||
xint16 warncnt; /* number of warnings to follow */
|
||||
Bitfield(gddone, 1); /* true iff guard has released player */
|
||||
Bitfield(witness, 2); /* the guard saw you do something */
|
||||
Bitfield(unused, 5);
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
/* mkroom.h - types and structures for room and shop initialization */
|
||||
|
||||
struct mkroom {
|
||||
xchar lx, hx, ly, hy; /* usually xchar, but hx may be -1 */
|
||||
coordxy lx, hx, ly, hy; /* usually coordxy, but hx may be -1 */
|
||||
schar rtype; /* type of room (zoo, throne, etc...) */
|
||||
schar orig_rtype; /* same as rtype, but not zeroed later */
|
||||
schar rlit; /* is the room lit ? */
|
||||
|
||||
@@ -96,8 +96,8 @@ struct monst {
|
||||
uchar m_lev; /* adjusted difficulty level of monster */
|
||||
aligntyp malign; /* alignment of this monster, relative to the
|
||||
player (positive = good to kill) */
|
||||
xchar mx, my;
|
||||
xchar mux, muy; /* where the monster thinks you are */
|
||||
coordxy mx, my;
|
||||
coordxy mux, muy; /* where the monster thinks you are */
|
||||
#define MTSZ 4
|
||||
/* mtrack[0..2] is used to keep extra data when migrating the monster */
|
||||
coord mtrack[MTSZ]; /* monster track */
|
||||
@@ -174,8 +174,8 @@ struct monst {
|
||||
#define STRAT_XMASK 0x00ff0000L
|
||||
#define STRAT_YMASK 0x0000ff00L
|
||||
#define STRAT_GOAL 0x000000ffL
|
||||
#define STRAT_GOALX(s) ((xchar) ((s & STRAT_XMASK) >> 16))
|
||||
#define STRAT_GOALY(s) ((xchar) ((s & STRAT_YMASK) >> 8))
|
||||
#define STRAT_GOALX(s) ((coordxy) ((s & STRAT_XMASK) >> 16))
|
||||
#define STRAT_GOALY(s) ((coordxy) ((s & STRAT_YMASK) >> 8))
|
||||
|
||||
long mtrapseen; /* bitmap of traps we've been trapped in */
|
||||
long mlstmv; /* for catching up with lost time */
|
||||
@@ -185,7 +185,7 @@ struct monst {
|
||||
struct obj *minvent; /* mon's inventory */
|
||||
struct obj *mw; /* mon's weapon */
|
||||
long misc_worn_check; /* mon's wornmask */
|
||||
xchar weapon_check; /* flag for whether to try switching weapons */
|
||||
xint16 weapon_check; /* flag for whether to try switching weapons */
|
||||
|
||||
int meating; /* monster is eating timeout */
|
||||
struct mextra *mextra; /* point to mextra struct */
|
||||
|
||||
@@ -36,7 +36,7 @@ struct obj {
|
||||
|
||||
struct obj *cobj; /* contents list for containers */
|
||||
unsigned o_id;
|
||||
xchar ox, oy;
|
||||
coordxy ox, oy;
|
||||
short otyp; /* object class number */
|
||||
unsigned owt;
|
||||
long quan; /* number of items */
|
||||
@@ -66,7 +66,7 @@ struct obj {
|
||||
char invlet; /* designation in inventory */
|
||||
char oartifact; /* artifact array index */
|
||||
|
||||
xchar where; /* where the object thinks it is */
|
||||
xint8 where; /* where the object thinks it is */
|
||||
#define OBJ_FREE 0 /* object not attached to anything */
|
||||
#define OBJ_FLOOR 1 /* object on floor */
|
||||
#define OBJ_CONTAINED 2 /* object in a container */
|
||||
@@ -77,7 +77,7 @@ struct obj {
|
||||
#define OBJ_ONBILL 7 /* object on shk bill */
|
||||
#define OBJ_LUAFREE 8 /* object has been dealloc'd, but is ref'd by lua */
|
||||
#define NOBJ_STATES 9
|
||||
xchar timed; /* # of fuses (timers) attached to this obj */
|
||||
xint16 timed; /* # of fuses (timers) attached to this obj */
|
||||
|
||||
Bitfield(cursed, 1);
|
||||
Bitfield(blessed, 1);
|
||||
@@ -140,8 +140,8 @@ struct obj {
|
||||
* overloaded for the destination of migrating
|
||||
* objects (which can't be worn at same time) */
|
||||
unsigned lua_ref_cnt; /* # of lua script references for this object */
|
||||
xchar omigr_from_dnum; /* where obj is migrating from */
|
||||
xchar omigr_from_dlevel; /* where obj is migrating from */
|
||||
xint16 omigr_from_dnum; /* where obj is migrating from */
|
||||
xint16 omigr_from_dlevel; /* where obj is migrating from */
|
||||
struct oextra *oextra; /* pointer to oextra struct */
|
||||
};
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
* Incrementing EDITLEVEL can be used to force invalidation of old bones
|
||||
* and save files.
|
||||
*/
|
||||
#define EDITLEVEL 59
|
||||
#define EDITLEVEL 60
|
||||
|
||||
/*
|
||||
* Development status possibilities.
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
#define RECT_H
|
||||
|
||||
typedef struct nhrect {
|
||||
xchar lx, ly;
|
||||
xchar hx, hy;
|
||||
coordxy lx, ly;
|
||||
coordxy hx, hy;
|
||||
} NhRect;
|
||||
|
||||
#endif /* RECT_H */
|
||||
|
||||
@@ -352,7 +352,7 @@ struct cemetery {
|
||||
/* date+time in string of digits rather than binary */
|
||||
char when[4 + 2 + 2 + 2 + 2 + 2 + 1]; /* "YYYYMMDDhhmmss\0" */
|
||||
/* final resting place spot */
|
||||
xchar frpx, frpy;
|
||||
coordxy frpx, frpy;
|
||||
boolean bonesknown;
|
||||
};
|
||||
|
||||
|
||||
@@ -108,8 +108,8 @@ enum skill_levels {
|
||||
|
||||
/* The hero's skill in various weapons. */
|
||||
struct skills {
|
||||
xchar skill;
|
||||
xchar max_skill;
|
||||
xint16 skill;
|
||||
xint16 max_skill;
|
||||
unsigned short advance;
|
||||
};
|
||||
|
||||
@@ -122,8 +122,8 @@ struct skills {
|
||||
|
||||
/* Initial skill matrix structure; used in u_init.c and weapon.c */
|
||||
struct def_skill {
|
||||
xchar skill;
|
||||
xchar skmax;
|
||||
xint16 skill;
|
||||
xint16 skmax;
|
||||
};
|
||||
|
||||
#endif /* SKILLS_H */
|
||||
|
||||
@@ -99,31 +99,32 @@ struct sp_coder {
|
||||
#define packed_coord long
|
||||
typedef uint32_t getloc_flags_t;
|
||||
typedef struct {
|
||||
xchar is_random;
|
||||
xint16 is_random;
|
||||
getloc_flags_t getloc_flags;
|
||||
int x, y;
|
||||
} unpacked_coord;
|
||||
|
||||
typedef struct {
|
||||
xchar init_style; /* one of LVLINIT_foo */
|
||||
xint16 init_style; /* one of LVLINIT_foo */
|
||||
long flags;
|
||||
schar filling;
|
||||
boolean init_present, padding;
|
||||
char fg, bg;
|
||||
boolean smoothed, joined;
|
||||
xchar lit, walled;
|
||||
xint16 lit, walled;
|
||||
boolean icedpools;
|
||||
int corrwid, wallthick;
|
||||
boolean rm_deadends;
|
||||
} lev_init;
|
||||
|
||||
typedef struct {
|
||||
xchar wall, pos, secret, mask;
|
||||
xint16 wall, pos, secret, mask;
|
||||
} room_door;
|
||||
|
||||
typedef struct {
|
||||
packed_coord coord;
|
||||
xchar x, y, type;
|
||||
coordxy x, y;
|
||||
xint16 type;
|
||||
boolean spider_on_web;
|
||||
boolean seen;
|
||||
} spltrap;
|
||||
@@ -133,7 +134,8 @@ typedef struct {
|
||||
short id;
|
||||
unsigned int sp_amask; /* splev amask */
|
||||
packed_coord coord;
|
||||
xchar x, y, class, appear;
|
||||
coordxy x, y;
|
||||
xint16 class, appear;
|
||||
schar peaceful, asleep;
|
||||
short female, invis, cancelled, revived, avenge, fleeing, blinded,
|
||||
paralyzed, stunned, confused, waiting;
|
||||
@@ -147,7 +149,8 @@ typedef struct {
|
||||
int corpsenm;
|
||||
short id, spe;
|
||||
packed_coord coord;
|
||||
xchar x, y, class, containment;
|
||||
coordxy x, y;
|
||||
xint16 class, containment;
|
||||
schar curse_state;
|
||||
int quan;
|
||||
short buried;
|
||||
@@ -158,34 +161,35 @@ typedef struct {
|
||||
|
||||
typedef struct {
|
||||
packed_coord coord;
|
||||
xchar x, y;
|
||||
coordxy x, y;
|
||||
unsigned int sp_amask; /* splev amask */
|
||||
xchar shrine;
|
||||
xint16 shrine;
|
||||
} altar;
|
||||
|
||||
typedef struct {
|
||||
xchar x1, y1, x2, y2;
|
||||
xchar rtype, rlit, rirreg;
|
||||
coordxy x1, y1, x2, y2;
|
||||
xint16 rtype, rlit, rirreg;
|
||||
} region;
|
||||
|
||||
typedef struct {
|
||||
xchar ter, tlit;
|
||||
xint16 ter, tlit;
|
||||
} terrain;
|
||||
|
||||
typedef struct {
|
||||
struct {
|
||||
xchar room;
|
||||
xchar wall;
|
||||
xchar door;
|
||||
xint16 room;
|
||||
xint16 wall;
|
||||
xint16 door;
|
||||
} src, dest;
|
||||
} corridor;
|
||||
|
||||
typedef struct _room {
|
||||
Str_or_Len name;
|
||||
Str_or_Len parent;
|
||||
xchar x, y, w, h;
|
||||
xchar xalign, yalign;
|
||||
xchar rtype, chance, rlit, needfill;
|
||||
coordxy x, y;
|
||||
xint16 w, h;
|
||||
xint16 xalign, yalign;
|
||||
xint16 rtype, chance, rlit, needfill;
|
||||
boolean joined;
|
||||
} room;
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
|
||||
struct spell {
|
||||
short sp_id; /* spell id (== object.otyp) */
|
||||
xchar sp_lev; /* power level */
|
||||
xint16 sp_lev; /* power level */
|
||||
int sp_know; /* knowlege of spell */
|
||||
};
|
||||
|
||||
|
||||
@@ -324,7 +324,7 @@ typedef genericptr genericptr_t; /* (void *) or (char *) */
|
||||
#define CHAR_P char
|
||||
#define SCHAR_P schar
|
||||
#define UCHAR_P uchar
|
||||
#define XCHAR_P xchar
|
||||
#define XCHAR_P coordxy
|
||||
#define SHORT_P short
|
||||
#ifndef SKIP_BOOLEAN
|
||||
#define BOOLEAN_P boolean
|
||||
|
||||
@@ -17,7 +17,7 @@ union vlaunchinfo {
|
||||
|
||||
struct trap {
|
||||
struct trap *ntrap;
|
||||
xchar tx, ty;
|
||||
coordxy tx, ty;
|
||||
d_level dst; /* destination for portals */
|
||||
coord launch;
|
||||
Bitfield(ttyp, 5);
|
||||
|
||||
@@ -81,7 +81,7 @@ struct tile_map_info_t {
|
||||
struct map_info_t {
|
||||
Dimension viewport_width, /* Saved viewport size, so we can */
|
||||
viewport_height; /* clip to cursor on a resize. */
|
||||
xchar t_start[ROWNO], /* Starting column for new info. */
|
||||
coordxy t_start[ROWNO], /* Starting column for new info. */
|
||||
t_stop[ROWNO]; /* Ending column for new info. */
|
||||
|
||||
boolean is_tile; /* true if currently using tiles */
|
||||
@@ -455,7 +455,7 @@ extern void X11_wait_synch(void);
|
||||
#ifdef CLIPPING
|
||||
extern void X11_cliparound(int, int);
|
||||
#endif
|
||||
extern void X11_print_glyph(winid, xchar, xchar, const glyph_info *,
|
||||
extern void X11_print_glyph(winid, coordxy, coordxy, const glyph_info *,
|
||||
const glyph_info *);
|
||||
extern void X11_raw_print(const char *);
|
||||
extern void X11_raw_print_bold(const char *);
|
||||
|
||||
@@ -37,13 +37,13 @@ struct amii_menu {
|
||||
* tty-style windows also, then things will need to change. */
|
||||
/* per-window data */
|
||||
struct amii_WinDesc {
|
||||
xchar type; /* type of window */
|
||||
xint16 type; /* type of window */
|
||||
struct amii_menu menu;
|
||||
boolean active; /* true if window is active */
|
||||
boolean wasup; /* true if menu/text window was already open */
|
||||
short
|
||||
disprows; /* Rows displayed so far (used for paging in message win) */
|
||||
xchar offx, offy; /* offset from topleft of display */
|
||||
coordxy offx, offy; /* offset from topleft of display */
|
||||
short vwx, vwy, vcx, vcy; /* View cursor location */
|
||||
short rows, cols; /* dimensions */
|
||||
short curx, cury; /* current cursor position */
|
||||
|
||||
@@ -92,7 +92,7 @@ extern int curses_select_menu(winid wid, int how, MENU_ITEM_P **selected);
|
||||
extern void curses_mark_synch(void);
|
||||
extern void curses_wait_synch(void);
|
||||
extern void curses_cliparound(int x, int y);
|
||||
extern void curses_print_glyph(winid wid, xchar x, xchar y,
|
||||
extern void curses_print_glyph(winid wid, coordxy x, coordxy y,
|
||||
const glyph_info *, const glyph_info *);
|
||||
extern void curses_raw_print(const char *str);
|
||||
extern void curses_raw_print_bold(const char *str);
|
||||
|
||||
@@ -54,7 +54,7 @@ struct window_procs {
|
||||
#ifdef POSITIONBAR
|
||||
void (*win_update_positionbar)(char *);
|
||||
#endif
|
||||
void (*win_print_glyph)(winid, xchar, xchar,
|
||||
void (*win_print_glyph)(winid, coordxy, coordxy,
|
||||
const glyph_info *, const glyph_info *);
|
||||
void (*win_raw_print)(const char *);
|
||||
void (*win_raw_print_bold)(const char *);
|
||||
@@ -375,7 +375,7 @@ struct chain_procs {
|
||||
#ifdef POSITIONBAR
|
||||
void (*win_update_positionbar)(CARGS, char *);
|
||||
#endif
|
||||
void (*win_print_glyph)(CARGS, winid, xchar, xchar,
|
||||
void (*win_print_glyph)(CARGS, winid, coordxy, coordxy,
|
||||
const glyph_info *,
|
||||
const glyph_info *);
|
||||
void (*win_raw_print)(CARGS, const char *);
|
||||
@@ -452,7 +452,7 @@ extern void safe_cliparound(int, int);
|
||||
#ifdef POSITIONBAR
|
||||
extern void safe_update_positionbar(char *);
|
||||
#endif
|
||||
extern void safe_print_glyph(winid, xchar, xchar,
|
||||
extern void safe_print_glyph(winid, coordxy, coordxy,
|
||||
const glyph_info *, const glyph_info *);
|
||||
extern void safe_raw_print(const char *);
|
||||
extern void safe_raw_print_bold(const char *);
|
||||
|
||||
@@ -46,7 +46,7 @@ typedef struct tty_mi {
|
||||
/* descriptor for tty-based windows */
|
||||
struct WinDesc {
|
||||
int flags; /* window flags */
|
||||
xchar type; /* type of window */
|
||||
xint16 type; /* type of window */
|
||||
boolean active; /* true if window is active */
|
||||
short offx, offy; /* offset from topleft of display */
|
||||
long rows, cols; /* dimensions */
|
||||
@@ -249,7 +249,7 @@ E void tty_cliparound(int, int);
|
||||
#ifdef POSITIONBAR
|
||||
E void tty_update_positionbar(char *);
|
||||
#endif
|
||||
E void tty_print_glyph(winid, xchar, xchar, const glyph_info *,
|
||||
E void tty_print_glyph(winid, coordxy, coordxy, const glyph_info *,
|
||||
const glyph_info *);
|
||||
E void tty_raw_print(const char *);
|
||||
E void tty_raw_print_bold(const char *);
|
||||
|
||||
@@ -22,9 +22,9 @@ struct RoleName {
|
||||
|
||||
struct RoleAdvance {
|
||||
/* "fix" is the fixed amount, "rnd" is the random amount */
|
||||
xchar infix, inrnd; /* at character initialization */
|
||||
xchar lofix, lornd; /* gained per level < g.urole.xlev */
|
||||
xchar hifix, hirnd; /* gained per level >= g.urole.xlev */
|
||||
xint16 infix, inrnd; /* at character initialization */
|
||||
xint16 lofix, lornd; /* gained per level < g.urole.xlev */
|
||||
xint16 hifix, hirnd; /* gained per level >= g.urole.xlev */
|
||||
};
|
||||
|
||||
struct u_have {
|
||||
@@ -198,12 +198,12 @@ struct Role {
|
||||
#define ROLE_CHAOTIC AM_CHAOTIC
|
||||
|
||||
/*** Attributes (from attrib.c and exper.c) ***/
|
||||
xchar attrbase[A_MAX]; /* lowest initial attributes */
|
||||
xchar attrdist[A_MAX]; /* distribution of initial attributes */
|
||||
xint16 attrbase[A_MAX]; /* lowest initial attributes */
|
||||
xint16 attrdist[A_MAX]; /* distribution of initial attributes */
|
||||
struct RoleAdvance hpadv; /* hit point advancement */
|
||||
struct RoleAdvance enadv; /* energy advancement */
|
||||
xchar xlev; /* cutoff experience level */
|
||||
xchar initrecord; /* initial alignment record */
|
||||
xint16 xlev; /* cutoff experience level */
|
||||
xint16 initrecord; /* initial alignment record */
|
||||
|
||||
/*** Spell statistics (from spell.c) ***/
|
||||
int spelbase; /* base spellcasting penalty */
|
||||
@@ -258,8 +258,8 @@ struct Race {
|
||||
hatemask; /* bit mask of always hostile */
|
||||
|
||||
/*** Attributes ***/
|
||||
xchar attrmin[A_MAX]; /* minimum allowable attribute */
|
||||
xchar attrmax[A_MAX]; /* maximum allowable attribute */
|
||||
xint16 attrmin[A_MAX]; /* minimum allowable attribute */
|
||||
xint16 attrmax[A_MAX]; /* maximum allowable attribute */
|
||||
struct RoleAdvance hpadv; /* hit point advancement */
|
||||
struct RoleAdvance enadv; /* energy advancement */
|
||||
#if 0 /* DEFERRED */
|
||||
@@ -347,11 +347,11 @@ enum utotypes {
|
||||
|
||||
/*** Information about the player ***/
|
||||
struct you {
|
||||
xchar ux, uy; /* current map coordinates */
|
||||
coordxy ux, uy; /* current map coordinates */
|
||||
schar dx, dy, dz; /* direction of move (or zap or ... ) */
|
||||
schar di; /* direction of FF */
|
||||
xchar tx, ty; /* destination of travel */
|
||||
xchar ux0, uy0; /* initial position FF */
|
||||
coordxy tx, ty; /* destination of travel */
|
||||
coordxy ux0, uy0; /* initial position FF */
|
||||
d_level uz, uz0; /* your level on this and the previous turn */
|
||||
d_level utolev; /* level monster teleported you to, or uz */
|
||||
uchar utotype; /* bitmask of goto_level() flags for utolev */
|
||||
@@ -455,7 +455,7 @@ struct you {
|
||||
uhppeak; /* highest value of uhpmax so far */
|
||||
int uen, uenmax, /* magical energy, aka spell power */
|
||||
uenpeak; /* highest value of uenmax so far */
|
||||
xchar uhpinc[MAXULEV], /* increases to uhpmax for each level gain */
|
||||
xint16 uhpinc[MAXULEV], /* increases to uhpmax for each level gain */
|
||||
ueninc[MAXULEV]; /* increases to uenmax for each level gain */
|
||||
int ugangr; /* if the gods are angry at you */
|
||||
int ugifts; /* number of artifacts bestowed */
|
||||
@@ -474,7 +474,7 @@ struct you {
|
||||
int ugrave_arise; /* you die and become something aside from a ghost */
|
||||
int weapon_slots; /* unused skill slots */
|
||||
int skills_advanced; /* # of advances made so far */
|
||||
xchar skill_record[P_SKILL_LIMIT]; /* skill advancements */
|
||||
xint16 skill_record[P_SKILL_LIMIT]; /* skill advancements */
|
||||
struct skills weapon_skills[P_NUM_SKILLS];
|
||||
boolean twoweap; /* KMH -- Using two-weapon combat */
|
||||
short mcham; /* vampire mndx if shapeshifted to bat/cloud */
|
||||
|
||||
Reference in New Issue
Block a user