Commit Graph

1115 Commits

Author SHA1 Message Date
nethack.allison
724ac2670c more overlay bits
Although the overlay stuff is destined to be
removed someday, this patch just makes the
use of STATIC_DCL, STATIC_OVL consistent
in the trunk.

[As a side pointless experiment, I was able
 to build a working  8086 port of 3.4.2 after
 this change that worked correctly in limited
 testing right up until it came time to enter
 Ft. Ludios., where it couldn't allocated the
required amount of memory.]
2003-09-05 14:59:53 +00:00
nethack.allison
416412f92b Remove vestiges of old overlay source split
[trunk only]
2003-09-05 02:45:18 +00:00
nethack.allison
74d4f057d5 U614 student statues were converted to valkyries 2003-09-04 10:26:19 +00:00
cohrs
5ba58b7229 flaming sphere and sliming
Reported to rgrn vs 3.4.1, polymorphing into other flaming monsters cures
sliming, but polymorphing to a flaming sphere did not.
2003-09-02 03:58:33 +00:00
cohrs
3444083f28 monster hp loss with Stormbringer
<Someone> forwarded from rgrn that a monster using Stormbringer would
lose hp when hitting the player.  The sign of the "gain" was reversed due
to subtracting the difference in the wrong order.
2003-09-02 03:48:34 +00:00
kmhugo
1282e5c623 Synch recent 3.4.2 changes to main trunk
This is merely a synchronization of recent changes for the
Macintosh Carbon port, which were committed to the 3.4.2
branch, to the main trunk.
2003-08-30 00:45:58 +00:00
jwalz
2ea07652d8 lint removal -- nothing of import 2003-08-29 17:23:19 +00:00
jwalz
2d294c47f8 strerror() is ANSI
(and not found by default on e.g. SUNOS4 and SVR2)
2003-08-29 16:09:13 +00:00
nethack.allison
6f1e7c828e bits (from <Someone>)
- Guidebook typo
- wizard mode prompt

[...]
> 2/3) In Guidebook* the lines subkeyval (Win32 tty NetHackonly).
> May be used to alter the value of should read subkeyval (Win32
> tty NetHack only). May be used to alter the value of
>
> 3/3) I miss a hint for the new wizmode feature levelteleport by
> menu. Neither wizhelp nor the dialog tell you about it. Maybe if
> (++trycnt == 2) Strcat(qbuf, " [type a number or ?]"); in
> teleport.c:589 could provide a hint.
>
> <Someone>
2003-08-28 11:19:08 +00:00
nethack.rankin
acc58a75b2 fix B08001 - stone-to-flesh undoes cancellation
Prevent succubi from being fully restored via cycles of petrifying
and reviving.  It wasn't just a matter of saving traits; cancellation is
one of the monster traits which is explicitly reset when a monster gets
revived.  I think that probably makes sense, but this will override it
for succubi and incubi to prevent abuse; if they were cancelled at time
of petrification they'll remain cancelled when reanimated.  Likewise for
nymphs; even though the abuse facter isn't present, the cancel effect is
pretty similar for them so keep revivals similar too.

     This saves monster traits for every monster that gets turned into a
statue.  Unlike with corpses there's no stacking involved to make players
notice that each has become unique, so all such statues might as well all
reanimate just like they were instead of as new replacment monsters.
2003-08-24 18:32:58 +00:00
nethack.rankin
104847363a fix sleeping shopkeeper's gold handling
Make a sleeping or paralyzed shopkeeper wake up if you drop something
he's interested in buying (covers the recently reported case where dropping
gold failed to add credit, but picking it back up increased shop dept) or
if you use the 'p'ay command while owing money.  Sleeping shopkeeper is not
affected if you drop something he doesn't care about, or use 'p'ay when
there is no debt, or pick up shop goods (latter case is handled normally--
you'll owe money for the item even though the shk remains asleep).

     This makes shopping become a little easier--you aren't stuck waiting
for the shopkeeper to wake up if you actually want to pay for something--
in the rare case where the shopkeeper has been put to sleep, but it's an
awful lot simpler than any other reasonable way I could think of to deal
with the [lack of] credit problem.

     This makes the snoring message handling moot--it no longer exists.
(It wasn't very reasonable to begin with, because the program can't tell
whether mon->mfrozen is for timed sleep or timed paralysis so avoided
giving that message for temporary sleep.  There ought to be two separate
counters; probing is another case where vague messages are given because
the program can't tell the reason why a monster can't move.)
2003-08-22 08:39:57 +00:00
cohrs
729e9cc03b blinded/unblinded message every turn while engulfed wearing the Eyes
I think this was From a bug report, but I cannot find the report
anymore.  Perhaps I noticed it while doing something else.  In any case,
every turn you're engulfed in, say, a dust vortex wearing the Eyes of the
Overworld, you get the "can't see"/"vision clears" message pair.  This
patch modifies the behavior to only display this the first turn.  Other code,
partially related to B01003, already deals with the puton-remove cases.
Since B01003 is only in the trunk, this fix is also only in the trunk.
2003-08-21 19:10:06 +00:00
cohrs
6c254ee539 another unreachable message
Correct the unreachable "snores" message From a bug report.
Applied to trunk only in hopes that beta8 might be the last for 3.4.2.
The fixes entry is generic since I'm sure other similar messages will be fixed.
2003-08-20 17:51:49 +00:00
nethack.allison
48ab2a434c guardian corpse, statue animation follow-up
- fix ring of protection from shape changers causing
  real monster to be created.
- add ability to get the character class monster from
  genus() or the species.
- use the character class monster when animating
  guardian corpses.
2003-08-19 14:41:54 +00:00
nethack.allison
61c3188405 talking to quest guardians from other class
prevent quest guardians from other classes from talking to you as if they
were your quest guardian
2003-08-19 04:56:23 +00:00
nethack.allison
3372f5d694 wishing for quest guardian corpse
wishing for quest guardian corpse now gives
a generic corpse of the species
2003-08-19 04:06:34 +00:00
nethack.allison
d72700c070 animating quest guardian statues
Also a related bug: the guard against animating a unique
monster via tossing a statue onto a statue trap location, was
causing stone to flesh to silently ignore any statue of a unique
monster which seemed very uncharacteristic of the spell.

After this patch, statues of quest guardians and statues of
unique monsters will animate as shape-shifters posing as those
monsters, not the monsters themselves.
2003-08-19 02:52:03 +00:00
cohrs
f97f7a0618 U592 - stuck in the floor
Digging a pit in the location where you're stuck should always free you.
This would not occur if you used a wand of digging to do the digging,
especially if you did so while levitating.
2003-08-18 20:14:18 +00:00
nethack.allison
82e8dd3247 wizmode level teleport via menu
If you answer '?' to the level teleport prompt
in debug mode, you get a menu to choose
from, similar to the control-O print_dungeon
display.
2003-08-17 19:10:52 +00:00
nethack.allison
95e4443c11 message fix for sewer rat from sink
> Getting a sewer rat from a sink when not blind, but can't see it
> (because of boulders, etc.) gives "Eek! There's it in the sink!"
> [<email deleted>]
2003-08-17 14:35:04 +00:00
nethack.allison
c654b2fc02 kicking empty space not bars
> When you kick iron bars, it says "you kick empty space". Maybe
> this should be something more like "you hurt your foot on the
> iron bars" or "the bars resonate with your hit". Something other
> than "empty space". [<email deleted>]
2003-08-16 21:18:30 +00:00
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