From 4f61e9697cc95ebc0d556c9de7747807574cb868 Mon Sep 17 00:00:00 2001 From: PatR Date: Sat, 22 Sep 2018 15:18:38 -0700 Subject: [PATCH] fix github issue #134 - display of migrated objects Fixes #134 An invisible hero (who can't see invisible and doesn't have autopickup enabled) going down stairs to an object which fell down those stairs will see the stairs instead of the object on them. Missing newsym() in obj_delivery() when objects aren't being passed through scatter(). --- doc/fixes36.2 | 2 ++ src/dokick.c | 2 ++ src/explode.c | 1 + 3 files changed, 5 insertions(+) diff --git a/doc/fixes36.2 b/doc/fixes36.2 index ecb6baa93..914a3469e 100644 --- a/doc/fixes36.2 +++ b/doc/fixes36.2 @@ -133,6 +133,8 @@ a sleeping or paralyzed mon would be frightened by its reflection when prevent leash showing unseen monster as "attached to it" gremlins seemed impervious to Sunsword's light yet a flash from a camera caused them to cry out in pain +when objects migrate (fall down stairs) and invisible hero (w/o see invisible, + no-autopickup) descends, stairs get shown instead of object(s) on them Fixes to Post-3.6.1 Problems that Were Exposed Via git Repository diff --git a/src/dokick.c b/src/dokick.c index 4a4ac6b93..99858a62f 100644 --- a/src/dokick.c +++ b/src/dokick.c @@ -1658,6 +1658,8 @@ boolean near_hero; stackobj(otmp); if (!noscatter) (void) scatter(nx, ny, rnd(2), 0, otmp); + else + newsym(nx, ny); } else { /* random location */ /* set dummy coordinates because there's no current position for rloco() to update */ diff --git a/src/explode.c b/src/explode.c index c48f9ffb1..fc2855c1d 100644 --- a/src/explode.c +++ b/src/explode.c @@ -657,6 +657,7 @@ struct obj *obj; /* only scatter this obj */ (void) break_statue(otmp); place_object(otmp, sx, sy); /* put fragments on floor */ } + newsym(sx, sy); /* in case it's beyond radius of 'farthest' */ used_up = TRUE; /* 1 in 10 chance of destruction of obj; glass, egg destruction */