Commit Graph
103 Commits
Author SHA1 Message Date
Bastien Bouclet 4bdf88496d MOHAWK: Move Riven's name lists to a separate class 2017-07-03 08:50:10 +02:00
Bastien Bouclet 099b3b3d8f MOHAWK: Move the hotspot list to RivenCard
Also replace all hardcoded accesses to the hotspot array with hotspot queries.
2017-07-03 08:50:10 +02:00
Bastien Bouclet 67d9a3c71b MOHAWK: Make the RivenHotspot fields private 2017-07-03 08:50:10 +02:00
Bastien Bouclet 17f1903833 MOHAWK: Remove the RivenHotspot enabled field 2017-07-03 08:50:10 +02:00
Bastien Bouclet 23bbf05c91 MOHAWK: Start converting RivenHotspot into a class 2017-07-03 08:50:10 +02:00
Bastien Bouclet 1b062d1e39 MOHAWK: Move the sound lists to RivenCard 2017-07-03 08:50:10 +02:00
Bastien Bouclet 2fbe284a31 MOHAWK: Chane Riven's graphics manager to automatically handle screen updates 2017-07-03 08:50:10 +02:00
Bastien Bouclet 1bb5424ddd MOHAWK: Move PLST handling to the RivenCard class 2017-07-03 08:50:10 +02:00
Bastien Bouclet abe6889bbe MOHAWK: Remove the current card id from the Riven engine class 2017-07-03 08:50:10 +02:00
Bastien Bouclet 3c2ca08877 MOHAWK: Add a script queue to Riven's script manager 2017-07-03 08:50:10 +02:00
Bastien Bouclet bc01a276f9 MOHAWK: Add documentation to Riven's script module 2017-07-03 08:50:10 +02:00
Bastien Bouclet f944b62988 MOHAWK: Change Riven's scripts not to have a type 2017-07-03 08:50:10 +02:00
Bastien Bouclet 9b9fa7e0a5 MOHAWK: Refactor the script manager to read data to Command classes 2017-07-03 08:50:10 +02:00
Bastien Bouclet 2756d6226b MOHAWK: Add a Riven specific sound manager
- Add ambient sound fading
- Fix ambient sound volume to use the list-level volume
2016-08-11 19:53:20 +02:00
Matthew Hoops 7e6c8be7db MOHAWK: Make video handles actual objects 2015-07-17 20:05:00 -04:00
Matthew Hoops 0a899876e7 MOHAWK: Use original stack ID mapping for Riven 2014-05-03 22:55:50 -04:00
Johannes Schickel abd9e92086 MOHAWK: Make GPL headers consistent in themselves. 2014-02-18 02:39:36 +01:00
Matthew Hoops 5e52b0a5d4 MOHAWK: Split the graphics classes into their own files 2012-03-10 13:55:08 -05:00
Max Horn 88913c0139 ALL: Remove trailing whitespaces
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
  git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
2011-06-20 00:59:48 +02:00
Matthew Hoops a495632e07 MOHAWK: Finish implementation of Riven's stopSound() opcode 2011-06-14 10:46:48 -04:00
Matthew Hoops 5174832e31 MOHAWK: Finish implementation of Riven's storeMovieOpcode opcode 2011-06-14 10:36:49 -04: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
Matthew Hoops 4235358fad MOHAWK: Use direct access on the hashmap for Riven variables now 2011-03-23 23:14:59 -04:00
Matthew Hoops e82e5e32ff MOHAWK: Begin to implement Riven opcode 38
Also, renamed it to better reflect its purpose
2011-03-22 20:33:38 -04:00
Matthew Hoops 1ca6781859 MOHAWK: Minor cursor call cleanup 2011-03-22 20:13:01 -04:00
Matthew Hoops ad7400524b MOHAWK: Make Riven use original executables for cursors
It will try both Windows and Macintosh executables. The hardcoded cursors have been removed.
2011-03-07 01:10:01 -05:00
Matthew Hoops d6a4ff3639 MOHAWK: Recheck the current hotspot if a script has changed the enabled hotspots in Riven
svn-id: r55493
2011-01-24 02:43:07 +00:00
Matthew Hoops 191d85f174 MOHAWK: Implement Riven's stopSound() and fadeAmbientSounds() opcodes
svn-id: r55460
2011-01-23 07:02:49 +00:00
Matthew Hoops fd3188a6fc MOHAWK: Cleanup Riven opcode 12 (now known as stopSound())
svn-id: r55457
2011-01-23 05:12:50 +00:00
Matthew Hoops e2d9a34bee MOHAWK: Cleanup some Riven code
svn-id: r55327
2011-01-19 15:22:39 +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
Matthew Hoops 07ea74d37b MOHAWK: Refactor cursor handling
Cursor handling has now been moved to a new CursorManager class (which is subclassed for Myst/Riven) from the GraphicsManager classes. This will be needed for Living Books which will have a class for Windows and Mac cursors (coming soon!).

