David Turner
3cc456bf2a
MOHAWK: Fixed Valgrind Error in Myst When Selecting 0 in Imager Code (Myst Card 4709)
...
Reworked MystGraphics::copyImageSectionToScreen() :
Added clipping of width and height within src surface dimensions.
Improved function readability.
svn-id: r54972
2010-12-20 04:29:53 +00:00
Bastien Bouclet
7daea87e61
MOHAWK: Yet more Myst vertical alignment / clipping fixes.
...
Fixes the boiler wheels drawing incorrectly. Fixes the rocket piano's leftmost key drawing too high. Fixes the timeclock controls beeing misaligned.
svn-id: r54947
2010-12-17 18:18:52 +00:00
Matthew Hoops
8ec9f96d54
MOHAWK: Remove global construction of _viewport
...
svn-id: r54945
2010-12-17 14:36:32 +00:00
Bastien Bouclet
c441539bb0
MOHAWK: Change resolution to 544x332 to match the original.
...
This fixes the vertical alignment issues, and graphic corruption on some cards.
svn-id: r54943
2010-12-17 11:31:08 +00:00
Bastien Bouclet
24808d49eb
MOHAWK: Added the "resources" command to Myst's debug console, which lists the resources in the current card.
...
Allow the "drawRect" debug command to take a resource id as a parameter, to draw the resource's bounding rect.
svn-id: r54933
2010-12-16 16:12:38 +00:00
Bastien Bouclet
d4ce603361
MOHAWK: Rework Myst GFX updates
...
- Initial card state is drawn to the back buffer
- Script driven updates are drawn to the front buffer
Allows opcode 28 (copy back buffer to screen) and opcodes 29/33 (copy image to screen / back buffer) to work properly.
Fixes among others the generator room lights, and the matchbox.
svn-id: r54907
2010-12-14 19:11:16 +00:00
Bastien Bouclet
c6887d0404
MOHAWK: Implement Myst opcodes 106, 108 and 202 : tower rotation
...
svn-id: r54883
2010-12-12 18:41:15 +00:00
Matthew Hoops
b1e3b48418
MOHAWK: Fix some Myst ME cards that store PICT images in WDIB resources (see myst 4013)
...
svn-id: r54867
2010-12-11 18:38:27 +00:00
Alyssa Milburn
27799e354e
MOHAWK: move shared setPalette/copyImage routines into GraphicsManager
...
svn-id: r54743
2010-12-02 21:25:15 +00:00
Alyssa Milburn
ddd691e2d3
MOHAWK: add LBGraphics::copyImageSectionToScreen
...
svn-id: r54707
2010-12-01 18:21:17 +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
Bastien Bouclet
efc6ff54a3
MOHAWK: Misc cleanups
...
svn-id: r54645
2010-11-29 21:03:02 +00:00
Bastien Bouclet
836aab9968
MOHAWK: Fix drawing the last step of an animated update
...
svn-id: r54635
2010-11-29 21:00:37 +00:00
Bastien Bouclet
056ebd43d4
MOHAWK: Complete drawing the animated rect if running the animation steps didn't draw the whole rect.
...
svn-id: r54631
2010-11-29 20:59:30 +00:00
Bastien Bouclet
fcc1dd6749
MOHAWK: Implement 4 types of animated updates for Myst
...
svn-id: r54629
2010-11-29 20:58:58 +00:00
Bastien Bouclet
b49cb3b35a
MOHAWK: Start implementing opcodes using the animated update feature
...
svn-id: r54627
2010-11-29 20:58:28 +00:00
Bastien Bouclet
a9617cbe28
MOHAWK: Added dirty rects support for Myst
...
svn-id: r54625
2010-11-29 20:57:54 +00:00
Bastien Bouclet
2ac1fdad32
Revert "MOHAWK: Revert the screen cache since it has a huge performance hit, and is not needed as is."
...
This reverts commit 291bea1858
.
svn-id: r54624
2010-11-29 20:57:41 +00:00
Bastien Bouclet
92d74fa56d
MOHAWK: Disabled hotspots are now unclickable areas. Display blue rects for unreachable zip destinations when drawing resource rects.
...
svn-id: r54615
2010-11-29 20:55:11 +00:00
Bastien Bouclet
291bea1858
MOHAWK: Revert the screen cache since it has a huge performance hit, and is not needed as is.
...
svn-id: r54605
2010-11-29 20:52:46 +00:00
Matthew Hoops
2d924afa9d
MOHAWK: Add basic Living Books support (all credit goes to fuzzie!)
...
v1 and v3 (both Windows and Mac) are working, v1 support is in better shape.
svn-id: r54558
2010-11-28 22:55:15 +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
4c733c4278
MOHAWK: Cleanup image surface handling
...
- Renamed ImageData to MohawkSurface
- Added offset x/y fields to MohawkSurface
- The image cache now stores MohawkSurface pointers
- Switched Living Books to 8bpp mode (it requires that in the end anyway)
svn-id: r54468
2010-11-25 02:59:56 +00:00
Matthew Hoops
26bf0e8176
MOHAWK: Fix a typo fail (thanks, fuzzie)
...
svn-id: r54419
2010-11-22 18:09:31 +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
Matthew Hoops
48416a7f03
MOHAWK: Implement the old Mohawk bitmap format (thanks to fuzzie)
...
svn-id: r54319
2010-11-18 13:31:12 +00:00
Matthew Hoops
ecb42156ce
MOHAWK: Cache the Myst screen buffer
...
This is needed for use with sliders. The screen is now updated fewer times as well.
svn-id: r54300
2010-11-17 19:58:19 +00:00
Matthew Hoops
4e445b9467
MOHAWK: Apply patch #2988976 : "MYST: Fix drawing partial subimages"
...
svn-id: r54297
2010-11-17 18:22:22 +00:00
Matthew Hoops
45f4f84e03
MOHAWK: Fix one more memory leak (hopefully the last :))
...
svn-id: r54166
2010-11-09 18:58:44 +00:00
David Turner
63d023964e
MOHAWK: Close a number of memory leaks in Myst.
...
These corrections close a number of leaks reported by running Valgrind with --leak-check=full option, but some still remain, mainly in the image loading and caching.
svn-id: r54152
2010-11-09 11:02:06 +00:00
Matthew Hoops
30080c7e07
MOHAWK: Add initial work on the Riven marble puzzle
...
The marbles are currently drawn, and you can pick them up, but you can not place them on the grid yet.
svn-id: r52661
2010-09-09 17:27:02 +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
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
cfbbc3928a
MOHAWK: Implement functionality for the dome sliders
...
The sliders are now movable and reset properly. The combination defined in the lab journal works on all the domes too.
svn-id: r52476
2010-08-31 20:05:00 +00:00
Matthew Hoops
ce9afcfab1
MOHAWK: Draw in the telescope combination in Catherine's journal
...
svn-id: r52215
2010-08-19 17:33:10 +00:00
Matthew Hoops
c2cb3bb799
Add the page turning sound for the Riven journals and stub off the swipe transition used when turning pages.
...
svn-id: r50336
2010-06-26 18:27:18 +00:00
Matthew Hoops
be8a596668
Add support for the third inventory case in Riven: you have the two journals but not the trap book (happens at the end of the game).
...
svn-id: r50280
2010-06-25 18:20:31 +00:00
Matthew Hoops
ad0eb0b06e
Move the PICT code to graphics/ with some updates; needed for SCI1.1 Mac.
...
svn-id: r49195
2010-05-24 17:18:09 +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
b3e404109c
Move initGraphics and initCommonGFX from to new header.
...
These functions are only used internally be Engine subclasses, and
by moving them to a separate header we can reduce indirect header
dependencies.
svn-id: r48934
2010-05-04 11:58:12 +00:00
Matthew Hoops
001bca2d6c
Remove use of global constructors in Mohawk.
...
svn-id: r48731
2010-04-19 20:28:36 +00:00
Matthew Hoops
9fb9c0955d
Add support for the Motion JPEG codec (used in some Myst ME 10th Anniversary videos); minor cleanup.
...
svn-id: r48028
2010-02-10 00:20:33 +00:00
Johannes Schickel
aed02365ec
Strip trailing spaces/tabs.
...
svn-id: r47541
2010-01-25 01:39:44 +00:00
Matthew Hoops
c04f8d00b1
Rename MohawkFile to MohawkArchive and OldMohawkFile to LivingBooksArchive_v1 (the latter originally having an ambiguous meaning) and move them to resource.* Also, renaming the Living Books game types to remove the ambiguous old/new.
...
svn-id: r47429
2010-01-22 03:43:57 +00:00
Torbjörn Andersson
ec34e88f75
Fixed assertion when setting non 8-bit cursors in Myst, Masterpiece Edition.
...
svn-id: r47358
2010-01-18 18:45:30 +00:00
Torbjörn Andersson
1a66ad80a4
Re-indentet switch() blocks to follow ScummVM indentation style. (I've always
...
found this style a bit unusual, but I value consistency.)
svn-id: r46734
2009-12-30 07:14:09 +00:00
Eugene Sandulenko
0ea022d076
Add Mohawk engine code. Part 1/3: main code.
...
svn-id: r46727
2009-12-29 23:18:24 +00:00