… | |
… | |
629 | for (object *floor = GET_MAP_OB (op->map, op->x, op->y); floor; floor = floor->above) |
629 | for (object *floor = GET_MAP_OB (op->map, op->x, op->y); floor; floor = floor->above) |
630 | if (INVOKE_OBJECT (DROP_ON, floor, ARG_OBJECT (tmp), ARG_OBJECT (op))) |
630 | if (INVOKE_OBJECT (DROP_ON, floor, ARG_OBJECT (tmp), ARG_OBJECT (op))) |
631 | return; |
631 | return; |
632 | |
632 | |
633 | if (is_in_shop (op) && !QUERY_FLAG (tmp, FLAG_UNPAID) && tmp->type != MONEY) |
633 | if (is_in_shop (op) && !QUERY_FLAG (tmp, FLAG_UNPAID) && tmp->type != MONEY) |
|
|
634 | { |
634 | sell_item (tmp, op); |
635 | if (!sell_item (tmp, op)) |
|
|
636 | return; // if we can't sell it we don't drop it |
|
|
637 | } |
635 | |
638 | |
636 | tmp->x = op->x; |
639 | tmp->x = op->x; |
637 | tmp->y = op->y; |
640 | tmp->y = op->y; |
638 | |
641 | |
639 | insert_ob_in_map (tmp, op->map, op, INS_BELOW_ORIGINATOR); |
642 | insert_ob_in_map (tmp, op->map, op, INS_BELOW_ORIGINATOR); |