diff options
| -rw-r--r-- | engines/cruise/actor.cpp | 10 | ||||
| -rw-r--r-- | engines/cruise/actor.h | 5 | 
2 files changed, 9 insertions, 6 deletions
| diff --git a/engines/cruise/actor.cpp b/engines/cruise/actor.cpp index 233b11d17c..a2e0a76f2d 100644 --- a/engines/cruise/actor.cpp +++ b/engines/cruise/actor.cpp @@ -40,7 +40,7 @@ bool isAnimFinished(int overlayIdx, int idx, actorStruct *pStartEntry, int objTy  	while (pCurrentEntry) {  		if ((pCurrentEntry->overlayNumber == overlayIdx || overlayIdx == -1) &&  		        (pCurrentEntry->idx == idx || idx == -1) && -		        (pCurrentEntry->type == objType || objType == ANIM_WAIT)) { +		        (pCurrentEntry->type == objType || objType == -1)) {  			if (pCurrentEntry->pathId != ANIM_FINISH) {  				return false;  			} @@ -730,10 +730,11 @@ void processAnimation(void) {  	while (currentActor) {  		nextActor = currentActor->next; -		if (!currentActor->freeze && ((currentActor->type == 0)	|| (currentActor->type == 1))) { +		if (!currentActor->freeze && ((currentActor->type == ATP_MOUSE) || (currentActor->type == 1))) {  			getMultipleObjectParam(currentActor->overlayNumber, currentActor->idx, ¶ms); -			if (((animationStart && !currentActor->flag) || (!animationStart && currentActor->x_dest != -1 && currentActor->y_dest != -1)) && (currentActor->type == 0)) { +			if (((animationStart && !currentActor->flag) || (!animationStart && currentActor->x_dest != -1 +					&& currentActor->y_dest != -1)) && (currentActor->type == ATP_MOUSE)) {  				// mouse animation  				if (!animationStart) {  					aniX = currentActor->x_dest; @@ -868,7 +869,6 @@ void processAnimation(void) {  							break;  						}  					} -					break;  				}  				// Walk animations @@ -907,8 +907,6 @@ void processAnimation(void) {  							currentActor->x, currentActor->y, newA, currentActor->poly);  						break;  					} - -					break;  				}  				case ANIM_PHASE_END:  				{ diff --git a/engines/cruise/actor.h b/engines/cruise/actor.h index 41d33eff3b..7e9f3672ad 100644 --- a/engines/cruise/actor.h +++ b/engines/cruise/actor.h @@ -36,6 +36,11 @@ enum animPhase {  	ANIM_PHASE_END = 4  }; +enum ATP { +	ATP_MOUSE = 0, +	ATP_TRACK = 1 +}; +  struct actorStruct {  	struct actorStruct *next;  	struct actorStruct *prev; | 
