diff -ur ScummVM-cvs20021210/scummvm/scumm/script_v2.cpp ScummVM-cvs20021210+hack/scummvm/scumm/script_v2.cpp
old
|
new
|
|
1579 | 1579 | break; |
1580 | 1580 | |
1581 | 1581 | case 213: /* set palette */ |
1582 | | // One case where this is used is to turn off Sam & Max film |
1583 | | // noir mode. Unfortunately it only restores color to the |
1584 | | // palette, it doesn't take palette manipulation (darkening, |
1585 | | // etc.) into account. So, for instance, if you turn on film |
1586 | | // noir mode in Sam & Max's office, turn off the light and turn |
1587 | | // off film noir mode, the room will no longer look dark. |
1588 | | // |
1589 | | // This bug is present in the original interpreter, so it may |
1590 | | // not be worth the trouble fixing it. |
1591 | | setPalette(pop()); |
| 1582 | a = pop(); |
| 1583 | |
| 1584 | // This opcode is used when turning off noir mode in Sam & Max, |
| 1585 | // but since our implementation of this feature doesn't change |
| 1586 | // the original palette there's no need to reload it. Doing it |
| 1587 | // this way, we avoid some graphics glitches that the original |
| 1588 | // interpreter had. |
| 1589 | |
| 1590 | if (_gameId == GID_SAMNMAX && vm.slot[_currentScript].number == 64) |
| 1591 | setDirtyColors(0, 255); |
| 1592 | else |
| 1593 | setPalette(a); |
1592 | 1594 | break; |
1593 | 1595 | |
1594 | 1596 | default: |