converting SCORR to CORR unblocks vision
- fix several cases where a point was unblocked by unblock_point wasn't called, directly or indirectly
This commit is contained in:
@@ -278,6 +278,7 @@ use_stethoscope(obj)
|
||||
case SCORR:
|
||||
You_hear(hollow_str, "passage");
|
||||
lev->typ = CORR;
|
||||
unblock_point(rx,ry);
|
||||
if (Blind) feel_location(rx,ry);
|
||||
else newsym(rx,ry);
|
||||
return res;
|
||||
|
||||
@@ -1046,10 +1046,12 @@ genericptr_t num;
|
||||
levl[zx][zy].doormask = D_NODOOR;
|
||||
} else
|
||||
levl[zx][zy].doormask = D_ISOPEN;
|
||||
unblock_point(zx, zy);
|
||||
newsym(zx, zy);
|
||||
(*(int*)num)++;
|
||||
} else if(levl[zx][zy].typ == SCORR) {
|
||||
levl[zx][zy].typ = CORR;
|
||||
unblock_point(zx, zy);
|
||||
newsym(zx, zy);
|
||||
(*(int*)num)++;
|
||||
} else if ((ttmp = t_at(zx, zy)) != 0) {
|
||||
|
||||
@@ -338,6 +338,7 @@ do_pit: chasm = maketrap(x,y,PIT);
|
||||
if (*in_rooms(x, y, SHOPBASE))
|
||||
add_damage(x, y, 0L);
|
||||
levl[x][y].doormask = D_NODOOR;
|
||||
unblock_point(x,y);
|
||||
newsym(x,y);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -1314,6 +1314,7 @@ int style;
|
||||
if (cansee(bhitpos.x, bhitpos.y))
|
||||
pline_The("boulder crashes through a door.");
|
||||
levl[bhitpos.x][bhitpos.y].doormask = D_BROKEN;
|
||||
if (dist) unblock_point(bhitpos.x, bhitpos.y);
|
||||
}
|
||||
}
|
||||
tmp_at(DISP_END, 0);
|
||||
|
||||
Reference in New Issue
Block a user