]> granicus.if.org Git - nethack/log
nethack
21 years agoB05003 - tree kicking object grammar
cohrs [Wed, 30 Jul 2003 05:12:27 +0000 (05:12 +0000)]
B05003 - tree kicking object grammar
<Someone> thought the incorrect grammar in the messages was due to scatter()
changing the quan of treefruit, but in fact, it was due to treefruit
referring to the wrong object (there is also a theoretical possibility that
treefruit can refer to a merged object with the wrong count).  Create a temp
object for use in the message to avoid these possibilities.

21 years agowin32gui: # to specifiy numeric count during loot
nethack.allison [Wed, 30 Jul 2003 01:17:12 +0000 (01:17 +0000)]
win32gui: # to specifiy numeric count during loot

<email deleted> wrote:
> Windows NetHack graphical Version 3.4.1
> comments: I have been unable to remove or put in partial groups
> of items into a bag of holding or scak. With hethack 3.3.X I
> could put 2 of 3 potions or 3000 of 8000 pieces of gold into the
> bag. The menu persents you with the following options (yn#aq)(n).
> Using # exits the menu and typing in the number you wish to use
> does nothing. The work around is to drop the number you wish to
> not store and put all the remaining into the bag then pick up the
> remaining.

21 years agoU556: another typo
cohrs [Tue, 29 Jul 2003 21:38:42 +0000 (21:38 +0000)]
U556: another typo
Or perhaps it's translating miao from Italian to English.

21 years agoclarify a fixes34.2 entry
nethack.allison [Tue, 29 Jul 2003 12:21:51 +0000 (12:21 +0000)]
clarify a fixes34.2 entry

21 years agobuild fix without TEXTCOLOR
nethack.allison [Tue, 29 Jul 2003 12:08:56 +0000 (12:08 +0000)]
build fix without TEXTCOLOR

21 years agoplug #tip gaps (trunk only)
nethack.rankin [Mon, 28 Jul 2003 10:10:09 +0000 (10:10 +0000)]
plug #tip gaps (trunk only)

     Add missing handling for trapped containers and for Schroedinger's Cat
to the #tip command.  Also, after tipping out the contents of a cursed bag
of holding, its weight would still reflect any items destroyed during the
process.

21 years agoSchroedinger's cat
nethack.rankin [Mon, 28 Jul 2003 09:53:11 +0000 (09:53 +0000)]
Schroedinger's cat

     Releasing Schroedinger's Cat from a box which is being carried would
place the monster at the coordinates of wherever the box was last on the
floor instead of adjacent to the current location.

     Also, the message sequence

  The housecat inside the box is still alive!
  The large box is empty.

seemed a little strange.  This makes it say "is now empty" when a cat has
just been released.

21 years agolooting fix (trunk only)
nethack.rankin [Mon, 28 Jul 2003 06:56:34 +0000 (06:56 +0000)]
looting fix (trunk only)

     #tip shares able_to_loot() but doesn't require free hands.

21 years agoB05002 can open bag then cannot loot it
nethack.allison [Mon, 28 Jul 2003 03:08:46 +0000 (03:08 +0000)]
B05002 can open bag then cannot loot it

> Trying to loot a bag on the floor while wielding a cursed
> quarterstaff: "You carefully open the bag... You have no free hand."
> Shouldn't I notice that I have no free hand before even trying?

add freehand() check to able_to_loot()

21 years agofix display problem with tabs on win32tty
nethack.allison [Sun, 27 Jul 2003 03:22:15 +0000 (03:22 +0000)]
fix display problem with tabs on win32tty

21 years agomove earlier typo fix
nethack.allison [Fri, 25 Jul 2003 02:07:45 +0000 (02:07 +0000)]
move earlier typo fix

move an earlier data.base typo fix from 3.5.0 to 3.4.2. (might as well)

21 years agomove earlier typo fix
nethack.allison [Fri, 25 Jul 2003 02:01:59 +0000 (02:01 +0000)]
move earlier typo fix

move an earlier data.base typo fix from 3.5.0 to 3.4.2. (might as well)

21 years agodatabase lance typo corrections
nethack.allison [Wed, 23 Jul 2003 15:20:15 +0000 (15:20 +0000)]
database lance typo corrections

21 years agosteed, stethoscope, and a vortex
nethack.allison [Sat, 19 Jul 2003 16:39:46 +0000 (16:39 +0000)]
steed, stethoscope, and a vortex

<email deleted> wrote in rgrn:
> Using a stethoscope while inside a monster (air elemental, vortex)
> and while riding a steed will not let you use the stethoscope
> on your steed. You'll only get the engulfer-monster's stats
> instead of your steeds.

Fix the reported but that prevented stethoscope application to your
steed while engulfed. While the inability to apply your stethoscope
to your steed while engulfed was a code oversight, I think it's a
feature that your ability to use the stethoscope is impacted in the
midst of a swirling, noisy vortex. Make it deliberate with a
two-in-3 chance of avoiding the interference (nine-in-10 chance if
you're a healer who is much more skilled at using a stethoscope).

21 years agotypo fix in comment
nethack.allison [Sat, 19 Jul 2003 12:42:39 +0000 (12:42 +0000)]
typo fix in comment

21 years agomultiple statues and stone-to-flesh
nethack.allison [Sat, 19 Jul 2003 12:39:55 +0000 (12:39 +0000)]
multiple statues and stone-to-flesh

stone-to-flesh of spot with multiple statues can animate more than one
by using adjacent locations

21 years agonew makemon() flag
nethack.allison [Sat, 19 Jul 2003 12:24:32 +0000 (12:24 +0000)]
new makemon() flag

add a flag to makemon() to allow monster to be created adjacent to the supplied  coordinates if there is already a monster at the target location

21 years agoB05001 - eating a tin in a stack on the floor
cohrs [Sat, 19 Jul 2003 03:29:21 +0000 (03:29 +0000)]
B05001 - eating a tin in a stack on the floor
Make sure to splitobj tin.tin before calling bill_dummy_object.
Avoids charging to all the stacked tins when you eat the 1st one.

21 years agoensure mksobj() always attaches timer
nethack.allison [Fri, 18 Jul 2003 12:06:08 +0000 (12:06 +0000)]
ensure mksobj() always attaches timer

Previously, if mksobj() was called with the 1st argument
having a value of CORPSE, and a second argument (init)
set to FALSE, the corpse would never get a timer attached.

21 years agoexpand wincap options to second field
nethack.allison [Thu, 17 Jul 2003 01:35:31 +0000 (01:35 +0000)]
expand wincap options to second field

<Someone> wishes to add a couple of new options to the wince port ("run fullscreen" and "do not use CE software keyboard").

The wincap field was full, so this adds a second field for
additional options.

21 years agostone to flesh bit
nethack.allison [Wed, 16 Jul 2003 23:13:51 +0000 (23:13 +0000)]
stone to flesh bit

Since the crysknife is the only MINERAL object in the
game that isn't affected by the "stone to flesh" spell,
and the only thing that makes it to the default
case on the switch statement in zap.c, make it
obvious that it isn't an oversight that nothing happens.
(it wasn't an oversight, right?)

21 years agoyet another README.linux update
cohrs [Tue, 15 Jul 2003 00:36:50 +0000 (00:36 +0000)]
yet another README.linux update
clarify the installation of NetHack.ad as NetHack.

21 years agoB03008 - stop_occupation while digging in a pit
cohrs [Mon, 14 Jul 2003 05:57:11 +0000 (05:57 +0000)]
B03008 - stop_occupation while digging in a pit
If you dug in a pit next to a sleeping, angry monster, you'd stop every
turn due to a complex check at the end of dochugw.  It turned out this
was due to a long-standing bug in the special case vision code that failed
to set the COULD_SEE bit for the locations where it set the IN_SIGHT bit.
It looks like the underwater code had the same problem (it didn't set the
bit, obviously there are no pits underwater).  However, the same could
occur if you see the angry, sleeping monster with Xray vision.  In this
case, setting COULD_SEE is not appropriate, so added a mcanmove check to
the complex check in dochugw.

21 years agoB04007 - invisible steed glyph while chatting and blind
cohrs [Mon, 14 Jul 2003 00:52:26 +0000 (00:52 +0000)]
B04007 - invisible steed glyph while chatting and blind
Avoid ever putting an "I" on the hero's location by checking it in
map_invisible().  It appeared there were a few other special cases that
could call map_invisible() for actions involving the steed, so checking there
catches them all.

21 years agoB04003 - keep saddle with steed corpse if possible
nethack.allison [Sun, 13 Jul 2003 13:22:19 +0000 (13:22 +0000)]
B04003 - keep saddle with steed corpse if possible

21 years agoU537 - autosearching while digging a trapped statue
cohrs [Sun, 13 Jul 2003 05:17:49 +0000 (05:17 +0000)]
U537 - autosearching while digging a trapped statue
Noticing a statue trap animate should stop your occupation.
That avoids the reported "You hit the  with all your might." message.

21 years agocatchup patch
cohrs [Sun, 13 Jul 2003 01:12:44 +0000 (01:12 +0000)]
catchup patch
Looks like I forgot to commit a change to the dev version of fixes34.2.

21 years agofix B04004 "lead steed" into pit after landmine
nethack.allison [Sat, 12 Jul 2003 16:59:32 +0000 (16:59 +0000)]
fix B04004 "lead steed" into pit after landmine

<Someone> wrote:
KAABLAMM!!!  You triggered [your|a] land mine!
You lead the poor warhorse into a pit!
Is "lead" really the right word here?

21 years agofix B04005 and B04006
nethack.allison [Sat, 12 Jul 2003 14:55:44 +0000 (14:55 +0000)]
fix B04005 and B04006

[B04003 and B04004 are still marked "Reported"]

<Someone>:
> You aren't very skilled at reaching from the saddled blue dragon.
> Continue your attempt to set the land mine? [yn] (n)
> You begin setting your land mine.
> There is the trigger of your mine in a pile of soil below you.
> KAABLAMM!!!  The air currents set your land mine off!
> I somehow suspect that it'd be more than the air currents, if I were
> trying to arm a land mine from dragonback while not very good at
> controlling it.

<Someone>:
> What do you want to use or apply? [cmu or ?*]
> You aren't very skilled at reaching from the saddled warhorse.
> Continue your attempt to set the land mine? [yn] (n)
> You begin setting your land mine.  You escape your land mine.
> Is "escape" really the right word here?

21 years agosuppress DOS djgpp build warning
nethack.allison [Tue, 8 Jul 2003 00:30:40 +0000 (00:30 +0000)]
suppress DOS djgpp build warning

gcc -c -O -I../include -DDLB -DUSE_TILES -oo/cmd.o ../src/cmd.c
../src/cmd.c: In function `rhack':
../src/cmd.c:1800: warning: case value out of range
../src/cmd.c:1801: warning: case value out of range

21 years agocompilation gcc warning bits
cohrs [Sun, 6 Jul 2003 22:29:48 +0000 (22:29 +0000)]
compilation gcc warning bits
I noticed I hadn't tried VISION_TABLES in a while.

21 years agoBSD and POSIX
cohrs [Sun, 6 Jul 2003 22:06:46 +0000 (22:06 +0000)]
BSD and POSIX
Finally got around to installing OpenBSD (rev 3.3) in a vmware partition.
Found that several #if BSD's were inappropriate for modern BSD's.  Haven't
installed FreeBSD or NetBSD, but based on reading their man pages,
these changes are needed there too.  Mostly due to POSIX time() signature.

21 years agoB04002 fix for misplaced pet loyalty
nethack.allison [Sun, 6 Jul 2003 14:13:06 +0000 (14:13 +0000)]
B04002 fix for misplaced pet loyalty

<Someone> wrote:
>This _must_ be a bug: if a character leaves a pet corpse in a
>bonesfile, someone getting those bones will receive
>"So this is how you repay loyalty?"  should he sacrifice it, even
>though the loyalty wasn't shown to _him_."

Clear the appropriate fields from the attached monst structure
when loading bones.

21 years agoDocument the process of fighting a cross-compile into submission.
jwalz [Sat, 5 Jul 2003 23:20:22 +0000 (23:20 +0000)]
Document the process of fighting a cross-compile into submission.

21 years agoTweak to compile.
jwalz [Sat, 5 Jul 2003 22:37:10 +0000 (22:37 +0000)]
Tweak to compile.

21 years agoGuidebook.mn nit
cohrs [Sat, 5 Jul 2003 20:35:21 +0000 (20:35 +0000)]
Guidebook.mn nit
Make the "help" and "race" look the same as other entries.
This is purely cosmetic so I haven't put it in 3.4.2.

21 years agoB04001 - Staff of Aesclepius message while swallowed
cohrs [Tue, 1 Jul 2003 01:33:42 +0000 (01:33 +0000)]
B04001 - Staff of Aesclepius message while swallowed
Since cansee() is false for all locations while swallowed, need to test if
the monster being hit is the one that swallowed you to ensure that various
artifact hit messages, including the DRLI message, are printed.

21 years agoU491: xorns, digging and pits
cohrs [Mon, 30 Jun 2003 06:08:06 +0000 (06:08 +0000)]
U491: xorns, digging and pits
Digging a pit while a xorn set the trap time, but falling into a pit did
not.  While lookin at this, it occurred to me that the same inconsistency
might occur while polymorhing from/to a xorn, and there was.

21 years agorandom numbers on linux
cohrs [Mon, 30 Jun 2003 04:18:29 +0000 (04:18 +0000)]
random numbers on linux
Switch the default Linux build behavior to use random instead of lrand48,
since lrand48 exhibits some obviously non-random behavior.  random() has
been in glibc for a long time.  Even if no other changes are made to
nethack's random number generator, this will improve the Linux behavior.

21 years agoSF patch 536615: travel cache
cohrs [Mon, 30 Jun 2003 04:00:14 +0000 (04:00 +0000)]
SF patch 536615: travel cache
This is derived from the proposed patch and feedback to it.  This applies
the last-position cache behavior without an option, making the behavior
more like it is for interfaces with a mouse, where holding the mouse still
acts the same way as the travel cache.  The code is not #ifdef'd either.

21 years agoclicklook (main trunk only)
nethack.allison [Mon, 30 Jun 2003 02:09:04 +0000 (02:09 +0000)]
clicklook (main trunk only)
This allows the use of the right mouse button to
look at things on the screen when the
'clicklook' option is set.

Concept came from a patch for 3.4.0
that I saw referenced on r.g.r.n
[see http://www.steelskies.com/nethack.php]
but the implementation is different.

21 years agoSF patch 414711: stethoscope fix
cohrs [Mon, 30 Jun 2003 01:54:23 +0000 (01:54 +0000)]
SF patch 414711: stethoscope fix
Incorporate the submitted stethoscope fix.

21 years agoshopkeeper geography
cohrs [Thu, 26 Jun 2003 00:53:10 +0000 (00:53 +0000)]
shopkeeper geography
From: <Someone>
I dunno if this is relevant  but "Gomel" is actually not in Ukraine but in
Belarus. I am pretty sure because I have been there.

21 years agoU510: yet another update_inventory call
cohrs [Thu, 19 Jun 2003 02:26:49 +0000 (02:26 +0000)]
U510: yet another update_inventory call
When armor becomes ungreased, update_inventory to reflect the change.

21 years agomore DOS gcc makefile
nethack.allison [Sun, 15 Jun 2003 15:56:03 +0000 (15:56 +0000)]
more DOS gcc makefile

21 years agoDOS gcc makefile fix
nethack.allison [Sun, 15 Jun 2003 15:23:13 +0000 (15:23 +0000)]
DOS gcc makefile fix

21 years agocomment tidbit
nethack.rankin [Sat, 14 Jun 2003 06:58:11 +0000 (06:58 +0000)]
comment tidbit

     Fix a misspelling pointed out by <Someone> some time back.

21 years agodjgpp build instructions
nethack.allison [Fri, 13 Jun 2003 19:57:22 +0000 (19:57 +0000)]
djgpp build instructions

Explicitly mention fil41b.zip as a required djgpp component.
Oddly, some people only pick up part of djgpp, then
complain to us when the Makefile doesn't run as
planned.

21 years agoguidebook building command
cohrs [Thu, 12 Jun 2003 05:16:20 +0000 (05:16 +0000)]
guidebook building command
I found that the setting of GUIDECMD sys/unix/Makefile.doc didn't cut
it with groff-1.18.  Also, the command was duplicated in the rule to
generate Guidebook.txt.

21 years agocorpses on ice use of obj recharged field
cohrs [Thu, 12 Jun 2003 04:49:09 +0000 (04:49 +0000)]
corpses on ice use of obj recharged field
A while back, I noticed that there was a custom use of the obj->recharged
flag in mkobj.c for tracking corpses on ice.  It's much more obvious for
those of us that don't have the entire source base memorized to follow the
usual convention of adding a #define to obj.h.  That's what this change does.

21 years agowebbing over stairs
cohrs [Thu, 12 Jun 2003 03:32:58 +0000 (03:32 +0000)]
webbing over stairs
Due to limitations in some interface's display capabilities, don't let
polymorphed players web over stairs or ladders.  As a side effect, this
side-steps missing checks for webs when going up or down stairs and ladders.

21 years agoLong ago we received a bug report complaining that
nethack.allison [Thu, 12 Jun 2003 03:28:39 +0000 (03:28 +0000)]
Long ago we received a bug report complaining that
hilite_pet on Win32 (tty) wasn't respecting
the setting of "use_inverse" (plain "inverse" at the
time I think).

In response, we made it respect the setting.  The
"use_inverse" setting is off by default however,
so we've now had about three complaints about
hilite_pet not working.

So I'm changing the default value for win32 tty
to having "use_inverse" set to TRUE.
They can still override it in the config file
that way.

21 years agoGuidebook.txt sync
cohrs [Sun, 8 Jun 2003 20:02:54 +0000 (20:02 +0000)]
Guidebook.txt sync
note that trunk and 3.4.2 guidebooks are different.

21 years agoU393 - jousting puddings into a polymorph trap caused 2 identical new monsters
cohrs [Sun, 8 Jun 2003 19:36:45 +0000 (19:36 +0000)]
U393 - jousting puddings into a polymorph trap caused 2 identical new monsters
Because hmon_hitmon caches the monster data type, it needs to update this
whenever the monster might polymorph.  It already did this for potions, but
not for jousting.  There are other more complex ways this could be addressed.

21 years agoconfig file samples
nethack.allison [Sun, 8 Jun 2003 18:45:23 +0000 (18:45 +0000)]
config file samples

Make config file samples behave as they always have

21 years agointeractive number_pad handling
nethack.allison [Sun, 8 Jun 2003 18:33:13 +0000 (18:33 +0000)]
interactive number_pad handling

Make the interactive display and handling of number_pad
from the 'O' menu a little more friendly.

21 years agoU393 - unix hangups in endgame
cohrs [Sun, 8 Jun 2003 18:31:57 +0000 (18:31 +0000)]
U393 - unix hangups in endgame
Unix code does not always go thru hangup() when EOF is encountered.
There is a similar end_of_input() that is sometimes called instead, which
was missing a test of program_state.something_worth_saving.

21 years agoU338 - dismounting into known traps
cohrs [Sun, 8 Jun 2003 17:51:57 +0000 (17:51 +0000)]
U338 - dismounting into known traps
When dismounting by choice and not impaired, the player could end up in a
known trap even if better positions were available.  This change allows
the landing spot to prefer non-traps in these cases.

21 years agofont_size descriptions
nethack.allison [Sun, 8 Jun 2003 00:22:28 +0000 (00:22 +0000)]
font_size descriptions
In May 2002, <Someone> wrote:
>In src/options.c, there are these options with their descriptions:
>
>#####################
>{ "font_size_map", "the size of the map font", 20, DISP_IN_GAME },
>            /*WC*/
>{ "font_size_menu", "the size of the map font", 20, DISP_IN_GAME
>            }, /*WC*/
>{ "font_size_message", "the size of the map font", 20,
>            DISP_IN_GAME }, /*WC*/
>{ "font_size_status", "the size of the map font", 20, DISP_IN_GAME
>            }, /*WC*/
>{ "font_size_text", "the size of the map font", 20, DISP_IN_GAME
>            }, /*WC*/ #####################
>
>Surely all those descriptions shouldn't be the same?

21 years agoU486 follow-up
nethack.allison [Sat, 7 Jun 2003 17:18:28 +0000 (17:18 +0000)]
U486 follow-up

>>+ #define OPENFAILURE(fd) (fd < 0)
>>+ # endif
>>      lockptr = 0;
>>!     while (retryct-- && OPENFAILURE(lockptr)) {>nhversion: 3.4.1
>And now this is accepted as valid and nothing is opened...

Oops, thanks Janet.

21 years agofix for U486: Can't get Nethack 3.4.1 to work
nethack.allison [Sat, 7 Jun 2003 13:16:40 +0000 (13:16 +0000)]
fix for U486: Can't get Nethack 3.4.1 to work

>nhversion: 3.4.1
>
> nhfrom: 3.4.1 Official binary release for Windows 95/98/NT/2000/Me/XP
> (nh341win.zip)
> comments: Whenever I run NethackW.exe, the nethack window
> appears, and does not run anything.  When I close out of the
> program, I get this message:
> Waiting for access to C:\GAMES\NETHACK341\record.  (X  retries left).  > The X seems to  always be either 9 or 59.  I don't know how to fix this > > problem, any help would  be greatly appreciated

<Someone> writes:
>win32 open() returns -1 if failed - same as POSIX open().
> There is no STDIN in GUI applications so 0 is a valid return
> value from open().
> So it should read like that unless that breaks Amiga code:

Since I can't test the Amiga code, I added a macro
OPENFAILURE to keep the Amiga code the same as it
is now.  It should probably be reviewed by someone on
the Amiga team to verify if open() on the Amiga returns
0 or -1 on failure.  If the latter, the macro could be
removed completely.

21 years agonumber_pad (modified from <Someone>'s patch)
nethack.allison [Fri, 6 Jun 2003 03:49:56 +0000 (03:49 +0000)]
number_pad (modified from <Someone>'s patch)

The number_pad option can now optionally hold a value
{0,1, 2 } for {off, on, DOS-mode} but plain number_pad and
!number_pad in config files still work as before.

When number_pad:2 is set, iflags.num_pad_mode is set to 1
which triggers the following behaviour:
> '5', M('5') and M('0') are mapped in rhack()
>in cmd.c, only when they are entered as a command. When used as a
>number, like in the 'n' command, no mapping takes place. '0' is
>already mapped to 'i' by the core. The
>only difference [<Someone>] left in (deliberately) is when you press Ctrl-0;
>this used to map to C('i'), which is an invalid command; now
>keep it '0' (which is interpreted as 'i' by the core.)

21 years agowin32gui (from <Someone>)
nethack.allison [Fri, 6 Jun 2003 01:56:34 +0000 (01:56 +0000)]
win32gui (from <Someone>)

[main trunk only]
Fixes incorrect registry entries for inventory window position.

21 years agowin32 (from Yitzhak)
nethack.allison [Tue, 3 Jun 2003 10:09:07 +0000 (10:09 +0000)]
win32 (from Yitzhak)

>The attached is a patch for the makefiles and .rc that makes
>Borland compile. Files modified: sys/winnt/Makefile.bcc - changes
>Makefile so dependencies on dlls are removed for console, adds
>gamedir.tag sys/winnt/Makefile.msc - changes the Makefile a bit to
>make it dependent on gamedir.tag in both gui and console, and make
>the dlls a dependency only in console but without the !IF for
>$(GAMEFILE). The .rc format is made workable for both Borland and
>MSC. win/win32/winhack.rc - makes FONT format Borland compatible

21 years agofix B03007 - monster gender handling + level follower tuning
nethack.rankin [Mon, 2 Jun 2003 08:05:41 +0000 (08:05 +0000)]
fix B03007 - monster gender handling + level follower tuning

     Fix the reported problem of combat messages referring to Orcus as
"it" when the data.base entry uses "he"; extend use of gender-specific
pronouns to named and other unique monsters as well as to humanoids.
If any of those should stay as "it", they'll need to be M2_NEUTERed....

     And prevent level followers from chasing you across levels if they
are fleeing at the time.  It's an old change I've been sitting on which
is not related but happens to be right next to the pronoun code.

21 years agolook vs pickup
nethack.allison [Sun, 1 Jun 2003 17:42:49 +0000 (17:42 +0000)]
look vs pickup

I encountered a look vs pickup cockatrice corpse
bug today.

If you looked at a location with ':', you
would instantly get
"Touching the cockatrice corpse is a fatal mistake..."
but if you used "m," you got the full list of
things at the location to choose from.

This patch makes the behaviour consistent
and more informative to the player.
You now get the partial list of things felt
up until the cockatrice corpse is encountered,
and then you get the
"Touching the cockatrice corpse is a fatal mistake..."

Before, the code was never displaying the partially
built list because the feel_cockatrice() call was
happening before the window display call.

21 years agolook vs pickup
nethack.allison [Sun, 1 Jun 2003 15:54:41 +0000 (15:54 +0000)]
look vs pickup

I encountered a look vs pickup cockatrice corpse
bug today.

If you looked at a location with ':', you
would instantly get
"Touching the cockatrice corpse is a fatal mistake..."
but if you used "m," you got the full list of
things at the location to choose from.

This patch makes the behaviour consistent
and more informative to the player.
You now get the partial list of things felt
up until the cockatrice corpse is encountered,
and then you get the
"Touching the cockatrice corpse is a fatal mistake..."

Before, the code was never displaying the partially
built list because the feel_cockatrice() call was
happening before the window display call.

21 years agorandom level teleport fix
nethack.rankin [Sun, 1 Jun 2003 14:52:04 +0000 (14:52 +0000)]
random level teleport fix

     From the newsgroup:  prevent monsters from level teleporting out of
the quest into the main dungeon.  The player can't do that and monsters
weren't supposed to be able to, but from time to time the quest nemesis
has seemingly vanished after reading a cursed scroll of teleportation.
His disappearance was due to ending up on a random level between the
quest entrance and the top of the dungeon.

     This also fixes an obscure bug that I noticed while trying to
reproduce that problem:  uncontrolled level teleports by the player in
the quest had 80% or thereabouts chance of ending up on the quest home
level.  All 12-15 main dungeon levels above quest entrance were included
in the random range of 1 thru current+3, then any choice which tried to
pick one of those was converted to quest level 1.  (Monster destination
wasn't getting that adjustment.)

21 years agoquiet warning
nethack.allison [Sun, 1 Jun 2003 14:19:16 +0000 (14:19 +0000)]
quiet warning
A recent patch triggered a warning about signed/unsigned mismatch in
an assignment.

21 years agosome lint cleanup
nethack.rankin [Sat, 31 May 2003 07:14:21 +0000 (07:14 +0000)]
some lint cleanup

     Mostly `gcc -Wwrite-strings' complaining about passing string
literals to safe_qbuf().  `gcc -Wformat' didn't catch the type mismatch
of formatting the return value of strlen() with %d, presumeably because
size_t is defined as unsigned int on this system and it treats int and
unsigned int as interchangeable as far as printf/scanf checking goes.

     I'm not sure whether the sizeof() values being passed to safe_qbuf()
ought to have casts.  Any system where size_t isn't the same width as
unsigned int is bound to support prototypes, but might possibly warn about
the implicit conversion of unsigned long (or even unsigned long long these
days) to unsigned int.

21 years agoMake enhanced ammo last longer.
jwalz [Wed, 28 May 2003 21:54:37 +0000 (21:54 +0000)]
Make enhanced ammo last longer.

Since traps can no longer provide an infinite supply, and people were
complaining that they always ran out of ammo before, make it less likely
to break enchanted and blessed ammo, and more likely to break eroded
ones.

21 years agoThat one $(LD) needs to be an $(LD). $(CC) will link in the non-shared
jwalz [Wed, 28 May 2003 17:33:54 +0000 (17:33 +0000)]
That one $(LD) needs to be an $(LD).  $(CC) will link in the non-shared
C library and cause problems with address space for something NetHack's
size.

21 years agoUnify usage of $(CC) vs. $(LD) for linking to always $(LINK), set
warwick [Wed, 28 May 2003 05:36:57 +0000 (05:36 +0000)]
Unify usage of $(CC) vs. $(LD) for linking to always $(LINK), set
to $(CC) by default.
Necessary for C++ builds where the C++ compiler driver must be used
to link, adding libraries that the C compiler driver does not know
about.

21 years agocmdassist bits
nethack.rankin [Mon, 26 May 2003 17:34:28 +0000 (17:34 +0000)]
cmdassist bits

     If the player gives the 'T' command while not wearing any armor,
don't suggest "use 'R' to remove accessories" unless the character is
actually wearing accessories.  Likewise for 'R' while not wearing any
accessories, don't suggest "use 'T' to take off armor" unless wearing
some.

     Add missing amulet case to the silly_thing() handling for 'W' and
'T'.  Also handle boots, gloves, and lenses as plural in the message
there.  silly_thing() has been simplified a little bit in the process.

21 years agowin32gui: prevent male valkyrie (from <Someone>)
nethack.allison [Mon, 26 May 2003 09:58:15 +0000 (09:58 +0000)]
win32gui: prevent male valkyrie (from <Someone>)

>Steps to reproduce problem:
>1) make sure you don't have race, role, gender specified in your
>   defaults.h, then add
>   OPTIONS=role:Valkyrie,race:Human,gender:male,align:lawful
>2) start a new nethackw.exe game
>3) Uncheck "Random" from gender box, now you can select from male
>   or female, not only female.
>4) Select male and click OK.
>5) When game begins press shift+O (Options) and look to gender.
>   Your valkyrie is male.

defaults.nh values were not used the dialog initialization. That's
why both male/female options were available for Valkyries. This is
now fixed.

Also added: checking for consistency of the initial settings and
resetting all incompatible values to ROLE_NONE.

21 years agoanother grammar bit
cohrs [Sun, 25 May 2003 23:21:20 +0000 (23:21 +0000)]
another grammar bit
My e-mail archive shows this was originally reported as one of several
items in R871.  Clean up a hit message when wielding cream pies.

21 years agoFix B03001
nethack.allison [Sun, 25 May 2003 22:47:12 +0000 (22:47 +0000)]
Fix B03001

"You can't loot or pick up containers on the floor if you're not
skilled enough to reach them from your saddle, but you can check
for and disarm traps on them; this seems a little odd. (Likewise,
being able to set land mines and beartraps while riding.)"

21 years agoU303 - starting the game as a male valkyrie
cohrs [Sun, 25 May 2003 20:28:41 +0000 (20:28 +0000)]
U303 - starting the game as a male valkyrie
A core fixup if the the port startup code sets an invalid flags.female when
starting a new game.  The old comment regarding being unable to change
flags.female was not completely correct.  The flags.pantheon can be used to
differenciate new games from a restored game.

21 years agountested FreeBSD compilation fix
cohrs [Sun, 25 May 2003 19:03:55 +0000 (19:03 +0000)]
untested FreeBSD compilation fix
this particular fix has been sitting around my inbox for a while although
we've had reports of FreeBSD build problems for a long time.  While it's
untested, it certainly looks like the unfixed system.h had a case that
could not be reached.  bsdi seems like it needs to be handled the same way.

21 years agogolem statue vs stone-to-flesh
cohrs [Sun, 25 May 2003 17:40:51 +0000 (17:40 +0000)]
golem statue vs stone-to-flesh
move the fixes entry for this from 35.0 to 34.2 since the fix got
inserted into the 3.4.2 source and is not detrimental to the branch.

21 years agoB03005 - canceling monster redux
cohrs [Sun, 25 May 2003 17:21:21 +0000 (17:21 +0000)]
B03005 - canceling monster redux
Revert the code, but add a comment. The behavior is not obvious to everyone.

21 years agoB03006 - Searching trapped chests
cohrs [Sun, 25 May 2003 05:04:11 +0000 (05:04 +0000)]
B03006 - Searching trapped chests
When attempting to disarm a trapped chest, wisdom should only be exercised
when not confused.  It stands to reason that even if you manage to find a
trap in a confused/hallucinating state, wisdom shouldn't be exercised.

21 years agoB03005 - Canceling monsters
cohrs [Sun, 25 May 2003 03:47:31 +0000 (03:47 +0000)]
B03005 - Canceling monsters
Since monster cancellation sticks, it doesn't makes sense for Magicbane to
cancel a monster more than once.  Tweaked the messages to deal with this fact.
I decided to not make Magicbane's random effect "intelligent", which is what
changing it to use some other attack against a canceled monster would be.

21 years agouse Is_box
cohrs [Sun, 25 May 2003 02:35:16 +0000 (02:35 +0000)]
use Is_box
While inspecting some code, I noticed that detect.c wasn't using Is_box in
some places it should have been.

21 years agomore perm_invent handling
nethack.rankin [Sat, 24 May 2003 04:07:14 +0000 (04:07 +0000)]
more perm_invent handling

     Keep permanent inventory window up to date when using charged items.
Also a status line bit for the #tip command.

21 years agoB03004 - candelabrum in bones file
cohrs [Sat, 24 May 2003 01:59:11 +0000 (01:59 +0000)]
B03004 - candelabrum in bones file
curse the candelabrum, like other similar artifacts

21 years agositting in lava and other utraptype sit messages
cohrs [Fri, 23 May 2003 02:47:45 +0000 (02:47 +0000)]
sitting in lava and other utraptype sit messages
Several cases in the trap block of code in dosit() were caused by utraptype
being set to values not corresponding to an actual trap.  <Someone>
reported back in 12/02 that the "sitting in lava" killer message could not
occur, but the special-case sit messages for TT_INFLOOR and TT_BURIEDBALL
couldn't occur either.

21 years agoclass genocide by species name
cohrs [Fri, 23 May 2003 02:47:42 +0000 (02:47 +0000)]
class genocide by species name
Incorporate a mod submitted by <Someone> to implement the TODO in the
class genocide code by walking thru the species to find a class to genocide
if the user input does not match the class description.

21 years agositting in lava and other utraptype sit messages
cohrs [Thu, 22 May 2003 01:43:21 +0000 (01:43 +0000)]
sitting in lava and other utraptype sit messages
Several cases in the trap block of code in dosit() were caused by utraptype
being set to values not corresponding to an actual trap.  <Someone>
reported back in 12/02 that the "sitting in lava" killer message could not
occur, but the special-case sit messages for TT_INFLOOR and TT_BURIEDBALL
couldn't occur either.

21 years agoB03003 - throwing short swords
cohrs [Wed, 21 May 2003 22:08:22 +0000 (22:08 +0000)]
B03003 - throwing short swords
<Someone> pointed out a disagreement between the comment and code in
throwing_weapon(): comment says daggers & knife can be thrown, but
code also allowed short swords.  Assuming the comment was correct, changed
the code to match.

21 years agochoking on non-food
cohrs [Wed, 21 May 2003 18:32:40 +0000 (18:32 +0000)]
choking on non-food
<Someone> (also later forwarded by <Someone>) reported that choking
while eating non-food always resulted in calling it a "quick snack".
lesshungry() depends on an occupation to tell if you are actually eatig or
not, but since non-food is eaten in one turn, no occupation was set.  Took
his suggestion of setting the occupation temporarily to cause lesshungry()
call choke() appropriately in this case.

21 years agoU464 - picking up items while swallowed in a shop
cohrs [Wed, 21 May 2003 17:12:47 +0000 (17:12 +0000)]
U464 - picking up items while swallowed in a shop
The bug report referred to greased hands, but that doesn't affect the
behavior.  If you drop an object while swallowed or engulfed in a shop, and
that object had previously been picked up from the shop floor, the object
was treated as costly.  In some cases, this could result in impossible
errors later on.  Perhaps object ox & oy should be modified when in
player/monster inventory, but this fix addresses the specific problem by
not doing the costly check while swallowed.

21 years agoU472 - untrapping squeaky board with a can of grease
cohrs [Wed, 21 May 2003 15:15:27 +0000 (15:15 +0000)]
U472 - untrapping squeaky board with a can of grease
If using a permanent inventory window, the charges weren't updated immediately.

21 years agoInsert static to match declaration.
jwalz [Tue, 20 May 2003 14:10:11 +0000 (14:10 +0000)]
Insert static to match declaration.

21 years agoBorland bit
nethack.allison [Tue, 20 May 2003 10:23:52 +0000 (10:23 +0000)]
Borland bit

21 years agomore "disclose" handling
nethack.rankin [Tue, 20 May 2003 08:25:45 +0000 (08:25 +0000)]
more "disclose" handling

     Even though the in game help now lists the actual disclosure values
instead of "all" as the default value, implement support for "all" (also
for "none") since doing so is trivial.

21 years agopoisoning prefix
nethack.rankin [Tue, 20 May 2003 07:33:30 +0000 (07:33 +0000)]
poisoning prefix

     Fix a recent killer prefix fix....

21 years agovms update
nethack.rankin [Tue, 20 May 2003 06:24:46 +0000 (06:24 +0000)]
vms update

     Bring a couple of vms-specific instances of nethack's version number
up to date.

21 years agovms playground setup
nethack.rankin [Tue, 20 May 2003 06:04:04 +0000 (06:04 +0000)]
vms playground setup

     Create an empty paniclog file during playground creation, so that it
starts with the same permissions as other writeable files.  Without this,
it's liable to end up being owned by the first random user who triggers
a panic or impossibility rather than by the playground owner and probably
wouldn't be writable by any other user.

21 years agolev_comp parser update (U433)
nethack.rankin [Tue, 20 May 2003 04:11:33 +0000 (04:11 +0000)]
lev_comp parser update (U433)