78 Commits

Author SHA1 Message Date
Bastien Bouclet
3a7f85971f MOHAWK: MYST: Add support for the localized 25th games 2018-07-30 20:13:16 +02:00
Bastien Bouclet
47ddd9c214 MOHAWK: MYST: Move the current stack id to ScriptParser 2018-06-13 07:55:55 +02:00
Bastien Bouclet
ea60aef8a8 MOHAWK: MYST: Simplify memory management of the active stack 2018-06-13 07:55:55 +02:00
Bastien Bouclet
13b3371f1a MOHAWK: MYST: Extract a Card class out of the main engine class
This is to allow having multiple cards loaded at the same time in the
future.
2018-06-13 07:55:55 +02:00
Bastien Bouclet
066a14bd4c MOHAWK: MYST: Fix the myst flyby playing over the closed book
In older releases of Myst the flyby video had the play on card change
flag set to true, causing the bug. As a workaround patch the resource to
mach newer releases.

Fixes #10472.
2018-04-02 13:38:57 +02:00
Bastien Bouclet
84b2dc5cc8 MOHAWK: Fix some clang-tidy warnings 2018-03-31 13:36:09 +02:00
Bastien Bouclet
07aaed5659 MOHAWK: Myst: Set the mixer sound type to SFX for videos
Also simplify video filename construction.
2017-07-30 17:42:01 +02:00
Bastien Bouclet
75040819c6 MOHAWK: Myst: Rewrite the sound code
It now more closely matches the original. Effect sounds are now stopped
when resuming background sounds.

Fixes #9574, Fixes #9920.
2017-07-22 20:38:56 +02:00
Bastien Bouclet
a2fc282e1c MOHAWK: Myst: Move the sound code to its own class 2017-07-22 20:38:56 +02:00
Bastien Bouclet
64303abb07 MOHAWK: Myst: Update the screen only once per frame
Change all inner loops to call the same frame function.

Remove the draw delay code. Now that we have proper frame pacing it is
not necessary anymore to wait before drawing to make sure the previous
frame stayed on the screen long enough.

