]> granicus.if.org Git - nethack/log
nethack
9 years agomore new status - update genl_status_update
PatR [Fri, 15 Jan 2016 11:30:40 +0000 (03:30 -0800)]
more new status - update genl_status_update

Make genl_status_update behave approximately the same as basic bot2
when processing the second status line.  Preferred order:
Dlvl  Gold  Hp(HpMax) Pw(PwMax) AC  Xp  Time  Conditions
Alternate orders if above exceeds COLNO (note several extra spaces
get sequeezed out).  First one is used if everything except time fits,
second one is used if everything except experience (which can be wide
if 'showexp' option is on) and time fits, third is last resort:
Dlvl Gold Hp(HpMax) Pw(PwMax) AC Xp Conditions Time
Dlvl Gold Hp(HpMax) Pw(PwMax) AC Conditions Xp Time
Hp(HpMax) Pw(PwMax) AC Conditions Dlvl Gold Xp Time

Basic bot2 currently has Conditions as
Stone Slime Strngl FoodPois TermIll <hunger> <encumbrance> Blind Deaf
 Stun Conf Hallu Lev Fly Ride
genl_status_update has
<hunger> <encumbrance> Stone Slime Strngl FoodPois TermIll Blind Deaf
 Stun Conf Hallu Lev Fly Ride
which is as close as it can get with the current field organization.

Tested by temporarily changing tty_procs.status_init and .status_update
to use genl_* instead of tty_*.

9 years agobz24: Wrong floor descriptions on Planes when levitating and going down
Pasi Kallinen [Fri, 15 Jan 2016 11:15:09 +0000 (13:15 +0200)]
bz24: Wrong floor descriptions on Planes when levitating and going down

9 years agoMinor formatting fix
Pasi Kallinen [Fri, 15 Jan 2016 11:02:42 +0000 (13:02 +0200)]
Minor formatting fix

9 years agoWarning glyph description is wrong when trap symbol is same
Pasi Kallinen [Fri, 15 Jan 2016 10:37:58 +0000 (12:37 +0200)]
Warning glyph description is wrong when trap symbol is same

This fixes bz23: Warning glyph info wrong with TRAPS=50, even
though you don't set the trap symbols via TRAPS anymore, the
bug still existed. To trigger it, use SYMBOL=S_arrow_trap:2
and look at monster that appears as warning '2'.

9 years agowin32gui menu color attribute fix
nhmall [Fri, 15 Jan 2016 04:02:09 +0000 (23:02 -0500)]
win32gui menu color attribute fix

from Alex Kompel...

9 years agoMerge branch 'win32-guitty' into NetHack-3.6.0
nhmall [Fri, 15 Jan 2016 00:07:48 +0000 (19:07 -0500)]
Merge branch 'win32-guitty' into NetHack-3.6.0

9 years agowin32_gui: fix inventory window visibility when perm_invent is set in game
Alex Kompel [Thu, 14 Jan 2016 16:15:56 +0000 (08:15 -0800)]
win32_gui: fix inventory window visibility when perm_invent is set in game

9 years agostatus line update
PatR [Thu, 14 Jan 2016 03:13:10 +0000 (19:13 -0800)]
status line update

Adding deafness to the status line spurred me on to something I've
wanted to do for a long time.  This adds 'Stone' and 'Strngl' as
new status conditions, and moves the five fatal ones: "Stone Slime
Strngl FoodPois TermIll" to the front of the status list since
information about them is more important than any of the others.
"Ill" has been renamed "TermIll"; "Df" has been renamed "Deaf";
"Lev", "Fly", and "Ride" are three additional new conditions, with
Lev and Fly being mutually exclusive.  After the fatal ones, the
order of the rest is now
<hunger> <encumbrance> Blind Deaf Stun Conf Hallu Lev Fly Ride

To handle the longer potential status line, the basic bot2() is now
smarter.  If the line is wider than the map, 'T:moves' is moved from
the middle to the end.  If the line without time is still wider than
the map, then experience (HD if polyd, Xp:M/nnnnnn is showexp is on,
or Exp:M) is moved in front of time at the end.  If the line without
experience and time is still wider than the map, dungeon level plus
gold is moved from the beginning to be in front of experience.  The
fields are just reordered, not truncated, so if the interface code
can display lines wider than the map they'll retain the extra info.
The gist is than health and associated fields (Hp, Pw, Ac) get first
priority, status conditions get second priority, then the rest.  In
the usual case where there aren't many conditions, status display is
the same as it has been in the past.

