Merge branch 'NetHack-3.6'

This commit is contained in:
nhmall
2019-09-08 10:39:57 -04:00
4 changed files with 17 additions and 27 deletions
+4 -1
View File
@@ -1,4 +1,4 @@
$NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.108 $ $NHDT-Date: 1567418344 2019/09/02 09:59:04 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.110 $ $NHDT-Date: 1567805962 2019/09/06 21:39:22 $
This fixes36.3 file is here to capture information about updates in the 3.6.x This fixes36.3 file is here to capture information about updates in the 3.6.x
lineage following the release of 3.6.2 in May 2019. Please note, however, lineage following the release of 3.6.2 in May 2019. Please note, however,
@@ -136,6 +136,9 @@ have 'O' update persistent inventory window if 'implicit_uncursed',
when spellcasting monster aimed at wrong spot due to not being able to see when spellcasting monster aimed at wrong spot due to not being able to see
invisible hero, feedback could be erroneous if hero could see self invisible hero, feedback could be erroneous if hero could see self
[messages used 'if (Invisible)' test where 'if (Invis)' was meant] [messages used 'if (Invisible)' test where 'if (Invis)' was meant]
prevent impossible when guard tries to relocate a monster on a full level
hallucination provides partial protection from passive gaze counterattack
against hero's attack; check for that before checking for free action
Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository Fixes to Post-3.6.2 Problems that Were Exposed Via git Repository
+4 -21
View File
@@ -1,4 +1,4 @@
/* NetHack 3.6 sp_lev.c $NHDT-Date: 1553787633 2019/03/28 15:40:33 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.111 $ */ /* NetHack 3.6 sp_lev.c $NHDT-Date: 1567805254 2019/09/06 21:27:34 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.117 $ */
/* Copyright (c) 1989 by Jean-Christophe Collet */ /* Copyright (c) 1989 by Jean-Christophe Collet */
/* NetHack may be freely redistributed. See license for details. */ /* NetHack may be freely redistributed. See license for details. */
@@ -1916,7 +1916,7 @@ struct mkroom *croom;
otmp->owt = weight(otmp); otmp->owt = weight(otmp);
} }
/* contents */ /* contents (of a container or monster's inventory) */
if (o->containment & SP_OBJ_CONTENT) { if (o->containment & SP_OBJ_CONTENT) {
if (!g.container_idx) { if (!g.container_idx) {
if (!g.invent_carrying_monster) { if (!g.invent_carrying_monster) {
@@ -1928,27 +1928,10 @@ struct mkroom *croom;
outside the des-file. Maybe another data file that outside the des-file. Maybe another data file that
determines what inventories monsters get by default? determines what inventories monsters get by default?
*/ */
; /* ['otmp' remains on floor] */
} else { } else {
int ci;
struct obj *objcheck = otmp;
int inuse = -1;
for (ci = 0; ci < g.container_idx; ci++)
if (g.container_obj[ci] == objcheck)
inuse = ci;
remove_object(otmp); remove_object(otmp);
if (mpickobj(g.invent_carrying_monster, otmp)) { (void) mpickobj(g.invent_carrying_monster, otmp);
if (inuse > -1) {
impossible(
"container given to monster was merged or deallocated.");
for (ci = inuse; ci < g.container_idx - 1; ci++)
g.container_obj[ci] = g.container_obj[ci + 1];
g.container_obj[g.container_idx] = NULL;
g.container_idx--;
}
/* we lost track of it. */
return;
}
} }
} else { } else {
struct obj *cobj = g.container_obj[g.container_idx - 1]; struct obj *cobj = g.container_obj[g.container_idx - 1];
+7 -4
View File
@@ -1,4 +1,4 @@
/* NetHack 3.6 uhitm.c $NHDT-Date: 1562876956 2019/07/11 20:29:16 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.211 $ */ /* NetHack 3.6 uhitm.c $NHDT-Date: 1567805813 2019/09/06 21:36:53 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.212 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2012. */ /*-Copyright (c) Robert Patrick Rankin, 2012. */
/* NetHack may be freely redistributed. See license for details. */ /* NetHack may be freely redistributed. See license for details. */
@@ -2849,13 +2849,16 @@ boolean wep_was_destroyed;
if (ureflects("%s gaze is reflected by your %s.", if (ureflects("%s gaze is reflected by your %s.",
s_suffix(Monnam(mon)))) { s_suffix(Monnam(mon)))) {
; ;
} else if (Free_action) {
You("momentarily stiffen under %s gaze!",
s_suffix(mon_nam(mon)));
} else if (Hallucination && rn2(4)) { } else if (Hallucination && rn2(4)) {
/* [it's the hero who should be getting paralyzed
and isn't; this message describes the monster's
reaction rather than the hero's escape] */
pline("%s looks %s%s.", Monnam(mon), pline("%s looks %s%s.", Monnam(mon),
!rn2(2) ? "" : "rather ", !rn2(2) ? "" : "rather ",
!rn2(2) ? "numb" : "stupified"); !rn2(2) ? "numb" : "stupified");
} else if (Free_action) {
You("momentarily stiffen under %s gaze!",
s_suffix(mon_nam(mon)));
} else { } else {
You("are frozen by %s gaze!", s_suffix(mon_nam(mon))); You("are frozen by %s gaze!", s_suffix(mon_nam(mon)));
nomul((ACURR(A_WIS) > 12 || rn2(4)) ? -tmp : -127); nomul((ACURR(A_WIS) > 12 || rn2(4)) ? -tmp : -127);
+2 -1
View File
@@ -79,7 +79,8 @@ boolean forceshow;
} else if (!in_fcorridor(grd, u.ux, u.uy)) { } else if (!in_fcorridor(grd, u.ux, u.uy)) {
if (mtmp->mtame) if (mtmp->mtame)
yelp(mtmp); yelp(mtmp);
(void) rloc(mtmp, FALSE); if (!rloc(mtmp, TRUE))
m_into_limbo(mtmp);
} }
} }
lev = &levl[fcx][fcy]; lev = &levl[fcx][fcy];