]> granicus.if.org Git - nethack/log
nethack
6 years agofix #H7704 - clairvoyance: objects vs pools
PatR [Mon, 10 Dec 2018 10:21:31 +0000 (02:21 -0800)]
fix #H7704 - clairvoyance: objects vs pools

When clairvoyance revealed an underwater object and the player wasn't
being given a chance to browse for some other reason, the map didn't
get refreshed and the object stayed displayed with the water hidden
under it.  Force a chance to browse when revealing underwater objects
despite that being intrusive when clairvoyance kicks in while walking
around.

6 years agoMerge branch 'win-minor' into NetHack-3.6.2-beta01
nhmall [Mon, 10 Dec 2018 05:50:01 +0000 (00:50 -0500)]
Merge branch 'win-minor' into NetHack-3.6.2-beta01

6 years agoallow a deferred windowport init during options processing
nhmall [Mon, 10 Dec 2018 05:44:18 +0000 (00:44 -0500)]
allow a deferred windowport init during options processing

When options processing encountered OPTIONS=windowtype:X,
the code would immediately attempt to switch over to that
windowtype right in the midst of options processing.

This stores the chosen option into
chosen_window[WINTYPELEN]
thus allowing the startup code to choose it after
options processing has been completed.

6 years agofix #H7708 - change in terrain not noticed
PatR [Mon, 10 Dec 2018 00:22:27 +0000 (16:22 -0800)]
fix #H7708 - change in terrain not noticed

Jumping or teleporting while levitating in xorn form wouldn't toggle
blocking of levitation when moving from open spots to wall/stone and
unblocking of same when moving the opposite way.

This handles those cases but there are no doubt others.  The only
other one I checked was when failed #untrap moves hero onto trap.
That case works correctly--at least after this fix is in place.

Noticed while working on it:  change of terrain didn't always update
the status line.  When levitation became blocked, it still said Lev
and when unblocked, didn't say that.  Next status update got status
condition back in sync.

6 years agofix #H7702 - named fruit warning: singular of null
PatR [Sun, 9 Dec 2018 23:03:13 +0000 (15:03 -0800)]
fix #H7702 - named fruit warning: singular of null

Some code added for 3.6.1 tries to find the longest matching prefix
when comparing a user-supplied with previously set up fruit names.
It does so by temporarily replacing space with NUL then passing that
to makesingular().  After already having named a fruit (resulting in
something to try to compare with), attempting to assign a name
beginning with two or more spaces would yield an impossible "singular
of null?" warning.

After the warning, the name minus its leading spaces got successfully
assigned.  I'm not sure why a single leading space didn't trigger it
too, nor where the leading (and trailing, if any) spaces are going
away when the name is assigned.