svn-id: r54469
2010-11-25 04:49:11 +00:00
Max Horn 121056c12f MOHAWK: Pass objs by const ref not by value
svn-id: r54443
2010-11-23 22:32:39 +00:00
Matthew Hoops 0f2bcd2f9f MOHAWK: Cleanup resource handling
- Renamed getRawData() to getResource()
- Add a getResource() and hasResource() function for named resources
- Other minor formatting changes

svn-id: r54396
2010-11-20 23:53:14 +00:00
Matthew Hoops a4978587d8 MOHAWK: Fix memory leaks (thanks to digitall for finding)
svn-id: r54164
2010-11-09 18:38:35 +00:00
Max Horn b4787d9430 MOHAWK: Convert all printf to debugN calls
This involves some nasty decisions, like mixing debugN and DebugPrintf
calls in the RivenConsole. I added FIXME comments about this.

svn-id: r54107
2010-11-07 01:03:29 +00:00
Matthew Hoops 0cba4f0306 MOHAWK: Implement blocking sound in Riven
Sounds that set the third argument of the playSound opcode to 1 (wherever they may be) will now block. The volume parameter of playSound is also now honored. Merge the Myst sound blocking code with this too.

svn-id: r52643
2010-09-08 20:50:56 +00:00
Matthew Hoops 58139baf37 MOHAWK: Sound cleanup
Merge the Riven sound file code with the main Riven resource code and remove the mainSoundFile parameter from Sound::playSound(). Reasoning: The sound id's do not collide with the sound id's in the main data files. The sound archives only exist because the original CD version had the ability to choose between low and high quality audio.

svn-id: r52631
2010-09-07 20:18:30 +00:00
Matthew Hoops 1475f75653 MOHAWK: Update videos when the delay opcode is called
The fixes a couple scripts which decide to delay through a background video turning into a virtual blocking video.

svn-id: r52488
2010-09-01 23:39:25 +00:00
Matthew Hoops 649e275ca6 MOHAWK: Implement xbookclick
It is now possible to trap Gehn in the trap book. Side note: Riven is now completable from the beginning provided you know the D'ni number system already (and the marble puzzle is just hacked to always work).

svn-id: r52482
2010-09-01 13:28:12 +00:00
Matthew Hoops 541daf918a Introduce the RivenScriptManager to keep track of scripts and free them when required. The old way of using SharedPtr was quite hacky and didn't work properly when talking to Gehn in ospit.
svn-id: r50761
2010-07-09 16:53:20 +00:00
Matthew Hoops 492f748a4b Add a comment on the unknown switch command argument.
svn-id: r49999
2010-06-18 02:28:58 +00:00
Matthew Hoops a8deacfc7e In Riven, if we get a change card opcode on a mouse down event, ignore the next mouse up event so we don't misinterpret that as an event in the next card; minor cleanup.
svn-id: r49393
2010-06-02 15:26:35 +00:00
Matthew Hoops 163847b245 Fix the 'boiling water' videos in the boiler puzzle.
svn-id: r49237
2010-05-26 13:11:04 +00:00
Matthew Hoops 2f31b05651 Move Mohawk's QuickTime code to graphics/ (and QDM2 to sound, disabled when Mohawk is not enabled) so SCI can use the code.
svn-id: r49165
2010-05-23 18:33:55 +00:00
Max Horn c934642bdb COMMON: Move typedef StringList from str.h to new header str-array.h
This removes the dependency on array.h from str.h.
Also, begun migration from the confusing type name "StringList" to
the more appropriate StringArray.

svn-id: r48282
2010-03-18 15:09:24 +00:00
Matthew Hoops e8c2c2b25c Slightly rework refreshing cards in Riven (and remove the hackish changeToCard(0)).
svn-id: r48134
2010-02-26 08:14:33 +00:00
Matthew Hoops 1cd9498dbc Implement background video support for Riven; some VideoManager/QTPlayer cleanup.
svn-id: r48056
2010-02-13 23:34:18 +00:00
Johannes Schickel aed02365ec Strip trailing spaces/tabs.
svn-id: r47541
2010-01-25 01:39:44 +00:00