… | |
… | |
1603 | arrow->destroy (); |
1603 | arrow->destroy (); |
1604 | return 0; |
1604 | return 0; |
1605 | } |
1605 | } |
1606 | |
1606 | |
1607 | left = arrow; /* these are arrows left to the player */ |
1607 | left = arrow; /* these are arrows left to the player */ |
1608 | arrow = get_split_ob (arrow, 1); |
1608 | arrow = arrow->split (); |
1609 | if (!arrow) |
1609 | if (!arrow) |
1610 | { |
1610 | { |
1611 | new_draw_info_format (NDI_UNIQUE, 0, op, "You have no %s left.", &bow->race); |
1611 | new_draw_info_format (NDI_UNIQUE, 0, op, "You have no %s left.", &bow->race); |
1612 | return 0; |
1612 | return 0; |
1613 | } |
1613 | } |
… | |
… | |
2934 | |
2934 | |
2935 | if (!QUERY_FLAG (tmp, FLAG_UNIQUE) && (QUERY_FLAG (tmp, FLAG_STARTEQUIP) || QUERY_FLAG (tmp, FLAG_NO_DROP) || !(rndm (3)))) |
2935 | if (!QUERY_FLAG (tmp, FLAG_UNIQUE) && (QUERY_FLAG (tmp, FLAG_STARTEQUIP) || QUERY_FLAG (tmp, FLAG_NO_DROP) || !(rndm (3)))) |
2936 | { |
2936 | { |
2937 | if (tmp->nrof > 1) |
2937 | if (tmp->nrof > 1) |
2938 | { |
2938 | { |
2939 | tmp2 = get_split_ob (tmp, 1 + RANDOM () % (tmp->nrof - 1)); |
2939 | tmp->decrease (rndm (1, tmp->nrof - 1)); |
2940 | tmp2->destroy (); |
|
|
2941 | insert_ob_in_map (tmp, op->map, NULL, 0); |
2940 | insert_ob_in_map (tmp, op->map, NULL, 0); |
2942 | } |
2941 | } |
2943 | else |
2942 | else |
2944 | tmp->destroy (); |
2943 | tmp->destroy (); |
2945 | } |
2944 | } |