Commit Graph

10428 Commits

Author SHA1 Message Date
nhmall
aef1f9d62c Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-02 10:00:37 -05:00
nhmall
4a4b3fb8f1 add a macro to ease conditional testing based on active window port
Add WINDOWPORT macro

example:
if (WINDOWPORT("tty"))
	pline("Look at me, I'm on tty at the moment!");
2018-12-02 09:56:44 -05:00
nhmall
38b31dd9ca fix a build error in cmd.c 2018-12-02 09:45:07 -05:00
PatR
26a3a53786 Sting revisited
Replace recent "(light blue aura)" with
"(flickering light blue)" if there are 1..4 orcs,
"(glimmering light blue)" if 5..12, or
"(gleaming light blue)" if there are 13 or more, and move its place
in the formatted name.
_3.6.1_: Sting (weapon in hand) (glowing light blue)
_recent: Sting (weapon in hand) (light blue aura)
_now___: Sting (weapon in hand, flickering light blue)

The thresholds for intensity may need to be tweaked.  The start
message has been changed from "glows" to "flickers/glimmers/gleams"
and is given when the intensity changes (up or down) as well as when
first glowing.  Stop message will usually be "stops flickering" but
some form of mass kill (genocide for sure, maybe explosion, probably
not wand zap) might result in stopping directly from higher intensity.

It still "quivers" if hero is blind when there are orcs on the level,
but no name augmentation shows in inventory for that situation;
describing it as "(weapon in hand, quivering)" would be too silly.
Also, the quiver or glow intermediate message if blindness is toggled
while Sting is active only worked for make_blinded(), not for putting
on and taking off a blindfold.  Now fixed.  I think becoming blind due
to polymorphing into an eyeless form is still not handled, but there
are no eyeless creatures capable of wielding weapons so that can wait.
Polymorphing from eyeless to sighted is handled but moot for Sting.
2018-12-02 02:09:22 -08:00
PatR
9e047f871b zap.c formatting bit
that's been sitting around for a while and I want to get out of the way.
2018-12-02 01:51:23 -08:00
PatR
f12565398a debug_fuzzer vs '!' and ^Z
My sysconf allows shell escape, and the fuzzer seems fond of that.
Suppress '!' and also '^Z', although I didn't notice it execute the
latter.  Without this hack, the sequence '!', sub-shell exit, '&'
causes nethack to be killed via SIGTTOU while fiddling with terminal
settings for introff().
2018-12-01 16:43:13 -08:00
nhmall
e19ad7d2bc Remove some Windows-specific code from src/cmd.c 2018-12-01 19:24:22 -05:00
nhmall
37b5e0e479 make curses commented out by default (again) 2018-12-01 11:31:08 -05:00
nhmall
a5a51814a1 get rid of some gcc warnings with Windows build 2018-12-01 09:41:22 -05:00
Pasi Kallinen
4c9603298a glyph variable is actually used 2018-12-01 08:58:36 +02:00
nhmall
1ee4b34d33 Merge branch 'NetHack-3.6.2' 2018-11-30 20:25:40 -05:00
nhmall
72d9a908f2 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-11-30 20:25:13 -05:00
nhmall
92732af7aa Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01 2018-11-30 20:20:05 -05:00
nhmall
802c22ed98 more gcc work for Windows
tty builds and executes
curses builds but crashes

gui - not even trying right now
2018-11-30 20:17:42 -05:00
PatR
028efc7342 X11 text popup fix
Text popups on OSX could be dismissed with <space> or <return> or
<esc> if user's X resources had 'NetHack*autofocus' set to True, but
for the default of False they ignored all keystrokes even if you
clicked inside the popup window to set focus explicitly.  Clicking
on the Close Window button of the popup's title bar was the only way
to get the popup to go away.  Fix suggested by Pasi.
2018-11-30 16:02:55 -08:00
nhmall
c0897f2f0d more Windows Makefile synch and gcc Makefile updates
The gcc-built tty version builds fully now, but it won't play.

