Merge branch 'NetHack-3.6'
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.54 $ $NHDT-Date: 1560600663 2019/06/15 12:11:03 $
|
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.56 $ $NHDT-Date: 1560611967 2019/06/15 15:19:27 $
|
||||||
|
|
||||||
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,
|
||||||
@@ -100,6 +100,8 @@ Platform- and/or Interface-Specific Fixes or Features
|
|||||||
EDIT_GETLIN: wizard mode 'monpolycontrol' was using the getlin() answer buffer
|
EDIT_GETLIN: wizard mode 'monpolycontrol' was using the getlin() answer buffer
|
||||||
to format the coordinate portion of the "change <monster> @ <x,y> into
|
to format the coordinate portion of the "change <monster> @ <x,y> into
|
||||||
what kind of monster?" prompt, resulting in "<x,y>" as default answer
|
what kind of monster?" prompt, resulting in "<x,y>" as default answer
|
||||||
|
EDIT_GETLIN: when naming an object or a monster use the existing name, if
|
||||||
|
there is one, as the default answer
|
||||||
curses: very tall menus tried to use selector characters a-z, A-Z, and 0-9,
|
curses: very tall menus tried to use selector characters a-z, A-Z, and 0-9,
|
||||||
but 0-9 should be reserved for counts and if the display was tall
|
but 0-9 should be reserved for counts and if the display was tall
|
||||||
enough for more than 62 entries, arbitrary ASCII punctuation got used
|
enough for more than 62 entries, arbitrary ASCII punctuation got used
|
||||||
@@ -132,6 +134,9 @@ tty: re-do one optimization used when status conditions have all been removed
|
|||||||
and remove another that tried to check whether condition text to be
|
and remove another that tried to check whether condition text to be
|
||||||
displayed next was the same as the existing value; sometimes new
|
displayed next was the same as the existing value; sometimes new
|
||||||
status condition wouldn't be shown unless a screen redraw was forced
|
status condition wouldn't be shown unless a screen redraw was forced
|
||||||
|
tty: take two, if/when autodecribe feedback wraps past top line, clear
|
||||||
|
continuation lines and redraw map if needed when top line is cleared
|
||||||
|
['exposed by git' section has an entry for reversal of 'take one']
|
||||||
Windows: some startup error messages were not being delivered successfully
|
Windows: some startup error messages were not being delivered successfully
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 do_name.c $NHDT-Date: 1560387831 2019/06/13 01:03:51 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.148 $ */
|
/* NetHack 3.6 do_name.c $NHDT-Date: 1560611967 2019/06/15 15:19:27 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.149 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Pasi Kallinen, 2018. */
|
/*-Copyright (c) Pasi Kallinen, 2018. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -1156,6 +1156,11 @@ do_mname()
|
|||||||
Sprintf(qbuf, "What do you want to call %s?",
|
Sprintf(qbuf, "What do you want to call %s?",
|
||||||
distant_monnam(mtmp, ARTICLE_THE, monnambuf));
|
distant_monnam(mtmp, ARTICLE_THE, monnambuf));
|
||||||
buf[0] = '\0';
|
buf[0] = '\0';
|
||||||
|
#ifdef EDIT_GETLIN
|
||||||
|
/* if there's an existing name, make it be the default answer */
|
||||||
|
if (has_mname(mtmp))
|
||||||
|
Strcpy(buf, MNAME(mtmp));
|
||||||
|
#endif
|
||||||
getlin(qbuf, buf);
|
getlin(qbuf, buf);
|
||||||
if (!*buf || *buf == '\033')
|
if (!*buf || *buf == '\033')
|
||||||
return;
|
return;
|
||||||
@@ -1168,6 +1173,9 @@ do_mname()
|
|||||||
*
|
*
|
||||||
* Don't say the name is being rejected if it happens to match
|
* Don't say the name is being rejected if it happens to match
|
||||||
* the existing name.
|
* the existing name.
|
||||||
|
*
|
||||||
|
* TODO: should have an alternate message when the attempt is to
|
||||||
|
* remove existing name without assigning a new one.
|
||||||
*/
|
*/
|
||||||
if ((mtmp->data->geno & G_UNIQ) && !mtmp->ispriest) {
|
if ((mtmp->data->geno & G_UNIQ) && !mtmp->ispriest) {
|
||||||
if (!alreadynamed(mtmp, monnambuf, buf))
|
if (!alreadynamed(mtmp, monnambuf, buf))
|
||||||
@@ -1194,7 +1202,7 @@ void
|
|||||||
do_oname(obj)
|
do_oname(obj)
|
||||||
register struct obj *obj;
|
register struct obj *obj;
|
||||||
{
|
{
|
||||||
char *bufp, buf[BUFSZ] = DUMMY, bufcpy[BUFSZ], qbuf[QBUFSZ];
|
char *bufp, buf[BUFSZ], bufcpy[BUFSZ], qbuf[QBUFSZ];
|
||||||
const char *aname;
|
const char *aname;
|
||||||
short objtyp;
|
short objtyp;
|
||||||
|
|
||||||
@@ -1207,6 +1215,12 @@ register struct obj *obj;
|
|||||||
Sprintf(qbuf, "What do you want to name %s ",
|
Sprintf(qbuf, "What do you want to name %s ",
|
||||||
is_plural(obj) ? "these" : "this");
|
is_plural(obj) ? "these" : "this");
|
||||||
(void) safe_qbuf(qbuf, qbuf, "?", obj, xname, simpleonames, "item");
|
(void) safe_qbuf(qbuf, qbuf, "?", obj, xname, simpleonames, "item");
|
||||||
|
buf[0] = '\0';
|
||||||
|
#ifdef EDIT_GETLIN
|
||||||
|
/* if there's an existing name, make it be the default answer */
|
||||||
|
if (has_oname(obj))
|
||||||
|
Strcpy(buf, ONAME(obj));
|
||||||
|
#endif
|
||||||
getlin(qbuf, buf);
|
getlin(qbuf, buf);
|
||||||
if (!*buf || *buf == '\033')
|
if (!*buf || *buf == '\033')
|
||||||
return;
|
return;
|
||||||
@@ -1449,7 +1463,7 @@ void
|
|||||||
docall(obj)
|
docall(obj)
|
||||||
struct obj *obj;
|
struct obj *obj;
|
||||||
{
|
{
|
||||||
char buf[BUFSZ] = DUMMY, qbuf[QBUFSZ];
|
char buf[BUFSZ], qbuf[QBUFSZ];
|
||||||
char **str1;
|
char **str1;
|
||||||
|
|
||||||
if (!obj->dknown)
|
if (!obj->dknown)
|
||||||
@@ -1462,12 +1476,19 @@ struct obj *obj;
|
|||||||
else
|
else
|
||||||
(void) safe_qbuf(qbuf, "Call ", ":", obj,
|
(void) safe_qbuf(qbuf, "Call ", ":", obj,
|
||||||
docall_xname, simpleonames, "thing");
|
docall_xname, simpleonames, "thing");
|
||||||
|
/* pointer to old name */
|
||||||
|
str1 = &(objects[obj->otyp].oc_uname);
|
||||||
|
buf[0] = '\0';
|
||||||
|
#ifdef EDIT_GETLIN
|
||||||
|
/* if there's an existing name, make it be the default answer */
|
||||||
|
if (*str1)
|
||||||
|
Strcpy(buf, *str1);
|
||||||
|
#endif
|
||||||
getlin(qbuf, buf);
|
getlin(qbuf, buf);
|
||||||
if (!*buf || *buf == '\033')
|
if (!*buf || *buf == '\033')
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* clear old name */
|
/* clear old name */
|
||||||
str1 = &(objects[obj->otyp].oc_uname);
|
|
||||||
if (*str1)
|
if (*str1)
|
||||||
free((genericptr_t) *str1);
|
free((genericptr_t) *str1);
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* NetHack 3.6 topl.c $NHDT-Date: 1560600658 2019/06/15 12:10:58 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.46 $ */
|
/* NetHack 3.6 topl.c $NHDT-Date: 1560608320 2019/06/15 14:18:40 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.47 $ */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/*-Copyright (c) Michael Allison, 2009. */
|
/*-Copyright (c) Michael Allison, 2009. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
@@ -151,15 +151,16 @@ const char *str;
|
|||||||
struct WinDesc *cw = wins[WIN_MESSAGE];
|
struct WinDesc *cw = wins[WIN_MESSAGE];
|
||||||
|
|
||||||
if (!(cw->flags & WIN_STOP)) {
|
if (!(cw->flags & WIN_STOP)) {
|
||||||
|
if (ttyDisplay->cury && ttyDisplay->toplin == 2)
|
||||||
|
tty_clear_nhwindow(WIN_MESSAGE);
|
||||||
|
|
||||||
cw->curx = cw->cury = 0;
|
cw->curx = cw->cury = 0;
|
||||||
home();
|
home();
|
||||||
cl_end();
|
cl_end();
|
||||||
addtopl(str);
|
addtopl(str);
|
||||||
|
|
||||||
#if 0 /* this doesn't work as intended; it disrupts multi-line prompts */
|
|
||||||
if (ttyDisplay->cury && ttyDisplay->toplin != 3)
|
if (ttyDisplay->cury && ttyDisplay->toplin != 3)
|
||||||
more();
|
ttyDisplay->toplin = 2;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user