… | |
… | |
585 | op->destroy (); |
585 | op->destroy (); |
586 | return payload; |
586 | return payload; |
587 | } |
587 | } |
588 | |
588 | |
589 | case ARROW: |
589 | case ARROW: |
590 | if (op->speed >= MIN_ACTIVE_SPEED) |
590 | if (op->has_active_speed ()) |
591 | op = fix_stopped_arrow (op); |
591 | op = fix_stopped_arrow (op); |
592 | return op; |
592 | return op; |
593 | |
593 | |
594 | default: |
594 | default: |
595 | return op; |
595 | return op; |
… | |
… | |
963 | * there is an old multipart teleporter in which the other parts |
963 | * there is an old multipart teleporter in which the other parts |
964 | * have speed, we don't really want to call it twice for the same |
964 | * have speed, we don't really want to call it twice for the same |
965 | * function - in fact, as written below, part N would get called |
965 | * function - in fact, as written below, part N would get called |
966 | * N times without the speed check. |
966 | * N times without the speed check. |
967 | */ |
967 | */ |
968 | if (op->more && FABS (op->more->speed) < MIN_ACTIVE_SPEED) |
968 | if (op->more && !op->more->has_active_speed ()) |
969 | move_teleporter (op->more); |
969 | move_teleporter (op->more); |
970 | |
970 | |
971 | if (op->head) |
971 | if (op->head) |
972 | head = op->head; |
972 | head = op->head; |
973 | |
973 | |