| 5507 | } |
| 5508 | |
| 5509 | BOOL CheckMonsterHit(int m, BOOL *ret) |
| 5510 | { |
| 5511 | if ((DWORD)m >= MAXMONSTERS) { |
| 5512 | app_fatal("CheckMonsterHit: Invalid monster %d", m); |
| 5513 | } |
| 5514 | |
| 5515 | if (monster[m]._mAi == AI_GARG && monster[m]._mFlags & MFLAG_ALLOW_SPECIAL) { |
| 5516 | monster[m]._mmode = MM_SATTACK; |
| 5517 | monster[m]._mFlags &= ~MFLAG_ALLOW_SPECIAL; |
| 5518 | *ret = TRUE; |
| 5519 | return TRUE; |
| 5520 | } |
| 5521 | |
| 5522 | if (monster[m].MType->mtype < MT_COUNSLR || monster[m].MType->mtype > MT_ADVOCATE || monster[m]._mgoal == MGOAL_NORMAL) { |
| 5523 | return FALSE; |
| 5524 | } else { |
| 5525 | *ret = FALSE; |
| 5526 | } |
| 5527 | |
| 5528 | return TRUE; |
| 5529 | } |
| 5530 | |
| 5531 | int encode_enemy(int m) |
| 5532 | { |
no test coverage detected