[Scummvm-cvs-logs] SF.net SVN: scummvm:[55575] scummvm/trunk/engines/gob/inter_v2.cpp
drmccoy at users.sourceforge.net
drmccoy at users.sourceforge.net
Thu Jan 27 22:12:28 CET 2011
Revision: 55575
http://scummvm.svn.sourceforge.net/scummvm/?rev=55575&view=rev
Author: drmccoy
Date: 2011-01-27 21:12:27 +0000 (Thu, 27 Jan 2011)
Log Message:
-----------
GOB: Only draw text when coordinates are within the surface
Modified Paths:
--------------
scummvm/trunk/engines/gob/inter_v2.cpp
Modified: scummvm/trunk/engines/gob/inter_v2.cpp
===================================================================
--- scummvm/trunk/engines/gob/inter_v2.cpp 2011-01-27 20:50:43 UTC (rev 55574)
+++ scummvm/trunk/engines/gob/inter_v2.cpp 2011-01-27 21:12:27 UTC (rev 55575)
@@ -1099,6 +1099,10 @@
_vm->_draw->_textToPrint = buf;
_vm->_draw->_transparency = 0;
+ SurfacePtr surface = _vm->_draw->_spritesArray[_vm->_draw->_destSurface];
+ uint16 destWidth = surface ? surface->getWidth() : 0;
+ uint16 destHeight = surface ? surface->getHeight() : 0;
+
if (_vm->_draw->_backColor == 16) {
_vm->_draw->_backColor = 0;
_vm->_draw->_transparency = 1;
@@ -1142,7 +1146,10 @@
} else
buf[i] = 0;
- _vm->_draw->spriteOperation(DRAW_PRINTTEXT);
+ if ((_vm->_draw->_destSpriteX < destWidth) &&
+ (_vm->_draw->_destSpriteY < destHeight))
+ _vm->_draw->spriteOperation(DRAW_PRINTTEXT);
+
} while (_vm->_game->_script->peekByte() != 200);
_vm->_game->_script->skip(1);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list