Вам нужно рисовать не линии и поворачивать их, а векторы. Тогда вы указываете массив векторов препятствий, и через
операции над векторами(возможно требуется дополнить класс) проверяете пересекаются ли вектора. После этого при получении информации об пересечении двух векторов уменьшаете длину скан-вектора.
Добавлено через 37 минут
По логике примерно так. Берете центр к примеру отсчёта координат 0х0, игрок у Вас находиться в позиции 20х0 и от него пошли вектора. Есть массив в виде векторов которые описывают края препятствий. Для проведения исчислений вам нужно нормализировать все вектора, потом перевести их в одну систему координат, после чего производить операции над ними. Было б немножко больше сегодня времени составил бы пример.
Добавлено через 42 минуты
полезно
Добавлено через 44 минуты
полезно