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:
cohrs
2002-02-25 02:43:50 +00:00
parent f9aaeda9b9
commit 7f5285b1ee
5 changed files with 6 additions and 0 deletions
+1
View File
@@ -444,6 +444,7 @@ chaotic monsters can use Stormbringer; lawful monsters can use Excalibur
No "corridor disappears" message if Vault guard dies off-level No "corridor disappears" message if Vault guard dies off-level
slip while mounting and levitating at will should not cause damage slip while mounting and levitating at will should not cause damage
if you see a monster jump into a trap in a secret corridor, it's not secret if you see a monster jump into a trap in a secret corridor, it's not secret
fixed a few places where unblock_point wasn't called but should have been
Platform- and/or Interface-Specific Fixes Platform- and/or Interface-Specific Fixes
+1
View File
@@ -278,6 +278,7 @@ use_stethoscope(obj)
case SCORR: case SCORR:
You_hear(hollow_str, "passage"); You_hear(hollow_str, "passage");
lev->typ = CORR; lev->typ = CORR;
unblock_point(rx,ry);
if (Blind) feel_location(rx,ry); if (Blind) feel_location(rx,ry);
else newsym(rx,ry); else newsym(rx,ry);
return res; return res;
+2
View File
@@ -1046,10 +1046,12 @@ genericptr_t num;
levl[zx][zy].doormask = D_NODOOR; levl[zx][zy].doormask = D_NODOOR;
} else } else
levl[zx][zy].doormask = D_ISOPEN; levl[zx][zy].doormask = D_ISOPEN;
unblock_point(zx, zy);
newsym(zx, zy); newsym(zx, zy);
(*(int*)num)++; (*(int*)num)++;
} else if(levl[zx][zy].typ == SCORR) { } else if(levl[zx][zy].typ == SCORR) {
levl[zx][zy].typ = CORR; levl[zx][zy].typ = CORR;
unblock_point(zx, zy);
newsym(zx, zy); newsym(zx, zy);
(*(int*)num)++; (*(int*)num)++;
} else if ((ttmp = t_at(zx, zy)) != 0) { } else if ((ttmp = t_at(zx, zy)) != 0) {
+1
View File
@@ -338,6 +338,7 @@ do_pit: chasm = maketrap(x,y,PIT);
if (*in_rooms(x, y, SHOPBASE)) if (*in_rooms(x, y, SHOPBASE))
add_damage(x, y, 0L); add_damage(x, y, 0L);
levl[x][y].doormask = D_NODOOR; levl[x][y].doormask = D_NODOOR;
unblock_point(x,y);
newsym(x,y); newsym(x,y);
break; break;
} }
+1
View File
@@ -1314,6 +1314,7 @@ int style;
if (cansee(bhitpos.x, bhitpos.y)) if (cansee(bhitpos.x, bhitpos.y))
pline_The("boulder crashes through a door."); pline_The("boulder crashes through a door.");
levl[bhitpos.x][bhitpos.y].doormask = D_BROKEN; levl[bhitpos.x][bhitpos.y].doormask = D_BROKEN;
if (dist) unblock_point(bhitpos.x, bhitpos.y);
} }
} }
tmp_at(DISP_END, 0); tmp_at(DISP_END, 0);