Commit Graph

1890 Commits

Author SHA1 Message Date
nethack.allison
4c03322d92 Crunched to crunched
<email deleted>
> comments: When dieing from an iron ball landing on your head, the death is
> listed as: "Crunched in the head by an iron ball"
> However no other deaths start with a capital letter.
2003-02-04 00:14:08 +00:00
nethack.allison
b7be80ab22 fix other way to get "silly thing to wear"
It was possible for the code to end up in do_wear.c
to put out the "silly thing to wear" message.
2003-01-31 13:19:09 +00:00
nethack.rankin
02d784f039 fix U242 - bug with monks
Monks get a big penalty to hit when wearing a suit; otherwise they
get a bonus when not wielding a weapon.  But as reported, that lets them
have their martial arts bonus even while wearing a shield which does seem
rather unexpected.  This change makes them only get their to-hit bonus
while shieldless as well as weaponless.  Impact on play balance is likely
to be quite small; late game characters hardly ever miss due to high luck
bonus and very early game ones won't have found a shield yet.

     Shouldn't the "your armor is cumbersome" message be ``if (verbose)''?
2003-01-31 06:41:56 +00:00
nethack.rankin
029ca9f294 fix "Scorpius egg"
From the newsgroup:  wishing for a "Scorpius egg" succeeds;
fortunately the resulting egg will never hatch.  Turn such eggs into
normal scorpion eggs instead.
2003-01-30 11:35:03 +00:00
nethack.rankin
1114722335 fix B18002 and B18003 - #rub worn blindfold and wield_tool() feedback
Prevent #rub from wielding an item that is already being worn
(which should narrow things down to the various types of eyewear;
other tools and weapons that go through wield_tool() can't be worn).
Fix up the wield_tool message spacing in the process.

     This moves wield_tool() from apply.c to wield.c.  Some plural
handling for messages is included; it is feasible to try to #rub a
"pair of lenses" or a stack of N candles.
2003-01-30 11:31:12 +00:00
nethack.allison
ca01abe4fe fix B18001 strange pluralization 2003-01-28 03:00:43 +00:00
nethack.allison
b36e0e45bf Beta 18 2003-01-26 04:18:39 +00:00
nethack.allison
2b9cc7282c B17003 Asmodeus can't use intended wands
m_initweap() was trying to give him wands of fire and cold; since
he had no weapon attacks, he wasn't is_armed(), so this code never
got called.

This moves the code to m_initinv().
2003-01-26 04:11:49 +00:00
nethack.allison
5a7bebf5a6 fix B17002 horns
Asmodeus ought to be in num_horns().
	[devteam] balrog as depicted in LotR movie has horns too.
2003-01-26 03:25:27 +00:00
nethack.allison
bd0541679a Using 'P' to put on armour or 'W' to wear a ring
resulted in "That is a silly thing to [put on | wear]".

But those two cases really aren't so "silly", so adjust
the messages to better explain why the game objected
to the action and point new players at the appropriate
command.

Also adds a cmdassist message for the case where
'R' or 'T' have no appropriate items to point
new players to the correct command. (That can be
turned off with !cmdassist, of course.)

Also adds a const to a recent shade patch by request.
2003-01-25 18:41:25 +00:00
nethack.allison
8b8d98f122 fix b17004
<Someone>:
Baby shimmering dragons have been made DRAGON_SILVER. Adults are still
cyan, as are their scales. Not that it matters while they're still
commented out, but why the discrepancy?
2003-01-25 12:23:45 +00:00
nethack.rankin
6bb53178eb fix B17006 - stacked boomerang handling
Breaking a boomerang while bashing with it didn't work right when
there was a stack of more than one involved.  The message given had a
grammar buglet and the remaining boomerangs became unwielded.  (This
issue wasn't present in 3.4.0 because the boomerang bashing code never
got called there.)
2003-01-25 07:33:06 +00:00
nethack.rankin
b9f9a6415b fix B17005 - autoquiver bug
hold_another_object() will try to quiver the object being held if
it's a weapon (or gem/rock ammo) and the autoquiver option is enabled and
the quiver is empty.  It was doing that even if the object had just merged
with primary or secondary weapon, resulting in it being equipped in two
slots at once.  (Easiest way to reproduce it is via wish+wield+wish for
similar item, but it could also occur when stealing while in nymph form.)

     This also addresses one of the old items on <Someone>'s list:  if you
carry a sling equipped in the alternate weapon slot, include gems and
rocks as likely candidates for quivering same as when wielding a sling.
This extends that to autoquivering; ammo appropriate for your alternate
is now given preference over arbitrary weapons (ammo for your wielded
weapon and arbitrary missiles still take precedence over alternate ammo).

     Bug?  pickup_object() is not autoquiver aware, hence autopickup isn't
either.

     Bug too (perhaps moot if the above is changed)?  Snagging a monster's
weapon with a bullwhip uses hold_another_object() so possibly autoquivers;
snagging an object off the floor with a grappling hook uses pickup_object()
so doesn't.
2003-01-25 04:46:11 +00:00
nethack.allison
2895d27cf5 fix a shade grammar bit 2003-01-21 13:06:41 +00:00
nethack.allison
aa8b046d86 prevent "Your corpse passes harmlessly through the shade." 2003-01-21 12:38:25 +00:00
nethack.allison
fd5339768c typo fix 2003-01-21 11:30:42 +00:00
nethack.rankin
b8e6276a17 forgotten spell tuning
Attempting to cast a forgotten spell might cause stunning instead
of or in addition to causing confusion.
2003-01-18 03:11:13 +00:00
nethack.allison
d3dfe5dfc8 Test cvs script patch mailer
Move an is_elven_* macro definition to the same spot as the other ones
so future elven equipment changes can be done in one place.
2003-01-17 03:40:47 +00:00
nethack.rankin
e9c25be839 fix B17001 - Still no "the guard disappears" message
A change I made last August broke this; it was checking whether you
could see the guard after having removed him from the map.
2003-01-15 21:25:02 +00:00
nethack.rankin
c5e0ecc15a more on_fire handling
Add several more monsters to the special case handling for fire
attacks.
2003-01-15 09:06:57 +00:00
nethack.rankin
9ba2632a29 fix B16003 - Oracle only renamable named unique monster
This makes all unique monsters resist being given a name.  Aside
from the Oracle, the four high priests are the only monsters affected
that weren't already being covered by the old tests.  They might as well
decline to receive names too.

     This also fixes a longstanding quirk that prevented you from
calling a type of object something if the representative sample of it
had been picked up while blind and you hadn't explicitly examined your
inventory since regaining sight.  There's not much point in requiring
an extra 'i' command or use of '?' or '*' at the "what do you want to
call?" prompt, particularly since that makes gameplay be slightly
different depending on whether perm_invent is available and in use.
2003-01-15 08:59:04 +00:00
nethack.allison
1b6794d246 flaming attacks
> Bug with flaming attacks...? These monsters should be unaffected,
> IMO.
>
> The fire elemental hits the stone golem. The stone golem is on
> fire!

fixed in patch

> The pyrolisk gazes at the flaming sphere... The flaming sphere is
> on fire!

This was already corrected in CVS.
2003-01-13 11:48:47 +00:00
nethack.allison
83b2e1eb66 beta 17 2003-01-11 18:05:29 +00:00
nethack.allison
ace325b692 fix B16005 engraving headstone with weapon
>If you're engraving one with a weapon, shouldn't it dull that
>	weapon?
2003-01-11 17:53:26 +00:00
nethack.allison
29bdf381e6 fix buglist entry: menu upon request
For "traditional" menu style, pickup and #loot/apply can't accept an 'm'
response to bring up a menu upon request when all items involved are of
the same class, because the prompt where that response is allowed only
gets issued when multiple classes are present.

Also allow 'm' prefix for pickup.
2003-01-11 17:28:31 +00:00
nethack.allison
d1c2a37deb fix buglist entry: menu upon request
For "traditional" menu style, pickup and #loot/apply can't accept an 'm'
response to bring up a menu upon request when all items involved are of
the same class, because the prompt where that response is allowed only
gets issued when multiple classes are present.
2003-01-11 17:22:58 +00:00
nethack.allison
a411ff7e9b fixes34.1 catch up 2003-01-11 14:33:13 +00:00
nethack.rankin
2e9e62c528 grammar bit
From the newsgroup recently:  cause of death on tombstone and in
log file was "slipped while mounting a saddled Stockholm" (with horse
named after city).  This fix will produce "slipped while mounting a
saddled horse called Stockholm" in that case.
2003-01-11 06:48:24 +00:00
nethack.allison
0814d95040 B15005 narrow openings and hurtling
Narrow openings are currently not checked for by hurtle_step() or
mhurtle_step. This has the consequence that you can jump or use
Newton's 3rd to get through somewhere you can't get through on the
ground, and monsters can stagger or be jousted through somewhere
they wouldn't attempt under their own steam.

This patch fixes hurtle_step().  It does not address mhurtle_step.
2003-01-11 03:46:56 +00:00
nethack.rankin
3db1e1c4a4 more ^G
Move the "tame <monster>", "peaceful <monster>", "hostile <monster>"
handling for <ctrl/G> so that it works when <monster> is a class letter as
well as when it names a monster type.
2003-01-11 00:44:26 +00:00
nethack.rankin
c03947d2f8 ^G control
Wizard mode monster creation underwent several changes for 3.4.0
(explicitly create "tame <monster>", create a monster by class letter,
repeat the creation for N monsters) and one of them rendered the check
to prevent creating orphaned shopkeepers, temple priests, vault guards,
and worm tails inoperative.  Put that back, and extend the control to
allow you to specify "peaceful <monster>" and "hostile <monster>" too.
2003-01-10 10:44:31 +00:00
nethack.rankin
9799fec87d fix B16004 - more demon bribing
For the bribery check that lets you get away with offering a little
bit less than what was demanded, never treat an offer of 0 as acceptible.
Also, add some missing set_malign() calls.
2003-01-10 09:22:08 +00:00
nethack.allison
dd7ab6b94d B16002
This patch ensures that two-weaping stops if uswapwep gets cursed
while two-weaponing.  I think this means the 'A' command will never
encounter the situation now in the complaint now.
See rules at top of wield.c.
2003-01-10 04:46:21 +00:00
nethack.rankin
37e8d540a9 another pre-ANSI bit
Another vintage compiler (not as old as the previous one...) didn't
like the assignment `nlp = shkgeneral;' when nlp had been declared using
array syntax.  It didn't used to mind that, until an extra `const' was
inserted by the "move stuff to read-only area" patch submitted by someone
a while back.  The prototype is already using pointer syntax here.
2003-01-10 04:18:32 +00:00
nethack.allison
c34d7af1eb B16002
The complaint states:
It still won't let you unwield a cursed secondary weapon while
two-weaponing, even though you can drop such a weapon without problem.

You aren't supposed to be able to two-weapon
with a cursed alternate weapon at all.  It appears that there are some
checks to prevent twoweaponing if uswapwep is cursed when you try.
This patch ensures that two-weaping stops if uswapwep gets cursed
while two-weaponing.  I think this means the 'A' command will never
encounter the situation now in the complaint now.

The rules in wield.c state
 The secondary weapon (uswapwep):
 1.  Is filled by the x command, which swaps this slot
     with the main weapon.  If the "pushweapon" option is set,
     the w command will also store the old weapon in the
     secondary slot.
 2.  Can be field with anything that will fit in the main weapon
     slot; that is, any type of item.
 3.  Is usually NOT considered to be carried in the hands.
     That would force too many checks among the main weapon,
    second weapon, shield, gloves, and rings; and it would
     further be complicated by bimanual weapons.  A special
     exception is made for two-weapon combat.
 4.  Is used as the second weapon for two-weapon combat, and as
     a convenience to swap with the main weapon.
 5.  Never conveys intrinsics.
 6.  Cursed items never weld (see number 3 for reasons), but they also
     prevent two-weapon combat.
2003-01-10 04:00:37 +00:00
nethack.rankin
62700747c8 another lint bit
The heros_fault() macro added to region.h relatively recently causes
a K&R vintage compiler to choke on the heros_fault variable in dothrow.c.
Although the latter has been around longer, changing it was a little bit
simpler.
2003-01-10 03:44:09 +00:00
nethack.rankin
3c49f7a941 fix B15007 - boomerangs used hand-to-hand
Hitting with a wielded boomerang was supposed to have a chance to
break it, but the code was located in a spot that would never be reached
when bashing with a missile weapon.  Also, its rnl() usage would have
made the bad effect--losing your weapon--be more likely to occur when
you had good luck and less likely when you had bad luck.  And it wasn't
setting `unweapon', so you wouldn't have gotten a bashing with barehands
message on the next attack after the weapon had been destroyed.
2003-01-10 03:33:03 +00:00
nethack.rankin
ea400a778d some lint cleanup
Building with an old version of gcc with various warnings enabled
generated a lot of noise.  Most of it was due to not guarding string
literals with `const', but there were a couple of actual problems too.
2003-01-09 09:18:14 +00:00
nethack.allison
5336419465 more mimic follow-up bits
Address some complaints about an earlier patch.
2003-01-09 02:37:03 +00:00
nethack.rankin
f9b5bf82c5 build fix
I checked in the wrong diff earlier today.
2003-01-09 01:32:26 +00:00
nethack.rankin
f52b94336f hats vs horns
Some recent newsgroup discussion claiming that a pet ki-rin was
wearing a helmet (I think poster was hallucinating) caused me to look
at some of the hat handling code.  There were a couple of noticeable
problems and one latent one in code added for 3.4.1.  Polymorphing
into a minotaur pushes hard helmets off hero's head, but nothing
prevented you from putting one right back on.  Helmet wearing monsters
who polymorphed into minotaurs weren't affected at all.  And message
handling always assumed multiple horns even though we have some singled
horned monsters, but since all those have no hands they can't wear any
armor and that potential pluralization issue wasn't noticeable.
2003-01-09 01:20:49 +00:00
nethack.rankin
9988440b2e artifacts in final score
Fix the problem From a bug report.  An earlier fix (3.3.1)
made them be listed during final disclosure, but the points shown for
them actually got left out of the total due to misplaced brackets.
Rather than just fixing the brackets, merge the two inventory scanning
loops so that both passes will always be synchronized with each other.
2003-01-08 22:07:06 +00:00
nethack.allison
601b3b56d3 mimic follow-up bit 2003-01-06 11:51:48 +00:00
nethack.allison
cebd0ccbab B14004 Cloaks of invisibility
There's no feedback message nor item discovery when you see a monster
	disappear as it puts on a cloak of invisibility.
2003-01-05 03:57:21 +00:00
nethack.allison
06812e0ce7 adornment
<email deleted> on Saturday, January 4, 2003 at 12:16:29
comments: I just noticed that, while wearing a -1 ring of adornment, a potion
of enlightenment gave the intrinsic "You are adorned."  Shouldn't it be more
accurately, "You are unadorned." or something similar?
2003-01-04 22:12:55 +00:00
nethack.allison
b4a65cab8f silver dragon colour
Back in 2000 "Pat Rankin" wrote:
>      From a user (in a message which had several unrelated things):
>
> > I think the colour of silver dragon scales / scale mail should not be
> > SILVER (which is not a colour), but HI_SILVER. Of course the colour of
> > silver dragons would have to be adjusted to match this.
>
> I don't normally have access to a color display, so I hadn't noticed
> that silver dragons are CLR_BRIGHT_CYAN.  It is pure coincidence
> that material SILVER happens to have the same numeric value as that.
> Is bright cyan intentional, to make them distinguishable from gray
> dragons (since color HI_SILVER is defined to be the same as CLR_GRAY)?
> Or was it done for the monsters just because the corresponding objects
> accidentally had the wrong value?  It seems to me that they ought to
> be the same shade of silver (ie, gray) as other silver things, even
> if that makes them look identical to gray dragons.

Using the material value SILVER in the "color"
field was wrong, no matter what the reason. I
suspect it was probably a mistake originally.

This patch does not alter the displayed colour for the
bug-fix release, but does correct the misuse of the
material.
2003-01-04 17:37:09 +00:00
nethack.allison
a26514bd61 mimic orange follow-up 2003-01-04 16:54:48 +00:00
nethack.allison
886749e21b mimic orange follow-up 2003-01-04 16:28:21 +00:00
cohrs
6e954a9c51 B14005 followup - X11 rip font
Steve VanDevender noticed that fixing the default text window font
caused the rip window to use this font as well, due to intricacies
of X11 resource relationships.
2003-01-04 02:54:45 +00:00
nethack.rankin
4fb26adf87 fix B16006 - cancelled monster-monster attacks
Various damage types which wouldn't work when a cancelled monster
attacks the player were working when it attacked other monsters instead.
Besides attempting to fix that, this also makes cloaks and other magic
blocking armor ("magic cancellation factor") work for monsters similar
to the way it works for the player.

     Most types of damage appear to revert to physical damage when the
attacker is cancelled; I'm not sure that's appropriate in many of the
instances.  The leg-pricking case was clearly wrong, since it gives
messages about the attack failing yet still hurt the character.

     This really needs a lot more testing than I have energy for.  I've
tried to clean up various inconsistencies and may have made some typos
in the process.
2003-01-04 02:29:35 +00:00