def get_available_capture_landing_positions(self, attacker_index, capture_index):
    '\n        If the specified square is captured by the specified attacker,\n        get all possible squares the attacker can land on.\n        '
    own_class = self.piece_class[attacker_index]
    (attacker_row, attacker_col) = index_to_coords(attacker_index)
    (capture_row, capture_col) = index_to_coords(capture_index)
    movement_row = ((capture_row - attacker_row) // abs((capture_row - attacker_row)))
    movement_col = ((capture_col - attacker_col) // abs((capture_col - attacker_col)))
    result = []
    current_row = (capture_row + movement_row)
    current_col = (capture_col + movement_col)
    if (own_class == PieceClass.MAN):
        return [coords_to_index(current_row, current_col)]
    while ((1 <= current_row <= BoardConfig.board_dim) and (1 <= current_col <= BoardConfig.board_dim)):
        current_index = coords_to_index(current_row, current_col)
        if (not self.owner[current_index]):
            result.append(current_index)
            current_row += movement_row
            current_col += movement_col
        else:
            break
    return result
If the specified square is captured by the specified attacker,
get all possible squares the attacker can land on.
def get_available_capture_landing_positions(self, attacker_index, capture_index):
    '\n        If the specified square is captured by the specified attacker,\n        get all possible squares the attacker can land on.\n        '
    own_class = self.piece_class[attacker_index]
    (attacker_row, attacker_col) = index_to_coords(attacker_index)
    (capture_row, capture_col) = index_to_coords(capture_index)
    movement_row = ((capture_row - attacker_row) // abs((capture_row - attacker_row)))
    movement_col = ((capture_col - attacker_col) // abs((capture_col - attacker_col)))
    result = []
    current_row = (capture_row + movement_row)
    current_col = (capture_col + movement_col)
    if (own_class == PieceClass.MAN):
        return [coords_to_index(current_row, current_col)]
    while ((1 <= current_row <= BoardConfig.board_dim) and (1 <= current_col <= BoardConfig.board_dim)):
        current_index = coords_to_index(current_row, current_col)
        if (not self.owner[current_index]):
            result.append(current_index)
            current_row += movement_row
            current_col += movement_col
        else:
            break
    return result