Commit Graph

1094 Commits

Author SHA1 Message Date
nethack.allison
4a0cd41ce3 clipping patch (from <Someone>)
No objections were heard to this previously circulated
change.

> Clipping should occur right before user input (rhack) vs in the
> beginning of the move loop. For example, if hero had
> "teleportitis" and teleported because of that then the clipping
> region was not updated to reflect a new hero position until the
> next turn. This patch fixes that.
2003-08-14 11:17:49 +00:00
nethack.allison
5e94d4478b wraptext port option (from <Someone>)
WC2_WRAPTEXT option was added but core changes
were not included  in the previous wince patch.
2003-08-14 11:04:33 +00:00
nethack.rankin
8b5d31eb01 fix "singular of null?" warning for info lookup
Guard against the pathological cases of ", <anything>" and
" called <anything>" strings that a user could type in to indirectly
trigger impossible().  Now they'll yield "no info about such things".
2003-08-14 02:40:24 +00:00
nethack.rankin
f5b1090fdc fix B07001 - crystal ball bug
Applying a cursed crystal ball has a chance of detroying it; the
code to use up a charge wasn't taking that into account.
2003-08-14 02:25:36 +00:00
nethack.rankin
fad1cd4b88 monster level teleporting fix
From newsgroup discussion:  prevent monsters from level teleporting
to Moloch's Sanctum level unless the invocation ritual has already made it
accessible (same restriction player's character already has).  Otherwise a
monster could pick up one of the invocation items and effectively take it
into limbo, making it become impossible for the player to reach that level.
2003-08-12 06:54:39 +00:00
nethack.rankin
83199788f8 grammar bit: fix "the Eyes of the Overworld is ignoring you" 2003-08-12 06:37:42 +00:00
cohrs
eddeb5a727 some "it" avoidance in killer names
<Someone> reported a couple cases where "it" could show up in killer names.
Chose his suggested fixes which result in short killer names.
2003-08-06 04:59:51 +00:00
cohrs
7dd569f3f1 delayed mimicing appearance change
Back in April, <Someone> reported to the list that when you are
polymorphed into a mimic and #monster, and return to human form while still
mimicing, your appearance does not change.  This was due to a change
between 3.4.0 and 3.4.1 that caused all mimicing to go thru one case and
the code to change appearance was actually never executed.
2003-08-05 17:28:59 +00:00
cohrs
001c2ae58a U234, buglist, and related iron ball bugs
Several bug reports have been filed regarding the use of attached iron balls to
move in ways that are otherwise disallowed: moving diagonally from a
doorway, moving through boulders, squeezing through small openings, passing
over traps and diagonally between boulders on sokoban levels.  Modified
bhit to deal with this.  All these cases now cause the iron ball to stop if
appropriate for your form, level of burden, and so on.  Since both boulders
and iron balls are big, boulders now always stop thrown iron balls,
even if not attached.  Since iron balls don't cause any damage as they pull
you along, I didn't add any damage for the new "jerks to a halt" cases.
2003-08-04 21:37:19 +00:00
cohrs
a3d4ee545d int vs long
the recent taking_off change lost the type "long" for taking_off, which is a
problem on any platform where sizeof(long) != sizeof(int)
2003-08-04 20:44:56 +00:00
nethack.allison
5d55f632eb DOS bits follow-up
I unintentionally removed a NEARDATA
2003-08-04 01:44:05 +00:00
nethack.allison
9ba4d7cf2b DOS bits
On some MSDOS ports, STATIC_OVL doesn't equate
to static, so taking_off in do_wear.c conflicts with the
one in invent.c in those environments.  Somebody
out there might wish to try and build the 16 port and
tune it to work properly someday.
2003-08-04 01:39:31 +00:00
nethack.allison
5f9ff08c83 fog cloud shouldn't pummel you with debris 2003-08-03 19:59:34 +00:00
nethack.allison
cedc57b67f another buglist entry
> fog cloud hit uses "it". I was exploring the insides of a fog
> cloud with my fifth level wizard, and cast force bolt at its
> insides. I got the message "The spell hits it. You destroy the
> fog cloud!". Shouldn't "it" be "the fog cloud"? If so, it is
> debatable whether or not the then second "fog cloud" should
> perhaps be "it"... [<Someone>]
2003-08-03 19:58:49 +00:00
nethack.allison
1ac71854a3 buglist item (main trunk only)
> The lighting store doesn't sell oil (probably never added when
> POT_OIL was added). There currently isn't enough room in the
> shclass struct for another item, but that could be expanded. I
> think adding oil there would be useful for the post-3.4.x
> version.
2003-08-03 18:05:36 +00:00
cohrs
381f066a65 U550 - grid bug travel redux
Undo the change to test_move and instead, don't even test moving in diagonals.
This opens the possibility for approximating the diagonal while polymorphed
into a grid bug in the future.
2003-08-03 03:11:53 +00:00
cohrs
ad5e58e0de cmdassist for grid bugs
the cmdassist message shows all the valid directions even if you are
polymorphed into a grid bug.  I noticed this when I typed a diagonal
direction as a grid bug and got the dialog, telling me the key I just typed
was valid, but it wasn't.  Limit the keys to those valid for grid bugs.
2003-08-02 22:42:49 +00:00
cohrs
423ad806a3 U571 - access denied message
Since only developers know that "13" is EACCES, try to include the text
message.  I'm not 100% sure the ifdefs are complete, but it can be tweaked
as needed.  This was the only common message in files.c that included errno
so it's the only one I changed.  Of course, "13" is only one of several
possible errno values that might reasonably show up here.
2003-08-02 21:39:57 +00:00
cohrs
4566de6ac0 U550 - grid bug travel
when travelling and polymorphed into a grid bug, don't move diagonally.
2003-07-30 06:02:13 +00:00
cohrs
3300cfc737 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.
2003-07-30 05:12:27 +00:00
cohrs
7685a2a8cb U556: another typo
Or perhaps it's translating miao from Italian to English.
2003-07-29 21:38:42 +00:00
nethack.rankin
4908a3b6c8 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.
2003-07-28 10:10:09 +00:00
nethack.rankin
79a3c6d5a4 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.
2003-07-28 09:53:11 +00:00
nethack.rankin
28ae59a4fe looting fix (trunk only)
#tip shares able_to_loot() but doesn't require free hands.
2003-07-28 06:56:34 +00:00
nethack.allison
0c84601be4 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()
2003-07-28 03:08:46 +00:00
nethack.allison
2213732f1c 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).
2003-07-19 16:39:46 +00:00
nethack.allison
43d7d6f27d multiple statues and stone-to-flesh
stone-to-flesh of spot with multiple statues can animate more than one
by using adjacent locations
2003-07-19 12:39:55 +00:00
nethack.allison
9608015ac8 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
2003-07-19 12:24:32 +00:00
cohrs
39a0544360 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.
2003-07-19 03:29:21 +00:00
nethack.allison
11ecff5540 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.
2003-07-18 12:06:08 +00:00
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
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
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
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
a3278098d4 Tweak to compile. 2003-07-05 22:37:10 +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