STATUS_VIA_WINDOWPORT has been updated too, and it builds for tty
and X11.  But the bot2() revision to reorder sections has not been
implemented for that.

win/win32/mswproc.c has been updated but not tested.

STATUS_VIA_WINDOWPORT without STATUS_HILITES had several compile
problems; now fixed for core and tty.  STATUS_VIA_WINDOWPORT with
STATUS_HILITES has not been tested.

9 years agoAdd more color aliases for menucolors and statushilites
Pasi Kallinen [Wed, 13 Jan 2016 18:35:06 +0000 (20:35 +0200)]
Add more color aliases for menucolors and statushilites

9 years agoMake status hilites use same color string matching as menucolors
Pasi Kallinen [Wed, 13 Jan 2016 18:24:40 +0000 (20:24 +0200)]
Make status hilites use same color string matching as menucolors

9 years agoRename getpos_coord values to "compass" and "map"
Pasi Kallinen [Wed, 13 Jan 2016 10:21:27 +0000 (12:21 +0200)]
Rename getpos_coord values to "compass" and "map"

9 years agoMake getpos monster/object coord picker deterministic
Pasi Kallinen [Wed, 13 Jan 2016 08:22:41 +0000 (10:22 +0200)]
Make getpos monster/object coord picker deterministic

...and make it pick coordinates top-left to bottom-right.

9 years agogetpos autodescribe
PatR [Wed, 13 Jan 2016 07:10:31 +0000 (23:10 -0800)]
getpos autodescribe

Move the details of autodescribe out of getpos into a separate
routine.

I think 'cartesian' mode should be renamed 'compass' mode, and
'absolute' mode perhaps should be 'map' mode.  And we should have
a new 'screen' mode which shows rows,columns (1..N rather than
0..N-1).  For tty, row is line+2; message and prompting "window"
is row 1, line 0 of map is row 2.  Columns are straightforward
since column 0 of the map isn't used for map display:  column 1
of map is column 1 of screen.  Non-tty mostly shouldn't care and
might as well use the same conversion.

9 years agoupdate fixes36.1
nhmall [Wed, 13 Jan 2016 05:12:31 +0000 (00:12 -0500)]
update fixes36.1

9 years agoshow deafness indicator on status line
nhmall [Wed, 13 Jan 2016 04:43:28 +0000 (23:43 -0500)]
show deafness indicator on status line

May as well show a deafness indicator.

9 years agosilly thing bit
PatR [Wed, 13 Jan 2016 02:00:43 +0000 (18:00 -0800)]
silly thing bit

Simplify some conditionally excluded, obsolete but not yet
discarded code.

This is something else I thought I'd checked in a long time ago.
I must have clobbered pending changes to invent.c at some point.

9 years agogetobj() magic marker candidate items
PatR [Wed, 13 Jan 2016 01:50:32 +0000 (17:50 -0800)]
getobj() magic marker candidate items

When applying a magic marker, only list known blank scrolls and known
blank spellbooks as likely candidates to write on.  Accepts any scroll
or book (but non-blank ones will get rejected by the writing code).
Attempting to choose some other class of item yields "that is a silly
thing to write on", same as before.

This was requested during beta testing and I'd swear that I checked it
in a long time ago, but it wasn't here.

9 years agobit of X11 reformating
PatR [Tue, 12 Jan 2016 10:20:43 +0000 (02:20 -0800)]
bit of X11 reformating

Cleanup up the copyright notice in dialogs.c, and replace some tabs.

9 years agoX11 extended command menu
PatR [Tue, 12 Jan 2016 10:15:35 +0000 (02:15 -0800)]
X11 extended command menu

Restore the ability to select extended commands by keystroke.
The key translation stuff had gotten attached to the wrong widget.

When using keys to highlight an entry in the extended command menu,
don't reset the key-by-key handling so quickly.  (On second and
subsequent keystrokes, if you waited more than 0.5 second, the new
key started picking an extended command from scratch rather than
continuing the current one, making it pretty hard to disambiguate
commands which have the same initial letter.  Now the delay
threshold is 2.5 seconds.  In theory that should become a user-
preference resource but I don't think it's worth the effort.)

Display the help choice in response to '?'.

Clean up the formatting of the top two buttons (dismiss + help).

