… | |
… | |
604 | { |
604 | { |
605 | int lx, ly, sindex; |
605 | int lx, ly, sindex; |
606 | |
606 | |
607 | lx = x + freearr_x[i]; |
607 | lx = x + freearr_x[i]; |
608 | ly = y + freearr_y[i]; |
608 | ly = y + freearr_y[i]; |
609 | sindex = surround_flag3 (map, lx, ly, RP); |
609 | sindex = surround_flag3 (map, lx, ly); |
610 | /* if it's blocked on 3 sides, it's enclosed */ |
610 | /* if it's blocked on 3 sides, it's enclosed */ |
611 | if (sindex == 7 || sindex == 11 || sindex == 13 || sindex == 14) |
611 | if (sindex == 7 || sindex == 11 || sindex == 13 || sindex == 14) |
612 | { |
612 | { |
613 | *cx = lx; |
613 | *cx = lx; |
614 | *cy = ly; |
614 | *cy = ly; |
… | |
… | |
622 | { |
622 | { |
623 | int lx, ly, sindex; |
623 | int lx, ly, sindex; |
624 | |
624 | |
625 | lx = x + freearr_x[i]; |
625 | lx = x + freearr_x[i]; |
626 | ly = y + freearr_y[i]; |
626 | ly = y + freearr_y[i]; |
627 | sindex = surround_flag3 (map, lx, ly, RP); |
627 | sindex = surround_flag3 (map, lx, ly); |
628 | /* if it's blocked on 3 sides, it's enclosed */ |
628 | /* if it's blocked on 3 sides, it's enclosed */ |
629 | if (sindex == 3 || sindex == 5 || sindex == 9 || sindex == 6 || sindex == 10 || sindex == 12) |
629 | if (sindex == 3 || sindex == 5 || sindex == 9 || sindex == 6 || sindex == 10 || sindex == 12) |
630 | { |
630 | { |
631 | *cx = lx; |
631 | *cx = lx; |
632 | *cy = ly; |
632 | *cy = ly; |
… | |
… | |
639 | { |
639 | { |
640 | int lx, ly, sindex; |
640 | int lx, ly, sindex; |
641 | |
641 | |
642 | lx = x + freearr_x[i]; |
642 | lx = x + freearr_x[i]; |
643 | ly = y + freearr_y[i]; |
643 | ly = y + freearr_y[i]; |
644 | sindex = surround_flag3 (map, lx, ly, RP); |
644 | sindex = surround_flag3 (map, lx, ly); |
645 | /* if it's blocked on 3 sides, it's enclosed */ |
645 | /* if it's blocked on 3 sides, it's enclosed */ |
646 | if (sindex) |
646 | if (sindex) |
647 | { |
647 | { |
648 | *cx = lx; |
648 | *cx = lx; |
649 | *cy = ly; |
649 | *cy = ly; |