Commit graph

75 commits

Author SHA1 Message Date
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
Torbjörn Andersson
af64cad069 JANITORIAL: Replace some spaces with tabs 2012-12-16 09:35:52 +01:00
Bastien Bouclet
fdad5ec7b4 MOHAWK: Allow changing video rates
getVideoDuration now returns an Timestamp
2012-12-16 06:51:00 +01:00
Johannes Schickel
93d4eb14ad MOHAWK: Fix delete[] formatting. 2012-07-25 21:09:46 +02:00
Johannes Schickel
7c5cf1b400 GUI: Add helper to SaveLoadChooser, which uses the currently active target.
This reduces the code duplication in all client code, which formerly duplicated
the querying of the plugin, game id etc. and now simply calls the newly added
method runModalWithCurrentTarget() on a SaveLoadChooser object.
2012-06-10 04:53:17 +02:00
Johannes Schickel
5c8b7af495 MOHAWK: Do not call close on SaveLoadChooser.
This is actually always called when a dialog closes, thus manual closing is
not required. It furthermore is actually *bad* to call this from outside the
dialog's code, since it will remove the top dialog from the dialog stack and
thus mess up the GUI in case multiple dialogs are opened.
2012-06-10 04:19:57 +02:00
Johannes Schickel
15046a7529 GUI: Get rid of SaveLoadChooser::setSaveMode.
We already pass the title and process button name to the constructor of
SaveLoadChooser and then do not offer any way of changing it, thus changing
the edit mode of the chooser is kind of pointless and was never actually used.
Instead we pass the mode on SaveLoadChooser construction now.
2012-06-10 04:19:45 +02:00
Matthew Hoops
9e330174c8 VIDEO: Change getElapsedTime() into getTime()
This name change accompanies a slight meaning change; now it means the current time position from the beginning of the video and not from starting the video.
2012-05-12 21:28:13 -04:00
Matthew Hoops
2f6528933d MOHAWK: Improve Riven save/load error messages 2012-03-16 16:03:14 -04:00
Matthew Hoops
5e52b0a5d4 MOHAWK: Split the graphics classes into their own files 2012-03-10 13:55:08 -05:00
Matthew Hoops
fcd84f67c8 MOHAWK: Stub off Riven transition speed code 2011-08-15 22:53:02 -04:00
Matthew Hoops
1737190a71 MOHAWK: Implement the rest of the sunners code 2011-08-11 13:14:03 -04:00
Matthew Hoops
71c4329d86 MOHAWK: Rework archive handling
A new base class has been introduced (aptly named "Archive"), which is much cleaner than inheriting from MohawkArchive. In addition, the underlying resource retrieving code has been merged to reduce dupliplication.
2011-06-28 12:10:28 -04: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
5174832e31 MOHAWK: Finish implementation of Riven's storeMovieOpcode opcode 2011-06-14 10:36:49 -04:00
Max Horn
477d6233c3 ENGINES: Change 2nd param of Engine::saveGameState to Common::String 2011-06-02 18:31:59 +02:00
Max Horn
4cbe4ede66 COMMON: Registers RandomSources in constructor with the event recorder
This also removes the dependency of engines on the event recorder header
and API, and will make it easier to RandomSources that are not properly
registered.
2011-05-17 12:17:26 +02:00
strangerke
69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02: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
aaf05b2a59 MOHAWK: Begin using a hashmap to store Riven variables 2011-03-23 21:33:57 -04:00
Matthew Hoops
f40b74d496 MOHAWK: Handle launcher load fails more gracefully 2011-03-22 19:54:58 -04:00
Matthew Hoops
273ba73d5f MOHAWK: Minor cleanup and consistency fixes 2011-03-21 18:33:48 -04:00
Matthew Hoops
40c496d730 MOHAWK: Implement the hardcoded Catherine idle videos 2011-03-21 13:21:47 -04:00
Matthew Hoops
96c7f0d22d MOHAWK: Implement the Ytram trap 2011-03-20 16:13:53 -04:00
Matthew Hoops
6fd6291390 MOHAWK: Fix typo in the Riven missing executable dialog 2011-03-09 17:53:11 -05:00
Matthew Hoops
920bae62c0 MOHAWK: Fix Riven's cursor in the main menu
Actually call the showCursor() function now...
2011-03-07 17:28:19 -05:00
Matthew Hoops
9c7166ccc9 MOHAWK: Error message consistency 2011-03-07 11:02:50 -05:00
Matthew Hoops
10dad00a79 MOHAWK: Improve error handling when data isn't found 2011-03-07 11:00:41 -05: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
Max Horn
41121be4d6 GUI: Rename SaveLoadChooser::runModal to runModalWithPluginAndTarget
This avoids hiding an overloaded virtual method, which in turn can
cause weird bugs (see also the next commit).