Start with a scroll bar if the menu is too big to fit on the screen.
Prior to this, on OSX, the full menu would be constructed but any
of it that was 'displayed' beneath the bottom of the screen was
inaccessible because it couldn't be dragged higher and couldn't be
resized to get a scroll bar (since the way to resize on OSX is by
dragging the bottom right corner--which was off the screen).

The problems I mentioned recently are still present:  when scroll
bar is present, I can click beneath it and it moves down, but
neither dragging it up nor clicking above it will move it back up.
Fortunately the recently implemented up and down arrows both work,
even after clicking/dragging starts failing.

There was a lot of trial and error involved here.  Most of it
eventually got phased out, but the mystery of 'defaultDistance'
(which is reported to be 0 but is actually 4) remains.  The screen
height stuff at the end ought to be fixed up if someone can figure
out how to get the width of a horizontal scroll bar or the height
of a title bar.  (I'm sure I used to know how to do the latter,
but that was 25 or so years ago, and in Fortran with Xlib rather
than Xt or Xaw....)

9 years agoFix get_count: ^H should go left instead of backspacing a count
Pasi Kallinen [Tue, 12 Jan 2016 06:20:13 +0000 (08:20 +0200)]
Fix get_count: ^H should go left instead of backspacing a count

9 years agowin32_gui: cycle accelerator letters on large menues
Alex Kompel [Tue, 12 Jan 2016 04:54:59 +0000 (20:54 -0800)]
win32_gui: cycle accelerator letters on large menues

9 years agoMerge branch 'NetHack-3.6.0' into win32-guitty
nhmall [Mon, 11 Jan 2016 23:35:50 +0000 (18:35 -0500)]
Merge branch 'NetHack-3.6.0' into win32-guitty

9 years agoAdd getpos_coord to fixes file
Pasi Kallinen [Mon, 11 Jan 2016 19:12:52 +0000 (21:12 +0200)]
Add getpos_coord to fixes file

9 years agoAdd getpos_coord option
Pasi Kallinen [Mon, 11 Jan 2016 19:07:33 +0000 (21:07 +0200)]
Add getpos_coord option

Allows showing the coordinate when picking a position on the
map with '/' and autodescribe is on.

This is another blind player request

9 years agogetpos() 'm','M' and 'o','O'
PatR [Sun, 10 Jan 2016 22:42:06 +0000 (14:42 -0800)]
getpos() 'm','M' and 'o','O'

Always include the hero's location in the set of spots for 'm',&c to
cycle through.  This way the set will never be empty so checks for that
can be dropped, and choosing initial index becomes trivial (set to 0,
then increment to reach nearest spot of interest or decrement to reach
farthest).  Also, it makes it easier for player to see when successive
'm's,&c have been through all the interesting locations if there are
multiple monsters or objects clumped near the last one in the cycle.

9 years agoDocument fixes
Pasi Kallinen [Sun, 10 Jan 2016 16:54:35 +0000 (18:54 +0200)]
Document fixes

9 years agoFix bz175: Pile mark is shown when potion is destroyed
Pasi Kallinen [Sun, 10 Jan 2016 16:27:34 +0000 (18:27 +0200)]
Fix bz175: Pile mark is shown when potion is destroyed

Original bug report:

> When killing something that's carrying a potion, or death-drops a potion,
> or stands on top of a potion, with a force bolt or a wand of striking,
> "you hear something shatter" or "a potion of foo shatters" but the corpse
> is inverse as if it's (still) a pile.

Unfortunately the newsym() checks for already existing glyph, and
the gbuf doesn't distinguish between object piles and single items,
so newsym doesn't mark the location for update.

This is a dirty hack to force the newsym to update the glyph.
The glyph buffering should be revisited in a future version.

9 years agoFix unreferenced variable
Pasi Kallinen [Sun, 10 Jan 2016 16:24:38 +0000 (18:24 +0200)]
Fix unreferenced variable

9 years agoEnable TIMED_DELAY for linux hints files
Pasi Kallinen [Sun, 10 Jan 2016 13:03:23 +0000 (15:03 +0200)]
Enable TIMED_DELAY for linux hints files

runmode is completely useless in TTY without this

9 years agoSmall code cleanup
Pasi Kallinen [Sun, 10 Jan 2016 12:47:06 +0000 (14:47 +0200)]
Small code cleanup

9 years agoAdd compile-time option MSGHANDLER
Pasi Kallinen [Sun, 10 Jan 2016 11:01:46 +0000 (13:01 +0200)]
Add compile-time option MSGHANDLER

