diff options
Diffstat (limited to 'engines/dm/gfx.cpp')
| -rw-r--r-- | engines/dm/gfx.cpp | 15 | 
1 files changed, 9 insertions, 6 deletions
| diff --git a/engines/dm/gfx.cpp b/engines/dm/gfx.cpp index 5efb3f05ac..dae340085f 100644 --- a/engines/dm/gfx.cpp +++ b/engines/dm/gfx.cpp @@ -772,6 +772,8 @@ void DisplayMan::setUpScreens(uint16 width, uint16 height) {  	delete[] _g348_bitmapScreen;  	_g348_bitmapScreen = new byte[_screenWidth * _screenHeight];  	fillScreen(k0_ColorBlack); + +	_g74_tmpBitmap = new byte[_screenWidth * _screenHeight];  }  void DisplayMan::f479_loadGraphics() { @@ -2248,11 +2250,13 @@ void DisplayMan::f128_drawDungeon(direction dir, int16 posX, int16 posY) {  	f126_drawSquareD0R(dir, tmpPosX, tmpPosY);  	f127_drawSquareD0C(dir, posX, posY); -	_g698_bitmapWallSet_Wall_D3LCR = _g95_bitmapWall_D3LCR_Native; -	_g699_bitmapWallSet_Wall_D2LCR = _g96_bitmapWall_D2LCR_Native; -	_g700_bitmapWallSet_Wall_D1LCR = _g97_bitmapWall_D1LCR_Native; -	_g701_bitmapWallSet_Wall_D0L = _g98_bitmapWall_D0L_Native; -	_g702_bitmapWallSet_Wall_D0R = _g99_bitmapWall_D0R_Native; +	if (_g76_useFlippedWallAndFootprintsBitmap) { +		_g698_bitmapWallSet_Wall_D3LCR = _g95_bitmapWall_D3LCR_Native; +		_g699_bitmapWallSet_Wall_D2LCR = _g96_bitmapWall_D2LCR_Native; +		_g700_bitmapWallSet_Wall_D1LCR = _g97_bitmapWall_D1LCR_Native; +		_g701_bitmapWallSet_Wall_D0L = _g98_bitmapWall_D0L_Native; +		_g702_bitmapWallSet_Wall_D0R = _g99_bitmapWall_D0R_Native; +	}  	f97_drawViewport((_vm->_dungeonMan->_g309_partyMapIndex != k255_mapIndexEntrance) ? 1 : 0);  	if (_vm->_dungeonMan->_g309_partyMapIndex != k255_mapIndexEntrance) @@ -2320,7 +2324,6 @@ void DisplayMan::f96_loadCurrentMapGraphics() {  	f95_loadWallSet(_vm->_dungeonMan->_g269_currMap->_wallSet);  	{ -		_g74_tmpBitmap = new byte[_screenWidth * _screenHeight];  		_g578_useByteBoxCoordinates = true;  		f99_copyBitmapAndFlipHorizontal(_g95_bitmapWall_D3LCR_Native = _g698_bitmapWallSet_Wall_D3LCR, _g74_tmpBitmap, | 
