… | |
… | |
949 | * can fly over but not otherwise move over. What is the correct |
949 | * can fly over but not otherwise move over. What is the correct |
950 | * way to handle those otherwise? |
950 | * way to handle those otherwise? |
951 | */ |
951 | */ |
952 | if (victim->x != hitter->x || victim->y != hitter->y) |
952 | if (victim->x != hitter->x || victim->y != hitter->y) |
953 | { |
953 | { |
|
|
954 | if (victim->destroyed ()) |
|
|
955 | hitter->destroy (); |
|
|
956 | else |
|
|
957 | { |
954 | hitter->remove (); |
958 | hitter->remove (); |
955 | hitter->x = victim->x; |
959 | hitter->x = victim->x; |
956 | hitter->y = victim->y; |
960 | hitter->y = victim->y; |
957 | insert_ob_in_map (hitter, victim->map, hitter, 0); |
961 | insert_ob_in_map (hitter, victim->map, hitter, 0); |
|
|
962 | } |
958 | } |
963 | } |
959 | else |
964 | else |
960 | /* Else leave arrow where it is */ |
965 | /* Else leave arrow where it is */ |
961 | merge_ob (hitter, NULL); |
966 | merge_ob (hitter, NULL); |
962 | |
967 | |