Fix by removing all leading and trailing spaces from a new fruit name,
and combine consecutive internal spaces to one, before any other
manipulations.  (This can result in names that used to work as-is now
being simplified a bit--when consecutive internal spaces have been
given--but that shouldn't be a problem.)

Also, don't complain about "missing parameter for 'fruit:'" if user
hits <return> when prompted for fruit name by 'O'.  An empty fruit
name at that stage is just a no-op.

6 years agoChanges to font size and vary_msgcount options for Windows nethack ports.
Bart House [Sun, 9 Dec 2018 22:37:07 +0000 (14:37 -0800)]
Changes to font size and vary_msgcount options for Windows nethack ports.

6 years agoNetHackW default font changed from "Terminal" to "Courier New"
Bart House [Sun, 9 Dec 2018 22:06:25 +0000 (14:06 -0800)]
NetHackW default font changed from "Terminal" to "Courier New"

6 years agoMerge branch 'win-minor' into win-fontmap
Bart House [Sun, 9 Dec 2018 22:02:57 +0000 (14:02 -0800)]
Merge branch 'win-minor' into win-fontmap

# Conflicts:
# win/win32/mhmap.c

6 years agoThree fixes to NetHackW font handling.
Bart House [Sun, 9 Dec 2018 19:57:50 +0000 (11:57 -0800)]
Three fixes to NetHackW font handling.

Check that player level is valid before checking if it is rogue.
Prevent attempting to pick a font that is too small.
Don't leak fonts when trying to find a font that fits.

6 years agoRender the two block glyphs using FillRect instead of DrawText.
Bart House [Sun, 9 Dec 2018 19:30:29 +0000 (11:30 -0800)]
Render the two block glyphs using FillRect instead of DrawText.

6 years agoMerge branch 'NetHack-3.6.2-beta01' into win-minor
nhmall [Sun, 9 Dec 2018 18:47:12 +0000 (13:47 -0500)]
Merge branch 'NetHack-3.6.2-beta01' into win-minor

6 years agosome early startup adjustments
nhmall [Sun, 9 Dec 2018 18:09:30 +0000 (13:09 -0500)]
some early startup adjustments

6 years agofixes entry for foxen refix
nhmall [Sun, 9 Dec 2018 15:31:07 +0000 (10:31 -0500)]
fixes entry for foxen refix

commit e0927cd983097392efd06cec32cba43ee828fb82 fixes #167

6 years agoMerge branch 'foxen_fix' into NetHack-3.6.2-beta01
nhmall [Sun, 9 Dec 2018 15:19:27 +0000 (10:19 -0500)]
Merge branch 'foxen_fix' into NetHack-3.6.2-beta01

6 years agomore windmain
nhmall [Sun, 9 Dec 2018 15:14:19 +0000 (10:14 -0500)]
more windmain

6 years agoFix resurfacing of "foxen" pluralization bug
copperwater [Sun, 9 Dec 2018 14:51:47 +0000 (09:51 -0500)]
Fix resurfacing of "foxen" pluralization bug

Inadvertently reintroduced in f9f1236. It was just the conditional
that was bad: due to resolving the possible buffer underflow when
comparing to "muskox", the pluralizer now only adds -es when the length
of the string is greater than 5. So for "box" and "fox" the pluralizer
will never add the -es ending, since they are greater than 5.

This commit checks for "does not end in muskox" correctly.

6 years agoclean up some tear-down
nhmall [Sun, 9 Dec 2018 04:04:53 +0000 (23:04 -0500)]
clean up some tear-down

Windows continued to use function pointers belonging
to particular window ports that were still assigned
even after that port (tty) had gone through its
shutdown procedures when requested by the core.
Fix that and return to the minimal function pointers
that are not part of any of the actual WindowPorts.

6 years agoclean up Windows exit routines
nhmall [Sun, 9 Dec 2018 03:34:50 +0000 (22:34 -0500)]
clean up Windows exit routines

6 years agoa late bot() call was observed on GUI Windows so prevent such a crash
nhmall [Sun, 9 Dec 2018 03:08:55 +0000 (22:08 -0500)]
a late bot() call was observed on GUI Windows so prevent such a crash

6 years agomore startup tweaking for Windows
nhmall [Sun, 9 Dec 2018 02:17:34 +0000 (21:17 -0500)]
more startup tweaking for Windows

6 years agoUpdate Visual Studio projects to reflect recent change
nhmall [Sun, 9 Dec 2018 01:24:24 +0000 (20:24 -0500)]
Update Visual Studio projects to reflect recent change

6 years agoMakefile.msc bit
nhmall [Sun, 9 Dec 2018 01:11:25 +0000 (20:11 -0500)]
Makefile.msc bit

6 years agorelocate safeproc.c from sys/share to win/share
nhmall [Sun, 9 Dec 2018 01:09:58 +0000 (20:09 -0500)]
relocate safeproc.c from sys/share to win/share

6 years agoMakefile.msc update
nhmall [Sat, 8 Dec 2018 23:45:48 +0000 (18:45 -0500)]
Makefile.msc update

6 years agoWindows startup modifications
nhmall [Sat, 8 Dec 2018 22:56:20 +0000 (17:56 -0500)]
Windows startup modifications
 Changes to be committed:
modified:   include/winprocs.h
modified:   src/options.c
modified:   sys/share/pcmain.c
new file:   sys/share/safeproc.c
modified:   sys/winnt/Makefile.msc
modified:   sys/winnt/stubs.c
new file:   sys/winnt/windmain.c
modified:   sys/winnt/winnt.c
modified:   win/win32/vs2017/NetHack.vcxproj
modified:   win/win32/vs2017/NetHackW.vcxproj
modified:   win/win32/winhack.c

Because multiple window ports are supported on Windows
now, even in the same executable and selectable via
config file in some cases, some adjustments became
necessary. There will likely be some further refining
of this over the next day or two.

List of changes:

Move Windows startup from sys/share/pcmain.c and
into its own sys/winnt/windmain.c so that it can
be modified to fix some current breakage, and
allow altering the order of some things.

There is startup processing code that is common to
all of the Windows WindowPorts, but that startup
processing code needs to have no dependency on
any one of those WindowPorts.

Yet, during startup processing, some of the initialization
routines can end up calling NetHack functions that
expect an active Window port underneath, and if there
isn't one, routines like pline, impossible, panic can
end up invoking null function pointers.

Place a new file sys/share/safeproc.c, in which a complete
window port is available for early startup processing
purposes. It's WindowPort name field is set to
"safe-startup" just for reference.  The prototypes in
include/winprocs.h require that SAFEPROCS be

Usage:

 windowprocs = get_safe_procs(0);
initializes a set of winprocs function pointers that ensure
none of the function pointers are left null, but that's all it does.

 windowprocs = get_safe_procs(1);
initializes a set of winprocs functions pointers that ensure
none of the function pointers are left null, but also
provides some basic output and input functionality using nothing
other than C stdio routines (no platform or OS specific code).

The conditional code related to WIN32 has been removed from
sys/share/pcmain.c

The code common to all of the Windows WindowPorts calls
get_safe_procs() almost immediately to ensure that
there is a set of WindowPort winprocs available.

6 years agorecursive destroy_item()
PatR [Sat, 8 Dec 2018 00:51:18 +0000 (16:51 -0800)]
recursive destroy_item()

Make the sequence:
  be zapped by lightning,
  have worn ring of levitation be destroyed,
  fall onto fire trap
work better.  The fire trap handling will mark everything in inventory
as already processed; anything vulnerable to lightning past the destroyed
ring would not be checked.  So delay destroying such a ring until after
all of inventory has been subjected to lightning.

6 years agogold highlight bit
PatR [Sat, 8 Dec 2018 00:37:24 +0000 (16:37 -0800)]
gold highlight bit

Keep type/value straight:  'update_all' is boolean, not ordinary int.

6 years agoback out some spider changes
nhmall [Sat, 8 Dec 2018 00:12:56 +0000 (19:12 -0500)]
back out some spider changes

After consultation with the original committer, this
is being pulled out, possibly revisited later. There was
originally meant to be a follow-up piece to this that he
never had a chance to integrate for various reasons.

6 years agoClear the getlin buffer
Pasi Kallinen [Fri, 7 Dec 2018 20:18:50 +0000 (22:18 +0200)]
Clear the getlin buffer

Recent change to this bit of code didn't clear the buffer,
which causes garbage in the string if compiled with EDIT_GETLIN

6 years agoMerge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource...
nhmall [Fri, 7 Dec 2018 14:40:38 +0000 (09:40 -0500)]
Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01

6 years agoadd MM_NOGRP makemon() flag
nhmall [Fri, 7 Dec 2018 14:29:01 +0000 (09:29 -0500)]
add MM_NOGRP makemon() flag

add MM_NOGRP makemon() flag as a means of suppressing groups of monsters in
a couple places that warrant it when a specific monster type isn't
specified on the call to makemon()

6 years agomenucolors
PatR [Fri, 7 Dec 2018 09:20:20 +0000 (01:20 -0800)]
menucolors

In the 'special options' section at the end of 'O's menu, change the
spelling for the menucolors entry to "menu colors" so that it isn't
spelled exactly the same as the 'menucolors' boolean option.  Only
affects what the player sees when reading that menu.

If player uses 'O' to add any menu colors and 'menucolors' boolean is
Off at the time, give a reminder to toggle it to On in order to have
those menu colorings become active.  (Adding hilite_status entries has
a similar reminder for 'statushilites' if done while that is 0.)

6 years agofix #H7655 - highlighting gold
PatR [Fri, 7 Dec 2018 08:36:38 +0000 (00:36 -0800)]
fix #H7655 - highlighting gold

With options along the line of
 OPTIONS=statushilites:4
 HILITE_STATUS=gold/always/yellow
gold started out unhighlighted (unhighlit?).  I didn't try to figure
out why, just changed things to force a full status update when gold
requires internal changes (different \G encoding or different glyph)
which is something that happens when session first enters moveloop().

6 years agoadd MM_ASLEEP makemon() flag and honor it for fill_zoo
nhmall [Fri, 7 Dec 2018 03:30:15 +0000 (22:30 -0500)]
add MM_ASLEEP makemon() flag and honor it for fill_zoo

6 years agofix #H7686 - destroy_item()'s inventory traversal
PatR [Fri, 7 Dec 2018 01:27:36 +0000 (17:27 -0800)]
fix #H7686 - destroy_item()'s inventory traversal

Inventory traversal can be disrupted when items being traversed are
able to change inventory.  I've lost track of how many times this
sort of thing has been discovered.

Report claimed that boiled potion of polymorph caused transformation
which resulted in dropped weapon and dropped or destroyed worn armor.
That was evidently a guess; potionbreathe() for that potion only
abuses constitution.  The traceback showed 'you_were()' was involved.
Boiled potion of unholy water triggers human-to-beast transformation
of hero inflicted with lycanthropy, yielding similar situation.

I didn't notice anything unusual when reproducing this but inventory
was definitely vulnerable.  My 'one line' fixes entries are steadily
getting to be more verbose; I may have to go back to 'fix bug'.  :-}