svn-id: r55815
2011-02-07 22:58:22 +00: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
7ed456f268 MOHAWK: Add support for installer files from Riven and other Broderbund games
svn-id: r55368
2011-01-21 01:58:53 +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
Alyssa Milburn
7e5ffb2bcf MOHAWK: Remove sound.h include from resource.h
svn-id: r54988
2010-12-21 18:16:20 +00:00
Alyssa Milburn
c34410d49d MOHAWK: don't include livingbooks.h from graphics.h
svn-id: r54670
2010-11-30 09:04:47 +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
Matthew Hoops
cb843daec0 MOHAWK: Have MohawkResource::open() return a bool for success/failure
svn-id: r54418
2010-11-22 18:07:33 +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
7fb352e38a MOHAWK: Implement an image cache system
This should greatly improve the performance in Myst (especially Myst ME, which uses the slow JPEG decoder). This should also slightly improve the Riven performance; the sliders now work a bit better.

svn-id: r54388
2010-11-19 21:25:36 +00:00
Thierry Crozat
fc11604e73 i18n: Translate the Save and Load buttons in myst and riven
svn-id: r52692
2010-09-12 21:35:49 +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
34f570419a MOHAWK: Cleanup
- Split the main Riven event loop into a separate function for readability and for use in the sunner external functions eventually
- Some minor function signature changes (const!)
- Rename matchVarToString() to getVar() (I have no idea where that original name came from, considering it takes a string and returns a variable
- Use solely Common::String in getVar()

svn-id: r52538
2010-09-05 00:48:38 +00:00
Matthew Hoops
aa5cd3e682 MOHAWK: Ignore invalid Riven hotspots again
There is at least one example of a bad hotspot in Riven (tspit 
371 (377 in the DVD version), hotspot 4). This particular hotspot is a zip hotspot which looks like it has its left and right coordinates reversed. However, the zip hotspot would only take the player to the same card as the non zip hotspot so it seems they removed this hotspot with a hack. This fixes a regression from r52487.

svn-id: r52532
2010-09-04 21:43:16 +00:00
Matthew Hoops
8a168f028b MOHAWK: Improve support for the Riven Demo
- The exit button now appears and is functional
- The intro movies now play on start up
- Add shortcuts for returning to the menu/playing the intro videos again
- Make the text when hitting a boundary match the original
- Change the wording of the browser button message
- Note: The demo's extras.mhk (not the full game's!) is required now

svn-id: r52509
2010-09-03 19:13:58 +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
a053ef7cd1 MOHAWK: Cleanup mouse cursor position handling in Riven
This fixes some cursors showing up incorrectly if the cursor moved during ie. a video and then the card changes. Also, remove an unneeded rect check in loadHotspots() that's from the ancient times before script size calculation was fixed and some warnings that don't affect gameplay.

svn-id: r52487
2010-09-01 23:22: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
48a107b821 Update comment on CD swapping in Riven.
svn-id: r50479
2010-06-29 03:04:08 +00:00