Ticket #3487: patch.diff

File patch.diff, 1.8 KB (added by Kirben, 16 years ago)

Patch for work around

  • engines/scumm/detection_tables.h

     
    251251        {"fbear", "HE 61", 0, GID_FBEAR, 6, 61, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, UNK},
    252252        {"fbear", "HE 70", 0, GID_FBEAR, 6, 70, MDT_NONE,             GF_USE_KEY, Common::kPlatformWindows},
    253253
    254         {"puttmoon", "", 0, GID_HEGAME,  6, 61, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, UNK},
     254        {"puttmoon", "", 0, GID_PUTTMOON, 6, 61, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, UNK},
     255        {"puttmoon", "HE 70", 0, GID_PUTTMOON, 6, 70, MDT_NONE,             GF_USE_KEY, Common::kPlatformWindows},
    255256
    256257        {"puttputt", "HE 61", 0, GID_HEGAME,   6, 61, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, UNK},
    257258        {"puttputt", "HE 60", 0, GID_HEGAME,   6, 60, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, Common::kPlatformPC},
  • engines/scumm/scumm.h

     
    219219        GID_HEGAME,      // Generic name for all HE games with default behaviour
    220220        GID_PUTTDEMO,
    221221        GID_FBEAR,
     222        GID_PUTTMOON,
    222223        GID_FUNPACK,
    223224        GID_FREDDI3,
    224225        GID_BIRTHDAY,
  • engines/scumm/script_v6.cpp

     
    920920        int y = pop();
    921921        int x = pop();
    922922        int obj = pop();
     923
     924        // WORKAROUND bug #1846746 : Adjust x and y position of
     925        // objects in credits sequence, to match other ports
     926        if (_game.id == GID_PUTTMOON && _game.platform == Common::kPlatform3DO &&
     927                _roomResource == 38 && vm.slot[_currentScript].number == 206) {
     928                x = y = -1;
     929        }
     930
    923931        setObjectState(obj, 1, x, y);
    924932}
    925933