aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kiewitz2010-01-20 17:56:00 +0000
committerMartin Kiewitz2010-01-20 17:56:00 +0000
commit0b2453aed8f49840ed275ebb5e13f9215a4c19ff (patch)
treea59ee7504799098f3a4cefd65ca35534e694f3ae
parent31e39d221b6591c48d3855ca660c971dbfc4ed30 (diff)
downloadscummvm-rg350-0b2453aed8f49840ed275ebb5e13f9215a4c19ff.tar.gz
scummvm-rg350-0b2453aed8f49840ed275ebb5e13f9215a4c19ff.tar.bz2
scummvm-rg350-0b2453aed8f49840ed275ebb5e13f9215a4c19ff.zip
SCI: workaround for game menu/quit menu in freddy pharkas till vm issue is resolved
svn-id: r47407
-rw-r--r--engines/sci/engine/kgraphics.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp
index df6ae2baa0..71e11f98e1 100644
--- a/engines/sci/engine/kgraphics.cpp
+++ b/engines/sci/engine/kgraphics.cpp
@@ -918,6 +918,15 @@ reg_t kDrawCel(EngineState *s, int argc, reg_t *argv) {
bool hiresMode = (argc > 7) ? true : false;
reg_t upscaledHiresHandle = (argc > 7) ? argv[7] : NULL_REG;
+ // WORKAROUND for script/VM issue in Freddy Pharkas - priority is taken from local variable and that is 8250h in sierra sci
+ // and 0h in our sci. It seems as some interpreter issue.
+ if (s->_gameId == "freddypharkas") {
+ if ((viewId == 995) && (x == 0x33) && (y == 0x26)) // game menu
+ priority = 15;
+ if ((viewId == 992) && (x == 48) && (y == 24)) // quit game
+ priority = 15;
+ }
+
s->_gui->drawCel(viewId, loopNo, celNo, x, y, priority, paletteNo, hiresMode, upscaledHiresHandle);
return s->r_acc;