Fix making fake leash object with leashmon set
When farlooking at a leash glyph on a map, the fake object should never have leashmon set. This happened when a mimic was on the same spot and was mimicing a corpse or statue, due to leashmon and corpsenm using the same field.
This commit is contained in:
@@ -187,14 +187,14 @@ struct obj **obj_p;
|
||||
otmp->quan = 2L; /* to force pluralization */
|
||||
else if (otmp->otyp == SLIME_MOLD)
|
||||
otmp->spe = context.current_fruit; /* give it a type */
|
||||
else if (otmp->otyp == LEASH)
|
||||
otmp->leashmon = 0;
|
||||
if (mtmp && has_mcorpsenm(mtmp)) /* mimic as corpse/statue */
|
||||
otmp->corpsenm = MCORPSENM(mtmp);
|
||||
else if (otmp->otyp == CORPSE && glyph_is_body(glyph))
|
||||
otmp->corpsenm = glyph - GLYPH_BODY_OFF;
|
||||
else if (otmp->otyp == STATUE && glyph_is_statue(glyph))
|
||||
otmp->corpsenm = glyph - GLYPH_STATUE_OFF;
|
||||
if (otmp->otyp == LEASH)
|
||||
otmp->leashmon = 0;
|
||||
}
|
||||
/* if located at adjacent spot, mark it as having been seen up close
|
||||
(corpse type will be known even if dknown is 0, so we don't need a
|
||||
|
||||
Reference in New Issue
Block a user