This was a feature request from a blind player; he wanted to
play a sound whenever a pline message was given.

9 years agoTTY: Add compile-time option for tile data hinting
Pasi Kallinen [Sun, 10 Jan 2016 08:35:27 +0000 (10:35 +0200)]
TTY: Add compile-time option for tile data hinting

Several people have asked if 3.6.0 supports playing with tiles on
a public server. Because there's no way for the user's end to know
what that white @ is, this adds special console escape codes for
tile hinting.

The idea was originally a patch called TelnetTiles by Justin Hiltscher,
but this expanded version comes via NAO, where it's been in use for years.

This is basically an interim hack, which should go away when/if
we support actual client-server model.

9 years agoAdd missing variable init
Pasi Kallinen [Sun, 10 Jan 2016 08:09:56 +0000 (10:09 +0200)]
Add missing variable init

9 years agotribute: Mort
PatR [Sun, 10 Jan 2016 02:17:15 +0000 (18:17 -0800)]
tribute: Mort

9 years agofix #H4083 - globs preID'd as "uncursed"
PatR [Sat, 9 Jan 2016 23:28:25 +0000 (15:28 -0800)]
fix #H4083 - globs preID'd as "uncursed"

I think there was also a report about this during beta testing.
Killing an ooze, slime, or pudding left a glob of same which had its
bknown flag pre-set so was immediately shown as "uncursed" even to
non-priests.  Use another way to maximize glob mergability:  allow
globs to merge even when one has bknown set and the other doesn't.

9 years agofix #H4187 - doppelgangers posing as Riders...
PatR [Sat, 9 Jan 2016 21:57:15 +0000 (13:57 -0800)]
fix #H4187 - doppelgangers posing as Riders...

... never transform and can leave Rider corpses

Riders can't be polymorphed, and the code to prevent that was also
preventing doppelgangers in Rider form from changing shape.

Using ring of protection from shape changers effectively turned such
doppelgangers into actual Riders which would leave self-reviving
corpses.  That didn't prevent Riders from appearing on the Astral
Plane though.

9 years agoAdd extended command #kick
Pasi Kallinen [Sat, 9 Jan 2016 11:39:45 +0000 (13:39 +0200)]
Add extended command #kick

I've seen some complaints about not being able to kick with ^d
so add kick as an extended command.

Also add the missing #exploremode command to the Guidebook.

9 years agoUpdate fixes
Pasi Kallinen [Sat, 9 Jan 2016 11:16:43 +0000 (13:16 +0200)]
Update fixes

9 years agoFix bz258: Covetous monsters malfunction when there are no upstairs
Pasi Kallinen [Sat, 9 Jan 2016 10:06:50 +0000 (12:06 +0200)]
Fix bz258: Covetous monsters malfunction when there are no upstairs

Make the monsters pick downstairs/ladders if the branch builds up
(like Sokoban), otherwise try upstairs/ladders.

9 years agoFix bz62: Pets walk into poison clouds
Pasi Kallinen [Sat, 9 Jan 2016 00:19:29 +0000 (02:19 +0200)]
Fix bz62: Pets walk into poison clouds

Makes monsters who would be damaged by the poison cloud
not walk into it

9 years agoTTY: Add menu_overlay option
Pasi Kallinen [Fri, 8 Jan 2016 20:17:37 +0000 (22:17 +0200)]
TTY: Add menu_overlay option

This was a request from a blind player.  It's hard to find
the left edge of the menu when it's drawn on the map, so
clear the screen and align menus to the left edge of the screen
when this option is turned off.

Originally this was called the window edge patch.

9 years agointegrate 'msgtype' option and Norep()
PatR [Fri, 8 Jan 2016 08:38:34 +0000 (00:38 -0800)]
integrate 'msgtype' option and Norep()

Allow 'msgtype=show' for messages that nethack uses Norep() for.
I don't know whether anyone will ever want to do that, but if felt
strange to have two different message suppression mechanisms that
were completely disconnected from each other.

For a user with no msgtype filter, there'll be no difference in
behavior.

9 years agoUse plain ASCII for the database
Pasi Kallinen [Fri, 8 Jan 2016 05:55:56 +0000 (07:55 +0200)]
Use plain ASCII for the database

9 years agoAdd some new database entries
Pasi Kallinen [Thu, 7 Jan 2016 20:38:33 +0000 (22:38 +0200)]
Add some new database entries

9 years agotypo spotted
nhmall [Thu, 7 Jan 2016 12:46:20 +0000 (07:46 -0500)]
typo spotted

