Commit Graph

2206 Commits

Author SHA1 Message Date
nethack.allison
99bcdf6a4e 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.
2003-07-17 01:35:31 +00:00
nethack.allison
83c28e6ff8 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?)
2003-07-16 23:13:51 +00:00
cohrs
d5ad0b62b6 yet another README.linux update
clarify the installation of NetHack.ad as NetHack.
2003-07-15 00:36:50 +00:00
cohrs
17b7bc1bd6 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.
2003-07-14 05:57:11 +00:00
cohrs
3ef8dfe4aa 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.
2003-07-14 00:52:26 +00:00
nethack.allison
f8abb8c8cc B04003 - keep saddle with steed corpse if possible 2003-07-13 13:22:19 +00:00
cohrs
567a501bdd 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.
2003-07-13 05:17:49 +00:00
cohrs
5314fbe5b6 catchup patch
Looks like I forgot to commit a change to the dev version of fixes34.2.
2003-07-13 01:12:44 +00:00
nethack.allison
8eb6614a56 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?
2003-07-12 16:59:32 +00:00
nethack.allison
b88e0a13ab 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?
2003-07-12 14:55:44 +00:00
nethack.allison
08bbe34a9f 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
2003-07-08 00:30:40 +00:00
cohrs
d6c730031a compilation gcc warning bits
I noticed I hadn't tried VISION_TABLES in a while.
2003-07-06 22:29:48 +00:00
cohrs
362518c3ac 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.
2003-07-06 22:06:46 +00:00
nethack.allison
3f7873514e 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.
2003-07-06 14:13:06 +00:00
jwalz
85c062ce47 Document the process of fighting a cross-compile into submission. 2003-07-05 23:20:22 +00:00
jwalz
a3278098d4 Tweak to compile. 2003-07-05 22:37:10 +00:00
cohrs
9f31602b14 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.
2003-07-05 20:35:21 +00:00
cohrs
00c666a80f 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.
2003-07-01 01:33:42 +00:00
cohrs
669633eb21 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.
2003-06-30 06:08:06 +00:00
cohrs
fc40ccd7d2 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.
2003-06-30 04:18:29 +00:00
cohrs
b633b91875 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.
2003-06-30 04:00:14 +00:00
nethack.allison
cec8e1ee31 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.
2003-06-30 02:09:04 +00:00
cohrs
00addd7eea SF patch 414711: stethoscope fix
Incorporate the submitted stethoscope fix.
2003-06-30 01:54:23 +00:00
cohrs
21b26e867d 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.
2003-06-26 00:53:10 +00:00
cohrs
71fbc01113 U510: yet another update_inventory call
When armor becomes ungreased, update_inventory to reflect the change.
2003-06-19 02:26:49 +00:00
nethack.allison
45460e3f9a more DOS gcc makefile 2003-06-15 15:56:03 +00:00
nethack.allison
abe2701a1c DOS gcc makefile fix 2003-06-15 15:23:13 +00:00
nethack.rankin
5a88f420d5 comment tidbit
Fix a misspelling pointed out by <Someone> some time back.
2003-06-14 06:58:11 +00:00
nethack.allison
93ab03cc80 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.
2003-06-13 19:57:22 +00:00
cohrs
a686589b1f 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.
2003-06-12 05:16:20 +00:00
cohrs
90c03c2f0a 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.
2003-06-12 04:49:09 +00:00
cohrs
2a3e8c9fc4 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.
2003-06-12 03:32:58 +00:00
nethack.allison
8105adfae5 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.
2003-06-12 03:28:39 +00:00
cohrs
ecd72571fd Guidebook.txt sync
note that trunk and 3.4.2 guidebooks are different.
2003-06-08 20:02:54 +00:00
cohrs
42d336aa94 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.
2003-06-08 19:36:45 +00:00
nethack.allison
feccae0b74 config file samples
Make config file samples behave as they always have
2003-06-08 18:45:23 +00:00
nethack.allison
32d71e5993 interactive number_pad handling
Make the interactive display and handling of number_pad
from the 'O' menu a little more friendly.
2003-06-08 18:33:13 +00:00
cohrs
ec13f16ff7 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.
2003-06-08 18:31:57 +00:00
cohrs
e33b62192c 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.
2003-06-08 17:51:57 +00:00
nethack.allison
083efbb630 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?
2003-06-08 00:22:28 +00:00
nethack.allison
d3fc89f25d 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.
2003-06-07 17:18:28 +00:00
nethack.allison
ff8744798d 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.
2003-06-07 13:16:40 +00:00
nethack.allison
a67ed775cb 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.)
2003-06-06 03:49:56 +00:00
nethack.allison
3a31710a6c win32gui (from <Someone>)
[main trunk only]
Fixes incorrect registry entries for inventory window position.
2003-06-06 01:56:34 +00:00
nethack.allison
a091428423 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
2003-06-03 10:09:07 +00:00
nethack.rankin
974bab3a32 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.
2003-06-02 08:05:41 +00:00
nethack.allison
70b0a44a80 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.
2003-06-01 17:42:49 +00:00
nethack.allison
f65a13cfbe 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.
2003-06-01 15:54:41 +00:00
nethack.rankin
bc2215268b 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.)
2003-06-01 14:52:04 +00:00
nethack.allison
1add9289c0 quiet warning
A recent patch triggered a warning about signed/unsigned mismatch in
an assignment.
2003-06-01 14:19:16 +00:00