… | |
… | |
1289 | * looks like instead of lots of conditions here. |
1289 | * looks like instead of lots of conditions here. |
1290 | * makes things faster, and effectively the same result. |
1290 | * makes things faster, and effectively the same result. |
1291 | */ |
1291 | */ |
1292 | |
1292 | |
1293 | /* Have object 'fall below' other objects that block view. |
1293 | /* Have object 'fall below' other objects that block view. |
1294 | * Unless those objects are exits, type 66 |
1294 | * Unless those objects are exits. |
1295 | * If INS_ON_TOP is used, don't do this processing |
1295 | * If INS_ON_TOP is used, don't do this processing |
1296 | * Need to find the object that in fact blocks view, otherwise |
1296 | * Need to find the object that in fact blocks view, otherwise |
1297 | * stacking is a bit odd. |
1297 | * stacking is a bit odd. |
1298 | */ |
1298 | */ |
1299 | if (!(flag & INS_ON_TOP) |
1299 | if (!(flag & INS_ON_TOP) |
1300 | && ms.flags () & P_BLOCKSVIEW |
1300 | && ms.flags () & P_BLOCKSVIEW |
1301 | && (op->face && !op->face->visibility)) |
1301 | && (op->face && !faces [op->face].visibility)) |
1302 | { |
1302 | { |
1303 | for (last = top; last != floor; last = last->below) |
1303 | for (last = top; last != floor; last = last->below) |
1304 | if (QUERY_FLAG (last, FLAG_BLOCKSVIEW) && (last->type != EXIT)) |
1304 | if (QUERY_FLAG (last, FLAG_BLOCKSVIEW) && (last->type != EXIT)) |
1305 | break; |
1305 | break; |
1306 | |
1306 | |
… | |
… | |
2413 | return link->value; |
2413 | return link->value; |
2414 | |
2414 | |
2415 | return 0; |
2415 | return 0; |
2416 | } |
2416 | } |
2417 | |
2417 | |
2418 | |
|
|
2419 | /* |
2418 | /* |
2420 | * Updates the canonical_key in op to value. |
2419 | * Updates the canonical_key in op to value. |
2421 | * |
2420 | * |
2422 | * canonical_key is a shared string (value doesn't have to be). |
2421 | * canonical_key is a shared string (value doesn't have to be). |
2423 | * |
2422 | * |