bool is_pos_visible (struct pos *p) { struct pos np; npos (p, &np); if (is_room_visible (np.room)) return true; int y; for (y = mr.h - 1; y >= 0; y--) if (mr.cell[0][y].room) { struct pos p1; new_pos (&p1, p->l, mr.cell[0][y].room, -1, -1); p1.place = -1; for (p1.floor = 0; p1.floor < FLOORS; p1.floor++) if (peq (p, &p1)) return true; } return false; }
bool is_kid_visible (void) { struct anim *k = get_anim_by_id (current_kid_id); return is_room_visible (k->f.c.room); }