Merge branch 'NetHack-3.6.2-beta01' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.6.2-beta01

This commit is contained in:
nhmall
2018-12-16 18:55:30 -05:00
2 changed files with 13 additions and 4 deletions

View File

@@ -273,6 +273,11 @@ make it easier to clear 'pickup_types' (menustyles Traditional and Combination
allowed unselecting every object class; now 'all classes' is a choice)
distribution of monsters selected by mkclass() didn't match expected distrib
(cited example was ndemon() creating twice as many incubi as succubi)
while inside a shop, dropping an unpaid item inside an engulfer would leave
that item 'unpaid' and it would remain so on shop floor after the
the engulfer was killed; treat dropping shop items inside an engulfer
as stealing them and giving them to that engulfer--hero must pay for
for them and shop retains ownership of them
Fixes to Post-3.6.1 Problems that Were Exposed Via git Repository

View File

@@ -1,4 +1,4 @@
/* NetHack 3.6 do.c $NHDT-Date: 1544442710 2018/12/10 11:51:50 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.177 $ */
/* NetHack 3.6 do.c $NHDT-Date: 1545003783 2018/12/16 23:43:03 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.178 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Derek S. Ray, 2015. */
/* NetHack may be freely redistributed. See license for details. */
@@ -584,11 +584,13 @@ register struct obj *obj;
if (u.uswallow) {
/* barrier between you and the floor */
if (flags.verbose) {
char buf[BUFSZ];
char *onam_p, monbuf[BUFSZ];
/* doname can call s_suffix, reusing its buffer */
Strcpy(buf, s_suffix(mon_nam(u.ustuck)));
You("drop %s into %s %s.", doname(obj), buf,
Strcpy(monbuf, s_suffix(mon_nam(u.ustuck)));
onam_p = obj->unpaid ? Yobjnam2(obj, (char *) 0) : doname(obj);
You("drop %s into %s %s.", onam_p, monbuf,
mbodypart(u.ustuck, STOMACH));
}
} else {
@@ -682,6 +684,8 @@ boolean with_impact;
could_grow = (obj->corpsenm == PM_WRAITH);
could_heal = (obj->corpsenm == PM_NURSE);
}
if (obj->unpaid)
(void) stolen_value(obj, u.ux, u.uy, TRUE, FALSE);
(void) mpickobj(u.ustuck, obj);
if (is_animal(u.ustuck->data)) {
if (could_poly || could_slime) {