… | |
… | |
678 | } |
678 | } |
679 | |
679 | |
680 | if (!dir) |
680 | if (!dir) |
681 | dir = find_free_spot (at, op->map, op->x, op->y, 1, SIZEOFFREE1 + 1); |
681 | dir = find_free_spot (at, op->map, op->x, op->y, 1, SIZEOFFREE1 + 1); |
682 | |
682 | |
683 | if (dir < 0 || ob_blocked (at, op->map, op->x + freearr_x[dir], op->y + freearr_y[dir])) |
683 | if (dir < 0 || at->blocked (op->map, op->x + freearr_x[dir], op->y + freearr_y[dir])) |
684 | { |
684 | { |
685 | new_draw_info (NDI_UNIQUE, 0, op, "There is something in the way."); |
685 | new_draw_info (NDI_UNIQUE, 0, op, "There is something in the way."); |
686 | return 0; |
686 | return 0; |
687 | } |
687 | } |
688 | |
688 | |
… | |
… | |
932 | ndir = dir; |
932 | ndir = dir; |
933 | |
933 | |
934 | if (!ndir) |
934 | if (!ndir) |
935 | ndir = find_free_spot (mon, op->map, op->x, op->y, 1, SIZEOFFREE); |
935 | ndir = find_free_spot (mon, op->map, op->x, op->y, 1, SIZEOFFREE); |
936 | |
936 | |
937 | if (ndir < 0 || ob_blocked (mon, op->map, op->x + freearr_x[ndir], op->y + freearr_y[ndir])) |
937 | if (ndir < 0 || mon->blocked (op->map, op->x + freearr_x[ndir], op->y + freearr_y[ndir])) |
938 | { |
938 | { |
939 | ndir = -1; |
939 | ndir = -1; |
940 | if (++tries == 5) |
940 | if (++tries == 5) |
941 | { |
941 | { |
942 | new_draw_info (NDI_UNIQUE, 0, op, "There is something in the way."); |
942 | new_draw_info (NDI_UNIQUE, 0, op, "There is something in the way."); |
… | |
… | |
981 | { |
981 | { |
982 | x = freearr_x[ndir]; |
982 | x = freearr_x[ndir]; |
983 | y = freearr_y[ndir]; |
983 | y = freearr_y[ndir]; |
984 | } |
984 | } |
985 | |
985 | |
986 | if (ndir < 0 || ob_blocked (summon_arch, op->map, op->x + x, op->y + y)) |
986 | if (ndir < 0 || summon_arch->blocked (op->map, op->x + x, op->y + y)) |
987 | { |
987 | { |
988 | new_draw_info (NDI_UNIQUE, 0, op, "There is something in the way."); |
988 | new_draw_info (NDI_UNIQUE, 0, op, "There is something in the way."); |
989 | if (nrof > 1) |
989 | if (nrof > 1) |
990 | new_draw_info (NDI_UNIQUE, 0, op, "No more pets for this casting."); |
990 | new_draw_info (NDI_UNIQUE, 0, op, "No more pets for this casting."); |
991 | |
991 | |