[Scummvm-git-logs] scummvm master -> a42172485efb47638bd4cb27f7be8d32247a5605

dreammaster dreammaster at scummvm.org
Tue Aug 1 04:03:23 CEST 2017


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
a42172485e TITANIC: Fix forward/backward manual camera movement in starmap


Commit: a42172485efb47638bd4cb27f7be8d32247a5605
    https://github.com/scummvm/scummvm/commit/a42172485efb47638bd4cb27f7be8d32247a5605
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2017-07-31T22:03:17-04:00

Commit Message:
TITANIC: Fix forward/backward manual camera movement in starmap

Changed paths:
    engines/titanic/star_control/camera_mover.cpp


diff --git a/engines/titanic/star_control/camera_mover.cpp b/engines/titanic/star_control/camera_mover.cpp
index bd588e6..8b1e4ef 100644
--- a/engines/titanic/star_control/camera_mover.cpp
+++ b/engines/titanic/star_control/camera_mover.cpp
@@ -48,30 +48,38 @@ CCameraMover::~CCameraMover() {
 }
 
 void CCameraMover::copyFrom(const CNavigationInfo *src) {
-	*((CNavigationInfo *)this) = *src;
+	_speed = src->_speed;
+	_unused = src->_speedChangeCtr;
+	_maxSpeed = src->_speedChangeInc;
+	_speedChangeCtr = src->_unused;
+	_speedChangeInc = src->_maxSpeed;
+	_unusedX = src->_unusedX;
+	_unusedY = src->_unusedY;
+	_unusedZ = src->_unusedZ;
 }
 
 void CCameraMover::copyTo(CNavigationInfo *dest) {
-	*dest = *((CNavigationInfo *)this);
+	dest->_speed = _speed;
+	dest->_speedChangeCtr = _unused;
+	dest->_speedChangeInc = _maxSpeed;
+	dest->_unused = _speedChangeCtr;
+	dest->_maxSpeed = _speedChangeInc;
+	dest->_unusedX = _unusedX;
+	dest->_unusedY = _unusedY;
+	dest->_unusedZ = _unusedZ;
 }
 
 void CCameraMover::increaseSpeed() {
 	if (!isLocked() && _speed < _maxSpeed) {
 		_speedChangeCtr += _speedChangeInc;
-		if (_speedChangeCtr > _speed)
-			_speed -= _speedChangeCtr;
-		else
-			_speed += _speedChangeCtr;
+		_speed += ABS(_speedChangeCtr);
 	}
 }
 
 void CCameraMover::decreaseSpeed() {
 	if (!isLocked()) {
 		_speedChangeCtr -= _speedChangeInc;
-		if (_speedChangeCtr > _speed)
-			_speed -= _speedChangeCtr;
-		else
-			_speed += _speedChangeCtr;
+		_speed -= ABS(_speedChangeCtr);
 
 		if (_speedChangeCtr < 0.0)
 			_speedChangeCtr = 0.0;





More information about the Scummvm-git-logs mailing list