Merge branch 'NetHack-3.6'
This commit is contained in:
+4
-2
@@ -1,4 +1,4 @@
|
|||||||
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.5 $ $NHDT-Date: 1558171542 2019/05/18 09:25:42 $
|
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.8 $ $NHDT-Date: 1558248715 2019/05/19 06:51:55 $
|
||||||
|
|
||||||
This fixes36.3 file is here to capture information about updates in the 3.6.x
|
This fixes36.3 file is here to capture information about updates in the 3.6.x
|
||||||
lineage following the release of 3.6.2 in May 2019. Please note, however,
|
lineage following the release of 3.6.2 in May 2019. Please note, however,
|
||||||
@@ -15,11 +15,11 @@ when examining the map with '/' or ';', picking a symbol which is used for
|
|||||||
more than 4 things yielded a sentence lacking its terminating period
|
more than 4 things yielded a sentence lacking its terminating period
|
||||||
billing and payment issue as a result of glob coalescing
|
billing and payment issue as a result of glob coalescing
|
||||||
glob pricing did not consider weight properly
|
glob pricing did not consider weight properly
|
||||||
|
glob shop interaction improved to handle more of the expected scenarios
|
||||||
|
|
||||||
|
|
||||||
Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository
|
Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository
|
||||||
------------------------------------------------------------------
|
------------------------------------------------------------------
|
||||||
glob shop interaction improved to handle more of the expected scenarios
|
|
||||||
|
|
||||||
|
|
||||||
Platform- and/or Interface-Specific Fixes or Features
|
Platform- and/or Interface-Specific Fixes or Features
|
||||||
@@ -33,6 +33,8 @@ curses: when all available lines in the message window are in use,
|
|||||||
leaving part of longer underlying line's text visible
|
leaving part of longer underlying line's text visible
|
||||||
curses: if message window is only one line, cancelling some prompts with ESC
|
curses: if message window is only one line, cancelling some prompts with ESC
|
||||||
left the prompts visible on the message line instead of erasing them
|
left the prompts visible on the message line instead of erasing them
|
||||||
|
curses: support EDIT_GETLIN (but like with tty, it's disabled by default) to
|
||||||
|
pre-load an earlier response as the default answer for some prompts
|
||||||
Windows: some startup error messages were not being delivered successfully
|
Windows: some startup error messages were not being delivered successfully
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+11
-5
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 config.h $NHDT-Date: 1478740241 2016/11/10 01:10:41 $ $NHDT-Branch: master $:$NHDT-Revision: 1.100 $ */
|
/* NetHack 3.6 config.h $NHDT-Date: 1558248715 2019/05/19 06:51:55 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.122 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Robert Patrick Rankin, 2016. */
|
/*-Copyright (c) Robert Patrick Rankin, 2016. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -80,7 +80,7 @@
|
|||||||
#ifdef __BEOS__
|
#ifdef __BEOS__
|
||||||
#define BEOS_GRAPHICS /* (optional) */
|
#define BEOS_GRAPHICS /* (optional) */
|
||||||
#define DEFAULT_WINDOW_SYS "BeOS" /* "tty" */
|
#define DEFAULT_WINDOW_SYS "BeOS" /* "tty" */
|
||||||
#ifndef HACKDIR /* override the default g.hackdir below */
|
#ifndef HACKDIR /* override the default hackdir below */
|
||||||
#define HACKDIR "/boot/apps/NetHack"
|
#define HACKDIR "/boot/apps/NetHack"
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
@@ -526,9 +526,15 @@ typedef unsigned char uchar;
|
|||||||
* probably not useful for normal play */
|
* probably not useful for normal play */
|
||||||
/* #define EXTRA_SANITY_CHECKS */
|
/* #define EXTRA_SANITY_CHECKS */
|
||||||
|
|
||||||
/* EDIT_GETLIN makes the string input in TTY, Qt4, and X11
|
/* EDIT_GETLIN makes the string input in TTY, curses, Qt4, and X11
|
||||||
so some prompts will remember the previously input text
|
for some prompts be pre-loaded with previously input text (from
|
||||||
(within the same session) */
|
a previous instance of the same prompt) as the default response.
|
||||||
|
In some cases, the previous instance can only be within the same
|
||||||
|
session; in others, such as #annotate, the previous input can be
|
||||||
|
from any session because the response is saved and restored with
|
||||||
|
the map. The 'edit' capability is just <delete> or <backspace>
|
||||||
|
to strip off characters at the end, or <escape> to discard the
|
||||||
|
whole thing, then type a new end for the text. */
|
||||||
/* #define EDIT_GETLIN */
|
/* #define EDIT_GETLIN */
|
||||||
|
|
||||||
/* #define DUMPLOG */ /* End-of-game dump logs */
|
/* #define DUMPLOG */ /* End-of-game dump logs */
|
||||||
|
|||||||
+3
-3
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 invent.c $NHDT-Date: 1555196229 2019/04/13 22:57:09 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.253 $ */
|
/* NetHack 3.6 invent.c $NHDT-Date: 1558234540 2019/05/19 02:55:40 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.258 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Derek S. Ray, 2015. */
|
/*-Copyright (c) Derek S. Ray, 2015. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -3569,7 +3569,8 @@ register struct obj *otmp, *obj;
|
|||||||
if (obj->oclass == COIN_CLASS)
|
if (obj->oclass == COIN_CLASS)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
if (obj->bypass != otmp->bypass)
|
if (obj->bypass != otmp->bypass
|
||||||
|
|| obj->cursed != otmp->cursed || obj->blessed != otmp->blessed)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
if (obj->globby)
|
if (obj->globby)
|
||||||
@@ -3579,7 +3580,6 @@ register struct obj *otmp, *obj;
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
if (obj->unpaid != otmp->unpaid || obj->spe != otmp->spe
|
if (obj->unpaid != otmp->unpaid || obj->spe != otmp->spe
|
||||||
|| obj->cursed != otmp->cursed || obj->blessed != otmp->blessed
|
|
||||||
|| obj->no_charge != otmp->no_charge || obj->obroken != otmp->obroken
|
|| obj->no_charge != otmp->no_charge || obj->obroken != otmp->obroken
|
||||||
|| obj->otrapped != otmp->otrapped || obj->lamplit != otmp->lamplit)
|
|| obj->otrapped != otmp->otrapped || obj->lamplit != otmp->lamplit)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|||||||
@@ -4932,7 +4932,7 @@ struct obj *obj_absorber, *obj_absorbed;
|
|||||||
amount = bp->price;
|
amount = bp->price;
|
||||||
bill_dummy_object(obj_absorbed);
|
bill_dummy_object(obj_absorbed);
|
||||||
verbalize(
|
verbalize(
|
||||||
"You owe me %ld %s for my %s that %s with your%s",
|
"You owe me %ld %s for my %s that you %s with your%s",
|
||||||
amount, currency(amount), obj_typename(obj_absorbed->otyp),
|
amount, currency(amount), obj_typename(obj_absorbed->otyp),
|
||||||
ANGRY(shkp) ? "had the audacity to mix" :
|
ANGRY(shkp) ? "had the audacity to mix" :
|
||||||
"just mixed",
|
"just mixed",
|
||||||
|
|||||||
+15
-5
@@ -448,15 +448,14 @@ curses_message_win_getline(const char *prompt, char *answer, int buffer)
|
|||||||
int ch;
|
int ch;
|
||||||
WINDOW *win = curses_get_nhwin(MESSAGE_WIN);
|
WINDOW *win = curses_get_nhwin(MESSAGE_WIN);
|
||||||
int border_space = 0;
|
int border_space = 0;
|
||||||
int len = 0; /* of answer string */
|
int len; /* of answer string */
|
||||||
boolean border = curses_window_has_border(MESSAGE_WIN);
|
boolean border = curses_window_has_border(MESSAGE_WIN);
|
||||||
|
|
||||||
*answer = '\0';
|
|
||||||
orig_cursor = curs_set(0);
|
orig_cursor = curs_set(0);
|
||||||
|
|
||||||
curses_get_window_size(MESSAGE_WIN, &height, &width);
|
curses_get_window_size(MESSAGE_WIN, &height, &width);
|
||||||
if (border) {
|
if (border) {
|
||||||
height -= 2, width -= 2;
|
/* height -= 2, width -= 2; -- sizes already account for border */
|
||||||
border_space = 1;
|
border_space = 1;
|
||||||
if (mx < 1)
|
if (mx < 1)
|
||||||
mx = 1;
|
mx = 1;
|
||||||
@@ -470,10 +469,21 @@ curses_message_win_getline(const char *prompt, char *answer, int buffer)
|
|||||||
maxlines = buffer / width * 2;
|
maxlines = buffer / width * 2;
|
||||||
Strcpy(tmpbuf, prompt);
|
Strcpy(tmpbuf, prompt);
|
||||||
Strcat(tmpbuf, " ");
|
Strcat(tmpbuf, " ");
|
||||||
|
p_answer = tmpbuf + strlen(tmpbuf);
|
||||||
|
#ifdef EDIT_GETLIN
|
||||||
|
len = (int) strlen(answer);
|
||||||
|
if (len >= buffer) {
|
||||||
|
len = buffer - 1;
|
||||||
|
answer[len] = '\0';
|
||||||
|
}
|
||||||
|
Strcpy(p_answer, answer);
|
||||||
|
#else
|
||||||
|
len = 0;
|
||||||
|
*answer = '\0';
|
||||||
|
#endif
|
||||||
nlines = curses_num_lines(tmpbuf, width);
|
nlines = curses_num_lines(tmpbuf, width);
|
||||||
maxlines += nlines * 2;
|
maxlines += nlines * 2;
|
||||||
linestarts = (char **) alloc((unsigned) (maxlines * sizeof (char *)));
|
linestarts = (char **) alloc((unsigned) (maxlines * sizeof (char *)));
|
||||||
p_answer = tmpbuf + strlen(tmpbuf);
|
|
||||||
linestarts[0] = tmpbuf;
|
linestarts[0] = tmpbuf;
|
||||||
|
|
||||||
if (mx > border_space) { /* newline */
|
if (mx > border_space) { /* newline */
|
||||||
@@ -531,7 +541,7 @@ curses_message_win_getline(const char *prompt, char *answer, int buffer)
|
|||||||
wmove(win, my, mx);
|
wmove(win, my, mx);
|
||||||
curs_set(1);
|
curs_set(1);
|
||||||
wrefresh(win);
|
wrefresh(win);
|
||||||
curses_got_input(); /* despite its name, before rathre than after... */
|
curses_got_input(); /* despite its name, before rather than after... */
|
||||||
#ifdef PDCURSES
|
#ifdef PDCURSES
|
||||||
ch = wgetch(win);
|
ch = wgetch(win);
|
||||||
#else
|
#else
|
||||||
|
|||||||
Reference in New Issue
Block a user