Commit Graph

8103 Commits

Author SHA1 Message Date
nhmall
f52c7b0de7 merge fix-up 2018-12-25 16:34:28 -05:00
nhmall
eb1f430ff5 Merge branch 'NetHack-3.6.2' 2018-12-25 16:34:07 -05:00
nhmall
fcfb748876 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-25 16:26:49 -05:00
PatR
99cd9ea264 simplify container_contents()
iflags.in_dumplog is accessible even when DUMPLOG is not enabled.
2018-12-25 13:05:35 -08:00
PatR
02cfd131ee status gold vs symset:Blank
Symset:Blank sets all the map symbols (except STRANGE_OBJECT) to
<space>.  The status lines for !STATUS_HILITES force status to use '$'
instead of ' ' for the prefix before ":1234" for gold, but the status
lines for STATUS_HILITES did not.  tty ended up with ":1234" for gold.
win32 and curses both ignore the prefix and construct their own, but
since win32 uses the map symbol for that it must also be ending up
with ":1234" (I assume; I haven't seen it).  curses is forcing '$' for
the prefix, even on the rogue level.

This attempts to fix win32 without be able to test the result.  I've
left curses alone.
2018-12-24 18:43:51 -08:00
PatR
0ad8a192bf formatting: parse_conf_file() 2018-12-24 17:50:21 -08:00
nhmall
a229a8a56d Merge branch 'NetHack-3.6.2' 2018-12-24 06:44:27 -05:00
nhmall
dcc7187057 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-24 06:43:15 -05:00
PatR
e2852f25fd fix temporary strength loss that was permanent
Watching the fuzzer, I saw hero's strength plummet to 3 again and not
rise above 5 after that.  It turns out to be due to life-saving, which
was fixing severe hunger but was not restoring the point of strength
that's lost when you go from hungry to weak.

I'm not sure whether this was caused by 3.6.1's commit
024e9e1225 or already behaved that way.

Another fuzzer bit:  the monk I was watching was bitten by a wererat
early on and was still inflicted with lycanthropy when he reached
level 19.  (I've no idea how his level got to be so high; it jumped
from 14 to 19 while I wasn't paying attention.)  Extend the earlier
hack for drinking a blessed potion of restore ability to recover lost
characteristcs to sometimes drink a potion of holy water instead.
2018-12-24 02:08:44 -08:00
PatR
f6d5862c0d implement #H6051 - fake players resist Conflict
The rationale is that since the player character resists conflict,
fake players should too.

[I'm not sure that I buy that.  Player character is always the one
*causing* conflict and it doesn't affect self.  But this is simple
as long as no other resistance checks are against attack-by-ring.]
2018-12-23 17:25:14 -08:00
PatR
7bc36ddef4 fix #H6942 - dropx vs hold_another_object
Dropping an existing fragile item while levitating will usually
break it.  Getting a new wished-for fragile item and dropping it
because of fumbling or overfull inventory never would.

Some callers of hold_another_object() held on to its return value,
others discarded that.  That return value was unsafe if the item
was dropped and fell down a hole (or broke [after this change]).
Return Null if we can't be sure of the value, and make sure all
callers are prepared to deal with Null.
2018-12-23 12:37:26 -08:00
nhmall
74d30fc18e Merge branch 'NetHack-3.6.2' 2018-12-23 15:35:31 -05:00
nhmall
99f589b15d Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-23 15:35:14 -05:00
PatR
df5dc6050d EXTRA_SANITY_CHECKS build fix
is if/else friendly and semi-colon friendly, but not comma friendly.
2018-12-23 12:13:37 -08:00
PatR
95acf0d93a avoid checkfile() segfault
Recent change for "pair of lenses names The Eyes of the Overworld"
triggered a segfault if item was neither named nor called.
2018-12-23 12:03:53 -08:00
nhmall
11da5b8fed Merge branch 'NetHack-3.6.2' 2018-12-22 21:23:38 -05:00
nhmall
eb0506fe96 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-22 21:23:15 -05:00
PatR
0eb11aa718 fix github issue #155 - encumbrance vs water
Fixes #155

When drowning, you need to be unencumbered in order to crawl out of
water.  When not drowing, you don't, but put a limit on how much can
be carried.  If polymorphed into a swimming creature, allow stressed
or less; otherwise (magical breathing), burdened or less.  (Doesn't
apply on the Plane of Water since there's no climb from water to land
involved.)
2018-12-22 18:09:44 -08:00
nhmall
c4642a231a Merge branch 'NetHack-3.6.2' 2018-12-22 20:16:32 -05:00
nhmall
43414321db Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-22 19:52:56 -05:00
PatR
d6ed41339e fix #H7749 - "you detect it"
'Detect' is used for observing a vampire shape change without being
able to see the vampire.  The problem here is that it changed from
bat form to fog cloud form in order to pass under a closed door,
and the message was being delivered when it was already at the door
location instead of before the move from a visible spot to that door.

I'm not happy with this fix, but any other alternative I considered
seemed to be worse.  Having the shape change use up the monster's
move is probably a better way to go.  Then on its next move it will
be in the right form to make a normal flow-under-door move.
2018-12-22 16:35:15 -08:00
Bart House
6c0df43a17 Add check for GCC_WARN before using #prama GCC to turn off warning 2018-12-22 15:12:56 -08:00
Bart House
7743714f1b Changed references from Cmd to g.Cmd. 2018-12-22 15:03:25 -08:00
Bart House
9567526586 Changed references from hname to g.hname. 2018-12-22 14:51:26 -08:00
Bart House
c9565d4ef6 Change references from hackpid to g.hackpid in various ports. 2018-12-22 14:43:50 -08:00
Bart House
b863fad3ea Changes needed in the mac terminal port due to globals changes. 2018-12-22 13:53:10 -08:00
Bart House
c8ae68b06a Merge branch 'win-wip3.7' into win-wip3.7-bart
Conflicts:
	src/o_init.c
2018-12-22 13:22:58 -08:00
nhmall
85f8e84fc3 Merge branch 'master' into NetHack-3.7 2018-12-21 23:38:30 -05:00
nhmall
036dfc9085 Merge branch 'NetHack-3.6.2' 2018-12-21 23:38:12 -05:00
nhmall
9b65565cf1 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-21 23:37:56 -05:00
PatR
8dfc10d8c6 fix #H2709 - exercise_steed() for riding skill
Code appears to intend that riding for 100 turns be treated like a
successful weapon hit as far as skill training goes, but it was
actually requiring 101 turns each time.  It's conceivable that that
was intentional, but unlikely.
2018-12-21 17:11:22 -08:00
PatR
4159dd985a fix #2468 - killer bees without a queen
Seven year old suggestion was to have a killer bee eat royal jelly if
there was no queen around, then after a short delay it would become a
queen.  This does that, with "no queen around" being "no queen bee on
current dungeon level" and the transformation happening immediately
with the "short delay" taking place after.

Pet killer bees will target nearby royal jelly if there's no queen,
hostile killer bees will only eat it if they happen to walk on the
same spot as one.  Both types accept either tame or hostile queen bee
as an existing queen.

Killer bees eating royal jelly will drop dead if queen bees have been
genocided, and aren't smart enough to avoid the instinct to eat such
if/when that happens to be the situation.
2018-12-21 16:59:01 -08:00
PatR
d3682dd5ca monsters on melting ice
Reported seven years ago, when ice melts underneath a monster, it
hovers there until its next move, then falls in and drowns.  Dunk it
immediately, and give hero credit/blame if it happens during the
hero's turn (so presumably the melting was caused by the hero).

Also, let monster with teleport capability who gets dunked teleport
away from the water before getting wet, the way hero does.
2018-12-21 14:36:55 -08:00
nhmall
bba5d14dca Merge branch 'NetHack-3.6.2' 2018-12-21 09:38:22 -05:00
nhmall
52bd59b315 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-21 09:37:59 -05:00
PatR
0e58316109 fix #H2680 - IDing unpaid gem should adjust price
Another one from 6.5 years ago, identifying a type of gem should give
a new price for any unpaid gems of that type and adjust shopping bill
accordingly.  Report was for rubbing with touchstone and learning
worthless glass with price not changing until the learned 'gem' was
dropped.  Fix works for that and also other forms of identification
(and for amnesia, raising prices of forgotten gems); no dropping is
required for the price to change.

Theoretically could apply to any type of item, but prices of gems are
by far the most sensitive to whether or not they're identified.
2018-12-21 01:14:45 -08:00
PatR
4e1eecc7fa data.base lookup bit
When testing the change to the Eyes of the Overworld wording and asking
for information about inventory item
 k - a pair of lenses named The Eyes of the Overworld
I got "I don't have any information on those things".  Not because that
item wasn't identified, but because the lookup was for "pair of lenses"
(finding nothing) and then for "The Eyes of the Overworld" (and not
finding it due to "The" which is stripped from the first attempt but
wasn't from the second nor present in the data.base key).
2018-12-20 18:58:44 -08:00
PatR
de1861aa0f fix #H6189 - Eyes of the Overworld database entry
The phrasing of the data.base entry for the Eyes of the Overworld
reads as if it is continuing some passage in a reference book, but
that comes off strange when using '/' to see it.  Rephrase it.

data.base could stand to have an entry for 'lenses'....
2018-12-20 18:28:57 -08:00
nhmall
47f936ad53 Merge branch 'NetHack-3.6.2' 2018-12-20 08:04:49 -05:00
nhmall
0275e37dd7 Merge branch 'NetHack-3.6.2-beta01' into NetHack-3.6.2 2018-12-20 08:04:24 -05:00
Bart House
605667b470 Add missing comment from hackpid declaration. 2018-12-19 21:27:31 -08:00
Bart House
576eece500 More globals moved to instance_globals. 2018-12-19 21:26:35 -08:00
Bart House
b7a0e69998 Merge branch 'win-wip3.7' into win-wip3.7-bart
# Conflicts:
#	src/cmd.c
#	src/rumors.c
2018-12-19 20:05:52 -08:00
Bart House
07b01da147 Correct for rebasing mistakes. 2018-12-19 20:01:56 -08:00
Bart House
cb42021389 Last big push for moving globals to instance_globals. 2018-12-19 20:01:56 -08:00
Bart House
af949cb1df Moving globals to instance_globals part 10ish. 2018-12-19 20:01:56 -08:00
Bart House
f312b8cfe6 Even more globals moved to instance_globals. 2018-12-19 20:01:56 -08:00
Bart House
e4ab048c90 Even more globals moved to instance_globals.c 2018-12-19 20:01:55 -08:00
Bart House
ff5fe26e72 More globals moved to instance_globals. 2018-12-19 20:01:55 -08:00
Bart House
3645e415e3 Moved more globals to instance_globals. 2018-12-19 20:01:55 -08:00