… | |
… | |
117 | |
117 | |
118 | dir = find_free_spot (op, gen->map, gen->x, gen->y, 1, SIZEOFFREE1 + 1); |
118 | dir = find_free_spot (op, gen->map, gen->x, gen->y, 1, SIZEOFFREE1 + 1); |
119 | if (dir < 0) |
119 | if (dir < 0) |
120 | return; |
120 | return; |
121 | |
121 | |
122 | op = object_create_clone (op); |
122 | op = op->deep_clone (); |
123 | |
123 | |
124 | CLEAR_FLAG (op, FLAG_IS_A_TEMPLATE); |
124 | CLEAR_FLAG (op, FLAG_IS_A_TEMPLATE); |
125 | unflag_inv (op, FLAG_IS_A_TEMPLATE); |
125 | unflag_inv (op, FLAG_IS_A_TEMPLATE); |
126 | } |
126 | } |
127 | else if (gen->other_arch) |
127 | else if (gen->other_arch) |
… | |
… | |
1180 | if (rndm (0, i) == 0) |
1180 | if (rndm (0, i) == 0) |
1181 | { |
1181 | { |
1182 | ob_to_copy = ob; |
1182 | ob_to_copy = ob; |
1183 | } |
1183 | } |
1184 | } |
1184 | } |
1185 | new_ob = object_create_clone (ob_to_copy); |
1185 | new_ob = ob_to_copy->deep_clone (); |
1186 | CLEAR_FLAG (new_ob, FLAG_IS_A_TEMPLATE); |
1186 | CLEAR_FLAG (new_ob, FLAG_IS_A_TEMPLATE); |
1187 | unflag_inv (new_ob, FLAG_IS_A_TEMPLATE); |
1187 | unflag_inv (new_ob, FLAG_IS_A_TEMPLATE); |
1188 | } |
1188 | } |
1189 | else |
1189 | else |
1190 | { |
1190 | { |