The GUI version definitely does not build right now.
2018-11-30 18:44:37 -05:00
nhmall
8a9f98f179 curses follow-up bits
Move the curses global variable defininitions to cursmain.c.

Make the references to those global variables extern in
include/wincurs.h

Get rid of a warning:
../win/curses/cursmesg.c:379:9: warning: declaration shadows a
variable in the global scope [-Wshadow] int orig_cursor = curs_set(0);

Kludge for Visual Studio compiler: Add a stub- file for use
in Windows curses port builds to ensure that a needed #pragma
is invoked prior to compiling the file pdcscrn.c in the
PDCurses source distribution. All command line options and
compile of the file. It is unreasonable to expect a NetHack
builder to have to tinker with the PDCurses source files in
order to build NetHack. This kludge means the NetHack builder
doesn't have to.
The file stub-pdcscrn.c contains only two lines:
	#pragma warning(disable : 4996)
	#include "pdcscrn.c"
Some day, if the PDCurses sources corrects the issue, this
can go away.
2018-11-30 16:00:24 -05:00
Pasi Kallinen
75bf7c1975 X11: Disable menucolors when showing text files 2018-11-30 15:26:38 +02:00
nhmall
ad838f2236 typos 2018-11-29 22:37:54 -05:00
nhmall
7495d0f2f4 more Windows gcc cleanup
Still not finished
2018-11-29 22:32:36 -05:00
nhmall
2a2107c3a4 Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01 2018-11-29 22:23:58 -05:00
nhmall
3811845dbf more Makefile.gcc work
Still not completed
2018-11-29 22:23:17 -05:00
PatR
bb8ba53ed9 vms/Makefile.src
Catch up with recent changes to vmsbuild.com and unix/Makefile.src.
2018-11-29 18:45:37 -08:00
PatR
4ffe088a67 workaround for ^G "senior moment"
The less said, the better.
2018-11-29 18:33:34 -08:00
PatR
351c731e06 downgrade Sting's glow
Change "(glowing light blue)" to "(light blue aura)" so that there's
less suggestion that it might function as a light source.
2018-11-29 18:19:20 -08:00
nhmall
385a9963d4 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-11-29 21:08:28 -05:00
PatR
b113aa7439 more steed dismount
By creating a spot of lava, filling up the whole level, and creating
a lurker above, I managed to trigger the impossible "Dismount: can't
place former steed on map" that was added earlier today.  I also was
told that my god was displeased even though the engulfer's attack was
responsible.  This addresses both situations.  I can't trigger that
impossible any more, and only voluntary dismount blames the hero if
it's killed because there's nowhere to place it.  Hero is still blamed
for any dismount that kills the steed while flying or levitating over
dangerous terrain--hero took steed into jeopardy.
2018-11-29 18:02:52 -08:00
nhmall
5049d23ce0 make some progress on mingw build
Still not quite there yet though.
Focusing on tty (maybe curses) right now.

The gui has had significant code deviation from
prior gcc builds for windows and will take more
work.
2018-11-29 20:59:03 -05:00
nhmall
d45b8e4fb3 More Makefiles 2018-11-29 17:41:20 -05:00
nhmall
5f02f2455b more Makefile for Windows 2018-11-29 16:36:07 -05:00
nhmall
de5acee7fc Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01 2018-11-29 16:27:48 -05:00
nhmall
f2da47a347 Windows Makefile updates (first batch) 2018-11-29 16:27:02 -05:00
PatR
be327d9822 steed vs "no monster to remove"
Noticed whlie testing the steed-in-pit fix.  The EXTRA_SANITY_CHECKS
for remove_monster() are being tripped if riding hero has steed killed
out from under him because the steed is not on the map.  This started
out simple but got a bit complicated.  It seems to be sufficient but
I'm not very confident about it.

