Более менее нормально реализован крюк

Механика движения крюка посторена на RotatedRectangle. Работает почти
как надо.