Fixes #9915, #9922, #9923.
2017-07-22 20:38:56 +02:00
Bastien Bouclet
49fa0bdd68 MOHAWK: Myst: Change blocking movies and waits to use the main loop 2017-07-22 20:38:56 +02:00
Bastien Bouclet
c5496e3206 MOHAWK: Get rid of VideoHandle 2017-07-22 20:38:56 +02:00
Bastien Bouclet
6dae7a33ce MOHAWK: Hide some warnings
Fixes #9571, fixes #9572.
2016-09-26 05:51:07 +02:00
Bastien Bouclet
a5b0e35626 MOHAWK: Add a method to get a video handle from a MystAreaVideo
Use it to fix the fortress rotation controls once more
2016-03-05 20:49:12 +01:00
Bastien Bouclet
9e57cc166b MOHAWK: Try harder when resuming a stopped video
Fixes turning off the rose-skull projector on Stoneship
2016-03-05 14:43:10 +01:00
Bastien Bouclet
84841fa635 MOHAWK: Clip the videos to make sure they don't go outside of the screen 2016-02-20 14:00:59 +01:00
Bastien Bouclet
9f1ac5d54c MOHAWK: Allow movie areas to override the playback rate
Unfortunately our QuickTime player does not allow overriding the playback rate
for videos with sound. The steel jaw trap in Channelwood is not played at
125% speed as it should.
2016-02-13 13:52:37 +01:00
Bastien Bouclet
01bfd37919 MOHAWK: Adjust MystAreaVideo::playAreaVideo for the refactored VideoManager
The refactoring in 7e6c8be7db2449c1f793b6fb01af5613282e7f27
changed the behavior of VideoManager::playMovie to start stopped
movies.
The refactoring in 9665efa39a4df000eb695329a9b81c1657f4dc10
changed the behavior of MystAreaVideo::playAreaVideo to set the position
and looping flag for already playing movies.
This commit hopefuly reverts to the previous behavior for videos
already loaded in VideoManager.
2016-02-07 15:27:03 +01:00
Bastien Bouclet
e9bab23c79 MOHAWK: Remove MystAreaActionSwitch::_numSubResources 2016-02-07 15:27:03 +01:00
Bastien Bouclet
91097d735e MOHAWK: Factor the MystAreaActionSwitch switch code 2016-02-07 15:27:03 +01:00
Bastien Bouclet
afdcbbae98 MOHAWK: Remove MystAreaImageSwitch::_numSubImages 2016-02-07 15:27:03 +01:00
Bastien Bouclet
ae93f24267 MOHAWK: Turn MystAreaDrag::ValueList into a Common::Array 2016-02-07 15:27:03 +01:00
Bastien Bouclet
cddb5cd53a MOHAWK: Rename Myst's Area classes 2016-02-07 15:27:03 +01:00
Bastien Bouclet
085f3700f7 MOHAWK: Make MystResourceType8::_subImages private 2016-02-07 15:27:03 +01:00
Bastien Bouclet
0c8d8bbd40 MOHAWK: Use nullptr where applicable in the Myst code 2016-02-07 15:27:03 +01:00
Bastien Bouclet
47bc90f5a3 MOHAWK: Remove some dead code 2016-02-07 15:27:03 +01:00
Matthew Hoops
9665efa39a MOHAWK: Move further VideoManager functionality to VideoEntry 2015-07-17 20:05:04 -04:00
Matthew Hoops
7e6c8be7db MOHAWK: Make video handles actual objects 2015-07-17 20:05:00 -04:00
Johannes Schickel
abd9e92086 MOHAWK: Make GPL headers consistent in themselves. 2014-02-18 02:39:36 +01:00
Bastien Bouclet
07ee25c87d MOHAWK: Implement most of Myst's transition system 2012-12-16 06:54:13 +01:00
Bastien Bouclet
5d90c93385 MOHAWK: Play Channelwood stairs door closing movie backwards 2012-12-16 06:51:01 +01:00
Christoph Mallon
d21cef4117 JANITORIAL: Avoid the ugly operator invocation syntax. 2012-03-13 15:43:23 +01:00
Matthew Hoops
5e52b0a5d4 MOHAWK: Split the graphics classes into their own files 2012-03-10 13:55:08 -05:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion
9414d7a6e2 JANITORIAL: Reduce header dependencies in shared code
Some backends may break as I only compiled SDL
2011-04-28 15:08:58 +03:00
Bastien Bouclet
0b69b6a842 MOHAWK: Myst, pass the playback direction from the calling script to the movie player.
svn-id: r55657
2011-01-30 13:54:39 +00:00
Bastien Bouclet
b43fae5c18 MOHAWK: Myst, display a warning when trying to play a movie backwards.
svn-id: r55656
2011-01-30 13:44:01 +00:00
Bastien Bouclet
7baf4d2ed3 MOHAWK: Implement Stoneship chest puzzle
svn-id: r55577
2011-01-27 21:13:34 +00:00
Bastien Bouclet
caccceb02b MOHAWK: Dragging resources / levers code cleanup
svn-id: r55439
2011-01-22 17:26:09 +00:00
Matthew Hoops
2aca6d3838 MOHAWK: Rename some Myst-specific sound functions; cleanup
svn-id: r55314
2011-01-18 21:10:58 +00:00
Matthew Hoops
0761ab7b3a MOHAWK: Rename some VideoManager functions so we have some unified naming between versions
svn-id: r55312
2011-01-18 20:30:16 +00:00
Bastien Bouclet
b1de27ed8f MOHAWK: Implement Myst imager videos seeking / looping
svn-id: r55208
2011-01-11 19:52:58 +00:00
Matthew Hoops
cd6d818ca3 MOHAWK: Cleanup named video handling
svn-id: r55188
2011-01-09 17:26:22 +00:00
Bastien Bouclet
9058a83ad9 MOHAWK: Myst zip mode improvements
- Save visited zip destinations in the game state
- Only allow zipping to visited zip destinations
- Save zip mode setting in the game state

svn-id: r55185
2011-01-09 15:31:08 +00:00
Bastien Bouclet
1a18e99e69 MOHAWK: Changed Myst intro stack to behave like the original. ie fully skippable intro.
svn-id: r55164
2011-01-08 12:34:41 +00:00
Matthew Hoops
8a77f49a59 MOHAWK: Cleanup some spacing, formatting, and naming
svn-id: r55109
2011-01-03 20:40:07 +00:00
Bastien Bouclet
fd5754d6af MOHAWK: Fix checking Myst rocket sound puzzle before moving all the sliders.
Fix a off by one graphical glitch that happened when moving sliders.
Implement opcode 300.

svn-id: r55092
2011-01-02 14:15:15 +00:00
Bastien Bouclet
14cd97cc77 MOHAWK: Implement Myst opcodes 129 to 132, and 192 to 197, Stellar observatory buttons
svn-id: r55065
2010-12-30 13:53:14 +00:00
Bastien Bouclet
c3fdcef751 MOHAWK: Fix Myst courtyard boxes. Hover areas entering / leaving is now handled separatly from other resources since the former have to get events even when they are disabled.
svn-id: r54959
2010-12-19 07:02:02 +00:00
Bastien Bouclet
c870bf22d1 MOHAWK: Separate background sound handling from other sounds for Myst. Allow the scripts to change the background sound volume.
svn-id: r54953
2010-12-18 13:12:56 +00:00