Merge remote-tracking branch 'origin/NetHack-3.6.0'

This commit is contained in:
keni
2017-10-14 16:00:23 -04:00
45 changed files with 1998 additions and 202 deletions

View File

@@ -536,11 +536,11 @@ E int FDECL(thitmonst, (struct monst *, struct obj *));
E int FDECL(hero_breaks, (struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P));
E int FDECL(breaks, (struct obj *, XCHAR_P, XCHAR_P));
E void FDECL(release_camera_demon, (struct obj *, XCHAR_P, XCHAR_P));
E void FDECL(breakobj,
(struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P, BOOLEAN_P));
E void FDECL(breakobj, (struct obj *, XCHAR_P, XCHAR_P, BOOLEAN_P, BOOLEAN_P));
E boolean FDECL(breaktest, (struct obj *));
E boolean FDECL(walk_path, (coord *, coord *,
boolean (*)(genericptr, int, int), genericptr_t));
E boolean FDECL(hurtle_jump, (genericptr_t, int, int));
E boolean FDECL(hurtle_step, (genericptr_t, int, int));
/* ### drawing.c ### */
@@ -2487,6 +2487,7 @@ E void NDECL(port_help);
E void FDECL(sethanguphandler, (void (*)(int)));
E boolean NDECL(authorize_wizard_mode);
E boolean FDECL(check_user_string, (char *));
E char *NDECL(get_login_name);
#endif /* UNIX */
/* ### unixtty.c ### */

View File

@@ -191,6 +191,7 @@ struct instance_flags {
* behaviour of various NetHack functions and probably warrant
* a structure of their own elsewhere some day.
*/
boolean herecmd_menu; /* use menu when mouseclick on yourself */
boolean invis_goldsym; /* gold symbol is ' '? */
int parse_config_file_src; /* hack for parse_config_line() */
int in_lava_effects; /* hack for Boots_off() */

View File

@@ -946,6 +946,20 @@ static const char *pet_mark_small_xpm[] = {
"..X.."
};
/* XPM */
static const char *pile_mark_xpm[] = {
/* width height ncolors chars_per_pixel */
"5 5 2 1",
/* colors */
". c None",
"X c #00FF00",
/* pixels */
"..X..",
"..X..",
"XXXXX",
"..X..",
"..X.."
};
/* XPM */
static const char *satiated_xpm[] = {
/* width height ncolors chars_per_pixel */
"40 40 23 1",

View File

@@ -242,6 +242,7 @@ E boolean exit_x_event; /* exit condition for event loop */
#define EXIT_ON_EXIT 2
#define EXIT_ON_SENT_EVENT 3
E int click_x, click_y, click_button, updated_inventory;
E boolean plsel_ask_name;
typedef struct {
Boolean slow; /* issue prompts between map and message wins */
@@ -334,6 +335,12 @@ E void FDECL(algn_key,
E void FDECL(ec_delete, (Widget, XEvent *, String *, Cardinal *));
E void FDECL(ec_key, (Widget, XEvent *, String *,
Cardinal *)); /* extended command action */
E void FDECL(plsel_quit, (Widget, XEvent *, String *,
Cardinal *)); /* player selection dialog */
E void FDECL(plsel_play, (Widget, XEvent *, String *,
Cardinal *)); /* player selection dialog */
E void FDECL(plsel_randomize, (Widget, XEvent *, String *,
Cardinal *)); /* player selection dialog */
E void NDECL(release_extended_cmds);
/* ### winstatus.c ### */

View File

@@ -15,6 +15,7 @@ typedef union any {
int a_int;
char a_char;
schar a_schar;
uchar a_uchar;
unsigned int a_uint;
long a_long;
unsigned long a_ulong;
@@ -23,6 +24,8 @@ typedef union any {
unsigned long *a_ulptr;
unsigned *a_uptr;
const char *a_string;
int NDECL((*a_nfunc));
unsigned long a_mask32; /* used by status highlighting */
/* add types as needed */
} anything;
#define ANY_P union any /* avoid typedef in prototypes */
@@ -45,6 +48,7 @@ enum any_types {
ANY_LPTR, /* pointer to long */
ANY_ULPTR, /* pointer to unsigned long */
ANY_STR, /* pointer to null-terminated char string */
ANY_NFUNC, /* pointer to function taking no args, returning int */
ANY_MASK32 /* 32-bit mask (stored as unsigned long) */
};

View File

@@ -227,7 +227,8 @@
&& !BFlying)
/* May touch surface; does not override any others */
#define Wwalking (u.uprops[WWALKING].extrinsic && !Is_waterlevel(&u.uz))
#define EWwalking u.uprops[WWALKING].extrinsic
#define Wwalking (EWwalking && !Is_waterlevel(&u.uz))
/* Don't get wet, can't go under water; overrides others except levitation */
/* Wwalking is meaningless on water level */