fractured rock descriptions
From a bug report: fracture_rock() was unintentionally propagating
the boulder or statue's dknown flag to the resulting rocks, producing a
trivial but noticeable difference in description of "rock" vs "stone" if
the source object had been seen up close prior to being broken and the
rocks are then examined remotely or while blind.
The curse/bless state is propagating too, but this seems reasonable
so I've left it alone.
This commit is contained in:
@@ -44,6 +44,8 @@ shopkeeper removal of trap from shop doorway yields an open door instead of
|
||||
guarantee that hostile djinn released from bottles really are hostile
|
||||
handle lava when removing or losing water walking boots
|
||||
fix incomplete sentence occuring when unique monster's corpse fell down stairs
|
||||
fractured boulders or statues produced inconsistent object settings on the
|
||||
resulting rocks
|
||||
|
||||
|
||||
Platform- and/or Interface-Specific Fixes
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SCCS Id: @(#)zap.c 3.4 2004/06/12 */
|
||||
/* SCCS Id: @(#)zap.c 3.4 2004/08/02 */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
|
||||
@@ -3866,10 +3866,11 @@ register struct obj *obj; /* no texts here! */
|
||||
change_luck(-1);
|
||||
|
||||
obj->otyp = ROCK;
|
||||
obj->oclass = GEM_CLASS;
|
||||
obj->quan = (long) rn1(60, 7);
|
||||
obj->owt = weight(obj);
|
||||
obj->oclass = GEM_CLASS;
|
||||
obj->known = FALSE;
|
||||
obj->dknown = obj->bknown = obj->rknown = 0;
|
||||
obj->known = objects[obj->otyp].oc_uses_known ? 0 : 1;
|
||||
obj->onamelth = 0; /* no names */
|
||||
obj->oxlth = 0; /* no extra data */
|
||||
obj->oattached = OATTACHED_NOTHING;
|
||||
@@ -3877,7 +3878,7 @@ register struct obj *obj; /* no texts here! */
|
||||
obj_extract_self(obj); /* move rocks back on top */
|
||||
place_object(obj, obj->ox, obj->oy);
|
||||
if(!does_block(obj->ox,obj->oy,&levl[obj->ox][obj->oy]))
|
||||
unblock_point(obj->ox,obj->oy);
|
||||
unblock_point(obj->ox,obj->oy);
|
||||
if(cansee(obj->ox,obj->oy))
|
||||
newsym(obj->ox,obj->oy);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user