In the NES version of Maniac Mansion, each kid has their own CD player
playing a different background music by default.
Each CD player script does something like this when you turn it off:
(2F) if (!getState04(46)) {
(D8) printEgo("It's already off.");
(18) } else {
(67) clearState04(46);
(1A) Var[224] = 0; # <==
(3C) stopSound(71);
(**) }
but Wendy's CD player script is missing the `Var[224] = 0` line, so
although her music was stopped, the game scripts weren't properly aware
of this, and so her music could suddenly resume, such as when entering
and leaving room 3 with her character.
Commit 1f4e197 changed the AppData id to a rDNS one, however the actual appdata/desktop file names stayed non-rDNS. This broke the metadata since AppStream parsers cannot match the correct desktop file anymore. This commit reverts the change
This is a bug in the original interpreter, so the following workaround is marked as an enhancement.
When Guybrush gets on the Sea Cucumber for the first time and the monkeys show up on deck, if the ESC key is pressed before the "Any last words, Threepwood?" dialogue, the music will continue playing indefinitely throughout the game (or until another "sequence" music is played). To amend this, we intercept this exact script override and we force the playback of sound 2277, which is the iMUSE sequence which would have been played after the dialogue.
This workaround has been stress-tested on all Steam available languages + Akella Russian.
Revert "TINSEL: Fix int32 discrepancy"
- This reverts commit a640e6b48991c027c3974607d025b16c054354f1.
Revert "TINSEL: Refactor Notebook and System reels to follow naming conventions"
- This reverts commit 2cfc3b4ed29f133730a9d54db3b7e45503d55068.
Revert "TINSEL: Rename IsConvAndNotMove -> isConvAndNotMove"
- This reverts commit 5ba099f408f7a78206a10dc4ee8b52360d208504.
Revert "TINSEL: Rename the public methods in Dialogs to follow convention"
- This reverts commit 8ef52754a1c0189f68a1ac5d64168b236ca38e69.
Revert "TINSEL: Rename the private methods in Dialogs to follow convention"
- This reverts commit a3d0b5206b9cacfd36dacf8aca1262c986b3df31.
Revert "TINSEL: Add debug commands to add all clues, as well as listing them."
- This reverts commit fdfede64ca258d73b6de09c9334c7bc8ce2a3b65.
Revert "TINSEL: Implement pointer handling for Notebook"
- This reverts commit 195b04c9cf5ba743a371db0c9685b9f96f4950dd.
Revert "TINSEL: Implement polygon-handling for Notebook"
- This reverts commit 10cce703dcda251eef6af5ca550206a3c4bdff8a.
Revert "TINSEL: Add initial event support to Notebook."
- This reverts commit 61c94379cda64d3d5119edb905d65b4d92ce1778.
Revert "TINSEL: Close Inventories when switching between them."
- This reverts commit 337aed1915c84ed7d415a7f325a680c1bdc35ea4.
Revert "TINSEL: Implement library function CROSSCLUE"
- This reverts commit 9519288acd58adbdc9d5a89ef45294a6500b730f.
Revert "TINSEL: Implement Notebook logic for adding clues and showing pages."
- This reverts commit 3580c17cc52af43ee95c05b9c98eb49d3750e346.
Revert "TINSEL: Implement InventoryOrNotebookActive"
- This reverts commit 89aefb77945b21ecb4670c1fb24356a31d08c3af.
Revert "TINSEL: Minor style-fixes"
- This reverts commit e92fafb9558dfef3adc283a2fff8349d48651b26.
Revert "TINSEL: Refactor IsInPolygon to be partially a member-function"
- This reverts commit fa7d4480512d4e7af766a6aa433b253d48b2e537.
Revert "TINSEL: Replace LockMem with GetFrame for FRAME"
- This reverts commit ec9c630fc5b2b0613f5adda182421d501a061ad8.
Revert "TINSEL: Replace LockMem with GetMultiInit for MULTI_INIT"
- This reverts commit fa8e3c506b93b272271d33663fee85bd86651526.
Revert "TINSEL: Further refactor InventoryObjects"
- This reverts commit 1a2f18e421efb221832ef8e16463ca9bc1991060.
Now that VAR_TIMER_TOTAL is reliable, use that for timing the Loom
replacement audio tracks instead. This saves us the bother of handling
pausing and things like that.
I think it should work even with older savegames, but at the moment
resuming the track from where it was saved isn't working for me. It
seems to be doing the right ting, but then the track gets restarted.
This may be because of recent changes to Loom save/restore?
We use functions from GL_ARB_framebuffer_object extension and not from
GL_EXT_framebuffer_object where functions are suffixed by EXT.
This avoids crashes on implementations supporting only the EXT version.
Fixes bug #13500 where LSL6HIRES doesn't play the audio for the death
message after the security guard launches a missile.
Thanks to @RayKoopa for reporting this and other discrepancies
The original interpreters allowed the usage of the Enter key as a substitute for left mouse click, and the Tab key as a substitute for right click; while v7-8 games handle this substitution via scripts, we have to do this manually for the other games.
In the 256-color versions of Indy3, there are some weird horizontal
cyan/pink lines which appear out of place in the Berlin night scene.
The official FM-TOWNS release fixed that by reusing some other colors
from the local palette, so we can apply a similar change for the DOS
and Steam versions, as long as we keep the original EGA colors for the
text and inventory.
(We still do a quick check for the original `smapLen`, just in case a
fan translation redid the background.)