Commit Graph

5474 Commits

Author SHA1 Message Date
nhmall
78b0e5c804 Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-14 19:54:51 -05:00
nhmall
475a429459 Merge branch 'NetHack-3.6' 2019-11-14 19:52:33 -05:00
nhmall
d2128968fa Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-14 19:50:20 -05:00
nhmall
6c97b0f9a1 Merge branch 'NetHack-3.6' 2019-11-14 19:48:57 -05:00
PatR
616e07cde9 more #H9392 - deafness vs music
The report mentioned whistles but I had forgotten all about them by
the time I tried to deal with musical instruments.  Plain whistles
had deaf handling but magic whistles didn't.
2019-11-14 16:42:53 -08:00
PatR
5abf64adaf fix #H9424 - mon vs shade damage despite harmless
Monster vs monster non-weapon attack against a shade that failed
due to non-silver and non-blessed hit was inflicting damage.
2019-11-14 15:28:32 -08:00
PatR
abdec86a3d fix #H9425 - shade_miss target
Fix 'unused' variable by using it as intended.  Thinko brought on by
too many revisions...
2019-11-14 12:56:08 -08:00
nhmall
8e7888d631 introduce msdos build support for cross-compiling on other platforms 2019-11-14 14:10:56 -05:00
PatR
f3a923d647 fix #H1554, #H1736, github issue #240 - silver )
Fixes #240

Monster versus monster (melee and throwing) didn't handle shades
(need silver or blessed weapon to take damage) or silver feedback
(extra info when silver-haters are hit).

I did a lot of test, revise, re-test but didn't always re-test
everything that had previously been tested, so bugs that I thought
were quashed might have crept in.

Now if a missile weapon "passes harmlessly through the shade" it
will continue on and maybe hit something else.  (Regular misses
still stop at the missed target.)

A couple of minor ball&chain changes accidentally got included.
2019-11-13 15:47:46 -08:00
nhmall
9470138324 Merge branch 'NetHack-3.6' 2019-11-13 01:08:33 -05:00
nhmall
bc0d78138f some, but not all, vms issues fixed 2019-11-12 19:58:48 -05:00
PatR
f5452848a5 width of curses menus
Menus with wide header or separator lines were rendered wide enough
to avoid wrapping those lines, but ones with narrow header/separators
and wide selectable entries were limited to half the display even
though lots of lines that would fit with full width were being wrapped.
Change the latter behavior.

Menus are right justified with the edge of the map when narrower than
it, left justified otherwise, and if the display is wider than the map,
they'll extend beyond its right edge.  (That hasn't actually changed;
it's just that left-justification is more likely now that menus will
be wide enough to show wide inventory lines without wrapping.)

Get rid of my ridiculous hack to force wider menu for the 'symset'
and 'roguesymset' sub-menus of 'O' since it's no longer useful.

There's still room for improvement.  If any lines need to be wrapped
despite using the full width, or perhaps are just a lot wider than
most of the entries, menu width could be narrowed to just enough for
'normal' lines to fit so that one or two really long entries don't
distort the menu.  That's a bit more complicated than I want to deal
with right now.  [If implemented, it would be relevant for tty too.]
2019-11-11 12:55:50 -08:00
nhmall
3bc26e6c65 Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-11 14:33:31 -05:00
nhmall
900a826e8e Merge branch 'NetHack-3.6' 2019-11-11 14:32:09 -05:00
nhmall
02da5f2d38 more Windows path environ variable translation bits 2019-11-11 14:19:16 -05:00
nhmall
6dfbff9d4b --showpaths wasn't returning the paths if there was an error in a config file
Also,
Windows only: Introduces some environment variable substitution for paths
specified in a config file
2019-11-11 12:49:54 -05:00
nhmall
11c869d7c5 Merge branch 'NetHack-3.6' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6 2019-11-11 11:51:28 -05:00
nhmall
91b4bd0da9 new prefix_locked bits conditionalized to WIN32 2019-11-11 11:46:49 -05:00
Pasi Kallinen
c2f7fb7d84 Fix heap-use-after-free
bcsign was used on a freed obj
2019-11-11 18:46:19 +02:00
nhmall
bc69fc65d2 Merge branch 'NetHack-3.6' into bart-test 2019-11-11 11:27:50 -05:00
nhmall
c2bbbebd8e restrict a recent deaf message change to player actions only 2019-11-11 10:59:07 -05:00
nhmall
349f4a0fd3 Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-11 09:34:59 -05:00
nhmall
277e6c7126 more 3.6 to 3.7 merge fix
3.7 adds const
const char *fqn_prefix_names[PREFIX_COUNT];
2019-11-11 09:33:06 -05:00
nhmall
386cf324eb Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-11 09:18:03 -05:00
nhmall
b21f6ef46d merge fallout bit from 3.6 to 3.7 2019-11-11 09:16:56 -05:00
nhmall
a16a4bc845 Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-11 08:43:49 -05:00
Pasi Kallinen
a6b752e6f1 Lua: Default dungeon and level chance is 100 2019-11-10 17:36:59 +02:00
nhmall
b20903eb14 Merge branch 'NetHack-3.6' 2019-11-10 10:01:01 -05:00
PatR
593ba7ebb4 --showpaths
Fix a couple of warnings about unused variables but mainly handle
OSX's multiple-choice for configuration file name.  I tried moving
my ~/.nethackrc to '~/Library/Prefences/NetHack Defaults.txt' and
both regular play and --showpaths are finding it successfully.