9 years agofix #H4181 - strange death messages
PatR [Thu, 7 Jan 2016 09:53:06 +0000 (01:53 -0800)]
fix #H4181 - strange death messages

"Petrified by <foo>, while getting stoned." -- multi_reason "while
getting stoned" explains why no last-second recovery could be made,
but doesn't explain how the petrification happened, so suppress it.

"Died of starvation, while fainted from lack of food." -- nethack
does not display this; presumeably the IRC death notices for NAO are
generated from xlogfile entries.  Change 'while fainted from lack of
food' to 'while fainted' at time of death if reason for death is
starvation.  The longer version is accurate but sounds fairly silly.

When starvation is set in motion, set it up before checking whether
the initial faint triggers falling on a wielded cockatrice corpse, so
that fainting isn't applied after recovery in case of life-saving.

9 years agoMerge branch 'NetHack-3.6.0' of https://rodney.nethack.org:20040/git/NHsource into...
nhmall [Thu, 7 Jan 2016 02:04:37 +0000 (21:04 -0500)]
Merge branch 'NetHack-3.6.0' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.0

9 years agovault Deaf bits
nhmall [Thu, 7 Jan 2016 02:04:05 +0000 (21:04 -0500)]
vault Deaf bits

9 years agoMerge branch 'NetHack-3.6.0' into win32-guitty
nhmall [Thu, 7 Jan 2016 01:59:50 +0000 (20:59 -0500)]
Merge branch 'NetHack-3.6.0' into win32-guitty

9 years agofix #4138 - 'text bug' for freezing moat
PatR [Thu, 7 Jan 2016 01:57:39 +0000 (17:57 -0800)]
fix #4138 - 'text bug' for freezing moat

Freezing a moat--unlike other types of water--substitutes the type
of water (because that isn't "moat" for Medusa's level) in the freeze
message but was doing so after changing the affected terrain to ICE,
yielding "The ice is bridged with ice."

9 years agoMerge branch 'NetHack-3.6.0' of https://rodney.nethack.org:20040/git/NHsource into...
nhmall [Thu, 7 Jan 2016 01:21:29 +0000 (20:21 -0500)]
Merge branch 'NetHack-3.6.0' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.0

9 years agogetpos() for objects
PatR [Thu, 7 Jan 2016 00:47:30 +0000 (16:47 -0800)]
getpos() for objects

Extend the 'm' and 'M' functionality (move cursor to nearest monster
or farthest monster, respectively, then to next nearest/next farthest
when used successively) to 'o' and 'O' for objects.

