David Fioramonti
35d89e25a6
MYST3: Add RoomID enum to help working with Rooms
...
No behavior changes.
Not all rooms were given useful names, but the most used
were. More useful names for the more obscure rooms can be added
later.
2018-07-01 10:33:22 +02:00
Bastien Bouclet
2f756b92e7
MYST3: Don't allow clicking away modal dialogs
...
Also prevent escape from closing modal dialogs without executing any
action.
Fixes #1447 , Fixes #1457 .
2018-06-30 13:50:12 +02:00
Bastien Bouclet
98889a621c
Merge pull request #1449 from dafioram/myst3Cursor
...
MYST3: Minor cursor refactoring
2018-06-28 19:00:20 +02:00
David Fioramonti
ddf77597b9
MYST3: Debug warn instead of error for unknown var
...
When using the var command in the debug console warn
if the variable number is not in range rather than
error.
2018-06-28 05:47:40 -07:00
David Fioramonti
e284420b3f
MYST3: Minor cursor refactoring
...
Added some comments and made a loop use the size
rather than hardcoded number.
2018-06-14 20:46:18 -07:00
David Fioramonti
b2bddb5b1f
MYST3: Add Saving from GMM
...
The Menu object internally manage a thumbnail
for saved games. But now a function has been
added to Menu to have a new thumbnail generated.
Characters that are not safe to use as filenames
cannot be used as save descriptions.
2018-06-10 16:31:35 +02:00
Bastien Bouclet
6e4fe84f58
MYST3: Fix an out of bounds read in the magnet effect
...
Fixes #1249 .
2018-06-09 08:41:23 +02:00
Bastien Bouclet
3b450c1d41
Merge pull request #1416 from ccawley2011/engine-features
...
CONFIGURE: Make Bink and GLEW engine dependencies
2018-05-30 13:11:23 +02:00
Bastien Bouclet
e338b1bb6d
MYST3: Rework save thumbnail handling, simplify autosaving
2018-05-27 12:44:24 +02:00
David Fioramonti
006aaa2c43
MYST3: Add Autosave Support
...
This adds autosaving to a save named Autosave.
Autosaving is enabled if the autosave file
doesn't exist or is an autosave.
The actual autosaving is done on exit or based
on the save interval specified in the config file.
2018-05-27 12:44:24 +02:00
Cameron Cawley
db58d4a6e6
CONFIGURE: Make Bink an engine dependency
2018-05-16 15:08:18 +01:00
Bastien Bouclet
1b9a28eb54
MYST3: Play lever drag scripts every frame if requested
...
Fixes #1400 .
2018-03-17 13:15:47 +01:00
Bastien Bouclet
1e2651e4e1
COMMON: Introduce a charset encoding enumeration
...
This abstraction allows code to refer to charsets using an id instead
of their iconv names. Iconv names are implementation specific.
For example, libiconv names the Mac Central European charset
'maccentraleurope' while glibc-iconv uses 'mac-centraleurope'.
Fixes #1387 .
2017-12-19 17:00:27 +01:00
dagashiya
7569c38b55
MYST3: added an appropriate encoding for Polish version which fixes subtitles
2017-12-13 11:51:16 +01:00
dagashiya
85c786ccec
MYST3: add a proper checksum for Polish 4 CD release of Myst 3
2017-12-13 11:17:25 +01:00
Bastien Bouclet
3ec01653c3
ALL: Merge from ScummVM rev 3a933138ce9273724726efc0df051b8dcf92b7d8
2017-12-06 21:41:03 +01:00
Bastien Bouclet
89265016a8
MYST3: Fix inconsistent pixel format check for BE platforms
...
Fixes #1374
2017-11-26 10:21:18 +01:00
Bastien Bouclet
d75066d66a
MYST3: Include ENGLISH.m3t in the detection entry for the DVD version
...
This way people don't get the "Unknown version" warning when they forget
to copy the language m3u file.
Refs #1357 .
2017-11-23 06:53:56 +01:00
Bastien Bouclet
a7e4c6d748
MYST3: Fix original engine saves missing thumbnail in RVM menus
...
The original engine saved the thumbnail with the alpha value set to
fully transparent, and the ResidualVM GUI is rendering with alpha
blending enabled. Now the alpha bits from on-disk thumbnails are ignored.
2017-11-01 12:11:53 +01:00
Bastien Bouclet
25940d2f1f
MYST3: Only run drag scripts when the position changed
...
Fixes lever dragging sounds looping while levers are beeing dragged on
Voltaic.
Fixes #1368 .
2017-11-01 11:06:50 +01:00
Bastien Bouclet
9484bbdd21
MYST3: Sort the files alphabetically in ResidualVM's load dialog
2017-10-01 15:29:27 +02:00
Bastien Bouclet
d7896defae
MYST3: Clear the screen with solid black
...
Fixes unintentional transparency when loading games from the menu
2017-10-01 15:19:08 +02:00
Bastien Bouclet
b12ea8b8c8
MYST3: Play the last frame of simple movies for their entire duration
...
Fixes #1351 .
2017-10-01 14:22:10 +02:00
Bastien Bouclet
a13e3f7bdd
MYST3: Prevent loading from the GMM while the game is not interactive
...
Also honor quit requests while in inner loops.
Fixes #1369 .
2017-09-24 17:08:41 +02:00
Bastien Bouclet
8843400444
MYST3: Reset the input state after transitions
...
Fixes #1362 .
2017-09-23 20:37:24 +02:00
Bastien Bouclet
ef2b09f798
MYST3: Fix incorrectly evicting common rooms from the cache
...
Fixes #1366 .
2017-09-23 17:54:40 +02:00
Bastien Bouclet
289f962faf
MYST3: Plug memory leak when loading a save
...
Fixes #1364 .
2017-09-22 07:21:00 +02:00
Bastien Bouclet
d48d890ef5
MYST3: Fix visual inconsistency in the lever/ball puzzle
...
When the ball goes through the door it changes position, and yet has no
ball frames to play. Trying to play those frames anyway would set the
ball frame to zero, resulting in a visual inconsistency when resetting
the node.
Fixes #1363 .
2017-09-19 07:10:43 +02:00
Bastien Bouclet
eff56897ea
MYST3: Set the sound type for Bink movies
2017-09-03 15:50:15 +02:00
Bastien Bouclet
5d490eed92
MYST3: Clear the screen early in the initialization
...
Avoids drawing a frame of garbage when the debug console updates the
screen ia bit later (for some reason).
2017-09-02 07:45:37 +02:00
Bastien Bouclet
9ad31268fa
MYST3: Use the main event loop for simple movies
2017-09-01 09:26:57 +02:00
Bastien Bouclet
125ccf3b4d
MYST3: Implement fullscreen toggling
2017-09-01 09:26:57 +02:00
Bastien Bouclet
b97e49c3ee
MYST3: Change surface data to always be in the RGBA byte order
...
This eases uploading the textures to OpenGL, and will hopefully fix
endianness issues.
2017-08-20 09:36:31 +02:00
Bastien Bouclet
6aee542a1d
MYST3: Cache the value of the water effect parameters
...
Improves the speed of the water effect update.
2017-08-19 23:11:46 +02:00
Bastien Bouclet
142b914eb5
MYST3: Fix some transitions after movies using the wrong source image
...
Fixes #1353 .
2017-08-19 18:10:22 +02:00
Bastien Bouclet
3ec5f050ce
MYST3: Refresh the ambient sounds when running playMovieChangeNode
...
Fixes #1337 , Fixes #1350 .
2017-07-19 06:54:45 +02:00
Bastien Bouclet
e29c7ded48
MYST3: Add minimal BiDi processing for the Hebrew version
...
Fixes rendering the subtitles from right to left
2017-06-20 14:03:55 +02:00
Bastien Bouclet
c6e11c3691
MYST3: Switch file misc metadata to a Common::Array
...
Should fix failure to load one of the files in the Hebrew version,
as seen in bug #1348
2017-06-20 14:01:44 +02:00
Bastien Bouclet
c197adfa46
MYST3: Force the Hebrew subtitles to use the cp1255 encoding
2017-06-16 19:00:49 +02:00
Bastien Bouclet
2f7bb9228a
MYST3: Add a subtitle font mapping for the Hebrew version
...
It's unknown what font the "Arial2" font face actually is.
Users should provide a font with Hebrew glyphs as "hebrew.ttf".
2017-06-14 21:46:29 +02:00
Bastien Bouclet
3dab2b5d95
MYST3: Fix incorrect Hebrew language file name
2017-06-14 08:41:27 +02:00
Bastien Bouclet
68cf4e929f
MYST3: Also load the menu language file for the Hebrew version
2017-06-14 07:38:11 +02:00
Bastien Bouclet
9cb43c21f5
MYST3: Add detection for the Hebrew version
...
Refs #1348 .
2017-06-14 07:17:05 +02:00
Bastien Bouclet
ee1b28ffdf
MYST3: Use the engine_speed setting to contigure the frame limiter
2017-05-26 06:42:49 +02:00
Vincent Pelletier
e7073dc037
ALL: Add an option to control dirty rectangless TinyGL optimisation
...
Exposed to command line via --[no-]dirtyrects.
As dirty rectangles make the workload vary a lot between frames, it makes
performance regressions harder to spot. Disabling it produces lower, but
much more regular FPS counts.
2017-05-03 16:52:36 +00:00
Bastien Bouclet
f11e25f129
MYST3: Don't crash when myst3.dat is not found
...
Fixes #1333 .
2017-04-20 17:38:56 +02:00
Bastien Bouclet
192b85af32
MYST3: Use a full 3D intersection test for hotspots
...
Cube hotspots are now fully accurate when compared to the original engine.
Fixes #1329 .
2017-04-17 08:52:36 +02:00
Bastien Bouclet
c421e8305c
MYST3: Add a script patch for the water effects in room LEOF
...
Fixes #1330 .
2017-04-15 06:56:42 +02:00
Bastien Bouclet
2632f11c8a
MYST3: Minor cleanup
2017-04-14 06:20:52 +02:00
Bastien Bouclet
62fb8d2875
MYST3: Fix incorrect logic in the ifOneVarSetInRange opcode
...
The test was never true due to in incorrect precondition check
Fixes #1328 .
2017-04-10 19:13:44 +02:00