diff options
| author | Paweł Kołodziejski | 2003-04-18 21:10:32 +0000 | 
|---|---|---|
| committer | Paweł Kołodziejski | 2003-04-18 21:10:32 +0000 | 
| commit | d0e9fef9a2596f580181990d996d477b70c8182e (patch) | |
| tree | ab021ed37190dbf48efc180c11d0b1d8f8b93ccc | |
| parent | ad7bc9b22fe185f15cd827f2e90a06bdcdc34a15 (diff) | |
| download | scummvm-rg350-d0e9fef9a2596f580181990d996d477b70c8182e.tar.gz scummvm-rg350-d0e9fef9a2596f580181990d996d477b70c8182e.tar.bz2 scummvm-rg350-d0e9fef9a2596f580181990d996d477b70c8182e.zip | |
some changes for indy ega
svn-id: r7019
| -rw-r--r-- | scumm/script.cpp | 4 | ||||
| -rw-r--r-- | scumm/script_v5.cpp | 8 | 
2 files changed, 7 insertions, 5 deletions
| diff --git a/scumm/script.cpp b/scumm/script.cpp index 53fa2988d8..7d501d8ce6 100644 --- a/scumm/script.cpp +++ b/scumm/script.cpp @@ -355,7 +355,7 @@ int Scumm::readVar(uint var) {  		return _vars[var];  	if (var & 0x8000) { -		if ((_gameId == GID_ZAK256) || (_gameId == GID_LOOM)) { +		if ((_gameId == GID_ZAK256) || (_features & GF_OLD_BUNDLE)) {  			// Emulate a wierd hack in Zak256 to read individual  			// bits of a normal global  			int b = (var & 0x000F); @@ -405,7 +405,7 @@ void Scumm::writeVar(uint var, int value) {  	}  	if (var & 0x8000) { -		if ((_gameId == GID_ZAK256) || (_gameId == GID_LOOM)) { +		if ((_gameId == GID_ZAK256) || (_features & GF_OLD_BUNDLE)) {  			// Emulate a wierd hack in Zak256 to read individual  			// bits of a normal global  			int b = (var & 0x000F); diff --git a/scumm/script_v5.cpp b/scumm/script_v5.cpp index 12b86cfdc5..1d383492c5 100644 --- a/scumm/script_v5.cpp +++ b/scumm/script_v5.cpp @@ -954,7 +954,7 @@ void Scumm_v5::o5_getActorScale() {  		return;  	// INDY3 uses this opcode as a wait_for_actor(); -	if ((_gameId == GID_INDY3_256) || (_features & GF_OLD_BUNDLE)) { +	if ((_gameId == GID_INDY3_256) || (_gameId == GID_INDY3)) {  		byte *oldaddr = _scriptPointer - 1;  		if (derefActorSafe(getVarOrDirectByte(0x80), "o5_wait")->moving) {  			_scriptPointer = oldaddr; @@ -986,7 +986,7 @@ void Scumm_v5::o5_getActorX() {  	int a;  	getResultPos(); -	if (_gameId == GID_INDY3_256) +	if ((_gameId == GID_INDY3_256) || (_gameId == GID_INDY3))  		a = getVarOrDirectByte(0x80);  	else  		a = getVarOrDirectWord(0x80); @@ -998,7 +998,9 @@ void Scumm_v5::o5_getActorY() {  	int a;  	getResultPos(); -	if (_gameId == GID_INDY3_256) { +	if (_gameId == GID_INDY3) +		a = getVarOrDirectByte(0x80); +	else if (_gameId == GID_INDY3_256) {  		a = getVarOrDirectByte(0x80);  		// Indy3 hack to cheat the 'Leap of Faith' grail test | 