'M' was picking the wrong monster (nearest) on first use; now fixed.
Hero is now included in the monster list, and will be the last one
reached if you cycle all the way through in either direction.  (Makes
it easier to tell that you have actually been all the way through.
Unfortunately, objects don't have any seen-'em-all indicator.  Perhaps
the hero's coordinates should go on that list too?)

9 years agoget_count() cleanup
PatR [Wed, 6 Jan 2016 23:37:46 +0000 (15:37 -0800)]
get_count() cleanup

Fix several warnings.  Accept ASCII RUBOUT (aka DELETE) in addition
to backspace.  [Should use erase_char (and add support for kill_char)
but that means pushing get_count() into the interface code.]  Guard
against user causing the count to wrap if someone ever adds a call to
get_count() which doesn't specifying a maximum value.

9 years agoMake getpos monster targeting use glyph lookup
Pasi Kallinen [Wed, 6 Jan 2016 19:42:45 +0000 (21:42 +0200)]
Make getpos monster targeting use glyph lookup

9 years agoFix possible lev_comp segfault when map was too tall
Pasi Kallinen [Wed, 6 Jan 2016 17:48:46 +0000 (19:48 +0200)]
Fix possible lev_comp segfault when map was too tall

9 years agoMake the raven medusa level shortsighted
Pasi Kallinen [Wed, 6 Jan 2016 16:54:21 +0000 (18:54 +0200)]
Make the raven medusa level shortsighted

This prevents all of the ravens mobbing the player immediately.

Change via Dynahack by Tung Nguyen

9 years agoAllow knife and stiletto as possible tin opening tools
Pasi Kallinen [Wed, 6 Jan 2016 16:40:41 +0000 (18:40 +0200)]
Allow knife and stiletto as possible tin opening tools

Via Dynahack, original idea from K-mod by Karadoc.

9 years agoFix weight of containers in lev_comp
Pasi Kallinen [Wed, 6 Jan 2016 16:25:17 +0000 (18:25 +0200)]
Fix weight of containers in lev_comp

9 years agoFix the mtrack memset
Pasi Kallinen [Wed, 6 Jan 2016 16:15:04 +0000 (18:15 +0200)]
Fix the mtrack memset

9 years agoMake vault guard accept names starting with number
Pasi Kallinen [Wed, 6 Jan 2016 15:28:41 +0000 (17:28 +0200)]
Make vault guard accept names starting with number

Fix via Dynahack by Tung Nguyen

9 years agoUse define for iron ball weight increment
Pasi Kallinen [Wed, 6 Jan 2016 14:23:48 +0000 (16:23 +0200)]
Use define for iron ball weight increment

9 years agoPoison breath leaves a trail of poison gas clouds
Pasi Kallinen [Wed, 6 Jan 2016 14:05:40 +0000 (16:05 +0200)]
Poison breath leaves a trail of poison gas clouds

Original patch by L

9 years agoAllow dissolving iron bars with potion of acid
Pasi Kallinen [Wed, 6 Jan 2016 13:33:36 +0000 (15:33 +0200)]
Allow dissolving iron bars with potion of acid

Force-fight iron bars with wielded potion of acid to dissolve them

This change comes via UnNetHack by Patric Mueller.

9 years agoZapping wand of opening at yourself, unlock carried boxes
Pasi Kallinen [Wed, 6 Jan 2016 12:17:11 +0000 (14:17 +0200)]
Zapping wand of opening at yourself, unlock carried boxes

9 years agoAllow picking a used inventory letter from menu when #adjusting
Pasi Kallinen [Wed, 6 Jan 2016 12:05:24 +0000 (14:05 +0200)]
Allow picking a used inventory letter from menu when #adjusting

9 years agoUnify getting a count into single function
Pasi Kallinen [Wed, 6 Jan 2016 11:50:16 +0000 (13:50 +0200)]
Unify getting a count into single function

9 years agoFix bz66: Count number cannot be backspaced
Pasi Kallinen [Wed, 6 Jan 2016 09:50:07 +0000 (11:50 +0200)]
Fix bz66: Count number cannot be backspaced

... or at least partially fix it - ^H does now backspace.
I can't be bothered to dive into the (n)curses raw-mode stuff.

9 years agotribute: Equal Rites revisited
PatR [Wed, 6 Jan 2016 08:45:46 +0000 (00:45 -0800)]
tribute: Equal Rites revisited

The number of passages felt a little light, so split one of the
long-ish ones into two.  The punchline that now ends the first one was
being watered down by continuing the text, and an interesting bit that
was left out can be added to finish the second part.  They both lose
some context but I think they work ok separately.

9 years agoprovisional fix for bz239 - '[tty] Enter key...'
PatR [Wed, 6 Jan 2016 08:07:54 +0000 (00:07 -0800)]
provisional fix for bz239 - '[tty] Enter key...'

'... inconsistency in character creation menus'.

During role selection, the final 'is this ok?' menu has 'yes'
preselected so accepted <return> or <enter> to answer yes.  The
pick-role, pick-race, &c menus prior to getting to that stage didn't
have a default, so using <enter> meant nothing was chosen, and choosing
nothing was treated as a request to quit.  This changes that so it's a
request for 'random' instead.

'Provisional fix' because it ought to do this by making 'random' be a
pre-selected menu entry so that the default choice is visible.  But
that takes more effort than I'm inclined to expend on this.

9 years agofix getpos() m,M to move to next monster
PatR [Wed, 6 Jan 2016 07:19:14 +0000 (23:19 -0800)]
fix getpos() m,M to move to next monster

Fixing a couple of warnings led to discovery of a couple of real bugs.
Warnings:
1) -Wshadow warning for 'dist2' variable blocking access to dist2()
   function.
2) Declaration not at top of block not allowed for C89/C90 (let alone
   for pre-ANSI).
Bugs:
3) there might be 0 visible monsters, in which case the code prior to
   qsort will call alloc(0).  I think ANSI requires malloc(0) to return
   a unique pointer which can be freed, but pre-ANSI malloc might
   return Null to satisfy it, leading to panic from nethack's alloc().
4) visible monsters in direct line with hero horizontally or vertically
   were unintentionally skipped when collecting monster locations.

