diff options
| author | Gregory Montoir | 2003-11-17 19:55:17 +0000 | 
|---|---|---|
| committer | Gregory Montoir | 2003-11-17 19:55:17 +0000 | 
| commit | 1b77e5c41f6a5d7f45deac6f308b8841e8c40b24 (patch) | |
| tree | 20b4828c7aa5350c35fb0704410de6d2006cf481 | |
| parent | 25414d0f2ddf0999dffb68186e2429b2354d2431 (diff) | |
| download | scummvm-rg350-1b77e5c41f6a5d7f45deac6f308b8841e8c40b24.tar.gz scummvm-rg350-1b77e5c41f6a5d7f45deac6f308b8841e8c40b24.tar.bz2 scummvm-rg350-1b77e5c41f6a5d7f45deac6f308b8841e8c40b24.zip  | |
fix some demo-related bugs :
- lola disappearing under the shower
- wrong frame used when Joe uses the sheet rope (changed some conditions to match the ones in the original source)
the english demo versions (PCGames & normal) seem now to be completable without any graphical glitches ; only the sound/music and 'end message' are missing
svn-id: r11325
| -rw-r--r-- | queen/cutaway.cpp | 12 | 
1 files changed, 7 insertions, 5 deletions
diff --git a/queen/cutaway.cpp b/queen/cutaway.cpp index 06d6744741..8592f2b54e 100644 --- a/queen/cutaway.cpp +++ b/queen/cutaway.cpp @@ -1023,7 +1023,7 @@ byte *Cutaway::handleAnimation(byte *ptr, CutawayObject &object) {  			}  			if (objAnim[i].object < 4) -				bob->frameNum = 29 + bob->frameNum + FRAMES_JOE_XTRA; +				bob->frameNum = 29 + objAnim[i].object + FRAMES_JOE_XTRA;  			if (objAnim[i].unpackFrame == 0) {  				// Turn off the bob @@ -1033,7 +1033,7 @@ byte *Cutaway::handleAnimation(byte *ptr, CutawayObject &object) {  				if (object.animType == 2 || object.animType == 0) {  					// Unpack animation, but do not unpack moving people -					if (!((objAnim[i].mx || objAnim[i].my) && InRange(objAnim[i].object, 0, 3))) { +					if (!((objAnim[i].mx > 0 || objAnim[i].my > 0) && InRange(objAnim[i].object, 1, 3))) {  						/*debug(0, "Animation - bankUnpack(%i, %i, %i);",  								objAnim[i].unpackFrame,   								objAnim[i].originalFrame, @@ -1056,12 +1056,14 @@ byte *Cutaway::handleAnimation(byte *ptr, CutawayObject &object) {  				}  				// Only flip if we are not moving or it is not a person object -				if (!(objAnim[i].mx || objAnim[i].my) || -						!(objAnim[i].object > 0 && objAnim[i].object < 4)) +				if (!(objAnim[i].object > 0 && objAnim[i].object < 4) || +						!(objAnim[i].mx || objAnim[i].my) )  					bob->xflip = objAnim[i].flip;  				// Add frame alteration -				bob->frameNum = objAnim[i].originalFrame; +				if (!(objAnim[i].object > 0 && objAnim[i].object < 4)) { +					bob->frameNum = objAnim[i].originalFrame; +				}  				int j;  				for (j = 0; j < objAnim[i].speed; j++)  | 