6 years agoMerge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource...
nhmall [Thu, 6 Dec 2018 04:45:56 +0000 (23:45 -0500)]
Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01

6 years agoheader update on cursstat.c
nhmall [Thu, 6 Dec 2018 04:43:59 +0000 (23:43 -0500)]
header update on cursstat.c

6 years agomore green slime
PatR [Wed, 5 Dec 2018 22:56:03 +0000 (14:56 -0800)]
more green slime

When a hero dies due to turning into green slime, actually polymorph
him into a green slime monster before killing him off.  That way he'll
show as a green 'P' on the map instead of white '@' during final
disclosure.  Also, armor that gets destroyed by polymorphing into that
form will be absent from resulting bones file.

6 years agoupdate header on curswins
nhmall [Wed, 5 Dec 2018 22:45:40 +0000 (17:45 -0500)]
update header on curswins

6 years agoupdate header on cursstat
nhmall [Wed, 5 Dec 2018 22:45:15 +0000 (17:45 -0500)]
update header on cursstat

6 years agoupdate header on cursmisc
nhmall [Wed, 5 Dec 2018 22:44:08 +0000 (17:44 -0500)]
update header on cursmisc

6 years agoupdate header on cursmesg
nhmall [Wed, 5 Dec 2018 22:43:33 +0000 (17:43 -0500)]
update header on cursmesg