I think looking at monsters is the wrong way to implement this.  It
should be scanning the map for monster glyphs instead.  (Coin toss as
to whether it should also treat statues-shown-as-monsters as if they
were monsters while doing this.  I'm leaning towards yes.  And what
about warning glyphs and instances of the remembered-invisible monster
glyph?  They aren't interesting to look at but they might provide a
shortcut to positioning the cursor near something else.)

Using '^' to move to next trap moves from hero's position to end of
hero's line, then columns 1 to N of next line, and so on to bottom
right, then top left columns 1 to N, second line 1 to N, on down to
hero's line.  Having 'm' traverse monsters from nearest to farthest
feels like a noticeable inconsistency between the two.  Especially if
you move the cursor with direction or topology keystrokes prior to 'm'.

9 years agoOnly requiver pickup_thrown ammo and throwing weapons
Pasi Kallinen [Wed, 6 Jan 2016 02:58:37 +0000 (04:58 +0200)]
Only requiver pickup_thrown ammo and throwing weapons

9 years agoRedraw map when hilite_pile is toggled
Pasi Kallinen [Wed, 6 Jan 2016 02:41:57 +0000 (04:41 +0200)]
Redraw map when hilite_pile is toggled

9 years agoUpdate fixes entries
Pasi Kallinen [Wed, 6 Jan 2016 01:37:35 +0000 (03:37 +0200)]
Update fixes entries

9 years agoFix unmapped branch stairs on premapped levels
Pasi Kallinen [Wed, 6 Jan 2016 01:32:42 +0000 (03:32 +0200)]
Fix unmapped branch stairs on premapped levels

This happens when levelporting to the first Sokoban level in wizard mode
before visiting the level, causing the branch stairs to not appear until
the space it is in comes in sight of the player.

The issue was that levels flagged premapped would cause the special
level coder to call sokoban_detect() before fixup_special() had a chance
to place the branch stairs properly.

Fix from Dynahack by Tung Nguyen.

9 years agofix #H4179 - death reason for rotted globs
PatR [Wed, 6 Jan 2016 01:29:36 +0000 (17:29 -0800)]
fix #H4179 - death reason for rotted globs

'Poisoned by a rotted gray ooze corpse' should have been
'Poisoned by a rotted glob of gray ooze'.

eatcorpse() is called for non-corpse globs and then corpse_xname()
is called for them too to set up death reason for make_sick(), but
it didn't know anything about globs.  Now it does.  Blob size is
ignored since it's not relevant for cause of death.

9 years agoRemove double defines of hunger states
Pasi Kallinen [Wed, 6 Jan 2016 01:23:24 +0000 (03:23 +0200)]
Remove double defines of hunger states

9 years agoUse appropriate place description for drum of earthquake shake
Pasi Kallinen [Wed, 6 Jan 2016 01:17:32 +0000 (03:17 +0200)]
Use appropriate place description for drum of earthquake shake

Fix via Dynahack by Tung Nguyen

9 years agoAllow quickly moving cursor on monsters
Pasi Kallinen [Wed, 6 Jan 2016 01:04:13 +0000 (03:04 +0200)]
Allow quickly moving cursor on monsters

Original patch was mine, but this implementation took
ideas from Dynahack by Tung Nguyen

9 years agofix #H4179 - lava vs boots
PatR [Wed, 6 Jan 2016 00:17:38 +0000 (16:17 -0800)]
fix #H4179 - lava vs boots

Stepping onto lava destroyed water walking boots if they weren't
fireproof but didn't do that for other types of boots unless hero
was not fire resistant and got killed by the lava.  Burn up all
non-fireproof leather boots when stepping onto lava.

9 years agoClear mimic vision blocking after genocide
Pasi Kallinen [Tue, 5 Jan 2016 23:53:44 +0000 (01:53 +0200)]
Clear mimic vision blocking after genocide

Fix via Dynahack by Tung Nguyen

9 years agoMake mimics mimicing walls or trees also block light
Pasi Kallinen [Tue, 5 Jan 2016 23:44:18 +0000 (01:44 +0200)]
Make mimics mimicing walls or trees also block light

9 years agoNever route a travel path through boulders in Sokoban
Pasi Kallinen [Tue, 5 Jan 2016 23:04:56 +0000 (01:04 +0200)]
Never route a travel path through boulders in Sokoban

Change via Dynahack by Tung Nguyen

9 years agoRequiver pickup_thrown objects if quiver is empty
Pasi Kallinen [Tue, 5 Jan 2016 22:52:51 +0000 (00:52 +0200)]
Requiver pickup_thrown objects if quiver is empty