Also an untested fix for VMS.  "nethackini" is not supposed to have
any path information attached.
2019-11-09 20:01:53 -08:00
nhmall
10411fbd39 Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-09 21:57:26 -05:00
nhmall
641eeeab49 Merge branch 'NetHack-3.6' 2019-11-09 21:50:18 -05:00
nhmall
667534dcfc Merge branch 'NetHack-3.6' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6 2019-11-09 21:22:04 -05:00
nhmall
fddffc2fa0 updates to reveal_paths 2019-11-09 21:20:46 -05:00
PatR
15dbf661d9 more slippery gloves
Move makeplural(body_part(FINGER)) into its own routine, with option
to substitute gloves when wearing such.

Wearing slippery gloves (ie, wearing gloves while having slippery
fingers) wouldn't let you put on a ring because you can't take the
gloves off, but removing a worn ring lacked the same restriction.

After changing that, teach prayer that slippery gloves is another
reason why a ring of levitation can't be removed.
2019-11-09 16:36:41 -08:00
nhmall
220f8ddd46 Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-09 16:41:44 -05:00
nhmall
75d22a2dbf separate MAIL functionality from MAIL-related structure inclusion
With 3.7+ aspirations of improving savefile interoperability between 32-bit
and 64-bit builds, as well as between platforms, it is better to not have
the underlying struct/array content be conditional.

This splits off some of the MAIL code into MAIL_STRUCTURES code. In theory,
since MAIL_STRUCTURES is unconditionally included, the macro could
just go away and leave that code unconditional, but this commit doesn't
go that far.
2019-11-09 16:19:05 -05:00
nhmall
e6bafb3f90 default to little-endian in 3.7 2019-11-09 13:52:36 -05:00
nhmall
632c2efdcd Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-09 12:25:43 -05:00
nhmall
afec87a766 Merge branch 'NetHack-3.6' 2019-11-09 12:24:10 -05:00
nhmall
67bea58539 Merge branch 'NetHack-3.6' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6 2019-11-09 11:12:18 -05:00
nhmall
c566c01f8d add command line option --showpaths
Add
	--showpaths
early option to show where NetHack is expecting to find certain files
without starting up a game. It exits afterwards.

Windows sample (for illustration only, locations may differ for you):
    Variable playground locations:
        [hackdir   ]="C:\Users\JohnDoe\NetHack\3.6\"
        [leveldir  ]="C:\Users\JohnDoe\AppData\Local\NetHack\3.6\"
        [savedir   ]="C:\Users\JohnDoe\AppData\Local\NetHack\3.6\"
        [bonesdir  ]="C:\ProgramData\NetHack\3.6\"
        [datadir   ]="C:\personal\nhdev\363\test\binary\"
        [scoredir  ]="C:\ProgramData\NetHack\3.6\"
        [lockdir   ]="C:\ProgramData\NetHack\3.6\"
        [sysconfdir]="C:\ProgramData\NetHack\3.6\"
        [configdir ]="C:\Users\JohnDoe\NetHack\3.6\"
        [troubledir]="C:\Users\JohnDoe\NetHack\3.6\"
    Your system configuration file (in sysconfdir):
        "C:\Users\JohnDoe\NetHack\3.6\sysconf"
    Your system symbols file (in sysconfdir):
        "C:\Users\JohnDoe\NetHack\3.6\symbols"
    Your personal configuration file (in configdir):
        "C:\Users\JohnDoe\NetHack\3.6\.nethackrc"

Linux (for illustration only, locations may differ for you):
    Your system configuration file:
        "/home/johndoe/nh/install/games/lib/nethackdir/sysconf"
    Your system symbols file:
        "/home/johndoe/nh/install/games/lib/nethackdir/symbols"
    Your personal configuration file:
        "/home/johndoe/.nethackrc"
2019-11-09 10:57:25 -05:00
PatR
0615387f95 fix #H9391 - slippery gloves
Slippery fingers would transfer from bare hands to gloved hands if
you put gloves on.  The reverse, transfering from gloves to bare
hands when taking gloves off, was already being prevented for
directly taking them off, but still allowed the slipperiness to
transfer when gloves were lost.  This prevents putting on gloves
when fingers are slippery and attempts to handle cases where gloves
get unworn by ways other than 'T' (or 'R') or 'A'.

There's no slippery attribute for objects (way too much work for too
little value); slippery gloves is just the combination of wearing
gloves and having slippery fingers (which now has to have happened
while already wearing those gloves).  This changes inventory to use
"(being worn; slippery)" when applicable and much of the patch deals
with funnelling Glib changes through new make_glib() to try to make
sure that persistent inventory adds or removes "; slippery" right
away when changes happen.

If gloves are taken off involuntarily (shapechange to a form that
can't wear them, destruction via scroll of destroy armor or monster
spell of same or via overenchantment, theft), slippery fingers ends
right away instead of the usual few turns later.
2019-11-09 01:07:09 -08:00
nhmall
1281b3819d remove an unused variable warning 2019-11-08 15:39:21 -05:00
nhmall
a03e29ffb3 deaf-aware fixup 2019-11-08 12:38:37 -05:00
nhmall
e9f81f6b26 Merge branch 'NetHack-3.6' 2019-11-08 12:36:06 -05:00
nhmall
7da9104fac one more deaf aware bit 2019-11-08 12:35:13 -05:00
nhmall
a3d2be04be Revert "one more "Deaf-aware" comment"
This reverts commit 2835d8774e.
2019-11-08 12:34:27 -05:00
nhmall
9b0090aad9 Merge branch 'NetHack-3.7' into paxed-lua-v2-merged 2019-11-08 12:28:36 -05:00
nhmall
95010603a7 Merge branch 'NetHack-3.6' 2019-11-08 12:26:43 -05:00
nhmall
2835d8774e one more "Deaf-aware" comment 2019-11-08 11:22:50 -05:00