fix issue #1453 - throwing crackable object upward
Issue reported by NullCGT: throwing a crackable item against the ceiling would cause it to vanish if it became [more] cracked but not yet fully shattered. Fixes #1453
This commit is contained in:
@@ -2133,6 +2133,8 @@ mounted hero was able to deliver joust hits when trapped
|
||||
timer sanity check for melting ice gave false complaint about non-ice for
|
||||
frozen moat under open drawbridge
|
||||
mhitm_ad_phys() was not applying Half_physical_damage when hero was target
|
||||
throwing crystal plate mail or helm of brilliance up against the ceiling could
|
||||
result in the item being cracked and then vanishing
|
||||
|
||||
|
||||
Fixes to 3.7.0-x Platform and/or Interface Problems Exposed Via git Repository
|
||||
|
||||
@@ -1268,7 +1268,14 @@ toss_up(struct obj *obj, boolean hitsroof)
|
||||
if (breaktest(obj)) {
|
||||
pline("%s hits the %s.", Doname2(obj), ceiling(u.ux, u.uy));
|
||||
breakmsg(obj, !Blind);
|
||||
return breakobj(obj, u.ux, u.uy, TRUE, TRUE) ? FALSE : TRUE;
|
||||
/* crackable armor will return True for breaktest() but will
|
||||
usually return False for breakobj() */
|
||||
if (!breakobj(obj, u.ux, u.uy, TRUE, TRUE)) {
|
||||
hitfloor(obj, FALSE);
|
||||
gt.thrownobj = 0;
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
action = "hits";
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user