diff options
Diffstat (limited to 'scumm/scumm.cpp')
-rw-r--r-- | scumm/scumm.cpp | 37 |
1 files changed, 21 insertions, 16 deletions
diff --git a/scumm/scumm.cpp b/scumm/scumm.cpp index 2d1e0b0fd9..52da3e5214 100644 --- a/scumm/scumm.cpp +++ b/scumm/scumm.cpp @@ -1152,15 +1152,6 @@ void ScummEngine::scummInit() { setupEGAPalette(); } - if (_version <= 2) { - initV2MouseOver(); - - // Seems in V2 there was only a single room effect (iris), - // so we set that here. - _switchRoomEffect2 = 1; - _switchRoomEffect = 5; - } - if (_version > 3 && _version < 8) loadCharset(1); @@ -1286,14 +1277,18 @@ void ScummEngine::scummInit() { for (i = 0; i < 512; i++) _keyDownMap[i] = false; - if (_heversion >= 70) { - if (_wizPolygons) - free (_wizPolygons); + _lastSaveTime = _system->get_msecs(); +} - _wizPolygons = (WizPolygon *)calloc(_wizNumPolygons, sizeof(WizPolygon)); - } +void ScummEngine_v2::scummInit() { + ScummEngine::scummInit(); - _lastSaveTime = _system->get_msecs(); + initV2MouseOver(); + + // Seems in V2 there was only a single room effect (iris), + // so we set that here. + _switchRoomEffect2 = 1; + _switchRoomEffect = 5; } void ScummEngine_v6::scummInit() { @@ -1312,6 +1307,16 @@ void ScummEngine_v6::scummInit() { setCursorHotspot(16, 16); } +void ScummEngine_v60he::scummInit() { + ScummEngine::scummInit(); + + if (_heversion >= 70) { + free(_wizPolygons); + + _wizPolygons = (WizPolygon *)calloc(_wizNumPolygons, sizeof(WizPolygon)); + } +} + void ScummEngine::setupMusic(int midi) { _midiDriver = GameDetector::detectMusicDriver(midi); _native_mt32 = ConfMan.getBool("native_mt32"); @@ -1662,7 +1667,7 @@ load_game: } if (_cursor.state > 0) - verbMouseOver(checkMouseOver(_mouse.x, _mouse.y)); + verbMouseOver(findVerbAtPos(_mouse.x, _mouse.y)); if (_version <= 2) { if (oldEgo != VAR(VAR_EGO)) { |