6 years agoupdate header on cursmain
nhmall [Wed, 5 Dec 2018 22:42:49 +0000 (17:42 -0500)]
update header on cursmain

6 years agoupdate header on cursinvt
nhmall [Wed, 5 Dec 2018 22:42:11 +0000 (17:42 -0500)]
update header on cursinvt

6 years agoupdate header on cursinit
nhmall [Wed, 5 Dec 2018 22:41:30 +0000 (17:41 -0500)]
update header on cursinit

6 years agoupdate header on cursdial
nhmall [Wed, 5 Dec 2018 22:40:33 +0000 (17:40 -0500)]
update header on cursdial

6 years agoAdd missing valid location descriptors
Pasi Kallinen [Wed, 5 Dec 2018 21:15:14 +0000 (23:15 +0200)]
Add missing valid location descriptors

6 years agoValid cursor locations showed null
Pasi Kallinen [Wed, 5 Dec 2018 20:39:11 +0000 (22:39 +0200)]
Valid cursor locations showed null

When getting a cursor location, and there was no "valid" location
function defined, trying to go to the next or previous valid
location showed null.

Fix this by using the "interesting" locations if no valid ones.

6 years agoFake leash object is not attached
Pasi Kallinen [Wed, 5 Dec 2018 20:35:59 +0000 (22:35 +0200)]
Fake leash object is not attached

When farlooking at a fake leash object, make it explicitly not
be attached to a monster.

6 years agofix #H6292 - green slime & genocide
PatR [Wed, 5 Dec 2018 09:45:16 +0000 (01:45 -0800)]
fix #H6292 - green slime & genocide

