Commit Graph

73 Commits

Author SHA1 Message Date
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
1b267f5281 MOHAWK: Implement Myst opcodes 147, 169, 182 : Cabin match
svn-id: r54931
2010-12-16 08:03:19 +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
36851d4eb4 MOHAWK: Implement Myst opcodes 113, 114, 198 : Vault open / close
In progress tower rotation

svn-id: r54866
2010-12-11 17:00:22 +00:00
Matthew Hoops
0d59c33b35 MOHAWK: Default to the main cursor if no cursor hints are present; fixes a couple cards
svn-id: r54816
2010-12-07 19:41:49 +00:00
Matthew Hoops
ce0f0bd056 MOHAWK: Allow loading both original and ME saves in any version of Myst
svn-id: r54814
2010-12-07 18:33:58 +00:00
Matthew Hoops
2f86db50ef MOHAWK: Fix loading from the launcher in Myst
svn-id: r54813
2010-12-07 18:21:05 +00:00
Matthew Hoops
d06a355341 MOHAWK: Further limit where Myst can be saved
svn-id: r54812
2010-12-07 18:15:07 +00:00
Matthew Hoops
a789ee11c2 MOHAWK: Implement loading to different ages in Myst
svn-id: r54807
2010-12-07 01:37:43 +00:00
Bastien Bouclet
fb854b1483 MOHAWK: Fix Myst library books, fireplace combination book, and bookcase transform animation.
svn-id: r54802
2010-12-06 20:29:45 +00:00
Bastien Bouclet
24a0b50ac3 MOHAWK: Implement Myst opcodes 158 to 166: Rocket sliders + check lever + link book
svn-id: r54776
2010-12-05 08:36:41 +00:00
Bastien Bouclet
52217fa434 MOHAWK: Implement Myst opcodes 120 and 210, rocket power generator
svn-id: r54759
2010-12-04 11:54:08 +00:00
Bastien Bouclet
a9388af996 MOHAWK: Fix resource type 12
svn-id: r54740
2010-12-02 21:15:47 +00:00
Matthew Hoops
bdc3742ced MOHAWK: Split makingof and preview opcodes into their own class (and now all are separate)
svn-id: r54723
2010-12-01 21:05:08 +00:00
Matthew Hoops
77782f4eb3 MOHAWK: Split intro and demo opcodes into their own classes
svn-id: r54706
2010-12-01 17:56:36 +00:00
Matthew Hoops
81209867a2 MOHAWK: Split the demo slideshow opcodes into their own class
svn-id: r54705
2010-12-01 15:24:54 +00:00
Matthew Hoops
26f27d9983 MOHAWK: Split d'ni opcodes into their own class
svn-id: r54699
2010-12-01 14:46:59 +00:00
Matthew Hoops
b9cfb52927 MOHAWK: Split mechanical opcodes into their own class
svn-id: r54692
2010-12-01 02:45:31 +00:00
Matthew Hoops
261cf23901 MOHAWK: Split channelwood opcodes into their own class
svn-id: r54691
2010-12-01 02:11:11 +00:00
Matthew Hoops
e4fa2855b6 MOHAWK: Split out stoneship opcodes into their own class
svn-id: r54689
2010-11-30 22:02:03 +00:00
Matthew Hoops
b065e94d2c MOHAWK: One last getRawData() to getResource() rename
svn-id: r54679
2010-11-30 15:07:00 +00:00
Matthew Hoops
48c209f2da MOHAWK: Split Myst credits code into a separate class
svn-id: r54677
2010-11-30 15:01:26 +00:00
Matthew Hoops
c6a9cef9fb MOHAWK: Fix changing the stack via an opcode
svn-id: r54676
2010-11-30 14:45:31 +00:00
Matthew Hoops
2bd16f9e84 MOHAWK: Move Myst stack-specific code to its own directory
svn-id: r54648
2010-11-29 21:34:59 +00:00
Bastien Bouclet
efc6ff54a3 MOHAWK: Misc cleanups
svn-id: r54645
2010-11-29 21:03:02 +00:00
Bastien Bouclet
29359ee372 MOHAWK: Set the initial stack back to the intro
svn-id: r54644
2010-11-29 21:02:39 +00:00
Bastien Bouclet
7ea90ddf19 MOHAWK: Create constants for remaining Myst resource types
svn-id: r54634
2010-11-29 21:00:23 +00:00
Bastien Bouclet
149eed5c32 MOHAWK: Persistent scripts cleanup
- Rename InitOpcodes / PersistentOpcodes to Persistent Scripts for consistency
- Get rid of the global var used to tell if the sound receiver script is running

svn-id: r54633
2010-11-29 21:00:05 +00:00
Bastien Bouclet
ed59b28d0b MOHAWK: Do not always update the screen after a card change. Necessary for "animated card changes" to work.
svn-id: r54630
2010-11-29 20:59:17 +00:00
Bastien Bouclet
90b336ec34 MOHAWK: Changed sliders to restore the main background instead of doing their own background caching. It is possible now there is the image cache.
svn-id: r54626
2010-11-29 20:58:10 +00:00
Bastien Bouclet
d3289529eb MOHAWK: Fix flag values used to dertermine if an area can become active.
svn-id: r54622
2010-11-29 20:57:11 +00:00
Bastien Bouclet
92dc0fe5b5 MOHAWK: Only draw a resource conditional subimages if it has the "subimages enabled" flag set.
svn-id: r54620
2010-11-29 20:56:39 +00:00
Bastien Bouclet
34981c61b6 MOHAWK: Fix Myst opcode 14
svn-id: r54616
2010-11-29 20:55:31 +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
18e1f4a8c3 MOHAWK: Added helpher functions to redraw a resource. Do not redraw all the resources on mouse up.
svn-id: r54613
2010-11-29 20:54:36 +00:00
Bastien Bouclet
8da42b4221 MOHAWK: Don't change current resource when dragging
svn-id: r54607
2010-11-29 20:53:14 +00:00
Bastien Bouclet
e26fb921e9 MOHAWK; Post rebase fixes :
- Restore invoking resource change
- Update the screen after drawing a conditional image

svn-id: r54604
2010-11-29 20:52:33 +00:00
Bastien Bouclet
fc504c72e8 MOHAWK: Update area type 11 position when the mouse moves
svn-id: r54602
2010-11-29 20:52:04 +00:00
Bastien Bouclet
536c6b6ef4 MOHAWK: Rename some fields for type 11 areas
svn-id: r54600
2010-11-29 20:51:35 +00:00
Bastien Bouclet
2e984cf136 MOHAWK : Move area classes to their own file
svn-id: r54598
2010-11-29 20:51:04 +00:00
Bastien Bouclet
16afca4c3d MOHAWK: Add mouse move event for type 10 and 11 resources
svn-id: r54597
2010-11-29 20:50:40 +00:00
Bastien Bouclet
4e420ef6fc MOHAWK: Keep resource type around
svn-id: r54595
2010-11-29 20:50:11 +00:00
Bastien Bouclet
6a4ff1a9b5 MOHAWK : Finished implementing Selenitic sound receiver
svn-id: r54593
2010-11-29 20:49:42 +00:00
Bastien Bouclet
5f8e6e3824 MOHAWK: Start splitting Myst scripts into one class per Stack.
svn-id: r54592
2010-11-29 20:49:14 +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
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
Matthew Hoops
d971396572 MOHAWK: Cleanup Myst script handling
Scripts are now loaded from a central place and are properly freed at the correct time. This fixes a regression from r54152.

svn-id: r54309
2010-11-18 05:47:16 +00:00