aboutsummaryrefslogtreecommitdiff
path: root/engines/agi/graphics.cpp
diff options
context:
space:
mode:
authorFilippos Karapetis2007-09-21 07:54:43 +0000
committerFilippos Karapetis2007-09-21 07:54:43 +0000
commitd042f82a8a8968cdbea969bd427c50794b43738d (patch)
tree36e7861ad8d5c7aa51f3e43093d26a23b2d509e3 /engines/agi/graphics.cpp
parent6b639c6b214534c0e1c49b5a37a658948b086760 (diff)
downloadscummvm-rg350-d042f82a8a8968cdbea969bd427c50794b43738d.tar.gz
scummvm-rg350-d042f82a8a8968cdbea969bd427c50794b43738d.tar.bz2
scummvm-rg350-d042f82a8a8968cdbea969bd427c50794b43738d.zip
Minimize changes to the mouse cursor's palette
svn-id: r29002
Diffstat (limited to 'engines/agi/graphics.cpp')
-rw-r--r--engines/agi/graphics.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/agi/graphics.cpp b/engines/agi/graphics.cpp
index 1b8223b051..378080fcc9 100644
--- a/engines/agi/graphics.cpp
+++ b/engines/agi/graphics.cpp
@@ -536,6 +536,7 @@ GfxMgr::GfxMgr(AgiBase *vm) : _vm(vm) {
_shakeH = NULL;
_shakeV = NULL;
_agipalFileNum = 0;
+ _currentCursorPalette = 0; // cursor palette not set
}
@@ -1007,9 +1008,15 @@ void GfxMgr::setCursor(bool amigaStyleCursor) {
void GfxMgr::setCursorPalette(bool amigaStyleCursor) {
if (!amigaStyleCursor) {
- CursorMan.replaceCursorPalette(sciMouseCursorPalette, 1, ARRAYSIZE(sciMouseCursorPalette) / 4);
+ if (_currentCursorPalette != 1) {
+ CursorMan.replaceCursorPalette(sciMouseCursorPalette, 1, ARRAYSIZE(sciMouseCursorPalette) / 4);
+ _currentCursorPalette = 1;
+ }
} else { // amigaStyleCursor
- CursorMan.replaceCursorPalette(amigaMouseCursorPalette, 1, ARRAYSIZE(amigaMouseCursorPalette) / 4);
+ if (_currentCursorPalette != 2) {
+ CursorMan.replaceCursorPalette(amigaMouseCursorPalette, 1, ARRAYSIZE(amigaMouseCursorPalette) / 4);
+ _currentCursorPalette = 2;
+ }
}
}