Merge branch 'NetHack-3.6'
This commit is contained in:
14
Files
14
Files
@@ -273,12 +273,14 @@ stat.h
|
||||
|
||||
sys/winnt:
|
||||
(files for Windows 7/8.x/10 version)
|
||||
Install.nt Makefile.gcc Makefile.msc console.rc
|
||||
.nethackrc.template nethack.def nh340key.c nhdefkey.c
|
||||
nhico.uu nhraykey.c nhsetup.bat ntsound.c
|
||||
nttty.c porthelp stub-pdcscrn.c stubs.c
|
||||
sysconf.template win10.c win10.h win32api.h
|
||||
windmain.c winnt.c winos.h
|
||||
.nethackrc.template Install.nt Makefile.gcc
|
||||
Makefile.msc console.rc nethack.def
|
||||
nh340key.c nhdefkey.c nhico.uu
|
||||
nhraykey.c nhsetup.bat ntsound.c
|
||||
nttty.c porthelp stub-pdcscrn.c
|
||||
stubs.c sysconf.template win10.c
|
||||
win10.h win32api.h windmain.c
|
||||
winnt.c winos.h
|
||||
|
||||
util:
|
||||
(files for all versions)
|
||||
|
||||
31
dat/symbols
31
dat/symbols
@@ -1,4 +1,4 @@
|
||||
# NetHack 3.6 symbols $NHDT-Date: 1571314611 2019/10/17 12:16:51 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.20 $
|
||||
# NetHack 3.6 symbols $NHDT-Date: 1572892906 2019/11/04 18:41:46 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.21 $
|
||||
# Copyright (c) 2006 by Michael Allison
|
||||
# NetHack may be freely redistributed. See license for details.
|
||||
#
|
||||
@@ -340,7 +340,7 @@ start: IBMgraphics
|
||||
S_pool: \xf7 # meta-w, approx. equals
|
||||
S_ice: \xfa # meta-z, centered dot
|
||||
S_lava: \xf7 # meta-w, approx. equals
|
||||
S_vodbridge: \xfa # meta-z, centered dot
|
||||
S_vodbridge: \xfa # meta-z, centered dot
|
||||
S_hodbridge: \xfa # meta-z, centered dot
|
||||
S_water: \xf7 # meta-w, approx. equals
|
||||
S_vbeam: \xb3 # meta-3, vertical rule
|
||||
@@ -548,7 +548,8 @@ start: curses
|
||||
S_tlwall: \xf5 # meta-u, T left
|
||||
S_trwall: \xf4 # meta-t, T right
|
||||
S_ndoor: \xfe # meta-z, centered dot
|
||||
S_tree: \xf1 # plus or minus symbol
|
||||
S_bars: \xfc # meta-|, not-equals sign (was '#')
|
||||
S_tree: \xe7 # meta-g, plus or minus sign
|
||||
S_room: \xfe # meta-z, centered dot
|
||||
S_corr: \xe1 # meta-a, solid block
|
||||
S_litcorr: \xe1 # meta-a, solid block
|
||||
@@ -581,11 +582,12 @@ start: DECgraphics
|
||||
S_ndoor: \xfe # meta-~, centered dot
|
||||
S_vodoor: \xe1 # meta-a, solid block
|
||||
S_hodoor: \xe1 # meta-a, solid block
|
||||
S_bars: \xfb # meta-{, small pi
|
||||
S_bars: \xfc # meta-|, not-equals (used to be pi)
|
||||
S_tree: \xe7 # meta-g, plus-or-minus
|
||||
S_room: \xfe # meta-~, centered dot
|
||||
S_upladder: \xf9 # meta-y, less-than-or-equals
|
||||
S_dnladder: \xfa # meta-z, greater-than-or-equals
|
||||
S_altar: \xfb # meta-{, pi (used to default to '_')
|
||||
S_pool: \xe0 # meta-\, diamond
|
||||
S_ice: \xfe # meta-~, centered dot
|
||||
S_lava: \xe0 # meta-\, diamond
|
||||
@@ -604,27 +606,6 @@ start: DECgraphics
|
||||
S_explode8: \xf3 # meta-s, low horizontal line
|
||||
finish
|
||||
|
||||
#
|
||||
# This is commented out because specifying alternate default set isn't
|
||||
# implemented.
|
||||
#
|
||||
# DECgraphics_2: underscore (default for altar) can be hard to see if
|
||||
# hero or highlighted pet is on the spot below (south of) it, making
|
||||
# it look like part of slightly bigger block cursor. Bars are usually
|
||||
# within walls and we have something else for doorless doorway so '#'
|
||||
# for bars shouldn't be mistaken for the corridor symbol even by someone
|
||||
# used to DECgraphics, at least not often enough to pose a problem.
|
||||
# The pi symbol is small like lowercase but flat-topped like uppercase
|
||||
# so could represent a side view of a raised platform or table.
|
||||
#
|
||||
# start: DECgraphics_2
|
||||
# Defaults: DECgraphics # includes 'Handling: DEC'
|
||||
# Description: variation of DECgraphics (iron bars:#, altar:pi)
|
||||
# S_bars: '#' # (switch from pi to plain '#')
|
||||
# S_altar: \xfb # meta-{, pi (switch from underscore)
|
||||
# finish
|
||||
#
|
||||
|
||||
start: MACgraphics
|
||||
# Description: (pre-OSX: obsolete?)
|
||||
# Restrictions: primary
|
||||
|
||||
2566
doc/Guidebook.txt
2566
doc/Guidebook.txt
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,4 @@
|
||||
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.155 $ $NHDT-Date: 1572833562 2019/11/04 02:12:42 $
|
||||
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.159 $ $NHDT-Date: 1572892926 2019/11/04 18:42:06 $
|
||||
|
||||
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,
|
||||
@@ -214,6 +214,9 @@ fix a leashed pet polymorphed into a long worm staying leashed
|
||||
prevent leashing unsolid monsters and monsters with no extremities
|
||||
playing musical instruments gave feedback which ignored deafness
|
||||
some other deafness-related message corrections
|
||||
when dipping into holy/unholy water while blind (where the glow message is
|
||||
suppressed), clear dipped item's bknown flag unless water potion's
|
||||
bless/curse state is known
|
||||
|
||||
|
||||
Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository
|
||||
@@ -237,6 +240,8 @@ surviving death while polymorphed would yield "You are a <foo>" without
|
||||
'mksobj failure' commit resulted in wrong corpse types for dying monsters
|
||||
a recent intended sanity check fix inadvertently bypassed placing
|
||||
a thrown chained ball back onto the floor
|
||||
in symset:curses, symbol S_tree was accidentally set to horizontal line where
|
||||
plus-or-minus sign was meant; also, change S_bars to not-equals sign
|
||||
curses: sometimes the message window would show a blank line after a prompt
|
||||
curses: the change to show map in columns 1..79 instead of 2..80 made the
|
||||
highlight for '@' show up in the wrong place if clipped map had been
|
||||
@@ -388,20 +393,26 @@ curses+'perm_invent': since persistent inventory is narrow, strip off "a",
|
||||
curses+'curses': change the curses map display to use new symbol set 'curses'
|
||||
instead of hard-coded values; it attempts to show IBMgraphics-style
|
||||
map using DECgraphics characters; DECgraphics can also be used as-is
|
||||
fulfill a request from a blind player to have a unique overriding SYMBOL for pets
|
||||
and for the player
|
||||
fulfill a request from a blind player to have a unique overriding SYMBOL for
|
||||
pets and for the player
|
||||
ROGUESYMBOLS can be overridden in config files like SYMBOLS can
|
||||
in symset:DECgraphics, set S_altar to 'pi' (was default '_'), S_bars to
|
||||
not-equals sign (was 'pi')
|
||||
|
||||
|
||||
NetHack Community Patches (or Variation) Included
|
||||
-------------------------------------------------
|
||||
add a couple of engraving suggestions in pull request #79
|
||||
chasonr's faster method to write characters to msdos VGA in pull request #220
|
||||
chasonr's msdos Makefile.gcc pdcurses build changes in pull request #243
|
||||
autopickup exception priority change in pull request #226
|
||||
|
||||
|
||||
Code Cleanup and Reorganization
|
||||
-------------------------------
|
||||
began to add some function caller BREADCRUMBS to aid debugging
|
||||
flag existing occurrences of "You hear" as "Deaf-aware" to aid in
|
||||
future maintenance
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1200,7 +1200,7 @@ dokick()
|
||||
!Blind
|
||||
? "Muddy waste pops up from the drain"
|
||||
: !Deaf
|
||||
? "You hear a sloshing sound"
|
||||
? "You hear a sloshing sound" /* Deaf-aware */
|
||||
: "Something splashes you in the", buf);
|
||||
if (!(g.maploc->looted & S_LRING)) { /* once per sink */
|
||||
if (!Blind)
|
||||
|
||||
@@ -757,7 +757,7 @@ doengrave()
|
||||
}
|
||||
Strcpy(post_engr_text,
|
||||
(Blind && !Deaf)
|
||||
? "You hear drilling!"
|
||||
? "You hear drilling!" /* Deaf-aware */
|
||||
: Blind
|
||||
? "You feel tremors."
|
||||
: IS_GRAVE(levl[u.ux][u.uy].typ)
|
||||
|
||||
24
src/hack.c
24
src/hack.c
@@ -151,17 +151,35 @@ moverock()
|
||||
if (mtmp && !noncorporeal(mtmp->data)
|
||||
&& (!mtmp->mtrapped
|
||||
|| !(ttmp && is_pit(ttmp->ttyp)))) {
|
||||
boolean deliver_part1 = FALSE;
|
||||
|
||||
if (Blind)
|
||||
feel_location(sx, sy);
|
||||
if (canspotmon(mtmp)) {
|
||||
pline("There's %s on the other side.", a_monnam(mtmp));
|
||||
deliver_part1 = TRUE;
|
||||
} else {
|
||||
You_hear("a monster behind %s.", the(xname(otmp)));
|
||||
if (!Deaf)
|
||||
deliver_part1 = TRUE;
|
||||
map_invisible(rx, ry);
|
||||
}
|
||||
if (flags.verbose)
|
||||
pline("Perhaps that's why %s cannot move it.",
|
||||
u.usteed ? y_monnam(u.usteed) : "you");
|
||||
if (flags.verbose) {
|
||||
char you_or_steed[BUFSZ];
|
||||
|
||||
Strcpy(you_or_steed,
|
||||
u.usteed ? y_monnam(u.usteed) : "you");
|
||||
pline("%s%s cannot move %s.",
|
||||
deliver_part1
|
||||
? "Perhaps that's why "
|
||||
: "",
|
||||
deliver_part1
|
||||
? you_or_steed
|
||||
: upstart(you_or_steed),
|
||||
deliver_part1
|
||||
? "it"
|
||||
: the(xname(otmp)));
|
||||
}
|
||||
goto cannot_push;
|
||||
}
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ boolean undirected;
|
||||
pline("%s points %s.", Monnam(mtmp), point_msg);
|
||||
} else if ((!(g.moves % 4) || !rn2(4))) {
|
||||
if (!Deaf)
|
||||
Norep("You hear a mumbled curse.");
|
||||
Norep("You hear a mumbled curse."); /* Deaf-aware */
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1361,7 +1361,7 @@ fumaroles()
|
||||
}
|
||||
}
|
||||
if (snd && !Deaf)
|
||||
Norep("You hear a %swhoosh!", loud ? "loud " : "");
|
||||
Norep("You hear a %swhoosh!", loud ? "loud " : ""); /* Deaf-aware */
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
@@ -3771,7 +3771,7 @@ boolean msg; /* "The oldmon turns into a newmon!" */
|
||||
/* take on the new form... */
|
||||
set_mon_data(mtmp, mdat);
|
||||
|
||||
if (!leashable(mtmp))
|
||||
if (mtmp->mleashed && !leashable(mtmp))
|
||||
m_unleash(mtmp, TRUE);
|
||||
|
||||
if (emits_light(olddata) != emits_light(mtmp->data)) {
|
||||
|
||||
@@ -171,7 +171,8 @@ struct monst *bugler; /* monster that played instrument */
|
||||
if (canseemon(mtmp))
|
||||
pline("%s is now ready for battle!", Monnam(mtmp));
|
||||
else if (!Deaf)
|
||||
Norep("You hear the rattle of battle gear being readied.");
|
||||
Norep("%s the rattle of battle gear being readied.",
|
||||
"You hear"); /* Deaf-aware */
|
||||
} else if ((distm = ((bugler == &g.youmonst)
|
||||
? distu(mtmp->mx, mtmp->my)
|
||||
: dist2(bugler->mx, bugler->my, mtmp->mx,
|
||||
|
||||
@@ -357,7 +357,7 @@ VA_DECL(const char *, line)
|
||||
else if (Unaware)
|
||||
YouPrefix(tmp, "You dream that you hear ", line);
|
||||
else
|
||||
YouPrefix(tmp, "You hear ", line);
|
||||
YouPrefix(tmp, "You hear ", line); /* Deaf-aware */
|
||||
vpline(strcat(tmp, line), VA_ARGS);
|
||||
VA_END();
|
||||
}
|
||||
|
||||
11
src/potion.c
11
src/potion.c
@@ -1,4 +1,4 @@
|
||||
/* NetHack 3.6 potion.c $NHDT-Date: 1570235292 2019/10/05 00:28:12 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.163 $ */
|
||||
/* NetHack 3.6 potion.c $NHDT-Date: 1572887644 2019/11/04 17:14:04 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.164 $ */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/*-Copyright (c) Robert Patrick Rankin, 2013. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
@@ -1265,6 +1265,15 @@ const char *objphrase; /* "Your widget glows" or "Steed's saddle glows" */
|
||||
pline("%s %s.", objphrase, glowcolor);
|
||||
iflags.last_msg = PLNMSG_OBJ_GLOWS;
|
||||
targobj->bknown = !Hallucination;
|
||||
} else {
|
||||
/* didn't see what happened: forget the BUC state if that was
|
||||
known unless the bless/curse state of the water is known;
|
||||
without this, hero would know the new state even without
|
||||
seeing the glow; priest[ess] will immediately relearn it */
|
||||
if (!potion->bknown || !potion->dknown)
|
||||
targobj->bknown = 0;
|
||||
/* [should the bknown+dknown exception require that water
|
||||
be discovered or at least named?] */
|
||||
}
|
||||
/* potions of water are the only shop goods whose price depends
|
||||
on their curse/bless state */
|
||||
|
||||
@@ -2984,7 +2984,7 @@ boolean peaceful, silent;
|
||||
Norep("%s booms: \"%s, you are a thief!\"",
|
||||
Shknam(shkp), g.plname);
|
||||
} else if (!Deaf) {
|
||||
Norep("You hear a scream, \"Thief!\"");
|
||||
Norep("You hear a scream, \"Thief!\""); /* Deaf-aware */
|
||||
}
|
||||
}
|
||||
hot_pursuit(shkp);
|
||||
|
||||
@@ -2624,7 +2624,8 @@ register struct monst *mtmp;
|
||||
a_your[trap->madeby_u]);
|
||||
}
|
||||
if (!in_sight && !Deaf)
|
||||
pline("Kaablamm! You hear an explosion in the distance!");
|
||||
pline("Kaablamm! %s an explosion in the distance!",
|
||||
"You hear"); /* Deaf-aware */
|
||||
blow_up_landmine(trap);
|
||||
/* explosion might have destroyed a drawbridge; don't
|
||||
dish out more damage if monster is already dead */
|
||||
|
||||
@@ -4434,7 +4434,7 @@ short exploding_wand_typ;
|
||||
melt_ice(x, y, (char *) 0);
|
||||
} else if (is_pool(x, y)) {
|
||||
const char *msgtxt = (!Deaf)
|
||||
? "You hear hissing gas."
|
||||
? "You hear hissing gas." /* Deaf-aware */
|
||||
: "That seemed remarkably uneventful.";
|
||||
|
||||
if (lev->typ != POOL) { /* MOAT or DRAWBRIDGE_UP */
|
||||
|
||||
@@ -332,13 +332,17 @@ PDCURSES_CURSPRIV_H = $(PDCURSES_TOP)/curspriv.h
|
||||
PDCURSES_HEADERS = $(PDCURSES_CURSES_H) $(PDCURSES_CURSPRIV_H)
|
||||
PDCSRC = $(PDCURSES_TOP)/pdcurses
|
||||
PDCDOS = $(PDCURSES_TOP)/dos
|
||||
PDCLIBOBJS = $(O)addch.o $(O)addchstr.o $(O)addstr.o $(O)attr.o $(O)beep.o \
|
||||
PDCLIBOBJS1 = $(O)addch.o $(O)addchstr.o $(O)addstr.o $(O)attr.o $(O)beep.o \
|
||||
$(O)bkgd.o $(O)border.o $(O)clear.o $(O)color.o $(O)delch.o $(O)deleteln.o \
|
||||
$(O)getch.o $(O)getstr.o $(O)getyx.o $(O)inch.o $(O)inchstr.o \
|
||||
$(O)initscr.o $(O)inopts.o $(O)insch.o $(O)insstr.o $(O)instr.o $(O)kernel.o \
|
||||
$(O)keyname.o $(O)mouse.o $(O)move.o $(O)outopts.o $(O)overlay.o $(O)pad.o \
|
||||
$(O)panel.o $(O)printw.o $(O)refresh.o $(O)scanw.o $(O)scr_dump.o $(O)scroll.o \
|
||||
$(O)slk.o $(O)termattr.o $(O)touch.o $(O)util.o $(O)window.o $(O)debug.o
|
||||
$(O)getch.o
|
||||
PDCLIBOBJS2 = $(O)getstr.o $(O)getyx.o $(O)inch.o $(O)inchstr.o $(O)initscr.o \
|
||||
$(O)inopts.o $(O)insch.o $(O)insstr.o $(O)instr.o $(O)kernel.o \
|
||||
$(O)keyname.o $(O)mouse.o
|
||||
PDCLIBOBJS3 = $(O)move.o $(O)outopts.o $(O)overlay.o $(O)pad.o $(O)panel.o \
|
||||
$(O)printw.o $(O)refresh.o $(O)scanw.o $(O)scr_dump.o $(O)scroll.o \
|
||||
$(O)slk.o $(O)termattr.o
|
||||
PDCLIBOBJS4 = $(O)touch.o $(O)util.o $(O)window.o $(O)debug.o
|
||||
PDCLIBOBJS = $(PDCLIBOBJS1) $(PDCLIBOBJS2) $(PDCLIBOBJS3) $(PDCLIBOBJS4)
|
||||
|
||||
PDCOBJS = $(O)pdcclip.o $(O)pdcdisp.o $(O)pdcgetsc.o $(O)pdckbd.o \
|
||||
$(O)pdcscrn.o $(O)pdcsetsc.o $(O)pdcutil.o
|
||||
@@ -944,7 +948,11 @@ endif
|
||||
#==========================================
|
||||
|
||||
$(O)pdcurses.a : $(PDCLIBOBJS) $(PDCOBJS)
|
||||
ar rcs $@ $(PDCLIBOBJS) $(PDCOBJS)
|
||||
ar rcS $@ $(PDCLIBOBJS1)
|
||||
ar rcS $@ $(PDCLIBOBJS2)
|
||||
ar rcS $@ $(PDCLIBOBJS3)
|
||||
ar rcS $@ $(PDCLIBOBJS4)
|
||||
ar rcs $@ $(PDCOBJS)
|
||||
|
||||
#==========================================
|
||||
# Other Util Dependencies.
|
||||
|
||||
Reference in New Issue
Block a user