diff options
| -rw-r--r-- | engines/prince/prince.cpp | 11 | ||||
| -rw-r--r-- | engines/prince/prince.h | 1 | 
2 files changed, 11 insertions, 1 deletions
| diff --git a/engines/prince/prince.cpp b/engines/prince/prince.cpp index 77e21fbf8d..22064b05af 100644 --- a/engines/prince/prince.cpp +++ b/engines/prince/prince.cpp @@ -772,12 +772,19 @@ void PrinceEngine::checkMasks(int x1, int y1, int sprWidth, int sprHeight, int z  	}  } +void PrinceEngine::clsMasks() { +	for (uint i = 0; i < _maskList.size(); i++) { +		if (_maskList[i]._state == 1) { +			_maskList[i]._state = 0; +		} +	} +} +  // InsertNakladki  void PrinceEngine::insertMasks(const Graphics::Surface *originalRoomSurface) {  	for (uint i = 0; i < _maskList.size(); i++) {  		if (_maskList[i]._state == 1) {  			showMask(i, originalRoomSurface); -			_maskList[i]._state = 0; // here or somewhere else?  		}  	}  } @@ -1042,6 +1049,8 @@ void PrinceEngine::drawScreen() {  		_graph->draw(0, 0, &visiblePart);  	} +	clsMasks(); +  	if (_mainHero->_visible) {  		Graphics::Surface *mainHeroSurface = _mainHero->getSurface();  		if (mainHeroSurface) { diff --git a/engines/prince/prince.h b/engines/prince/prince.h index b9e61f67d3..1deb26f926 100644 --- a/engines/prince/prince.h +++ b/engines/prince/prince.h @@ -250,6 +250,7 @@ public:  	void checkMasks(int x1, int y1, int sprWidth, int sprHeight, int z);  	void insertMasks(const Graphics::Surface *originalRoomSurface);  	void showMask(int maskNr, const Graphics::Surface *originalRoomSurface); +	void clsMasks();  	int testAnimNr;  	int testAnimFrame; | 
