[Scummvm-cvs-logs] scummvm master -> 45ee4f4845b2355eb528a85c7f9c14aeb98c31a8

dreammaster dreammaster at scummvm.org
Sun Sep 18 08:38:49 CEST 2011


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:
45ee4f4845 TSAGE: In Blue Force, cursor doesn't reset to Walk after doing actions


Commit: 45ee4f4845b2355eb528a85c7f9c14aeb98c31a8
    https://github.com/scummvm/scummvm/commit/45ee4f4845b2355eb528a85c7f9c14aeb98c31a8
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2011-09-17T23:33:09-07:00

Commit Message:
TSAGE: In Blue Force, cursor doesn't reset to Walk after doing actions

Changed paths:
    engines/tsage/core.cpp
    engines/tsage/events.h



diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp
index 99ea4ab..a41362e 100644
--- a/engines/tsage/core.cpp
+++ b/engines/tsage/core.cpp
@@ -2987,22 +2987,28 @@ void Player::enableControl() {
 	_canWalk = true;
 	_uiEnabled = true;
 	_enabled = true;
-	_globals->_events.setCursor(CURSOR_WALK);
 
-	switch (_globals->_events.getCursor()) {
-	case CURSOR_WALK:
-	case CURSOR_LOOK:
-	case CURSOR_USE:
-	case CURSOR_TALK:
-		_globals->_events.setCursor(_globals->_events.getCursor());
-		break;
-	default:
+	if (_vm->getGameID() == GType_Ringworld) {
 		_globals->_events.setCursor(CURSOR_WALK);
-		break;
-	}
 
-	if ((_vm->getGameID() == GType_BlueForce) && BF_GLOBALS._uiElements._active)
-		BF_GLOBALS._uiElements.show();
+		switch (_globals->_events.getCursor()) {
+		case CURSOR_WALK:
+		case CURSOR_LOOK:
+		case CURSOR_USE:
+		case CURSOR_TALK:
+			_globals->_events.setCursor(_globals->_events.getCursor());
+			break;
+		default:
+			_globals->_events.setCursor(CURSOR_WALK);
+			break;
+		}
+	} else {
+		CursorType cursor = _globals->_events.getCursor();
+		_globals->_events.setCursor(cursor);
+
+		if (BF_GLOBALS._uiElements._active)
+			BF_GLOBALS._uiElements.show();
+	}
 }
 
 void Player::process(Event &event) {
@@ -3845,17 +3851,19 @@ void SceneHandler::process(Event &event) {
 
 					event.handled = _globals->_events.getCursor() != CURSOR_WALK;
 
-					if (_globals->_player._uiEnabled && _globals->_player._canWalk &&
-							(_globals->_events.getCursor() != CURSOR_LOOK)) {
-						_globals->_events.setCursor(CURSOR_WALK);
-					} else if (_globals->_player._canWalk && (_globals->_events.getCursor() != CURSOR_LOOK)) {
-						_globals->_events.setCursor(CURSOR_WALK);
-					} else if (_globals->_player._uiEnabled && (_globals->_events.getCursor() != CURSOR_LOOK)) {
-						_globals->_events.setCursor(CURSOR_USE);
-					}
+					if ((_vm->getGameID() == GType_Ringworld) || (_globals->_events.getCursor() == CURSOR_9999)) {
+						if (_globals->_player._uiEnabled && _globals->_player._canWalk &&
+								(_globals->_events.getCursor() != CURSOR_LOOK)) {
+							_globals->_events.setCursor(CURSOR_WALK);
+						} else if (_globals->_player._canWalk && (_globals->_events.getCursor() != CURSOR_LOOK)) {
+							_globals->_events.setCursor(CURSOR_WALK);
+						} else if (_globals->_player._uiEnabled && (_globals->_events.getCursor() != CURSOR_LOOK)) {
+							_globals->_events.setCursor(CURSOR_USE);
+						}
 
-					if (_vm->getGameID() == GType_BlueForce)
-						event.handled = true;
+						if (_vm->getGameID() == GType_BlueForce)
+							event.handled = true;
+					}
 					break;
 				}
 			}
diff --git a/engines/tsage/events.h b/engines/tsage/events.h
index 3680250..3ce7332 100644
--- a/engines/tsage/events.h
+++ b/engines/tsage/events.h
@@ -84,7 +84,7 @@ enum CursorType {
 
 	// Cursors
 	CURSOR_WALK = 0x100, CURSOR_LOOK = 0x200, CURSOR_700 = 700, CURSOR_USE = 0x400, CURSOR_TALK = 0x800,
-	CURSOR_1000 = 0x1000, CURSOR_EXIT = 0x7004,
+	CURSOR_1000 = 0x1000, CURSOR_EXIT = 0x7004, CURSOR_9999 = 9999,
 	CURSOR_NONE = -1, CURSOR_CROSSHAIRS = -2, CURSOR_ARROW = -3
 };
 






More information about the Scummvm-git-logs mailing list