Being engulfed while mounted gave "placing monster over another?" due
to a change made along with EXTRA_SANITY_CHECKS but not conditional on
it.  (The change was to issue a warning about an actual problem which
was previously undiagnosed.)  I think bumping the engulfer off the map
in favor of the former steed only worked because some u.uswallow code
eventually used the hero's location to put the engulfer back.  I didn't
pursue that to try to figure what really happened, just prevent it.

The DISMOUNT_BONES handling was being executed even if the steed was
dead.  DISMOUNT_BONES only happens if the hero is dead.  Since I don't
know whether it's possible for dead hero and dead steed to happen at
the same time, move it inside the steed-not-dead block just in case.
2018-11-29 12:15:14 -08:00
PatR
4ab1c12f03 fix github issue #164 - lack of steed-in-pit mesg
Fixes #164

No message was shown when riding a steed into a pit or spiked pit.
Setup for the message was done, but post-3.4.3 insertion of else-if
into the previous if/else/endif cut off its delivery.
2018-11-29 10:24:50 -08:00
PatR
c318841363 fix #H7631 - wielding cursed weptool via 'apply'
Applying a non-wielded cursed pick-axe first wielded it, then dug,
but it didn't report "pick-axe is welded to your hand".  (Attempting
to drop it or wield something else did report that, after the fact.)
The same thing happened if you used a pole-arm rather than pick-axe.
2018-11-29 03:49:16 -08:00
nhmall
99891455d3 earlier Guidebook change neglected to update the date 2018-11-29 00:24:35 -05:00
nhmall
c52fc366a0 not everyone has PDCurses so re-comment it in the official sources 2018-11-29 00:15:34 -05:00
nhmall
0ab9e7d087 Merge branch 'win-minor' into NetHack-3.6.2-beta01 2018-11-29 00:08:09 -05:00
Bart House
22af9a3bbf Adding manifest to NetHackW.exe in nmake build. 2018-11-28 21:06:39 -08:00
nhmall
3634d16582 fix nethackw start without arguments
The Windows graphical version in NetHackW.exe is meant to lock
itself to its own windowtype and ignore the OPTIONS=windowtype
setting in the config file, but the code to perform the lock
only did so if (argc > 1).
2018-11-28 23:29:28 -05:00
nhmall
c35c2df14d Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01 2018-11-28 21:47:34 -05:00
nhmall
3db1e42dc8 dungeoneers update - Karl Garrison 2018-11-28 21:46:52 -05:00
PatR
234bf7b1b6 fix #H7618 - gas cloud affects underwater monsters
Stinking cloud placed near water or poison gas breathed across it
would affect and potentially kill underwater monsters.  Most swimmers
are on the surface and should be affected, but eels and other fish
shouldn't be.

This also changes minliquid() to not treat flying and levitating as
ways to survive water when on the Plane of Water.

I think goodpos() needs to be taught about that Plane (where many ways
of existing at a water location don't apply).  This doesn't do that.
2018-11-28 17:43:53 -08:00
nhmall
8d1aa429ca catch up on some fixes36.2 entries 2018-11-28 20:39:09 -05:00
nhmall
12493a1e63 Merge branch 'NetHack-3.6.2' 2018-11-28 20:04:07 -05:00
nhmall
7f75d7f18a Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-11-28 20:03:23 -05:00
nhmall
bf4bb47518 Update header at the top of the curses files
Place the copyright notice within the win/curses files as confirmed
by the original curses port author on November 28, 2018.
2018-11-28 20:00:20 -05:00
nhmall
ec1f3d3f57 bring ms and gcc Makefiles into better alignment
Makefile.msc has been tested.
Makefile.gcc has not been tested yet.
2018-11-28 19:47:58 -05:00
PatR
a8fe565912 'make depend' update for unix/Makefile.src
The dependency for pcmain.o is different from depend.awk generates
so re-running 'make depend' after this will think another change is
needed.
2018-11-28 15:23:02 -08:00
PatR
091941c6c2 X11 bit prior to 'make depend' 2018-11-28 15:22:14 -08:00