TITANIC: Fix star3 locking overshoot, #9961

I fixed this previously for star2, I thought the
overshoot for star3 locking might have also been fixed
since I hadn't observed it in a while.

I applied the same workaround by setting the old position
to be the new position.
This commit is contained in:
David Fioramonti 2017-09-02 07:41:24 -07:00
parent 0d5d031564
commit 4e586ba43d

View File

@ -26,7 +26,6 @@
#include "titanic/star_control/fmatrix.h"
#include "titanic/star_control/fpoint.h"
#include "titanic/star_control/marked_camera_mover.h"
//#include "titanic/star_control/matrix_inv.h"
#include "titanic/star_control/unmarked_camera_mover.h"
#include "titanic/star_control/error_code.h"
#include "titanic/support/simple_file.h"
@ -616,7 +615,9 @@ bool CStarCamera::lockMarker3(CViewport *viewport, const FVector &thirdStarPosit
FVector newPos = viewport->_position;
FVector oldPos = _viewport._position;
_mover->transitionBetweenPosOrients(oldPos, newPos, oldOr, newOr);
// WORKAROUND: set old position to new position (1st argument), this prevents
// locking issues when locking the 3rd star. Fixes #9961.
_mover->transitionBetweenPosOrients(newPos, newPos, oldOr, newOr);
CStarVector *sv = new CStarVector(this, thirdStarPosition);
_mover->setVector(sv);