diff options
Diffstat (limited to 'engines/sci/engine/kgraphics.cpp')
| -rw-r--r-- | engines/sci/engine/kgraphics.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp index 318a6533eb..35fef54224 100644 --- a/engines/sci/engine/kgraphics.cpp +++ b/engines/sci/engine/kgraphics.cpp @@ -794,13 +794,12 @@ reg_t kIsItSkip(EngineState *s, int argc, reg_t *argv) { reg_t kCelHigh(EngineState *s, int argc, reg_t *argv) { int view = argv[0].toSint16(); int loop = argv[1].toSint16(); - int cel = argv[2].toSint16(); + int cel = (argc > 3) ? argv[2].toSint16() : 0; int height, width; Common::Point offset; - if (argc != 3) { - warning("CelHigh called with %d parameters", argc); - } + if (argc > 4) + error("celHigh called with more than 3 parameters"); gfxop_get_cel_parameters(s->gfx_state, view, loop, cel, &width, &height, &offset); return make_reg(0, height); @@ -809,13 +808,12 @@ reg_t kCelHigh(EngineState *s, int argc, reg_t *argv) { reg_t kCelWide(EngineState *s, int argc, reg_t *argv) { int view = argv[0].toSint16(); int loop = argv[1].toSint16(); - int cel = argv[2].toSint16(); + int cel = (argc > 3) ? argv[2].toSint16() : 0; int height, width; Common::Point offset; - if (argc != 3) { - warning("CelHigh called with %d parameters", argc); - } + if (argc > 4) + error("celWide called with more than 3 parameters"); gfxop_get_cel_parameters(s->gfx_state, view, loop, cel, &width, &height, &offset); return make_reg(0, width); |
