diff --git a/extra/jamshred/oint/oint.factor b/extra/jamshred/oint/oint.factor index 11a89b314f..4680be4575 100644 --- a/extra/jamshred/oint/oint.factor +++ b/extra/jamshred/oint/oint.factor @@ -74,3 +74,7 @@ TUPLE: oint location forward up left ; : perpendicular-distance ( oint oint -- distance ) tuck distance-vector swap 2dup oint-left scalar-projection abs -rot oint-up scalar-projection abs + ; + +:: reflect ( v l -- v' ) + #! reflect v on l + v l v. l l v. / 2 * l n*v v v- ; diff --git a/extra/jamshred/player/player.factor b/extra/jamshred/player/player.factor index 17843ef9c2..3e143a845e 100644 --- a/extra/jamshred/player/player.factor +++ b/extra/jamshred/player/player.factor @@ -28,7 +28,8 @@ TUPLE: player name tunnel nearest-segment ; 0.3 ; : player-speed ( player -- speed ) - dup player-nearest-segment fraction-from-wall sq max-speed * ; + max-speed ; + ! dup player-nearest-segment fraction-from-wall sq max-speed * ; : move-player ( player -- ) dup player-speed over go-forward update-nearest-segment ;