Change via Dynahack by Tung Nguyen

9 years agoMerge branch 'NetHack-3.6.0' of https://rodney.nethack.org:20040/git/NHsource into...
nhmall [Tue, 5 Jan 2016 22:32:59 +0000 (17:32 -0500)]
Merge branch 'NetHack-3.6.0' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.0

9 years agoAdd mtrack changes to fixes file
Pasi Kallinen [Tue, 5 Jan 2016 10:59:54 +0000 (12:59 +0200)]
Add mtrack changes to fixes file

9 years agotribute: Equal Rites
PatR [Tue, 5 Jan 2016 10:39:46 +0000 (02:39 -0800)]
tribute: Equal Rites

9 years agoMake (level) teleporting clear monster movement tracking
Pasi Kallinen [Tue, 5 Jan 2016 10:32:18 +0000 (12:32 +0200)]
Make (level) teleporting clear monster movement tracking

9 years agoFix bz276,H4172: Fleeing monsters don't actually flee
Pasi Kallinen [Tue, 5 Jan 2016 10:09:40 +0000 (12:09 +0200)]
Fix bz276,H4172: Fleeing monsters don't actually flee

This fix comes via DynaHack by Tung Nguyen.

9 years agoFix bz270, H4166: Finding a secret corridor shows it unlit with lit_corridor
Pasi Kallinen [Tue, 5 Jan 2016 08:00:27 +0000 (10:00 +0200)]
Fix bz270, H4166: Finding a secret corridor shows it unlit with lit_corridor

Also #terrain command with dark_room on showed lit room floor on places with
objects or traps. We don't want to show dark room symbol anyway, because
the dark room symbols are only for line-of-sight, and #terrain should
override that...

9 years agoCapitalize Linux in guidebook
Pasi Kallinen [Tue, 5 Jan 2016 07:11:42 +0000 (09:11 +0200)]
Capitalize Linux in guidebook

9 years agoFinish splitting wallification into two
Pasi Kallinen [Tue, 5 Jan 2016 05:42:28 +0000 (07:42 +0200)]
Finish splitting wallification into two

9 years agoDeaf bits for vault
nhmall [Tue, 5 Jan 2016 02:52:32 +0000 (21:52 -0500)]
Deaf bits for vault

9 years agotribute catch-up
PatR [Tue, 5 Jan 2016 01:30:05 +0000 (17:30 -0800)]
tribute catch-up

9 years agotribute: The Light Fantastic
PatR [Tue, 5 Jan 2016 01:19:56 +0000 (17:19 -0800)]
tribute: The Light Fantastic

9 years agobuild fix for ck_server_admin_msg()
PatR [Tue, 5 Jan 2016 00:51:24 +0000 (16:51 -0800)]
build fix for ck_server_admin_msg()

ck_server_admin_msg() is only available for '#if (UNIX && MAIL)' but
moveloop() tried to call it unconditionally.  Call if from the UNIX
edition of ckmailstatus() instead.

9 years agoAdd the compile-time options to fixes-file
Pasi Kallinen [Mon, 4 Jan 2016 21:19:49 +0000 (23:19 +0200)]
Add the compile-time options to fixes-file

9 years agoAdd server admin messaging functionality
Pasi Kallinen [Mon, 4 Jan 2016 21:04:56 +0000 (23:04 +0200)]
Add server admin messaging functionality

It's occasionally important for public servers to notify
all the players. Sending a mail is not reliable, as not everyone
wants to break conduct, or have mail on.

This adds a compile-time defined filename, which NetHack
will monitor. The contents of the file are in the same
format as SIMPLE_MAIL: "sender:message" on one line.

9 years agoAdd SIMPLE_MAIL compile-time option for public servers
Pasi Kallinen [Mon, 4 Jan 2016 17:52:34 +0000 (19:52 +0200)]
Add SIMPLE_MAIL compile-time option for public servers

9 years agoAdd an alternative paniclog format as compile-time option
Pasi Kallinen [Mon, 4 Jan 2016 16:05:16 +0000 (18:05 +0200)]
Add an alternative paniclog format as compile-time option

9 years agowin32_gui: mimic tty interface when "Nethack mode" is selected (remove window features)
Alex Kompel [Mon, 4 Jan 2016 03:52:05 +0000 (19:52 -0800)]
win32_gui: mimic tty interface when "Nethack mode" is selected (remove window features)