Report suggested that if hero is turning into green slime, genociding
green slime should cure it.  I went another direction:  if life-saved
while dying due to turning into green slime, you survive polymorphed
into green slime form.  If green slimes have been genocided (probably
after becoming infected with slime or hero wouldn't have faced any
slimes to cause infection, but that could be from eating a glob of
green slime created prior to genocide, or from #wizintrinsic), you'll
immediately die again, this time from genocide.

6 years agosome updates to curses
nhmall [Wed, 5 Dec 2018 03:22:43 +0000 (22:22 -0500)]
some updates to curses

Tangles updates

6 years agoMerge branch 'NetHack-3.6.2-beta01' into macosx-minor
nhmall [Wed, 5 Dec 2018 02:39:16 +0000 (21:39 -0500)]
Merge branch 'NetHack-3.6.2-beta01' into macosx-minor

6 years agofix #H7667 - maybe_reset_pick(), other bad context
PatR [Wed, 5 Dec 2018 01:10:15 +0000 (17:10 -0800)]
fix #H7667 - maybe_reset_pick(), other bad context

When deciding whether to discard interrupted lock/unlock context while
changing levels, maybe_reset_pick() checks whether xlock.box is being
carried.  But it was doing so after the old level had been saved and
memory for non-carried container there had been freed.

That led to a couple of other issues.  context.travelcc was using -1
for 'no cached value', but the fields of travelcc have type 'xchar' and
shouldn't be given negative values.  0 should be fine for 'no cache'.

Failed partial restore which occurred after old game's context had been
loaded would begin a new game with old game's stale context.  Restoring
goes out of its way to avoid that for 'flags' but didn't for 'context'.

6 years agoRevert "some fixes provided from Hardfought"
nhmall [Tue, 4 Dec 2018 16:59:41 +0000 (11:59 -0500)]
Revert "some fixes provided from Hardfought"

This reverts commit ab9e28d1aaa7a009e5051dcbee6bbbccf62804e5.

6 years agosome fixes provided from Hardfought
nhmall [Tue, 4 Dec 2018 16:58:05 +0000 (11:58 -0500)]
some fixes provided from Hardfought

6 years agoMerge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource...
nhmall [Tue, 4 Dec 2018 16:46:19 +0000 (11:46 -0500)]
Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01

6 years agobit-use collision on WC2_TERM_SIZE, WC2_RESET_STATUS
nhmall [Tue, 4 Dec 2018 16:45:41 +0000 (11:45 -0500)]
bit-use collision on WC2_TERM_SIZE, WC2_RESET_STATUS

6 years agofix #H7659 - accessing freed memory by cutworm()
PatR [Tue, 4 Dec 2018 02:57:01 +0000 (18:57 -0800)]
fix #H7659 - accessing freed memory by cutworm()

hmon() can destroy the weapon being used, and known_hitum() would
still pass the pointer to the freed object to cutworm().  Remember the
relevant weapon attribute before using and maybe freeing the object,
then pass that attribute instead of the whole weapon.  Also pass
'more-likely-to-cut' for axes in addition to blades.

thimonst() behaved similarly, although due to much different code
paths none of the objects that might get to hmon() were then passed to
cutworm(), so it wasn't vulnerable.  But pass 'more-likely-to-cut'
for axes instead of for blades when thrown.

6 years agomore !SHELL, !SUSPEND
PatR [Mon, 3 Dec 2018 09:46:01 +0000 (01:46 -0800)]
more !SHELL, !SUSPEND

Update tty command completion to ignore #shell and #suspend when
they're disabled.  (Since they aren't flagged for command completion,
this should be unnoticeable.)

Update X11 extended command selection to not show shell and suspend
in the menu when they're disabled.  (Trickier than I expected.)

X11 currently rejects #suspend (at run time, not compile time) but
allows #shell.  If it was launched syncronously from a terminal
window, shell escape behaves sanely.  Otherwise, that seems like
asking for trouble.

6 years agoMerge branch 'win-minor' of https://rodney.nethack.org:20040/git/NHsource into win...
Bart House [Mon, 3 Dec 2018 04:23:03 +0000 (20:23 -0800)]
Merge branch 'win-minor' of https://rodney.nethack.org:20040/git/NHsource into win-minor

