cohrs [Wed, 12 Feb 2003 06:30:06 +0000 (06:30 +0000)]
pline bits
a few plines that were without punctuation. There may be more non-DEBUG
pline or pline-like things that are still missing punctuation. They are
almost impossible to find after the fact, since they could be anywhere,
including in various dat files and functions that pass strings and formats
into other functions that call pline.
cohrs [Wed, 12 Feb 2003 02:07:22 +0000 (02:07 +0000)]
U260 - waiting times out for no reason while in were form
The initial report thought this was related to summoning help. It's not.
moveloop would attempt to call you_were() even when you_were() would not
actually change your form. Certainly there's a layering problem here, but
for now, just put in the same check peffects() uses to avoid calling
you_were() unnecessarily.
nethack.rankin [Tue, 11 Feb 2003 11:57:14 +0000 (11:57 +0000)]
falling into water while asleep
Try to fix the reported bug of not waking up if sleeping on ice
that gets melted out from under you. This fixes the straightforward
case but I suspect there are other permutations that it doesn't cover.
Teleporting out of water is now blocked if asleep; waking up occurs
after the chance for that has passed.
nethack.rankin [Tue, 11 Feb 2003 10:10:17 +0000 (10:10 +0000)]
magicbane tweaks
Update the comments to [try to] more accurately describe the behavior.
Also add hallucination handling and make the probe effect be more likely
to occur (or to put it another way, make the stun effect be less likely
since one or the other always takes place--except when stun is superseded
by something more severe).
cohrs [Mon, 10 Feb 2003 19:01:58 +0000 (19:01 +0000)]
nethack -s buffer overflow fix
When printing invalid player names in -s mode, it was possible to overflow
the output buffer due to a missing buffer size check. On shared Unix-like
systems with executable stacks, this could be used as a security exploit,
eg to obtain a shell running as user or group games.
While I was at it, removed a dead block of "#if 0" code
nethack.rankin [Mon, 10 Feb 2003 11:08:29 +0000 (11:08 +0000)]
magicbane fixes
Revamp the Magicbane code so that it won't result in "<monster>
turns to flee" followed by "the magic-absorbing blade scares <monster>".
In the process I noticed that resistance checks for its scare and purge
effects were based on the character's experience level regardless of who
was wielding it or who its target was.
I didn't try to retain the exact behavior it had before, but the
new behavior is pretty close. The main differences are that the "purge"
effect is now called "cancel" and that the stun effect will be less
common now and always gives feedback when it occurs. It used to combine
stun with scare and/or purge in some cases, now it won't; and it used to
always scare when purging, now it will pick one or the other.
nethack.rankin [Mon, 10 Feb 2003 10:23:01 +0000 (10:23 +0000)]
magicbane groundwork
To fix Magicbane's message sequencing, its code needs to be redone
substantially. These changes make that easier.
cancel_monst() let caller know whether cancellation succeeds
resist() give artifact weapons a resistance attack rating
vtense() handle monster names and "you" as subjects; checking against
object names and descriptions pointed out a couple of other
words that would have ended up being miscategorized.
nethack.allison [Sun, 9 Feb 2003 15:42:42 +0000 (15:42 +0000)]
grammar bit
<email deleted> wrote:
> On Sun, 12 Jan 2003 15:40:33 +0100, <Someone>
> <email deleted> wrote:
>
> >You begin praying to Anu. You are surrounded by a shimmering light.
> >You finish your prayer. You feel that Anu is well-pleased.
> >Your stomach feels content.
> >You are feeling mildly nauseous.
>
> Huh.
>
> sh-2.03$ grep nauseous *.c
> pline.c: if (Vomiting) Strcat(info, ", nauseated"); /*
> !"nauseous" */
> potion.c: if(talk) You_feel("much less nauseous now.");
> timeout.c: "are feeling mildly nauseous.", /* 14 */
>
> Well, pline.c has it right. Nauseated means feeling sick. Nauseous
> means sickening to contemplate.
Second opinion (dictionary.com):
> Usage Note: Traditional critics have insisted that nauseous is
> properly used only to mean causing nausea and that it is
> incorrect to use it to mean affected with nausea, as in Roller
> coasters make me nauseous. In this example, nauseated is
> preferred by 72 percent of the Usage Panel. Curiously, though, 88
> percent of the Panelists prefer using nauseating in the sentence
> The children looked a little green from too many candy apples and
> nauseating (not nauseous) rides. Since there is a lot of evidence
> to show that nauseous is widely used to mean feeling sick, it
> appears that people use nauseous mainly in the sense in which it
> is considered incorrect. In its correct sense it is being
> supplanted by nauseating.
nethack.allison [Sun, 9 Feb 2003 05:39:32 +0000 (05:39 +0000)]
B18009 animate figurine over water
>More worrying is the fact that applying a figurine over water lets
>the monster wait until its next move before it drowns (giving
>you time to teleport it to safety, or whatever) [...]
>Should there be a minliquid() check as part of make_familiar()?
Applying at the water location next to you was easy. But
applying it at your own location (triggering BY_YOU) could
end up placing the figurine at the far side of the level if
there was lots of water.
Correcting that required the ability to pass a flag from
make_familiar to makemon() telling it to not rule out
water locations as good positions. The flag had to
be passed on down to goodpos() and enexto().
The bulk of this patch is just adding an additional
argument to goodpos() in all of the callers.
nethack.allison [Sun, 9 Feb 2003 00:36:33 +0000 (00:36 +0000)]
fix B18011 warning loss
> If you remove a ring of warning, see_monsters() is called to make
> sure that the numbers get removed from the display. However, if
> your only source of warning is experience level and you get
> drained and feel "less sensitive", it isn't, and they're not.
nethack.rankin [Fri, 7 Feb 2003 10:04:27 +0000 (10:04 +0000)]
fix B18007 - travel cmd forces extra keystroke
I don't know whether there were any other odd situations besides moving
onto known traps being caused by the out of date value in flags.run; several
places do check to see whether it's 8.
nethack.allison [Thu, 6 Feb 2003 03:07:43 +0000 (03:07 +0000)]
port-specific debug-mode command
Provide a way to have a port-specific debug-mode commands
if PORT_DEBUG is defined at build time.
Add a win32 keystroke checking routine to assist debugging
of international keyboards.
Fix a problem with the way NetHack was handling
international keyboards by letting ToAscii() come
up with an input character based on the virtual key,
and the shift and caps lock state.
nethack.allison [Tue, 4 Feb 2003 00:56:03 +0000 (00:56 +0000)]
freezing sphere and amulet of lifesaving
<Someone> wrote:
> "The freezing sphere explodes! You seem unaffected by it. But wait...
> The freezing sphere's medallion begins to glow!
> The freezing sphere looks much better!
> The medallion crumbles to dust!"
> How can sphere wear a medaillon?
> How can an exploded creature start to look better, if it leaves no corpse?
This addresses the part about looking better, it does not
address spheres wearing medallions (which is not a bug
in my opinion, but other opinions may differ)
nethack.allison [Tue, 4 Feb 2003 00:14:08 +0000 (00:14 +0000)]
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.
nethack.rankin [Fri, 31 Jan 2003 06:41:56 +0000 (06:41 +0000)]
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)''?
nethack.rankin [Thu, 30 Jan 2003 11:35:03 +0000 (11:35 +0000)]
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.
nethack.rankin [Thu, 30 Jan 2003 11:31:12 +0000 (11:31 +0000)]
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.
nethack.allison [Sat, 25 Jan 2003 18:41:25 +0000 (18:41 +0000)]
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.
nethack.allison [Sat, 25 Jan 2003 12:23:45 +0000 (12:23 +0000)]
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?
nethack.rankin [Sat, 25 Jan 2003 07:33:06 +0000 (07:33 +0000)]
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.)
nethack.rankin [Sat, 25 Jan 2003 04:46:11 +0000 (04:46 +0000)]
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.
nethack.allison [Fri, 17 Jan 2003 03:40:47 +0000 (03:40 +0000)]
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.
nethack.rankin [Wed, 15 Jan 2003 08:59:04 +0000 (08:59 +0000)]
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.
nethack.allison [Mon, 13 Jan 2003 11:48:47 +0000 (11:48 +0000)]
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!
nethack.allison [Sat, 11 Jan 2003 17:28:31 +0000 (17:28 +0000)]
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.
nethack.allison [Sat, 11 Jan 2003 17:22:58 +0000 (17:22 +0000)]
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.
nethack.rankin [Sat, 11 Jan 2003 06:48:24 +0000 (06:48 +0000)]
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.
nethack.allison [Sat, 11 Jan 2003 03:46:56 +0000 (03:46 +0000)]
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.
nethack.rankin [Sat, 11 Jan 2003 00:44:26 +0000 (00:44 +0000)]
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.
nethack.rankin [Fri, 10 Jan 2003 10:44:31 +0000 (10:44 +0000)]
^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.
nethack.rankin [Fri, 10 Jan 2003 09:22:08 +0000 (09:22 +0000)]
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.
nethack.allison [Fri, 10 Jan 2003 04:46:21 +0000 (04:46 +0000)]
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.
nethack.rankin [Fri, 10 Jan 2003 04:18:32 +0000 (04:18 +0000)]
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.
nethack.allison [Fri, 10 Jan 2003 04:00:37 +0000 (04:00 +0000)]
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.
nethack.rankin [Fri, 10 Jan 2003 03:44:09 +0000 (03:44 +0000)]
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.
nethack.rankin [Fri, 10 Jan 2003 03:33:03 +0000 (03:33 +0000)]
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.
nethack.rankin [Thu, 9 Jan 2003 09:18:14 +0000 (09:18 +0000)]
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.
nethack.rankin [Thu, 9 Jan 2003 01:20:49 +0000 (01:20 +0000)]
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.
nethack.rankin [Wed, 8 Jan 2003 22:07:06 +0000 (22:07 +0000)]
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.
nethack.allison [Sat, 4 Jan 2003 22:12:55 +0000 (22:12 +0000)]
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?
nethack.allison [Sat, 4 Jan 2003 17:37:09 +0000 (17:37 +0000)]
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.
cohrs [Sat, 4 Jan 2003 02:54:45 +0000 (02:54 +0000)]
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.
nethack.rankin [Sat, 4 Jan 2003 02:29:35 +0000 (02:29 +0000)]
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.
nethack.allison [Fri, 3 Jan 2003 04:40:27 +0000 (04:40 +0000)]
fix B14022
> You're equally unlikely to be wishing for spellbooks by colour,
> but I note that 'grey' for 'gray' only works for dragonscale and
> stones, not the spellbook description.
nethack.allison [Fri, 3 Jan 2003 03:54:07 +0000 (03:54 +0000)]
fix B16001 handlessness inconsistency
[forwarded from newsgroup]
When polymorphed into a handless monster, you can't loot a chest
that's on the ground but you can pick it up and then apply it when
it's in your inventory.
nethack.allison [Fri, 3 Jan 2003 02:16:05 +0000 (02:16 +0000)]
B14023 More shade-related japery
> You hit the shade with an egg. Splat!
> The cream pie splashes over the shade's face!
> Your venom burns the shade! [But it doesn't.]
> A mirror breaking I could possibly see, since the silvering is the
> important part there.
cohrs [Thu, 2 Jan 2003 21:23:40 +0000 (21:23 +0000)]
B14005 - fixed width font for X11 text windows
Change the default font for X11 text windows to be fixed by uncommenting
the existing spec in the app defaults file.
nethack.allison [Thu, 2 Jan 2003 03:07:46 +0000 (03:07 +0000)]
B14005 cmdassist font
<Someone> wrote:
I happened to be playing under X11 for a change this weekend, and I
noticed that, since the direction help of cmdassist uses (sort of)
ASCII art, it looks rather peculiar in a proportional font. Could it
be made to use the menu font instead?
nethack.rankin [Tue, 31 Dec 2002 04:31:38 +0000 (04:31 +0000)]
new data.base entries
Add the caveman, healer, and monk data.base entries supplied by
<Someone>, plus the healer one from <Someone>'s list of outstanding bugs and
requests. Every role now has its own entry. I left "dwarven caveman"
and "gnomish caveman" pointing at the generic dwarf and gnome entries
respectively, because the caveman quote feels to me to be more human-
specific than the earlier role ones have been.
I added blank lines to the monk quote to break it into paragraphs,
and made two minor tweaks to the text. I hope we can find or invent a
separate entry for Master Kaen though. Getting a quote that refers to
Buddhism for him seems wrong to me, but leaving the generic human one
now that there's a monk-specific one didn't feel right either.
I've moved a few quest guardians around this time. Deciding which
of them should yield the corresponding role entries and which shouldn't
involves judgement calls and I don't claim that the current situation
is now perfect.
nethack.allison [Tue, 31 Dec 2002 04:11:38 +0000 (04:11 +0000)]
gnomish wizard follow-up to follow-up
By request, withdraw the limitation and revert
back to preventing all player species from
polymorphing into variants of that same species.
nethack.allison [Tue, 31 Dec 2002 03:30:33 +0000 (03:30 +0000)]
buglist fix: gnomish wizard
<Someone> wrote: If you polymorph into a gnomish wizard (even if you *are* a gnomish
wizard), you shrink out of your armour.
nethack.allison [Mon, 30 Dec 2002 12:00:29 +0000 (12:00 +0000)]
Borland Makefile (from Yitzhak)
> This patch adds a bit of help on where a win32 bison/flex port can be
> downloaded, how to set it up, and provides default settings for that
>port. It seems the homepage has been stable for at least four years.
>The bison outputs from this port are y_tab.c and such, so I changed
>the defaults in the makefile to be such. The flex output is yy.lex.c.
>One question that was fwd'd to me after the release dealt with
>using bison and flex.
nethack.allison [Sun, 29 Dec 2002 23:55:58 +0000 (23:55 +0000)]
buglist entry: hobbits and elven mithril armour
<Someone> wrote: "Also, hobbits can't wear armour,
at least, you can't wear armour when polymorphed into a hobbit, even
though hobbits do tend to be carrying elven mithril-coats.
It's tempting to suggest adding an explicit exception in
sliparm() for elven mithril just to keep the Tolkienness."
- added a general routine for adding race-based /object
combination exceptions.
- hobbits can wear elven mithril-coats
nethack.rankin [Fri, 27 Dec 2002 03:29:46 +0000 (03:29 +0000)]
fix B15006 - breaking lances with jousting
Post 3.4.0 bug: "Your a lance (weapon in hand) shatters on impact!"
Use xname() instead of doname() to get "lance" instead of "a lance" here.
It also wasn't giving "you start bashing with your bare/gloved hands" on
the next attack after losing the weapon.
nethack.allison [Mon, 23 Dec 2002 12:49:56 +0000 (12:49 +0000)]
autocomplete fix for win32
The problem with the new autocomplete was tracked down to
be the result of differences between different implementations
of backsp(). The differences go all the way back to the
early MSDOS port by the look of it, and the win32,
and Mac tty ports all seemed to pattern themselves after the
MSDOS port for that routine. Apparently, it didn't cause any
harm until now.
The problem is that backsp() sends a character sequence
of 0x08, 0x20, 0x08 on at least those ports, where the Unix
tty code only sends 0x08. So the characters in the new
autocomplete were all being erased from the screen.
This patch only fixes the win32 tty port, so I've left the
conditional code in getline.c for DOS and Mac. I
nethack.rankin [Thu, 19 Dec 2002 02:24:13 +0000 (02:24 +0000)]
artifact invisibility fixes
Invoking the archeologist's Orb of Detection gave "you feel a surge
of power, but nothing seems to happen" if you were able to see invisible,
but various other ways of toggling invisibility give fade/unfade messages
in that situation. Also, you would get false reports of invisibility
changes if you invoked the artifact while temporarily invisible due to
potion or spell or while wearing a mummy wrapping.