aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2017-03-26 19:02:39 -0400
committerPaul Gilbert2017-03-26 19:02:39 -0400
commit7556a804137dd6536d5a6715100a668558b58992 (patch)
tree9b00f9d08917cba1b5556b99e59b2c0d3923d4bf /engines
parentb9e072275b68ab2aeeefb5c2213db0dd27e39e1d (diff)
downloadscummvm-rg350-7556a804137dd6536d5a6715100a668558b58992.tar.gz
scummvm-rg350-7556a804137dd6536d5a6715100a668558b58992.tar.bz2
scummvm-rg350-7556a804137dd6536d5a6715100a668558b58992.zip
TITANIC: Fix references to fields of DMatrix _row4
Diffstat (limited to 'engines')
-rw-r--r--engines/titanic/star_control/dmatrix.cpp19
-rw-r--r--engines/titanic/star_control/dvector.cpp4
2 files changed, 12 insertions, 11 deletions
diff --git a/engines/titanic/star_control/dmatrix.cpp b/engines/titanic/star_control/dmatrix.cpp
index 32614ac063..b7ebbc718a 100644
--- a/engines/titanic/star_control/dmatrix.cpp
+++ b/engines/titanic/star_control/dmatrix.cpp
@@ -164,12 +164,13 @@ DMatrix DMatrix::fn1() const {
m._row2._z = -((_row1._x * _row2._z - _row1._z * _row2._x) * val9);
m._row3._z = (_row1._x * _row2._y - _row1._y * _row2._x) * val9;
- m._row4._x = -(m._row1._x * _row4._x + _row4._z * m._row2._x
- + _row4._y * m._row3._x);
- m._row4._z = -(_row4._y * m._row3._y + _row4._z * m._row2._y
+ m._row4._x = -(m._row1._x * _row4._x + _row4._y * m._row2._x
+ + _row4._z * m._row3._x);
+ m._row4._y = -(_row4._z * m._row3._y + _row4._y * m._row2._y
+ _row4._x * m._row1._y);
- m._row4._y = -(_row4._y * m._row3._z + _row4._x * m._row1._z
- + _row4._z * m._row2._z);
+ m._row4._z = -(_row4._z * m._row3._z + _row4._x * m._row1._z
+ + _row4._y * m._row2._z);
+
return m;
}
@@ -232,11 +233,11 @@ DMatrix DMatrix::fn4(const DMatrix &m) {
+ m._row1._y * _row3._x;
dm._row3._z = m._row2._z * _row3._y + m._row3._z * _row3._z
+ m._row1._z * _row3._x;
- dm._row4._x = m._row1._x * dm._row4._x + _row4._y * m._row2._x
+ dm._row4._x = m._row1._x * _row4._x + _row4._y * m._row2._x
+ _row4._z * m._row3._x + m._row4._x;
- dm._row4._z = _row4._z * m._row3._y + _row4._y * m._row2._y
- + dm._row4._x * m._row1._y + m._row4._y;
- dm._row4._z = _row4._y * m._row2._z + dm._row4._x * m._row1._z
+ dm._row4._y = _row4._z * m._row3._y + _row4._y * m._row2._y
+ + _row4._x * m._row1._y + m._row4._y;
+ dm._row4._z = _row4._y * m._row2._z + _row4._x * m._row1._z
+ _row4._z * m._row3._z + m._row4._z;
return dest;
diff --git a/engines/titanic/star_control/dvector.cpp b/engines/titanic/star_control/dvector.cpp
index 080b45e5b8..0dab5bbbcb 100644
--- a/engines/titanic/star_control/dvector.cpp
+++ b/engines/titanic/star_control/dvector.cpp
@@ -42,8 +42,8 @@ double DVector::getDistance(const DVector &src) {
DVector *DVector::fn1(DVector &dest, const DMatrix &m) {
dest._x = m._row3._x * _z + m._row2._x * _y + _x * m._row1._x + m._row4._x;
- dest._y = m._row2._y * _y + m._row3._y * _z + m._row1._y * _x + m._row4._z;
- dest._z = m._row3._z * _z + m._row2._z * _y + m._row1._z * _x + m._row4._y;
+ dest._y = m._row2._y * _y + m._row3._y * _z + m._row1._y * _x + m._row4._y;
+ dest._z = m._row3._z * _z + m._row2._z * _y + m._row1._z * _x + m._row4._z;
return &dest;
}