6 years agoFix for NetHackW.exe menu icon rendering.
Bart House [Mon, 3 Dec 2018 04:22:47 +0000 (20:22 -0800)]
Fix for NetHackW.exe menu icon rendering.

6 years agoMerge branch 'win-minor' into NetHack-3.6.2-beta01
nhmall [Mon, 3 Dec 2018 02:26:54 +0000 (21:26 -0500)]
Merge branch 'win-minor' into NetHack-3.6.2-beta01

6 years agoAdded some missing header files to VS2017 NetHackW project.
Bart House [Mon, 3 Dec 2018 02:15:02 +0000 (18:15 -0800)]
Added some missing header files to VS2017 NetHackW project.

6 years agoSplash dialog and main window handle dpi change notifications.
Bart House [Mon, 3 Dec 2018 02:09:34 +0000 (18:09 -0800)]
Splash dialog and main window handle dpi change notifications.

6 years agocommand handling for !SHELL and !SUSPEND
PatR [Mon, 3 Dec 2018 00:43:53 +0000 (16:43 -0800)]
command handling for !SHELL and !SUSPEND

Change the command list to always include #shell and #suspend so that
a user's preferred key bindings can span platforms without worrying
about whether those exist or not.  They're still effectively no-ops
when compiled out.

'#?' suppresses them from the list of displayed commands.  Interface-
specific extended command handling may want to check new extcmd.flag
value CMD_NOT_AVAILABLE to do the same, but failing to do so shouldn't
pose a problem.  They behave sanely if executed when not supported.

6 years agoMerge branch 'win-minor' into NetHack-3.6.2-beta01
nhmall [Mon, 3 Dec 2018 00:42:12 +0000 (19:42 -0500)]
Merge branch 'win-minor' into NetHack-3.6.2-beta01

6 years ago'curses_display_nhmenu' should return a value
nhmall [Sun, 2 Dec 2018 23:47:23 +0000 (18:47 -0500)]
'curses_display_nhmenu' should return a value

Caught by automated build test

../win/curses/cursdial.c:598:9: error: non-void function 'curses_display_nhmenu' should return a value [-Wreturn-type]
        return;
        ^
../win/curses/cursdial.c:605:9: error: non-void function 'curses_display_nhmenu' should return a value [-Wreturn-type]
        return;

6 years agoUpdate comment within mswin_status_string.
Bart House [Sun, 2 Dec 2018 21:35:48 +0000 (13:35 -0800)]
Update comment within mswin_status_string.

6 years agoRespect BL_FLUSH and BL_RESET indications to mswin_status_update.
Bart House [Sun, 2 Dec 2018 21:33:07 +0000 (13:33 -0800)]
Respect BL_FLUSH and BL_RESET indications to mswin_status_update.

6 years agoNetHackW status hilite support improved to include support for attributes.
Bart House [Sun, 2 Dec 2018 21:25:03 +0000 (13:25 -0800)]
NetHackW status hilite support improved to include support for attributes.

6 years agoremove slipped-in partial bits from another feature
nhmall [Sun, 2 Dec 2018 16:54:42 +0000 (11:54 -0500)]
remove slipped-in partial bits from another feature

Some bits from another feature by Tangles had
slipped into our merge of curses a while back.

Remove the partial bits as feature bits should
be complete or not at all, unless foundational
for something to come.

6 years agocurses - reinstate guicolors
Tangles [Wed, 16 May 2018 11:43:05 +0000 (21:43 +1000)]
curses - reinstate guicolors

6 years agocurses - don't use popup for count selection.
Tangles [Mon, 28 May 2018 11:55:24 +0000 (21:55 +1000)]
curses - don't use popup for count selection.

There are issues with dismissing the popup afterwards.  These
were not really investigated as a count-selection doesn't really
warrant a popup anyway.

6 years agocurses - fix hero turning into # when selecting a count of items.
Tangles [Sun, 27 May 2018 12:49:54 +0000 (22:49 +1000)]
curses - fix hero turning into # when selecting a count of items.

Why was that line in there anyway?

6 years agocurses - don't autocomplete wiz cmds except in wizmode
Tangles [Fri, 25 May 2018 13:06:51 +0000 (23:06 +1000)]
curses - don't autocomplete wiz cmds except in wizmode

