| 514 | } |
| 515 | |
| 516 | BOOL MonstPlace(int xp, int yp) |
| 517 | { |
| 518 | char f; |
| 519 | |
| 520 | if (xp < 0 || xp >= MAXDUNX |
| 521 | || yp < 0 || yp >= MAXDUNY |
| 522 | || dMonster[xp][yp] |
| 523 | || dPlayer[xp][yp]) { |
| 524 | return FALSE; |
| 525 | } |
| 526 | |
| 527 | f = dFlags[xp][yp]; |
| 528 | |
| 529 | if (f & BFLAG_VISIBLE) { |
| 530 | return FALSE; |
| 531 | } |
| 532 | |
| 533 | if (f & BFLAG_POPULATED) { |
| 534 | return FALSE; |
| 535 | } |
| 536 | |
| 537 | return !SolidLoc(xp, yp); |
| 538 | } |
| 539 | |
| 540 | void PlaceMonster(int i, int mtype, int x, int y) |
| 541 | { |
no test coverage detected