6 years agocurses - change some panics to impossibles.
Tangles [Wed, 25 Jul 2018 12:06:33 +0000 (22:06 +1000)]
curses - change some panics to impossibles.

6 years agoadd a macro to ease conditional testing based on active window port
nhmall [Sun, 2 Dec 2018 14:56:44 +0000 (09:56 -0500)]
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!");

6 years agofix a build error in cmd.c
nhmall [Sun, 2 Dec 2018 14:45:07 +0000 (09:45 -0500)]
fix a build error in cmd.c

6 years agoSting revisited
PatR [Sun, 2 Dec 2018 10:09:22 +0000 (02:09 -0800)]
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.

6 years agozap.c formatting bit
PatR [Sun, 2 Dec 2018 09:51:23 +0000 (01:51 -0800)]
zap.c formatting bit

that's been sitting around for a while and I want to get out of the way.

6 years agodebug_fuzzer vs '!' and ^Z
PatR [Sun, 2 Dec 2018 00:43:13 +0000 (16:43 -0800)]
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().

6 years agoRemove some Windows-specific code from src/cmd.c
nhmall [Sun, 2 Dec 2018 00:24:22 +0000 (19:24 -0500)]
Remove some Windows-specific code from src/cmd.c

6 years agomake curses commented out by default (again)
nhmall [Sat, 1 Dec 2018 16:31:08 +0000 (11:31 -0500)]
make curses commented out by default (again)

6 years agoget rid of some gcc warnings with Windows build
nhmall [Sat, 1 Dec 2018 14:41:22 +0000 (09:41 -0500)]
get rid of some gcc warnings with Windows build

6 years agoglyph variable is actually used
Pasi Kallinen [Sat, 1 Dec 2018 06:58:36 +0000 (08:58 +0200)]
glyph variable is actually used

6 years agoMerge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource...
nhmall [Sat, 1 Dec 2018 01:20:05 +0000 (20:20 -0500)]
Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01

6 years agomore gcc work for Windows
nhmall [Sat, 1 Dec 2018 01:17:42 +0000 (20:17 -0500)]
more gcc work for Windows

tty builds and executes
curses builds but crashes

gui - not even trying right now

6 years agoX11 text popup fix
PatR [Sat, 1 Dec 2018 00:02:55 +0000 (16:02 -0800)]
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.

6 years agomore Windows Makefile synch and gcc Makefile updates
nhmall [Fri, 30 Nov 2018 23:44:37 +0000 (18:44 -0500)]
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.

6 years agocurses follow-up bits
nhmall [Fri, 30 Nov 2018 21:00:24 +0000 (16:00 -0500)]
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.

6 years agoX11: Disable menucolors when showing text files
Pasi Kallinen [Fri, 30 Nov 2018 13:26:38 +0000 (15:26 +0200)]
X11: Disable menucolors when showing text files

6 years agotypos
nhmall [Fri, 30 Nov 2018 03:37:54 +0000 (22:37 -0500)]
typos

6 years agomore Windows gcc cleanup
nhmall [Fri, 30 Nov 2018 03:32:36 +0000 (22:32 -0500)]
more Windows gcc cleanup

Still not finished

6 years agoMerge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource...
nhmall [Fri, 30 Nov 2018 03:23:58 +0000 (22:23 -0500)]
Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01

6 years agomore Makefile.gcc work
nhmall [Fri, 30 Nov 2018 03:23:17 +0000 (22:23 -0500)]
more Makefile.gcc work

Still not completed

6 years agovms/Makefile.src
PatR [Fri, 30 Nov 2018 02:45:37 +0000 (18:45 -0800)]
vms/Makefile.src

Catch up with recent changes to vmsbuild.com and unix/Makefile.src.

6 years agoworkaround for ^G "senior moment"
PatR [Fri, 30 Nov 2018 02:33:34 +0000 (18:33 -0800)]
workaround for ^G "senior moment"

The less said, the better.

6 years agodowngrade Sting's glow
PatR [Fri, 30 Nov 2018 02:19:20 +0000 (18:19 -0800)]
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.

6 years agomore steed dismount
PatR [Fri, 30 Nov 2018 02:02:52 +0000 (18:02 -0800)]
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.

6 years agomake some progress on mingw build
nhmall [Fri, 30 Nov 2018 01:59:03 +0000 (20:59 -0500)]
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.